[nco] 11/32: Imported Upstream version 4.4.5

Bas Couwenberg sebastic at xs4all.nl
Mon Jan 19 00:00:34 UTC 2015


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

sebastic-guest pushed a commit to branch master
in repository nco.

commit de91bb0be73700065c718ace22486f98297f6a8a
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Sun Jan 18 16:39:25 2015 +0100

    Imported Upstream version 4.4.5
---
 AUTHORS                   |    70 +-
 CITATION                  |    31 +
 COPYRIGHT                 |    20 +
 LICENSE                   |    16 +
 bld/Makefile              |   451 +-
 bld/nco.spec              |    11 +-
 bld/nco_dst.pl            |    41 +-
 bm/NCO_rgr.pm             |   571 +-
 bm/nco_bm.pl              |     4 +-
 config.h.in               |     5 +-
 configure                 |    60 +-
 configure.ac              |    40 +-
 data/Makefile.am          |    16 +-
 data/Makefile.in          |    11 +-
 data/dsm.cdl              |    54 +-
 data/in.cdl               |    32 +-
 data/mrd.cdl              |    30 +
 doc/ANNOUNCE              |   209 +-
 doc/ChangeLog             |   260 +-
 doc/LICENSE               |   690 +-
 doc/MANIFEST              |    30 +-
 doc/TAG                   |     2 +-
 doc/TODO                  |    12 +-
 doc/VERSION               |     2 +-
 doc/build_hints.shtml     |   313 +
 doc/debian.txt            |   170 +-
 doc/endorsements.txt      |   151 +
 doc/highlights_old.shtml  |   239 +
 doc/index.shtml           |  1579 +---
 doc/milestones_old.shtml  |    96 +
 doc/nco.dvi               |   Bin 1305096 -> 1324244 bytes
 doc/nco.html              |   851 +-
 doc/nco.pdf               |   Bin 1207615 -> 1218074 bytes
 doc/nco.ps                | 21161 ++++++++++++++++++++++----------------------
 doc/nco.texi              |  1048 ++-
 doc/nco.txt               |  4210 ++++-----
 doc/nco.xml               |  3760 ++++----
 doc/nco_news.shtml        |     8 +-
 doc/problems_old.shtml    |   440 +
 doc/surfit_2014.txt       |     8 +
 doc/xmp/cmb_fl_grp.sh     |     4 +-
 man/ncks.1                |     5 +-
 man/ncrcat.1              |    30 +-
 po/es/nco.po              |    42 +
 po/fr/nco.po              |    42 +
 po/nco.pot                |    37 +
 src/nco++/Makefile.am     |     6 +-
 src/nco++/Makefile.in     |     6 +-
 src/nco++/Makefile.old    |   335 +-
 src/nco++/fmc_all_cls.cc  |   394 +-
 src/nco++/fmc_all_cls.hh  |    17 +-
 src/nco++/fmc_cls.hh      |     5 +-
 src/nco++/fmc_gsl_cls.cc  |     7 +-
 src/nco++/fmc_gsl_cls.hh  |     5 +-
 src/nco++/libnco++.hh     |     9 +-
 src/nco++/ncap2.cc        |    67 +-
 src/nco++/ncap2_utl.cc    |     7 +-
 src/nco++/ncap2_utl.hh    |     9 +-
 src/nco++/ncoGrammer.g    |     9 +-
 src/nco++/ncoLexer.cpp    |    72 +-
 src/nco++/ncoLexer.hpp    |    15 +-
 src/nco++/ncoParser.cpp   |    24 +-
 src/nco++/ncoParser.hpp   |    15 +-
 src/nco++/ncoTree.cpp     |   224 +-
 src/nco++/ncoTree.hpp     |    15 +-
 src/nco++/prs_cls.cc      |     7 +-
 src/nco++/prs_cls.hh      |     5 +-
 src/nco++/sdo_utl.cc      |     9 +-
 src/nco++/sdo_utl.hh      |     9 +-
 src/nco/libnco.h          |     7 +-
 src/nco/mpncbo.c          |    22 +-
 src/nco/mpncecat.c        |    28 +-
 src/nco/mpncflint.c       |    19 +-
 src/nco/mpncpdq.c         |    19 +-
 src/nco/mpncra.c          |    19 +-
 src/nco/mpncwa.c          |    20 +-
 src/nco/ncap.c            |    17 +-
 src/nco/ncap.h            |     7 +-
 src/nco/ncap_utl.c        |     7 +-
 src/nco/ncap_yacc.y       |    10 +-
 src/nco/ncatted.c         |    58 +-
 src/nco/ncbo.c            |    58 +-
 src/nco/ncecat.c          |    63 +-
 src/nco/ncflint.c         |    65 +-
 src/nco/ncks.c            |   171 +-
 src/nco/nco.h             |    39 +-
 src/nco/nco_att_utl.c     |     7 +-
 src/nco/nco_att_utl.h     |     7 +-
 src/nco/nco_aux.c         |    11 +-
 src/nco/nco_aux.h         |     7 +-
 src/nco/nco_bnr.c         |     7 +-
 src/nco/nco_bnr.h         |     7 +-
 src/nco/nco_cln_utl.c     |     7 +-
 src/nco/nco_cln_utl.h     |     7 +-
 src/nco/nco_cnf_dmn.c     |     7 +-
 src/nco/nco_cnf_dmn.h     |     7 +-
 src/nco/nco_cnf_typ.c     |     7 +-
 src/nco/nco_cnf_typ.h     |     7 +-
 src/nco/nco_cnk.c         |   115 +-
 src/nco/nco_cnk.h         |    10 +-
 src/nco/nco_cnv_arm.c     |     7 +-
 src/nco/nco_cnv_arm.h     |     7 +-
 src/nco/nco_cnv_csm.c     |     9 +-
 src/nco/nco_cnv_csm.h     |     7 +-
 src/nco/nco_ctl.c         |    54 +-
 src/nco/nco_ctl.h         |     7 +-
 src/nco/nco_dbg.c         |     7 +-
 src/nco/nco_dbg.h         |     7 +-
 src/nco/nco_dmn_utl.c     |     7 +-
 src/nco/nco_dmn_utl.h     |     7 +-
 src/nco/nco_fl_utl.c      |    73 +-
 src/nco/nco_fl_utl.h      |     7 +-
 src/nco/nco_grp_trv.c     |     9 +-
 src/nco/nco_grp_trv.h     |     9 +-
 src/nco/nco_grp_utl.c     |   559 +-
 src/nco/nco_grp_utl.h     |    21 +-
 src/nco/nco_lmt.c         |    13 +-
 src/nco/nco_lmt.h         |     7 +-
 src/nco/nco_lst_utl.c     |     7 +-
 src/nco/nco_lst_utl.h     |     7 +-
 src/nco/nco_md5.c         |    11 +-
 src/nco/nco_md5.h         |    11 +-
 src/nco/nco_mmr.c         |    13 +-
 src/nco/nco_mmr.h         |     7 +-
 src/nco/nco_mpi.h         |    13 +-
 src/nco/nco_msa.c         |    50 +-
 src/nco/nco_msa.h         |     7 +-
 src/nco/nco_mss_val.c     |     7 +-
 src/nco/nco_mss_val.h     |     7 +-
 src/nco/nco_netcdf.c      |    86 +-
 src/nco/nco_netcdf.h      |    46 +-
 src/nco/nco_omp.c         |     7 +-
 src/nco/nco_omp.h         |     7 +-
 src/nco/nco_pck.c         |     7 +-
 src/nco/nco_pck.h         |     7 +-
 src/nco/nco_prn.c         |    19 +-
 src/nco/nco_prn.h         |     7 +-
 src/nco/nco_rec_var.c     |     7 +-
 src/nco/nco_rec_var.h     |     7 +-
 src/nco/nco_rth_flt.c     |     7 +-
 src/nco/nco_rth_flt.h     |     7 +-
 src/nco/nco_rth_utl.c     |     7 +-
 src/nco/nco_rth_utl.h     |     7 +-
 src/nco/nco_scl_utl.c     |     7 +-
 src/nco/nco_scl_utl.h     |     7 +-
 src/nco/nco_scm.c         |    13 +-
 src/nco/nco_scm.h         |     7 +-
 src/nco/nco_sng_utl.c     |   105 +-
 src/nco/nco_sng_utl.h     |    11 +-
 src/nco/nco_srm.c         |     7 +-
 src/nco/nco_srm.h         |     7 +-
 src/nco/nco_typ.h         |     7 +-
 src/nco/nco_var_avg.c     |     7 +-
 src/nco/nco_var_avg.h     |     7 +-
 src/nco/nco_var_lst.c     |     7 +-
 src/nco/nco_var_lst.h     |     7 +-
 src/nco/nco_var_rth.c     |     7 +-
 src/nco/nco_var_rth.h     |     7 +-
 src/nco/nco_var_scv.c     |     7 +-
 src/nco/nco_var_scv.h     |     7 +-
 src/nco/nco_var_utl.c     |     7 +-
 src/nco/nco_var_utl.h     |     7 +-
 src/nco/ncpdq.c           |    98 +-
 src/nco/ncra.c            |    80 +-
 src/nco/ncrename.c        |    83 +-
 src/nco/ncwa.c            |    72 +-
 src/nco_c++/Makefile.old  |   276 +-
 src/nco_c++/libnco_c++.hh |     9 +-
 src/nco_c++/nco_att.cc    |     9 +-
 src/nco_c++/nco_att.hh    |    11 +-
 src/nco_c++/nco_dmn.cc    |     9 +-
 src/nco_c++/nco_dmn.hh    |     9 +-
 src/nco_c++/nco_fl.cc     |     9 +-
 src/nco_c++/nco_fl.hh     |     9 +-
 src/nco_c++/nco_hgh.cc    |     9 +-
 src/nco_c++/nco_hgh.hh    |     9 +-
 src/nco_c++/nco_utl.cc    |     9 +-
 src/nco_c++/nco_utl.hh    |     9 +-
 src/nco_c++/nco_var.cc    |     9 +-
 src/nco_c++/nco_var.hh    |     9 +-
 src/nco_c++/tst.cc        |    13 +-
 181 files changed, 21749 insertions(+), 19393 deletions(-)

diff --git a/AUTHORS b/AUTHORS
index 21122d1..57daadf 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,7 +1,63 @@
-Charlie Zender <surname at uci dot edu>
-CZ holds all copyright on NCO code.
-All other contributors have assigned their copyright to Zender,
-or did not make contributions that are legally significant for
-copyright purposes. These contributors are all listed under
-"Contributors" in the Users Guide documentation (nco.texi) at
-http://nco.sf.net/nco.html#ppl
+The User Guide documentation (nco.texi) contains the most up-to-date list  
+of contributors to the NCO project, see http://nco.sf.net/nco.html#ppl
+
+Henry Butowsky
+     Non-linear operations and 'min()', 'max()', 'total()' support in
+     'ncra' and 'ncwa'.  Type conversion for arithmetic.  Migration to
+     netCDF3 API. 'ncap2' parser, lexer, GSL-support, and I/O.
+     Multislabbing algorithm.  Variable wildcarding.  Numerous hacks.
+     'ncap2' language.
+Rorik Peterson
+     Original autotool build support.  Long command-line options.
+     Original UDUnits support.  Debianization.  Numerous bug-fixes.
+Joe Hamman
+     Python bindings (NCOpy).
+Daniel Wang
+     Script Workflow Analysis for MultiProcessing (SWAMP).  RPM support.
+Harry Mangalam
+     Benchmarking.  OPeNDAP configuration.
+Pedro Vicente
+     Windows Visual Studio support.  netCDF4 groups.
+Russ Rew
+     Advice on NCO structural algorithms
+Brian Mays
+     Original packaging for Debian GNU/Linux, 'nroff' man pages.
+George Shapovalov
+     Packaging for Gentoo GNU/Linux.
+Bill Kocik
+     Memory management.
+Len Makin
+     NEC SX architecture support.
+Jim Edwards
+     AIX architecture support.
+Juliana Rew
+     Compatibility with large PIDs.
+Karen Schuchardt
+     Auxiliary coordinate support.
+Gayathri Venkitachalam
+     MPI implementation.
+Scott Capps
+     Large work-load testing
+Peter Campbell, Martin Dix, Mark Flanner, Markus Liebig, Keith Lindsay, Mike Page, Martin Schmidt, Michael Schulz, Lori Sentman, Gary Strand, George White Andrew Wittenberg, Remik Ziemlinski
+     Excellent bug reports and feature requests.
+Daniel Baumann, Nick Bower, Luk Claebs, Barry deFreese, Aleksandar Jelenak, Francesco Lovergine, Matej Vela
+     Debian packaging
+Patrice Dumas, Ed Hill, Orion Poplawski
+     RedHat packaging
+George Shapavalov, Patrick Kursawe
+     Gentoo packaging
+Filipe Fernandes
+     OpenSuse packaging
+Takeshi Enomoto, Alexander Hansen
+     Mac OS packaging
+Eric Blake
+     Autoconf/M4 help
+Gavin Burris, Kyle Wilcox
+     RHEL and CentOS build scripts and bug reports.
+Andrea Cimatoribus
+     NCO Spiral Logo
+Martin Otte, Etienne Tourigny
+     Single bug reports and fixes
+Wenshan Wang
+     CMIP5 and MODIS processing documentation.
+   Please let me know if your name was omitted!
diff --git a/CITATION b/CITATION
new file mode 100644
index 0000000..43790e1
--- /dev/null
+++ b/CITATION
@@ -0,0 +1,31 @@
+NCO is three things: a geoscience data analysis toolkit, an
+open-source software project, and an academic enterprise that embodies
+fundamental new (research-level) algorithms for geoscience data
+analysis. Successful academic research depends upon peer-evaluation,
+dissemination, and explicit acknowledgement of prior work and original
+results. The accepted way to convey acknowledgement to NCO for ideas
+or assistance in workflow processing is to cite its peer-reviewed 
+description and or its User Guide. We encourage users and data science 
+researchers to cite NCO for another reason, too: it helps funding
+agencies track the impact of the work they fund.
+
+The recommended citation for NCO software is
+
+Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience
+Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10),
+1338-1342, doi:10.1016/j.envsoft.2008.03.004. 
+
+or
+
+Zender, C. S. (2014), netCDF Operator (NCO) User Guide, Version 4.4.3,
+http://nco.sf.net/nco.pdf. 
+
+Use the former when referring to overall design, purpose, and
+optimization of NCO, and use the latter when referring to specific
+features and/or the Users Guide itself.
+
+Additional information on citing NCO is in the User Guide at
+http://nco.sf.net#ctt
+A complete list of NCO publications and presentations is at
+http://nco.sf.net#pub
+This list links to the full papers and seminars themselves.
diff --git a/COPYRIGHT b/COPYRIGHT
new file mode 100644
index 0000000..62b2c39
--- /dev/null
+++ b/COPYRIGHT
@@ -0,0 +1,20 @@
+Charlie Zender wrote most of NCO and holds all NCO copyrights. 
+He licenses NCO under the GNU GPL3 (see file COPYING).
+Advance permission must be sought from him for any usage or 
+(re-)distribution of NCO code not compliant with the GPL. 
+Contact him at <surname at uci dot edu>. His surname is zender.
+
+All other NCO contributors either explicitly assigned their copyrights 
+to Zender, or their contributions were not legally significant for
+copyright purposes. These contributors are all listed under
+"Contributors" in the User Guide documentation (nco.texi) at
+http://nco.sf.net/nco.html#ppl  
+and in the file AUTHORS
+
+The original author of this software, Charlie Zender, seeks to improve
+it with your suggestions, contributions, bug-reports, and patches.
+Please contact the NCO project at http://nco.sf.net or write to
+Charlie Zender
+Department of Earth System Science
+University of California, Irvine
+Irvine, CA 92697-3100
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..1927ef0
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,16 @@
+All source code created by the NCO project and distributed with NCO is
+re-distributable under the terms of the GNU General Public License
+(GPL) Version 3. The full license text is at 
+http://www.gnu.org/copyleft/gpl.html and in the file COPYING. 
+Copyright information is in the file COPYRIGHT.
+
+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
+libraries and to distribute the resulting executables under the terms 
+of the GPL, but in addition obeying the extra stipulations of the 
+HDF, netCDF, OPeNDAP, and UDUnits licenses.
+   
+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.
diff --git a/bld/Makefile b/bld/Makefile
index 9a73850..28acda2 100644
--- a/bld/Makefile
+++ b/bld/Makefile
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/bld/Makefile,v 1.707 2014/05/29 18:00:25 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/bld/Makefile,v 1.729 2014/08/15 19:13:35 zender Exp $ -*-makefile-*-
 
 # Purpose: GNU Makefile for NCO module nco
 # Requires GNU Make---AT&T Make chokes on GNU syntax
@@ -13,14 +13,16 @@
 # scp ~/nco/bld/Makefile gplogin2.ps.uci.edu:nco/bld
 
 # Machine build parameters
-# givre.ess.uci.edu  : Source: NCO + netCDF, Method: Makefile,  Packages: All else
-# roulee.ess.uci.edu : Source: NCO + netCDF, Method: Makefile,  Packages: All else
-# neige.ess.uci.edu  : Source: NCO         , Method: Makefile,  Packages: All else
-# dust.ess.uci.edu   : Source: -           , Method: -       ,  Packages: All
-# glace.ess.uci.edu  : Source: NCO         , Method: Configure, Packages: All else
-# grele.ess.uci.edu  : Source: NCO         , Method: Makefile,  Packages: All else
-# tephra.ess.uci.edu : Source: NCO         , Method: Makefile,  Packages: All else
-# yellowstone.ucar.edu: Source: NCO        , Method: Makefile,  Packages: All else
+#                         Source     Method   Packages Compiler
+# 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
+# dust.ess.uci.edu   : -            -         All
+# 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
+# rhea.ccs.ornl.gov  : NCO          Makefile  All else 
 
 # Usage (testing):
 # make tst                           # Vanilla regression test
@@ -29,9 +31,9 @@
 # make MPI_PRC=3 bm                  # MPI benchmarks
 # make THR_NBR=2 tst                 # OpenMP regression test
 # make THR_NBR=2 bm                  # OpenMP benchmarks
+# make MPI=Y                         # MPI features (HDF5 and PnetCDF I/O)
 # make NETCDF4=Y                     # netCDF4 features
-# make PNETCDF=Y                     # pnetCDF features
-# make ZNETCDF=Y                     # znetCDF features
+# make PNETCDF=Y                     # PnetCDF features
 
 # Usage (Compilation):
 # cd ~/nco/qt;qmake;make;cd -        # Qt
@@ -41,7 +43,6 @@
 # cd ~/nco/bld;make cln bin_cln;cd - # Clean all dependencies for fresh build
 # cd ~/nco/bld;make dir all; cd -    # Create target directories then build
 # cd ~/nco/bld;make dbg;cd -         # Print make diagnostics
-# cd ~/nco/bld;make DAP_OPENDAP=Y;cd - # DAP support via OPeNDAP
 # cd ~/nco/bld;make DPKG=Y;cd -      # Debian hardening
 # cd ~/nco/bld;make GSL=Y;cd -	     # GSL support
 # cd ~/nco/bld;make I18N=Y;cd -      # Internationalization
@@ -56,39 +57,38 @@
 # cd ~/nco/bld;make sys;cd -         # Install in /usr/local (must sudo)
 # cd ~/nco/bld;make SZ=Y;cd -	     # Szip support
 # cd ~/nco/bld;make UDUNITS=Y;cd -   # UDUnits support
-# cd ~/nco/bld;make UDUNITS2=Y;cd -  # UDUnits2 support
 # cd ~/nco/bld;make --jobs=4;cd -    # Parallel make
 # Normal (Linux) developer systems:
-# cd ${HOME}/nco/bld;make cln all ncap2;cd - # New default for most machines
-# cd ${HOME}/nco/bld;make OMP=Y CUDA=Y OPTS=D NETCDF4=Y UDUNITS2=Y allinone;cd - # givre
-# cd ${HOME}/nco/bld;make OMP=Y OPTS=D NETCDF4=Y UDUNITS2=Y allinone;cd - # givre, neige
-# cd ${HOME}/nco/bld;make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=N UDUNITS2=Y allinone;cd - # glace, virga
+# cd ~/nco/bld;make cln all ncap2;cd - # New default for most machines
+# cd ~/nco/bld;make OMP=Y CUDA=Y OPTS=D NETCDF4=Y UDUNITS=Y allinone;cd - # givre
+# cd ~/nco/bld;make OMP=Y OPTS=D NETCDF4=Y UDUNITS=Y allinone;cd - # givre, neige
+# cd ~/nco/bld;make OMP=Y OPTS=D NETCDF4=N UDUNITS=Y allinone;cd - # glace, virga
 # mpi-selector --set openmpi_gcc-1.3.3 # Then use /sopt/netcdf/netcdf3-gcc-serial serial libraries
 # mpi-selector --set mpich_pgi_1.2.7p1 # After compiling
-# cd ${HOME}/nco/bld;ANTLR_ROOT=/sopt/gfortran_g++ CNK=N NETCDF_ROOT=/sopt/gfortran_g++ SZ_LIB=/sopt/lib UDUNITS_INC=/sopt/include UDUNITS_LIB=/sopt/lib make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=Y SZ=Y UDUNITS2=N allinone;cd - # greenplanet gcc
-# cd ${HOME}/nco/bld;ANTLR=/home/pvicente/install/antlr-2.7.7/bin/antlr ANTLR_ROOT=/home/pvicente/install/antlr-2.7.7 NETCDF_ROOT=/home/pvicente/install/netcdf-4.3.0 UDUNITS_INC=/home/pvicente/install/udunits-2.1.24/include UDUNITS_LIB=/home/pvicente/install/udunits-2.1.24/lib make OPTS=D allinone;cd - # greenplanet gcc pedro
-# cd ${HOME}/nco/bld;ANTLR=/sopt/ifort_icpc/bin/antlr ANTLR_ROOT=/sopt/ifort_icpc CNK=N SZ_LIB=/sopt/lib UDUNITS_INC=/sopt/include UDUNITS_LIB=/sopt/lib make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=Y SZ=Y UDUNITS2=N allinone;cd - # greenplanet intel
-# cd ${HOME}/nco/bld;ANTLR=/sopt/pgf90_pgcc/bin/antlr ANTLR_ROOT=/sopt/pgf90_pgcc CNK=N SZ_LIB=/sopt/lib UDUNITS_INC=/sopt/include UDUNITS_LIB=/sopt/lib make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=N SZ=Y UDUNITS2=N allinone;cd - # greenplanet pgi
-# cd ${HOME}/nco/bld;make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=N UDUNITS2=Y allinone;cd - # pbs
-# cd ${HOME}/nco/bld;make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=N UDUNITS2=Y allinone;cd - # grele
-# cd ${HOME}/nco/bld;make NETCDF4=N all ncap2;cd - # tephra
-# cd ${HOME}/nco/bld;make OMP=Y DAP_OPENDAP=N OPTS=D NETCDF4=N UDUNITS2=N allinone;cd - # silt, clay
-# cd ${HOME}/nco/bld;NETCDF_INC='/usr/include/netcdf-3' NETCDF_LIB='/usr/lib64' make GSL=N OMP=N DAP_OPENDAP=N OPTS=D NETCDF4=N UDUNITS=N allinone;cd - # snow
-# cd ${HOME}/nco/bld;make OMP=N DAP_OPENDAP=Y OPTS=D NETCDF4=N UDUNITS2=N USR_TKN='-DNEED_NC_INQ_FORMAT' allinone;cd - # snow w/OPeNDAP
-# cd ${HOME}/nco/bld;make OPTS=D USR_TKN='-DNEED_NC_INQ_FORMAT' allinone;cd -
+# cd ~/nco/bld;ANTLR_ROOT=/sopt/gfortran_g++ CNK=N NETCDF_ROOT=/sopt/gfortran_g++ SZ_LIB=/sopt/lib UDUNITS_INC=/sopt/include UDUNITS_LIB=/sopt/lib make OMP=Y OPTS=D NETCDF4=Y SZ=Y UDUNITS=N allinone;cd - # greenplanet gcc
+# cd ~/nco/bld;ANTLR=/home/pvicente/install/antlr-2.7.7/bin/antlr ANTLR_ROOT=/home/pvicente/install/antlr-2.7.7 NETCDF_ROOT=/home/pvicente/install/netcdf-4.3.0 UDUNITS_INC=/home/pvicente/install/udunits-2.1.24/include UDUNITS_LIB=/home/pvicente/install/udunits-2.1.24/lib make OPTS=D allinone;cd - # greenplanet gcc pedro
+# cd ~/nco/bld;ANTLR=/sopt/ifort_icpc/bin/antlr ANTLR_ROOT=/sopt/ifort_icpc CNK=N SZ_LIB=/sopt/lib UDUNITS_INC=/sopt/include UDUNITS_LIB=/sopt/lib make OMP=Y OPTS=D NETCDF4=Y SZ=Y UDUNITS=N allinone;cd - # greenplanet intel
+# cd ~/nco/bld;ANTLR=/sopt/pgf90_pgcc/bin/antlr ANTLR_ROOT=/sopt/pgf90_pgcc CNK=N SZ_LIB=/sopt/lib UDUNITS_INC=/sopt/include UDUNITS_LIB=/sopt/lib make OMP=Y OPTS=D NETCDF4=N SZ=Y UDUNITS=N allinone;cd - # greenplanet pgi
+# cd ~/nco/bld;make OMP=Y OPTS=D NETCDF4=N UDUNITS=Y allinone;cd - # pbs
+# cd ~/nco/bld;make OMP=Y OPTS=D NETCDF4=N UDUNITS=Y allinone;cd - # grele
+# cd ~/nco/bld;make NETCDF4=N all ncap2;cd - # tephra
+# cd ~/nco/bld;make OMP=Y OPTS=D NETCDF4=N UDUNITS=N allinone;cd - # silt, clay
+# cd ~/nco/bld;NETCDF_INC='/usr/include/netcdf-3' NETCDF_LIB='/usr/lib64' make GSL=N OMP=N OPTS=D NETCDF4=N UDUNITS=N allinone;cd - # snow
+# cd ~/nco/bld;make OMP=N OPTS=D NETCDF4=N UDUNITS=N USR_TKN='-DNEED_NC_INQ_FORMAT' allinone;cd - # snow w/OPeNDAP
+# cd ~/nco/bld;make OPTS=D USR_TKN='-DNEED_NC_INQ_FORMAT' allinone;cd -
 # 64-bit ABI on UCI MPC:
-# cd ${HOME}/nco/bld;env ANTLR='/software/antlr/bin/antlr' ANTLR_ROOT='/software/antlr' UDUNITS_INC='/software/udunits/include' UDUNITS_LIB='/software/udunits/lib' make --jobs=1 ABI=64 allinone;cd -
+# cd ~/nco/bld;env ANTLR='/software/antlr/bin/antlr' ANTLR_ROOT='/software/antlr' UDUNITS_INC='/software/udunits/include' UDUNITS_LIB='/software/udunits/lib' make --jobs=1 ABI=64 allinone;cd -
 # 64-bit ABI on UCI IPCC:
-# cd ${HOME}/nco/bld;env ANTLR='/usr/local/pgi/bin/antlr' ANTLR_ROOT='/usr/local/pgi' make --jobs=1 ABI=64 allinone;cd -
+# cd ~/nco/bld;env ANTLR='/usr/local/pgi/bin/antlr' ANTLR_ROOT='/usr/local/pgi' make --jobs=1 ABI=64 allinone;cd -
 # 64-bit ABI netCDF3 on NCAR AIX systems (bluefire):
-# cd ~/nco/bld;ANTLR='/contrib/antlr-2.7.7/bin/antlr' ANTLR_ROOT='/contrib/antlr-2.7.7' GSL_INC='/contrib/gsl-1.12/include' GSL_LIB='/contrib/gsl-1.12/lib' NETCDF_LIB='/usr/local/lib64/r4i4' UDUNITS_INC='/contrib/udunits-1.12.9/include' UDUNITS_LIB='/contrib/udunits-1.12.9/lib' make --jobs=1 DAP_OPENDAP=N OPTS=D NETCDF4=N UDUNITS2=N allinone ABI=64;cd -
+# cd ~/nco/bld;ANTLR='/contrib/antlr-2.7.7/bin/antlr' ANTLR_ROOT='/contrib/antlr-2.7.7' GSL_INC='/contrib/gsl-1.12/include' GSL_LIB='/contrib/gsl-1.12/lib' NETCDF_LIB='/usr/local/lib64/r4i4' UDUNITS_INC='/contrib/udunits-1.12.9/include' UDUNITS_LIB='/contrib/udunits-1.12.9/lib' make --jobs=1 OPTS=D NETCDF4=N UDUNITS=N allinone ABI=64;cd -
 # 64-bit ABI netCDF4 on NCAR AIX systems (bluefire):
 # cd ~/nco/bld;ANTLR='/contrib/antlr-2.7.7/bin/antlr' ANTLR_ROOT='/contrib/antlr-2.7.7' CURL_LIB='/contrib/curl/7.21.2/lib' GSL_INC='/contrib/gsl-1.12/include' GSL_LIB='/contrib/gsl-1.12/lib' HDF5_ROOT='/contrib/hdf5-1.8.7_seq' LDFLAGS='-lnetcdf -lhdf5_hl -lhdf5 -lz' NETCDF_ROOT='/contrib/netcdf/4.1.3_seq' SZ_LIB='/contrib/szip/lib' UDUNITS_LIB='/contrib/zlib/lib' make --jobs=1 OPTS=D SZ=Y allinone ABI=64;cd -
 # 64-bit ABI netCDF4 on NCAR AIX systems (bluefire):
-# cd ~/bin/AIX;/usr/local/bin/tar cvzf ~/nco-4.4.4.aix53.tar.gz nc*;scp ~/nco-4.4.4.aix53.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
+# cd ~/bin/AIX;/usr/local/bin/tar cvzf ~/nco-4.4.5.aix53.tar.gz nc*;scp ~/nco-4.4.5.aix53.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 # netCDF4 on NCAR Linux cluster systems (mirage):
 # cd ~/nco/bld;make OPTS=D allinone;cd -
-# netCDF4 on ORNL Linux cluster systems (titan, rhea):
+# netCDF4 on ORNL Linux cluster systems (titan, rhea.ccs.ornl.gov):
 # module avail
 # . ~/.bashrc
 # module add intel netcdf udunits gsl
@@ -102,16 +102,18 @@
 # cd ~/nco/bld;make NETCDF_ROOT='/glade/apps/opt/netcdf/4.3.0-rc4/gnu/default' UDUNITS_INC='/glade/apps/opt/udunits/2.1.24/gnu/default/include' UDUNITS_LIB='/glade/apps/opt/udunits/2.1.24/gnu/default/lib' OPTS=D allinone;cd -
 # Intel (works as of 20140129):
 # 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 LD_LIBRARY_PATH=${LD_LIBRARY_PATH}\:/glade/apps/opt/udunits/2.1.24/intel/12.1.4/lib
 # 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 UDUNITS2=Y allinone;cd -
-# cd ~/bin/WIN32;tar cvzf ~/nco-4.4.4.win32.cygwin.tar.gz nc* ; scp ~/nco-4.4.4.win32.cygwin.tar.gz zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
+# 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.5.win32.cygwin.tar.gz nc* ; scp ~/nco-4.4.5.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 dust.ess.uci.edu:/var/www/html/nco
 
 # Top-level tokens defining directory structure
-# These tokens may be over-ridden by environment variables or when invoking make, e.g., make DAP_OPENDAP=Y
+# These tokens may be over-ridden by environment variables or when invoking make, e.g., make OMP=Y
 MY_BLD_DIR := ../bld
 ifndef PVM_ARCH
  PVM_ARCH := $(shell ${MY_BLD_DIR}/pvmgetarch)
@@ -140,7 +142,7 @@ NCO_CXX_SRC_DIR := ${MY_SRC_DIR}/../nco_c++
 NCOXX_SRC_DIR := ${MY_SRC_DIR}/../nco++
 
 # Primary tokens which determine build options
-# Specify non-default when invoking make, e.g. make DAP_OPENDAP=Y
+# Specify non-default when invoking make, e.g. make OMP=Y
 ifndef ${ABI}
 # 32- vs. 64-bit ABI: 32=32-bit mode, 64=64-bit mode (default) if available
  ABI := 64
@@ -155,12 +157,9 @@ endif # endif CNK
 ifndef ${CUDA}
  CUDA := N
 endif # CUDA
-ifndef DAP_NETCDF
- DAP_NETCDF := Y
-endif # DAP_NETCDF
-ifndef DAP_OPENDAP
- DAP_OPENDAP := N
-endif # DAP_OPENDAP
+ifndef DAP
+ DAP := Y
+endif # DAP
 ifndef ${DBG}
 # Debugging token N=No (default) Y=Yes
  DBG := N
@@ -227,7 +226,7 @@ ifdef LIB_NCAR
 else # endelse LIB_NCAR
  NETCDF_LIB := ${NETCDF_ROOT}/lib # Directory containing libnetcdf.a
 endif # endif LIB_NCAR
-endif
+endif # endif NETCDF_LIB
 ifndef ${OMP} # OpenMP
  OMP := Y
 endif # endif OMP
@@ -256,11 +255,7 @@ ifndef SZ
 endif
 ifndef UDUNITS
 # Use UDUnits functionality
- UDUNITS := N
-endif
-ifndef UDUNITS2
-# Use UDUnits2 functionality
- UDUNITS2 := Y
+ UDUNITS := Y
 endif
 ifndef UNAMES
  UNAMES := $(shell uname -s)
@@ -286,53 +281,6 @@ ifndef YFLAGS # Flags for Bison (Yacc)
  YFLAGS := -d --name-prefix=${NCO_YY_PFX}
 endif
 
-# Default NCO build: DAP_NETCDF, DAP_OPENDAP, NETCDF4, PNETCDF, and ZNETCDF clauses may overwrite this
-ifndef LIB_NCAR
- NC_LDFLAGS := -L${NETCDF_LIB}
- NC_LIBS := -lnetcdf
-else
- NC_LDFLAGS := ${LIB_NCAR}
-endif
-
-ifeq (${DAP_NETCDF},Y)
-# Build NCO as DAP-enabled clients with netCDF-provided DAP
-ifndef DAP_NETCDF_ROOT
-# Directory containing libcurl.a
- DAP_NETCDF_ROOT := /usr
-endif # DAP_NETCDF_ROOT
- NC_LDFLAGS := -L${DAP_NETCDF_ROOT}/lib
-# netCDF 4.0.1+:
- NC_LIBS += -lcurl
-endif # end DAP_NETCDF
-
-ifeq (${DAP_OPENDAP},Y)
-# Build NCO as DAP-enabled clients with OPe NDAP
-# fxm: OPeNDAP bloats executables, should automagically enable stripping?
-# http://www.opendap.org/user/guide-html/guide_28.html
-ifndef DAP_OPENDAP_ROOT
-# Directory containing libdap.a, libnc-dap.a
- DAP_OPENDAP_ROOT := /usr/local
-endif # DAP_OPENDAP_ROOT
- NC_LDFLAGS := -L${DAP_OPENDAP_ROOT}/lib
-# NB: nc-dods, dap++ prior to version 3.5.X must be linked twice!
-# Required libraries for
-# DODS 3.3-:
-# NC_LIBS := -lnc-dods -ldap++ -lnc-dods -ldap++ -lwww -lz -lrx
-# DODS 3.4.X:
-# NC_LIBS := -lnc-dods -ldap++ -lnc-dods -ldap++ -lxml2 -lcurl -lpthread -ldl -lz
-# OPeNDAP 3.5.0-3.5.1:
-# NC_LIBS := -lnc-dap -ldap++ -lxml2 -lcurl
-# OPeNDAP 3.5+:
- NC_LIBS += -lnc-dap -ldap -lxml2 -lcurl
-# In addition, AIX OPeNDAP requires these libraries...
-ifneq (${null},$(findstring AIX,${PVM_ARCH}))
- NC_LIBS += -lcrypto -liconv -lssl -lz
-endif # end AIX
-# Get netCDF from OPeNDAP version
- NETCDF_INC=${DAP_OPENDAP_ROOT}/include/libnc-dap
- NETCDF_LIB=${DAP_OPENDAP_ROOT}/lib
-endif # end DAP_OPENDAP
-
 # Internationalize NCO with i18n features
 ifeq (${I18N},Y)
  MY_SHR_DIR := ${HOME}/share
@@ -357,56 +305,10 @@ else # !MPI_PRC
  MPI_PRC_SNG :=
 endif # !MPI_PRC
 
-ifeq (${NETCDF4},Y)
-# Enable netCDF4 functionality
-ifndef HDF5_ROOT
- HDF5_ROOT := ${NETCDF4_ROOT}
-endif
-ifndef HDF5_INC
- HDF5_INC := ${HDF5_ROOT}/include # Directory containing hdf5.h
-endif
-ifndef HDF5_LIB
- HDF5_LIB := ${HDF5_ROOT}/lib # Directory containing libhdf5.a
-endif
-# fxm: Temporary kludge: Machines with MPI_ROOT set are assumed to have parallel filesystems for NCO builds
-ifdef MPI_ROOT
- HDF5_INC += -I${MPI_ROOT}/include # Directory containing mpi.h
- HDF5_LIB += ${MPI_ROOT}/lib64 # Directory containing libmpi.a
-endif # !MPI_ROOT
- NETCDF_INC := ${NETCDF4_ROOT}/include
- NETCDF_LIB := ${NETCDF4_ROOT}/lib
- NC_LDFLAGS := -L${NETCDF_LIB} $(addprefix -L,${HDF5_LIB})
-# NC_LIBS := -lnetcdf -lhdf5_hl -lhdf5 -lz ${NC_LIBS}
- NC_LIBS := $(shell nc-config --libs) ${NC_LIBS}
-ifdef MPI_ROOT
- NC_LIBS += -lmpi
-endif # !MPI_ROOT
-ifdef CURL_LIB
- NC_LDFLAGS += -L${CURL_LIB}
-endif # end 
-ifeq (${SZ},Y)
-ifndef SZ_LIB
- SZ_LIB := /usr/lib # Directory containing libsz.a
-endif
- NC_LDFLAGS += -L${SZ_LIB}
- NC_LIBS += -lsz
-endif # !SZ
-ifneq (${HDF5_INC},${NETCDF_INC})
- NETCDF_INC += -I${HDF5_INC}
-endif # end 
-endif # endif NETCDF4
-
+# PnetCDF implies MPI
 ifeq (${PNETCDF},Y)
-# Enable pnetCDF functionality
- NC_LDFLAGS := -L${NETCDF_LIB}
- NC_LIBS += -lpnetcdf
-endif # endif PNETCDF
-
-ifeq (${ZNETCDF},Y)
-# Enable znetcdf functionality
- NC_LDFLAGS := -L${NETCDF_LIB}
- NC_LIBS += -lznetcdf
-endif # endif ZNETCDF
+ MPI := Y
+endif # !PNETCDF
 
 ifneq (${null},$(findstring LINUX,${PVM_ARCH}))
 # Decide among the plethora of Linux compilers
@@ -474,62 +376,45 @@ else
  GSL_INC := $(shell gsl-config --cflags)
 endif # endif GSL_INC
 ifdef GSL_LIB
- GSL_LIB := -L${GSL_LIB}
+ GSL_LIB := -L${GSL_LIB} -lgsl
 else
  GSL_LIB := $(shell gsl-config --libs)
 endif # endif GSL_LIB
- NETCDF_INC += ${GSL_INC}
- NC_LDFLAGS += -L${GSL_LIB}
- NC_LIBS += -lgsl
 endif # end if GSL
 
-ifeq (${UDUNITS2},Y)
- UDUNITS := Y
-endif # end if UDUNITS
 ifeq (${UDUNITS},Y)
-# Build UDUnits-enabled NCO 
-# Place UDUNITS block after DAP blocks for both to work together
-ifndef UDUNITS_INC
- UDUNITS_INC := /usr/local/include # Directory containing udunits.h
-endif
-ifndef UDUNITS_LIB
- UDUNITS_LIB := /usr/local/lib # Directory containing libudunits.a
-endif
-ifneq (${UDUNITS_INC},${NETCDF_INC})
- NETCDF_INC += -I${UDUNITS_INC}
-endif # end 
-ifneq (${UDUNITS_LIB},${NETCDF_LIB})
- NC_LDFLAGS += -L${UDUNITS_LIB}
-endif # end if
-ifeq (${UDUNITS2},Y)
 # 20130607: -lexpat needed on .deb systems, not on RPM systems
-UDUNITS_RPM_DRC := /usr/include/udunits2
-ifneq (${UDUNITS_INC},/usr/local/include)
-# UDUNITS_RPM_TST := $(shell ls ${UDUNITS_RPM_DRC}/udunits2.h)
- UDUNITS_RPM_TST := ${UDUNITS_RPM_DRC}/udunits2.h
+ifdef UDUNITS_INC
+ UDUNITS_INC := -I${UDUNITS_INC}
 else
- UDUNITS_RPM_TST := /usr/include/udunits2.h
-endif # end if
-ifeq (${UDUNITS_RPM_TST},${UDUNITS_RPM_DRC}/udunits2.h)
- NETCDF_INC += -I${UDUNITS_RPM_DRC}
+ UDUNITS_INC := -I/usr/include/udunits2
+endif # endif UDUNITS_INC
+ifdef UDUNITS_LIB
+ UDUNITS_LIB := -L${UDUNITS_LIB} -ludunits2
 else
- NETCDF_INC += -I${UDUNITS_INC}
-endif # end if
-ifneq (${UDUNITS_RPM_TST},${UDUNITS_RPM_DRC}/udunits2.h)
- NC_LIBS += -ludunits2 -lexpat
-else # end if UDUNITS2 Fedora
- NC_LIBS += -ludunits2
-endif # end if UDUNITS2 Fedora
-else
- NC_LIBS += -ludunits
-endif # end if UDUNITS2
+ UDUNITS_LIB := -ludunits2
+endif # end if UDUNITS_LIB
 endif # end if UDUNITS
 
-# TMP_* and NCO_* are required to play nicely with DAP flags
-NCO_LDFLAGS := -L${MY_LIB_DIR}
-NCO_LIBS := -lnco
-TMP_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS}
-TMP_LIBS := ${NCO_LIBS} ${NC_LIBS}
+# At this point we change NETCDF_INC from a directory to a flag
+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
+
+ifeq (${MPI},Y)
+# Enable MPI functionality
+ NC_CFLAGS := $(shell /usr/local/parallel/bin/nc-config --cflags)
+ NC_LDFLAGS := $(shell /usr/local/parallel/bin/nc-config --libs)
+ MPI_CFLAGS := -I/usr/include/openmpi-x86_64
+ MPI_LDFLAGS := -L/usr/lib64/openmpi/lib -lmpi
+endif # endif MPI
+
+ifdef LIB_NCAR
+ NC_LDFLAGS := ${LIB_NCAR} ${NC_LDFLAGS}
+endif
+
+OTHER_CFLAGS := ${NC_CFLAGS} ${MPI_CFLAGS} ${GSL_INC} ${UDUNITS_INC}
+OTHER_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS} ${MPI_LDFLAGS} ${GSL_LIB} ${UDUNITS_LIB}
 
 # NB: Do NOT add comment lines, e.g., # This is a comma, to character definitions
 null :=
@@ -569,9 +454,11 @@ CPP_PTH := $(foreach dir,${MDL_PTH},-I${dir})
 MDL_BIN_TRG := ncap ncatted ncbo ncecat ncflint ncks ncpdq ncra ncrename ncwa # NCO binary targets
 MDL_BIN_SYM_LNK := ncdiff ncea nces ncrcat # Symbolic links
 ifeq (${MPI},Y)
- MDL_MPI_TRG := mpncbo mpncecat mpncflint mpncpdq mpncra mpncwa # MPI binary targets
+# MDL_MPI_TRG := mpncbo mpncecat mpncflint mpncpdq mpncra mpncwa # MPI binary targets
+ MDL_MPI_TRG := # MPI binary targets
  MDL_MPI_TRG_SMP := ncbo ncecat ncflint ncpdq ncra ncwa # MPI binary targets
- MDL_MPI_SYM_LNK := mpncdiff mpncea mpnces mpncrcat # MPI Symbolic links
+# MDL_MPI_SYM_LNK := mpncdiff mpncea mpnces mpncrcat # MPI Symbolic links
+ MDL_MPI_SYM_LNK := # MPI Symbolic links
  MDL_MPI_STB := ${MDL_MPI_TRG} ${MDL_MPI_SYM_LNK} # All MPI files in MY_BIN_DIR
  MDL_MPI_BIN := $(addprefix ${MY_BIN_DIR}/,${MDL_MPI_TRG}) # mpi_cln removes these files
  MDL_MPI_OBJ := $(addsuffix .o,$(addprefix ${MY_OBJ_DIR}/,${MDL_MPI_TRG})) # mpi_cln removes these files
@@ -647,8 +534,11 @@ ${MY_INC_DIR}/%.hh : %.hh
 	cp -f -p $(notdir $@) $@
 
 # Rules for installing i18n files
-%.po : %.cc
-	xgettext --default-domain=$* --join-existing $<
+# -k_ : Treat underscore as keyword (so "_" is equivalent to "gettext")
+# --default-domain : Name of program or library
+# --join-existing : Join messages with existing file
+%.po : %.c
+	xgettext --default-domain=$* -k_ --join-existing $<
 ${MY_ES_DIR}/%.mo : %.po
 #	Linux version accepts more arguments than Solaris version
 #	msgfmt --output-file=$@ --statistics $<
@@ -705,12 +595,9 @@ endif # !(AIX || SGI)
 ifeq (${CNK},Y)
  CPP_TKN_OS += -DHAVE_NEW_CHUNKING_API
 endif # !CNK
-ifeq (${DAP_NETCDF},Y)
- CPP_TKN_OS += -DENABLE_DAP -DENABLE_DAP_NETCDF
-endif # !DAP_NETCDF
-ifeq (${DAP_OPENDAP},Y)
- CPP_TKN_OS += -DENABLE_DAP -DENABLE_DAP_OPENDAP
-endif # !DAP_OPENDAP
+ifeq (${DAP},Y)
+ CPP_TKN_OS += -DENABLE_DAP
+endif # !DAP
 ifeq (${GSL},Y)
  CPP_TKN_OS += -DENABLE_GSL -DHAVE_GSL_H
 endif # !GSL
@@ -720,11 +607,15 @@ ifneq (${MPI_FAKE},Y)
 endif # MPI_FAKE
 endif # !MPI
 ifeq (${UDUNITS},Y)
- CPP_TKN_OS += -DENABLE_UDUNITS -DHAVE_UDUNITS_H
-ifeq (${UDUNITS2},Y)
- CPP_TKN_OS += -DHAVE_UDUNITS2_H
-endif # !UDUNITS2
+ CPP_TKN_OS += -DENABLE_UDUNITS -DHAVE_UDUNITS_H -DHAVE_UDUNITS2_H
 endif # !UDUNITS
+ifeq (${NETCDF4},Y)
+ CPP_TKN_OS += -DENABLE_NETCDF4 -DHAVE_NETCDF4_H
+endif # endif NETCDF4
+ifeq (${PNETCDF},Y)
+ CPP_TKN_OS += -DENABLE_PNETCDF
+endif # !PNETCDF
+# endif PNETCDF
 # Assume strcasecmp() and strdup() routines are present (Comeau, Pathscale are exceptions)
 CPP_TKN_OS += 
 # fxm: Define HAVE_LIBINTL, HAVE_LOCALE_H, HAVE_GETTEXT, HAVE_OMP_H
@@ -744,11 +635,11 @@ ifneq (${null},$(findstring xl,${CC}))
  CPP_TKN_OS += -I/usr/include -I/usr/vacpp/include
 endif # xlC compilers
 # Add /usr/local/include for libintl.h explicitly until netCDF is moved there
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -DNEED_LOGF
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} -DNEED_LOGF
 LD := ld
 # 20020422: -lC links to AIX C++ library which contains float intrinsics cosf()...
 # -bh:5 suppresses annoying messages from xlC linker WARNING: Duplicate symbol: ...
-LDFLAGS += -bh:5 ${TMP_LDFLAGS} ${TMP_LIBS} -lm -lC
+LDFLAGS += -bh:5 ${OTHER_LDFLAGS} -lm -lC
 LEX := flex
 LINT := lint
 YACC := bison
@@ -860,13 +751,13 @@ CXX := cxx
 CC := cc
 CFLAGS := ${OMP_FLG}
 CPP := cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 FFLAGS := -r8 -i4 -c ${OMP_FLG} -automatic
 FIXEDFLAGS := -extend_source ${OMP_FLG} -automatic
 FREEFLAGS := -DHIDE_SHR_MSG -free
 LD := ld
-LDFLAGS += ${OMP_FLG} ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OMP_FLG} ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -894,13 +785,13 @@ ifeq (${PVM_ARCH},CRAY)
 CXX := CC
 CC := cc
 CPP := cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 # -F enables macro substitution
 # -dp enables DOUBLEPRECISION/double
 FFLAGS := -N 132 -F -dp
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -931,10 +822,10 @@ endif
 ifeq (${PVM_ARCH},HPPA)
 CXX := g++
 CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f77
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lnsl -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lnsl -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -953,17 +844,20 @@ endif
 endif
 # endif HPPA
 
-# Works on LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD
-ifneq (${null},$(findstring ${PVM_ARCH},LINUXALPHALINUXAMD64LINUXARMFREEBSD))
+# Works on LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD and MACOSX
+ifneq (${null},$(findstring ${PVM_ARCH},LINUXALPHALINUXAMD64LINUXARMFREEBSDMACOSX))
 CXX := ${LINUX_CXX}
 CC := ${LINUX_CC}
 CPP := ${CC}
 # NB: nameser.h needs -Di386, but gcc sends -Di586 (on pentiums)
 CPP_TKN_OS += -Di386
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := ${LINUX_FC}
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
+ifeq (${PVM_ARCH},MACOSX)
+ LDFLAGS += -lresolv
+endif # endif MACOSX
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1022,7 +916,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)
-# -O4: Turn on optimization so uninitialized variables are flagged. Downside: optimizes-out many symblols useful for debugging
+# -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
 # --no-alias? -fstrict-aliasing
@@ -1038,8 +932,8 @@ ifneq (clang,$(firstword ${CC}))
 # 20140526 clang does not recognize/utilize -fopenmp
  OMP_FLG_C := -fopenmp
  OMP_FLG_F := -fopenmp
-endif # endif clang
  LDFLAGS += -lgomp -lpthread
+endif # endif clang
 endif # endif OMP
 ifeq (${OPTS},O)
  CFLAGS += -O4 -g ${GCC_RCH_ARG}
@@ -1074,7 +968,7 @@ ifeq (${ABI},64)
 endif # endif ABI
 endif # endif LINUXAMD64
  CXXFLAGS := ${CFLAGS}
-endif # endif GNU Compiler Collection
+endif # endif GNU Compiler Collection or LLVM
 # Intel (Kai) C Compiler
 ifeq (icc,$(firstword ${CC}))
 # -fast: enable -xP -O3 -ipo -static
@@ -1274,19 +1168,20 @@ ifeq (${OMP},Y)
  LDFLAGS := ${OMP_FLG_C} ${LDFLAGS}
 endif # endif OMP
 endif
-# endif LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, FREEBSD
+# endif LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, FREEBSD, MACOSX
 
-ifeq (${PVM_ARCH},MACOSX)
-CXX := c++
+ifeq (${PVM_ARCH},MACOSXOLD)
+CXX := ${LINUX_CXX}
 # NB: -D_POSIX_SOURCE breaks MACOSX build in nco_fl_utl.c, nco_mmr.c
-CC := cc -std=c99 -pedantic -D_BSD_SOURCE
+#CC := cc -std=c99 -pedantic -D_BSD_SOURCE
+CC := ${LINUX_CC} -std=c99 -pedantic -D_BSD_SOURCE
+CPP := ${CC}
 # -fno-common: Allows shared libraries to build
 CFLAGS := -Wall -Werror=format-security -fno-common
-CPP := ${CC}
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lresolv -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lresolv -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1310,7 +1205,7 @@ ifeq (${OMP},Y)
  LDFLAGS := ${OMP_FLG} ${LDFLAGS}
 endif # endif OMP
 endif
-# endif MACOSX
+# endif MACOSXOLD
 
 ifeq (${PVM_ARCH},NECSX)
 ifeq (${OMP},Y)
@@ -1321,10 +1216,10 @@ CXX := c++
 CC := cc
 CPP := c++ -E
 #CPP := /usr/lib/cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1352,10 +1247,10 @@ ifeq (${PVM_ARCH},RS6K)
 CXX := g++
 CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
 CPP := /lib/cpp -P
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := xlf
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1389,7 +1284,7 @@ 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
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+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
  CPPFLAGS := -I$(MIPSPRO_SGI)/usr/include ${CPPFLAGS}
@@ -1415,7 +1310,7 @@ else # ABI=32
 endif # endif ABI
 endif # endif SGI64, SGIMP64
 ifeq (gcc,$(firstword ${CC}))
- LDFLAGS += ${GCC_LDFLAGS_SZ_SPC} ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+ LDFLAGS += ${GCC_LDFLAGS_SZ_SPC} ${OTHER_LDFLAGS} -lm
  CFLAGS := ${GCC_ABI_FLG} -Wall -Werror=format-security
 ifeq (${OPTS},O)
  CFLAGS += -O2
@@ -1433,7 +1328,7 @@ endif
 endif
 # endif CC=gcc
 ifeq (cc,$(firstword ${CC}))
- LDFLAGS += ${SGI_ABI_FLG} ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+ LDFLAGS += ${SGI_ABI_FLG} ${OTHER_LDFLAGS} -lm
  CFLAGS := ${SGI_ABI_FLG}
 ifeq (${OPTS},O)
  CFLAGS += -O2
@@ -1476,12 +1371,12 @@ CPP := cc -E
 #CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_SOURCE
 #CFLAGS := -Wall
 #CPP := cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90 -DHIDE_SHR_MSG
 #FFLAGS := -xs -stackvar -e -Qoption f90comp -r8const
 FFLAGS := -xs -stackvar -e 
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lsunmath -lresolv -lsocket -lnsl -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lsunmath -lresolv -lsocket -lnsl -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1511,10 +1406,10 @@ CC := gcc -std=c99 -pedantic -D_BSD_SOURCE -D_POSIX_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
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := g77
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1531,20 +1426,6 @@ ${MY_OBJ_DIR}/%.o : %.f
 endif
 # endif WIN32
 
-# Link to OPeNDAP libraries first, see OPeNDAP User's Guide
-# Currently this is invoked by using 'make DAP_OPENDAP=Y'
-ifeq (${DAP_OPENDAP},Y)
-# OPeNDAP >= 3.7.0 defines NC_64BIT_OFFSET correctly
-# CPPFLAGS += -DNC_64BIT_OFFSET=0
-ifneq (${CC},g++)
-ifeq (${null},$(findstring xl,${CC}))
-# g++ automatically links to -lstdc++, other compilers may need help
- LDFLAGS := ${LDFLAGS} -lstdc++
-endif # !xl*
-endif # !g++
-endif # !DAP_OPENDAP
-# endif DAP_OPENDAP
-
 # Resolve nvcc CUDA run-time library functions
 ifeq (${CUDA},Y)
  CUDA_FLG_C := 
@@ -1555,27 +1436,12 @@ endif # endif CUDA
 # Internationalize NCO with i18n features
 ifeq (${I18N},Y)
  CPPFLAGS += -DI18N
-ifneq (${null},$(findstring SGI,${PVM_ARCH}))
+ifneq (${null},$(findstring MACOSX,${PVM_ARCH}))
  LDFLAGS += -lintl
 endif
 endif
 # endif I18N
 
-ifeq (${NETCDF4},Y)
- CPPFLAGS += -DENABLE_NETCDF4 -DHAVE_NETCDF4_H
-endif
-# endif NETCDF4
-
-ifeq (${PNETCDF},Y)
- CPPFLAGS += -DENABLE_PNETCDF
-endif
-# endif PNETCDF
-
-ifeq (${ZNETCDF},Y)
- CPPFLAGS += -DENABLE_ZNETCDF
-endif
-# endif ZNETCDF
-
 # Default to MPICC, MPICXX to CC, CXX and cross your fingers
 MPICC := ${CC}
 MPICXX := ${CXX}
@@ -1661,7 +1527,7 @@ allinone: all nco_c++ nco++
 nco_c++: 
 	-cd ../src/nco_c++; ${MAKE} -f Makefile.old DBG=${DBG} NETCDF4=${NETCDF4} OMP=${OMP} OPTS=${OPTS} SZ=${SZ} lib dat all
 nco++: 
-	-cd ../src/nco++; ${MAKE} -f Makefile.old CNK=${CNK} DAP_NETCDF=${DAP_NETCDF} DAP_OPENDAP=${DAP_OPENDAP} DBG=${DBG} GSL=${GSL} NETCDF4=${NETCDF4} OMP=${OMP} OPTS=${OPTS} SZ=${SZ} UDUNITS2=${UDUNITS2} lib all
+	-cd ../src/nco++; ${MAKE} -f Makefile.old CNK=${CNK} DAP=${DAP} DBG=${DBG} GSL=${GSL} MPI=${MPI} NETCDF4=${NETCDF4} OMP=${OMP} OPTS=${OPTS} PNETCDF=${PNETCDF} SZ=${SZ} UDUNITS=${UDUNITS} lib all
 # Targets in bin
 mpi:   mpi_nco
 mpinco:   mpi_nco
@@ -1779,7 +1645,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.4 rpm
+rpm:	${MY_BLD_DIR}/nco.spec # Building rpm requires root priveleges, e.g., sudo make NCO_VRS=4.4.5 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
@@ -1834,7 +1700,7 @@ ${MY_DAT_DIR}/buggy.nc: ${MY_DAT_DIR}/buggy.cdl
 dap:	data
 	-cd ~/nco/data; scp in.nc in.cdl dust.ess.uci.edu:/var/www/html/dodsdata; scp in.nc in.cdl esmf.ess.uci.edu:/var/www/html/dodsdata; scp in.nc in.cdl esmf.ess.uci.edu:/data/dodsdata
 data:	dat
-dat:	${MY_DAT_DIR}/cmip5.nc ${MY_DAT_DIR}/obs.nc ${MY_DAT_DIR}/dsm.nc ${MY_DAT_DIR}/hdn.nc ${MY_DAT_DIR}/hdf.hdf ${MY_DAT_DIR}/mdl_1.nc ${MY_DAT_DIR}/mdl_2.nc ${MY_DAT_DIR}/mdl_3.nc ${MY_DAT_DIR}/in.nc ${MY_DAT_DIR}/in_grp.nc ${MY_DAT_DIR}/in_4.nc ${MY_DAT_DIR}/in_grp_1.nc ${MY_DAT_DIR}/in_grp_2.nc ${MY_DAT_DIR}/in_grp_3.nc ${MY_DAT_DIR}/in_grp_4.nc ${MY_DAT_DIR}/in_grp_5.nc ${MY_DAT_DIR}/in_grp_6.nc ${MY_DAT_DIR}/in_grp_7.nc ${MY_DAT_DIR}/in_rec_zero.nc
+dat:	${MY_DAT_DIR}/cmip5.nc ${MY_DAT_DIR}/obs.nc ${MY_DAT_DIR}/dsm.nc ${MY_DAT_DIR}/hdn.nc ${MY_DAT_DIR}/hdf.hdf ${MY_DAT_DIR}/mdl_1.nc ${MY_DAT_DIR}/mdl_2.nc ${MY_DAT_DIR}/mdl_3.nc ${MY_DAT_DIR}/mrd.nc ${MY_DAT_DIR}/in.nc ${MY_DAT_DIR}/in_grp.nc ${MY_DAT_DIR}/in_4.nc ${MY_DAT_DIR}/in_grp_1.nc ${MY_DAT_DIR}/in_grp_2.nc ${MY_DAT_DIR}/in_grp_3.nc ${MY_DAT_DIR}/in_grp_4.nc ${MY_DAT_DIR}/in_grp_5.nc ${MY_DAT_DIR}/in_grp_6.nc ${MY_DAT_DIR}/in_grp_7.nc ${MY_DAT_DIR}/in_rec_zero.nc
 	-for fl in ${MDL_DAT_STB}; do cd ${MY_DAT_DIR}; ln -s -f in.nc $$fl; done
 ${MY_DAT_DIR}/in.nc: ${MY_DAT_DIR}/in.cdl
 	ncgen -b -o $@ $<
@@ -1866,6 +1732,8 @@ ${MY_DAT_DIR}/cmip5.nc: ${MY_DAT_DIR}/cmip5.cdl
 	-ncgen -k netCDF-4 -b -o $@ $<
 ${MY_DAT_DIR}/hdn.nc: ${MY_DAT_DIR}/hdn.cdl
 	-ncgen -k netCDF-4 -b -o $@ $<
+${MY_DAT_DIR}/mrd.nc: ${MY_DAT_DIR}/mrd.cdl
+	-ncgen -k netCDF-4 -b -o $@ $<
 ${MY_DAT_DIR}/dsm.nc: ${MY_DAT_DIR}/dsm.cdl
 	-ncgen -k netCDF-4 -b -o $@ $<
 ${MY_DAT_DIR}/obs.nc: ${MY_DAT_DIR}/obs.cdl
@@ -2034,16 +1902,16 @@ dbg:
 	@printf "CURL_LIB = ${CURL_LIB}\n"
 	@printf "CXX = ${CXX}\n"
 	@printf "CXXFLAGS = ${CXXFLAGS}\n"
-	@printf "DAP_NETCDF = ${DAP_NETCDF}\n"
-	@printf "DAP_NETCDF_ROOT = ${DAP_NETCDF_ROOT}\n"
-	@printf "DAP_OPENDAP = ${DAP_OPENDAP}\n"
-	@printf "DAP_OPENDAP_ROOT = ${DAP_OPENDAP_ROOT}\n"
+	@printf "DAP = ${DAP}\n"
+	@printf "DAP_ROOT = ${DAP_ROOT}\n"
 	@printf "DBG = ${DBG}\n"
 	@printf "FC = ${FC}\n"
 	@printf "FFLAGS = ${FFLAGS}\n"
 	@printf "FL_FMT = ${FL_FMT}\n"
 	@printf "GCC_RCH_ARG = ${GCC_RCH_ARG}\n"
-	@printf "GSL = $(GSL)\n"
+	@printf "GSL = ${GSL}\n"
+	@printf "GSL_INC = ${GSL_INC}\n"
+	@printf "GSL_LIB = ${GSL_LIB}\n"
 	@printf "HDF5_ROOT = ${HDF5_ROOT}\n"
 	@printf "HDF5_INC = ${HDF5_INC}\n"
 	@printf "HDF5_LIB = ${HDF5_LIB}\n"
@@ -2057,8 +1925,8 @@ dbg:
 	@printf "LEX = ${LEX}\n"
 	@printf "LFLAGS = ${LFLAGS}\n"
 	@printf "LIB_NCAR = ${LIB_NCAR}\n"
-	@printf "LINUX_CC = $(LINUX_CC)\n"
-	@printf "LINUX_CXX = $(LINUX_CXX)\n"
+	@printf "LINUX_CC = ${LINUX_CC}\n"
+	@printf "LINUX_CXX = ${LINUX_CXX}\n"
 	@printf "MDL_BIN_TRG = ${MDL_BIN_TRG}\n"
 	@printf "MDL_DPN = ${MDL_DPN}\n"
 	@printf "MDL_MAN = ${MDL_MAN}\n"
@@ -2067,6 +1935,7 @@ dbg:
 	@printf "MDL_PTH = ${MDL_PTH}\n"
 	@printf "MDL_RPM_NST_NM = ${MDL_RPM_NST_NM}\n"
 	@printf "MDL_SRC = ${MDL_SRC}\n"
+	@printf "MPI = ${MPI}\n"
 	@printf "MPICC = ${MPICC}\n"
 	@printf "MPICH_CC = ${MPICH_CC}\n"
 	@printf "MPICH_CXX = ${MPICH_CXX}\n"
@@ -2084,40 +1953,38 @@ dbg:
 	@printf "MY_LIB_DIR = ${MY_LIB_DIR}\n"
 	@printf "MY_MAN_DIR = ${MY_MAN_DIR}\n"
 	@printf "MY_OBJ_DIR = ${MY_OBJ_DIR}\n"
-	@printf "NCO_LDFLAGS = $(NCO_LDFLAGS)\n"
-	@printf "NCO_LIBS = $(NCO_LIBS)\n"
+	@printf "NCO_LDFLAGS = ${NCO_LDFLAGS}\n"
 	@printf "NCO_VRS = ${NCO_VRS}\n"
-	@printf "NC_LDFLAGS = $(NC_LDFLAGS)\n"
-	@printf "NC_LIBS = $(NC_LIBS)\n"
+	@printf "NC_CFLAGS = ${NC_CFLAGS}\n"
+	@printf "NC_LDFLAGS = ${NC_LDFLAGS}\n"
 	@printf "NETCDF4 = ${NETCDF4}\n"
 	@printf "NETCDF4_ROOT = ${NETCDF4_ROOT}\n"
 	@printf "NETCDF_INC = ${NETCDF_INC}\n"
 	@printf "NETCDF_LIB = ${NETCDF_LIB}\n"
 	@printf "NETCDF_ROOT = ${NETCDF_ROOT}\n"
 	@printf "OMP = ${OMP}\n"
+	@printf "OPTS = ${OPTS}\n"
+	@printf "OTHER_CFLAGS = ${OTHER_CFLAGS}\n"
+	@printf "OTHER_LDFLAGS = ${OTHER_LDFLAGS}\n"
 	@printf "PGI_RCH_ARG = ${PGI_RCH_ARG}\n"
-	@printf "PSC_RCH_ARG = ${PSC_RCH_ARG}\n"
 	@printf "PNETCDF = ${PNETCDF}\n"
+	@printf "PSC_RCH_ARG = ${PSC_RCH_ARG}\n"
 	@printf "PVM_ARCH = ${PVM_ARCH}\n"
 	@printf "RPM = ${RPM}\n"
-	@printf "SRC_LST = $(SRC_LST)\n"
+	@printf "SRC_LST = ${SRC_LST}\n"
 	@printf "STC = ${STC}\n"
 	@printf "SZ = ${SZ}\n"
 	@printf "TAGS_FILES = ${TAGS_FILES}\n"
 	@printf "TAGS_FILTER_FILES = ${TAGS_FILTER_FILES}\n"
 	@printf "THR_NBR = ${THR_NBR}\n"
 	@printf "THR_NBR_SNG = ${THR_NBR_SNG}\n"
-	@printf "TMP_LDFLAGS = ${TMP_LDFLAGS}\n"
-	@printf "TMP_LIBS = ${TMP_LIBS}\n"
-	@printf "UDUNITS = $(UDUNITS)\n"
-	@printf "UDUNITS2 = $(UDUNITS2)\n"
-	@printf "UDUNITS_INC = $(UDUNITS_INC)\n"
-	@printf "UDUNITS_LIB = $(UDUNITS_LIB)\n"
+	@printf "UDUNITS = ${UDUNITS}\n"
+	@printf "UDUNITS_INC = ${UDUNITS_INC}\n"
+	@printf "UDUNITS_LIB = ${UDUNITS_LIB}\n"
 	@printf "VPATH = ${VPATH}\n"
 	@printf "VRS_SNG = ${VRS_SNG}\n"
 	@printf "YACC = ${YACC}\n"
 	@printf "YFLAGS = ${YFLAGS}\n"
-	@printf "ZNETCDF = ${ZNETCDF}\n"
 distclean: dst_cln
 dst_cln: cln bin_cln dat_cln doc_cln root_cln
 	cd ${MY_BLD_DIR}; rm -f *~
@@ -2180,7 +2047,7 @@ else
 endif
 	chmod 755 ${MY_BIN_DIR}/$@${BNR_SFX}
 ncap2 :
-	-cd ../src/nco++; ${MAKE} -f Makefile.old DAP_NETCDF=${DAP_NETCDF} DAP_OPENDAP=${DAP_OPENDAP} DBG=${DBG} GSL=${GSL} NETCDF4=${NETCDF4} OMP=${OMP} OPTS=${OPTS} SZ=${SZ} UDUNITS2=${UDUNITS2} all
+	-cd ../src/nco++; ${MAKE} -f Makefile.old DAP=${DAP} DBG=${DBG} GSL=${GSL} MPI=${MPI} NETCDF4=${NETCDF4} OMP=${OMP} OPTS=${OPTS} PNETCDF=${PNETCDF} SZ=${SZ} UDUNITS=${UDUNITS} all
 
 #	/bin/rm -f ${MDL_NCAP} ${MY_OBJ_DIR}/$@_lex.o ${MY_OBJ_DIR}/ncap_yacc.h ${MY_OBJ_DIR}/ncap_yacc.c
 
diff --git a/bld/nco.spec b/bld/nco.spec
index da00fd6..25046dd 100644
--- a/bld/nco.spec
+++ b/bld/nco.spec
@@ -2,17 +2,17 @@
 # http://cvs.fedoraproject.org/viewvc/devel/nco/nco.spec?view=co
 
 Name:           nco
-Version:        4.4.4
+Version:        4.4.5
 Release:        1%{?dist}
 Summary:        Programs that manipulate netCDF files
 Group:          Applications/Engineering
 License:        GPL3
 URL:            http://nco.sf.net/
 
-# Obtain NCO version 4.4.4-1 tar.gz from Sourceforge using CVS:
+# Obtain NCO version 4.4.5-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.4-1 -d nco-%{version} nco
-# tar czf nco-%{version}.tar.gz --exclude='nco-4.4.4/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.5-1 -d nco-%{version} nco
+# tar czf nco-%{version}.tar.gz --exclude='nco-4.4.5/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,6 +108,9 @@ fi
 # %{_libdir}/libnco++.so
 
 %changelog
+* Tue Aug 26 2014 Charlie Zender <zender at uci.edu> - 4.4.5-1
+- new upstream 4.4.5
+
 * Thu May 29 2014 Charlie Zender <zender at uci.edu> - 4.4.4-1
 - new upstream 4.4.4
 
diff --git a/bld/nco_dst.pl b/bld/nco_dst.pl
index 1e1077f..b367a84 100755
--- a/bld/nco_dst.pl
+++ b/bld/nco_dst.pl
@@ -5,19 +5,20 @@
 
 # Usage:
 # Export tagged, public versions
-
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_4 # Build, do not release on SF
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --sf nco-4_4_4 # Build, release on SF
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --nst_all nco-4_4_4 # Install, do not build
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --nst_all nco-4_4_4 # Build and install
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_cnt nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_prs nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cgd_cnt nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cray_prs nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --bbl_cnt nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --blk_cnt nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --dat_cnt nco-4_4_4
-# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --ute_prs nco-4_4_4
+# /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_5 # Build, do not release on SF
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --sf nco-4_4_5 # Build, release on SF
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --nst_all nco-4_4_5 # Install, do not build
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln --nst_all nco-4_4_5 # Build and install
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_cnt nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --acd_prs nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cgd_cnt nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --cray_prs nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --bbl_cnt nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --blk_cnt nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --dat_cnt nco-4_4_5
+# ${HOME}/nco/bld/nco_dst.pl --dbg=2 --cln --ute_prs nco-4_4_5
 
 # Export daily snapshot
 # ${HOME}/nco/bld/nco_dst.pl --dbg=2 
@@ -31,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.214 2014/05/01 19:05:38 zender Exp $';
+my $CVS_Header='$Header: /cvsroot/nco/nco/bld/nco_dst.pl,v 1.216 2014/05/30 04:23:44 zender Exp $';
 
 # Specify modules
 use strict; # Protect all namespaces
@@ -68,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/05/01 19:05:38 $';
-my $CVS_Id='$Id: nco_dst.pl,v 1.214 2014/05/01 19:05:38 zender Exp $';
-my $CVS_Revision='$Revision: 1.214 $';
+my $CVS_Date='$Date: 2014/05/30 04:23:44 $';
+my $CVS_Id='$Id: nco_dst.pl,v 1.216 2014/05/30 04:23:44 zender Exp $';
+my $CVS_Revision='$Revision: 1.216 $';
 my $CVSROOT='zender at nco.cvs.sf.net:/cvsroot/nco'; # CVS repository
 my $DATA=$ENV{'DATA'};
 my $HOME=$ENV{'HOME'};
@@ -255,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.4/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.5/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
@@ -282,7 +283,9 @@ if($bld){
     if($sf){
 	cmd_prc("$rcp_cmd_no_prs_prm $dst_pth_bld/doc/index.shtml $dst_pth_bld/doc/nco.png $dst_pth_bld/doc/nco_news.shtml $dst_pth_bld/doc/README $dst_pth_bld/doc/TODO $dst_pth_bld/doc/VERSION $dst_pth_bld/doc/ChangeLog $usr_nm,nco\@$www_mch_mrr:$www_drc_mrr");
 	cmd_prc("$rcp_cmd_no_prs_prm $dst_pth_bld/doc/nco.html $dst_pth_bld/doc/nco.info* $dst_pth_bld/doc/nco.dvi $dst_pth_bld/doc/nco.pdf $dst_pth_bld/doc/nco.ps $dst_pth_bld/doc/nco.ps $dst_pth_bld/doc/nco.texi $usr_nm,nco\@$www_mch_mrr:$www_drc_mrr");
-	cmd_prc("$rcp_cmd_no_prs_prm $dst_pth_pfx/$dst_fl $DATA/$dst_fl_chg $DATA/$dst_fl_deb $DATA/$dst_fl_dsc $DATA/$dst_fl_tgz $usr_nm,nco\@$www_mch_mrr:$www_drc_mrr/src"); # Copy Debian files to WWW server
+	cmd_prc("$rcp_cmd_no_prs_prm $dst_pth_pfx/$dst_fl $usr_nm,nco\@$www_mch_mrr:$www_drc_mrr/src"); # Copy tarball to WWW server
+# 20140529: Disable Debian copying until .debs built again
+#	cmd_prc("$rcp_cmd_no_prs_prm $dst_pth_pfx/$dst_fl $DATA/$dst_fl_chg $DATA/$dst_fl_deb $DATA/$dst_fl_dsc $DATA/$dst_fl_tgz $usr_nm,nco\@$www_mch_mrr:$www_drc_mrr/src"); # Copy Debian files to WWW server
 # Shell commands on SourceForge disabled 20081018
 #	cmd_prc("$rsh_cmd $www_mch_mrr \"cd $www_drc_mrr; ln -s -f ./src/$dst_fl nco.tar.gz\"");
     } # endif SourceForge
diff --git a/bm/NCO_rgr.pm b/bm/NCO_rgr.pm
index a6528b7..90f2086 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.496 2014/05/27 16:51:56 zender Exp $
+# $Header: /cvsroot/nco/nco/bm/NCO_rgr.pm,v 1.506 2014/08/25 22:36:00 zender Exp $
 
 # Purpose: All REGRESSION tests for NCO operators
 # BENCHMARKS are coded in "NCO_benchmarks.pm"
@@ -85,36 +85,30 @@ sub tst_rgr {
     
 print "\n";
 
-
 my $RUN_NETCDF4_TESTS=0;
-my $RUN_NETCDF4_TESTS_VERSION_43=0;
+my $RUN_NETCDF4_TESTS_VERSION_GE_431=0;
 
 system("ncks --get_prg_info");
 # system() runs a command and returns exit status information as a 16 bit value: 
 # Low 7 bits are signal process died from, if any, and high 8 bits are actual exit value
 if($? == -1){
-    print "failed to execute: ncks --get_prg_info: $!\n";
+  print "failed to execute: ncks --get_prg_info: $!\n";
 }else{
-  my $exit_value=$? >> 8;
+#  my $exit_value=$? >> 8;
+    my $exit_value=$?;
 
   # nco_get_prg_info() returns codes
   # 3 (for library 3.x)
-  # 41 (for library 4.1.x)
-  # 43 (for library 4.3.1.x)
-
-  if ($exit_value==40)  {$RUN_NETCDF4_TESTS=1;}
-  if ($exit_value==41)  {$RUN_NETCDF4_TESTS=1;}
-  if ($exit_value==43) {$RUN_NETCDF4_TESTS=1;}
-  if ($exit_value==43) {$RUN_NETCDF4_TESTS_VERSION_43=1;}
-
-  if ($exit_value==41)
-  {
-   print "netCDF version 4.1.x detected\n";
-  }
-  if ($exit_value==43)
-  {
-   print "netCDF version 4.3.1.x detected\n";
-  }
+  # 410 (for library 4.1.x)
+  # 430 (for library 4.3.0)
+
+  if($exit_value >= 400){$RUN_NETCDF4_TESTS=1;}
+  if($exit_value >= 431){$RUN_NETCDF4_TESTS_VERSION_GE_431=1;}
+
+  if($exit_value == 410){print "netCDF version 4.1.x detected\n";}
+  if($exit_value == 431){print "netCDF version 4.3.1 detected\n";}
+  if($exit_value == 432){print "netCDF version 4.3.2 detected\n";}
+  if($exit_value == 433){print "netCDF version 4.3.3 detected\n";}
 
 }
 print "\n";
@@ -261,7 +255,6 @@ print "\n";
 	$#tst_cmd=0; # Reset array
 
 #ncatted #3
-
 	$tst_cmd[0]="ncatted -h -O $nco_D_flg -a _FillValue,wgt_one,c,f,200.0 $in_pth_arg in.nc %tmp_fl_00%";
 	$tst_cmd[1]="ncks -C -H -s '%g' -d lat,1 -v wgt_one %tmp_fl_00%";
 	$dsc_sng="Create new _FillValue attribute ";
@@ -271,8 +264,7 @@ print "\n";
 	$#tst_cmd=0; # Reset array
 
 #ncatted #4
-
-# Fragile: This test fails when length of command changes
+# Fragile: Test fails when command length changes, e.g., on MACOSX
 	$tst_cmd[0]="ncatted -O --hdr_pad=1000 $nco_D_flg -a missing_value,val_one_mss,m,f,0.0 $in_pth_arg in.nc %tmp_fl_00%";
 	$tst_cmd[1]="ncks -M %tmp_fl_00% | grep hdr_pad | wc > %tmp_fl_01%";
 	$tst_cmd[2]="cut -c 14-15 %tmp_fl_01%"; ## Daniel:fxm cut/ncks, but how to do grep and wc???
@@ -286,7 +278,7 @@ print "\n";
 
 	$tst_cmd[0]="ncatted -O $nco_D_flg -a nw1,'^three*',c,i,999 $in_pth_arg in.nc %tmp_fl_00%";
 	$tst_cmd[1]="ncap2 -v -C -O -s 'n2=three_dmn_var_int\@nw1;' %tmp_fl_00% %tmp_fl_01%";
-	$tst_cmd[2]="ncks -O -C -H -s '%i'  -v n2 %tmp_fl_01%";
+	$tst_cmd[2]="ncks -O -C -H -s '%i' -v n2 %tmp_fl_01%";
 	$dsc_sng="Variable wildcarding (requires regex)";
 	$tst_cmd[3]="999";
 	$tst_cmd[4]="SS_OK";
@@ -295,7 +287,7 @@ print "\n";
 	
 #4.3.8	
 #ncatted #6
-#ncatted -O -a purpose,rlev,m,c,new_value in_grp_3.nc out.nc
+#ncatted -O -a purpose,rlev,m,c,new_value in_grp_3.nc ~/foo.nc
 
     #######################################
     #### Group tests (requires netCDF4) ###
@@ -396,7 +388,7 @@ print "\n";
     $#tst_cmd=0; # Reset array - ok
 
 # ncbo #3    
-# ncbo -h -O --op_typ='-' -v mss_val_scl  in.nc in.nc out.nc
+# ncbo -h -O --op_typ='-' -v mss_val_scl -p ~/nco/data in.nc in.nc ~/foo.nc
     
     $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%";
@@ -558,8 +550,8 @@ print "\n";
 # NCO 4.3.0: added support for groups; ncbo -g
 #   
 #ncbo #16
-# ncbo -O -y add -g g4 -v one_dmn_rec_var in_grp.nc in_grp.nc out.nc
-# ncks -C -H -s '%d'  -d time,0,0,1 -g g4 -v one_dmn_rec_var out.nc
+# ncbo -O -y add -g g4 -v one_dmn_rec_var in_grp.nc 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 
 
@@ -572,8 +564,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			
     
 #ncbo #17
-# ncbo -O -y add -g g4 -v one_dmn_rec_var ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc out.nc
-# ncks -C -H -s '%d'  -d time,0,0,1 -g g4 -v one_dmn_rec_var out.nc
+# 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
 
     $dsc_sng="(Groups) Addition with limits -d time,1,1,1 -y add -g g4 -v one_dmn_rec_var";
@@ -585,8 +577,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			    
     
 #ncbo #18
-# ncbo -O -v one_dmn_rec_var ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc out.nc
-# ncks -C -H -s '%d'  -d time,0,0,1 -g g4 -v one_dmn_rec_var out.nc
+# ncbo -O -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
 
     $dsc_sng="(Groups) Subtraction -v one_dmn_rec_var";
@@ -598,8 +590,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			    
 
 #ncbo #19
-# ncbo -O -y mlt -g g4 -v one_dmn_rec_var ~/nco/data/in_grp.nc ~/nco/data/in_grp.nc out.nc
-# ncks -C -H -s '%d'  -d time,0,0,1 -g g4 -v one_dmn_rec_var out.nc
+# ncbo -O -y mlt -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
 
     $dsc_sng="(Groups) Multiplication with limits -d time,2,2,1 -y add -g g4 -v one_dmn_rec_var";
@@ -611,8 +603,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			  
 
 #ncbo #20
-# ncbo -O -y mlt -g g4 -v one_dmn_rec_var in_grp.nc in_grp.nc out.nc
-# ncks -C -H -s '%d'  -d time,0,0,1 -g g4 -v one_dmn_rec_var out.nc
+# ncbo -O -y mlt -g g4 -v one_dmn_rec_var in_grp.nc 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
 
 
@@ -630,7 +622,7 @@ print "\n";
 
 # Absolute match test
 # ncbo #21
-# ncbo -O in_grp_1.nc in_grp_2.nc out.nc
+# ncbo -O in_grp_1.nc in_grp_2.nc ~/foo.nc
 
     $dsc_sng="(Groups) Process absolute match variables -v var1 in_grp_1.nc in_grp_2.nc";
     $tst_cmd[0]="ncbo -O $fl_fmt $nco_D_flg $in_pth_arg in_grp_1.nc in_grp_2.nc %tmp_fl_00%";
@@ -642,7 +634,7 @@ print "\n";
 
 
 # ncbo #22
-# ncbo -O -v var1  in_grp_1.nc  in_grp_2.nc out.nc
+# ncbo -O -v var1 in_grp_1.nc in_grp_2.nc ~/foo.nc
 
     $dsc_sng="(Groups) Process absolute match variables -v var1 in_grp_1.nc in_grp_2.nc";
     $tst_cmd[0]="ncbo -O $fl_fmt $nco_D_flg -v var1 $in_pth_arg in_grp_1.nc in_grp_2.nc %tmp_fl_00%";
@@ -654,8 +646,8 @@ print "\n";
 
 	
 # ncbo #23
-#ncbo -O --op_typ=add  mdl_1.nc mdl_2.nc out.nc
-#ncks -C -g cesm_01 -v tas1 out.nc
+#ncbo -O --op_typ=add  mdl_1.nc mdl_2.nc ~/foo.nc
+#ncks -C -g cesm_01 -v tas1 ~/foo.nc
 # 544.4 = (file 1 tas1) 272.1 + (file 2 tas1) 272.3
 
     $dsc_sng="(Groups) Process ensembles in both files mdl_1.nc mdl_2.nc";
@@ -667,8 +659,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 
 
 # ncbo #24
-#ncbo -O mdl_1.nc mdl_2.nc out.nc
-#ncks -g cesm_01 -v time out.nc
+#ncbo -O mdl_1.nc mdl_2.nc ~/foo.nc
+#ncks -g cesm_01 -v time ~/foo.nc
 
     $dsc_sng="(Groups) Process ensembles in both files mdl_1.nc mdl_2.nc (check fixed variables)";
     $tst_cmd[0]="ncbo -O $fl_fmt $nco_D_flg $in_pth_arg mdl_1.nc mdl_2.nc %tmp_fl_00%";
@@ -679,8 +671,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 
 	
 # ncbo #25
-#ncbo -O --op_typ=add  mdl_1.nc obs.nc out.nc
-#ncks -C -g cesm_01 -v tas1 out.nc
+#ncbo -O --op_typ=add  mdl_1.nc obs.nc ~/foo.nc
+#ncks -C -g cesm_01 -v tas1 ~/foo.nc
 # 544.1 = (file 1 tas1) 272.1 + (file 2 tas1) 273.0
 
     $dsc_sng="(Groups) Process ensembles in file 1 with common variable at root in file 2";
@@ -692,7 +684,7 @@ print "\n";
     $#tst_cmd=0; # Reset array 	
 
 # ncbo #26
-#ncbo -O mdl_1.nc obs.nc out.nc
+#ncbo -O mdl_1.nc obs.nc ~/foo.nc
 #ncks -g ecmwf_01 -v time
 
     $dsc_sng="(Groups) Process ensembles in file 1 with common variable at root in file 2 (check fixed variables)";
@@ -705,8 +697,8 @@ print "\n";
 
 	
 # ncbo 
-#ncbo -O --op_typ=add  obs.nc mdl_1.nc  out.nc
-#ncks -C -g cesm_01 -v tas1 out.nc
+#ncbo -O --op_typ=add  obs.nc mdl_1.nc ~/foo.nc
+#ncks -C -g cesm_01 -v tas1 ~/foo.nc
 # 544.1 =  (file 1 tas1) 273.0 + (file 2 tas1) 272.1 
 
 #FXM ncbo group broadcasting, "time" dimension is created at root because conflicting logic in nco_prc_cmn() uses 
@@ -724,8 +716,8 @@ print "\n";
 	}  
 	
 # ncbo #27
-#ncbo -O cmip5.nc obs.nc out.nc
-#ncks -C -g ecmwf -v tas1 out.nc
+#ncbo -O cmip5.nc obs.nc ~/foo.nc
+#ncks -C -g ecmwf -v tas1 ~/foo.nc
 # obs.nc tas1=273, cmip5.nc giss tas1=274
 
     $dsc_sng="(Groups) Process relative matches, first file greater (cmip5.nc obs.nc)";
@@ -737,8 +729,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 	
 	
 # ncbo #28
-#ncbo -O  obs.nc cmip5.nc out.nc
-#ncks -C -g ecmwf -v tas1 out.nc
+#ncbo -O  obs.nc cmip5.nc ~/foo.nc
+#ncks -C -g ecmwf -v tas1 ~/foo.nc
 # obs.nc tas1=273, cmip5.nc giss tas1=274
 
     $dsc_sng="(Groups) Process relative matches, second file greater (obs.nc cmip5.nc)";
@@ -752,8 +744,8 @@ print "\n";
 # ncbo #29
 #ncbo ensemble with 1 member 
 #ncra -Y ncge -O mdl_3.nc ncge_out.nc
-#ncbo -O --op_typ=add ncge_out.nc mdl_3.nc out.nc
-#ncks -H -C -g cesm_01 -v tas1 out.nc
+#ncbo -O --op_typ=add ncge_out.nc mdl_3.nc ~/foo.nc
+#ncks -H -C -g cesm_01 -v tas1 ~/foo.nc
 #ncge_out.nc =
 #/cesm/tas1
 #time[0]=1 tas1[0]=272.15 
@@ -912,9 +904,9 @@ print "\n";
 	
 #nces #12
 # 2 groups, each one with a record (part 1)
-# ncra -Y nces -h -O -g g25g1,g25g2 -v one_dmn_rec_var -d time,4  in_grp_3.nc in_grp_3.nc out.nc
+# ncra -Y nces -h -O -g g25g1,g25g2 -v one_dmn_rec_var -d time,4 in_grp_3.nc in_grp_3.nc ~/foo.nc
 	
-    $tst_cmd[0]="ncra -Y ncfe $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2  -v one_dmn_rec_var -d time,4 $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
+    $tst_cmd[0]="ncra -Y ncfe $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2 -v one_dmn_rec_var -d time,4 $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%d' -g g25g1 -v one_dmn_rec_var %tmp_fl_00%";
     $dsc_sng="(Groups) 2 groups ensemble mean of int across two files (part 1)";
     $tst_cmd[2]="5";
@@ -924,9 +916,9 @@ print "\n";
 
 #nces #13
 # 2 groups, each one with a record (part 2)
-# ncra -Y nces -h -O -g g25g1,g25g2 -v one_dmn_rec_var -d time,4  in_grp_3.nc in_grp_3.nc out.nc
+# ncra -Y nces -h -O -g g25g1,g25g2 -v one_dmn_rec_var -d time,4 in_grp_3.nc in_grp_3.nc ~/foo.nc
 	
-    $tst_cmd[0]="ncra -Y ncfe $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2  -v one_dmn_rec_var -d time,4 $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
+    $tst_cmd[0]="ncra -Y ncfe $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2 -v one_dmn_rec_var -d time,4 $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -s '%d' -g g25g2 -v one_dmn_rec_var %tmp_fl_00%";
     $dsc_sng="(Groups) 2 groups ensemble mean of int across two files (part 2)";
     $tst_cmd[2]="5";
@@ -955,8 +947,8 @@ print "\n";
     if($RUN_NETCDF4_TESTS == 1){
 
 #nces #15
-# ncra -Y ncge -h -O  mdl_1.nc out.nc
-# ncks -g cesm -v tas1 out.nc
+# ncra -Y ncge -h -O  mdl_1.nc ~/foo.nc
+# ncks -g cesm -v tas1 ~/foo.nc
 	
     $tst_cmd[0]="ncra -Y ncge $omp_flg -h -O $fl_fmt $nco_D_flg $in_pth_arg mdl_1.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -g cesm -v tas1 %tmp_fl_00%";
@@ -977,7 +969,7 @@ print "\n";
     $#tst_cmd=0; # Reset array	
 	
 #nces #17
-# ncra -Y ncge -h -O -G /gpe_grp mdl_1.nc out.nc
+# ncra -Y ncge -h -O -G /gpe_grp mdl_1.nc ~/foo.nc
 	
     $tst_cmd[0]="ncra -Y ncge $omp_flg -h -O -G /gpe_grp $fl_fmt $nco_D_flg $in_pth_arg mdl_1.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -g /gpe_grp/ecmwf -v tas1 %tmp_fl_00%";
@@ -988,7 +980,7 @@ print "\n";
     $#tst_cmd=0; # Reset array
 	
 #nces #18
-#ncra -Y ncge -O mdl_1.nc mdl_2.nc out.nc
+#ncra -Y ncge -O mdl_1.nc mdl_2.nc ~/foo.nc
  
     $dsc_sng="(Groups) Two-file ensembles";
     $tst_cmd[0]="ncra -Y ncge $omp_flg -h -O $fl_fmt $nco_D_flg $in_pth_arg mdl_1.nc mdl_2.nc %tmp_fl_00%";
@@ -1000,8 +992,8 @@ print "\n";
 
 # NEW NCO 4.4.2
 #nces #19 (check coordinate variables)
-# ncra -Y ncge -h -O mdl_1.nc out.nc
-# ncks -g cesm -v time out.nc
+# ncra -Y ncge -h -O mdl_1.nc ~/foo.nc
+# ncks -g cesm -v time ~/foo.nc
 # NB: This test succeeds when it fails, i.e., the NCO command fails as it should because the input files do not conform
 	
     $dsc_sng="(Groups) Ensemble record coordinate variables";
@@ -1014,7 +1006,7 @@ print "\n";
 
 # NEW NCO 4.4.3
 #nces #20 (error checking of ensemble variable dimensions)
-#  ncra -Y ncge -O in_grp_4.nc in_grp_5.nc out.nc
+#  ncra -Y ncge -O in_grp_4.nc in_grp_5.nc ~/foo.nc
 	
     $dsc_sng="(Groups) Invalid input, expect ERROR because dimensions do not conform between ensemble variables";
     $tst_cmd[0]="ncra -Y ncge $omp_flg -h -O $fl_fmt $nco_D_flg $in_pth_arg in_grp_4.nc in_grp_5.nc %tmp_fl_00%";
@@ -1025,7 +1017,7 @@ print "\n";
 
 # NEW NCO 4.4.3
 #nces #21 
-# ncra -Y ncge -h -O mdl_1.nc out.nc
+# ncra -Y ncge -h -O mdl_1.nc ~/foo.nc
 	
     $dsc_sng="(Groups) Test CCM/CAM/CCSM special fixed variables";
     $tst_cmd[0]="ncra -Y ncge $omp_flg -h -O $fl_fmt $nco_D_flg $in_pth_arg mdl_1.nc %tmp_fl_00%";
@@ -1077,8 +1069,8 @@ print "\n";
 
     if($RUN_NETCDF4_TESTS == 1){
 
+# Fragile, depends on cut, expect failure on MACOSX
 #ncecat #3    
-    
     $tst_cmd[0]="ncks -C -h -O $fl_fmt $nco_D_flg -v area $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncecat -C -h -O $omp_flg $fl_fmt $nco_D_flg -G ensemble -d lat,1,1 -v area %tmp_fl_00% %tmp_fl_00% %tmp_fl_01%";
     $tst_cmd[2]="ncks -C -O -h -m -v area %tmp_fl_01% | grep \"ensemble../area\" | wc | cut -c 7";
@@ -1093,8 +1085,8 @@ print "\n";
 # NCO 4.3.1 - ncecat for groups 
 #
 #ncecat #4 part1
-#ncecat -h -O -g g1g1 -v v1 in_grp.nc in_grp.nc out.nc
-#ncks -d record,1,1,1 out.nc
+#ncecat -h -O -g g1g1 -v v1 in_grp.nc in_grp.nc ~/foo.nc
+#ncks -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%";
@@ -1105,8 +1097,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			     
 
 #ncecat #5 same as #4 but look metadata
-#ncecat -h -O -g g1g1 -v v1 in_grp.nc in_grp.nc out.nc
-#ncks -d record,1,1,1 out.nc    
+#ncecat -h -O -g g1g1 -v v1 in_grp.nc in_grp.nc ~/foo.nc
+#ncks -d record,1,1,1 ~/foo.nc    
     
     $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%";
@@ -1117,8 +1109,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			    
 
 #ncecat #6 part1
-#ncecat  -h -O -g g6g1 -v area in_grp.nc in_grp.nc out.nc
-#ncks -H -C -d record,1,1,1 -d lat,1,1,1 -g g6g1 -v area  out.nc
+#ncecat  -h -O -g g6g1 -v area in_grp.nc 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%";
@@ -1129,8 +1121,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			     
 
 #ncecat #7 same as #6 but look metadata
-#ncecat  -h -O -g g6g1 -v area in_grp.nc in_grp.nc out.nc
-#ncks -C -g g6g1 -v area  out.nc
+#ncecat  -h -O -g g6g1 -v area in_grp.nc 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";
@@ -1142,8 +1134,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			    
     
 #ncecat #8 part1
-#ncecat  -h -O -v two_dmn_rec_var in_grp.nc in_grp.nc out.nc
-#ncks -C -d record,1,1,1 -d time,9,9,1 -d lev,2,2,1  -v two_dmn_rec_var  out.nc
+#ncecat  -h -O -v two_dmn_rec_var in_grp.nc 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%";
@@ -1156,23 +1148,23 @@ print "\n";
 	   
 #ncecat #9 
 #Check that "time" is eliminated as record
-#ncecat -O  in_grp_3.nc in_grp_3.nc out.nc
-#ncks -m -C -g g25g1  -v one_dmn_rec_var out.nc
+#ncecat -O in_grp_3.nc 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%";
+    $tst_cmd[1]="ncks -m -C -g g25g1 -v one_dmn_rec_var %tmp_fl_00%";
     $tst_cmd[2]="one_dmn_rec_var dimension 1: time, size = 10 NC_DOUBLE, chunksize = 10 (Coordinate is time)";
     $tst_cmd[3]="SS_OK";   
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 		
 
 #ncecat #10
-#Chunking 
-# ncecat -O -4 -D 5 -C --cnk_plc=all -v date_int in.nc in.nc out.nc
+#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 -v date_int";
-    $tst_cmd[0]="ncecat -O -4 $nco_D_flg --cnk_plc=all -v date_int $in_pth_arg in.nc in.nc %tmp_fl_00%";
+    $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'";
     $tst_cmd[2]="date_int dimension 0: record, size = 2, chunksize = 1 (Record non-coordinate dimension)";
     $tst_cmd[3]="SS_OK";   
@@ -1181,10 +1173,10 @@ print "\n";
 
 #ncecat #11
 #Chunking 
-#ncecat -O -C -4  -v four_dmn_rec_var --cnk_dmn lat,2 --cnk_dmn lon,4 in.nc in.nc out.nc
+#ncecat -O -C -4 -v four_dmn_rec_var --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_dmn lat,2 --cnk_dmn lon,4  $in_pth_arg in.nc in.nc %tmp_fl_00%";
+    $tst_cmd[0]="ncecat -O -C -4 $nco_D_flg -v four_dmn_rec_var --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'";
     $tst_cmd[2]="four_dmn_rec_var dimension 2: lat, size = 2, chunksize = 2 (Non-coordinate dimension)";
     $tst_cmd[3]="SS_OK";   
@@ -1302,8 +1294,8 @@ print "\n";
 
 		
 #ncflint #6 
-# ncflint -4 -O -w 0.8,0.0 in.nc in.nc out.nc
-# ncks -H -C -v time  -d time,9,9,1 out.nc
+# 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
 
     $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%";
@@ -1314,8 +1306,8 @@ print "\n";
     $#tst_cmd=0; # Reset array 			
 
 #ncflint #7  
-# ncflint -4 -O -w 0.8,0.0 in.nc in.nc out.nc
-# ncks -H -C -v time  -d time,9,9,1 out.nc
+# 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
 # --fix_rec_crd prevents ncflint from multiplying or interpolating any coordinate variables, including record coordinate variables
 
     $dsc_sng="--fix_rec_crd -w 0.8,0.0 in.nc in.nc";
@@ -1329,8 +1321,8 @@ print "\n";
 # NCO 4.3.2 ncflint -- groups   
  
 #ncflint #8
-# ncflint -h -O -g g4 -v one_dmn_rec_var -w 1,1 in_grp.nc in_grp.nc out.nc
-# ncks  -H -C -O -g g4  -d time,9 -v one_dmn_rec_var  out.nc
+# ncflint -h -O -g g4 -v one_dmn_rec_var -w 1,1 in_grp.nc in_grp.nc ~/foo.nc
+# ncks  -H -C -O -g g4  -d time,9 -v one_dmn_rec_var ~/foo.nc
 
     $dsc_sng="(Groups) Weight 1D -g g4 -v one_dmn_rec_var -w 1,1 in_grp.nc in_grp.nc";
     $tst_cmd[0]="ncflint $nco_D_flg -h -O -v one_dmn_rec_var -w 1,1 $in_pth_arg in_grp.nc in_grp.nc %tmp_fl_00%";
@@ -2037,7 +2029,7 @@ print "\n";
 # The test greps chunksize = 2 for lat
 # Policy: Chunk All Variables [default]
 # Map:Chunksize Equals Dimension Size [default]
-#ncks -O -4 -v lat_lon --cnk_plc=all in_grp.nc out.nc"
+#ncks -O -4 -v lat_lon --cnk_plc=all in_grp.nc ~/foo.nc"
 
     $dsc_sng="(Groups) Chunking --cnk_plc=all --v lat_lon";
     $tst_cmd[0]="ncks $nco_D_flg -O -4 -v lat_lon --cnk_plc=all $in_pth_arg in_grp.nc %tmp_fl_00%";
@@ -2070,7 +2062,7 @@ print "\n";
 #
 
 #ncks #56:
-# ncks -H -C --dmn time,1,3,2 --dmn lev,1,1,1  -v two_dmn_rec_var  ~/nco/data/in_grp.nc
+# ncks -H -C --dmn time,1,3,2 --dmn lev,1,1,1 -v two_dmn_rec_var ~/nco/data/in_grp.nc
 # /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 
@@ -2085,7 +2077,7 @@ print "\n";
     $#tst_cmd=0; # Reset array 			    
 
 #ncks #57:
-#  ncks -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  ~/nco/data/in_grp.nc
+#  ncks -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 ~/nco/data/in_grp.nc
 #/g10/two_dmn_rec_var
 #time[1]=2 lev[0]=100 two_dmn_rec_var[3]=1 
 #time[1]=2 lev[2]=1000 two_dmn_rec_var[5]=3 
@@ -2102,7 +2094,7 @@ print "\n";
     $#tst_cmd=0; # Reset array 			  
 
 #ncks #58 This test uses limits to print a dimension "lon2(4)" that does NOT have a coordinate variable
-#  ncks -H -d lon2,1,3,2  -v lon2_var  in_grp.nc
+#  ncks -H -d lon2,1,3,2 -v lon2_var in_grp.nc
 #/g16/lon2_var
 #lon2[1] lon2_var[1]=1 
 #lon2[3] lon2_var[3]=3 
@@ -2117,7 +2109,7 @@ print "\n";
     $#tst_cmd=0; # Reset array 			  
     
 #ncks #59 same as #58 but with 2 limits with the same result
-# ncks -H -d lon2,1,1,1 -d lon2,3,3,1  -v lon2_var  in_grp.nc 
+# ncks -H -d lon2,1,1,1 -d lon2,3,3,1 -v lon2_var in_grp.nc 
 #/g16/lon2_var
 #lon2[1] lon2_var[1]=1 
 #lon2[3] lon2_var[3]=3 
@@ -2154,7 +2146,7 @@ print "\n";
   
 #ncks #61
 # This test tests both limits printing of coordinates that are in ancestor groups
-# ncks -H  -v gds_var -d gds_crd,1,1,1  in_grp.nc   
+# ncks -H -v gds_var -d gds_crd,1,1,1 in_grp.nc   
 # ncks -H -C -g g7g1 -v gds_var -d gds_crd,1,1,1 -d gds_crd,3,3,1 in_grp.nc 
 #/g7/g7g1/gds_var
 # gds_crd[1]=1 gds_var[1]=273.2 
@@ -2172,7 +2164,7 @@ print "\n";
 #ncks #62
 # Test "parallel" scope 
 #ncks: INFO nco_bld_var_dmn() reports variable </g16/g16g1/lon1> with dimension coordinate [0]/g16/g16g1/lon1
-# ncks -H -g g16g1 -v lon1 -d lon1,3,3,1  in_grp.nc
+# ncks -H -g g16g1 -v lon1 -d lon1,3,3,1 in_grp.nc
 #/g16/g16g1/lon1
 #lon1[3]=3 
 
@@ -2213,7 +2205,7 @@ print "\n";
     
 #ncks #65
 # Test creation of variables with ancestor group dimensions
-#ncks -O -g g6g1 -v area  in_grp.nc out.nc
+#ncks -O -g g6g1 -v area in_grp.nc ~/foo.nc
 #/g6/g6g1/area
 #lat[1]=90 area[1]=50
 
@@ -2229,7 +2221,7 @@ print "\n";
 
 #ncks #66
 # Test creation of variables with ancestor group dimensions, with GPE
-#ncks -O -G o1 -g g6g1 -v area  in_grp.nc out.nc
+#ncks -O -G o1 -g g6g1 -v area in_grp.nc ~/foo.nc
 #/o1/g6/g6g1/area
 #lat[0]=-90 area[0]=40 
 #lat[1]=90 area[1]=50 
@@ -2246,7 +2238,7 @@ print "\n";
          
 #ncks #67
 # Test "out of scope" coordinate
-# ncks  -H  -v lon3_var  in_grp.nc
+# ncks  -H -v lon3_var in_grp.nc
 
     $dsc_sng="(Groups) Out of scope coordinate -v lon3_var";
     $tst_cmd[0]="ncks $nco_D_flg -H -v lon3_var $in_pth_arg in_grp_3.nc";
@@ -2259,7 +2251,7 @@ print "\n";
     
 #ncks #68
 # Test 2 "intermediate scope " coordinates
-# ncks  -H  -v lon4_var  in_grp.nc
+# ncks  -H -v lon4_var in_grp.nc
 
     $dsc_sng="(Groups) Order coordinates by group depth -v lon4_var";
     $tst_cmd[0]="ncks $nco_D_flg -C -H -v lon4_var $in_pth_arg in_grp_3.nc";
@@ -2309,7 +2301,7 @@ 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
+# 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";
@@ -2347,9 +2339,9 @@ print "\n";
     $#tst_cmd=0; # Reset array
 	
 #ncks #75
-# ncks -O -c in_grp.nc out.nc
+# ncks -O -c in_grp.nc ~/foo.nc
 
-    if($RUN_NETCDF4_TESTS_VERSION_43 == 1){
+    if($RUN_NETCDF4_TESTS_VERSION_GE_431 == 1){
 
     $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%";
@@ -2359,10 +2351,10 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array
 
-	} #RUN_NETCDF4_TESTS_VERSION_43
+	} #RUN_NETCDF4_TESTS_VERSION_GE_431
 	
 #ncks #76
-# ncks -O in_grp.nc out.nc
+# ncks -O 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%";
@@ -2373,7 +2365,7 @@ print "\n";
     $#tst_cmd=0; # Reset array	
 	
 #ncks #77
-# ncks -O in.nc out.nc
+# 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%";
@@ -2384,7 +2376,7 @@ print "\n";
     $#tst_cmd=0; # Reset array		
 
 #ncks #78
-#ncks -O -3 -G : -g /g27g1/ in_grp_3.nc out.nc
+#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%";
@@ -2395,7 +2387,7 @@ print "\n";
     $#tst_cmd=0; # Reset array	
 
 #ncks #79
-#ncks -O -3 -G : -g g28 -v delta_time_stop  in_grp_3.nc out.nc	
+#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)";
@@ -2406,11 +2398,11 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array	
 	
-	if($RUN_NETCDF4_TESTS_VERSION_43 == 1){	
+	if($RUN_NETCDF4_TESTS_VERSION_GE_431 == 1){	
 	
 #ncks #80
-#ncks -O -4 -L 0 --cnk_dmn lev,1  -v two_dmn_var in_grp_7.nc out.nc
-#ncks -C -g g19g1g1 --hdn --cdl out.nc | grep _DeflateLevel
+#ncks -O -4 -L 0 --cnk_dmn lev,1 -v two_dmn_var in_grp_7.nc ~/foo.nc
+#ncks -C -g g19g1g1 --hdn --cdl ~/foo.nc | grep _DeflateLevel
     
     $dsc_sng="(Groups) Chunking and uncompression -L 0 --cnk_dmn lev,1 -v two_dmn_var";
     $tst_cmd[0]="ncks -O -L 0 -4 --cnk_dmn lev,1 -v two_dmn_var $nco_D_flg $in_pth_arg in_grp_7.nc %tmp_fl_00%";
@@ -2422,8 +2414,8 @@ print "\n";
 
 #ncks #81
 # there are 2 'two_dmn_var' beneath /g19/g19g1, chunking only 1
-#ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var in_grp_7.nc out.nc
-#ncks -m -C -v /g19/g19g1/two_dmn_var --hdn out.nc
+#ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var in_grp_7.nc ~/foo.nc
+#ncks -m -C -v /g19/g19g1/two_dmn_var --hdn ~/foo.nc
     
     $dsc_sng="(Groups) Chunking and full dimension names --cnk_dmn /g19/g19g1/g19g1g1/lev,1";
     $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%";
@@ -2435,8 +2427,8 @@ print "\n";
 	
 #ncks #82
 # there are 2 'two_dmn_var' beneath /g19/g19g1, chunking only 1
-#ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var in_grp_7.nc out.nc
-#ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn out.nc
+#ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 -v two_dmn_var in_grp_7.nc ~/foo.nc
+#ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn ~/foo.nc
     
     $dsc_sng="(Groups) Chunking and full dimension names --cnk_dmn /g19/g19g1/g19g1g1/lev,1";
     $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%";
@@ -2448,8 +2440,8 @@ print "\n";
 	
 #ncks #83 (part 1)
 # there are 2 'two_dmn_var' beneath /g19/g19g1, chunking both, one with absolute other with relative
-# ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,3 -v two_dmn_var in_grp_7.nc out.nc
-# ncks -m -C -v /g19/g19g1/g19g1g1/two_dmn_var --hdn out.nc | grep _ChunkSizes
+# ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,3 -v two_dmn_var 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 and full dimension names --cnk_dmn /g19/g19g1/g19g1g1/lev,1";
     $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%";
@@ -2461,8 +2453,8 @@ print "\n";
 	
 #ncks #84 (part 2)
 # there are 2 'two_dmn_var' beneath /g19/g19g1, chunking the 2 , one with absolute other with relative
-# ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,3  -v two_dmn_var in_grp_7.nc out.nc
-# ncks -m -C -v /g19/g19g1/two_dmn_var  --hdn out.nc | grep _ChunkSizes
+# ncks -O -4 --cnk_dmn /g19/g19g1/g19g1g1/lev,1 --cnk_dmn lev,3 -v two_dmn_var in_grp_7.nc ~/foo.nc
+# ncks -m -C -v /g19/g19g1/two_dmn_var  --hdn ~/foo.nc | grep _ChunkSizes
     
     $dsc_sng="(Groups) Chunking and full dimension names --cnk_dmn /g19/g19g1/g19g1g1/lev,1";
     $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%";
@@ -2473,10 +2465,10 @@ print "\n";
     $#tst_cmd=0; # Reset array		
 
 #ncks #85
-#ncks -O -L 0 --cnk_dmn lat,2 -v one in_grp.nc out.nc
-#ncks -C -m --hdn -v one -g g13  out.nc | grep  _Storage
+#ncks -O -L 0 --cnk_dmn lat,2 -v one in_grp.nc ~/foo.nc
+#ncks -C -m --hdn -v one -g g13 ~/foo.nc | grep  _Storage
     
-    $dsc_sng="(Groups) Chunking and shuffle filter -L 0 --cnk_dmn lat,2 -v one (expect failuse with netCDF 4.1.1-)";
+    $dsc_sng="(Groups) Chunking and shuffle filter -L 0 --cnk_dmn lat,2 -v one (expect failure with netCDF 4.1.1-)";
     $tst_cmd[0]="ncks -O -4 -L 0 --cnk_dmn lat,2 -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 _Storage";
     $tst_cmd[2]="one attribute 1: _Storage, size = 10 NC_CHAR, value = contiguous";
@@ -2484,11 +2476,11 @@ print "\n";
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array	
 
-	} # RUN_NETCDF4_TESTS_VERSION_43
+	} # RUN_NETCDF4_TESTS_VERSION_GE_431
 	
 #ncks #86
-#ncks -h -O --fix_rec_dmn time52 -v one_dmn_rec_var in_grp.nc out.nc
-#ncks -v time52 -m  out.nc
+#ncks -h -O --fix_rec_dmn time52 -v one_dmn_rec_var 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%";
@@ -2499,7 +2491,7 @@ print "\n";
     $#tst_cmd=0; # Reset array	
 
 #ncks #87
-#ncks -O -v lat29 in_grp_3.nc out.nc
+#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%";
@@ -2511,11 +2503,11 @@ print "\n";
 
 #ncks #88
 # Test -X writing (apply limits to all standard 'lat' 'lon')
-# ncks -O  -X 0.,1.,-30.,-29. -g g18g1  -v gds_3dvar  in_grp_3.nc out.nc
+# ncks -O  -X 0.,1.,-30.,-29. -g g18g1 -v gds_3dvar in_grp_3.nc ~/foo.nc
 
-    $dsc_sng="(Groups) Auxiliary coordinates writing -X 0.,1.,-30.,-29. -g g18g1  -v gds_3dvar";
-    $tst_cmd[0]="ncks $nco_D_flg -X 0.,1.,-30.,-29. -g g18g1  -v gds_3dvar $in_pth_arg in_grp_3.nc %tmp_fl_00%";
-	$tst_cmd[1]="ncks $nco_D_flg -v lon_gds_1 %tmp_fl_00%";
+    $dsc_sng="(Groups) Auxiliary coordinates writing -X 0.,1.,-30.,-29. -g g18g1 -v gds_3dvar";
+    $tst_cmd[0]="ncks $nco_D_flg -X 0.,1.,-30.,-29. -g g18g1 -v gds_3dvar $in_pth_arg in_grp_3.nc %tmp_fl_00%";
+    $tst_cmd[1]="ncks $nco_D_flg -v lon_gds_1 %tmp_fl_00%";
     $tst_cmd[2]="gds_crd[0]=1 lon_gds_1[0]=0 degree";
     $tst_cmd[3]="SS_OK";   
     NCO_bm::tst_run(\@tst_cmd);
@@ -2523,12 +2515,12 @@ print "\n";
 
 #ncks #89
 # Test -X (writing associated coordinates) 
-# ncks -O  -X 0.,1.,-30.,-29. -g g18 -v gds_3dvar in_grp_3.nc out.nc
-# ncks  -g g18g2 -v lat_gds_2 out.nc 
+# ncks -O  -X 0.,1.,-30.,-29. -g g18 -v gds_3dvar in_grp_3.nc ~/foo.nc
+# ncks  -g g18g2 -v lat_gds_2 ~/foo.nc 
 
     $dsc_sng="(Groups) Auxiliary coordinates (writing associated coordinates) -X 0.,1.,-30.,-29. -g g18 -v gds_3dvar in_grp_3.nc";
     $tst_cmd[0]="ncks $nco_D_flg -X 0.,1.,-30.,-29. -g g18 -v gds_3dvar $in_pth_arg in_grp_3.nc %tmp_fl_00%";
-	$tst_cmd[1]="ncks $nco_D_flg -g g18g2 -C -v lat_gds_2 %tmp_fl_00%";
+    $tst_cmd[1]="ncks $nco_D_flg -g g18g2 -C -v lat_gds_2 %tmp_fl_00%";
     $tst_cmd[2]="gds_crd[0]=1 lat_gds_2[0]=-30 degree";
     $tst_cmd[3]="SS_OK";   
     NCO_bm::tst_run(\@tst_cmd);
@@ -2536,19 +2528,44 @@ print "\n";
 
    } #### Group tests	
    
-	
 #ncks #90
 # Test -X writing
-# ncks -O -X 0.,1.,-30.,-29. -v gds_3dvar  in.nc out.nc
+# ncks -O -X 0.,1.,-30.,-29. -v gds_3dvar in.nc ~/foo.nc
 
     $dsc_sng="Auxiliary coordinates writing -X 0.,1.,-30.,-29. -v gds_3dvar";
     $tst_cmd[0]="ncks $nco_D_flg -X 0.,1.,-30.,-29. -v gds_3dvar $in_pth_arg in.nc %tmp_fl_00%";
-	$tst_cmd[1]="ncks $nco_D_flg -v gds_crd %tmp_fl_00%";
+    $tst_cmd[1]="ncks $nco_D_flg -v gds_crd %tmp_fl_00%";
     $tst_cmd[2]="gds_crd[0]=1 lon_gds[0]=0 degree";
     $tst_cmd[3]="SS_OK";   
     NCO_bm::tst_run(\@tst_cmd);
     $#tst_cmd=0; # Reset array 			   
     
+#ncks #91 Extract CF 'ancillary_variables' variables (netCDF3 file)
+#ncks -O -d time,5 -v cnv_CF_ncl ~/nco/data/in.nc ~/foo.nc
+#ncks -C -H -v cnv_CF_ncl_var_2 ~/foo.nc
+    $dsc_sng="Extract CF 'ancillary_variables' variables (netCDF3 file)";
+    $tst_cmd[0]="ncks -O $nco_D_flg -d time,5 -v cnv_CF_ncl $in_pth_arg in.nc %tmp_fl_00%";
+    $tst_cmd[1]="ncks -C -H $nco_D_flg -v cnv_CF_ncl_var_2 %tmp_fl_00%";
+    $tst_cmd[2]="time[0]=6 cnv_CF_ncl_var_2[0]=36";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array 		
+
+#ncks #92
+#ncks -O -D 5 -C -d lat,0 -v one,four --cnk_plc=xst --cnk_map=xst ~/nco/data/hdn.nc ~/foo.nc
+
+    if($RUN_NETCDF4_TESTS_VERSION_GE_431 == 1){
+
+    $dsc_sng="Chunking multiple variables while hyperslabbing";
+    $tst_cmd[0]="ncks -O $nco_D_flg -C -d lat,0 -v one,four --cnk_plc=xst --cnk_map=xst $in_pth_arg hdn.nc %tmp_fl_00%";
+    $tst_cmd[1]="ncks -v one %tmp_fl_00% | grep 'chunksize'";
+    $tst_cmd[2]="one dimension 0: /lat, size = 1, chunksize = 1 (Non-coordinate dimension)";
+    $tst_cmd[3]="SS_OK";   
+    NCO_bm::tst_run(\@tst_cmd);
+    $#tst_cmd=0; # Reset array
+
+    } # RUN_NETCDF4_TESTS_VERSION_GE_431
+	
 #####################
 #### ncpdq tests #### -OK !
 #####################
@@ -2626,8 +2643,8 @@ print "\n";
     
 #NEW NCO 4.3.2 
 #ncpdq #7 MSA stride
-#ncpdq -h -O -a lat,lon,time  -d time,1,3,2 -d lat,1,1,1 -d lon,1,3,2 -v three_dmn_var_dbl  in.nc out.nc 
-#ncks -C -H -v three_dmn_var_dbl -d lat,0,0 -d lon,1,1 -d time,0  out.nc
+#ncpdq -h -O -a lat,lon,time  -d time,1,3,2 -d lat,1,1,1 -d lon,1,3,2 -v three_dmn_var_dbl in.nc ~/foo.nc 
+#ncks -C -H -v three_dmn_var_dbl -d lat,0,0 -d lon,1,1 -d time,0 ~/foo.nc
 #lat[0]=90 lon[1]=270 time[0]=2 three_dmn_var_dbl[2]=16 
 
     $tst_cmd[0]="ncpdq $omp_flg -h -O $fl_fmt $nco_D_flg -a lat,lon,time -d time,1,3,2 -d lat,1,1,1 -d lon,1,3,2 -v three_dmn_var_dbl  $in_pth_arg in.nc %tmp_fl_00%";
@@ -2661,8 +2678,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #10
 # two_dmn_var (lat,lev) no change
-# ncpdq -O -C -a lat,lev -v two_dmn_var in.nc out.nc
-# ncks  -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -C -a lat,lev -v two_dmn_var in.nc ~/foo.nc
+# ncks  -d lat,1,1 -d lev,1,1 ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O -C $fl_fmt $nco_D_flg -a lat,lev -v two_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_var -d lat,1,1 -d lev,1,1 %tmp_fl_00%";
@@ -2675,8 +2692,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #11
 # two_dmn_var (lat,lev) -C, no MSA (no associated coordinates)
-# ncpdq -O -C -a lev,lat -v two_dmn_var in.nc out.nc
-# ncks -v two_dmn_var -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -C -a lev,lat -v two_dmn_var in.nc ~/foo.nc
+# ncks -v two_dmn_var -d lat,1,1 -d lev,1,1 ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -C -a lev,lat -v two_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_var -d lat,1,1 -d lev,1,1 %tmp_fl_00%";
@@ -2689,8 +2706,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #12
 # two_dmn_var (lat,lev) no MSA (associated coordinates)
-# ncpdq -O -a lev,lat -v two_dmn_var in.nc out.nc
-# ncks  -C -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -a lev,lat -v two_dmn_var in.nc ~/foo.nc
+# ncks  -C -d lat,1,1 -d lev,1,1 ~/foo.nc
 #$tst_cmd[2]="lev[1]=500 lat[1]=90 two_dmn_var[3]=17.5 fraction";
 
   $tst_cmd[0]="ncpdq $omp_flg -O $fl_fmt $nco_D_flg -a lev,lat -v two_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
@@ -2705,8 +2722,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #13
 # two_dmn_var (lat,lev) -C, MSA (no associated coordinates)
-# ncpdq -O -C -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc out.nc
-# ncks out.nc
+# ncpdq -O -C -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc ~/foo.nc
+# ncks ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O -C $fl_fmt $nco_D_flg -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_var %tmp_fl_00%";
@@ -2719,8 +2736,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #14
 # two_dmn_var (lat,lev) MSA (associated coordinates)
-# ncpdq -O -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc out.nc
-# ncks out.nc
+# ncpdq -O -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc ~/foo.nc
+# ncks ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O $fl_fmt $nco_D_flg -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_var %tmp_fl_00%";
@@ -2733,8 +2750,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #15
 # two_dmn_rec_var(time,lev) 2D variable with record  (-C , no MSA)
-# ncpdq -O -C -a lev,time -v two_dmn_rec_var in.nc out.nc
-# ncks  -d time,1,1 -d lev,1,1 out.nc
+# ncpdq -O -C -a lev,time -v two_dmn_rec_var in.nc ~/foo.nc
+# ncks  -d time,1,1 -d lev,1,1 ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O $fl_fmt $nco_D_flg -C -a lev,time -v two_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_rec_var  -d time,1,1 -d lev,1,1 %tmp_fl_00%";
@@ -2748,8 +2765,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #16
 # two_dmn_rec_var(time,lev) 2D variable with record  (no MSA)
-# ncpdq -O -a lev,time -v two_dmn_rec_var in.nc out.nc
-# ncks  -d time,1,1 -d lev,1,1 out.nc
+# ncpdq -O -a lev,time -v two_dmn_rec_var in.nc ~/foo.nc
+# ncks  -d time,1,1 -d lev,1,1 ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O $fl_fmt $nco_D_flg -a lev,time -v two_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_rec_var -d time,1,1 -d lev,1,1 %tmp_fl_00%";
@@ -2762,8 +2779,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #17
 # two_dmn_rec_var(time,lev) 2D variable with record  (MSA)
-# ncpdq -O -C -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in.nc out.nc
-# ncks  out.nc
+# ncpdq -O -C -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in.nc ~/foo.nc
+# ncks ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O $fl_fmt $nco_D_flg -C -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_rec_var %tmp_fl_00%";
@@ -2776,8 +2793,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #18
 # two_dmn_rec_var(time,lev) 2D variable with record  (MSA)
-# ncpdq -O -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in.nc out.nc
-# ncks  out.nc
+# ncpdq -O -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in.nc ~/foo.nc
+# ncks ~/foo.nc
 
   $tst_cmd[0]="ncpdq $omp_flg -O $fl_fmt $nco_D_flg -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
   $tst_cmd[1]="ncks -v two_dmn_rec_var %tmp_fl_00%";
@@ -2790,7 +2807,7 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #19
 #three_dmn_var_dbl(time,lat,lon);
-#ncpdq -h -O -a lat,time -v three_dmn_var -d time,1,1 -d lat,1,1 -d lon,1,1 in.nc out.nc
+#ncpdq -h -O -a lat,time -v three_dmn_var -d time,1,1 -d lat,1,1 -d lon,1,1 in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg -h -O $fl_fmt $nco_D_flg -a -lat,-time -v three_dmn_var_dbl -d time,1,6,2 -d lat,0,1 -d lon,1,1 $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks  -H -C -v three_dmn_var_dbl -d lat,1,1 -d time,2,2 %tmp_fl_00%";
@@ -2804,7 +2821,7 @@ print "\n";
 #ncpdq #20
 #three_dmn_rec_var(time,lat,lon);
 #ty(time,lat);
-#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc out.nc
+#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v ty,three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v ty -d time,1,1 -d lat,1,1 %tmp_fl_00%";
@@ -2818,7 +2835,7 @@ print "\n";
 #ncpdq #21 (same run as #20)
 #three_dmn_rec_var(time,lat,lon);
 #ty(time,lat);
-#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc out.nc
+#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v ty,three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v three_dmn_rec_var -d time,1,1 -d lat,1,1 -d lon,1,1 %tmp_fl_00%";
@@ -2832,7 +2849,7 @@ print "\n";
 #ncpdq #22
 #three_dmn_rec_var(time,lat,lon); MSA
 #ty(time,lat);
-#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var -d time,1,6,2 -d lat,1,1 in.nc out.nc
+#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var -d time,1,6,2 -d lat,1,1 in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v ty,three_dmn_rec_var -d time,1,6,2 -d lat,1,1 $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v ty -d time,2,2 %tmp_fl_00%";
@@ -2846,7 +2863,7 @@ print "\n";
 #ncpdq #23 (same run as #22)
 #three_dmn_rec_var(time,lat,lon); MSA
 #ty(time,lat);
-#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var -d time,1,6,2 -d lat,1,1 in.nc out.nc
+#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var -d time,1,6,2 -d lat,1,1 in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v ty,three_dmn_rec_var -d time,1,6,2 -d lat,1,1 $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks  -C -H -v three_dmn_rec_var -d lat,0,0 -d time,1,1 -d lon,1,1 %tmp_fl_00%";
@@ -2860,7 +2877,7 @@ print "\n";
 #ncpdq #24 (same run as #22) check if output is the right record
 #three_dmn_rec_var(time,lat,lon); 
 #ty(time,lat);
-#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc out.nc
+#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v ty,three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -v three_dmn_rec_var %tmp_fl_00% | grep 'three_dmn_rec_var dimension 0: lat, size = 2 NC_FLOAT (Record coordinate is lat)'";
@@ -2874,7 +2891,7 @@ print "\n";
 #ncpdq #25 (same run as #22) check if output is the right record
 #three_dmn_rec_var(time,lat,lon); 
 #ty(time,lat);
-#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc out.nc
+#ncpdq -h -O -a lat,time -v ty,three_dmn_rec_var in.nc ~/foo.nc
     
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v ty,three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -C -v three_dmn_rec_var %tmp_fl_00% | grep 'three_dmn_rec_var dimension 1: time, size = 10 NC_DOUBLE (Coordinate is time)'";
@@ -2887,8 +2904,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #26
 #four_dmn_rec_var(time,lat,lev,lon); MSA
-#ncpdq -h -O -a lev,time,-lon,-lat -v four_dmn_rec_var -d time,1,6,2 -d lat,1,1 -d lon,1,1 -d lev,1,1 in.nc out.nc
-#ncks  -C -H -v four_dmn_rec_var -d time,2,2 out.nc
+#ncpdq -h -O -a lev,time,-lon,-lat -v four_dmn_rec_var -d time,1,6,2 -d lat,1,1 -d lon,1,1 -d lev,1,1 in.nc ~/foo.nc
+#ncks  -C -H -v four_dmn_rec_var -d time,2,2 ~/foo.nc
 
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lev,time,-lon,-lat -v four_dmn_rec_var -d time,1,6,2 -d lat,1,1 -d lon,1,1 -d lev,1,1 $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks  -C -H -v four_dmn_rec_var -d time,2,2 %tmp_fl_00%";
@@ -2902,8 +2919,8 @@ print "\n";
 #ncpdq #27 : reorder 2 variables with -a lat,time and check a variable that only has 1 (lat)
 #PS(time,lat,lon)
 #three_dmn_var_crd(lev,lat,lon);
-#ncpdq -h -O -a lat,time -v PS,three_dmn_var_crd -d lev,1,1 -d lat,1,1 -d lon,1,1 -d lev,1,1 in.nc out.nc
-#ncks  -C -H -v three_dmn_var_crd out.nc
+#ncpdq -h -O -a lat,time -v PS,three_dmn_var_crd -d lev,1,1 -d lat,1,1 -d lon,1,1 -d lev,1,1 in.nc ~/foo.nc
+#ncks  -C -H -v three_dmn_var_crd ~/foo.nc
 
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -v PS,three_dmn_var_crd -d lev,1,1 -d lat,1,1 -d lon,1,1 $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -H -C -v three_dmn_var_crd %tmp_fl_00%";
@@ -2915,8 +2932,8 @@ print "\n";
  
 #NEW NCO 4.3.2
 #ncpdq #28 
-#ncpdq -h -O -a lat,time -d time,1,6,2 -d lat,1,1 in.nc out.nc
-#ncks  -C -H -v -d time,2,2 four_dmn_rec_var out.nc
+#ncpdq -h -O -a lat,time -d time,1,6,2 -d lat,1,1 in.nc ~/foo.nc
+#ncks  -C -H -v -d time,2,2 four_dmn_rec_var ~/foo.nc
 
     $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -h -O -a lat,time -d time,1,1 -d lat,1,1 $in_pth_arg in.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -H -v four_dmn_rec_var -d lon,2,2 -d lev,2,2 %tmp_fl_00%";
@@ -2976,8 +2993,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #11
 # two_dmn_var (lat,lev) -C, no MSA (no associated coordinates)
-# ncpdq -O -C -a lev,lat -v two_dmn_var in.nc out.nc
-# ncks -v two_dmn_var -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -C -a lev,lat -v two_dmn_var in.nc ~/foo.nc
+# ncks -v two_dmn_var -d lat,1,1 -d lev,1,1 ~/foo.nc
 
 
 # same as previous but with group
@@ -2988,8 +3005,8 @@ print "\n";
 # dimensions:lat=2;lev=3;lon=4;time=unlimited;
 #ncpdq #11
 # two_dmn_var (lat,lev) -C, no MSA (no associated coordinates)
-# ncpdq -O -C -g g19g1 -a lev,lat -v two_dmn_var in_grp_3.nc out.nc
-# ncks -g g19g1 -v two_dmn_var -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -C -g g19g1 -a lev,lat -v two_dmn_var in_grp_3.nc ~/foo.nc
+# ncks -g g19g1 -v two_dmn_var -d lat,1,1 -d lev,1,1 ~/foo.nc
 
 
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -C -g g19g1 -a lev,lat -v two_dmn_var $in_pth_arg in_grp_3.nc %tmp_fl_00%";
@@ -3004,8 +3021,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #12
 # two_dmn_var (lat,lev) no -C, no MSA
-# ncpdq -O -a lev,lat -v two_dmn_var in.nc out.nc
-# ncks  -C -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -a lev,lat -v two_dmn_var in.nc ~/foo.nc
+# ncks  -C -d lat,1,1 -d lev,1,1 ~/foo.nc
 
 
 # same as previous but with group
@@ -3016,8 +3033,8 @@ print "\n";
 # dimensions:lat=2;lev=3;lon=4;time=unlimited;
 #ncpdq #12
 # two_dmn_var (lat,lev) no -C, no MSA 
-# ncpdq -O -g g19g1 -a lev,lat -v two_dmn_var in_grp_3.nc out.nc
-# ncks -C -g g19g1 -v two_dmn_var -d lat,1,1 -d lev,1,1 out.nc
+# ncpdq -O -g g19g1 -a lev,lat -v two_dmn_var in_grp_3.nc ~/foo.nc
+# ncks -C -g g19g1 -v two_dmn_var -d lat,1,1 -d lev,1,1 ~/foo.nc
 
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -g g19g1 -a lev,lat -v two_dmn_var $in_pth_arg in_grp_3.nc %tmp_fl_00%";
    $tst_cmd[1]="ncks -C -g g19g1 -v two_dmn_var -d lat,1,1 -d lev,1,1 %tmp_fl_00%";
@@ -3030,8 +3047,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #13
 # two_dmn_var (lat,lev) -C, MSA (no associated coordinates)
-# ncpdq -O -C -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc out.nc
-# ncks out.nc
+# ncpdq -O -C -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc ~/foo.nc
+# ncks ~/foo.nc
 
 
 # same as previous but with group
@@ -3042,8 +3059,8 @@ print "\n";
 # dimensions:lat=2;lev=3;lon=4;time=unlimited;
 #ncpdq #13
 # two_dmn_var (lat,lev) -C, MSA (no associated coordinates)
-# ncpdq -O -C -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in_grp_3.nc out.nc
-# ncks out.nc
+# ncpdq -O -C -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in_grp_3.nc ~/foo.nc
+# ncks ~/foo.nc
 
 
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -g g19g1 -C -a lev,lat -v two_dmn_var -d lat,1,1 -d lev,1,1 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
@@ -3057,8 +3074,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #14
 # two_dmn_var (lat,lev) MSA (associated coordinates)
-# ncpdq -O -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc out.nc
-# ncks out.nc
+# ncpdq -O -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in.nc ~/foo.nc
+# ncks ~/foo.nc
 #$tst_cmd[2]="lev[0]=500 lat[0]=90 two_dmn_var[0]=17.5 fraction";
 
 # same as previous but with group
@@ -3068,8 +3085,8 @@ print "\n";
 # group: g19 { 
 # dimensions:lat=2;lev=3;lon=4;time=unlimited;
 # two_dmn_var (lat,lev) MSA (associated coordinates)
-# ncpdq -O -g g19g1 -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in_grp_3.nc out.nc
-# ncks -C -g g19g1 -v two_dmn_var out.nc
+# ncpdq -O -g g19g1 -a lev,lat -d lat,1,1 -d lev,1,1 -v two_dmn_var in_grp_3.nc ~/foo.nc
+# ncks -C -g g19g1 -v two_dmn_var ~/foo.nc
 
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -g g19g1 -a lev,lat -v two_dmn_var -d lat,1,1 -d lev,1,1 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
    $tst_cmd[1]="ncks -C -g g19g1 -v two_dmn_var %tmp_fl_00%";
@@ -3082,8 +3099,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #15
 # two_dmn_rec_var(time,lev) 2D variable with record  (-C , no MSA)
-# ncpdq -O -C -a lev,time -v two_dmn_rec_var in.nc out.nc
-# ncks  -d time,1,1 -d lev,1,1 out.nc
+# ncpdq -O -C -a lev,time -v two_dmn_rec_var in.nc ~/foo.nc
+# ncks  -d time,1,1 -d lev,1,1 ~/foo.nc
 
 # same as previous but with group
     
@@ -3091,8 +3108,8 @@ print "\n";
 #ncpdq #36
 # group: g19 { 
 # dimensions:lat=2;lev=3;lon=4;time=unlimited;
-# ncpdq -O -g g19g2 -C -a lev,time -v two_dmn_rec_var in_grp_3.nc out.nc
-# ncks  -d time,1,1 -d lev,1,1 out.nc
+# ncpdq -O -g g19g2 -C -a lev,time -v two_dmn_rec_var in_grp_3.nc ~/foo.nc
+# ncks  -d time,1,1 -d lev,1,1 ~/foo.nc
 
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -g g19g2 -C -a lev,time -v two_dmn_rec_var $in_pth_arg in_grp_3.nc %tmp_fl_00%";
    $tst_cmd[1]="ncks -g g19g2 -v two_dmn_rec_var -d time,1,1 -d lev,1,1 %tmp_fl_00%";
@@ -3105,8 +3122,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #37
 # two_dmn_rec_var(time,lev) 2D variable with record  (no -C, no MSA)
-# ncpdq -O -g g19g2 -a lev,time -v two_dmn_rec_var in_grp_3.nc out.nc
-# ncks -C -g g19g2 -d time,1,1 -d lev,1,1 out.nc
+# ncpdq -O -g g19g2 -a lev,time -v two_dmn_rec_var in_grp_3.nc ~/foo.nc
+# ncks -C -g g19g2 -d time,1,1 -d lev,1,1 ~/foo.nc
 
 # same #16 as previous but with group
 
@@ -3121,8 +3138,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #38
 # two_dmn_rec_var(time,lev) 2D variable with record  (MSA)
-# ncpdq -O -C -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in_grp_3.nc out.nc
-# ncks -g g19g2 -v two_dmn_rec_var out.nc
+# ncpdq -O -C -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in_grp_3.nc ~/foo.nc
+# ncks -g g19g2 -v two_dmn_rec_var ~/foo.nc
 
 # same as #17 but with group
 
@@ -3137,8 +3154,8 @@ print "\n";
 #NEW NCO 4.3.2
 #ncpdq #39
 # two_dmn_rec_var(time,lev) 2D variable with record  (MSA)
-# ncpdq -O -g g19g2 -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in_grp_3.nc out.nc
-# ncks  -C -g g19g2 -v two_dmn_rec_var out.nc
+# ncpdq -O -g g19g2 -a lev,time -d time,1,1 -d lev,1,1 -v two_dmn_rec_var in_grp_3.nc ~/foo.nc
+# ncks  -C -g g19g2 -v two_dmn_rec_var ~/foo.nc
 # $tst_cmd[2]="lev[0]=500 time[0]=2 two_dmn_rec_var[0]=2.1 watt meter-2";
 
 # same as #18 but with group
@@ -3152,7 +3169,7 @@ print "\n";
    $#tst_cmd=0; # Reset array  
 
 #NEW NCO 4.3.5
-#ncpdq -O -a -lat -g g23,g24 ~/nco/data/in_grp_3.nc  out.nc
+#ncpdq -O -a -lat -g g23,g24 ~/nco/data/in_grp_3.nc ~/foo.nc
   
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -a -lat -g g23,g24 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
    $tst_cmd[1]="ncks -v lat -g g23 %tmp_fl_00%";
@@ -3163,7 +3180,7 @@ print "\n";
    $#tst_cmd=0; # Reset array  
 
 #NEW NCO 4.3.5
-#ncpdq -O -a -lat -g g23,g24 ~/nco/data/in_grp_3.nc  out.nc
+#ncpdq -O -a -lat -g g23,g24 ~/nco/data/in_grp_3.nc ~/foo.nc
   
    $tst_cmd[0]="ncpdq $omp_flg $fl_fmt $nco_D_flg -O -a -lat -g g23,g24 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
    $tst_cmd[1]="ncks -v lat -g g24 %tmp_fl_00%";
@@ -3179,9 +3196,9 @@ print "\n";
 
 #NEW NCO 4.3.2patch
 #ncpdq #40
-#ncpdq -h -O -P all_new -v upk in.nc out.nc
-#ncpdq -h -O -P upk -v upk out.nc out.nc
-#ncks -C -H -s '%g' -v upk out.nc
+#ncpdq -h -O -P all_new -v upk in.nc ~/foo.nc
+#ncpdq -h -O -P upk -v upk ~/foo.nc ~/foo.nc
+#ncks -C -H -s '%g' -v upk ~/foo.nc
 
 # same as #29 but with group
 
@@ -3197,8 +3214,8 @@ print "\n";
 #NEW NCO 4.3.2patch
 #ncpdq #41
 # same as ncpdq #30
-#ncpdq -g g19g4 -h -O -C -P upk -v rec_var_dbl_mss_val_dbl_pck -d time,0,4 -d time,6 in_grp_3.nc out.nc
-#ncks -g g19g4 -C -H -s '%f' -v rec_var_dbl_mss_val_dbl_pck -d time,5 out.nc
+#ncpdq -g g19g4 -h -O -C -P upk -v rec_var_dbl_mss_val_dbl_pck -d time,0,4 -d time,6 in_grp_3.nc ~/foo.nc
+#ncks -g g19g4 -C -H -s '%f' -v rec_var_dbl_mss_val_dbl_pck -d time,5 ~/foo.nc
 #$tst_cmd[2]="7";
 
 # same as #30 but with group
@@ -3214,7 +3231,7 @@ print "\n";
    	
 #NEW NCO 4.4.0
 #ncpdq #46
-# ncpdq -O -4  -a lon,lat --cnk_dmn lat,1 --cnk_dmn lon,2 -v lat_2D_rct in.nc out.nc
+# ncpdq -O -4  -a lon,lat --cnk_dmn lat,1 --cnk_dmn lon,2 -v lat_2D_rct in.nc ~/foo.nc
 
    $dsc_sng="Chunking -a lon,lat --cnk_dmn lat,1 --cnk_dmn lon,2 -v lat_2D_rct";
    $tst_cmd[0]="ncpdq $omp_flg -4 $nco_D_flg -a lon,lat --cnk_dmn lat,1 --cnk_dmn lon,2 -v lat_2D_rct $in_pth_arg in.nc %tmp_fl_00%";
@@ -3322,7 +3339,7 @@ print "\n";
 	
 #ncrcat #05	
 
-    $tst_cmd[0]="ncra -Y ncrcat $omp_flg -h -O $fl_fmt $nco_D_flg -v four_dmn_rec_var $in_pth_arg -d time,0,,4 -d lat,0,0 -d lon,0,1 -d lon,3,3  in.nc in.nc %tmp_fl_00% 2> %tmp_fl_02%";
+    $tst_cmd[0]="ncra -Y ncrcat $omp_flg -h -O $fl_fmt $nco_D_flg -v four_dmn_rec_var $in_pth_arg -d time,0,,4 -d lat,0,0 -d lon,0,1 -d lon,3,3 in.nc in.nc %tmp_fl_00% 2> %tmp_fl_02%";
     $tst_cmd[1]="ncwa $omp_flg -h -y max -O $fl_fmt $nco_D_flg %tmp_fl_00% %tmp_fl_01%"; 
     $tst_cmd[2]="ncks -C -H -s '%f' -v four_dmn_rec_var %tmp_fl_01%";
     $dsc_sng="Concatenate float 4D variable with multislabs across two files";
@@ -3564,7 +3581,7 @@ print "\n";
 	
 #ncrcat #23	
 # 2 groups each one with a record (part 1)
-# ncra -Y ncrcat -h -O -g g25g1,g25g2 -v one_dmn_rec_var in_grp_3.nc in_grp_3.nc -d time,2.,3. out.nc
+# ncra -Y ncrcat -h -O -g g25g1,g25g2 -v one_dmn_rec_var in_grp_3.nc in_grp_3.nc -d time,2.,3. ~/foo.nc
 
     $tst_cmd[0]="ncra -Y ncrcat $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2 -v one_dmn_rec_var $in_pth_arg in_grp_3.nc in_grp_3.nc -d time,2.,3. %tmp_fl_00% 2> %tmp_fl_02%";
     $tst_cmd[1]="ncks -C -H -s '%d ' -g g25g1 -v one_dmn_rec_var %tmp_fl_00%";
@@ -3576,7 +3593,7 @@ print "\n";
 
 #ncrcat #24
 # 2 groups each one with a record (part 2)
-# ncra -Y ncrcat -h -O -g g25g1,g25g2 -v one_dmn_rec_var in_grp_3.nc in_grp_3.nc -d time,2.,3. out.nc
+# ncra -Y ncrcat -h -O -g g25g1,g25g2 -v one_dmn_rec_var in_grp_3.nc in_grp_3.nc -d time,2.,3. ~/foo.nc
 
     $tst_cmd[0]="ncra -Y ncrcat $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2 -v one_dmn_rec_var $in_pth_arg in_grp_3.nc in_grp_3.nc -d time,2.,3. %tmp_fl_00% 2> %tmp_fl_02%";
     $tst_cmd[1]="ncks -C -H -s '%d ' -g g25g2 -v one_dmn_rec_var %tmp_fl_00%";
@@ -3663,8 +3680,8 @@ print "\n";
 #ncrcat #30
 #ncks -h -O -g g5 -v one_dmn_rec_var,time51,time52 in_grp.nc in_grp1.nc 
 #ncks -h -O -g g5 -v one_dmn_rec_var,time51,time52 in_grp.nc in_grp2.nc 
-#ncrcat -O -h -g g5 -v one_dmn_rec_var in_grp1.nc in_grp2.nc out.nc
-#ncks -C -g g5 -v one_dmn_rec_var  out.nc
+#ncrcat -O -h -g g5 -v one_dmn_rec_var in_grp1.nc in_grp2.nc ~/foo.nc
+#ncks -C -g g5 -v one_dmn_rec_var ~/foo.nc
 
 	$tst_cmd[0]="ncks $omp_flg -h -O $fl_fmt $nco_D_flg -g g5 -v one_dmn_rec_var,time51,time52 $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks $omp_flg -h -O $fl_fmt $nco_D_flg -v one_dmn_rec_var,time51,time52 $in_pth_arg in_grp.nc %tmp_fl_01%";
@@ -3971,7 +3988,7 @@ print "\n";
 
 # ncra #27
 # (Groups) 1D var 2 records to process in 2 groups (part 1)
-#  ncra -h -O  -g g25g1,g25g2 in_grp_3.nc in_grp_3.nc out.nc
+#  ncra -h -O  -g g25g1,g25g2 in_grp_3.nc in_grp_3.nc ~/foo.nc
     
     $tst_cmd[0]="ncra $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2 $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -g g25g1 -v one_dmn_rec_var %tmp_fl_00%";
@@ -3983,7 +4000,7 @@ print "\n";
 	
 # ncra #28 same as #27
 # (Groups) 1D var 2 records to process in 2 groups (part 2)
-#  ncra -h -O  -g g25g1,g25g2 in_grp_3.nc in_grp_3.nc out.nc
+#  ncra -h -O  -g g25g1,g25g2 in_grp_3.nc in_grp_3.nc ~/foo.nc
     
     $tst_cmd[0]="ncra $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1,g25g2 $in_pth_arg in_grp_3.nc in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -C -g g25g2 -v one_dmn_rec_var %tmp_fl_00%";
@@ -3995,8 +4012,8 @@ print "\n";
 
 # ncra #29 Generate a file with 2 records
 # ncecat -O  -g g25g1 in_grp_3.nc in1.nc -> generate "record"
-# ncpdq -O -a time,record  in1.nc in2.nc -> switch "record" and "time"
-# ncra -O  in2.nc out.nc
+# ncpdq -O -a time,record in1.nc in2.nc -> switch "record" and "time"
+# ncra -O in2.nc ~/foo.nc
     
     $tst_cmd[0]="ncecat $omp_flg -h -O $fl_fmt $nco_D_flg -g g25g1 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
 	$tst_cmd[1]="ncpdq $omp_flg -h -O $fl_fmt $nco_D_flg -a time,record %tmp_fl_00% %tmp_fl_01%";
@@ -4047,7 +4064,7 @@ print "\n";
 	
 #NEW 4.4.2	
 #ncra #32
-#ncra -O -v time301 -C in_grp_3.nc out.nc
+#ncra -O -v time301 -C in_grp_3.nc ~/foo.nc
 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%";
@@ -4368,7 +4385,7 @@ if (0){
     @tst_cmd=(); # Reset array
 
 #ncwa #28
-# ncwa -h -O -y max -v three_dmn_var_dbl -a lat,lon in.nc out.nc
+# ncwa -h -O -y max -v three_dmn_var_dbl -a lat,lon in.nc ~/foo.nc
     
 # will fail SS - ncks not the last cmd
     push(@tst_cmd, "ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -y max -v three_dmn_var_dbl -a lat,lon $in_pth_arg in.nc %tmp_fl_00%");
@@ -4558,8 +4575,8 @@ if (0){
 #ncwa #44
 #NEW NCO 4.3.3
 #same as #ncwa #25
-#ncwa -h -O -y min -g g10 -v three_dmn_rec_var in_grp.nc out.nc
-#ncks -C -H -s '%f' -g g10 -v three_dmn_rec_var out.nc
+#ncwa -h -O -y min -g g10 -v three_dmn_rec_var in_grp.nc ~/foo.nc
+#ncks -C -H -s '%f' -g g10 -v three_dmn_rec_var ~/foo.nc
 #$tst_cmd[0]="ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -y min -v three_dmn_rec_var $in_pth_arg in.nc %tmp_fl_00% 2> %tmp_fl_02%";
 #$tst_cmd[1]="ncks -C -H -s '%f' -v three_dmn_rec_var %tmp_fl_00%";
 #$dsc_sng="Dimension reduction with min flag on type float variable";
@@ -4576,8 +4593,8 @@ if (0){
 #ncwa #45
 #NEW NCO 4.3.3
 #same as #ncwa #27
-# ncwa -h -O -y max -g g19g3 -v three_dmn_var_dbl -a lat,lon in_grp_3.nc out.nc
-# ncks -C -H --no_blank -s '%f' -g g19g3 -v three_dmn_var_dbl -d time,3 out.nc
+# ncwa -h -O -y max -g g19g3 -v three_dmn_var_dbl -a lat,lon in_grp_3.nc ~/foo.nc
+# ncks -C -H --no_blank -s '%f' -g g19g3 -v three_dmn_var_dbl -d time,3 ~/foo.nc
 
 # will fail SS - ncks not the last cmd
     push(@tst_cmd, "ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -y max -g g19g3 -v three_dmn_var_dbl -a lat,lon $in_pth_arg in_grp_3.nc %tmp_fl_00%");
@@ -4592,8 +4609,8 @@ if (0){
 #ncwa #46
 #NEW NCO 4.3.3
 #same as #ncwa #28
-# ncwa -h -O  -y max -g g19g3 -v three_dmn_var_dbl -a lat,lon in_grp_3.nc out.nc
-# ncks -C -H -s '%f' -g g19g3 -v three_dmn_var_dbl -d time,4 out.nc 
+# ncwa -h -O  -y max -g g19g3 -v three_dmn_var_dbl -a lat,lon in_grp_3.nc ~/foo.nc
+# ncks -C -H -s '%f' -g g19g3 -v three_dmn_var_dbl -d time,4 ~/foo.nc 
     
 # will fail SS - ncks not the last cmd
     push(@tst_cmd, "ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -y max -g g19g3 -v three_dmn_var_dbl -a lat,lon $in_pth_arg in_grp_3.nc %tmp_fl_00%");
@@ -4609,11 +4626,11 @@ if (0){
 #ncwa #47
 #NEW NCO 4.3.3
 #same as #ncwa #33
-# ncwa -h -O -y rms -w lat_wgt -g g20g1 -v lat_cpy  in_grp_3.nc out.nc
-# ncks -C -H -s '%f' -g g20g1  -v lat_cpy out.nc
+# ncwa -h -O -y rms -w lat_wgt -g g20g1 -v lat_cpy in_grp_3.nc ~/foo.nc
+# ncks -C -H -s '%f' -g g20g1 -v lat_cpy ~/foo.nc
     
     $tst_cmd[0]="ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -y rms -w lat_wgt -g g20g1 -v lat_cpy $in_pth_arg in_grp_3.nc %tmp_fl_00% 2> %tmp_fl_02%";
-    $tst_cmd[1]="ncks -C -H -s '%f' -g g20g1  -v lat_cpy %tmp_fl_00%";;
+    $tst_cmd[1]="ncks -C -H -s '%f' -g g20g1 -v lat_cpy %tmp_fl_00%";;
     $dsc_sng="(Groups) rms with weights";
     $tst_cmd[2]="90";
     $tst_cmd[3]="SS_OK";
@@ -4622,7 +4639,7 @@ if (0){
 
 #ncwa #48
 #NEW NCO 4.3.6
-#ncwa -O -w gw_lat -d lat,1,2 -d lon,0,1 -a lat,lon -g g26 in_grp_3.nc out.nc
+#ncwa -O -w gw_lat -d lat,1,2 -d lon,0,1 -a lat,lon -g g26 in_grp_3.nc ~/foo.nc
     
     $tst_cmd[0]="ncwa $omp_flg -O $fl_fmt $nco_D_flg -w gw_lat -d lat,1,2 -d lon,0,1 -a lat,lon -g g26 $in_pth_arg in_grp_3.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -v a %tmp_fl_00%";;
@@ -4633,7 +4650,7 @@ if (0){
     $#tst_cmd=0; # Reset array
 	
 #ncwa #49
-# ncwa -h -O -v lev -a lev -w lev_wgt in_grp_3.nc out.nc
+# ncwa -h -O -v lev -a lev -w lev_wgt in_grp_3.nc ~/foo.nc
 # lev = 230.769 lev_wgt=10,2,1; /g19/lev
 # lev = 241.667 lev_wgt=9,2,1;  /g8/lev
     
@@ -4646,7 +4663,7 @@ if (0){
     $#tst_cmd=0; # Reset array	
 	
 #ncwa #50
-# ncwa -h -O -v lev -a lev -w lev_wgt in_grp_3.nc out.nc
+# ncwa -h -O -v lev -a lev -w lev_wgt in_grp_3.nc ~/foo.nc
 # lev = 230.769 lev_wgt=10,2,1; /g19/lev
 # lev = 241.667 lev_wgt=9,2,1;  /g8/lev
 
@@ -4660,8 +4677,8 @@ if (0){
 	
 #NEW 4.3.7	
 #ncwa #51
-# ncwa  -h -O -a time -b  -v time  in_grp.nc out.nc
-# ncks out.nc | grep 'time dimension 0'
+# ncwa  -h -O -a time -b -v time in_grp.nc ~/foo.nc
+# ncks ~/foo.nc | grep 'time dimension 0'
 
     $tst_cmd[0]="ncwa $omp_flg -h -O $fl_fmt $nco_D_flg -a time -b -v time $in_pth_arg in_grp.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -H -v /g2/time %tmp_fl_00% | grep '=5.5'";
@@ -4673,7 +4690,7 @@ if (0){
 	
 #NEW 4.4.0	
 #ncwa #52 Use -w /g8/lev_wgt
-# ncwa -h -O -v lev -a lev -w /g8/lev_wgt in_grp_3.nc out.nc
+# ncwa -h -O -v lev -a lev -w /g8/lev_wgt in_grp_3.nc ~/foo.nc
 # lev = 230.769 lev_wgt=10,2,1; /g19/lev
 # lev = 241.667 lev_wgt=9,2,1;  /g8/lev
     
@@ -4687,7 +4704,7 @@ if (0){
 
 #NEW 4.4.0		
 #ncwa #53 Use -w /g8/lev_wgt
-# ncwa -h -O -v lev -a lev -w /g19/lev_wgt in_grp_3.nc out.nc
+# ncwa -h -O -v lev -a lev -w /g19/lev_wgt in_grp_3.nc ~/foo.nc
 # lev = 230.769 lev_wgt=10,2,1; /g19/lev
 # lev = 241.667 lev_wgt=9,2,1;  /g8/lev
     
@@ -4702,7 +4719,7 @@ if (0){
 #NEW 4.4.0	
 #ncwa #54 
 #Use -a /g8/lev, -w /g8/lev_wgt
-# ncwa -h -O -v lev -a /g8/lev -w /g8/lev_wgt in_grp_3.nc out.nc
+# ncwa -h -O -v lev -a /g8/lev -w /g8/lev_wgt in_grp_3.nc ~/foo.nc
 # lev = 230.769 lev_wgt=10,2,1; /g19/lev
 # lev = 241.667 lev_wgt=9,2,1;  /g8/lev
     
@@ -4716,7 +4733,7 @@ if (0){
 	
 #NEW 4.4.0	
 #ncwa #55
-#ncwa -O -4  -a time --cnk_dmn lon,4 -v byt_3D_rec in.nc out.nc
+#ncwa -O -4 -a time --cnk_dmn lon,4 -v byt_3D_rec ~/nco/data/in.nc ~/foo.nc
     
     $dsc_sng="Chunking -a time --cnk_dmn lon,4 -v byt_3D_rec";
     $tst_cmd[0]="ncwa $omp_flg -O -4 $nco_D_flg -a time --cnk_dmn lon,4 -v byt_3D_rec $in_pth_arg in.nc %tmp_fl_00%";
@@ -4728,7 +4745,7 @@ if (0){
 	
 #NEW 4.4.0	
 #ncwa #56
-#ncwa -O -4 -a /time --cnk_dmn /time,1 -v time in.nc out.nc
+#ncwa -O -4 -a /time --cnk_dmn /time,1 -v time in.nc ~/foo.nc
     
     $dsc_sng="Chunking -a /time --cnk_dmn /time,1 -v time";
     $tst_cmd[0]="ncwa $omp_flg -O -4 $nco_D_flg -a /time --cnk_dmn /time,1 -v time $in_pth_arg in.nc %tmp_fl_00%";
@@ -4740,8 +4757,8 @@ if (0){
 
 #NEW 4.4.0	
 #ncwa #57	
-#ncwa -O -C -4 -D 12 --rdd -a lon,lat -v four_dmn_rec_var --cnk_dmn lat,2 --cnk_dmn lon,4  in.nc out.nc	
-#ncks --hdn --cdl -v four_dmn_rec_var out.nc
+#ncwa -O -C -4 -D 12 --rdd -a lon,lat -v four_dmn_rec_var --cnk_dmn lat,2 --cnk_dmn lon,4 ~/nco/data/in.nc ~/foo.nc	
+#ncks --hdn --cdl -v four_dmn_rec_var ~/foo.nc
 
     $dsc_sng="Chunking with --rdd -a lon,lat -v four_dmn_rec_var --cnk_dmn lat,2 --cnk_dmn lon,4 ";
     $tst_cmd[0]="ncwa $omp_flg -O -C -4 $nco_D_flg --rdd -a lon,lat -v four_dmn_rec_var --cnk_dmn lat,2 --cnk_dmn lon,4 $in_pth_arg in.nc %tmp_fl_00%";
@@ -4753,8 +4770,8 @@ if (0){
 	
 #NEW 4.4.2	
 #ncwa #58
-#ncwa -O -y avg -a time301 -v time301 -C in_grp_3.nc out.nc
-#ncks -m out.nc
+#ncwa -O -y avg -a time301 -v time301 -C in_grp_3.nc ~/foo.nc
+#ncks -m ~/foo.nc
 
     $dsc_sng="Groups (Cell methods) (Create, average) -y avg -a time -v time";
     $tst_cmd[0]="ncwa $omp_flg $nco_D_flg -O -y avg -a time301 -v time301 -C $in_pth_arg in_grp_3.nc %tmp_fl_00%";
@@ -4766,8 +4783,8 @@ if (0){
 	
 #NEW 4.4.2	
 #ncwa #59
-#ncwa -O -y max -a time301 -v time301 -C in_grp_3.nc out.nc	  
-#ncks -m out.nc	
+#ncwa -O -y max -a time301 -v time301 -C in_grp_3.nc ~/foo.nc	  
+#ncks -m ~/foo.nc	
 
     $dsc_sng="Groups (Cell methods) (Create, maximum) -y max -a time -v time";
     $tst_cmd[0]="ncwa $omp_flg $nco_D_flg -O -y max -a time301 -v time301 -C $in_pth_arg in_grp_3.nc %tmp_fl_00%";
@@ -4781,8 +4798,8 @@ if (0){
 
 #NEW 4.4.2	
 #ncwa #60 (part 1)
-#ncwa  --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon in.nc out.nc	
-#ncks -m -C -v three_dmn_rec_var out.nc
+#ncwa  --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon in.nc ~/foo.nc	
+#ncks -m -C -v three_dmn_rec_var ~/foo.nc
 
     $dsc_sng="Cell methods (Create, average) -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon";
     $tst_cmd[0]="ncwa $omp_flg $nco_D_flg --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon $in_pth_arg in.nc %tmp_fl_00%";
@@ -4794,8 +4811,8 @@ if (0){
 
 #NEW 4.4.2	
 #ncwa #61 (part 2)
-#ncwa  --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon in.nc out.nc	
-#ncks -m -C -v one_dmn_rec_var out.nc
+#ncwa  --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon in.nc ~/foo.nc	
+#ncks -m -C -v one_dmn_rec_var ~/foo.nc
 	
     $dsc_sng="Cell methods (Create, average) -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon";
     $tst_cmd[0]="ncwa $omp_flg $nco_D_flg --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon $in_pth_arg in.nc %tmp_fl_00%";
@@ -4807,8 +4824,8 @@ if (0){
 
 #NEW 4.4.2	
 #ncwa #62 max
-#ncwa  --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon in.nc out.nc	
-#ncks -m -C -v one_dmn_rec_var out.nc
+#ncwa  --op_typ=avg -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon in.nc ~/foo.nc	
+#ncks -m -C -v one_dmn_rec_var ~/foo.nc
 	
     $dsc_sng="Cell methods (Create, maximum) -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon";
     $tst_cmd[0]="ncwa $omp_flg $nco_D_flg --op_typ=max -O -v one,one_dmn_rec_var,three_dmn_rec_var -a time,lon $in_pth_arg in.nc %tmp_fl_00%";
@@ -4823,8 +4840,8 @@ if (0){
 
 #NEW 4.4.3	
 #ncwa #63 
-#ncwa -g cesm,ecmwf -v time -a time -O  cmip5.nc out.nc	
-#ncks -m  out.nc
+#ncwa -g cesm,ecmwf -v time -a time -O  cmip5.nc ~/foo.nc	
+#ncks -m ~/foo.nc
     $dsc_sng="Groups (Cell methods, repeated dimension names) -g cesm,ecmwf -v time -a time";
     $tst_cmd[0]="ncwa $omp_flg $nco_D_flg -O -g cesm,ecmwf -v time -a time $in_pth_arg cmip5.nc %tmp_fl_00%";
     $tst_cmd[1]="ncks -m -g ecmwf -v time %tmp_fl_00%";
@@ -4861,7 +4878,7 @@ if (0){
 #################### Attributes
 
 #ncrename #1
-#ncrename -O -a .nothing,new_nothing in_grp.nc out.nc 
+#ncrename -O -a .nothing,new_nothing in_grp.nc ~/foo.nc 
 #optional relative rename nothing to new_nothing (print warning)
     
     $dsc_sng="Attributes: Optional relative rename '.nothing' to 'new_nothing'";
@@ -4872,7 +4889,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 	
 #ncrename #2
-#ncrename -O -a history,new_history in_grp.nc out.nc  
+#ncrename -O -a history,new_history in_grp.nc ~/foo.nc  
 #relative rename history to new_history
     
     $dsc_sng="Attributes: Relative rename 'history' to 'new_history'";
@@ -4884,8 +4901,8 @@ if (0){
     @tst_cmd=(); # really reset array.	
 
 #ncrename #3
-#ncrename -D 1 -O -a /g1 at history,new_history in_grp.nc out.nc
-#ncks -g g1 out.nc | grep 'History group attribute'  
+#ncrename -D 1 -O -a /g1 at history,new_history in_grp.nc ~/foo.nc
+#ncks -g g1 ~/foo.nc | grep 'History group attribute'  
 # absolute rename /g1/history group/global att to /g1/new_history
 # NB: use escape in '/g1\@history,new_history'
     
@@ -4899,7 +4916,7 @@ if (0){
 	
 	
 #ncrename #4	
-#ncrename -O -a global at history,new_history in_grp.nc out.nc 
+#ncrename -O -a global at history,new_history in_grp.nc ~/foo.nc 
 # relative rename history group/global att to new_history
 
     $dsc_sng="Attributes: Relative rename 'global\@history' to 'new_history'";
@@ -4911,7 +4928,7 @@ if (0){
     @tst_cmd=(); # really reset array.		
 
 #ncrename #5
-#ncrename -O -a /g1/lon at units,new_units in_grp.nc out.nc 
+#ncrename -O -a /g1/lon at units,new_units in_grp.nc ~/foo.nc 
 # absolute rename /g1/lon at units att to /g1/lon at new_units
 
     $dsc_sng="Attributes: Absolute rename '/g1/lon\@units' to 'new_units'";
@@ -4923,7 +4940,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 	
 #ncrename #6	
-#ncrename -D 1 -O -a /g1/lon at units,/g1/lon at new_units in_grp.nc out.nc 
+#ncrename -D 1 -O -a /g1/lon at units,/g1/lon at new_units in_grp.nc ~/foo.nc 
 #absolute rename /g1/lon at units att to /g1/lon at new_units
 
     $dsc_sng="Attributes: Absolute rename '/g1/lon\@units' to '/g1/lon\@new_units'";
@@ -4935,7 +4952,7 @@ if (0){
     @tst_cmd=(); # really reset array.		
 	
 #ncrename #7	
-#ncrename -O -a /g1/lon at .units,new_units in_grp.nc out.nc 
+#ncrename -O -a /g1/lon at .units,new_units in_grp.nc ~/foo.nc 
 # optional absolute rename /g1/lon at .units att to new_units
 
     $dsc_sng="Attributes: Optional absolute rename '/g1/lon\@.units' to '/g1/lon\@new_units'";
@@ -4948,10 +4965,10 @@ if (0){
 	
 #################### Dimensions	
 
-   if($RUN_NETCDF4_TESTS_VERSION_43 == 1){
+   if($RUN_NETCDF4_TESTS_VERSION_GE_431 == 1){
 
 #ncrename #8	
-#ncrename -O -d lat,new_lat in_grp.nc out.nc
+#ncrename -O -d lat,new_lat in_grp.nc ~/foo.nc
 # relative rename lat to new_lat
 
     $dsc_sng="Dimensions: Relative rename 'lat' to 'new_lat' (expect failure with netCDF < 4.3.1)";
@@ -4963,7 +4980,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 	
 #ncrename #9	
-#ncrename -O -d /lat,new_lat in_grp.nc out.nc
+#ncrename -O -d /lat,new_lat in_grp.nc ~/foo.nc
 # Absolute rename /lat to new_lat
 
     $dsc_sng="Dimensions: Absolute rename '/lat' to 'new_lat' (expect failure with netCDF < 4.3.1)";
@@ -4975,7 +4992,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 
 #ncrename #10	
-#ncrename -O -d .lat,new_lat in_grp.nc out.nc
+#ncrename -O -d .lat,new_lat in_grp.nc ~/foo.nc
 # optional relative rename lat to new_lat
 
     $dsc_sng="Dimensions: Optional existing relative rename '.lat' to 'new_lat' (expect failure with netCDF < 4.3.1)";
@@ -4987,7 +5004,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 	
 #ncrename #11	
-#ncrename -O -d /lat,new_lat in_grp.nc out.nc
+#ncrename -O -d /lat,new_lat in_grp.nc ~/foo.nc
 # Absolute rename /lat to new_lat
 
     $dsc_sng="Dimensions: Optional existing absolute rename './lat' to 'new_lat' (expect failure with netCDF < 4.3.1)";
@@ -4998,10 +5015,10 @@ if (0){
     NCO_bm::tst_run(\@tst_cmd);
     @tst_cmd=(); # really reset array.	
 
-	} # RUN_NETCDF4_TESTS_VERSION_43 
+	} # RUN_NETCDF4_TESTS_VERSION_GE_431 
 
 #ncrename #12
-#ncrename -O -d ./lat_non_existing,new_lat in_grp.nc out.nc
+#ncrename -O -d ./lat_non_existing,new_lat in_grp.nc ~/foo.nc
 # Absolute non existing absolute rename
 
     $dsc_sng="Dimensions: Optional non-existing absolute rename './lat_non_existing,new_lat' to 'new_lat'";
@@ -5014,7 +5031,7 @@ if (0){
 #################### Variables	
 
 #ncrename #13
-#ncrename  -D 1 -O -v /g1/v1,new_v1 in_grp.nc out.nc
+#ncrename  -D 1 -O -v /g1/v1,new_v1 in_grp.nc ~/foo.nc
 #Absolute rename /g1/v1 to /g1/new_v1 
 
     $dsc_sng="Variables: Absolute rename '/g1/v1' to '/g1/new_v1'";
@@ -5027,7 +5044,7 @@ if (0){
 	
 
 #ncrename #14	
-#ncrename  -D 1 -O -v v1,new_v1 in_grp.nc out.nc
+#ncrename  -D 1 -O -v v1,new_v1 in_grp.nc ~/foo.nc
 #Relative rename v1 to new_v1 
 
     $dsc_sng="Variables: Relative rename 'v1' to 'new_v1'";
@@ -5039,7 +5056,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 	
 #ncrename #15	
-#ncrename  -D 1 -O -v ./g1/v1,new_v1 in_grp.nc out.nc
+#ncrename  -D 1 -O -v ./g1/v1,new_v1 in_grp.nc ~/foo.nc
 #Absolute rename /g1/v1 to /g1/new_v1 
 
     $dsc_sng="Variables: Optional absolute rename '/g1/v1' to '/g1/new_v1'";
@@ -5051,7 +5068,7 @@ if (0){
     @tst_cmd=(); # really reset array.			
 
 #ncrename #16
-#ncrename  -D 1 -O -v .v1,new_v1 in_grp.nc out.nc
+#ncrename  -D 1 -O -v .v1,new_v1 in_grp.nc ~/foo.nc
 #Optional Relative rename v1 to new_v1 
 
     $dsc_sng="Variables: Optional relative rename 'v1' to 'new_v1'";
@@ -5063,7 +5080,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 	
 #ncrename #17
-#ncrename  -D 1 -O -v ./g1/v1_not,new_v1 in_grp.nc out.nc
+#ncrename  -D 1 -O -v ./g1/v1_not,new_v1 in_grp.nc ~/foo.nc
 #Optional non-existing absolute rename '/g1/v1_not'
 
     $dsc_sng="Variables: Optional non-existing absolute rename './g1/v1_not' to '/g1/new_v1'";
@@ -5076,10 +5093,10 @@ if (0){
 #################### Groups
 
 #ncrename #18
-#ncrename -O -g g1,new_g1 in_grp.nc out.nc 
+#ncrename -O -g g1,new_g1 in_grp.nc ~/foo.nc 
 # relative rename g1 to new_g1
 
-   if($RUN_NETCDF4_TESTS_VERSION_43 == 1){
+   if($RUN_NETCDF4_TESTS_VERSION_GE_431 == 1){
 
     $dsc_sng="Groups: Relative rename 'g1' to 'new_g1' (expect failure with netCDF < 4.3.1)";
     $tst_cmd[0]="ncrename -O $fl_fmt $nco_D_flg -g g1,new_g1 $in_pth_arg in_grp.nc %tmp_fl_00%";
@@ -5090,7 +5107,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 
 #ncrename #19
-#ncrename -O -g g1g1,new_g1g1 in_grp.nc out.nc  
+#ncrename -O -g g1g1,new_g1g1 in_grp.nc ~/foo.nc  
 #relative rename g1g1 to new_g1g1
 
     $dsc_sng="Groups: Relative rename 'g1g1' to 'new_g1g1' (expect failure with netCDF < 4.3.1)";
@@ -5102,7 +5119,7 @@ if (0){
     @tst_cmd=(); # really reset array.	
 
 #ncrename #20
-#ncrename  -D 1 -O -g /g1/g1g1,new_g1g1 in_grp.nc out.nc
+#ncrename  -D 1 -O -g /g1/g1g1,new_g1g1 in_grp.nc ~/foo.nc
 #Absolute rename -g /g1/g1g1,new_g1g1 
 
     $dsc_sng="Groups: Absolute rename '/g1/g1g1' to '/g1/new_g1g1' (expect failure with netCDF < 4.3.1)";
@@ -5113,10 +5130,10 @@ if (0){
     NCO_bm::tst_run(\@tst_cmd);
     @tst_cmd=(); # really reset array.	
 
-	} # RUN_NETCDF4_TESTS_VERSION_43
+	} # RUN_NETCDF4_TESTS_VERSION_GE_431
 
 #ncrename #21	
-#ncrename -O -g .gfoo,new_g1 in_grp.nc out.nc 
+#ncrename -O -g .gfoo,new_g1 in_grp.nc ~/foo.nc 
 # optional relative rename gfoo to new_g1 (print warning)
 
     $dsc_sng="Groups: Optional relative rename '.gfoo' to 'new_g1'";
@@ -5129,7 +5146,7 @@ if (0){
 	#################### Variables
 	
 #ncrename #22 (same as #13)
-#ncrename  -D 1 -O -v /g1/v1,/g1/new_v1 in_grp.nc out.nc
+#ncrename  -D 1 -O -v /g1/v1,/g1/new_v1 in_grp.nc ~/foo.nc
 #Absolute rename /g1/v1 to /g1/new_v1 
 
     $dsc_sng="Variables: Absolute rename '/g1/v1' to '/g1/new_v1' (input absolute name)";
diff --git a/bm/nco_bm.pl b/bm/nco_bm.pl
index c3bf62a..7b85794 100755
--- a/bm/nco_bm.pl
+++ b/bm/nco_bm.pl
@@ -2,7 +2,7 @@
 # Shebang line above may have to be set explicitly to /usr/local/bin/perl
 # on ESMF when running in queue. Otherwise it may pick up older perl
 
-# $Header: /cvsroot/nco/nco/bm/nco_bm.pl,v 1.154 2013/10/22 03:12:10 zender Exp $
+# $Header: /cvsroot/nco/nco/bm/nco_bm.pl,v 1.155 2014/07/07 06:04:22 zender Exp $
 
 # Usage: bm_usg(), below, has more information
 # ~/nco/bm/nco_bm.pl # Tests all operators
@@ -41,7 +41,7 @@ use vars qw(
 	    $foo1_fl $foo2_fl $foo_avg_fl $foo_fl $foo_T42_fl $foo_tst $foo_x_fl
 	    $foo_xy_fl $foo_xymyx_fl $foo_y_fl $foo_yx_fl $gnu_cut $hiresfound
 	    @ifls $itmp $localhostname $md5 $md5found %MD5_tbl $mpi_fk $mpi_prc
-        $mpi_upx
+            $mpi_upx
 	    $pfx_mpi $MY_BIN_DIR $nco_D_flg %NCO_RC $nco_vrs_sng $ncwa_scl_tst $notbodi
 	    $nsr_xpc $fl_nbr $nvr_my_bin_dir $omp_flg $opr_fmt $opr_lng_max
 	    @opr_lst @opr_lst_all @opr_lst_mpi $opr_nm $opr_rgr_mpi $opr_sng_mpi
diff --git a/config.h.in b/config.h.in
index f196657..3e069af 100644
--- a/config.h.in
+++ b/config.h.in
@@ -6,12 +6,9 @@
 /* Compatibility pvmgetarch token for UNICOS on DEC Alpha */
 #undef CRAY
 
-/* Compile operators with DAP support */
+/* Compile operators with DAP support from libnetcdf */
 #undef ENABLE_DAP
 
-/* DAP support is from libnetcdf */
-#undef ENABLE_DAP_NETCDF
-
 /* Custom debugging: Pedantic, bounds checking (slowest execution) */
 #undef ENABLE_DEBUG_CUSTOM
 
diff --git a/configure b/configure
index 0b2fcee..98b9598 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.4.
+# Generated by GNU Autoconf 2.69 for NCO netCDF Operators 4.4.5.
 #
 # 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.4'
-PACKAGE_STRING='NCO netCDF Operators 4.4.4'
+PACKAGE_VERSION='4.4.5'
+PACKAGE_STRING='NCO netCDF Operators 4.4.5'
 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.4 to adapt to many kinds of systems.
+\`configure' configures NCO netCDF Operators 4.4.5 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.4:";;
+     short | recursive ) echo "Configuration of NCO netCDF Operators 4.4.5:";;
    esac
   cat <<\_ACEOF
 
@@ -1485,7 +1485,7 @@ Optional Features:
                           enable-netcdf4) [[default=yes]]
   --disable-openmp        do not use OpenMP
   --enable-openmp         Build NCO with OpenMP [[default=yes]]
-  --enable-dap-netcdf     Build DAP-enabled NCO with netCDF-provided DAP
+  --enable-dap            Build DAP-enabled NCO with netCDF-provided DAP
                           [[default=yes]]
   --enable-ncoxx          Build libnco++ and ncap2 (same as enable-ncap2)
                           [[default=yes]]
@@ -1617,7 +1617,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-NCO netCDF Operators configure 4.4.4
+NCO netCDF Operators configure 4.4.5
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2483,7 +2483,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.4, which was
+It was created by NCO netCDF Operators $as_me 4.4.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3732,7 +3732,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='nco'
- VERSION='4.4.4'
+ VERSION='4.4.5'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -17738,7 +17738,7 @@ fi
 
 fi
 
-# OpenMP
+# Begin OpenMP
 
   OPENMP_CFLAGS=
   # Check whether --enable-openmp was given.
@@ -17813,7 +17813,6 @@ else
   enable_openmp=yes
 fi
 
-
 # Enable OpenMP unless told not to
 if ((test "${enable_openmp}" != 'no') && (test "${enable_netcdf4}" = 'xyes')); then
     CFLAGS="${CFLAGS} ${OPENMP_CFLAGS}"
@@ -17826,15 +17825,13 @@ echo "Beginning generic tests for DAP support"
 nco_LIBS_no_DAP="${LIBS}"
 # Check whether --enable-dap-netcdf was given.
 if test "${enable_dap_netcdf+set}" = set; then :
-  enableval=$enable_dap_netcdf; enable_dap_netcdf=${enableval}
+  enableval=$enable_dap_netcdf; enable_dap=${enableval}
 else
-  enable_dap_netcdf=yes
+  enable_dap=yes
 fi
 
-
-# Begin DAP-netCDF
-# Check for DAP-netCDF libraries unless told not to
-if test "${enable_dap_netcdf}" != 'no'; then
+# Check for DAP in netCDF library unless told not to
+if test "${enable_dap}" != 'no'; then
     echo "Testing for DAP-netCDF support (is DAP in libnetcdf.a?)..."
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nc__opendap in -lnetcdf" >&5
 $as_echo_n "checking for nc__opendap in -lnetcdf... " >&6; }
@@ -17880,33 +17877,25 @@ _ACEOF
   LIBS="-lnetcdf $LIBS"
 
 else
-  enable_dap_netcdf=no
+  enable_dap=no
 fi
 
-    if test "${enable_dap_netcdf}" = 'no'; then
+    if test "${enable_dap}" = 'no'; then
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: DAP-netCDF support through libnetcdf.a disabled (missing DAP functions)" >&5
 $as_echo "$as_me: WARNING: DAP-netCDF support through libnetcdf.a disabled (missing DAP functions)" >&2;}
     fi
-fi
-# End DAP-netCDF
-
-# Begin DAP (all flavors)
-enable_dap='no'
-if (test "x${enable_dap_netcdf}" = 'xyes'); then
-
-$as_echo "#define ENABLE_DAP_NETCDF 1" >>confdefs.h
-
-    enable_dap='yes'
+    if (test "x${enable_dap}" = 'xyes'); then
 
 $as_echo "#define ENABLE_DAP 1" >>confdefs.h
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: DAP support enabled" >&5
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: DAP support enabled" >&5
 $as_echo "$as_me: DAP support enabled" >&6;}
-    LIBS="${LIBS} -lcurl"
-# This would activate conditional GSL tests, if there were any
+	LIBS="${LIBS} -lcurl"
+# This would activate conditional DAP tests, if there were any
 #    AM_CONDITIONAL(TEST_DAP,[test "${enable_dap}" = 'yes'])
+    fi
 fi
-# End DAP (all flavors)
+# End DAP
 
 ##################################################
 # Check libraries, add to link path if found
@@ -20986,7 +20975,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.4, which was
+This file was extended by NCO netCDF Operators $as_me 4.4.5, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21052,7 +21041,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.4
+NCO netCDF Operators config.status 4.4.5
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -23102,7 +23091,6 @@ echo "CPPFLAGS............. ${CPPFLAGS}"
 echo "CXX.................. ${CXX}"
 echo "CXXFLAGS............. ${CXXFLAGS}"
 echo "OPENMP_CFLAGS........ ${OPENMP_CFLAGS}"
-echo "ENABLE_DAP_NETCDF.... ${enable_dap_netcdf}"
 echo "ENABLE_DAP........... ${enable_dap}"
 echo "ENABLE_GSL........... ${enable_gsl}"
 echo "HAVE_NETCDF4_H....... ${header_defines_nc_chunked}"
diff --git a/configure.ac b/configure.ac
index 6c215f2..a099749 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/configure.ac,v 1.45 2014/05/01 19:05:38 zender Exp $ -*-Shell-script-*-
+# $Header: /cvsroot/nco/nco/configure.ac,v 1.47 2014/07/07 06:04:22 zender Exp $ -*-Shell-script-*-
 
 # Purpose: Template autoconf uses to generate NCO configure script
 # Newer convention names this file configure.ac, rather than configure.in
@@ -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.4],[nco-bugs at lists.sourceforge.net],[nco])
+AC_INIT([NCO netCDF Operators],[4.4.5],[nco-bugs at lists.sourceforge.net],[nco])
 
 # Print GNU copyright in configure script
 AC_COPYRIGHT
@@ -306,11 +306,10 @@ if (test "x${enable_netcdf4}" = 'xyes' && test "x${header_defines_nc_chunked}" =
 	    ])
 fi
 
-# OpenMP
+# Begin OpenMP
 AC_OPENMP
 AC_SUBST(OPENMP_CFLAGS)
 AC_ARG_ENABLE(openmp,AS_HELP_STRING([--enable-openmp],[Build NCO with OpenMP [[default=yes]]]),enable_openmp=${enableval},enable_openmp=yes)
-
 # Enable OpenMP unless told not to
 if ((test "${enable_openmp}" != 'no') && (test "${enable_netcdf4}" = 'xyes')); then
     CFLAGS="${CFLAGS} ${OPENMP_CFLAGS}"
@@ -321,31 +320,23 @@ fi
 echo "Beginning generic tests for DAP support"
 # Store pre-DAP LIBS value to restore from later
 nco_LIBS_no_DAP="${LIBS}"
-AC_ARG_ENABLE(dap-netcdf,AS_HELP_STRING([--enable-dap-netcdf],[Build DAP-enabled NCO with netCDF-provided DAP [[default=yes]]]),enable_dap_netcdf=${enableval},enable_dap_netcdf=yes)
-
-# Begin DAP-netCDF
-# Check for DAP-netCDF libraries unless told not to
-if test "${enable_dap_netcdf}" != 'no'; then
+AC_ARG_ENABLE(dap-netcdf,AS_HELP_STRING([--enable-dap],[Build DAP-enabled NCO with netCDF-provided DAP [[default=yes]]]),enable_dap=${enableval},enable_dap=yes)
+# Check for DAP in netCDF library unless told not to
+if test "${enable_dap}" != 'no'; then
     echo "Testing for DAP-netCDF support (is DAP in libnetcdf.a?)..."
-    AC_CHECK_LIB([netcdf],[nc__opendap],,enable_dap_netcdf=no,[-lcurl])
-    if test "${enable_dap_netcdf}" = 'no'; then
+    AC_CHECK_LIB([netcdf],[nc__opendap],,enable_dap=no,[-lcurl])
+    if test "${enable_dap}" = 'no'; then
 	AC_MSG_WARN([DAP-netCDF support through libnetcdf.a disabled (missing DAP functions)])
     fi
-fi
-# End DAP-netCDF
-
-# Begin DAP (all flavors)
-enable_dap='no'
-if (test "x${enable_dap_netcdf}" = 'xyes'); then
-    AC_DEFINE([ENABLE_DAP_NETCDF],[1],[DAP support is from libnetcdf])
-    enable_dap='yes'
-    AC_DEFINE([ENABLE_DAP],[1],[Compile operators with DAP support])
-    AC_MSG_NOTICE([DAP support enabled])
-    LIBS="${LIBS} -lcurl"
-# This would activate conditional GSL tests, if there were any
+    if (test "x${enable_dap}" = 'xyes'); then
+	AC_DEFINE([ENABLE_DAP],[1],[Compile operators with DAP support from libnetcdf])
+	AC_MSG_NOTICE([DAP support enabled])
+	LIBS="${LIBS} -lcurl"
+# This would activate conditional DAP tests, if there were any
 #    AM_CONDITIONAL(TEST_DAP,[test "${enable_dap}" = 'yes'])
+    fi
 fi
-# End DAP (all flavors)
+# End DAP
 
 ##################################################
 # Check libraries, add to link path if found
@@ -1161,7 +1152,6 @@ echo "CPPFLAGS............. ${CPPFLAGS}"
 echo "CXX.................. ${CXX}"
 echo "CXXFLAGS............. ${CXXFLAGS}"
 echo "OPENMP_CFLAGS........ ${OPENMP_CFLAGS}"
-echo "ENABLE_DAP_NETCDF.... ${enable_dap_netcdf}"
 echo "ENABLE_DAP........... ${enable_dap}"
 echo "ENABLE_GSL........... ${enable_gsl}"
 echo "HAVE_NETCDF4_H....... ${header_defines_nc_chunked}"
diff --git a/data/Makefile.am b/data/Makefile.am
index 28e9cf2..453db96 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,8 +1,8 @@
-# $Header: /cvsroot/nco/nco/data/Makefile.am,v 1.36 2014/04/01 21:44:24 pvicente Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/data/Makefile.am,v 1.38 2014/08/21 18:22:44 zender Exp $ -*-makefile-*-
 
 test_data = big.nc in.nc in_rec_zero.nc
 
-test_data_netCDF4 = 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
+test_data_netCDF4 = 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
 
 # netCDF build rules
 %.nc : %.cdl
@@ -26,22 +26,18 @@ in_2.nc : in_2.cdl
 in_grp_3.nc : in_grp_3.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
-
 in_grp_4.nc : in_grp_4.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
 in_grp_5.nc : in_grp_5.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
-
 in_grp_6.nc : in_grp_6.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
-
 in_grp_7.nc : in_grp_7.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
-
 cmip5.nc : cmip5.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
@@ -51,6 +47,9 @@ dsm.nc : dsm.cdl
 hdn.nc : hdn.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
+mrd.nc : mrd.cdl
+	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
+
 obs.nc : obs.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
@@ -63,10 +62,9 @@ mdl_2.nc : mdl_2.cdl
 mdl_3.nc : mdl_3.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
-
 all: ${test_data} ${test_data_netCDF4}
 
-EXTRA_DIST = big.cdl dsm.cdl hdn.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
+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:
 # If configure built it, 'distclean' should delete it
@@ -74,7 +72,7 @@ EXTRA_DIST = big.cdl dsm.cdl hdn.cdl in.cdl in_grp.cdl in_grp_1.cdl in_grp_2.cdl
 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 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_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
 
 MAINTAINERCLEANFILES = Makefile.in
 
diff --git a/data/Makefile.in b/data/Makefile.in
index 567dce2..3e9d0e5 100644
--- a/data/Makefile.in
+++ b/data/Makefile.in
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/data/Makefile.in,v 1.115 2014/04/02 05:40:23 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/data/Makefile.in,v 1.116 2014/08/15 19:13:35 zender Exp $ -*-makefile-*-
 VPATH = @srcdir@
 am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 am__make_running_with_option = \
@@ -260,8 +260,8 @@ 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_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
-EXTRA_DIST = big.cdl dsm.cdl hdn.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
+test_data_netCDF4 = 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
+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:
 # If configure built it, 'distclean' should delete it
@@ -269,7 +269,7 @@ EXTRA_DIST = big.cdl dsm.cdl hdn.cdl in.cdl in_grp.cdl in_grp_1.cdl in_grp_2.cdl
 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 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_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
 MAINTAINERCLEANFILES = Makefile.in
 all: all-am
 
@@ -508,6 +508,9 @@ dsm.nc : dsm.cdl
 hdn.nc : hdn.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
+mrd.nc : mrd.cdl
+	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
+
 obs.nc : obs.cdl
 	- at PATH_TO_NCGEN@ -k netCDF-4 -o $@ $< 
 
diff --git a/data/dsm.cdl b/data/dsm.cdl
index ba97caf..8f706b0 100644
--- a/data/dsm.cdl
+++ b/data/dsm.cdl
@@ -3,7 +3,7 @@
 // Contains nested ensembles, metadata-only leaf groups, and "in-between data"
 // Usage:
 // ncgen -k netCDF-4 -b -o ~/nco/data/dsm.nc ~/nco/data/dsm.cdl
-// ncdismember ~/nco/data/dsm.nc /data/zender/nco/tmp cf 1.3 > ~/foo.txt 2>&1
+// ncdismember ~/nco/data/dsm.nc /data/zender/nco/tmp cf 1.5 > ~/foo.txt 2>&1
 
 netcdf dsm {
 
@@ -19,6 +19,7 @@ netcdf dsm {
     :metadata = "g2 group contains metadata and one variable but no shared dimensions";
   variables:
     float one;
+    one:long_name="the loneliest number";
   data:
     one=1;
   } // g2
@@ -29,6 +30,7 @@ netcdf dsm {
     lat=2;
   variables:
     float one_arr(lat);
+    one_arr:long_name="the loneliest array";
   data:
     one_arr=1,1;
   } // g3
@@ -41,6 +43,7 @@ netcdf dsm {
       :metadata = "g4g1 group contains one variable that depends on an inherited dimension";
     variables:
       float one_arr(lat);
+      one_arr:long_name="the loneliest array";
     data:
       one_arr=1,1;
     } // g4g1
@@ -53,16 +56,48 @@ netcdf dsm {
     lat=2;
   variables:
     float one_arr(lat);
+    one_arr:long_name="the loneliest array";
     group: g5g1 {
       :metadata = "g5g1 group contains one variable that depends on an inherited dimension";
     variables:
       float one_arr(lat);
+      one_arr:long_name="the loneliest array";
     data:
       one_arr=1,1;
     } // g5g1
 
   } // g5
 
+  group: g6 {
+    :metadata = "g6 group contains variables to test CF checkers";
+  dimensions:
+    time_like_2=2;
+    time_like_3=2;
+  variables:
+    int period;
+    period:units="second";
+    period:long_name="length of time between successive orbits";
+    byte time_like_1;
+    time_like_1:units="ns";
+    time_like_1:long_name="time as non-coordinate scalar";
+    byte time_like_2(time_like_2);
+    time_like_2:units="ns";
+    time_like_2:long_name="time is coordinate array";
+    byte time_like_3(time_like_3);
+    time_like_3:calendar="none";
+    time_like_3:units="ns";
+    time_like_3:long_name="time is coordinate array";
+    byte time_like_4(time_like_3);
+    time_like_4:units="ns";
+    time_like_4:long_name="time is non-coordinate array";
+    data:
+    period=1;
+    time_like_1=1b;
+    time_like_2=1b,2b;
+    time_like_3=1b,2b;
+    time_like_4=1b,2b;
+  } // g6
+
   group: cesm {
 
   group: cesm_01 {
@@ -76,7 +111,9 @@ netcdf dsm {
       time=4;
     variables:
       float tas1(time);
-	  float tas2(time);
+      tas1:long_name="temperature";
+      float tas2(time);
+      tas2:long_name="temperature";
     data:
       tas1=272.1,272.1,272.1,272.1;
       tas2=272.1,272.1,272.1,272.1;
@@ -94,10 +131,12 @@ netcdf dsm {
       time=4;
     variables:
       float tas1(time);
-	  float tas2(time);
+      tas1:long_name="temperature";
+      float tas2(time);
+      tas2:long_name="temperature";
     data:
       tas1=272.2,272.2,272.2,272.2;
-	  tas2=272.2,272.2,272.2,272.2;
+      tas2=272.2,272.2,272.2,272.2;
       
     } // cesm_02
     
@@ -116,7 +155,9 @@ netcdf dsm {
       time=4;
     variables:
       float tas1(time);
-	  float tas2(time);
+      tas1:long_name="temperature";
+      float tas2(time);
+      tas2:long_name="temperature";
     data:
       tas1=273.1,273.1,273.1,273.1;
       tas2=273.1,273.1,273.1,273.1;
@@ -134,11 +175,12 @@ netcdf dsm {
       time=4;
     variables:
       float tas1(time);
+      tas1:long_name="temperature";
       float tas2(time);
+      tas2:long_name="temperature";      
     data:
       tas1=273.2,273.2,273.2,273.2;
       tas2=273.2,273.2,273.2,273.2;
-      
     } // ecmwf_02
 
   } // ecmwf
diff --git a/data/in.cdl b/data/in.cdl
index 1551741..0fd6812 100644
--- a/data/in.cdl
+++ b/data/in.cdl
@@ -60,7 +60,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.187 2014/04/13 02:36:53 zender Exp $";
+	:RCS_Header = "$Header: /cvsroot/nco/nco/data/in.cdl,v 1.189 2014/08/21 20:39:01 zender Exp $";
 
 	int date_int(date_dmn);
 	date_int:long_name = "Date (as array of ints: YYYY,MM,DD,HH,MM)";
@@ -255,6 +255,22 @@ variables:
 	cnv_CF_crd:coordinates = "lat_gds lon_gds ";
 	cnv_CF_crd:reason = "Test whether coordinates attribute strings that end with a space break after nco_var_lst_crd_ass_add() call to nco_lst_prs_2d()";
 
+	float cnv_CF_ncl(time);
+	cnv_CF_ncl:long_name = "test CF ancillary_variables convention";
+        cnv_CF_ncl:standard_name = "specific_humidity";
+        cnv_CF_ncl:ancillary_variables = "cnv_CF_ncl_var_1 cnv_CF_ncl_var_2";
+        cnv_CF_ncl:purpose = "Main variable that has ancillary variables named cnv_CF_ncl_var_1 and cnv_CF_ncl_var_2";
+
+	float cnv_CF_ncl_var_1(time);
+	cnv_CF_ncl_var_1:long_name = "test CF ancillary_variables convention";
+        cnv_CF_ncl_var_1:standard_name = "specific_humidity standard_error";
+        cnv_CF_ncl_var_1:purpose = "Ancillary variable for cnv_CF_ncl. Other ancillary variable is cnv_CF_ncl_var_2.";
+
+	float cnv_CF_ncl_var_2(time);
+	cnv_CF_ncl_var_2:long_name = "test CF ancillary_variables convention";
+        cnv_CF_ncl_var_2:standard_name = "specific_humidity detection_limit";
+        cnv_CF_ncl_var_2:purpose = "Ancillary variable for cnv_CF_ncl. Other ancillary variable is cnv_CF_ncl_var_1.";
+
 	float PS(time,lat,lon);
 	PS:long_name = "surface pressure";
 	PS:units = "pascal";
@@ -985,7 +1001,6 @@ variables:
 	float txyz(time,lon,lat,lev);
 	txyz:long_name = "four dimensional record variable stored in txyz (time,lon,lat,lev) order";
 
-
 	float four_dmn_rec_var(time,lat,lev,lon);
 	four_dmn_rec_var:long_name = "four dimensional record variable";
 	four_dmn_rec_var:units = "watt meter-2";
@@ -1021,6 +1036,13 @@ variables:
 	var_nm-dash:long_name = "Variable and attribute names include dash characters";
 	var_nm-dash:att_nm-dash = 1.0e36f;
 
+	float vld_rng(time);
+	vld_rng:long_name = "Temperature";
+	vld_rng:purpose = "Array containing _FillValue at some locations, out-of-range values at other locations, and valid data in the remainder";
+	vld_rng:_FillValue = -999.0f;
+	vld_rng:valid_min = 180.f;
+	vld_rng:valid_max = 360.f;
+
 //	float var_nm.dot;
 //	var_nm.dot:long_name = "Variable and attribute names include dot characters";
 //	20070102: Periods in attribute names choke OPeNDAP from FC7 RPM TODO nco911
@@ -1063,6 +1085,9 @@ data:
 	char_var_nul='\0';
 	char_var_space=" ";
 	cnv_CF_crd=273.1,273.2,273.3,273.4,273.5,273.6,273.7,273.8;
+	cnv_CF_ncl=1.,2.,3.,4.,5.,6.,7.,8.,9.,10.;
+	cnv_CF_ncl_var_1=11.,22.,23.,24.,25.,26.,27.,28.,29.,30.;
+	cnv_CF_ncl_var_2=21.,32.,33.,34.,35.,36.,37.,38.,39.,40.;
 	date_int=1964,3,12,12,9;
 	dgn=73;
 	dgn_var=73;
@@ -1559,6 +1584,9 @@ data:
 //				-99.5,74.5,75.5,76.5,77.5,78.5,79.5,-99.5;
 				
 	time_udunits = 876012, 876018, 876024;
+
+	vld_rng=		273.,-999.,180.,179.,273.,360.,361.,1.0e36,-1.0e36,273.;
+
 	wnd_spd=		-999,0.5,1.5,0.5,1.5,0.5,1.5,0.5,
 				0.5,-999,0.5,0.5,0.5,0.5,0.5,0.5,
 				0.5,1.5,-999,1.5,0.5,1.5,0.5,1.5,
diff --git a/data/mrd.cdl b/data/mrd.cdl
new file mode 100644
index 0000000..9e6b9bb
--- /dev/null
+++ b/data/mrd.cdl
@@ -0,0 +1,30 @@
+// -*-C++-*-
+
+// Purpose: Test Multiple Record Dimensions
+
+// Generate netCDF file with:
+// ncgen -k netCDF-4 -b -o ~/nco/data/mrd.nc ~/nco/data/mrd.cdl
+
+// Reproduce bug 20140815: ncrcat (not ncks) fails on variables with multiple record dimensions reported by rmla 20140619
+// ncrcat -O -d parameter,0,0 -d time,1,1 -d run,0,1 -d step,0,1 -d number,0,1 -d ngr,0,1 ${DATA}/hdf/71355.ecmf.1.nc ~/mrd.nc
+// ncrcat -O -h -d time,0 ~/nco/data/mrd.nc ~/foo.nc
+// ncdump ~/foo.nc
+
+netcdf mrd {
+dimensions:
+	time = UNLIMITED ; // (2 currently)
+	step = UNLIMITED ; // (2 currently)
+variables:
+	int var_mrd(time, step) ;
+	int time(time) ;
+
+data:
+
+ var_mrd =
+  {1,
+  2},
+  {3,
+   4} ;
+
+ time = 1, 2 ;
+}
diff --git a/doc/ANNOUNCE b/doc/ANNOUNCE
index 9c70080..7b551a1 100644
--- a/doc/ANNOUNCE
+++ b/doc/ANNOUNCE
@@ -1,121 +1,102 @@
-$Header: /cvsroot/nco/nco/doc/ANNOUNCE,v 1.717 2014/05/29 18:19:54 zender Exp $ -*-text-*-
+$Header: /cvsroot/nco/nco/doc/ANNOUNCE,v 1.730 2014/08/27 04:44:00 zender Exp $ -*-text-*-
 
-The netCDF Operators NCO version 4.4.4 are ready. 
+The netCDF Operators NCO version 4.4.5 are ready. 
 
 http://nco.sf.net (Homepage)
 http://dust.ess.uci.edu/nco (Homepage "mirror")
 
 This release is mainly a bugfix and stability release. 
 A few new features improve some corner-cases:
-It includes workarounds that allow NCO to successfully work with
-some names that violate netCDF but not HDF rules. 
-Users can now retain "orphaned" dimensions after variable subsetting. 
-nces now works with hyperslabs that resolve to the same size.
-Group broadcasting by ncbo is more intelligent when differencing
-ensemble means (created by nces) from full datasets. 
+NCO now supports longer lists of input files, DAP files on HTTPS
+servers, and the CF ancillary_variables convention.
 
-A potentially serious bug in ncwa --mask_condition has been fixed.
-Users of ncwa --mask_condition are encouraged to upgrade.
-
-Work on NCO 4.4.5 is underway, still focused on stability and speed.   
-This includes more netCDF4 mop-up, improved group broadcasting
-algorithms, and, possibly, improved HDF4 support, and new chunking 
-features.
+Work on NCO 4.4.6 is underway, still focused on stability and speed.   
+This includes more netCDF4 mop-up and new chunking features.
 
 Enjoy,
 Charlie
 
 NEW FEATURES (full details always in ChangeLog):
 
-A. NCO now contains automatic workarounds to handle element names that
-   contain characters that are legal in HDF though are illegal in
-   netCDF.  For example, slashes and leading special characters are
-   are legal in HDF and illegal in netCDF element (i.e., group,
-   variable, dimension, and attribute) names. NCO converts these
-   forbidden characters to underscores, and retains the original names
-   of variables in automatically produced attributes named hdf_name.
-   Two real-world examples: NCO translates the NASA CERES dimension
-   "(FOV) Footprints" to "_FOV_ Footprints", and "Cloud & Aerosol,
-   Cloud Only, Clear Sky w/Aerosol, and Clear Sky" (yes, that's really
-   a dimension name) to "Cloud & Aerosol, Cloud Only, Clear Sky
-   w_Aerosol, and Clear Sky".
-   ncks CERES_MODIS.hdf CERES_MODIS.nc
-   http://nco.sf.net/nco.html#hdf4
-
-B. ncks --rad to Retain all dimensions.
-   When invoked with --rad, ncks copies each dimension in the input
-   file to the output file, regardless of whether the dimension is
-   utilized by any variables. Normally ncks discards "orphan
-   dimensions", i.e., dimensions not referenced by any variables.
-   This switch allows users to keep non-referenced dimensions.
-   When invoked in printing mode, this causes orphaned dimensions to
-   be printed (they are not printed by default).
-   ncks -O -C -v lat,lon ~/nco/data/in.nc ~/foo.nc
-   ncks --rad -O -x -v lat ~/foo.nc ~/foo2.nc
-   ncks --rad --cdl ~/foo2.nc
-   http://nco.sf.net/nco.html#rad
-
-C. nces now computes statistics on ensemble members whose specified
-   hyperslabs resolve to the same size. nces has always worked well
-   with identically shaped ensemble members, and on ensemble members
-   whose record-dimension hyperslabs resolve to the same size. 
-   Now nces works well with ensemble members whose specified
-   hyperslabs along any dimension resolve to the same size. The
-   use-case that demanded this was a researcher who wished to compare
-   a certain lat/lon region (stored in some regional files) with the
-   same region stored in other global files (with the same grid).
-   The regional files (e.g., Greenland only) are much smaller than
-   global files so nces's new capability allows users to "get by" with 
-   regional files rather than always storing global files.
-   nces -O --nsm_grp -d lat,0 -d lon,2 -d time,0 -p ~/nco/data grp1.nc grp2.nc ~/foo.nc
-   http://nco.sf.net/nco.html#nces
+A. NCO now supports stdin input file lists up to ~50 MB long.
+   This applies to all NCO multi-file operators (ncra, ncea, ncrcat).
+   The previous limit was 10 MB. The new limit suffices for 30 years
+   of hourly datasets where each dataset name is 192 bytes long.
+   One NASA user is averaging 10 years of data, or 87600 files.
+   Who will be the first user to break the million file barrier?
+   http://nco.sf.net/nco.html#stdin
+
+B. NCO now supports the CF ancillary_variables convention described at
+   http://cfconventions.org/1.6.html#ancillary-data
+   This convention allows ancillary variables to be associated with
+   one or more primary variables. NCO attaches any such variables to
+   the extraction list along with the primary variable and its
+   coordinates and bounds, if any. 
+   http://nco.sf.net/nco.html#ncl
+
+C. NCO now accesses DAP files on HTTPS servers. Previously NCO would
+   only test filenames beginning with "http://" for DAP access. 
+   Now NCO also tests filenames beginning with "https://" for DAP.
+   If you use DAP servers with a protocol besides HTTP or HTTPS please
+   tell us so we can enable NCO for those services too.
+   http://nco.sf.net/nco.html#dap
+
+D. ncks --grp_xtr_var_xcl: Group Extraction Variable Exclusion
+   This new switch helps control variable and group extraction.
+   Normally NCO works in "intersection mode" where the objects
+   extracted are the intersection of arguments to -g and -v.
+   And the --union switch can be used to make their union.
+   As of 4.4.4 (June, 2014), ncks (alone) supports an option to
+   include specified groups yet exclude specified variables. 
+   The --grp_xtr_var_xcl switch (with long option equivalent --gxvx
+   extracts all contents of groups given as arguments to 
+   -g except for variables given as arguments to -v.
+   Use this when one or a few variables in hierarchical files are not
+   to be extracted, and all other variables are. This is useful when
+   coercing netCDF4 files into netCDF3 files such as with converting,
+   flattening, or dismembering files.
+   ncks --grp_xtr_var_xcl -g g1 -v v1 # Extract all of group g1 except v1
+   http://nco.sf.net/nco.html#gxvx
+
+E. New chunking policy r1d changes chunksize of 1-D record variables
+   (and no other variables) to 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, ncks --cnk_plc=r1d --cnk_dmn=time,1000.
+   This sets time chunks to 1000 only in 1-D record variables.
+   Without the r1d policy, time chunks would change in all variables.  
+   Not to be confused with chunking map rd1.
+   Thanks to James Adams for suggesting this.
+   http://nco.sf.net/nco.html#r1d
 
 BUG FIXES:
 
-A. Fixed ncwa incorrect interpretation of some --mask_conditions.
-   Lexer/Parser could return incorrect mask values for negative numbers.
-   Thanks to Keith Lindsay for report, and to Henry Butowsky for fix. 
-   Prior to this fix, the ncwa lexer would drop the negative sign, if
-   any, from the comparators appearing in the mask condition, e.g.,
-   ncwa --mask_condition "lat < -20" was parsed as "lat < 20" not 
-   "lat < -20". Hence, users of ncwa --mask_condition (or -B) should
-   upgrade. NB: The -m -M -T form of ncwa masking is/was not buggy.
-   http://nco.sf.net#bug_ncwa_mask_condition
-
-B. Restore former tolerance of -x for non-existent elements.
-   NCO normally requires that variables and groups specified with -v
-   and -g must match the input file contents. The exception is when
-   the -x flag tells NCO to exclude these elements. This exception
-   was broken since NCO 4.2.x, and is now working again. Now excluding
-   non-existent variables should one again work, e.g., 
-   ncks -O -x -v no_such_variable ~/nco/data/in.nc ~/foo.nc
-   Thanks to Keith Oleson for this bug report.
-   http://nco.sf.net/nco.html#x
-   
-C. Fix bug that caused CDL and XML printing to truncate trailing zeros
-   of floating point exponents. Before this bugfix, ncks --cdl would
-   print 1.100e-10 as 1.100e-1 instead of 1.1e-10. All CDL and XML
-   printing prior to 4.4.4 mis-prints floating point numbers with
-   exponents that end in zero (i.e., +/- 10, 20, 30 ... 200, 210...).
-   Users of CDL and XML mode are urged to upgrade. This bug changed
-   affected values by some multiple of 10 orders of magnitude. 
-   Hence it is likely that users affected by this bug would notice it
-   when carefully performing any statistics, yet possible they would
-   not for fields with large dynamic ranges. Thanks to Stubaan for report.
-
-D. Fix regression tests not to cause false negatives due to netCDF
-   4.3.2 record dimension chunk size changes
-
-E. ncdismember better handles whitespace in group names
-
-F. Fix numerous memory leaks and some corner-case segfaults
-
-KNOWN PROBLEMS:
+A. ncrename: fix unsafe pointer de-reference and improve diagnostics
+
+B. Fix problem introduced in 4.4.0 where sanitizing of filenames with
+   colons confused MS Windows interpretation of volume names, e.g.,
+   "C:\foo" became "C\:\foo" and caused write error. Workaround is to
+   use --no_tmp_fl or upgrade to 4.4.5. Thanks to James Adams for
+   reporting. 
+
+C. Always send correct dimension sizes to chunker when hyperslabbing.
+   Fixes a bug reported where chunking and hyperslabbing played
+   cruelly together. Thanks to Parker Norton for reporting.
+   http://nco.sf.net#bug_cnk_hyp
+
+D. ncpdq: fix mishandling of dimension reversal arguments
+   Versions 4.3.2-4.4.4 of ncpdq could fail to correctly parse some
+   valid forms of the dimension reversal syntax. Failure resulted,
+   so no bad data was written. Solution is to upgrade to 4.4.5.
+   Thanks to Fan Fang for reporting.
+
+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.4 built/tested with netCDF
-   4.3.3-rc1 on top of HDF5 hdf5-1.8.12 with these methods: 
+   These problems occur with NCO 4.4.5 built/tested with netCDF
+   4.3.3-rc1 on top of HDF5 hdf5-1.8.13 with these methods: 
 
    cd ~/nco;./configure --enable-netcdf4  # Configure mechanism -or-
    cd ~/nco/bld;make dir;make allinone # Old Makefile mechanism
@@ -132,7 +113,33 @@ A. NOT YET FIXED (NCO problem)
    Cause: NCO parsing of ncatted arguments is not sophisticated
    enough to handle arrays of NC_STRINGS with embedded delimiters.
 
-B. NOT YET FIXED (netCDF library problem)
+B. NOT YET FIXED (NCO problem?)
+   ncra/ncrcat (not ncks) hyperslabbing can fail on variables with multiple record dimensions
+
+   Demonstration:
+   ncrcat -O -d time,0 ~/nco/data/mrd.nc ~/foo.nc
+
+   20140826: Verified problem still exists
+   20140619: Problem reported by rmla
+   Cause: Unsure. Maybe ncra.c loop structure not amenable to MRD?
+   Workaround: Convert to fixed dimensions then hyperslab
+
+C. NOT YET FIXED (NCO problem?)
+   Correctly handle stride argument on netCDF4 datasets
+   Specifying strided hyperslab on netCDF4 datasets leads
+   to enormous slowdown or failure with recent NCO versions.
+
+   Demonstration:
+   ncks -O -d time,0,,12 ~/ET_2000-01_2001-12.nc ~/foo.nc
+
+   20140826: Verified problem still exists
+   20140718: Problem reported by Parker Norton
+   Cause: Unclear. Interaction of stride and MSA?
+   Workaround: Convert file to netCDF3 first, then use stride
+
+KNOWN PROBLEMS DUE TO BASE LIBRARIES/PROTOCOLS:
+
+A. NOT YET FIXED (netCDF library problem)
    Probe hidden attributes (chunking, compression) of HDF4 files
 
    Demonstration:
@@ -145,7 +152,7 @@ B. NOT YET FIXED (netCDF library problem)
    Bug report filed: netCDF #HZY-708311 ncdump/netCDF4 segfaults probing HDF4 file
    Tracking tickets NCF-272, NCF-273
 
-C. NOT YET FIXED (would require DAP protocol change?)
+B. NOT YET FIXED (would require DAP protocol change?)
    Unable to retrieve contents of variables including period '.' in name
    Periods are legal characters in netCDF variable names.
    Metadata are returned successfully, data are not.
@@ -160,7 +167,7 @@ C. NOT YET FIXED (would require DAP protocol change?)
 
    Bug report filed: https://www.unidata.ucar.edu/jira/browse/NCF-47
 
-D. NOT YET FIXED (would require DAP protocol change)
+C. NOT YET FIXED (would require DAP protocol change)
    Correctly read scalar characters over DAP.
    DAP non-transparency: Works locally, fails through DAP server.
    Problem, IMHO, is with DAP definition/protocol
diff --git a/doc/ChangeLog b/doc/ChangeLog
index a3da80c..ab20346 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,3 +1,128 @@
+2014-08-26  Charlie Zender  <zender at uci.edu>
+
+	* NCO 4.4.5 release procedure:
+ 	Changes since nco-4_4_4: https DAP, gxvx, mk, ncl_var, dmn_cmn,	ncpdq, C:
+	cd ~/nco;cvs tag -d nco-4_4_5;cvs tag -d nco-4_4_5-1
+	cd ~/nco;cvs commit -m "Preparing nco-4.4.5 release"
+	cvs tag -c nco-4_4_5;cvs tag -c nco-4_4_5-1
+
+2014-08-25  Charlie Zender  <zender at uci.edu>
+
+	* Specify correct dmn_cmn[] information to nco_cnk_sz_set_trv()
+
+2014-08-22  Charlie Zender  <zender at uci.edu>
+
+	* Sanitize filenames prior to shell use with nm2sng_fl() instead of nm2sng_cdl()
+	Fixes bug in MS Windows handling volume names like "C:\foo"
+
+2014-08-21  Charlie Zender  <zender at uci.edu>
+
+	* Fix false negative regressions due to new chunking defaults
+
+	* Fix ncpdq mis-handling of dimension reversal arguments (introduced between 4.3.2--4.3.6)
+
+	* Fix inadvertent omission of --cnk_map switch in ncecat
+
+2014-08-15  Charlie Zender  <zender at uci.edu>
+
+	* Change default chunking policy/map from g2d/rd1 to xst/xst (fxm: breaks some regressions)
+
+	* Add mrd.cdl to check compliance/performance for files/variables with Multiple Record Dimensions
+
+2014-08-14  Charlie Zender  <zender at uci.edu>
+
+	* Add cnk_plc_r1d to only change chunking of specified 1-D record variables
+
+2014-08-13  Charlie Zender  <zender at uci.edu>
+
+	* Tweak Makefile for rhea.ccs.ornl.gov
+
+2014-07-14  Charlie Zender  <zender at uci.edu>
+
+	* Tidy ncks.c and nco_grp_utl.c for MPI work
+
+	* Clarify ncrcat packing issues in man page
+
+2014-07-11  Charlie Zender  <zender at uci.edu>
+
+	* Change FL_LST_IN_MAX_LNG from 10 MB to 504576001 B per request of Christine Smit
+	Use case: 30 years of hourly data files each 192 characters long
+
+2014-07-10  Charlie Zender  <zender at uci.edu>
+
+	* Deprecate ENABLE_PNETCDF from meaning exposed PnetCDF API
+	Soon it will mean that netCDF4 was built with --enable-pnetcdf
+
+2014-07-08  Charlie Zender  <zender at uci.edu>
+
+	* Handle CF ancillary_variables like, well, ancillary variables
+
+2014-07-06  Charlie Zender  <zender at uci.edu>
+
+	* Integrate netCDF4 MPI I/O calls in library, begin conversion with ncks
+
+	* Clean-up nco_get_prg_info(), make consistent with newer netCDF regression tests
+
+2014-07-05  Charlie Zender  <zender at uci.edu>
+
+	* Remove Makefile cruft to simplify building parallel NCO
+
+2014-07-04  Charlie Zender  <zender at uci.edu>
+
+	* Use -5 --fl_fmt=pnetcdf to create NC_FORMAT_CDF5 files
+
+	* Build simply when PNETCDF=Y
+
+2014-07-01  Charlie Zender  <zender at uci.edu>
+
+	* Improve CF-compliance checking infrastructure for mabel/ICESat2
+
+2014-06-17  Charlie Zender  <zender at uci.edu>
+
+	* Implement i18n in ncks, extend to es and fr
+
+2014-06-15  Charlie Zender  <zender at uci.edu>
+
+	* Apply copyright notice changes to most source files
+
+2014-06-13  Charlie Zender  <zender at uci.edu>
+
+	* Update and streamline project homepage
+
+2014-06-12  Charlie Zender  <zender at uci.edu>
+
+	* Improve ncrename diagnostics, fix unset pointer de-reference
+
+2014-06-11  Charlie Zender  <zender at uci.edu>
+
+	* Document --grp_xtr_var_xcl
+
+2014-06-10  Charlie Zender  <zender at uci.edu>
+
+	* Utilize @verbatim environment in all nco.texi @examples
+
+2014-06-06  Charlie Zender  <zender at uci.edu>
+
+	* Improve NCO compliance with NASA Reuse-Readiness Levels (RRLs)
+	Reorganize documentation on citation, authorship, copyright, and licensing
+
+	* Document NARR example of SLD statistics
+
+2014-06-05  Charlie Zender  <zender at uci.edu>
+
+	* nc_set_log_level(nco_dbg_lvl) to quiet HDF logging messages for ncdismember
+
+2014-06-04  Charlie Zender  <zender at uci.edu>
+
+	* Add pnetCDF token stubs. Build pnetCDF-enabled netCDF4 in /usr/local/parallel.
+
+	* Filenames that begin with https:// now trigger DAP access code path
+
+2014-05-31  Charlie Zender  <zender at uci.edu>
+
+	* Mac OS X compatibility with bld/Makefile complete. No	regressions!
+	Using MacPorts netCDF 4.3.1, Xcode 5.1, GNU coreutils (for cut)
+
 2014-05-29  Charlie Zender  <zender at uci.edu>
 
 	* NCO 4.4.4 release procedure:
@@ -11129,7 +11254,7 @@
 
 	* Created ncap_var_stretch() which generalizes var_conform_dim()
 	by including convolution of variables. ncap_var_stretch() appears
-	to work as drop in replacement for var_conform_dim(). 
+	to work as drop in replacement for var_conform_dim().
 	Convolution is just a stub which does not do anything yet.
 	Realized that expansion might work by creating arbitrary variable
 	of convolution size and then separately calling var_conform_dim()
@@ -11148,7 +11273,7 @@
 	All of these machines have bison installed
 	Some of these builds require building getopt.o separately
 	Build fails on IBM because yacc does not understand pure_parser
-	
+
 2001-12-28  Charlie Zender  <zender at uci.edu>
 
 	* More CEWI initializations
@@ -11158,7 +11283,7 @@
 	* Remove C++ comment characters that crept into various routines
 	Using // comments causes default to compilation to break on many
 	architectures (Linux being an exception)
-	
+
 	* cvs tag -c nco-2_1_1
 	Changes since nco-2_1_0: ncap uses @ for attributes
 	Mixed rank handling improved but still broken
@@ -11177,12 +11302,12 @@
 	          i.e var_nm at att_nm rather than var_nm:att_nm
 
 	* Changed ncap.y So that 1-D variables can be saved in an attribute
-	
+
 	* Attempted to fix the rank problem. Added ncap_var_conform_dim() to
 	  ncap_utl.c, Its not working correctly at the mo.
-	
+
         * Added att_lst_max to ncap.c
-	
+
 	* Updated ncap.in
 
 2001-12-02  Charlie Zender  <zender at uci.edu>
@@ -11208,7 +11333,7 @@
 2001-10-30  Charlie Zender  <zender at uci.edu>
 
 	* Fixed getopt dependencies and included nco_netcdf.h nco.h in
-	ncap stuff 
+	ncap stuff
 
 2001-10-28  Charlie Zender  <zender at uci.edu>
 
@@ -11218,7 +11343,7 @@
 
 	* Use NC_REC_DMN_UNDEFINED instead of -1 where appropriate
 
-	* Fix argument list to nco_inq_varid() call in ncap 
+	* Fix argument list to nco_inq_varid() call in ncap
 
 	* Fix netCDF3 migration bug that could cause core dumps because
 	non-coordinate dimensions where being interpreted as coordinate
@@ -11228,7 +11353,7 @@
 
 	* Added VERSION infrastructure for recording build information in executable
 
-	* Check rcd before Exit_Gracefully() in main() routines so 
+	* Check rcd before Exit_Gracefully() in main() routines so
 	rcd does not generate "set but not used warnings"
 
 2001-10-07  Charlie Zender  <zender at uci.edu>
@@ -11240,7 +11365,7 @@
 	information-specific versions of inquire functions where
 	possible.
 
-	* Verified nco-2_0_2 passes test suite 
+	* Verified nco-2_0_2 passes test suite
 
 	* nco_typ_sng(): NC_CHAR is unsigned char, moved nco_typ_sng(),
 	c_type_nm(), fortran_typ_nm() to nco_netcdf library so that
@@ -11485,7 +11610,7 @@
 	* Added OpenMP critical regions to var_get() and var_refresh()
 
 	* Added OpenMP critical regions around thread-unsafe netCDF
-	write calls in ncwa and ncra/ncea. 
+	write calls in ncwa and ncra/ncea.
 
 	* Finally removed 1995--1996-era SGI enum workarounds from nc.h
 	SGI compiler on dataproc seems to behave sanely now
@@ -11500,7 +11625,7 @@
 	work either.
 
 	* Multi-threaded version of ncwa averages variables in T42 file
-	correctly sometimes, but also incorrectly. Currently unpredictable 
+	correctly sometimes, but also incorrectly. Currently unpredictable
 	what causes discrepancy.
 
 	* Removed arg_cnt from ncwa.c. ncwa.c now uses standard
@@ -11517,7 +11642,7 @@
 2000-09-13  Charlie Zender  <zender at uci.edu>
 
 	* Contrary to the documentation, ncflint has always processed
-	coordinate variables. Perhaps fixing coordinate variables is a 
+	coordinate variables. Perhaps fixing coordinate variables is a
 	better idea? Patched var_lst_divide() to fix all non-record
 	coordinate variable to ncflint. Not sure if I will release this
 	though. Perhaps it should be a switch?
@@ -11543,7 +11668,7 @@
 
 	* Added some clarifications to memory handling in the manual, and
 	additional examples provoked by John Sheldon's GFDL netCDF
-	website. 
+	website.
 
 	* Integrated ncvarid_or_die() and ncdimid_or_die() into ncrename
 
@@ -11554,7 +11679,7 @@
 	* Will all previous changes to nco_malloc(), nco_realloc(), and
 	memory management in general, make tst now seems to be well
 	behaved with Electric Fence, and duplicates answers without
-	Electric Fence. 
+	Electric Fence.
 
 	* Another nco_realloc() tweak to satisfy Electric Fence:
 	Now realloc() is never called when size == 0
@@ -11584,18 +11709,18 @@
 2000-08-23  Charlie Zender  <zender at uci.edu>
 
 	* Functionalized type conversion routines nco_cnv_var_dbl() and
-	nco_cnv_dbl_var() 
+	nco_cnv_dbl_var()
 
 	* Fixed x:y bug in opt arg of ncra.c introduced in 1.2
 
 2000-08-14  Charlie Zender  <zender at uci.edu>
 
-	* Added this text to the license, provided by Steven G. Johnson 
+	* Added this text to the license, provided by Steven G. Johnson
 
-	"As a special exception to the terms of the GPL, you are permitted 
-	to link the NCO source code with the NetCDF and HDF libraries 
-	and distribute the resulting executables under the terms of the GPL, 
-	but in addition obeying the extra stipulations of the netCDF and 
+	"As a special exception to the terms of the GPL, you are permitted
+	to link the NCO source code with the NetCDF and HDF libraries
+	and distribute the resulting executables under the terms of the GPL,
+	but in addition obeying the extra stipulations of the netCDF and
 	HDF library licenses."
 
 	This is intended to allow NCO to link to the non-GPL licenses of
@@ -11635,7 +11760,7 @@
 2000-07-09  Charlie Zender  <zender at uci.edu>
 
         * Added section on Contributing/contributors to nco.texi
-	
+
 	* Fixed case when missing value is first in min and max operators
 
 	* Added min, max, ttl cases to nco_tst.sh
@@ -11643,7 +11768,7 @@
 	* Added temporary variable to all low-level arithmetic routines
 	(e.g., var_add()) to store missing value in order to reduce
 	dereferencing of pointers to missing values. This may result in
-	measurable speedups for all arithmetic operators. 
+	measurable speedups for all arithmetic operators.
 
 2000-07-08  Charlie Zender  <zender at uci.edu>
 
@@ -11705,7 +11830,7 @@
 
 	* Tagged this as nco1_1_48
 
-	* Found and fixed ncdiff bug in TODO #155. 
+	* Found and fixed ncdiff bug in TODO #155.
 	Bug had been inserted in ncdiff 1.5 (nco-1.1.15, November 1998)
 	when I switched from using dimension IDs to using dimension names
 	to identify and compare dimensions in var_conform_dim(). Problem
@@ -11716,10 +11841,10 @@
 	out in ncdiff() so I was able to check that turning it back on
 	solves the problem. Now I have removed old commented-out block
 	from ncdiff (because it was confusing) and all logic is now local
-	to var_conform_dim(). This fix increases the number of strstr() 
+	to var_conform_dim(). This fix increases the number of strstr()
 	comparisons of dimension names because names must now be compared
-	twice in var_conform_dim() for each variable being expanded. 
-	Oh well. 
+	twice in var_conform_dim() for each variable being expanded.
+	Oh well.
 
 2000-05-12  Charlie Zender  <zender at uci.edu>
 
@@ -11729,8 +11854,8 @@
 
 	* Finished testing of feature allowing skipping of initial files
 	when lmt_typ = dim_idx. Seems to work. Now dim_idx and crd_val
-	hyperslabs may have arbitrary numbers of superfluous files at 
-	beginning and end. 
+	hyperslabs may have arbitrary numbers of superfluous files at
+	beginning and end.
 
 	* Added rec_skp_nsh member to lmt structure to support keeping
 	track of records skipped in superfluous initial files for lmt_typ
@@ -11750,13 +11875,13 @@
 
 	* Switched NCO from atof(), atol() to strtod(), strtol()
 
-	* Added ability to skip superfluous trailing files to lmt_evl() 
+	* Added ability to skip superfluous trailing files to lmt_evl()
 	when limits are coordinate values. Needs testing but appears to
 	work. Had to use a goto statement, icky. Fixes TODO #157?
 
 2000-05-04  Charlie Zender  <zender at uci.edu>
 
-	* More fixes to fix problems with Electric Fence 
+	* More fixes to fix problems with Electric Fence
 
 2000-04-18  Charlie Zender  <zender at uci.edu>
 
@@ -11785,9 +11910,9 @@
 	* Tagged this as nco-1_1_45
 
 	* Fix to PID length bug in fl_out_open() on SGIs
-	Now use dynamically allocated string to hold PID 
+	Now use dynamically allocated string to hold PID
 	Kudos to Juliana Rew for finding this bug
-	
+
 2000-01-16  Charlie Zender  <zender at uci.edu>
 
 	* Changed all addresses except website to UCI ESS
@@ -11797,7 +11922,7 @@
 2000-01-14  Charlie Zender  <zender at uci.edu>
 
 	* Calling ncwa without arguments now causes operator to print
-	usage and exit successfully 
+	usage and exit successfully
 
 	* Print error message and hint when ncwa called with -a dim1 -a
 	dim2 instead of -a dim1,dim2
@@ -11839,7 +11964,7 @@
 	ncatted -O -h -a test,global,o,c,"NREL, NCAR" in.nc
 	because the new attribute value followed the comma delimiter used
 	internally by ncatted to delimit list elements
-	
+
 	* Fixed so that setting strings to zero length with ncatted works,
 	e.g., ncatted -O -a history,global,o,c,"" in.nc
 
@@ -11852,10 +11977,10 @@
 	-DAIX on the IBM SP cluster environment
 
 1999-10-21  Charlie Zender  <zender at dust.ps.uci.edu>
-	
+
 	* Defined MY_BLD_DIR in Makefile before it is used
 	Re-tagged this as nco1_1_41
-	
+
 1999-10-17  Charlie Zender  <zender at dust.ps.uci.edu>
 
 	* Tagged this as nco1_1_41
@@ -11872,7 +11997,7 @@
 	* Fixed another bug in ncwa reported by Keith Lindsay.
 	The denominator in normalized averages did not always account for
 	missing values in the variable being averaged. This bug may have
-	been introduced sometime during ncwa rewrites around 19981201. 
+	been introduced sometime during ncwa rewrites around 19981201.
 	I'm sure it has not always been there.
 
 1999-10-03  Charlie Zender  <zender at dust.ps.uci.edu>
@@ -11881,10 +12006,10 @@
 
 	* Added test target in bld/Makefile. Now `make test' automatically
 	downloads a small (66 kb) file on which it performs a small
-	battery of tests (bld/nco_tst.sh). 
+	battery of tests (bld/nco_tst.sh).
 
 	* Revamped build procedure to use GNU make dependencies rather
-	than makdep perl script. 
+	than makdep perl script.
 
 	* All *.c files now build cleanly with gcc -Wall
 
@@ -11907,13 +12032,13 @@
 	* Added ncwa test #12 to nco_tst.sh. This tests for a bug
 	reported by Keith Lindsay where ncwa averaged a variable which is
 	completely missing_value to a value of 0.0 rather than
-	missing_value. 
+	missing_value.
 
 	* Removed C_ONLY token and made builds completely C-based by
 	default. Introduced new token USE_FORTRAN_ARITHMETIC to build
 	old style NCO with fortran arithmetic routines. Seems to work
-	fine. Translated Fortran date routines newdate() and days2eom() to 
-	C as part of this. 
+	fine. Translated Fortran date routines newdate() and days2eom() to
+	C as part of this.
 
 1999-08-04  Charlie Zender  <zender at dust.acd.ucar.edu>
 
@@ -11932,9 +12057,9 @@
 	multiple colons (which are legal in UNIX). Files with single
 	colons in their names, as opposed to rcp requests, still cause
 	core dumps and will continue to do so until I write a routine
-	which determines whether to treat the filename as an rcp 
+	which determines whether to treat the filename as an rcp
 	request based on some sort of valid hostname recognition
-	algorithm. 
+	algorithm.
 
 1999-07-29  Charlie Zender  <zender at dust.acd.ucar.edu>
 
@@ -12119,7 +12244,7 @@ Fri Dec  4 15:06:23 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 
 	* Made sure ncwa weights were being masked when normalization was
 	invoked. Formerly, they were not. This was a bug. The bug is now
-	fixed. 
+	fixed.
 
 	* Rearranged normalization logic of ncwa
 
@@ -12130,7 +12255,7 @@ Fri Dec  4 15:06:23 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 	* Allow hyperslab coordinate specification in exponential format
 	even when decimal point is missing, e.g., "-d lon,36e1" is valid
 
-	* var_conform_dim() now checks dimension names rather than IDs 
+	* var_conform_dim() now checks dimension names rather than IDs
 
 Mon Nov 23 17:29:02 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 
@@ -12157,13 +12282,13 @@ Sat Oct 31 14:56:33 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 	triggering this bug. Solution was to make ncra, like ncrcat,
 	simply process ALL record variable even NC_CHAR and NC_BYTE,
 	though the averaging operation on these types is still
-	ill-defined. 
+	ill-defined.
 
 Wed Aug 26 16:30:27 1998  Charlie Zender  <zender at odin.cgd.ucar.edu>
 
 	* Fixed bld/nco_tst.sh to work again at NCAR. `make test' now
 	performs non-trivial tests of ncwa and ncdiff. Only works at
-	NCAR (a necessary input file is rather large). 
+	NCAR (a necessary input file is rather large).
 
 Wed Aug 19 11:26:25 1998  Charlie Zender  <zender at odin.cgd.ucar.edu>
 
@@ -12179,8 +12304,7 @@ Wed Aug 19 11:26:25 1998  Charlie Zender  <zender at odin.cgd.ucar.edu>
 	* Added nco_vrs_prs() to parse NCO versions. NCO version is now
 	always printed with -r option.
 
-	* Fixed bug where -n NINTAP list did not recognize `.cdf'
-	suffixes. 
+	* Fixed bug where -n NINTAP list did not recognize `.cdf' suffixes.
 
 Mon Aug 10 21:53:34 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 
@@ -12188,22 +12312,22 @@ Mon Aug 10 21:53:34 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 	be avoided if desired.
 
 	* Fixed bug in ncrename where fl_in could be free()'d before it
-	was malloc()'d in fl_nm_prs(). 
+	was malloc()'d in fl_nm_prs().
 
 	* Fixed bug in ncdiff where variables of same rank but different
 	types would cause core dump when being subtracted. Improved
-	diagnostics for failures with ncdiff. 
-	
+	diagnostics for failures with ncdiff.
+
 1998-07-07  Charlie Zender  <zender at z.ppp.ucar.edu>
 
 	* Added -h option (suppresses history concatentation) to all
-	operators. Changed existing ncks -h option to -m (for metadata). 
+	operators. Changed existing ncks -h option to -m (for metadata).
 
 Sun Jun  7 17:45:20 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 
-	* Added more descriptive error diagnostics to ncvarid() calls 
+	* Added more descriptive error diagnostics to ncvarid() calls
 	to var_lst_mk() ncks to report the names of user-specified
-	variables which do not exist in input files. 
+	variables which do not exist in input files.
 
 1998-05-16  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 
@@ -12212,7 +12336,7 @@ Sun Jun  7 17:45:20 1998  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 1998-05-08  Charlie Zender  <zender at sanitas-e0.cgd.ucar.edu>
 
 	* Added improved error diagnostics to ncks when -A fails.
-	Added improved error diagnostics to fl_out_close() and fl_mv(). 
+	Added improved error diagnostics to fl_out_close() and fl_mv().
 	-r now prints library version for all operators.
 	-r and usg_prn() now prints NCO homepage URL.
 
@@ -12233,13 +12357,13 @@ Mon Feb  9 09:50:26 1998  Charlie Zender  <zender at odin.cgd.ucar.edu>
 	loop over variables. This reduces peak memory consumption by a
 	factor of three and sustained memory by a factor of two to three.
 	ncwa performance should be noticeably enhanced by this.	This
-	problem affected, and this fix improves, only the ncwa operator. 
-	
+	problem affected, and this fix improves, only the ncwa operator.
+
 Sun Feb  8 21:50:32 1998  Charlie Zender  <zender at odin.cgd.ucar.edu>
 
 	* Downloaded and altered pvmgetarch from pvm3.4b6. This version
 	was returning SGI instead of CRAY on Ouray (=Cray J90 Unicos
-	10.0.0) because pvmgetarch thinks machines with /bin/4D are SGI. 
+	10.0.0) because pvmgetarch thinks machines with /bin/4D are SGI.
 	Distributing this customized version of pvmgetarch with NCO.
 	Also changed new pvmgetarch so it returns SUNMP on any Sun
 	multiprocessor, regardless of whether PVM_SHMEM is set to ON.
@@ -12295,19 +12419,19 @@ Fri Oct 17 12:53:54 1997  Charlie Zender  <zender at odin.cgd.ucar.edu>
 	* Fixed fl_out_open() to abort after receiving more than 10
 	incorrect user responses. This fixes a bug where NCO would
 	crash in non-interactive shells when the -O or -A options were
-	omitted. 
+	omitted.
 
 1997-10-07  Charlie Zender  <zender at z.ppp.ucar.edu>
 
 	* Finished ncatted documentation. Cleaned up code to avoid
 	compilation errors with SGI on memcpy(). Touched up manual.
 	Releasing this as NCO Version 1.1.
-	
+
 Sun Sep 21 15:08:49 1997  Charlie Zender  <zender at z.ppp.ucar.edu>
 
 	* Merged WIN32 modifications into distribution. Added WIN32 and
 	C_ONLY 	tokens to code. Relinked with netCDF 3.3.1, had no
-	problems. 
+	problems.
 
 Tue Sep 16 23:53:44 1997  Charlie Zender  <zender at z.ppp.ucar.edu>
 
@@ -12319,7 +12443,7 @@ Tue Sep 16 23:53:44 1997  Charlie Zender  <zender at z.ppp.ucar.edu>
 Thu Aug 28 17:07:50 1997  Charlie Zender  <zender at heinlein.cgd.ucar.edu>
 
 	* Rewrote ncdiff documention, which had many errors and
-	omissions. 
+	omissions.
 
 Sat Jun 28 23:26:40 1997  Charlie Zender  <zender at z.ppp.ucar.edu>
 
@@ -12342,7 +12466,7 @@ Fri May 30 13:12:25 1997  Charlie Zender  <zender at heinlein.cgd.ucar.edu>
 
 	* Added routines to process time variables in ARM files.
 
-	* Added hyam,hybm,hyai,hybi to list of variables which will not 
+	* Added hyam,hybm,hyai,hybi to list of variables which will not
 	be differenced by ncdiff.
 
 	* ncdiff now chooses mss_val from either file where it's valid,
@@ -12398,7 +12522,7 @@ Wed Mar 26 21:13:09 1997  Charlie Zender  <zender at z.ppp.ucar.edu>
 	distribution
 
 	* Changed ncks -s option to accept full printf() style format
-	strings 
+	strings
 
 	* Fixed memory leak in var_get() in nc_utl.c which caused memory
 	to be allocated twice. This also fixed longstanding performance
@@ -12406,7 +12530,7 @@ Wed Mar 26 21:13:09 1997  Charlie Zender  <zender at z.ppp.ucar.edu>
 	current record. Thanks to jps at GFDL.GOV (John Sheldon) for
 	discovering this bug.
 
-	* General release of nco-0.9 on netCDF and CCM mailing lists 
+	* General release of nco-0.9 on netCDF and CCM mailing lists
 
 Thu Feb  8 23:01:04 MST 1996  Charlie Zender  <zender at ncar.ucar.edu>
 
diff --git a/doc/LICENSE b/doc/LICENSE
index 94a9ed0..1927ef0 100644
--- a/doc/LICENSE
+++ b/doc/LICENSE
@@ -1,674 +1,16 @@
-                    GNU GENERAL PUBLIC LICENSE
-                       Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
-  The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works.  By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users.  We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors.  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
-  To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights.  Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received.  You must make sure that they, too, receive
-or can get the source code.  And you must show them these terms so they
-know their rights.
-
-  Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
-  For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software.  For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
-  Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so.  This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software.  The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable.  Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products.  If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
-  Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary.  To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                       TERMS AND CONDITIONS
-
-  0. Definitions.
-
-  "This License" refers to version 3 of the GNU General Public License.
-
-  "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
-  "The Program" refers to any copyrightable work licensed under this
-License.  Each licensee is addressed as "you".  "Licensees" and
-"recipients" may be individuals or organizations.
-
-  To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy.  The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
-  A "covered work" means either the unmodified Program or a work based
-on the Program.
-
-  To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy.  Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
-  To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies.  Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
-  An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License.  If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
-  1. Source Code.
-
-  The "source code" for a work means the preferred form of the work
-for making modifications to it.  "Object code" means any non-source
-form of a work.
-
-  A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
-  The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form.  A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
-  The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities.  However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work.  For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
-  The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
-  The Corresponding Source for a work in source code form is that
-same work.
-
-  2. Basic Permissions.
-
-  All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met.  This License explicitly affirms your unlimited
-permission to run the unmodified Program.  The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work.  This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
-  You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force.  You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright.  Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
-  Conveying under any other circumstances is permitted solely under
-the conditions stated below.  Sublicensing is not allowed; section 10
-makes it unnecessary.
-
-  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
-  No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
-  When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
-  4. Conveying Verbatim Copies.
-
-  You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
-  You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
-  5. Conveying Modified Source Versions.
-
-  You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
-    a) The work must carry prominent notices stating that you modified
-    it, and giving a relevant date.
-
-    b) The work must carry prominent notices stating that it is
-    released under this License and any conditions added under section
-    7.  This requirement modifies the requirement in section 4 to
-    "keep intact all notices".
-
-    c) You must license the entire work, as a whole, under this
-    License to anyone who comes into possession of a copy.  This
-    License will therefore apply, along with any applicable section 7
-    additional terms, to the whole of the work, and all its parts,
-    regardless of how they are packaged.  This License gives no
-    permission to license the work in any other way, but it does not
-    invalidate such permission if you have separately received it.
-
-    d) If the work has interactive user interfaces, each must display
-    Appropriate Legal Notices; however, if the Program has interactive
-    interfaces that do not display Appropriate Legal Notices, your
-    work need not make them do so.
-
-  A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit.  Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
-  6. Conveying Non-Source Forms.
-
-  You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
-    a) Convey the object code in, or embodied in, a physical product
-    (including a physical distribution medium), accompanied by the
-    Corresponding Source fixed on a durable physical medium
-    customarily used for software interchange.
-
-    b) Convey the object code in, or embodied in, a physical product
-    (including a physical distribution medium), accompanied by a
-    written offer, valid for at least three years and valid for as
-    long as you offer spare parts or customer support for that product
-    model, to give anyone who possesses the object code either (1) a
-    copy of the Corresponding Source for all the software in the
-    product that is covered by this License, on a durable physical
-    medium customarily used for software interchange, for a price no
-    more than your reasonable cost of physically performing this
-    conveying of source, or (2) access to copy the
-    Corresponding Source from a network server at no charge.
-
-    c) Convey individual copies of the object code with a copy of the
-    written offer to provide the Corresponding Source.  This
-    alternative is allowed only occasionally and noncommercially, and
-    only if you received the object code with such an offer, in accord
-    with subsection 6b.
-
-    d) Convey the object code by offering access from a designated
-    place (gratis or for a charge), and offer equivalent access to the
-    Corresponding Source in the same way through the same place at no
-    further charge.  You need not require recipients to copy the
-    Corresponding Source along with the object code.  If the place to
-    copy the object code is a network server, the Corresponding Source
-    may be on a different server (operated by you or a third party)
-    that supports equivalent copying facilities, provided you maintain
-    clear directions next to the object code saying where to find the
-    Corresponding Source.  Regardless of what server hosts the
-    Corresponding Source, you remain obligated to ensure that it is
-    available for as long as needed to satisfy these requirements.
-
-    e) Convey the object code using peer-to-peer transmission, provided
-    you inform other peers where the object code and Corresponding
-    Source of the work are being offered to the general public at no
-    charge under subsection 6d.
-
-  A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
-  A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling.  In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage.  For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product.  A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
-  "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source.  The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
-  If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information.  But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
-  The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed.  Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
-  Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
-  7. Additional Terms.
-
-  "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law.  If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
-  When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it.  (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.)  You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
-  Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
-    a) Disclaiming warranty or limiting liability differently from the
-    terms of sections 15 and 16 of this License; or
-
-    b) Requiring preservation of specified reasonable legal notices or
-    author attributions in that material or in the Appropriate Legal
-    Notices displayed by works containing it; or
-
-    c) Prohibiting misrepresentation of the origin of that material, or
-    requiring that modified versions of such material be marked in
-    reasonable ways as different from the original version; or
-
-    d) Limiting the use for publicity purposes of names of licensors or
-    authors of the material; or
-
-    e) Declining to grant rights under trademark law for use of some
-    trade names, trademarks, or service marks; or
-
-    f) Requiring indemnification of licensors and authors of that
-    material by anyone who conveys the material (or modified versions of
-    it) with contractual assumptions of liability to the recipient, for
-    any liability that these contractual assumptions directly impose on
-    those licensors and authors.
-
-  All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10.  If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term.  If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
-  If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
-  Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
-  8. Termination.
-
-  You may not propagate or modify a covered work except as expressly
-provided under this License.  Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
-  However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
-  Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
-  Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License.  If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
-  9. Acceptance Not Required for Having Copies.
-
-  You are not required to accept this License in order to receive or
-run a copy of the Program.  Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance.  However,
-nothing other than this License grants you permission to propagate or
-modify any covered work.  These actions infringe copyright if you do
-not accept this License.  Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
-  10. Automatic Licensing of Downstream Recipients.
-
-  Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License.  You are not responsible
-for enforcing compliance by third parties with this License.
-
-  An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations.  If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
-  You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License.  For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
-  11. Patents.
-
-  A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based.  The
-work thus licensed is called the contributor's "contributor version".
-
-  A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version.  For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
-  Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
-  In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement).  To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
-  If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients.  "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
-  If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
-  A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License.  You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
-  Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
-  12. No Surrender of Others' Freedom.
-
-  If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all.  For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
-  13. Use with the GNU Affero General Public License.
-
-  Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work.  The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
-  14. Revised Versions of this License.
-
-  The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-  Each version is given a distinguishing version number.  If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation.  If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
-  If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
-  Later license versions may give you additional or different
-permissions.  However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
-  15. Disclaimer of Warranty.
-
-  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. Limitation of Liability.
-
-  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
-  17. Interpretation of Sections 15 and 16.
-
-  If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
-                     END OF TERMS AND CONDITIONS
-
-            How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    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 3 of the License, 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/>.
-
-Also add information on how to contact you by electronic and paper mail.
-
-  If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
-    <program>  Copyright (C) <year>  <name of author>
-    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
-  You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-<http://www.gnu.org/licenses/>.
-
-  The GNU General Public License does not permit incorporating your program
-into proprietary programs.  If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library.  If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.  But first, please read
-<http://www.gnu.org/philosophy/why-not-lgpl.html>.
+All source code created by the NCO project and distributed with NCO is
+re-distributable under the terms of the GNU General Public License
+(GPL) Version 3. The full license text is at 
+http://www.gnu.org/copyleft/gpl.html and in the file COPYING. 
+Copyright information is in the file COPYRIGHT.
+
+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
+libraries and to distribute the resulting executables under the terms 
+of the GPL, but in addition obeying the extra stipulations of the 
+HDF, netCDF, OPeNDAP, and UDUnits licenses.
+   
+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.
diff --git a/doc/MANIFEST b/doc/MANIFEST
index 5503493..d0d6750 100644
--- a/doc/MANIFEST
+++ b/doc/MANIFEST
@@ -1,4 +1,4 @@
-$Header: /cvsroot/nco/nco/doc/MANIFEST,v 1.65 2014/04/01 17:45:20 pvicente Exp $ -*-text-*-
+$Header: /cvsroot/nco/nco/doc/MANIFEST,v 1.70 2014/08/22 01:01:20 zender Exp $ -*-text-*-
 
 This file enumerates the files in the NCO distribution and, where
 appropriate, describes the purpose of the file.
@@ -7,8 +7,12 @@ Volatile files are created automatically (e.g., by invoking
 ./configure) and may not be present in pristine source trees.
 
 Top-level files:
-COPYING		NCO Software License: GPL3
+AUTHORS		Whom to praise and blame
+CITATION	How and why to cite NCO in your work
+COPYING		GNU General Public License GPL3
+COPYRIGHT	Copyright information
 INSTALL		Boilerplate instructions for ./configure
+LICENSE		License details
 acinclude.m4	NCO M4 macro definitions used by aclocal to generate aclocal.m4
 aclocal.m4	M4 macros generated from acinclude.m4 by aclocal
 autogen.sh	Gather all autotools necessary to run autoconf
@@ -91,6 +95,7 @@ nco/data/cmip5.cdl 	CDL file to test ncbo functionality on groups
 nco/data/dsm.cdl 	CDL file to test ncdismember
 nco/data/mdl_1.cdl 	CDL file to test ensemble operations
 nco/data/mdl_2.cdl 	CDL file to test ensemble operations
+nco/data/mrd.cdl 	CDL file to test multiple record dimensions
 nco/data/obs.cdl 	CDL file to test group broadcasting
 nco/data/in_rec_zero.cdl 	CDL file to test zero-record files
 nco/data/ncap.in	Sample ncap input script
@@ -117,28 +122,36 @@ nco/doc/TAG		CVS tag for this version
 nco/doc/TODO		List of tasks for future releases
 nco/doc/VERSION		NCO version 
 nco/doc/beta.txt	Availability of beta- or pre-release Debian packages
+nco/doc/build_hints.shtml Hints to build from source
 nco/doc/debian.txt	Creating and updating Debian NCO .deb packages
 nco/doc/dir		Example Info file to load nco.info
 nco/doc/dods.sh		Install OPeNDAP 3.4.X for NCO DAP-enabled clients
+nco/doc/doe.jpg		DOE logo (JPG format)
+nco/doc/endorsements.txt Statements of support for NCO
 nco/doc/help.txt	Advertisement for help with NCO (outdated---from 2000)
+nco/doc/highlights_old.shtml Short summaries of old releases
 nco/doc/index.shtml	NCO website homepage
 nco/doc/logo_srl.png	NCO spiral logo PNG raster format
 nco/doc/logo_srl.svg	NCO spiral logo Scalable Vector Graphic format
 nco/doc/logo_srl.xcf	NCO spiral logo GIMP format
+nco/doc/milestones_old.shtml Milestones in old releases
 nco/doc/mpi.txt		MPI Environments for NCO
 nco/doc/my-bib-macros.texi TeXInfo bibliography macros for nco.texi
+nco/doc/nasa.png	NASA logo (PNG format)
 nco/doc/ncap.txt	Description of the ncap operator (not yet used)
 nco/doc/nco.dvi(v)	NCO User's Guide: DVI format
 nco/doc/nco.html(v)	NCO User's Guide: HTML format
 nco/doc/nco.info(v)	NCO User's Guide: Info format
 nco/doc/nco.pdf(v)	NCO User's Guide: Portable Document Format
+nco/doc/nco.png		NCO Webpage icon (PNG format)
 nco/doc/nco.ps(v)	NCO User's Guide: Postscript format
 nco/doc/nco.texi	NCO User's Guide: TeXInfo format
-nco/doc/nco.png		NCO Webpage icon (PNG format)
 nco/doc/nco_news.shtml	NCO news archive
 nco/doc/netcdf4.sh	Install latest netcdf4 and HDF libraries for NCO
+nco/doc/nsf.png		NSF logo (PNG format)
 nco/doc/opendap.sh	Install OPeNDAP 3.5.X for NCO DAP-enabled clients
-nco/doc/surfit.txt	Summer research project advertisement
+nco/doc/problems_old.shtml Summaries of old bugs
+nco/doc/surfit.txt	Summer research project advertisement for UCI
 nco/doc/tags_doc.sh	Generate Emacs tags for all NCO documents
 nco/doc/valgrind.txt	Valgrind suppressions file for debugging NCO 
 
@@ -164,6 +177,15 @@ nco/man/ncwa.1		ncwa man page
 Object directory:
 nco/obj/README		Description of object directory
 
+Portable Object Template directory:
+nco/po/nco.pot		Portable Object Template file for NCO
+
+Portable Object Spanish directory:
+nco/po/es/nco.po	Portable Object Spanish translations for NCO
+
+Portable Object French directory:
+nco/po/fr/nco.po	Portable Object French translations for NCO
+
 Source code directories:
 nco/src/nco		Source for base NCO library and operators
 nco/src/nco_c++		Source for libnco_c++ C++ interface to netCDF API
diff --git a/doc/TAG b/doc/TAG
index e501165..de12b9f 100644
--- a/doc/TAG
+++ b/doc/TAG
@@ -1 +1 @@
-$Name: nco-4_4_4 $
+$Name: nco-4_4_5 $
diff --git a/doc/TODO b/doc/TODO
index 592418b..fb864f6 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -1,4 +1,4 @@
-$Header: /cvsroot/nco/nco/doc/TODO,v 1.1265 2014/05/27 02:55:26 zender Exp $
+$Header: /cvsroot/nco/nco/doc/TODO,v 1.1267 2014/08/27 04:44:01 zender Exp $
 
 # Purpose: TODO items for NCO
 
@@ -653,7 +653,15 @@ nco1106. autoconvert netCDF4 string variable to netCDF3 nc_char type. requires d
 nco1109. broadcast degenerate dimensions in nco_var_cnf_dmn()/ncap_var_cnf_dmn(): helps ncap/ncwa/ncbo/ncflint
 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. 
+nco1112. nco: nintap double iterator rqs by dave allured 20140813
+nco1113. nco: rsp parker norton help srd slowdown issue help 20140718
+      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
+      time ncks -O -d time,0,0,12 ~/ET_2000-01_2001-12.nc ~/foo.nc # borken after 6m13s, numerous HDF Errors
+      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. 
 qrk
 ************************************************************************
 End ncoXXX TODOs
diff --git a/doc/VERSION b/doc/VERSION
index f15ec04..5f70498 100644
--- a/doc/VERSION
+++ b/doc/VERSION
@@ -1 +1 @@
-4.4.4
\ No newline at end of file
+4.4.5
\ No newline at end of file
diff --git a/doc/build_hints.shtml b/doc/build_hints.shtml
new file mode 100644
index 0000000..7bdd2bb
--- /dev/null
+++ b/doc/build_hints.shtml
@@ -0,0 +1,313 @@
+<!-- $Header: /cvsroot/nco/nco/doc/build_hints.shtml,v 1.1 2014/06/15 16:45:40 zender Exp $
+
+Purpose: Build_Hints archive
+
+URL:
+http://nco.sf.net/build_hints.shtml
+http://dust.ess.uci.edu/nco/build_hints.shtml
+file:///home/zender/nco/doc/build_hints.shtml
+
+Usage:
+/usr/bin/scp ~/nco/doc/build_hints.shtml zender,nco at web.sf.net:/home/project-web/nco/htdocs
+scp -p ~/nco/doc/build_hints.shtml dust.ess.uci.edu:/var/www/html/nco
+-->
+
+<!doctype html public "-//W3C//DTD HTML 3.2//EN">
+<html>
+<head>
+   <title>NCO Homepage</title>
+   <meta name="GENERATOR" content="Mozilla/3.04Gold (X11; I; Linux 2.0.0 i686) [Netscape]">
+   <meta name="Author" content="Charles S. Zender">
+   <meta name="Keywords" content="NCO Homepage, netCDF, netCDF operator, GCM, HDF, scientific data">
+</head>
+<body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#008080" alink="#FF0000">
+
+<dt><a name="Makefile"></a></dt> <!-- http://nco.sf.net#Makefile -->
+<dt><a name="hnt"></a></dt> <!-- http://nco.sf.net#hnt -->
+<dt><a name="bld_hnt"></a></dt> <!-- http://nco.sf.net#bld_hnt -->
+<h2>Hints to Build-from-Source:</h2>
+
+<ul><b>Generic Build Hints:</b>
+
+<a name="bld_cnf"></a> <!-- http://nco.sf.net#bld_cnf -->
+<li><i>The two NCO build mechanisms:</i>
+NCO has two build mechanisms: (1) GNU configure and 
+(2)  a custom Makefile (<tt>nco/bld/Makefile</tt>)
+designed for hand-editing.
+Try the traditional GNU <tt>configure</tt> method first, i.e.,
+<tt>./configure;make;make check;make install</tt>. 
+This method involves no hand-editing of makefiles, but trouble-free
+builds with it are less common than we would like.  
+The file <tt>nco/configure.eg</tt> contains a table which describes the 
+success you can expect building NCO with the <tt>configure</tt>
+mechanism. 
+If the simple <tt>configure</tt> recipe above does not work, savvy
+users may find it straightforward to modify and use the following, more
+advanced <tt>configure</tt> recipe:
+<tt>
+<pre class="example">
+# gcc/g++ Sysadmins use/modify this to install/update NCO in /usr/local, based on netCDF4 also in /usr/local (works on givre 20100727):
+export GNU_TRP=`~/nco/autobld/config.guess`
+cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
+CPPFLAGS='-DHAVE_NETCDF4_H -I/usr/local/include' LDFLAGS='-L/usr/local/lib' ./configure --prefix='/usr/local' --enable-ncap2 --enable-netcdf4 > 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
+make check >> nco.make.${GNU_TRP}.foo 2>&1
+sudo make install >> nco.make.${GNU_TRP}.foo 2>&1
+</pre>
+</tt>
+This is the recipe that the developers use to test <tt>configure</tt>
+on their machines.
+Please contribute patches required to get the <tt>configure</tt> 
+mechanism working properly for NCO on your platform.
+The <a href="http://dust.ess.uci.edu/nco/rgr">regressions archive</a>
+contains gory details of successful (and failed) builds for many platforms.  
+Plaform-specific build hints (CentOS, Mac OS X, RHEL, Solaris)
+are listed <a href="#bld_plt_spc">below</a>.
+<br>
+
+All platforms continue to work fine with the <tt>nco/bld/Makefile</tt>
+method: 
+<tt>
+<pre class="example">
+export MY_BIN_DIR='/home/username/bin' # Executables installed here
+export MY_OBJ_DIR='/home/username/obj' # Object files placed here
+export MY_LIB_DIR='/home/username/lib' # Libraries built here
+mkdir -p ${MY_BIN_DIR} ${MY_OBJ_DIR} ${MY_LIB_DIR}
+cd ~/nco/bld
+make dir
+make all
+make ncap2
+make test
+</pre>
+</tt> 
+Disadvantages are that <tt>nco/bld/Makefile</tt> (1) Usually requires
+editing to fix your platforms paths; (2) Does not support shared
+libraries; and (3) Requires a degree from Hogwarts to understand.
+</li>
+
+<!-- http://nco.sf.net#dpl_sym -->
+<a name="dpl_sym"></a>
+<li><i>Duplicate symbols errors:</i>
+When building NCO with the netCDF4 library and headers, some compilers
+emit errors due to duplicate symbol definitions.
+This arises because of the complexity of the build system.
+Essentially, NCO has to define some netCDF API prototypes itself
+to handle the corner case where the netCDF4 distribution is used 
+to build netCDF3 libraries. 
+We have tried to address this issue using <tt>autoconf/configure</tt>
+but it is beyond our abilities.
+The fix is to manually tell NCO that the netCDF4 header
+file <tt>netcdf.h</tt> is in fact being used so that NCO should
+not attempt to define these prototypes.
+Do this, e.g., with <tt>CPPFLAGS='-DHAVE_NETCDF4_H'</tt> or
+<tt>USR_TKN='-DHAVE_NETCDF4_H'</tt> if you use <tt>configure</tt>.
+</li>
+
+<!-- http://nco.sf.net#bld_chn -->
+<a name="bld_chn"></a>
+<li><i>Build Chain Version Incompatibilities:</i>
+NCO requires GNU <tt>make</tt> version ≥ 3.78.1 to support target-specific variable values in <tt>bld/Makefile</tt>.
+NCO most often fails to build because <tt>ncap</tt> fails to build.
+Two of the most common reasons that <tt>ncap</tt> fails to build are
+(1) GNU <tt>bison</tt> is out-of-date (upgrade <tt>bison</tt>)
+and (2) <tt>--enable-optimize-*</tt> is specified to 
+<tt>configure</tt> (do not specify it).<br>
+</li>
+
+<!-- http://nco.sf.net#bld_c99 -->
+<a name="bld_c99"></a>
+<li><i>C99-compliance & old compilers:</i>
+NCO versions ≥ 2.9.8 require the compiler to
+support the 1999 ISO C-Standard called C99.
+NCO takes advantage of two C99 features, restricted pointers and
+designated initializers.
+To build NCO versions ≥ 2.9.8 without a C99-compliant
+compiler, simply undefine the <tt>restrict</tt> type qualifier 
+before compiling NCO.
+Do this, e.g., with <tt>CPPFLAGS='-Drestrict='</tt>.
+More details on C99 compatibility are in the header file
+<a href="http://nco.cvs.sf.net/nco/nco/src/nco/nco.h"><tt>nco/src/nco/nco.h</tt></a>.<br>
+</li>
+
+<!-- http://nco.sf.net#bld_netcdf -->
+<a name="bld_netcdf"></a>
+<li><i>Old netCDF libraries:</i>
+NCO versions ≥ 3.0.0 require netCDF versions
+≥ 3.6 to take advantage of the new 64-bit offset file type.  
+The library <i>and</i> include directories (e.g., <tt>/usr/lib</tt> and
+<tt>/usr/include</tt>, respectively) for netCDF version ≥ 3.6
+must be on the path searched by the compiler, and must precede the
+locations of any older netCDF installations.
+To build NCO versions ≥ 3.0.0 with older netCDF versions
+< 3.6, simply define the pre-processor token
+<tt>NC_64BIT_OFFSET</tt> to <tt>0</tt> before compiling NCO.
+Do this, e.g., with <tt>CPPFLAGS='-DNC_64BIT_OFFSET=0'</tt> or
+<tt>USR_TKN='-DNC_64BIT_OFFSET=0'</tt> if you use <tt>configure</tt> 
+or <tt>bld/Makefile</tt>, respectively.
+Users attempting to build NCO with OPeNDAP versions ≤ 3.6.x may
+need this workaround because OPeNDAP did not fully support netCDF
+version 3.6.x functionality until OPeNDAP versions ≥ 3.7.0.
+(The indicator for this problem is a build error like 
+<tt>"nco_fl_utl.c", line 30.20: 1506-045 (S) Undeclared identifier
+NC_64BIT_OFFSET</tt>.)  
+All modern NCO versions require netCDF versions ≥ 3.5.0 to
+support <tt>nc_type NC_NAT</tt> in NCO source code.  
+NCO versions 3.9.0 and greater (May, 2007) require netCDF versions
+≥ 3.6.0 to resolve the <tt>nc_inq_format()</tt> function.
+</li>
+
+<!-- http://nco.sf.net#bld_ncap -->
+<a name="bld_ncap"></a>
+<li><i><tt>ncap</tt> build hints:</i>
+<tt>ncap</tt> is a sophisticated and somewhat fragile program.
+<tt>ncap</tt> requires <tt>flex</tt> to build correctly.
+AT&T <tt>lex</tt> will not work because it does not understand
+<tt>EOF</tt> rules used in <tt>ncap_lex.l</tt>.
+<tt>bison</tt> version 1.29 (the default version on early
+Mac OS X) is buggy and does not parse <tt>ncap_yacc.y</tt>
+correctly; previous and later <tt>bison</tt>'s work
+correctly. 
+<tt>bison</tt> version 1.25 will not build <tt>ncap</tt> on Solaris.
+Please upgrade <tt>bison</tt> to the latest version (e.g., 1.875+)
+before reporting <tt>ncap</tt> build problems.
+If <tt>ncap</tt> keeps you from building NCO, and you do not need
+<tt>ncap</tt>, configure with <tt>--disable-ncap</tt> (and know that
+<tt>ncwa</tt> will fail to build as a result). 
+</li>
+
+<!-- http://nco.sf.net#bld_GSL -->
+<a name="bld_gsl"></a><a name="bld_GSL"></a>
+<li><i>Build Hints with GSL:</i><br>
+NCO versions 3.9.6— support automatic building and linking
+for <a href="http://www.gnu.org/software/gsl">GSL</a>
+versions 1.4—. 
+Earlier GSL versions are not supported.<br>
+</li>
+
+<!-- http://nco.sf.net#bld_DAP -->
+<a name="bld_dap"></a><a name="bld_DAP"></a><a name="bld_DODS"></a><a name="bld_OPeNDAP"></a>
+<li><i>Build Hints with DAP:</i><br>
+NCO versions 3.9.9— support automatic building and linking
+for DAP supplied from <a href="http://www.unidata.ucar.edu/software/netcdf/docs/netcdf/DAP-Support.html">libnetcdf</a> versions 4.1-beta1 and beyond<br>
+NCO versions 3.1.3— support automatic building and linking
+for <a href="http://opendap.org">OPeNDAP</a> versions 3.6.x and
+GCC versions 4.0+.<br>
+NCO versions 3.0.1—3.1.2 support automatic building and linking
+for <a href="http://opendap.org">OPeNDAP</a> versions 3.5.x and
+GCC versions 3.4+.<br>
+NCO versions 2.8.5—3.0.0 support automatic building and linking
+for <a href="http://opendap.org">OPeNDAP</a> versions 3.4.x and
+GCC versions 3.3+.<br>
+NCO versions ?.?.?—2.8.4 support automatic building and linking
+for <a href="http://opendap.org">DODS</a> versions 3.2.x and
+GCC versions 3.2+.<br> 
+No other version combinations are supported.
+</li>
+
+<!-- http://nco.sf.net#bld_nco_c++ -->
+<a name="bld_nco_c++"></a>
+<li><i><tt>libnco_c++</tt> build hints:</i>
+<tt>libnco_c++</tt> requires a good C++ compiler to build correctly.
+Few people need <tt>libnco_c++</tt>, so the workaround is not to build it.
+This is done by configuring with <tt>--disable-nco_cplusplus</tt>.
+</li>
+
+</ul>
+
+<!-- http://nco.sf.net#bld_plt_spc -->
+<a name="bld_plt_spc"></a>
+<ul><b>Platform-Specific Build Hints:</b>
+<!-- http://nco.sf.net#bld_aix -->
+<a name="bld_aix"></a>
+<li><i>AIX build hints:</i>
+NCO versions 2.8.7+ do not build with autotools under AIX when
+<tt>--enable-optimize-*</tt> is selected.
+The workaround is to not use <tt>--enable-optimize-*</tt>.
+NCO versions 2.9.7+ do not build shared libraries with AIX xlc
+compilers because of silly AIX library dependencies activated
+by OpenMP directives.
+The workaround is to configure with <tt>--disable-shared</tt>.
+</li>
+
+<!-- http://nco.sf.net#bld_irix -->
+<a name="bld_irix"></a>
+<li><i>IRIX build hints:</i>
+The most common problem with building on SGI IRIX is an out-of-date toolchain.
+</li>
+
+<!-- http://nco.sf.net#bld_osx -->
+<a name="bld_osx"></a>
+<li><i>Mac OS X build hints:</i>
+Mac OS X users report success building NCO without patches so
+long as they (1) Install the latest version of <tt>bison</tt>,
+(2) Disable shared libraries and (3) Disable extended regular
+expressions. This is done with 
+<tt>./configure --disable-regex --disable-shared</tt>
+
+Building NCO with shared libraries on Mac OS X on may be possible.
+To try, first re-build and re-install the netCDF library using
+<tt>CFLAGS=-fno-common</tt>.
+Apparently netCDF, unlike most codes, does not set this automatically.
+Then build NCO normally.
+
+Mac OS X ships with a broken version of the POSIX <tt>cut</tt>
+utility which causes many NCO regression tests to appear to fail.
+In fact the NCO commands succeed, but the <tt>cut</tt> output fails.
+The workaround is not to heed the regression tests, or to install a
+working <tt>cut</tt>, e.g., from the GNU <tt>coreutils</tt> package.
+</li>
+
+<!-- http://nco.sf.net#bld_rhel -->
+<a name="bld_rhel"></a>
+<a name="bld_centos"></a> <!-- http://nco.sf.net#bld_centos -->
+<li><i>RHEL build hints:</i>
+Scripts for generating executables for recent (4.0.x, ~2011) versions of NCO for RedHat Enterprise Linux 5 (RHEL5) and CentOS5 platforms are described <a href="http://sf.net/projects/nco/forums/forum/9830/topic/4089501">here</a>.
+Older information on building x86_64 RPMs is available <a href="http://dust.ess.uci.edu/wangd/s9y">here</a>.
+</li>
+
+<!-- http://nco.sf.net#bld_slr -->
+<a name="bld_slr"></a>
+<li><i>Solaris build hints:</i>
+All recent NCO versions build with autotools on Solaris 2.7—2.9.
+The most common problem with building on Solaris with
+<tt>cc</tt>/<tt>CC</tt> is that <tt>bison</tt> may be out-of-date.
+Install an up-to-date <tt>bison</tt> (e.g., 1.875+).
+Solaris 2.10, i.e., Solaris10, had the audacity to change the
+prototype of the <tt>ctime_r()</tt> function and so does not build
+NCO 3.0.1.
+The fix is to upgrade to the current NCO version.
+</li>
+
+<!-- http://nco.sf.net#bld_sx -->
+<a name="bld_sx"></a>
+<li><i>SX build hints:</i>
+NEC SX does not understand the <tt>S_ISLNK</tt> macro, 
+preferring instead the (non-POSIX) <tt>S_IFLNK</tt> macro.
+This macro appears in the file 
+<a href="http://nco.cvs.sf.net/nco/nco/src/nco/nco_fl_utl.c"><tt>nco_fl_utl.c</tt></a>.
+The patch I wrote for this may be broken.
+Will someone with NEC SX please send us a working patch?
+</li>
+
+<!-- http://nco.sf.net#bld_wnd -->
+<a name="bld_wnd"></a>
+<li><i>Windows build hints:</i>
+Building on Microsoft Windows is possible with Cygwin.
+The resulting executables will behave normally on local files,
+but will not have some (most?) of NCO's network functionality
+(e.g., <tt>scp</tt>, <a href="http://opendap.org">OPeNDAP</a>).
+See the <a href="http://nco.sf.net/nco.html#wnd">User's Guide</a>
+for more details.
+</li>
+
+<!--Qt/MSVC -->
+<li><i>Windows build with Qt/MSVC:</i>
+As of NCO 4.2.0, you may build NCO from source using MSVC and Qt, please see the <a href="nco_qt_msvc.shtml">NCO Qt/MSVC build</a> page.
+</li>
+</ul>
+<hr></p>
+
+</body>
+</html>
diff --git a/doc/debian.txt b/doc/debian.txt
index 6dd0a17..620563d 100644
--- a/doc/debian.txt
+++ b/doc/debian.txt
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/doc/debian.txt,v 1.202 2014/05/01 19:05:39 zender Exp $ -*-text-*-
+# $Header: /cvsroot/nco/nco/doc/debian.txt,v 1.203 2014/05/29 18:36:54 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.4
-   First we create a clean source distribution of nco and place it in nco-4.4.4
-   Once automated, we will use cvs co -rnco-4_4_4 to get source
+   For starters, we wish to create .debs of tagged releases, e.g., nco-4.4.5
+   First we create a clean source distribution of nco and place it in nco-4.4.5
+   Once automated, we will use cvs co -rnco-4_4_5 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.4
-/bin/rm nco.tar.gz;tar cvzf nco-4.4.4.tar.gz ./nco-4.4.4/*
-cd ~/nco/nco-4.4.4
-dh_make -e zender at uci.edu -f ../nco-4.4.4.tar.gz
+cd ~/nco;tar xvzf nco.tar.gz;mv nco nco-4.4.5
+/bin/rm nco.tar.gz;tar cvzf nco-4.4.5.tar.gz ./nco-4.4.5/*
+cd ~/nco/nco-4.4.5
+dh_make -e zender at uci.edu -f ../nco-4.4.5.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.4.tar.gz
    from previous build
 
    cd ~/nco;/bin/rm *.gz
-   cd ~/nco/nco-4.4.4
+   cd ~/nco/nco-4.4.5
    dpkg-buildpackage -rfakeroot > foo 2>&1
    dpkg-buildpackage -rsudo > foo 2>&1
 
@@ -85,12 +85,12 @@ 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_4 with X_Y_Z+1
-# tags-query replace 4.4.4 with X.Y.Z+1
+# tags-query replace 4_4_5 with X_Y_Z+1
+# tags-query replace 4.4.5 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.4-1 # Update changelog (-b forces this version number)
+   cd ~/nco/debian;dch -b --force-distribution --distribution=unstable -v 4.4.5-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 +98,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.4 release";cvs tag -c nco-4_4_4
-   ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_4
+   cd ~/nco;cvs commit -m "Preparing nco-4.4.5 release";cvs tag -c nco-4_4_5
+   ${HOME}/nco/bld/nco_dst.pl --dbg=2 --bld --cln nco-4_4_5
 # Upload tarball to SF https://sourceforge.net/projects/nco/files 
-   cd;scp dust.ess.uci.edu:/var/www/html/nco/src/nco-4.4.4.tar.gz .
+   cd;scp dust.ess.uci.edu:/var/www/html/nco/src/nco-4.4.5.tar.gz .
 
 7. Ubuntu PPA
 https://help.launchpad.net/Packaging/PPA
-dput NCO nco_4.4.4-2~ppa1_source.changes
+dput NCO nco_4.4.5-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.4-1.dpkg-buildpackage.txt
-http://dust.ess.uci.edu/nco/src/nco_4.4.4-1.dsc
-http://dust.ess.uci.edu/nco/src/nco_4.4.4-1_i386.changes
-http://dust.ess.uci.edu/nco/src/nco_4.4.4-1_i386.deb
-http://dust.ess.uci.edu/nco/src/nco_4.4.4.orig.tar.gz
+http://dust.ess.uci.edu/nco/src/nco_4.4.5-1.dpkg-buildpackage.txt
+http://dust.ess.uci.edu/nco/src/nco_4.4.5-1.dsc
+http://dust.ess.uci.edu/nco/src/nco_4.4.5-1_i386.changes
+http://dust.ess.uci.edu/nco/src/nco_4.4.5-1_i386.deb
+http://dust.ess.uci.edu/nco/src/nco_4.4.5.orig.tar.gz
 
 # Becoming a Debian developer
 http://www.debian.org/devel/join/newmaint
@@ -167,31 +167,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.4 ${DATA}/nco_4.4.4* ${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_4-1 -d nco-4.4.4 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.4 nco # Export most recent
-tar cvzf ./nco_4.4.4.orig.tar.gz --exclude='nco-4.4.4/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.4 
-/bin/rm -rf ${DATA}/nco-4.4.4 # Remove cvs-exported directory
-tar xvzf ./nco_4.4.4.orig.tar.gz # Untar to get directory without excluded files
-mkdir -p ${DATA}/nco-4.4.4/debian/source;cd ~/nco/debian;/bin/cp changelog compat control convert copyright doc-base files info rules ${DATA}/nco-4.4.4/debian;cd ~/nco/debian/source;/bin/cp format ${DATA}/nco-4.4.4/debian/source # Replace debian directory with _CURRENT_ (main trunk) settings
+sudo /bin/rm -rf ${DATA}/nco-4.4.5 ${DATA}/nco_4.4.5* ${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_5-1 -d nco-4.4.5 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.5 nco # Export most recent
+tar cvzf ./nco_4.4.5.orig.tar.gz --exclude='nco-4.4.5/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.5 
+/bin/rm -rf ${DATA}/nco-4.4.5 # Remove cvs-exported directory
+tar xvzf ./nco_4.4.5.orig.tar.gz # Untar to get directory without excluded files
+mkdir -p ${DATA}/nco-4.4.5/debian/source;cd ~/nco/debian;/bin/cp changelog compat control convert copyright doc-base files info rules ${DATA}/nco-4.4.5/debian;cd ~/nco/debian/source;/bin/cp format ${DATA}/nco-4.4.5/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.4;dpkg-buildpackage -rsudo -uc -us > ~/foo.nco 2>&1 # -uc -us: Do not sign changes or source files
-#cd ${DATA}/nco-4.4.4;dpkg-buildpackage -rsudo -sa > ~/foo.nco 2>&1 # -sa: Include _orig.tar.gz in .changes 
-cd ${DATA}/nco-4.4.4;dpkg-buildpackage -rsudo > ~/foo.nco 2>&1
+#cd ${DATA}/nco-4.4.5;dpkg-buildpackage -rsudo -uc -us > ~/foo.nco 2>&1 # -uc -us: Do not sign changes or source files
+#cd ${DATA}/nco-4.4.5;dpkg-buildpackage -rsudo -sa > ~/foo.nco 2>&1 # -sa: Include _orig.tar.gz in .changes 
+cd ${DATA}/nco-4.4.5;dpkg-buildpackage -rsudo > ~/foo.nco 2>&1
 sudo dpkg --remove nco
-sudo dpkg --install ${DATA}/nco_4.4.4-1_*.deb
+sudo dpkg --install ${DATA}/nco_4.4.5-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.4-1_*.deb
-ls -l ${DATA}/nco_4.4.4*
+lintian ${DATA}/nco_4.4.5-1_*.deb
+ls -l ${DATA}/nco_4.4.5*
 m ~/foo.nco
 # Upload Ubuntu (rather than Debian) packages to websites
-scp ${DATA}/nco_4.4.4* dust.ess.uci.edu:/var/www/html/nco/src
-scp ${DATA}/nco_4.4.4* zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
+scp ${DATA}/nco_4.4.5* dust.ess.uci.edu:/var/www/html/nco/src
+scp ${DATA}/nco_4.4.5* 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.4-1_*.changes
+# cd ${DATA};dupload -t mentors nco_4.4.5-1_*.changes
 bsrc # Reset shell environment for regular development
 
 # New build system #2
@@ -205,52 +205,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.4* # Cleanup prior build
+sudo /bin/rm /var/cache/pbuilder/result/nco_4.4.5* # 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.4-1.dsc > ~/foo.nco.pbuilder 2>&1
-cd /var/cache/pbuilder/result;debsign -k6F635D10 nco_4.4.4-1_*.changes
-lintian /var/cache/pbuilder/result/nco_4.4.4-1_*.deb
+cd ${DATA};DIST=sid sudo pbuilder build nco_4.4.5-1.dsc > ~/foo.nco.pbuilder 2>&1
+cd /var/cache/pbuilder/result;debsign -k6F635D10 nco_4.4.5-1_*.changes
+lintian /var/cache/pbuilder/result/nco_4.4.5-1_*.deb
 sudo dpkg --remove nco
-sudo dpkg --install /var/cache/pbuilder/result/nco_4.4.4-1_*.deb
+sudo dpkg --install /var/cache/pbuilder/result/nco_4.4.5-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.4-1_*.changes
+cd /var/cache/pbuilder/result;dupload -t mentors nco_4.4.5-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.4 ${DATA}/nco-4.4.4* # Cleanup last build
+/bin/rm -rf ${DATA}/nco-4.4.5 ${DATA}/nco-4.4.5* # Cleanup last build
 ${sudo_sng} /bin/rm -r -f \
-${rpm_root}/BUILD/nco-4.4.4 \
-${rpm_root}/RPMS/i386/nco-4.4.4-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-debuginfo-4.4.4-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-devel-4.4.4-?.i386.rpm \
-${rpm_root}/SOURCES/nco-4.4.4.tar.gz \
-${rpm_root}/SPECS/nco-4.4.4.spec \
-${rpm_root}/SRPMS/nco-4.4.4-?.src.rpm
-cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_4-1 -d nco-4.4.4 nco # Export based on tag
-${sudo_sng} ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/SPECS/nco-4.4.4.spec
-tar cvzf ./nco-4.4.4.tar.gz --exclude='nco-4.4.4/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.4 
-${sudo_sng} /bin/cp ${DATA}/nco-4.4.4.tar.gz ${rpm_root}/SOURCES
+${rpm_root}/BUILD/nco-4.4.5 \
+${rpm_root}/RPMS/i386/nco-4.4.5-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-debuginfo-4.4.5-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-devel-4.4.5-?.i386.rpm \
+${rpm_root}/SOURCES/nco-4.4.5.tar.gz \
+${rpm_root}/SPECS/nco-4.4.5.spec \
+${rpm_root}/SRPMS/nco-4.4.5-?.src.rpm
+cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_5-1 -d nco-4.4.5 nco # Export based on tag
+${sudo_sng} ln -s ${HOME}/nco/bld/nco.spec ${rpm_root}/SPECS/nco-4.4.5.spec
+tar cvzf ./nco-4.4.5.tar.gz --exclude='nco-4.4.5/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.5 
+${sudo_sng} /bin/cp ${DATA}/nco-4.4.5.tar.gz ${rpm_root}/SOURCES
 cd ${rpm_root}/SPECS
-${sudo_sng} rpmbuild -ba --sign nco-4.4.4.spec > ~/foo.nco 2>&1
+${sudo_sng} rpmbuild -ba --sign nco-4.4.5.spec > ~/foo.nco 2>&1
 scp \
-${rpm_root}/RPMS/i386/nco-4.4.4-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-debuginfo-4.4.4-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-devel-4.4.4-?.i386.rpm \
-${rpm_root}/SRPMS/nco-4.4.4-?.src.rpm \
+${rpm_root}/RPMS/i386/nco-4.4.5-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-debuginfo-4.4.5-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-devel-4.4.5-?.i386.rpm \
+${rpm_root}/SRPMS/nco-4.4.5-?.src.rpm \
 dust.ess.uci.edu:/var/www/html/nco/src
 scp \
-${rpm_root}/RPMS/i386/nco-4.4.4-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-debuginfo-4.4.4-?.i386.rpm \
-${rpm_root}/RPMS/i386/nco-devel-4.4.4-?.i386.rpm \
-${rpm_root}/SRPMS/nco-4.4.4-?.src.rpm \
+${rpm_root}/RPMS/i386/nco-4.4.5-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-debuginfo-4.4.5-?.i386.rpm \
+${rpm_root}/RPMS/i386/nco-devel-4.4.5-?.i386.rpm \
+${rpm_root}/SRPMS/nco-4.4.5-?.src.rpm \
 zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 
 # RPM builds as user
@@ -259,33 +259,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.4 ${DATA}/nco-4.4.4* # Cleanup last build
+/bin/rm -rf ${DATA}/nco-4.4.5 ${DATA}/nco-4.4.5* # Cleanup last build
 /bin/rm -r -f \
-${rpm_root}/nco-4.4.4-?.src.rpm \
-${rpm_root}/nco-4.4.4.spec \
-${rpm_root}/nco-4.4.4.tar.gz \
-${rpm_root}/*/nco-4.4.4-?.*.rpm \
-${rpm_root}/*/nco-debuginfo-4.4.4-?.*.rpm \
-${rpm_root}/*/nco-devel-4.4.4-?.*.rpm
-# cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_4-1 -d nco-4.4.4 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.4 nco # Export most recent and build as 4.4.4-1
-tar cvzf ./nco-4.4.4.tar.gz --exclude='nco-4.4.4/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.4 
-/bin/cp ${DATA}/nco-4.4.4.tar.gz ${rpm_root}
+${rpm_root}/nco-4.4.5-?.src.rpm \
+${rpm_root}/nco-4.4.5.spec \
+${rpm_root}/nco-4.4.5.tar.gz \
+${rpm_root}/*/nco-4.4.5-?.*.rpm \
+${rpm_root}/*/nco-debuginfo-4.4.5-?.*.rpm \
+${rpm_root}/*/nco-devel-4.4.5-?.*.rpm
+# cd ${DATA};cvs -d zender at nco.cvs.sf.net:/cvsroot/nco export -kkv -r nco-4_4_5-1 -d nco-4.4.5 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.5 nco # Export most recent and build as 4.4.5-1
+tar cvzf ./nco-4.4.5.tar.gz --exclude='nco-4.4.5/debian*' --exclude='.cvsignore' --exclude='ncap_lex.c' --exclude='ncap_yacc.[ch]' ./nco-4.4.5 
+/bin/cp ${DATA}/nco-4.4.5.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.4-?.*.rpm
+rpmlint ${rpm_root}/*/nco-4.4.5-?.*.rpm
 sudo yum remove nco
-sudo yum install ${rpm_root}/*/nco-4.4.4-?.*.rpm
+sudo yum install ${rpm_root}/*/nco-4.4.5-?.*.rpm
 scp \
-${rpm_root}/*/nco-4.4.4-?.*.rpm \
-${rpm_root}/*/nco-debuginfo-4.4.4-?.*.rpm \
-${rpm_root}/*/nco-devel-4.4.4-?.*.rpm \
-${rpm_root}/nco-4.4.4-?.*.src.rpm \
+${rpm_root}/*/nco-4.4.5-?.*.rpm \
+${rpm_root}/*/nco-debuginfo-4.4.5-?.*.rpm \
+${rpm_root}/*/nco-devel-4.4.5-?.*.rpm \
+${rpm_root}/nco-4.4.5-?.*.src.rpm \
 dust.ess.uci.edu:/var/www/html/nco/src
 scp \
-${rpm_root}/*/nco-4.4.4-?.*.rpm \
-${rpm_root}/*/nco-debuginfo-4.4.4-?.*.rpm \
-${rpm_root}/*/nco-devel-4.4.4-?.*.rpm \
-${rpm_root}/nco-4.4.4-?.*.src.rpm \
+${rpm_root}/*/nco-4.4.5-?.*.rpm \
+${rpm_root}/*/nco-debuginfo-4.4.5-?.*.rpm \
+${rpm_root}/*/nco-devel-4.4.5-?.*.rpm \
+${rpm_root}/nco-4.4.5-?.*.src.rpm \
 zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
diff --git a/doc/endorsements.txt b/doc/endorsements.txt
new file mode 100644
index 0000000..b13c6d3
--- /dev/null
+++ b/doc/endorsements.txt
@@ -0,0 +1,151 @@
+Received fxm:
+
+************************************************************************
+Received 20140613:
+
+NCO benefits my research in dynamic global vegetation models and
+climate change research by allowing me to easily modify and analyze
+climate data and vegetation simulation data. 
+
+--
+John B. Kim
+PNW Research Station & WWETAC, US Forest Service
+jbkim at fs.fed.us  541-750-7287 (o)  541-286-5546 (m)
+
+************************************************************************
+Received 20120720:
+
+I installed NCO in Windows 7 and have crosschequed the results of ncra
+with ArcGIS, and they match perfectly.  NCO Works  like a champ. it
+takes only a fraction of a second to average over 10 million records
+(argis takes over 10 minutes). I am curious how can this be even
+possible but what it matters is that the results are correct. 
+Thanks,
+Camilo Mora
+************************************************************************
+Received 20110325:
+
+Dear Prof. Zender,
+
+I am composing this email to express my strongest endorsement for the
+NCO software and its development. I am an assistant professor in
+Department of Atmospheric, Oceanic, and Space Sciences at the
+University of Michigan. My research area is in understanding various
+issues associated with radiative transfer, water vapor, clouds, and
+their interactions via diagnosis analysis of observations and GCM
+outputs. I have been using NCO operators since 2006. As my group and I
+have to constantly deal with large amount of data sets of reanalysis,
+GCM simualtions, and satellite data products, we benefit enormously
+from using NCO. It saves a great amount of our time in programming and
+preprocessing data, and it greatly simplifies such coding tasks. For
+our day-to-day research work, NCO software is as important as Matlab,
+Fortran, and Perl. It has already become an inseparable and critical
+component in data analysis and our research. And I know many
+researchers share the same view with me regarding the technical
+importance of NCO. Therefore, I endorse the development of NCO without
+any reservation. 
+
+    Sincerely,
+
+    Xianglei Huang
+
+
+-------------------------------------------------------------------
+Xianglei Huang
+Assistant Professor
+Department of Atmospheric, Oceanic, and Space Sciences
+College of Engineering, University of Michigan
+2455 Hayward St, Ann Arbor, MI 48109
+Phone: 734-936-0491 FAX: 734-936-0503
+xianglei at umich.edu
+-------------------------------------------------------------------
+
+************************************************************************
+Received 20040809:
+
+Prof Zender,
+
+I'm writing in support of the recent NSF proposal [1] to improve the
+"NCO" suite of NetCDF/HDF data analysis tools.  Our group:
+
+  http://paoc.mit.edu/cmi/
+  http://mitgcm.org/
+
+and many of our collaborators are steadily moving toward the use of both
+hierarchical data formats (such as NetCDF and HDF) and multi-terabyte
+data sets.  Under these circumstances, tools such as NCO become
+increasingly useful and important for our work.
+
+I am impressed with the capabilities offered by current NCO releases and
+would very much like to see it extended (per the above proposal) to take
+fuller advantage of parallel systems.  I believe that such a free, open,
+and extensible set of parallel analysis tools would be an important
+resource for the GFD community.  While nearly all ocean and atmospheric
+models have evolved to take advantage of parallel execution, it seems
+that many of the data analysis tools have lagged.  Thus, for many
+researchers, it is the pre- and post-processing steps that consume the
+most time and can be the greatest barrier to experimental progress.
+
+Thus, I look forward to parallel versions of the NCO tools that will
+take better advantage of both our SMP (threaded) and cluster (MPI-based)
+computing resources.
+
+Best regards,
+Ed Hill
+
+ [1] SEI(GEO): Scientific Data Operators Optimized for 
+     Distributed Interactive and Batch Analysis of Tera-Scale
+     Geophysical Data,  Dr. Charles S. Zender, Department of 
+     Earth System Science, University of California at Irvine
+
+
+-- Edward H. Hill III, PhD office: MIT Dept. of EAPS; Rm 54-1424; 77
+   Massachusetts Ave. Cambridge, MA 02139-4307 emails: eh3 at mit.edu
+   ed at eh3.com URLs: http://web.mit.edu/eh3/ http://eh3.com/ phone:
+   617-253-0098 fax: 617-253-4464 
+
+************************************************************************
+Received 20040611:
+
+The best netCDF processing software I have ever used. NCO is 
+indispensible in my work.
+Good luck!
+
+Haijun
+
+--------------------------------------------
+Haijun Yang, Associate Professor
+Department of Atmospheric Science
+School of Physics, Peking University
+209 Chengfu Road, Beijing, China 100871
+Tel: 86-10-62767436
+Fax: 86-10-62751094
+Email: hjyang at pku.edu.cn
+--------------------------------------------
+************************************************************************
+Received 20040430:
+
+I find the NCO operators to be indispensable in my work, and
+many of my colleagues would say the same.  Their usefulness
+is perhaps best captured by the surprise of some people to whom
+I have introduced NCO when they learned that it is a separate
+entity from the NETCDF library.
+
+The developers of NCO have always replied promptly to my help
+requests and have on occasion even added new functionality
+that I had requested.
+
+In my opinion, the advantages of NCO compared to mathematically more
+comprehensive packages reading NETCDF files are that it is fast, very
+concise, free of charge, runs on almost any platform, and can be
+easily integrated into shell or other kinds of scripts. And with
+the evolution of the ncap utility, the capabilities of NCO are
+becoming sufficient for tasks of greater numerical complexity.
+
+------------------------------------------------------------
+Dr. Maxwell Kelley
+Laboratoire des Sciences du Climat et de l'Environnement
+L'Orme des Merisiers CEA Saclay
+91191 Gif sur Yvette cedex        mkelley at lsce.saclay.cea.fr
+France                                +33 1 69 08 27 02
+------------------------------------------------------------
diff --git a/doc/highlights_old.shtml b/doc/highlights_old.shtml
new file mode 100644
index 0000000..a99af41
--- /dev/null
+++ b/doc/highlights_old.shtml
@@ -0,0 +1,239 @@
+<!-- $Header: /cvsroot/nco/nco/doc/highlights_old.shtml,v 1.1 2014/06/13 19:43:50 zender Exp $
+
+Purpose: Highlights archive
+
+URL:
+http://nco.sf.net/highlights_old.shtml
+http://dust.ess.uci.edu/nco/highlights_old.shtml
+file:///home/zender/nco/doc/highlights_old.shtml
+
+Usage:
+/usr/bin/scp ~/nco/doc/highlights_old.shtml zender,nco at web.sf.net:/home/project-web/nco/htdocs
+scp -p ~/nco/doc/highlights_old.shtml dust.ess.uci.edu:/var/www/html/nco
+-->
+
+<!doctype html public "-//W3C//DTD HTML 3.2//EN">
+<html>
+<head>
+   <title>NCO Homepage</title>
+   <meta name="GENERATOR" content="Mozilla/3.04Gold (X11; I; Linux 2.0.0 i686) [Netscape]">
+   <meta name="Author" content="Charles S. Zender">
+   <meta name="Keywords" content="NCO Homepage, netCDF, netCDF operator, GCM, HDF, scientific data">
+</head>
+<body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#008080" alink="#FF0000">
+
+<dt><a name="News"></a></dt>
+<h2>Release Highlights from 2000–2012 (versions 1.1.47–4.2.3)</h2>
+
+<li><b>NCO 4.2.3</b>:
+Group Path Editing (GPE);
+<tt>ncecat</tt> <a href="#bug_ncecat_nintap">bugfix</a></li>
+<li><b>NCO 4.2.2</b>: 
+<tt>ncks</tt>, <tt>ncecat</tt> support groups;
+<tt>--hdr_pad</tt> all operators;
+<tt>ncks</tt> prints underscores;
+fixes to <tt>--[mk/fix]_rec_dmn</tt>;
+<tt>ncpdq</tt> fix;
+<tt>ncwa</tt> on Windows;</li>
+<li><b>NCO 4.2.1</b>: 
+<tt>--ram_all</tt> for <a href="http://nco.sf.net/nco.html#diskless">diskless files</a>;
+<tt>--no_tmp_fl</tt> to <a href="http://nco.sf.net/nco.html#no_tmp_fl">bypass</a> temporary files;
+Negative indices for <a href="http://nco.sf.net/nco.html#hyp">hyperslabs</a>;
+<tt>ncpdq</tt> unpacks coordinate variables;
+<tt>ncra/ncrcat</tt> SSC/MRO <a href="http://nco.sf.net/nco.html#ssc">options</a>;
+<tt>ncra/ncrcat</tt> rebase <a href="http://nco.sf.net/nco.html#rbs">bounds</a>;</li>
+<li><b>NCO 4.2.0</b>: 
+<tt>ncecat</tt> "fixes" auxiliary coordinates and bounds;
+<tt>ncks</tt> uses <tt>nc__open</tt>, format <tt>NC_INT</tt> with <tt>%i</tt>;
+<tt>ncra -y ttl</tt> fix;
+<tt>ncrcat</tt> UDUnits fix;
+<tt>ncwa</tt> and <tt>ncap2</tt> limited NaN support;
+Microsoft Visual Studio support;</li>
+<li><b>NCO 4.1.0</b>:
+MD5 digests;
+<tt>ncap2</tt> sorts & maps;
+<tt>ncks</tt> MM3 <a href="#bug_mm3">workaround</a>;
+<tt>ncrename/ncatted</tt> chmods;
+<tt>ncatted</tt> NaN support</li>
+<li><b>NCO 4.0.9</b>: 
+Fix over-zealous <tt>ncap2</tt> packing;
+Fix <tt>nces -y ttl</tt>;
+Fix/improve <tt>ncap2 print, array()</tt>;
+Warn when appending variables of suspicious record length;
+Warn when <tt>NC_MAX_ATTRS</tt> exceeded</li>
+<li><b>NCO 4.0.8</b>: 
+Support <a href="http://nco.sf.net/nco.html#hpss">HPSS</a>;
+Workaround netCDF <tt>NOFILL</tt> <a href="#bug_nofill">bug</a> (<i>upgrade recommended</i>);
+Support CF <tt>bounds</tt>;
+CF <tt>noleap</tt> not <tt>no_leap</tt>;
+Fix <tt>ncatted</tt> overwrite-mode;
+Fix <tt>NC_BYTE</tt> printing</li>
+<li><b>NCO 4.0.7</b>:
+Fix degenerate hyperslab <a href="#bug_hyp_dgn">bug</a> (<i>upgrade recommended</i>)</li>
+<li><b>NCO 4.0.6</b>: 
+<tt>clang</tt>-compliance;
+Fix <tt>ncra</tt> YYYYMMDD-<tt>date</tt> <a href="#bug_ncra_cf_YYYYMMDD_date">bug</a>;
+Extract all associated coordinates;
+Tighten <tt>ncbo</tt> warnings;
+<tt>ncpdq</tt> warns when _FillValue outside packing range</li>
+<li><b>NCO 4.0.5</b>:
+Fix <tt>ncks</tt> <a href="#bug_ncks_nc4_nc4_hyp_fix">hyperslabbing bug</a>;
+Fix <tt>ncra</tt> <a href="#bug_ncra_cf_crd_rec_crd">CF "coordinate" bug</a></li>
+<li><b>NCO 4.0.4</b>:
+Chunking in all operators; preserve deflation; <tt>ncks</tt> print formatting;
+Fix <tt>ncrename</tt> <a href="#bug_ncrename_dot">bug</a>;
+Do not pack coordinate variables</li>
+<li><b>NCO 4.0.3</b>:
+Fix <tt>configure</tt> for ncap2, netCDF4, UDUnits2, netCDF-DAP;
+Fix <tt>ncbo</tt> <a href="#bug_ncbo_rfr">bug</a> under AIX xlC;
+Fix <tt>ncra</tt> <a href="#bug_ncra_date">bug</a> for some CF-compliant dates.</li>
+<li><b>NCO 4.0.2</b>:
+Consistent deflation, chunking with <tt>netCDF4_classic</tt>;
+Fix <tt>ncap2</tt> RAM vars, 1-D arrays;
+Fix <tt>ncatted</tt> appending <tt>NUL</tt>s.</li>
+<li><b>NCO 4.0.1</b>:
+Easily create/remove record dimensions with <tt>ncks --mk_rec_dmn</tt>, <tt>--fix_rec_dmn</tt>;</li>
+<li><b>NCO 4.0.0</b>: 
+Bilinear interpolation, GSL fitting; 
+Chunking improvements;
+Better support CF <tt>calendar</tt> and <tt>coordinate</tt> attributes</li>
+<li><b>NCO 3.9.9</b>:
+netCDF4 chunking and <tt>NC_STRING</tt> support; 
+GSL statistics, interpolation functions;
+UDUnits2 <tt>time-since</tt> support;
+<tt>ncrcat</tt> re-basing</li>
+<li><b>NCO 3.9.8</b>: 
+<tt>ncap2</tt> supports <tt>sort()</tt>, <tt>array()</tt>;
+better DAP/libnetcdf and UDUnits2 builds;
+GSL distribution/RNG functions</li>
+<li><b>NCO 3.9.7</b>:
+Improve GSL-build support;
+<tt>ncap2</tt> threading improvements;
+<tt>ncks --no_dmn_var_nm</tt> printing</li>
+<li><b>NCO 3.9.6</b>: 
+Fix OpenMP MSA <a href="#bug_thr_msa">bug</a> (<i>upgrade highly recommended</i>); 
+Memory management to improve threading;
+<tt>ncatted</tt> workaround for netCDF4 <tt>_FillValue</tt>;
+disable OpenMP with netCDF4/HDF;
+no math on type <tt>NC_CHAR</tt>;
+<tt>ncap2</tt> <a href="http://nco.sf.net/nco.html#ncap2">documentation</a>,
+better missing value propagation,
+<tt>#include</tt> files,
+<a href="http://nco.sf.net/nco.html#gsl">GSL</a> math functions</li>
+<li><b>NCO 3.9.5</b>:
+Multi-slabbing (MSA) and <tt>-X</tt> everywhere;
+<tt>ncecat -M</tt>;
+netCDF4-enabled builds on Cygwin;
+<tt>ncap2</tt> builds on Solaris</li>
+<li><b>NCO 3.9.4</b>: 
+File consanguinity;
+<tt>ncks</tt>: CF auxiliary coords, LZ stats;
+<tt>ncap2</tt>: masks, index arrays, print attributes, OpenMP, <tt>atan2()</tt>, <tt>pow()</tt></li>
+<li><b>NCO 3.9.3</b>: 
+SWAMP release;
+<tt>ncecat -u</tt>;
+<tt>wget</tt> URLs;
+GCC 4.2;
+<tt>ncap2</tt> OpenMP</li>
+<li><b>NCO 3.9.2</b>: 
+<tt>_FillValue</tt> supplants <tt>missing_value</tt>;
+<tt>UDUnits2 support</tt>;
+<tt>ncap2</tt> type-conversion support and printing;
+netCDF4 <tt>configure</tt> fixes;
+Change licenses to GPL3 and FDL1.2</li>
+<li><b>NCO 3.9.1</b>: 
+<a href="http://nco.sf.net/nco.html#deflate">Support</a> lossless netCDF4/HDF deflation;
+Improve Intel compiler support; 
+<tt>ncap2</tt> for/while loops;
+various and sundry build fixes</li>
+<li><b>NCO 3.9.0</b>: 
+<a href="http://nco.sf.net/nco.html#nco4">Support netCDF4</a> types (<tt>ubyte</tt>, <tt>ushort</tt>, <tt>uint</tt>, <tt>int64</tt>, and <tt>uint64</tt>);
+Control <tt>ncks</tt> metadata <a href="http://nco.sf.net/nco.html#prn">copying</a>; 
+Fix <tt>ncbo</tt> packed valued <a href="#bug_ncbo_pck">bug</a> (<i>upgrade recommended</i>); 
+Improve IRIX 6.5 support</li>
+<li><b>NCO 3.2.0</b>: More forgiving exclusion list (<tt>-x -v <i>var_nm</i></tt>) <a href="http://nco.sf.net/nco.html#xcl">handling</a>; Fix <tt>rmssdn</tt> normalization; Support Mac OS X on Intel; Documentation bugfixes</li>
+<li><b>NCO 3.1.9</b>: <tt>ncap2</tt> in RPM packages; Quieter output; AIX <tt>configure</tt> supports <tt>ncap2</tt>; Update to DAP for netCDF 3.6.2; Fix <tt>nc[erw]a</tt> for coordinate min/max/ttl; <tt>ncecat</tt> allows files to differ in record dimension size</li>
+<li><b>NCO 3.1.8</b>: Support <tt>_FillValue</tt> with compile-time switch; Debian package synchronized, includes <tt>ncap2</tt></li>
+<li><b>NCO 3.1.7</b>: <tt>ncap2</tt> “double-parsing”, array initialization, supercedes <tt>ncap</tt></li>
+<li><b>NCO 3.1.6</b>: Support <a href="http://nco.sf.net/nco.html#srd">stride</a> in all hyperslabbing operators; change more WARNINGs to INFOs</li>
+<li><b>NCO 3.1.5</b>: New <tt>ncap2</tt> array and hyperslab features; change some WARNINGs to INFOs, add Pathscale and update PGI and Intel compiler support</li>
+<li><b>NCO 3.1.4</b>: Fix <tt>ncbo</tt> memory problem; report timer results</li>
+<li><b>NCO 3.1.3</b>: <tt>ncap2</tt> automatically <a href="http://nco.sf.net/nco.html#att_prp">propagates</a> attributes to new/derived variables; NCO handles record variables with zero records; <a href="http://nco.sf.net/nco.html#cnv_CF_crd">support</a> CF <tt>coordinates</tt> convention; <tt>ncwa -b</tt> <a href="http://nco.sf.net/nco.html#ncwa">retains</a> degenerate dimensions; build fixes for Cray T3E, Solaris, Cygwin.</li>
+<li><b>NCO 3.1.2</b>: <tt>ncap2</tt> control structures (conditionals, loops, etc.); keep non-processed data <a href="bug_pack_fix">packed</a> in output file; binary operators <tt>ncbo</tt> and <tt>ncflint</tt> work when only one variable has <tt>missing_value</tt> attribute; change <tt>ncra</tt> and <tt>nces</tt> to always average coordinate variables</li>
+<li><b>NCO 3.1.1</b>: NCO builds (again) with C++ compilers; ncap2 development code; server-side extensions</li>
+<li><b>NCO 3.1.0</b>: MPI operators are bug-free; fix <t>./configure</t> for MPI and netCDF4; MRV algorithm speeds up <tt>ncwa</tt> 5—10 times; <tt>ncap</tt> random number generator <tt>rnd_nbr()</tt></li>
+<li><b>NCO 3.0.3</b>: Eliminate all critical read regions (accelerates all SMP operators); builds with netCDF4 alpha; read <t>NETCDF4_CLASSIC</t> (i.e., HDF) files automatically; write <t>NETCDF4</t> files <a href="http://nco.sf.net/nco.html#netcdf4">on request</a>; <a href="http://nco.sf.net#BM">benchmark results</a> quantify parallelism.</li>
+<li><b>NCO 3.0.2</b>: Fewer critical read regions; all known memory leaks plugged; better Intel compiler support; <tt>SFTP</tt> protocol support; FTP protocol supports <tt>.netrc</tt>-based passwords; better model grid-property-awareness (e.g., <tt>lat_bnds</tt>); <tt>ncatted</tt> <tt>ncks</tt>, <tt>ncrename</tt> support metadata header padding with <tt>--hdr</tt>; <tt>ncbo</tt> supports heterogeneous variable ordering; <tt>ncatted</tt> bugfix</li>
+  <li><b>NCO 3.0.1</b>: benchmarks; <tt>ncks</tt> printing tweaks; memory cleanup; <tt>ncap</tt> double-parse speedup and <a href="bug_ncap_cmt">exponentiation bugfix</a>; thread operators by default</li>
+  <li><b>NCO 3.0.0</b>: New <tt>ncks -P</tt> print switch; <tt>ncap</tt> optimizations; <tt>-Z</tt> option supports 64-bit offsets (requires netCDF 3.6); NEC SX build improvements; support GCC 3.4.X; <tt>nco_put_vara()</tt> overloads in <tt>libnco_c++</tt></li>
+<li><b>NCO 2.9.9</b>: <tt>ncpdq</tt> packs/unpacks entire files; <tt>ncbo</tt> is threaded</li>
+<li><b>NCO 2.9.8</b>: <a href="./nco.html#ncpdq"><tt>ncpdq</tt></a> released; <tt>ncwa --msk_sng</tt> consolidated mask switch; C99 compiler required</li>
+<li><b>NCO 2.9.7</b>: Read input file lists from <tt>stdin</tt>; write <tt>nco_input_file_list</tt> attributes; add <tt>nco_put_att<int,short,long></tt> functions to libnco_c++; large file support (LFS); write <tt>nco_openmp_thread_number</tt> attribute</li>
+<li><b>NCO 2.9.6</b>: Support <tt>-o fl_out</tt> syntax; 64-bit ABI for x86_64; <a href="http://www.debian.org">Debian</a> builds libnco_c++</li>
+<li><b>NCO 2.9.5</b>: <tt>ncflint</tt> handles <tt>missing_value</tt> data better, is commutative when weights are equal</li>
+<li><b>NCO 2.9.4</b>: <tt>ncecat</tt> works on pure scalar files; change to <tt>cvs.sf.net</tt>; AIX GCC builds</li>
+<li><b>NCO 2.9.3</b>: <tt>ncra</tt> and <tt>nces</tt> now <a name="bug_mss_val_zro_ncra">work correctly</a> when <tt>missing_value</tt> equals zero or any intermediate sums</li>
+<li><b>NCO 2.9.2</b>: <tt>ncap</tt> <tt>S/V</tt>, <tt>S%V</tt>, and <tt>S^V</tt> <a href="#bug_ncap_cmt">operations fixed</a> (<tt>S</tt> = scalar, <tt>V</tt> = variable)</li>
+<li><b>NCO 2.9.1</b>: <tt>ncwa</tt> works again on packed <tt>NC_FLOAT</tt> data (<a href="#bug_pck_ncwa">broke when?</a>)</li>
+<li><b>NCO 2.9.0</b>: Complete <tt>ncap</tt> modulo operator (<tt>V%S</tt>) and generic exponentiation (<tt>V^S</tt>), scalar divided by variable (<tt>S/V</tt>); workaround stack memory problem with GCC extensions; fix <tt>make check</tt></li>
+<li><b>NCO 2.8.8</b>: <tt>--enable-[optimize/debug]-custom</tt> options for GCC work again (broke in 2.8.6)</li>
+<li><b>NCO 2.8.7</b>: <tt>ncap</tt> packing works again (<a href="#bug_pck">broke in 2.8.4</a>); Cygwin builds work again</li>
+<li><b>NCO 2.8.6</b>: AIX and IRIX builds work again; custom GCC builds with <tt>-Werror</tt></li>
+<li><b>NCO 2.8.5</b>: Solaris <tt>make install</tt> works; <tt>ncap</tt> changes attribute values correctly; <a href="#bld_DODS">Support DODS 3.4+, deprecate 3.3-</a>; add <tt>--enable-[optimize/debug]-custom</tt> options to <tt>./configure</tt></li>
+<li><b>NCO 2.8.4</b>: Index-based hyperslabs work again (<a href="#bug_idx_hyp">broke in 2.7.3</a>, <i>upgrade highly recommended</i>); <tt>ncap</tt> peak memory usage reduced still more; support for AMD Opteron x86_64 architecture</li>
+<li><b>NCO 2.8.3</b>: Fix big <tt>ncap</tt> memory leak; fix regressions; remove scary packing warnings</li>
+<li><b>NCO 2.8.2</b>: <tt>ncbo</tt> handles distinct <tt>missing_value</tt>s correctly; improve error diagnostics</li>
+<li><b>NCO 2.8.1</b>: <a href="./nco.html#rx">“Variable wildcarding”</a>—extended regular expressions in <tt>-v var,...</tt> lists—support in all operators</li>
+<li><b>NCO 2.8.0</b>: New “binary” operator <a href="./nco.html#ncbo"><tt>ncbo</tt></a>, obsoletes <tt>ncdiff</tt>; <a href="http://www.debian.org">Debian</a> integration</li>
+<li><b>NCO 2.7.4</b>: Autotools build support for AIX; fix UDUnits confusion with floating point hyperslab specifications</li>
+<li><b>NCO 2.7.3</b>: Support <a href="http://www.unidata.ucar.edu/packages/udunits">UDUnits</a> (and some <a href="http://www.cgd.ucar.edu/cms/eaton/cf-metadata/CF-working.html">CF</a>) conventions, e.g., <tt>ncks -d wvl "1 picometer","1 furlong" -d time,"2001-03-19 06:00:0.0","2001-03-19 18:00:0.0"</tt></li>
+<li><b>NCO 2.7.2</b>: Printing (<tt>ncks -H</tt>) plays well with multi-slabbing</li>
+<li><b>NCO 2.7.1</b>: (Packaged) Fallback to B. Sittler's <tt>getopt()</tt> for long option support; store fixed, packed variables correctly with <tt>ncap</tt>.</li>
+<li><b>NCO 2.7.0</b>: Support for GNU/POSIX long options; <tt>ncks</tt> introduces <i>multi-slabbing</i> (= multiple hyperslabs) capability</li>
+<li><b>NCO 2.6.6</b>: Fix and document <tt>ncrename</tt> attribute renaming; add type conversion functions to <tt>ncap</tt></li>
+<li><b>NCO 2.6.5</b>: Cray, Sun build improvements</li>
+<li><b>NCO 2.6.4</b>: Mac OS X, NEC, SGI build improvements</li>
+<li><b>NCO 2.6.3</b>: Mac OS X builds work seamlessly; documentation fixed</li>
+<li><b>NCO 2.6.2</b>: Major improvements in autotools support; <tt>ncap</tt> supports user-defined dimensions</li>
+<li><b>NCO 2.6.1</b>: Minor fix to unpacking support</li>
+<li><b>NCO 2.6.0</b>: All arithmetic operators (<tt>ncap</tt>, <tt>ncdiff</tt>, <tt>nces</tt>, <tt>ncflint</tt>, <tt>ncra</tt>) support unpacking</li>
+<li><b>NCO 2.5.6</b>: Handle <tt>missing_value</tt> correctly for integer variables in <tt>ncra</tt>, merge <tt>autoconf</tt> build</li>
+<li><b>NCO 2.5.5</b>: Handle files without existing global “<tt>History</tt>” attribute correctly</li>
+<li><b>NCO 2.5.4</b>: Add support NEC-SX support; update Cray support; small build changes</li>
+<li><b>NCO 2.5.3</b>: Fix native builds under MS Windows with Cygwin <tt>ncap</tt>; hint to <tt>ncwa</tt></li>
+<li><b>NCO 2.5.2</b>: Add math functions to <tt>ncap</tt>; hint to <tt>ncwa</tt></li>
+<li><b>NCO 2.5.1</b>: <tt>ncatted</tt> deletes all attributes of <tt>att_var</tt> when <tt>att_nm</tt> not specified</li>
+<li><b>NCO 2.5.0</b>: man(1) pages from <a href="http://www.debian.org">Debian</a> distribution</li>
+<li><b>NCO 2.4.6</b>: Free (speech) sort routines</li>
+<li><b>NCO 2.4.5</b>: Arithmetic speedups</li>
+<li><b>NCO 2.4.4</b>: 64-bit AIX builds</li>
+<li><b>NCO 2.4.3</b>: Handle non-standard “History” attributes</li>
+<li><b>NCO 2.4.2</b>: <tt>ncap</tt> supports nesting files with <tt>#include</tt></li>
+<li><b>NCO 2.4.0</b>: <tt>ncks</tt> supports writing native binary output with <tt>-b</tt> switch</li>
+<li><b>NCO 2.3.1</b>: <tt>ncap</tt> builds on all Unices</li>
+<li><b>NCO 2.3.0</b>: Library redesign</li>
+<li><b>NCO 2.2.4</b>: <tt>ncap</tt> fully supports packing and unpacking variables</li>
+<li><b>NCO 2.2.3</b>: <tt>ncap</tt> supports manually unpacking variables stored with <tt>scale_factor</tt> and <tt>add_offset</tt></li>
+<li><b>NCO 2.2.2</b>: fix rare <tt>ncwa</tt> crash with weights</li>
+<li><b>NCO 2.2.1</b>: fix <tt>ncap</tt> divide and <tt>fmodf</tt> bugs</li>
+<li><b>NCO 2.2.0</b>: (RPM available) <a href="./nco_news.shtml#20020203">20020203</a>: <tt>ncap</tt> public debut (has division error, please upgrade)</li>
+<li><b>NCO 2.1.3</b>: <tt>ncap</tt> implements LHS casting</li>
+<li><b>NCO 2.1.2</b>: C++ API to netcdf; libnco_c++ open for business</li>
+<li><b>NCO 2.1.0</b>: <tt>ncap</tt> full lexer/parser operational</li>
+<li><b>NCO 2.0.3</b>: small fixes to 2.0.0 (e.g., <tt>ncks</tt> printing)</li>
+<li><b>NCO 2.0.2</b>: Add packing/unpacking capabilities based on <tt>scale_factor</tt> and <tt>add_offset</tt> convention</li>
+<li><b>NCO 2.0.1</b>: Add user-configurable multi-threaded capability to arithmetic-intensive operators <tt>ncwa</tt>, <tt>nces</tt>, and <tt>ncra</tt></li>
+<li><b>NCO 2.0.0</b>: (RPM available) <a href="./nco_news.shtml#20010507">20010507</a>: Switched all internal calls to netCDF 3.x API</li>
+<li><b>NCO 1.2.2</b>: <a href="./nco_news.shtml#20010211">20010211</a>: Allow weights with
+<tt>ncwa</tt> in min/max/ttl operations; easier building with HDF4. 
+<tt>ncrename</tt> can now work on specific variables rather than whole file.
+<tt>ncks</tt> has <tt>-q</tt> option for cleaner printing</li>
+<li><b>NCO 1.2.1</b>: <a href="./nco_news.shtml#20000828">20000828</a>: Added type-conversion of integers to floating point before arithmetic; fixed broken <tt>-v</tt> option</li>
+<li><b>NCO 1.2</b>: <a href="./nco_news.shtml#20000730">20000730</a>: Added non-linear operations to <tt>ncra/nces</tt> and <tt>ncwa</tt>: min,max,total,rms,rmssdn,sqrt. Added <a href="http://opendap.org">DODS</a> compliance.</li>
+<li><b>NCO 1.1.48</b>: <a href="./nco_news.shtml#20000515">20000515</a>: Potentially serious bugfix to <tt>ncdiff</tt>, recommend upgrade</li>
+<li><b>NCO 1.1.47</b>: <a href="./nco_news.shtml#20000510">20000510</a>: Improved <tt>ncra</tt> and <tt>ncrcat</tt> to allow lazier specifications of input files</li> 
+</ul>
+<hr></p>
+
+</body>
+</html>
diff --git a/doc/index.shtml b/doc/index.shtml
index 8ea386d..a01e9ec 100644
--- a/doc/index.shtml
+++ b/doc/index.shtml
@@ -1,4 +1,4 @@
-<!-- $Header: /cvsroot/nco/nco/doc/index.shtml,v 1.883 2014/05/29 18:19:54 zender Exp $
+<!-- $Header: /cvsroot/nco/nco/doc/index.shtml,v 1.917 2014/08/27 04:44:01 zender Exp $
 Purpose: NCO homepage
 
 URL:
@@ -7,7 +7,9 @@ http://dust.ess.uci.edu/nco/index.shtml
 file:///home/zender/nco/doc/index.shtml
 
 Usage:
-/usr/bin/scp ~/nco/doc/index.shtml ~/nco/doc/logo_cog.png ~/nco/doc/logo_cog_nmr.png ~/nco/doc/logo_nco_stk.png ~/nco/doc/logo_pch.png ~/nco/doc/logo_srl.png ~/nco/doc/nasa.png ~/nco/doc/nco.png ~/nco/doc/nsf.png zender,nco at web.sf.net:/home/project-web/nco/htdocs
+/usr/bin/scp ~/nco/doc/index.shtml zender,nco at web.sf.net:/home/project-web/nco/htdocs
+scp -p ~/nco/doc/index.shtml dust.ess.uci.edu:/var/www/html/nco
+/usr/bin/scp ~/nco/doc/doe.jpg ~/nco/doc/index.shtml ~/nco/doc/logo_cog.png ~/nco/doc/logo_cog_nmr.png ~/nco/doc/logo_nco_stk.png ~/nco/doc/logo_pch.png ~/nco/doc/logo_srl.png ~/nco/doc/nasa.png ~/nco/doc/nco.png ~/nco/doc/nsf.png zender,nco at web.sf.net:/home/project-web/nco/htdocs
 scp -p ~/nco/doc/index.shtml ~/nco/doc/logo_cog.png ~/nco/doc/logo_cog_nmr.png ~/nco/doc/logo_nco_stk.png ~/nco/doc/logo_pch.png ~/nco/doc/logo_srl.png ~/nco/doc/nasa.png ~/nco/doc/nco.png ~/nco/doc/nsf.png dust.ess.uci.edu:/var/www/html/nco
 scp -p ~/nco/doc/.htaccess zender,nco at web.sf.net:/home/project-web/nco/htdocs/src
 scp -p ~/nco/doc/.htaccess dust.ess.uci.edu:/var/www/html/nco/src
@@ -48,14 +50,14 @@ Try to disable Spammers' machines:
 <a href="http://sf.net/projects/nco/forums/forum/9829">Discussion</a> /
 <a href="http://sf.net/projects/nco/forums/forum/9830">Help</a> /
 <a href="#RTFM">Manual</a> /
-<a href="http://nco.sf.net">Homepage</a> /
 <a href="http://sf.net/projects/nco">Project</a> /
 <a href="http://nco.cvs.sf.net/nco/nco/src/nco">Source</a> /
 </td>
 
 <td align="right" valign="top">
+[<a href="https://acme-climate.atlassian.net/wiki/display/ACME/ACME+Home">ACME</a>] 
 [<a href="http://www.antlr.org">ANTLR</a>] 
-[<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/latest-cf-conventions-document-1">CF</a>] 
+[<a href="http://cfconventions.org/1.6.html">CF</a>] 
 [<a href="https://wiki.earthdata.nasa.gov/display/ESDSWG/Dataset+Interoperability+Working+Group">DIWG</a>] 
 [<a href="http://www.gnu.org/software/gsl">GSL</a>]
 [<a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a>] 
@@ -68,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.4 last updated on <!--#flastmod file="VERSION"-->
+Current NCO version is 4.4.5 last updated on <!--#flastmod file="VERSION"-->
 </h2>
 
 <table border=0 width=100%>
@@ -80,15 +82,15 @@ Current NCO version is 4.4.4 last updated on <!--#flastmod file="VERSION"-->
 <li><a href="#Contribute">Contributing</a></li>
 <li><a href="#prp_sei">NCO→SDO Project</a></li>
 <li><a href="#Publications">Publications</a></li>
-<li><a href="#Version">Version Summary</a></li>
+<li><a href="#Highlights">Release Highlights</a></li>
 <li><a href="#Binaries">Binaries</a></li>
 <li><a href="#RTFM">Documentation</a></li>
 <li><a href="#FAQ">FAQ</a></li>
 <li><a href="#README/ChangeLog/TODO">README/ChangeLog/TODO</a></li>
 <li><a href="#Source">Source Code</a></li>
 <li><a href="#bld">Compiling</a></li>
-<li><a href="#NCAR">UCI and NCAR</a></li>
-<li><a href="#BM">Benchmarks</a></li>
+<li><a href="#NCAR">Supercomputers</a></li>
+<!-- <li><a href="#BM">Benchmarks</a></li> -->
 <li><a href="#bug">Known Problems</a></li>
 <li><a href="#People">People</a></li>
 <li><a href="#Contact">Contact us</a></li>
@@ -116,14 +118,14 @@ Keep the size <250×250 pixels.<br>
 -->
 </td>
 
-NCO manipulates data stored in
+The NCO toolkit manipulates and analyzes data stored in
 <a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a>-accessible
 formats, including 
 <a href="http://opendap.org">DAP</a>,
 <a href="http://hdfgroup.org/products/hdf4">HDF4</a>, and 
 <a href="http://hdfgroup.org/HDF5">HDF5</a>.
-It also exploits the geophysical expressivity of many 
-<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/latest-cf-conventions-document-1">CF</a> 
+It exploits the geophysical expressivity of many 
+<a href="http://cfconventions.org/1.6.html">CF</a> 
 (Climate & Forecast) metadata conventions, 
 the flexible description of physical dimensions translated by
 <a href="http://www.unidata.ucar.edu/packages/udunits">UDUnits</a>,
@@ -144,97 +146,37 @@ and
 <!-- http://nco.sf.net#news -->
 <dt><a name="News"></a><a name="news"></a></dt>
 <dt><a name="Milestones"></a><a name="milestones"></a></dt>
-<h2>NCO Milestones</h2>
+<h2>Recent Releases & Milestones</h2>
 
 <ul>
-<li>2014 Jun ??: NCO 4.4.5 (<i>In progress</i>)
-<li>2014 May 29: NCO 4.4.4 (Stability)
-<li>2014 Apr 02: NCO 4.4.3 (Stability)
-<li>2014 Mar 27: NCO <a href="http://dust.ess.uci.edu/smn/smn_nco_gsfc_201403.pdf">Talk</a> at NASA GSFC, Greenbelt, Maryland</li>
-<li>2014 Mar 25: NCO <a href="http://dust.ess.uci.edu/smn/pst_nco_esds_201403.pdf">Poster</a> for NASA ESDSWG, Greenbelt, Maryland</li>
-<li>2014 Feb 20: NCO 4.4.2 (Stability)
-<li>2014 Jan 29: NCO 4.4.1 (Stability)
-<li>2014 Jan 09: NCO 4.4.0 (Stability)
-<li>2013 Dec 13: NCO <a href="http://dust.ess.uci.edu/smn/smn_nco_agu_201312.pdf">Talk</a> at Fall AGU, San Francisco, California</li>
-<li>2013 Dec 02: NCO 4.3.9 (new operator, <tt>nces</tt>)
-<li>2013 Nov 06: NCO 4.3.8 (<tt>ncatted</tt> groups)
-<li>2013 Oct 17: NCO 4.3.7 (HDF4, XML, <tt>ncrename</tt> groups)
-<li>2013 Oct 02: NCO <a href="http://dust.ess.uci.edu/smn/pst_nco_esds_201310.pdf">Poster</a> for NASA ESDSWG, Greenbelt, Maryland</li>
-<li>2013 Sep 27: NCO 4.3.6 (<tt>--dbl</tt> default, <tt>ncdismember</tt>)
-<li>2013 Sep 20: NCO 4.3.5 (<tt>nces</tt>, <tt>ncra</tt>, <tt>ncrcat</tt> groups)
-<li>2013 Aug 01: NCO 4.3.4 (<tt>ncpdq</tt> bugfix, HDF unpacking)
-<li>2013 Jul 24: NCO 4.3.3 (<tt>ncrename</tt>, <tt>ncwa</tt> groups, CDL, XML)
-<li>2013 Jul 05: NCO 4.3.2 (<tt>ncflint</tt>, <tt>ncpdq</tt> groups)</li>
+<li>2014 Sep ??: 4.4.6 (<i>In progress</i>)
+<li>2014 Aug 26: 4.4.5
+<li>2014 Jul 01: NASA ACCESS 2013 <a href="#prp_axs">project</a> commences</li>
+<li>2014 May 29: 4.4.4 (Stability)
+<li>2014 Apr 02: 4.4.3 (Stability)
+<li>2014 Mar 27: <a href="http://dust.ess.uci.edu/smn/smn_nco_gsfc_201403.pdf">Talk</a> at NASA GSFC, Greenbelt, Maryland</li>
+<li>2014 Mar 25: <a href="http://dust.ess.uci.edu/smn/pst_nco_esds_201403.pdf">Poster</a> for NASA ESDSWG, Greenbelt, Maryland</li>
+<li>2014 Feb 20: 4.4.2 (Stability)
+<li>2014 Jan 29: 4.4.1 (Stability)
+<li>2014 Jan 09: 4.4.0 (Stability)
+<li>2013 Dec 13: <a href="http://dust.ess.uci.edu/smn/smn_nco_agu_201312.pdf">Talk</a> at Fall AGU, San Francisco, California</li>
+<li>2013 Dec 02: 4.3.9 (new operator, <tt>nces</tt>)
+<li>2013 Nov 06: 4.3.8 (<tt>ncatted</tt> groups)
+<li>2013 Oct 17: 4.3.7 (HDF4, XML, <tt>ncrename</tt> groups)
+<li>2013 Oct 02: <a href="http://dust.ess.uci.edu/smn/pst_nco_esds_201310.pdf">Poster</a> for NASA ESDSWG, Greenbelt, Maryland</li>
+<li>2013 Sep 27: 4.3.6 (<tt>--dbl</tt> default, <tt>ncdismember</tt>)
+<li>2013 Sep 20: 4.3.5 (<tt>nces</tt>, <tt>ncra</tt>, <tt>ncrcat</tt> groups)
+<li>2013 Aug 01: 4.3.4 (<tt>ncpdq</tt> bugfix, HDF unpacking)
+<li>2013 Jul 24: 4.3.3 (<tt>ncrename</tt>, <tt>ncwa</tt> groups, CDL, XML)
+<li>2013 Jul 05: 4.3.2 (<tt>ncflint</tt>, <tt>ncpdq</tt> groups)</li>
 <li>2013 Jun 03: Submitted NASA ACCESS 2013 <a href="http://dust.ess.uci.edu/prp/prp_axs/prp_axs.pdf">proposal</a></li>
-<li>2013 May 01: NCO 4.3.1 (Group broadcasting)</li>
-<li>2013 Mar 28: NCO 4.3.0 (<tt>ncbo</tt> groups)</li>
-<li>2013 Mar 19: NCO 4.2.6</li>
-<li>2013 Jan 28: NCO 4.2.5</li>
-<li>2013 Jan 21: NCO 4.2.4</li>
-<li>2012 Dec 05: NCO <a href="http://dust.ess.uci.edu/smn/smn_nco_agu_201212.pdf">Talk</a> at Fall AGU, San Francisco, California</li>
-<li>2012 Nov 28: NCO <a href="http://dust.ess.uci.edu/smn/pst_nco_esds_201211.pdf">Poster</a> at NASA ESDSWG, Annapolis, Maryland</li>
-<li>2012 Nov 13: NCO 4.2.3 (GPE)</li>
-<li>2012 Oct 29: NCO 4.2.2 (<tt>ncks, ncecat</tt> Groups)</li>
-<li>2012 Aug 02: NCO 4.2.1 (RAM disks)</li>
-<li>2012 Jun 12: NCO 4.2.0 (Windows support)</li>
-<li>2012 Apr 23: Received funding for NASA ACCESS 2011 <a href="#prp_access">project</a></li>
-<li>2012 Mar 29: NCO 4.1.0 (MD5 support, MM3)</li>
-<li>2012 Feb 13: NCO 4.0.9</li>
-<li>2011 Jun 03: Submitted NASA ACCESS 2011 <a href="http://dust.ess.uci.edu/prp/prp_access/prp_access.pdf">proposal</a></li>
-<li>2011 Apr 28: NCO 4.0.8 (HPSS support, NOFILL workaround, <i>upgrade recommended</i>)</li>
-<li>2011 Feb 21: NCO 4.0.7 (<i>upgrade recommended</i>)</li>
-<li>2011 Jan 15: NCO 4.0.6</li>
-<li>2010 Oct 13: NCO 4.0.5</li>
-<li>2010 Sep 24: NCO 4.0.4 (chunking everywhere)</li>
-<li>2010 Sep 02: NCO 4.0.3</li>
-<li>2010 Jun 27: NCO 4.0.2</li>
-<li>2010 Apr 05: NCO 4.0.1</li>
-<li>2010 Jan 05: NCO 4.0.0 (bilinear interpolation, calendar attributes)</li>
-<li>2009 Jul 15: NCO 3.9.9 (chunking, re-basing, GSL stats/interp)</li>
-<li>2009 Apr 29: NCO 3.9.8 (GSL RNG/PDF functions)</li>
-<li>2009 Mar 18: NCO 3.9.7</li>
-<li>2009 Jan 22: NCO 3.9.6 (GSL special functions) (<i>upgrade highly recommended</i>)</li>
-<li>2008 Sep 24: <tt>ncap2</tt> <a href="http://nco.sf.net/nco.html#ncap2">documentation</a></li>
-<li>2008 Aug 31: <a href="http://www.nsf.gov">NSF</a> funding ends</a></li>
-<li>2008 Aug 08: NCO <a href="http://nco.wiki.sf.net">Wiki</a>!</li>
-<li>2008 May 22: SWAMP <a href="http://dust.ess.uci.edu/ppr/smn_WZJ08_ccgrid_200805.pdf">Talk</a> at CCGRID08 in Lyon, France</li>
-<li>2008 May 11: NCO 3.9.5</li>
-<li>2008 Apr 28: NCO <a href="http://dust.ess.uci.edu/ppr/ppr_Zen08.pdf">overview</a> paper in EMS</li>
-<li>2008 Mar 04: NCO 3.9.4</li>
-<li>2007 Dec 10: SWAMP <a href="http://dust.ess.uci.edu/ppr/pst_WZJ074.pdf">Poster</a> at Fall AGU, San Francisco, California</li>
-<li>2007 Dec 07: NCO 3.9.3 (SWAMP!)</li>
-<li>2007 Dec 04: NCO <a href="http://dust.ess.uci.edu/ppr/ppr_ZeM07.pdf">scaling paper</a> in IJHPCA</li>
-<li>2007 Aug 29: NCO 3.9.2 (<tt>_FillValue</tt>s)</li>
-<li>2007 Aug 27: <a href="http://swamp.googlecode.com">SWAMP site</a> spins-off from NCO</li>
-<li>2007 Jun 29: NCO 3.9.1 (netCDF4 deflation)</li>
-<li>2007 May 26: NCO 3.9.0 (netCDF4 atomic types)</li>
-<li>2007 May 02: SWAMP <a href="http://dust.ess.uci.edu/smn/smn_WZJ07_gpc_200705.pdf">Talk</a> at GPC, Paris, France</li> 
-<li>2007 Apr 20: NCO 3.2.0</li>
-<li>2007 Mar 29: NCO 3.1.9 x86_64 RPMs</li>
-<li>2007 Mar 10: NCO 3.1.9 (i386/x86_64 debs and i386 RPMs)</li>
-<li>2007 Feb 22: SWAMP <a href="http://dust.ess.uci.edu/smn/smn_WZJ07_opendap_200702.pdf">Talk</a> at OPeNDAP Developer's Workshop, Boulder, Colorado</li>
-<li>2007 Jan 15: <a href="http://dust.ess.uci.edu/smn/smn_nco_ams_200701.pdf">Talk</a> and <a href="http://dust.ess.uci.edu/ppr/abs_xtn_ZeW07.pdf">Extended Abstract</a> on NCO Scaling at AMS IIPS, San Antonio, Texas</li>
-<li>2007 Jan 09: <a href="http://dust.ess.uci.edu/ppr/pst_ZMW06.pdf">Poster</a> on NCO Scaling at Fall AGU, San Francisco, California</li>
-<li>2006 Dec 09: <a href="http://dust.ess.uci.edu/ppr/pst_WZJ06.pdf">Poster</a> on SWAMP at Fall AGU, San Francisco, California</li>
-<li>2006 Dec 06: NCO 3.1.8</li>
-<li>2006 Nov 11: NCO 3.1.7</li>
-<li>2006 Sep 18: NCO 3.1.6</li>
-<li>2006 Aug 29: NCO 3.1.5</li>
-<li>2006 Jun 07: NCO 3.1.4</li>
-<li>2006 May 30: NCO 3.1.3</li>
-<li>2006 Apr 21: NCO 3.1.2</li>
-<li>2006 Jan 30: NCO 3.1.1</li>
-<li>2005 Dec 02: NCO 3.1.0 (MPI!)</li>
-<li>2005 Oct 28: NCO 3.0.3</li>
-<li>2005 Oct 17: <a href="#BM">NCO parallel benchmarks</a></li>
-<li>2005 Aug 22: NCO 3.0.2</li>
-<li>2005 Jun 10: NCO 3.0.1</li>
-<li>2005 Mar 24: NCO 3.0.0</li>
-<li>2004 Sep 07: NCO 2.9.9 (<tt>ncpdq</tt> packs data quietly)</li>
-<li>2004 Sep 01: Funding for NSF <a href="#prp_sei">SEI Project</a> begins</li>
-<li>2004 Aug 07: NCO 2.9.8 (<a href="./nco.html#ncpdq"><tt>ncpdq</tt></a> re-orders dimensions)</li>
-<li>2004 Mar 04: Submit NSF <a href="http://dust.ess.uci.edu/prp/prp_sei/prp_sei.pdf">SEI proposal</a></li>
-<li><a href="./nco_news.shtml">Ancient NCO News & Announcements</a></li>
+<li>2013 May 01: 4.3.1 (Group broadcasting)</li>
+<li>2013 Mar 28: 4.3.0 (<tt>ncbo</tt> groups)</li>
+<li>2013 Mar 19: 4.2.6</li>
+<li>2013 Jan 28: 4.2.5</li>
+<li>2013 Jan 21: 4.2.4</li>
+<li><a href="./milestones_old.shtml">Milestones from 2003–2012 (versions 2.8.4–4.2.3)</a></li>
+<li><a href="./nco_news.shtml">News and Announcements from 1998–2003 (version 1.1.0–2.8.3) and earlier</a></li>
 </ul>
 <hr></p>
 
@@ -243,21 +185,48 @@ and
 <h2>What is NCO?</h2>
 <p>The netCDF Operators (NCO) comprise a dozen standalone,
 command-line programs that take 
-<a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a> or
-<a href="http://hdfgroup.org">HDF</a> 
-files as input, then operate (e.g., derive new data, average, print,
-hyperslab, manipulate metadata) and output the results to screen or 
-files in text, binary, or netCDF formats.
-NCO aids manipulation and analysis of gridded scientific data.  
+<a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a>,
+<a href="http://hdfgroup.org">HDF</a>, and/or
+<a href="http://opendap.org">DAP</a>
+files as input, then operate (e.g., derive new data, compute
+statistics, print, hyperslab, manipulate metadata) and output the
+results to screen or files in text, binary, or netCDF formats.
+NCO aids analysis of gridded scientific data.  
 The shell-command style of NCO allows users to manipulate and analyze
-files interactively, or with simple scripts that avoid some overhead
-(and power) of higher level programming environments.  
-The <a href="./nco.html">NCO User's Guide</a> illustrates their use 
-with examples of climate data analysis:
+files interactively, or with expressive scripts that avoid some
+overhead of higher-level programming environments.  
+</p>
+
+<p>
+Traditional geoscience data analysis requires users to work with
+numerous flat (data in one level or namespace) files. 
+In that paradigm instruments or models produce, and then repositories
+archive and distribute, and then researchers request and analyze,
+collections of flat files.
+NCO works well with that paradigm, yet it also embodies the necessary
+algorithms to transition geoscience data analysis from relying solely
+on traditional (or “flat”) datasets to allowing newer
+hierarchical (or “nested”) datasets.  
+</p>
+
+<p>
+The next logical step is to support and enable combining all
+datastreams that meet user-specified criteria into a 
+single or small number of files that hold <i>all</i> the
+science-relevant data organized in hierarchical structures.
+NCO (and no other software to our knowledge) can do this now.
+We call the resulting data storage, distribution, and analysis
+paradigm Group-Oriented Data Analysis and Distribution 
+(<a href="http://nco.sf.net/nco.html#godad">GODAD</a>).
+GODAD lets the scientific question organize the data, not the
+<i>ad hoc</i> granularity of all relevant datasets.
+The <a href="./nco.html">User Guide</a> illustrates 
+<a href="http://nco.sf.net/nco.html#godad">GODAD</a> 
+techniques for climate data analysis: 
 <ul>
 <li><a href="./nco.html#ncap2"><tt>ncap2</tt></a> netCDF Arithmetic Processor (<a href="./nco.html#xmp_ncap">examples</a>)</li>
 <li><a href="./nco.html#ncatted"><tt>ncatted</tt></a> netCDF ATTribute EDitor (<a href="./nco.html#xmp_ncatted">examples</a>)</li>
-<li><a href="./nco.html#ncbo"><tt>ncbo</tt></a> netCDF Binary Operator (includes <tt>ncadd</tt>, <tt>ncsubtract</tt>, <tt>ncmultiply</tt>, <tt>ncdivide</tt>) (<a href="./nco.html#xmp_ncbo">examples</a>)</li>
+<li><a href="./nco.html#ncbo"><tt>ncbo</tt></a> netCDF Binary Operator (addition, multiplication...) (<a href="./nco.html#xmp_ncbo">examples</a>)</li>
 <li><a href="./nco.html#nces"><tt>nces</tt></a> netCDF Ensemble Statistics (<a href="./nco.html#xmp_nces">examples</a>)</li>
 <li><a href="./nco.html#ncecat"><tt>ncecat</tt></a> netCDF Ensemble conCATenator (<a href="./nco.html#xmp_ncecat">examples</a>)</li>
 <li><a href="./nco.html#ncflint"><tt>ncflint</tt></a> netCDF FiLe INTerpolator (<a href="./nco.html#xmp_ncflint">examples</a>)</li>
@@ -272,9 +241,9 @@ with examples of climate data analysis:
 <p>
 Note that the <a href="./nco.html#averagers">“averagers”</a> 
 (<tt>ncra</tt> and <tt>ncwa</tt>) are misnamed because they perform
-many non-linear operations as well, e.g., total, minimum, maximum, RMS.
+many non-linear statistics as well, e.g., total, minimum, RMS.
 Moreover, <tt>ncap2</tt> implements a powerful domain language which
-handles arbitrarily complex operations.
+handles arbitrarily complex algebra, calculus, and statistics (using GSL).
 The operators are as general as 
 <a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a>
 itself: there are no restrictions on the contents of input file(s).
@@ -284,30 +253,58 @@ NCO is designed to be used both interactively and with large batch jobs.
 The default operator behavior is often sufficient for everyday needs, 
 and there are numerous command line (i.e., run-time) options, for
 special cases.
-NCO works well and is used on most modern operating systems.
 </p>
 
 <p><hr width="100%"></p>
 
 <!-- http://nco.sf.net#Contribute -->
 <dt><a name="Contribute"></a></dt>
-<h2>How to Contribute</h2>
+<h2>How to Contribute: Volunteer, Endorse, or Donate</h2>
 <p>In March, 2000, NCO became an Open Source project hosted by
 <a href="http://sf.net">SourceForge.net</a>.
 This facilitates collaboration, code contributions, and support.
-There is a <a href="./TODO">TODO list</a> about 200 items long! 
+There is a <a href="./TODO">TODO list</a> hundreds of items long! 
 No matter what your programming background there is a task you can help with. 
 From re-organizing the TODO list itself, to improving this cheesy
 webpage, to documentation, to designing and implementing new features
 and interfaces, we need your help!   
-The <a href="http://sf.net/projects/nco">NCO project homepage</a>
+The <a href="http://sf.net/projects/nco">project homepage</a>
 contains mailing lists, discussion forums, and instructions to make
 contributing to NCO easy. 
 
-<p>As of June, 2003, you may easily donate your hard-earned money to NCO.
-Send your donation to NCO developers as a reward for good behavior, 
-or as an incentive to tackle more <a href="./TODO"><tt>TODO</tt></a>
-items. 
+<dt><a name="Endorsements"></a></dt> <!-- http://nco.sf.net#Endorsements -->
+<dt><a name="endorsement"></a></dt> <!-- http://nco.sf.net#endorsement -->
+<dt><a name="ndr"></a></dt> <!-- http://nco.sf.net#ndr -->
+<dt><a name="Endorsement"></a></dt> <!-- http://nco.sf.net#Endorsement -->
+<dt><a name="endorse"></a></dt> <!-- http://nco.sf.net#endorse -->
+<p>Many users feel unable to volunteer their time.
+An equally effective contribution in the long-run would be your 
+<a href="#ndr">endorsement</a>, which may make the difference 
+between a declined and an accepted proposal.
+An endorsement can be a few sentences that describes how NCO benefits your work or research.
+E-mail your endorsement to
+<a href="mailto:surname at uci.edu">Charlie “my surname is zender” Zender</a>
+with Subject: “NCO Proposal Endorsement”. 
+This information is useful advocating for more NCO support.
+“What future proposals?” you ask, “Aren't you already funded?”
+Yes, in 2012 NASA funded us to implement netCDF4 groups and HDF support,
+and in 2014 NASA funded us to improve SLD handling.
+These funds are/were primarily for development and maintainance of
+specific features. 
+To realize our grander ambition, i.e., to shift geoscience data
+analysis from a flat- to a hierarchical-paradigm
+(<a href="http://nco.sf.net/nco.html#godad">GODAD</a>), 
+will require a sustained effort and software ecosystem that
+understands and implement hierarchical dataset concepts.
+And it's hard to sell a federal agency on the wisdom of investing in a paradigm shift!
+Other more prosaic tasks that need work are, for example,
+I/O parallelization (!!!), user-defined and non-atomic types, more CF conventions, 
+cloud-services, JSON back-end, and user-defined <tt>ncap2</tt> functions.
+If you send an endorsement, please include (at least) your Name, Title, and Institutional affiliation.</p>
+
+Lastly, as of June, 2003, if you're more strapped for time than money
+and want to contribute something back, consider a monetary donation.
+This may incentivize us to tackle your favorite <a href="./TODO"><tt>TODO</tt></a> items. 
 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
 <input type="hidden" name="cmd" value="_xclick">
 <input type="hidden" name="business" value="zender at uci.edu">
@@ -321,88 +318,105 @@ items.
 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 20120301: US$144.55. Thank you, donors!</dt>
+<dt>Donations received between 20030624 and 20140615: US$144.55. Thank you, donors!</dt>
 <dt>NCO features “incentivized” by these donations: More emoticons in the documentation :)</dt>
 <hr></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 -->
+<h2>NASA ACCESS 2013 Project</h2>
+<img src="nasa.png" height=180 width=180 align=right>
+<p>
+The National Aeronautics and Space Administration (NASA) Cooperative
+Agreement <a href="NNX14AH55A">NNX14AH55A</a>
+funds our
+<a href="http://dust.ess.uci.edu/prp/prp_axs/prp_axs.pdf">project</a>,
+“Easy Access to and Analysis of NASA and Model Swath-like Data”
+from 20140701–20160630 as part of the 
+Advancing Collaborative Connections for Earth System Science 
+(<a href="http://science.nasa.gov/earth-science/earth-science-data/access">ACCESS</a>)
+program. 
+This URL,
+<a href="http://nco.sf.net#prp_axs"><tt>http://nco.sf.net#prp_axs</tt></a>,
+points to the most up-to-date information on the ACCESS 2013 project.</p> 
+
+<p>This ACCESS project provides resources to implement support in NCO
+for Swath-like data (SLD), i.e., dataset with non-rectangular and/or
+time-varying spatial grids in which one or more coordinates are multi-dimensional.
+It is often challenging and time-consuming to work with SLD, 
+including all NASA Level 2 satellite-retrieved data, non-rectangular 
+subsets of Level 3 data, and model data (e.g., CMIP5) that are
+increasingly stored on non-rectangular grids.
+Spatially intelligent software tools is 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>  
+
+<p>We are currently recruiting a programmer (aka software engineer) 
+or postdoc based at UCI for at least two years, to accomplish our
+ACCESS objectives.
+As described in the proposal, this person will be responsible for 
+incorporating geospatial features and parallelism into NCO. 
+See the ads for more details.
+(<a href="http://dust.ess.uci.edu/hire/prg_anl_06_adv.pdf">PDF</a>, 
+ <a href="http://dust.ess.uci.edu/hire/prg_anl_06_adv.txt">TXT</a>).
+
 <dt><a name="prp_access"></a></dt> <!-- http://nco.sf.net#prp_access -->
-<h2>NASA ACCESS Project</h2>
+<h2>NASA ACCESS 2011 Project</h2>
 <img src="nasa.png" height=180 width=180 align=right>
 <p>
-The National Aeronautics and Space Administration Cooperative Agreement (CA)
-<a href="fxm 11-ACCESS11-32">NASA 11-ACCESS11-32</a>
+The National Aeronautics and Space Administration (NASA) Cooperative
+Agreement <a href="NNX12AF48A">NNX12AF48A</a>
 funded our
-<a href="http://dust.ess.uci.edu/prp/prp_access/prp_access.pdf">ACCESS Project</a>,
+<a href="http://dust.ess.uci.edu/prp/prp_access/prp_access.pdf">project</a>,
 “Simplifying and accelerating model evaluation by NASA satellite data”
 from 20120208–20140207 as part of the 
-<a href="http://science.nasa.gov/earth-science/earth-science-data/access">Advancing Collaborative Connections for Earth System Science (ACCESS)</a> program.
+Advancing Collaborative Connections for Earth System Science 
+(<a href="http://science.nasa.gov/earth-science/earth-science-data/access">ACCESS</a>)
+program. 
 We appreciate the proposal reviewers for and the staff of the 
-<a href="http://science.nasa.gov/researchers/sara/division-corner/earth-science-division-corner">Earth Science Division (ESD) Research and Analysis (R\&A)</a>
-in the 
-<a href="http://science.nasa.gov/about-us/organization-and-leadership">Science Mission Directorate (SMD)</a>.
+Earth Science Division 
+(<a href="http://science.nasa.gov/researchers/sara/division-corner/earth-science-division-corner">ESD</a>) 
+in the Science Mission Directorate 
+(<a href="http://science.nasa.gov/about-us/organization-and-leadership">SMD</a>)
+Earth Science Data Systems (ESDS) Office.
 NCO development was completely voluntary and without
 institutional support from August, 2008–February, 2012.
 This NASA support dramatically changed the scale and pace of NCO development. 
 This URL,
 <a href="http://nco.sf.net#prp_access"><tt>http://nco.sf.net#prp_access</tt></a>,
-points to the most up-to-date information on the ACCESS proposal.</p> 
+points to the most up-to-date information on the ACCESS 2011 project.</p> 
 
-<p>The ACCESS project provides the human resources to implement support 
+<p>This ACCESS project provided human resources to implement support 
 in NCO for hierarchical group features in netCDF4 files and for NCO to
-process (using wrappers) HDF-EOS files. 
-Groups are a powerful HDF feature that some NASA satellite datasets
-(e.g., HIRDLS) exploit, and that sources of netCDF data (e.g., the
-CMIP5 archive of climate simulations for IPCC AR5) could better
-exploit.  
-By supporting groups in a generic fashion, NCO hopes to remove one of
-the barriers to more widespread adoption of netCDF4 features.</p>
-
-<p>We recruited (i.e., these positions have been filled) two
-personnel, a programmer (aka software engineer) 
+process HDF files. 
+Groups are a powerful HDF feature that many NASA satellite datasets
+exploit, and that sources of netCDF data (e.g., the CMIP5 archive of
+climate simulations for IPCC AR5) could better exploit.  
+By supporting groups in a generic fashion, NCO helps make possible
+more widespread adoption of hierarchical data analysis, aka 
+Group-Oriented Data Analysis and Distribution 
+(<a href="http://nco.sf.net/nco.html#godad">GODAD</a>).</p>  
+
+<p>We recruited two personnel, a programmer (aka software engineer) 
 and a graduate student (scientific specialist) both based at UCI for
 at least two years, to accomplish our ACCESS objectives. 
 As described in the proposal, the responsibilities of positions are
 roughly segregated as follows: 
 The 
 <a href="http://dust.ess.uci.edu/hire/prg_anl_05_adv.pdf">programmer</a> 
-is re-factoring the code-base to support groups, writing wrappers for
-NCO, an improving the build system (e.g., now we have native Windows builds!).
+helped re-factor the code-base to support groups and improved the
+build system so that now we have native Windows builds. 
 The 
 <a href="http://dust.ess.uci.edu/hire/sdn_grd_03_adv.pdf">graduate student researcher</a> 
 is analyzing and intercomparing snow cover and snow albedo datasets
 from NASA MODIS and MISR datasets (in HDF format) and CMIP5
 simulations (in netCDF format).
-Her analysis informs the development of NCO commands and wrappers for
-HDF atasets so that we solve the most important problems real-world
-researchers encounter in evaluating GCMs against NASA data.</p> 
-
-<p>We continue to encourage you to e-mail NCO endorsements to
-<a href="mailto:surname at uci.edu">Charlie “my surname is zender” Zender</a>
-with Subject: “NCO Proposal Endorsement”. 
-An endorsement can be a sentence or a page, describing how NCO
-benefits your work or research.
-The information in your endorsement will be used to create supplementary documents to NSF and NASA for future NCO proposal advocacy.
-“What future proposals?” you ask, “Didn't you just get funded?”
-Yes, we are funded to implement netCDF4 groups and HDF-EOS wrappers in NCO.
-Our ambition is get one more grant funded to fully support netCDF4
-capabilities in NCO.
-For example, user-defined types, multiple record coordinates, and some
-more CF conventions.
-Need I say more? 
-If you send an endorsement, remember to include (at least) your Name, Title, and Institutional affiliation in the body.</p>
+Her analysis informs the development of GODAD so that NCO can solve
+the most important problems real-world researchers encounter in
+evaluating GCMs against satellite data.</p>  
 </ul>
-
-<a href="xmp_cesm.html">Pre-ACCESS CMIP5/MODIS analysis scripts</a>
-<!-- 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/nco/doc/xmp_cesm.html pvicente,nco at web.sf.net:/home/project-web/nco/htdocs
-/usr/bin/scp /home/pvicente/nco/doc/cesm-eg.fig1.png pvicente,nco at web.sf.net:/home/project-web/nco/htdocs
-/usr/bin/scp /home/pvicente/nco/doc/cesm-eg.fig2.png pvicente,nco at web.sf.net:/home/project-web/nco/htdocs
-/usr/bin/scp /home/pvicente/nco/doc/cesm-eg.fig3.png pvicente,nco at web.sf.net:/home/project-web/nco/htdocs
---> 
-
 <hr></p>
 
 <a name="nsf"></a> <!-- http://nco.sf.net#nsf -->
@@ -418,14 +432,17 @@ funded our
 <a href="http://dust.ess.uci.edu/prp/prp_sei/prp_sei.pdf">SEI Project</a>,
 “SEI(GEO): Scientific Data Operators Optimized for Efficient Distributed Interactive and Batch Analysis of Tera-Scale Geophysical Data”
 from 20040901–20080831 as part of the 
-<a href="http://www.cise.nsf.gov/funding/pgm_display.cfm?pub_id=9473&div=iis">Science
-  and Engineering Informatics (SEI)</a> program.
+Science and Engineering Informatics 
+(<a href="http://www.cise.nsf.gov/funding/pgm_display.cfm?pub_id=9473&div=iis">SEI</a>)
+program. 
 We appreciate the proposal reviewers for and staff of the Divisions of
-<a href="http://www.cise.nsf.gov/div/index.cfm?div=iis">Information and Intelligent Systems (IIS)</a>
+Information and Intelligent Systems
+(<a href="http://www.cise.nsf.gov/div/index.cfm?div=iis">IIS</a>) 
 and
-<a href="http://www.cise.nsf.gov/div/index.cfm?div=sci">Shared Cyberinfrastructure (SC)</a>
-in the 
-<a href="http://www.nsf.gov/home/cise">Directorate for Computer and Information Science and Engineering (CISE)</a>.
+Shared Cyberinfrastructure
+(<a href="http://www.cise.nsf.gov/div/index.cfm?div=sci">SC</a>) in the 
+Directorate for Computer and Information Science and Engineering
+(<a href="http://www.nsf.gov/home/cise">CISE</a>).
 Until September 2004, NCO development was completely voluntary and without institutional support.
 This NSF support dramatically changed the scale and pace of NCO development.
 This URL,
@@ -454,36 +471,24 @@ Another graduate student helped us design, implement, and release major
 code changes.</p>
 
 <p>On the institutional and hardware side, this project connected the
-<a href="http://www.ess.uci.edu/esmf">Earth System Modeling Facility</a> (ESMF)
-to the
-<a href="http://www.calit2.net">California Institute for Telecommunications and Information Technology</a> (Cal-IT2)
+Earth System Modeling Facility
+(<a href="http://www.ess.uci.edu/esmf">ESMF</a>) to the
+California Institute for Telecommunications and Information Technology
+(<a href="http://www.calit2.net">Cal-IT2</a>)
 <a href="http://www.optiputer.net">OptIPuter</a> at the
-<a href="http://sdsc.ucsd.edu">San Diego Supercomputer Center</a>.
+San Diego Supercomputer Center
+(<a href="http://sdsc.ucsd.edu">SDSC</a>).
 These supercomputers dedicated a TB of storage each to
 <a href="http://www.opendap.org">OPeNDAP</a>-served climate simulation
 datasets for DDRA.
 After the proof-of-concept NCO DDRA was complete, we attempted a DDRA 
 intercomparison of the internationally distributed
-<a href="http://www.ccsm.ucar.edu/experiments/ccsm3.0">global climate change simulations</a>
-that reside on the 
-<a href="http://www.earthsystemgrid.org">Earth System Grid</a>.
+CMIP3 global climate change simulations that reside on the 
+Earth System Grid
+(<a href="http://www.earthsystemgrid.org">ESG</a>).
 Our techniques tremendously accelerated the analysis of different
 climate prediction scenarios for the same model, and among different
 climate models (see <a href="#pub">publications</a>).</p> 
-
-<p>We encourage you to e-mail NCO endorsements to
-<a href="mailto:surname at uci.edu">Charlie “my surname is zender” Zender</a>
-with Subject: “NCO Proposal Endorsement”. 
-An endorsement can be a sentence or a page, describing how NCO
-benefits your work or research.
-The information in your endorsement will be used to create supplementary documents to NSF and NASA for future NCO proposal advocacy.
-“What future proposals?” you ask, “Didn't you just get funded?”
-Yes, we are funded to optimize and “grid-enable” NCO.
-There are still many desirable and unexplored methods for distributed data analysis
-and reduction (DDRA) that would benefit geosciences.
-For example, have you tried analyzing multiple NASA satellite datasets in HDF5 format?
-Need I say more? 
-If you send an endorsement, remember to include (at least) your Name, Title, and Institutional affiliation in the body.</p>
 </ul>
 <hr></p>
 
@@ -493,9 +498,12 @@ If you send an endorsement, remember to include (at least) your Name, Title, and
 <dt><a name="Publications"></a><a name="pub"></a><a name="pubs"></a></dt>
 <h2>Publications and Presentations</h2>
 <ul>
+<li><!-- Zen14 --> <a name="Zen14"></a> <!--http://www.ess.uci.edu/~zender#Zen14 -->
+Zender, C. S. (2014): <i>Use Hierarchical Storage and Analysis to Exploit Intrinsic Parallelism</i>. Presented to the NASA Goddard Earth Sciences (GES) Data and Information Services Center (DISC), Goddard Space Flight Center, Greenbelt, MD, March 27, 2014.
+<a href="http://dust.ess.uci.edu/smn/smn_nco_gsfc_201403.pdf">PDF</a> (© 2014 by me)</a></li>
 
-<li><!-- ZVW13 --> <a name="ZVW12"></a> <!--http://www.ess.uci.edu/~zender#ZVW13 -->
-Zender, C. S., P. Vicente and W. Wang (2012): <i>Use Hierarchical Storage and Analysis to Exploit Intrinsic Parallelism</i>. Presented at the Fall Meeting of the American Geophysical Union, San Francisco, CA, December 9–13, 2013. <i>Eos Trans. AGU</i>, <b>93</b>(53), Fall Meet. Suppl., Abstract IN52A-06.
+<li><!-- ZVW13 --> <a name="ZVW13"></a> <!--http://www.ess.uci.edu/~zender#ZVW13 -->
+Zender, C. S., P. Vicente and W. Wang (2013): <i>Use Hierarchical Storage and Analysis to Exploit Intrinsic Parallelism</i>. Presented at the Fall Meeting of the American Geophysical Union, San Francisco, CA, December 9–13, 2013. <i>Eos Trans. AGU</i>, <b>93</b>(53), Fall Meet. Suppl., Abstract IN52A-06.
 <a href="http://dust.ess.uci.edu/smn/smn_nco_agu_201312.pdf">PDF</a> (© 2013 by me)</a></li>
 
 <li><!-- ZVW13 --> <a name="ZVW13"></a> <!--http://www.ess.uci.edu/~zender#ZVW13 -->
@@ -612,22 +620,31 @@ San Francisco, CA, December 5–9, 2006.
 </ul>
 <hr></p>
 
-<!-- http://nco.sf.net#vrs -->
-<dt><a name="Version"></a><a name="vrs"></a></dt>
-<h2>Version Summary</h2>
+<!-- http://nco.sf.net#hgh -->
+<dt><a name="Version"></a><a name="hgh"></a></dt>
+<h2>Release Highlights</h2>
 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
 <a name="#Source">with CVS</a>.
 <ul>
-<li><b>NCO 4.4.6</b>: (<i>Future</i>) 
+<li><b>NCO 4.4.7</b>: (<i>Future</i>) 
 extensive hashing?;
 netCDF4 compound types?;
 Optimize diskless files?;</li>
-<li><b>NCO 4.4.5</b>: (<i>In Progress, features completed or being worked on include</i>)
+<li><b>NCO 4.4.6</b>: (<i>In Progress, features completed or being worked on include</i>)
 Chunking <tt>cnk_map=rew</tt>;
-<a href="http://nco.sf.net/nco.html#cnk">Chunking</a> bytes not elements, caching;</li>
+<a href="http://nco.sf.net/nco.html#cnk">Chunking</a> bytes not elements, caching</li>
+<li><b>NCO 4.4.5</b>: (<i>Current Stable Release</i>) 
+DAP on <a href="http://nco.sf.net/nco.html#dap">HTTPS</a>;
+<tt>ancillary_variables</tt> for <a href="http://nco.sf.net/nco.html#ncl">CF</a>;
+<tt>ncks --grp_xtr_var_xcl</tt> <a href="http://nco.sf.net/nco.html#gxvx">subsetting</a>
+Chunking <tt>cnk_plc=r1d</tt>;
+Default chunking policy/map is <tt>xst/xst</tt>;
+Fix <tt>ncpdq</tt> dimension-reversal parsing;
+Chunking while hyperslabbing <a href="#bug_cnk_hyp">bugfix</a>;
+Correctly parse MS Windows volume names like <tt>C:\foo</tt></li>
 <li><b>NCO 4.4.4</b>: (<i>Current Stable Release</i>) 
 netCDF'ize non-compliant element names;
 <tt>-x var</tt> tolerates non-existence;
@@ -716,216 +733,10 @@ Intersection/union <a href="http://nco.sf.net/nco.html#unn">modes</a>;
 <tt>ncrename</tt> global att. handling;
 <tt>nces</tt> <a href="#bug_nces_rec_var">bugfix</a>;
 <tt>ncra</tt> <a href="#bug_ncra_flg_bfr_nrm">bugfix</a></li>
-<li><b>NCO 4.2.3</b>:
-Group Path Editing (GPE);
-<tt>ncecat</tt> <a href="#bug_ncecat_nintap">bugfix</a></li>
-<li><b>NCO 4.2.2</b>: 
-<tt>ncks</tt>, <tt>ncecat</tt> support groups;
-<tt>--hdr_pad</tt> all operators;
-<tt>ncks</tt> prints underscores;
-fixes to <tt>--[mk/fix]_rec_dmn</tt>;
-<tt>ncpdq</tt> fix;
-<tt>ncwa</tt> on Windows;</li>
-<li><b>NCO 4.2.1</b>: 
-<tt>--ram_all</tt> for <a href="http://nco.sf.net/nco.html#diskless">diskless files</a>;
-<tt>--no_tmp_fl</tt> to <a href="http://nco.sf.net/nco.html#no_tmp_fl">bypass</a> temporary files;
-Negative indices for <a href="http://nco.sf.net/nco.html#hyp">hyperslabs</a>;
-<tt>ncpdq</tt> unpacks coordinate variables;
-<tt>ncra/ncrcat</tt> SSC/MRO <a href="http://nco.sf.net/nco.html#ssc">options</a>;
-<tt>ncra/ncrcat</tt> rebase <a href="http://nco.sf.net/nco.html#rbs">bounds</a>;</li>
-<li><b>NCO 4.2.0</b>: 
-<tt>ncecat</tt> "fixes" auxiliary coordinates and bounds;
-<tt>ncks</tt> uses <tt>nc__open</tt>, format <tt>NC_INT</tt> with <tt>%i</tt>;
-<tt>ncra -y ttl</tt> fix;
-<tt>ncrcat</tt> UDUnits fix;
-<tt>ncwa</tt> and <tt>ncap2</tt> limited NaN support;
-Microsoft Visual Studio support;</li>
-<li><b>NCO 4.1.0</b>:
-MD5 digests;
-<tt>ncap2</tt> sorts & maps;
-<tt>ncks</tt> MM3 <a href="#bug_mm3">workaround</a>;
-<tt>ncrename/ncatted</tt> chmods;
-<tt>ncatted</tt> NaN support</li>
-<li><b>NCO 4.0.9</b>: 
-Fix over-zealous <tt>ncap2</tt> packing;
-Fix <tt>nces -y ttl</tt>;
-Fix/improve <tt>ncap2 print, array()</tt>;
-Warn when appending variables of suspicious record length;
-Warn when <tt>NC_MAX_ATTRS</tt> exceeded</li>
-<li><b>NCO 4.0.8</b>: 
-Support <a href="http://nco.sf.net/nco.html#hpss">HPSS</a>;
-Workaround netCDF <tt>NOFILL</tt> <a href="#bug_nofill">bug</a> (<i>upgrade recommended</i>);
-Support CF <tt>bounds</tt>;
-CF <tt>noleap</tt> not <tt>no_leap</tt>;
-Fix <tt>ncatted</tt> overwrite-mode;
-Fix <tt>NC_BYTE</tt> printing</li>
-<li><b>NCO 4.0.7</b>:
-Fix degenerate hyperslab <a href="#bug_hyp_dgn">bug</a> (<i>upgrade recommended</i>)</li>
-<li><b>NCO 4.0.6</b>: 
-<tt>clang</tt>-compliance;
-Fix <tt>ncra</tt> YYYYMMDD-<tt>date</tt> <a href="#bug_ncra_cf_YYYYMMDD_date">bug</a>;
-Extract all associated coordinates;
-Tighten <tt>ncbo</tt> warnings;
-<tt>ncpdq</tt> warns when _FillValue outside packing range</li>
-<li><b>NCO 4.0.5</b>:
-Fix <tt>ncks</tt> <a href="#bug_ncks_nc4_nc4_hyp_fix">hyperslabbing bug</a>;
-Fix <tt>ncra</tt> <a href="#bug_ncra_cf_crd_rec_crd">CF "coordinate" bug</a></li>
-<li><b>NCO 4.0.4</b>:
-Chunking in all operators; preserve deflation; <tt>ncks</tt> print formatting;
-Fix <tt>ncrename</tt> <a href="#bug_ncrename_dot">bug</a>;
-Do not pack coordinate variables</li>
-<li><b>NCO 4.0.3</b>:
-Fix <tt>configure</tt> for ncap2, netCDF4, UDUnits2, netCDF-DAP;
-Fix <tt>ncbo</tt> <a href="#bug_ncbo_rfr">bug</a> under AIX xlC;
-Fix <tt>ncra</tt> <a href="#bug_ncra_date">bug</a> for some CF-compliant dates.</li>
-<li><b>NCO 4.0.2</b>:
-Consistent deflation, chunking with <tt>netCDF4_classic</tt>;
-Fix <tt>ncap2</tt> RAM vars, 1-D arrays;
-Fix <tt>ncatted</tt> appending <tt>NUL</tt>s.</li>
-<li><b>NCO 4.0.1</b>:
-Easily create/remove record dimensions with <tt>ncks --mk_rec_dmn</tt>, <tt>--fix_rec_dmn</tt>;</li>
-<li><b>NCO 4.0.0</b>: 
-Bilinear interpolation, GSL fitting; 
-Chunking improvements;
-Better support CF <tt>calendar</tt> and <tt>coordinate</tt> attributes</li>
-<li><b>NCO 3.9.9</b>:
-netCDF4 chunking and <tt>NC_STRING</tt> support; 
-GSL statistics, interpolation functions;
-UDUnits2 <tt>time-since</tt> support;
-<tt>ncrcat</tt> re-basing</li>
-<li><b>NCO 3.9.8</b>: 
-<tt>ncap2</tt> supports <tt>sort()</tt>, <tt>array()</tt>;
-better DAP/libnetcdf and UDUnits2 builds;
-GSL distribution/RNG functions</li>
-<li><b>NCO 3.9.7</b>:
-Improve GSL-build support;
-<tt>ncap2</tt> threading improvements;
-<tt>ncks --no_dmn_var_nm</tt> printing</li>
-<li><b>NCO 3.9.6</b>: 
-Fix OpenMP MSA <a href="#bug_thr_msa">bug</a> (<i>upgrade highly recommended</i>); 
-Memory management to improve threading;
-<tt>ncatted</tt> workaround for netCDF4 <tt>_FillValue</tt>;
-disable OpenMP with netCDF4/HDF;
-no math on type <tt>NC_CHAR</tt>;
-<tt>ncap2</tt> <a href="http://nco.sf.net/nco.html#ncap2">documentation</a>,
-better missing value propagation,
-<tt>#include</tt> files,
-<a href="http://nco.sf.net/nco.html#gsl">GSL</a> math functions</li>
-<li><b>NCO 3.9.5</b>:
-Multi-slabbing (MSA) and <tt>-X</tt> everywhere;
-<tt>ncecat -M</tt>;
-netCDF4-enabled builds on Cygwin;
-<tt>ncap2</tt> builds on Solaris</li>
-<li><b>NCO 3.9.4</b>: 
-File consanguinity;
-<tt>ncks</tt>: CF auxiliary coords, LZ stats;
-<tt>ncap2</tt>: masks, index arrays, print attributes, OpenMP, <tt>atan2()</tt>, <tt>pow()</tt></li>
-<li><b>NCO 3.9.3</b>: 
-SWAMP release;
-<tt>ncecat -u</tt>;
-<tt>wget</tt> URLs;
-GCC 4.2;
-<tt>ncap2</tt> OpenMP</li>
-<li><b>NCO 3.9.2</b>: 
-<tt>_FillValue</tt> supplants <tt>missing_value</tt>;
-<tt>UDUnits2 support</tt>;
-<tt>ncap2</tt> type-conversion support and printing;
-netCDF4 <tt>configure</tt> fixes;
-Change licenses to GPL3 and FDL1.2</li>
-<li><b>NCO 3.9.1</b>: 
-<a href="http://nco.sf.net/nco.html#deflate">Support</a> lossless netCDF4/HDF deflation;
-Improve Intel compiler support; 
-<tt>ncap2</tt> for/while loops;
-various and sundry build fixes</li>
-<li><b>NCO 3.9.0</b>: 
-<a href="http://nco.sf.net/nco.html#nco4">Support netCDF4</a> types (<tt>ubyte</tt>, <tt>ushort</tt>, <tt>uint</tt>, <tt>int64</tt>, and <tt>uint64</tt>);
-Control <tt>ncks</tt> metadata <a href="http://nco.sf.net/nco.html#prn">copying</a>; 
-Fix <tt>ncbo</tt> packed valued <a href="#bug_ncbo_pck">bug</a> (<i>upgrade recommended</i>); 
-Improve IRIX 6.5 support</li>
-<li><b>NCO 3.2.0</b>: More forgiving exclusion list (<tt>-x -v <i>var_nm</i></tt>) <a href="http://nco.sf.net/nco.html#xcl">handling</a>; Fix <tt>rmssdn</tt> normalization; Support Mac OS X on Intel; Documentation bugfixes</li>
-<li><b>NCO 3.1.9</b>: <tt>ncap2</tt> in RPM packages; Quieter output; AIX <tt>configure</tt> supports <tt>ncap2</tt>; Update to DAP for netCDF 3.6.2; Fix <tt>nc[erw]a</tt> for coordinate min/max/ttl; <tt>ncecat</tt> allows files to differ in record dimension size</li>
-<li><b>NCO 3.1.8</b>: Support <tt>_FillValue</tt> with compile-time switch; Debian package synchronized, includes <tt>ncap2</tt></li>
-<li><b>NCO 3.1.7</b>: <tt>ncap2</tt> “double-parsing”, array initialization, supercedes <tt>ncap</tt></li>
-<li><b>NCO 3.1.6</b>: Support <a href="http://nco.sf.net/nco.html#srd">stride</a> in all hyperslabbing operators; change more WARNINGs to INFOs</li>
-<li><b>NCO 3.1.5</b>: New <tt>ncap2</tt> array and hyperslab features; change some WARNINGs to INFOs, add Pathscale and update PGI and Intel compiler support</li>
-<li><b>NCO 3.1.4</b>: Fix <tt>ncbo</tt> memory problem; report timer results</li>
-<li><b>NCO 3.1.3</b>: <tt>ncap2</tt> automatically <a href="http://nco.sf.net/nco.html#att_prp">propagates</a> attributes to new/derived variables; NCO handles record variables with zero records; <a href="http://nco.sf.net/nco.html#cnv_CF_crd">support</a> CF <tt>coordinates</tt> convention; <tt>ncwa -b</tt> <a href="http://nco.sf.net/nco.html#ncwa">retains</a> degenerate dimensions; build fixes for Cray T3E, Solaris, Cygwin.</li>
-<li><b>NCO 3.1.2</b>: <tt>ncap2</tt> control structures (conditionals, loops, etc.); keep non-processed data <a href="bug_pack_fix">packed</a> in output file; binary operators <tt>ncbo</tt> and <tt>ncflint</tt> work when only one variable has <tt>missing_value</tt> attribute; change <tt>ncra</tt> and <tt>nces</tt> to always average coordinate variables</li>
-<li><b>NCO 3.1.1</b>: NCO builds (again) with C++ compilers; ncap2 development code; server-side extensions</li>
-<li><b>NCO 3.1.0</b>: MPI operators are bug-free; fix <t>./configure</t> for MPI and netCDF4; MRV algorithm speeds up <tt>ncwa</tt> 5—10 times; <tt>ncap</tt> random number generator <tt>rnd_nbr()</tt></li>
-<li><b>NCO 3.0.3</b>: Eliminate all critical read regions (accelerates all SMP operators); builds with netCDF4 alpha; read <t>NETCDF4_CLASSIC</t> (i.e., HDF) files automatically; write <t>NETCDF4</t> files <a href="http://nco.sf.net/nco.html#netcdf4">on request</a>; <a href="http://nco.sf.net#BM">benchmark results</a> quantify parallelism.</li>
-<li><b>NCO 3.0.2</b>: Fewer critical read regions; all known memory leaks plugged; better Intel compiler support; <tt>SFTP</tt> protocol support; FTP protocol supports <tt>.netrc</tt>-based passwords; better model grid-property-awareness (e.g., <tt>lat_bnds</tt>); <tt>ncatted</tt> <tt>ncks</tt>, <tt>ncrename</tt> support metadata header padding with <tt>--hdr</tt>; <tt>ncbo</tt> supports heterogeneous variable ordering; <tt>ncatted</tt> bugfix</li>
-  <li><b>NCO 3.0.1</b>: benchmarks; <tt>ncks</tt> printing tweaks; memory cleanup; <tt>ncap</tt> double-parse speedup and <a href="bug_ncap_cmt">exponentiation bugfix</a>; thread operators by default</li>
-  <li><b>NCO 3.0.0</b>: New <tt>ncks -P</tt> print switch; <tt>ncap</tt> optimizations; <tt>-Z</tt> option supports 64-bit offsets (requires netCDF 3.6); NEC SX build improvements; support GCC 3.4.X; <tt>nco_put_vara()</tt> overloads in <tt>libnco_c++</tt></li>
-<li><b>NCO 2.9.9</b>: <tt>ncpdq</tt> packs/unpacks entire files; <tt>ncbo</tt> is threaded</li>
-<li><b>NCO 2.9.8</b>: <a href="./nco.html#ncpdq"><tt>ncpdq</tt></a> released; <tt>ncwa --msk_sng</tt> consolidated mask switch; C99 compiler required</li>
-<li><b>NCO 2.9.7</b>: Read input file lists from <tt>stdin</tt>; write <tt>nco_input_file_list</tt> attributes; add <tt>nco_put_att<int,short,long></tt> functions to libnco_c++; large file support (LFS); write <tt>nco_openmp_thread_number</tt> attribute</li>
-<li><b>NCO 2.9.6</b>: Support <tt>-o fl_out</tt> syntax; 64-bit ABI for x86_64; <a href="http://www.debian.org">Debian</a> builds libnco_c++</li>
-<li><b>NCO 2.9.5</b>: <tt>ncflint</tt> handles <tt>missing_value</tt> data better, is commutative when weights are equal</li>
-<li><b>NCO 2.9.4</b>: <tt>ncecat</tt> works on pure scalar files; change to <tt>cvs.sf.net</tt>; AIX GCC builds</li>
-<li><b>NCO 2.9.3</b>: <tt>ncra</tt> and <tt>nces</tt> now <a name="bug_mss_val_zro_ncra">work correctly</a> when <tt>missing_value</tt> equals zero or any intermediate sums</li>
-<li><b>NCO 2.9.2</b>: <tt>ncap</tt> <tt>S/V</tt>, <tt>S%V</tt>, and <tt>S^V</tt> <a href="#bug_ncap_cmt">operations fixed</a> (<tt>S</tt> = scalar, <tt>V</tt> = variable)</li>
-<li><b>NCO 2.9.1</b>: <tt>ncwa</tt> works again on packed <tt>NC_FLOAT</tt> data (<a href="#bug_pck_ncwa">broke when?</a>)</li>
-<li><b>NCO 2.9.0</b>: Complete <tt>ncap</tt> modulo operator (<tt>V%S</tt>) and generic exponentiation (<tt>V^S</tt>), scalar divided by variable (<tt>S/V</tt>); workaround stack memory problem with GCC extensions; fix <tt>make check</tt></li>
-<li><b>NCO 2.8.8</b>: <tt>--enable-[optimize/debug]-custom</tt> options for GCC work again (broke in 2.8.6)</li>
-<li><b>NCO 2.8.7</b>: <tt>ncap</tt> packing works again (<a href="#bug_pck">broke in 2.8.4</a>); Cygwin builds work again</li>
-<li><b>NCO 2.8.6</b>: AIX and IRIX builds work again; custom GCC builds with <tt>-Werror</tt></li>
-<li><b>NCO 2.8.5</b>: Solaris <tt>make install</tt> works; <tt>ncap</tt> changes attribute values correctly; <a href="#bld_DODS">Support DODS 3.4+, deprecate 3.3-</a>; add <tt>--enable-[optimize/debug]-custom</tt> options to <tt>./configure</tt></li>
-<li><b>NCO 2.8.4</b>: Index-based hyperslabs work again (<a href="#bug_idx_hyp">broke in 2.7.3</a>, <i>upgrade highly recommended</i>); <tt>ncap</tt> peak memory usage reduced still more; support for AMD Opteron x86_64 architecture</li>
-<li><b>NCO 2.8.3</b>: Fix big <tt>ncap</tt> memory leak; fix regressions; remove scary packing warnings</li>
-<li><b>NCO 2.8.2</b>: <tt>ncbo</tt> handles distinct <tt>missing_value</tt>s correctly; improve error diagnostics</li>
-<li><b>NCO 2.8.1</b>: <a href="./nco.html#rx">“Variable wildcarding”</a>—extended regular expressions in <tt>-v var,...</tt> lists—support in all operators</li>
-<li><b>NCO 2.8.0</b>: New “binary” operator <a href="./nco.html#ncbo"><tt>ncbo</tt></a>, obsoletes <tt>ncdiff</tt>; <a href="http://www.debian.org">Debian</a> integration</li>
-<li><b>NCO 2.7.4</b>: Autotools build support for AIX; fix UDUnits confusion with floating point hyperslab specifications</li>
-<li><b>NCO 2.7.3</b>: Support <a href="http://www.unidata.ucar.edu/packages/udunits">UDUnits</a> (and some <a href="http://www.cgd.ucar.edu/cms/eaton/cf-metadata/CF-working.html">CF</a>) conventions, e.g., <tt>ncks -d wvl "1 picometer","1 furlong" -d time,"2001-03-19 06:00:0.0","2001-03-19 18:00:0.0"</tt></li>
-<li><b>NCO 2.7.2</b>: Printing (<tt>ncks -H</tt>) plays well with multi-slabbing</li>
-<li><b>NCO 2.7.1</b>: (Packaged) Fallback to B. Sittler's <tt>getopt()</tt> for long option support; store fixed, packed variables correctly with <tt>ncap</tt>.</li>
-<li><b>NCO 2.7.0</b>: Support for GNU/POSIX long options; <tt>ncks</tt> introduces <i>multi-slabbing</i> (= multiple hyperslabs) capability</li>
-<li><b>NCO 2.6.6</b>: Fix and document <tt>ncrename</tt> attribute renaming; add type conversion functions to <tt>ncap</tt></li>
-<li><b>NCO 2.6.5</b>: Cray, Sun build improvements</li>
-<li><b>NCO 2.6.4</b>: Mac OS X, NEC, SGI build improvements</li>
-<li><b>NCO 2.6.3</b>: Mac OS X builds work seamlessly; documentation fixed</li>
-<li><b>NCO 2.6.2</b>: Major improvements in autotools support; <tt>ncap</tt> supports user-defined dimensions</li>
-<li><b>NCO 2.6.1</b>: Minor fix to unpacking support</li>
-<li><b>NCO 2.6.0</b>: All arithmetic operators (<tt>ncap</tt>, <tt>ncdiff</tt>, <tt>nces</tt>, <tt>ncflint</tt>, <tt>ncra</tt>) support unpacking</li>
-<li><b>NCO 2.5.6</b>: Handle <tt>missing_value</tt> correctly for integer variables in <tt>ncra</tt>, merge <tt>autoconf</tt> build</li>
-<li><b>NCO 2.5.5</b>: Handle files without existing global “<tt>History</tt>” attribute correctly</li>
-<li><b>NCO 2.5.4</b>: Add support NEC-SX support; update Cray support; small build changes</li>
-<li><b>NCO 2.5.3</b>: Fix native builds under MS Windows with Cygwin <tt>ncap</tt>; hint to <tt>ncwa</tt></li>
-<li><b>NCO 2.5.2</b>: Add math functions to <tt>ncap</tt>; hint to <tt>ncwa</tt></li>
-<li><b>NCO 2.5.1</b>: <tt>ncatted</tt> deletes all attributes of <tt>att_var</tt> when <tt>att_nm</tt> not specified</li>
-<li><b>NCO 2.5.0</b>: man(1) pages from <a href="http://www.debian.org">Debian</a> distribution</li>
-<li><b>NCO 2.4.6</b>: Free (speech) sort routines</li>
-<li><b>NCO 2.4.5</b>: Arithmetic speedups</li>
-<li><b>NCO 2.4.4</b>: 64-bit AIX builds</li>
-<li><b>NCO 2.4.3</b>: Handle non-standard “History” attributes</li>
-<li><b>NCO 2.4.2</b>: <tt>ncap</tt> supports nesting files with <tt>#include</tt></li>
-<li><b>NCO 2.4.0</b>: <tt>ncks</tt> supports writing native binary output with <tt>-b</tt> switch</li>
-<li><b>NCO 2.3.1</b>: <tt>ncap</tt> builds on all Unices</li>
-<li><b>NCO 2.3.0</b>: Library redesign</li>
-<li><b>NCO 2.2.4</b>: <tt>ncap</tt> fully supports packing and unpacking variables</li>
-<li><b>NCO 2.2.3</b>: <tt>ncap</tt> supports manually unpacking variables stored with <tt>scale_factor</tt> and <tt>add_offset</tt></li>
-<li><b>NCO 2.2.2</b>: fix rare <tt>ncwa</tt> crash with weights</li>
-<li><b>NCO 2.2.1</b>: fix <tt>ncap</tt> divide and <tt>fmodf</tt> bugs</li>
-<li><b>NCO 2.2.0</b>: (RPM available) <a href="./nco_news.shtml#20020203">20020203</a>: <tt>ncap</tt> public debut (has division error, please upgrade)</li>
-<li><b>NCO 2.1.3</b>: <tt>ncap</tt> implements LHS casting</li>
-<li><b>NCO 2.1.2</b>: C++ API to netcdf; libnco_c++ open for business</li>
-<li><b>NCO 2.1.0</b>: <tt>ncap</tt> full lexer/parser operational</li>
-<li><b>NCO 2.0.3</b>: small fixes to 2.0.0 (e.g., <tt>ncks</tt> printing)</li>
-<li><b>NCO 2.0.2</b>: Add packing/unpacking capabilities based on <tt>scale_factor</tt> and <tt>add_offset</tt> convention</li>
-<li><b>NCO 2.0.1</b>: Add user-configurable multi-threaded capability to arithmetic-intensive operators <tt>ncwa</tt>, <tt>nces</tt>, and <tt>ncra</tt></li>
-<li><b>NCO 2.0.0</b>: (RPM available) <a href="./nco_news.shtml#20010507">20010507</a>: Switched all internal calls to netCDF 3.x API</li>
-<li><b>NCO 1.2.2</b>: <a href="./nco_news.shtml#20010211">20010211</a>: Allow weights with
-<tt>ncwa</tt> in min/max/ttl operations; easier building with HDF4. 
-<tt>ncrename</tt> can now work on specific variables rather than whole file.
-<tt>ncks</tt> has <tt>-q</tt> option for cleaner printing</li>
-<li><b>NCO 1.2.1</b>: <a href="./nco_news.shtml#20000828">20000828</a>: Added type-conversion of integers to floating point before arithmetic; fixed broken <tt>-v</tt> option</li>
-<li><b>NCO 1.2</b>: <a href="./nco_news.shtml#20000730">20000730</a>: Added non-linear operations to <tt>ncra/nces</tt> and <tt>ncwa</tt>: min,max,total,rms,rmssdn,sqrt. Added <a href="http://opendap.org">DODS</a> compliance.</li>
-<li><b>NCO 1.1.48</b>: <a href="./nco_news.shtml#20000515">20000515</a>: Potentially serious bugfix to <tt>ncdiff</tt>, recommend upgrade</li>
-<li><b>NCO 1.1.47</b>: <a href="./nco_news.shtml#20000510">20000510</a>: Improved <tt>ncra</tt> and <tt>ncrcat</tt> to allow lazier specifications of input files</li> 
+<li><a href="./highlights_old.shtml">Release Highlights from 2000–2012 (versions 1.1.47–4.2.3)</a></li>
 </ul>
 <hr></p>
-<!-- End http://nco.sf.net#vrs -->
+<!-- End http://nco.sf.net#hgh -->
 
 <!-- http://nco.sf.net#bnr -->
 <!-- http://nco.sf.net#binaries -->
@@ -935,17 +746,13 @@ Improve IRIX 6.5 support</li>
 <p>NCO developers are too short-handed to provide pre-built binary
 executables for all platforms.
 Our source tarballs are always up-to-date, and work on our
-development systems 
-(<a href="http://www.ubuntu.com">Ubuntu</a>-flavored <a
-href="http://www.debian.org">Debian</a> GNU/Linux for x86_64) 
-and in our high-end scientific computing environments
-(<a href="http://www.ibm.com/servers/aix">AIX 5</a> for Power4/5/6/7).
+development systems (Fedora, Ubuntu, and Mac OS X).
 We also attempt to provide (theoretically) platform-independent sources
-in the most common UNIX packaging formats (Debian and RPM).
-Below are links to these and to packages created by volunteers who
-port NCO to other platforms.   
-Volunteers willing to perform regular regression testing and porting
-of NCO to other platforms are welcome.  
+in the most common Linux package formats (Debian and RPM).
+Below are links to these and to packages for other platforms created
+by volunteers.
+Anyone willing to perform regular regression testing and porting 
+of NCO to other platforms is welcome.  
 Previous versions of these binaries are still available by searching
 the directory index <a href="src">here</a>.
 
@@ -962,7 +769,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.4</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.5</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.
@@ -970,12 +777,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.4-1_i386.deb</tt>’):</dt>
-<li><a href="src/nco_4.4.4-1_amd64.deb">nco_4.4.4-1_amd64.deb</a> (<!--#fsize file="src/nco_4.4.4-1_amd64.deb"-->): Executables AMD64-compatible (last updated <!--#flastmod file="src/nco_4.4.4-1_amd64.deb"-->)</li>
-<li><a href="src/nco_4.4.4-1.dsc">nco_4.4.4-1.dsc</a> (<!--#fsize file="src/nco_4.4.4-1.dsc"-->): Description (last updated <!--#flastmod file="src/nco_4.4.4-1.dsc"-->)</li>
-<li><a href="src/nco_4.4.4-1_amd64.changes">nco_4.4.4-1_amd64.changes</a> (<!--#fsize file="src/nco_4.4.4-1_amd64.changes"-->): Changes since last deb package (last updated <!--#flastmod file="src/nco_4.4.4-1_amd64.changes"-->)</li>
-<li><a href="src/nco_4.4.4.orig.tar.gz">nco_4.4.4.orig.tar.gz</a> (<!--#fsize file="src/nco_4.4.4.orig.tar.gz"-->): Upstream Source (last updated <!--#flastmod file="src/nco_4.4.4.orig.tar.gz"-->)</li>
-<li><a href="src/nco_4.4.4-1.diff.gz">nco_4.4.4-1.diff.gz</a> (<!--#fsize file="src/nco_4.4.4-1_amd64.changes"-->): Debian patch to upstream source (last updated <!--#flastmod file="src/nco_4.4.4-1_amd64.changes"-->)</li>
+<dt>Debian package for most recent NCO release (install with, e.g., ‘<tt>dpkg --install nco_4.4.5-1_i386.deb</tt>’):</dt>
+<li><a href="src/nco_4.4.5-1_amd64.deb">nco_4.4.5-1_amd64.deb</a> (<!--#fsize file="src/nco_4.4.5-1_amd64.deb"-->): Executables AMD64-compatible (last updated <!--#flastmod file="src/nco_4.4.5-1_amd64.deb"-->)</li>
+<li><a href="src/nco_4.4.5-1.dsc">nco_4.4.5-1.dsc</a> (<!--#fsize file="src/nco_4.4.5-1.dsc"-->): Description (last updated <!--#flastmod file="src/nco_4.4.5-1.dsc"-->)</li>
+<li><a href="src/nco_4.4.5-1_amd64.changes">nco_4.4.5-1_amd64.changes</a> (<!--#fsize file="src/nco_4.4.5-1_amd64.changes"-->): Changes since last deb package (last updated <!--#flastmod file="src/nco_4.4.5-1_amd64.changes"-->)</li>
+<li><a href="src/nco_4.4.5.orig.tar.gz">nco_4.4.5.orig.tar.gz</a> (<!--#fsize file="src/nco_4.4.5.orig.tar.gz"-->): Upstream Source (last updated <!--#flastmod file="src/nco_4.4.5.orig.tar.gz"-->)</li>
+<li><a href="src/nco_4.4.5-1.diff.gz">nco_4.4.5-1.diff.gz</a> (<!--#fsize file="src/nco_4.4.5-1_amd64.changes"-->): Debian patch to upstream source (last updated <!--#flastmod file="src/nco_4.4.5-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. 
@@ -986,7 +793,7 @@ NCO for Debian over the years.
 <a name="centos"></a><a name="cnt"></a><a name="rhel"></a> <!-- http://nco.sf.net#centos --> <!-- http://nco.sf.net#cnt --> <!-- http://nco.sf.net#rhel -->
 <h3><a href="http://fedora.redhat.com">Fedora</a>, RedHat Enterprise Linux (<a href="http://www.redhat.com/rhel">RHEL</a>), and Community ENTerprise Operating System (<a href="http://www.centos.org">CentOS</a>) GNU/Linux</h3>
 <ul>
-<dt>The <a href="https://admin.fedoraproject.org/pkgdb/packages/name/nco">Fedora NCO</a> RPMs are usually up-to-date so that ‘<tt>yum install nco</tt>’ will install a recent version. 
+<dt>The <a href="https://admin.fedoraproject.org/pkgdb/package/nco">Fedora NCO</a> RPMs are usually up-to-date so that ‘<tt>yum install nco</tt>’ will install a recent version. 
 A comprehensive list of pre-built RPMs for many OS's is <a href="http://rpmfind.net/linux/rpm2html/search.php?query=nco">here</a>.
 <li><a href="ftp://rpmfind.net/linux/fedora/linux/development/rawhide/x86_64/os/Packages/n/nco-4.3.2-1.fc20.x86_64.rpm">nco-4.3.2-1.fc20.x86_64.rpm</a>: Executables for x86_64/Fedora Core 20-compatible environments</li></dt>
 <dt>If not, try our own most recent (we stopped building RPMs many years ago and are looking for a volunteer to do this instead) self-built NCO RPMs (install with, e.g., ‘<tt>yum install nco-3.9.5-1.fc7.i386.rpm</tt>’):
@@ -1019,23 +826,21 @@ Thanks to Gavin Burris and Kyle Wilcox for documenting build procedures for RHEL
 <h3><a href="http://www.apple.com/macosx/">Mac OS X/Darwin</a></h3>
 <ul>
 <!-- 
-/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.4.macosx.10.9.tar.gz pvicente,nco at web.sf.net:/home/project-web/nco/htdocs/src
+# 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.5.macosx.10.9.tar.gz nc*;scp ${DATA}/nco-4.4.5.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.2.macosx.10.9.tar.gz">nco-4.4.2.macosx.10.9.tar.gz</a> (<!--#fsize file="src/nco-4.4.2.macosx.10.9.tar.gz"-->): Executables MacOSX 10.9-compatible (last updated <!--#flastmod file="src/nco-4.4.2.macosx.10.9.tar.gz"-->). 
-(NB: These executables require the <a href="http://trac.macosforge.org/projects/macports/wiki">MacPorts</a> dependencies for <a href="http://svn.macports.org/repository/macports/trunk/dports/science/nco">NCO</a>). Maintained by NCO Project.</li>
+<li><a href="src/nco-4.4.5.macosx.10.9.tar.gz">nco-4.4.5.macosx.10.9.tar.gz</a> (<!--#fsize file="src/nco-4.4.5.macosx.10.9.tar.gz"-->): Executables MacOSX 10.9-compatible (last updated <!--#flastmod file="src/nco-4.4.5.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>
 <li><a href="src/nco-4.0.3_x86_10.6.dmg">nco-4.0.3_x86_10.6.dmg</a> (<!--#fsize file="src/nco-4.0.3_x86_10.6.dmg"-->): For Mac OS 10.6 (last updated <!--#flastmod file="src/nco-4.0.3_x86_10.6.dmg"-->). Maintained by Chad Cantwell.</li>
 <li><a href="src/nco-4.0.7_x86_10.6.dmg">nco-4.0.7_x86_10.6.dmg</a> (<!--#fsize file="src/nco-4.0.7_x86_10.6.dmg"-->): For Mac OS 10.6 (last updated <!--#flastmod file="src/nco-4.0.7_x86_10.6.dmg"-->). Maintained by Chad Cantwell.</li>
 <li><a href="http://fink.sf.net">Fink</a> packages for <a href="http://fink.sf.net/pdb/package.php/nco">NCO</a>: Currently NCO 3.9.5. Maintained by Alexander Hansen.</li> 
-<li><a href="http://trac.macosforge.org/projects/macports/wiki">MacPorts</a> infrastructure for <a href="http://svn.macports.org/repository/macports/trunk/dports/science/nco">NCO</a>: <a href="http://svn.macports.org/repository/macports/trunk/dports/science/nco">Portfile</a> for NCO 3.9.9. Maintained by Takeshi Enomoto.</li>
+<li><a href="http://trac.macosforge.org/projects/macports/wiki">MacPorts</a> infrastructure for <a href="http://svn.macports.org/repository/macports/trunk/dports/science/nco">NCO</a>: <a href="http://svn.macports.org/repository/macports/trunk/dports/science/nco">Portfile</a> for NCO 4.4.4. Maintained by Takeshi Enomoto.</li>
 </ul>
 
-<a name="python"></a> <!-- http://nco.sf.net#python -->
-<a name="NCOpy"></a> <!-- http://nco.sf.net#NCOpy -->
-<a name="pyt"></a> <!-- http://nco.sf.net#pyt -->
-<h3>Python Bindings <a href="https://github.com/jhamman/nco-bindings">Source</a> and <a href="http://www.hydro.washington.edu/~jhamman/hydro-logic/blog/2014/01/29/NCOpy">Documentation</a>
-
 <a name="visual"></a> <!-- http://nco.sf.net#visual -->
 <a name="mvs"></a> <!-- http://nco.sf.net#mvs -->
 <a name="windows"></a> <!-- http://nco.sf.net#windows -->
@@ -1048,24 +853,25 @@ 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.4.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.4.win32.cygwin.tar.gz pvicente,nco at web.sf.net:/home/project-web/nco/htdocs/src
-/usr/bin/scp /home/pvicente/windows_setup/nco-4.4.4.macosx.10.9.tar.gz pvicente,nco at web.sf.net:/home/project-web/nco/htdocs/src
+/usr/bin/scp /home/pvicente/windows_setup/nco-4.4.5.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.2.windows.mvs.exe">nco-4.4.2.windows.mvs.exe</a> (<!--#fsize file="src/nco-4.4.2.windows.mvs.exe"-->) : Windows Self-Extracting Installer (last updated <!--#flastmod file="src/nco-4.4.2.windows.mvs.exe"-->). Maintained by NCO Project.</li>
+<li><a href="src/nco-4.4.4.windows.mvs.exe">nco-4.4.4.windows.mvs.exe</a> (<!--#fsize file="src/nco-4.4.4.windows.mvs.exe"-->) : Windows Self-Extracting Installer (last updated <!--#flastmod file="src/nco-4.4.4.windows.mvs.exe"-->). Maintained by Pedro Vicente.</li>
 </ul>
 
 <a name="cygwin"></a> <!-- http://nco.sf.net#cygwin -->
 <h3><a href="http://www.microsoft.com">Microsoft</a> Windows</a> (running <a href="http://www.cygwin.org">Cygwin</a> environment, compiled with GNU-toolchain)</h3>
 <ul>
-<li><a href="src/nco-4.4.2.win32.cygwin.tar.gz">nco-4.4.2.win32.cygwin.tar.gz</a> (<!--#fsize file="src/nco-4.4.2.win32.cygwin.tar.gz"-->): Executables Cygwin-compatible (last updated <!--#flastmod file="src/nco-4.4.2.win32.cygwin.tar.gz"-->). Maintained by NCO Project.</li>
-First install <tt>curl</tt> (in the "Web" category of Cygwin setup),
-and point the environment variable <tt>UDUNITS2_XML_PATH</tt> to the 
-<tt>udunits2.xml</tt> file, e.g., with
-<tt>export UDUNITS2_XML_PATH='/usr/local/share/udunits/udunits2.xml'</tt>. 
-Thanks to Mark Hadfield for creating Cygwin tarballs.
-Thanks to Cygnus Solutions and RedHat Inc. for developing and supporting Cygwin over the years. 
+<li><a href="src/nco-4.4.4.win32.cygwin.tar.gz">nco-4.4.4.win32.cygwin.tar.gz</a> (<!--#fsize file="src/nco-4.4.4.win32.cygwin.tar.gz"-->): Executables Cygwin-compatible (last updated <!--#flastmod file="src/nco-4.4.4.win32.cygwin.tar.gz"-->). Maintained by NCO Project.</li>
 </ul>
+First install <tt>curl</tt> (in the "Web" category of Cygwin setup), and point the environment variable <tt>UDUNITS2_XML_PATH</tt> to the <tt>udunits2.xml</tt> file, e.g., with <tt>export UDUNITS2_XML_PATH='/usr/local/share/udunits/udunits2.xml'</tt>. 
+Thanks to Mark Hadfield and Pedro Vicente for creating Cygwin tarballs.
+Thanks to Cygnus Solutions and RedHat Inc. for developing and supporting Cygwin over the years. 
+
+<a name="python"></a> <!-- http://nco.sf.net#python -->
+<a name="NCOpy"></a> <!-- http://nco.sf.net#NCOpy -->
+<a name="pyt"></a> <!-- http://nco.sf.net#pyt -->
+<h3><a href="http://www.python.org">Python</a> Bindings <a href="https://github.com/jhamman/nco-bindings">Source</a> and <a href="http://www.hydro.washington.edu/~jhamman/hydro-logic/blog/2014/01/29/NCOpy">Documentation</a>
 
 <hr></p>
 <!-- End http://nco.sf.net#bnr -->
@@ -1143,15 +949,13 @@ Otherwise, you may be on your own.</li>
 <a name="NCAR"></a> <!-- http://nco.sf.net#NCAR -->
 <a name="ncar"></a> <!-- http://nco.sf.net#ncar -->
 <li><i>Does NCAR support NCO?</i>
-The NCAR CISL Technical Consulting Group (TCG) supports NCO like other
-community software packages such as <tt>lapack</tt>. 
-No other NCAR division has coordinated NCO support.
+The NCAR CISL Consulting Service Group (CSG) supports NCO like other
+software packages. 
 The NCAR CISL-suported executables are made available through
-“modules” so try <tt>module add nco</tt>.
-If you notice problems with the NCO installation on CISL machines,
-or if you would benefit from a more recent release or patch, then
-inform the relevant system administrators, e.g.,
-<a href="mailto:consult1 at ncar.ucar.edu">NCAR User Support</a>.
+“modules” so try <tt>module load nco</tt>. 
+If you notice problems with the NCO installation on CISL machines, or
+if you would benefit from a more recent release or patch, then ask
+<a href="http://www2.cisl.ucar.edu/docs/help">cislhelp</a>. 
 If you have a comment, suggestion, or bug report, then contact the
 developers as described below. 
 </li>
@@ -1168,11 +972,11 @@ This list is for NCO-related announcements, not for questions.
 <!-- http://nco.sf.net#README -->
 <dt><a name="README/ChangeLog/TODO"></a></dt>
 <h2>README/ChangeLog/TODO</h2>
-<p>Files containing useful information about the current NCO distribution:
+<p>Files containing useful information about the current distribution:
 <ul>
-<li><a href="./README"><tt>README</tt></a> Platforms and software required by NCO</li>
-<li><a href="./ChangeLog"><tt>ChangeLog</tt></a> History of NCO changes</li>
-<li><a href="./TODO"><tt>TODO</tt></a> An unordered list of features and fixes we plan for NCO</li> 
+<li><a href="./README"><tt>README</tt></a> Platforms and software required</li>
+<li><a href="./ChangeLog"><tt>ChangeLog</tt></a> Change History since 1997 (version 0.9)</li>
+<li><a href="./TODO"><tt>TODO</tt></a> An unordered list of features and fixes we plan</li> 
 </ul>
 <hr></p>
 <!-- End http://nco.sf.net#README -->
@@ -1181,14 +985,14 @@ This list is for NCO-related announcements, not for questions.
 <dt><a name="Source"></a><a name="src"></a></dt>
 <h2>Get NCO Source Code</h2>
 
-The best way to acquire NCO sources is with <a href="http://www.cvshome.org">CVS</a>.
+The best way to acquire the source is with <a href="http://www.cvshome.org">CVS</a>.
 The second best way is to download the source as a compressed tarfile:
 <ul>
 <li>
-<a href="src/nco-4.4.4.tar.gz">nco-4.4.4.tar.gz</a> 
-(<!--#fsize file="src/nco-4.4.4.tar.gz"--> compressed tar-file)<br>
-<!--#exec cmd="openssl dgst -md5 src/nco-4.4.4.tar.gz"--><br>
-<!--#exec cmd="openssl dgst -sha1 src/nco-4.4.4.tar.gz"--> 
+<a href="src/nco-4.4.5.tar.gz">nco-4.4.5.tar.gz</a> 
+(<!--#fsize file="src/nco-4.4.5.tar.gz"--> compressed tar-file)<br>
+<!--#exec cmd="openssl dgst -md5 src/nco-4.4.5.tar.gz"--><br>
+<!--#exec cmd="openssl dgst -sha1 src/nco-4.4.5.tar.gz"--> 
 </li>
 </ul>
 
@@ -1211,19 +1015,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.4</tt> (which is
-tagged as <tt>nco-4_4_4</tt> due to CVS rules) into local directory
-<tt>nco-4.4.4</tt>:   
-<p><tt>cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -r nco-4_4_4 -d nco-4.4.4 nco</tt></p>
+This command retrieves and places NCO version <tt>4.4.5</tt> (which is
+tagged as <tt>nco-4_4_5</tt> due to CVS rules) into local directory
+<tt>nco-4.4.5</tt>:   
+<p><tt>cvs -z3 -d:pserver:anonymous at nco.cvs.sf.net:/cvsroot/nco co -r nco-4_4_5 -d nco-4.4.5 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_4</tt>) and the development version is that the
+(e.g., <tt>nco-4_4_5</tt>) and the development version is that the
 tagged release operators will print a valid version number (e.g.,
-<tt>4.4.4</tt>) when asked to do so with the <tt>-r</tt> flag
+<tt>4.4.5</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.
@@ -1237,13 +1041,10 @@ over versions should largely disappear.
 Some developers find this documentation helpful, as it can clarify code and data 
 relationships in the code.</p>
 <ul>
-<li><a href="http://sand.ess.uci.edu/nco/doxygen/main/files.html">
-Source documentation for NCO and NetCDF4(alpha13)</a></li>
+<li><a href="http://dust.ess.uci.edu/nco/doxygen/main/files.html">
+Source documentation for NCO and netCDF4(alpha13)</a></li>
 </ul>
-<p>Please be aware that the documentation may be slightly inaccurate and 
-infrequently updated. Comments and suggestions are certainly welcomed on the 
- <a href="http://sf.net/projects/nco/forums/forum/9829">forums</a>.
-</p>
+<p>The Doxygen documentation is infrequently (i.e., never since Daniel left) updated.</p>
 </ul>
 <hr></p>
 <!-- End http://nco.sf.net#src -->
@@ -1262,22 +1063,22 @@ we recommend that you first try the pre-built binaries for your
 system, e.g.,  
 <tt>
 <dt>sudo aptitude install nco # Debian-based systems like Debian, Mint, Ubuntu</dt>
-<dt>sudo yum-install nco      # RPM-based systems like CentOS, Fedora, RHEL</dt>
+<dt>sudo yum-install nco      # RPM-based systems like CentOS, Fedora, openSUSE, RHEL</dt>
+<dt>sudo port install nco     # MacPorts (after installing MacPorts on Mac OS X)</dt>
 </tt>
-If the pre-built executables do not satisfy you, or are out-of-date
-and you want the latest, greatest NCO features, then the recommended
-first steps to build (i.e., compile, for the most part) NCO from
-source code are to install 
+If pre-built executables do not satisfy you (e.g., are out-of-date)
+and you want the latest, greatest features, then the first steps to
+build (i.e., compile, for the most part) NCO from source code are to
+install the prerequisites:
 <a href="http://www.antlr.org">ANTLR 2.7.x</a> (not version 3.x or 4.x!) (required for <tt>ncap2</tt>), 
 <a href="http://www.gnu.org/software/gsl">GSL</a> (desirable for <tt>ncap2</tt>), 
 <a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a> (absolutely required), 
 <a href="http://opendap.org">OPeNDAP</a> (enables network transparency), and
-<a href="http://www.unidata.ucar.edu/packages/udunits">UDUnits</a> (allows dimensional unit transformations) 
-before building NCO.
+<a href="http://www.unidata.ucar.edu/packages/udunits">UDUnits</a> (allows dimensional unit transformations).
 If possible, install this software stack from pre-built binaries 
 (commands to do so on Debian and RPM systems are given just below).
-Failing that (e.g., you lack root access or are on a non-package
-system such as AIX), build these all with the same compiler (and switches).
+Failing that (e.g., lack of root access, or systems without packages
+such as AIX), build these all with the same compiler and switches. 
 Recent versions of netCDF automatically build OPeNDAP and UDUnits.
 NCO is mostly written in C99, and although you <i>may</i> mix and
 match compilers, this is often difficult in practice and is not recommended.
@@ -1336,7 +1137,7 @@ For Mac OS X with MacPorts:
 <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.4</dt>
+<dt>cd nco-4.4.5</dt>
 <dt>./configure --prefix=/usr/local</dt>
 <dt>make</dt>
 <dt>sudo make install</dt>
@@ -1358,287 +1159,8 @@ For more sophisticated build/install options, see the next section.
 <dt><a name="Makefile"></a></dt> <!-- http://nco.sf.net#Makefile -->
 <dt><a name="hnt"></a></dt> <!-- http://nco.sf.net#hnt -->
 <dt><a name="bld_hnt"></a></dt> <!-- http://nco.sf.net#bld_hnt -->
-<h2>Hints to Build-from-Source:</h2>
-
-<ul><b>Generic Build Hints:</b>
-
-<a name="bld_cnf"></a> <!-- http://nco.sf.net#bld_cnf -->
-<li><i>The two NCO build mechanisms:</i>
-NCO has two build mechanisms: (1) GNU configure and 
-(2)  a custom Makefile (<tt>nco/bld/Makefile</tt>)
-designed for hand-editing.
-Try the traditional GNU <tt>configure</tt> method first, i.e.,
-<tt>./configure;make;make check;make install</tt>. 
-This method involves no hand-editing of makefiles, but trouble-free
-builds with it are less common than we would like.  
-The file <tt>nco/configure.eg</tt> contains a table which describes the 
-success you can expect building NCO with the <tt>configure</tt>
-mechanism. 
-If the simple <tt>configure</tt> recipe above does not work, savvy
-users may find it straightforward to modify and use the following, more
-advanced <tt>configure</tt> recipe:
-<tt>
-<pre class="example">
-# gcc/g++ Sysadmins use/modify this to install/update NCO in /usr/local, based on netCDF4 also in /usr/local (works on givre 20100727):
-export GNU_TRP=`~/nco/autobld/config.guess`
-cd ~/nco;/bin/rm -f *.${GNU_TRP}.foo;make distclean
-CPPFLAGS='-DHAVE_NETCDF4_H -I/usr/local/include' LDFLAGS='-L/usr/local/lib' ./configure --prefix='/usr/local' --enable-ncap2 --enable-netcdf4 > 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
-make check >> nco.make.${GNU_TRP}.foo 2>&1
-sudo make install >> nco.make.${GNU_TRP}.foo 2>&1
-</pre>
-</tt>
-This is the recipe that the developers use to test <tt>configure</tt>
-on their machines.
-Please contribute patches required to get the <tt>configure</tt> 
-mechanism working properly for NCO on your platform.
-The <a href="http://dust.ess.uci.edu/nco/rgr">regressions archive</a>
-contains gory details of successful (and failed) builds for many platforms.  
-Plaform-specific build hints (CentOS, Mac OS X, RHEL, Solaris)
-are listed <a href="#bld_plt_spc">below</a>.
-<br>
-
-All platforms continue to work fine with the <tt>nco/bld/Makefile</tt>
-method: 
-<tt>
-<pre class="example">
-export MY_BIN_DIR='/home/username/bin' # Executables installed here
-export MY_OBJ_DIR='/home/username/obj' # Object files placed here
-export MY_LIB_DIR='/home/username/lib' # Libraries built here
-mkdir -p ${MY_BIN_DIR} ${MY_OBJ_DIR} ${MY_LIB_DIR}
-cd ~/nco/bld
-make dir
-make all
-make ncap2
-make test
-</pre>
-</tt> 
-Disadvantages are that <tt>nco/bld/Makefile</tt> (1) Usually requires
-editing to fix your platforms paths; (2) Does not support shared
-libraries; and (3) Requires a degree from Hogwarts to understand.
-</li>
-
-<!-- http://nco.sf.net#dpl_sym -->
-<a name="dpl_sym"></a>
-<li><i>Duplicate symbols errors:</i>
-When building NCO with the netCDF4 library and headers, some compilers
-emit errors due to duplicate symbol definitions.
-This arises because of the complexity of the build system.
-Essentially, NCO has to define some netCDF API prototypes itself
-to handle the corner case where the netCDF4 distribution is used 
-to build netCDF3 libraries. 
-We have tried to address this issue using <tt>autoconf/configure</tt>
-but it is beyond our abilities.
-The fix is to manually tell NCO that the netCDF4 header
-file <tt>netcdf.h</tt> is in fact being used so that NCO should
-not attempt to define these prototypes.
-Do this, e.g., with <tt>CPPFLAGS='-DHAVE_NETCDF4_H'</tt> or
-<tt>USR_TKN='-DHAVE_NETCDF4_H'</tt> if you use <tt>configure</tt>.
-</li>
-
-<!-- http://nco.sf.net#bld_chn -->
-<a name="bld_chn"></a>
-<li><i>Build Chain Version Incompatibilities:</i>
-NCO requires GNU <tt>make</tt> version ≥ 3.78.1 to support target-specific variable values in <tt>bld/Makefile</tt>.
-NCO most often fails to build because <tt>ncap</tt> fails to build.
-Two of the most common reasons that <tt>ncap</tt> fails to build are
-(1) GNU <tt>bison</tt> is out-of-date (upgrade <tt>bison</tt>)
-and (2) <tt>--enable-optimize-*</tt> is specified to 
-<tt>configure</tt> (do not specify it).<br>
-</li>
-
-<!-- http://nco.sf.net#bld_c99 -->
-<a name="bld_c99"></a>
-<li><i>C99-compliance & old compilers:</i>
-NCO versions ≥ 2.9.8 require the compiler to
-support the 1999 ISO C-Standard called C99.
-NCO takes advantage of two C99 features, restricted pointers and
-designated initializers.
-To build NCO versions ≥ 2.9.8 without a C99-compliant
-compiler, simply undefine the <tt>restrict</tt> type qualifier 
-before compiling NCO.
-Do this, e.g., with <tt>CPPFLAGS='-Drestrict='</tt>.
-More details on C99 compatibility are in the header file
-<a href="http://nco.cvs.sf.net/nco/nco/src/nco/nco.h"><tt>nco/src/nco/nco.h</tt></a>.<br>
-</li>
-
-<!-- http://nco.sf.net#bld_netcdf -->
-<a name="bld_netcdf"></a>
-<li><i>Old netCDF libraries:</i>
-NCO versions ≥ 3.0.0 require netCDF versions
-≥ 3.6 to take advantage of the new 64-bit offset file type.  
-The library <i>and</i> include directories (e.g., <tt>/usr/lib</tt> and
-<tt>/usr/include</tt>, respectively) for netCDF version ≥ 3.6
-must be on the path searched by the compiler, and must precede the
-locations of any older netCDF installations.
-To build NCO versions ≥ 3.0.0 with older netCDF versions
-< 3.6, simply define the pre-processor token
-<tt>NC_64BIT_OFFSET</tt> to <tt>0</tt> before compiling NCO.
-Do this, e.g., with <tt>CPPFLAGS='-DNC_64BIT_OFFSET=0'</tt> or
-<tt>USR_TKN='-DNC_64BIT_OFFSET=0'</tt> if you use <tt>configure</tt> 
-or <tt>bld/Makefile</tt>, respectively.
-Users attempting to build NCO with OPeNDAP versions ≤ 3.6.x may
-need this workaround because OPeNDAP did not fully support netCDF
-version 3.6.x functionality until OPeNDAP versions ≥ 3.7.0.
-(The indicator for this problem is a build error like 
-<tt>"nco_fl_utl.c", line 30.20: 1506-045 (S) Undeclared identifier
-NC_64BIT_OFFSET</tt>.)  
-All modern NCO versions require netCDF versions ≥ 3.5.0 to
-support <tt>nc_type NC_NAT</tt> in NCO source code.  
-NCO versions 3.9.0 and greater (May, 2007) require netCDF versions
-≥ 3.6.0 to resolve the <tt>nc_inq_format()</tt> function.
-</li>
-
-<!-- http://nco.sf.net#bld_ncap -->
-<a name="bld_ncap"></a>
-<li><i><tt>ncap</tt> build hints:</i>
-<tt>ncap</tt> is a sophisticated and somewhat fragile program.
-<tt>ncap</tt> requires <tt>flex</tt> to build correctly.
-AT&T <tt>lex</tt> will not work because it does not understand
-<tt>EOF</tt> rules used in <tt>ncap_lex.l</tt>.
-<tt>bison</tt> version 1.29 (the default version on early
-Mac OS X) is buggy and does not parse <tt>ncap_yacc.y</tt>
-correctly; previous and later <tt>bison</tt>'s work
-correctly. 
-<tt>bison</tt> version 1.25 will not build <tt>ncap</tt> on Solaris.
-Please upgrade <tt>bison</tt> to the latest version (e.g., 1.875+)
-before reporting <tt>ncap</tt> build problems.
-If <tt>ncap</tt> keeps you from building NCO, and you do not need
-<tt>ncap</tt>, configure with <tt>--disable-ncap</tt> (and know that
-<tt>ncwa</tt> will fail to build as a result). 
-</li>
-
-<!-- http://nco.sf.net#bld_GSL -->
-<a name="bld_gsl"></a><a name="bld_GSL"></a>
-<li><i>Build Hints with GSL:</i><br>
-NCO versions 3.9.6— support automatic building and linking
-for <a href="http://www.gnu.org/software/gsl">GSL</a>
-versions 1.4—. 
-Earlier GSL versions are not supported.<br>
-</li>
-
-<!-- http://nco.sf.net#bld_DAP -->
-<a name="bld_dap"></a><a name="bld_DAP"></a><a name="bld_DODS"></a><a name="bld_OPeNDAP"></a>
-<li><i>Build Hints with DAP:</i><br>
-NCO versions 3.9.9— support automatic building and linking
-for DAP supplied from <a href="http://www.unidata.ucar.edu/software/netcdf/docs/netcdf/DAP-Support.html">libnetcdf</a> versions 4.1-beta1 and beyond<br>
-NCO versions 3.1.3— support automatic building and linking
-for <a href="http://opendap.org">OPeNDAP</a> versions 3.6.x and
-GCC versions 4.0+.<br>
-NCO versions 3.0.1—3.1.2 support automatic building and linking
-for <a href="http://opendap.org">OPeNDAP</a> versions 3.5.x and
-GCC versions 3.4+.<br>
-NCO versions 2.8.5—3.0.0 support automatic building and linking
-for <a href="http://opendap.org">OPeNDAP</a> versions 3.4.x and
-GCC versions 3.3+.<br>
-NCO versions ?.?.?—2.8.4 support automatic building and linking
-for <a href="http://opendap.org">DODS</a> versions 3.2.x and
-GCC versions 3.2+.<br> 
-No other version combinations are supported.
-</li>
-
-<!-- http://nco.sf.net#bld_nco_c++ -->
-<a name="bld_nco_c++"></a>
-<li><i><tt>libnco_c++</tt> build hints:</i>
-<tt>libnco_c++</tt> requires a good C++ compiler to build correctly.
-Few people need <tt>libnco_c++</tt>, so the workaround is not to build it.
-This is done by configuring with <tt>--disable-nco_cplusplus</tt>.
-</li>
-
-</ul>
-
-<!-- http://nco.sf.net#bld_plt_spc -->
-<a name="bld_plt_spc"></a>
-<ul><b>Platform-Specific Build Hints:</b>
-<!-- http://nco.sf.net#bld_aix -->
-<a name="bld_aix"></a>
-<li><i>AIX build hints:</i>
-NCO versions 2.8.7+ do not build with autotools under AIX when
-<tt>--enable-optimize-*</tt> is selected.
-The workaround is to not use <tt>--enable-optimize-*</tt>.
-NCO versions 2.9.7+ do not build shared libraries with AIX xlc
-compilers because of silly AIX library dependencies activated
-by OpenMP directives.
-The workaround is to configure with <tt>--disable-shared</tt>.
-</li>
-
-<!-- http://nco.sf.net#bld_irix -->
-<a name="bld_irix"></a>
-<li><i>IRIX build hints:</i>
-The most common problem with building on SGI IRIX is an out-of-date toolchain.
-</li>
-
-<!-- http://nco.sf.net#bld_osx -->
-<a name="bld_osx"></a>
-<li><i>Mac OS X build hints:</i>
-Mac OS X users report success building NCO without patches so
-long as they (1) Install the latest version of <tt>bison</tt>,
-(2) Disable shared libraries and (3) Disable extended regular
-expressions. This is done with 
-<tt>./configure --disable-regex --disable-shared</tt>
-
-Building NCO with shared libraries on Mac OS X on may be possible.
-To try, first re-build and re-install the netCDF library using
-<tt>CFLAGS=-fno-common</tt>.
-Apparently netCDF, unlike most codes, does not set this automatically.
-Then build NCO normally.
-
-Mac OS X ships with a broken version of the POSIX <tt>cut</tt>
-utility which causes many NCO regression tests to appear to fail.
-In fact the NCO commands succeed, but the <tt>cut</tt> output fails.
-The workaround is not to heed the regression tests, or to install a
-working <tt>cut</tt>, e.g., from the GNU <tt>coreutils</tt> package.
-</li>
-
-<!-- http://nco.sf.net#bld_rhel -->
-<a name="bld_rhel"></a>
-<a name="bld_centos"></a> <!-- http://nco.sf.net#bld_centos -->
-<li><i>RHEL build hints:</i>
-Scripts for generating executables for recent (4.0.x, ~2011) versions of NCO for RedHat Enterprise Linux 5 (RHEL5) and CentOS5 platforms are described <a href="http://sf.net/projects/nco/forums/forum/9830/topic/4089501">here</a>.
-Older information on building x86_64 RPMs is available <a href="http://dust.ess.uci.edu/wangd/s9y">here</a>.
-</li>
-
-<!-- http://nco.sf.net#bld_slr -->
-<a name="bld_slr"></a>
-<li><i>Solaris build hints:</i>
-All recent NCO versions build with autotools on Solaris 2.7—2.9.
-The most common problem with building on Solaris with
-<tt>cc</tt>/<tt>CC</tt> is that <tt>bison</tt> may be out-of-date.
-Install an up-to-date <tt>bison</tt> (e.g., 1.875+).
-Solaris 2.10, i.e., Solaris10, had the audacity to change the
-prototype of the <tt>ctime_r()</tt> function and so does not build
-NCO 3.0.1.
-The fix is to upgrade to the current NCO version.
-</li>
-
-<!-- http://nco.sf.net#bld_sx -->
-<a name="bld_sx"></a>
-<li><i>SX build hints:</i>
-NEC SX does not understand the <tt>S_ISLNK</tt> macro, 
-preferring instead the (non-POSIX) <tt>S_IFLNK</tt> macro.
-This macro appears in the file 
-<a href="http://nco.cvs.sf.net/nco/nco/src/nco/nco_fl_utl.c"><tt>nco_fl_utl.c</tt></a>.
-The patch I wrote for this may be broken.
-Will someone with NEC SX please send us a working patch?
-</li>
-
-<!-- http://nco.sf.net#bld_wnd -->
-<a name="bld_wnd"></a>
-<li><i>Windows build hints:</i>
-Building on Microsoft Windows is possible with Cygwin.
-The resulting executables will behave normally on local files,
-but will not have some (most?) of NCO's network functionality
-(e.g., <tt>scp</tt>, <a href="http://opendap.org">OPeNDAP</a>).
-See the <a href="http://nco.sf.net/nco.html#wnd">User's Guide</a>
-for more details.
-</li>
-
-<!--Qt/MSVC -->
-<li><i>Windows build with Qt/MSVC:</i>
-As of NCO 4.2.0, you may build NCO from source using MSVC and Qt, please see the <a href="nco_qt_msvc.shtml">NCO Qt/MSVC build</a> page.
-</li>
+Still having trouble building NCO from source? Read these 
+<a href="./build_hints.shtml">Build Hints</a>
 
 </ul>
 <hr></p>
@@ -1656,15 +1178,17 @@ The unsatisfied or adventurous may try my personal executables which
 are built from the “main trunk” of NCO, not a tagged
 version, and therefore may behave slightly differently.
 <ul>
-<li>UCI ESS <tt>greenplanet.ps.uci.edu</tt> (Linux 2.6.x): <tt>~zender/bin/LINUX</tt></li>
-<li>UCI ESS <tt>dust.ess.uci.edu</tt> (Linux 3.2.x): <tt>~zender/bin/LINUXAMD64</tt></li>
 <li>NCAR CISL <tt>yellowstone.ucar.edu</tt> (Linux 2.6.x): <tt>~zender/bin/LINUXAMD64</tt></li>
 <li>NCAR CISL <tt>mirage0.ucar.edu</tt> (Linux 2.6.x): <tt>~zender/bin/LINUXAMD64</tt></li>
+<li>ORNL Rhea <tt></tt> (Linux 2.6.x): <tt>~zender/bin/LINUXAMD64</tt></li>
+<li>UCI ESS <tt>greenplanet.ps.uci.edu</tt> (Linux 2.6.x): <tt>~zender/bin/LINUX</tt></li>
+<li>UCI ESS <tt>dust.ess.uci.edu</tt> (Linux 3.2.x): <tt>~zender/bin/LINUXAMD64</tt></li>
 </ul>
 <hr></p>
 <!-- End http://nco.sf.net#NCAR -->
 
 <!-- http://nco.sf.net#BM -->
+<!-- 20140615: out-of-date
 <dt><a name="BM"></dt>
 <h2>Benchmarks</h2>
 <p>
@@ -1695,68 +1219,27 @@ The MPI operators will run with most MPI implementations, including LAM, MPICH,
 LAM installs easily with our own testing environment (latest Ubuntu).
 </p>
 <hr>
+--> <!-- Out of date -->
 <!-- End http://nco.sf.net#BM -->
 
 <!-- http://nco.sf.net#bug -->
 <dt><a name="bug"></a></dt> <!-- http://nco.sf.net#bug -->
 <dt><a name="prb"></a></dt> <!-- http://nco.sf.net#prb -->
-<h2>Known Problems</h2>
-
-Problems with recent releases:
+<h2>Known Problems from 2013 (version 4.2.4) Onwards</h2>
 
 <ul><b>Recent Generic Run-time Problems:</b>
-<!-- http://nco.sf.net#bug_mm3 -->
-<a name="bug_mm3"></a>
-<li><i><tt>MM3</tt> slowdown:</i>
-A longstanding “feature” of netCDF3 was identified in
-March, 2012, and is now known by the tag MM3.
-The MM3 issue can lead to unusually slow performance. 
-The problem is triggered by an aggregate pattern of file access so the
-workaround must be implemented in the application software (e.g., NCO)
-rather than in the netCDF library itself.   
-The name MM3 fits because the problem is normally encountered on
-Multi-record Multi-variable netCDF3 files.
-And we call our “solution” the MM3-workaround.  
-If you encounter unusually slow NCO performance while using NCO to
-analyze MM3 files on a large blocksize filesystem, 
-chances are you are encountering an MM3-induced slowdown. 
-NCO release 4.1.0 implements the MM3-workaround for <tt>ncks</tt>.  
-It speeds-up common ncks sub-setting on NCAR's GLADE by 10-50x.  
-MM3-induced slowdowns are present in other NCO operators and we are 
-prioritizing our MM3-patches to those encountered most often.  
-Thanks to Gary Strand for reporting this problem, and to Russ Rew for 
-creating the workaround algorithm, which is also now in <tt>nccopy</tt>.
-</li>
-
-<!-- http://nco.sf.net#bug_nofill -->
-<a name="bug_nofill"></a>
-<li><i><tt>NOFILL</tt> bug:</i>
-All netCDF versions prior to 4.1.3 may create corrupt netCDF3 files 
-when linked to any version of NCO except 4.0.8.
-The solution is to install netCDF version 4.1.3 or later.
-The corruption occurs silently (without warning or error messages). 
-The problem has been seen "in the wild" only on filesystems with
-large block sizes (e.g., Lustre), although it may be more widespread. 
-It is caused by a netCDF bug that NCO triggers by invoking
-NOFILL mode for faster writes. Hence it is called the NOFILL bug.  
-The bug is hard to trigger, it depends on a rare interaction of
-filesystem block-size, hyperslab size, and order-of-variable writing.
-The bug exists in all versions of netCDF through 4.1.2.
-
-If you have a large block filesystem and cannot upgrade your netCDF
-library, then use NCO version 4.0.8, which disables NOFILL mode (and
-thus writes files more slowly).  
-NCO 4.0.8 and will workaround the NOFILL bug on all versions of netCDF
-(i.e., 4.1.2 and earlier). 
-Hence NCO 4.0.8 will always correctly write netCDF3 files.
-Other temporary workarounds include creating only netCDF4 files 
-(e.g., <tt>ncks -4 ...</tt>) instead of netCDF3 files.
-The NOFILL patch included in NCO 4.0.8 was subsequently removed
-in NCO 4.0.9, which assumes that netCDF 4.1.3 or later is installed.
-</li>
+No known generic run-time problems with recent releases.
 </ul>
 
 <ul><b>Recent Operator-specific Run-time Problems:</b>
+<!-- http://nco.sf.net#bug_cnk_hyp -->
+<a name="bug_cnk_hyp"></a>
+<li><i>Chunking while hyperslabbing bug:</i>
+Versions 4.3.X—4.4.4 of most operators could send incorrect
+chunking requests to the netCDF library, resulting in failures.
+This occurred only while simultaneously hyperslabbing.
+The solution is to upgrade to NCO 4.4.5.
+</li>
 
 <!-- http://nco.sf.net#bug_ncwa_mask_condition -->
 <a name="bug_ncwa_mask_condition"></a>
@@ -1773,7 +1256,7 @@ should upgrade. NB: The <tt>-m -M -T</tt> form of <tt>ncwa</tt>
 masking is/was not buggy. 
 Thus the workaround is to use the <tt>-m -M -T</tt> form
 of <tt>ncwa</tt> masking, while the long-term solution is to upgrade  
-to NCO 4.4.4.
+to NCO 4.4.4+.
 </li>
 
 <!-- http://nco.sf.net#bug_ncra_no_fl_close -->
@@ -1791,7 +1274,7 @@ This is embarassing because NCO has always been designed to work with
 arbitrary numbers of input files and we want power users to be
 comfortable running it on hundreds of thousands of input files.
 The workaround is to avoid versions 4.3.9—4.4.0, while the
-long-term solution is to upgrade to NCO 4.4.1.
+long-term solution is to upgrade to NCO 4.4.1+.
 </li>
 
 <!-- http://nco.sf.net#bug_ncra_mro_mss_val -->
@@ -1806,7 +1289,7 @@ and the symptoms should be noticeable.
 The workaround is to run the affected versions of ncra using the 
 <tt>--flt</tt> switch, so that single-precision floating point numbers
 are not promoted prior to arithmetic.
-The solution is to upgrade to NCO 4.4.0.
+The solution is to upgrade to NCO 4.4.0+.
 </li>
 
 <!-- http://nco.sf.net#bug_ncwa_lmt -->
@@ -1819,7 +1302,7 @@ This could produce incorrect answers that look correct.
 This bug only affected hyperslabbed statistics (those produced
 by simultaneously invoking <tt>-a</tt> and <tt>-d</tt> switches);
 “global averages” were unaffected.
-We urge all <tt>ncwa</tt> users to upgrade to NCO 4.3.6.
+We urge all <tt>ncwa</tt> users to upgrade to NCO 4.3.6+.
 </li>
 
 <!-- http://nco.sf.net#bug_ncpdq_upk -->
@@ -1844,368 +1327,7 @@ unpack data prior to arithmetic.
 No known platform-specific problems with recent releases.
 </ul>
 
-</ul>
-
-Problems with older releases:
-
-<ul><b>Older Generic Run-time Problems:</b>
-
-<!-- http://nco.sf.net#bug_hyp_dgn -->
-<a name="bug_hyp_dgn"></a>
-<li><i>Degenerate hyperslabbing bug:</i>
-Versions ???—4.0.6 could return incorrect hyperslabs when
-user-specified hyperslabs did not include at least one point.  
-In such cases, instead of returning no data, hyperslabs could return all data. 
-To determine whether your NCO is affected by this bug, run these commands:
-<tt>ncks -O -v lat -d lat,20.,20.001 ~/nco/data/in.nc ~/foo.nc;ncks -H ~/foo.nc</tt>
-If the returned hyperslab contains any data, then your NCO is buggy
-(because that hyperslab should be empty).
-This can lead to incorrect answers for hyperslabs that should be empty.
-Analogous problems would occur with empty auxiliary coordinate bounding boxes.
-Although most users do not specify empty hyperslabs, we urge all users
-to upgrade to NCO 4.0.7+ just to be safe.
-</li>
-
-<!-- http://nco.sf.net#bug_thr_msa -->
-<a name="bug_thr_msa"></a>
-<li><i>Threading problems with MSA:</i>
-NCO version 3.9.5 has a nasty bug that causes threaded arithmetic
-operators, e.g., <tt>nces</tt> to produce incorrect results under some
-conditions. 
-The problem may occur whenever OpenMP is enabled and the operators 
-run on a multi-core CPU with more than one thread.
-These incorrect answers, if generated, are relatively easy to notice.
-The number of threads used to generate a file is, by default, recorded
-in the global attribute <tt>nco_openmp_thread_number</tt> which may
-be examined with <tt>ncks -M foo.nc | grep nco_openmp_thread_number</tt>.
-The only action that will correct a file that you think (or know)
-contains corrupted data because of this NCO bug is to re-process the
-file with a non-buggy NCO version.
-<i>Version 3.9.5 is buggy and should be upgraded ASAP</i>.
-Be careful with data processed using this NCO version on multi-core CPUs.
-The (one-line!) patch to fix this bug in 3.9.5 is 
-<a href="http://sf.net/forum/message.php?msg_id=6217274">here</a>.
-</li>
-
-<!-- http://nco.sf.net#bug_idx_hyp -->
-<a name="bug_idx_hyp"></a>
-<li><i>Index-based hyperslab problems:</i>
-NCO versions 2.7.3—2.8.3 have a nasty bug that causes
-index-based hyperslabs, e.g., <tt>-d lat,1,</tt> to 
-behave like value-based hyperslabs, e.g., <tt>-d lat,1.0</tt> under
-some conditions.
-Unfortunately, the incorrect answers generated may be hard to notice!
-This problem was most often enountered by users trying to assemble
-monthly averages using the stride feature of <tt>ncrcat</tt>.
-One common symptom is that the time-offset of the output file is
-incorrect. 
-<i>Versions 2.7.3—2.8.3 are buggy and should be upgraded ASAP</i>.
-Re-do any data-processing that used index-based hyperslabbing with
-these versions of NCO.
-</li>
-</ul>
-
-<ul><b>Older Operator-specific Run-time Problems:</b>
-
-<!-- http://nco.sf.net#bug_ncks_aux -->
-<a name="bug_ncks_aux"></a>
-<li><i><tt>ncks</tt> bug with auxiliary coordinates:</i>
-Versions 4.2.x–4.3.1 of <tt>ncks</tt> did not correctly 
-support auxiliary coordinates (specified with <tt>-X</tt>). 
-Auxiliary coordinates continued to work with the other hyperslabbing
-NCO operators. Auxiliary coordinates once again work in all
-hyperslabbing operators, including on netCDF4 group files in operators
-that support them.
-Fixed in version 4.3.2.
-</li>
-
-<!-- http://nco.sf.net#bug_ncatted_strcmp -->
-<a name="bug_ncatted_strcmp"></a>
-<li><i><tt>ncatted</tt> bug on implicit attribute names:</i>
-Versions 4.2.x–4.3.0 of <tt>ncatted</tt> could segfault when
-processing attributes specified implicitly (i.e., by leaving the
-attribute field blank in the <tt>-a</tt> specification.
-Fixed in version 4.3.1.
-</li>
-
-<!-- http://nco.sf.net#bug_ncbo_ccm_ccsm_cf -->
-<a name="bug_ncbo_ccm_ccsm_cf"></a>
-<li><i><tt>ncbo</tt> bug handling certain special variables:</i>
-Version 4.3.0 of <tt>ncbo</tt> inadvertently always turns off
-certain <a href="http://nco.sf.net/nco.html#prc_xcp">exceptions</a>  
-to variable list processing.
-This may cause some grid-related variables (e.g., <tt>ntrm</tt> and <tt>nbdate</tt>)
-and some non-grid variables (e.g., <tt>ORO</tt> and <tt>gw</tt>) to be
-arithmetically processed (e.g., subtracted) even when that makes no
-sense in most climate model datasets. 
-Fixed in version 4.3.1.
-</li>
-
-<!-- http://nco.sf.net#bug_ncks_mtd -->
-<a name="bug_ncks_mtd"></a>
-<li><i><tt>ncks</tt> bug copying metadata:</i>
-Version 4.2.6 of <tt>ncks</tt> does not copy variable metadata by default. 
-Thus output files appear stripped of metadata.
-One can work around this problem in 4.2.6 by specifying the  <tt>-m</tt> option.
-Otherwise an upgrade is recommended.
-Fixed in version 4.3.0.
-</li>
-
-<!-- http://nco.sf.net#bug_ncks_sbs -->
-<a name="bug_ncks_sbs"></a>
-<li><i><tt>ncks</tt> bug subsetting variables:</i>
-Version 4.2.4 of <tt>ncks</tt> sometimes dumps core
-when subsetting variables with <tt>-v var</tt>.
-Fixed in version 4.2.5.
-</li>
-
-<!-- http://nco.sf.net#bug_ncks_mk_rec_dmn -->
-<a name="bug_ncks_mk_rec_dmn"></a>
-<li><i><tt>ncks</tt> bug with altering record dimensions:</i>
-Version 4.2.4 of <tt>ncks</tt> ignored both the 
-<tt>--mk_rec_dmn</tt> and the <tt>--fix_rec_dmn</tt> switches.  
-It exited successfully without altering the record variable.
-Fixed in version 4.2.5.
-</li>
-
-<!-- http://nco.sf.net#bug_nces_rec_var -->
-<a name="bug_nces_rec_var"></a>
-<li><i><tt>nces</tt> bug with non-record files:</i>
-Versions 4.2.1—4.2.3 of <tt>nces</tt> incorrectly referenced
-the record variable on files which do not contain it.
-This caused a segmentation violation and core dump.
-</li>
-
-<!-- http://nco.sf.net#bug_ncra_flg_bfr_nrm -->
-<a name="bug_ncra_flg_bfr_nrm"></a>
-<li><i><tt>ncra</tt> bug when last file(s) is/are superfluous:</i>
-Versions 4.2.1—4.2.3 of <tt>ncra</tt> incorrectly skipped
-writing the results of the final normalization when trailing files
-were superfluous (not used). 
-In the most common case, all values are zeros in the output file.
-Upgrade if you call <tt>ncra</tt> with trailing superfluous files. 
-</li>
-
-<!-- http://nco.sf.net#bug_ncecat_nintap -->
-<a name="bug_ncecat_nintap"></a>
-<li><i><tt>ncecat</tt> bug when files generated with <tt>-n</tt>:</i>
-Version 4.2.2 of <tt>ncecat</tt> could incorrectly skip the first
-input file in the default mode (RECORD_AGGREGATE) when 
-the <tt>-n NINTAP</tt> switch is used to automate filename generation.
-Upgrade if you use <tt>ncecat -n</tt>.
-</li>
-
-<!-- http://nco.sf.net#bug_ncra_cf_crd_rec_crd -->
-<a name="bug_ncra_cf_crd_rec_crd"></a>
-<li><i><tt>ncra</tt> bug handling CF <tt>coordinates</tt> attributes   
-that contain the name of the record coordinate:</i>
-Versions 4.0.3—4.0.4 of <tt>ncra</tt> incorrectly treat the
-record variable (usually <tt>time</tt>) as a fixed variable if it 
-is specified in the <tt>coordinates</tt> attribute of any variable in
-a file processed with CCM/CCSM/CF metadata conventions. 
-This bug caused core dumps, and even weirder behavior like 
-creating imaginary time slices in the ouput.
-Upgrade recommended if you work with NCAR CCSM/CESM model output.
-
-One workaround that does not require NCO upgrades is to remove the
-record coordinate name (usually <tt>time</tt>) from
-the <tt>coordinates</tt> attribute of all variables in CF-compliant
-files before processing the file with <tt>ncra</tt>.
-</li>
-
-<!-- http://nco.sf.net#bug_ncra_cf_YYYYMMDD_date -->
-<a name="bug_ncra_cf_YYYYMMDD_date"></a>
-<li><i><tt>ncra</tt> bug averaging YYYYMMDD-format <tt>date</tt>
-variables in CCSM/CF-compliant files:</i>
-Versions ???—4.0.5 of <tt>ncra</tt> contain a bug which
-produces an incorrect average (usually zero) of the <tt>date</tt>
-variable which many CCSM/CF-compliant files use to track model dates
-in the human-readable YYYYMMDD-format.
-Averaging YYYYMMDD-format integers is intrinsically difficult, since
-such dates have calendar assumptions built-in.
-NCO attempts this in CCSM/CF-compliant files by using the
-<tt>nbdate</tt> (beginning date) and <tt>time</tt> (days
-since <tt>nbdate</tt>) variables to find the average date,
-converting that to YYYYMMDD, and writing that as the average value
-of <tt>date</tt>. 
-</li>
-
-<!-- http://nco.sf.net#bug_ncks_nc4_nc4_hyp_fix -->
-<a name="bug_ncks_nc4_nc4_hyp_fix"></a>
-<li><i><tt>ncks</tt> bug hyperslabbinging fixed netCDF4 dimensions:</i>
-Versions 4.0.3—4.0.4 of <tt>ncks</tt> contain a bug which
-triggers a core-dump when hyperslabbing (along a non-record
-dimension) a netCDF4-format input file into a netCDF4-format output 
-file, e.g., <tt>ncks -d 0,1,lat in4.nc out4.nc</tt>. 
-Three workarounds that do not require NCO upgrades (or downgrades) are 
-to explicitly specify chunking with, e.g., 
-<tt>ncks --cnk_plc=all -d 0,1,lat in4.nc out4.nc</tt>, or, to use 
-<tt>nces</tt> instead of <tt>ncks</tt> for hyperslabbing, e.g.,
-<tt>nces -d 0,1,lat in4.nc out4.nc</tt> (<tt>nces</tt> does a no-op
-when there is only one input file), or to write to a netCDF3 file,
-<tt>ncks -3 -d 0,1,lat in4.nc out3.nc</tt>.
-</li>
-
-<!-- http://nco.sf.net#bug_ncks_m -->
-<a name="bug_ncks_m"></a>
-<li><i>Core dump with <tt>ncks</tt>:</i>
-Printing variables to screen with <tt>ncks</tt> can trigger a segfault
-in NCO 3.9.9—4.0.3. 
-Users may upgrade, downgrade, or apply this one-line patch to 3.9.9 sources:
-Remove this line
-“<tt>*cnk_sz=(size_t)NULL;</tt>”
-—near line 751 of <tt>nco/src/nco/nco_netcdf.c</tt>—
-should fix the problem.
-The problem in later NCO versions is due to a different bug and this
-patch will not work.
-</li>
-
-<!-- http://nco.sf.net#bug_ncrename_dot -->
-<a name="bug_ncrename_dot"></a>
-<li><i><tt>ncrename</tt> erroneous error exit:</i>
-Versions 4.0.1—4.0.3 of <tt>ncrename</tt> contain a bug where
-commands like <tt>ncrename -a .old_nm,new_nm in.nc out.nc</tt>
-would, if <tt>old_nm</tt> did not exist, write the correct file and
-then exit with an error message although no error had occurred.
-The files written were fine, and the error message can be safely
-ignored. This was due to not clearing an extraneous return code.
-
-<!-- http://nco.sf.net#bug_ncbo_rfr -->
-<a name="bug_ncbo_rfr"></a>
-<li><i><tt>ncbo</tt> segmentation fault:</i>
-<tt>ncbo</tt> versions 4.0.0—4.0.2 incorrectly refreshed
-internal metadata, leading to segmentation faults and core dumps with
-some exacting compilers, notably xlC on AIX. 
-
-<!-- http://nco.sf.net#bug_ncra_date -->
-<a name="bug_ncra_date"></a>
-<li><i><tt>ncra</tt> segmentation fault:</i>
-<tt>ncra</tt> versions 4.0.0—4.0.1 mishandled some CF-compliant  
-dates, leading to segmentation faults and core dumps.
-
-<!-- http://nco.sf.net#bug_ncap_cmt -->
-<a name="bug_ncap_cmt"></a>
-<li><i>Arithmetic problems with <tt>ncap</tt> division, modulo, and exponentiation:</i>
-<tt>ncap</tt> versions < 3.0.1 incorrectly exponentiate
-variables to variable powers (<tt>V^V</tt>).
-We recommend that all <tt>ncap</tt> users upgrade.<br>
-  
-<tt>ncap</tt> versions up to 2.9.1 incorrectly handle division,
-modulo, and exponentiation operations of the form <tt>S/V</tt>,
-<tt>S%V</tt>, and <tt>S^V</tt> where first operand (<tt>S</tt>) is 
-scalar (i.e., either typed directly in the <tt>ncap</tt> script or 
-converted from an attribute) and the second operand (<tt>V</tt>) is
-a full variable (i.e., stored in a file or computed by <tt>ncap</tt>).
-Instead of the requested quantity, <tt>ncap</tt> returned
-<tt>V/S</tt>, <tt>V%S</tt>, and <tt>V^S</tt>.
-In other words <tt>ncap</tt> treated some non-commutative operations
-as commutative. This is now fixed. 
-The 
-<tt>V/V</tt>, <tt>V%V</tt>, <tt>V^V</tt>, 
-<tt>V/S</tt>, <tt>V%S</tt>, <tt>V^S</tt>, 
-<tt>S/S</tt>, <tt>S%S</tt>, and <tt>S^S</tt> operations were never
-affected. 
-We recommend that all <tt>ncap</tt> users upgrade.
-</li>
-
-<!-- http://nco.sf.net#bug_ncbo_pck -->
-<a name="bug_ncbo_pck"></a>
-<li><i>Incorrect <tt>ncbo</tt> output for packed input:</i>
-<tt>ncbo</tt> versions ???—3.2.0 incorrectly write differences
-of packed input. This only affects packed variables. 
-
-<!-- http://nco.sf.net#bug_ncflint_mss_val -->
-<a name="bug_ncflint_mss_val"></a>
-<li><i>Problems with <tt>ncflint</tt> and <tt>missing_value</tt>s:</i>
-The algorithm <tt>ncflint</tt> used to perform interpolation in
-versions up to 2.9.4 was not commutative.
-It returned the weighted valid datum when the other datum was
-<tt>missing_value</tt>, or it returned <tt>missing_value</tt>,
-depending on the order the input files were specified.
-As of version 2.9.5, <tt>ncflint</tt> always returns
-<tt>missing_value</tt> when either input datum is
-<tt>missing_value</tt>. 
-Possible future implementations are discussed 
-<a href="http://nco.sf.net/nco.html#ncflint">here</a>.
-
-<!-- http://nco.sf.net#bug_mss_val_zro_ncra -->
-<a name="bug_mss_val_zro_ncra"></a>
-<li><i>Problems with <tt>ncra</tt> and <tt>nces</tt> when <tt>missing_value</tt> = 0.0:</i>
-The algorithm <tt>ncra</tt> and <tt>nces</tt> used to perform
-arithmetic in versions up to 2.9.2 breaks if <tt>missing_value</tt>
-is 0.0. 
-Why, you ask?
-Running average (or total, etc.) algorithms must initialize the answer  
-to 0.0.
-This is done since the sum accumulates in place as <tt>ncra</tt> and
-<tt>nces</tt> proceeds across records and files.  
-(Normalizing this accumulation by the total number of records is the
-last step).
-The old algorithm compared both the current running average and the
-new record to the <tt>missing_value</tt>.
-If either comparison matched, then nothing accumulated for that
-record. 
-This zero-initialization led to a state where it was impossible 
-to ever recognize valid data.
-As a result nothing accumulated and the answer was always zero.
-The record and ensemble averages would also fail (in a non-obvious)
-way whenever an intermediate sum equalled <tt>missing_value</tt>.
-The chances of the latter event ever happening are exceedingly
-remote. 
-The new algorithm compares only the new record to the
-<tt>missing_value</tt>. 
-This fixes both problems and is faster, too.
-
-<!-- http://nco.sf.net#bug_pck_ncwa -->
-<a name="bug_pck_ncwa"></a>
-<li><i>Packing problems with <tt>ncwa</tt>:</i>
-NCO versions ???—2.9.0 have a bug that causes <tt>ncwa</tt>
-to fail (produce garbage answers) when processing packed
-<tt>NC_FLOAT</tt> data.  Version 2.9.1 fixes this problem.
-This problem may have been noticed most by
-<a href="http://opendap.org">OPeNDAP</a> users since many 
-netCDF climate datasets served by
-<a href="http://opendap.org">OPeNDAP</a> are packed
-<tt>NC_FLOAT</tt>s.  
-Upgrade to 2.9.1 if you use <tt>ncwa</tt> on packed data.
-</li>
-
-<!-- http://nco.sf.net#bug_pck -->
-<a name="bug_pck"></a>
-<li><i>Packing problems with <tt>ncap</tt>:</i>
-NCO versions 2.8.4—2.8.6 have a bug that causes the <tt>ncap</tt>
-intrinsic packing function <tt>pack()</tt> to fail.
-Version 2.8.7 fixes this problem.
-</li>
-</ul>
-
-<ul><b>Older Platform-specific Run-time Problems:</b>
-<a name="bug_ncap_flt_fnc_aix"></a>
-<li><i>Float-valued intrinsic arithmetic functions in <tt>ncap</tt> on AIX:</i>
-<tt>ncap</tt> versions through 4.0.4 have a bug that causes all float-valued
-intrinsic math functions to fail under AIX.
-Float-valued math functions are the ISO C99 functions, e.g.,
-<tt>cosf()</tt>, <tt>fabsf()</tt>, <tt>logf()</tt>.
-The user does not invoke these functions directly—
-the user always specifies the <i>generic function name</i>, e.g.,
-<tt>cos()</tt>, <tt>abs()</tt>, <tt>log()</tt>.
-NCO automatically calls the native single precision (i.e.,
-float-valued) math functions when the generic function argument 
-is a native float (e.g., naked constants like <tt>1.0f</tt> or
-variables stored as <tt>NC_FLOAT</tt>).
-Double precision arguments cause NCO to invoke the standard
-(double-valued) form of the generic function, e.g., <tt>cos()</tt>, 
-<tt>fabs()</tt>, <tt>log()</tt>. 
-<!-- Whevnever this bug is fixed, here is some text
-Version info:
-<tt>ncap</tt> float functions work in AIX (<a href="#bug_ncap_flt_fnc_aix">long-time bug</a>, upgrade will be required for AIX ncap users)
-ANNOUNCE info:
-First, AIX NCO installations should upgrade to this version to get the
-AIX-specific ncap bug-fix.
-Bug-fixes:
-1. fxm: AIX uses NCO-supplied float-valued functions (e.g., cosf())
--->
-</li>
+<li><a href="./problems_old.shtml">Known Problems through 2012 (version 4.2.3)</a></li>
 
 </ul>
 <p><hr></p>
@@ -2216,7 +1338,7 @@ Bug-fixes:
 <a name="people"></a> <!-- http://nco.sf.net#people -->
 <dt><a name="People"></a></dt> <!-- http://nco.sf.net#People -->
 <h2>People:</h2>
-<p>Current Developers (please <a href="#Contact">communicate</a> with us using the project forums rather than contacting us individually):
+<p>Current Developers (please <a href="#Contact">contact</a> us via the project forums not via email):
 <ul>
 
 <li>
@@ -2227,12 +1349,15 @@ Professor of Earth System Science
 Computer Science
 (<a href="http://www.ics.uci.edu">CS</a>).
 <i>Role</i>: Project PI.
-<i>Contributions</i>: NCO core library, porting, release manager
+<i>Contributions</i>: Core library, porting, release manager
 <i>Related Research</i>: 
-1. Extend empirically verified analytic model for terascale data 
-reduction of gridded datasets to account for cluster- and network-
-effects.  
-2. Enable and optimize NCO for intra-file-level parallelism using  
+1. Group-Oriented Data Analysis and Distribution 
+(<a href="http://nco.sf.net/nco.html#godad">GODAD</a>).
+2. Extend empirically verified analytic model
+(described <a href="http://www.ess.uci.edu/~zender#ZeM07">here</a>)
+for terascale data reduction of gridded datasets to account for
+cluster- and network-effects.  
+3. Enable and optimize NCO for intra-file-level parallelism using   
 netCDF4/HDF5 parallel filesystem features.
 <i>Other Interests</i>: Atmospheric Physics, Climate Change.
 </li>
@@ -2249,25 +1374,13 @@ software engineer.
 </li>
 
 <li><dt>
-<a name="vicente"></a><a name="Vicente"></a> <!-- http://nco.sf.net#vicente -->
-<a href="http://dust.ess.uci.edu/pvicente">Pedro Vicente</a>, 
-software engineer.
-<i>Roles</i>: Scientific programmer
-<i>Current Research</i>: 
-1. Support for hierarchical datasets.
-2. Optimization of hierarchical access.
-<i>Other Interests</i>: HDF and netCDF data visualization.
-</li>
-
-<li><dt>
 <a name="wenshan"></a><a name="Wenshan"></a> <!-- http://nco.sf.net#wenshan -->
 <a href="http://dust.ess.uci.edu/wenshanw">Wenshan Wang</a>, 
-software engineer.
-<i>Roles</i>: Graduate Student
+<i>Roles</i>: PhD Candidate
 <i>Current Research</i>: 
-1. Causes and implications of snowpack darkening.
+1. Causes and implications of Greenland snowmelt.
 2. Rapid evaluation and exploitation of multi-model datasets.
-<i>Other Interests</i>: Passing Comps.
+<i>Other Interests</i>: Advancing to candidacy.
 </li>
 
 </ul>
@@ -2276,6 +1389,21 @@ software engineer.
 <ul>
 
 <li>
+<a name="capps"></a><a name="Capps"></a> <!-- http://nco.sf.net#capps -->
+<a href="http://dust.ess.uci.edu/scapps/web">Dr. Scott Capps</a>, 
+earned Earth System Science Ph.D. (2009) with Zender at UCI, then
+postdoc at UCLA, now at Vertum Partners.
+<!--
+<i>Related Research</i>: 
+1. Test NCO on real tera-scale geoscience analysis problems and
+identify necessary improvements in <tt>ncap2</tt> and in SWAMP.
+2. Role of satellite-observed sub-gridscale wind variability 
+on air-surface exchange.
+<i>Other Interests</i>: Weather, climate
+-->
+</li>
+
+<li>
 <a name="jenks"></a><a name="Jenks"></a> <!-- http://nco.sf.net#jenks -->
 <a href="http://spds.ece.uci.edu/~sjenks">Stephen Jenks</a>,
 former Assistant Professor of Electrical Engineering and Computer Science
@@ -2289,16 +1417,15 @@ former Assistant Professor of Electrical Engineering and Computer Science
 </li>
 
 <li>
-<a name="capps"></a><a name="Capps"></a> <!-- http://nco.sf.net#capps -->
-<a href="http://dust.ess.uci.edu/scapps/web">Dr. Scott Capps</a>, 
-earned Earth System Science Ph.D. (2009) with Zender at UCI, now at UCLA.
+<a name="vicente"></a><a name="Vicente"></a> <!-- http://nco.sf.net#vicente -->
+<a href="http://dust.ess.uci.edu/pvicente">Pedro Vicente</a>, 
+software engineer, 201206—201405.
 <!--
-<i>Related Research</i>: 
-1. Test NCO on real tera-scale geoscience analysis problems and
-identify necessary improvements in <tt>ncap2</tt> and in SWAMP.
-2. Role of satellite-observed sub-gridscale wind variability 
-on air-surface exchange.
-<i>Other Interests</i>: Weather, climate
+<i>Roles</i>: Scientific programmer
+<i>Current Research</i>: 
+1. Support for hierarchical datasets.
+2. Optimization of hierarchical access.
+<i>Other Interests</i>: HDF and netCDF data visualization.
 -->
 </li>
 
@@ -2336,7 +1463,7 @@ community.
 <a name="contact"></a> <!-- http://nco.sf.net#contact -->
 <dt><a name="Contact"></a></dt> <!-- http://nco.sf.net#Contact -->
 <h2>Contacting the Project:</h2>
-<p>Contact us through the Project Forums (rather than personal e-mail)
+<p>Contact us via the Project Forums (rather than personal e-mail)
 so other users can benefit from and contribute to our exchange.
 Let us know how NCO is working for you—we'd like to hear.
 Have you read the <a href="#RTFM">documentation</a> and browsed the
@@ -2364,15 +1491,15 @@ site.</li>
 <a href="http://sf.net/projects/nco/forums/forum/9831">Developer</a> /
 <a href="http://sf.net/projects/nco/forums/forum/9829">Discussion</a> /
 <a href="http://sf.net/projects/nco/forums/forum/9830">Help</a> /
-<a href="http://nco.sf.net">Homepage</a> /
 <a href="#RTFM">Manual</a> /
 <a href="http://sf.net/projects/nco">Project</a> /
 <a href="http://nco.cvs.sf.net/nco/nco/src/nco/">Source</a> /
 </td>
 
 <td align="right" valign="top">
+[<a href="https://acme-climate.atlassian.net/wiki/display/ACME/ACME+Home">ACME</a>] 
 [<a href="http://www.antlr.org">ANTLR</a>] 
-[<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/latest-cf-conventions-document-1">CF</a>] 
+[<a href="http://cfconventions.org/1.6.html">CF</a>] 
 [<a href="https://wiki.earthdata.nasa.gov/display/ESDSWG/Dataset+Interoperability+Working+Group">DIWG</a>] 
 [<a href="http://www.gnu.org/software/gsl">GSL</a>] 
 [<a href="http://www.unidata.ucar.edu/packages/netcdf">netCDF</a>] 
diff --git a/doc/milestones_old.shtml b/doc/milestones_old.shtml
new file mode 100644
index 0000000..fed824d
--- /dev/null
+++ b/doc/milestones_old.shtml
@@ -0,0 +1,96 @@
+<!-- $Header: /cvsroot/nco/nco/doc/milestones_old.shtml,v 1.1 2014/06/13 19:43:50 zender Exp $
+
+Purpose: Milestones archive
+
+URL:
+http://nco.sf.net/milestones_old.shtml
+http://dust.ess.uci.edu/nco/milestones_old.shtml
+file:///home/zender/nco/doc/milestones_old.shtml
+
+Usage:
+/usr/bin/scp ~/nco/doc/milestones_old.shtml zender,nco at web.sf.net:/home/project-web/nco/htdocs
+scp -p ~/nco/doc/milestones_old.shtml dust.ess.uci.edu:/var/www/html/nco
+-->
+
+<!doctype html public "-//W3C//DTD HTML 3.2//EN">
+<html>
+<head>
+   <title>NCO Homepage</title>
+   <meta name="GENERATOR" content="Mozilla/3.04Gold (X11; I; Linux 2.0.0 i686) [Netscape]">
+   <meta name="Author" content="Charles S. Zender">
+   <meta name="Keywords" content="NCO Homepage, netCDF, netCDF operator, GCM, HDF, scientific data">
+</head>
+<body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#008080" alink="#FF0000">
+
+<dt><a name="News"></a></dt>
+<h2>Releases & Milestones from 2003–2012 (versions 2.8.4–4.2.3)</h2>
+
+<ul>
+<li>2012 Dec 05: NCO <a href="http://dust.ess.uci.edu/smn/smn_nco_agu_201212.pdf">Talk</a> at Fall AGU, San Francisco, California</li>
+<li>2012 Nov 28: NCO <a href="http://dust.ess.uci.edu/smn/pst_nco_esds_201211.pdf">Poster</a> at NASA ESDSWG, Annapolis, Maryland</li>
+<li>2012 Nov 13: NCO 4.2.3 (GPE)</li>
+<li>2012 Oct 29: NCO 4.2.2 (<tt>ncks, ncecat</tt> Groups)</li>
+<li>2012 Aug 02: NCO 4.2.1 (RAM disks)</li>
+<li>2012 Jun 12: NCO 4.2.0 (Windows support)</li>
+<li>2012 Apr 23: Received funding for NASA ACCESS 2011 <a href="#prp_access">project</a></li>
+<li>2012 Mar 29: NCO 4.1.0 (MD5 support, MM3)</li>
+<li>2012 Feb 13: NCO 4.0.9</li>
+<li>2011 Jun 03: Submitted NASA ACCESS 2011 <a href="http://dust.ess.uci.edu/prp/prp_access/prp_access.pdf">proposal</a></li>
+<li>2011 Apr 28: NCO 4.0.8 (HPSS support, NOFILL workaround, <i>upgrade recommended</i>)</li>
+<li>2011 Feb 21: NCO 4.0.7 (<i>upgrade recommended</i>)</li>
+<li>2011 Jan 15: NCO 4.0.6</li>
+<li>2010 Oct 13: NCO 4.0.5</li>
+<li>2010 Sep 24: NCO 4.0.4 (chunking everywhere)</li>
+<li>2010 Sep 02: NCO 4.0.3</li>
+<li>2010 Jun 27: NCO 4.0.2</li>
+<li>2010 Apr 05: NCO 4.0.1</li>
+<li>2010 Jan 05: NCO 4.0.0 (bilinear interpolation, calendar attributes)</li>
+<li>2009 Jul 15: NCO 3.9.9 (chunking, re-basing, GSL stats/interp)</li>
+<li>2009 Apr 29: NCO 3.9.8 (GSL RNG/PDF functions)</li>
+<li>2009 Mar 18: NCO 3.9.7</li>
+<li>2009 Jan 22: NCO 3.9.6 (GSL special functions) (<i>upgrade highly recommended</i>)</li>
+<li>2008 Sep 24: <tt>ncap2</tt> <a href="http://nco.sf.net/nco.html#ncap2">documentation</a></li>
+<li>2008 Aug 31: <a href="http://www.nsf.gov">NSF</a> funding ends</a></li>
+<li>2008 Aug 08: NCO <a href="http://nco.wiki.sf.net">Wiki</a>!</li>
+<li>2008 May 22: SWAMP <a href="http://dust.ess.uci.edu/ppr/smn_WZJ08_ccgrid_200805.pdf">Talk</a> at CCGRID08 in Lyon, France</li>
+<li>2008 May 11: NCO 3.9.5</li>
+<li>2008 Apr 28: NCO <a href="http://dust.ess.uci.edu/ppr/ppr_Zen08.pdf">overview</a> paper in EMS</li>
+<li>2008 Mar 04: NCO 3.9.4</li>
+<li>2007 Dec 10: SWAMP <a href="http://dust.ess.uci.edu/ppr/pst_WZJ074.pdf">Poster</a> at Fall AGU, San Francisco, California</li>
+<li>2007 Dec 07: NCO 3.9.3 (SWAMP!)</li>
+<li>2007 Dec 04: NCO <a href="http://dust.ess.uci.edu/ppr/ppr_ZeM07.pdf">scaling paper</a> in IJHPCA</li>
+<li>2007 Aug 29: NCO 3.9.2 (<tt>_FillValue</tt>s)</li>
+<li>2007 Aug 27: <a href="http://swamp.googlecode.com">SWAMP site</a> spins-off from NCO</li>
+<li>2007 Jun 29: NCO 3.9.1 (netCDF4 deflation)</li>
+<li>2007 May 26: NCO 3.9.0 (netCDF4 atomic types)</li>
+<li>2007 May 02: SWAMP <a href="http://dust.ess.uci.edu/smn/smn_WZJ07_gpc_200705.pdf">Talk</a> at GPC, Paris, France</li> 
+<li>2007 Apr 20: NCO 3.2.0</li>
+<li>2007 Mar 29: NCO 3.1.9 x86_64 RPMs</li>
+<li>2007 Mar 10: NCO 3.1.9 (i386/x86_64 debs and i386 RPMs)</li>
+<li>2007 Feb 22: SWAMP <a href="http://dust.ess.uci.edu/smn/smn_WZJ07_opendap_200702.pdf">Talk</a> at OPeNDAP Developer's Workshop, Boulder, Colorado</li>
+<li>2007 Jan 15: <a href="http://dust.ess.uci.edu/smn/smn_nco_ams_200701.pdf">Talk</a> and <a href="http://dust.ess.uci.edu/ppr/abs_xtn_ZeW07.pdf">Extended Abstract</a> on NCO Scaling at AMS IIPS, San Antonio, Texas</li>
+<li>2007 Jan 09: <a href="http://dust.ess.uci.edu/ppr/pst_ZMW06.pdf">Poster</a> on NCO Scaling at Fall AGU, San Francisco, California</li>
+<li>2006 Dec 09: <a href="http://dust.ess.uci.edu/ppr/pst_WZJ06.pdf">Poster</a> on SWAMP at Fall AGU, San Francisco, California</li>
+<li>2006 Dec 06: NCO 3.1.8</li>
+<li>2006 Nov 11: NCO 3.1.7</li>
+<li>2006 Sep 18: NCO 3.1.6</li>
+<li>2006 Aug 29: NCO 3.1.5</li>
+<li>2006 Jun 07: NCO 3.1.4</li>
+<li>2006 May 30: NCO 3.1.3</li>
+<li>2006 Apr 21: NCO 3.1.2</li>
+<li>2006 Jan 30: NCO 3.1.1</li>
+<li>2005 Dec 02: NCO 3.1.0 (MPI!)</li>
+<li>2005 Oct 28: NCO 3.0.3</li>
+<li>2005 Oct 17: <a href="#BM">NCO parallel benchmarks</a></li>
+<li>2005 Aug 22: NCO 3.0.2</li>
+<li>2005 Jun 10: NCO 3.0.1</li>
+<li>2005 Mar 24: NCO 3.0.0</li>
+<li>2004 Sep 07: NCO 2.9.9 (<tt>ncpdq</tt> packs data quietly)</li>
+<li>2004 Sep 01: Funding for NSF <a href="#prp_sei">SEI Project</a> begins</li>
+<li>2004 Aug 07: NCO 2.9.8 (<a href="./nco.html#ncpdq"><tt>ncpdq</tt></a> re-orders dimensions)</li>
+<li>2004 Mar 04: Submit NSF <a href="http://dust.ess.uci.edu/prp/prp_sei/prp_sei.pdf">SEI proposal</a></li>
+</ul>
+<hr></p>
+
+</body>
+</html>
diff --git a/doc/nco.dvi b/doc/nco.dvi
index b7d0e91..2572796 100644
Binary files a/doc/nco.dvi and b/doc/nco.dvi differ
diff --git a/doc/nco.html b/doc/nco.html
index a06f505..96501fc 100644
--- a/doc/nco.html
+++ b/doc/nco.html
@@ -2,10 +2,10 @@
 <html>
 <!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
 <head>
-<title>NCO 4.4.4 User Guide</title>
+<title>NCO 4.4.5 User Guide</title>
 
-<meta name="description" content="NCO 4.4.4 User Guide">
-<meta name="keywords" content="NCO 4.4.4 User Guide">
+<meta name="description" content="NCO 4.4.5 User Guide">
+<meta name="keywords" content="NCO 4.4.5 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.4 User Guide</h1>
+<h1 class="settitle" align="center"><acronym>NCO</acronym> 4.4.5 User Guide</h1>
 
 
 
@@ -196,7 +196,13 @@ Irvine, CA 92697-3100<br>
     <li><a name="toc-Large-File-Support-1" href="#Large-File-Support">3.10 Large File Support</a></li>
     <li><a name="toc-Subsetting-Files-1" href="#Subsetting-Files">3.11 Subsetting Files</a></li>
     <li><a name="toc-Subsetting-Coordinate-Variables-1" href="#Subsetting-Coordinate-Variables">3.12 Subsetting Coordinate Variables</a></li>
-    <li><a name="toc-Group-Path-Editing-1" href="#Group-Path-Editing">3.13 Group Path Editing</a></li>
+    <li><a name="toc-Group-Path-Editing-1" href="#Group-Path-Editing">3.13 Group Path Editing</a>
+    <ul class="no-bullet">
+      <li><a name="toc-Deletion_002c-Truncation_002c-and-Flattening-of-Groups" href="#Flattening-Groups">3.13.1 Deletion, Truncation, and Flattening of Groups</a></li>
+      <li><a name="toc-Moving-Groups-1" href="#Moving-Groups">3.13.2 Moving Groups</a></li>
+      <li><a name="toc-Dismembering-Files-1" href="#Dismembering-Files">3.13.3 Dismembering Files</a></li>
+      <li><a name="toc-Checking-CF_002dcompliance-1" href="#Checking-CF_002dcompliance">3.13.4 Checking CF-compliance</a></li>
+    </ul></li>
     <li><a name="toc-C-and-Fortran-Index-conventions" href="#C-and-Fortran-Index-Conventions">3.14 C and Fortran Index conventions</a></li>
     <li><a name="toc-Hyperslabs-1" href="#Hyperslabs">3.15 Hyperslabs</a></li>
     <li><a name="toc-Stride-1" href="#Stride">3.16 Stride</a></li>
@@ -294,7 +300,8 @@ Irvine, CA 92697-3100<br>
   <li><a name="toc-Contributing-1" href="#Contributing">5 Contributing</a>
   <ul class="no-bullet">
     <li><a name="toc-Contributors-1" href="#Contributors">5.1 Contributors</a></li>
-    <li><a name="toc-Proposals-for-Institutional-Funding-1" href="#Proposals-for-Institutional-Funding">5.2 Proposals for Institutional Funding</a></li>
+    <li><a name="toc-Citation-1" href="#Citation">5.2 Citation</a></li>
+    <li><a name="toc-Proposals-for-Institutional-Funding-1" href="#Proposals-for-Institutional-Funding">5.3 Proposals for Institutional Funding</a></li>
   </ul></li>
   <li><a name="toc-Quick-Start-1" href="#Quick-Start">6 Quick Start</a>
   <ul class="no-bullet">
@@ -355,8 +362,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.4.
-It was last updated 20 May 2014.
+<p>This documentation is for <acronym>NCO</acronym> version 4.4.5.
+It was last updated 8 July 2014.
 Corrections, additions, and rewrites of this documentation are very
 welcome.
 </p>
@@ -469,23 +476,24 @@ Grenoble, France<br>
 </p>
 <br>
 <br>
-<p>The end of the <acronym>NSF</acronym> SEI grant in August, 2008 curtailed <acronym>NCO</acronym>
-development.  
-Fortunately we could justify supporting Henry Butowsky on other research 
+<p>The end of the <acronym>NSF</acronym> <acronym>SEI</acronym> grant in August, 2008 curtailed
+<acronym>NCO</acronym> development.  
+Fortunately we could justify supporting Henry Butowsky on other research  
 grants until May, 2010 while he developed the key <code>ncap2</code>
 features used in our climate research.
-And recentely the NASA ACCESS program commenced funding NCO support for
-netCDF4 group functionality.<br> 
-Thus <acronym>NCO</acronym> will grow and evade bit-rot for the foreseeable future.
-</p>
-<p>On a personal level, I continue to receive with gratitude the thanks of
-<acronym>NCO</acronym> users at nearly every scientific meeting I attend. 
-People introduce themselves, shake my hand and extol, sometimes rather
-effusively, these time-saving tools.
+And recently the <acronym>NASA</acronym> <acronym>ACCESS</acronym> program commenced
+funding us to support netCDF4 group functionality.
+Thus <acronym>NCO</acronym> will grow and evade bit-rot for the foreseeable
+future. 
+</p>
+<p>I continue to receive with gratitude the thanks of <acronym>NCO</acronym> users
+at nearly every scientific meeting I attend.  
+People introduce themselves, shake my hand and extol <acronym>NCO</acronym>,
+often effusively, while I grin in stupid embarassment. 
 These exchanges lighten me like anti-gravity.
 Sometimes I daydream how many hours <acronym>NCO</acronym> has turned from grunt
 work to productive research for researchers world-wide, or from research
-into early happy hours. 
+into early happy-hours. 
 It’s a cool feeling.
 </p>
 <br>
@@ -493,6 +501,7 @@ It’s a cool feeling.
 April, 2012<br>
 Irvine, California<br>
 </p>
+
 <a name="smr"></a> <!-- http://nco.sf.net/nco.html#smr --><hr>
 <a name="Summary"></a>
 <div class="header">
@@ -636,7 +645,7 @@ 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.4).
+<p>There are twelve operators in the current version (4.4.5).
 The function of each is explained in <a href="#Operator-Reference-Manual">Operator 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>).
@@ -978,7 +987,7 @@ following <acronym>UNIX</acronym> commands in the directory where the
 <acronym>NCO</acronym> executables are installed.
 </p><div class="example">
 <pre class="example">ln -s -f ncbo ncdiff    # ncbo --op_typ='+'
-ln -s -f ncra ncecat    # ncra --pseudonym='ncecat'
+ln -s -f ncra nces      # ncra --pseudonym='nces'
 ln -s -f ncra ncrcat    # ncra --pseudonym='ncrcat'
 ln -s -f ncbo ncadd     # ncbo --op_typ='+'
 ln -s -f ncbo ncsubtract # ncbo --op_typ='-'
@@ -986,7 +995,7 @@ ln -s -f ncbo ncmultiply # ncbo --op_typ='*'
 ln -s -f ncbo ncdivide   # ncbo --op_typ='/'
 ln -s -f ncpdq ncpack    # ncpdq
 ln -s -f ncpdq ncunpack  # ncpdq --unpack
-# NB: Cygwin executable (and link) names have an '.exe' suffix, e.g.,
+# NB: Windows/Cygwin executable/link names have '.exe' suffix, e.g.,
 ln -s -f ncbo.exe ncdiff.exe
 ...
 </pre></div>
@@ -1841,8 +1850,8 @@ Initially the record dimension is <code>time</code>.
 Our goal is to create a single file that contains joins all the
 spatially adjacent regions into one single time-evolving dataset.
 </p><div class="example">
-<pre class="example">for idx in 01 02 03 04 05 06 07 08 09 10; do # Bourne Shell
-  ncpdq -a x,time x_${idx}.nc foo_${idx}.nc # Make x record dimension
+<pre class="verbatim">for idx in 01 02 03 04 05 06 07 08 09 10; do # Bourne Shell
+  ncpdq -a x,time x_${idx}.nc foo_${idx}.nc  # Make x record dimension
 done
 ncrcat foo_??.nc out.nc       # Concatenate along x
 ncpdq -a time,x out.nc out.nc # Revert to time as record dimension
@@ -1952,7 +1961,7 @@ more, typically) of input filenames to the multi-file operators is
 to pass the filenames with the <acronym>UNIX</acronym> <em>standard input</em>
 feature, aka <code>stdin</code>: 
 </p><div class="example">
-<pre class="example"># Pipe large numbers of filenames to stdin
+<pre class="verbatim"># Pipe large numbers of filenames to stdin
 /bin/ls | grep ${CASEID}_'......'.nc | ncecat -o foo.nc
 </pre></div>
 <p>This method avoids all constraints on command line size imposed by
@@ -1995,7 +2004,7 @@ and to pipe the results to <code>xargs</code> which, in turn, passes the
 matching filenames to an <acronym>NCO</acronym> multi-file operator, e.g.,
 <code>ncecat</code>.
 </p><div class="example">
-<pre class="example"># Use xargs to transfer filenames on the command line
+<pre class="verbatim"># Use xargs to transfer filenames on the command line
 /bin/ls | grep ${CASEID}_'......'.nc | xargs -x ncecat -o foo.nc
 </pre></div>
 <a name="index-pipes"></a>
@@ -2034,7 +2043,7 @@ directory. If there are 999,999 netCDF files present, the links are
 named <samp>000001.nc</samp> to <samp>999999.nc</samp>: 
 <a name="index-_002dn-loop-1"></a>
 </p><div class="example">
-<pre class="example"># Create enumerated symbolic links
+<pre class="verbatim"># Create enumerated symbolic links
 /bin/ls | grep \.nc | perl -e \
 '$idx=1;while(<STDIN>){chop;symlink $_,sprintf("%06d.nc",$idx++);}'
 ncecat -n 999999,6,1 000001.nc foo.nc
@@ -2503,7 +2512,11 @@ Next: <a href="#Metadata-Optimization" accesskey="n" rel="next">Metadata Optimiz
 <a name="index-L10N"></a>
 <p><acronym>NCO</acronym> support for <em>internationalization</em> of textual input
 and output (e.g., Warning messages) is nascent.
-We hope to produce foreign language string catalogues in 2004.
+We introduced the first foreign language string catalogues (French and
+Spanish) in 2004, yet did not activate these in distributions because 
+the catalogues were nearly empty.
+We seek volunteers to populate our templates with translations for their
+favorite languages.
 </p>
 <a name="hdr"></a> <!-- http://nco.sf.net/nco.html#hdr -->
 <a name="hdr_pad"></a> <!-- http://nco.sf.net/nco.html#hdr_pad --><hr>
@@ -2817,12 +2830,15 @@ ncra -n 5,2,1 85.nc 8589.nc
 force. 
 The second method relies on the operating system shell to <em>glob</em>
 (expand) the <em>regular expression</em> <code>8[56789].nc</code>.
-The shell passes valid filenames which match the expansion to
-<code>ncra</code>.
-The third method uses the ‘<samp>-p <var>input-path</var></samp>’ argument to specify 
+The shell then passes the valid filenames (those which match the
+regular expansion) to <code>ncra</code>.
+In this case <code>ncra</code> never knows that a regular expression was
+used, because the shell intercepts and expands and matches the regular
+expression before <code>ncra</code> is actually invoked.
+The third method uses the ‘<samp>-p <var>input-path</var></samp>’ argument to specify   
 the directory where all the input files reside.
 <acronym>NCO</acronym> prepends <var>input-path</var> (e.g.,
-<samp>/data/usrname/model</samp>) to all <var>input-files</var> (though not to
+<samp>/data/username/model</samp>) to all <var>input-files</var> (though not to
 <var>output-file</var>).  
 Thus, using ‘<samp>-p</samp>’, the path to any number of input files need only
 be specified once.
@@ -2831,7 +2847,7 @@ automatically generated if necessary.
 </p>
 <p>The last method passes (with ‘<samp>-n</samp>’) syntax concisely describing 
 the entire set of filenames
-<a name="DOCF19" href="#FOOT19"><sup>19</sup></a>. 
+<a name="DOCF19" href="#FOOT19"><sup>19</sup></a>.
 <a name="index-multi_002dfile-operators-1"></a>
 <a name="index-files_002c-multiple"></a>
 This option is only available with the <em>multi-file operators</em>:
@@ -2848,8 +2864,8 @@ For example, in the file <samp>ccm3_h0001.nc</samp>, we have
 <var>alphanumeric_prefix</var> = <samp>ccm3_h</samp>, <var>numeric_suffix</var> =
 <samp>0001</samp>, and <var>filetype</var> = <samp>nc</samp>.
 </p>
-<p><acronym>NCO</acronym> is able to decode lists of such filenames encoded using the
-‘<samp>-n</samp>’ option. 
+<p><acronym>NCO</acronym> decodes lists of such filenames encoded using the
+‘<samp>-n</samp>’ syntax. 
 The simpler (3-argument) ‘<samp>-n</samp>’ usage takes the form 
 <code>-n <var>file_number</var>,<var>digit_number</var>,<var>numeric_increment</var></code>
 where <var>file_number</var> is the number of files, <var>digit_number</var> is
@@ -2898,12 +2914,12 @@ ncra -n 3,2,1,12,1 85_12.nc 85_1202.nc
 suffice to specify consecutive months (<code>06, 07, 08</code>) which do not
 “wrap” back to a minimum value.
 The second example shows how to use the optional fourth and fifth
-elements of the ‘<samp>-n</samp>’ option to specify a wrap value to <acronym>NCO</acronym>.
-The fourth argument to ‘<samp>-n</samp>’, if present, specifies the maximum
+elements of the ‘<samp>-n</samp>’ option to specify a wrap value.
+The fourth argument to ‘<samp>-n</samp>’, when present, specifies the maximum
 integer value of <var>numeric_suffix</var>.
-In this case the maximum value is 12,<!-- /@w --> and will be formatted as
+In the example the maximum value is 12,<!-- /@w --> and will be formatted as
 <samp>12</samp> in the filename string. 
-The fifth argument to ‘<samp>-n</samp>’, if present, specifies the minimum
+The fifth argument to ‘<samp>-n</samp>’, when present, specifies the minimum
 integer value of <var>numeric_suffix</var>.
 The default minimum filename suffix is 1,<!-- /@w --> which is formatted as
 <samp>01</samp> in this case.   
@@ -3011,16 +3027,18 @@ an <acronym>OPeNDAP</acronym> server.
 Examples of each are given below, following a brief description of the 
 particular access protocol.
 </p>
-<a name="ftp"></a> <!-- http://nco.sf.net/nco.html#ftp --><p>To access a file via an anonymous <acronym>FTP</acronym> server, supply the
-remote file’s <acronym>URL</acronym>.
+<a name="ftp"></a> <!-- http://nco.sf.net/nco.html#ftp --><p>To access a file via an anonymous <acronym>FTP</acronym> server, simply supply
+the remote file’s <acronym>URL</acronym>.
+Anonymous <acronym>FTP</acronym> usually requires no further credentials,
+e.g., no <samp>.netrc</samp> file is necessary.
 <acronym>FTP</acronym> is an intrinsically insecure protocol because it transfers
-passwords in plain text format. 
+passwords in plain text format.  
 Users should access sites using anonymous <acronym>FTP</acronym>, or better yet,
-secure <acronym>FTP</acronym> when possible. 
+secure <acronym>FTP</acronym> (<acronym>SFTP</acronym>, see below) when possible. 
 Some <acronym>FTP</acronym> servers require a login/password combination for a
 valid user account.
-<acronym>NCO</acronym> allows these transactions so long as the required
-information is stored in the <samp>.netrc</samp> file. 
+<acronym>NCO</acronym> allows transactions that require additional credentials
+so long as the required information is stored in the <samp>.netrc</samp> file.  
 Usually this information is the remote machine name, login, and
 password, in plain text, separated by those very keywords, e.g.,
 </p><div class="example">
@@ -3040,7 +3058,7 @@ specified with a homebrew syntax of the form
 <pre class="example">sftp://machine.domain.tld:/path/to/filename
 </pre></div>
 <p>Note the second colon following the top-level-domain, <code>tld</code>.
-This syntax is a hybrid between an <acronym>FTP URL</acronym> and a standard
+This syntax is a hybrid between an <acronym>FTP URL</acronym> and standard
 remote file syntax.
 </p>
 <a name="rcp"></a> <!-- http://nco.sf.net/nco.html#rcp -->
@@ -3238,7 +3256,7 @@ input and output file format:
 one = 1
 </pre></div>
 <p>And, of course, <acronym>OPeNDAP</acronym>-enabled <acronym>NCO</acronym> clients continue
-to support other, orthogonal features such as UDUnits 
+to support orthogonal features such as UDUnits 
 (see <a href="#UDUnits-Support">UDUnits Support</a>):
 </p><div class="example">
 <pre class="example">% ncks -u -C -H -v wvl -d wvl,'0.4 micron','0.7 micron' \
@@ -3262,9 +3280,9 @@ http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/su
 <a name="index-unpacking"></a>
 <p>All with one command!
 The data in this particular input file also happen to be packed
-(see <a href="#Methods-and-functions">Methods and functions</a>), although this is completely transparent
-to the user since <acronym>NCO</acronym> automatically unpacks data before
-attempting arithmetic. 
+(see <a href="#Methods-and-functions">Methods and functions</a>), although this complication is
+transparent to the user since <acronym>NCO</acronym> automatically unpacks data
+before attempting arithmetic. 
 </p>
 <p><acronym>NCO</acronym> obtains remote files from the <acronym>OPeNDAP</acronym> server
 (e.g., <samp>www.cdc.noaa.gov</samp>) rather than the local machine. 
@@ -3827,14 +3845,10 @@ Next: <a href="#Subsetting-Coordinate-Variables" accesskey="n" rel="next">Subset
 <a name="index-_002d_002dxcl"></a>
 <a name="index-_002d_002dunn"></a>
 <a name="index-_002d_002dunion"></a>
+<a name="index-_002d_002dgxvx"></a>
+<a name="index-_002d_002dgrp_005fxtr_005fvar_005fxcl"></a>
 <table class="cartouche" border="1"><tr><td>
-<p>Options <code>--unn</code><br>
-Availability: <code>ncbo</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: <br>
-Long options: ‘<samp>--unn</samp>’ and ‘<samp>--union</samp>’<br>
-Options <code>-g <var>grp</var></code><br>
+<p>Options <code>-g <var>grp</var></code><br>
 Availability: <code>ncbo</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> 
@@ -3846,6 +3860,16 @@ Availability: (<code>ncap2</code>), <code>ncbo</code>, <code>nces</code>,
 <code>ncra</code>, <code>ncrcat</code>, <code>ncwa</code><br>
 Short options: ‘<samp>-v</samp>’, ‘<samp>-x</samp>’<br>
 Long options: ‘<samp>--variable</samp>’, ‘<samp>--exclude</samp>’ or ‘<samp>--xcl</samp>’<br>
+Options <code>--unn</code><br>
+Availability: <code>ncbo</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: <br>
+Long options: ‘<samp>--unn</samp>’ and ‘<samp>--union</samp>’<br>
+Options <code>--grp_xtr_var_xcl</code><br>
+Availability: <code>ncks</code><br>
+Short options: <br>
+Long options: ‘<samp>--gxvx</samp>’ and ‘<samp>--grp_xtr_var_xcl</samp>’<br>
 </p></td></tr></table>
 <p>Subsetting variables refers to explicitly specifying variables and
 groups to be included or excluded from operator actions.
@@ -3882,6 +3906,22 @@ distinctions.
 When learning this syntax it is helpful to keep in mind the similarity
 between group hierarchies and directory structures. 
 </p>
+<a name="gxvx"></a> <!-- http://nco.sf.net/nco.html#gxvx -->
+<a name="grp_xtr_var_xcl"></a> <!-- http://nco.sf.net/nco.html#grp_xtr_var_xcl --><p>As of <acronym>NCO</acronym> 4.4.4 (June, 2014), <code>ncks</code> (alone) supports 
+an option to include specified groups yet exclude specified variables.
+The ‘<samp>--grp_xtr_var_xcl</samp>’ switch (with long option equivalent
+‘<samp>--gxvx</samp>’) extracts all contents of groups given as arguments to
+‘<samp>-g <var>grp</var>[,…]</samp>’, except for variables given as arguments
+to ‘<samp>-v <var>var</var>[,…]</samp>’.
+Use this when one or a few variables in hierarchical files are not to be
+extracted, and all other variables are.  
+This is useful when coercing netCDF4 files into netCDF3 files such as
+with converting, flattening, or dismembering files 
+(see <a href="#Flattening-Groups">Flattening Groups</a>).
+</p><div class="example">
+<pre class="example">ncks --grp_xtr_var_xcl -g g1 -v v1 # Extract all of group g1 except v1
+</pre></div>
+
 <a name="index-mv"></a>
 <a name="index-cp"></a>
 <a name="index-recursion"></a>
@@ -4118,7 +4158,7 @@ those groups, and file <samp>in.nc</samp> with variables <code>Q</code>,
 <code>Q01</code>–<code>Q99</code>, <code>Q100</code>, <code>QAA</code>–<code>QZZ</code>,
 <code>Q_H2O</code>, <code>X_H2O</code>, <code>Q_CO2</code>, <code>X_CO2</code>.  
 </p><div class="example">
-<pre class="example">ncks -v '.+' in.nc               # All variables (default)
+<pre class="verbatim">ncks -v '.+' in.nc               # All variables (default)
 ncks -v 'Q.?' in.nc              # Variables that contain Q
 ncks -v '^Q.?' in.nc             # Variables that start with Q
 ncks -v '^Q+.?.' in.nc           # Q, Q0--Q9, Q01--Q99, QAA--QZZ, etc.
@@ -4215,12 +4255,15 @@ automatically specifying that <em>all</em> coordinate variables in the
 Thus ‘<samp>-c</samp>’ allows the user to select all the coordinate variables
 without having to know their names.
 <a name="index-CF-conventions"></a>
-As of <acronym>NCO</acronym> version 3.9.6 (January, 2009) 
-both ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’ honor the <acronym>CF</acronym> <code>coordinates</code>
-convention described in <a href="#CF-Conventions">CF Conventions</a>.
+As of <acronym>NCO</acronym> version 4.4.5 (July, 2014) 
+both ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’ honor the <acronym>CF</acronym> <code>ancillary_variables</code>
+convention described in <a href="#CF-Conventions">CF Conventions</a>. 
 As of <acronym>NCO</acronym> version 4.0.8 (April, 2011) 
 both ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’ honor the <acronym>CF</acronym> <code>bounds</code>
 convention described in <a href="#CF-Conventions">CF Conventions</a>. 
+As of <acronym>NCO</acronym> version 3.9.6 (January, 2009) 
+both ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’ honor the <acronym>CF</acronym> <code>coordinates</code>
+convention described in <a href="#CF-Conventions">CF Conventions</a>.
 </p>
 <a name="gpe"></a> <!-- http://nco.sf.net/nco.html#gpe --><hr>
 <a name="Group-Path-Editing"></a>
@@ -4283,6 +4326,24 @@ Hence, ‘<samp>-G :-1</samp>’ is the same as ‘<samp>-G @1</samp
 This is simply a way of making the <var>lvl_nbr</var> argument
 positive-definite. 
 </p>
+<table class="menu" border="0" cellspacing="0">
+<tr><td align="left" valign="top">• <a href="#Flattening-Groups" accesskey="1">Flattening Groups</a>:</td><td>  </td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">• <a href="#Moving-Groups" accesskey="2">Moving Groups</a>:</td><td>  </td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">• <a href="#Dismembering-Files" accesskey="3">Dismembering Files</a>:</td><td>  </td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">• <a href="#Checking-CF_002dcompliance" accesskey="4">Checking CF-compliance</a>:</td><td>  </td><td align="left" valign="top">
+</td></tr>
+</table>
+<hr>
+<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>
+</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>
 <a name="flatten"></a> <!-- http://nco.sf.net/nco.html#flatten -->
 <a name="delete"></a> <!-- http://nco.sf.net/nco.html#delete -->
 <a name="truncate"></a> <!-- http://nco.sf.net/nco.html#truncate --><a name="index-_0040-_0028separator-character_0029"></a>
@@ -4350,7 +4411,7 @@ groups and their placement in the output file as shown by the following
 commands. 
 All commands below may be assumed to end with ‘<samp>in.nc out.nc</samp>’.
 </p><div class="example">
-<pre class="example"># Prepending paths without editing:
+<pre class="verbatim"># Prepending paths without editing:
 ncks                   # /g?/v? -> /g?/v?
 ncks             -v v1 # /g?/v1 -> /g?/v1
 ncks       -g g1       # /g1/v? -> /g1/v?
@@ -4393,7 +4454,15 @@ ncks -G g1:-1 -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/g1/v1
 </pre></div>
 
 <a name="mv"></a> <!-- http://nco.sf.net/nco.html#mv -->
-<a name="move"></a> <!-- http://nco.sf.net/nco.html#move --><a name="index-move-groups"></a>
+<a name="move"></a> <!-- http://nco.sf.net/nco.html#move --><hr>
+<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>
+</div>
+<a name="Moving-Groups-1"></a>
+<h4 class="subsection">3.13.2 Moving Groups</h4>
+<a name="index-move-groups"></a>
 <a name="index-groups_002c-moving"></a>
 <a name="index-rename-groups"></a>
 <a name="index-groups_002c-renaming"></a>
@@ -4441,7 +4510,15 @@ all other groups (e.g., <code>ecmwf</code>, <code>giss</code>).
 </p>
 <a name="dismember"></a> <!-- http://nco.sf.net/nco.html#dismember -->
 <a name="disaggregate"></a> <!-- http://nco.sf.net/nco.html#disaggregate -->
-<a name="ncdismember"></a> <!-- http://nco.sf.net/nco.html#ncdismember --><a name="index-disaggregate"></a>
+<a name="ncdismember"></a> <!-- http://nco.sf.net/nco.html#ncdismember --><hr>
+<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>
+</div>
+<a name="Dismembering-Files-1"></a>
+<h4 class="subsection">3.13.3 Dismembering Files</h4>
+<a name="index-disaggregate"></a>
 <a name="index-dismember"></a>
 <a name="index-ncdismember"></a>
 <p>Let us show how to completely disaggregate (or, more memorably)
@@ -4513,7 +4590,8 @@ for grp_in in ${grp_lst} ; do
     eval ${cmd}
     if [ ${flg_cf} = 'cf' ]; then
        # cfchecker needs Conventions <= 1.5
-       ncatted -h -a Conventions,global,o,c,"CF-${cf_vrs}" ${drc_out}/${grp_out}.nc
+       no_bck_sls=`echo ${drc_out}/${grp_out} | sed 's/\\\ / /g'`
+       ncatted -h -a Conventions,global,o,c,CF-${cf_vrs} ${no_bck_sls}.nc
     else # !flg_cf
        echo ${drc_out}/${grp_out}.nc
     fi # !flg_cf
@@ -4554,6 +4632,14 @@ as <code>NC_STRING</code> and <code>NC_UBYTE</code>) to corresponding netCDF3
 atomic types (<code>NC_CHAR</code> and <code>NC_SHORT</code>) when the output format
 is netCDF3. 
 </p>
+<hr>
+<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>
+</div>
+<a name="Checking-CF_002dcompliance-1"></a>
+<h4 class="subsection">3.13.4 Checking CF-compliance</h4>
 <a name="index-CF-compliance-checker"></a>
 <a name="index-cfchecker"></a>
 <a name="index-ncdismember-1"></a>
@@ -4614,15 +4700,15 @@ of the procedure necessary to check <acronym>HDF</acronym> files for
 <acronym>CF</acronym>-compliance: 
 </p><div class="example">
 <pre class="verbatim">cat > ~/ncdismember.txt << 'EOF'
-    Preparing an RPM-based OS to Test Hierarchical Files for CF-Compliance
+    Preparing an RPM-based OS to Test HDF & netCDF Files for CF-Compliance
 
 By Charlie Zender, UCI & NASA Dataset Interoperability Working Group (DIWG)
 
 Installation Summary:
-1. HDF4 [with netCDF support _disabled_]
+1. HDF4 [with internal netCDF support _disabled_]
 2. HDF5
-3. netCDF version 4.3.1 (or later) [with HDF4 support _enabled_]
-4. NCO version 4.4.0 (or later)
+3. netCDF [with external HDF4 support _enabled_]
+4. NCO
 5. numpy
 6. netcdf4-python
 7. python-lxml
@@ -4653,20 +4739,19 @@ cd hdf5-1.8.11
 ./configure --enable-shared --prefix=${H5DIR}
 make && make check && make install
 
-# 3. netCDF version 4.3.1. Build in non-default manner with HDF4. No RPM.
+# 3. netCDF version 4.3.1 or later. Build in non-default manner with HDF4.
 # Per http://www.unidata.ucar.edu/software/netcdf/docs/build_hdf4.html
 # Earlier versions of netCDF may fail checking some HDF4 files
-wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.1.tar.gz
-tar xvzf netcdf-4.3.1.tar.gz
-cd netcdf-4.3.1
+wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.2.tar.gz
+tar xvzf netcdf-4.3.2.tar.gz
+cd netcdf-4.3.2
 CPPFLAGS="-I${H5DIR}/include -I${H4DIR}/include" \
 LDFLAGS="-L${H5DIR}/lib -L${H4DIR}/lib" \
 ./configure --enable-hdf4 --enable-hdf4-file-tests
-make && make check && make installas
+make && make check && make install
 
-# 4. NCO version 4.4.4. No RPM for this version. Must install by hand.
-# Earlier versions of NCO are relatively useless for ncdismember
-cd ${DATA}/tmp
+# 4. NCO version 4.4.0 or later. Some RPMs available. Or install by hand.
+# Later versions of NCO have much better support for ncdismember
 wget http://nco.sourceforge.net/src/nco-4.4.4.tar.gz .
 tar xvzf nco-4.4.4.tar.gz
 cd nco-4.4.4
@@ -4684,14 +4769,13 @@ sudo yum install python-lxml -y
 
 # 8. CFunits-python. No RPM available. Must install by hand.
 # http://code.google.com/p/cfunits-python/
-cd ${DATA}/tmp
 wget http://cfunits-python.googlecode.com/files/cfunits-0.9.6.tar.gz .
+tar xvzf cfunits-0.9.6.tar.gz
 cd cfunits-0.9.6
 sudo python setup.py install
 
 # 9. CFChecker. No RPM available. Must install by hand.
 # https://bitbucket.org/mde_/cfchecker
-cd ${DATA}/tmp
 wget https://bitbucket.org/mde_/cfchecker/downloads/CFchecker-1.5.15.tar.bz2 . 
 tar xvjf CFchecker-1.5.15.tar.bz2 
 cd CFchecker
@@ -4994,7 +5078,7 @@ concatenate the resulting files together:
 <a name="index-Bourne-Shell"></a>
 <a name="index-C-Shell"></a>
 </p><div class="example">
-<pre class="example">for idx in 02 14 26 38 50; do # Bourne Shell
+<pre class="verbatim">for idx in 02 14 26 38 50; do # Bourne Shell
   ncks -d time,${idx} 8501_8912.nc foo.${idx}
 done
 foreach idx (02 14 26 38 50) # C Shell
@@ -5152,7 +5236,7 @@ Traditionally, we would first compute the climatological monthly
 mean for each month of summer. 
 Each of these is a 150-year mean, i.e., 
 </p><div class="example">
-<pre class="example"># Step 1: Create climatological monthly files clm06.nc..clm08.nc
+<pre class="verbatim"># Step 1: Create climatological monthly files clm06.nc..clm08.nc
 for mth in {6..8}; do
   mm=`printf "%02d" $mth`
   ncra -O -F -d time,${mm},,12 -n 150,4,1 1850.nc clm${mm}.nc
@@ -5505,7 +5589,7 @@ ranges.
 This works on datasets that associate coordinate variables to
 grid-mappings using the <acronym>CF</acronym>-convention (see <a href="#CF-Conventions">CF Conventions</a>)   
 <code>coordinates</code> and <code>standard_name</code> attributes described 
-<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system">here</a>. 
+<a href="http://cfconventions.org/1.6.html#coordinate-system">here</a>. 
 Currently, <acronym>NCO</acronym> understands auxiliary coordinate variables 
 pointed to by the <code>standard_name</code> attributes for <var>latitude</var> and 
 <var>longitude</var>.   
@@ -6195,31 +6279,34 @@ performance.
 <p>The user specifies the desired chunking policy with the ‘<samp>-P</samp>’ switch 
 (or its long option equivalents, ‘<samp>--cnk_plc</samp>’ and
 ‘<samp>--chunk_policy</samp>’) and its <var>cnk_plc</var> argument.
-Five chunking policies are currently implemented:<br>   
+As of August, 2014, six chunking policies are currently implemented:<br>
 <a name="index-all"></a>
 <a name="index-g2d"></a>
 <a name="index-g3d"></a>
+<a name="index-r1d"></a>
 <a name="index-xpl"></a>
 <a name="index-xst"></a>
 <a name="index-cnk_005fall"></a>
 <a name="index-cnk_005fg2d"></a>
 <a name="index-cnk_005fg3d"></a>
+<a name="index-cnk_005fr1d"></a>
 <a name="index-cnk_005fxpl"></a>
 <a name="index-cnk_005fxst"></a>
 <a name="index-plc_005fall"></a>
 <a name="index-plc_005fg2d"></a>
 <a name="index-plc_005fg3d"></a>
+<a name="index-plc_005fr1d"></a>
 <a name="index-plc_005fxpl"></a>
 <a name="index-plc_005fxst"></a>
 </p><dl compact="compact">
-<dt><em>Chunk All Variables [<em>default</em>]</em></dt>
+<dt><em>Chunk All Variables</em></dt>
 <dd><p>Definition: Chunk all variables possible.
 For obvious reasons, scalar variables cannot be chunked.<br>
 Alternate invocation: <code>ncchunk</code><br>
 <var>cnk_plc</var> key values: ‘<samp>all</samp>’, ‘<samp>cnk_all</samp>’, ‘<samp>plc_all</samp>’<br>
 Mnemonic: All<br>
 </p></dd>
-<dt><em>Chunk Variables with at least Two Dimensions</em></dt>
+<dt><em>Chunk Variables with at least Two Dimensions [<em>default</em>]</em></dt>
 <dd><p>Definition: Chunk all variables possible with at least two dimensions<br>
 Alternate invocation: none<br>
 <var>cnk_plc</var> key values: ‘<samp>g2d</samp>’, ‘<samp>cnk_g2d</samp>’, ‘<samp>plc_g2d</samp>’<br>
@@ -6231,6 +6318,16 @@ Alternate invocation: none<br>
 <var>cnk_plc</var> key values: ‘<samp>g3d</samp>’, ‘<samp>cnk_g3d</samp>’, ‘<samp>plc_g3d</samp>’<br>
 Mnemonic: <em>G</em>reater than or equal to <em>3</em> <em>D</em>imensions<br>
 </p></dd>
+<dt><em>Chunk One-Dimensional Record Variables</em></dt>
+<dd><p>Definition: Chunk all 1-D record variables<br>
+Alternate invocation: none<br>
+Any specified (with ‘<samp>--cnk_dmn</samp>’) record dimension chunksizes will
+be applied to 1-D record variables (and to no other variables).
+Other dimensions may be chunked with their own ‘<samp>--cnk_dmn</samp>’ options 
+that will apply to all variables. 
+<var>cnk_plc</var> key values: ‘<samp>r1d</samp>’, ‘<samp>cnk_r1d</samp>’, ‘<samp>plc_r1d</samp>’<br>
+Mnemonic: <em>R</em>ecord <em>1</em>-<em>D</em> variables<br>
+</p></dd>
 <dt><em>Chunk Variables Containing Explicitly Chunked Dimensions</em></dt>
 <dd><p>Definition: Chunk all variables possible that contain at least one
 dimension whose chunksize was explicitly set with the ‘<samp>--cnk_dmn</samp>’ option.
@@ -6409,6 +6506,21 @@ ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
  --cnk_dmn lon,128 dstmch90_clm_0112.nc ~/foo.nc
 </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>’)
+chunksize. 
+Any specified record dimension chunksizes will be applied to 1-D
+record variables only. 
+Other dimensions may be chunked with their own ‘<samp>--cnk_dmn</samp>’ options
+that will apply to all variables. 
+For example, 
+</p><div class="example">
+<pre class="example">ncks --cnk_plc=r1d --cnk_dmn=time,1000. in.nc out.nc
+</pre></div>
+<p>This sets <code>time</code> chunks to 1000 only in 1-D record variables. 
+Without the ‘<samp>r1d</samp>’ policy, <code>time</code> chunks would change in all 
+variables.   
+</p>
 <a name="index-record-dimension-2"></a>
 <p>It is appropriate to conclude by informing users about an aspect of
 chunking that may not be expected.
@@ -6745,7 +6857,7 @@ an arbitrary number (set to one hundred thousand) of files are all
 symbolically linked to the same file. 
 Everything is on the local filesystem (not <acronym>DAP</acronym>).
 </p><div class="example">
-<pre class="example"># Create symbolic links for benchmark
+<pre class="verbatim"># Create symbolic links for benchmark
 cd ${DATA}/nco # Do all work here
 for idx in {1..99999}; do
   idx_fmt=`printf "%05d" ${idx}`
@@ -7278,7 +7390,7 @@ This is why type conversion is limited to the operators <code>ncap2</code>,
 <code>ncwa</code>.   
 </li><li> The arithmetic operation could benefit from type conversion.
 Operations that could benefit include averaging, summation, or any
-"hard" arithmetic that could overflow or underflow.  
+“hard” arithmetic that could overflow or underflow.  
 Larger representable sums help avoid overflow, and more precision
 helps to avoid underflow.
 Type conversion does not benefit searching for minima and maxima
@@ -7345,8 +7457,8 @@ These functions round <var>x</var> to the nearest integer, halfway cases away
 from zero.
 The problem with <code>lround()</code> is that it always rounds real values
 ending in <code>.5</code> away from zero.
-This rounds, for example, <code>1.5d</code> and <code>2.5d</code> to <code>1s</code>
-and <code>2s</code>, respectively.
+This rounds, for example, <code>1.5d</code> and <code>2.5d</code> to <code>2s</code>
+and <code>3s</code>, respectively.
 </p>
 <a name="index-lrint_0028_0029_002e"></a>
 <a name="index-IEEE"></a>
@@ -7500,9 +7612,9 @@ seven significant figures for single precision floats (<code>tpt_flt</code>),
 and sixteen significant figures for double precision (<code>tpt_dbl</code>).
 The input precision determines the answer precision.
 </p>
-<p>IEEE arithmetic guarantees that two methods will produce bit-for-bit
-identical answers only if they compute the same operations in the same  
-order.  
+<p><acronym>IEEE</acronym> arithmetic guarantees that two methods will produce
+bit-for-bit identical answers only if they compute the same operations
+in the same order.  
 Bit-for-bit identical answers may also occur by happenstance when 
 rounding errors exactly compensate one another.
 This is demonstrated by repeating the example above with the
@@ -7969,8 +8081,8 @@ Nevertheless, we refer to all such metadata collectively as <acronym>CF</acronym
 metadata. 
 Skip this section if you never work with <acronym>CF</acronym> metadata.
 </p>
-<p>The <acronym>CF</acronym> netCDF conventions are described 
-<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system">here</a>. 
+<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="DOCF46" href="#FOOT46"><sup>46</sup></a>.
 There are no known pitfalls associated with using any <acronym>NCO</acronym>
@@ -8041,7 +8153,7 @@ or alter the <code>Conventions</code> attribute.
 <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
 described 
-<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#cell-boundaries">here</a>.
+<a href="http://cfconventions.org/1.6.html#cell-boundaries">here</a>.
 This convention allows coordinate variables (including multidimensional
 coordinates) to describe the boundaries of their cells.
 This is done by naming the variable which contains the bounds in
@@ -8051,6 +8163,25 @@ NCO-generated subsets of <acronym>CF</acronym>-compliant files with <code>bounds
 attributes will include the coordinates specified by the <code>bounds</code>
 attribute, if any.  
 Hence the subsets will themselves be <acronym>CF</acronym>-compliant.
+Bounds are subject to the user-specified override switches
+(including ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’) described in 
+<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="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 
+described 
+<a href="http://cfconventions.org/1.6.html#ancillary-data">here</a>.
+This convention allows ancillary variables to be associated with one or
+more primary variables.
+<acronym>NCO</acronym> attaches any such variables to the extraction list along 
+with the primary variable and its usual (one-dimensional) coordinates,
+if any. 
+Ancillary variables are subject to the user-specified override switches 
+(including ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’) described in 
+<a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Variables</a>. 
 </p>
 <a name="cnv_CF_crd"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_crd --><a name="index-coordinates-1"></a>
 <a name="index-coordinates-convention"></a>
@@ -8065,14 +8196,15 @@ Hence the subsets will themselves be <acronym>CF</acronym>-compliant.
 <a name="index-_002d_002dcrd-1"></a>
 <p>As of <acronym>NCO</acronym> version 3.9.6 (January, 2009), <acronym>NCO</acronym>
 supports the <acronym>CF</acronym> <code>coordinates</code> convention described 
-<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system">here</a>. 
+<a href="http://cfconventions.org/1.6.html#coordinate-system">here</a>. 
 This convention allows variables to specify additional coordinates
 (including multidimensional coordinates) in a space-separated string
 attribute named <code>coordinates</code>. 
-NCO attaches any such coordinates to the extraction list along with
-variable and its usual (one-dimensional) coordinates, if any.
-These auxiliary coordinates are subject to the user-specified overrides
-described in <a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Variables</a>.
+<acronym>NCO</acronym> attaches any such coordinates to the extraction list along
+with variable and its usual (one-dimensional) coordinates, if any.
+These auxiliary coordinates are subject to the user-specified override
+switches (including ‘<samp>-c</samp>’ and ‘<samp>-C</samp>’) described in 
+<a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Variables</a>. 
 </p>
 <a name="cnv_CF_cll_mth"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_cll_mth -->
 <a name="cll_mth"></a> <!-- http://nco.sf.net/nco.html#cll_mth -->
@@ -8085,7 +8217,7 @@ described in <a href="#Subsetting-Coordinate-Variables">Subsetting Coordinate Va
 <a name="index-cell-methods-convention"></a>
 <p>As of <acronym>NCO</acronym> version 4.4.2 (February, 2014), <acronym>NCO</acronym> 
 supports some of the <acronym>CF</acronym> <code>cell_methods</code> 
-<a href="http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.7-draft1/cf-conventions.html#cell-methods">convention</a>
+<a href="http://cfconventions.org/1.6.html#cell-methods">convention</a>
 to describe the analysis procedures that have been applied to data.
 The convention creates (or appends to an existing) <code>cell_methods</code>
 attribute a space-separated list of couplets of the form <var>dmn: op</var>
@@ -8262,7 +8394,6 @@ Next: <a href="#ncatted-netCDF-Attribute-Editor" accesskey="n" rel="next">ncatte
 <a name="index-arithmetic-processor"></a>
 <a name="index-ncap"></a>
 <a name="index-ncap2-5"></a>
-
 <table class="cartouche" border="1"><tr><td>
 <p><code>ncap2</code> understands a relatively full-featured 
 language of operations, including loops, conditionals, arrays,
@@ -8518,7 +8649,7 @@ to precision and rank.<br>
 Examples:
 </p>
 <div class="example">
-<pre class="example">dimensions: time=10, lat=2, lon=4
+<pre class="verbatim">dimensions: time=10, lat=2, lon=4
 Suppose we have the two variables:
 
 double  P(time,lat,lon);
@@ -8621,7 +8752,7 @@ returned else exp3 is returned.
 </p>
 <p>Example:
 </p><div class="example">
-<pre class="example">weight_avg=weight.avg();
+<pre class="verbatim">weight_avg=weight.avg();
 weight_avg at units= (weight_avg == 1 ? "kilo" : "kilos");  
 PS_nw=PS-(PS.min() > 100000 ? 100000 : 0);
 </pre></div>
@@ -8869,7 +9000,7 @@ The number of hyperslab arguments MUST equal the variable’s rank.
 </p>
 <p>A simple 1D example:
 </p><div class="example">
-<pre class="example">($time.size=10)
+<pre class="verbatim">($time.size=10)
 od[$time]={20,22,24,26,28,30,32,34,36,38};
 
 od(7);     // 34
@@ -8882,7 +9013,7 @@ od(:)      // 20,22,24,26,28,30,32,34,36,38
 
 <p>A more complex three dimensional example:
 </p><div class="example">
-<pre class="example">($lat.size=2,$lon.size=4)
+<pre class="verbatim">($lat.size=2,$lon.size=4)
 th[$time,$lat,$lon]=      
                           {1, 2, 3, 4, 5, 6, 7, 8,
                           9,10,11,12,13,14,15,16,
@@ -8956,7 +9087,7 @@ Use the <code>reverse()</code> method to reverse a dimension’s elements in
 variable with at least one dimension.
 This is equivalent to a negative stride, e.g., 
 </p><div class="example">
-<pre class="example">th_rv=th(1 ,:,:).reverse($lon); // {12,11,10,9 }, {16,15,14,13}
+<pre class="verbatim">th_rv=th(1 ,:,:).reverse($lon); // {12,11,10,9 }, {16,15,14,13}
 od_rv=od.reverse($time);        // {38,36,34,32,30,28,26,24,22,20}
 </pre></div>
 
@@ -8998,7 +9129,7 @@ Next: <a href="#Number-literals" accesskey="n" rel="next">Number literals</a>, P
 <p>Attributes are referred to by <em>var_nm at att_nm</em> <br>
 All the following are valid statements:
 </p><div class="example">
-<pre class="example">global at text="Test Attributes"; /* Assign a global variable attribute */
+<pre class="verbatim">global at text="Test Attributes"; /* Assign a global variable attribute */
 a1[$time]=time*20;
 a1 at long_name="Kelvin";
 a1 at min=a1.min();
@@ -9012,7 +9143,7 @@ a1($time.size-1)=a1 at max;
 <p>A <em>value list</em> can be used on the RHS of an assign...
 <a name="index-value-list"></a>
 </p><div class="example">
-<pre class="example">a1 at trip1={1,2,3} ;
+<pre class="verbatim">a1 at trip1={1,2,3} ;
 a1 at triplet={a1 at min,(a1 at min+a1@max)/2,a1 at max}; 
 </pre></div>
 <p>The netCDF specification allows all attribute types to have a size
@@ -9031,7 +9162,7 @@ The following is an <code>ncdump</code> of the metadata for variable <var>a1</va
 <p>The <code>size()</code> method can be used with attributes.
 For example, to save an attribute text string in a variable,
 </p><div class="example">
-<pre class="example">defdim("sng_len", a1 at long_name.size());
+<pre class="verbatim">defdim("sng_len", a1 at long_name.size());
 sng_arr[$sng_len]=a1 at long_name; // sng_arr now contains "Kelvin" 
 </pre></div>
 <p>Attributes defined in a script are stored in memory and are written to Output after script completion.
@@ -9055,7 +9186,7 @@ th_min=1.0 + 2*three_dmn_var_dbl.min($time);
 
 <p>If the attribute name contains non-regular characters use ID quoting. See see <a href="#ID-Quoting">ID Quoting</a>
 </p><div class="example">
-<pre class="example">'b..m1 at c--lost'=23;
+<pre class="verbatim">'b..m1 at c--lost'=23;
 </pre></div>
 
 <a name="ncap_num"></a> <!-- http://nco.sf.net/nco.html#ncap_num --><hr>
@@ -9073,11 +9204,11 @@ To use the new netCDF4 types <acronym>NCO</acronym> must be compiled/linked to
 the netCDF4 library and the output file must be <acronym>HDF5</acronym>.
 </p>
 <div class="example">
-<pre class="example">n1[$time]=1UL; // n1 will now by type <code>NC_UINT</code>
-n2[$lon]=4b;   // n2 will be of type <code>NC_BYTE</code>
-n3[$lat]=5ull; // n3 will be of type <code>NC_UINT64</code>  
-n3 at a1=6.0d;   // attribute will be type <code>NC_DOUBLE</code>
-n3 at a2=-666L;  // attribute will be type <code>NC_INT</code>
+<pre class="verbatim">n1[$time]=1UL; // n1 will now by type @code{NC_UINT}
+n2[$lon]=4b;   // n2 will be of type @code{NC_BYTE}
+n3[$lat]=5ull; // n3 will be of type @code{NC_UINT64}  
+n3 at a1=6.0d;   // attribute will be type @code{NC_DOUBLE}
+n3 at a2=-666L;  // attribute will be type @code{NC_INT}
 </pre></div>
 
 <p>A floating point number without a postfix will default to
@@ -9085,13 +9216,13 @@ n3 at a2=-666L;  // attribute will be type <code>NC_INT</code>
 An integer without a postfix will default to type <code>NC_INT</code>. 
 There is no postfix for characters, use a quoted string instead.
 </p><div class="example">
-<pre class="example">n4[$rlev]=0.1      // n4 will be of type <code>NC_DOUBLE</code>
-n5[$lon_grd]=2.0   // n5 will be of type <code>NC_DOUBLE</code>
-n6[$gds_crd]=2e3;  // n6 will be of type <code>NC_DOUBLE</code>
-n7[$gds_crd]=2e3f;  // n7 will be of type <code>NC_FLOAT</code>
-n6 at a1=41;         // attribute will be type <code>NC_INT</code>
-n6 at a2=-21;        // attribute will be type <code>NC_INT</code>  
-n6 at units="kelvin" // attribute will be type <code>NC_CHAR</code>
+<pre class="verbatim">n4[$rlev]=0.1      // n4 will be of type @code{NC_DOUBLE}
+n5[$lon_grd]=2.0   // n5 will be of type @code{NC_DOUBLE}
+n6[$gds_crd]=2e3;  // n6 will be of type @code{NC_DOUBLE}
+n7[$gds_crd]=2e3f;  // n7 will be of type @code{NC_FLOAT}
+n6 at a1=41;         // attribute will be type @code{NC_INT}
+n6 at a2=-21;        // attribute will be type @code{NC_INT}  
+n6 at units="kelvin" // attribute will be type @code{NC_CHAR}
 </pre></div>
 
 <dl compact="compact">
@@ -9145,7 +9276,7 @@ Next: <a href="#print-statement" accesskey="n" rel="next">print statement</a>, P
 The <em>Conditional Operator (ternary operator)</em> has also been
 implemented. 
 </p><div class="example">
-<pre class="example">if(exp1)
+<pre class="verbatim">if(exp1)
    stmt1;
 else if(exp2)     
    stmt2;
@@ -9157,13 +9288,13 @@ if(exp1){
    stmt1;
    stmt1a;
    stmt1b;
-} else if(exp2)     
+}else if(exp2)     
    stmt2; 
-else {
+else{
    stmt3;
    stmt3a;
    stmt3b;
-}     
+}   
 </pre></div>
 
 <p>For a variable or attribute expression to be logically true
@@ -9175,7 +9306,7 @@ OR (<code>||</code>) and AND (<code>&&</code>) operators.
 The whole expression is evaluated regardless if one of the AND/OR
 operands are True/False.
 </p><div class="example">
-<pre class="example"># Simple example
+<pre class="verbatim"># Simple example
 if(time>0)
   print("All values of time are greater than zero\n");
 else if( time<0)
@@ -9236,7 +9367,7 @@ will be saved and can be printed), and then print the variable.
 </p>
 <p>examples
 </p><div class="example">
-<pre class="example">print(lon);
+<pre class="verbatim">print(lon);
 lon[0]=0 
 lon[1]=90 
 lon[2]=180 
@@ -9330,16 +9461,16 @@ They only work on variables in Output.
 </p></dd>
 <dt><code>delete_miss()</code></dt>
 <dd><a name="index-delete_005fmiss_0028_0029"></a>
-<p>Deletes the missing value associated with a variable.
+<p>Delete the missing value associated with a variable.
 </p></dd>
 <dt><code>number_miss()</code></dt>
 <dd><a name="index-number_005fmiss_0028_0029"></a>
-<p>Counts the number of missing values a variable contains.
+<p>Count the number of missing values a variable contains.
 </p></dd>
 </dl>
 
 <div class="example">
-<pre class="example">th=three_dmn_var_dbl;
+<pre class="verbatim">th=three_dmn_var_dbl;
 th.change_miss(-1e10d);
 /* Set values less than 0 or greater than 50 to missing value */
 where(th < 0.0 || th > 50.0) th=th.get_miss();
@@ -9640,7 +9771,7 @@ Next: <a href="#Loops" accesskey="n" rel="next">Loops</a>, Previous: <a href="#R
 The full syntax of a <code>where()</code> statement is as follows:
 </p>
 <div class="example">
-<pre class="example">// Single assign (the 'elsewhere' block is optional)
+<pre class="verbatim">// Single assign (the 'elsewhere' block is optional)
 where(mask) 
    var1=expr1;
 elsewhere
@@ -9696,15 +9827,25 @@ to set its values less than 8 or greater than 80 to 0<!-- /@w -->:
 <pre class="example">where(RDM < 8 || RDM > 80) RDM=0;          
 </pre></div>
 
+<a name="WRF"></a> <!-- http://nco.sf.net/nco.html#WRF -->
+<a name="SLD"></a> <!-- http://nco.sf.net/nco.html#SLD -->
+<a name="wrf"></a> <!-- http://nco.sf.net/nco.html#wrf -->
+<a name="sld"></a> <!-- http://nco.sf.net/nco.html#sld --><a name="index-Weather-and-Research-Forecast-_0028WRF_0029-Model"></a>
+<a name="index-Swath_002dlike-Data-_0028SLD_0029"></a>
+<a name="index-WRF-_0028Weather-and-Research-Forecast-Model_0029"></a>
+<a name="index-SLD-_0028Swath_002dlike-Data_0029"></a>
 <p>Consider irregularly gridded data, described using rank 2<!-- /@w --> coordinates: 
 <code>double lat(south_north,east_west)</code>,
 <code>double lon(south_north,east_west)</code>, 
 <code>double temperature(south_north,east_west)</code>.
+This type of structure is often found in regional weather/climate model
+(such as <acronym>WRF</acronym>) output, and in satellite swath data.
+For this reason we call it “Swath-like Data”, or <acronym>SLD</acronym>.
 To find the average temperature in a region bounded by
 [<var>lat_min</var>,<var>lat_max</var>] and [<var>lon_min</var>,<var>lon_max</var>]:
 </p><div class="example">
-<pre class="example">temperature_msk[$south_north,$east_west]=0.0;
-where(lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max)
+<pre class="verbatim">temperature_msk[$south_north,$east_west]=0.0;
+where((lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max))
   temperature_msk=temperature;	
 elsewhere
   temperature_msk=temperature at _FillValue;
@@ -9713,6 +9854,52 @@ temp_avg=temperature_msk.avg();
 temp_max=temperature.max();
 </pre></div>
 
+<a name="NARR"></a> <!-- http://nco.sf.net/nco.html#NARR -->
+<a name="narr"></a> <!-- http://nco.sf.net/nco.html#narr --><a name="index-NARR-_0028North-American-Regional-Reanalysis_0029a"></a>
+<a name="index-North-American-Regional-Reanalysis-_0028NARR_0029"></a>
+<p>For North American Regional Reanalysis (<acronym>NARR</acronym>) data
+(example
+<a href="http://dust.ess.uci.edu/diwg/narr_uwnd.199605.nc">dataset</a>)
+the procedure looks like this
+</p><div class="example">
+<pre class="verbatim">ncap2 -O -v -S ~/narr.nco ${DATA}/hdf/narr_uwnd.199605.nc ~/foo.nc
+</pre></div>
+<p>where <samp>narr.nco</samp> is an <code>ncap2</code> script like this:
+</p><div class="example">
+<pre class="verbatim">/* North American Regional Reanalysis (NARR) Statistics
+   NARR stores grids with 2-D latitude and longitude, aka Swath-like Data (SLD) 
+   Here we work with three variables:
+   lat(y,x), lon(y,x), and uwnd(time,level,y,x);
+   To study sub-regions of SLD, we use masking techniques:
+   1. Define mask as zero times variable to be masked
+      Then mask automatically inherits variable attributes
+      And average below will inherit mask attributes
+   2. Optionally, create mask as RAM variable (as below with asterisk *)
+      NCO does not write RAM variable to output
+      Masks are often unwanted, and can be big, so this speeds execution
+   3. Example could be extended to preserve mean lat and lon of sub-region
+      Follow uwnd example to do this: lat_msk=0.0*lat ... lat_avg=lat.avg($y,$x) */
+*uwnd_msk=0.0*uwnd;
+where((lat >= 35.6 && lat <= 37.0) && (lon >= -100.5 && lon <= -99.0))
+  uwnd_msk=uwnd;
+elsewhere
+  uwnd_msk=uwnd at _FillValue;
+
+// Average only over horizontal dimensions x and y (preserve level and time)
+uwnd_avg=uwnd_msk.avg($y,$x); 
+</pre></div>
+<p>Stripped of comments and formatting, this example is a three-statement
+script executed by a one-line command. 
+<acronym>NCO</acronym> needs only this meagre input to unpack and copy the input
+data and attributes, compute the statistics, and then define and write
+the output file.  
+Unless the comments pointed out that wind variable (<code>uwnd</code>) was
+four-dimensional and the latitude/longitude grid variables were both
+two-dimensional, there would be no way to tell.
+This shows how <acronym>NCO</acronym> hides from the user the complexity of
+analyzing multi-dimensional <acronym>SLD</acronym>. 
+We plan to extend such <acronym>SLD</acronym> features to more operators soon.
+</p>
 <a name="ncap_lop"></a> <!-- http://nco.sf.net/nco.html#ncap_lop --><hr>
 <a name="Loops"></a>
 <div class="header">
@@ -9730,7 +9917,7 @@ To break out of a loop use the <code>break</code> command.
 To iterate to the next cycle use the <code>continue</code> command. 
 </p>
 <div class="example">
-<pre class="example">// Set elements in variable double temp(time,lat) 
+<pre class="verbatim">// Set elements in variable double temp(time,lat) 
 // If element < 0 set to 0, if element > 100 set to 100
 *sz_idx=$time.size;
 *sz_jdx=$lat.size;
@@ -9844,7 +10031,7 @@ de-sorting map <var>dsr_map</var> which is inverse map of the input map
 This gives the user access to both the forward and inverse sorting maps
 which can be useful in special situations.
 </p><div class="example">
-<pre class="example">a1[$time]={10,2,3,4,6,5,7,3,4,1};
+<pre class="verbatim">a1[$time]={10,2,3,4,6,5,7,3,4,1};
 a1_sort=sort(a1);
 print(a1_sort);
 // 1, 2, 3, 3, 4, 4, 5, 6, 7, 10;
@@ -9864,7 +10051,7 @@ If the map variable already exists, then the only restriction is that it
 be of at least the same size as the input variable. 
 To apply a map use <code>remap(var_in,srt_map)</code>. 
 </p><div class="example">
-<pre class="example">defdim("nlat",5);
+<pre class="verbatim">defdim("nlat",5);
 
 a3[$lon]={2,5,3,7};
 a4[$nlat,$lon]={
@@ -10185,14 +10372,13 @@ EOF
 ncap2 -S ncap2.in in.nc out.nc
 </pre></div>
 
-<a name="wrf"></a> <!-- http://nco.sf.net/nco.html#wrf -->
-<a name="WRF"></a> <!-- http://nco.sf.net/nco.html#WRF --><a name="index-WRF"></a>
+<a name="index-WRF"></a>
 <p>Grids like those produced by the <acronym>WRF</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, 
 longitudes, and missing points. 
 The <acronym>WRF</acronym> grid documentation should describe this.
-For <acronym>WRF</acronym> files creating regional masks looks like 
+For <acronym>WRF</acronym> files creating regional masks looks, in general, like 
 </p><div class="example">
 <pre class="example">mask_var = (XLAT >= lat_min && XLAT <= lat_max) && (XLONG >= lon_min && XLONG <= lon_max);
 </pre></div>
@@ -10263,7 +10449,7 @@ After calculations <code>var_out</code> is converted to the input type of
 </p>
 <p>Suppose the first part of an <code>ncap2</code> script is
 </p><div class="example">
-<pre class="example">defdim("X",4);
+<pre class="verbatim">defdim("X",4);
 defdim("Y",5);
 
 // Temperature
@@ -10279,7 +10465,7 @@ y_in[$Y]={1.0,2.0,3.0,4.0,5};
 </pre></div>
 <p>Now we interpolate with the following variables:
 </p><div class="example">
-<pre class="example">defdim("Xn",3);
+<pre class="verbatim">defdim("Xn",3);
 defdim("Yn",4); 
 T_out[$Xn,$Yn]=0.0;
 x_out[$Xn]={0.0,0.02,3.01};
@@ -10314,7 +10500,7 @@ typically these are in the range (-90,90).
 This <code>ncap2</code> script illustrates both wrapping and extrapolation
 of end points:
 </p><div class="example">
-<pre class="example">defdim("lat_in",6);
+<pre class="verbatim">defdim("lat_in",6);
 defdim("lon_in",5);
 
 // Coordinate input vars
@@ -10384,7 +10570,7 @@ The <acronym>GSL</acronym> function prototype is <br>
 <code>int gsl_sf_gamma_e(const double x, gsl_sf_result * result)</code>
 The <code>ncap2</code> script would be:
 </p><div class="example">
-<pre class="example">lon_in[lon]={-1,0.1,0,2,0.3};
+<pre class="verbatim">lon_in[lon]={-1,0.1,0,2,0.3};
 lon_out=gsl_sf_gamma(lon_in);
 lon_out= _, 9.5135, 4.5908, 2.9915 
 </pre></div>
@@ -10412,7 +10598,7 @@ lon_out=0.11490, 0.0012, 0.00498, 0.011165
 The Bessel order argument, an integer, can also be a non-scalar
 variable, i.e., an array.  
 </p><div class="example">
-<pre class="example">n_in[lon]={0,1,2,3};
+<pre class="verbatim">n_in[lon]={0,1,2,3};
 lon_out=gsl_sf_bessel_Jn(n_in,0.5);
 lon_out= 0.93846, 0.24226, 0.03060, 0.00256
 </pre></div>
@@ -10791,7 +10977,7 @@ Next: <a href="#GSL-least_002dsquares-fitting" accesskey="n" rel="next">GSL leas
 <p>A simple example
 </p>
 <div class="example">
-<pre class="example">x_in[$lon]={1.0,2.0,3.0,4.0};
+<pre class="verbatim">x_in[$lon]={1.0,2.0,3.0,4.0};
 y_in[$lon]={1.1,1.2,1.5,1.8};
 
 // Ram variable is declared and defined here 
@@ -10886,7 +11072,7 @@ If data_x or data_y is less than type <code>double</code> then it is converted t
 <p>The below example shows <strong>gsl_fit_linear()</strong> in action
 </p>
 <div class="example">
-<pre class="example">defdim("d1",10);
+<pre class="verbatim">defdim("d1",10);
 xin[d1]={1,2,3,4,5,6,7,8,9,10.0};
 yin[d1]={3.1,6.2,9.1,12.2,15.1,18.2,21.3,24.0,27.0,30.0};
 gsl_fit_linear(xin,1,yin,1,$d1.size,&c0,&c1,&cov00,&cov01,&cov11,&sumsq);
@@ -10942,7 +11128,7 @@ double gsl_stats_quantile_from_sorted_data (var_sorted_data, data_stride, n, var
 <p>Some examples
 </p>
 <div class="example">
-<pre class="example">a1[time]={1,2,3,4,5,6,7,8,9,10 };
+<pre class="verbatim">a1[time]={1,2,3,4,5,6,7,8,9,10};
 
 a1_avg=gsl_stats_mean(a1,1,10);
 print(a1_avg); // 5.5
@@ -10952,7 +11138,6 @@ print(a1_var); // 16.0
 
 // bounding error, vector attempts to access element a1(10)
 a1_sd=gsl_stats_sd(a1,5,3); 
-
 </pre></div>
 
 <p>For functions with the signature 
@@ -11128,7 +11313,7 @@ for more complete demonstrations of <code>ncap2</code> functionality
 as twice the existing attribute <var>double_att</var> of variable
 <var>att_var</var>: 
 </p><div class="example">
-<pre class="example">ncap2 -s 'one at new=2*att_var at double_att' in.nc out.nc
+<pre class="verbatim">ncap2 -s 'one at new=2*att_var at double_att' in.nc out.nc
 </pre></div>
 
 <p>Average variables of mixed types (result is of type <code>double</code>):
@@ -11279,6 +11464,7 @@ variables in <code>ncap2</code> command-line scripts
 In such cases it may be necessary to use the shell backslash character
 ‘<samp>\</samp>’ to protect the <code>ncap2</code> meta-character.
 </p>
+
 <a name="index-appending-data"></a>
 <a name="index-time_002daveraging"></a>
 <a name="index-ncks-2"></a>
@@ -11553,7 +11739,8 @@ Example:
 <dt><code>round(x)</code></dt>
 <dd><p><em>Round</em>
 Nearest integer to <var>x</var> is returned in floating point format.
-Round halfway cases away from zero, regardless of current IEEE rounding direction. 
+Round halfway cases away from zero, regardless of current <acronym>IEEE</acronym>
+rounding direction.  
 Example: 
 <em>round(0.5) = 1.0</em>
 </p></dd>
@@ -11591,7 +11778,8 @@ Example:
 <dt><code>trunc(x)</code></dt>
 <dd><p><em>Truncate</em>
 Nearest integer to <var>x</var> is returned in floating point format.
-Round halfway cases toward zero, regardless of current IEEE rounding direction. 
+Round halfway cases toward zero, regardless of current <acronym>IEEE</acronym>
+rounding direction.  
 Example: 
 <em>trunc(0.5) = 0.0</em>
 </p></dd>
@@ -11709,7 +11897,7 @@ netcdf-3.6.0-p1 <br>
 netcdf-3.6.1 <br>
 netcdf-3.6.2 <br>
 </p><div class="example">
-<pre class="example">/*
+<pre class="verbatim">/*
  * ( [a-zA-Z]|[0-9]|'_'|'-'|'+'|'.'|'|':'|'@'|'('|')' )+
  * Verify that name string is valid CDL syntax, i.e., all characters are
  * alphanumeric, '-', '_', '+', or '.'.
@@ -11722,7 +11910,7 @@ netcdf-3.6.2 <br>
 <p>netcdf-3.6.3<br>
 netcdf-4.0 Final  2008/08/28<br>
 </p><div class="example">
-<pre class="example">/*
+<pre class="verbatim">/*
  * Verify that a name string is valid syntax.  The allowed name
  * syntax (in RE form) is:
  *
@@ -12104,20 +12292,22 @@ from whatever it currently is to "temperature":
 <a name="NaN"></a> <!-- http://nco.sf.net/nco.html#NaN --><a name="index-NaN"></a>
 <a name="index-IEEE-NaN"></a>
 <a name="index-Not_002da_002dNumber"></a>
-<p><acronym>NCO</acronym> arithmetic operators will not work as expected on IEEE
-NaN (short for Not-a-Number) and NaN-like numbers such as positive
-infinity and negative infinity.  
-One way to work-around this problem is to change IEEE NaNs to normal
-missing values. 
+<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="DOCF52" href="#FOOT52"><sup>52</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
 NaNs.
 First set the missing value (i.e., the value of the <code>_FillValue</code>
-attribute) for the variable(s) in question to the IEEE NaN value. 
+attribute) for the variable(s) in question to the <acronym>IEEE</acronym> NaN value. 
 </p><div class="example">
 <pre class="example">ncatted -a _FillValue,,o,f,NaN in.nc
 </pre></div>
-<p>Then change the missing value from the IEEE NaN value to a normal IEEE
-number, like 1.0e36 (or to whatever the original missing value was).
+<p>Then change the missing value from the <acronym>IEEE</acronym> NaN value to a
+normal <acronym>IEEE</acronym> number, like 1.0e36 (or to whatever the original
+missing value was). 
 </p><div class="example">
 <pre class="example">ncatted -a _FillValue,,m,f,1.0e36 in.nc
 </pre></div>
@@ -12312,11 +12502,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="DOCF52" href="#FOOT52"><sup>52</sup></a>.
+<a name="DOCF53" href="#FOOT53"><sup>53</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="DOCF53" href="#FOOT53"><sup>53</sup></a>. 
+<a name="DOCF54" href="#FOOT54"><sup>54</sup></a>. 
 <a name="index-globbing-4"></a>
 <a name="index-shell-4"></a>
 <a name="index-quotes-2"></a>
@@ -12361,12 +12551,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="DOCF54" href="#FOOT54"><sup>54</sup></a>.
+<a name="DOCF55" href="#FOOT55"><sup>55</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="DOCF55" href="#FOOT55"><sup>55</sup></a>.
+<a name="DOCF56" href="#FOOT56"><sup>56</sup></a>.
 </p>
 <p>It is important to maintain portability in <acronym>NCO</acronym> scripts.
 Therefore we recommend that site-specfic invocations (e.g.,
@@ -12384,7 +12574,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="DOCF56" href="#FOOT56"><sup>56</sup></a>. 
+necessary<a name="DOCF57" href="#FOOT57"><sup>57</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>.
@@ -12413,14 +12603,14 @@ In these cases, creating <var>file_2</var> with <code>ncra</code> rather than
 <code>ncwa</code> will cause the <code>ncbo</code> operation to fail.
 For concreteness say the record dimension in <code>file_1</code> is
 <code>time</code>.  
-If <var>file_2</var> were created by averaging <var>file_1</var> over the
-<code>time</code> dimension with the <code>ncra</code> operator rather than with
-the <code>ncwa</code> operator, then <var>file_2</var> will have a <code>time</code>
+If <var>file_2</var> was created by averaging <var>file_1</var> over the
+<code>time</code> dimension with the <code>ncra</code> operator (rather than with
+the <code>ncwa</code> operator), then <var>file_2</var> will have a <code>time</code>
 dimension of size 1<!-- /@w --> rather than having no <code>time</code> dimension at
 all 
 <a name="index-degenerate-dimension-3"></a>
 <a name="index-_002db-1"></a>
-<a name="DOCF57" href="#FOOT57"><sup>57</sup></a>.   
+<a name="DOCF58" href="#FOOT58"><sup>58</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.
@@ -12572,7 +12762,7 @@ twelve months:
 <a name="index-Bourne-Shell-1"></a>
 <a name="index-C-Shell-1"></a>
 </p><div class="example">
-<pre class="example">for idx in {1..12}; do # Bash Shell (version 3.0+) 
+<pre class="verbatim">for idx in {1..12}; do # Bash Shell (version 3.0+) 
   idx=`printf "%02d" ${idx}` # Zero-pad to preserve order
   ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
   ncra foo.${idx} t_anm_8589_${idx}.nc
@@ -12589,7 +12779,7 @@ end
 <p>Note that <code>ncra</code> understands the <code>stride</code> argument so the
 two commands inside the loop may be combined into the single command 
 </p><div class="example">
-<pre class="example">ncra -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+<pre class="verbatim">ncra -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
 </pre></div>
 <p>Finally, use <code>ncrcat</code> to concatenate the 12 average<!-- /@w --> monthly  
 anomaly files into one twelve-record file which contains the entire
@@ -12631,7 +12821,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="DOCF58" href="#FOOT58"><sup>58</sup></a>.
+Averager)<a name="DOCF59" href="#FOOT59"><sup>59</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. 
@@ -12653,7 +12843,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="DOCF59" href="#FOOT59"><sup>59</sup></a>
+<a name="DOCF60" href="#FOOT60"><sup>60</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
@@ -13272,7 +13462,7 @@ Next: <a href="#ncpdq-netCDF-Permute-Dimensions-Quickly" accesskey="n" rel="next
 <pre class="example">ncks [-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b <var>binary-file</var>] [-C] [-c] [--cdl]
 [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_plc plc] [--cnk_scl sz]
 [-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>[,…]] [-H] [-h] [--hdn] [--hdr_pad <var>nbr</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>] 
 [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s <var>format</var>] 
@@ -13368,7 +13558,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="DOCF60" href="#FOOT60"><sup>60</sup></a>.
+<a name="DOCF61" href="#FOOT61"><sup>61</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 
@@ -13536,7 +13726,7 @@ valid <acronym>CDL</acronym> (network Common data form Description Language).
 <code>ncgen</code> and excreted by <code>ncdump</code>.
 Compare <code>ncks</code> “traditional” with <acronym>CDL</acronym> printing:
 </p><div class="example">
-<pre class="example">zender at roulee:~$ ncks -v one ~/nco/data/in.nc
+<pre class="verbatim">zender at roulee:~$ ncks -v one ~/nco/data/in.nc
 one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
 one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
 one attribute 0: long_name, size = 3 NC_CHAR, value = one
@@ -13844,7 +14034,7 @@ into <acronym>NcML</acronym>, including metadata and data, using all
 <acronym>NCO</acronym>’s subsetting and hyperslabbing capabilities.
 Compare <code>ncks</code> “traditional” with <acronym>XML</acronym> printing:
 </p><div class="example">
-<pre class="verbatim">zender@@roulee:~$ ncks -v one ~/nco/data/in.nc
+<pre class="verbatim">zender at roulee:~$ ncks -v one ~/nco/data/in.nc
 one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
 one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
 one attribute 0: long_name, size = 3 NC_CHAR, value = one
@@ -13889,19 +14079,19 @@ the strings used as <acronym>NcML</acronym> separators for attributes and
 variables of character-type and numeric-type, respectively.
 Their default separators are "*" and " ":
 </p><div class="example">
-<pre class="verbatim">zender@@roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
+<pre class="verbatim">zender at roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
 ...
    <values separator="*">abc*bcd*cde*def</values>
  ...
- zender@@roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
+ zender at roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
 ...
 <values separator=", ">abc, bcd, cde, def, efg, fgh, ghi, hij, jkl, klm</values>
 ...
-zender@@roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
+zender at roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
 ...
 <values>1 2 3 4 5 6 7 8 9 10</values>
 ...
-zender@@roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
+zender at roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
 ...
 <values separator=", ">1, 2, 3, 4, 5, 6, 7, 8, 9, 10</values>
 ...
@@ -13993,7 +14183,7 @@ In this example, <code>ncks -m -v z</code> is too verbose so a robust
 procedure could be implemented as a shell command or function called,
 say, <code>ncattget</code>
 </p><div class="example">
-<pre class="example">function ncattget { ncks -M -m ${3} | grep -E -i "^${2} attribute [0-9]+: ${1}" | cut -f 11- -d ' ' | sort ; }
+<pre class="verbatim">function ncattget { ncks -M -m ${3} | grep -E -i "^${2} attribute [0-9]+: ${1}" | cut -f 11- -d ' ' | sort ; }
 </pre></div>
 <p>The shell <code>ncattget</code> is invoked with three arugments that are,
 in order, the names of the attribute, variable, and file to examine.
@@ -14218,19 +14408,21 @@ coordinates, except variable <code>time</code>, from netCDF <samp>in.nc</samp>:
 <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>bounds</code> or <code>coordinates</code>
-variable (see <a href="#CF-Conventions">CF Conventions</a>) such as <code>time_bounds</code>.
-<acronym>NCO</acronym> subsetting assumes the user wants all coordinates 
-and bounds and axes associated with all extracted variables 
+<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>. 
+<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>).
-Hence to exclude a <code>bounds</code> or <code>coordinates</code> variable while
-retaining the “parent” variable (here <code>time</code>), one must use the
-‘<samp>-C</samp>’ switch: 
+Hence to exclude a <code>ancillary_variables</code>, <code>bounds</code>, or
+<code>coordinates</code> variable while retaining the “parent” variable
+(here <code>time</code>), one must use the ‘<samp>-C</samp>’ switch: 
 </p><div class="example">
 <pre class="example">ncks -C -x -v time_bounds in.nc out.nc
 </pre></div>
 <p>The ‘<samp>-C</samp>’ switch tells the operator <em>NOT</em> to necessarily
-include all the <acronym>CF</acronym> coordinates and bounds and axes.
+include all the <acronym>CF</acronym> ancillary variables, axes, bounds, and
+coordinates.
 Hence the output file will contain <code>time</code> and not
 <code>time_bounds</code>. 
 </p>
@@ -14552,7 +14744,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="DOCF61" href="#FOOT61"><sup>61</sup></a>.
+<a name="DOCF62" href="#FOOT62"><sup>62</sup></a>.
 </p>
 <p>Two special cases of dimension re-ordering and reversal deserve special
 mention. 
@@ -14628,7 +14820,7 @@ ncl_convert2nc modis.hdf
 ncpdq --hdf_upk -P xst_new modis.nc modis.nc
 </pre></div>
 <p><acronym>NCO</acronym> now
-<a name="DOCF62" href="#FOOT62"><sup>62</sup></a>
+<a name="DOCF63" href="#FOOT63"><sup>63</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.
@@ -14639,7 +14831,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="DOCF63" href="#FOOT63"><sup>63</sup></a>.
+<a name="DOCF64" href="#FOOT64"><sup>64</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
@@ -15176,7 +15368,7 @@ In this case <code>p</code> must exist in the input file (or
 <p>Rename the attribute <code>long_name</code> to <code>largo_nombre</code> in the
 variable <code>u</code>, and no other variables in netCDF <samp>in.nc</samp>. 
 </p><div class="example">
-<pre class="example">ncrename -a u at long_name,largo_nombre in.nc
+<pre class="verbatim">ncrename -a u at long_name,largo_nombre in.nc
 </pre></div>
  
 <p>Rename the group <code>g8</code> to <code>g20</code> in netCDF4 file
@@ -15238,7 +15430,7 @@ those variables which possess it), the attribute <code>hieght</code> is
 changed to <code>height</code> in the variable <code>tpt</code>, and in the
 variable <code>prs_sfc</code>, if it exists.
 </p><div class="example">
-<pre class="example">ncrename -a _FillValue,missing_value -a .units,CGS_units \
+<pre class="verbatim">ncrename -a _FillValue,missing_value -a .units,CGS_units \
   -a tpt at hieght,height -a prs_sfc at .hieght,height in.nc out.nc 
 </pre></div>
 <p>The presence and absence of the ‘<samp>.</samp>’ and ‘<samp>@</samp>’ features
@@ -15256,7 +15448,7 @@ The variable <code>prs_sfc</code> need not exist, and need not contain the
 <p>Rename the global or group attribute <code>Convention</code> to
 <code>Conventions</code>
 </p><div class="example">
-<pre class="example">ncrename -a Convention,Conventions  in.nc # Variable and global atts.
+<pre class="verbatim">ncrename -a Convention,Conventions  in.nc # Variable and global atts.
 ncrename -a .Convention,Conventions in.nc # Variable and global atts.
 ncrename -a @Convention,Conventions  in.nc # Global atts. only
 ncrename -a @.Convention,Conventions in.nc # Global atts. only
@@ -15393,7 +15585,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="DOCF64" href="#FOOT64"><sup>64</sup></a>.
+<a name="DOCF65" href="#FOOT65"><sup>65</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
@@ -15401,7 +15593,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="DOCF65" href="#FOOT65"><sup>65</sup></a>.  
+<a name="DOCF66" href="#FOOT66"><sup>66</sup></a>.  
 </p>
 <a name="index-average-1"></a>
 <a name="index-operation-types-2"></a>
@@ -15445,7 +15637,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="DOCF66" href="#FOOT66"><sup>66</sup></a>.
+<a name="DOCF67" href="#FOOT67"><sup>67</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>
@@ -15525,7 +15717,7 @@ the integration command
 </p>
 <p>Given file <samp>85_0112.nc</samp>:
 </p><div class="example">
-<pre class="example">netcdf 85_0112 {
+<pre class="verbatim">netcdf 85_0112 {
 dimensions:
         lat = 64 ;
         lev = 18 ;
@@ -15575,7 +15767,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="DOCF67" href="#FOOT67"><sup>67</sup></a>: 
+<a name="DOCF68" href="#FOOT68"><sup>68</sup></a>: 
 </p><div class="example">
 <pre class="example">ncwa -w gw -a lat in.nc out.nc
 </pre></div>
@@ -15593,7 +15785,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="DOCF68" href="#FOOT68"><sup>68</sup></a>: 
+<a name="DOCF69" href="#FOOT69"><sup>69</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
@@ -15601,7 +15793,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="DOCF69" href="#FOOT69"><sup>69</sup></a>. 
+<a name="DOCF70" href="#FOOT70"><sup>70</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>
@@ -15634,7 +15826,7 @@ correctly integrate the cell areas into a total regional area.
 <p>Mask a file to contain <var>_FillValue</var> everywhere except where
 <em><var>thr_min</var> <= <var>msk_var</var> <= <var>thr_max</var></em>:
 </p><div class="example">
-<pre class="example"># Set masking variable and its scalar thresholds
+<pre class="verbatim"># Set masking variable and its scalar thresholds
 export msk_var='three_dmn_var_dbl' # Masking variable
 export thr_max='20' # Maximum allowed value
 export thr_min='10' # Minimum allowed value
@@ -15668,7 +15860,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="DOCF70" href="#FOOT70"><sup>70</sup></a>. 
+<a name="DOCF71" href="#FOOT71"><sup>71</sup></a>. 
 So you could be the third!
 </p>
 <a name="dvl"></a> <!-- http://nco.sf.net/nco.html#dvl -->
@@ -15676,7 +15868,9 @@ So you could be the third!
 <a name="ppl"></a> <!-- http://nco.sf.net/nco.html#ppl --><table class="menu" border="0" cellspacing="0">
 <tr><td align="left" valign="top">• <a href="#Contributors" accesskey="1">Contributors</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
-<tr><td align="left" valign="top">• <a href="#Proposals-for-Institutional-Funding" accesskey="2">Proposals for Institutional Funding</a>:</td><td>  </td><td align="left" valign="top">
+<tr><td align="left" valign="top">• <a href="#Citation" accesskey="2">Citation</a>:</td><td>  </td><td align="left" valign="top">
+</td></tr>
+<tr><td align="left" valign="top">• <a href="#Proposals-for-Institutional-Funding" accesskey="3">Proposals for Institutional Funding</a>:</td><td>  </td><td align="left" valign="top">
 </td></tr>
 </table>
 
@@ -15684,7 +15878,7 @@ So you could be the third!
 <a name="Contributors"></a>
 <div class="header">
 <p>
-Next: <a href="#Proposals-for-Institutional-Funding" accesskey="n" rel="next">Proposals for Institutional Funding</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="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>
 </div>
 <a name="Contributors-1"></a>
 <h3 class="section">5.1 Contributors</h3>
@@ -15731,7 +15925,7 @@ research, releases.
 <dd><p>Non-linear operations and <code>min()</code>, <code>max()</code>, <code>total()</code>
 support in <code>ncra</code> and <code>ncwa</code>. 
 Type conversion for arithmetic.
-Migration to netCDF3 API.
+Migration to netCDF3 <acronym>API</acronym>.
 <code>ncap2</code> parser, lexer, <acronym>GSL</acronym>-support, and I/O<!-- /@w -->.
 Multislabbing algorithm.
 Variable wildcarding.
@@ -15740,7 +15934,7 @@ Numerous hacks.
 <a name="index-Rorik-Peterson"></a>
 </p></dd>
 <dt>Rorik Peterson</dt>
-<dd><p>Original autotool build support. 
+<dd><p>Original autotools build support. 
 Long command-line options.
 Original UDUnits support.
 Debianization.
@@ -15767,7 +15961,7 @@ netCDF4 groups.
 <a name="index-Russ-Rew-1"></a>
 </p></dd>
 <dt>Russ Rew</dt>
-<dd><p>Advice on NCO structural algorithms
+<dd><p>Advice on <acronym>NCO</acronym> structural algorithms
 <a name="index-Brian-Mays"></a>
 </p></dd>
 <dt>Brian Mays</dt>
@@ -15814,12 +16008,13 @@ netCDF4 groups.
 <a name="index-Martin-Schmidt"></a>
 <a name="index-Lori-Sentman"></a>
 <a name="index-Michael-Schulz"></a>
+<a name="index-Rich-Signell"></a>
 <a name="index-Gary-Strand"></a>
 <a name="index-Andrew-Wittenberg"></a>
 <a name="index-George-White"></a>
 <a name="index-Remik-Ziemlinski"></a>
 </p></dd>
-<dt>Peter Campbell, Martin Dix, Mark Flanner, Markus Liebig, Keith Lindsay, Mike Page, Martin Schmidt, Michael Schulz, Lori Sentman, Gary Strand, George White Andrew Wittenberg, Remik Ziemlinski</dt>
+<dt>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</dt>
 <dd><p>Excellent bug reports and feature requests.
 <a name="index-Daniel-Baumann"></a>
 <a name="index-Nick-Bower"></a>
@@ -15877,6 +16072,34 @@ netCDF4 groups.
 </dl>
 <p>Please let me know if your name was omitted!
 </p>
+<a name="ctt"></a> <!-- http://nco.sf.net/nco.html#ctt --><hr>
+<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>
+</div>
+<a name="Citation-1"></a>
+<h3 class="section">5.2 Citation</h3>
+<a name="index-citation"></a>
+<p>The recommended citations for <acronym>NCO</acronym> software are
+</p><div class="example">
+<pre class="verbatim">Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience
+Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10),
+1338-1342, doi:10.1016/j.envsoft.2008.03.004. 
+
+Zender, C. S. (2014), netCDF Operator (NCO) User Guide, Version 4.4.3,
+http://nco.sf.net/nco.pdf. 
+</pre></div>
+<p>Use the former when referring to overall design, purpose, and 
+optimization of <acronym>NCO</acronym>, and use the latter when referring to
+specific features and/or the User Guide itself.
+</p>
+<p>Additional information on citing <acronym>NCO</acronym> is in the User Guide at 
+<a href="http://nco.sf.net#ctt">http://nco.sf.net#ctt</a>.
+A complete list of <acronym>NCO</acronym> publications and presentations is at
+<a href="http://nco.sf.net#pub">http://nco.sf.net#pub</a>.
+This list links to the full papers and seminars themselves.
+</p>
 <a name="prp"></a> <!-- http://nco.sf.net/nco.html#prp -->
 <a name="prp_sei"></a> <!-- http://nco.sf.net/nco.html#prp_sei -->
 <a name="fnd"></a> <!-- http://nco.sf.net/nco.html#fnd --><table class="menu" border="0" cellspacing="0">
@@ -15888,10 +16111,10 @@ netCDF4 groups.
 <a name="Proposals-for-Institutional-Funding"></a>
 <div class="header">
 <p>
-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>
+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>
 </div>
 <a name="Proposals-for-Institutional-Funding-1"></a>
-<h3 class="section">5.2 Proposals for Institutional Funding</h3>
+<h3 class="section">5.3 Proposals for Institutional Funding</h3>
 <a name="index-funding"></a>
 <a name="index-proposals"></a>
 <a name="index-NSF"></a>
@@ -15977,7 +16200,7 @@ file of <samp>in.nc</samp> with the record dimension as <code>time</code>.
 <a name="index-average-2"></a>
 <a name="index-time_002daveraging-1"></a>
 </p><div class="example">
-<pre class="example">for yyyy in {1990..2005}; do      # Loop over years
+<pre class="verbatim">for yyyy in {1990..2005}; do      # Loop over years
   for moy in {1..12}; do          # Loop over months
     mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
 
@@ -15996,7 +16219,7 @@ ncrcat -O in_??????.nc out.nc
 <a name="index-average-3"></a>
 <a name="index-time_002daveraging-2"></a>
 </p><div class="example">
-<pre class="example">for yyyy in {1990..2005}; do      # Loop over years
+<pre class="verbatim">for yyyy in {1990..2005}; do      # Loop over years
   ncra -O -d time,"${yyyy}-01-01","${yyyy}-12-31" in.nc in_${yyyy}.nc
 done
 
@@ -16074,7 +16297,7 @@ If you want to know the monthly average of Jan 1990, you can write like,
 </pre></div>
 <p>You might want to use loop if you need the average of each month.
 </p><div class="example">
-<pre class="example">for moy in {1..12}; do          # Loop over months
+<pre class="verbatim">for moy in {1..12}; do          # Loop over months
   mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
 
   ncra -O snd_????${mm}??.nc out_${mm}.nc
@@ -16096,7 +16319,8 @@ Suppose you have daily data with one month of them in one data file.
 The monthly average is simply to apply <code>ncra</code> on the specific data file.
 And for seasonal averages, you can specify the three months by shell scripts.
 </p>
-<a name="cmip5"></a> <!-- http://nco.sf.net/nco.html#cmip5 --><hr>
+<a name="cmip5"></a> <!-- http://nco.sf.net/nco.html#cmip5 -->
+<a name="godad"></a> <!-- http://nco.sf.net/nco.html#godad --><hr>
 <a name="CMIP5-Example"></a>
 <div class="header">
 <p>
@@ -16105,6 +16329,7 @@ Next: <a href="#Parallel" accesskey="n" rel="next">Parallel</a>, Previous: <a hr
 <a name="CMIP5-Example-1"></a>
 <h2 class="chapter">7 <acronym>CMIP5</acronym> Example</h2>
 <a name="index-CMIP5"></a>
+<a name="index-GODAD"></a>
 
 <p>The fifth phase of the Coupled Model Intercomparison Project 
 (<a href="http://cmip-pcmdi.llnl.gov/cmip5/index.html?submenuheader=0"><acronym>CMIP5</acronym></a>) 
@@ -16113,11 +16338,37 @@ responses of climate models from around the world.
 However, it is a tremendous workload to retrieve a single climate
 statistic from all these models, each of which includes several ensemble 
 members.  
-Not only that, it is too often a repetitive process which impedes new
+Not only that, it is too often a tedious process that impedes new
 research and hypothesis testing.  
-Our <acronym>NASA</acronym> <acronym>ACCESS</acronym> project is designed to simplify and
-accelerate this process.  
-To begin, we document below a prototypical example of <acronym>CMIP5</acronym>
+Our <acronym>NASA</acronym> <acronym>ACCESS</acronym> 2011 project simplified and
+accelerated this process.   
+</p>
+<p>Traditional geoscience data analysis requires users to work with
+numerous flat (data in one level or namespace) files. 
+In that paradigm instruments or models produce, and then repositories
+archive and distribute, and then researchers request and analyze,
+collections of flat files.
+<acronym>NCO</acronym> works well with that paradigm, yet it also embodies the
+necessary algorithms to transition geoscience data analysis from relying
+solely on traditional (or “flat”) datasets to allowing newer
+hierarchical (or “nested”) datasets.  
+</p>
+<p>Hierarchical datasets support and enable combining all datastreams that
+meet user-specified criteria into a single or small number of files that
+hold <em>all</em> the science-relevant data.
+<acronym>NCO</acronym> (and no other software to our knowledge) exploits this
+capability now.
+Data and metadata may be aggregated into and analyzed in hierarchical
+structures.
+We call the resulting data storage, distribution, and analysis
+paradigm Group-Oriented Data Analysis and Distribution
+(<acronym>GODAD</acronym>). 
+<acronym>GODAD</acronym> lets the scientific question organize the data, not the  
+<em>ad hoc</em> granularity of all relevant datasets.
+This chapter illustrates <acronym>GODAD</acronym> techniques applied to 
+analysis of the <acronym>CMIP5</acronym> dataset.
+</p>
+<p>To begin, we document below a prototypical example of <acronym>CMIP5</acronym> 
 analysis and evaluation using traditional <acronym>NCO</acronym> commands on
 netCDF3-format model and <acronym>HDF-EOS</acronym> format observational
 (<acronym>NASA</acronym> <acronym>MODIS</acronym> satellite instrument) datasets.
@@ -16159,8 +16410,8 @@ Next: <a href="#Global-Distribution-of-Long_002dterm-Average" accesskey="n" rel=
 <a name="index-file-combination"></a>
 <p>Sometimes, the data of one ensemble member will be stored in several
 files to reduce single file size.
-But it is not convenient to process in a batch mode.
-The following script illustrates how to concatenate these files into one.
+It is more convenient to concatenate these files into a single
+timeseries, and the following script illustrates how.
 Key steps include: 
 </p><ol>
 <li> Obtain number and names (or partial names) of files in a directory
@@ -16258,20 +16509,20 @@ for var_id in {0..1}; do            # Loop over two variables
 done
 </pre></div>
 
-<p>Right now, <acronym>CMIP5</acronym> model data downloaded from Earth System Grid
+<p><acronym>CMIP5</acronym> model data downloaded from the Earth System Grid
 Federation (<a href="http://pcmdi9.llnl.gov/esgf-web-fe/"><acronym>ESGF</acronym></a>) 
-will not contain <tt class="key">group</tt> features yet. 
-Therefore users can aggregate the flat files into groups themselves.
-The following script shows how to aggregate models to one file.
+does not contain group features yet. 
+Therefore users must aggregate flat files into hierarchical ones themselves.
+The following script shows how.
 Each dataset becomes a group in the output file.
 There can be several levels of groups.
-In this example, we employ two experiments as the top-level.
-The second-level comprises different models.
-Some models have more than one ensemble member.
-These ensemble members are on the third level.
-In each sub-group of ensemble members, we appended two variables,
-<var>snc</var> and <var>snd</var> (these stand for snow cover and snow depth, by
-the way).
+In this example, we employ two experiments (“scenarios”) as the top-level.
+The second-level comprises different models (e.g., CCSM4, CESM1-BGC).
+Many models are run multiple times with slight perturbed initial
+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).
 <a name="index-_002d_002dgag-1"></a>
 <a name="index-aggregation"></a>
 <a name="index-group-aggregation-1"></a>
@@ -16284,7 +16535,7 @@ the way).
 #
 # Method:
 # - Create files with groups by ncecat --gag
-#	- Append groups level by level using ncks
+# - Append groups level by level using ncks
 #
 # Input files like:
 # snc_LImon_CCSM4_historical_r1i1p1_199001-200512.nc
@@ -16304,7 +16555,7 @@ drc_out='../data/grp/'
 
 # Constants
 rlm='LImon'         # Realm: LandIce; Time frequency: monthly
-tms='200001-200512' # Timeseris
+tms='200001-200512' # Timeseries
 flt='nc'            # File Type
 
 # Geographical weights
@@ -17300,7 +17551,7 @@ Next: <a href="#CCSM-Example" accesskey="n" rel="next">CCSM Example</a>, Previou
 <p>This section will describe scripting strategies, including the use of
 <acronym>GNU</acronym> Parallel, to <acronym>NCO</acronym>.
 </p><div class="example">
-<pre class="example">ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" {} 50y/{}
+<pre class="verbatim">ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" {} 50y/{}
 </pre></div>
 
 <a name="ccsm"></a> <!-- http://nco.sf.net/nco.html#ccsm --><hr>
@@ -17316,9 +17567,9 @@ Next: <a href="#mybibnode" accesskey="n" rel="next">mybibnode</a>, Previous: <a
 <p>This chapter illustrates how to use <acronym>NCO</acronym> to
 process and analyze the results of a <acronym>CCSM</acronym> climate simulation.
 </p><div class="example">
-<pre class="example">************************************************************************
+<pre class="verbatim">************************************************************************
 Task 0: Finding input files
-************************************************************************
+x************************************************************************
 The CCSM model outputs files to a local directory like:
 
 /ptmp/zender/archive/T42x1_40
@@ -17874,6 +18125,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-_002d_002dgpe-gpe_005fdsc"><code>--gpe <var>gpe_dsc</var></code></a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dgroup-grp"><code>--group <var>grp</var></code></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-_002d_002dgrp-grp"><code>--grp <var>grp</var></code></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-_002d_002dgrp_005fxtr_005fvar_005fxcl"><code>--grp_xtr_var_xcl</code></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-_002d_002dgxvx"><code>--gxvx</code></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-_002d_002dhdf4">‘<samp>--hdf4</samp>’</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-_002d_002dhdf_005funpack"><code>--hdf_unpack</code></a>:</td><td> </td><td valign="top"><a href="#Packed-data">Packed data</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_002d_002dhdf_005fupk"><code>--hdf_upk</code></a>:</td><td> </td><td valign="top"><a href="#Packed-data">Packed data</a></td></tr>
@@ -18124,7 +18377,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-64BIT-files"><code>64BIT</code> files</a>:</td><td> </td><td valign="top"><a href="#File-Formats-and-Conversion">File Formats and Conversion</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_symbol-14">:</a></th><td></td><td></td></tr>
-<tr><td></td><td valign="top"><a href="#index-_003a-_0028separator-character_0029"><code>:</code> (separator character)</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_003a-_0028separator-character_0029"><code>:</code> (separator character)</a>:</td><td> </td><td valign="top"><a href="#Flattening-Groups">Flattening Groups</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_symbol-15">;</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_003b-_0028end-of-statement_0029"><code>;</code> (end of statement)</a>:</td><td> </td><td valign="top"><a href="#Syntax-of-ncap2-statements">Syntax of ncap2 statements</a></td></tr>
@@ -18140,7 +18393,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_symbol-18">@</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_0040-_0028attribute_0029"><code>@</code> (attribute)</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-_0040-_0028separator-character_0029"><code>@</code> (separator character)</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-_0040-_0028separator-character_0029"><code>@</code> (separator character)</a>:</td><td> </td><td valign="top"><a href="#Flattening-Groups">Flattening Groups</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_symbol-19">[</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a href="#index-_005b_005d-_0028array-delimiters_0029"><code>[]</code> (array delimiters)</a>:</td><td> </td><td valign="top"><a href="#Syntax-of-ncap2-statements">Syntax of ncap2 statements</a></td></tr>
@@ -18214,6 +18467,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-alternate-invocations">alternate invocations</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-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-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>
@@ -18390,13 +18645,13 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-cell-methods-convention">cell methods 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-cell_002dbased-grids">cell-based grids</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-cell_005fmethods"><code>cell_methods</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-CF-compliance-checker"><acronym>CF</acronym> compliance checker</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-CF-compliance-checker"><acronym>CF</acronym> compliance checker</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-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-cfchecker"><code>cfchecker</code></a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</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>
 <tr><td></td><td valign="top"><a href="#index-characters_002c-special">characters, special</a>:</td><td> </td><td valign="top"><a href="#ncatted-netCDF-Attribute-Editor">ncatted netCDF Attribute Editor</a></td></tr>
@@ -18411,6 +18666,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-chunking-map-1">chunking map</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-chunking-policy">chunking policy</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-chunksize">chunksize</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-citation">citation</a>:</td><td> </td><td valign="top"><a href="#Citation">Citation</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-clang"><code>clang</code></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-CLASSIC-files"><code>CLASSIC</code> files</a>:</td><td> </td><td valign="top"><a href="#File-Formats-and-Conversion">File Formats and Conversion</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-client_002dserver">client-server</a>:</td><td> </td><td valign="top"><a href="#OPeNDAP">OPeNDAP</a></td></tr>
@@ -18433,6 +18689,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-cnk_005flfp">‘<samp>cnk_lfp</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cnk_005fmap"><var>cnk_map</var></a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cnk_005fprd">‘<samp>cnk_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-cnk_005fr1d">‘<samp>cnk_r1d</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cnk_005frd1">‘<samp>cnk_rd1</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cnk_005fscl">‘<samp>cnk_scl</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-cnk_005fxpl">‘<samp>cnk_xpl</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
@@ -18451,7 +18708,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-compatability">compatability</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-compilers">compilers</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-complementary-error-function">complementary error 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-compliance-checker">compliance checker</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-compliance-checker">compliance checker</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-compression">compression</a>:</td><td> </td><td valign="top"><a href="#Deflation">Deflation</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-compression-1">compression</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-concatenation">concatenation</a>:</td><td> </td><td valign="top"><a href="#Appending-Variables">Appending Variables</a></td></tr>
@@ -18534,7 +18791,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-degenerate-dimension-7">degenerate dimension</a>:</td><td> </td><td valign="top"><a href="#ncra-netCDF-Record-Averager">ncra netCDF Record Averager</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-degenerate-dimension-8">degenerate dimension</a>:</td><td> </td><td valign="top"><a href="#ncwa-netCDF-Weighted-Averager">ncwa netCDF Weighted Averager</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-degenerate-dimension-9">degenerate dimension</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-delete-_0028groups_0029">delete (groups)</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-delete-_0028groups_0029">delete (groups)</a>:</td><td> </td><td valign="top"><a href="#Flattening-Groups">Flattening Groups</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-delete_005fmiss_0028_0029"><code>delete_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-demotion">demotion</a>:</td><td> </td><td valign="top"><a href="#Type-Conversion">Type Conversion</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Dennis-Heimbigner">Dennis Heimbigner</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
@@ -18546,10 +18803,10 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-dimension-names">dimension names</a>:</td><td> </td><td valign="top"><a href="#ncrename-netCDF-Renamer">ncrename netCDF Renamer</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-dimension-order">dimension order</a>:</td><td> </td><td valign="top"><a href="#Annual-Average-over-Regions">Annual Average over Regions</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-dimensions_002c-growing">dimensions, growing</a>:</td><td> </td><td valign="top"><a href="#Examples-ncap2">Examples ncap2</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-disaggregate">disaggregate</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-disaggregate">disaggregate</a>:</td><td> </td><td valign="top"><a href="#Dismembering-Files">Dismembering Files</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-disjoint-files">disjoint files</a>:</td><td> </td><td valign="top"><a href="#Appending-Variables">Appending Variables</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-diskless-files">diskless files</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-dismember">dismember</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-dismember">dismember</a>:</td><td> </td><td valign="top"><a href="#Dismembering-Files">Dismembering Files</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Distributed-Data-Reduction-_0026-Analysis">Distributed Data Reduction & Analysis</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-Distributed-Oceanographic-Data-System">Distributed Oceanographic 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-divide"><code>divide</code></a>:</td><td> </td><td valign="top"><a href="#ncbo-netCDF-Binary-Operator">ncbo netCDF Binary Operator</a></td></tr>
@@ -18631,7 +18888,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-fixed-dimension-2">fixed dimension</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-fixed-dimension-3">fixed dimension</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-flags">flags</a>:</td><td> </td><td valign="top"><a href="#Examples-ncap2">Examples ncap2</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-flatten-_0028groups_0029">flatten (groups)</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-flatten-_0028groups_0029">flatten (groups)</a>:</td><td> </td><td valign="top"><a href="#Flattening-Groups">Flattening Groups</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-flattening">flattening</a>:</td><td> </td><td valign="top"><a href="#Autoconversion">Autoconversion</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-float"><code>float</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-float_0028_0029">float()</a>:</td><td> </td><td valign="top"><a href="#Methods-and-functions">Methods and functions</a></td></tr>
@@ -18709,6 +18966,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-GNU_002fLinux"><acronym>GNU</acronym>/Linux</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-GNUmakefile"><samp>GNUmakefile</samp></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-God">God</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-GODAD"><acronym>GODAD</acronym></a>:</td><td> </td><td valign="top"><a href="#CMIP5-Example">CMIP5 Example</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-grep-_002dE"><code>grep -E</code></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-group-aggregation">group aggregation</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-group-aggregation-1">group aggregation</a>:</td><td> </td><td valign="top"><a href="#Combine-Files">Combine Files</a></td></tr>
@@ -18724,8 +18982,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-groups-1">groups</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-groups_002c-averaging">groups, averaging</a>:</td><td> </td><td valign="top"><a href="#Global-Distribution-of-Long_002dterm-Average">Global Distribution of Long-term Average</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-groups_002c-creating">groups, creating</a>:</td><td> </td><td valign="top"><a href="#Combine-Files">Combine Files</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-groups_002c-moving">groups, moving</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-groups_002c-renaming">groups, renaming</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-groups_002c-moving">groups, moving</a>:</td><td> </td><td valign="top"><a href="#Moving-Groups">Moving Groups</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-groups_002c-renaming">groups, renaming</a>:</td><td> </td><td valign="top"><a href="#Moving-Groups">Moving Groups</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-growing-dimensions">growing dimensions</a>:</td><td> </td><td valign="top"><a href="#Examples-ncap2">Examples ncap2</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-GSL"><acronym>GSL</acronym></a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-GSL-1"><acronym>GSL</acronym></a>:</td><td> </td><td valign="top"><a href="#GSL-special-functions">GSL special functions</a></td></tr>
@@ -18801,7 +19059,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <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-NaN">IEEE 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-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>
 <tr><td></td><td valign="top"><a href="#index-illegal-names">illegal names</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>
@@ -18912,7 +19170,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Martin-Dix">Martin Dix</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Martin-Otte">Martin Otte</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Martin-Schmidt">Martin Schmidt</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-Martin-Schultz">Martin Schultz</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Martin-Schultz">Martin Schultz</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-mask">mask</a>:</td><td> </td><td valign="top"><a href="#Irregular-grids">Irregular grids</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-mask-1">mask</a>:</td><td> </td><td valign="top"><a href="#Examples-ncap2">Examples ncap2</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-mask-condition">mask condition</a>:</td><td> </td><td valign="top"><a href="#Mask-condition">Mask condition</a></td></tr>
@@ -18939,7 +19197,7 @@ 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-Michael-Decker">Michael Decker</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</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>
 <tr><td></td><td valign="top"><a href="#index-Microsoft">Microsoft</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
@@ -18969,7 +19227,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-monthly-data">monthly data</a>:</td><td> </td><td valign="top"><a href="#Monthly-data-in-one-file">Monthly data in one file</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-monthly-data-1">monthly data</a>:</td><td> </td><td valign="top"><a href="#One-time-point-one-file">One time point one file</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-monthly-data-2">monthly data</a>:</td><td> </td><td valign="top"><a href="#Multiple-files-with-multiple-time-points">Multiple files with multiple time points</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-move-groups">move groups</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-move-groups">move groups</a>:</td><td> </td><td valign="top"><a href="#Moving-Groups">Moving Groups</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-MRO">MRO</a>:</td><td> </td><td valign="top"><a href="#Subcycle">Subcycle</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-MSA"><acronym>MSA</acronym></a>:</td><td> </td><td valign="top"><a href="#Multislabs">Multislabs</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-msk_005f_002a"><code>msk_*</code></a>:</td><td> </td><td valign="top"><a href="#CF-Conventions">CF Conventions</a></td></tr>
@@ -19000,6 +19258,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><th><a name="General-Index_cp_letter-N">N</a></th><td></td><td></td></tr>
 <tr><td></td><td valign="top"><a href="#index-naked-characters">naked characters</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-NaN">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-NARR-_0028North-American-Regional-Reanalysis_0029a"><acronym>NARR</acronym> (North American Regional Reanalysis)a</a>:</td><td> </td><td valign="top"><a href="#Where-statement">Where statement</a></td></tr>
 <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>
@@ -19024,8 +19283,8 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-ncbo-1"><code>ncbo</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-ncbo"><code>ncbo</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-ncdiff"><code>ncdiff</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-ncdismember"><code>ncdismember</code></a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-ncdismember-1"><code>ncdismember</code></a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-ncdismember"><code>ncdismember</code></a>:</td><td> </td><td valign="top"><a href="#Dismembering-Files">Dismembering Files</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-ncdismember-1"><code>ncdismember</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-ncdivide"><code>ncdivide</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-ncdmnsz"><code>ncdmnsz</code></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-ncdump"><code>ncdump</code></a>:</td><td> </td><td valign="top"><a href="#Determining-File-Format">Determining File Format</a></td></tr>
@@ -19155,6 +19414,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-non_002drectangular-grids">non-rectangular grids</a>:</td><td> </td><td valign="top"><a href="#Irregular-grids">Irregular grids</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-non_002dstandard-grids">non-standard grids</a>:</td><td> </td><td valign="top"><a href="#Irregular-grids">Irregular grids</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-normalization">normalization</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-North-American-Regional-Reanalysis-_0028NARR_0029">North American Regional Reanalysis (<acronym>NARR</acronym>)</a>:</td><td> </td><td valign="top"><a href="#Where-statement">Where statement</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-Not_002da_002dNumber">Not-a-Number</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-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>
@@ -19264,6 +19524,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-plc_005fall">‘<samp>plc_all</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-plc_005fg2d">‘<samp>plc_g2d</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-plc_005fg3d">‘<samp>plc_g3d</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-plc_005fr1d">‘<samp>plc_r1d</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-plc_005fxpl">‘<samp>plc_xpl</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-plc_005fxst">‘<samp>plc_xst</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-portability">portability</a>:</td><td> </td><td valign="top"><a href="#Compatability">Compatability</a></td></tr>
@@ -19306,6 +19567,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-quotes-3">quotes</a>:</td><td> </td><td valign="top"><a href="#ncpdq-netCDF-Permute-Dimensions-Quickly">ncpdq netCDF Permute Dimensions Quickly</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_letter-R">R</a></th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-r1d">‘<samp>r1d</samp>’</a>:</td><td> </td><td valign="top"><a href="#Chunking">Chunking</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-RAG"><acronym>RAG</acronym></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-RAM"><acronym>RAM</acronym></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-RAM-1"><acronym>RAM</acronym></a>:</td><td> </td><td valign="top"><a href="#RAM-disks">RAM disks</a></td></tr>
@@ -19367,7 +19629,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Remik-Ziemlinski">Remik Ziemlinski</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-remote-files">remote files</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-remote-files-1">remote files</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-rename-groups">rename groups</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-rename-groups">rename groups</a>:</td><td> </td><td valign="top"><a href="#Moving-Groups">Moving Groups</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-renaming-attributes">renaming attributes</a>:</td><td> </td><td valign="top"><a href="#ncrename-netCDF-Renamer">ncrename netCDF Renamer</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-renaming-attributes-1">renaming attributes</a>:</td><td> </td><td valign="top"><a href="#Regrid-MODIS-Data">Regrid MODIS Data</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-renaming-dimensions">renaming dimensions</a>:</td><td> </td><td valign="top"><a href="#ncrename-netCDF-Renamer">ncrename netCDF Renamer</a></td></tr>
@@ -19385,6 +19647,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-reverse-dimensions-2">reverse dimensions</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-reverse_0028_0029">reverse()</a>:</td><td> </td><td valign="top"><a href="#Arrays-and-hyperslabs">Arrays and hyperslabs</a></td></tr>
 <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-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>
@@ -19447,6 +19710,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <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>
 <tr><td></td><td valign="top"><a href="#index-sinh"><var>sinh</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-size_0028_0029">size()</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-SLD-_0028Swath_002dlike-Data_0029"><acronym>SLD</acronym> (Swath-like Data)</a>:</td><td> </td><td valign="top"><a href="#Where-statement">Where statement</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-SMP"><acronym>SMP</acronym></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-sort"><code>sort</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-sort-alphabetically">sort alphabetically</a>:</td><td> </td><td valign="top"><a href="#ncks-netCDF-Kitchen-Sink">ncks netCDF Kitchen Sink</a></td></tr>
@@ -19517,6 +19781,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-swap-space">swap space</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-swap-space-1">swap space</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-swap-space-2">swap space</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-Swath_002dlike-Data-_0028SLD_0029">Swath-like Data (<acronym>SLD</acronym>)</a>:</td><td> </td><td valign="top"><a href="#Where-statement">Where statement</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-switches">switches</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-symbolic-links">symbolic links</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-symbolic-links-1">symbolic links</a>:</td><td> </td><td valign="top"><a href="#Statistics-vs_002e-Concatenation">Statistics vs. Concatenation</a></td></tr>
@@ -19561,7 +19826,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-TREFHT"><acronym>TREFHT</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-trunc"><var>trunc</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-trunc_0028_0029"><code>trunc()</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-truncate-_0028groups_0029">truncate (groups)</a>:</td><td> </td><td valign="top"><a href="#Group-Path-Editing">Group Path Editing</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-truncate-_0028groups_0029">truncate (groups)</a>:</td><td> </td><td valign="top"><a href="#Flattening-Groups">Flattening Groups</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-truncation-function">truncation 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-truth-condition">truth condition</a>:</td><td> </td><td valign="top"><a href="#Mask-condition">Mask condition</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-truth-condition-1">truth condition</a>:</td><td> </td><td valign="top"><a href="#Normalization-and-Integration">Normalization and Integration</a></td></tr>
@@ -19621,6 +19886,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-Vista-_0028Microsoft-operating-system_0029">Vista (Microsoft operating system)</a>:</td><td> </td><td valign="top"><a href="#Windows-Operating-System">Windows Operating System</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_letter-W">W</a></th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Weather-and-Research-Forecast-_0028WRF_0029-Model">Weather and Research Forecast (<acronym>WRF</acronym>) Model</a>:</td><td> </td><td valign="top"><a href="#Where-statement">Where statement</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-weighted-average">weighted average</a>:</td><td> </td><td valign="top"><a href="#ncwa-netCDF-Weighted-Averager">ncwa netCDF Weighted Averager</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-weighted-average-1">weighted average</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-Wenshan-Wang">Wenshan Wang</a>:</td><td> </td><td valign="top"><a href="#Contributors">Contributors</a></td></tr>
@@ -19641,6 +19907,7 @@ Previous: <a href="#mybibnode" accesskey="p" rel="previous">mybibnode</a>, Up: <
 <tr><td></td><td valign="top"><a href="#index-wrapped-coordinates-3">wrapped coordinates</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-wrapped-filenames">wrapped filenames</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-WRF"><acronym>WRF</acronym></a>:</td><td> </td><td valign="top"><a href="#Irregular-grids">Irregular grids</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-WRF-_0028Weather-and-Research-Forecast-Model_0029"><acronym>WRF</acronym> (Weather and Research Forecast Model)</a>:</td><td> </td><td valign="top"><a href="#Where-statement">Where statement</a></td></tr>
 <tr><td></td><td valign="top"><a href="#index-WWW-documentation">WWW documentation</a>:</td><td> </td><td valign="top"><a href="#Availability">Availability</a></td></tr>
 <tr><td colspan="4"> <hr></td></tr>
 <tr><th><a name="General-Index_cp_letter-X">X</a></th><td></td><td></td></tr>
@@ -19889,8 +20156,13 @@ results of file globbing) exceeding 4096 characters.</p>
 This is <acronym>BSD</acronym>-licensed software available from  
 <a href="http://www.geocities.com/ResearchTriangle/Node/9405/#my_getopt">http://www.geocities.com/ResearchTriangle/Node/9405/#my_getopt</a>.</p>
 <h3><a name="FOOT19" href="#DOCF19">(19)</a></h3>
-<p>The ‘<samp>-n</samp>’ option is a backward compatible superset of the
-<code>NINTAP</code> option from the <acronym>NCAR</acronym> <acronym>CCM</acronym> Processor.</p>
+<p>The ‘<samp>-n</samp>’ option is a backward-compatible superset of the 
+<code>NINTAP</code> option from the <acronym>NCAR</acronym> <acronym>CCM</acronym> Processor.
+The <acronym>CCM</acronym> Processor was custom-written Fortran code maintained
+for many years by Lawrence Buja at <acronym>NCAR</acronym>, and phased-out in 
+the late 1990s.
+<acronym>NCO</acronym> stole some ideas, like <code>NINTAP</code>-functionality,
+from the <acronym>CCM</acronym> Processor capabilities.</p>
 <h3><a name="FOOT20" href="#DOCF20">(20)</a></h3>
 <p><acronym>NCO</acronym> does not implement command line options to
 specify <acronym>FTP</acronym> logins and passwords because copying those data
@@ -20025,17 +20297,17 @@ called, although the results would be the same if it were.</p>
 <h3><a name="FOOT41" href="#DOCF41">(41)</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 IEEE 754 single-precision and then converted back to the
+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 IEEE 754 single-precision is converted to a
+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="FOOT42" href="#DOCF42">(42)</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 IEEE 754 double-precision representation and then converted
+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 IEEE 754 double
+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>
@@ -20110,11 +20382,18 @@ available, and uses the casting method when they are not.
 <p>Linux supports more of these intrinsic functions than
 other OSs.</p>
 <h3><a name="FOOT52" href="#DOCF52">(52)</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.
+Using NaN for the missing value in datasets is legal.
+We strongly discourage it.</p>
+<h3><a name="FOOT53" href="#DOCF53">(53)</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="FOOT53" href="#DOCF53">(53)</a></h3>
+<h3><a name="FOOT54" href="#DOCF54">(54)</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 
@@ -20122,30 +20401,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="FOOT54" href="#DOCF54">(54)</a></h3>
-<p>The command to do this is ‘<samp>ln -s -f ncbo ncadd</samp>’</p>
 <h3><a name="FOOT55" href="#DOCF55">(55)</a></h3>
-<p>The command to do this is ‘<samp>alias ncadd='ncbo --op_typ=add'</samp>’</p>
+<p>The command to do this is ‘<samp>ln -s -f ncbo ncadd</samp>’</p>
 <h3><a name="FOOT56" href="#DOCF56">(56)</a></h3>
+<p>The command to do this is ‘<samp>alias ncadd='ncbo --op_typ=add'</samp>’</p>
+<h3><a name="FOOT57" href="#DOCF57">(57)</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="FOOT57" href="#DOCF57">(57)</a></h3>
+<h3><a name="FOOT58" href="#DOCF58">(58)</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="FOOT58" href="#DOCF58">(58)</a></h3>
+<h3><a name="FOOT59" href="#DOCF59">(59)</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="FOOT59" href="#DOCF59">(59)</a></h3>
+<h3><a name="FOOT60" href="#DOCF60">(60)</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. 
@@ -20155,7 +20434,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="FOOT60" href="#DOCF60">(60)</a></h3>
+<h3><a name="FOOT61" href="#DOCF61">(61)</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>,
@@ -20163,10 +20442,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="FOOT61" href="#DOCF61">(61)</a></h3>
+<h3><a name="FOOT62" href="#DOCF62">(62)</a></h3>
 <p>This limitation, imposed by the netCDF storage layer,
 may be relaxed in the future with netCDF4.</p>
-<h3><a name="FOOT62" href="#DOCF62">(62)</a></h3>
+<h3><a name="FOOT63" href="#DOCF63">(63)</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.
@@ -20178,38 +20457,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="FOOT63" href="#DOCF63">(63)</a></h3>
+<h3><a name="FOOT64" href="#DOCF64">(64)</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="FOOT64" href="#DOCF64">(64)</a></h3>
+<h3><a name="FOOT65" href="#DOCF65">(65)</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="FOOT65" href="#DOCF65">(65)</a></h3>
+<h3><a name="FOOT66" href="#DOCF66">(66)</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="FOOT66" href="#DOCF66">(66)</a></h3>
+<h3><a name="FOOT67" href="#DOCF67">(67)</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="FOOT67" href="#DOCF67">(67)</a></h3>
+<h3><a name="FOOT68" href="#DOCF68">(68)</a></h3>
 <p><code>gw</code> stands for <em>Gaussian weight</em> in many
 climate models.</p>
-<h3><a name="FOOT68" href="#DOCF68">(68)</a></h3>
+<h3><a name="FOOT69" href="#DOCF69">(69)</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="FOOT69" href="#DOCF69">(69)</a></h3>
+<h3><a name="FOOT70" href="#DOCF70">(70)</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="FOOT70" href="#DOCF70">(70)</a></h3>
+<h3><a name="FOOT71" href="#DOCF71">(71)</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 61ddd62..19982c3 100644
Binary files a/doc/nco.pdf and b/doc/nco.pdf differ
diff --git a/doc/nco.ps b/doc/nco.ps
index 0f4aed7..67212dd 100644
--- a/doc/nco.ps
+++ b/doc/nco.ps
@@ -1,8 +1,8 @@
 %!PS-Adobe-2.0
 %%Creator: dvips(k) 5.993 Copyright 2013 Radical Eye Software
 %%Title: nco.dvi
-%%CreationDate: Wed May 21 21:31:06 2014
-%%Pages: 268
+%%CreationDate: Fri Aug 22 19:30:58 2014
+%%Pages: 274
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 596 842
 %%DocumentFonts: CMBX12 CMR10 CMSY10 CMSL10 CMTT10 CMMI12 CMMI10 CMR7
@@ -13,7 +13,7 @@
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips -o nco.ps nco.dvi
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2014.05.21:2130
+%DVIPSSource:  TeX output 2014.08.22:1930
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -11394,34 +11394,34 @@ rf /Fk 244[100 100 100 100 8[{}4 83.022 /LCIRCLE10 rf
 /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 1[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[{}58 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 48 48 48
+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
 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
+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
@@ -11449,8 +11449,8 @@ ifelse
 %%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.4,)j(for)d FC(NCO)g
-FD(V)-8 b(ersion)31 b(4.4.4)3364 1697 y(Ma)m(y)g(2014)150
+(erators)2316 1589 y(Edition)f(4.4.5,)j(for)d FC(NCO)g
+FD(V)-8 b(ersion)31 b(4.4.5)3367 1697 y(July)f(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
@@ -11595,7 +11595,7 @@ f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
 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(:)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(26)275 4792 y(3.5)92 b(Sp)s(ecifying)29 b(Input)g(Files)17
+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(:)
 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
@@ -11612,381 +11612,398 @@ h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)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
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)58 b FD(34)275 5340 y(3.9)92 b(File)31 b(F)-8
+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(:)
 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
 end
 %%Page: -2 4
 TeXDict begin -2 3 bop 150 -116 a FD(ii)2667 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)399 83 y(3.9.1)93 b(File)31
+b FD(4.4.5)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
 (:)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(35)399 193 y(3.9.2)93 b(Determining)31 b(File)h(F)-8
+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
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)50 b FD(36)399 302 y(3.9.3)93 b(File)31 b(Con)m(v)m(ersion)c
+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(:)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
 (:)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(38)275 521 y(3.10)92 b(Large)31 b(File)h(Supp)s(ort)12
+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(:)
 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(39)275 631
+(:)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(:)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
 (:)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(44)275 850 y(3.13)92 b(Group)30
+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
 (:)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(45)275 960 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(:)f(:)h(:)f
+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
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)45 b FD(53)275 1069 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(:)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(54)275 1179 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(:)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(55)275 1289 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(:)
-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(57)275 1398
-y(3.18)92 b(Sub)s(cycle)14 b Fv(:)h(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
+f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)55 b FD(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
+(:)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(:)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
+(:)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(:)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(58)275 1508 y(3.19)92
-b(Multislabs)22 b Fv(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)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(:)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(56)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(:)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(:)
+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(:)h(:)f(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)52 b FD(59)275 1617 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(:)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(62)275
-1727 y(3.21)92 b(Auxiliary)31 b(Co)s(ordinates)11 b Fv(:)k(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+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(:)
+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
+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(:)
 h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)41 b FD(63)275 1836 y(3.22)92 b(UDUnits)31 b(Supp)s(ort)18
+(:)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
+(:)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
 (:)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(65)275
-1946 y(3.23)92 b(Rebasing)31 b(Time)f(Co)s(ordinate)17
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)48 b FD(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(:)
 h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)46 b FD(68)275 2056 y(3.24)92 b(Multiple)31 b(Record)g(Dimensions)c
+(:)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
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)57
-b FD(69)275 2165 y(3.25)92 b(Missing)31 b(v)-5 b(alues)24
+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
 (:)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(69)275 2275 y(3.26)92 b(Ch)m(unking)16 b Fv(:)f(:)g(:)h(:)f(:)g(:)
+b FD(70)275 2713 y(3.26)92 b(Ch)m(unking)16 b Fv(:)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(71)275
-2384 y(3.27)92 b(De\015ation)29 b Fv(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+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(75)275 2494
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)57 b FD(77)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(76)275 2604 y(3.29)92 b(Bu\013er)30
+g(:)h(:)f(:)h(:)f(:)50 b FD(77)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(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)52 b FD(77)275 2713 y(3.30)92 b(RAM)31 b(disks)26
+(:)h(:)52 b FD(79)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
 (:)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(78)275 2823 y(3.31)92 b(P)m(ac)m(k)m(ed)32 b(data)27
+b FD(79)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
 (:)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(79)399 2932 y(P)m(ac)m(king)32 b(Algorithm)19 b
+b FD(81)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
 (:)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(80)399
-3042 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 FD(81)399
+3480 y(Unpac)m(king)31 b(Algorithm)26 b Fv(:)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(80)399 3152 y(Default)32 b(Handling)e(of)h(P)m(ac)m(k)m
+(:)h(:)54 b FD(82)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
 (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)44 b FD(81)399 3261 y(Default)32 b(Handling)e(of)h(P)m(ac)m(k)m(ed)
+f(:)44 b FD(82)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
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-44 b FD(81)275 3371 y(3.32)92 b(Op)s(eration)30 b(T)m(yp)s(es)14
+44 b FD(83)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(:)
 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(82)275
-3480 y(3.33)92 b(T)m(yp)s(e)30 b(Con)m(v)m(ersion)14
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b FD(83)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(87)399
-3590 y(3.33.1)93 b(Automatic)32 b(t)m(yp)s(e)f(con)m(v)m(ersion)21
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)43 b FD(88)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(87)399 3699 y(3.33.2)93 b(Promoting)31 b(Single-precision)h(to)f
+b FD(89)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(89)399 3809 y(3.33.3)93
+(:)f(:)g(:)h(:)f(:)h(:)41 b FD(90)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(95)275 3919 y(3.34)92 b(Batc)m(h)32 b(Mo)s(de)26
+b FD(96)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(:)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(95)275 4028 y(3.35)92 b(History)31 b(A)m(ttribute)21
+b FD(97)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(95)275
-4138 y(3.36)92 b(File)32 b(List)e(A)m(ttributes)24 b
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)51 b FD(97)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(96)275 4247 y(3.37)92
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)53 b FD(97)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(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)44 b FD(97)275 4357 y(3.38)92 b FC(ARM)31
-b FD(Con)m(v)m(en)m(tions)12 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
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-42 b FD(98)275 4467 y(3.39)92 b(Op)s(erator)30 b(V)-8
-b(ersion)28 b Fv(:)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(:)57
-b FD(99)p eop end
+g(:)h(:)f(:)h(:)44 b FD(98)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(:)
+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(100)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
+(:)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(101)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(101)275
+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(102)399
+(:)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(103)399 439 y(4.1.2)93 b(Expressions)20 b Fv(:)14
+FD(105)399 439 y(4.1.2)93 b(Expressions)20 b Fv(:)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(103)399 549
+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(:)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(107)399 658 y(4.1.4)93 b(Left)31 b(hand)e(casting)d
+(:)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
 (:)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(108)399 768 y(4.1.5)93 b(Arra)m(ys)30
+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
 (:)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(108)399 878 y(4.1.6)93
+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(:)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(111)399 987 y(4.1.7)93 b(Num)m(b)s(er)29 b(literals)23
+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
 (:)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(112)399 1097 y(4.1.8)93
+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
 (:)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(113)399 1206 y(4.1.9)93 b(prin)m(t)30 b(statemen)m(t)c
+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
 (:)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(115)399 1316 y(4.1.10)93
+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(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b FD(115)399
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b FD(117)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(:)
 g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)46
-b FD(117)399 1535 y(4.1.12)93 b FC(RAM)31 b FD(v)-5 b(ariables)22
+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
 (:)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(119)399 1645 y(4.1.13)93
+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
 (:)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(120)399 1754 y(4.1.14)93 b(Lo)s(ops)10 b Fv(:)15 b(:)h(:)f(:)h(:)f
+FD(122)399 1754 y(4.1.14)93 b(Lo)s(ops)10 b Fv(:)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(121)399
+(:)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
 (:)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(122)399 1973 y(4.1.16)93 b Fy(sort)30
+(:)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
 (:)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(122)399 2083 y(4.1.17)93 b(Irregular)30 b(Grids)12
+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(:)
 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(127)399 2193 y(4.1.18)93
+(:)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
 (:)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(129)399
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55 b FD(132)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(:)
 f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)48
-b FD(131)399 2412 y(4.1.20)93 b(GSL)30 b(in)m(terp)s(olation)11
+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
 (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)41 b FD(139)399 2521 y(4.1.21)93 b(GSL)30
+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(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)49 b FD(140)399 2631 y(4.1.22)93 b(GSL)30
+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
 (:)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(142)399 2741 y(4.1.23)93 b(GSL)30 b(random)g(n)m(um)m(b)s(er)f
+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(144)399
+(:)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
 (:)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(146)399 2960 y(4.1.25)93 b(In)m(trinsic)31 b(mathematical)h(metho)
+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(148)399 3069
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)51 b FD(151)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(150)399 3179 y(4.1.27)93 b(ID)31 b(Quoting)22
+(:)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
 (:)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(151)275
+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(153)275
+(:)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(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46
-b FD(159)275 3508 y(4.4)92 b Fy(nces)29 b FD(netCDF)i(Ensem)m(ble)f
+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
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)51
-b FD(164)275 3617 y(4.5)92 b Fy(ncecat)28 b FD(netCDF)j(Ensem)m(ble)g
+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(167)275
+(:)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(170)275
+(:)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
 (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)38 b FD(173)399 3946 y(Options)30 b(sp)s(eci\014c)g(to)h
+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
 (:)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(174)399 4056
+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
 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(181)275 4165 y(4.8)92 b Fy(ncpdq)29
+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(186)399 4275 y(P)m(ac)m(king)32 b(and)e(Unpac)m(king)h(F)-8
+(:)58 b FD(189)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(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)46
-b FD(186)399 4384 y(Dimension)31 b(P)m(erm)m(utation)19
+b FD(189)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(:)
 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(189)275 4494 y(4.9)92
+(:)h(:)f(:)h(:)f(:)g(:)50 b FD(192)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
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43
-b FD(194)275 4604 y(4.10)92 b Fy(ncrcat)29 b FD(netCDF)i(Record)f
+b FD(197)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(196)275
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)45 b FD(199)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
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)40
-b FD(198)275 4823 y(4.12)92 b Fy(ncwa)29 b FD(netCDF)i(W)-8
+b FD(201)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(:)
 f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)56 b FD(202)399 4932 y(4.12.1)93 b(Mask)31 b(condition)26
+(:)g(:)56 b FD(205)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(:)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(203)399 5042 y(4.12.2)93
+f(:)h(:)f(:)g(:)h(:)f(:)55 b FD(206)399 5042 y(4.12.2)93
 b(Normalization)33 b(and)d(In)m(tegration)8 b Fv(:)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(204)p eop end
+(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b FD(207)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.4)j(User)d(Guide)150 83 y FB(5)135 b(Con)l(tributing)14
+b FD(4.4.5)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
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-58 b FB(207)275 220 y FD(5.1)92 b(Con)m(tributors)15
+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(:)
 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(207)275 330 y(5.2)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
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)43
-b FD(209)150 572 y FB(6)135 b(Quic)l(k)45 b(Start)26
+b FD(211)275 330 y(5.2)92 b(Citation)25 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(:)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
+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(:)
+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
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)70 b FB(211)275 709 y FD(6.1)92 b(Daily)31 b(data)g(in)f(one)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(:)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(211)275 819
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)41 b FD(215)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
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)40 b FD(211)275 928 y(6.3)92 b(One)30
+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
 (:)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(212)275 1038 y(6.4)92 b(Multiple)31 b(\014les)f(with)g(m)m
+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
 (:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43
-b FD(212)150 1280 y FB(7)135 b Fu(CMIP5)45 b FB(Example)24
+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(:)
 f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)68
-b FB(213)275 1417 y FD(7.1)92 b(Com)m(bine)30 b(Files)d
+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
 (:)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(213)275 1527 y(7.2)92 b(Global)31 b(Distribution)g(of)f(Long-term)
+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(218)275 1636 y(7.3)92
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)46 b FD(223)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
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55
-b FD(221)275 1746 y(7.4)92 b(Mon)m(thly)31 b(Cycle)16
+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(:)
 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(228)275 1856 y(7.5)92 b(Regrid)30 b FC(MODIS)h FD(Data)10
+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
 (:)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(231)275 1965
+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
 (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41
-b FD(234)275 2075 y(7.7)92 b(P)m(erm)m(ute)31 b FC(MODIS)f
+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
 (:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)45 b FD(235)150 2317 y FB(8)135 b(P)l(arallel)13
+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
 (:)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(237)150 2587 y(9)135
+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
 (:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
-h(:)67 b FB(239)150 2857 y(10)135 b(References)20 b Fw(:)h(:)e(:)g(:)h
+h(:)67 b FB(245)150 2966 y(10)135 b(References)20 b Fw(:)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(247)150 3127 y(General)46 b(Index)24 b Fw(:)19 b(:)g(:)h(:)f(:)h
+b FB(253)150 3236 y(General)46 b(Index)24 b Fw(:)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(249)p eop end
+b FB(255)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
@@ -12040,7 +12057,7 @@ FD(\).)36 b(This)29 b(supp)s(ort)g(allo)m(w)m(ed)j(me)f(to)g(main)m
 eop end
 %%Page: 2 8
 TeXDict begin 2 7 bop 150 -116 a FD(2)2672 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(and)i(others)h(to)g(adv)-5
+b FD(4.4.5)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
 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
@@ -12054,31 +12071,31 @@ 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)27 b(end)f(of)i(the)g
-FC(NSF)g FD(SEI)f(gran)m(t)h(in)f(August,)h(2008)i(curtailed)e
-FC(NCO)f FD(dev)m(elopmen)m(t.)41 b(F)-8 b(ortunately)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
 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)e(dev)m(elop)s(ed)h(the)g(k)m(ey)g
-Fy(ncap2)f FD(features)h(used)e(in)i(our)f(climate)i(researc)m(h.)40
-b(And)26 b(recen)m(tely)i(the)f(NASA)150 2262 y(A)m(CCESS)i(program)h
-(commenced)h(funding)e(NCO)h(supp)s(ort)e(for)j(netCDF4)g(group)f
-(functionalit)m(y)-8 b(.)150 2371 y(Th)m(us)29 b FC(NCO)h
-FD(will)h(gro)m(w)g(and)f(ev)-5 b(ade)31 b(bit-rot)g(for)f(the)h
-(foreseeable)h(future.)275 2531 y(On)38 b(a)h(p)s(ersonal)g(lev)m(el,)k
-(I)c(con)m(tin)m(ue)i(to)f(receiv)m(e)h(with)e(gratitude)h(the)f
-(thanks)g(of)g FC(NCO)g FD(users)f(at)150 2640 y(nearly)33
-b(ev)m(ery)g(scien)m(ti\014c)h(meeting)g(I)e(attend.)49
-b(P)m(eople)34 b(in)m(tro)s(duce)e(themselv)m(es,)j(shak)m(e)e(m)m(y)g
-(hand)f(and)150 2750 y(extol,)e(sometimes)g(rather)e(e\013usiv)m(ely)-8
-b(,)30 b(these)f(time-sa)m(ving)h(to)s(ols.)41 b(These)28
-b(exc)m(hanges)i(ligh)m(ten)f(me)g(lik)m(e)150 2859 y(an)m(ti-gra)m
-(vit)m(y)-8 b(.)49 b(Sometimes)32 b(I)g(da)m(ydream)f(ho)m(w)h(man)m(y)
-g(hours)f FC(NCO)g FD(has)h(turned)e(from)i(grun)m(t)f(w)m(ork)h(to)150
-2969 y(pro)s(ductiv)m(e)39 b(researc)m(h)h(for)g(researc)m(hers)f(w)m
-(orld-wide,)j(or)e(from)f(researc)m(h)h(in)m(to)g(early)g(happ)m(y)f
-(hours.)150 3078 y(It's)31 b(a)f(co)s(ol)i(feeling.)150
-3347 y(Charlie)e(Zender)150 3457 y(April,)g(2012)150
+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
+(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
+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
+(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
+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
+(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
@@ -12175,10 +12192,10 @@ 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.4\).)64
+m(e)h(op)s(erators)f(in)e(the)i(curren)m(t)f(v)m(ersion)g(\(4.4.5\).)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(101.)42 b(Man)m(y)30 b(of)g(the)g(tasks)h(that)f
+(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
@@ -12201,7 +12218,7 @@ b(able)32 b(of)275 5340 y(Con)n(ten)n(ts)25 b(after)i(the)e(co)n(v)n
 eop end
 %%Page: 6 12
 TeXDict begin 6 11 bop 150 -116 a FD(6)2672 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(page)d(101.)41 b(These)26
+b FD(4.4.5)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
@@ -12216,14 +12233,14 @@ b(Y)-8 b(ou)26 b(can)g(either)g(use)f(an)h(op)s(erator)g(after)g(the)g
 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(213\).)275
+(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(211\))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
 b(examples)h(are)g(in)f(the)g(Chapter)f(7)i([CMIP5)f(Example],)i(page)f
-(213.)53 b(The)34 b([General)h(Index],)150 1816 y(page)i(249)g(is)e
+(217.)53 b(The)34 b([General)h(Index],)150 1816 y(page)i(255)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
@@ -12353,7 +12370,7 @@ FC(GSL)g FD(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(131\).)275
+([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
 (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
@@ -12399,7 +12416,7 @@ 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
 end
 %%Page: 8 14
 TeXDict begin 8 13 bop 150 -116 a FD(8)2672 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(UNIX-em)m(ulating)39
+b FD(4.4.5)j(User)d(Guide)150 299 y(UNIX-em)m(ulating)39
 b(compatibilit)m(y)g(la)m(y)m(er)f(with)f(the)f(GNU)i(to)s(olc)m(hain.)
 61 b(The)37 b(switc)m(hes)g(necessary)g(to)150 408 y(accomplish)31
 b(b)s(oth)f(are)h(included)e(in)h(the)h(standard)e(distribution)h(of)h
@@ -12471,8 +12488,8 @@ b(implemen)m(t)g(the)g(sym)m(b)s(olic)f(links)h(and)150
 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
-b(ncbo)f(--op_typ='+')390 4336 y(ln)g(-s)g(-f)h(ncra)e(ncecat)189
-b(#)48 b(ncra)f(--pseudonym='ncecat')390 4445 y(ln)g(-s)g(-f)h(ncra)e
+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
 4555 y(ln)g(-s)g(-f)h(ncbo)e(ncadd)237 b(#)48 b(ncbo)f(--op_typ='+')390
 4664 y(ln)g(-s)g(-f)h(ncbo)e(ncsubtract)f(#)j(ncbo)e(--op_typ='-')390
@@ -12490,8 +12507,8 @@ Fs(,)g Fr(g++)p Fs(.)35 b(These)25 b Fp(GNU)g Fs(compilers)h(ma)n(y)e
 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
 (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(Cygwin)f(executable)f
-(\(and)i(link\))f(names)h(have)f(an)i('.exe')e(suffix,)g(e.g.,)390
+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)
 h(giv)m(en)g(after)g(the)g(commen)m(t.)51 b(As)33 b(can)h(b)s(e)f
@@ -12586,7 +12603,7 @@ 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
 %%Page: 10 16
 TeXDict begin 10 15 bop 150 -116 a FD(10)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(to)g(eliminate)i(all)e(netCDF3)h
+b FD(4.4.5)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
 (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
@@ -12643,13 +12660,13 @@ Fy(ncap2)e FD(pro)s(cesses)i(algebraic)h(scripts)150
 (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(75)g(for)f(more)h(details.)275 3652
+3477 y(page)31 b(77)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
 (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(71)g
+(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
 (\(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
@@ -12658,7 +12675,7 @@ b(Group)25 b(supp)s(ort)g(for)h(these)h(op)s(erators)g(w)m(as)g
 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
 b(See)33 b(Section)g(3.13)150 4375 y([Group)d(P)m(ath)h(Editing],)g
-(page)g(45)h(for)e(more)g(details.)42 b(Group)30 b(supp)s(ort)f(for)h
+(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
 (er,)i(2013.)275 4660 y(Supp)s(ort)39 b(for)i(netCDF4)i(in)e(the)g
@@ -12668,7 +12685,7 @@ FC(NCO)h FD(v)m(ersion)f(4.3.x)i(series)f(completed)g(in)f(Decem)m(b)s
 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(159)h(for)e(more)g
+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
 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
@@ -12770,7 +12787,7 @@ 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
 %%Page: 12 18
 TeXDict begin 12 17 bop 150 -116 a FD(12)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(ncks)47 b(--hdf4)f(-3)h(fl.hdf)f
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(ncks)47 b(--hdf4)f(-3)h(fl.hdf)f
 (fl.nc)g(#)i(HDF4->netCDF3)c(\(netCDF)i(4.3.0-\))390
 408 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 518 y(ncks)h(--hdf4)f(-7)h(fl.hdf)f
@@ -12976,7 +12993,7 @@ 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)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.4)j(User)d(Guide)150 299 y(a)h(publically)g(accessible)i(lo)s
+b FD(4.4.5)j(User)d(Guide)150 299 y(a)h(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 408 y(buglist)30
 b(\()p Fy(http://sf.net/bugs/?group_i)o(d=33)o(31)p FD(\).)275
@@ -13091,10 +13108,10 @@ 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
 b(See)29 b(Section)g(4.11)i([ncrename)e(netCDF)275 5340
-y(Renamer],)d(page)g(198.)p eop end
+y(Renamer],)d(page)g(201.)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.4)j(User)d(Guide)150 299 y(Also,)37 b(note)e(this)f(feature)h
+b FD(4.4.5)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
@@ -13122,7 +13139,7 @@ b(This)34 b(is)g(and)g(has)g(alw)m(a)m(ys)i(b)s(een)e(the)h(default)150
 (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(78\))g(ma)m(y)g
+(Section)g(3.30)g([RAM)g(disks],)150 1664 y(page)f(79\))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
@@ -13138,7 +13155,7 @@ b FD(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(78\))h(then)f(it)g(is)g
+b(Section)f(3.30)i([RAM)e(disks],)g(page)g(79\))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
@@ -13160,7 +13177,7 @@ 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
 (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(78.)57 b(Ho)m(w)m(ev)m(er,)39 b(as)d(of)g(20130328,)k
+(disks],)f(page)h(79.)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
@@ -13241,7 +13258,7 @@ b Fz(app)s(end/replace)k FD(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
 (Section)h(4.7)150 2694 y([nc)m(ks)e(netCDF)g(Kitc)m(hen)g(Sink],)f
-(page)h(173.)275 2876 y(The)e(simplest)i(w)m(a)m(y)g(to)g(create)h(the)
+(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
@@ -13260,12 +13277,12 @@ FD(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(159\))h(do)s(es)d
+4357 y(netCDF)37 b(Binary)f(Op)s(erator],)i(page)f(162\))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
 ([nc\015in)m(t)150 4576 y(netCDF)e(File)g(In)m(terp)s(olator],)h(page)f
-(170\))h(do)s(es)e(\014le)g(addition,)h(subtraction,)g(m)m
+(173\))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
@@ -13282,7 +13299,7 @@ b Fs(use)h Fm(paste)k Fs(instead)c(of)g Fm(app)r(end)s
 Fs(?)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.4)j(User)d(Guide)150 299 y FB(2.6)68 b(Statistics)47
+b FD(4.4.5)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
@@ -13327,7 +13344,7 @@ Fy(ncrcat)g(8?.nc)g(8589.nc)p FD(.)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(196,)h(for)d(a)h(complete)h(description)f(of)
+(Concatenator],)i(page)f(199,)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
 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
@@ -13362,7 +13379,7 @@ b(ariables)32 b(m)m(ust)f(b)s(e)f(the)i(same)g(from)f(\014le)g(to)h
 (\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(167,)i(for)e(a)150
+(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
 (\014les)e(along)g(an)m(y)g(dimension,)g(not)g(just)f(the)g(record)150
@@ -13406,23 +13423,23 @@ Fy(time)p FD(.)44 b(Our)31 b(goal)i(is)f(to)h(create)g(a)g(single)f
 (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
 (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)f(#)j(Make)g
-(x)h(record)e(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 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(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
+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
+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
+(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(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)
 d(length)h(v)-5 b(ariables)38 b(from)f(m)m(ultiple)h(\014les.)62
@@ -13445,13 +13462,13 @@ Fy(nces)g FD(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(164,)g(for)e(a)h(complete)h(description)f(of)f
+(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
 (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(194,)h(for)f(a)f(complete)i(description)f
+3604 y(Av)m(erager],)h(page)f(197,)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
 (data)f(b)s(et)m(w)m(een)g(or)f(t)m(w)m(o)h(\014les.)38
@@ -13459,7 +13476,7 @@ 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
 (\(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(170\).)41 b(Note)28 b(that)f(this)f
+(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
 (\014le,)g(e.g.,)h(to)f(con)m(v)m(ert)h(b)s(et)m(w)m(een)f(di\013ering)
@@ -13479,12 +13496,12 @@ f(\014lenames.)40 b(The)27 b(`)p Fy(-n)j Fn(loop)p FD(')150
 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(95\).)55
+b(3.35)i([History)e(A)m(ttribute],)i(page)f(97\).)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
 %%Page: 20 26
 TeXDict begin 20 25 bop 150 -116 a FD(20)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(there)h(is)g(no)g(simple,)g
+b FD(4.4.5)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
@@ -13514,7 +13531,7 @@ b(|)47 b(ncecat)f(-o)i(foo.nc)275 1798 y FD(This)43 b(metho)s(d)h(a)m
 (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(95\))f(do)s(es)f(not)h(record)f(the)h
+2017 y(A)m(ttribute],)34 b(page)g(97\))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
 b(This)30 b(mak)m(es)j(determining)e(the)g(data)h(pro)m(v)m(enance)g
@@ -13524,7 +13541,7 @@ b(o)26 b(remedy)f(this)g(situation,)j(m)m(ulti-\014le)e(op)s(erators)g
 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(96\).)74 b(Although)150
+([File)f(List)f(A)m(ttributes],)k(page)d(97\).)74 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
@@ -13619,7 +13636,7 @@ e(command)h(line)g(size.)55 b(The)150 2496 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 2606 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(95\))g(retains)f
+(Section)g(3.35)h([History)f(A)m(ttribute],)i(page)e(97\))g(retains)f
 (the)h(\014lename)150 2716 y(list)g(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 2825
@@ -13649,7 +13666,7 @@ b(b)s(est)g(strategy)j(is)d(to)i(w)m(ork)f(on)f(a)h(mac)m(hine)150
 b(users)e(should)h(familiarize)150 4279 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
-4388 y(Supp)s(ort],)40 b(page)g(39\).)69 b(The)39 b(next)g(section)i
+4388 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 4498 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
@@ -13673,7 +13690,7 @@ b(ailable)32 b(memory)e(with)h Fy(ulimit)p FD(.)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.4)j(User)d(Guide)275 299 y(The)k(sp)s(eed)f(of)i(the)g
+b FD(4.4.5)j(User)d(Guide)275 299 y(The)k(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
 b(When)34 b(pro)s(cessing)g(large)i(\014les)150 408 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
@@ -13792,7 +13809,7 @@ b(output)f(\014le)g(\(see)i(Section)f(3.11)h([Subsetting)e(Files],)j
 577 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 686 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(87\).)50
+(3.33)g([T)m(yp)s(e)f(Con)m(v)m(ersion],)h(page)g(88\).)50
 b(F)-8 b(or)33 b(example,)i Fy(ncra)d FD(and)150 796
 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
@@ -13825,7 +13842,7 @@ b FC(RAM)g FD(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 2279 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(78)h(for)
+FD(\).)40 b(See)31 b(Section)g(3.30)h([RAM)f(disks],)f(page)h(79)h(for)
 e(further)f(details.)275 2448 y Fy(ncwa)22 b FD(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 2557
@@ -13862,7 +13879,7 @@ 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
 b(An)150 4295 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
-(108\))150 4405 y(is)k(used)g(to)h(stretc)m(h)g(the)g(size)g(of)g
+(110\))150 4405 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 4514 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
@@ -13885,7 +13902,7 @@ 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)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.4)j(User)d(Guide)150 299 y(reasons)36 b(to)g(b)s(eliev)m(e)h
+b FD(4.4.5)j(User)d(Guide)150 299 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 408 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
@@ -13946,2606 +13963,2658 @@ 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 549 y FD(Man)m(y)36 b(features)g(ha)m(v)
+b(NCO)54 b(F)-13 b(eatures)150 526 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 659 y(for)g(brevit)m(y)-8
+(and)g(are)h(describ)s(ed)e(here)150 635 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
-768 y(whic)m(h)25 b(the)h(feature)g(is)g(implemen)m(ted.)40
+745 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 878 y(across)37 b(all)g(op)s(erators)f(wherev)m(er)
+h(consisten)m(t)150 854 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 987 y(that)31
+(listed)f(for)g(a)h(feature,)h(then)150 964 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 1216 y FB(3.1)68 b(In)l
-(ternationalization)150 1326 y Fk(\013)p 200 1326 3554
-4 v 3553 w(\010)p 150 1597 4 223 v 178 1462 a FD(Av)-5
-b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)p 3803 1597
-V 150 1648 a Fk(\012)p 200 1648 3554 4 v 3553 w(\011)275
-1823 y FC(NCO)36 b FD(supp)s(ort)e(for)i Fz(in)m(ternationalization)k
+(trolled)i(b)m(y)e(the)g(user.)150 1180 y FB(3.1)68 b(In)l
+(ternationalization)150 1291 y Fk(\013)p 200 1291 3554
+4 v 3553 w(\010)p 150 1561 4 223 v 178 1427 a FD(Av)-5
+b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)p 3803 1561
+V 150 1613 a Fk(\012)p 200 1613 3554 4 v 3553 w(\011)275
+1788 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 1933 y(sages\))32 b(is)e(nascen)m(t.)42
-b(W)-8 b(e)31 b(hop)s(e)f(to)h(pro)s(duce)e(foreign)i(language)h
-(string)e(catalogues)j(in)d(2004.)150 2161 y FB(3.2)68
-b(Metadata)46 b(Optimization)150 2295 y Fk(\013)p 200
-2295 V 3553 w(\010)p 150 2785 4 442 v 178 2431 a FD(Av)-5
-b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)178 2541
-y(Short)f(options:)41 b(None)178 2650 y(Long)31 b(options:)41
-b(`)p Fy(--hdr_pad)p FD(',)28 b(`)p Fy(--header_pad)p
-FD(')p 3803 2785 V 150 2836 a Fk(\012)p 200 2836 3554
-4 v 3553 w(\011)275 3006 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(eed)e(of)i(future)e(metadata)j(op)s
-(erations.)40 b(Use)150 3116 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 3116 28 4 v 39
-w(pad)i FD(b)m(ytes)e(b)s(e)f(inserted)150 3226 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
-3335 y(the)f(netCDF3)h(p)s(erformance)e(p)s(enalt)m(y)i(of)f(cop)m
-(ying)g(the)h(en)m(tire)f(output)g(\014le)g(unless)f(the)h(expansion)
-150 3445 y(exceeds)c(the)g(amoun)m(t)g(of)f(header)g(padding)g
-(exceeded.)50 b(This)33 b(can)h(b)s(e)e(b)s(ene\014cial)i(when)e(it)i
-(is)f(kno)m(wn)150 3554 y(that)e(some)g(metadata)h(will)f(b)s(e)e
-(added)h(at)h(a)g(future)e(date.)275 3714 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(eha)m(v)m(es)150 3823 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
-3933 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 4042 y FD(\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 4152 y(F)-8
+b(arning)37 b(mes-)150 1898 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
+2007 y(Spanish\))f(in)h(2004,)j(y)m(et)f(did)d(not)h(activ)-5
+b(ate)40 b(these)d(in)g(distributions)g(b)s(ecause)g(the)g(catalogues)i
+(w)m(ere)150 2117 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 2226 y(fa)m(v)m(orite)33
+b(languages.)150 2443 y FB(3.2)68 b(Metadata)46 b(Optimization)150
+2576 y Fk(\013)p 200 2576 V 3553 w(\010)p 150 3066 4
+442 v 178 2713 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31
+b(op)s(erators)178 2822 y(Short)f(options:)41 b(None)178
+2932 y(Long)31 b(options:)41 b(`)p Fy(--hdr_pad)p FD(',)28
+b(`)p Fy(--header_pad)p FD(')p 3803 3066 V 150 3118 a
+Fk(\012)p 200 3118 3554 4 v 3553 w(\011)275 3288 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
+(eed)e(of)i(future)e(metadata)j(op)s(erations.)40 b(Use)150
+3398 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 3398 28 4 v 39 w(pad)i FD(b)m(ytes)e(b)s(e)f(inserted)150
+3507 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 3617 y(the)f(netCDF3)h(p)s(erformance)e(p)s(enalt)m(y)i(of)f
+(cop)m(ying)g(the)h(en)m(tire)f(output)g(\014le)g(unless)f(the)h
+(expansion)150 3726 y(exceeds)c(the)g(amoun)m(t)g(of)f(header)g
+(padding)g(exceeded.)50 b(This)33 b(can)h(b)s(e)e(b)s(ene\014cial)i
+(when)e(it)i(is)f(kno)m(wn)150 3836 y(that)e(some)g(metadata)h(will)f
+(b)s(e)e(added)h(at)h(a)g(future)e(date.)275 3995 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(eha)m(v)m(es)150
+4105 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 4215 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 4324 y FD(\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 4434 y(F)-8
 b(ormats)32 b(and)d(Con)m(v)m(ersion],)j(page)f(35\).)150
-4380 y FB(3.3)68 b(Op)t(enMP)44 b(Threading)150 4514
-y Fk(\013)p 200 4514 3554 4 v 3553 w(\010)p 150 5004
-4 442 v 178 4650 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p
+4650 y FB(3.3)68 b(Op)t(enMP)44 b(Threading)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 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 4760 y FD(Short)h(options:)41
-b(`)p Fy(-t)p FD(')178 4869 y(Long)31 b(options:)41 b(`)p
+FD(,)h Fy(ncrcat)p FD(,)f Fy(ncwa)178 5029 y FD(Short)h(options:)41
+b(`)p Fy(-t)p FD(')178 5139 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 5004 V 150 5055 a
-Fk(\012)p 200 5055 3554 4 v 3553 w(\011)275 5230 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(enMP-)150
-5340 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)p eop end
+Fy(--omp_num_threads)p FD(')p 3803 5274 V 150 5325 a
+Fk(\012)p 200 5325 3554 4 v 3553 w(\011)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.4)j(User)d(Guide)150 299 y(request)d(a)g(sp)s(eci\014c)f(n)m
-(um)m(b)s(er)f(of)i(threads)f Fz(thr)p 1722 299 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 408 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 518 y(obtains)36 b Fz(thr)p 602 518 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 b(ariable,)39 b(if)d(presen)m(t,)h(or)f
-(from)g(the)150 628 y FC(OS)p FD(,)30 b(if)h(not.)150
-706 y Fk(\013)p 200 706 3554 4 v 3553 w(\010)p 150 1876
-4 1122 v 303 847 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
-957 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 1066 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 1176
-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 1286 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 1395 y(from)i(parallel)h
-(p)s(ortions)e(of)h(co)s(de.)40 b(This)26 b(parallelism)i(is)f(no)m(w)g
-(exploited)h(b)m(y)e(Op)s(enMP)g(but)g(then)h(runs)178
-1505 y(in)m(to)37 b(the)f(I/O)g(b)s(ottlenec)m(k)i(during)c(output.)57
+b FD(4.4.5)j(User)d(Guide)275 299 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(enMP-)150 408 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 518
+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 518 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 628 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
+737 y(obtains)36 b Fz(thr)p 602 737 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
+b(ariable,)39 b(if)d(presen)m(t,)h(or)f(from)g(the)150
+847 y FC(OS)p FD(,)30 b(if)h(not.)150 925 y Fk(\013)p
+200 925 3554 4 v 3553 w(\010)p 150 2095 4 1122 v 303
+1066 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 1176
+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 1286 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 1395 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
+1505 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 1614 y(from)i(parallel)h(p)s(ortions)e(of)h
+(co)s(de.)40 b(This)26 b(parallelism)i(is)f(no)m(w)g(exploited)h(b)m(y)
+e(Op)s(enMP)g(but)g(then)h(runs)178 1724 y(in)m(to)37
+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 1614 y(b)m(y)c(the)g(use)f(of)h(MPI-enabled)g(calls)h(in)
+h(\014les)178 1833 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 1724 y(parallel)j(\(e.g.,)j FC(PVFS)c FD(or)g
+(is)178 1943 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 1833
+(output)f(calls)i(in)d FC(NCO)h FD(is)g(not)h(a)178 2053
 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 1876 V
-150 1928 a Fk(\012)p 200 1928 3554 4 v 3553 w(\011)275
-2120 y FC(NCO)k FD(ma)m(y)i(mo)s(dify)e Fz(thr)p 1136
-2120 28 4 v 39 w(n)m(br)41 b FD(according)36 b(to)f(its)g(o)m(wn)g(in)m
+(new)e(v)m(olun)m(teers)j(or)e(funding.)p 3803 2095 V
+150 2147 a Fk(\012)p 200 2147 3554 4 v 3553 w(\011)275
+2378 y FC(NCO)k FD(ma)m(y)i(mo)s(dify)e Fz(thr)p 1136
+2378 28 4 v 39 w(n)m(br)41 b FD(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
-2230 y(threads)42 b(from)g(the)h(system.)77 b(Certain)42
+2487 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
-(um)m(b)s(er)e(of)150 2339 y(threads)35 b(they)h(request.)57
+(um)m(b)s(er)e(of)150 2597 y(threads)35 b(they)h(request.)57
 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 2449 y(reduce)g(p)s(oten)m(tially)i(w)
+f(common)h(sense,)h(and)e(to)150 2707 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 2559
+b(F)-8 b(or)36 b(example,)i Fy(ncrcat)c FD(is)150 2816
 y(extremely)24 b(I/O-in)m(tensiv)m(e)h(so)e(w)m(e)h(restrict)g
-Fz(thr)p 1784 2559 V 46 w(n)m(br)31 b Fv(<)p FD(=)24
+Fz(thr)p 1784 2816 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
-(notion)150 2668 y(that)28 b(the)f(b)s(est)g(p)s(erformance)g(that)g
+(notion)150 2926 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 2778 y(is)e(to)h(ha)m(v)m(e)h(one)e(thread)h
+(es)g(no)g(arithmetic)150 3035 y(is)e(to)h(ha)m(v)m(e)h(one)e(thread)h
 (reading)f(and)g(one)g(thread)g(writing)h(sim)m(ultaneously)-8
-b(.)40 b(In)24 b(the)i(future)e(\(p)s(erhaps)150 2887
+b(.)40 b(In)24 b(the)i(future)e(\(p)s(erhaps)150 3145
 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 2997 y(lik)m(e)32 b Fy(ncrcat)c FD(b)m(y)j(p)s(erforming)e
-(m)m(ultiple)i(sim)m(ultaneous)g(writes.)275 3179 y(Compute-in)m
+(erators)150 3255 y(lik)m(e)32 b Fy(ncrcat)c FD(b)m(y)j(p)s(erforming)e
+(m)m(ultiple)i(sim)m(ultaneous)g(writes.)275 3475 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
-(threading.)38 b(The)150 3288 y(greatest)26 b(increases)g(in)e
+(threading.)38 b(The)150 3584 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 3398 y(p)s(erforms)36 b(millions,)k(at)e
+(where)f(eac)m(h)i(thread)150 3694 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 3508
+b(Otherwise,)39 b(the)e(system)h(o)m(v)m(erhead)150 3804
 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
-3617 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
+3913 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)
-m(ond)e(four)g(threads)150 3727 y(for)31 b(these)g(op)s(erators.)43
-b(Hence)32 b(w)m(e)g(restrict)f Fz(thr)p 1818 3727 V
+m(ond)e(four)g(threads)150 4023 y(for)31 b(these)g(op)s(erators.)43
+b(Hence)32 b(w)m(e)g(restrict)f Fz(thr)p 1818 4023 V
 46 w(n)m(br)h Fv(<)p FD(=)26 b(4)32 b(for)e(all)i(op)s(erators.)43
-b(W)-8 b(e)33 b(encourage)f(users)150 3836 y(to)f(pla)m(y)g(with)f
+b(W)-8 b(e)33 b(encourage)f(users)150 4132 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
-(us)h(their)g(feedbac)m(k.)275 4018 y(Once)24 b(the)h(initial)h
-Fz(thr)p 1037 4018 V 39 w(n)m(br)31 b FD(has)24 b(b)s(een)g(mo)s
+(us)h(their)g(feedbac)m(k.)275 4353 y(Once)24 b(the)h(initial)h
+Fz(thr)p 1037 4353 V 39 w(n)m(br)31 b FD(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 4128 y(the)33 b(system)f(to)i(allo)s(cate)h(a)
-d(team)i(of)e Fz(thr)p 1604 4128 V 40 w(n)m(br)38 b FD(threads)32
+FC(NCO)d FD(requests)150 4462 y(the)33 b(system)f(to)i(allo)s(cate)h(a)
+d(team)i(of)e Fz(thr)p 1604 4462 V 40 w(n)m(br)38 b FD(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 4237 y(system)i(then)g(decides)g(ho)m(w)g(man)m(y)g
+b(op)s(erating)150 4572 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 4347 y(trac)m(k)f(of)e(this)g
+b(Users)33 b(ma)m(y)g(k)m(eep)150 4681 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 4347 V 48 w(lvl)f Fv(>)c FD(0.)275 4529
+Fz(dbg)p 2512 4681 V 48 w(lvl)f Fv(>)c FD(0.)275 4902
 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 4638 y(to)37 b(an)m(y)g(\014le)g(they)g(create)h(or)f(mo)s
+FD(,)150 5011 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-)150 4748 y(erator)i(used)e(to)i(pro)s
+s(er)f(of)h(threads)f(the)h(op-)150 5121 y(erator)i(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 4858 y(with)j(threaded)g(and)
+i(v)m(erify)f(that)h(the)f(answ)m(ers)150 5230 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 4967 y(information)31 b(is)f(also)h(useful)f
-(for)g(b)s(enc)m(hmarking.)150 5267 y FB(3.4)68 b(Command)45
-b(Line)g(Options)p eop end
+h(precision.)75 b(This)150 5340 y(information)31 b(is)f(also)h(useful)f
+(for)g(b)s(enc)m(hmarking.)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 51 y Fk(\013)p
-200 51 3554 4 v 3553 w(\010)p 150 322 4 223 v 178 188
-a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)p
-3803 322 V 150 374 a Fk(\012)p 200 374 3554 4 v 3553
-w(\011)275 558 y FC(NCO)26 b FD(ac)m(hiev)m(es)i(\015exibilit)m(y)g(b)m
+b(NCO)30 b(F)-8 b(eatures)2475 b(27)150 299 y FB(3.4)68
+b(Command)45 b(Line)g(Options)150 433 y Fk(\013)p 200
+433 3554 4 v 3553 w(\010)p 150 703 4 223 v 178 569 a
+FD(Av)-5 b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)p
+3803 703 V 150 755 a Fk(\012)p 200 755 3554 4 v 3553
+w(\011)275 941 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 668 y(in)36 b(all)h(traditional)g
+b(options)g(are)f(implemen)m(ted)150 1050 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 778 y FC(NCO)43 b FD(used)g(only)h(single)g
+b(man)m(y)f(y)m(ears)150 1160 y FC(NCO)43 b FD(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 887 y
-FD(extended)37 b(or)g(long)g(option)g(names)g(for)f(all)i(options.)60
+b(implemen)m(ted)g FC(GNU)p FD(/)p FC(POSIX)150 1269
+y FD(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
-997 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(single)150 1106 y(letter)c(options.)55 b(In)35
+1379 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(single)150 1489 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(the)h(use)f(of)g(long)150
-1216 y(options,)c(simply)f(b)s(ecause)h(w)m(e)g(ha)m(v)m(e)h(nearly)e
+1598 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 1326 y(mnemonics)35 b(for)g(single)h
+b(imp)s(ortan)m(tly)-8 b(,)150 1708 y(mnemonics)35 b(for)g(single)h
 (letter)h(options)e(are)h(often)g(non-in)m(tuitiv)m(e)g(so)g(that)g
-(long)g(options)f(pro)m(vide)h(a)150 1435 y(more)31 b(natural)f(w)m(a)m
-(y)h(of)g(expressing)f(in)m(ten)m(t.)275 1609 y(Extended)i(options,)i
+(long)g(options)f(pro)m(vide)h(a)150 1817 y(more)31 b(natural)f(w)m(a)m
+(y)h(of)g(expressing)f(in)m(ten)m(t.)275 1992 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 1719 y Fy(getopt.h)28 b FD(header)i(\014le,)h(if)f
+(system-supplied)150 2102 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 1686 y Ft(1)3458 1719
-y FD(.)275 1893 y(The)25 b(syn)m(tax)h(of)f Fz(short)h(options)j
+FD(function)j(to)i FC(NCO)3421 2069 y Ft(1)3458 2102
+y FD(.)275 2277 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 2002 y(Here,)31
+b FD(\(dash-k)m(ey-space-v)-5 b(alue\).)150 2387 y(Here,)31
 b Fz(k)m(ey)39 b FD(is)30 b(the)h(single)g(letter)h(option)f(name,)f
-(e.g.,)i(`)p Fy(-D)e(2)p FD('.)275 2176 y(The)25 b(syn)m(tax)i(of)f
+(e.g.,)i(`)p Fy(-D)e(2)p FD('.)275 2562 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 2286
+Fn(--long_name)h(value)e FD(\(dash-dash-k)m(ey-)150 2671
 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 2396 y(`)p Fy(--dbg_lvl=2)p
+-5 b(alue\),)34 b(e.g.,)150 2781 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 2505 y(\(long)g(v)m(ersion\))h(command)e
-(line)g(option.)390 2679 y Fy(ncks)47 b(-D)g(3)g(in.nc)381
-b(#)47 b(Short)g(option)390 2789 y(ncks)g(--dbg_lvl=3)d(in.nc)j(#)g
-(Long)g(option,)f(preferred)f(form)390 2898 y(ncks)i(--dbg_lvl)e(3)i
-(in.nc)g(#)g(Long)g(option,)f(alternate)f(form)150 3072
+e(`)p Fy(--dbg_lvl)p FD(')150 2890 y(\(long)g(v)m(ersion\))h(command)e
+(line)g(option.)390 3065 y Fy(ncks)47 b(-D)g(3)g(in.nc)381
+b(#)47 b(Short)g(option)390 3175 y(ncks)g(--dbg_lvl=3)d(in.nc)j(#)g
+(Long)g(option,)f(preferred)f(form)390 3285 y(ncks)i(--dbg_lvl)e(3)i
+(in.nc)g(#)g(Long)g(option,)f(alternate)f(form)150 3460
 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
-(eci\014c)f(and)g(less)150 3182 y(am)m(biguous)h(than)g(`)p
+(eci\014c)f(and)g(less)150 3569 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
-(more)g(self)g(do)s(cumen)m(ting)g(and)g(less)150 3292
+(more)g(self)g(do)s(cumen)m(ting)g(and)g(less)150 3679
 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 3401 y(carry)-8 b(.)62 b(Second,)40
+b(alue)31 b(they)150 3788 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 3401 28 4 v 41 w(name)5 b FD(\))38 b(to)g(the)f(v)-5
-b(alue)38 b(in)g(an)f(unin-)150 3511 y(terruptible)32
+Fz(long)p 2448 3788 28 4 v 41 w(name)5 b FD(\))38 b(to)g(the)f(v)-5
+b(alue)38 b(in)g(an)f(unin-)150 3898 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
-3620 y(when)d(restricted)i(to)h(this)e(form.)275 3794
+4008 y(when)d(restricted)i(to)h(this)e(form.)275 4183
 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
-(biguous)f(trun-)150 3904 y(cation)32 b(of)e(a)h(v)-5
-b(alid)31 b(option)g(to)g(b)s(e)e(used.)390 4078 y Fy(ncks)47
-b(-D)g(3)g(in.nc)381 b(#)47 b(Short)g(option)390 4188
+(biguous)f(trun-)150 4292 y(cation)32 b(of)e(a)h(v)-5
+b(alid)31 b(option)g(to)g(b)s(e)e(used.)390 4467 y Fy(ncks)47
+b(-D)g(3)g(in.nc)381 b(#)47 b(Short)g(option)390 4577
 y(ncks)g(--dbg_lvl=3)d(in.nc)j(#)g(Long)g(option,)f(full)g(form)390
-4297 y(ncks)h(--dbg=3)e(in.nc)238 b(#)47 b(Long)g(option,)f
-(unambiguous)e(truncation)390 4407 y(ncks)j(--db=3)f(in.nc)285
+4686 y(ncks)h(--dbg=3)e(in.nc)238 b(#)47 b(Long)g(option,)f
+(unambiguous)e(truncation)390 4796 y(ncks)j(--db=3)f(in.nc)285
 b(#)47 b(Long)g(option,)f(unambiguous)e(truncation)390
-4516 y(ncks)j(--d=3)f(in.nc)333 b(#)47 b(Long)g(option,)f(ambiguous)f
-(truncation)150 4690 y FD(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 4800 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 4910 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.)p
-150 5066 1200 4 v 199 5134 a Ft(1)307 5166 y Fs(If)i(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
-eop end
+4906 y(ncks)j(--d=3)f(in.nc)333 b(#)47 b(Long)g(option,)f(ambiguous)f
+(truncation)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 eop end
 %%Page: 28 34
 TeXDict begin 28 33 bop 150 -116 a FD(28)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)275 299 y FC(NCO)23 b FD(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
-408 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 518 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 628 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
-737 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(scripts)150 847 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 1007 y(This)34 b(man)m(ual)h
-(generally)h(uses)f(the)g(short)f(option)i(syn)m(tax)f(in)g(examples.)
-55 b(This)34 b(is)h(for)g(historical)150 1116 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 1226 y(truncation)31 b(of)f(eac)m(h)i(option)f(name)f(that)h(most)g
-(suits)f(their)g(taste.)150 1460 y FB(3.5)68 b(Sp)t(ecifying)45
-b(Input)f(Files)150 1594 y Fk(\013)p 200 1594 3554 4
-v 3553 w(\010)p 150 2198 4 557 v 178 1735 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
-1845 y FD(Av)-5 b(ailabilit)m(y)33 b(\()p Fy(-p)p FD(\):)41
-b(All)31 b(op)s(erators)178 1954 y(Short)f(options:)41
-b(`)p Fy(-n)p FD(',)31 b(`)p Fy(-p)p FD(')178 2064 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 2198 V 150 2250 a Fk(\012)p 200
-2250 3554 4 v 3553 w(\011)275 2421 y FD(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 2530 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
-2640 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 2749 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(\(or)e(their)h(long)g(option)g(equiv)-5
-b(alen)m(ts,)26 b(`)p Fy(--nintap)p FD(')150 2859 y(or)h(`)p
-Fy(--pth)p FD(')f(and)g(`)p Fy(--path)p FD(',)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 2969 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 3078 y(Section)31
-b(2.7)h([Large)f(Num)m(b)s(ers)e(of)i(Files],)h(page)f(19\).)275
-3238 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 3348 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 3457 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 3617 y Fy(ncra)47 b(85.nc)f(86.nc)g(87.nc)h(88.nc)f(89.nc)g
-(8589.nc)390 3727 y(ncra)h(8[56789].nc)d(8589.nc)390
-3836 y(ncra)j(-p)g Fn(input-path)e Fy(85.nc)h(86.nc)h(87.nc)f(88.nc)g
-(89.nc)h(8589.nc)390 3946 y(ncra)g(-n)g(5,2,1)f(85.nc)h(8589.nc)275
-4106 y FD(The)40 b(\014rst)g(metho)s(d)g(\(explicitly)j(sp)s(ecifying)e
+b FD(4.4.5)j(User)d(Guide)150 299 y(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 408
+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 518 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
+688 y FC(NCO)23 b FD(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 797 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 907 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 1017 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 1126 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
+(scripts)150 1236 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 1405 y(This)34 b(man)m(ual)h(generally)h(uses)f(the)g
+(short)f(option)i(syn)m(tax)f(in)g(examples.)55 b(This)34
+b(is)h(for)g(historical)150 1515 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 1625 y(truncation)31
+b(of)f(eac)m(h)i(option)f(name)f(that)h(most)g(suits)f(their)g(taste.)
+150 1888 y FB(3.5)68 b(Sp)t(ecifying)45 b(Input)f(Files)150
+2022 y Fk(\013)p 200 2022 3554 4 v 3553 w(\010)p 150
+2626 4 557 v 178 2163 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 2273 y FD(Av)-5 b(ailabilit)m(y)33
+b(\()p Fy(-p)p FD(\):)41 b(All)31 b(op)s(erators)178
+2382 y(Short)f(options:)41 b(`)p Fy(-n)p FD(',)31 b(`)p
+Fy(-p)p FD(')178 2492 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 2626 V 150 2678 a Fk(\012)p 200 2678 3554 4 v 3553
+w(\011)275 2858 y FD(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 2968 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 3077 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 3187 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
+(\(or)e(their)h(long)g(option)g(equiv)-5 b(alen)m(ts,)26
+b(`)p Fy(--nintap)p FD(')150 3297 y(or)h(`)p Fy(--pth)p
+FD(')f(and)g(`)p Fy(--path)p FD(',)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 3406 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 3516 y(Section)31 b(2.7)h([Large)f(Num)m(b)s
+(ers)e(of)i(Files],)h(page)f(19\).)275 3685 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
+3795 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
+3905 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 4074 y Fy(ncra)47 b(85.nc)f(86.nc)g(87.nc)h
+(88.nc)f(89.nc)g(8589.nc)390 4184 y(ncra)h(8[56789].nc)d(8589.nc)390
+4294 y(ncra)j(-p)g Fn(input-path)e Fy(85.nc)h(86.nc)h(87.nc)f(88.nc)g
+(89.nc)h(8589.nc)390 4403 y(ncra)g(-n)g(5,2,1)f(85.nc)h(8589.nc)275
+4573 y FD(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 4216 y(ond)d(metho)s(d)g(relies)h(on)f(the)h(op)s
+b(The)40 b(sec-)150 4682 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 4325 y Fy(8[56789].nc)p FD(.)54
-b(The)36 b(shell)g(passes)f(v)-5 b(alid)37 b(\014lenames)f(whic)m(h)f
-(matc)m(h)i(the)f(expansion)g(to)g Fy(ncra)p FD(.)56
-b(The)150 4435 y(third)40 b(metho)s(d)h(uses)g(the)g(`)p
-Fy(-p)30 b Fn(input-path)p FD(')39 b(argumen)m(t)j(to)g(sp)s(ecify)f
-(the)g(directory)h(where)f(all)h(the)150 4544 y(input)28
-b(\014les)h(reside.)40 b FC(NCO)29 b FD(prep)s(ends)e
-Fz(input-path)h FD(\(e.g.,)j Fy(/data/usrname/model)p
-FD(\))24 b(to)30 b(all)g Fz(input-\014les)150 4654 y
-FD(\(though)35 b(not)g(to)g Fz(output-\014le)5 b FD(\).)54
-b(Th)m(us,)35 b(using)g(`)p Fy(-p)p FD(',)h(the)f(path)f(to)h(an)m(y)g
-(n)m(um)m(b)s(er)f(of)h(input)f(\014les)g(need)150 4764
-y(only)41 b(b)s(e)f(sp)s(eci\014ed)f(once.)72 b(Note)42
-b Fz(input-path)e FD(need)g(not)h(end)f(with)g(`)p Fy(/)p
-FD(';)46 b(the)41 b(`)p Fy(/)p FD(')f(is)h(automatically)150
-4873 y(generated)31 b(if)g(necessary)-8 b(.)275 5033
-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(describing)e(the)g(en)m(tire)i(set)f
-(of)f(\014lenames)3687 5000 y Ft(2)3725 5033 y FD(.)150
-5143 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(.)p 150 5241 1200 4 v 199 5308 a Ft(2)275
-5340 y Fs(The)e(`)p Fr(-n)p Fs(')i(option)f(is)g(a)g(bac)n(kw)n(ard)g
-(compatible)g(sup)r(erset)g(of)g(the)g Fr(NINTAP)h Fs(option)f(from)g
-(the)f Fp(NCAR)g(CCM)h Fs(Pro)r(cessor.)p eop end
+Fz(regular)f(expression)150 4792 y Fy(8[56789].nc)p FD(.)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 4902
+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)
+m(as)g(used,)h(b)s(ecause)150 5011 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)150 5121 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
+(directory)150 5230 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 5340 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
+(to)h(an)m(y)f(n)m(um)m(b)s(er)f(of)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(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 408 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 518 y(meric)p 373 518 28 4 v 40 w(pre\014x)6
-b Fy(+)p Fz(n)m(umeric)p 1009 518 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 518 V 40 w(pre\014x)41 b FD(is)36 b(a)g(string)g(of)g(arbitrary)
-150 628 y(length)41 b(and)f(comp)s(osition,)45 b Fz(n)m(umeric)p
-1494 628 V 40 w(su\016x)h FD(is)41 b(a)g(\014xed)f(width)g(\014eld)h
+b(NCO)30 b(F)-8 b(eatures)2475 b(29)150 299 y(input)35
+b(\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 408
+y(automatically)d(generated)f(if)e(necessary)-8 b(.)275
+575 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(describing)e(the)g(en)m(tire)i
+(set)f(of)f(\014lenames)3687 542 y Ft(2)3725 575 y FD(.)150
+684 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 794 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 903 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
+1013 y(meric)p 373 1013 28 4 v 40 w(pre\014x)6 b Fy(+)p
+Fz(n)m(umeric)p 1009 1013 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 1013 V 40
+w(pre\014x)41 b FD(is)36 b(a)g(string)g(of)g(arbitrary)150
+1123 y(length)41 b(and)f(comp)s(osition,)45 b Fz(n)m(umeric)p
+1494 1123 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 737 y(standard)g(\014let)m(yp)s(e)i(indicator.)77
+b(a)150 1232 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 847 y(meric)p
-373 847 V 40 w(pre\014x)36 b FD(=)30 b Fy(ccm3_h)p FD(,)f
-Fz(n)m(umeric)p 1434 847 V 40 w(su\016x)36 b FD(=)30
+FD(,)f(w)m(e)g(ha)m(v)m(e)i Fz(alphan)m(u-)150 1342 y(meric)p
+373 1342 V 40 w(pre\014x)36 b FD(=)30 b Fy(ccm3_h)p FD(,)f
+Fz(n)m(umeric)p 1434 1342 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 1066 y FC(NCO)47 b FD(is)h(able)g(to)g(deco)s(de)g
-(lists)g(of)g(suc)m(h)f(\014lenames)h(enco)s(ded)f(using)g(the)h(`)p
-Fy(-n)p FD(')f(option.)93 b(The)150 1176 y(simpler)30
-b(\(3-argumen)m(t\))i(`)p Fy(-n)p FD(')e(usage)h(tak)m(es)g(the)g(form)
-e Fy(-n)h Fn(file_number)p Fy(,)p Fn(digit_number)o Fy(,)p
-Fn(num)o(eric)o(_)150 1285 y(increment)41 b FD(where)j
-Fz(\014le)p 1022 1285 V 40 w(n)m(um)m(b)s(er)49 b FD(is)44
-b(the)g(n)m(um)m(b)s(er)f(of)h(\014les,)j Fz(digit)p
-2555 1285 V 41 w(n)m(um)m(b)s(er)i FD(is)44 b(the)g(\014xed)f(n)m(um)m
-(b)s(er)150 1395 y(of)d(n)m(umeric)g(digits)g(comprising)g(the)g
-Fz(n)m(umeric)p 1834 1395 V 40 w(su\016x)p FD(,)i(and)d
-Fz(n)m(umeric)p 2654 1395 V 40 w(incremen)m(t)j FD(is)e(the)g(constan)m
-(t,)150 1504 y(in)m(teger-v)-5 b(alued)28 b(di\013erence)f(b)s(et)m(w)m
-(een)g(the)g Fz(n)m(umeric)p 1957 1504 V 40 w(su\016x)32
-b FD(of)27 b(an)m(y)g(t)m(w)m(o)h(consecutiv)m(e)g(\014les.)39
-b(The)26 b(v)-5 b(alue)150 1614 y(of)27 b Fz(alphan)m(umeric)p
-789 1614 V 41 w(pre\014x)32 b FD(is)27 b(tak)m(en)i(from)d(the)i(input)
-e(\014le,)i(whic)m(h)f(serv)m(es)h(as)g(a)f(template)i(for)e(deco)s
-(ding)150 1724 y(the)h(\014lenames.)40 b(In)27 b(the)h(example)g(ab)s
-(o)m(v)m(e,)i(the)e(enco)s(ding)f Fy(-n)j(5,2,1)c FD(along)j(with)e
-(the)h(input)f(\014le)h(name)150 1833 y Fy(85.nc)f FD(tells)i
-FC(NCO)f FD(to)h(construct)f(\014v)m(e)h(\(5\))g(\014lenames)f(iden)m
-(tical)i(to)f(the)g(template)g Fy(85.nc)e FD(except)i(that)150
-1943 y(the)e(\014nal)g(t)m(w)m(o)h(\(2\))g(digits)f(are)g(a)h(n)m
-(umeric)e(su\016x)g(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)150 2052 y(\014le.)67
-b(Curren)m(tly)38 b Fz(\014let)m(yp)s(e)45 b FD(ma)m(y)39
-b(b)s(e)g(either)g(b)s(e)g(empt)m(y)-8 b(,)42 b Fy(nc)p
-FD(,)f Fy(cdf)p FD(,)g Fy(hdf)p FD(,)f(or)f Fy(hd5)p
-FD(.)66 b(If)39 b(presen)m(t,)i(these)150 2162 y Fz(\014let)m(yp)s(e)36
-b FD(su\016xes)29 b(\(and)h(the)g(preceding)g Fy(.)p
-FD(\))g(are)h(ignored)f(b)m(y)g FC(NCO)g FD(as)g(it)h(uses)e(the)i(`)p
-Fy(-n)p FD(')f(argumen)m(ts)g(to)150 2271 y(lo)s(cate,)i(ev)-5
-b(aluate,)33 b(and)c(compute)i(the)g Fz(n)m(umeric)p
-1846 2271 V 40 w(su\016x)k FD(comp)s(onen)m(t)c(of)g(\014lenames.)275
-2491 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(enien)m(t)g(sp)s
-(eci\014cation)g(of)f(\014le-)150 2600 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 2710 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
-2819 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 2929 y(`)p Fy(-n)p FD(')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 3039 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
-3148 y(max)p Fy([,)p Fn(numeric_min)p Fy(]])c FD(where)k
-Fz(n)m(umeric)p 1625 3148 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 3258 y(meric)p 373 3258 V 40 w(su\016x)41
-b FD(and)34 b Fz(n)m(umeric)p 1162 3258 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 3258 V 40 w(su\016x)p
-FD(.)150 3367 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
-3477 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(common)h(to)f
-(create)150 3587 y(summertime)26 b(and)f(win)m(tertime)i(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 3696 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
-3915 y Fy(ncra)47 b(-n)g(3,2,1)f(85_06.nc)g(85_0608.nc)390
-4025 y(ncra)h(-n)g(3,2,1,12)e(85_12.nc)h(85_1202.nc)390
-4134 y(ncra)h(-n)g(3,2,1,12,1)e(85_12.nc)g(85_1202.nc)275
-4354 y FD(The)32 b(\014rst)g(example)h(sho)m(ws)g(that)g(three)g
+b Fy(nc)p FD(.)275 1508 y FC(NCO)41 b FD(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 1618
+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 1727 y FD(where)g
+Fz(\014le)p 534 1727 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 1727 V 41 w(n)m(um)m(b)s(er)35 b FD(is)30 b(the)g(\014xed)f(n)m
+(um)m(b)s(er)g(of)h(n)m(umeric)f(dig-)150 1837 y(its)39
+b(comprising)g(the)h Fz(n)m(umeric)p 1242 1837 V 40 w(su\016x)p
+FD(,)g(and)f Fz(n)m(umeric)p 2060 1837 V 39 w(incremen)m(t)j
+FD(is)d(the)g(constan)m(t,)k(in)m(teger-v)-5 b(alued)150
+1946 y(di\013erence)36 b(b)s(et)m(w)m(een)f(the)h Fz(n)m(umeric)p
+1401 1946 V 40 w(su\016x)k FD(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
+2056 y(meric)p 373 2056 V 40 w(pre\014x)k FD(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 2166 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 2275 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 2385 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 2494 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 2604 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 2714
+y(ev)-5 b(aluate,)32 b(and)e(compute)h(the)f Fz(n)m(umeric)p
+1555 2714 V 40 w(su\016x)36 b FD(comp)s(onen)m(t)31 b(of)f
+(\014lenames.)275 2880 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
+(enien)m(t)g(sp)s(eci\014cation)g(of)f(\014le-)150 2989
+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 3099 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 3209 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 3318 y(`)p Fy(-n)p FD(')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 3428 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 3537 y(max)p Fy([,)p Fn(numeric_min)p
+Fy(]])c FD(where)k Fz(n)m(umeric)p 1625 3537 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 3647 y(meric)p 373 3647
+V 40 w(su\016x)41 b FD(and)34 b Fz(n)m(umeric)p 1162
+3647 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 3647
+V 40 w(su\016x)p FD(.)150 3757 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 3866 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
+(common)h(to)f(create)150 3976 y(summertime)26 b(and)f(win)m(tertime)i
+(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 4085 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
+4252 y Fy(ncra)47 b(-n)g(3,2,1)f(85_06.nc)g(85_0608.nc)390
+4361 y(ncra)h(-n)g(3,2,1,12)e(85_12.nc)h(85_1202.nc)390
+4471 y(ncra)h(-n)g(3,2,1,12,1)e(85_12.nc)g(85_1202.nc)275
+4637 y FD(The)32 b(\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 4463 y(secutiv)m(e)g(mon)m(ths)e(\()p
+(sp)s(ecify)f(con-)150 4747 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(v)-5 b(alue.)41 b(The)30 b(second)150
-4573 y(example)f(sho)m(ws)f(ho)m(w)g(to)h(use)f(the)h(optional)g
-(fourth)f(and)f(\014fth)h(elemen)m(ts)h(of)g(the)f(`)p
-Fy(-n)p FD(')g(option)h(to)g(sp)s(ec-)150 4682 y(ify)34
-b(a)g(wrap)e(v)-5 b(alue)35 b(to)f FC(NCO)p FD(.)50 b(The)34
-b(fourth)e(argumen)m(t)i(to)h(`)p Fy(-n)p FD(',)f(if)g(presen)m(t,)h
-(sp)s(eci\014es)e(the)h(maxim)m(um)150 4792 y(in)m(teger)26
-b(v)-5 b(alue)26 b(of)f Fz(n)m(umeric)p 1095 4792 V 40
-w(su\016x)p FD(.)38 b(In)24 b(this)h(case)h(the)f(maxim)m(um)g(v)-5
-b(alue)26 b(is)k(12,)c(and)f(will)g(b)s(e)f(formatted)150
-4902 y(as)33 b Fy(12)f FD(in)g(the)g(\014lename)h(string.)47
-b(The)32 b(\014fth)g(argumen)m(t)h(to)g(`)p Fy(-n)p FD(',)g(if)g
-(presen)m(t,)g(sp)s(eci\014es)f(the)h(minim)m(um)150
-5011 y(in)m(teger)e(v)-5 b(alue)30 b(of)g Fz(n)m(umeric)p
-1109 5011 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(1,)g(whic)m(h)g(is)f(format-)150
-5121 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(third)f(examples)i(ha)m(v)m(e)g
-(the)g(same)g(e\013ect,)i(that)e(is,)150 5230 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 5340 y(input)k(to)j FC(NCO)p FD(.)p eop end
+4856 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(sp)s(ecify)p 150 4979 1200
+4 v 199 5047 a Ft(2)275 5078 y Fs(The)e(`)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 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 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.4)j(User)d(Guide)150 299 y FB(3.6)68 b(Sp)t(ecifying)45
-b(Output)g(Files)150 433 y Fk(\013)p 200 433 3554 4 v
-3553 w(\010)p 150 922 4 442 v 178 569 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 678 y(Short)f(options:)41
-b(`)p Fy(-o)p FD(')178 788 y(Long)31 b(options:)41 b(`)p
-Fy(--fl_out)p FD(',)29 b(`)p Fy(--output)p FD(')p 3803
-922 V 150 974 a Fk(\012)p 200 974 3554 4 v 3553 w(\011)275
-1145 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 1145 28 4 v 40 w(out)p
-FD(.)40 b(T)-8 b(raditionally)g(,)31 b(users)d(sp)s(ec-)150
-1255 y(ify)33 b Fz(\015)p 341 1255 V 39 w(out)i FD(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 1365 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)
-g(\014le)g(names.)54 b(The)34 b(p)s(ositional)i(ar-)150
-1474 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 1474 V 39 w(out)h FD(using)150 1584 y(the)h(command)f
+b FD(4.4.5)j(User)d(Guide)150 299 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(sp)s(eci\014es)e(the)g(maxim)m(um)
+h(in)m(teger)150 408 y(v)-5 b(alue)29 b(of)g Fz(n)m(umeric)p
+807 408 28 4 v 39 w(su\016x)p FD(.)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 518 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(sp)s(eci\014es)g(the)g(minim)m(um)150
+628 y(in)m(teger)h(v)-5 b(alue)30 b(of)g Fz(n)m(umeric)p
+1109 628 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(1,)g(whic)m(h)g(is)f(format-)150
+737 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(third)f(examples)i(ha)m(v)m(e)g(the)g(same)g
+(e\013ect,)i(that)e(is,)150 847 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 956
+y(input)k(to)j FC(NCO)p FD(.)150 1236 y FB(3.6)68 b(Sp)t(ecifying)45
+b(Output)g(Files)150 1369 y Fk(\013)p 200 1369 3554 4
+v 3553 w(\010)p 150 1859 4 442 v 178 1506 a FD(Av)-5
+b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)178 1615
+y(Short)f(options:)41 b(`)p Fy(-o)p FD(')178 1725 y(Long)31
+b(options:)41 b(`)p Fy(--fl_out)p FD(',)29 b(`)p Fy(--output)p
+FD(')p 3803 1859 V 150 1911 a Fk(\012)p 200 1911 3554
+4 v 3553 w(\011)275 2096 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
+2096 28 4 v 40 w(out)p FD(.)40 b(T)-8 b(raditionally)g(,)31
+b(users)d(sp)s(ec-)150 2206 y(ify)33 b Fz(\015)p 341
+2206 V 39 w(out)i FD(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 2316 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)g(\014le)g
+(names.)54 b(The)34 b(p)s(ositional)i(ar-)150 2425 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 2425 V 39 w(out)h FD(using)150 2535 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 1744 y(Sp)s(ecifying)k Fz(\015)p
-773 1744 V 40 w(out)k FD(with)d(a)g(switc)m(h,)j(rather)d(than)g(as)h
+Fn(fl_out)p FD('.)275 2710 y(Sp)s(ecifying)k Fz(\015)p
+773 2710 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 1744 V 40 w(out)g FD(to)150 1854 y(precede)28 b(input)f(\014les)h
+3467 2710 V 40 w(out)g FD(to)150 2819 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 1964
+(useful)e(with)h(m)m(ulti-\014le)h(op)s(erators)150 2929
 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 2073 y(Visual)42 b(or)f(automatic)i(lo)s(cation)g(of)
-f Fz(\015)p 1533 2073 V 39 w(out)i FD(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 2183
+(\014lenames.)150 3039 y(Visual)42 b(or)f(automatic)i(lo)s(cation)g(of)
+f Fz(\015)p 1533 3039 V 39 w(out)i FD(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 3148
 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
-(a)g(long)150 2292 y(list)23 b(of)g(input)e(\014les)i(ma)m(y)g(b)s(e)e
+(a)g(long)150 3258 y(list)23 b(of)g(input)e(\014les)i(ma)m(y)g(b)s(e)e
 (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 2402 y(the)28
+(Files],)j(page)d(19\).)39 b(Making)150 3367 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 2511 y(Some)36 b(alternativ)m(es)j(to)e Fy(xargs)e
+150 3477 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 2621 y(comfortable)27
+b(,)39 b(man)m(y)e(users)e(are)i(more)150 3587 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
-(t)h(list.)150 2731 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 2891
-y(Users)34 b(should)g(sp)s(ecify)h Fz(\015)p 1181 2891
+(t)h(list.)150 3696 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 3871
+y(Users)34 b(should)g(sp)s(ecify)h Fz(\015)p 1181 3871
 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 2891 V 40 w(out)j FD(is)e(sp)s(eci\014ed)f(t)m
-(wice)150 3001 y(\(once)f(with)e(the)g(switc)m(h)h(and)f(once)i(as)e
+b(If)34 b Fz(\015)p 2876 3871 V 40 w(out)j FD(is)e(sp)s(eci\014ed)f(t)m
+(wice)150 3981 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 3110 y(men)m(t)e(tak)m(es)h(precedence.)150
-3347 y FB(3.7)68 b(Accessing)45 b(Remote)h(Files)150
-3480 y Fk(\013)p 200 3480 3554 4 v 3553 w(\010)p 150
-3970 4 442 v 178 3616 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 3726 y(Short)f(options:)41
-b(`)p Fy(-p)p FD(',)31 b(`)p Fy(-l)p FD(')178 3836 y(Long)g(options:)41
+(ositional)i(argu-)150 4090 y(men)m(t)e(tak)m(es)h(precedence.)150
+4370 y FB(3.7)68 b(Accessing)45 b(Remote)h(Files)150
+4503 y Fk(\013)p 200 4503 3554 4 v 3553 w(\010)p 150
+4993 4 442 v 178 4639 a FD(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 4749 y(Short)f(options:)41
+b(`)p Fy(-p)p FD(',)31 b(`)p Fy(-l)p FD(')178 4859 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 3970
-V 150 4022 a Fk(\012)p 200 4022 3554 4 v 3553 w(\011)275
-4193 y FD(All)22 b FC(NCO)h FD(op)s(erators)f(can)h(retriev)m(e)g
+Fy(--lcl)p FD(',)g(`)p Fy(--local)p FD(')p 3803 4993
+V 150 5045 a Fk(\012)p 200 5045 3554 4 v 3553 w(\011)275
+5230 y FD(All)22 b FC(NCO)h FD(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 4303 y(A)30 b(remote)f(site)f(can)f(b)s(e)
+s(cal)g(\014le)g(system.)150 5340 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 4412 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 4522
-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 4682 y(T)-8 b(o)32 b(access)h(a)f(\014le)f(via)i(an)e(anon)m(ymous)
-h FC(FTP)f FD(serv)m(er,)h(supply)e(the)i(remote)h(\014le's)f
-FC(URL)p FD(.)44 b FC(FTP)31 b FD(is)h(an)150 4792 y(in)m(trinsically)
-39 b(insecure)f(proto)s(col)h(b)s(ecause)g(it)f(transfers)g(passw)m
-(ords)f(in)h(plain)g(text)h(format.)64 b(Users)150 4902
-y(should)32 b(access)i(sites)g(using)e(anon)m(ymous)h
-FC(FTP)p FD(,)h(or)f(b)s(etter)g(y)m(et,)i(secure)e FC(FTP)g
-FD(when)f(p)s(ossible.)48 b(Some)150 5011 y FC(FTP)38
-b FD(serv)m(ers)h(require)f(a)h(login/passw)m(ord)g(com)m(bination)h
-(for)e(a)h(v)-5 b(alid)39 b(user)f(accoun)m(t.)66 b FC(NCO)39
-b FD(allo)m(ws)150 5121 y(these)31 b(transactions)h(so)f(long)g(as)g
-(the)g(required)f(information)h(is)g(stored)f(in)h(the)g
-Fy(.netrc)e FD(\014le.)42 b(Usually)150 5230 y(this)29
-b(information)h(is)f(the)g(remote)h(mac)m(hine)g(name,)g(login,)g(and)f
-(passw)m(ord,)g(in)g(plain)g(text,)h(separated)150 5340
-y(b)m(y)g(those)h(v)m(ery)g(k)m(eyw)m(ords,)g(e.g.,)p
-eop end
+FD(,)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)390 299 y Fy(machine)46
-b(dust.ess.uci.edu)d(login)k(zender)f(password)f(bushlied)275
-459 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-)150 568 y(ten)m(tially)i(exp)s(osed)d(to)h(ea)m(v)m
-(esdropping)g(soft)m(w)m(are)1878 535 y Ft(3)1917 568
-y FD(.)275 728 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(the)f(securit)m(y)g(issues)150 838 y(asso)s(ciated)40
+b(NCO)30 b(F)-8 b(eatures)2475 b(31)150 299 y(or)29 b
+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 408 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 581 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 691 y(Anon)m(ymous)36 b FC(FTP)g FD(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 801
+y FC(FTP)25 b FD(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 910 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
+1020 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
+(bination)f(for)g(a)g(v)-5 b(alid)150 1129 y(user)37
+b(accoun)m(t.)65 b FC(NCO)38 b FD(allo)m(ws)h(transactions)g(that)f
+(require)g(additional)h(creden)m(tials)g(so)f(long)h(as)f(the)150
+1239 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)
+h(remote)150 1349 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 1522 y Fy(machine)46 b(dust.ess.uci.edu)d
+(login)k(zender)f(password)f(bushlied)275 1695 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-)
+150 1804 y(ten)m(tially)i(exp)s(osed)d(to)h(ea)m(v)m(esdropping)g(soft)
+m(w)m(are)1878 1771 y Ft(3)1917 1804 y FD(.)275 1977
+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
+(the)f(securit)m(y)g(issues)150 2087 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
-(with)i(a)150 948 y(homebrew)30 b(syn)m(tax)h(of)f(the)h(form)390
-1108 y Fy(sftp://machine.domain.tl)o(d:/p)o(ath/)o(to/)o(file)o(name)
-275 1268 y FD(Note)44 b(the)f(second)g(colon)h(follo)m(wing)g(the)f
+(with)i(a)150 2196 y(homebrew)30 b(syn)m(tax)h(of)f(the)h(form)390
+2369 y Fy(sftp://machine.domain.tl)o(d:/p)o(ath/)o(to/)o(file)o(name)
+275 2542 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
-b(syn)m(tax)g(is)g(a)g(h)m(ybrid)150 1377 y(b)s(et)m(w)m(een)31
-b(an)f FC(FTP)e(URL)i FD(and)g(a)h(standard)e(remote)j(\014le)e(syn)m
-(tax.)275 1537 y(T)-8 b(o)23 b(access)h(a)f(\014le)g(using)f
+b(syn)m(tax)g(is)g(a)g(h)m(ybrid)150 2652 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.)
+275 2825 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
 (address)f(of)h(the)g(remote)g(\014le.)39 b(Of)22 b(course)150
-1647 y(in)i(this)h(case)g(y)m(ou)g(m)m(ust)f(ha)m(v)m(e)i
+2934 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
-(transparen)m(t)e(\(no)h(passw)m(ord)f(en)m(try)150 1756
+(transparen)m(t)e(\(no)h(passw)m(ord)f(en)m(try)150 3044
 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 1866 y(keys)29 b FD(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 2026
+150 3154 y(keys)29 b FD(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 3327
 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 2135 y FC(ECMWF)p FD(,)c FC(LANL)p
+FC(NCAR)p FD(,)150 3436 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 2245 y(attempt)i(to)f(detect)h(whether)e(the)
+b FC(NCO)28 b FD(will)150 3546 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 2355 y(case,)k
+FC(HPSS)h FD(access.)41 b(In)28 b(this)150 3655 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
-2322 y Ft(4)3612 2355 y FD(.)275 2515 y(The)g(follo)m(wing)j(examples)f
+3622 y Ft(4)3612 3655 y FD(.)275 3828 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 2675 y Fy(ncks)47 b(-l)g(.)g
+(remote)i(systems.)390 4001 y Fy(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
-2784 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 2894 y(ncks)g(-l)g(.)g
+4111 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 4221 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
-3003 y(ncks)g(-l)g(.)g(/ZENDER/nco/in.nc)390 3113 y(ncks)g(-l)g(.)g
-(/home/zender/nco/in.nc)390 3222 y(ncks)g(-l)g(.)g
+4330 y(ncks)g(-l)g(.)g(/ZENDER/nco/in.nc)390 4440 y(ncks)g(-l)g(.)g
+(/home/zender/nco/in.nc)390 4549 y(ncks)g(-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 3382 y FD(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 3492 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 3602
-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 3711 y Fy(dust.ess.uci.edu)p
+(dods)o(/in.)o(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(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(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)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 eop end
+%%Page: 32 38
+TeXDict begin 32 37 bop 150 -116 a FD(32)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(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 408 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
+518 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 628 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 3821 y(access)c(to)f(the)f
-FC(HPSS)h Fy(hsi)d(get)i FD(command)1664 3788 y Ft(5)1701
-3821 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 3930 y FC(NCO)27 b FD(is)g
+FC(NCAR)h FD(computers)f(with)g(lo)s(cal)150 737 y(access)c(to)f(the)f
+FC(HPSS)h Fy(hsi)d(get)i FD(command)1664 704 y Ft(5)1701
+737 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 847 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
 (in)h(Section)g(3.7.1)i([OP)m(eND)m(AP],)h(page)e(32\),)h(or)150
-4040 y(if)34 b(the)g(remote)h(\014le)f(is)g(accessible)h(via)g
+956 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 4150 y(`)p Fy(-p)c Fn(input-path)p
-FD(')e(option)j(as)f(follo)m(ws:)p 150 4250 1200 4 v
-199 4318 a Ft(3)275 4349 y Fp(NCO)f 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
-4436 y(those)c(data)h(in)n(to)f(the)g Fr(history)i Fs(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 4524 y(securit)n(y)e(risk.)199
-4595 y Ft(4)275 4627 y Fs(The)36 b Fr(hsi)h Fs(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 4714
-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 4801
-y Fs(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 4888 y(for)g Fr(hsi)p Fs(.)199
-4960 y Ft(5)275 4991 y Fp(NCO)34 b 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
-(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
-(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
-%%Page: 32 38
-TeXDict begin 32 37 bop 150 -116 a FD(32)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(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 408 y(ncks)g(-p)g(sftp://dust.ess.uci.edu:)o
+(rewritten)h(using)g(the)150 1066 y(`)p Fy(-p)c Fn(input-path)p
+FD(')e(option)j(as)f(follo)m(ws:)390 1266 y Fy(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 1376 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
-b(.)f(in.nc)390 518 y(ncks)g(-p)g(dust.ess.uci.edu:/home/z)o(end)o
-(er/n)o(co)42 b(-l)47 b(.)g(in.nc)390 628 y(ncks)g(-p)g(/ZENDER/nco)e
-(-l)i(.)g(in.nc)390 737 y(ncks)g(-p)g(/home/zender/nco)c(-l)k(.)h
-(in.nc)e(#)i(HPSS)390 847 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
-956 y(-l)47 b(.)g(in.nc)150 1130 y FD(Using)37 b(`)p
-Fy(-p)p FD(')g(is)f(recommended)h(b)s(ecause)g(it)g(clearly)h
+b(.)f(in.nc)390 1485 y(ncks)g(-p)g(dust.ess.uci.edu:/home/z)o(end)o
+(er/n)o(co)42 b(-l)47 b(.)g(in.nc)390 1595 y(ncks)g(-p)g(/ZENDER/nco)e
+(-l)i(.)g(in.nc)390 1704 y(ncks)g(-p)g(/home/zender/nco)c(-l)k(.)h
+(in.nc)e(#)i(HPSS)390 1814 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 1924 y(-l)47 b(.)g(in.nc)150 2124 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
-1240 y(itself,)42 b(sometimes)e(called)g(the)f Fz(stub)p
+2233 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 1349 y FC(NCO)d
+(eci\014ed)f(using)f(`)p Fy(-p)p FD(',)150 2343 y FC(NCO)d
 FD(in)m(ternally)i(generates)g(an)e Fz(input-path)g FD(from)g(the)h
 (\014rst)f(input)f(\014lename.)57 b(The)35 b(automatically)150
-1459 y(generated)29 b Fz(input-path)f FD(is)g(constructed)g(b)m(y)g
+2453 y(generated)29 b Fz(input-path)f FD(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 1568 y(the)38 b(\014nal)f(`)p Fy(/)p FD(')h(c)m(haracter)h
+(wing)150 2562 y(the)38 b(\014nal)f(`)p Fy(/)p FD(')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 1678 y FD(where)34 b(to)i(store)f(the)g(remotely)g(retriev)m
+FC(NCO)150 2672 y FD(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 1787 y(the)d(output)f
+(cally-retriev)m(ed)i(\014les,)f(or)f(on)150 2781 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
-1897 y(on)38 b(the)g(lo)s(cal)h(mac)m(hine)g(where)e(y)m(ou)i(w)m(ould)
+2891 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 2007
+Fy(-l)p FD(')g(is)g(not)g(sp)s(eci\014ed)f(then)150 3000
 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 2116 y FD(stripp)s(ed)33 b(of)i(an)m(y)h(mac)m(hine)f
+Fz(input-path)150 3110 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
 (and)g(the)h(remote)h(\014le)f(resides)g(on)g(the)150
-2226 y FC(NCAR)40 b(HPSS)g FD(system,)j(then)c(the)h(leading)h(c)m
+3220 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 2335 y Fz(output-path)p FD(.)56
+(stripp)s(ed)d(from)150 3329 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
-(retriev)m(ed)150 2445 y(\014le)g(and)f(the)g(output)h(\014le)f(in)g
+(retriev)m(ed)150 3439 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 2555 y(though)g(the)h(latter)g(is)g
-(syn)m(tactically)i(more)e(clear.)150 2782 y Fu(3.7.1)63
-b Fq(OP)m(eND)m(AP)150 2929 y FD(The)24 b(Distributed)g(Oceanographic)h
+b(to)f(`)p Fy(-l)30 b(./)p FD(')150 3548 y(though)g(the)h(latter)g(is)g
+(syn)m(tactically)i(more)e(clear.)150 3829 y Fu(3.7.1)63
+b Fq(OP)m(eND)m(AP)150 3976 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
-(replacemen)m(ts)i(for)f(com-)150 3039 y(mon)32 b(data)i(in)m(terface)g
+(replacemen)m(ts)i(for)f(com-)150 4086 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
-(these)i(libraries)e(implemen)m(t)150 3148 y(net)m(w)m(ork)39
+(these)i(libraries)e(implemen)m(t)150 4195 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
-3258 y FC(HTTP)27 b FD(proto)s(col)i(for)e(comm)m(unication.)41
+4305 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
-(ceanogra-)150 3367 y(ph)m(y)32 b(data,)i(it)f(applyies)f(to)i
+(ceanogra-)150 4414 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
-3477 y(proto)s(col)f(underlying)e FC(DODS)h FD(\(whic)m(h)h(is)f(what)g
+4524 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
-(en-)150 3587 y(source)k(Pro)5 b(ject)37 b(for)f(a)g(Net)m(w)m(ork)i
+(en-)150 4634 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)150 3696
-y FD(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
-3806 y(will)31 b(deprecate)g FC(DODS)g FD(in)f(fa)m(v)m(or)h(of)g
+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
+(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
+(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
+%%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
-3773 y Ft(6)2820 3806 y FD(.)275 3979 y FC(NCO)22 b FD(ma)m(y)g(b)s(e)g
+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 4089 y(the)31 b FC(OP)n(eND)n(AP)f
+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 4056 y Ft(7)3725
-4089 y FD(.)150 4198 y(The)d Fy(./configure)e FD(mec)m(hanism)j
+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)p 150 4353 1200
-4 v 199 4421 a Ft(6)303 4452 y Fp(DODS)g Fs(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 4540
-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
-4627 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 4714
-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 4801
-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)
-f(main)n(tains,)i(dev)n(elops,)f(and)f(prom)n(ulgates)h(the)275
-4888 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 4960 y Ft(7)300 4991 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 5078 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
-5166 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
-5253 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
-5340 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.)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(the)40
-b(required)f FC(OP)n(eND)n(AP)g FD(libraries)1439 266
-y Ft(8)1476 299 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 408
+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
 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 518 y(Building)28 b FC(NCO)f
+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
-628 y(commands)f(to)h(link)f(to)h(the)g FC(OP)n(eND)n(AP)e
+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 737 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
+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
-847 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 956 y(org)p FD(\))26 b(is)g(v)m(oluminous.)39
+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
 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 1066 y(edu/packages/dods/home/ma)o
+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 1176 y FC(OP)n(eND)n(AP)549
-1143 y Ft(9)585 1176 y FD(.)275 1346 y(Once)21 b FC(NCO)g
+(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 1455 y(net)m(w)m(ork)k(transparen)m(t)f
+FD(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
-1565 y(input)37 b(\014le)g(path\(s\))h(in)f FC(URL)h
+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
-(p)s(erformed)f(on)h(remote)150 1674 y(\014les)31 b(made)g(accessible)i
+(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(command)g(tests)g(the)h(basic)f(functionalit)m(y)i(of)150
-1784 y FC(OP)n(eND)n(AP)p FD(-enabled)c FC(NCO)i FD(clien)m(ts:)390
-1954 y Fy(\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 2064 y(-p)i(http://thredds-test.uca)o(r.ed)o(u/t)o
+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
+(-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
-2173 y(\045)47 b(ncks)g(-H)g(-v)g(one)g(~/foo.nc)390
-2283 y(one)g(=)g(1)275 2453 y FD(The)26 b Fy(one)j(=)h(1)c
+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
-2563 y FD(proto)s(col)41 b(and)e(\(second\))i(that)g
+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
-(the)g(subsetted)g(remote)h(\014le.)150 2672 y(With)33
+(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
-2782 y(output)e(\014le)g(format:)390 2952 y Fy(\045)47
+3347 y(output)e(\014le)g(format:)390 3507 y Fy(\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 3062 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 3171 y(\045)47
-b(ncks)g(-H)g(-v)g(one)g(~/foo.nc)390 3281 y(one)g(=)g(1)275
-3451 y FD(And,)39 b(of)g(course,)h FC(OP)n(eND)n(AP)p
-FD(-enabled)e FC(NCO)g FD(clien)m(ts)i(con)m(tin)m(ue)f(to)g(supp)s
-(ort)e(other,)k(orthogonal)150 3560 y(features)31 b(suc)m(h)f(as)g
-(UDUnits)h(\(see)h(Section)f(3.22)h([UDUnits)f(Supp)s(ort],)e(page)i
-(65\):)390 3731 y Fy(\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 3840 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 3950 y(\045)47 b(wvl[0]=5e-07)e(meter)275
-4120 y FD(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 4229 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
-4339 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 4449 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(stores)g(\(lo)s
-(cally\))j(the)150 4558 y(regional)32 b(mean)e(surface)g(pressure)f
-(\(in)i(P)m(a\))q(.)p 150 4702 1200 4 v 199 4769 a Ft(8)304
-4801 y Fs(The)e(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(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)f(kno)n(w)h(more)h(ab)r(out)f(this,)h(please)g
-(consider)f(writing)h(a)g(section)g(on)f Fr(")p Fp(OP)n(eND)n(AP)g
-Fs(Capabilities)275 5340 y(of)f(In)n(terest)f(to)h Fp(NCO)f
-Fs(Users)p Fr(")i Fs(for)f(incorp)r(oration)h(in)f(the)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
+(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
+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)
+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
+(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)f(kno)n(w)h(more)h(ab)r
+(out)f(this,)h(please)g(consider)f(writing)h(a)g(section)g(on)f
+Fr(")p Fp(OP)n(eND)n(AP)g Fs(Capabilities)275 5340 y(of)f(In)n(terest)f
+(to)h Fp(NCO)f Fs(Users)p Fr(")i Fs(for)f(incorp)r(oration)h(in)f(the)f
 Fm(NCO)g(User)h(Guide)p Fs(.)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.4)j(User)d(Guide)390 299 y Fy(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 408 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 518 y(pres.sfc.1969.nc)j(~/foo.nc)150
-681 y FD(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 791 y(Section)j(4.1.11)i([Metho)s(ds)d(and)f
-(functions],)i(page)g(117\),)h(although)f(this)f(is)g(completely)i
-(transparen)m(t)150 901 y(to)f(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 1064 y FC(NCO)39 b FD(obtains)g(remote)h(\014les)g
+b FD(4.4.5)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
+(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
+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
+(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
+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
+(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
+(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
+(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
+(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 1174 y(than)h(the)h(lo)s
+b Fy(www.cdc.noaa.gov)p FD(\))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
-1283 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 FC(OP)n(eND)n(AP)f FD(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 1393 y(This)34 b(allo)m(ws)i(the)f(I/O)f(to)i(app)s
+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)
-s(cal.)55 b(The)34 b(lo)s(cal)i(mac)m(hine)150 1502 y(p)s(erforms)24
+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
-1612 y(the)32 b(net)m(w)m(ork)h(\(to)h(the)e(lo)s(cal)i(mac)m(hine\))f
+3226 y(the)32 b(net)m(w)m(ork)h(\(to)h(the)e(lo)s(cal)i(mac)m(hine\))f
 (for)f(the)g(n)m(um)m(b)s(er-crunc)m(hing)f(to)i(b)s(egin.)46
-b(The)32 b(adv)-5 b(an)m(tages)34 b(of)150 1722 y(this)c(are)h(ob)m
+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 1885
+(\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
-(the)150 1995 y(serv)m(er)21 b(can)g(app)s(ear)e(to)j(b)s(e)e(bugs)f
+(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 1962 y Ft(10)3043 1995 y FD(an)f FC(NCO)g
-FD(command)150 2104 y(that)33 b(w)m(orks)e(on)h(a)g(lo)s(cal)i(\014le)e
+(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
-2214 y(in)26 b(the)g(serv)m(er.)39 b(This)26 b(is)g(b)s(ecause)g
+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 2323
+(serv)m(ed)g(b)m(y)g FC(OP)n(eND)n(AP)p FD(,)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 2433 y(Therefore)k(it)h(is)f(often)g
+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
-2543 y(to)c(isolate)g(whether)f(a)g(problem)f(ma)m(y)i(b)s(e)e(due)g
+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
-(particular)150 2652 y(mac)m(hine.)41 b(F)-8 b(or)29
+(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
-2762 y(\014les)g(on)h(public)e FC(OP)n(eND)n(AP)g FD(serv)m(ers:)390
-2925 y Fy(#)47 b(Strided)f(access)g(to)i(HDF5)e(file)390
-3035 y(ncks)h(-v)g(Time)f(-d)i(Time,0,10,2)c
+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
+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
-(01-0)o(0-2)o(012m)o(0203)o(t14)o(4121)o(.h5)390 3144
-y(#)j(Strided)f(access)g(to)i(netCDF3)d(file)390 3254
+(01-0)o(0-2)o(012m)o(0203)o(t14)o(4121)o(.h5)390 4787
+y(#)j(Strided)f(access)g(to)i(netCDF3)d(file)390 4896
 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)150 3417 y FD(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 3527 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
-3637 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 3881 y FB(3.8)68
-b(Retaining)47 b(Retriev)l(ed)g(Files)150 4015 y Fk(\013)p
-200 4015 3554 4 v 3553 w(\010)p 150 4505 4 442 v 178
-4151 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)178
-4261 y(Short)f(options:)41 b(`)p Fy(-R)p FD(')178 4370
-y(Long)31 b(options:)41 b(`)p Fy(--rtn)p FD(',)29 b(`)p
-Fy(--retain)p FD(')p 3803 4505 V 150 4556 a Fk(\012)p
-200 4556 3554 4 v 3553 w(\011)275 4730 y FD(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 4840 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
-4950 y FD(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)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(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 eop end
+(~/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
+(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
+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(m)m(ultiple)33
-b(\014les)g(from)f(remote)i(lo)s(cations)g(is)f(done)f(serially)-8
-b(.)49 b(Eac)m(h)33 b(\014le)g(is)g(retriev)m(ed,)h(pro)s(cessed,)f
-(then)150 408 y(deleted)g(b)s(efore)f(the)h(cycle)h(rep)s(eats.)47
-b(In)31 b(cases)j(where)e(it)g(is)h(useful)f(to)h(k)m(eep)g(the)f
-(remotely-retriev)m(ed)150 518 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
-628 y(b)m(y)30 b(sp)s(ecifying)g(`)p Fy(-R)p FD(')h(on)f(the)h(command)
-f(line.)275 787 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
-897 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
-1006 y(Kitc)m(hen)31 b(Sink],)f(page)h(173,)h(for)e(more)h(details.)275
-1166 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 1275 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 1385 y(quic)m(k)m(er)31 b(than)e(using)g(a)h(bro)m(wser,)f(or)h
+b(NCO)30 b(F)-8 b(eatures)2475 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
+(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
+(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
+(is)f(done)f(serially)-8 b(.)49 b(Eac)m(h)33 b(\014le)g(is)g(retriev)m
+(ed,)h(pro)s(cessed,)f(then)150 2141 y(deleted)g(b)s(efore)f(the)h
+(cycle)h(rep)s(eats.)47 b(In)31 b(cases)j(where)e(it)g(is)h(useful)f
+(to)h(k)m(eep)g(the)f(remotely-retriev)m(ed)150 2250
+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
+(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
+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
+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)
-m(ourself.)41 b(F)-8 b(or)150 1494 y(example,)31 b(sa)m(y)g(y)m(ou)g(w)
+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 1654 y Fy(ncks)47 b(-R)g(-p)g
+(eather)h(serv)m(er.)390 3466 y Fy(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
-1813 y FD(In)e(this)h(example,)k Fy(ncks)45 b FD(automatically)j(p)s
+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)
-150 1923 y(mac)m(hine)41 b(and)e(retriev)m(es)j(the)e(sp)s(eci\014ed)g
+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 2032 y Fy(storm.jpg)28 b FD(as)i(a)h(netCDF)g
+(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 2192
+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
 (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 2301 y FC(NCO)j FD(to)h(retriev)m(e)g(an)m(y)f
+(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
-2411 y(y)m(our)e(lo)s(cal)i(mac)m(hine.)41 b(F)-8 b(or)32
-b(example,)390 2570 y Fy(ncks)47 b(-R)g(-l)g(.)g(-p)h(\\)390
-2680 y(http://www.esrl.noaa.gov)o(/psd)o(/thr)o(edd)o(s/do)o(dsC/)o
+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
+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 2790 y(pres.sfc.1969.nc)275 2949
+(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
-(preferred)150 3059 y(metho)s(ds)30 b(are)g(not)h(a)m(v)-5
-b(ailable)33 b(lo)s(cally)-8 b(.)150 3291 y FB(3.9)68
-b(File)46 b(F)-11 b(ormats)45 b(and)f(Con)l(v)l(ersion)150
-3401 y Fk(\013)p 200 3401 3554 4 v 3553 w(\010)p 150
-3891 4 442 v 178 3537 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 3647 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 3756 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 3891 V 150 3942
-a Fk(\012)p 200 3942 3554 4 v 3553 w(\011)275 4118 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 4227 y(coun)m(ts\))27 b(\014le)f(formats)g(supp)s(orted)e(b)m
+(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(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.5)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 4337 y(is)33 b(the)g(input)f(\014le)h(format.)
+(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
-4446 y(sp)s(ecify)g(the)h(output)g(\014le)g(format)g(indep)s(enden)m(t)
+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 4556 y(the)26 b(user)e(to)i(con)m(v)m(ert)h(b)s(et)m(w)m
+(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
-4665 y FD(do)39 b(not)h(supp)s(ort)d(these)j(switc)m(hes)g(so)g(they)f
+1329 y FD(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 4775 y(format)31 b(as)f(the)h(input)e(netCDF)i(\014le.\))150
-4974 y Fu(3.9.1)63 b(File)41 b(F)-10 b(ormats)150 5121
+(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 5230
+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
 (o\013set)g(written)f(b)m(y)g(netCDF2)h(and)e(netCDF3.)58
-b(As)36 b(of)150 5340 y(2005,)j(nearly)d(all)g(netCDF)h(datasets)f(w)m
+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)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.4)j(User)d(Guide)150 299 y(in)g(F)-8 b(all,)33
+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
-408 y(netCDF)e(datasets)h(are)e(in)g Fy(NETCDF4_CLASSIC)d
-FD(format.)275 569 y(The)h Fy(NETCDF4)f FD(format)j(uses)f
+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
-678 y(accessed,)f(and)e(manipulated)g(using)g(the)h(traditional)h
+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
-788 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
-897 y FD(mask.)44 b(Suc)m(h)30 b(\014les)h(use)g FC(HDF5)h
+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 1007 y(incorp)s(orate)g(only)g(netCDF3)
+(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 1117 y(applications)h(that)g(use)f
+(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 1226 y(the)e(netCDF4)i(library\).)
+(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 1336
+(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 1445 y Fy(CLASSIC)i FD(or)j(the)f(new)m(er)h Fy(64BIT)e
+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 1555 y(applications.)69 b FC(NCO)39
+(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
-b(If)39 b(p)s(erformance)g(or)g(disk-space)150 1665 y(as)e(imp)s(ortan)
+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 1774 y FD(format)c(\014les.)50 b(As)33
+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 1884
+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
 (w)m(ork\015o)m(ws)f(will)f(utilize)i(this)e(format.)275
-2044 y(As)g(men)m(tioned)h(ab)s(o)m(v)m(e,)g(all)h(op)s(erators)e
+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 2153 y(told)40 b(otherwise.)67 b(T)-8 b(oggling)41
+(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
-2263 y(their)f Fz(k)m(ey)p FD(-)p Fz(v)-5 b(alue)44 b
+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
 (duces)h(the)i(netCDF3)h(64-bit)h(o\013set)f(format)150
-2373 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 Fy(64BIT)p FD(.)74 b FC(NCO)41 b FD(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 2482 y(Using)c(the)h(`)p
+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 2592 y Fz(k)m(ey)p FD(-)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 2701
+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 2668 y Ft(11)3177
-2701 y FD(,)g(or)f(setting)h(its)150 2811 y Fz(k)m(ey)p
+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 2921
+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
 (compression)f(and)f(c)m(h)m(unking)g(but)g(without)h(groups)f(or)g
-(new)150 3030 y(atomic)32 b(t)m(yp)s(es\).)41 b(Op)s(erators)30
+(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
-3140 y(to\))h(pro)s(duce)f(netCDF3)h Fy(CLASSIC)e FD(output,)h(ev)m(en)
-h(from)f(netCDF4)h(input)f(\014les.)275 3300 y(Note)24
+5003 y(to\))h(pro)s(duce)f(netCDF3)h Fy(CLASSIC)e FD(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
+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
 (same)g(binary)e(format.)39 b(The)23 b(latter)i(simply)150
-3410 y(causes)38 b(a)h(writing)e(application)j(to)e(fail)h(if)f(it)g
+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
-(b)s(e)150 3519 y(completely)47 b(read)d(b)m(y)h(the)g(netCDF3)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 3629 y(reading)25 b(application)i(that)f
+b FD(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 3738
-y FD(has)h(supp)s(orted)f(reading/writing)i(basic)g Fy(NETCDF4)e
+(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
-3848 y(2005.)150 4049 y Fu(3.9.2)63 b(Determining)42
-b(File)f(F)-10 b(ormat)150 4196 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(b)m(y)i(in)m(ten)m(tion\))i(the)150 4305
-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)150 4415 y(of)j(a)g(netCDF-supp)s
-(orted)e(\014le.)40 b(These)29 b(metho)s(ds)f(determine)g(whether)g(it)
-h(is)g(a)g(classic)g(\(32-bit)i(o\013set\))150 4524 y(or)41
-b(new)m(er)g(64-bit)h(o\013set)g(netCDF3)g(format,)i(or)d(is)g(a)g
-(netCDF4)h(format.)73 b(Eac)m(h)42 b(metho)s(d)e(returns)150
-4634 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
-4744 y(practice.)275 4904 y(First,)31 b(examine)g(the)f(\014rst)g(line)
+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
+(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)
+150 1415 y(of)j(a)g(netCDF-supp)s(orted)e(\014le.)40
+b(These)29 b(metho)s(ds)f(determine)g(whether)g(it)h(is)g(a)g(classic)g
+(\(32-bit)i(o\013set\))150 1525 y(or)41 b(new)m(er)g(64-bit)h(o\013set)
+g(netCDF3)g(format,)i(or)d(is)g(a)g(netCDF4)h(format.)73
+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 5064 y Fy(\045)47 b(ncks)g(-M)g(foo_3c.nc)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 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)390 299 y Fy(Summary)46
-b(of)h(foo_3c.nc:)e(filetype)h(=)h(NC_FORMAT_CLASSIC,)c(0)k(groups)f
-(...)390 408 y(\045)h(ncks)g(-M)g(foo_364.nc)390 518
-y(Summary)f(of)h(foo_364.nc:)e(filetype)g(=)j(NC_FORMAT_64BIT,)43
-b(0)48 b(groups)e(...)390 628 y(\045)h(ncks)g(-M)g(foo_4c.nc)390
-737 y(Summary)f(of)h(foo_4c.nc:)e(filetype)h(=)h
+FD(':)390 2066 y Fy(\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
+b(0)48 b(groups)e(...)390 2504 y(\045)h(ncks)g(-M)g(foo_4c.nc)390
+2614 y(Summary)f(of)h(foo_4c.nc:)e(filetype)h(=)h
 (NC_FORMAT_NETCDF4_CLASSI)o(C,)42 b(0)47 b(groups)f(...)390
-847 y(\045)h(ncks)g(-M)g(foo_4.nc)390 956 y(Summary)f(of)h(foo_4.nc:)e
-(filetype)h(=)h(NC_FORMAT_NETCDF4,)c(0)48 b(groups)e(...)275
-1121 y FD(This)30 b(metho)s(d)h(requires)f(a)i(netCDF4-enabled)h
+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 1230 y(As)k(of)g FC(NCO)g FD(v)m(ersion)g(4.4.0)i(\(Jan)m
+(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
-(extended)g(or)g(underlying)150 1340 y(format)i(of)g(the)g(input)f
+(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 1450
+(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 1559 y(sic)i(and)f(64-bit)h(v)m(ersions)g(of)g
+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
-b(and)e(extended)150 1669 y(v)m(ersions)28 b(of)g(netCDF4,)i(and)d
+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 1778 y(FORMAT_PNETCDF)f
+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 1888 y Fy(NC_FORMAT_DAP4)26
+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 2052 y Fy(\045)47 b(ncks)g(-D)g(2)h(-M)f
-(hdf.hdf)390 2162 y(Summary)f(of)h(hdf.hdf:)f(filetype)f(=)j
+b(F)-8 b(or)31 b(example,)390 3922 y Fy(\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
-2271 y(extended/underlying)c(filetype)j(NC_FORMAT_HDF4\),)d(0)k(groups)
-f(...)390 2381 y(\045)h(ncks)g(-D)g(2)h(-M)f(http://thredds-test.ucar)o
+4141 y(extended/underlying)c(filetype)j(NC_FORMAT_HDF4\),)d(0)k(groups)
+f(...)390 4251 y(\045)h(ncks)g(-D)g(2)h(-M)f(http://thredds-test.ucar)o
 (.edu)o(/th)o(redd)o(s/do)o(dsC)o(/tes)o(tdod)o(s/i)o(n.nc)390
-2491 y(Summary)f(of)h(http://thredds-test.ucar)o(.edu)o(/thr)o(edd)o
+4361 y(Summary)f(of)h(http://thredds-test.ucar)o(.edu)o(/thr)o(edd)o
 (s/do)o(dsC/)o(tes)o(tdod)o(s/in)o(.nc)o(:)42 b(\\)485
-2600 y(filetype)k(=)h(NC_FORMAT_CLASSIC)d(\(representation)f(of)k
-(extended/underlying)c(\\)485 2710 y(filetype)j(NC_FORMAT_DAP2\),)d(0)
-48 b(groups)390 2819 y(\045)f(ncks)g(-D)g(2)h(-M)f(foo_4.nc)390
-2929 y(Summary)f(of)h(foo_4.nc:)e(filetype)h(=)h(NC_FORMAT_NETCDF4)c
-(\(representation)h(of)j(\\)485 3039 y(extended/underlying)c(filetype)j
-(NC_FORMAT_HDF5\),)d(0)k(groups)275 3203 y FD(The)29
+4470 y(filetype)k(=)h(NC_FORMAT_CLASSIC)d(\(representation)f(of)k
+(extended/underlying)c(\\)485 4580 y(filetype)j(NC_FORMAT_DAP2\),)d(0)
+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
 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
-3313 y(\014le.)275 3477 y(Second,)f(query)g(the)g(\014le)h(with)f(`)p
-Fy(ncdump)f(-k)p FD(':)390 3641 y Fy(\045)47 b(ncdump)g(-k)g(foo_3c.nc)
-390 3751 y(classic)390 3861 y(\045)g(ncdump)g(-k)g(foo_364.nc)390
-3970 y(64-bit-offset)390 4080 y(\045)g(ncdump)g(-k)g(foo_4c.nc)390
-4189 y(netCDF-4)f(classic)f(model)390 4299 y(\045)i(ncdump)g(-k)g
-(foo_4.nc)390 4408 y(netCDF-4)275 4573 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 4737
-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 4902 y
-Fy(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_3c.nc)533 5011
-y(C)143 b(D)g(F)47 b(001)390 5121 y(\045)g(od)h(-An)f(-c)g(-N4)g
-(foo_364.nc)533 5230 y(C)143 b(D)g(F)47 b(002)390 5340
-y(\045)g(od)h(-An)f(-c)g(-N4)g(foo_4c.nc)p eop end
+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
 %%Page: 38 44
 TeXDict begin 38 43 bop 150 -116 a FD(38)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)438 299 y Fy(211)142 b(H)h(D)g(F)390
-408 y(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_4.nc)438 518
-y(211)142 b(H)h(D)g(F)275 682 y FD(This)44 b(option)h(w)m(orks)g
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(\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 1227 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 1388
+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 1549 y
+Fy(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_3c.nc)533 1658
+y(C)143 b(D)g(F)47 b(001)390 1768 y(\045)g(od)h(-An)f(-c)g(-N4)g
+(foo_364.nc)533 1878 y(C)143 b(D)g(F)47 b(002)390 1987
+y(\045)g(od)h(-An)f(-c)g(-N4)g(foo_4c.nc)438 2097 y(211)142
+b(H)h(D)g(F)390 2206 y(\045)47 b(od)h(-An)f(-c)g(-N4)g(foo_4.nc)438
+2316 y(211)142 b(H)h(D)g(F)275 2477 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 792 y(indicate)i(32-bit)f
+b(and)g(`)p Fy(C)31 b(D)f(F)g(002)p FD(')150 2587 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
-902 y(F)p FD(')g(indicate)i(either)f(of)f(the)h(new)m(er)f(netCDF4)h
-(\014le)g(formats.)150 1111 y Fu(3.9.3)63 b(File)41 b(Con)m(v)m(ersion)
-150 1258 y FD(Let)f(us)e(demonstrate)i(con)m(v)m(erting)h(a)f(\014le)f
+2696 y(F)p FD(')g(indicate)i(either)f(of)f(the)h(new)m(er)f(netCDF4)h
+(\014le)g(formats.)150 2899 y Fu(3.9.3)63 b(File)41 b(Con)m(v)m(ersion)
+150 3045 y FD(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 1367 y(netCDF)32 b(output)f(format)h(\(sub)5 b(ject)31
+(y)150 3155 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 1477 y FD(ma)m(y)38
+b(the)f(input)g(\014le)g Fy(in.nc)150 3265 y FD(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
-1587 y(tended\),)f(HDF4,)h(HDF5,)h(HDF-EOS)d(\(v)m(ersion)g(2)h(or)e
+3374 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
-1696 y(output)30 b(format)h(written)f(in)g(the)h(commen)m(t:)390
-1861 y Fy(ncks)47 b(--fl_fmt=classic)c(in.nc)j(foo_3c.nc)g(#)h(netCDF3)
-f(classic)390 1970 y(ncks)h(--fl_fmt=64bit)d(in.nc)i(foo_364.nc)f(#)i
-(netCDF3)f(64bit)390 2080 y(ncks)h(--fl_fmt=netcdf4_classi)o(c)42
-b(in.nc)k(foo_4c.nc)f(#)j(netCDF4)e(classic)390 2189
+3484 y(output)30 b(format)h(written)f(in)g(the)h(commen)m(t:)390
+3645 y Fy(ncks)47 b(--fl_fmt=classic)c(in.nc)j(foo_3c.nc)g(#)h(netCDF3)
+f(classic)390 3754 y(ncks)h(--fl_fmt=64bit)d(in.nc)i(foo_364.nc)f(#)i
+(netCDF3)f(64bit)390 3864 y(ncks)h(--fl_fmt=netcdf4_classi)o(c)42
+b(in.nc)k(foo_4c.nc)f(#)j(netCDF4)e(classic)390 3974
 y(ncks)h(--fl_fmt=netcdf4)c(in.nc)j(foo_4.nc)g(#)h(netCDF4)390
-2299 y(ncks)g(-3)g(in.nc)f(foo_3c.nc)f(#)j(netCDF3)e(classic)390
-2408 y(ncks)h(--3)g(in.nc)f(foo_3c.nc)f(#)j(netCDF3)d(classic)390
-2518 y(ncks)i(-6)g(in.nc)f(foo_364.nc)f(#)j(netCDF3)d(64bit)390
-2628 y(ncks)i(--64)f(in.nc)h(foo_364.nc)e(#)i(netCDF3)f(64bit)390
-2737 y(ncks)h(-4)g(in.nc)f(foo_4.nc)g(#)h(netCDF4)390
-2847 y(ncks)g(--4)g(in.nc)f(foo_4.nc)f(#)j(netCDF4)390
-2956 y(ncks)f(-7)g(in.nc)f(foo_4c.nc)f(#)j(netCDF4)e(classic)390
-3066 y(ncks)h(--7)g(in.nc)f(foo_4c.nc)f(#)j(netCDF4)d(classic)275
-3230 y FD(Of)35 b(course)g(since)i(most)f(op)s(erators)f(supp)s(ort)f
+4083 y(ncks)g(-3)g(in.nc)f(foo_3c.nc)f(#)j(netCDF3)e(classic)390
+4193 y(ncks)h(--3)g(in.nc)f(foo_3c.nc)f(#)j(netCDF3)d(classic)390
+4302 y(ncks)i(-6)g(in.nc)f(foo_364.nc)f(#)j(netCDF3)d(64bit)390
+4412 y(ncks)i(--64)f(in.nc)h(foo_364.nc)e(#)i(netCDF3)f(64bit)390
+4521 y(ncks)h(-4)g(in.nc)f(foo_4.nc)g(#)h(netCDF4)390
+4631 y(ncks)g(--4)g(in.nc)f(foo_4.nc)f(#)j(netCDF4)390
+4741 y(ncks)f(-7)g(in.nc)f(foo_4c.nc)f(#)j(netCDF4)e(classic)390
+4850 y(ncks)h(--7)g(in.nc)f(foo_4c.nc)f(#)j(netCDF4)d(classic)275
+5011 y FD(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 3340 y(at)e(the)g(output)f(stage)i(of)f(arithmetic)g(or)g
+(done)150 5121 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 3450 y(step.)40 b(Pro)s(ducing)26 b(\(netCDF3\))i
+150 5230 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 3559 y(w)m(ork.)150
-3768 y Fu(3.9.4)63 b(Auto)s(con)m(v)m(ersion)150 3915
-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
-4025 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 4134 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
-4244 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 4354 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
-4463 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 4573 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 4682 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
-4847 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 5011 y(1.)61 b(Auto)s(con)m(v)m
+22 b FD(\014les)27 b(will)g(alw)m(a)m(ys)150 5340 y(w)m(ork.)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)150 299 y Fu(3.9.4)63
+b(Auto)s(con)m(v)m(ersion)150 446 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 555 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
+665 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 775 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
+884 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 994 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
+1103 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
+1213 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 1372
+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 1532 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
-5121 y Fy(NC_SHORT)p FD(,)36 b(and)g Fy(NC_USHORT)f FD(to)i
+1641 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 5230 y(UINT)p FD(,)e Fy(NC_UINT64)p
+(t)m(yp)s(es)g Fy(NC_)330 1751 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 5340 y(All)g(n)m(umeric)f(con)m(v)m(ersions)i(w)m
+Fy(NC_CHAR)p FD(.)330 1861 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)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)330 299 y(t)m(yp)s(es)22
+(rank.)56 b(Tw)m(o)35 b(n)m(umeric)330 1970 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
-(range)g(\(and)f(greater)330 408 y(storage\).)48 b(This)32
+(range)g(\(and)f(greater)330 2080 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 518 y(impression.)73
+(erhaps)d(con)m(v)m(eys)k(the)e(wrong)330 2189 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
-628 y(justi\014es)28 b(the)h(extra)g(storage\).)42 b(Three)28
+2299 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 737 y(are)d
-Fo(demote)-5 b(d)p FD(.)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
-847 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(to)i(con)
-m(v)m(ert)330 956 y(the)37 b(data)h(to)g(\015oating)g(p)s(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 1066 y(squeaky)30
-b(wheel)h(and)f(let)h(us)f(kno)m(w.)330 1244 y(String)j(con)m(v)m
+Fy(NC_UINT64)e FD(and)i Fy(NC_INT64)p FD(\))330 2408
+y(are)d Fo(demote)-5 b(d)p FD(.)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 2518 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
+(to)i(con)m(v)m(ert)330 2628 y(the)37 b(data)h(to)g(\015oating)g(p)s
+(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 2737 y(squeaky)30
+b(wheel)h(and)f(let)h(us)f(kno)m(w.)330 2870 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
 (attributes,)h(but)d(not)h(for)g(v)-5 b(ariables.)50
-b(This)32 b(is)330 1353 y(b)s(ecause)21 b(attributes)g(are)g(at)h(most)
+b(This)32 b(is)330 2979 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 1463 y(require)22 b(gridded)f
+(whereas)e(v)-5 b(ariables)330 3089 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 1572 y(scalar)24
+f(of)g(text)h(strings.)38 b(Hence)330 3199 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
-1682 y(in)36 b(the)h(netCDF3)h(output)e(\014le,)j(but)d
+3308 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)
-m(erted.)61 b(If)330 1792 y(this)30 b(limitation)i(anno)m(ys)f(or)f
+m(erted.)61 b(If)330 3418 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 1969 y(2.)61 b(Con)m(v)m(ert)23
+(the)h(squeaky)f(wheel.)199 3550 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 2079 y
+37 b(Man)m(y)23 b(netCDF4)f(and)g FC(HDF5)330 3660 y
 FD(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
-2188 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 2298
+3770 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 3879
 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
-2408 y(netCDF3)26 b(output.)39 b(By)26 b(in)m(v)m(oking)h
+3989 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
-(\014le)h(will)330 2517 y(adhere)31 b(to)h(netCDF3)g(con)m(v)m(en)m
+(\014le)h(will)330 4098 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 2627 y(record)i(dimensions)e(to)j(\014x.)47
+(the)f(sp)s(eci\014c)330 4208 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(173)h(for)f(a)330 2736 y(description)d(of)h(the)g(`)p
-Fy(--fix_rec_dmn)p FD(')c(option.)199 2914 y(3.)61 b(Flattening)29
+(page)g(176)h(for)f(a)330 4318 y(description)d(of)h(the)g(`)p
+Fy(--fix_rec_dmn)p FD(')c(option.)199 4450 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-)
-330 3024 y(c)m(hies.)41 b(Since)30 b(a)f(netCDF3)i(\014le)f(ma)m(y)g
+330 4560 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 3133 y(remo)m(v)m(ed.)43
+(\014le)g(m)m(ust)h(b)s(e)330 4669 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
-3243 y(P)m(ath)f(Editing],)g(page)g(45)g(for)f(a)h(description)g(of)f
+4779 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
-(\014les.)275 3513 y(Putting)i(the)h(three)f(algorithms)h(together,)i
+(\014les.)275 4961 y(Putting)i(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 3623 y(netCDF4)g(b)s(ecomes)g(increasingly)g(complex)g(as)f
+(to)150 5071 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
-3733 y(more)d(elab)s(orate:)390 3935 y Fy(#)47 b(Convert)f(file)h(with)
-g(netCDF4)e(atomic)h(types)390 4045 y(ncks)h(-3)g(in.nc4)f(out.nc3)390
-4154 y(#)h(Convert)f(file)h(with)g(multiple)e(record)h(dimensions)f(+)j
-(netCDF4)d(atomic)i(types)390 4264 y(ncks)g(-3)g(--fix_rec_dmn=all)c
-(in.nc4)j(out.nc3)390 4374 y(#)h(Convert)f(file)h(with)g(groups,)e
+5181 y(more)d(elab)s(orate:)390 5340 y Fy(#)47 b(Convert)f(file)h(with)
+g(netCDF4)e(atomic)h(types)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.5)j(User)d(Guide)390 299 y Fy(ncks)47 b(-3)g(in.nc4)f(out.nc3)
+390 408 y(#)h(Convert)f(file)h(with)g(multiple)e(record)h(dimensions)f
+(+)j(netCDF4)d(atomic)i(types)390 518 y(ncks)g(-3)g(--fix_rec_dmn=all)c
+(in.nc4)j(out.nc3)390 628 y(#)h(Convert)f(file)h(with)g(groups,)e
 (multiple)h(record)g(dimensions)f(+)i(netCDF4)f(atomic)g(types)390
-4483 y(ncks)h(-3)g(-G)g(:)g(--fix_rec_dmn=all)d(in.nc4)i(out.nc3)275
-4686 y FD(F)-8 b(uture)41 b(v)m(ersions)h(of)g FC(NCO)f
+737 y(ncks)h(-3)g(-G)g(:)g(--fix_rec_dmn=all)d(in.nc4)i(out.nc3)275
+971 y FD(F)-8 b(uture)41 b(v)m(ersions)h(of)g FC(NCO)f
 FD(ma)m(y)h(automatically)j(in)m(v)m(ok)m(e)e(the)f(record)g(dimension)
-f(\014xation)h(and)150 4795 y(group)30 b(\015attening)i(when)e(con)m(v)
+f(\014xation)h(and)150 1080 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 4905 y(ally\).)42 b(If)30
+(sp)s(eci\014ed)f(man)m(u-)150 1190 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 5267 y FB(3.10)68 b(Large)46 b(File)f(Supp)t(ort)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.4)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(All)31 b(op)s(erators)178 297 y(Short)f(options:)
-41 b(none)178 407 y(Long)31 b(options:)41 b(none)p 3803
-541 V 150 593 a Fk(\012)p 200 593 3554 4 v 3553 w(\011)275
-775 y FC(NCO)29 b FD(has)g(Large)i(File)g(Supp)s(ort)c(\()p
+(us)f(kno)m(w.)150 1645 y FB(3.10)68 b(Large)46 b(File)f(Supp)t(ort)150
+1779 y Fk(\013)p 200 1779 3554 4 v 3553 w(\010)p 150
+2269 4 442 v 178 1915 a FD(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 2025 y(Short)f(options:)41
+b(none)178 2134 y(Long)31 b(options:)41 b(none)p 3803
+2269 V 150 2320 a Fk(\012)p 200 2320 3554 4 v 3553 w(\011)275
+2570 y FC(NCO)29 b FD(has)g(Large)i(File)g(Supp)s(ort)c(\()p
 FC(LFS)p FD(\),)k(meaning)f(that)h FC(NCO)e FD(can)h(write)g(\014les)g
-(larger)g(than)g(2)g(GB)150 885 y(on)c(some)h(32-bit)h(op)s(erating)f
+(larger)g(than)g(2)g(GB)150 2679 y(on)c(some)h(32-bit)h(op)s(erating)f
 (systems)f(with)h(netCDF)g(libraries)f(earlier)i(than)e(v)m(ersion)31
-b(3.6)q(.)39 b(If)26 b(desired,)150 994 y(LFS)45 b(supp)s(ort)e(m)m
+b(3.6)q(.)39 b(If)26 b(desired,)150 2789 y(LFS)45 b(supp)s(ort)e(m)m
 (ust)j(b)s(e)e(con\014gured)h(when)f(b)s(oth)h(netCDF)h(and)e
-FC(NCO)h FD(are)h(installed.)86 b(netCDF)150 1104 y(v)m(ersions)31
+FC(NCO)h FD(are)h(installed.)86 b(netCDF)150 2898 y(v)m(ersions)31
 b(3.6)j(and)f(higher)g(supp)s(ort)f(64-bit)j(\014le)e(addresses)g(as)h
 (part)f(of)h(the)f(netCDF)i(standard.)49 b(W)-8 b(e)150
-1213 y(recommend)24 b(that)h(users)f(ignore)h(LFS)f(supp)s(ort)e(whic)m
+3008 y(recommend)24 b(that)h(users)f(ignore)h(LFS)f(supp)s(ort)e(whic)m
 (h)i(is)h(di\016cult)f(to)h(con\014gure)f(and)g(is)g(implemen)m(ted)150
-1323 y(in)f FC(NCO)h FD(only)f(to)i(supp)s(ort)c(netCDF)k(v)m(ersions)e
+3118 y(in)f FC(NCO)h FD(only)f(to)i(supp)s(ort)c(netCDF)k(v)m(ersions)e
 (prior)g(to)31 b(3.6)r(.)38 b(This)23 b(ob)m(viates)i(the)f(need)f(for)
-g(con\014guring)150 1433 y(explicit)36 b(LFS)f(supp)s(ort)e(in)i
+g(con\014guring)150 3227 y(explicit)36 b(LFS)f(supp)s(ort)e(in)i
 (applications)h(\(suc)m(h)f(as)h FC(NCO)p FD(\))f(that)h(no)m(w)f(supp)
-s(ort)e(64-bit)j(\014les)f(directly)150 1542 y(through)c(the)h(netCDF)g
+s(ort)e(64-bit)j(\014les)f(directly)150 3337 y(through)c(the)h(netCDF)g
 (in)m(terface.)46 b(See)32 b(Section)h(3.9)f([File)h(F)-8
 b(ormats)33 b(and)e(Con)m(v)m(ersion],)i(page)g(35)f(for)150
-1652 y(instructions)g(on)g(accessing)i(the)f(di\013eren)m(t)g(\014le)f
+3446 y(instructions)g(on)g(accessing)i(the)f(di\013eren)m(t)g(\014le)f
 (formats,)h(including)f(64-bit)i(\014les,)f(supp)s(orted)d(b)m(y)j(the)
-150 1761 y(mo)s(dern)c(netCDF)i(in)m(terface.)275 1928
+150 3556 y(mo)s(dern)c(netCDF)i(in)m(terface.)275 3790
 y(If)45 b(y)m(ou)g(are)h(still)g(in)m(terested)h(in)e(explicit)i(LFS)e
 (supp)s(ort)f(for)h(netCDF)h(v)m(ersions)g(prior)e(to)32
-b(3.6)q(,)150 2037 y(kno)m(w)h(that)g(LFS)f(supp)s(ort)f(dep)s(ends)g
+b(3.6)q(,)150 3899 y(kno)m(w)h(that)g(LFS)f(supp)s(ort)f(dep)s(ends)g
 (on)i(a)g(complex,)h(in)m(terlo)s(c)m(king)h(set)e(of)g(op)s(erating)g
-(system)3500 2004 y Ft(12)3604 2037 y FD(and)150 2147
+(system)3500 3866 y Ft(12)3604 3899 y FD(and)150 4009
 y(netCDF)26 b(supp)s(ort)d(issues.)39 b(The)24 b(netCDF)i(LFS)f(F)-10
 b(A)m(Q)25 b(\()p Fy(http://my.unidata.ucar.edu)o(/con)o(tent)o(/)150
-2257 y(software)8 b(/)e(netcdf)i(/)e(faq-lf)o(s)i(.)d(html)o
+4118 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 b(\014le)g(size)h
-(limitations)g(imp)s(osed)e(b)m(y)150 2366 y(di\013eren)m(t)h(v)m
+(limitations)g(imp)s(osed)e(b)m(y)150 4228 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
-2476 y(con\014gure)30 b(LFS)g(at)h(build)f(time.)150
-2729 y FB(3.11)68 b(Subsetting)46 b(Files)150 2863 y
-Fk(\013)p 200 2863 V 3553 w(\010)p 150 4338 4 1428 v
-178 2998 a FD(Options)30 b Fy(--unn)178 3108 y FD(Av)-5
+4338 y(con\014gure)30 b(LFS)g(at)h(build)f(time.)150
+4793 y FB(3.11)68 b(Subsetting)46 b(Files)p 150 5241
+1200 4 v 166 5308 a Ft(12)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
+%%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
+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 3217 y FD(Short)h(options:)178 3327 y(Long)h(options:)41
+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
-3436 y(Options)g Fy(-g)g Fn(grp)178 3546 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 3656
-y FD(Short)h(options:)41 b(`)p Fy(-g)p FD(')178 3765
-y(Long)31 b(options:)41 b(`)p Fy(--grp)p FD(')29 b(and)h(`)p
-Fy(--group)p FD(')178 3875 y(Options)g Fy(-v)g Fn(var)f
-FD(and)h Fy(-x)178 3984 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 4094 y FD(Short)h(options:)41 b(`)p
-Fy(-v)p FD(',)31 b(`)p Fy(-x)p FD(')178 4203 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(')p 3803 4338 V 150 4389 a Fk(\012)p 200
-4389 3554 4 v 3553 w(\011)275 4567 y FD(Subsetting)k(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
-4676 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
+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
+(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 4786 y(options)22 b(for)f(directly)h(sp)s(ecifying)g(v)-5
+FD(')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 4895 y(of)k(v)-5 b(ariables,)27
+(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 5005 y(of)38 b(v)-5
+FD(')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 5115 y(time,lat,lon)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
 b(options)f(ma)m(y)g(b)s(e)f(sp)s(eci\014ed)g(sim)m(ultaneously)i(and)e
-FC(NCO)p 150 5241 1200 4 v 166 5308 a Ft(12)300 5340
-y Fs(Lin)n(ux)e(and)g Fp(AIX)h Fs(do)f(supp)r(ort)h Fp(LFS)p
-Fs(.)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 299 y(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 408 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 518 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 628 y(is)32
-b(equiv)-5 b(alen)m(t)33 b(to)f(sp)s(ecifying)g(all)h(v)-5
+FC(NCO)150 2910 y FD(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
+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
+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
-737 y(list)38 b(of)f(v)-5 b(ariables)38 b(sp)s(eci\014ed)e(with)h(`)p
+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 847 y(t)m(yping)31
+b(`)p Fy(-x)p FD(')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
-1011 y(V)-8 b(ariables)58 b(or)f(groups)g(explicitly)i(sp)s(eci\014ed)d
+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 1121 y Fn(grp)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
 (\014le)h(or)g(an)g(error)g(will)g(result.)82 b(V)-8
-b(ariables)45 b(explic-)150 1230 y(itly)28 b(sp)s(eci\014ed)f(for)g
+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
-(input)g(\014le.)39 b(T)-8 b(o)150 1340 y(accord)26 b(with)f(the)h
+(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
-1450 y(a)35 b(few)f(p)s(o)m(w)m(erful)g(y)m(et)i(subtle)e(syn)m
+4122 y(a)35 b(few)f(p)s(o)m(w)m(erful)g(y)m(et)i(subtle)e(syn)m
 (tactical)j(distinctions.)53 b(When)34 b(learning)h(this)f(syn)m(tax)h
-(it)g(is)g(helpful)150 1559 y(to)c(k)m(eep)g(in)f(mind)g(the)g
+(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 1724 y(Tw)m(o)d(prop)s(erties)f(of)h
+(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)
+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
+(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
+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
+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
+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
+(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.5)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 1833 y(the)k(user)g(of)g(their)g
+(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 1943 y(sub)-5 b(dir)g(e)g(ctories)44
+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 2052 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 2162 y Fy(src)f FD(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
-2271 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 2381 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 b(is)h(turned)f(o\013)h(b)m(y)g(app)s
-(ending)f(a)150 2491 y(trailing)j(slash)g(to)g(the)f(path.)275
-2655 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 2765 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 2874 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(eci\014ed)e(path)h(is)g(relativ)m(e)j(to)
-e(the)f(ro)s(ot)h(directory)-8 b(,)150 2984 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
-3093 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)150 3203 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 3313 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(non-recursiv)m(e.)275 3477 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 3587
-y(out.nc)p FD(':)390 3751 y Fy(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 3861 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 3970 y(ncks)g(-g)g(/g1)94
+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
+(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
+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
+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
+(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)
+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
+(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
+(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
-4080 y(ncks)h(-g)g(/g1/)f(#)i(Extract,)d(non-recursively)f(root)j
-(group)f(g1)390 4189 y(ncks)h(-g)g(//)142 b(#)48 b(Extract,)d
-(non-recursively)f(the)j(root)g(group)275 4354 y FD(The)37
+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
 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
-4463 y(groups,)27 b(if)f(presen)m(t,)h(and)f(all)h(their)f(direct)h
+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 4573
+b Fy(/g2/g1)p FD(,)f(and)f Fy(/g3/g1/g2)p FD(.)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)
-h(direct)g(ancestors)150 4682 y(and)31 b(c)m(hildren,)i(recursiv)m
+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
 (onen)m(t)e(of)g(their)g(path.)46 b(A)32 b(simple)150
-4792 y(string)k(matc)m(h)h(is)e(insu\016cien)m(t,)j Fz(grp)g
+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
-(name\))h(in)g(the)150 4902 y(path.)73 b(The)40 b(option)i(`)p
+(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
-5011 y(comp)s(onen)m(t)36 b(of)f(the)h(path:)50 b Fy(/g12)p
+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
 b(second)g(command)g(ab)s(o)m(v)m(e)i(sho)m(ws)e(ho)m(w)150
-5121 y(a)h(terminating)h(slash)f(c)m(haracter)h Fn(/)f
+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 5230 y(`)p Fy(-g)p FD(')i(whic)m(h)f
+b(An)36 b(argumen)m(t)g(to)150 3801 y(`)p Fy(-g)p FD(')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 5340 y(but)30 b(none)h(of)g(its)h
+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(/)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.4)j(User)d(Guide)150 299 y(anc)m(hors)h(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 408 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
+Fn(/)150 4020 y FD(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
-518 y FD(at)f(the)f(ro)s(ot)h(lev)m(el)h(and)d(all)i(its)g(c)m
+4239 y FD(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 628 y(v)m(ersion)d(of)g(the)f(third)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 787 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 897 y FC(NCO)30 b FD(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 1006 y(in)d(the)h(sp)s(eci\014ed)f
-(groups)1038 973 y Ft(13)1107 1006 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 1116 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 1225
-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('\):)390 1385 y Fy(#)47 b(Intersection-mode)d
-(subsetting)h(\(default\))390 1494 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
-1604 y(ncks)h(-g)g(/g1)94 b(-v)48 b(v1)f(#)g(Yes:)g(/g1/v1,)f
-(/g1/g2/v1.)f(No:)i(/v1,)f(/g2/v1,)g(/g2/g1/v1)390 1714
-y(ncks)h(-g)95 b(g1/)46 b(-v)i(v1)f(#)g(Yes:)g(/g1/v1,)f(/g2/g1/v1.)f
-(No:)i(/v1,)f(/g2/v1,)g(/g1/g2/v1)390 1823 y(ncks)h(-v)95
-b(g1/v1)237 b(#)47 b(Yes:)g(/g1/v1,)f(/g2/g1/v1.)f(No:)i(/v1,)f
-(/g2/v1,)g(/g1/g2/v1)390 1933 y(ncks)h(-g)g(/g1/)f(-v)i(v1)f(#)g(Yes:)g
-(/g1/v1.)f(No:)h(/g2/g1/v1,)e(/v1,)h(/g2/v1)g(...)390
-2042 y(ncks)h(-v)g(/g1/v1)237 b(#)47 b(Yes:)g(/g1/v1.)f(No:)h
-(/g2/g1/v1,)e(/v1,)h(/g2/v1)g(...)390 2262 y(#)h(Union-mode)e
+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
+(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(13)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
+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(13)300 5166 y Fs(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
+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
+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
+b(v1)f(#)g(Yes:)g(/g1/v1,)f(/g1/g2/v1.)f(No:)i(/v1,)f(/g2/v1,)g
+(/g2/g1/v1)390 628 y(ncks)h(-g)95 b(g1/)46 b(-v)i(v1)f(#)g(Yes:)g
+(/g1/v1,)f(/g2/g1/v1.)f(No:)i(/v1,)f(/g2/v1,)g(/g1/g2/v1)390
+737 y(ncks)h(-v)95 b(g1/v1)237 b(#)47 b(Yes:)g(/g1/v1,)f(/g2/g1/v1.)f
+(No:)i(/v1,)f(/g2/v1,)g(/g1/g2/v1)390 847 y(ncks)h(-g)g(/g1/)f(-v)i(v1)
+f(#)g(Yes:)g(/g1/v1.)f(No:)h(/g2/g1/v1,)e(/v1,)h(/g2/v1)g(...)390
+956 y(ncks)h(-v)g(/g1/v1)237 b(#)47 b(Yes:)g(/g1/v1.)f(No:)h
+(/g2/g1/v1,)e(/v1,)h(/g2/v1)g(...)390 1176 y(#)h(Union-mode)e
 (subsetting)g(\(invoke)h(with)h(--unn)f(or)h(--union\))390
-2371 y(ncks)g(-g)95 b(g1)f(-v)48 b(v1)f(--unn)f(#)i(All)f(variables)e
+1285 y(ncks)g(-g)95 b(g1)f(-v)48 b(v1)f(--unn)f(#)i(All)f(variables)e
 (in)95 b(g1)47 b(or)g(progeny,)f(or)h(named)f(v1)390
-2481 y(ncks)h(-g)g(/g1)94 b(-v)48 b(v1)f(--unn)f(#)i(All)f(variables)e
-(in)i(/g1)g(or)g(progeny,)f(or)h(named)f(v1)390 2590
+1395 y(ncks)h(-g)g(/g1)94 b(-v)48 b(v1)f(--unn)f(#)i(All)f(variables)e
+(in)i(/g1)g(or)g(progeny,)f(or)h(named)f(v1)390 1504
 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 2700 y(ncks)h(-g)g(/g1/)f(-v)i(v1)f
+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
-2859 y FD(The)34 b(\014rst)h(command)g(\(`)p Fy(-g)30
+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
-2969 y FD(or)h(descenden)m(t)h Fy(g1)p FD(.)57 b(The)36
+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 3078 y(an)m(y)41
+(group)g(named)g Fy(g1)g FD(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 3188 y(extracting)29 b Fy(v1)d
+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)
-150 3298 y(commands)c(are)h(equiv)-5 b(alen)m(t)24 b(w)m(a)m(ys)h(of)e
+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 3407 y Fy(g1)p FD(.)38 b(Subsetting)23
+(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
 (v)-5 b(ariables)24 b(to)h(b)s(e)e(extracted)i(whic)m(h)e(meet)150
-3517 y(either)i(one)f(or)h(b)s(oth)e(of)i(the)f(sp)s(eci\014cations)h
+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
-b(Union-mo)s(de)150 3626 y(subsetting)30 b(is)g(simply)f(the)h(logical)
+b(Union-mo)s(de)150 2553 y(subsetting)30 b(is)g(simply)f(the)h(logical)
 i(\\OR")f(of)f(in)m(tersection-mo)s(de)h(subsetting.)41
-b(As)30 b(discussed)e(b)s(elo)m(w,)150 3736 y(the)33
+b(As)30 b(discussed)e(b)s(elo)m(w,)150 2663 y(the)33
 b(group)f(and)g(v)-5 b(ariable)33 b(sp)s(eci\014cations)g(ma)m(y)g(b)s
 (e)f(comma)i(separated)f(lists)g(of)g(regular)f(expressions)150
-3846 y(for)e(added)g(con)m(trol)i(o)m(v)m(er)f(subsetting.)275
-4005 y(Remem)m(b)s(er,)41 b(if)f(a)m(v)m(eraging)i(or)e(concatenating)i
+2772 y(for)e(added)g(con)m(trol)i(o)m(v)m(er)f(subsetting.)275
+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
-4115 y(disk)31 b(resources,)g(then)g(the)g(easiest)h(solution)g(is)f
+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 4224 y(only)f(the)h(most)g(imp)s
+Fy(-v)p FD('\))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 4384 y Fy(ncks)476
+(Requiremen)m(ts],)h(page)f(22\).)390 3336 y Fy(ncks)476
 b(in.nc)47 b(out.nc)f(#)h(Extract)f(all)h(groups)f(and)h(variables)390
-4493 y(ncks)g(-v)g(scl)142 b(#)48 b(Extract)d(variable)h(scl)h(from)g
-(all)f(groups)390 4603 y(ncks)h(-g)g(g1)190 b(#)48 b(Extract)d(group)i
-(g1)g(and)g(descendents)390 4712 y(ncks)g(-x)g(-g)g(g1)g(#)h(Extract)d
-(all)i(groups)f(except)h(g1)g(and)g(descendents)390 4822
+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 4981 y FD(Ov)m(erwriting)30 b(and)g(app)s(ending)f
-(w)m(ork)h(as)h(exp)s(ected:)p 150 5066 1200 4 v 166
-5134 a Ft(13)300 5166 y Fs(In)n(tersection-mo)r(de)26
-b(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
-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
-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 408 y(ncks)g(-A)g(-g)g(g2)g(-v)g(scl)g
-(in.nc)g(out.nc)275 569 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(di\013eren)m(tly)h(\(see)g(Section)g(4.1)150
-679 y([ncap2)44 b(netCDF)g(Arithmetic)g(Pro)s(cessor],)k(page)c(102\).)
-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 788 y(argumen)m(ts)33
+(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
+(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
+(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(v)-5 b(ariables)33 b(should)e(b)s(e)h(output.)46 b
-Fy(ncap2)31 b FD(neither)150 898 y(accepts)h(nor)e(understands)e(the)i
+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
-1059 y(Regular)24 b(expressions)f(the)g(syn)m(tax)h(that)g
+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
-(netCDF)h(\014le)150 1168 y(against)29 b(user)e(requests.)39
+(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
-1278 y(an)g(input)g(\014le)h(b)m(y)f(supplying)g(the)g(regular)h
+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
-1387 y(The)38 b(meta-c)m(haracters)k(used)c(to)h(express)g(pattern)g
+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 1497 y(the)36 b(regular)g(expression)f(pattern)h
+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
 b(ariable)37 b(name)f(then)f(that)h(v)-5 b(ariable)37
-b(is)150 1606 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 1716 y(data)e(\014les.)275 1877
-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 1986 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 2096
-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(uary)-8 b(,)33 b(2009\),)h(v)-5
-b(ariable)32 b(names)g(argumen)m(ts)150 2205 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 2315 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 2476 y(Because)35 b(of)e(its)h(wide)g(a)m(v)-5
+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.5)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
+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
+(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
-2585 y(Regular)c(expressions)f(of)g(arbitary)g(complexit)m(y)i(ma)m(y)f
+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 2695 y(relativ)m(ely)f(simple)d(constructs,)i(only)e
+b(names)g(are)150 1387 y(relativ)m(ely)f(simple)d(constructs,)i(only)e
 (a)h(few)f(v)-5 b(arieties)27 b(of)f(v)-5 b(ariable)26
 b(wildcards)f(are)h(lik)m(ely)h(to)f(b)s(e)e(useful.)150
-2804 y(F)-8 b(or)31 b(con)m(v)m(enience,)i(w)m(e)e(de\014ne)e(the)i
+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
-2991 y(`)p Fy(^)p FD(')382 b(Matc)m(hes)32 b(the)f(b)s(eginning)e(of)i
-(a)g(string)150 3153 y(`)p Fy($)p FD(')382 b(Matc)m(hes)32
-b(the)f(end)e(of)i(a)g(string)150 3315 y(`)p Fy(.)p FD(')382
+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
 b(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter)150
-3502 y(The)f(most)h(useful)e(rep)s(etition)i(and)f(com)m(bination)i(op)
-s(erators)e(are)150 3689 y(`)p Fy(?)p FD(')382 b(The)30
+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
 b(preceding)g(regular)h(expression)f(is)g(optional)i(and)e(matc)m(hed)h
-(at)g(most)g(once)150 3851 y(`)p Fy(*)p FD(')382 b(The)30
+(at)g(most)g(once)150 2538 y(`)p Fy(*)p FD(')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 4012 y(`)p Fy(+)p FD(')382 b(The)30
+(or)f(more)h(times)150 2699 y(`)p Fy(+)p FD(')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 4174 y(`)p Fy(|)p FD(')382 b(The)42
+(or)h(more)f(times)150 2861 y(`)p Fy(|)p FD(')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 4284 y(pression.)k(The)32
+(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 4394 y(sub)s(expression.)275
-4631 y(T)-8 b(o)32 b(illustrate)h(the)g(use)f(of)g(these)g(op)s
+(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 4741 y Fy(in_grp.nc)22 b FD(with)h(groups)h
+(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 4851 y FD(with)30 b(v)-5 b(ariables)31
+(\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
-5011 y Fy(ncks)47 b(-v)g('.+')f(in.nc)715 b(#)47 b(All)g(variables)f
-(\(default\))390 5121 y(ncks)h(-v)g('Q.?')f(in.nc)667
-b(#)47 b(Variables)f(that)g(contain)g(Q)390 5230 y(ncks)h(-v)g('^Q.?')f
+3696 y Fy(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
-5340 y(ncks)h(-v)g('^Q+.?.')e(in.nc)524 b(#)47 b(Q,)h(Q0--Q9,)d
-(Q01--Q99,)h(QAA--QZZ,)f(etc.)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.4)j(User)d(Guide)390 299 y Fy(ncks)47 b(-v)g('^Q..')f(in.nc)
-619 b(#)47 b(Q01--Q99,)f(QAA--QZZ,)f(etc.)390 408 y(ncks)i(-v)g
+4025 y(ncks)h(-v)g('^Q+.?.')e(in.nc)524 b(#)47 b(Q,)h(Q0--Q9,)d
+(Q01--Q99,)h(QAA--QZZ,)f(etc.)390 4134 y(ncks)i(-v)g('^Q..')f(in.nc)619
+b(#)47 b(Q01--Q99,)f(QAA--QZZ,)f(etc.)390 4244 y(ncks)i(-v)g
 ('^Q[0-9][0-9]')d(in.nc)237 b(#)47 b(Q01--Q99,)f(Q100)390
-518 y(ncks)h(-v)g('^Q[[:digit:]]{2}')c(in.nc)j(#)h(Q01--Q99)390
-628 y(ncks)g(-v)g('H2O$')f(in.nc)619 b(#)47 b(Q_H2O,)g(X_H2O)390
-737 y(ncks)g(-v)g('H2O$|CO2$')e(in.nc)380 b(#)47 b(Q_H2O,)g(X_H2O,)f
-(Q_CO2,)g(X_CO2)390 847 y(ncks)h(-v)g('^Q[0-9][0-9]$')c(in.nc)190
-b(#)47 b(Q01--Q99)390 956 y(ncks)g(-v)g('^Q[0-6][0-9]|7[0-3]')42
-b(in.nc)k(#)i(Q01--Q73,)d(Q100)390 1066 y(ncks)i(-v)g
+4354 y(ncks)h(-v)g('^Q[[:digit:]]{2}')c(in.nc)j(#)h(Q01--Q99)390
+4463 y(ncks)g(-v)g('H2O$')f(in.nc)619 b(#)47 b(Q_H2O,)g(X_H2O)390
+4573 y(ncks)g(-v)g('H2O$|CO2$')e(in.nc)380 b(#)47 b(Q_H2O,)g(X_H2O,)f
+(Q_CO2,)g(X_CO2)390 4682 y(ncks)h(-v)g('^Q[0-9][0-9]$')c(in.nc)190
+b(#)47 b(Q01--Q99)390 4792 y(ncks)g(-v)g('^Q[0-6][0-9]|7[0-3]')42
+b(in.nc)k(#)i(Q01--Q73,)d(Q100)390 4902 y(ncks)i(-v)g
 ('\(Q[0-6][0-9]|7[0-3]\)$')41 b(in.nc)47 b(#)g(Q01--Q73)390
-1176 y(ncks)g(-v)g('^[a-z]_[a-z]{3}$')c(in.nc)j(#)h(Q_H2O,)g(X_H2O,)f
-(Q_CO2,)g(X_CO2)390 1285 y(ncks)h(-g)g('g.')f(in_grp.nc)523
-b(#)47 b(10)h(Groups)e(g0-g9)390 1395 y(ncks)h(-g)g('s.')f(in_grp.nc)
+5011 y(ncks)g(-v)g('^[a-z]_[a-z]{3}$')c(in.nc)j(#)h(Q_H2O,)g(X_H2O,)f
+(Q_CO2,)g(X_CO2)390 5121 y(ncks)h(-g)g('g.')f(in_grp.nc)523
+b(#)47 b(10)h(Groups)e(g0-g9)390 5230 y(ncks)h(-g)g('s.')f(in_grp.nc)
 332 b(#)48 b(100)e(sub-groups)f(g0/s0,)i(g0/s1,)f(...)h(g9/s9)390
-1504 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.')275 1669
-y FD(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 1778 y(`)p Fy(?)p FD(',)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 1888
-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 1997 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 2107 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 2216 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
+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
+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
+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
+(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
-2326 y(at)j(least)h(once\).)67 b(T)-8 b(o)39 b(matc)m(h)g(zero)h(or)e
+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 2436 y(`)p Fy(?)p FD('.)g(Do)s(cumen)m(tation)31
+(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
-(extended)g(regular)g(expressions)150 2545 y(whic)m(h)h
-FC(NCO)g FD(supp)s(orts.)275 2709 y(One)25 b(m)m(ust)h(b)s(e)f(careful)
+(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)
 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 2819 y(tion)31
+(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 2929 y(c)m(haracters)h(within)e(single)h(or)f(double)g
-(quotes)390 3093 y Fy(ncra)47 b(-v)g(Q??)g(in.nc)f(out.nc)142
+(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
 b(#)47 b(Error:)f(Shell)h(attempts)e(to)i(glob)g(wildcards)390
-3202 y(ncra)g(-v)g('^Q+..')f(in.nc)g(out.nc)g(#)i(Correct:)d(NCO)i
-(interprets)e(wildcards)390 3312 y(ncra)i(-v)g('^Q+..')f(in*.nc)g
+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
-3476 y FD(The)27 b(\014nal)g(example)i(sho)m(ws)f(that)g(commands)g(ma)
+2177 y FD(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 3586 y(and)i(shell)h(\014lename)f(expansion)h
+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 3695 y(the)32 b(preceding)f(regular)g(expression!)44
+FD(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 3805
+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
-3914 y Fy(csh)j FD(describ)s(e)h(the)h(rules)f(of)g(\014lename)h
-(expansion)f(\(globbing\).)150 4161 y FB(3.12)68 b(Subsetting)46
-b(Co)t(ordinate)g(V)-11 b(ariables)150 4295 y Fk(\013)p
-200 4295 3554 4 v 3553 w(\010)p 150 4785 4 442 v 178
-4431 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p FD(,)30
+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
+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 4541
+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 4650 y(Long)g(options:)41 b(`)p Fy(--no-coords)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 4785 V 150 4836 a Fk(\012)p
-200 4836 3554 4 v 3553 w(\011)275 5011 y FD(By)c(default,)h(co)s
+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
 (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
-5121 y FD(will)30 b(b)s(e)g(placed)g(in)g(the)g Fz(output-\014le)p
+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 5230 y(switc)m(h.)46
+(e.g.,)h(with)f(the)g(`)p Fy(-v)p FD(')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 5340 y(them)39
-b(in)m(to)h(the)g Fz(output-\014le)p FD(.)67 b(This)39
-b(feature)g(can)h(b)s(e)e(disabled)h(with)g(`)p Fy(-C)p
-FD(',)j(whic)m(h)d(causes)g FC(NCO)g FD(to)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)150 299 y(not)33
-b(automatically)j(add)d(co)s(ordinates)g(to)h(the)f(v)-5
-b(ariables)34 b(app)s(earing)f(in)g(the)g Fz(output-\014le)p
-FD(.)49 b(Ho)m(w)m(ev)m(er,)150 408 y(using)35 b(`)p
-Fy(-C)p FD(')h(do)s(es)f(not)h(preclude)f(the)h(user)f(from)g
-(including)g(some)h(co)s(ordinates)h(in)e(the)h(output)f(\014les)150
-518 y(simply)e(b)m(y)h(explicitly)i(selecting)g(the)e(co)s(ordinates)g
-(with)g(the)g Fz(-v)42 b FD(option.)52 b(The)34 b(`)p
-Fy(-c)p FD(')f(option,)j(on)e(the)150 628 y(other)c(hand,)f(is)h(a)h
-(shorthand)e(w)m(a)m(y)h(of)h(automatically)h(sp)s(ecifying)e(that)h
-Fo(al)5 b(l)40 b FD(co)s(ordinate)31 b(v)-5 b(ariables)30
-b(in)150 737 y(the)j Fz(input-\014les)j FD(should)c(app)s(ear)h(in)g
-(the)g Fz(output-\014le)p FD(.)49 b(Th)m(us)32 b(`)p
-Fy(-c)p FD(')g(allo)m(ws)j(the)e(user)f(to)i(select)h(all)f(the)150
-847 y(co)s(ordinate)24 b(v)-5 b(ariables)24 b(without)f(ha)m(ving)h(to)
-g(kno)m(w)f(their)g(names.)38 b(As)23 b(of)h FC(NCO)f
-FD(v)m(ersion)g(3.9.6)i(\(Jan)m(uary)-8 b(,)150 956 y(2009\))36
-b(b)s(oth)e(`)p Fy(-c)p FD(')g(and)g(`)p Fy(-C)p FD(')g(honor)g(the)h
-FC(CF)f Fy(coordinates)d FD(con)m(v)m(en)m(tion)37 b(describ)s(ed)c(in)
-h(Section)h(3.37)150 1066 y([CF)30 b(Con)m(v)m(en)m(tions],)h(page)g
-(97.)41 b(As)29 b(of)h FC(NCO)g FD(v)m(ersion)g(4.0.8)h(\(April,)f
-(2011\))i(b)s(oth)d(`)p Fy(-c)p FD(')g(and)g(`)p Fy(-C)p
-FD(')g(honor)150 1176 y(the)i FC(CF)f Fy(bounds)f FD(con)m(v)m(en)m
-(tion)j(describ)s(ed)e(in)g(Section)h(3.37)h([CF)e(Con)m(v)m(en)m
-(tions],)i(page)g(97.)150 1432 y FB(3.13)68 b(Group)45
-b(P)l(ath)g(Editing)150 1566 y Fk(\013)p 200 1566 3554
-4 v 3553 w(\010)p 150 2164 4 551 v 178 1701 a FD(Options)30
-b Fy(-G)g Fn(gpe_dsc)178 1810 y FD(Av)-5 b(ailabilit)m(y:)43
+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
+(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
+(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
+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
+(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(98.)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(98.)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(98.)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.5)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 1920
-y FD(Short)h(options:)41 b(`)p Fy(-G)p FD(')178 2030
-y(Long)31 b(options:)41 b(`)p Fy(--gpe)p FD(')p 3803
-2164 V 150 2216 a Fk(\012)p 200 2216 3554 4 v 3553 w(\011)275
-2399 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
-b(add,)d(remo)m(v)m(e,)j(and)150 2508 y(rename)34 b(groups\))g(in)g
+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
+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 2618 y(pro)m(vide.)49
+(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
 (all)d(op)s(erators)f(that)g(accept)i(netCDF4)f(\014les)f(with)150
-2728 y(groups)j(accept)j(the)e(`)p Fy(-G)p FD(')g(switc)m(h,)j(or)d
+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
-2837 y(m)m(ust)24 b(understand)f(the)h(meaning)h(of)f(the)h(required)e
-Fz(gp)s(e)p 2090 2837 28 4 v 40 w(dsc)30 b FD(structure/argumen)m(t)25
-b(that)g(sp)s(eci\014es)f(the)150 2947 y(transformation)31
-b(of)f(input-to-output)h(group)f(paths.)275 3114 y(Eac)m(h)h
-Fz(gp)s(e)p 646 3114 V 39 w(dsc)36 b FD(con)m(tains)c(up)d(to)i(three)g
+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
+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
 (elemen)m(ts)g(\(t)m(w)m(o)h(are)f(optional\))h(in)e(the)h(follo)m
-(wing)g(order:)150 3224 y Fz(gp)s(e)p 295 3224 V 40 w(dsc)k
-FD(=)30 b Fz(grp)p 730 3224 V 40 w(pth)p FD(:)p Fz(lvl)p
-1030 3224 V 40 w(n)m(br)36 b FD(or)30 b Fz(grp)p 1484
-3224 V 40 w(pth)p FD(@)p Fz(lvl)p 1830 3224 V 40 w(n)m(br)150
-3424 y(grp)p 288 3424 V 40 w(pth)171 b FD(Group)33 b(P)m(ath.)51
+(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
 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 3534 y(should)c(b)s(e)g(app)s(ended)f
+(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 3643 y(path)g(is)h(p)s(erformed.)150
-3819 y Fz(lvl)p 254 3819 V 40 w(n)m(br)207 b FD(The)35
+(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
 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
-3928 y(the)31 b(input)e(path.)150 4128 y(If)34 b(b)s(oth)f(comp)s(onen)
+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 4238 y(or)28
+(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 4238 V 40 w(pth)f
+(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
-4348 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 4348 V
+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)
-h(is)e(still)150 4457 y(required)30 b(to)h(indicate)g(it)g(is)f(a)h
-Fz(lvl)p 1323 4457 V 41 w(n)m(br)36 b FD(arugmen)m(t)30
-b(and)g(not)h(a)g Fz(grp)p 2488 4457 V 39 w(pth)p FD(,)f(e.g.,)i(`)p
+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
-4625 y(If)35 b(the)h(at-sign)g(separator)h(c)m(haracter)g
+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 4734 y(then)h(the)h(follo)m(wing)h
-Fz(lvl)p 1026 4734 V 40 w(n)m(br)k FD(arugmen)m(t)39
+(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
 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 4844 y(T)-8 b(runcation-Mo)s(de.)46
+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 4953 y(the)e Fz(lvl)p 411 4953 V 40 w(n)m(br)36
-b FD(argumen)m(t)31 b(p)s(ositiv)m(e-de\014nite.)275
-5121 y FC(GPE)e FD(has)g(three)i(editing)f(mo)s(des:)40
-b(Delete,)33 b(T)-8 b(runcate,)30 b(and)g(Flatten.)42
-b(Select)31 b(one)f(of)h FC(GPE)p FD('s)e(three)150 5230
-y(editing)23 b(mo)s(des)f(b)m(y)g(supplying)f(a)i Fz(lvl)p
-1412 5230 V 40 w(n)m(br)28 b FD(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
-5340 y(and)30 b(Flatten-mo)s(de,)i(resp)s(ectiv)m(ely)-8
-b(.)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.4)j(User)d(Guide)275 299 y(In)37 b(Delete-mo)s(de,)43
-b Fz(lvl)p 1062 299 28 4 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(sp)s(eci\014es)f(the)g(maxim)m(um)h(n)m(um)m
-(b)s(er)e(of)150 408 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 408 V 39 w(pth)p FD(.)150
-518 y(F)-8 b(or)42 b(example)h Fz(lvl)p 800 518 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
-628 y Fy(/g4/g5)p FD(.)e(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)g(other)h(w)m(ords,)h FC(GPE)e FD(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 1011 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 1121 y(will)d(fail)g(if)f
-(namespace)h(con\015icts)g(arise\).)275 1285 y(In)c(T)-8
-b(runcate-mo)s(de,)29 b Fz(lvl)p 1145 1285 V 40 w(n)m(br)34
+(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(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
+(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
+(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
+(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
+(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 1395 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 1395 V 39 w(pth)p FD(.)150 1504 y(F)-8
-b(or)37 b(example)h Fz(lvl)p 790 1504 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
-1614 y Fy(/g1/g2)p FD(.)j(Input)27 b(paths)i(with)g Fz(lvl)p
-1307 1614 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 1724
-y(the)h(output)f(path)g(commences)h(from)f(the)g(ro)s(ot)h(lev)m(el.)
-275 1888 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 1888
-V 44 w(n)m(br)k FD(=)31 b(0,)36 b FC(GPE)150 1998 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
-2107 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
-2217 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 2326 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 2491 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 2600 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 2600 V 40 w(pth)f FD(to)i(the)f(out-)150 2710 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 2819 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 2929 y(resp)s(ectiv)m(ely)-8
-b(.)42 b(When)29 b Fz(grp)p 1075 2929 V 40 w(pth)f FD(and)h
-Fz(lvl)p 1554 2929 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
-3039 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 3148 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 3258 y Fy(/h1/h2/h3/h4)27
+(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 3422 y(Com)m(bining)42 b FC(GPE)f FD(with)h(subsetting)
+(ely)-8 b(.)275 2436 y(Com)m(bining)42 b FC(GPE)f FD(with)h(subsetting)
 g(\(see)h(Section)g(3.11)h([Subsetting)e(Files],)47 b(page)c(40\))h
-(yields)150 3532 y(p)s(o)m(w)m(erful)27 b(con)m(trol)j(o)m(v)m(er)f
+(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 3641
+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 3751 y(assumed)30 b(to)h(end)e(with)i(`)p Fy(in.nc)e(out.nc)p
-FD('.)390 3915 y Fy(#)47 b(Prepending)e(paths)i(without)f(editing:)390
-4025 y(ncks)906 b(#)47 b(/g?/v?)f(->)h(/g?/v?)390 4134
+(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
+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
-4244 y(ncks)333 b(-g)47 b(g1)334 b(#)47 b(/g1/v?)f(->)h(/g1/v?)390
-4354 y(ncks)g(-G)g(o1)620 b(#)47 b(/g?/v?)f(->)h(/o1/g?/v?)390
-4463 y(ncks)g(-G)g(o1)g(-g)g(g1)334 b(#)47 b(/g1/v?)f(->)h(/o1/g1/v?)
-390 4573 y(ncks)333 b(-g)47 b(g1)g(-v)h(v1)f(#)g(/g1/v1)f(->)h(/g1/v1)
-390 4682 y(ncks)g(-G)g(o1)333 b(-v)48 b(v1)f(#)g(/g?/v1)f(->)h
-(/o1/g?/v1)390 4792 y(ncks)g(-G)g(o1)g(-g)g(g1)g(-v)h(v1)f(#)g(/g1/v1)f
-(->)h(/o1/g1/v1)390 4902 y(ncks)g(-G)g(g1)g(-g)g(/)95
-b(-v)48 b(v1)f(#)g(/v1)190 b(->)47 b(/g1/v1)390 5011
+3258 y(ncks)333 b(-g)47 b(g1)334 b(#)47 b(/g1/v?)f(->)h(/g1/v?)390
+3367 y(ncks)g(-G)g(o1)620 b(#)47 b(/g?/v?)f(->)h(/o1/g?/v?)390
+3477 y(ncks)g(-G)g(o1)g(-g)g(g1)334 b(#)47 b(/g1/v?)f(->)h(/o1/g1/v?)
+390 3587 y(ncks)333 b(-g)47 b(g1)g(-v)h(v1)f(#)g(/g1/v1)f(->)h(/g1/v1)
+390 3696 y(ncks)g(-G)g(o1)333 b(-v)48 b(v1)f(#)g(/g?/v1)f(->)h
+(/o1/g?/v1)390 3806 y(ncks)g(-G)g(o1)g(-g)g(g1)g(-v)h(v1)f(#)g(/g1/v1)f
+(->)h(/o1/g1/v1)390 3915 y(ncks)g(-G)g(g1)g(-g)g(/)95
+b(-v)48 b(v1)f(#)g(/v1)190 b(->)47 b(/g1/v1)390 4025
 y(ncks)g(-G)g(g1/g2)189 b(-v)48 b(v1)f(#)g(/g?/v1)f(->)h(/g1/g2/g?/v1)
-390 5121 y(#)g(Delete-mode:)e(Delete)h(from)h(and)g(Prepend)e(to)j
-(path)e(head)390 5230 y(#)h(Syntax:)f(-G)h([ppn]:lvl_nbr)e(=)i(#)h(of)f
-(levels)f(to)h(delete)390 5340 y(ncks)g(-G)g(:1)190 b(-g)47
-b(g1)191 b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/v1)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)390 299 y Fy(ncks)47
-b(-G)g(:1)190 b(-g)47 b(g1/g1)g(-v)g(v1)g(#)h(/g1/g1/v1)d(->)i(/g1/v1)
-390 408 y(ncks)g(-G)g(:2)190 b(-g)47 b(g1/g1)g(-v)g(v1)g(#)h(/g1/g1/v1)
-d(->)i(/v1)390 518 y(ncks)g(-G)g(:2)190 b(-g)47 b(g1)191
-b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/v1)390 628 y(ncks)g(-G)g(g2:1)
-94 b(-g)47 b(g1)191 b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47
-b(/g2/v1)390 737 y(ncks)g(-G)g(g2:2)94 b(-g)47 b(g1/g1)g(-v)g(v1)g(#)h
-(/g1/g1/v1)d(->)i(/g2/v1)390 847 y(ncks)g(-G)g(g2:1)94
-b(-g)47 b(/)239 b(-v)47 b(v1)g(#)h(/v1)333 b(->)47 b(/g2/v1)390
-956 y(ncks)g(-G)g(g2:1)524 b(-v)47 b(v1)g(#)h(/v1)333
-b(->)47 b(/g2/v1)390 1066 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
-1176 y(#)g(Flatten-mode:)e(Remove)h(all)h(input)f(path)h(components)390
-1285 y(#)g(Syntax:)f(-G)h([apn]:)g(colon)f(without)g(numerical)f
-(argument)390 1395 y(ncks)i(-G)g(:)572 b(-v)47 b(v1)h(#)f(/g?/v1)189
-b(->)48 b(/v1)390 1504 y(ncks)f(-G)g(:)143 b(-g)47 b(g1)190
-b(-v)47 b(v1)h(#)f(/g1/v1)189 b(->)48 b(/v1)390 1614
-y(ncks)f(-G)g(:)143 b(-g)47 b(g1/g1)f(-v)h(v1)h(#)f(/g1/g1/v1)e(->)j
-(/v1)390 1724 y(ncks)f(-G)g(g2:)476 b(-v)47 b(v1)h(#)f(/g?/v1)189
-b(->)48 b(/g2/v1)390 1833 y(ncks)f(-G)g(g2:)763 b(#)47
-b(/g?/v?)189 b(->)48 b(/g2/v?)390 1943 y(ncks)f(-G)g(g2:)g(-g)g(g1/g1)f
-(-v)h(v1)h(#)f(/g1/g1/v1)e(->)j(/g2/v1)390 2052 y(#)f(Truncate-mode:)d
-(Truncate)i(from)h(and)f(Append)h(to)g(path)f(tail)390
-2162 y(#)h(Syntax:)f(-G)h([apn]:-lvl_nbr)d(=)k(#)f(of)g(levels)g(to)g
-(truncate)390 2271 y(#)g(NB:)g(-G)h([apn]:-lvl_nbr)43
-b(is)48 b(equivalent)d(to)i(-G)g([apn]@lvl_nbr)390 2381
+390 4134 y(#)g(Delete-mode:)e(Delete)h(from)h(and)g(Prepend)e(to)j
+(path)e(head)390 4244 y(#)h(Syntax:)f(-G)h([ppn]:lvl_nbr)e(=)i(#)h(of)f
+(levels)f(to)h(delete)390 4354 y(ncks)g(-G)g(:1)190 b(-g)47
+b(g1)191 b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/v1)390
+4463 y(ncks)g(-G)g(:1)190 b(-g)47 b(g1/g1)g(-v)g(v1)g(#)h(/g1/g1/v1)d
+(->)i(/g1/v1)390 4573 y(ncks)g(-G)g(:2)190 b(-g)47 b(g1/g1)g(-v)g(v1)g
+(#)h(/g1/g1/v1)d(->)i(/v1)390 4682 y(ncks)g(-G)g(:2)190
+b(-g)47 b(g1)191 b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47
+b(/v1)390 4792 y(ncks)g(-G)g(g2:1)94 b(-g)47 b(g1)191
+b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/g2/v1)390 4902
+y(ncks)g(-G)g(g2:2)94 b(-g)47 b(g1/g1)g(-v)g(v1)g(#)h(/g1/g1/v1)d(->)i
+(/g2/v1)390 5011 y(ncks)g(-G)g(g2:1)94 b(-g)47 b(/)239
+b(-v)47 b(v1)g(#)h(/v1)333 b(->)47 b(/g2/v1)390 5121
+y(ncks)g(-G)g(g2:1)524 b(-v)47 b(v1)g(#)h(/v1)333 b(->)47
+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.5)j(User)d(Guide)390 299 y Fy(#)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
+b(/v1)390 628 y(ncks)f(-G)g(:)143 b(-g)47 b(g1/g1)f(-v)h(v1)h(#)f
+(/g1/g1/v1)e(->)j(/v1)390 737 y(ncks)f(-G)g(g2:)476 b(-v)47
+b(v1)h(#)f(/g?/v1)189 b(->)48 b(/g2/v1)390 847 y(ncks)f(-G)g(g2:)763
+b(#)47 b(/g?/v?)189 b(->)48 b(/g2/v?)390 956 y(ncks)f(-G)g(g2:)g(-g)g
+(g1/g1)f(-v)h(v1)h(#)f(/g1/g1/v1)e(->)j(/g2/v1)390 1066
+y(#)f(Truncate-mode:)d(Truncate)i(from)h(and)f(Append)h(to)g(path)f
+(tail)390 1176 y(#)h(Syntax:)f(-G)h([apn]:-lvl_nbr)d(=)k(#)f(of)g
+(levels)g(to)g(truncate)390 1285 y(#)g(NB:)g(-G)h([apn]:-lvl_nbr)43
+b(is)48 b(equivalent)d(to)i(-G)g([apn]@lvl_nbr)390 1395
 y(ncks)g(-G)g(:-1)142 b(-g)47 b(g1)191 b(-v)47 b(v1)g(#)h(/g1/v1)189
-b(->)47 b(/v1)390 2491 y(ncks)g(-G)g(:-1)142 b(-g)47
-b(g1/g2)g(-v)g(v1)g(#)h(/g1/g2/v1)d(->)i(/g1/v1)390 2600
+b(->)47 b(/v1)390 1504 y(ncks)g(-G)g(:-1)142 b(-g)47
+b(g1/g2)g(-v)g(v1)g(#)h(/g1/g2/v1)d(->)i(/g1/v1)390 1614
 y(ncks)g(-G)g(:-2)142 b(-g)47 b(g1/g2)g(-v)g(v1)g(#)h(/g1/g2/v1)d(->)i
-(/v1)390 2710 y(ncks)g(-G)g(:-2)142 b(-g)47 b(g1)191
-b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/v1)390 2819
+(/v1)390 1724 y(ncks)g(-G)g(:-2)142 b(-g)47 b(g1)191
+b(-v)47 b(v1)g(#)h(/g1/v1)189 b(->)47 b(/v1)390 1833
 y(ncks)g(-G)g(g2:-1)476 b(-v)47 b(v1)g(#)h(/g?/v1)189
-b(->)47 b(/g2/v1)390 2929 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 3039
+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)275 3203 y FD(Un)m(til)35 b(fall)h(2013)h(\(netCDF)f(v)m
-(ersion)f(4.3.1-pre1\),)k(netCDF)d(con)m(tained)g(no)f(library)f
-(function)h(for)150 3313 y(renaming)44 b(groups,)j(and)c(therefore)i
-Fy(ncrename)c FD(cannot)k(rename)f(groups.)81 b(Ho)m(w)m(ev)m(er,)49
-b FC(NCO)44 b FD(built)150 3422 y(on)35 b(earlier)h(v)m(ersions)g(of)f
-(netCDF)h(than)f(4.3.1)h(can)g(use)f(a)g FC(GPE)p FD(-based)g(w)m(ork)
--5 b(around)34 b(mec)m(hanism)h(to)150 3532 y(\\rename")44
-b(groups.)76 b(The)42 b FC(GPE)g FD(mec)m(hanism)h(actually)h
-Fo(moves)50 b FD(\(i.e.,)d(copies)d(to)f(a)g(new)f(lo)s(cation\))150
-3641 y(groups,)29 b(a)g(more)g(arduous)f(pro)s(cedure)g(than)h(simply)f
-(renaming)h(them.)41 b FC(GPE)28 b FD(applies)h(to)h(all)f(selected)150
-3751 y(groups,)38 b(so,)g(in)e(the)h(general)g(case,)i(one)e(m)m(ust)f
-(mo)m(v)m(e)i(only)f(the)g(desired)e(group)h(to)h(a)g(new)f(\014le,)j
-(and)150 3861 y(then)27 b(merge)i(that)f(new)f(\014le)h(with)f(the)h
-(original)h(to)f(obtain)g(a)g(\014le)g(where)f(the)h(desired)f(group)g
-(has)h(b)s(een)150 3970 y(\\renamed")38 b(and)g(all)g(else)h(is)f(unc)m
-(hanged.)62 b(Here)39 b(is)f(ho)m(w)f(to)i(\\rename")g(group)e
-Fy(/g4)g FD(to)i(group)e Fy(/f4)150 4080 y FD(with)30
-b FC(GPE)g FD(instead)g(of)h Fy(ncrename)390 4244 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 4354 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
-4463 y(ncks)h(-A)g(~/tmp.nc)e(~/out.nc)h(#)h(Add)g(/f4)g(to)g(new)g
-(file)275 4628 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 b(the)g(\014nal)150
-4737 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
-4847 y(\\rename")d(and)e(cop)m(y)i(groups.)41 b(The)31
+(/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
+(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)
+-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
+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
+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
+(-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
+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
+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 4956 y(v)m(ersion)h(4.3.1)i(is)d(a)m(v)-5
+(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 5066 y(page)g(198\).)275
-5230 y(One)48 b(ma)m(y)i(wish)f(to)h(\015atten)f(hierarc)m(hical)i
+([ncrename)f(netCDF)g(Renamer],)150 4545 y(page)g(201\).)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 5340 y(1.)41 b(Obtaining)d(\015at)g(netCDF3)i(\014les)e
+b(include)150 4888 y(1.)41 b(Obtaining)d(\015at)g(netCDF3)i(\014les)e
 (for)f(use)h(with)g(to)s(ols)h(that)f(do)g(not)h(w)m(ork)f(with)g
-(netCDF4)h(\014les,)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.4)j(User)d(Guide)150 299 y(2.)41 b(Splitting)36
-b(apart)g(hierarc)m(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 408 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
-576 y Fy(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(/)275 743 y FD(The)39
-b Fy(-3)f FD(switc)m(h)855 710 y Ft(14)966 743 y FD(sp)s(eci\014es)h
+(netCDF4)h(\014les,)150 4998 y(2.)i(Splitting)36 b(apart)g(hierarc)m
+(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
+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(14)966 299 y FD(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 853 y FD(option)k(\015attens)g(all)h(extracted)
+(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 962 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(\).)275
-1130 y(Let)36 b(us)f(sho)m(w)h(ho)m(w)g(to)g(completely)i(disaggregate)
-g(\(or,)g(more)e(memorably\))h Fo(dismemb)-5 b(er)47
-b FD(a)36 b(hier-)150 1239 y(arc)m(hical)43 b(dataset.)76
-b(F)-8 b(or)42 b(no)m(w)g(w)m(e)g(tak)m(e)h(this)e(to)i(mean:)63
-b(store)42 b(eac)m(h)h(group)e(as)h(a)f(standalone)i(\015at)150
-1349 y(dataset)c(in)e(netCDF3)i(format.)63 b(This)37
-b(can)h(b)s(e)f(accomplished)i(b)m(y)e(lo)s(oping)h(the)g(previous)f
-(example)150 1459 y(o)m(v)m(er)h(all)g(groups.)59 b(This)36
-b(script)h Fy(ncdismember)d FD(dismem)m(b)s(ers)h(the)i(input)f(\014le)
-h Fz(\015)p 2992 1459 28 4 v 40 w(in)f FD(sp)s(eci\014ed)g(in)h(the)150
-1568 y(\014rst)26 b(argumen)m(t)i(and)f(places)h(the)f(resulting)g
-(\014les)g(in)g(the)g(directory)h Fz(drc)p 2653 1568
-V 40 w(out)h FD(sp)s(eci\014ed)d(b)m(y)i(the)f(second)150
-1678 y(argumen)m(t:)390 1845 y Fy(cat)47 b(>)g(~/ncdismember)e(<<)i
-('EOF')390 1955 y(#)g(Purpose:)f(Dismember)f(netCDF4/HDF5)g
-(hierarchical)f(files.)i(CF-check)g(them.)390 2064 y(#)h(Place)g(each)f
-(input)h(file)f(group)h(in)g(separate)f(netCDF3)f(output)h(file)390
-2174 y(#)h(Described)f(in)h(NCO)g(User)f(Guide)h(at)g
-(http://nco.sf.net/nco.ht)o(ml#d)o(isme)o(mbe)o(r)390
-2284 y(#)g(Requirements:)e(NCO)i(4.3.x+,)e(UNIX)i(shell)f(utilities)g
-(awk,)g(grep,)h(sed)390 2393 y(#)g(Optional:)f(CFchecker)f(command)h
+(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
+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
+(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
+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
+(netCDF3)f(output)h(file)390 1786 y(#)h(Described)f(in)h(NCO)g(User)f
+(Guide)h(at)g(http://nco.sf.net/nco.ht)o(ml#d)o(isme)o(mbe)o(r)390
+1895 y(#)g(Requirements:)e(NCO)i(4.3.x+,)e(UNIX)i(shell)f(utilities)g
+(awk,)g(grep,)h(sed)390 2005 y(#)g(Optional:)f(CFchecker)f(command)h
 (https://bitbucket.org/md)o(e_/)o(cfch)o(ecke)o(r)390
-2612 y(#)h(Usage:)390 2722 y(#)g(ncdismember)e(<fl_in>)h(<drc_out>)f
-([flg_cf])h([cf_vrs])f([opt])390 2832 y(#)i(where)g(fl_in)f(is)h(input)
+2224 y(#)h(Usage:)390 2334 y(#)g(ncdismember)e(<fl_in>)h(<drc_out>)f
+([flg_cf])h([cf_vrs])f([opt])390 2443 y(#)i(where)g(fl_in)f(is)h(input)
 g(file/URL)e(to)i(dismember,)e(drc_out)h(is)h(output)g(directory,)390
-2941 y(#)g(CF-compliance)e(check)h(is)h(performed)e(when)i(optional)f
-(third)g(argument)g(is)h('cf',)390 3051 y(#)g(Optional)f(fourth)g
+2553 y(#)g(CF-compliance)e(check)h(is)h(performed)e(when)i(optional)f
+(third)g(argument)g(is)h('cf',)390 2662 y(#)g(Optional)f(fourth)g
 (argument)g(cf_vrs)g(is)h(CF)g(version)f(to)h(check)390
-3160 y(#)g(Optional)f(fifth)g(argument)g(opt)h(passes)f(straight)f
-(through)h(to)h(ncks)390 3270 y(#)g(chmod)g(a+x)g(~/sh/ncdismember)390
-3379 y(#)g(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)390
-3489 y(#)k(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)390
-3599 y(#)k(ncdismember)e(http://dust.ess.uci.edu/n)o(co/m)o(dl_)o(1.nc)
-c(/data/zender/nco/tmp)390 3708 y(#)47 b(ncdismember)e
+2772 y(#)g(Optional)f(fifth)g(argument)g(opt)h(passes)f(straight)f
+(through)h(to)h(ncks)390 2881 y(#)g(chmod)g(a+x)g(~/sh/ncdismember)390
+2991 y(#)g(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)390
+3101 y(#)k(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)390
+3210 y(#)k(ncdismember)e(http://dust.ess.uci.edu/n)o(co/m)o(dl_)o(1.nc)
+c(/data/zender/nco/tmp)390 3320 y(#)47 b(ncdismember)e
 (http://thredds-test.ucar.)o(edu/)o(thr)o(edds)o(/dod)o(sC/)o(test)o
-(dods)o(/fo)o(o.nc)c(/data/zender/nco/tmp)390 3818 y(#)47
+(dods)o(/fo)o(o.nc)c(/data/zender/nco/tmp)390 3429 y(#)47
 b(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)f(cf)390
-3927 y(#)47 b(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)
-f(cf)47 b(1.3)390 4037 y(#)g(ncdismember)e(~/nco/data/mdl_1.nc)e
+3539 y(#)47 b(ncdismember)e(~/nco/data/mdl_1.nc)e(/data/zender/nco/tmp)
+f(cf)47 b(1.3)390 3649 y(#)g(ncdismember)e(~/nco/data/mdl_1.nc)e
 (/data/zender/nco/tmp)f(cf)47 b(1.5)g(--fix_rec_dmn=all)390
-4256 y(#)g(Command)f(line)h(argument)e(defaults)390 4366
+3868 y(#)g(Command)f(line)h(argument)e(defaults)390 3977
 y(fl_in="${HOME}/nco/data/)o(mdl_)o(1.nc)o(")d(#)47 b([sng])g(Input)f
-(file)h(to)g(dismember/check)390 4475 y(drc_out="${DATA}/nco/tmp)o(")42
-b(#)47 b([sng])g(Output)f(directory)390 4585 y(flg_cf='0')f(#)i([flg])g
-(Perform)f(CF-compliance)e(check)390 4695 y(cf_vrs='1.5')g(#)k([sng])e
+(file)h(to)g(dismember/check)390 4087 y(drc_out="${DATA}/nco/tmp)o(")42
+b(#)47 b([sng])g(Output)f(directory)390 4197 y(flg_cf='0')f(#)i([flg])g
+(Perform)f(CF-compliance)e(check)390 4306 y(cf_vrs='1.5')g(#)k([sng])e
 (Compliance-check)e(this)i(CF)h(version)f(\(e.g.,)g('1.5'\))390
-4804 y(opt='')g(#)i([flg])e(Additional)f(ncks)i(options)e(\(e.g.,)h
-('--fix_rec_dmn=all'\))390 4914 y(#)h(Use)g(single)f(quotes)h(to)g
-(pass)f(multiple)g(arguments)f(to)i(opt=${5})390 5023
+4416 y(opt='')g(#)i([flg])e(Additional)f(ncks)i(options)e(\(e.g.,)h
+('--fix_rec_dmn=all'\))390 4525 y(#)h(Use)g(single)f(quotes)h(to)g
+(pass)f(multiple)g(arguments)f(to)i(opt=${5})390 4635
 y(#)g(Otherwise)f(arguments)f(would)h(be)i(seen)e(as)h(${5},)g(${6},)f
-(${7})h(...)p 150 5154 1200 4 v 166 5221 a Ft(14)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 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)g(remo)n(v)n(e)f(in)h(the)f(future.)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)390 408 y Fy(#)47
-b(Command)f(line)h(argument)e(option)i(parsing)390 518
-y(if)g([)h(-n)f("${1}")f(];)h(then)g(fl_in=${1};)d(fi)390
-628 y(if)j([)h(-n)f("${2}")f(];)h(then)g(drc_out=${2};)d(fi)390
-737 y(if)j([)h(-n)f("${3}")f(];)h(then)g(flg_cf=${3};)d(fi)390
-847 y(if)j([)h(-n)f("${4}")f(];)h(then)g(cf_vrs=${4};)d(fi)390
-956 y(if)j([)h(-n)f("${5}")f(];)h(then)g(opt=${5};)e(fi)390
-1176 y(#)i(Prepare)f(output)g(directory)390 1285 y(echo)h("NCO)f
-(dismembering)f(file)h(${fl_in}")390 1395 y(fl_stb=$\(basename)d
-(${fl_in}\))390 1504 y(drc_out=${drc_out}/${fl_)o(stb})390
-1614 y(mkdir)j(-p)i(${drc_out})390 1724 y(cd)f(${drc_out})390
-1833 y(#)g(Obtain)g(group)f(list)390 1943 y(grp_lst=`ncks)e(--cdl)j(-m)
-g(${fl_in})e(|)j(grep)e('//)h(group')f(|)i(awk)f('{$1=$2=$3="";sub\(/^)
-90 b(*/,"",$0\);print}'`)390 2052 y(IFS=$'\\n')45 b(#)j(Change)e
-(Internal-Field-Separator)41 b(from)47 b(<Space><Tab><Newline>)42
-b(to)47 b(<Newline>)390 2162 y(for)g(grp_in)f(in)h(${grp_lst})e(;)j(do)
-581 2271 y(#)f(Replace)f(slashes)g(by)h(dots)g(for)g(output)f(group)g
-(filenames)581 2381 y(grp_out=`echo)e(${grp_in})h(|)j(sed)f('s/\\///')e
-(|)j(sed)f('s/\\//./g'`)581 2491 y(if)g([)h("${grp_out}")c(=)j('')h(];)
-f(then)f(grp_out='root')e(;)k(fi)581 2600 y(#)f(Tell)g(older)f
-(NCO/netCDF)f(if)j(HDF4)e(with)h(--hdf4)f(switch)g(\(signified)f(by)i
-(.hdf/.HDF)e(suffix\))581 2710 y(hdf4=`echo)g(${fl_in})g(|)j(awk)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(14)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
+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)
+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.5)j(User)d(Guide)390 299 y Fy(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
+847 y(echo)h("NCO)f(dismembering)f(file)h(${fl_in}")390
+956 y(fl_stb=$\(basename)d(${fl_in}\))390 1066 y
+(drc_out=${drc_out}/${fl_)o(stb})390 1176 y(mkdir)j(-p)i(${drc_out})390
+1285 y(cd)f(${drc_out})390 1395 y(#)g(Obtain)g(group)f(list)390
+1504 y(grp_lst=`ncks)e(--cdl)j(-m)g(${fl_in})e(|)j(grep)e('//)h(group')
+f(|)i(awk)f('{$1=$2=$3="";sub\(/^)90 b(*/,"",$0\);print}'`)390
+1614 y(IFS=$'\\n')45 b(#)j(Change)e(Internal-Field-Separator)41
+b(from)47 b(<Space><Tab><Newline>)42 b(to)47 b(<Newline>)390
+1724 y(for)g(grp_in)f(in)h(${grp_lst})e(;)j(do)581 1833
+y(#)f(Replace)f(slashes)g(by)h(dots)g(for)g(output)f(group)g(filenames)
+581 1943 y(grp_out=`echo)e(${grp_in})h(|)j(sed)f('s/\\///')e(|)j(sed)f
+('s/\\//./g'`)581 2052 y(if)g([)h("${grp_out}")c(=)j('')h(];)f(then)f
+(grp_out='root')e(;)k(fi)581 2162 y(#)f(Tell)g(older)f(NCO/netCDF)f(if)
+j(HDF4)e(with)h(--hdf4)f(switch)g(\(signified)f(by)i(.hdf/.HDF)e
+(suffix\))581 2271 y(hdf4=`echo)g(${fl_in})g(|)j(awk)f
 ('{if\(match\(tolower\($1\),")o(.hd)o(f$"\))o(\))42 b(hdf4="--hdf4";)i
-(print)i(hdf4}'`)581 2819 y(#)h(Flatten)f(to)h(netCDF3,)f(anchor,)g(no)
+(print)i(hdf4}'`)581 2381 y(#)h(Flatten)f(to)h(netCDF3,)f(anchor,)g(no)
 h(history,)e(no)j(temporary)d(file,)h(padding,)g(HDF4)g(flag,)h
-(options)581 2929 y(cmd="ncks)e(-O)i(-3)h(-G)f(:)g(-g)g(${grp_in}/)e
+(options)581 2491 y(cmd="ncks)e(-O)i(-3)h(-G)f(:)g(-g)g(${grp_in}/)e
 (-h)j(--no_tmp_fl)c(--hdr_pad=40)h(${hdf4})h(${opt})g(${fl_in})f
-(${drc_out}/${grp_out}.nc")581 3039 y(#)i(Use)g(eval)g(in)g(case)g
+(${drc_out}/${grp_out}.nc")581 2600 y(#)i(Use)g(eval)g(in)g(case)g
 (${opt})f(contains)f(multiple)h(arguments)f(separated)g(by)j
-(whitespace)581 3148 y(eval)f(${cmd})581 3258 y(if)g([)h(${flg_cf})d(=)
-i('cf')g(];)g(then)724 3367 y(#)h(cfchecker)d(needs)h(Conventions)f(<=)
-i(1.5)724 3477 y(ncatted)f(-h)h(-a)g(Conventions,global,o,c,"C)o(F-${)o
-(cf_v)o(rs})o(")42 b(${drc_out}/${grp_out}.nc)581 3587
-y(else)47 b(#)g(!flg_cf)724 3696 y(echo)g(${drc_out}/${grp_out}.n)o(c)
-581 3806 y(fi)g(#)h(!flg_cf)390 3915 y(done)390 4025
-y(if)f([)h(${flg_cf})d(=)i('cf')g(];)g(then)581 4134
+(whitespace)581 2710 y(eval)f(${cmd})581 2819 y(if)g([)h(${flg_cf})d(=)
+i('cf')g(];)g(then)724 2929 y(#)h(cfchecker)d(needs)h(Conventions)f(<=)
+i(1.5)724 3039 y(no_bck_sls=`echo)c(${drc_out}/${grp_out})f(|)48
+b(sed)f('s/\\\\\\)f(/)h(/g'`)724 3148 y(ncatted)f(-h)h(-a)g
+(Conventions,global,o,c,CF)o(-${c)o(f_vr)o(s})41 b(${no_bck_sls}.nc)581
+3258 y(else)47 b(#)g(!flg_cf)724 3367 y(echo)g(${drc_out}/${grp_out}.n)
+o(c)581 3477 y(fi)g(#)h(!flg_cf)390 3587 y(done)390 3696
+y(if)f([)h(${flg_cf})d(=)i('cf')g(];)g(then)581 3806
 y(echo)g("CFchecker)e(reports)g(CF-compliance)g(of)i(each)f(group)h(in)
-g(flat)g(netCDF3)e(format")581 4244 y(cfchecker)g(-c)i(${cf_vrs})f
-(*.nc)390 4354 y(fi)h(#)h(!flg_cf)390 4463 y(EOF)390
-4573 y(chmod)e(755)h(~/ncdismember)d(#)k(Make)f(command)e(executable)
-390 4682 y(/bin/mv)h(-f)h(~/ncdismember)d(~/sh)j(#)g(Store)g(in)g
+g(flat)g(netCDF3)e(format")581 3915 y(cfchecker)g(-c)i(${cf_vrs})f
+(*.nc)390 4025 y(fi)h(#)h(!flg_cf)390 4134 y(EOF)390
+4244 y(chmod)e(755)h(~/ncdismember)d(#)k(Make)f(command)e(executable)
+390 4354 y(/bin/mv)h(-f)h(~/ncdismember)d(~/sh)j(#)g(Store)g(in)g
 (location)e(on)j($PATH,)e(e.g.,)g(/usr/local/bin)390
-4902 y(zender at roulee:~$)d(ncdismember)i(~/nco/data/mdl_1.nc)e
-(${DATA}/nco/tmp)390 5011 y(NCO)k(dismembering)d(file)j
-(/home/zender/nco/data/md)o(l_1.)o(nc)390 5121 y
+4573 y(zender at roulee:~$)d(ncdismember)i(~/nco/data/mdl_1.nc)e
+(${DATA}/nco/tmp)390 4682 y(NCO)k(dismembering)d(file)j
+(/home/zender/nco/data/md)o(l_1.)o(nc)390 4792 y
 (/data/zender/nco/tmp/mdl)o(_1.n)o(c/ce)o(sm.)o(cesm)o(_01.)o(nc)390
-5230 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ce)o(sm.)o(cesm)o(_02.)o(nc)
-390 5340 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ce)o(sm.)o(nc)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.4)j(User)d(Guide)390 299 y Fy(/data/zender/nco/tmp/mdl)o(_1.n)
-o(c/ec)o(mwf)o(.ecm)o(wf_0)o(1.n)o(c)390 408 y
-(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ec)o(mwf)o(.ecm)o(wf_0)o(2.n)o(c)
-390 518 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ec)o(mwf)o(.nc)390
-628 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ro)o(ot.)o(nc)275
-788 y FD(A)20 b(\(p)s(oten)m(tially)j(more)d(p)s(ortable\))h(binary)f
+4902 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ce)o(sm.)o(cesm)o(_02.)o(nc)
+390 5011 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ce)o(sm.)o(nc)390
+5121 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ec)o(mwf)o(.ecm)o(wf_0)o
+(1.n)o(c)390 5230 y(/data/zender/nco/tmp/mdl)o(_1.n)o(c/ec)o(mwf)o
+(.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
+(/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
 (executable)i(could)f(b)s(e)f(written)g(to)i(dismem)m(b)s(er)d(all)j
-(groups)150 898 y(with)27 b(a)h(single)f(in)m(v)m(o)s(cation,)k(y)m(et)
+(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 1008 y(this)h(simple)h(script)f(on)h(all)g
+(ossible)g(no)m(w)g(with)150 682 y(this)h(simple)h(script)f(on)h(all)g
 (platforms)g(with)f(UNIXy)h(utilities.)41 b(Note)30 b(that)f(all)g
-(dimensions)f(inherited)150 1117 y(b)m(y)d(groups)f(in)g(the)i(input)d
+(dimensions)f(inherited)150 791 y(b)m(y)d(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 b(Moreo)m(v)m(er,)150
-1227 y(eac)m(h)c(output)f(\014le)f(preserv)m(es)h(the)g(group)g
+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 1336 y(metadata)45 b(from)e(the)g(input)f(\014le.)80
+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 1446 y(adv)-5 b(anced)26 b(netCDF4)i(features)f(b)s
+(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
-1555 y(netCDF3)33 b(classic)h(format.)45 b(Ho)m(w)m(ev)m(er,)35
+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
-(adv)-5 b(ance)150 1665 y(and)23 b(w)m(orks)i(around)e(them.)38
+(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
-(netCDF4-only)g(atomic-t)m(yp)s(es)g(\(suc)m(h)150 1775
+(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 1884 y(SHORT)p FD(\))29 b(when)h(the)g(output)g
-(format)h(is)f(netCDF3.)275 2045 y(One)44 b(application)j(of)e(dismem)m
-(b)s(ering)g(is)g(to)h(c)m(hec)m(k)h(the)e FC(CF)p FD(-compliance)i(of)
-f(eac)m(h)g(group)f(in)g(a)150 2155 y(\014le.)54 b(When)35
-b(in)m(v)m(ok)m(ed)h(with)f(the)g(optional)h(third)e(argumn)m(t)h(`)p
-Fy(cf)p FD(',)h Fy(ncdismember)c FD(passes)i(eac)m(h)i(\014le)f(it)150
-2264 y(generates)d(to)f(the)f(freely)h(a)m(v)-5 b(ailable)1406
-2231 y Ft(15)1509 2264 y Fy(cfchecker)28 b FD(command.)390
-2425 y Fy(zender at roulee:~$)43 b(ncdismember)i(~/nco/data/mdl_1.nc)e
-(/data/zender/nco/tmp)f(cf)390 2534 y(NCO)47 b(dismembering)d(file)j
-(/home/zender/nco/data/md)o(l_1.)o(nc)390 2644 y(CFchecker)e(reports)h
+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
+(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
+(generates)h(to)150 2133 y(the)f(freely)f(a)m(v)-5 b(ailable)895
+2100 y Ft(15)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
+(/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
-2754 y(WARNING:)g(Using)g(the)h(default)f(\(non-CF\))f(Udunits)h
-(database)390 2863 y(cesm.cesm_01.nc:)390 2973 y(INFO:)g(INIT:)238
-b(running)45 b(CFchecker)h(version)g(1.5.15)390 3082
+2625 y(WARNING:)g(Using)g(the)h(default)f(\(non-CF\))f(Udunits)h
+(database)390 2735 y(cesm.cesm_01.nc:)390 2845 y(INFO:)g(INIT:)238
+b(running)45 b(CFchecker)h(version)g(1.5.15)390 2954
 y(INFO:)g(INIT:)238 b(checking)45 b(compliance)g(with)i(convention)e
-(CF-1.5)390 3192 y(INFO:)h(INIT:)238 b(using)46 b(standard)g(name)g
+(CF-1.5)390 3064 y(INFO:)h(INIT:)238 b(using)46 b(standard)g(name)g
 (table)h(version:)e(25,)i(last)g(modified:)e(2013-07-05T05:40:30Z)390
-3302 y(INFO:)h(INIT:)238 b(using)46 b(area)h(type)f(table)h(version:)e
-(2,)i(date:)g(10)g(July)g(2013)390 3411 y(INFO:)f(2.4:)286
+3173 y(INFO:)h(INIT:)238 b(using)46 b(area)h(type)f(table)h(version:)e
+(2,)i(date:)g(10)g(July)g(2013)390 3283 y(INFO:)f(2.4:)286
 b(no)47 b(axis)f(information)f(found)i(in)g(dimension)e(variables,)g
-(not)i(checking)e(dimension)h(order)390 3521 y(WARNING:)g(3:)238
+(not)i(checking)e(dimension)h(order)390 3392 y(WARNING:)g(3:)238
 b(variable)45 b("tas1")h(contains)g(neither)g(long_name)f(nor)i
-(standard_name)d(attribute)390 3630 y(WARNING:)i(3:)238
+(standard_name)d(attribute)390 3502 y(WARNING:)i(3:)238
 b(variable)45 b("tas2")h(contains)g(neither)g(long_name)f(nor)i
-(standard_name)d(attribute)390 3740 y(INFO:)i(3.1:)286
+(standard_name)d(attribute)390 3612 y(INFO:)i(3.1:)286
 b(variable)45 b("tas1")h(does)h(not)g(contain)f(units)g(attribute)390
-3849 y(INFO:)g(3.1:)286 b(variable)45 b("tas2")h(does)h(not)g(contain)f
-(units)g(attribute)390 3959 y(------------------------)o(----)o(----)o
-(---)o(----)o(----)o(---)o(----)390 4069 y(cesm.cesm_02.nc:)390
-4178 y(...)275 4339 y FD(By)28 b(default)g(the)g FC(CF)h
+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 4449
+m(y)d Fy(cfchecker)p FD(.)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 4558 y(fourth)e(argumen)m(t)i
+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
-4668 y(`)p Fy(1.4)p FD(',)30 b(and)g(`)p Fy(1.5)p FD('.)275
-4828 y(Our)i(dev)m(elopmen)m(t)j(and)f(testing)g(of)g
+4543 y(`)p Fy(1.4)p FD(',)30 b(and)g(`)p Fy(1.5)p FD('.)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 4938 y(Dataset)k(In)m(terop)s(erabilit)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
 b(/)g(/)t(wiki)g(.)t(ear)o(thda)o(ta)t(.)t(n)o(asa)t(.)s(gov)t(/)150
-5048 y(display)s(/)s(ESDSWG)s(/)s(Dataset+)o(Inte)o(rope)o(rab)o(ilit)o
+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-)p 150 5154 1200 4 v 166 5221 a Ft(15)275 5253 y
-Fs(CFc)n(hec)n(k)n(er)d(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
-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)150 299 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(con)m(v)m(ersion)h
-(to)f(netCDF3)150 408 y(atomic)j(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 518 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(for)h(b)s(oth)f(dismem)
-m(b)s(ering)g(hierarc)m(hi-)150 628 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 737 y FC(CF)p FD(-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 847 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(the)150
-956 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 1121 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(summary)d(of)i(the)f(pro)
-s(cedure)f(necessary)i(to)150 1230 y(c)m(hec)m(k)32 b
-FC(HDF)f FD(\014les)f(for)h FC(CF)p FD(-compliance:)390
-1395 y Fy(cat)47 b(>)g(~/ncdismember.txt)c(<<)48 b('EOF')581
-1504 y(Preparing)d(an)i(RPM-based)f(OS)h(to)g(Test)g(Hierarchical)d
-(Files)i(for)h(CF-Compliance)390 1724 y(By)g(Charlie)f(Zender,)g(UCI)h
-(&)g(NASA)g(Dataset)f(Interoperability)d(Working)j(Group)g(\(DIWG\))390
-1943 y(Installation)e(Summary:)390 2052 y(1.)j(HDF4)g([with)f(netCDF)g
-(support)g(_disabled_])390 2162 y(2.)h(HDF5)390 2271
-y(3.)g(netCDF)f(version)g(4.3.1)g(\(or)h(later\))f([with)h(HDF4)f
-(support)g(_enabled_])390 2381 y(4.)h(NCO)g(version)f(4.4.0)g(\(or)h
-(later\))390 2491 y(5.)g(numpy)390 2600 y(6.)g(netcdf4-python)390
-2710 y(7.)g(python-lxml)390 2819 y(8.)g(CFunits-python)390
-2929 y(9.)g(CFChecker)390 3039 y(10.)g(ncdismember)390
-3258 y(All)g(10)g(packages)f(can)h(use)f(default)g(installs)g(_except_)
-f(HDF4)i(and)g(netCDF.)390 3367 y(Following)e(instructions)g(for)i
-(Fedora)f(Core)g(20)i(\(FC20\),)d(an)j(RPM-based)d(Linux)h(OS)390
-3477 y(Feedback)g(and)g(changes)g(for)h(other)g(Linux-based)d(OS's)j
-(welcome)f(to)h(zender)f(at)h(uci.edu)390 3587 y(${H4DIR},)e(${H5DIR},)
-h(${NETCDFDIR},)e(${NCODIR},)h(may)i(all)g(be)g(different)390
-3696 y(For)g(simplicity)e(CZ)i(sets)g(them)f(all)h(to)g(/usr/local)390
-3915 y(#)g(1.)h(HDF4.)e(Build)g(in)i(non-default)c(manner.)i(Turn-off)g
-(its)h(own)f(netCDF)h(support.)390 4025 y(#)g(Per)g
-(http://www.unidata.ucar.ed)o(u/s)o(oftw)o(are/)o(net)o(cdf/)o(docs)o
-(/bu)o(ild_)o(hdf4)o(.ht)o(ml)390 4134 y(#)g(HDF4)g(support)f(not)h
-(necessary)e(though)h(it)h(makes)g(ncdismember)d(more)j(comprehensive)
-390 4244 y(wget)g(-c)g(http://www.hdfgroup.org/)o(ftp)o(/HDF)o(/HDF)o
-(_Cu)o(rren)o(t/sr)o(c/h)o(df-4)o(.2.9)o(.ta)o(r.gz)390
-4354 y(tar)g(xvzf)g(hdf-4.2.9.tar.gz)390 4463 y(cd)g(hdf-4.2.9)390
-4573 y(./configure)e(--enable-shared)e(--disable-netcdf)h
-(--disable-fortran)f(--prefix=${H4DIR})390 4682 y(make)k(&&)g(make)f
-(check)h(&&)g(make)g(install)390 4902 y(#)g(2.)h(HDF5.)e(Build)g
-(normally.)g(RPM)h(may)f(work)h(too.)g(Please)f(let)h(me)g(know)g(if)g
-(so.)390 5011 y(#)g(HDF5)g(is)g(a)h(necessary)d(pre-requisite)f(for)j
-(netCDF4)390 5121 y(wget)g(-c)g(ftp://ftp.unidata.ucar.e)o(du/)o(pub/)o
-(netc)o(df/)o(netc)o(df-4)o(/hd)o(f5-1)o(.8.1)o(1.t)o(ar.g)o(z)390
-5230 y(tar)g(xvzf)g(hdf5-1.8.11.tar.gz)390 5340 y(cd)g(hdf5-1.8.11)p
+(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
+(con)m(v)m(ersion)h(to)f(netCDF3)p 150 5154 1200 4 v
+166 5221 a Ft(15)275 5253 y Fs(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
 eop end
 %%Page: 52 58
 TeXDict begin 52 57 bop 150 -116 a FD(52)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(./configure)45
-b(--enable-shared)e(--prefix=${H5DIR})390 408 y(make)k(&&)g(make)f
-(check)h(&&)g(make)g(install)390 628 y(#)g(3.)h(netCDF)e(version)g
-(4.3.1.)g(Build)g(in)h(non-default)e(manner)h(with)h(HDF4.)f(No)h(RPM.)
-390 737 y(#)g(Per)g(http://www.unidata.ucar.ed)o(u/s)o(oftw)o(are/)o
-(net)o(cdf/)o(docs)o(/bu)o(ild_)o(hdf4)o(.ht)o(ml)390
-847 y(#)g(Earlier)f(versions)g(of)h(netCDF)f(may)h(fail)g(checking)e
-(some)i(HDF4)f(files)390 956 y(wget)h(-c)g(ftp://ftp.unidata.ucar.e)o
-(du/)o(pub/)o(netc)o(df/)o(netc)o(df-4)o(.3.)o(1.ta)o(r.gz)390
-1066 y(tar)g(xvzf)g(netcdf-4.3.1.tar.gz)390 1176 y(cd)g(netcdf-4.3.1)
-390 1285 y(CPPFLAGS="-I${H5DIR}/inc)o(lude)41 b(-I${H4DIR}/include")i
-(\\)390 1395 y(LDFLAGS="-L${H5DIR}/lib)e(-L${H4DIR}/lib")j(\\)390
-1504 y(./configure)h(--enable-hdf4)f(--enable-hdf4-file-tests)390
-1614 y(make)j(&&)g(make)f(check)h(&&)g(make)g(installas)390
-1833 y(#)g(4.)h(NCO)f(version)e(4.4.4.)h(No)i(RPM)f(for)f(this)h
-(version.)f(Must)g(install)g(by)h(hand.)390 1943 y(#)g(Earlier)f
-(versions)g(of)h(NCO)g(are)g(relatively)e(useless)h(for)h(ncdismember)
-390 2052 y(cd)g(${DATA}/tmp)390 2162 y(wget)g(http://nco.sourceforge.)o
-(net/)o(src)o(/nco)o(-4.4)o(.4.)o(tar.)o(gz)42 b(.)390
-2271 y(tar)47 b(xvzf)g(nco-4.4.4.tar.gz)390 2381 y(cd)g(nco-4.4.4)390
-2491 y(./configure)e(--prefix=${NCODIR})390 2600 y(make)i(&&)g(make)f
-(install)390 2819 y(#)h(5.)h(numpy)390 2929 y(sudo)f(yum)g(install)e
-(numpy)i(-y)390 3148 y(#)g(6.)h(netcdf4-python)390 3258
-y(sudo)f(yum)g(install)e(netcdf4-python)f(-y)390 3477
-y(#)j(7.)h(python-lxml)390 3587 y(sudo)f(yum)g(install)e(python-lxml)g
-(-y)390 3806 y(#)i(8.)h(CFunits-python.)43 b(No)k(RPM)g(available.)e
-(Must)i(install)f(by)h(hand.)390 3915 y(#)g(http://code.google.com/p/c)
-o(funi)o(ts-)o(pyth)o(on/)390 4025 y(cd)g(${DATA}/tmp)390
-4134 y(wget)g(http://cfunits-python.g)o(oogl)o(eco)o(de.c)o(om/f)o(ile)
-o(s/cf)o(unit)o(s-0)o(.9.6)o(.tar)o(.gz)41 b(.)390 4244
-y(cd)47 b(cfunits-0.9.6)390 4354 y(sudo)g(python)f(setup.py)f(install)
-390 4573 y(#)i(9.)h(CFChecker.)d(No)i(RPM)g(available.)e(Must)h
-(install)g(by)h(hand.)390 4682 y(#)g(https://bitbucket.org/mde_)o(/cfc)
-o(hec)o(ker)390 4792 y(cd)g(${DATA}/tmp)390 4902 y(wget)g
-(https://bitbucket.org/m)o(de_/)o(cfc)o(heck)o(er/d)o(own)o(load)o
-(s/CF)o(che)o(cker)o(-1.5)o(.15)o(.tar)o(.bz2)41 b(.)390
-5011 y(tar)47 b(xvjf)g(CFchecker-1.5.15.tar.bz)o(2)390
-5121 y(cd)g(CFchecker)390 5230 y(sudo)g(python)f(setup.py)f(install)p
+b FD(4.4.5)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
+(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
+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
+(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
+(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
+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
+(Group)g(\(DIWG\))390 1833 y(Installation)e(Summary:)390
+1943 y(1.)j(HDF4)g([with)f(internal)g(netCDF)g(support)g(_disabled_])
+390 2052 y(2.)h(HDF5)390 2162 y(3.)g(netCDF)f([with)h(external)e(HDF4)i
+(support)f(_enabled_])390 2271 y(4.)h(NCO)390 2381 y(5.)g(numpy)390
+2491 y(6.)g(netcdf4-python)390 2600 y(7.)g(python-lxml)390
+2710 y(8.)g(CFunits-python)390 2819 y(9.)g(CFChecker)390
+2929 y(10.)g(ncdismember)390 3148 y(All)g(10)g(packages)f(can)h(use)f
+(default)g(installs)g(_except_)f(HDF4)i(and)g(netCDF.)390
+3258 y(Following)e(instructions)g(for)i(Fedora)f(Core)g(20)i(\(FC20\),)
+d(an)j(RPM-based)d(Linux)h(OS)390 3367 y(Feedback)g(and)g(changes)g
+(for)h(other)g(Linux-based)d(OS's)j(welcome)f(to)h(zender)f(at)h
+(uci.edu)390 3477 y(${H4DIR},)e(${H5DIR},)h(${NETCDFDIR},)e(${NCODIR},)
+h(may)i(all)g(be)g(different)390 3587 y(For)g(simplicity)e(CZ)i(sets)g
+(them)f(all)h(to)g(/usr/local)390 3806 y(#)g(1.)h(HDF4.)e(Build)g(in)i
+(non-default)c(manner.)i(Turn-off)g(its)h(own)f(netCDF)h(support.)390
+3915 y(#)g(Per)g(http://www.unidata.ucar.ed)o(u/s)o(oftw)o(are/)o(net)o
+(cdf/)o(docs)o(/bu)o(ild_)o(hdf4)o(.ht)o(ml)390 4025
+y(#)g(HDF4)g(support)f(not)h(necessary)e(though)h(it)h(makes)g
+(ncdismember)d(more)j(comprehensive)390 4134 y(wget)g(-c)g
+(http://www.hdfgroup.org/)o(ftp)o(/HDF)o(/HDF)o(_Cu)o(rren)o(t/sr)o
+(c/h)o(df-4)o(.2.9)o(.ta)o(r.gz)390 4244 y(tar)g(xvzf)g
+(hdf-4.2.9.tar.gz)390 4354 y(cd)g(hdf-4.2.9)390 4463
+y(./configure)e(--enable-shared)e(--disable-netcdf)h(--disable-fortran)
+f(--prefix=${H4DIR})390 4573 y(make)k(&&)g(make)f(check)h(&&)g(make)g
+(install)390 4792 y(#)g(2.)h(HDF5.)e(Build)g(normally.)g(RPM)h(may)f
+(work)h(too.)g(Please)f(let)h(me)g(know)g(if)g(so.)390
+4902 y(#)g(HDF5)g(is)g(a)h(necessary)d(pre-requisite)f(for)j(netCDF4)
+390 5011 y(wget)g(-c)g(ftp://ftp.unidata.ucar.e)o(du/)o(pub/)o(netc)o
+(df/)o(netc)o(df-4)o(/hd)o(f5-1)o(.8.1)o(1.t)o(ar.g)o(z)390
+5121 y(tar)g(xvzf)g(hdf5-1.8.11.tar.gz)390 5230 y(cd)g(hdf5-1.8.11)390
+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(#)47
-b(10.)g(ncdismember.)e(Copy)h(script)h(from)f
+b(NCO)30 b(F)-8 b(eatures)2475 b(53)390 299 y Fy(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
+(oftw)o(are/)o(net)o(cdf/)o(docs)o(/bu)o(ild_)o(hdf4)o(.ht)o(ml)390
+737 y(#)g(Earlier)f(versions)g(of)h(netCDF)f(may)h(fail)g(checking)e
+(some)i(HDF4)f(files)390 847 y(wget)h(-c)g(ftp://ftp.unidata.ucar.e)o
+(du/)o(pub/)o(netc)o(df/)o(netc)o(df-4)o(.3.)o(2.ta)o(r.gz)390
+956 y(tar)g(xvzf)g(netcdf-4.3.2.tar.gz)390 1066 y(cd)g(netcdf-4.3.2)390
+1176 y(CPPFLAGS="-I${H5DIR}/inc)o(lude)41 b(-I${H4DIR}/include")i(\\)
+390 1285 y(LDFLAGS="-L${H5DIR}/lib)e(-L${H4DIR}/lib")j(\\)390
+1395 y(./configure)h(--enable-hdf4)f(--enable-hdf4-file-tests)390
+1504 y(make)j(&&)g(make)f(check)h(&&)g(make)g(install)390
+1724 y(#)g(4.)h(NCO)f(version)e(4.4.0)i(or)g(later.)f(Some)h(RPMs)f
+(available.)f(Or)i(install)f(by)h(hand.)390 1833 y(#)g(Later)g
+(versions)e(of)j(NCO)e(have)h(much)g(better)f(support)g(for)h
+(ncdismember)390 1943 y(wget)g(http://nco.sourceforge.)o(net/)o(src)o
+(/nco)o(-4.4)o(.4.)o(tar.)o(gz)42 b(.)390 2052 y(tar)47
+b(xvzf)g(nco-4.4.4.tar.gz)390 2162 y(cd)g(nco-4.4.4)390
+2271 y(./configure)e(--prefix=${NCODIR})390 2381 y(make)i(&&)g(make)f
+(install)390 2600 y(#)h(5.)h(numpy)390 2710 y(sudo)f(yum)g(install)e
+(numpy)i(-y)390 2929 y(#)g(6.)h(netcdf4-python)390 3039
+y(sudo)f(yum)g(install)e(netcdf4-python)f(-y)390 3258
+y(#)j(7.)h(python-lxml)390 3367 y(sudo)f(yum)g(install)e(python-lxml)g
+(-y)390 3587 y(#)i(8.)h(CFunits-python.)43 b(No)k(RPM)g(available.)e
+(Must)i(install)f(by)h(hand.)390 3696 y(#)g(http://code.google.com/p/c)
+o(funi)o(ts-)o(pyth)o(on/)390 3806 y(wget)g(http://cfunits-python.g)o
+(oogl)o(eco)o(de.c)o(om/f)o(ile)o(s/cf)o(unit)o(s-0)o(.9.6)o(.tar)o
+(.gz)41 b(.)390 3915 y(tar)47 b(xvzf)g(cfunits-0.9.6.tar.gz)390
+4025 y(cd)g(cfunits-0.9.6)390 4134 y(sudo)g(python)f(setup.py)f
+(install)390 4354 y(#)i(9.)h(CFChecker.)d(No)i(RPM)g(available.)e(Must)
+h(install)g(by)h(hand.)390 4463 y(#)g(https://bitbucket.org/mde_)o
+(/cfc)o(hec)o(ker)390 4573 y(wget)g(https://bitbucket.org/m)o(de_/)o
+(cfc)o(heck)o(er/d)o(own)o(load)o(s/CF)o(che)o(cker)o(-1.5)o(.15)o
+(.tar)o(.bz2)41 b(.)390 4682 y(tar)47 b(xvjf)g(CFchecker-1.5.15.tar.bz)
+o(2)390 4792 y(cd)g(CFchecker)390 4902 y(sudo)g(python)f(setup.py)f
+(install)390 5121 y(#)i(10.)g(ncdismember.)e(Copy)h(script)h(from)f
 (http://nco.sf.net/nco.htm)o(l#nc)o(dis)o(memb)o(er)390
-408 y(#)h(Store)g(dismembered)e(files)h(somewhere,)f(e.g.,)h
-(${DATA}/nco/tmp/hdf)390 518 y(mkdir)g(-p)i(${DATA}/nco/tmp/hdf)390
-628 y(#)f(Many)g(datasets)f(work)g(with)h(a)g(simpler)f(command...)390
-737 y(ncdismember)f(~/nco/data/in.nc)e(${DATA}/nco/tmp/hdf)g(cf)k(1.5)
-390 847 y(ncdismember)e(~/nco/data/mdl_1.nc)d(${DATA}/nco/tmp/hdf)h(cf)
-k(1.5)390 956 y(ncdismember)e(${DATA}/hdf/AMSR_E_L2_R)o(ain_)o(V10_)o
-(200)o(9053)o(1232)o(6_A)o(.hdf)c(\\)963 1066 y(${DATA}/nco/tmp/hdf)h
-(cf)47 b(1.5)390 1176 y(ncdismember)e(${DATA}/hdf/BUV-Nimbus0)o(4_L3)o
+5230 y(#)h(Store)g(dismembered)e(files)h(somewhere,)f(e.g.,)h
+(${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.5)j(User)d(Guide)390 299 y Fy(#)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
+(1.5)390 628 y(ncdismember)e(${DATA}/hdf/AMSR_E_L2_R)o(ain_)o(V10_)o
+(200)o(9053)o(1232)o(6_A)o(.hdf)c(\\)963 737 y(${DATA}/nco/tmp/hdf)h
+(cf)47 b(1.5)390 847 y(ncdismember)e(${DATA}/hdf/BUV-Nimbus0)o(4_L3)o
 (zm_v)o(01-)o(00-2)o(012m)o(020)o(3t14)o(4121)o(.h5)c(\\)963
-1285 y(${DATA}/nco/tmp/hdf)h(cf)47 b(1.5)390 1395 y(ncdismember)e
+956 y(${DATA}/nco/tmp/hdf)h(cf)47 b(1.5)390 1066 y(ncdismember)e
 (${DATA}/hdf/HIRDLS-Aura)o(_L3Z)o(AD_v)o(06-)o(00-0)o(0-c0)o(2_2)o
 (005d)o(022-)o(200)o(8d07)o(7.he)o(5)d(${DATA}/nco/tmp/hdf)g(cf)47
-b(1.5)390 1504 y(#)g(Some)g(datasets,)e(typically)h(.h5,)g(require)g
-(the)h(--fix_rec_dmn=all)c(argument)390 1614 y
+b(1.5)390 1176 y(#)g(Some)g(datasets,)e(typically)h(.h5,)g(require)g
+(the)h(--fix_rec_dmn=all)c(argument)390 1285 y
 (ncdismember_${DATA}/hdf/)o(GATM)o(O_np)o(p_d)o(2010)o(0906)o(_t1)o
 (9351)o(91_e)o(193)o(5505)o(_b00)o(012)o(_c20)o(1107)o(071)o(5593)o
 (206)o(5809)o(_noa)o(a_o)o(ps.h)o(5)f(${DATA}/nco/tmp/hdf)g(cf)48
-b(1.5)e(--fix_rec_dmn=all)390 1724 y(ncdismember)f
+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 1833 y(${DATA}/nco/tmp/hdf)h(cf)47 b(1.5)g(--fix_rec_dmn=all)390
-1943 y(EOF)275 2103 y FD(A)24 b FC(PDF)h FD(v)m(ersion)g(of)g(these)g
+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
 (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 2213 y(ncdismember.pdf)p
-FD(\).)150 2449 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 2560 y Fk(\013)p 200
-2560 3554 4 v 3553 w(\010)p 150 3050 4 442 v 178 2696
+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
+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 2806 y FD(Short)h(options:)41 b(`)p
-Fy(-F)p FD(')178 2915 y(Long)31 b(options:)41 b(`)p Fy(--fortran)p
-FD(')p 3803 3050 V 150 3101 a Fk(\012)p 200 3101 3554
-4 v 3553 w(\011)275 3273 y FD(The)30 b(`)p Fy(-F)p FD(')h(switc)m(h)h
+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
 b(ortran)32 b(index)f(con)m(v)m(en)m(tion.)46 b(By)150
-3382 y(default,)34 b FC(NCO)e FD(uses)g(C-st)m(yle)i(\(0-based\))g
+3053 y(default,)34 b FC(NCO)e FD(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 3492 y(than)d(1)q(\),)d(and)e(dimensions)f(are)i
+(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
-(\(outer-most\))g(v)-5 b(ary-)150 3601 y(ing.)70 b(In)39
+(\(outer-most\))g(v)-5 b(ary-)150 3273 y(ing.)70 b(In)39
 b(F)-8 b(ortran,)44 b(indices)c(coun)m(t)g(from)30 b(1)41
 b(\(rather)f(than)30 b(0)q(\),)43 b(and)c(dimensions)g(are)i(ordered)e
-(from)150 3711 y(fastest)i(\(inner-most\))f(to)h(slo)m(w)m(est)h
+(from)150 3382 y(fastest)i(\(inner-most\))f(to)h(slo)m(w)m(est)h
 (\(outer-most\))f(v)-5 b(arying.)69 b(Hence)41 b(C)30
-b(and)39 b(F)-8 b(ortran)41 b(data)f(storage)150 3821
+b(and)39 b(F)-8 b(ortran)41 b(data)f(storage)150 3492
 y(con)m(v)m(en)m(tions)i(represen)m(t)f(mathematical)i(transp)s(oses)c
 (of)i(eac)m(hother.)72 b(Note)42 b(that)f(record)f(v)-5
-b(ariables)150 3930 y(con)m(tain)29 b(the)f(record)g(dimension)f(as)h
+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 4040 y(netCDF)c(P)m(erm)m(ute)
-g(Dimensions)f(Quic)m(kly],)i(page)f(186)h(for)d(tec)m(hniques)i(to)g
-(re-order)f(\(including)g(trans-)150 4149 y(p)s(ose\))30
+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(189)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
-4310 y(Consider)f(a)h(\014le)g Fy(85.nc)f FD(con)m(taining)j(12)d(mon)m
+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 4420 y(follo)m(wing)29 b(h)m(yp)s(erslab)d(op)s
+FD(.)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 4529
-y(data:)390 4690 y Fy(ncra)47 b(-d)g(time,5,7)e(85.nc)i(85_JJA.nc)390
-4799 y(ncra)g(-F)g(-d)g(time,6,8)f(85.nc)g(85_JJA.nc)275
-4960 y FD(Prin)m(ting)27 b(v)-5 b(ariable)28 b Fz(three)p
-1175 4960 28 4 v 40 w(dmn)p 1393 4960 V 39 w(v)-5 b(ar)34
+(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
+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
+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
-(indexing)d(con)m(v)m(en)m(tion,)j(then)150 5070 y(with)g(F)-8
+(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 5230 y Fy(\045)47
-b(ncks)g(-v)g(three_dmn_var)d(in.nc)390 5340 y(lat[0]=-90)h
-(lev[0]=1000)g(lon[0]=-180)f(three_dmn_var[0]=0)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.4)j(User)d(Guide)390 299 y Fy(...)390 408 y(\045)47
-b(ncks)g(-F)g(-v)g(three_dmn_var)e(in.nc)390 518 y(lon\(1\)=0)h
-(lev\(1\)=100)f(lat\(1\)=-90)g(three_dmn_var\(1\)=0)390
-628 y(...)150 874 y FB(3.15)68 b(Hyp)t(erslabs)150 1008
-y Fk(\013)p 200 1008 3554 4 v 3553 w(\010)p 150 1608
-4 552 v 178 1144 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 1254 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 1363
-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 1473 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 1608 V 150 1659 a Fk(\012)p 200
-1659 3554 4 v 3553 w(\011)275 1834 y FD(A)h Fz(h)m(yp)s(erslab)d
-FD(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 1944 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(with)e(the)h(same)h
-(argumen)m(ts)f(to)150 2053 y(the)34 b(`)p Fy(--dimension)p
-FD(')e(or)i(`)p Fy(--dmn)p FD(')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 2163 y(or)e Fz(stride)5
-b FD(\))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 2272 y(the)g(asso)s(ciated)i
-Fz(min)e FD(and)f Fz(max)41 b FD(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 2382 y Fz(min)28 b FD(or)g Fz(max)34
+(follo)m(wing)g(output)f(formats:)390 4902 y Fy(\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
+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
+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
+(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
+(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
+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
+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
 (presen)m(t)i(to)g(indicate)g(the)f(omission)h(of)150
-2492 y(one)i(of)g(these)h(argumen)m(ts.)42 b(The)31 b(unsp)s(eci\014ed)
+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 2601 y(v)-5 b(alue)35 b(in)f(the)g(unsp)s(eci\014ed)f
+(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 2711 y(sp)s(ecifying)g(only)g
+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
-b(Dimensions)36 b(not)g(men)m(tioned)150 2820 y(are)e(passed)g(with)f
+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 2930
+-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
-3094 y Fy(#)47 b(First)g(and)g(second)f(indices)g(of)h(lon)g(dimension)
-390 3204 y(ncks)g(-F)g(-d)g(lon,1,2)f(in.nc)g(out.nc)390
-3313 y(#)h(Second)g(and)f(third)h(indices)f(of)h(lon)g(dimension)390
-3423 y(ncks)g(-d)g(lon,1,2)f(in.nc)g(out.nc)275 3587
+2765 y Fy(#)47 b(First)g(and)g(second)f(indices)g(of)h(lon)g(dimension)
+390 2875 y(ncks)g(-F)g(-d)g(lon,1,2)f(in.nc)g(out.nc)390
+2984 y(#)h(Second)g(and)f(third)h(indices)f(of)h(lon)g(dimension)390
+3094 y(ncks)g(-d)g(lon,1,2)f(in.nc)g(out.nc)275 3258
 y FD(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 3697 y(the)28 b(v)-5 b(alue,)30
+(t)g(required)f(in)150 3368 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
-(teger)h(notation)g(without)g(a)f(decimal)150 3806 y(p)s(oin)m(t.)38
+(teger)h(notation)g(without)g(a)f(decimal)150 3477 y(p)s(oin)m(t.)38
 b(This)23 b(con)m(v)m(en)m(tion)j(serv)m(es)e(only)g(to)g(di\013eren)m
 (tiate)h(co)s(ordinate)g(v)-5 b(alues)24 b(from)f(dimension)g(indices.)
-150 3916 y(It)f(is)h(indep)s(enden)m(t)e(of)i(the)f(t)m(yp)s(e)h(of)f
+150 3587 y(It)f(is)h(indep)s(enden)m(t)e(of)i(the)f(t)m(yp)s(e)h(of)f
 (an)m(y)h(netCDF)g(co)s(ordinate)g(v)-5 b(ariables.)39
 b(F)-8 b(or)23 b(a)g(giv)m(en)g(dimension,)h(the)150
-4025 y(sp)s(eci\014ed)30 b(limits)i(m)m(ust)e(b)s(oth)g(b)s(e)g(co)s
+3697 y(sp)s(eci\014ed)30 b(limits)i(m)m(ust)e(b)s(oth)g(b)s(e)g(co)s
 (ordinate)i(v)-5 b(alues)31 b(\(with)g(decimal)h(p)s(oin)m(ts\))f(or)g
-(dimension)f(indices)150 4135 y(\(no)h(decimal)g(p)s(oin)m(ts\).)275
-4299 y(If)i(v)-5 b(alues)35 b(of)f(a)h(co)s(ordinate-v)-5
+(dimension)f(indices)150 3806 y(\(no)h(decimal)g(p)s(oin)m(ts\).)275
+3970 y(If)i(v)-5 b(alues)35 b(of)f(a)h(co)s(ordinate-v)-5
 b(ariable)36 b(are)e(used)g(to)h(sp)s(ecify)f(a)g(range)h(or)f
-(cross-section,)j(then)d(the)150 4409 y(co)s(ordinate)25
+(cross-section,)j(then)d(the)150 4080 y(co)s(ordinate)25
 b(v)-5 b(ariable)25 b(m)m(ust)f(b)s(e)f(monotonic)i(\(v)-5
 b(alues)25 b(either)g(increasing)f(or)h(decreasing\).)39
-b(In)24 b(this)g(case,)150 4518 y(command-line)29 b(v)-5
+b(In)24 b(this)g(case,)150 4190 y(command-line)29 b(v)-5
 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
-4628 y(Ranges)37 b(are)g(determined)f(b)m(y)g(seeking)h(the)g(\014rst)f
+4299 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 4737 y([)p Fz(min)p FD(,)p Fz(max)6 b FD(])33
+(range)150 4409 y([)p Fz(min)p FD(,)p Fz(max)6 b FD(])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 4847 y(dinate)c(v)-5 b(alue)26
+b(The)31 b(co)s(or-)150 4518 y(dinate)c(v)-5 b(alue)26
 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 4957 y(and)34 b(m)m(ust)g(lie)i(within)e(the)h(range)g
+(v)-5 b(alue)150 4628 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(,)150 5066 y(m)m(ust)32 b(b)s(e)g(a)h(dimension)f(index,)h(not)g(a)f
+b(,)150 4737 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(55,)h(for)150 5176 y(more)d(information)f(on)g(the)h
-Fz(stride)k FD(option.)390 5340 y Fy(#)47 b(All)g(longitude)f(values)g
-(between)g(1)h(and)g(2)g(degrees)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(ncks)47
-b(-d)g(lon,1.0,2.0)e(in.nc)h(out.nc)390 408 y(#)h(All)g(longitude)f
-(values)g(between)g(1)h(and)g(2)g(degrees)390 518 y(ncks)g(-F)g(-d)g
-(lon,1.0,2.0)e(in.nc)h(out.nc)390 628 y(#)h(Every)g(other)f(longitude)f
-(value)i(between)f(0)h(and)g(90)g(degrees)390 737 y(ncks)g(-F)g(-d)g
-(lon,0.0,90.0,2)d(in.nc)i(out.nc)275 899 y FD(As)e(of)h(v)m(ersion)g
-(4.2.1)i(\(August,)h(2012\),)j FC(NCO)44 b FD(allo)m(ws)i(one)f(to)g
-(extract)i(the)d(last)i Fz(N)55 b FD(elemen)m(ts)150
-1009 y(of)44 b(a)g(h)m(yp)s(erslab.)79 b(Negativ)m(e)47
-b(in)m(tegers)d(as)g Fz(min)f FD(or)h Fz(max)50 b FD(elemen)m(ts)45
-b(of)f(a)g(h)m(yp)s(erslab)e(sp)s(eci\014cation)150 1118
-y(indicate)23 b(o\013sets)f(from)g(the)g(end)f(\(Python)g(also)i(uses)e
-(this)h(con)m(v)m(en)m(tion\).)40 b(Previously)-8 b(,)24
-b(for)e(example,)i(`)p Fy(-d)150 1228 y(time,-2,-1)p
-FD(')c(caused)i(a)g(domain)h(error.)37 b(No)m(w)23 b(it)g(means)f
-(select)i(the)e(second-to-last)j(and)c(p)s(en)m(ultimate)150
-1338 y(timesteps.)41 b(Negativ)m(e)34 b(in)m(tegers)d(w)m(ork)g(for)f
-Fz(min)g FD(and)f Fz(max)37 b FD(indices,)31 b(though)f(not)h(for)f
-Fz(stride)p FD(.)390 1500 y Fy(#)47 b(Last)g(two)g(indices)f(of)h(lon)g
-(dimension)390 1609 y(ncks)g(-F)g(-d)g(lon,1,-2)f(in.nc)g(out.nc)390
-1719 y(#)h(First)g(to)g(penultimate)e(indices)h(of)h(lon)g(dimension)
-390 1828 y(ncks)g(-F)g(-d)g(lon,1,-2)f(in.nc)g(out.nc)390
-1938 y(#)h(Third-to-last)e(to)i(last)f(index)h(of)g(lon)g(dimension)390
-2048 y(ncks)g(-F)g(-d)g(lon,-3,-1)e(in.nc)i(out.nc)390
-2157 y(#)g(Third-to-last)e(to)i(last)f(index)h(of)g(lon)g(dimension)390
-2267 y(ncks)g(-F)g(-d)g(lon,-3,)f(in.nc)g(out.nc)150
-2429 y FD(As)27 b(sho)m(wn,)g(w)m(e)g(recommend)f(using)g(a)h(full)g
+g(page)f(56,)h(for)150 4847 y(more)d(information)f(on)g(the)h
+Fz(stride)k FD(option.)390 5011 y Fy(#)47 b(All)g(longitude)f(values)g
+(between)g(1)h(and)g(2)g(degrees)390 5121 y(ncks)g(-d)g(lon,1.0,2.0)e
+(in.nc)h(out.nc)390 5230 y(#)h(All)g(longitude)f(values)g(between)g(1)h
+(and)g(2)g(degrees)390 5340 y(ncks)g(-F)g(-d)g(lon,1.0,2.0)e(in.nc)h
+(out.nc)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.5)j(User)d(Guide)390 299 y Fy(#)47 b(Every)g(other)f
+(longitude)f(value)i(between)f(0)h(and)g(90)g(degrees)390
+408 y(ncks)g(-F)g(-d)g(lon,0.0,90.0,2)d(in.nc)i(out.nc)275
+603 y FD(As)e(of)h(v)m(ersion)g(4.2.1)i(\(August,)h(2012\),)j
+FC(NCO)44 b FD(allo)m(ws)i(one)f(to)g(extract)i(the)d(last)i
+Fz(N)55 b FD(elemen)m(ts)150 713 y(of)44 b(a)g(h)m(yp)s(erslab.)79
+b(Negativ)m(e)47 b(in)m(tegers)d(as)g Fz(min)f FD(or)h
+Fz(max)50 b FD(elemen)m(ts)45 b(of)f(a)g(h)m(yp)s(erslab)e(sp)s
+(eci\014cation)150 823 y(indicate)23 b(o\013sets)f(from)g(the)g(end)f
+(\(Python)g(also)i(uses)e(this)h(con)m(v)m(en)m(tion\).)40
+b(Previously)-8 b(,)24 b(for)e(example,)i(`)p Fy(-d)150
+932 y(time,-2,-1)p FD(')c(caused)i(a)g(domain)h(error.)37
+b(No)m(w)23 b(it)g(means)f(select)i(the)e(second-to-last)j(and)c(p)s
+(en)m(ultimate)150 1042 y(timesteps.)41 b(Negativ)m(e)34
+b(in)m(tegers)d(w)m(ork)g(for)f Fz(min)g FD(and)f Fz(max)37
+b FD(indices,)31 b(though)f(not)h(for)f Fz(stride)p FD(.)390
+1237 y Fy(#)47 b(Last)g(two)g(indices)f(of)h(lon)g(dimension)390
+1346 y(ncks)g(-F)g(-d)g(lon,1,-2)f(in.nc)g(out.nc)390
+1456 y(#)h(First)g(to)g(penultimate)e(indices)h(of)h(lon)g(dimension)
+390 1565 y(ncks)g(-F)g(-d)g(lon,1,-2)f(in.nc)g(out.nc)390
+1675 y(#)h(Third-to-last)e(to)i(last)f(index)h(of)g(lon)g(dimension)390
+1785 y(ncks)g(-F)g(-d)g(lon,-3,-1)e(in.nc)i(out.nc)390
+1894 y(#)g(Third-to-last)e(to)i(last)f(index)h(of)g(lon)g(dimension)390
+2004 y(ncks)g(-F)g(-d)g(lon,-3,)f(in.nc)g(out.nc)150
+2199 y FD(As)27 b(sho)m(wn,)g(w)m(e)g(recommend)f(using)g(a)h(full)g
 (\015oating)g(p)s(oin)m(t)g(su\016x)f(of)h Fy(.0)f FD(instead)h(of)g
-(simply)f Fy(.)g FD(in)g(order)150 2538 y(to)31 b(mak)m(e)f(ob)m(vious)
+(simply)f Fy(.)g FD(in)g(order)150 2308 y(to)31 b(mak)m(e)f(ob)m(vious)
 h(the)f(selection)h(of)f(h)m(yp)s(erslab)f(elemen)m(ts)i(based)f(on)g
-(co)s(ordinate)g(v)-5 b(alue)30 b(rather)g(than)150 2648
-y(index.)275 2810 y(User-sp)s(eci\014ed)d(co)s(ordinate)i(limits)g(are)
+(co)s(ordinate)g(v)-5 b(alue)30 b(rather)g(than)150 2418
+y(index.)275 2613 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 2920 y(for)k(the)h(indices)f(whic)m(h)g
+b(while)g(searc)m(hing)150 2722 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 3029
+g(co)s(ordinates)h(of)f(t)m(yp)s(e)h Fy(NC_CHAR)150 2832
 y FD(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
-3191 y(The)k(relativ)m(e)j(magnitude)e(of)g Fz(min)f
+3027 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 3301 y Fz(wrapp)s(ed)29 b(co)s(ordinate)36
+g(to)g(exp)s(ect)h(a)150 3137 y Fz(wrapp)s(ed)29 b(co)s(ordinate)36
 b FD(\(see)c(Section)f(3.20)i([W)-8 b(rapp)s(ed)30 b(Co)s(ordinates],)h
-(page)h(62\),)g(suc)m(h)e(as)h(longitude.)150 3411 y(If)e
+(page)h(63\),)g(suc)m(h)e(as)h(longitude.)150 3246 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(b)s(e)f(wrapp)s(ed,)e(and)i
-(a)g(w)m(arning)g(message)i(will)150 3520 y(b)s(e)e(prin)m(ted.)40
+(a)g(w)m(arning)g(message)i(will)150 3356 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 3630 y(all)h(the)g(v)-5
+b Fz(min)o FD(],)31 b(i.e.,)150 3465 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 3739 y(sw)m(app)s(ed.)i
+Fz(min)f FD(and)g Fz(max)37 b FD(w)m(ere)150 3575 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
-3849 y Fy(ncks)p FD(,)41 b(and)d(then)i(examine)g(the)f(output)g(to)h
+3685 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(y)m(ou)h(exp)s
-(ected)150 3958 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(\).)275 4121
+(ected)150 3794 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(\).)275 3989
 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 4230 y(sure)d(y)m(ou)i(alw)m(a)m(ys)h(sp)s(ecify)d(h)m(yp)
+(mak)m(e)150 4099 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 4340 y FD(\(ev)m(en)24
+Fz(min)29 b Fv(<)h Fz(max)150 4208 y FD(\(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
-4449 y(to)33 b(this)f(is)g(when)f(y)m(ou)i(are)f(indeed)g(sp)s
+4318 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 4559 y(to)25 b(understand)e(b)s
+b(distinction)i(is)f(crucial)150 4427 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 4668 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 4831 y(Not)h(sp)s(ecifying)g
+150 4537 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 4732 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
-4940 y(sions.)38 b(This)22 b(option)i(ma)m(y)f(b)s(e)g(sp)s(eci\014ed)f
+4842 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 5050 y(dimension)30 b(requires)g(its)g(o)m(wn)h
+(erslabb)s(ed)150 4951 y(dimension)30 b(requires)g(its)g(o)m(wn)h
 Fy(-d)f FD(option\).)150 5290 y FB(3.16)68 b(Stride)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.4)j(User)d(Guide)150 51 y Fk(\013)p 200 51 3554
-4 v 3553 w(\010)p 150 651 4 552 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(ncks)p FD(,)g
-Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)f Fy(ncrcat)p FD(,)g
-Fy(ncwa)178 297 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 407 y(Long)h(options:)41
+%%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)150 51 y Fk(\013)p
+200 51 3554 4 v 3553 w(\010)p 150 651 4 552 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(ncks)p FD(,)g Fy(ncpdq)p FD(,)h Fy(ncra)p FD(,)f Fy(ncrcat)p
+FD(,)g Fy(ncwa)178 297 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 407 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
 516 y(`)p Fy(--dmn)i Fn(dim)p Fy(,[)p Fn(min)p Fy(][,[)p
@@ -16562,7 +16631,7 @@ b(skips)f(ev)m(ery)h(other)g(elemen)m(t,)j(etc..)39 b
 Fy(ncks)150 1203 y FD(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 1313 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(59\).)42
+(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 1422
 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)
@@ -16604,7 +16673,7 @@ Fy(-d)e(time,1,,2)p FD('.)275 2950 y(F)-8 b(or)23 b(example,)i
 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 3169 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(53\))h(these)f(data)h(are)f
+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 3278 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
@@ -16622,7 +16691,7 @@ 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
 4747 y Fy(ncks)47 b(-d)g(time,2,,12)e(8501_8912.nc)f(8589_03.nc)275
 4908 y FD(See)30 b(Section)h(4.7)h([nc)m(ks)f(netCDF)g(Kitc)m(hen)f
-(Sink],)h(page)g(173,)h(for)e(more)g(information)h(on)f
+(Sink],)h(page)g(176,)h(for)e(more)g(information)h(on)f
 Fy(ncks)p FD(.)275 5069 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
@@ -16630,13 +16699,13 @@ FD(and)h Fy(ncrcat)e FD(mak)m(es)j(it)g(p)s(ossible,)150
 (regular)e(in)m(terv)-5 b(als)31 b(across)g(m)m(ulti-\014le)g(input)f
 (data)h(sets.)390 5340 y Fy(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)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)390 299 y Fy(ncrcat)46
-b(-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 619 y FB(3.17)68 b(Record)46 b(App)t(ending)150
-753 y Fk(\013)p 200 753 3554 4 v 3553 w(\010)p 150 1243
-4 442 v 178 889 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncra)p
+%%Page: 58 64
+TeXDict begin 58 63 bop 150 -116 a FD(58)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(ncrcat)46 b(-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
+619 y FB(3.17)68 b(Record)46 b(App)t(ending)150 753 y
+Fk(\013)p 200 753 3554 4 v 3553 w(\010)p 150 1243 4 442
+v 178 889 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncra)p
 FD(,)30 b Fy(ncrcat)178 999 y FD(Short)g(options:)41
 b(None)178 1108 y(Long)31 b(options:)41 b(`)p Fy(--rec_apn)p
 FD(',)28 b(`)p Fy(--record_append)p FD(')p 3803 1243
@@ -16708,16 +16777,16 @@ Fy(--no_tmp_fl)p FD(')d(switc)m(h)k(\(see)f(Section)h(2.3)f([T)-8
 b(emp)s(orary)150 5151 y(Output)29 b(Files],)j(page)f(15\):)390
 5340 y Fy(ncrcat)46 b(--rec_apn)f(--no_tmp_fl)g(fl_2.nc)h(fl_1.nc)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.4)j(User)d(Guide)275 299 y(This)j(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 408 y(\(i.e.,)h(all)f(of)f
-Fy(fl_2.nc)p FD(\).)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 518 y(trade-o\013s)e(in)m(v)m(olv)m(ed.)150
-764 y FB(3.18)68 b(Sub)t(cycle)150 898 y Fk(\013)p 200
-898 3554 4 v 3553 w(\010)p 150 1498 4 552 v 178 1034
+%%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)275 299 y(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
+408 y(\(i.e.,)h(all)f(of)f Fy(fl_2.nc)p FD(\).)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 518 y(trade-o\013s)e(in)m(v)m(olv)m
+(ed.)150 764 y FB(3.18)68 b(Sub)t(cycle)150 898 y Fk(\013)p
+200 898 3554 4 v 3553 w(\010)p 150 1498 4 552 v 178 1034
 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncra)p FD(,)30 b
 Fy(ncrcat)178 1144 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
@@ -16786,10 +16855,10 @@ b(This)31 b(reduces)g(the)g(task)h(of)g(pro)s(ducing)e(the)i
 Fs(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
-%%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)390 299 y Fy(ncra)47
-b(-O)g(-F)g(-d)g(time,6,,12,3)e(-n)i(150,4,1)f(1850.nc)f(clm_JJA.nc)150
+%%Page: 60 66
+TeXDict begin 60 65 bop 150 -116 a FD(60)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(ncra)47 b(-O)g(-F)g(-d)g
+(time,6,,12,3)e(-n)i(150,4,1)f(1850.nc)f(clm_JJA.nc)150
 460 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(records.)49 b(T)-8 b(o)150 569 y(b)s(etter)31
@@ -16842,7 +16911,7 @@ Fy(--msa_user_order)p FD(')p 3803 3422 V 150 3474 a Fk(\012)p
 b(One)35 b(de\014nes)g(m)m(ultislabs)h(b)m(y)g(c)m(haining)150
 3755 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
-(page)d(54\).)150 3864 y(Supp)s(ort)18 b(for)j(sp)s(ecifying)f(a)h
+(page)d(55\).)150 3864 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 3974 y FD(in)31 b(late)i(2002.)46 b(The)31
@@ -16876,36 +16945,37 @@ FD(')36 b(or)150 5340 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
 b(b)s(ecause)31 b(its)g(elemen)m(ts)h(are)f(irregularly)g(spaced)g(in)f
 (co)s(ordinate)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.4)j(User)d(Guide)150 299 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 408 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 568 y Fy(ncks)47 b(-d)g(lon,10.,20.)e(-d)i(lon,80.,90.)d(in.nc)j
-(out.nc)390 677 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 837 y FD(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 946 y FC(MSA)37 b FD(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 1056 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 1215 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 1375 y Fy(ncks)47 b(-d)g(lon,0,4)f(-d)h
-(lon,2,9,2)e(in.nc)h(out.nc)150 1534 y FD(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 1644 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)m(yp)s(erslab)e(argumen)m(ts)i
-(\(hence)150 1753 y(this)c(is)h(redundan)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 1863 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
+%%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(space)30
+b(\(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 408 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 568 y Fy(ncks)47 b(-d)g(lon,10.,20.)e(-d)i
+(lon,80.,90.)d(in.nc)j(out.nc)390 677 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
+837 y FD(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 946 y FC(MSA)37 b FD(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 1056 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 1215 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 1375
+y Fy(ncks)47 b(-d)g(lon,0,4)f(-d)h(lon,2,9,2)e(in.nc)h(out.nc)150
+1534 y FD(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 1644 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)
+m(yp)s(erslab)e(argumen)m(ts)i(\(hence)150 1753 y(this)c(is)h(redundan)
+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 1863
+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 1973 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(55,)j(for)c(more)150 2082 y(information)31
+([Stride],)h(page)e(56,)j(for)c(more)150 2082 y(information)31
 b(on)f(the)h Fz(stride)k FD(option.)275 2242 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 2351 y(op)s(erations)g(and)e
@@ -16956,20 +17026,20 @@ b(to)d(datasets)h(that)f(follo)m(w)g(the)g([0,360\))i(con)m(v)m(en)m
 (tion.)390 4902 y Fy(\045)47 b(ncks)g(-H)g(-v)g(Lon)g(in.nc)390
 5011 y(Lon[0]=-180)390 5121 y(Lon[1]=-90)390 5230 y(Lon[2]=0)390
 5340 y(Lon[3]=90)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(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
-408 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(to)h(split)g(the)g(input)f(on-disk)h(arra)m(ys)g
-(at)150 518 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 628 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)e(default)g(that)h(data)150 737 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 847 y(stores)42
+%%Page: 62 68
+TeXDict begin 62 67 bop 150 -116 a FD(62)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(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 408 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
+(to)h(split)g(the)g(input)f(on-disk)h(arra)m(ys)g(at)150
+518 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 628 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)
+e(default)g(that)h(data)150 737 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 847 y(stores)42
 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
 956 y(default)29 b(is)g(in)m(tuitiv)m(e)i(and)d(is)h(not)g(imp)s(ortan)
@@ -17012,53 +17082,53 @@ y(Lat[0]=-45)f(Lon[1]=90)g(LatLon[1]=3)390 4792 y(Lat[0]=-45)g
 5121 y(Lat[1]=45)f(Lon[1]=90)h(LatLon[5]=7)390 5230 y(Lat[1]=45)f
 (Lon[2]=180)g(LatLon[6]=4)390 5340 y(Lat[1]=45)g(Lon[3]=270)g
 (LatLon[7]=5)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.4)j(User)d(Guide)150 299 y(There)h(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 408 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 b(\014nal)f(commen)m(ts)h(on)f(applying)
-150 518 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(tly)150 628 y(sp)s(ecifying)e(co)s(ordinate)i(ranges)f
-(that)g(b)s(oth)f(include)g(Green)m(wic)m(h.)40 b(Some)24
-b(users)g(will)h(\014nd)e(using)h(index-)150 737 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 1007 y FB(3.20)68 b(W)-11 b(rapp)t(ed)44
-b(Co)t(ordinates)150 1141 y Fk(\013)p 200 1141 3554 4
-v 3553 w(\010)p 150 1741 4 552 v 178 1277 a FD(Av)-5
-b(ailabilit)m(y:)43 b Fy(ncks)178 1387 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 1496 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 1606 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 1741 V 150 1792 a
-Fk(\012)p 200 1792 3554 4 v 3553 w(\011)275 1975 y FD(A)h
-Fz(wrapp)s(ed)e(co)s(ordinate)40 b FD(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
-2084 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)f(where)h(it)g(b)s(egins)f
-(\(i.e.,)150 2194 y(wraps)39 b(around)g(on)h(itself)7
-b(\).)70 b(Longitude)40 b(\(i.e.,)k(degrees)d(on)e(a)i(circle\))g(is)f
-(a)g(familiar)h(example)f(of)h(a)150 2304 y(wrapp)s(ed)34
-b(co)s(ordinate.)59 b(Longitude)37 b(increases)g(to)g(the)f(East)h(of)f
-(Green)m(wic)m(h,)j(England,)e(where)f(it)h(is)150 2413
-y(de\014ned)29 b(to)i(b)s(e)e(zero.)42 b(Halfw)m(a)m(y)32
-b(around)d(the)h(glob)s(e,)h(the)f(longitude)h(is)f(180)i(degrees)f
-(East)f(\(or)h(W)-8 b(est\).)150 2523 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 2632
-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 2742 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 2851 y(but)h(represen)m(t)h(con)m
-(tiguous)h(regions)g(on)f(the)g(glob)s(e.)52 b(F)-8 b(or)34
-b(example,)i(the)e(Saharan)g(desert)g(stretc)m(hes)150
-2961 y(from)k(roughly)h(340)h(to)g(50)31 b(degrees)39
+%%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)150 299 y(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 408 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
+b(\014nal)f(commen)m(ts)h(on)f(applying)150 518 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
+(tly)150 628 y(sp)s(ecifying)e(co)s(ordinate)i(ranges)f(that)g(b)s(oth)
+f(include)g(Green)m(wic)m(h.)40 b(Some)24 b(users)g(will)h(\014nd)e
+(using)h(index-)150 737 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
+1007 y FB(3.20)68 b(W)-11 b(rapp)t(ed)44 b(Co)t(ordinates)150
+1141 y Fk(\013)p 200 1141 3554 4 v 3553 w(\010)p 150
+1741 4 552 v 178 1277 a FD(Av)-5 b(ailabilit)m(y:)43
+b Fy(ncks)178 1387 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 1496 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
+1606 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
+1741 V 150 1792 a Fk(\012)p 200 1792 3554 4 v 3553 w(\011)275
+1975 y FD(A)h Fz(wrapp)s(ed)e(co)s(ordinate)40 b FD(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 2084 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)
+f(where)h(it)g(b)s(egins)f(\(i.e.,)150 2194 y(wraps)39
+b(around)g(on)h(itself)7 b(\).)70 b(Longitude)40 b(\(i.e.,)k(degrees)d
+(on)e(a)i(circle\))g(is)f(a)g(familiar)h(example)f(of)h(a)150
+2304 y(wrapp)s(ed)34 b(co)s(ordinate.)59 b(Longitude)37
+b(increases)g(to)g(the)f(East)h(of)f(Green)m(wic)m(h,)j(England,)e
+(where)f(it)h(is)150 2413 y(de\014ned)29 b(to)i(b)s(e)e(zero.)42
+b(Halfw)m(a)m(y)32 b(around)d(the)h(glob)s(e,)h(the)f(longitude)h(is)f
+(180)i(degrees)f(East)f(\(or)h(W)-8 b(est\).)150 2523
+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 2632 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
+2742 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
+2851 y(but)h(represen)m(t)h(con)m(tiguous)h(regions)g(on)f(the)g(glob)s
+(e.)52 b(F)-8 b(or)34 b(example,)i(the)e(Saharan)g(desert)g(stretc)m
+(hes)150 2961 y(from)k(roughly)h(340)h(to)g(50)31 b(degrees)39
 b(East.)67 b(Extracting)40 b(the)f(h)m(yp)s(erslab)f(of)h(data)h
 (represen)m(ting)f(the)150 3071 y(Sahara)c(from)g(a)h(global)h(dataset)
 g(presen)m(ts)e(sp)s(ecial)i(problems)d(when)h(the)h(global)g(dataset)h
@@ -17102,75 +17172,72 @@ Fy(lon)g FD(again.)43 b(Should)30 b(y)m(ou)h(need)f(to)150
 5230 y(h)m(yp)s(erslab)25 b Fy(lon)g FD(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 5340 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(54\).)p
+b(alues)31 b(\(see)g(Section)h(3.15)f([Hyp)s(erslabs],)g(page)g(55\).)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)150 299 y FB(3.21)68
-b(Auxiliary)46 b(Co)t(ordinates)150 433 y Fk(\013)p 200
-433 3554 4 v 3553 w(\010)p 150 922 4 442 v 178 569 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
-678 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 788 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 922 V 150 974 a
-Fk(\012)p 200 974 3554 4 v 3553 w(\011)275 1169 y FD(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 1279 y(name)60 b FD(attributes,)69
+%%Page: 64 70
+TeXDict begin 64 69 bop 150 -116 a FD(64)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y FB(3.21)68 b(Auxiliary)46
+b(Co)t(ordinates)150 433 y Fk(\013)p 200 433 3554 4 v
+3553 w(\010)p 150 922 4 442 v 178 569 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 678 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 788 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 922 V 150 974 a Fk(\012)p 200 974 3554 4 v 3553
+w(\011)275 1197 y FD(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 1306 y(name)60 b FD(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
-1389 y(`)p Fy(--auxiliary)p FD('.)36 b(This)25 b(switc)m(h)g(supp)s
+1416 y(`)p Fy(--auxiliary)p FD('.)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 1498 y(This)30 b(w)m(orks)g(on)h(datasets)h
+(ordinate)e(ranges.)150 1526 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
-1608 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(97\))i Fy(coordinates)25 b FD(and)k
-Fy(standard_name)150 1717 y FD(attributes)36 b(describ)s(ed)e(here)h
-(\()p Fy(http:)t(/)t(/)s(cf-pcmdi)t(.)s(llnl)t(.)s(go)o(v)t(/)s(d)o
-(ocum)o(ents)s(/)s(cf)o(-co)o(nven)o(tion)o(s)t(/)s(1)s(.)150
-1827 y(6/cf-conventions.html#co)o(ordi)o(nate)o(-sy)o(stem)o
-FD(\).)f(Curren)m(tly)-8 b(,)27 b FC(NCO)e FD(understands)f(auxiliary)j
-(co-)150 1937 y(ordinate)32 b(v)-5 b(ariables)33 b(p)s(oin)m(ted)f(to)h
-(b)m(y)f(the)g Fy(standard_name)c FD(attributes)33 b(for)f
-Fz(latitude)38 b FD(and)31 b Fz(longitude)p FD(.)150
-2046 y(Cells)21 b(that)h(con)m(tain)g(a)f(v)-5 b(alue)21
-b(within)g(the)g(user-sp)s(eci\014ed)e(range)i([)p Fz(lon)p
-2513 2046 28 4 v 41 w(min)p FD(,)p Fz(lon)p 2852 2046
-V 40 w(max)p FD(,)p Fz(lat)p 3191 2046 V 41 w(min)p FD(,)p
-Fz(lat)p 3514 2046 V 41 w(max)6 b FD(])150 2156 y(are)31
-b(included)e(in)h(the)h(output)f(h)m(yp)s(erslab.)275
-2340 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
-2450 y(and)g(stores)h(it)g(along)g(a)g(one-dimensional)h(co)s(ordinate)
-f(that)g(has)f(a)h(one-to-one)i(mapping)c(to)j(b)s(oth)150
-2560 y(latitude)32 b(and)f(longitude)h(co)s(ordinates.)44
-b(Rectangular)33 b(\(in)e(longitude)h(and)f(latitude\))i(horizon)m(tal)
-g(h)m(y-)150 2669 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 2779 y(page)32 b(54\))g(of)g(separately)g(sp)s(ecifying)
-f(`)p Fy(-d)p FD(')g(argumen)m(ts)h(for)f(longitude)h(and)e(latitude.)
-44 b(Instead,)32 b(when)150 2888 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(the)g
-(latitude)i(and)d(longitude)i(co)s(ordinates)g(b)m(y)f(searc)m(h-)150
-2998 y(ing)45 b(the)f Fy(standard_name)d FD(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 3108 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 3217
-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 3327 y([CF)c(Con)m(v)m(en)m(tions],)h(page)f(97\).)275
-3511 y(Putting)e(it)h(all)g(together,)h(consider)e(a)h(v)-5
-b(ariable)30 b Fz(gds)p 2112 3511 V 39 w(3dv)-5 b(ar)36
+1635 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(98\))i Fy(coordinates)25 b FD(and)k
+Fy(standard_name)150 1745 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
+1854 y(Curren)m(tly)-8 b(,)41 b FC(NCO)d FD(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 1964 y(name)j FD(attributes)i(for)g
+Fz(latitude)48 b FD(and)42 b Fz(longitude)p FD(.)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
+2074 y(sp)s(eci\014ed)30 b(range)g([)p Fz(lon)p 916 2074
+28 4 v 41 w(min)p FD(,)p Fz(lon)p 1255 2074 V 40 w(max)p
+FD(,)p Fz(lat)p 1594 2074 V 41 w(min)p FD(,)p Fz(lat)p
+1917 2074 V 41 w(max)6 b FD(])31 b(are)g(included)f(in)g(the)g(output)g
+(h)m(yp)s(erslab.)275 2286 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 2395 y(and)g(stores)h(it)g(along)g(a)g
+(one-dimensional)h(co)s(ordinate)f(that)g(has)f(a)h(one-to-one)i
+(mapping)c(to)j(b)s(oth)150 2505 y(latitude)32 b(and)f(longitude)h(co)s
+(ordinates.)44 b(Rectangular)33 b(\(in)e(longitude)h(and)f(latitude\))i
+(horizon)m(tal)g(h)m(y-)150 2614 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 2724 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
+(and)e(latitude.)44 b(Instead,)32 b(when)150 2834 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
+(the)g(latitude)i(and)d(longitude)i(co)s(ordinates)g(b)m(y)f(searc)m
+(h-)150 2943 y(ing)45 b(the)f Fy(standard_name)d FD(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 3053 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 3162 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 3272 y([CF)c(Con)m(v)m(en)m(tions],)h(page)
+f(98\).)275 3484 y(Putting)e(it)h(all)g(together,)h(consider)e(a)h(v)-5
+b(ariable)30 b Fz(gds)p 2112 3484 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
-3621 y(based)21 b(geo)s(desic)i(grid.)38 b(Although)21
+3594 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 3731 y(and)f(longitude\),)k(it)d(is)g
+(data)g(\(time,)j(latitude,)150 3703 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
 3915 y Fy(\045)47 b(ncks)g(-m)g(-C)g(-v)h(gds_3dvar)d(~/nco/data/in.nc)
@@ -17191,26 +17258,26 @@ e(dim.)i(ID)g(=)h(20)f(\\)438 4463 y(\(CRD\)\(REC\))390
 (NC_CHAR,)d(value)h(=)i(\\)438 5340 y(Test)e(auxiliary)g(coordinates)e
 (like)j(those)f(that)h(define)f(geodesic)g(grids)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.4)j(User)d(Guide)275 299 y(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 408 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)150
-518 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 628 y(and)e(longitude)h(co)s(ordinates.)54
-b(Without)35 b(a)g Fy(coordinates)c FD(attribute)36 b(it)f(w)m(ould)f
-(b)s(e)g(unclear)g(at)i(\014rst)150 737 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
-847 y(record)30 b(dimension)g(and)g Fy(gds_crd)e FD(is)j(the)f
-(cell-based)i(dimension.)275 1025 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
-1134 y(\\latitude",)j(and)c(\\longitude":)390 1313 y
-Fy(\045)47 b(ncks)g(-m)g(-C)g(-v)h(lat_gds,lon_gds)43
+%%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)275 299 y(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 408
+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)150 518 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 628 y(and)e(longitude)h(co)s
+(ordinates.)54 b(Without)35 b(a)g Fy(coordinates)c FD(attribute)36
+b(it)f(w)m(ould)f(b)s(e)g(unclear)g(at)i(\014rst)150
+737 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 847 y(record)30 b(dimension)g(and)g
+Fy(gds_crd)e FD(is)j(the)f(cell-based)i(dimension.)275
+1025 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 1134 y(\\latitude",)j(and)c(\\longitude":)
+390 1313 y Fy(\045)47 b(ncks)g(-m)g(-C)g(-v)h(lat_gds,lon_gds)43
 b(~/nco/data/in.nc)390 1422 y(lat_gds:)j(type)g(NC_DOUBLE,)f(1)j
 (dimensions,)c(4)k(attributes,)d(\\)438 1532 y(chunked?)g(no,)i
 (compressed?)e(no,)i(packed?)f(no,)h(ID)g(=)g(37)390
@@ -17266,17 +17333,17 @@ Fy(-X)p FD(')g(are)g(alw)m(a)m(ys)h(in)m(terpreted)f(as)g(\015oating)h
 5340 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)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(ncra)47
-b(-X)g(0.,180.,-30.,30.)c(in.nc)k(out.nc)390 408 y(ncra)g(-X)g
-(0,180,-30,30)d(in.nc)j(out.nc)275 572 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(as)f(co)s(ordinates)150 682
-y(not)32 b(indices)h(\(see)g(Section)g(3.15)h([Hyp)s(erslabs],)e(page)h
-(54\).)47 b(W)-8 b(e)34 b(recommend)e(alw)m(a)m(ys)h(using)f(decimal)
-150 791 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 1036 y FB(3.22)68 b(UDUnits)46
+%%Page: 66 72
+TeXDict begin 66 71 bop 150 -116 a FD(66)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(ncra)47 b(-X)g(0.,180.,-30.,30.)
+c(in.nc)k(out.nc)390 408 y(ncra)g(-X)g(0,180,-30,30)d(in.nc)j(out.nc)
+275 572 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
+(as)f(co)s(ordinates)150 682 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 791
+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 1036 y FB(3.22)68 b(UDUnits)46
 b(Supp)t(ort)150 1170 y Fk(\013)p 200 1170 3554 4 v 3553
 w(\010)p 150 1769 4 552 v 178 1306 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
@@ -17357,10 +17424,10 @@ b(.)51 b(Fifth,)35 b(the)f(UDUnits)g(library)g(that)g(these)g
 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(.)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.4)j(User)d(Guide)150 299 y(If)d(the)g(units)g(are)g
-(incommensurate)h(\(i.e.,)h(not)f(expressible)f(in)g(the)g(same)h
+%%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(If)27 b(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 408 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 518 y(the)37 b(user's)f(in)m(ten)m(t.)61
@@ -17385,12 +17452,12 @@ b(ariable)28 b(whose)g(time)h(dimension)150 1346 y(is)h(hours)g(since)g
 b(\\)485 1626 y(16:00:0.0","1999-12-08)g(19:00:0.0")j(in.nc)390
 1736 y(time_udunits[1]=876018)d(hours)k(since)g(1900-01-01)f(00:00:0.0)
 150 1906 y FD(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(55\))f(capabilit)m(y)i(to)
+(\(see)g(Section)g(3.16)i([Stride],)f(page)g(56\))f(capabilit)m(y)i(to)
 e(obtain)g(ev)m(ery)150 2016 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
 (is)g(additiv)m(e,)g(not)g(exclusiv)m(e|it)150 2125 y(w)m(orks)g(in)h
 (conjunction)f(with)g(all)i(other)e(h)m(yp)s(erslabbing)f(\(see)j
-(Section)f(3.15)h([Hyp)s(erslabs],)f(page)g(54\))150
+(Section)f(3.15)h([Hyp)s(erslabs],)f(page)g(55\))150
 2235 y(options)38 b(and)f(in)h(all)g(op)s(erators)g(whic)m(h)g(supp)s
 (ort)e(h)m(yp)s(erslabbing.)61 b(The)38 b(follo)m(wing)h(example)f(sho)
 m(ws)150 2345 y(ho)m(w)30 b(one)h(migh)m(t)g(a)m(v)m(erage)i(data)e(in)
@@ -17406,7 +17473,7 @@ Fo(one)35 b FD(command-)150 3014 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 3124 y FD(elemen)m(ts)47
-b(\(see)f(Section)g(3.15)h([Hyp)s(erslabs],)i(page)d(54\))h(is)e(the)h
+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
 3233 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
@@ -17440,13 +17507,13 @@ 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
 5340 y(with)30 b(libraries)h(in)f(di\013eren)m(t)g(lo)s(cations.)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)275 299 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 b(do)s(cumen-)150
-408 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
+%%Page: 68 74
+TeXDict begin 68 73 bop 150 -116 a FD(68)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)275 299 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 b(do)s(cumen-)150 408
+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
 518 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 628 y(cf-pcmdi)14 b(.)e(llnl)i(.)e(gov)p
@@ -17510,19 +17577,19 @@ b(ariables)34 b(should)e(alw)m(a)m(ys)j(b)s(e)d(stored)h(with)g(MKS)g
 5340 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)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.4)j(User)d(Guide)150 299 y(feature)i(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 408 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 518
-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 628 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 737 y(p)s(ounds)28 b(p)s(er)i(square)g(inc)m(h,)g
-(fortnigh)m(ts\).)150 1007 y FB(3.23)68 b(Rebasing)46
+%%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(feature)32
+b(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 408 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 518 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 628 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 737 y(p)s(ounds)28 b(p)s(er)i(square)g(inc)m
+(h,)g(fortnigh)m(ts\).)150 1007 y FB(3.23)68 b(Rebasing)46
 b(Time)g(Co)t(ordinate)150 1141 y Fk(\013)p 200 1141
 3554 4 v 3553 w(\010)p 150 1412 4 223 v 178 1277 a FD(Av)-5
 b(ailabilit)m(y:)43 b Fy(ncra)p FD(,)30 b Fy(ncrcat)f
@@ -17573,18 +17640,17 @@ h(above)f(command)g(but)h(with)f(only)h(two)g(input)f(files...)390
 (11:59:59")i(\\)676 5121 y(file02.nc)h(file03)g(noon.nc)390
 5340 y(//)h(...then)f(output)g(time)h(coordinate)e(is)i(based)f(on)h
 (time)g(units)f(in)i("file02.nc")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)390 299 y Fy(time)47
-b(=)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 408 y(26,)g(27,)f(28,)h(29,)g(30,)g(31,)g
-(32,)g(33,)g(34,)g(35)g(;)275 583 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
-693 y(co)s(ordinate)38 b(\()p Fy(time)p FD(,)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 802 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(97\).)
+%%Page: 70 76
+TeXDict begin 70 75 bop 150 -116 a FD(70)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(time)47 b(=)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 408 y(26,)g(27,)f(28,)h(29,)g(30,)g(31,)g(32,)g(33,)g(34,)g(35)g(;)
+275 583 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 693 y(co)s(ordinate)38 b(\()p Fy(time)p FD(,)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 802 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(98\).)
 150 1080 y FB(3.24)68 b(Multiple)46 b(Record)f(Dimensions)150
 1214 y Fk(\013)p 200 1214 3554 4 v 3553 w(\010)p 150
 1594 4 333 v 178 1350 a FD(Av)-5 b(ailabilit)m(y:)43
@@ -17650,29 +17716,29 @@ 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 5139 y
 FD(Short)g(options:)41 b(None)p 3803 5274 V 150 5325
 a Fk(\012)p 200 5325 3554 4 v 3553 w(\011)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.4)j(User)d(Guide)275 299 y(The)25 b(phrase)h
-Fz(missing)g(data)h FD(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
-408 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 518 y FD(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 628 y(four)30 b(steps)g(in)g(the)h
-FC(NCO)f FD(treatmen)m(t)i(of)e(missing)g(data:)199 794
-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 936 y FC(NCO)40 b FD(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 936 28 4 v 80 w Fz(FillV)-8 b(alue)330
-1045 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
-1155 y(a)d(v)-5 b(ariable)33 b Fo(may)41 b FD(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
-1264 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
+%%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)275 299 y(The)25
+b(phrase)h Fz(missing)g(data)h FD(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 408 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 518 y FD(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 628
+y(four)30 b(steps)g(in)g(the)h FC(NCO)f FD(treatmen)m(t)i(of)e(missing)
+g(data:)199 794 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 936
+y FC(NCO)40 b FD(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 936 28 4 v 80 w Fz(FillV)-8 b(alue)330 1045 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 1155 y(a)d(v)-5 b(ariable)33 b Fo(may)41 b
+FD(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 1264 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 1264 V 76 w Fz(FillV)-8 b(alue)330 1374 y FD(are)31
 b(treated)g(as)g(missing)f(data.)330 1515 y FC(NCO)g
 FD(adopted)g(the)g(b)s(eha)m(vior)g(that)h(the)f(default)h(attribute)f
@@ -17698,12 +17764,12 @@ b(alues)32 b(in)f(datasets.)46 b(Man)m(y)33 b(legacy)g(datasets)g(con)m
 b FC(NCO)37 b FD(can)h(help)g(migrating)g(datasets)h(b)s(et)m(w)m(een)f
 (these)g(con)m(v)m(en-)330 2534 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(198\))330 2643 y(to)31 b(rename)g(all)g
+(Renamer],)j(page)d(201\))330 2643 y(to)31 b(rename)g(all)g
 Fy(missing_value)c FD(attributes)k(to)g Fy(_FillValue)p
 FD(:)570 2785 y Fy(ncrename)46 b(-a)h(.missing_value,_FillVal)o(ue)42
 b(inout.nc)330 2926 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 3036 y(page)31 b(153\))h(to)f(add)f(a)h
+(ttribute)g(Editor],)330 3036 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
 3178 y Fy(ncatted)46 b(-O)h(-a)g(_FillValue,,o,f,1.0e36)42
 b(inout.nc)199 3319 y FD(2.)61 b(Con)m(v)m(erting)31
@@ -17739,7 +17805,7 @@ 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 4337 y(tribute)h(and)g(all)h(data)g(whose)f
 (data)h(is)p 1730 4337 V 72 w Fz(FillV)-8 b(alue)40 b
 FD(to)33 b(a)g(new)e(v)-5 b(alue)33 b(\(see)g(Section)g(4.2)h([ncatted)
-330 4447 y(netCDF)d(A)m(ttribute)g(Editor],)g(page)g(153\).)199
+330 4447 y(netCDF)d(A)m(ttribute)g(Editor],)g(page)g(156\).)199
 4588 y(3.)61 b(Iden)m(tifying)31 b(missing)f(data)h(during)e
 (arithmetic)j(op)s(erations.)330 4730 y(When)41 b(an)h
 FC(NCO)f FD(arithmetic)h(op)s(erator)g(pro)s(cesses)f(a)h(v)-5
@@ -17760,10 +17826,10 @@ 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
-%%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)330 299 y(Note)26
-b(the)p 700 299 28 4 v 64 w Fz(FillV)-8 b(alue)31 b FD(comparison)25
+%%Page: 72 78
+TeXDict begin 72 77 bop 150 -116 a FD(72)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)330 299 y(Note)c(the)p 700
+299 28 4 v 64 w Fz(FillV)-8 b(alue)31 b FD(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 408 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
@@ -17862,12 +17928,12 @@ FD(\),)30 b(and)j(here)h(\()p Fy(http:)s(/)s(/)r(www)s(.)150
 5340 y(unidata.ucar.edu/blogs/d)o(evel)o(oper)o(/en)o(/ent)o(ry/c)o
 (hun)o(king)o(_dat)o(a_c)o(hoos)o(ing_)o(sha)o(pes)p
 FD(\).)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.4)j(User)d(Guide)275 299 y(The)23 b FC(NCO)g
-FD(c)m(h)m(unking)h(implemen)m(tation)h(is)f(designed)f(to)h(b)s(e)g
-(\015exible.)38 b(Users)24 b(con)m(trol)h(three)f(asp)s(ects)150
-408 y(of)33 b(the)g(c)m(h)m(unking)g(implemen)m(tation.)50
+%%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)275 299 y(The)23
+b FC(NCO)g FD(c)m(h)m(unking)h(implemen)m(tation)h(is)f(designed)f(to)h
+(b)s(e)g(\015exible.)38 b(Users)24 b(con)m(trol)h(three)f(asp)s(ects)
+150 408 y(of)33 b(the)g(c)m(h)m(unking)g(implemen)m(tation.)50
 b(These)32 b(are)i(kno)m(wn)e(as)h(the)g Fz(c)m(h)m(unking)g(p)s(olicy)
 p FD(,)h Fz(c)m(h)m(unking)f(map)p FD(,)150 518 y(and)d
 Fz(c)m(h)m(unksize)p FD(.)44 b(The)30 b(\014rst)h(t)m(w)m(o)h(are)g
@@ -17877,9 +17943,9 @@ Fz(c)m(h)m(unksize)p FD(.)44 b(The)30 b(\014rst)h(t)m(w)m(o)h(are)g
 (eci\014cation)j(of)f(parameters.)150 737 y(The)20 b(implemen)m(tation)
 i(is)e(a)h(h)m(ybrid)e(of)i(the)f Fy(ncpdq)f FD(pac)m(king)i(p)s
 (olicies)g(\(see)h(Section)f(4.8)g([ncp)s(dq)e(netCDF)150
-847 y(P)m(erm)m(ute)28 b(Dimensions)f(Quic)m(kly],)h(page)g(186\),)h
+847 y(P)m(erm)m(ute)28 b(Dimensions)f(Quic)m(kly],)h(page)g(189\),)h
 (and)e(the)g(h)m(yp)s(erslab)e(sp)s(eci\014cations)j(\(see)g(Section)f
-(3.15)150 956 y([Hyp)s(erslabs],)39 b(page)g(54\).)63
+(3.15)150 956 y([Hyp)s(erslabs],)39 b(page)g(55\).)63
 b(Eac)m(h)39 b(asp)s(ect)f(is)f(in)m(tended)h(to)g(ha)m(v)m(e)h(a)f
 (sensible)g(default,)h(so)f(that)h(most)150 1066 y(users)c(will)h(only)
 g(need)g(to)h(set)f(one)g(switc)m(h)h(to)f(obtain)h(sensible)e(c)m(h)m
@@ -17888,12 +17954,12 @@ g(need)g(to)h(set)f(one)g(switc)m(h)h(to)f(obtain)h(sensible)e(c)m(h)m
 (optimal)i(p)s(erformance.)275 1335 y(The)j(user)h(sp)s(eci\014es)f
 (the)i(desired)e(c)m(h)m(unking)h(p)s(olicy)h(with)f(the)g(`)p
 Fy(-P)p FD(')g(switc)m(h)h(\(or)f(its)h(long)f(option)150
-1445 y(equiv)-5 b(alen)m(ts,)32 b(`)p Fy(--cnk_plc)p
-FD(')d(and)h(`)p Fy(--chunk_policy)p FD('\))d(and)j(its)h
-Fz(cnk)p 2564 1445 28 4 v 40 w(plc)36 b FD(argumen)m(t.)42
-b(Fiv)m(e)32 b(c)m(h)m(unking)150 1555 y(p)s(olicies)f(are)g(curren)m
-(tly)f(implemen)m(ted:)150 1849 y Fz(Ch)m(unk)f(All)i(V)-8
-b(ariables)32 b([)p Fo(default)9 b Fz(])630 1959 y FD(De\014nition:)49
+1445 y(equiv)-5 b(alen)m(ts,)33 b(`)p Fy(--cnk_plc)p
+FD(')c(and)i(`)p Fy(--chunk_policy)p FD('\))d(and)i(its)i
+Fz(cnk)p 2568 1445 28 4 v 40 w(plc)37 b FD(argumen)m(t.)43
+b(As)32 b(of)f(August,)150 1555 y(2014,)h(six)f(c)m(h)m(unking)f(p)s
+(olicies)h(are)g(curren)m(tly)g(implemen)m(ted:)150 1849
+y Fz(Ch)m(unk)e(All)i(V)-8 b(ariables)630 1959 y FD(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 2069 y(cannot)31 b(b)s(e)f(c)m(h)m(unk)m(ed.)630
@@ -17902,11 +17968,11 @@ b(ariables)630 2069 y(cannot)31 b(b)s(e)f(c)m(h)m(unk)m(ed.)630
 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 2397 y(Mnemonic:)41
 b(All)150 2667 y Fz(Ch)m(unk)29 b(V)-8 b(ariables)32
-b(with)e(at)h(least)g(Tw)m(o)g(Dimensions)630 2777 y
-FD(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
-2886 y(Alternate)g(in)m(v)m(o)s(cation:)43 b(none)630
-2996 y Fz(cnk)p 775 2996 V 40 w(plc)36 b FD(k)m(ey)31
+b(with)e(at)h(least)g(Tw)m(o)g(Dimensions)g([)p Fo(default)9
+b Fz(])630 2777 y FD(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 2886 y(Alternate)g(in)m(v)m(o)s(cation:)43
+b(none)630 2996 y Fz(cnk)p 775 2996 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 3106 y(Mnemonic:)41
 b Fo(G)8 b FD(reater)32 b(than)e(or)g(equal)h(to)g Fo(2)43
@@ -17919,2422 +17985,2467 @@ b(ariables)31 b(p)s(ossible)e(with)i(at)g(least)g(three)g(dimensions)
 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 3814 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 4084 y Fz(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 4193 y FD(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 4303 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
-b(Alternate)630 4413 y(in)m(v)m(o)s(cation:)43 b(none)630
-4522 y Fz(cnk)p 775 4522 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 4632 y(Mnemonic:)41
-b(E)p Fo(XPL)p FD(icitly)31 b(sp)s(eci\014ed)f(dimensions)150
-4902 y Fz(Ch)m(unk)f(V)-8 b(ariables)32 b(with)e(Existing)h(Ch)m(unk)d
-(Sizes)630 5011 y FD(De\014nition:)46 b(Ch)m(unk)31 b(all)i(v)-5
-b(ariables)33 b(p)s(ossible)f(that)h(are)g(already)g(c)m(h)m(unk)m(ed)g
-(in)f(the)h(input)630 5121 y(\014le.)55 b(When)35 b(used)f(in)h
-(conjunction)g(with)g(`)p Fy(cnk_map=xst)p FD(')e(this)i(option)g
-(preserv)m(es)h(and)630 5230 y(copies)j(the)f(c)m(h)m(unking)g
-(parameters)h(from)e(the)i(input)e(to)i(the)f(output)g(\014le.)63
-b(Alternate)630 5340 y(in)m(v)m(o)s(cation:)43 b(none)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)630 299 y Fz(cnk)p
-775 299 28 4 v 40 w(plc)36 b FD(k)m(ey)31 b(v)-5 b(alues:)41
+b(D)9 b FD(imensions)150 4084 y Fz(Ch)m(unk)29 b(One-Dimensional)i
+(Record)g(V)-8 b(ariables)630 4193 y FD(De\014nition:)41
+b(Ch)m(unk)29 b(all)j(1-D)f(record)f(v)-5 b(ariables)630
+4303 y(Alternate)32 b(in)m(v)m(o)s(cation:)43 b(none)630
+4413 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
+(applied)630 4522 y(to)f(1-D)g(record)f(v)-5 b(ariables)33
+b(\(and)f(to)h(no)f(other)g(v)-5 b(ariables\).)47 b(Other)31
+b(dimensions)h(ma)m(y)h(b)s(e)630 4632 y(c)m(h)m(unk)m(ed)39
+b(with)g(their)g(o)m(wn)g(`)p Fy(--cnk_dmn)p FD(')e(options)j(that)f
+(will)h(apply)e(to)i(all)g(v)-5 b(ariables.)630 4741
+y Fz(cnk)p 775 4741 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 4851 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 5121 y Fz(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
+5230 y FD(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 5340 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
+b(Alternate)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.5)j(User)d(Guide)630 299 y(in)m(v)m(o)s(cation:)43
+b(none)630 408 y Fz(cnk)p 775 408 28 4 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
+518 y(Mnemonic:)41 b(E)p Fo(XPL)p FD(icitly)31 b(sp)s(eci\014ed)f
+(dimensions)150 803 y Fz(Ch)m(unk)f(V)-8 b(ariables)32
+b(with)e(Existing)h(Ch)m(unk)d(Sizes)630 913 y FD(De\014nition:)46
+b(Ch)m(unk)31 b(all)i(v)-5 b(ariables)33 b(p)s(ossible)f(that)h(are)g
+(already)g(c)m(h)m(unk)m(ed)g(in)f(the)h(input)630 1023
+y(\014le.)55 b(When)35 b(used)f(in)h(conjunction)g(with)g(`)p
+Fy(cnk_map=xst)p FD(')e(this)i(option)g(preserv)m(es)h(and)630
+1132 y(copies)j(the)f(c)m(h)m(unking)g(parameters)h(from)e(the)i(input)
+e(to)i(the)f(output)g(\014le.)63 b(Alternate)630 1242
+y(in)m(v)m(o)s(cation:)43 b(none)630 1351 y Fz(cnk)p
+775 1351 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 408 y(Mnemonic:)41 b(E)p Fo(X)14
+Fy(plc_xst)p FD(')630 1461 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)f(sizes)150
-664 y Fz(Unc)m(h)m(unking)630 773 y FD(De\014nition:)68
+1746 y Fz(Unc)m(h)m(unking)630 1856 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
-883 y(that)27 b(record)g(v)-5 b(ariables)28 b(\(i.e.,)h(v)-5
+1965 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 992 y(m)m(ust)35 b(b)s(e)g(c)m(h)m(unk)m(ed.)55
+(dimension\))630 2075 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 1102 y(b)s(e)30 b(c)m(h)m(unk)m(ed.)41
+(c)m(hec)m(ksums)h(m)m(ust)630 2185 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 1211 y(Alternate)i(in)m(v)m(o)s(cation:)43 b
-Fy(ncunchunk)630 1321 y Fz(cnk)p 775 1321 V 40 w(plc)36
+(ed.)630 2294 y(Alternate)i(in)m(v)m(o)s(cation:)43 b
+Fy(ncunchunk)630 2404 y Fz(cnk)p 775 2404 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 1431 y(Mnemonic:)41 b Fo(U)15 b
-FD(n)p Fo(C)e FD(h)m(un)p Fo(K)150 1718 y FD(Equiv)-5
+Fy(unchunk)p FD(')630 2513 y(Mnemonic:)41 b Fo(U)15 b
+FD(n)p Fo(C)e FD(h)m(un)p Fo(K)150 2824 y FD(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 1827 y(satisfy)g(disparate)g
+b(options)f(are)f(pro)m(vided)g(to)150 2933 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 1937 y(line.)275
-2096 y(The)32 b(c)m(h)m(unking)h(algorithms)h(m)m(ust)f(kno)m(w)g(the)h
+(scripts)f(and)g(from)g(the)g(command)150 3043 y(line.)275
+3210 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 2206 y(to)29 b(b)s(e)e(c)m(h)m(unk)m(ed.)40
+b(ariable)150 3320 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
-2315 y(called)i(the)e Fz(c)m(h)m(unking)g(map)p FD(.)40
+3429 y(called)i(the)e Fz(c)m(h)m(unking)g(map)p FD(.)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
-2425 y(\(or)c(its)g(long)g(option)g(equiv)-5 b(alen)m(ts,)27
+3539 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 2425 V 40 w(map)j
-FD(argumen)m(t.)150 2534 y(F)-8 b(our)31 b(c)m(h)m(unking)f(maps)g(are)
-h(curren)m(tly)f(implemen)m(ted:)150 2821 y Fz(Ch)m(unksize)g(Equals)g
-(Dimension)h(Size)g([)p Fo(default)9 b Fz(])630 2931
+FD('\))f(and)h(its)g Fz(cnk)p 3115 3539 V 40 w(map)j
+FD(argumen)m(t.)150 3649 y(F)-8 b(our)31 b(c)m(h)m(unking)f(maps)g(are)
+h(curren)m(tly)f(implemen)m(ted:)150 3959 y Fz(Ch)m(unksize)g(Equals)g
+(Dimension)h(Size)g([)p Fo(default)9 b Fz(])630 4068
 y FD(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
-3041 y(for)g(particular)h(dimensions)e(with)i(`)p Fy(--cnk_dmn)p
-FD(')d(option.)630 3150 y Fz(cnk)p 775 3150 V 40 w(map)33
+4178 y(for)g(particular)h(dimensions)e(with)i(`)p Fy(--cnk_dmn)p
+FD(')d(option.)630 4288 y Fz(cnk)p 775 4288 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
-3260 y(Mnemonic:)41 b Fo(D)9 b FD(i)p Fo(M)15 b FD(e)p
-Fo(N)g FD(sion)150 3515 y Fz(Ch)m(unksize)30 b(Equals)g(Dimension)h
-(Size)g(except)g(Record)g(Dimension)630 3624 y FD(De\014nition:)52
+4397 y(Mnemonic:)41 b Fo(D)9 b FD(i)p Fo(M)15 b FD(e)p
+Fo(N)g FD(sion)150 4682 y Fz(Ch)m(unksize)30 b(Equals)g(Dimension)h
+(Size)g(except)g(Record)g(Dimension)630 4792 y FD(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 3734 y(one.)55 b(Explicitly)36
+(dimension)f(has)g(size)630 4902 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 3844 y(option.)630 3953
-y Fz(cnk)p 775 3953 V 40 w(map)e FD(k)m(ey)e(v)-5 b(alues:)41
+h(`)p Fy(--cnk_dmn)p FD(')630 5011 y(option.)630 5121
+y Fz(cnk)p 775 5121 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 4063 y(Mnemonic:)41 b Fo(R)t FD(ecord)31
-b Fo(D)9 b FD(imension)29 b(size)i Fo(1)150 4318 y Fz(Ch)m(unksize)f
-(Equals)g(Scalar)h(Size)g(Sp)s(eci\014ed)630 4427 y FD(De\014nition:)41
+Fy(map_rd1)p FD(')630 5230 y(Mnemonic:)41 b Fo(R)t FD(ecord)31
+b Fo(D)9 b FD(imension)29 b(size)i Fo(1)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(Ch)m(unksize)30
+b(Equals)g(Scalar)h(Size)g(Sp)s(eci\014ed)630 408 y FD(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 4537 y Fz(cnk)p 775
-4537 V 40 w(map)k FD(k)m(ey)e(v)-5 b(alues:)41 b(`)p
+p Fy(--cnk_scl)p FD(')f(option.)630 518 y Fz(cnk)p 775
+518 28 4 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 4647 y(Mnemonic:)41 b(E)p Fo(XPL)p FD(icitly)31
-b(sp)s(eci\014ed)f(dimensions)150 4902 y Fz(Ch)m(unksize)g(Pro)s(duct)f
-(Matc)m(hes)j(Scalar)f(Size)g(Sp)s(eci\014ed)630 5011
+FD(')630 628 y(Mnemonic:)41 b(E)p Fo(XPL)p FD(icitly)31
+b(sp)s(eci\014ed)f(dimensions)150 908 y Fz(Ch)m(unksize)g(Pro)s(duct)f
+(Matc)m(hes)j(Scalar)f(Size)g(Sp)s(eci\014ed)630 1017
 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 5121 y(mately)f(equals\))g(the)f(size)g(sp)s(eci\014ed)f(with)
+(xi-)630 1127 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 5230 y(size)37 b(one)g(is)f(said)h(to)g(b)s(e)f Fo(de)-5
+630 1236 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
-5340 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)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.4)j(User)d(Guide)630 299 y Fz(R)p FD(th)g(ro)s(ot)h(of)f
-Fz(cnk)p 1256 299 28 4 v 40 w(scl)p FD(.)630 408 y Fz(cnk)p
-775 408 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(')630 518 y(Mnemonic:)41 b Fo(PR)t FD(o)p Fo(D)9 b
-FD(uct)150 799 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 909 y FD(De\014nition:)63
+1346 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
+1456 y Fz(R)p FD(th)h(ro)s(ot)h(of)f Fz(cnk)p 1256 1456
+V 40 w(scl)p FD(.)630 1565 y Fz(cnk)p 775 1565 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(')630
+1675 y(Mnemonic:)41 b Fo(PR)t FD(o)p Fo(D)9 b FD(uct)150
+1955 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 2064 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 1018 y(equals)g(the)f
+(v)-5 b(ariable)42 b(\(appro)m(ximately\))630 2174 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 1128
+FD(')d(option.)74 b(This)41 b(is)g(accomplished)630 2283
 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
-1238 y(ing\))28 b(dimensions,)g(and)g(then)f(\\\015exing")i(the)f(c)m
+2393 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
-1347 y(v)-5 b(arying\))30 b(dimensions)f(suc)m(h)g(that)h(the)f(pro)s
+2503 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
-1457 y(\014ed)g(size.)42 b(All)31 b(dimensions)f(to)h(the)g(left)h(of)e
+2612 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
-1566 y(de\014ne)f(the)g(left-hand)h(side.)40 b(This)30
+2722 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
-1676 y Fz(cnk)p 775 1676 V 40 w(map)k FD(k)m(ey)e(v)-5
+2831 y Fz(cnk)p 775 2831 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 1786 y(Mnemonic:)41
+FD(',)f(`)p Fy(map_lfp)p FD(')630 2941 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
-2067 y Fz(Ch)m(unksize)30 b(Equals)g(Existing)h(Ch)m(unksize)630
-2176 y FD(De\014nition:)54 b(Ch)m(unksizes)36 b(are)h(copied)g(from)f
+3221 y Fz(Ch)m(unksize)30 b(Equals)g(Existing)h(Ch)m(unksize)630
+3331 y FD(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
-2286 y(v)-5 b(ariable)36 b(that)f(is)g(c)m(h)m(unk)m(ed)g(in)f(the)h
+3440 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 2395 y(\014le)30 b(will)h(b)s(e)f(c)m(h)m(unk)m(ed)g
-(with)h(default)f(mappings.)630 2505 y Fz(cnk)p 775 2505
+f(the)h(input)630 3550 y(\014le)30 b(will)h(b)s(e)f(c)m(h)m(unk)m(ed)g
+(with)h(default)f(mappings.)630 3659 y Fz(cnk)p 775 3659
 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 2615 y(Mnemonic:)41 b(E)p Fo(X)14 b FD(i)p Fo(ST)150
-2896 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 3005 y FD(De\014nition:)40
+FD(')630 3769 y(Mnemonic:)41 b(E)p Fo(X)14 b FD(i)p Fo(ST)150
+4049 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 4158 y FD(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 3115 y(v)-5 b(ariables)41 b(\(e.g.,)k(p)s(oin)m(t-timeseries)
+FD(-D)630 4268 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
-3225 y(b)s(oth)f(require)h(appro)m(ximately)h(the)g(n)m(um)m(b)s(er)d
+4378 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
-3334 y(should)31 b(b)s(e)g(balanced.)44 b(Russ)31 b(Rew)h(explains)f
+4487 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 3444 y(strategy)h(here)f(\()p Fy
+b(for)e(this)630 4597 y(strategy)h(here)f(\()p Fy
 (http://www.unidata.ucar.edu/blogs/devel)o(oper)o(/en/ent)o(ry/)630
-3553 y(chunking_data_choosing_s)o(hape)o(s)p FD(\).)630
-3663 y Fz(cnk)p 775 3663 V 40 w(map)i FD(k)m(ey)e(v)-5
+4706 y(chunking_data_choosing_s)o(hape)o(s)p FD(\).)630
+4816 y Fz(cnk)p 775 4816 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 3773 y(Mnemonic:)41
-b(Russ)30 b Fo(REW)150 4079 y FD(It)49 b(is)g(p)s(ossible)f(to)i(com)m
+FD(',)f(`)p Fy(map_rew)p FD(')630 4926 y(Mnemonic:)41
+b(Russ)30 b Fo(REW)150 5230 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 4188 y(dimension)23
+(with)f(user-sp)s(eci\014ed)f(p)s(er-)150 5340 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 4298 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
-4407 y(long)23 b(options)g(`)p Fy(--cnk_dmn)p FD(')d(or)i(`)p
+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.5)j(User)d(Guide)150 299 y(b)m(y)i(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
+408 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)150 4517 y(argumen)m(ts,)30 b Fz(dmn)p
-801 4517 V 39 w(nm)p FD(,)p Fz(cnk)p 1131 4517 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 4627 y(The)30
+m(o)f(comma-separated)150 518 y(argumen)m(ts,)30 b Fz(dmn)p
+801 518 28 4 v 39 w(nm)p FD(,)p Fz(cnk)p 1131 518 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 628 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(.)390 4792 y Fy(#)47
-b(Simple)g(chunking)e(and)i(unchunking)390 4902 y(ncks)g(-O)g(-4)g
+(y)f(times)h(as)g(necessary)-8 b(.)390 847 y Fy(#)47
+b(Simple)g(chunking)e(and)i(unchunking)390 956 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
-5011 y(ncks)h(-O)g(-4)g(--cnk_plc=unchunk)c(in.nc)j(out.nc)h(#)g
-(Unchunk)f(in.nc)390 5230 y(#)h(Chunk)g(data)f(then)h(unchunk)f(it,)h
-(printing)e(informative)g(metadata)390 5340 y(ncks)i(-O)g(-4)g(-D)g(4)h
-(--cnk_plc=all)c(~/nco/data/in.nc)f(~/foo.nc)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)390 299 y Fy(ncks)47
-b(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c(~/foo.nc)h(~/foo.nc)390
-518 y(#)i(Set)g(total)g(chunksize)e(to)i(8192)g(B)390
-628 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 847 y(#)k(More)g(complex)f(chunking)f
-(procedures,)g(with)i(informative)e(metadata)390 956
+1066 y(ncks)h(-O)g(-4)g(--cnk_plc=unchunk)c(in.nc)j(out.nc)h(#)g
+(Unchunk)f(in.nc)390 1285 y(#)h(Chunk)g(data)f(then)h(unchunk)f(it,)h
+(printing)e(informative)g(metadata)390 1395 y(ncks)i(-O)g(-4)g(-D)g(4)h
+(--cnk_plc=all)c(~/nco/data/in.nc)f(~/foo.nc)390 1504
+y(ncks)k(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c(~/foo.nc)h(~/foo.nc)390
+1724 y(#)i(Set)g(total)g(chunksize)e(to)i(8192)g(B)390
+1833 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 2052 y(#)k(More)g(complex)f(chunking)f
+(procedures,)g(with)i(informative)e(metadata)390 2162
 y(ncks)i(-O)g(-4)g(-D)g(4)h(--cnk_scl=8)c(~/nco/data/in.nc)g(~/foo.nc)
-390 1066 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_scl=8)c(dstmch90_clm.nc)g
-(~/foo.nc)390 1176 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 1285
-y(~/foo.nc)390 1395 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c
-(~/foo.nc)h(~/foo.nc)390 1504 y(ncks)i(-O)g(-4)g(-D)g(4)h
+390 2271 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_scl=8)c(dstmch90_clm.nc)g
+(~/foo.nc)390 2381 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 2491
+y(~/foo.nc)390 2600 y(ncks)j(-O)g(-4)g(-D)g(4)h(--cnk_plc=uck)c
+(~/foo.nc)h(~/foo.nc)390 2710 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
-1614 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)390
-1833 y(#)47 b(Chunking)f(works)g(with)h(all)g(operators...)390
-1943 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 2052 y(~/nco/data/in.nc)i
-(~/foo.nc)390 2162 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 2271 y(ncecat)g(-O)h(-4)g
-(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g(\\)438 2381
+2819 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)390
+3039 y(#)47 b(Chunking)f(works)g(with)h(all)g(operators...)390
+3148 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 3258 y(~/nco/data/in.nc)i
+(~/foo.nc)390 3367 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 3477 y(ncecat)g(-O)h(-4)g
+(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g(\\)438 3587
 y(-p)h(/data/zender/dstmch90)42 b(dstmch90_clm01.nc)h(~/foo.nc)390
-2491 y(ncflint)j(-O)h(-4)g(-D)g(4)h(--cnk_scl=8)d(~/nco/data/in.nc)e
-(~/foo.nc)390 2600 y(ncpdq)j(-O)i(-4)f(-D)g(4)g(-P)h(all_new)d
+3696 y(ncflint)j(-O)h(-4)g(-D)g(4)h(--cnk_scl=8)d(~/nco/data/in.nc)e
+(~/foo.nc)390 3806 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
-2710 y(ncrcat)j(-O)h(-4)g(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g
-(\\)438 2819 y(-p)h(/data/zender/dstmch90)42 b(dstmch90_clm01.nc)h
-(~/foo.nc)390 2929 y(ncwa)k(-O)g(-4)g(-D)g(4)h(-a)f(time)f
+3915 y(ncrcat)j(-O)h(-4)g(-D)h(4)f(-n)g(12,2,1)f(--cnk_dmn)g(lat,32)g
+(\\)438 4025 y(-p)h(/data/zender/dstmch90)42 b(dstmch90_clm01.nc)h
+(~/foo.nc)390 4134 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
-3039 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)275
-3198 y FD(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 3308 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 3417 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
-3527 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 3636 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 3746 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 3856 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 3965 y(surprised)f(to)i(learn)
+4244 y(--cnk_dmn)f(lon,128)h(dstmch90_clm_0112.nc)c(~/foo.nc)275
+4463 y FD(Ch)m(unking)27 b(p)s(olicy)i(`)p Fy(r1d)p FD(')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 4573 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 4682 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
+4792 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 5011 y Fy(ncks)47 b(--cnk_plc=r1d)d
+(--cnk_dmn=time,1000.)e(in.nc)k(out.nc)275 5230 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
+(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 5340 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.)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)275 299 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 408 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 518 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 628 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 737 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
+847 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 956 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 1066 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
-4075 y(nev)m(ertheless)31 b(con)m(tain)h(c)m(h)m(unk)m(ed)f(v)-5
-b(ariables.)150 4299 y FB(3.27)68 b(De\015ation)150 4409
-y Fk(\013)p 200 4409 3554 4 v 3553 w(\010)p 150 4899
-4 442 v 178 4545 a FD(Av)-5 b(ailabilit)m(y:)43 b Fy(ncap2)p
+1176 y(nev)m(ertheless)31 b(con)m(tain)h(c)m(h)m(unk)m(ed)f(v)-5
+b(ariables.)150 1444 y FB(3.27)68 b(De\015ation)150 1555
+y Fk(\013)p 200 1555 3554 4 v 3553 w(\010)p 150 2044
+4 442 v 178 1691 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
-4655 y FD(Short)h(options:)41 b(`)p Fy(-L)p FD(')178
-4765 y(Long)31 b(options:)41 b(`)p Fy(--dfl_lvl)p FD(',)28
-b(`)p Fy(--deflate)p FD(')p 3803 4899 V 150 4951 a Fk(\012)p
-200 4951 3554 4 v 3553 w(\011)275 5121 y FD(All)38 b
+1800 y FD(Short)h(options:)41 b(`)p Fy(-L)p FD(')178
+1910 y(Long)31 b(options:)41 b(`)p Fy(--dfl_lvl)p FD(',)28
+b(`)p Fy(--deflate)p FD(')p 3803 2044 V 150 2096 a Fk(\012)p
+200 2096 3554 4 v 3553 w(\011)275 2278 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 5230 y(ables)35 b(compressed)g(with)f(Lemp)s(el-Ziv)h
+b(ari-)150 2388 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 5340 y(compression)e(tec)m(hnique.)50
+(lossless)g(data)150 2497 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)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.4)j(User)d(Guide)150 299 y(the)h(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
-408 y(lev)m(el)i Fz(d\015)p 467 408 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 408 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 408 V 39 w(lvl)g(=)f(9)7
-b FD(\).)150 518 y(Minimal)35 b(de\015ation)g(\()p Fz(d\015)p
-1036 518 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
-628 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 737 y(minimal)37 b(\()p
-Fz(d\015)p 653 737 V 39 w(lvl)g(=)f(1)7 b FD(\))37 b(and)f(maximal)h
-(\()p Fz(d\015)p 1755 737 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 847 y(p)s(ercen)m(t)30 b(in)h(size.)275 1006 y(T)-8
-b(o)30 b(compress)h(an)f(en)m(tire)h(\014le)g(using)e(de\015ation,)i
-(use)390 1166 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 1275
-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 1385 y(ncks)g(-4)g(-L)g(9)g(in.nc)g
-(out.nc)f(#)h(Maximal)f(deflation)f(\(much)i(slower\))275
-1544 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 1654 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 1763 y([P)m(ac)m(k)m(ed)33
-b(data],)f(page)f(79\),)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 1873 y(squeeze)h(datasets)h(b)m(y)e(ab)s(out)g(80\045:)390
-2032 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 2142 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 2252 y(ncpdq)428 b(in.nc)47
-b(out.nc)f(#)h(Standard)f(packing)93 b(\(~50\045)47 b(compression\))390
-2361 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 2521 y(ncks)23 b FD(prin)m(ts)h
+Fy(-L)d Fn(dfl_lvl)h FD(short)i(option)h(\(or)f(with)150
+2607 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 2717 y(lev)m(el)i
+Fz(d\015)p 467 2717 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 2717 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 2717 V 39 w(lvl)g(=)f(9)7 b FD(\).)150 2826 y(Minimal)35
+b(de\015ation)g(\()p Fz(d\015)p 1036 2826 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 2936 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
+3045 y(minimal)37 b(\()p Fz(d\015)p 653 3045 V 39 w(lvl)g(=)f(1)7
+b FD(\))37 b(and)f(maximal)h(\()p Fz(d\015)p 1755 3045
+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 3155 y(p)s(ercen)m(t)30
+b(in)h(size.)275 3326 y(T)-8 b(o)30 b(compress)h(an)f(en)m(tire)h
+(\014le)g(using)e(de\015ation,)i(use)390 3498 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 3607 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
+3717 y(ncks)g(-4)g(-L)g(9)g(in.nc)g(out.nc)f(#)h(Maximal)f(deflation)f
+(\(much)i(slower\))275 3888 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 3998 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 4108 y([P)m(ac)m(k)m(ed)33 b(data],)f(page)f(81\),)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 4217 y(squeeze)h
+(datasets)h(b)m(y)e(ab)s(out)g(80\045:)390 4389 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 4498 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 4608 y(ncpdq)428 b(in.nc)47 b(out.nc)f(#)h(Standard)
+f(packing)93 b(\(~50\045)47 b(compression\))390 4717
+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 4889 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
-2630 y(Sink],)30 b(page)h(173\).)150 2856 y FB(3.28)68
-b(MD5)45 b(digests)150 2989 y Fk(\013)p 200 2989 3554
-4 v 3553 w(\010)p 150 3479 4 442 v 178 3126 a FD(Av)-5
+4998 y(Sink],)30 b(page)h(176\).)150 5267 y FB(3.28)68
+b(MD5)45 b(digests)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.5)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(ncecat)p FD(,)29 b Fy(ncks)p
-FD(,)h Fy(ncrcat)178 3235 y FD(Short)g(options:)178 3345
+FD(,)h Fy(ncrcat)178 297 y FD(Short)g(options:)178 407
 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 3479 V 150 3531
-a Fk(\012)p 200 3531 3554 4 v 3553 w(\011)275 3706 y
-FD(As)c(of)h FC(NCO)g FD(v)m(ersion)g(4.1.0)h(\(April,)g(2012\),)j
+Fy(--md5_write_attribute)p FD(')p 3803 541 V 150 593
+a Fk(\012)p 200 593 3554 4 v 3553 w(\011)275 776 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 3816 y FC(MD5)32 b FD(digest)g
+(eri\014cation)g(using)d(the)150 886 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
-3925 y(concan)m(tenators)38 b Fy(ncecat)c FD(and)i Fy(ncrcat)p
+995 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 4035 y(long)43
+FD(')e(or)i(`)p Fy(--md5_digest)p FD(')150 1105 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 4144 y(eac)m(h)34 b(v)-5
+FC(MD5)f FD(digest)i(of)150 1215 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 4254 y(in)45 b Fy(ncks)f FD(and)g(in)h(the)g(m)m(ulti\014le)h
+m(ted)150 1324 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 4364
+FD(.)83 b(Activ)-5 b(ate)47 b(it)f(with)f(the)150 1434
 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 4523 y(The)g(b)s(eha)m(vior)i(and)e(v)
+FD(')25 b(long)31 b(options.)275 1601 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
-4633 y FC(MD5)30 b FD(digests)i(with)e Fy(ncks)f FD(it)i(is)g(assumed)f
+1711 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 4742 y(v)-5 b(ariable)29 b(and)e(this)h(is)h(done)f(when)
+(ev)m(ery)150 1820 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 4852 y(o)m(v)m(erhead)41
+b(incurs)f(only)h(the)g(minor)150 1930 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
-4961 y(activ)-5 b(ated)39 b(in)d(b)s(oth)g(the)h(one-)h(and)e(t)m(w)m
+2040 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 5071 y(prin)m(ting)j(and)f(for)h
+FD(,)g(whic)m(h)g(are)g(used)f(for)150 2149 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
-5181 y(hexadecimal)32 b(string)e(in)g(whic)m(h)g(eac)m(h)i(t)m(w)m(o)f
+2259 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 5340 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)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)390 299 y Fy(...)390
-408 y(ncks:)46 b(INFO)h(MD5\(md5_a\))e(=)i(0cc175b9c0f1b6a831c399e269)o
-(7726)o(61)390 518 y(md5_a)f(=)i('a')390 628 y(ncks:)e(INFO)h
+(digest:)390 2426 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 2536 y(...)390
+2646 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i(0cc175b9c0f1b6a831c399e269)o
+(7726)o(61)390 2755 y(md5_a)f(=)i('a')390 2865 y(ncks:)e(INFO)h
 (MD5\(md5_abc\))d(=)k(900150983cd24fb0d6963f7d)o(28e1)o(7f7)o(2)390
-737 y(lev[0]=100)d(md5_abc[0--2]='abc')390 847 y(>)i(ncks)g(-O)g(-D)g
+2974 y(lev[0]=100)d(md5_abc[0--2]='abc')390 3084 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 956 y(...)390 1066 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i
-(0cc175b9c0f1b6a831c399e269)o(7726)o(61)390 1176 y(md5_a)f(=)i('a')390
-1285 y(ncks:)e(INFO)h(MD5\(md5_abc\))d(=)k(0cc175b9c0f1b6a831c399e2)o
-(6977)o(266)o(1)390 1395 y(lev[0]=100)d(md5_abc[0--0]='a')275
-1575 y FD(In)37 b(fact)j(these)f(examples)g(demonstrate)g(the)g(v)-5
+390 3194 y(...)390 3303 y(ncks:)i(INFO)h(MD5\(md5_a\))e(=)i
+(0cc175b9c0f1b6a831c399e269)o(7726)o(61)390 3413 y(md5_a)f(=)i('a')390
+3522 y(ncks:)e(INFO)h(MD5\(md5_abc\))d(=)k(0cc175b9c0f1b6a831c399e2)o
+(6977)o(266)o(1)390 3632 y(lev[0]=100)d(md5_abc[0--0]='a')275
+3799 y FD(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 1685 y FD(hashes)f(of)h(the)f(strings)g(\\a")i(and)e(\\ab)s
+FC(MD5)150 3909 y FD(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 1794 y(the)33 b(h)m(yp)s(erslab)f(of)h(v)-5
+(ws)f(that)150 4019 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)150
-1904 y(the)h(same)g(hash)e(as)i(the)g(v)-5 b(ariable)35
+4128 y(the)h(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 2013 y(v)-5
-b(ariable)31 b(data,)g(not)g(on)f(metadata.)275 2194
+FC(MD5)g FD(digests)g(act)g(only)g(on)150 4238 y(v)-5
+b(ariable)31 b(data,)g(not)g(on)f(metadata.)275 4405
 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 2303 y(v)m(erify)j(that)g(ev)m(ery)g(v)-5
+(user)f(wishes)g(to)150 4515 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
-2413 y(read)g(from)f(disk.)38 b(This)22 b(incurs)h(the)g(ma)5
+4624 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 2522 y(is)i(written)g(and)g(p)s
+(v)-5 b(ariable)24 b(after)f(it)150 4734 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 2632 y(Moreo)m(v)m(er,)33
+f(to)h(the)f(original)h(hash.)150 4844 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 2742
+i(done)e(\\pro)s(duction)f(mo)s(de")h(where)150 4953
 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
-2851 y(silen)m(tly)32 b(unless)d(the)i(debugging)f(lev)m(el)i(exceeds)g
-(three:)390 3031 y Fy(>)47 b(ncecat)g(-O)g(-D)g(4)g(--md5)g(-p)g
+5063 y(silen)m(tly)32 b(unless)d(the)i(debugging)f(lev)m(el)i(exceeds)g
+(three:)390 5230 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
-3141 y(...)390 3251 y(ncecat:)g(INFO)g(MD5\(wnd_spd\))f(=)i
-(bec190dd944f2ce2794a7a4abf)o(224)o(b28)390 3360 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 3470 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 3579 y(...)390
-3689 y(ncrcat:)g(INFO)g(MD5\(wnd_spd\))f(=)i
-(74699bb0a72b7f16456badb2c9)o(95f)o(1a1)390 3799 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 3979 y FD(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 4088 y(read)30 b(from)g(the)h(source)f(\014le)h(and)f
-(from)f(the)i(output)f(\014le)g(disagree.)275 4269 y(These)c(rules)h
+5340 y(...)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(ncecat:)46
+b(INFO)g(MD5\(wnd_spd\))f(=)i(bec190dd944f2ce2794a7a4abf)o(224)o(b28)
+390 408 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 518 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 628 y(...)390 737 y(ncrcat:)g(INFO)g(MD5\(wnd_spd\))f(=)i
+(74699bb0a72b7f16456badb2c9)o(95f)o(1a1)390 847 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 1006 y FD(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 1116 y(read)30 b(from)g(the)h(source)f(\014le)h(and)f
+(from)f(the)i(output)f(\014le)g(disagree.)275 1275 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
 (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 4378 y(feedbac)m(k)j(and)f(suggestions)h(from)f
-(users.)150 4673 y FB(3.29)68 b(Bu\013er)45 b(sizes)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
-b(All)31 b(op)s(erators)178 5029 y(Short)f(options:)178
-5139 y(Long)h(options:)41 b(`)p Fy(--bfr_sz_hnt)p FD(',)28
-b(`)p Fy(--buffer_size_hint)p FD(')p 3803 5274 V 150
-5325 a Fk(\012)p 200 5325 3554 4 v 3553 w(\011)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.4)j(User)d(Guide)275 299 y(As)c(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 408 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 518 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
-628 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
+b(e)28 b(w)m(elcome)150 1385 y(feedbac)m(k)j(and)f(suggestions)h(from)f
+(users.)150 1609 y FB(3.29)68 b(Bu\013er)45 b(sizes)150
+1720 y Fk(\013)p 200 1720 3554 4 v 3553 w(\010)p 150
+2209 4 442 v 178 1856 a FD(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 1965 y(Short)f(options:)178
+2075 y(Long)h(options:)41 b(`)p Fy(--bfr_sz_hnt)p FD(',)28
+b(`)p Fy(--buffer_size_hint)p FD(')p 3803 2209 V 150
+2261 a Fk(\012)p 200 2261 3554 4 v 3553 w(\011)275 2436
+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 2546 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 2655
+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 2765 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
-737 y Fy(stat\(\))j FD(system)i(call)902 704 y Ft(19)974
-737 y FD(.)40 b(Otherwise,)30 b(netCDF)g(uses)g(t)m(wice)h(the)f
+2875 y Fy(stat\(\))j FD(system)i(call)902 2842 y Ft(19)974
+2875 y FD(.)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
-847 y(increase)g(access)g(sp)s(eed)d(b)m(y)i(reducing)f(the)h(n)m(um)m
+2984 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
-956 y(data)j(from/to)h(disk.)47 b(Because)34 b(netCDF)g(cannot)f
+3094 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 1066 y(the)f(actual)g(bu\013er)f(size)h(gran)m(ted)g(b)m(y)f(the)h
+150 3203 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
-1229 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 1339 y(>)g(ncks)g(-O)g(-D)g(3)h
+3363 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 3472 y(>)g(ncks)g(-O)g(-D)g(3)h
 (--bfr_sz=2097152)43 b(~/nco/data/in.nc)h(~/foo.nc)390
-1449 y(...)390 1558 y(ncks:)i(INFO)h(nc__open\(\))e(will)i(request)e
-(file)i(buffer)f(size)h(=)g(2097152)f(bytes)390 1668
+3582 y(...)390 3691 y(ncks:)i(INFO)h(nc__open\(\))e(will)i(request)e
+(file)i(buffer)f(size)h(=)g(2097152)f(bytes)390 3801
 y(ncks:)g(INFO)h(nc__open\(\))e(opened)h(file)h(with)f(buffer)g(size)h
-(=)h(2097152)d(bytes)390 1777 y(...)150 2022 y FB(3.30)68
-b(RAM)45 b(disks)150 2132 y Fk(\013)p 200 2132 3554 4
-v 3553 w(\010)p 150 2622 4 442 v 178 2268 a FD(Av)-5
-b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)178 2378
-y(Short)f(options:)178 2487 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 2622 V 150 2673 a Fk(\012)p 200 2673 3554 4 v 3553
-w(\011)275 2852 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 2962 y FC(RAM)45
-b FD(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 3072 y(`)p Fy(--create_ram)p
-FD(',)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 3181 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 3291
-y(from/to)g FC(RAM)g FD(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
-3400 y(Most)k FC(NCO)g FD(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
-3510 y(for)j(ev)m(ery)h(blo)s(c)m(k)g(of)f(input/output.)52
+(=)h(2097152)d(bytes)390 3911 y(...)150 4135 y FB(3.30)68
+b(RAM)45 b(disks)150 4245 y Fk(\013)p 200 4245 V 3553
+w(\010)p 150 4735 4 442 v 178 4382 a FD(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 4491 y(Short)f(options:)178
+4601 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 4735 V 150 4787 a Fk(\012)p
+200 4787 3554 4 v 3553 w(\011)275 4962 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 5072 y FC(RAM)45 b FD(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)p 150 5154 1200 4
+v 166 5221 a Ft(19)303 5253 y Fs(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: 80 86
+TeXDict begin 80 85 bop 150 -116 a FD(80)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(`)p Fy(--create_ram)p
+FD(',)j(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
+408 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 518 y(from/to)g FC(RAM)g
+FD(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
+628 y(Most)k FC(NCO)g FD(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
+737 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 3620 y(extra)d(read-from/write-to)h(RAM.)e(Ho)m
+(do)s(es)e(add)h(an)150 847 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 3729 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
-3839 y FD(disks)23 b(include)f Fy(ncwa)p FD(,)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 3948
-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 4058 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 4221
-y(The)g(`)p Fy(--open_ram)p FD(')e(switc)m(h)j(causes)g(input)f
+m(oid)i(con)m(ten)m(tion)150 956 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 1066 y FD(disks)23
+b(include)f Fy(ncwa)p FD(,)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 1176 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
+1285 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
+1457 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 4331 y(metadata)26 b(and)f(data)g(access)h(o)s
+b(All)31 b(further)150 1567 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 4440 y(head)34
+f(dela)m(ys)h(caused)e(b)m(y)h(disk-)150 1677 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
-4550 y(input)28 b(\014les)h(b)s(e)g(stored)g(in)g FC(RAM)g
+1786 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
 b(lik)m(eliest)i(exceptions)f(are)g(\014les)f(that)h(are)150
-4660 y(accessed)i(n)m(umerous)d(times,)i(suc)m(h)f(as)h(those)g
+1896 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 4823 y(In)m(v)m(oking)24 b(`)p Fy(--open_ram)p
+FD(.)275 2068 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 4933
+FD(')d(uses)j(m)m(uc)m(h)g(more)g(system)h(mem-)150 2178
 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 5042 y(on-disk)33 b(\014lesize)h(of)f(the)g(input)f
+(exactly)h(the)150 2287 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)p 150 5154 1200 4 v 166 5221 a Ft(19)303
-5253 y Fs(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: 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)150 299 y(memory)36
-b(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 408 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 518 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
-628 y(Requiremen)m(ts],)31 b(page)g(22)h(for)e(further)f(details.)275
-790 y(The)20 b(`)p Fy(--create_ram)p FD(')e(switc)m(h)j(causes)g
+(b)s(e)f(a)i(h)m(uge)150 2397 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 2506
+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 2616 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
+2725 y(Requiremen)m(ts],)31 b(page)g(22)h(for)e(further)f(details.)275
+2898 y(The)20 b(`)p Fy(--create_ram)p FD(')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 899 y(These)27 b(\014les)g(are)g(copied)h(to)g(disk)e
+(on)f(disk.)150 3007 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 1009 y(\014les)e(in)f FC(RAM)h FD(ma)m(y)g(sa)m(v)m
+41 b(Creating)150 3117 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 1118 y(lo)s(ops,)34
+(are)g(iterativ)m(e,)k(e.g.,)150 3226 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
-1228 y(\014les)32 b(pro)m(vide)h(man)m(y)g(of)f(the)h(same)g(b)s
+3336 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 1338 y([RAM)d(v)-5
-b(ariables],)32 b(page)f(119\).)275 1500 y(Tw)m(o)e(switc)m(hes,)h(`)p
+(cases)g(\(see)g(Section)h(4.1.12)150 3446 y([RAM)d(v)-5
+b(ariables],)32 b(page)f(121\).)275 3618 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 1609
+(v)m(enien)m(t)j(shortcuts)d(for)g(sp)s(ecify-)150 3727
 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 1771 y Fy(ncks)47
+Fy(--diskless_ram)p FD('.)38 b(Th)m(us)390 3900 y Fy(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 1881 y(ncks)g(--open_ram)e(in.nc)h(out.nc)g(#)i
+(out.nc)g(to)h(disk)390 4009 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
-1991 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 2100 y(#)f(Open)g(in.nc)f(in)i(RAM,)e
+4119 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 4228 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
-2210 y(ncks)f(--open_ram)e(--create_ram)f(in.nc)i(out.nc)390
-2319 y(ncks)h(--ram_all)e(in.nc)h(out.nc)g(#)i(Same)e(as)i(above)390
-2429 y(ncks)f(--diskless_all)d(in.nc)i(out.nc)g(#)h(Same)g(as)g(above)
-275 2591 y FD(It)24 b(is)g(straigh)m(tforw)m(ard)g(to)h(demonstrate)g
+4338 y(ncks)f(--open_ram)e(--create_ram)f(in.nc)i(out.nc)390
+4448 y(ncks)h(--ram_all)e(in.nc)h(out.nc)g(#)i(Same)e(as)i(above)390
+4557 y(ncks)f(--diskless_all)d(in.nc)i(out.nc)g(#)h(Same)g(as)g(above)
+275 4729 y FD(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 2701 y(a)30
+b(or)24 b FC(NASA)h FD(w)m(e)g(constructed)150 4839 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 2810 y(all)h(sym)m(b)s(olically)h(link)m(ed)f(to)g(the)f(same)
+(are)150 4949 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 2972 y
+(\014lesystem)g(\(not)g FC(D)n(AP)p FD(\).)390 5121 y
 Fy(#)47 b(Create)g(symbolic)e(links)h(for)h(benchmark)390
-3082 y(cd)g(${DATA}/nco)e(#)i(Do)h(all)e(work)h(here)390
-3191 y(for)g(idx)g(in)g({1..99999};)e(do)485 3301 y(idx_fmt=`printf)f
-("\04505d")i(${idx}`)485 3411 y(/bin/ln)g(-s)h
+5230 y(cd)g(${DATA}/nco)e(#)i(Do)h(all)e(work)h(here)390
+5340 y(for)g(idx)g(in)g({1..99999};)e(do)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)485 299 y Fy(idx_fmt=`printf)44
+b("\04505d")i(${idx}`)485 408 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 3520
-y(${DATA}/nco/${idx_fmt}.nc)390 3630 y(done)390 3739
-y(#)47 b(Benchmark)f(time)g(to)i(ncecat)e(one)h(hundred)e(thousand)h
-(files)390 3849 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 3958 y(-d)j(Longitude,-105.0)c(-p)k
-(${DATA}/nco)e(-n)i(99999,5,1)f(00001.nc)f(~/foo.nc)275
-4121 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 4230 y(reduces)35 b(the)g(elapsed)h(time)g(to)g(9)30
+(2T11)o(193)o(1Z_2)o(0020)o(619)o(.nc)41 b(\\)1010 518
+y(${DATA}/nco/${idx_fmt}.nc)390 628 y(done)390 737 y(#)47
+b(Benchmark)f(time)g(to)i(ncecat)e(one)h(hundred)e(thousand)h(files)390
+847 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 956 y(-d)j(Longitude,-105.0)c(-p)k(${DATA}/nco)
+e(-n)i(99999,5,1)f(00001.nc)f(~/foo.nc)275 1116 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
+1225 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 4340 y(and)g(cac)m(hing.)58
+(to)h(using)f(symlinks)150 1335 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
-4449 y FC(RAM)26 b FD(a)m(v)m(oids)h(thousands)d(of)i(disk)f(writes.)39
+1445 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 4559 y(\014les)k(lik)m(e)i(this)f
+FD(to)h(pro)s(cess)f(a)h(million)150 1554 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 4668 y(\014les.)275 4831 y(A)22 b(completely)i(indep)s(enden)
+(real)150 1664 y(\014les.)275 1823 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 4940 y(temp)s(orary)h(output)f
+g(is)g(to)h(refrain)e(from)h(writing)150 1933 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
-5050 y([T)-8 b(emp)s(orary)30 b(Output)f(Files],)j(page)f(15\).)150
-5290 y FB(3.31)68 b(P)l(ac)l(k)l(ed)46 b(data)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.4)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(ncflint)p FD(,)e Fy(ncpdq)p
-FD(,)h Fy(ncra)p FD(,)h Fy(ncwa)178 297 y FD(Short)g(options:)41
-b(None)178 407 y(Long)31 b(options:)41 b(`)p Fy(--hdf_upk)p
-FD(',)28 b(`)p Fy(--hdf_unpack)p FD(')p 3803 541 V 150
-593 a Fk(\012)p 200 593 3554 4 v 3553 w(\011)275 776
-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 885 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
-995 y(page)j(173)g(for)f(a)h(description)f(of)h(de\015ation,)j(a)d
+2042 y([T)-8 b(emp)s(orary)30 b(Output)f(Files],)j(page)f(15\).)150
+2266 y FB(3.31)68 b(P)l(ac)l(k)l(ed)46 b(data)150 2376
+y Fk(\013)p 200 2376 3554 4 v 3553 w(\010)p 150 2866
+4 442 v 178 2513 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
+2622 y FD(Short)g(options:)41 b(None)178 2732 y(Long)31
+b(options:)41 b(`)p Fy(--hdf_upk)p FD(',)28 b(`)p Fy(--hdf_unpack)p
+FD(')p 3803 2866 V 150 2918 a Fk(\012)p 200 2918 3554
+4 v 3553 w(\011)275 3088 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 3198 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
+3307 y(page)j(176)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 1104 y(netCDF4)31 b(only)-8 b(.)42 b(P)m(ac)m(k)m(ed)32
+b(with)150 3417 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 1329 y Fu(P)m(ac)m(king)40 b(Algorithm)150
-1476 y Fz(P)m(ac)m(king)h FD(The)30 b(standard)g(netCDF)i(pac)m(king)g
+(space.)150 3607 y Fu(P)m(ac)m(king)40 b(Algorithm)150
+3754 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 1585 y(ucar)10 b(.)e(edu)i(/)e(software)i(/)e(netcdf)
+(.unidata)q(.)150 3864 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 1695
+(ns)i(.)e(h)o(tml)p FD(\)\))37 b(pro)s(duces)150 3973
 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)150
-1805 y(the)f(space)g(to)g(store.)57 b(Lik)m(e)36 b(all)g(pac)m(king)h
+4083 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 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
-1914 y(\(usually\))26 b(as)h(t)m(yp)s(e)f Fy(NC_SHORT)e
+4193 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 2024 y(factor)i
+(the)i(v)-5 b(ariable,)28 b Fy(scale_)150 4302 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
-1991 y Ft(20)3549 2024 y FD(.)43 b(Let)150 2133 y Fz(min)30
+4269 y Ft(20)3549 4302 y FD(.)43 b(Let)150 4412 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 2358 y(scale)p
-1238 2358 28 4 v 41 w(factor)c(=)f(\(max)c FA(\000)f
-FD(min)o(\))p Fv(=)p FD(ndrv)1106 2492 y(add)p 1259 2492
+(um)g(v)-5 b(alues)31 b(of)f Fz(x)p FD(.)1046 4559 y(scale)p
+1238 4559 28 4 v 41 w(factor)c(=)f(\(max)c FA(\000)f
+FD(min)o(\))p Fv(=)p FD(ndrv)1106 4693 y(add)p 1259 4693
 V 40 w(o\013set)26 b(=)f(\(min)20 b(+)g(max\))p Fv(=)p
-FD(2)1364 2627 y(p)s(c)m(k)25 b(=)g(\(upk)20 b FA(\000)g
-FD(add)p 2073 2627 V 39 w(o\013set)q(\))p Fv(=)p FD(scale)p
-2588 2627 V 42 w(factor)1528 2822 y(=)1634 2761 y(ndrv)f
+FD(2)1364 4828 y(p)s(c)m(k)25 b(=)g(\(upk)20 b FA(\000)g
+FD(add)p 2073 4828 V 39 w(o\013set)q(\))p Fv(=)p FD(scale)p
+2588 4828 V 42 w(factor)1528 5023 y(=)1634 4962 y(ndrv)f
 FA(\002)h FD([upk)f FA(\000)h FD(\(min)g(+)g(max\))p
-Fv(=)p FD(2])p 1634 2801 1200 4 v 2018 2885 a(max)h FA(\000)e
-FD(min)150 3102 y(where)26 b Fz(ndrv)34 b FD(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 3211 y(The)31 b(theoretical)k(maxim)m(um)d(v)-5
+Fv(=)p FD(2])p 1634 5002 1200 4 v 2018 5086 a(max)h FA(\000)e
+FD(min)p 150 5154 V 166 5221 a Ft(20)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: 82 88
+TeXDict begin 82 87 bop 150 -116 a FD(82)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(where)c Fz(ndrv)34
+b FD(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 408 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
 (the)f(n)m(um)m(b)s(er)f(of)h(bits)g(used)f(to)h(store)150
-3321 y(the)24 b(pac)m(k)m(ed)h(v)-5 b(ariable.)39 b(Th)m(us)22
+518 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
-3431 y(then)g(there)g(are)h(at)f(most)h(2)1099 3398 y
-Ft(16)1195 3431 y FD(=)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 3540 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 3650 y(lea)m(v)m(es)26
+628 y(then)g(there)g(are)h(at)f(most)h(2)1099 595 y Ft(16)1195
+628 y FD(=)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
+737 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 847 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 3759 y(during)k(the)h(unpac)m(king)g(of)h(the)f(v)-5
+150 956 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 3869 y(often,)28 b(the)f(v)-5 b(ariable)27
+b(Less)150 1066 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
-3836 y Ft(8)2939 3869 y FA(\000)13 b FD(2)25 b(=)g(256)13
-b FA(\000)g FD(2)26 b(=)f(254,)150 3979 y(or)33 b(t)m(yp)s(e)g
+1033 y Ft(8)2939 1066 y FA(\000)13 b FD(2)25 b(=)g(256)13
+b FA(\000)g FD(2)26 b(=)f(254,)150 1176 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
-3946 y Ft(32)1783 3979 y FA(\000)22 b FD(2)30 b(=)f(4294967295)e
+1143 y Ft(32)1783 1176 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
-4088 y(feature)27 b(of)h(\(lossy\))g(netCDF)f(pac)m(king)h(algorithm)g
+1285 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
-4198 y(p)s(erform)h(w)m(ell)i(on)g(top)f(of)h(it.)150
-4422 y Fu(Unpac)m(king)41 b(Algorithm)150 4569 y Fz(Unpac)m(king)48
+1395 y(p)s(erform)h(w)m(ell)i(on)g(top)f(of)h(it.)150
+1593 y Fu(Unpac)m(king)41 b(Algorithm)150 1740 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
-4679 y(factor)26 b FD(and)g Fy(add_offset)p FD(.)37 b(If)27
+1849 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
 b(ariable,)29 b(the)f(data)g(are)f(m)m(ultiplied)150
-4788 y(b)m(y)34 b(the)g(v)-5 b(alue)35 b Fz(scale)p 871
-4788 28 4 v 41 w(factor)42 b FD(after)34 b(the)h(data)f(are)h(read.)52
+1959 y(b)m(y)34 b(the)g(v)-5 b(alue)35 b Fz(scale)p 871
+1959 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 4898 y(then)23 b(the)h Fz(add)p 653 4898
+b(ariable,)150 2068 y(then)23 b(the)h Fz(add)p 653 2068
 V 39 w(o\013set)i FD(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 5007 y FD(and)31 b Fy(add_offset)d
+Fy(scale_factor)150 2178 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 5007 V 41 w(factor)39
-b FD(b)s(efore)31 b(the)p 150 5154 1200 4 v 166 5221
-a Ft(20)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: 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)150 299 y(o\013set)31
-b Fz(add)p 543 299 28 4 v 40 w(o\013set)i FD(is)e(added.)1147
-443 y(upk)24 b(=)h(scale)p 1609 443 V 42 w(factor)c FA(\002)f
-FD(p)s(c)m(k)g(+)g(add)p 2389 443 V 39 w(o\013set)1321
-639 y(=)1427 577 y(p)s(c)m(k)h FA(\002)e FD(\(max)i FA(\000)f
-FD(min\))p 1427 618 753 4 v 1711 701 a(ndrv)2210 639
-y(+)2311 577 y(min)g(+)g(max)p 2311 618 432 4 v 2504
-701 a(2)150 836 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 945 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 1055 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
+(scaled)h(b)m(y)f Fz(scale)p 3047 2178 V 41 w(factor)39
+b FD(b)s(efore)31 b(the)150 2287 y(o\013set)g Fz(add)p
+543 2287 V 40 w(o\013set)i FD(is)e(added.)1147 2467 y(upk)24
+b(=)h(scale)p 1609 2467 V 42 w(factor)c FA(\002)f FD(p)s(c)m(k)g(+)g
+(add)p 2389 2467 V 39 w(o\013set)1321 2663 y(=)1427 2602
+y(p)s(c)m(k)h FA(\002)e FD(\(max)i FA(\000)f FD(min\))p
+1427 2642 753 4 v 1711 2725 a(ndrv)2210 2663 y(+)2311
+2602 y(min)g(+)g(max)p 2311 2642 432 4 v 2504 2725 a(2)150
+2896 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 3006 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 3115 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 1164 y(offset)g FD(and)i Fy(_FillValue)p
+Fy(add_)150 3225 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
 (yp)s(e)g(in)m(tended)g(for)g(the)h(unpac)m(k)m(ed)f(data,)150
-1274 y(i.e.,)g Fy(int)p FD(,)d Fy(float)g FD(or)i Fy(double)p
-FD(.)150 1464 y Fu(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)
-150 1611 y FD(Most)44 b(\014les)f(originally)h(written)f(in)g
+3334 y(i.e.,)g Fy(int)p FD(,)d Fy(float)g FD(or)i Fy(double)p
+FD(.)150 3532 y Fu(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)
+150 3679 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 1720 y(This)32 b(algorithm)i(is)f(incompatible)h(with)e
+(algorithm.)150 3789 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)150 1830 y(unpac)m(king)30 b(comp)s(onen)m(t)h(of)g(the)f
+(e.)49 b(The)150 3898 y(unpac)m(king)30 b(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 1940 y(HDF5/doc/UG/UG_frame10Da)o(tase)
-o(ts.h)o(tml)o FD(\)\))25 b(is)1172 2106 y(upk)f(=)h(scale)p
-1634 2106 28 4 v 42 w(factor)c FA(\002)f FD(\(p)s(c)m(k)g
-FA(\000)g FD(add)p 2449 2106 V 40 w(o\013set)q(\))150
-2273 y(Confusingly)-8 b(,)34 b(the)f(\(incompatible\))j(netCDF)e(and)e
+Fy(http://www.hdfgroup.org/)150 4008 y(HDF5/doc/UG/UG_frame10Da)o(tase)
+o(ts.h)o(tml)o FD(\)\))25 b(is)1172 4211 y(upk)f(=)h(scale)p
+1634 4211 28 4 v 42 w(factor)c FA(\002)f FD(\(p)s(c)m(k)g
+FA(\000)g FD(add)p 2449 4211 V 40 w(o\013set)q(\))150
+4413 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
-2383 y(in)k(attributes)i(with)e(the)h(same)g(names)f(\()p
+4523 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 2493 y(one)d(algorithm)h(should)f
+b(Data)40 b(pac)m(k)m(ed)g(with)150 4633 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 2602 y(answ)m(ers.)44
+(will)g(result)g(in)g(incorrect)150 4742 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
-2712 y(kno)m(w)42 b(the)g(details)g(of)g(the)g(pac)m(king)g(algorithm)h
+4852 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 2821 y(call)30 b(an)e Fz(in)m(terop)s(erabilit)m(y)38
+(\\bizness")150 4961 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 2931 y(systems.)275
-3090 y(As)21 b(describ)s(ed)f(b)s(elo)m(w,)k FC(NCO)d
+(erformed)e(on)i(heterogeneous)150 5071 y(systems.)275
+5230 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 3200 y(automatic)e(unpac)m(king)f(o)s(ccurs)
+(arithmetic.)39 b(This)150 5340 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 3310 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 3419 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
-3529 y(for)c(unpac)m(king)h(unless)f(explicitly)i(told)f(otherwise)g
+(other)e(users)f(with)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(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 408 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
+518 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 3638 y(switc)m(h.)38 b(Un)m(til)24
+Fy(--hdf_unpack)p FD('\))150 628 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 3748 y(it)i(m)m(ust)g
+(pac)m(king)i(metho)s(d)d(is)i(devised,)150 737 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 3857 y(of)k(the)f(netCDF)h(con)m(v)m(en)m(tion)i(to)e
-(unpac)m(k.)275 4017 y(If)25 b(y)m(our)h(data)h(originally)g(came)g
+(instead)150 847 y(of)k(the)f(netCDF)h(con)m(v)m(en)m(tion)i(to)e
+(unpac)m(k.)275 1007 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
-4126 y(with)37 b(the)h FC(HDF)g FD(con)m(v)m(en)m(tion)i(and)d(m)m(ust)
+1116 y(with)37 b(the)h FC(HDF)g FD(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 4236 y(mendation)d(is)f(to)i(only)e(request)h
+b(Our)36 b(recom-)150 1226 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 4346 y(encoun)m(tered)26
+b(Most)33 b(pac)m(k)m(ed)h(datasets)150 1335 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
 (v)m(en)m(tion.)42 b(Those)25 b(that)h(w)m(ere)g(not)g(will)f(hop)s(e-)
-150 4455 y(fully)36 b(pro)s(duce)f(noticeably)j(w)m(eird)e(v)-5
+150 1445 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 4565 y(after)31 b(panic)m(king,)h(treat)f(this)
+60 b(Before)37 b(or)150 1555 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 4674 y(See)34 b(Section)h(4.8)h
+Fy(--hdf_upk)p FD(')d(switc)m(h.)150 1664 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(186)h(for)e(an)g(easy)h(tec)m(h-)150 4784 y(nique)23
+f(189)h(for)e(an)g(easy)h(tec)m(h-)150 1774 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 4894 y(con)m(v)m(en)m(tion.)150 5083
+g(the)g(netCDF)150 1883 y(con)m(v)m(en)m(tion.)150 2083
 y Fu(Default)41 b(Handling)h(of)g(P)m(ac)m(k)m(ed)c(Data)150
-5230 y FD(All)23 b FC(NCO)g FD(arithmetic)h(op)s(erators)e(understand)f
+2230 y FD(All)23 b FC(NCO)g FD(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 5340 y(an)m(y)33 b(pac)m(k)m(ed)h(v)-5
+(unpac)m(k)150 2340 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,)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.4)j(User)d(Guide)150 299 y Fy(ncra)c 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 b(ariable)27 b(whic)m(h)f(con)m(tain)i(a)g(dimension)150
-408 y(to)j(b)s(e)f(a)m(v)m(eraged.)43 b(These)30 b(v)-5
+(arithmetically)j(pro)s(cessed.)48 b(F)-8 b(or)34 b(example,)150
+2449 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
+b(ariable)27 b(whic)m(h)f(con)m(tain)i(a)g(dimension)150
+2559 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 568 y(On)37 b(the)h(other)h(hand,)g(arithmetic)h(op)s
+(\014le.)275 2719 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 677 y(example,)33 b Fy(ncra)e
+b(ariables.)65 b(F)-8 b(or)150 2828 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 787 y(lac)m(king)27 b(an)e(a)m(v)m(eraged)i
+g(v)-5 b(ariables)150 2938 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
-897 y(from)c(the)i(input)e(to)h(the)g(output)g(\014le.)38
+3048 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 1006 y(pac)m(k)m(ed)31
+(ed)h(in)f(input)f(\014les)h(remain)150 3157 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
-1116 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(186\).)42
-b(P)m(ac)m(k)31 b(and)150 1225 y(unpac)m(k)26 b(individual)g(v)-5
+3267 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(189\).)42
+b(P)m(ac)m(k)31 b(and)150 3376 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 1335
+FD(and)h Fy(unpack\(\))f FD(functions)h(\(see)150 3486
 y(Section)31 b(4.1.11)i([Metho)s(ds)d(and)g(functions],)g(page)i
-(117\).)150 1559 y FB(3.32)68 b(Op)t(eration)46 b(T)l(yp)t(es)150
-1693 y Fk(\013)p 200 1693 3554 4 v 3553 w(\010)p 150
-2183 4 442 v 178 1829 a FD(Av)-5 b(ailabilit)m(y:)43
+(119\).)150 3719 y FB(3.32)68 b(Op)t(eration)46 b(T)l(yp)t(es)150
+3853 y Fk(\013)p 200 3853 3554 4 v 3553 w(\010)p 150
+4343 4 442 v 178 3989 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 1939 y FD(Short)g(options:)41 b(`)p Fy(-y)p
-FD(')178 2048 y(Long)31 b(options:)41 b(`)p Fy(--operation)p
-FD(',)28 b(`)p Fy(--op_typ)p FD(')p 3803 2183 V 150 2234
-a Fk(\012)p 200 2234 3554 4 v 3553 w(\011)150 2405 y
+Fy(ncwa)178 4099 y FD(Short)g(options:)41 b(`)p Fy(-y)p
+FD(')178 4208 y(Long)31 b(options:)41 b(`)p Fy(--operation)p
+FD(',)28 b(`)p Fy(--op_typ)p FD(')p 3803 4343 V 150 4394
+a Fk(\012)p 200 4394 3554 4 v 3553 w(\011)150 4565 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(di\013eren)m(t)h(t)m(yp)s(es)f(of)
-h(op)s(erations)f(Set)h Fz(op)p 3582 2405 28 4 v 40 w(t)m(yp)150
-2514 y FD(to)31 b(the)g(abbreviated)f(k)m(ey)i(for)e(the)g(corresp)s
-(onding)g(op)s(eration:)150 2694 y Fy(avg)336 b FD(Mean)31
-b(v)-5 b(alue)150 2846 y Fy(sqravg)192 b FD(Square)30
-b(of)g(the)h(mean)150 2997 y Fy(avgsqr)192 b FD(Mean)31
-b(of)g(sum)e(of)h(squares)150 3148 y Fy(max)336 b FD(Maximium)31
-b(v)-5 b(alue)150 3299 y Fy(min)336 b FD(Minimium)30
-b(v)-5 b(alue)150 3451 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 3602 y Fy(rmssdn)192
+h(op)s(erations)f(Set)h Fz(op)p 3582 4565 28 4 v 40 w(t)m(yp)150
+4675 y FD(to)31 b(the)g(abbreviated)f(k)m(ey)i(for)e(the)g(corresp)s
+(onding)g(op)s(eration:)150 4860 y Fy(avg)336 b FD(Mean)31
+b(v)-5 b(alue)150 5020 y Fy(sqravg)192 b FD(Square)30
+b(of)g(the)h(mean)150 5180 y Fy(avgsqr)192 b FD(Mean)31
+b(of)g(sum)e(of)h(squares)150 5340 y Fy(max)336 b FD(Maximium)31
+b(v)-5 b(alue)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.5)j(User)d(Guide)150 299 y Fy(min)336 b FD(Minimium)30
+b(v)-5 b(alue)150 466 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 634 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 3753 y Fy(sqrt)288 b FD(Square)30
-b(ro)s(ot)g(of)h(the)g(mean)150 3904 y Fy(ttl)336 b FD(Sum)29
-b(of)i(v)-5 b(alues)150 4085 y FC(NCO)44 b FD(assumes)f(co)s(ordinate)i
+Fz(N-1)7 b FD(\))150 802 y Fy(sqrt)288 b FD(Square)30
+b(ro)s(ot)g(of)h(the)g(mean)150 969 y Fy(ttl)336 b FD(Sum)29
+b(of)i(v)-5 b(alues)150 1162 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 4194 y(reduction)30 b(whic)m(h)f(mak)m
+82 b(The)43 b(only)h(rank-)150 1271 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
-4304 y(the)35 b(op)s(eration)h(t)m(yp)s(e)f(requested)g(with)g(`)p
+1381 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 4413 y(v)-5 b(ariables.)66
+b(not)e(on)g(co)s(ordinate)150 1490 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
-4523 y(from)30 b(one)g(dimension)f(to)i(a)g(scalar)g(or)f(from)f(one)i
+1600 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 4633 y(then)37 b FC(NCO)g Fo(always)k(aver)-5
+b(arra)m(y)-8 b(,)150 1710 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(regardless)f(of)h(the)f(arithmetic)h(op)s(eration)150
-4742 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 4902 y(The)20 b(mathematical)k(de\014nition)d(of)g
+1819 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 1983 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 5011 y([ncw)m(a)44 b(netCDF)f(W)-8
-b(eigh)m(ted)46 b(Av)m(erager],)i(page)c(202,)j(for)c(additional)h
-(information)g(on)f(masks)g(and)150 5121 y(normalization.)e(If)26
+b(See)21 b(Section)h(4.12)150 2092 y([ncw)m(a)44 b(netCDF)f(W)-8
+b(eigh)m(ted)46 b(Av)m(erager],)i(page)c(205,)j(for)c(additional)h
+(information)g(on)f(masks)g(and)150 2202 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
-5230 y(arithmetic)30 b(a)m(v)m(erage)h(b)m(y)e(default.)40
+2312 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 5340 y(op)s(erations)i(is)f
-(familiar.)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)275 299 y(The)29
-b(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 583 y(\026)-48 b Fv(x)1587 597 y Fg(j)1647 583 y
-FD(=)1753 457 y Ff(P)1841 477 y Fg(i)p Ft(=)p Fg(N)1841
-544 y(i)p Ft(=1)1993 521 y Fv(\026)2048 535 y Fg(i)2075
-521 y Fv(m)2155 535 y Fg(i)2183 521 y Fv(w)2248 535 y
-Fg(i)2276 521 y Fv(x)2328 535 y Fg(i)p 1753 562 603 4
-v 1793 591 a Ff(P)1880 611 y Fg(i)p Ft(=)p Fg(N)1880
-678 y(i)p Ft(=1)2033 655 y Fv(\026)2088 669 y Fg(i)2115
-655 y Fv(m)2195 669 y Fg(i)2223 655 y Fv(w)2288 669 y
-Fg(i)150 862 y FD(where)40 b(\026)-48 b Fv(x)472 876
-y Fg(j)544 862 y FD(is)37 b(the)g Fv(j)5 b FD('th)38
+(terminology)h(for)f(the)g(other)150 2421 y(op)s(erations)i(is)f
+(familiar.)275 2585 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 2868 y(\026)-48
+b Fv(x)1587 2882 y Fg(j)1647 2868 y FD(=)1753 2742 y
+Ff(P)1841 2763 y Fg(i)p Ft(=)p Fg(N)1841 2830 y(i)p Ft(=1)1993
+2807 y Fv(\026)2048 2821 y Fg(i)2075 2807 y Fv(m)2155
+2821 y Fg(i)2183 2807 y Fv(w)2248 2821 y Fg(i)2276 2807
+y Fv(x)2328 2821 y Fg(i)p 1753 2847 603 4 v 1793 2876
+a Ff(P)1880 2897 y Fg(i)p Ft(=)p Fg(N)1880 2963 y(i)p
+Ft(=1)2033 2941 y Fv(\026)2088 2955 y Fg(i)2115 2941
+y Fv(m)2195 2955 y Fg(i)2223 2941 y Fv(w)2288 2955 y
+Fg(i)150 3148 y FD(where)40 b(\026)-48 b Fv(x)472 3162
+y Fg(j)544 3148 y FD(is)37 b(the)g Fv(j)5 b FD('th)38
 b(elemen)m(t)h(of)e(the)h(output)e(h)m(yp)s(erslab,)j
-Fv(x)2416 876 y Fg(i)2480 862 y FD(is)f(the)f Fv(i)p
-FD('th)g(elemen)m(t)i(of)e(the)h(input)150 972 y(h)m(yp)s(erslab,)30
-b Fv(\026)643 986 y Fg(i)701 972 y FD(is)g(1)h(unless)f
-Fv(x)1189 986 y Fg(i)1247 972 y FD(equals)h(the)f(missing)h(v)-5
-b(alue,)31 b Fv(m)2344 986 y Fg(i)2402 972 y FD(is)f(1)h(unless)f
-Fv(x)2890 986 y Fg(i)2948 972 y FD(is)h(mask)m(ed,)g(and)f
-Fv(w)3631 986 y Fg(i)3689 972 y FD(is)150 1082 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
-1191 y(b)s(ells)d(and)g(whistles)h(are)g(all)g(explained)g(b)s(elo)m
+Fv(x)2416 3162 y Fg(i)2480 3148 y FD(is)f(the)f Fv(i)p
+FD('th)g(elemen)m(t)i(of)e(the)h(input)150 3257 y(h)m(yp)s(erslab,)30
+b Fv(\026)643 3271 y Fg(i)701 3257 y FD(is)g(1)h(unless)f
+Fv(x)1189 3271 y Fg(i)1247 3257 y FD(equals)h(the)f(missing)h(v)-5
+b(alue,)31 b Fv(m)2344 3271 y Fg(i)2402 3257 y FD(is)f(1)h(unless)f
+Fv(x)2890 3271 y Fg(i)2948 3257 y FD(is)h(mask)m(ed,)g(and)f
+Fv(w)3631 3271 y Fg(i)3689 3257 y FD(is)150 3367 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
+3476 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 1301 y Fv(\026)205 1315 y Fg(i)264
-1301 y FD(=)f Fv(m)447 1315 y Fg(i)507 1301 y FD(=)f
-Fv(w)674 1315 y Fg(i)734 1301 y FD(=)h(1,)k(the)e(generic)i(a)m(v)m
+(er,)h(that)e(when)150 3586 y Fv(\026)205 3600 y Fg(i)264
+3586 y FD(=)f Fv(m)447 3600 y Fg(i)507 3586 y FD(=)f
+Fv(w)674 3600 y Fg(i)734 3586 y FD(=)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 1410 y(a)m(v)m(erage.)72 b(F)-8 b(urthermore,)42
-b Fv(m)1184 1424 y Fg(i)1252 1410 y FD(=)f Fv(w)1429
-1424 y Fg(i)1497 1410 y FD(=)g(1)f(for)g(all)g(op)s(erators)g(except)h
+(arithmetic)150 3696 y(a)m(v)m(erage.)72 b(F)-8 b(urthermore,)42
+b Fv(m)1184 3710 y Fg(i)1252 3696 y FD(=)f Fv(w)1429
+3710 y Fg(i)1497 3696 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
-1520 y(included)i(in)h(the)g(discussion)g(b)s(elo)m(w)g(for)g
+3805 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 1629 y(op)s(erators.)275 1793 y(The)21 b(size)h Fv(J)31
+150 3915 y(op)s(erators.)275 4078 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
-1903 y(of)43 b(the)h(input)e(v)-5 b(ariable)44 b(whic)m(h)f(are)h(not)f
+4188 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 2012 y(con)m(tributing)k
-(to)g(eac)m(h)k(\026)-49 b Fv(x)1080 2026 y Fg(j)1161
-2012 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 2122 y(a)m(v)m(eraged)27
+b FD(of)43 b(the)h(input)e(h)m(yp)s(erslab)150 4297 y(con)m(tributing)k
+(to)g(eac)m(h)k(\026)-49 b Fv(x)1080 4311 y Fg(j)1161
+4297 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 4407 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
-2231 y(whic)m(h)36 b Fo(p)-5 b(otential)5 b(ly)46 b FD(con)m(tribute)36
+4517 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 2245 y Fg(i)3191 2231 y FD(con)m(tributes)f(to)150
-2341 y(the)31 b(output)f(elemen)m(t)h Fv(x)992 2355 y
-Fg(j)1058 2341 y FD(except)g(in)f(t)m(w)m(o)i(conditions:)199
-2505 y(1.)61 b Fv(x)382 2519 y Fg(i)434 2505 y FD(equals)26
+Fv(x)3127 4531 y Fg(i)3191 4517 y FD(con)m(tributes)f(to)150
+4626 y(the)31 b(output)f(elemen)m(t)h Fv(x)992 4640 y
+Fg(j)1058 4626 y FD(except)g(in)f(t)m(w)m(o)i(conditions:)199
+4790 y(1.)61 b Fv(x)382 4804 y Fg(i)434 4790 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(69\))g(for)f(the)g(v)-5
-b(ariable.)199 2643 y(2.)61 b Fv(x)382 2657 y Fg(i)438
-2643 y FD(is)29 b(lo)s(cated)h(at)f(a)g(p)s(oin)m(t)f(where)g(the)h
+([Missing)g(V)-8 b(alues],)27 b(page)f(70\))g(for)f(the)g(v)-5
+b(ariable.)199 4928 y(2.)61 b Fv(x)382 4942 y Fg(i)438
+4928 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
-2753 y(page)h(203\))h(is)f(false.)275 2945 y(P)m(oin)m(ts)c
-Fv(x)602 2959 y Fg(i)655 2945 y FD(in)f(either)h(of)f(these)h(t)m(w)m
+5038 y(page)h(206\))h(is)f(false.)275 5230 y(P)m(oin)m(ts)c
+Fv(x)602 5244 y Fg(i)655 5230 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
-2959 y Fg(j)2828 2945 y FD(|they)f(are)g(ignored.)40
-b(W)-8 b(e)150 3055 y(no)m(w)30 b(de\014ne)g(these)h(criteria)g(more)g
-(rigorously)-8 b(.)275 3219 y(Eac)m(h)45 b Fv(x)567 3233
-y Fg(i)640 3219 y FD(has)g(an)g(asso)s(ciated)i(Bo)s(olean)f(w)m(eigh)m
-(t)h Fv(\026)2128 3233 y Fg(i)2200 3219 y FD(whose)e(v)-5
-b(alue)46 b(is)f(0)h(or)f(1)g(\(false)h(or)g(true\).)150
-3328 y(The)38 b(v)-5 b(alue)40 b(of)f Fv(\026)756 3342
-y Fg(i)822 3328 y FD(is)g(1)h(\(true\))f(unless)g Fv(x)1608
-3342 y Fg(i)1674 3328 y FD(equals)g(the)h Fz(missing)e(v)-5
+5244 y Fg(j)2828 5230 y FD(|they)f(are)g(ignored.)40
+b(W)-8 b(e)150 5340 y(no)m(w)30 b(de\014ne)g(these)h(criteria)g(more)g
+(rigorously)-8 b(.)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)275 299 y(Eac)m(h)45
+b Fv(x)567 313 y Fg(i)640 299 y FD(has)g(an)g(asso)s(ciated)i(Bo)s
+(olean)f(w)m(eigh)m(t)h Fv(\026)2128 313 y Fg(i)2200
+299 y FD(whose)e(v)-5 b(alue)46 b(is)f(0)h(or)f(1)g(\(false)h(or)g
+(true\).)150 408 y(The)38 b(v)-5 b(alue)40 b(of)f Fv(\026)756
+422 y Fg(i)822 408 y FD(is)g(1)h(\(true\))f(unless)g
+Fv(x)1608 422 y Fg(i)1674 408 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
-3438 y(V)-8 b(alues],)31 b(page)f(69\))g(for)f(the)h(v)-5
+518 y(V)-8 b(alues],)31 b(page)f(70\))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
-3452 y Fg(i)3689 3438 y FD(is)150 3547 y(alw)m(a)m(ys)35
+532 y Fg(i)3689 518 y FD(is)150 628 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 3657 y(v)-5
-b(alues)31 b(analogously)-8 b(.)275 3820 y(Besides)36
+FD(,)f Fy(ncwa)p FD(\))g(treat)i(missing)150 737 y(v)-5
+b(alues)31 b(analogously)-8 b(.)275 897 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 3930 y(linear)c(op)s(erations)g(whic)m(h)f(ma)m(y)i(b)s(e)e
+(non-)150 1006 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 4040 y(T)m(yp)s(es],)h(page)f
-(82\).)50 b(The)33 b(other)g(rank-reducing)g(op)s(erations)g(are)g
+(Section)h(3.32)g([Op)s(eration)150 1116 y(T)m(yp)s(es],)h(page)f
+(83\).)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
-4149 y(w)m(eigh)m(ted)f(mean)e(describ)s(ed)f(ab)s(o)m(v)m(e.)42
+1225 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 4447 y(\026)-48 b Fv(x)1643
-4461 y Fg(j)1703 4447 y FD(=)1799 4341 y Fg(i)p Ft(=)p
-Fg(N)1805 4366 y Ff(X)1812 4543 y Fg(i)p Ft(=1)1947 4447
-y Fv(\026)2002 4461 y Fg(i)2030 4447 y Fv(m)2110 4461
-y Fg(i)2137 4447 y Fv(w)2202 4461 y Fg(i)2230 4447 y
-Fv(x)2282 4461 y Fg(i)150 4736 y FD(Note)26 b(that)f(the)f(total)i(is)f
+Fy(-y)g(ttl)p FD(\))g(is)1594 1507 y(\026)-48 b Fv(x)1643
+1521 y Fg(j)1703 1507 y FD(=)1799 1402 y Fg(i)p Ft(=)p
+Fg(N)1805 1427 y Ff(X)1812 1603 y Fg(i)p Ft(=1)1947 1507
+y Fv(\026)2002 1521 y Fg(i)2030 1507 y Fv(m)2110 1521
+y Fg(i)2137 1507 y Fv(w)2202 1521 y Fg(i)2230 1507 y
+Fv(x)2282 1521 y Fg(i)150 1780 y FD(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
-4845 y(in)45 b Fy(ncwa)e FD(b)m(y)i(using)f(the)h(`)p
+1890 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 4955 y(page)31
-b(202\).)275 5118 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 5340
-y(\026)-49 b Fv(x)1023 5354 y Fg(j)1084 5340 y FD(=)24
-b(min[)p Fv(\026)1411 5354 y Ft(1)1448 5340 y Fv(m)1528
-5354 y Ft(1)1565 5340 y Fv(w)1630 5354 y Ft(1)1668 5340
-y Fv(x)1720 5354 y Ft(1)1757 5340 y Fv(;)15 b(\026)1852
-5354 y Ft(2)1889 5340 y Fv(m)1969 5354 y Ft(2)2006 5340
-y Fv(w)2071 5354 y Ft(2)2109 5340 y Fv(x)2161 5354 y
-Ft(2)2198 5340 y Fv(;)g(:)g(:)g(:)h(;)f(\026)2454 5354
-y Fg(N)2518 5340 y Fv(m)2598 5354 y Fg(N)2660 5340 y
-Fv(w)2725 5354 y Fg(N)2788 5340 y Fv(x)2840 5354 y Fg(N)2903
-5340 y FD(])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.4)j(User)d(Guide)150 299 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 509 y(\026)-49 b Fv(x)1014
-523 y Fg(j)1075 509 y FD(=)25 b(max[)p Fv(\026)1420 523
-y Ft(1)1457 509 y Fv(m)1537 523 y Ft(1)1574 509 y Fv(w)1639
-523 y Ft(1)1676 509 y Fv(x)1728 523 y Ft(1)1766 509 y
-Fv(;)15 b(\026)1861 523 y Ft(2)1898 509 y Fv(m)1978 523
-y Ft(2)2015 509 y Fv(w)2080 523 y Ft(2)2118 509 y Fv(x)2170
-523 y Ft(2)2207 509 y Fv(;)g(:)g(:)g(:)h(;)f(\026)2463
-523 y Fg(N)2526 509 y Fv(m)2606 523 y Fg(N)2669 509 y
-Fv(w)2734 523 y Fg(N)2797 509 y Fv(x)2849 523 y Fg(N)2912
-509 y FD(])150 719 y(Th)m(us)29 b(the)i(minima)f(and)g(maxima)h(are)g
+(W)-8 b(eigh)m(ted)47 b(Av)m(erager],)150 2000 y(page)31
+b(205\).)275 2159 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 2365
+y(\026)-49 b Fv(x)1023 2379 y Fg(j)1084 2365 y FD(=)24
+b(min[)p Fv(\026)1411 2379 y Ft(1)1448 2365 y Fv(m)1528
+2379 y Ft(1)1565 2365 y Fv(w)1630 2379 y Ft(1)1668 2365
+y Fv(x)1720 2379 y Ft(1)1757 2365 y Fv(;)15 b(\026)1852
+2379 y Ft(2)1889 2365 y Fv(m)1969 2379 y Ft(2)2006 2365
+y Fv(w)2071 2379 y Ft(2)2109 2365 y Fv(x)2161 2379 y
+Ft(2)2198 2365 y Fv(;)g(:)g(:)g(:)h(;)f(\026)2454 2379
+y Fg(N)2518 2365 y Fv(m)2598 2379 y Fg(N)2660 2365 y
+Fv(w)2725 2379 y Fg(N)2788 2365 y Fv(x)2840 2379 y Fg(N)2903
+2365 y FD(])150 2571 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
+2777 y(\026)-49 b Fv(x)1014 2791 y Fg(j)1075 2777 y FD(=)25
+b(max[)p Fv(\026)1420 2791 y Ft(1)1457 2777 y Fv(m)1537
+2791 y Ft(1)1574 2777 y Fv(w)1639 2791 y Ft(1)1676 2777
+y Fv(x)1728 2791 y Ft(1)1766 2777 y Fv(;)15 b(\026)1861
+2791 y Ft(2)1898 2777 y Fv(m)1978 2791 y Ft(2)2015 2777
+y Fv(w)2080 2791 y Ft(2)2118 2777 y Fv(x)2170 2791 y
+Ft(2)2207 2777 y Fv(;)g(:)g(:)g(:)h(;)f(\026)2463 2791
+y Fg(N)2526 2777 y Fv(m)2606 2791 y Fg(N)2669 2777 y
+Fv(w)2734 2791 y Fg(N)2797 2777 y Fv(x)2849 2791 y Fg(N)2912
+2777 y FD(])150 2983 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
-879 y(The)e(square)i(of)f(the)h(mean)f(v)-5 b(alue)31
+3142 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
-1176 y(\026)-49 b Fv(x)1502 1190 y Fg(j)1563 1176 y FD(=)1659
-1032 y Ff( )1734 1050 y(P)1822 1071 y Fg(i)p Ft(=)p Fg(N)1822
-1137 y(i)p Ft(=1)1974 1114 y Fv(\026)2029 1128 y Fg(i)2057
-1114 y Fv(m)2137 1128 y Fg(i)2164 1114 y Fv(w)2229 1128
-y Fg(i)2257 1114 y Fv(x)2309 1128 y Fg(i)p 1734 1155
-603 4 v 1774 1184 a Ff(P)1862 1205 y Fg(i)p Ft(=)p Fg(N)1862
-1271 y(i)p Ft(=1)2014 1248 y Fv(\026)2069 1262 y Fg(i)2097
-1248 y Fv(m)2177 1262 y Fg(i)2204 1248 y Fv(w)2269 1262
-y Fg(i)2347 1032 y Ff(!)2412 1049 y Ft(2)150 1456 y FD(The)30
+3435 y(\026)-49 b Fv(x)1502 3449 y Fg(j)1563 3435 y FD(=)1659
+3291 y Ff( )1734 3309 y(P)1822 3330 y Fg(i)p Ft(=)p Fg(N)1822
+3396 y(i)p Ft(=1)1974 3373 y Fv(\026)2029 3387 y Fg(i)2057
+3373 y Fv(m)2137 3387 y Fg(i)2164 3373 y Fv(w)2229 3387
+y Fg(i)2257 3373 y Fv(x)2309 3387 y Fg(i)p 1734 3414
+603 4 v 1774 3443 a Ff(P)1862 3464 y Fg(i)p Ft(=)p Fg(N)1862
+3530 y(i)p Ft(=1)2014 3507 y Fv(\026)2069 3521 y Fg(i)2097
+3507 y Fv(m)2177 3521 y Fg(i)2204 3507 y Fv(w)2269 3521
+y Fg(i)2347 3291 y Ff(!)2412 3308 y Ft(2)150 3710 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 1733 y(\026)-48
-b Fv(x)1582 1747 y Fg(j)1642 1733 y FD(=)1748 1607 y
-Ff(P)1836 1628 y Fg(i)p Ft(=)p Fg(N)1836 1695 y(i)p Ft(=1)1988
-1672 y Fv(\026)2043 1686 y Fg(i)2071 1672 y Fv(m)2151
-1686 y Fg(i)2178 1672 y Fv(w)2243 1686 y Fg(i)2271 1672
-y Fv(x)2323 1639 y Ft(2)2323 1694 y Fg(i)p 1748 1712
-613 4 v 1793 1741 a Ff(P)1880 1762 y Fg(i)p Ft(=)p Fg(N)1880
-1828 y(i)p Ft(=1)2033 1806 y Fv(\026)2088 1820 y Fg(i)2115
-1806 y Fv(m)2195 1820 y Fg(i)2223 1806 y Fv(w)2288 1820
-y Fg(i)150 2006 y FD(If)21 b Fv(x)h FD(represen)m(ts)g(a)g(deviation)h
+FD(\()p Fy(-y)g(avgsqr)p FD(\))f(is)1533 3984 y(\026)-48
+b Fv(x)1582 3998 y Fg(j)1642 3984 y FD(=)1748 3858 y
+Ff(P)1836 3878 y Fg(i)p Ft(=)p Fg(N)1836 3945 y(i)p Ft(=1)1988
+3922 y Fv(\026)2043 3936 y Fg(i)2071 3922 y Fv(m)2151
+3936 y Fg(i)2178 3922 y Fv(w)2243 3936 y Fg(i)2271 3922
+y Fv(x)2323 3889 y Ft(2)2323 3945 y Fg(i)p 1748 3963
+613 4 v 1793 3992 a Ff(P)1880 4012 y Fg(i)p Ft(=)p Fg(N)1880
+4079 y(i)p Ft(=1)2033 4056 y Fv(\026)2088 4070 y Fg(i)2115
+4056 y Fv(m)2195 4070 y Fg(i)2223 4056 y Fv(w)2288 4070
+y Fg(i)150 4253 y FD(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 2020 y Fg(i)2653 2006 y FD(=)g Fv(y)2794
-2020 y Fg(i)2825 2006 y FA(\000)t FD(\026)-46 b Fv(y)24
-b FD(\(p)s(ossibly)d(created)i(b)m(y)150 2116 y Fy(ncbo)28
+b Fv(x)2601 4267 y Fg(i)2653 4253 y FD(=)g Fv(y)2794
+4267 y Fg(i)2825 4253 y FA(\000)t FD(\026)-46 b Fv(y)24
+b FD(\(p)s(ossibly)d(created)i(b)m(y)150 4362 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 2226 y Fv(y)s FD(.)39 b(Computing)24
+b(ariance)30 b(of)150 4472 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
 (subtracting)h(1)h(from)e(the)h(denominator,)i(discussed)150
-2335 y(b)s(elo)m(w.)41 b(F)-8 b(or)31 b(a)g(large)g(sample)g(size)g(ho)
+4581 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 2495 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 2813 y(\026)-48
-b Fv(x)1538 2827 y Fg(j)1598 2813 y FD(=)1694 2634 y
-Ff(v)1694 2681 y(u)1694 2731 y(u)1694 2780 y(t)p 1782
-2634 632 4 v 1792 2688 a(P)1880 2708 y Fg(i)p Ft(=)p
-Fg(N)1880 2775 y(i)p Ft(=1)2032 2752 y Fv(\026)2087 2766
-y Fg(i)2115 2752 y Fv(m)2195 2766 y Fg(i)2222 2752 y
-Fv(w)2287 2766 y Fg(i)2315 2752 y Fv(x)2367 2721 y Ft(2)2367
-2772 y Fg(i)p 1792 2792 613 4 v 1836 2821 a Ff(P)1924
-2842 y Fg(i)p Ft(=)p Fg(N)1924 2909 y(i)p Ft(=1)2077
-2886 y Fv(\026)2132 2900 y Fg(i)2159 2886 y Fv(m)2239
-2900 y Fg(i)2267 2886 y Fv(w)2332 2900 y Fg(i)150 3103
+(indistinguishable.)275 4741 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 5055 y(\026)-48
+b Fv(x)1538 5069 y Fg(j)1598 5055 y FD(=)1694 4876 y
+Ff(v)1694 4922 y(u)1694 4972 y(u)1694 5022 y(t)p 1782
+4876 632 4 v 1792 4929 a(P)1880 4950 y Fg(i)p Ft(=)p
+Fg(N)1880 5016 y(i)p Ft(=1)2032 4993 y Fv(\026)2087 5007
+y Fg(i)2115 4993 y Fv(m)2195 5007 y Fg(i)2222 4993 y
+Fv(w)2287 5007 y Fg(i)2315 4993 y Fv(x)2367 4962 y Ft(2)2367
+5014 y Fg(i)p 1792 5034 613 4 v 1836 5063 a Ff(P)1924
+5084 y Fg(i)p Ft(=)p Fg(N)1924 5150 y(i)p Ft(=1)2077
+5127 y Fv(\026)2132 5141 y Fg(i)2159 5127 y Fv(m)2239
+5141 y Fg(i)2267 5127 y Fv(w)2332 5141 y Fg(i)150 5340
 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 3262 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 3372 y(implemen)m(ted)f(as)f
+FD(.)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.5)j(User)d(Guide)275 299 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 408 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
-3482 y(ro)s(ot)31 b(mean)f(square)g(of)h Fv(x)f FD(except)h(one)g(is)f
+518 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
-3795 y(\026)-49 b Fv(x)1515 3809 y Fg(j)1576 3795 y FD(=)1672
-3616 y Ff(v)1672 3662 y(u)1672 3712 y(u)1672 3762 y(t)p
-1759 3616 678 4 v 1838 3669 a(P)1926 3690 y Fg(i)p Ft(=)p
-Fg(N)1926 3756 y(i)p Ft(=1)2078 3733 y Fv(\026)2133 3747
-y Fg(i)2161 3733 y Fv(m)2241 3747 y Fg(i)2268 3733 y
-Fv(x)2320 3702 y Ft(2)2320 3754 y Fg(i)p 1769 3774 658
-4 v 1769 3867 a FA(\000)p FD(1)21 b(+)1996 3803 y Ff(P)2084
-3824 y Fg(i)p Ft(=)p Fg(N)2084 3890 y(i)p Ft(=1)2237
-3867 y Fv(\026)2292 3881 y Fg(i)2319 3867 y Fv(m)2399
-3881 y Fg(i)150 4084 y FD(If)29 b Fv(x)h FD(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 4098 y Fg(i)2822 4084 y FD(=)25
-b Fv(y)2963 4098 y Fg(i)3009 4084 y FA(\000)c FD(\026)-47
-b Fv(y)s FD(,)30 b(then)g(applying)150 4194 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 4304 y(comp)s(ensates)45
+810 y(\026)-49 b Fv(x)1515 824 y Fg(j)1576 810 y FD(=)1672
+631 y Ff(v)1672 678 y(u)1672 727 y(u)1672 777 y(t)p 1759
+631 678 4 v 1838 684 a(P)1926 705 y Fg(i)p Ft(=)p Fg(N)1926
+772 y(i)p Ft(=1)2078 749 y Fv(\026)2133 763 y Fg(i)2161
+749 y Fv(m)2241 763 y Fg(i)2268 749 y Fv(x)2320 717 y
+Ft(2)2320 769 y Fg(i)p 1769 789 658 4 v 1769 883 a FA(\000)p
+FD(1)21 b(+)1996 818 y Ff(P)2084 839 y Fg(i)p Ft(=)p
+Fg(N)2084 905 y(i)p Ft(=1)2237 883 y Fv(\026)2292 897
+y Fg(i)2319 883 y Fv(m)2399 897 y Fg(i)150 1078 y FD(If)29
+b Fv(x)h FD(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 1092 y Fg(i)2822
+1078 y FD(=)25 b Fv(y)2963 1092 y Fg(i)3009 1078 y FA(\000)c
+FD(\026)-47 b Fv(y)s FD(,)30 b(then)g(applying)150 1188
+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 1298 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
-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
+1407 y(Consult)30 b(a)h(statistics)h(b)s(o)s(ok)e(for)g(more)g
+(details.)275 1567 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 4682 y(freedom.)59 b(W)-8 b(eigh)m(ting)39
+(degree)g(of)150 1676 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 4696 y Fg(i)3117 4682 y FD(and)f(subtracting)150
-4792 y(one)21 b(from)f(the)g(denominator)h(is)f(only)h(appropriate)f
+(b)m(y)f Fv(w)3053 1690 y Fg(i)3117 1676 y FD(and)f(subtracting)150
+1786 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 4902 y(are)38 b(arbitrary)e(\(e.g.,)41
+b(the)h(w)m(eigh)m(ts)150 1895 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 5011 y(do)s(es)28 b(not)g(necessarily)h
+(in)f(the)i(denominator)150 2005 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 5121
+b(when)f Fy(-y)i(rmssdn)e FD(is)h(requested)150 2115
 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 5230 y(whic)m(h)32
+b Fy(nces)37 b FD(and)g Fy(ncra)p FD(,)150 2224 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 5340 y(ask)m(ed.)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)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
-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
-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 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 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 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
+(when)150 2334 y(ask)m(ed.)275 2493 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 2603
+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 2712 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 2822 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 2931
+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 3041 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 3151
+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(\(used)27 b(b)m(y)g(Ubun)m(tu)g(13.04\))150 3260 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
+3370 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
+(\014xed)e(v)m(ersion)150 3479 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 1612 y(\026)-48 b Fv(x)1543 1626 y Fg(j)1603
-1612 y FD(=)1699 1432 y Ff(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 Ft(=)p Fg(N)1884 1573 y(i)p Ft(=1)2037
-1550 y Fv(\026)2092 1564 y Fg(i)2119 1550 y Fv(m)2199
-1564 y Fg(i)2227 1550 y Fv(w)2292 1564 y Fg(i)2319 1550
-y Fv(x)2371 1564 y Fg(i)p 1797 1591 603 4 v 1836 1620
-a Ff(P)1924 1640 y Fg(i)p Ft(=)p Fg(N)1924 1707 y(i)p
-Ft(=1)2077 1684 y Fv(\026)2132 1698 y Fg(i)2159 1684
-y Fv(m)2239 1698 y Fg(i)2267 1684 y Fv(w)2332 1698 y
-Fg(i)150 1909 y FD(The)37 b(de\014nitions)g(of)h(some)g(of)g(these)g
+FD(\))g(is)1494 3777 y(\026)-48 b Fv(x)1543 3791 y Fg(j)1603
+3777 y FD(=)1699 3597 y Ff(v)1699 3644 y(u)1699 3694
+y(u)1699 3744 y(t)p 1787 3597 623 4 v 1797 3651 a(P)1884
+3671 y Fg(i)p Ft(=)p Fg(N)1884 3738 y(i)p Ft(=1)2037
+3715 y Fv(\026)2092 3729 y Fg(i)2119 3715 y Fv(m)2199
+3729 y Fg(i)2227 3715 y Fv(w)2292 3729 y Fg(i)2319 3715
+y Fv(x)2371 3729 y Fg(i)p 1797 3756 603 4 v 1836 3785
+a Ff(P)1924 3805 y Fg(i)p Ft(=)p Fg(N)1924 3872 y(i)p
+Ft(=1)2077 3849 y Fv(\026)2132 3863 y Fg(i)2159 3849
+y Fv(m)2239 3863 y Fg(i)2267 3849 y Fv(w)2332 3863 y
+Fg(i)150 4045 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 2019 y(c)m(hosen)d(to)h(facilitate)h
+b(Mostly)39 b(they)e(w)m(ere)150 4154 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)150
-2128 y(op)s(en)20 b(to)h(rede\014ning)f(and)g(or)g(adding)h(to)g(the)g
+4264 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
+(ving)h(other)g(statistical)150 4374 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 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
+150 4483 y(and)c(Bug)g(Rep)s(orts],)h(page)g(13\).)150
+4643 y(EXAMPLES)150 4802 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 2782 y(series)35
+b FD(whic)m(h)30 b(con)m(tains)i(a)e(time)150 4912 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 2892
+(and)f(longitude.)53 b(Find)34 b(the)g(minimium)150 5021
 y(v)-5 b(alue)31 b(of)f Fy(prs_sfc)f FD(o)m(v)m(er)i(all)h(dimensions:)
-390 3054 y Fy(ncwa)47 b(-y)g(min)g(-v)g(prs_sfc)f(in.nc)g(foo.nc)150
-3216 y FD(Find)30 b(the)g(maxim)m(um)h(v)-5 b(alue)31
+390 5181 y Fy(ncwa)47 b(-y)g(min)g(-v)g(prs_sfc)f(in.nc)g(foo.nc)150
+5340 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 3379 y Fy(ncwa)47
+b(al)32 b(for)e(eac)m(h)h(latitude:)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)390 299 y Fy(ncwa)47
 b(-y)g(max)g(-v)g(prs_sfc)f(-a)h(lon)g(in.nc)f(foo.nc)150
-3541 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 3704 y Fy(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
-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 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 4195 y
+474 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 650 y Fy(ncra)47 b(-y)g(rms)g(-v)g(prs_sfc)f(in.nc)g
+(foo.nc)390 759 y(ncwa)h(-y)g(rms)g(-v)g(prs_sfc)f(-a)h(time)g(in.nc)f
+(foo.nc)150 934 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 1044 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 1154 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 4305 y(whereas)30 b Fy(ncwa)f FD(remo)m(v)m(es)j(the)f
+(useful\))150 1263 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 4467 y(These)g(op)s(erations)h(w)m(ork)f(as)g(exp)s(ected)h
+(en\).)150 1439 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 4577 y(in)h(m)m(ultiple)h
+b(that)j Fy(prs_sfc)e FD(is)h(stored)150 1548 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 4686 y(no)m(w)d(\014nd)f(the)i(three)f
+FD(.)41 b(W)-8 b(e)33 b(can)150 1658 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 4849 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 5011 y FD(It)24 b(is)h(p)s(ossible)f(to)h(use)f
+(t.)390 1833 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 2008 y FD(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 5121 y(deviation)29
+(v)-5 b(ariance)25 b(and)f(standard)150 2118 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
-5230 y(the)j(temp)s(oral)h(standard)e(deviation)j(of)e(the)h(surface)f
+2228 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 5340 y FD(in)m(v)m(olv)m(es)g(three)f(steps.)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.4)j(User)d(Guide)390 299 y Fy(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 FD(First)25 b(construct)g(the)g(temp)s(oral)h(mean)f(of)g
+Fy(in.nc)150 2337 y FD(in)m(v)m(olv)m(es)g(three)f(steps.)390
+2513 y Fy(ncwa)47 b(-O)g(-v)g(prs_sfc)f(-a)h(time)g(in.nc)f(out.nc)390
+2622 y(ncbo)h(-O)g(-v)g(prs_sfc)f(in.nc)g(out.nc)g(out.nc)390
+2732 y(ncra)h(-O)g(-y)g(rmssdn)f(out.nc)g(out.nc)275
+2907 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 788 y FD(with)d(the)g
+b(Next)26 b(o)m(v)m(erwrite)h Fy(out.nc)150 3017 y FD(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
-898 y(square)33 b(of)g(itself.)49 b(Note)35 b(the)e(use)f(of)i(`)p
+3126 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 1008
+FD('\))j(in)f(the)i(\014nal)e(step.)49 b(This)150 3236
 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 1117 y(time)31 b(samples.)40 b(The)30 b(pro)s(cedure)f(to)i
+(of)150 3345 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 1227 y(var)p FD(')g(instead)g(of)h(`)p
+(the)g(use)g(of)g(`)p Fy(-y)150 3455 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
-1387 y Fy(ncap2)e FD(can)j(also)g(compute)g(statistics)h(lik)m(e)g
+3630 y Fy(ncap2)e FD(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
-1497 y(of)g(form)m(ulae)g(is)f(one)h(option,)g(e.g.,)390
-1658 y Fy(ncap2)46 b(-s)i('prs_sfc_sdn=sqrt\(\(prs_)o(sfc)o(-prs)o
+3740 y(of)g(form)m(ulae)g(is)f(one)h(option,)g(e.g.,)390
+3915 y Fy(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 1767 y(in.nc)f(out.nc)275
-1928 y FD(The)27 b(op)s(eration)i(ma)m(y)-8 b(,)30 b(of)f(course,)g(b)s
+($tim)o(e.s)o(ize-)o(1\)\))o(')676 4025 y(in.nc)f(out.nc)275
+4200 y FD(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 Fy(ncap2)46 b(-s)i
+m(hiv)m(e)h(in)m(terme-)150 4310 y(diate)h(quan)m(tities,)h(suc)m(h)e
+(as)h(the)f(time-anomalies)390 4485 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 2308 y(-s)48 b('prs_sfc_sdn=sqrt\(\(prs_)o(sfc)o(_anm)o(^2\).)
+b(\\)676 4595 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
+b(\\)676 4704 y(in.nc)47 b(out.nc)275 4880 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 2688 y(T)m(yp)s(es],)30
-b(page)h(82\))h(whic)m(h)e(simplify)g(the)h(ab)s(o)m(v)m(e)g
-(expression)f(to)390 2849 y Fy(ncap2)46 b(-s)i
+(\(see)h(Section)f(3.32)i([Op)s(eration)150 4989 y(T)m(yp)s(es],)30
+b(page)h(83\))h(whic)m(h)e(simplify)g(the)h(ab)s(o)m(v)m(e)g
+(expression)f(to)390 5165 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 3009
+(sdn)o(\($ti)o(me\)')41 b(in.nc)46 b(out.nc)275 5340
 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 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
-3280 y FD(in)m(v)m(olv)m(es)k(three)f(steps.)390 3440
-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 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 FD(First)35
-b(the)h(appropriately)g(w)m(eigh)m(ted)h(\(with)e(`)p
+(quic)m(kly)h(and)f(concisely)-8 b(.)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.5)j(User)d(Guide)275 299 y(The)d(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 408 y FD(in)m(v)m(olv)m(es)k(three)f
+(steps.)390 572 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 682 y(ncbo)g(-O)g(-v)g(prs_sfc,gw)e
+(in.nc)h(out.nc)g(out.nc)390 791 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
+955 y FD(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 3930 y(output)i(\014le.)66
+b(are)g(written)g(to)g(the)150 1065 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 4040 y(When)40 b(using)f(w)m(eigh)m(ts)i(to)g(compute)
+b(gw)p FD('.)150 1174 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 4149 y(w)m(eigh)m(ts)f(in)e(the)h(initial)h(output)e
+(include)f(the)150 1284 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 4259 y(initial)33 b(output)f(\014le)f
+g(\014nal)f(step.)62 b(The)150 1394 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 4368 y(Finally)e(the)g
+(deviations)i(from)f(the)g(spatial)h(mean.)150 1503 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 4529 y(The)e
+(spatial)f(deviations)g(is)g(tak)m(en.)275 1667 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 4690 y Fy(ncap2)46
+(standard)d(deviation)h(problem)f(is)390 1831 y Fy(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 4799 y(in.nc)47 b(out.nc)275 4960 y FD(Be)27
+b(\\)676 1940 y(in.nc)47 b(out.nc)275 2104 y FD(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
-5070 y(the)j(standard)e(deviation.)275 5230 y(The)k(pro)s(cedure)g(to)i
+2214 y(the)j(standard)e(deviation.)275 2378 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 5340 y(in)m(v)m(olv)m(es)d(one)f(extra)g
+(m)m(ultiple)g(\014les)150 2487 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.)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)390 299 y Fy(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 FD(The)32 b(\014rst)g(step)h(assem)m(bles)h(all)g
+(collected)j(in)m(to)e(one)g(\014le.)390 2651 y Fy(ncrcat)46
+b(-O)h(-v)g(tpt)g(in.nc)g(in.nc)f(foo1.nc)390 2761 y(ncwa)h(-O)g(-a)g
+(time)g(foo1.nc)e(foo2.nc)390 2870 y(ncbo)i(-O)g(-v)g(tpt)g(foo1.nc)f
+(foo2.nc)g(foo3.nc)390 2980 y(ncra)h(-O)g(-y)g(rmssdn)f(foo3.nc)g
+(out.nc)275 3144 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 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
-Fy(ncbo)f FD(op)s(eration)i(in)e(the)i(third)e(step.)150
-1158 y FB(3.33)68 b(T)l(yp)t(e)45 b(Con)l(v)l(ersion)150
-1292 y Fk(\013)p 200 1292 3554 4 v 3553 w(\010)p 150
-2006 4 666 v 178 1433 a FD(Av)-5 b(ailabilit)m(y)33 b(\(automatic)g(t)m
+b(this)h(ma)m(y)h(consume)f(a)g(lot)150 3253 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 3499 y FB(3.33)68 b(T)l(yp)t(e)45 b(Con)l(v)l(ersion)150
+3633 y Fk(\013)p 200 3633 3554 4 v 3553 w(\010)p 150
+4347 4 666 v 178 3774 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 1543 y FD(Short)g(options:)41
-b(None)31 b(\(it's)g Fo(automatic)5 b FD(\))178 1652
+Fy(ncra)p FD(,)i Fy(ncwa)178 3883 y FD(Short)g(options:)41
+b(None)31 b(\(it's)g Fo(automatic)5 b FD(\))178 3993
 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 1762 y FD(Short)h(options:)41 b(None)178
-1871 y(Long)31 b(options:)41 b(`)p Fy(--dbl)p FD(',)29
+Fy(ncwa)178 4103 y FD(Short)h(options:)41 b(None)178
+4212 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 2006 V 150 2057 a Fk(\012)p
-200 2057 3554 4 v 3553 w(\011)275 2235 y FD(T)m(yp)s(e)39
+Fy(--rth_flt)p FD(')p 3803 4347 V 150 4398 a Fk(\012)p
+200 4398 3554 4 v 3553 w(\011)275 4573 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 2345
+(of)f(one)g(fundamen)m(tal)g(or)h(atomic)g(data)150 4682
 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 2454
+FD(\(eigh)m(t)k(b)m(ytes\).)52 b(T)m(yp)s(e)150 4792
 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 2564 y(can)44
+(v)-5 b(alues)30 b(a)g(v)-5 b(ariable)150 4902 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
-2673 y(according)30 b(to)f(an)g(in)m(ternal)g(set)h(of)f(rules)f
+5011 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 2783 y(t)m(yp)s(e)20
+b(In)28 b(con)m(trast,)j(man)m(ual)150 5121 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 2892 y(Most)28 b(t)m(yp)s(e)g(con)m(v)m(ersion)g
+b(or)f(attribute.)150 5230 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
-3002 y(con)m(v)m(ersion)k(is)e(adv)-5 b(an)m(tageous.)150
-3216 y Fu(3.33.1)63 b(Automatic)40 b(t)m(yp)s(e)h(con)m(v)m(ersion)150
-3363 y FD(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
+5340 y(con)m(v)m(ersion)k(is)e(adv)-5 b(an)m(tageous.)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)150 299 y Fu(3.33.1)63
+b(Automatic)40 b(t)m(yp)s(e)h(con)m(v)m(ersion)150 446
+y FD(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
-3472 y(siv)m(e)32 b(since)g(they)g(require)f(creating)h(\(temp)s
+555 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 3582 y(from)38 b(its)g(storage)h(t)m(yp)s(e)g(to)f
+(v)-5 b(ariable)150 665 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 3692 y(dataset's)31
+(it)e(bac)m(k.)65 b(Second,)40 b(a)150 775 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
-3801 y Fy(NC_DOUBLE)p FD(.)45 b(In)32 b(a)h(scien)m(ti\014c)h(framew)m
+884 y Fy(NC_DOUBLE)p FD(.)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 3911 y(than)e(the)g(observ)-5 b(ations)32
+(precision)150 994 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 4020 y(of)38 b(precision.)63
+(guaran)m(tees)i(6{9)f(digits)150 1103 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
-4130 y(out-of-range)25 b(limitations)g(of)f(less-precise)g(t)m(yp)s
+1213 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 4240 y FD(defaults)31 b(to)g(automatically)i
+b(Th)m(us)22 b FC(NCO)150 1323 y FD(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 4349 y(arithmetic,)j(y)m(et)f
+(when)g(p)s(erforming)f(length)m(y)150 1432 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 4516 y(Before)g(discussing)g(the)g
+(double-precision)g(\015oats.)275 1598 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 4625 y(tion.)69 b(W)-8
+(examine)i(in)m(teger)g(promo-)150 1708 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
-4735 y(problems,)27 b(and)g(what)g FC(NCO)g FD(do)s(es)f(ab)s(out)h
+1817 y(problems,)27 b(and)g(what)g FC(NCO)g FD(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 4845 y(con)m(v)m(ersion)35 b(of)f(single-)g(to)h
+g(implicit)150 1927 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 4954 y(of)j(these)h(situations)g(tak)m(es)g
+b(the)h(narro)m(wness)150 2036 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 5064 y(discussion.)275 5230
+(follo)m(wing)i(detailed)150 2146 y(discussion.)275 2312
 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 5340 y(a)m(v)m(erage)28
+FD(.)81 b(A)44 b(straigh)m(tforw)m(ard)150 2421 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)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.4)j(User)d(Guide)150 299 y(sum)i(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
-408 y(than)27 b(32,767)609 375 y Ft(21)681 408 y FD(.)40
+(termediate)h(v)-5 b(alue)26 b(whic)m(h)e(holds)h(their)150
+2531 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 2640
+y(than)27 b(32,767)609 2607 y Ft(21)681 2640 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
-518 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 628 y(F)-8 b(ortran,)32
+2750 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 2860 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
-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 Ft(22)372 847 y FD(:)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 1118 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(.)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)h(a)m(v)m(eraging,)j(summation,)d(or)g
-(an)m(y)h Fy(")p FD(hard)p Fy(")d FD(arithmetic)j(that)g(could)f(o)m(v)
-m(er\015o)m(w)h(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 Fy(-y)f(min)p FD(',)g(or)h(`)p Fy(-y)f(max)p
-FD('\).)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 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 1940 y(DOUBLE)22
-b FD(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 2049 y Fy(NC_FLOAT)31 b FD(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 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 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 2457 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 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
-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 2786 y(b)s(ecause)34 b(of)g(\(lac)m(k)i(of)7
+2969 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 3079 y(met)301 3046 y Ft(22)372
+3079 y FD(:)199 3245 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 3354 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(.)199 3495 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 3605 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
+3714 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 3824 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 3934 y(\(`)p Fy(-y)f(min)p
+FD(',)g(or)h(`)p Fy(-y)f(max)p FD('\).)199 4074 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
+4184 y(DOUBLE)22 b FD(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 4294 y Fy(NC_FLOAT)31 b FD(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 4403 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 4600 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 4710 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
+4820 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 4929 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)p 150 5051 1200 4 v 166 5118
+a Ft(21)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(22)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: 90 96
+TeXDict begin 90 95 bop 150 -116 a FD(90)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(b)s(ecause)k(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 2895 y(avg)p FD('\))20 b(of)h Fy(17000s)d FD(and)i
+Fy(-y)150 408 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 3005 y FD(mak)m(es)30 b(this)f(p)s(ossible)g(since)g(the)h
+FC(NCO)150 518 y FD(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 3115 y(i.e.,)k
+b(are)h(stored)f(as)g Fy(NC_DOUBLE)p FD(s,)150 628 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 3224 y(t)m(yp)s(e)i(con)m(v)m(ersion)i(feature)f(of)f
+b(the)150 737 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 3334 y(garbage)25
+(garbage)j(\(alb)s(eit)f(predictable)150 847 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
-3443 y(disk)29 b(is)h(garbage)h(\(actually)h Fy(-31536s)p
+956 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 3553 y(the)h(range)f(of)h(t)m(yp)s(e)f
-Fy(NC_SHORT)p FD(.)275 3715 y(After)20 b(arithmetic)i(is)f(computed)f
+(34000)i(is)e(outside)150 1066 y(the)h(range)f(of)h(t)m(yp)s(e)f
+Fy(NC_SHORT)p FD(.)275 1235 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 3824 y(double-precision)31
+b(the)c(in)m(termediate)150 1345 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
-3934 y Fy(NC_DOUBLE)39 b FD(to)j Fy(NC_SHORT)p FD(\).)71
+1454 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 4043 y(Prior)44 b(to)h(Octob)s(er,)
+(ys)h(in)f(its)g(history)-8 b(.)150 1564 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 4153
-y Fy(trunc\(\))486 4120 y Ft(23)554 4153 y FD(.)60 b(T)-8
+(the)g(C)30 b(library)44 b(truncate)h(function,)150 1674
+y Fy(trunc\(\))486 1641 y Ft(23)554 1674 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
 (teger)h(not)f(larger)h(in)e(absolute)i(v)-5 b(alue.)60
-b(F)-8 b(or)150 4263 y(example,)26 b(truncation)d(rounds)f
+b(F)-8 b(or)150 1783 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 4372 y(do)s(es)36 b(not)h(round)f(\015oating)h(p)s
+b(truncation)150 1893 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 4482
+b(Y)-8 b(et)38 b(truncation)f(is)g(ho)m(w)g(the)150 2002
 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 4643
+(real)h(n)m(um)m(b)s(ers)e(to)i(in)m(tegers.)275 2172
 y FC(NCO)k FD(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
-4753 y(us)32 b(that)h(this)f(caused)h(a)f(small)h(bias)g(in)f(the)h
+2281 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)p 150 4860 1200 4 v 166
-4928 a Ft(21)300 4960 y Fs(32767)23 b(=)f(2)633 4928
-y Ft(15)720 4960 y Fe(\000)17 b Fs(1)166 5031 y Ft(22)275
-5063 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 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 Ft(23)302 5253 y Fs(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 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: 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)150 299 y FC(NCO)33
-b FD(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 FC(NCO)41
-b FD(emplo)m(y)m(ed)i(the)150 692 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
-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 Fy(lround\(\))f
-FD(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 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(1s)150 1021 y FD(and)30
-b Fy(2s)p FD(,)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 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 1305 y(ing)33 b(functions,)g
-Fy(lrint\(\))p FD(.)46 b(This)33 b(algorithm)g(rounds)f
+FD(.)46 b(This)32 b(led)g(to)150 2391 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 2501 y(bias)d(in)g(the)h
+(pac)m(king)g(algorithm.)275 2670 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
+2779 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 2889 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 2999 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 3108 y FD(and)30 b Fy(3s)p FD(,)g(resp)s(ectiv)m(ely)
+-8 b(.)275 3277 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 3387 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 1414 y(rounding)i(direction.)58 b(Halfw)m(a)m(y)38
+(curren)m(t)150 3497 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,)150 1524 y(for)k(example,)k(b)s(oth)c
+b(This)35 b(rounds,)150 3606 y(for)k(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 1634 y(This)30 b(rounding)f(is)i(symmetric:)41
+FC(IEEE)p FD(.)150 3716 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 1743 y(hop)s(efully)e
+b(This)30 b(is)g(the)h(curren)m(t)g(and)150 3825 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 1917 y(Hence)h(b)s(ecause)g(of)g(automatic)i(con)m(v)
+FC(NCO)p FD(.)275 3995 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 2027 y(double-precision)23
+Fy(2s)f FD(and)g Fy(3s)g FD(in)150 4104 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 2137 y(result)34
+b(then)g(demotes)h(this)f(in)m(termediate)150 4214 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 2246
+Fy(2s)i FD(\(v)m(ersions)i(up)e(to)i(4.0.8\),)150 4323
 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
-2475 y Fu(3.33.2)63 b(Promoting)42 b(Single-precision)h(to)e(Double)150
-2622 y FD(Promotion)k(of)f(real)h(n)m(um)m(b)s(ers)d(from)i(single-)h
+4543 y Fu(3.33.2)63 b(Promoting)42 b(Single-precision)h(to)e(Double)150
+4689 y FD(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
-2732 y(computing.)j(When)33 b(it)g(should)f(o)s(ccur)h(dep)s(ends)e(on)
+4799 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
-2841 y(of)e(op)s(erations.)41 b(Single-precision)32 b(\(four-b)m(yte\))
+4909 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 2951 y(while)26 b(double-precision)g(con)m(tain)i
+(t)g(\014gures,)150 5018 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 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
-3027 y Ft(24)2829 3060 y FD(.)38 b(And)23 b(the)g FC(IEEE)f
-FD(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 3137 y Ft(25)3418 3170 y FD(.)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
-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 3673
-y(treatmen)m(t)32 b(of)f(real)g(n)m(um)m(b)s(ers:)199
-3847 y(1.)61 b(Conserv)-5 b(ativ)m(e,)30 b(ak)-5 b(a)29
+b(,)28 b(the)e FC(IEEE)f FD(single-precision)p 150 5154
+1200 4 v 166 5221 a Ft(23)302 5253 y Fs(The)j(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: 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)150 299 y(represen)m(tation)24
+b(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 266 y Ft(24)2829 299 y FD(.)38
+b(And)23 b(the)g FC(IEEE)f FD(double-)150 408 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
+375 y Ft(25)3418 408 y FD(.)67 b(Hence)150 518 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 628 y(n)m(um)m(b)s(ers.)275
+802 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 911 y(treatmen)m(t)32 b(of)f(real)g(n)m(um)m(b)s(ers:)199
+1086 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 3957
+(con)m(v)m(ersion)h(during)e(arithmetic)i(in)330 1195
 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 4066 y(an)44 b(op)s(eration)h(are)g(con)m(v)m
+b(op)s(erands)d(in)330 1305 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 4176 y(the)i(arithmetic)h(op)s
+(the)f(op)s(eration)f(b)s(efore)330 1414 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 4285 y(are)31
+(single-precision)g(n)m(um)m(b)s(ers)330 1524 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)p
-150 4440 1200 4 v 166 4508 a Ft(24)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)c(is)g(con)n(v)n(erted)f(to)g(IEEE)h(754)h
-(single-precision)g(and)e(then)g(con)n(v)n(erted)g(bac)n(k)g(to)g(the)g
-(same)i(n)n(um)n(b)r(er)d(of)i(signi\014can)n(t)275 4714
-y(decimal,)24 b(then)f(the)f(\014nal)h(string)h(should)e(matc)n(h)h
-(the)g(original;)j(and)c(if)i(an)f(IEEE)g(754)h(single-precision)h(is)f
-(con)n(v)n(erted)275 4801 y(to)j(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(25)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)i(is)f(con)n(v)n(erted)g(to)g(IEEE)h(754)h
-(double-precision)e(represen)n(tation)h(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)i(n)n(um)n(b)r
-(er)d(of)j(signi\014can)n(t)f(digits,)i(then)d(the)h(\014nal)f(string)i
-(should)e(matc)n(h)h(the)g(original;)j(and)c(if)i(an)f(IEEE)g(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: 90 96
-TeXDict begin 90 95 bop 150 -116 a FD(90)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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 FC(NCO)41 b FD(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 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 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 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 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
-1089 y(and)d FC(NCL)g FD(all)h(adopt)g(the)g(C)f(Con)m(v)m(en)m(tion)q
-(.)275 1271 y FC(NCO)i FD(do)s(es)g(not)g(automatically)k(promote)d
+b(Expressions)30 b(in)m(v)m(olving)i(mixed)e(precision)h(t)m(yp)s(es)
+330 1633 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 1743 y(Con)m(v)m(en)m(tion)32 b(for)e(promotion.)199
+1892 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 2002 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 2111 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 2221 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 2331 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 2440 y(and)d
+FC(NCL)g FD(all)h(adopt)g(the)g(C)f(Con)m(v)m(en)m(tion)q(.)275
+2654 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 1381 y(mance)i(p)s(enalt)m(y)f(of)g(alw)m(a)m(ys)i(doing)e
+(erfor-)150 2764 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)150 1491 y(text)f(\\Numerical)
+(ene\014ts.)51 b(The)33 b(no)m(w-classic)150 2873 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 Ft(26)1003 1600 y FD(.)41 b(That)30
+(section)g(\\Implicit)g(Con)m(v)m(ersion)150 2983 y(of)f(Float)h(to)f
+(Double")932 2950 y Ft(26)1003 2983 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 1760 y(F)-8 b(or)28 b(example,)h(rounding)d(errors)
+(circumstances.)275 3157 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
+(arithmetic)i(p)s(er-)150 3266 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
+(often)g(in)g(geoscien)m(ti\014c)150 3376 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
+(tribute)g(to)h(a)f(single)g(a)m(v-)150 3486 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 2198 y(in)m(termediate)28 b(results)e(where)g(running)f(sums)
+b(the)150 3595 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 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 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
-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 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 2905 y(seen)40 b(in)g(the)h(computation)g
+(h)f(round-)150 3705 y(ing)31 b(or)f(from)g(under\015o)m(w)f(unless)g
+(computed)i(in)f(double-precision.)p 150 3859 1200 4
+v 166 3927 a Ft(24)275 3959 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
+4046 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
+4133 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 4220 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 4307 y(n)n(um)n(b)r(er)d(m)n(ust)h(matc)n(h)h(the)f
+(original".)166 4379 y Ft(25)275 4410 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 4498 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 4585 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 4672 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
+4759 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".)166 4830 y Ft(26)275
+4862 y Fs(See)g(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 5014 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 5101 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
+5188 y(e\016cien)n(t)26 b(n)n(umerical)g(programs.)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.5)j(User)d(Guide)275 299 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 408 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 518 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
+628 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 737 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 3015
+(t)g(metho)s(ds.)69 b(The)40 b FC(NCO)g FD(test)150 847
 y(\014le)f Fy(in.nc)f FD(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 3124 y(timeseries)30 b(as)g Fy(tpt_flt)d
+(erature)150 956 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 3234
+e(in)g(this)g(timeseries)i(represen)m(ts)e(a)150 1066
 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 3344 y(Jan)m(uary)40 b(temp)s(erature)h(b)m
+(ear)g(ensem)m(ble-mean)150 1176 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 3453 y(datap)s(oin)m(ts)e(represen)m
+(then)h(a)m(v)m(eraging)i(the)150 1285 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 3563 y(ensem)m(ble)g(Jan)m(uary)f(a)m(v)m(erage)j(in)d(t)m(w)m(o)i
+150 1395 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 3672 y(metho)s(d)34 b(is)h(naturally)g
+(a)m(v)m(erages.)70 b(This)150 1504 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 3782 y(\014les)j(are)g
-(needed)774 3749 y Ft(27)844 3782 y FD(.)66 b(In)38 b(Metho)s(d)31
+(y)m(ears)f(and)f(m)m(ultiple)i(input)150 1614 y(\014les)j(are)g
+(needed)774 1581 y Ft(27)844 1614 y FD(.)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 3892 y(step,)31 b(b)m(y)f(a)m(v)m
+(v)m(erage)k(in)c(a)h(single)150 1724 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
-4051 y Fy(#)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
+1907 y Fy(#)47 b(tpt_flt)f(and)h(tpt_dbl)f(are)h(identical)e(except)h
+(for)h(precision)390 2016 y(ncks)g(--cdl)f(-C)h(-v)g(tpt_flt,tpt_dbl)d
+(~/nco/data/in.nc)390 2126 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
-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
+2236 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 2345 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 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 Ft(26)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(27)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: 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)390 299 y Fy(#)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
+(temperature)e(data)390 2455 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
+2564 y(#)h(Average)f(1st)h(five)g("Januaries")e(\(elements)g(1,)i(11,)g
+(21,)g(31,)g(41\))390 2674 y(ncra)g(--flt)f(-O)h(-F)g(-d)h(time,1,,10)d
+(~/foo.nc)g(~/foo_avg1.nc)390 2784 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
+2893 y(ncra)g(--flt)f(-O)h(-F)g(-d)h(time,2,,10)d(~/foo.nc)g
+(~/foo_avg2.nc)390 3003 y(#)i(Average)f(3rd)h(five)g("Januaries")e
+(\(elements)g(3,)i(13,)g(23,)g(33,)g(43\))390 3112 y(ncra)g(--flt)f(-O)
+h(-F)g(-d)h(time,3,,10)d(~/foo.nc)g(~/foo_avg3.nc)390
+3222 y(#)i(Method)g(1:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
+(averaging)e(the)i(averages)390 3332 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
+3441 y(#)j(Method)g(2:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
+(averaging)e(the)i(raw)g(data)390 3551 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
+3660 y(ncra)i(--flt)f(-O)h(-F)g(-d)h(time,1,,10,3)c(~/foo.nc)i
+(~/foo_avg_mth2.nc)390 3770 y(#)h(Difference)e(the)i(two)g(methods)390
+3880 y(ncbo)g(-O)g(~/foo_avg_mth1.nc)c(~/foo_avg_mth2.nc)g
+(~/foo_avg_dff.nc)390 3989 y(ncks)k(--cdl)f(~/foo_avg_dff.nc)390
+4099 y(#)h(tpt_dbl)f(=)i(5.6843418860808e-14)42 b(;)390
+4208 y(#)47 b(tpt_flt)f(=)i(-3.051758e-05)c(;)275 4392
 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 2235 y(answ)m(ers)j(due)g(to)h(the)g(di\013eren)m
+(di\013eren)m(t)150 4501 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
+4611 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
+b(In)150 4720 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
+(negligibly)i(to)150 4830 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 2673 y(flt)p
+(precision)f(\015oats)h(\()p Fy(tpt_)150 4940 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 2783 y(determines)30 b(the)h(answ)m(er)f
-(precision.)275 2966 y(IEEE)e(arithmetic)i(guaran)m(tees)h(that)e(t)m
-(w)m(o)h(metho)s(ds)f(will)g(pro)s(duce)f(bit-for-bit)h(iden)m(tical)i
-(answ)m(ers)150 3075 y(only)i(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
-Fy(--dbl)p FD(')e(\(or)i(`)p Fy(--rth_dbl)p FD(')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(input)f(precision)150 5049 y(determines)30 b(the)h(answ)m(er)f
+(precision.)p 150 5241 1200 4 v 166 5308 a Ft(27)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: 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)275 299 y FC(IEEE)29
+b 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
+408 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 518 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
+628 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 737 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 847 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
-3623 y Fy(273.1000000000000d)p FD(.)42 b(Arithmetic)34
+956 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 3733 y(\014nal)d(answ)m(er,)h(whic)m(h)f(is)g(con)m(v)m
+m(til)g(the)150 1066 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
-3915 y Fy(#)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
+1258 y Fy(#)47 b(Average)f(1st)h(five)g("Januaries")e(\(elements)g(1,)i
+(11,)g(21,)g(31,)g(41\))390 1367 y(ncra)g(--dbl)f(-O)h(-F)g(-d)h
+(time,1,,10)d(~/foo.nc)g(~/foo_avg1.nc)390 1477 y(#)i(Average)f(2nd)h
 (five)g("Januaries")e(\(elements)g(2,)i(12,)g(22,)g(32,)g(42\))390
-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)
+1587 y(ncra)g(--dbl)f(-O)h(-F)g(-d)h(time,2,,10)d(~/foo.nc)g
+(~/foo_avg2.nc)390 1696 y(#)i(Average)f(3rd)h(five)g("Januaries")e
+(\(elements)g(3,)i(13,)g(23,)g(33,)g(43\))390 1806 y(ncra)g(--dbl)f(-O)
 h(-F)g(-d)h(time,3,,10)d(~/foo.nc)g(~/foo_avg3.nc)390
-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
+1915 y(#)i(Method)g(1:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
+(averaging)e(the)i(averages)390 2025 y(ncra)g(--dbl)f(-O)h
 (~/foo_avg1.nc)d(~/foo_avg2.nc)h(~/foo_avg3.nc)f(~/foo_avg_mth1.nc)390
-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
+2134 y(#)j(Method)g(2:)g(Obtain)f(ensemble)f(January)h(average)g(by)h
+(averaging)e(the)i(raw)g(data)390 2244 y(#)g(Employ)g(ncra's)f
 ("subcycle")f(feature)g(\(http://nco.sf.net/nco.htm)o(l#ss)o(c\))390
-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: 92 98
-TeXDict begin 92 97 bop 150 -116 a FD(92)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(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 FD(The)30
-b(`)p Fy(--dbl)p FD(')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
-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 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
-Fy(--dbl)p FD(')150 1019 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
-1129 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(eeping)h(single-precision)
-g(arithmetic)g(in)f(single-)150 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(As)26 b(has)h(b)s(een)f(seen,)i(forced)f(promotion)g
-(of)h(single-)f(to)h(double-precision)f(prior)f(to)i(arithmetic)g(has)
-150 1520 y(adv)-5 b(an)m(tages)42 b(and)e(disadv)-5 b(an)m(tages.)71
+2354 y(ncra)i(--dbl)f(-O)h(-F)g(-d)h(time,1,,10,3)c(~/foo.nc)i
+(~/foo_avg_mth2.nc)390 2463 y(#)h(Difference)e(the)i(two)g(methods)390
+2573 y(ncbo)g(-O)g(~/foo_avg_mth1.nc)c(~/foo_avg_mth2.nc)g
+(~/foo_avg_dff.nc)390 2682 y(#)k(Show)g(differences)390
+2792 y(ncks)g(--cdl)f(~/foo_avg_dff.nc)390 2902 y(#)h(tpt_dbl)f(=)i
+(5.6843418860808e-14)42 b(;)390 3011 y(#)47 b(tpt_flt)f(=)i(0)f(;)275
+3203 y FD(The)30 b(`)p Fy(--dbl)p FD(')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 3313 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 3422 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 3532
+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 3641 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
+(eeping)h(single-precision)g(arithmetic)g(in)f(single-)150
+3751 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 3943 y(As)26
+b(has)h(b)s(een)f(seen,)i(forced)f(promotion)g(of)h(single-)f(to)h
+(double-precision)f(prior)f(to)i(arithmetic)g(has)150
+4052 y(adv)-5 b(an)m(tages)42 b(and)e(disadv)-5 b(an)m(tages.)71
 b(The)40 b(primary)f(disadv)-5 b(an)m(tages)42 b(are)e(sp)s(eed)g(and)f
-(size.)71 b(Double-)150 1630 y(precision)49 b(arithmetic)h(is)f
+(size.)71 b(Double-)150 4162 y(precision)49 b(arithmetic)h(is)f
 (10{60\045)i(slo)m(w)m(er)f(than,)k(and)48 b(requires)h(t)m(wice)h(the)
-f(memory)g(of)g(single-)150 1739 y(precision)39 b(arithmetic.)68
+f(memory)g(of)g(single-)150 4271 y(precision)39 b(arithmetic.)68
 b(The)38 b(primary)h(adv)-5 b(an)m(tage)40 b(is)f(that)h(rounding)e
-(errors)g(in)h(double-precision)150 1849 y(are)31 b(m)m(uc)m(h)g(less)h
+(errors)g(in)h(double-precision)150 4381 y(are)31 b(m)m(uc)m(h)g(less)h
 (lik)m(ely)g(to)g(accum)m(ulate)h(to)e(v)-5 b(alues)32
 b(near)e(the)i(precision)f(of)g(the)g(underlying)f(geoph)m(ysi-)150
-1958 y(cal)h(v)-5 b(ariable.)275 2131 y(F)d(or)31 b(example,)i(if)e(w)m
+4491 y(cal)h(v)-5 b(ariable.)275 4682 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 2240
+(digits,)h(then)d(a)i(rounding)e(error)h(of)150 4792
 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
-2350 y(sided)c(rounding)f(errors)h(under)f(the)h(w)m(orst)h(p)s
+4902 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 2459 y(of-thousands)e(to)h(millions)g(of)g(p)s(oin)m
+m(e)i(tens-)150 5011 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 2569 y(an)40 b(a)m(v)m(erage.)74 b(It)41
+(to)g(compute)150 5121 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 2679 y(the)c(precision)g(in)g(suc)m
+(accum)m(ulate)i(and)d(degrade)150 5230 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 2788 y(`)p Fy(--dbl)p FD(')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 3070
-y(with)23 b Fy(ncwa)p FD(.)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 3180 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 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
-3399 y(a)j(t)m(ypical)g(GCM)g(resolution)f(these)h(da)m(ys.)40
+(this)d(problem,)h(so)150 5340 y(`)p Fy(--dbl)p FD(')29
+b(w)m(ould)i(b)s(e)e(w)m(arran)m(ted.)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.5)j(User)d(Guide)275 299 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 408 y(with)23 b Fy(ncwa)p
+FD(.)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 518 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
+628 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
+737 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 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 3618 y(dataset)g(of)f
+(to)h(sho)m(w)150 847 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 956 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 3727
+(on)g(a)g(spherical)g(grid)f(where)h(global)150 1066
 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 3837 y(the)38 b(Gaussian)h(w)m(eigh)m(t)g
+(eigh)m(t)h(\(i.e.,)150 1176 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 3947
-y(\(stored)31 b(in)f Fy(area)p FD(\).)275 4119 y(Lik)m(e)51
+f(eac)m(h)h(con)m(tributing)g(gridp)s(oin)m(t)150 1285
+y(\(stored)31 b(in)f Fy(area)p FD(\).)275 1459 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
-4228 y(precision)60 b(y)m(et)g(stores)g(its)g(arc)m(hiv)-5
+1568 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 4338 y(tice)54 b(suc)m(h)e(mo)s(dels)g(usually)g
+b(In)59 b(prac-)150 1678 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 4448 y Fy(TREFHT\(lat,lon\))19
+(\014elds)d(\(lik)m(e)150 1788 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 4557 y(co)s(ordinates)31
+d(sa)m(ving)h(all)g(one-dimensional)150 1897 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 4667 y(double-precision)25
+b(T)-8 b(o)30 b(obtain)h(pure)150 2007 y(double-precision)25
 b(arithmetic)i Fo(and)36 b FD(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
-4776 y(store)k(double-precision)f(v)m(ersions)h(of)g(the)f
-(single-precision)i(\014elds:)390 4949 y Fy(ncap2)46
+2116 y(store)k(double-precision)f(v)m(ersions)h(of)g(the)f
+(single-precision)i(\014elds:)390 2290 y Fy(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 5121 y
+(uble)o(\(ar)o(ea\)')41 b(in.nc)46 b(in.nc)275 2464 y
 FD(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
-5230 y(p)s(erm)m(utations)h(for)h(the)g(precision)f(of)h(the)g(w)m
+2573 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 5340 y(tion:)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)199 299 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 432 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 564
+(ta-)150 2683 y(tion:)199 2857 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 3006 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 3154
 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 697 y(4.)61
+FD(\),)e(double-precision)h(arithmetic)199 3303 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 856 y Fy(#)47 b(NB:)g(Values)f
+(double-precision)f(arithmetic)390 3477 y Fy(#)47 b(NB:)g(Values)f
 (below)h(are)g(printed)f(with)g(C-format)g(\0455.6f)g(using)390
-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)
+3587 y(#)h(ncks)g(-H)g(-C)g(-s)h('\0455.6f')d(-v)j(TREFHT,TREFHT_dbl)43
+b(out.nc)390 3696 y(#)k(Single-precision)d(weight)i(\(area\),)g
+(single-precision)d(arithmetic)390 3806 y(ncwa)k(--flt)f(-O)h(-a)g
+(lat,lon)f(-w)h(area)g(in.nc)f(out.nc)390 3915 y(#)h(TREFHT)237
+b(=)48 b(289.246735)390 4025 y(#)f(TREFHT_dbl)e(=)j(289.239964)390
+4134 y(#)f(Double-precision)d(weight)i(\(gw\),)142 b(single-precision)
+43 b(arithmetic)390 4244 y(ncwa)k(--flt)f(-O)h(-a)g(lat,lon)f(-w)h(gw)
+143 b(in.nc)46 b(out.nc)390 4354 y(#)h(TREFHT)237 b(=)48
+b(289.226135)390 4463 y(#)f(TREFHT_dbl)e(=)j(289.239964)390
+4573 y(#)f(Single-precision)d(weight)i(\(area\),)g(double-precision)d
+(arithmetic)390 4682 y(ncwa)k(--dbl)f(-O)h(-a)g(lat,lon)f(-w)h(area)g
+(in.nc)f(out.nc)390 4792 y(#)h(TREFHT)237 b(=)48 b(289.239960)390
+4902 y(#)f(TREFHT_dbl)e(=)j(289.239964)390 5011 y(#)f(Double-precision)
 d(weight)i(\(gw\),)142 b(double-precision)43 b(arithmetic)390
-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 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 2988 y FD(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
-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 3207
-y(is)j(redundan)m(t)g(for)g(double-precision)g(inputs.)275
-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 Fy(TREFHT)150
-3476 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 3586 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 3696 y(These)26
+5121 y(ncwa)k(--dbl)f(-O)h(-a)g(lat,lon)f(-w)h(gw)143
+b(in.nc)46 b(out.nc)390 5230 y(#)h(TREFHT)237 b(=)48
+b(289.239960)390 5340 y(#)f(TREFHT_dbl)e(=)j(289.239964)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(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
+408 y FD(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 518 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 628 y(is)j(redundan)m(t)g(for)g(double-precision)g
+(inputs.)275 787 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 897 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 1006 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 1116 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 3805 y(that)f(climate)h(scien)m(tists)g(are)e(concerned)
+b(Giv)m(en)150 1225 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 3915 y(degree)32 b(or)f(less,)h(this)f
+b(of)g(a)f(ten)m(th)h(of)g(a)150 1335 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 4024 y(scien)m(tists)h(are)e
+(mean)e(temp)s(erature)g(c)m(hanges)150 1445 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
-4134 y(a)m(v)m(eraging)j(pro)s(cedure.)275 4293 y(Wh)m(y)39
+1554 y(a)m(v)m(eraging)j(pro)s(cedure.)275 1714 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
-4403 y(result)33 b(of)g(m)m(ultiplying)g(almost)h(15,000)h(elemen)m(ts)
+1823 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 4513 y(dividing)g(b)m(y)g(the)h(summed)e(w)m(eigh)m(ts.)48
+(then)150 1933 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 4622 y(tions)c(caused)g(the)h(loss)f(of)g(t)m
+(oin)m(t)g(op)s(era-)150 2042 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 4732 y(of)g(indep)s(enden)
+b(The)28 b(net)h(error)g(of)g(a)h(series)150 2152 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
-4699 y Ft(28)2638 4732 y FD(.)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
+2119 y Ft(28)2638 2152 y FD(.)41 b(Successiv)m(e)30 b(rounding)e
+(errors)150 2262 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 4951 y(ha)m(v)m(e)h(no)f(net)h(bias.)
+(will,)f(on)f(a)m(v)m(erage,)150 2371 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
-5060 y(is)36 b(zero.)60 b(And)36 b(the)g(error)g(of)h(an)m(y)g(giv)m
+2481 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 5170 y(Gaussian)31 b(distribution)e(cen)m(tered)j(on)e
-(zero.)p 150 5241 1200 4 v 166 5308 a Ft(28)300 5340
-y Fs(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: 94 100
-TeXDict begin 94 99 bop 150 -116 a FD(94)2627 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)275 299 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 408 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 375 y Fd(\000)p Ft(23)2763
-408 y FD(=)g(1)p Fv(:)p FD(19209)20 b FA(\002)d FD(10)3352
-375 y Fd(\000)p Ft(7)3442 408 y FD(.)40 b(This)28 b Fv(\017)150
-518 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 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 Fz(n)e FD(inexact)j(op)s(erations)e(is)
-1935 664 y Ff(p)p 2018 664 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 847 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
-774 y Ff(p)p 3162 774 485 4 v 73 x FD(2)20 b FA(\002)g
-FD(13824)p Fv(=\031)39 b FD(=)150 956 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
-1066 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 2590 y(Gaussian)31 b(distribution)e(cen)m(tered)j(on)e
+(zero.)275 2750 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 2859 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 2826 y Fd(\000)p Ft(23)2763 2859 y FD(=)g(1)p
+Fv(:)p FD(19209)20 b FA(\002)d FD(10)3352 2826 y Fd(\000)p
+Ft(7)3442 2859 y FD(.)40 b(This)28 b Fv(\017)150 2969
+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 3078 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 3188 y(rounding)d(error)g(after)i
+Fz(n)e FD(inexact)j(op)s(erations)e(is)1935 3115 y Ff(p)p
+2018 3115 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
+3298 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
+3225 y Ff(p)p 3162 3225 485 4 v 73 x FD(2)20 b FA(\002)g
+FD(13824)p Fv(=\031)39 b FD(=)150 3407 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
+3517 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 1176 y(pro)s(duct)d(\(w)m(eigh)m(ts)j(times)f(v)-5
+(inner)150 3626 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)150 1285 y(a)m(v)m(erage.)43
+(asp)s(ects)e(of)h(a)g(w)m(eigh)m(ted)150 3736 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 1395 y(the)g(bias.)41 b(In)29 b(summary)-8 b(,)29
+150 3846 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 1504 y(with)35
+(15,000)i(gridp)s(oin)m(ts)e(eac)m(h)150 3955 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 1614 y(starts)h(with)f(ab)s(out)g(sev)m(en)h(signi\014can)m(t)g
+150 4065 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 1724 y(signi\014can)m(t)28 b(digits)g(after)g
+(than)f(four)150 4174 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 1833 y(with)i
+41 b(The)27 b(ab)s(o)m(v)m(e)h(example)150 4284 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 1998 y(The)25 b FC(NCO)h FD(results)g(ha)m(v)m(e)h
+(agreemen)m(t.)275 4443 y(The)25 b FC(NCO)h FD(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 2107 y(languages:)55
+m(t)i(p)s(ossible)e(in)f(three)i(other)150 4553 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 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 Fy(#)47
+150 4663 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 4822 y Fy(#)47
 b(Double-precision)d(weight)i(\(gw\),)142 b(single-precision)43
-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
+b(arithmetic)i(\(C\))390 4932 y(ncwa_3528514.exe)390
+5041 y(#)i(TREFHT)237 b(=)48 b(289.240112)390 5151 y(#)f
+(Double-precision)d(weight)i(\(gw\),)142 b(double-precision)43
+b(arithmetic)i(\(C\))p 150 5241 1200 4 v 166 5308 a Ft(28)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: 96 102
+TeXDict begin 96 101 bop 150 -116 a FD(96)2627 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(#)47 b(TREFHT)237
+b(=)48 b(289.239964)390 408 y(#)f(Single-precision)d(weight)i
+(\(area\),)g(double-precision)d(arithmetic)i(\(Matlab\))390
+518 y(#)i(TREFHT)237 b(=)48 b(289.239964)390 628 y(#)f
 (Double-precision)d(weight)i(\(gw\),)142 b(double-precision)43
-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 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 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 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 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
-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 4518 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
-(shift)e(to)h(their)g(\015oat-promotion)h(preferences)e(as)h(desired.)
-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)31 b(summarize,)h(un)m(til)g
-(v)m(ersion)g(4.3.6)h(\(Septem)m(b)s(er,)f(2013\),)i(the)d(default)h
-(arithmetic)h(con)m(v)m(en)m(tion)150 4902 y(of)k FC(NCO)f
-FD(follo)m(w)m(ed)i(the)f(b)s(eha)m(vior)f(of)h(F)-8
+b(arithmetic)i(\(Matlab\))390 737 y(#)i(TREFHT)237 b(=)48
+b(289.239964)390 847 y(#)f(Single-precision)d(weight)i(\(area\),)g
+(double-precision)d(arithmetic)i(\(NCL\))390 956 y(ncl)i(<)g
+(ncwa_3528514.ncl)390 1066 y(#)g(TREFHT)237 b(=)48 b(289.239960)390
+1176 y(#)f(TREFHT_dbl)e(=)j(289.239964)390 1285 y(#)f(Double-precision)
+d(weight)i(\(gw\),)142 b(double-precision)43 b(arithmetic)i(\(NCL\))390
+1395 y(#)i(TREFHT)237 b(=)48 b(289.239960)390 1504 y(#)f(TREFHT_dbl)e
+(=)j(289.239964)275 1673 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 1782 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 1892 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 2001
+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(shift)e(to)h(their)g(\015oat-promotion)h(preferences)e(as)h
+(desired.)150 2111 y(No)d(other)g(language)g(allo)m(ws)h(this)e(with)g
+(a)h(simple)f(switc)m(h.)275 2279 y(T)-8 b(o)31 b(summarize,)h(un)m
+(til)g(v)m(ersion)g(4.3.6)h(\(Septem)m(b)s(er,)f(2013\),)i(the)d
+(default)h(arithmetic)h(con)m(v)m(en)m(tion)150 2389
+y(of)k FC(NCO)f FD(follo)m(w)m(ed)i(the)f(b)s(eha)m(vior)f(of)h(F)-8
 b(ortran,)39 b(and)d(automatically)j(promoted)e(single-precision)g(to)
-150 5011 y(double-precision)32 b(in)g(all)g(mixed-precision)h
+150 2498 y(double-precision)32 b(in)g(all)g(mixed-precision)h
 (expressions,)f(and)f(left-alone)j(pure)d(single-precision)i(ex-)150
-5121 y(pressions.)40 b(This)29 b(is)h(faster)g(and)f(more)h(memory)f
+2608 y(pressions.)40 b(This)29 b(is)h(faster)g(and)f(more)h(memory)f
 (e\016cien)m(t)j(than)d(other)h(con)m(v)m(en)m(tions.)43
-b(Ho)m(w)m(ev)m(er,)32 b(pure)150 5230 y(single-precision)j(arithmetic)
+b(Ho)m(w)m(ev)m(er,)32 b(pure)150 2718 y(single-precision)j(arithmetic)
 g(can)f(lose)g(to)s(o)h(m)m(uc)m(h)e(precision)h(when)f(used)g(to)h
-(condense)g(\(e.g.,)i(a)m(v)m(er-)150 5340 y(age\))k(large)g(arra)m
+(condense)g(\(e.g.,)i(a)m(v)m(er-)150 2827 y(age\))k(large)g(arra)m
 (ys.)65 b(Statistics)40 b(in)m(v)m(olving)g(ab)s(out)e
 Fv(n)h FD(=)f(10)p Fv(;)15 b FD(000)41 b(single-precision)f(inputs)d
-(will)i(lose)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)150 299 y(ab)s(out)36
-b(2{3)j(digits)e(if)g(not)g(promoted)f(to)i(double-precision)f(prior)f
-(to)h(arithmetic.)61 b(The)37 b(loss)g(scales)150 408
-y(with)29 b(the)g(squarero)s(ot)h(of)g Fz(n)p FD(.)40
-b(F)-8 b(or)30 b(larger)g Fz(n)p FD(,)f(users)f(should)g(promote)i
-(\015oats)g(with)f(the)g(`)p Fy(--dbl)p FD(')f(option)150
-518 y(if)i(they)h(w)m(an)m(t)g(to)g(preserv)m(e)g(more)f(than)g(four)g
-(signi\014can)m(t)h(digits)g(in)f(their)h(results.)275
-691 y(The)e(`)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
-801 y(that)23 b(could)g(p)s(oten)m(tially)i(p)s(erform)c(more)i(than)g
+(will)i(lose)150 2937 y(ab)s(out)d(2{3)j(digits)e(if)g(not)g(promoted)f
+(to)i(double-precision)f(prior)f(to)h(arithmetic.)61
+b(The)37 b(loss)g(scales)150 3046 y(with)29 b(the)g(squarero)s(ot)h(of)
+g Fz(n)p FD(.)40 b(F)-8 b(or)30 b(larger)g Fz(n)p FD(,)f(users)f
+(should)g(promote)i(\015oats)g(with)f(the)g(`)p Fy(--dbl)p
+FD(')f(option)150 3156 y(if)i(they)h(w)m(an)m(t)g(to)g(preserv)m(e)g
+(more)f(than)g(four)g(signi\014can)m(t)h(digits)g(in)f(their)h
+(results.)275 3324 y(The)e(`)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
+3434 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 910 y(result.)46 b(These)31 b(are)i Fy(nces)p
+g(p)s(er)150 3543 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
 b(is)g(capable)h(of)g(thousands)d(to)j(millions)g(or)f(more)150
-1020 y(op)s(erations)f(p)s(er)f(result.)41 b(By)31 b(con)m(trast,)h
+3653 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)150 1129 y(most)k(one)g(\015oating)g(p)
+Fy(ncflint)f FD(p)s(erform)g(at)150 3763 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 Fy(--dbl)p FD(')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
+3872 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
-1412 y(A)m(t)39 b(the)f(time)h(of)f(this)g(writing)g(\(Septem)m(b)s(er)
+4041 y(A)m(t)39 b(the)f(time)h(of)f(this)g(writing)g(\(Septem)m(b)s(er)
 g(2013\),)43 b(w)m(e)38 b(are)h(in)m(terested)g(in)f(users')f(opinions)
-h(on)150 1522 y(these)i(matters.)71 b(Curren)m(tly)39
+h(on)150 4150 y(these)i(matters.)71 b(Curren)m(tly)39
 b(the)h(default)h(b)s(eha)m(vior)f(is)g(`)p Fy(--flt)p
 FD('.)69 b(W)-8 b(e)41 b(are)f(willing)h(to)g(c)m(hange)g(the)150
-1631 y(default)i(to)h(`)p Fy(--dbl)p FD(')e(if)h(users)f(prefer.)77
+4260 y(default)i(to)h(`)p Fy(--dbl)p FD(')e(if)h(users)f(prefer.)77
 b(Or)42 b(w)m(e)i(could)f(set)g(a)g(threshold)g(\(e.g.,)k
-Fv(n)f FA(\025)g FD(10000\))f(after)150 1741 y(whic)m(h)36
+Fv(n)f FA(\025)g FD(10000\))f(after)150 4369 y(whic)m(h)36
 b(single-)i(to)g(double-precision)e(promotion)h(is)g(automatically)j
 (in)m(v)m(ok)m(ed.)61 b(Or)36 b(w)m(e)h(could)g(mak)m(e)150
-1850 y(the)j(default)f(promotion)h(con)m(v)m(en)m(tion)i(settable)f
+4479 y(the)j(default)f(promotion)h(con)m(v)m(en)m(tion)i(settable)f
 (via)f(an)f(en)m(vironmen)m(t)h(v)-5 b(ariable)40 b(\()p
-FC(GSL)g FD(do)s(es)f(this)h(a)150 1960 y(lot\).)i(Please)32
+FC(GSL)g FD(do)s(es)f(this)h(a)150 4589 y(lot\).)i(Please)32
 b(let)f(us)f(kno)m(w)g(what)g(y)m(ou)h(think)f(of)g(the)h(selected)h
-(defaults)e(and)g(options.)150 2186 y Fu(3.33.3)63 b(Man)m(ual)41
-b(t)m(yp)s(e)f(con)m(v)m(ersion)150 2333 y Fy(ncap2)26
+(defaults)e(and)g(options.)150 4806 y Fu(3.33.3)63 b(Man)m(ual)41
+b(t)m(yp)s(e)f(con)m(v)m(ersion)150 4952 y Fy(ncap2)26
 b FD(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 2443 y(ple,)i(con)m(v)m(erts)g(v)-5
+b(for)f(exam-)150 5062 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 2553 y(external)k(t)m(yp)s(e)g
+b(ariable)28 b Fy(prs)f FD(to)150 5172 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
-2726 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 2899 y FD(See)30 b(Section)h(4.1)h([ncap2)
-f(netCDF)g(Arithmetic)g(Pro)s(cessor],)g(page)g(102,)h(for)e(more)h
-(details.)150 3172 y FB(3.34)68 b(Batc)l(h)45 b(Mo)t(de)150
-3282 y Fk(\013)p 200 3282 3554 4 v 3553 w(\010)p 150
-3772 4 442 v 178 3418 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 3528 y(Short)f(options:)41
-b(`)p Fy(-O)p FD(',)31 b(`)p Fy(-A)p FD(')178 3638 y(Long)g(options:)41
+5340 y Fy(ncap2)46 b(-s)i('tpt=short\(tpt\);prs=dou)o(ble)o(\(prs)o
+(\)')42 b(in.nc)k(out.nc)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)275 299 y(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 530 y FB(3.34)68 b(Batc)l(h)45
+b(Mo)t(de)150 641 y Fk(\013)p 200 641 3554 4 v 3553 w(\010)p
+150 1130 4 442 v 178 777 a FD(Av)-5 b(ailabilit)m(y:)43
+b(All)31 b(op)s(erators)178 886 y(Short)f(options:)41
+b(`)p Fy(-O)p FD(',)31 b(`)p Fy(-A)p FD(')178 996 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 3772
-V 150 3824 a Fk(\012)p 200 3824 3554 4 v 3553 w(\011)275
-4007 y FD(If)35 b(the)h Fz(output-\014le)41 b FD(sp)s(eci\014ed)35
+Fy(--apn)p FD(',)g(`)p Fy(--append)p FD(')p 3803 1130
+V 150 1182 a Fk(\012)p 200 1182 3554 4 v 3553 w(\011)275
+1352 y FD(If)35 b(the)h Fz(output-\014le)41 b FD(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 4117 y(prompt)d(the)i(user)e(whether)h(to)h(o)m
+(op)s(erator)h(will)150 1462 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 4227 y(to)43 b(it,)k(or)42
+FD(,)f(attempt)h(to)f(app)s(end)150 1571 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 4336 y(pro)s(cessing)38 b(large)i(amoun)m(ts)f(of)f(data.)66
+150 1681 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 4446 y(its)i(o)m(wn)g(safet)m(y)h
+(ys)h(to)f(o)m(v)m(erride)150 1791 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 4555 y(o)m(v)m(erwrite)30
+FD(')g(tells)i(the)f(op)s(erator)g(to)150 1900 y(o)m(v)m(erwrite)30
 b(an)m(y)f(existing)g Fz(output-\014le)34 b FD(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 4665 y(tells)33
+b(Sp)s(ecifying)28 b(`)p Fy(-A)p FD(')150 2010 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
-4774 y(user)h(in)m(teractiv)m(ely)-8 b(.)53 b(These)33
+2119 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 4884 y(in)m(teractiv)m(e)39
+(ecause)f(they)g(suppress)150 2229 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 4994 y(already)31 b(con)m(tain)h(the)e(app)s(ended)f(dimensions.)
-150 5267 y FB(3.35)68 b(History)46 b(A)l(ttribute)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.4)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(All)31 b(op)s(erators)178 297 y(Short)f(options:)
-41 b(`)p Fy(-h)p FD(')178 407 y(Long)31 b(options:)41
-b(`)p Fy(--hst)p FD(',)29 b(`)p Fy(--history)p FD(')p
-3803 541 V 150 593 a Fk(\012)p 200 593 3554 4 v 3553
-w(\011)275 782 y FD(All)e(op)s(erators)g(automatically)j(app)s(end)25
+150 2338 y(already)31 b(con)m(tain)h(the)e(app)s(ended)f(dimensions.)
+150 2570 y FB(3.35)68 b(History)46 b(A)l(ttribute)150
+2703 y Fk(\013)p 200 2703 V 3553 w(\010)p 150 3193 4
+442 v 178 2840 a FD(Av)-5 b(ailabilit)m(y:)43 b(All)31
+b(op)s(erators)178 2949 y(Short)f(options:)41 b(`)p Fy(-h)p
+FD(')178 3059 y(Long)31 b(options:)41 b(`)p Fy(--hst)p
+FD(',)29 b(`)p Fy(--history)p FD(')p 3803 3193 V 150
+3245 a Fk(\012)p 200 3245 3554 4 v 3553 w(\011)275 3415
+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 892 y(mo)s(dify)-8 b(.)39 b(The)26
+(they)g(create)i(or)150 3525 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
-1002 y(command)e(to)i(the)f(op)s(erator,)h(e.g.,)h(`)p
+3634 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)150 1111 y(con)m(ten)m(ts)30
+FD('.)38 b(The)25 b(full)150 3744 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 1221 y(\014le)p FD(.)39 b(The)25 b(timestamps)h(app)s
+Fz(output-)150 3853 y(\014le)p FD(.)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 1330 y(app)s(earing)37 b(\014rst)h(in)f
+g(recen)m(t)g(timestamp)150 3963 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
-1440 y(adhere)33 b(to)h(the)g Fy(history)d FD(con)m(v)m(en)m(tion,)36
+4073 y(adhere)33 b(to)h(the)g Fy(history)d FD(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 1549 y(ma)m(y)h(often)g(b)s(e)e(deduced)h(from)g
+(netCDF)g(\014le)150 4182 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
-1659 y FD(is)f(case-insensitiv)m(e)i(to)f(the)f(sp)s(elling)g(of)g(the)
+4292 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 1769 y Fy(History)20 b FD(or)j Fy(HISTORY)d
+(named)150 4401 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 1878 y(history)40
+(b)s(e)e(treated)j(as)f(v)-5 b(alid)150 4511 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
+(\014ts)f(the)h(case-insensitiv)m(e)h(searc)m(h)150 4620
 y(for)e Fy(")p FD(history)p Fy(")p FD(,)i(the)e(\014rst)f(one)h(found)e
 (will)j(b)s(e)e(used.)68 b Fy(history)38 b FD(attribute)j(T)-8
-b(o)40 b(a)m(v)m(oid)i(information)150 2097 y(o)m(v)m(erkill,)g(all)c
+b(o)40 b(a)m(v)m(oid)i(information)150 4730 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 2207 y(automatically)29
+FD('\))e(to)i(o)m(v)m(erride)150 4840 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 2317 y(Editor],)35
-b(page)f(153\).)53 b(Note)35 b(that)f(the)g(`)p Fy(-h)p
+(4.2)g([ncatted)g(netCDF)f(A)m(ttribute)150 4949 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 2426 y(list)29 b FD(attribute)i(for)f(m)m
+Fy(nco_input_file_)150 5059 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(96\).)150 2717 y FB(3.36)68
-b(File)46 b(List)f(A)l(ttributes)150 2827 y Fk(\013)p
-200 2827 V 3553 w(\010)p 150 3317 4 442 v 178 2963 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 3073 y FD(Short)h(options:)41
-b(`)p Fy(-H)p FD(')178 3182 y(Long)31 b(options:)41 b(`)p
+(A)m(ttributes],)i(page)f(97\).)150 5290 y FB(3.36)68
+b(File)46 b(List)f(A)l(ttributes)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.5)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(nces)p FD(,)30 b Fy(ncecat)p
+FD(,)f Fy(ncra)p FD(,)g Fy(ncrcat)178 297 y FD(Short)h(options:)41
+b(`)p Fy(-H)p FD(')178 407 y(Long)31 b(options:)41 b(`)p
 Fy(--fl_lst_in)p FD(',)28 b(`)p Fy(--file_list)p FD(')p
-3803 3317 V 150 3368 a Fk(\012)p 200 3368 3554 4 v 3553
-w(\011)275 3558 y FD(Man)m(y)41 b(metho)s(ds)g(of)g(sp)s(ecifying)g
+3803 541 V 150 593 a Fk(\012)p 200 593 3554 4 v 3553
+w(\011)275 763 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 3667 y(pip)s(es,)29 b(enco)s(dings,)g(or)h(argumen)m
+g(names)g(via)150 873 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
+(ers)d(of)h(Files],)150 983 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
+(not)g(explicitly)h(passed)e(on)h(the)150 1092 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 3996 y(con)m(tains)g(the)e
+Fy(history)e FD(attribute)i(no)f(longer)150 1202 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 4175 y FC(NCO)g FD(solv)m(es)i(this)e(dilemma)h(b)m(y)g(arc)m
+275 1361 y FC(NCO)g FD(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 4285 y(to)g(a)g(m)m(ulti-\014le)g(op)
+b(the)g(input)f(\014le)g(list)150 1471 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
 (erator,)g(b)m(y)f(default,)h(attac)m(hes)i(t)m(w)m(o)f(global)150
-4394 y(attributes)f(to)h(an)m(y)f(\014le)f(they)h(create)h(or)f(mo)s
+1581 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 4504 y(con)m(tains)45
+b FD(global)31 b(attribute)150 1690 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 4613 y(sp)s(eci\014ed)28 b(as)h(standard)f(input)g(to)h(the)g(m)m
+150 1800 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 4723 y(all)e(input)f(\014les)g(the)h(user)f
+(v)m(erify)g(that)150 1909 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 4832
+(arriv)m(ed.)39 b(Without)27 b(the)g Fy(nco_)150 2019
 y(input_file_list)37 b FD(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
-4942 y(w)m(ould)30 b(b)s(e)g(brok)m(en.)275 5121 y(The)36
+2129 y(w)m(ould)30 b(b)s(e)g(brok)m(en.)275 2288 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
 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 5230 y(global)h(attributes)g(when)e(input)g(is)h
+(\014le)g(list)150 2398 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 5340
+(do)s(es)g(this)g(to)s(o,)i(and)e(turns)f(o\013)150 2508
 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(95\).)51 b(Hence)34
-b(b)s(oth)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(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
-628 y FB(3.37)68 b Fu(CF)45 b FB(Con)l(v)l(en)l(tions)150
-739 y Fk(\013)p 200 739 3554 4 v 3553 w(\010)p 150 1119
-4 333 v 178 875 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
-985 y FD(Short)g(options:)41 b(None)p 3803 1119 V 150
-1171 a Fk(\012)p 200 1171 3554 4 v 3553 w(\011)275 1346
-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 1455 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 1565
-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 1675 y(that)g(pre-date)g FC(CF)p
+(3.35)g([History)h(A)m(ttribute],)g(page)f(97\).)51 b(Hence)34
+b(b)s(oth)150 2617 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 2727 y(of)31 b(\014lenames)f(in)g(a)h
+(metadata)h(attribute.)150 2960 y FB(3.37)68 b Fu(CF)45
+b FB(Con)l(v)l(en)l(tions)150 3071 y Fk(\013)p 200 3071
+V 3553 w(\010)p 150 3451 4 333 v 178 3207 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 3316 y FD(Short)g(options:)41
+b(None)p 3803 3451 V 150 3502 a Fk(\012)p 200 3502 3554
+4 v 3553 w(\011)275 3678 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 3788 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
+3897 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 4007 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
-1784 y(`)p Fy(CF-1.0)p FD('\).)56 b(Nev)m(ertheless,)39
+4116 y(`)p Fy(CF-1.0)p FD('\).)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 1894 y(this)30 b(section)i(if)e(y)
+d FC(CF)g FD(metadata.)58 b(Skip)150 4226 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
-2053 y(The)54 b FC(CF)i FD(netCDF)f(con)m(v)m(en)m(tions)j(are)d
-(describ)s(ed)g(here)g(\()p Fy(http:)19 b(/)h(/)15 b(cf-pcmdi)k(.)c
-(llnl)k(.)d(gov)j(/)150 2163 y(documents)10 b(/)e(cf-conventions)i(/)e
-(1)i(.)e(6)i(/)e(cf)o(-con)o(ven)o(tion)o(s)i(.)e(htm)o(l)i(#)e(coor)o
-(din)o(ate-)o(syst)o(em)p FD(\).)73 b(Most)150 2272 y
-FC(CF)31 b FD(netCDF)h(con)m(v)m(en)m(tions)h(are)e(transparen)m(t)g
-(to)g FC(NCO)2077 2239 y Ft(29)2148 2272 y FD(.)42 b(There)30
-b(are)i(no)e(kno)m(wn)h(pitfalls)g(asso)s(ciated)150
-2382 y(with)24 b(using)g(an)m(y)h FC(NCO)f FD(op)s(erator)h(on)f
-(\014les)h(adhering)f(to)h(these)g(con)m(v)m(en)m(tions)2776
-2349 y Ft(30)2848 2382 y FD(.)39 b(Ho)m(w)m(ev)m(er,)28
-b(to)d(facilitate)150 2492 y(maxim)m(um)32 b(user)g(friendliness,)h
-FC(NCO)f FD(applies)h(sp)s(ecial)g(rules)f(to)h(certain)h(v)-5
-b(ariables)33 b(in)f FC(CF)h FD(\014les.)47 b(The)150
-2601 y(sp)s(ecial)25 b(functions)f(are)h(not)g(required)e(b)m(y)i(the)f
-FC(CF)h FD(netCDF)g(con)m(v)m(en)m(tions,)j(y)m(et)d(exp)s(erience)g
-(sho)m(ws)f(that)150 2711 y(they)31 b(simplify)e(data)j(analysis.)275
-2870 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 2980 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 3089
-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 3199 y FC(NCO)28
-b FD(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 3309 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 3418 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 b(These)28 b(v)-5
-b(ariables)29 b(con)m(tain)g(scalar)g(metadata)h(suc)m(h)150
-3528 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 3687 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 3797 y(certain)28
+4386 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 4495 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 4462 y Ft(29)2877
+4495 y FD(.)45 b(There)31 b(are)i(no)e(kno)m(wn)150 4605
+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 4572 y Ft(30)3725 4605 y FD(.)p
+150 4702 1200 4 v 166 4769 a Ft(29)298 4801 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
+4888 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 4960 y Ft(30)308
+4991 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 4991 24 4 v 34 w(time)p Fs(,)i(e.g.,)g(the)d
+Fr(units)275 5078 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
+5166 y(o)r(ccurs)30 b(when)g(using)g Fr(ncrcat)h Fs(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 5166 V 34 w(time)p Fs(.)47 b(That)31 b(is,)h(an)n(y)275
+5253 y Fr(time)f Fs(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 5253 V 34 w(time)275
+5340 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
+b(The)26 b(analogous)i(problem)f(has)f(b)r(een)g(\014xed)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(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 408 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
+518 y(exp)s(erience)h(sho)m(ws)f(that)h(they)f(simplify)g(data)h
+(analysis.)275 696 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
+805 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 915 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 1024 y FC(NCO)28 b FD(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
+1134 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
+1244 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
+b(These)28 b(v)-5 b(ariables)29 b(con)m(tain)g(scalar)g(metadata)h(suc)
+m(h)150 1353 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 1531 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 1640 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 3906 y(used)f(for)g(pac)m(king,)j
+FD(,)f(and)g Fy(ncpdq)g FD(\(when)150 1750 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
-4016 y(add,)e(subtract,)g(pac)m(k,)i(etc.\))39 b(the)22
+1859 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 4125
+Fy(gw)p FD(,)f Fy(hyai)p FD(,)h Fy(hyam)p FD(,)150 1969
 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
 b(v)-5 b(ariables)33 b(represen)m(t)f(the)f(Gaussian)h(w)m(eigh)m(ts,)
-150 4235 y(the)23 b(orograph)m(y)g(\014eld,)h(time)f(\014elds,)h(h)m
+150 2079 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 4345 y(aries.)57
+(latititude/longitude)k(b)s(ound-)150 2188 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 4454 y(easy)31 b(to)g(iden)m(tify)g(b)
+b(grid)f(prop)s(erties)h(are)150 2298 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(.)p 150 4528 1200 4 v 166 4595 a Ft(29)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(30)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
-(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
-(\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
-b(The)26 b(analogous)i(problem)f(has)f(b)r(een)g(\014xed)275
-5253 y(in)j Fp(ARM)g Fs(\014les)h(\(see)g(Section)f(3.38)i([ARM)e(Con)n
-(v)n(en)n(tions],)i(page)g(98\))f(and)f(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)c(lobb)n
-(ying.)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.4)j(User)d(Guide)275 299 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
-408 y(treated)31 b(as)f(a)g(grid)f(prop)s(ert)m(y)-8
+FD(.)275 2475 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
+2585 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
-518 y(or)41 b(b)s(e)f(a)i(co)s(ordinate)g(v)-5 b(ariable.)73
+2694 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 628 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 737
-y(\(not)c(op)s(erated)f(on)h(arithmetically\).)275 922
+Fo(any)50 b FD(v)-5 b(ariable)150 2804 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 2914
+y(\(not)c(op)s(erated)f(on)h(arithmetically\).)275 3091
 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 1031 y(pro)s(cessed)g(normally)-8
+(ecial)h FC(CF)e FD(\014elds)150 3201 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 1141 y Fy(Conventions)27 b FD(attribute.)275 1326
+150 3310 y Fy(Conventions)27 b FD(attribute.)275 3488
 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 1435 y(b)s(oundaries)g(describ)s(ed)h(here)h(\()
-p Fy(http:)q(/)q(/)q(cf-pcmdi)q(.)q(llnl)q(.)q(gov)q(/)q(docum)o(ent)o
-(s)q(/)q(cf-)o(conv)o(ent)o(ions/)q(1)q(.)150 1545 y
-(6/cf-conventions.html#cell-bounda)o(ries)o FD(\).)37
-b(This)30 b(con)m(v)m(en)m(tion)j(allo)m(ws)g(co)s(ordinate)e(v)-5
-b(ariables)150 1654 y(\(including)33 b(m)m(ultidimensional)h(co)s
-(ordinates\))g(to)g(describ)s(e)f(the)h(b)s(oundaries)d(of)j(their)f
-(cells.)50 b(This)33 b(is)150 1764 y(done)g(b)m(y)h(naming)f(the)h(v)-5
-b(ariable)35 b(whic)m(h)e(con)m(tains)i(the)f(b)s(ounds)d(in)i(in)h
-(the)f Fy(bounds)f FD(attribute.)52 b(Note)150 1873 y(that)39
-b(co)s(ordinates)h(of)f(rank)f Fv(N)49 b FD(ha)m(v)m(e)40
-b(b)s(ounds)c(of)j(rank)f Fv(N)e FD(+)26 b(1.)66 b(NCO-generated)40
-b(subsets)e(of)h FC(CF)p FD(-)150 1983 y(complian)m(t)31
-b(\014les)f(with)f Fy(bounds)f FD(attributes)i(will)g(include)g(the)g
-(co)s(ordinates)g(sp)s(eci\014ed)f(b)m(y)h(the)g Fy(bounds)150
-2093 y FD(attribute,)h(if)g(an)m(y)-8 b(.)41 b(Hence)31
-b(the)g(subsets)f(will)g(themselv)m(es)i(b)s(e)e FC(CF)p
-FD(-complian)m(t.)275 2277 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
-2387 y(tion)44 b(describ)s(ed)f(here)h(\()p Fy(http:)11
-b(/)g(/)e(cf-pcmdi)i(.)e(llnl)i(.)e(go)o(v)i(/)e(d)o(ocum)o(ent)o(s)i
-(/)e(c)o(f-co)o(nve)o(ntio)o(ns)i(/)d(1)j(.)d(6)j(/)150
-2496 y(cf-conventions)s(.)r(html)s(#)r(coordina)o(te-s)o(yst)o(em)p
-FD(\).)46 b(This)34 b(con)m(v)m(en)m(tion)i(allo)m(ws)g(v)-5
-b(ariables)34 b(to)h(sp)s(ecify)150 2606 y(additional)27
-b(co)s(ordinates)g(\(including)f(m)m(ultidimensional)h(co)s
-(ordinates\))h(in)e(a)g(space-separated)i(string)150
-2716 y(attribute)36 b(named)e Fy(coordinates)p FD(.)52
-b(NCO)34 b(attac)m(hes)j(an)m(y)e(suc)m(h)g(co)s(ordinates)h(to)f(the)h
-(extraction)g(list)150 2825 y(along)41 b(with)f(v)-5
-b(ariable)40 b(and)g(its)g(usual)g(\(one-dimensional\))h(co)s
-(ordinates,)i(if)d(an)m(y)-8 b(.)71 b(These)39 b(auxiliary)150
-2935 y(co)s(ordinates)29 b(are)g(sub)5 b(ject)28 b(to)g(the)h(user-sp)s
-(eci\014ed)e(o)m(v)m(errides)i(describ)s(ed)e(in)h(Section)h(3.12)h
-([Subsetting)150 3044 y(Co)s(ordinate)g(V)-8 b(ariables],)33
-b(page)e(44.)275 3229 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 3338 y FD(con)m(v)m(en)m(tion)48
-b(\()p Fy(http:)13 b(/)g(/)d(cf-pcmdi)j(.)d(llnl)j(.)c(gov)j(/)d(docu)o
-(ment)o(s)k(/)c(cf-)o(conv)o(enti)o(ons)j(/)e(1)i(.)e(7)o(-dra)o(ft1)i
-(/)150 3448 y(cf-conventions.html#cell)o(-met)o(hods)o
-FD(\))25 b(to)30 b(describ)s(e)g(the)g(analysis)g(pro)s(cedures)f(that)
-h(ha)m(v)m(e)i(b)s(een)150 3558 y(applied)23 b(to)g(data.)39
-b(The)22 b(con)m(v)m(en)m(tion)j(creates)f(\(or)g(app)s(ends)c(to)k(an)
-f(existing\))h Fy(cell_methods)19 b FD(attribute)150
-3667 y(a)26 b(space-separated)h(list)g(of)f(couplets)g(of)g(the)g(form)
-g Fz(dmn:)37 b(op)28 b FD(where)d Fz(dmn)g FD(is)h(a)g(comma-separated)
-h(list)150 3777 y(of)e(dimensions)f(previously)h(con)m(tained)h(in)e
-(the)h(v)-5 b(ariable)26 b(that)g(ha)m(v)m(e)g(b)s(een)e(reduced)g(b)m
-(y)h(the)g(arithmetic)150 3886 y(op)s(eration)34 b Fz(op)p
-FD(.)48 b(F)-8 b(or)34 b(example,)h(the)e Fy(cell_methods)d
-FD(v)-5 b(alue)34 b Fy(time:)29 b(mean)j FD(sa)m(ys)h(that)h(the)f(v)-5
-b(ariable)34 b(in)150 3996 y(question)e(w)m(as)g(a)m(v)m(eraged)i(o)m
-(v)m(er)f(the)f Fy(time)f FD(dimension.)44 b(In)31 b(suc)m(h)h(cases)h
-Fy(time)d FD(will)i(either)h(b)s(e)e(a)h(scalar)150 4106
-y(v)-5 b(ariable)43 b(or)g(a)g(degenerate)h(dimension)e(or)g(co)s
-(ordinate.)78 b(This)42 b(simply)g(means)g(that)h(it)g(has)g(b)s(een)
-150 4215 y(a)m(v)m(eraged-o)m(v)m(er.)57 b(The)34 b(v)-5
-b(alue)35 b Fy(time,)29 b(lon:)g(mean)g(lat:)g(max)34
-b FD(sa)m(ys)h(that)g(the)g(v)-5 b(ariable)35 b(in)f(question)h(is)150
-4325 y(the)d(maxim)m(um)f(zonal)i(mean)e(of)h(the)g(time)g(a)m(v)m
-(eraged)i(original)e(v)-5 b(ariable.)45 b(Whic)m(h)32
-b(is)g(to)g(sa)m(y)h(that)f(the)150 4434 y(v)-5 b(ariable)30
-b(w)m(as)g(\014rst)e(a)m(v)m(eraged)k(o)m(v)m(er)e(time)g(and)f
-(longitude,)h(and)f(then)g(the)g(residual)g(latitudinal)h(arra)m(y)150
-4544 y(w)m(as)24 b(reduced)g(b)m(y)f(c)m(ho)s(osing)i(the)f(maxim)m(um)
-g(v)-5 b(alue.)39 b(Since)24 b(the)g Fy(cell)29 b(methods)22
-b FD(con)m(v)m(en)m(tion)k(ma)m(y)f(alter)150 4654 y(metadata)k(in)f
-(an)f(undesirable)g(\(or)h(p)s(ossibly)f(incorrect\))i(fashion,)g(w)m
-(e)f(pro)m(vide)g(switc)m(hes)g(to)g(ensure)f(it)150
-4763 y(is)33 b(alw)m(a)m(ys)i(or)f(nev)m(er)f(used.)49
-b(Use)34 b(long-options)h(`)p Fy(--cll_mth)p FD(')c(or)i(`)p
-Fy(--cell_methods)p FD(')d(to)k(in)m(v)m(ok)m(e)i(the)150
-4873 y(algorithm)e(\(true)g(b)m(y)f(default\),)i(and)e(options)g(`)p
-Fy(--no_cll_mth)p FD(')e(or)i(`)p Fy(--no_cell_methods)p
-FD(')c(to)34 b(turn)150 4982 y(it)d(o\013.)41 b(These)30
-b(options)h(are)g(only)f(a)m(v)-5 b(ailable)33 b(in)d(the)g(op)s
-(erators)h Fy(ncwa)e FD(and)h Fy(ncra)p FD(.)150 5290
-y FB(3.38)68 b Fu(ARM)45 b FB(Con)l(v)l(en)l(tions)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 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(ncrcat)178 297 y
-FD(Short)30 b(options:)41 b(None)p 3803 432 V 150 483
-a Fk(\012)p 200 483 3554 4 v 3553 w(\011)275 653 y Fy(ncrcat)19
-b FD(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
-763 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 873 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
-982 y(section.)51 b FC(ARM)34 b FD(data)g(\014les)f(store)h(time)h
+(tion)k(for)e(cell)150 3597 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
+3707 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 3817 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 3926 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 4036 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 4145 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(.)41 b(Hence)28 b(the)f(subsets)g(will)h(themselv)m(es)150
+4255 y(b)s(e)f FC(CF)p FD(-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
+4365 y(and)i(`)p Fy(-C)p FD('\))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
+4542 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 4652 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
+(.)e(org)i(/)e(1)i(.)e(6)i(.)e(html)i(#)e(anc)o(illa)o(ry-)o(data)o
+FD(\).)150 4761 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 4871 y(ables.)38
+b FC(NCO)23 b FD(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 4980 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)p 150 5154 1200 4 v 275 5253 a Fs(in)27
+b 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(100\))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(lobb)n
+(ying.)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.5)j(User)d(Guide)150 299 y(user-sp)s(eci\014ed)g(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
+408 y(ting)f(Co)s(ordinate)f(V)-8 b(ariables],)33 b(page)e(45.)275
+576 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 686 y(tion)i(describ)s(ed)f(here)
+g(\()p Fy(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 796 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 905 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
+1015 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 1124 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
+1234 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 1344 y(ables],)31 b(page)g(45.)275
+1512 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 1621 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 1731 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
+1840 y(existing\))38 b Fy(cell_methods)c FD(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 1950 y FD(where)38 b Fz(dmn)f FD(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 2059 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
+2169 y FD(v)-5 b(alue)29 b Fy(time:)g(mean)e FD(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 2279 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
+b(ariable)30 b(or)f(a)g(degenerate)i(dimension)d(or)h(co)s(ordinate.)
+150 2388 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 2498 y FD(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
+2607 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 2717 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
+2827 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 2936 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 3046 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 3155 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 3265 y Fy(ncwa)29 b FD(and)h
+Fy(ncra)p FD(.)150 3523 y FB(3.38)68 b Fu(ARM)45 b FB(Con)l(v)l(en)l
+(tions)150 3634 y Fk(\013)p 200 3634 3554 4 v 3553 w(\010)p
+150 4014 4 333 v 178 3770 a FD(Av)-5 b(ailabilit)m(y:)43
+b Fy(ncrcat)178 3879 y FD(Short)30 b(options:)41 b(None)p
+3803 4014 V 150 4065 a Fk(\012)p 200 4065 3554 4 v 3553
+w(\011)275 4244 y Fy(ncrcat)19 b FD(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 4354 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 4463 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 4573
+y(section.)51 b FC(ARM)34 b FD(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 1092 y(a)g(record)g(v)-5
+Fy(base_time)p FD(,)c(and)150 4682 y(a)g(record)g(v)-5
 b(ariable,)33 b Fy(time_offset)p FD(.)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 1201 y(\014les)d(are)g(just)g(blindly)f(concatenated.)42
+(of)150 4792 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 1311 y(able)35 b(to)h(c)m(hain)g(together)
+(programmed)g(to)h(b)s(e)150 4902 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 1421
+(and)g(an)h Fz(output-\014le)40 b FD(whic)m(h)150 5011
 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 1530 y FC(ARM)29 b FD(data\014le)g(simply)f
+(data\014le)g(is)g(an)150 5121 y FC(ARM)29 b FD(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 1640 y(and)f(the)i(dimension)e Fy(time)p FD(.)38
+FD(,)150 5230 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
-1749 y(p)s(erform)f(t)m(w)m(o)j(non-standard,)f(but)f(hop)s(efully)g
+5340 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 1859 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 1969 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
-2078 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 2188 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 2297 y(b)m(y)31
+FD(will)i(ensure)f(that)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)150 299 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 408 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 518 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 628 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 737 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 2297 28 4 v 45 w(time)h FD(+)20
-b Fz(time)p 2160 2297 V 46 w(o\013set)s FD(.)43 b(Th)m(us,)31
+FD(=)26 b Fz(base)p 1645 737 28 4 v 45 w(time)h FD(+)20
+b Fz(time)p 2160 737 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
-2407 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 2516 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
-2749 y FB(3.39)68 b(Op)t(erator)46 b(V)-11 b(ersion)150
-2883 y Fk(\013)p 200 2883 3554 4 v 3553 w(\010)p 150
-3372 4 442 v 178 3019 a FD(Av)-5 b(ailabilit)m(y:)43
-b(All)31 b(op)s(erators)178 3128 y(Short)f(options:)41
-b(`)p Fy(-r)p FD(')178 3238 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 3372 V 150 3424 a Fk(\012)p 200
-3424 3554 4 v 3553 w(\011)275 3594 y FD(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 3704 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 3813 y(`)p Fy(revision)p FD('.)63 b(The)38
+847 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 956 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 1189 y FB(3.39)68 b(Op)t(erator)46
+b(V)-11 b(ersion)150 1323 y Fk(\013)p 200 1323 3554 4
+v 3553 w(\010)p 150 1812 4 442 v 178 1459 a FD(Av)-5
+b(ailabilit)m(y:)43 b(All)31 b(op)s(erators)178 1568
+y(Short)f(options:)41 b(`)p Fy(-r)p FD(')178 1678 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 1812 V 150 1864
+a Fk(\012)p 200 1864 3554 4 v 3553 w(\011)275 2034 y
+FD(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 2144 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 2253 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
 (prin)m(t)f(the)h(op)s(erator)g(v)m(ersion)g(information)150
-3923 y(only)-8 b(.)69 b(The)40 b(in)m(ternal)g(v)m(ersion)g(n)m(um)m(b)
+2363 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 4033 y(cen)m(t)c(c)m(hange)g(to)f(a)g
+(indicates)i(the)f(most)g(re-)150 2472 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
-4142 y(w)m(orking)31 b(with)g(the)h(most)f(recen)m(t)h(op)s(erators.)44
+2582 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 4252 y Fy(3.9.5)p FD(.)39 b(Using)31
+(t)g(b)s(e,)g(e.g.,)150 2692 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 4361 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 4471
+(Operators)f(version)150 2801 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 2911
 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
-4580 y(y)m(ou)31 b(that)g Fy(ncks)e FD(con)m(tains)i(all)h(patc)m(hes)f
+3020 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: 100 106
-TeXDict begin 100 105 bop eop end
-%%Page: 101 107
-TeXDict begin 101 106 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(101)150
+%%Page: 102 108
+TeXDict begin 102 107 bop 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
@@ -20349,9 +20460,9 @@ 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: 102 108
-TeXDict begin 102 107 bop 150 -116 a FD(102)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y FB(4.1)68 b Fc(ncap2)43
+%%Page: 104 110
+TeXDict begin 104 109 bop 150 -116 a FD(104)2582 b FC(NCO)30
+b FD(4.4.5)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
 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
@@ -20392,7 +20503,7 @@ b FD(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(69,)h(for)f(treatmen)m(t)h(of)e(missing)h(v)-5
+b(alues],)35 b(page)e(70,)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
@@ -20425,7 +20536,7 @@ FD(.)49 b(A)m(t-)150 4432 y(tribute)24 b(propagation)h(is)f(in)m
 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(108\).)41
+(4.1.4)i([Left)e(hand)f(casting],)j(page)e(110\).)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
@@ -20438,9 +20549,9 @@ 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: 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
+%%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
@@ -20497,9 +20608,9 @@ FA(\017)60 b FD(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: 104 110
-TeXDict begin 104 109 bop 150 -116 a FD(104)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)225 299 y FA(\017)60 b FD(When)37
+%%Page: 106 112
+TeXDict begin 106 111 bop 150 -116 a FD(106)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)225 299 y FA(\017)60 b FD(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(\\)
@@ -20548,9 +20659,9 @@ 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: 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)390
+%%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)
@@ -20581,7 +20692,7 @@ 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
 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(150)150 3959 y(Examples:)390
+(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
 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
@@ -20601,9 +20712,9 @@ 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: 106 112
-TeXDict begin 106 111 bop 150 -116 a FD(106)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)180 299 y Fq(Other)h(Assign)f(Op)s(erators)h
+%%Page: 108 114
+TeXDict begin 108 113 bop 150 -116 a FD(108)2582 b FC(NCO)30
+b FD(4.4.5)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
 b(ariable)38 b(and)f(it)h(do)s(esn't)f(conform)g(to)h(v)-5
@@ -20661,9 +20772,9 @@ b(alue)34 b(of)630 4863 y(the)d(righ)m(t)g(side,)f(then)g(the)h(righ)m
 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: 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)150
+%%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
@@ -20698,7 +20809,7 @@ Fy(float)46 b(four_dmn_rec_var\(time,lat,)o(lev)o(,lon)o(\);)390
 (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(151)390
+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
@@ -20707,9 +20818,9 @@ 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: 108 114
-TeXDict begin 108 113 bop 150 -116 a FD(108)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y Fu(4.1.4)63 b(Left)41
+%%Page: 110 116
+TeXDict begin 110 115 bop 150 -116 a FD(110)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -20798,9 +20909,9 @@ b Fy(var_tpl)p FD(,)g(i.e.,)j(a)e(v)-5 b(ariable)38 b(with)g(the)g
 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: 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
+%%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
@@ -20859,9 +20970,9 @@ 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 end
-%%Page: 110 116
-TeXDict begin 110 115 bop 150 -116 a FD(110)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(\($lat.size=2,$lon.size=4)o(\))
+%%Page: 112 118
+TeXDict begin 112 117 bop 150 -116 a FD(112)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -20910,9 +21021,9 @@ 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: 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)390
+%%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
@@ -20953,9 +21064,9 @@ y(--a1 at max;)g(q)390 4776 y(a1\(0\)=a1 at min;)390 4885 y
 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: 112 118
-TeXDict begin 112 117 bop 150 -116 a FD(112)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)275 299 y(The)c(netCDF)h(sp)s(eci\014cation)g
+%%Page: 114 120
+TeXDict begin 114 119 bop 150 -116 a FD(114)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -20994,7 +21105,7 @@ b(ariable)33 b Fy(")p FD(inherits)p Fy(")f FD(attributes)h(from)f(an)g
 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
 (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(151)390
+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
 (w)f(lists)g(the)h(p)s(ost\014x)e(c)m(haracter\(s\))j(to)f(add)e(to)i
@@ -21003,30 +21114,32 @@ b(Num)m(b)s(er)41 b(literals)150 4509 y FD(The)31 b(table)h(b)s(elo)m
 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(NC_UINT)390 5011 y(n2[$lon]=4b;)140 b(//)47
-b(n2)g(will)g(be)g(of)g(type)g(NC_BYTE)390 5121 y(n3[$lat]=5ull;)d(//)j
-(n3)g(will)g(be)g(of)g(type)g(NC_UINT64)390 5230 y(n3 at a1=6.0d;)140
-b(//)47 b(attribute)f(will)g(be)h(type)g(NC_DOUBLE)390
-5340 y(n3 at a2=-666L;)92 b(//)47 b(attribute)f(will)g(be)h(type)g(NC_INT)
-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)275
+(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
+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(NC_DOUBLE)390
+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
-(NC_DOUBLE)390 897 y(n6[$gds_crd]=2e3;)91 b(//)47 b(n6)g(will)g(be)g
-(of)g(type)g(NC_DOUBLE)390 1006 y(n7[$gds_crd]=2e3f;)91
-b(//)47 b(n7)g(will)g(be)g(of)g(type)g(NC_FLOAT)390 1116
-y(n6 at a1=41;)427 b(//)47 b(attribute)f(will)g(be)h(type)g(NC_INT)390
-1225 y(n6 at a2=-21;)379 b(//)47 b(attribute)f(will)g(be)h(type)g(NC_INT)
-390 1335 y(n6 at units="kelvin")c(//)k(attribute)f(will)g(be)h(type)g
-(NC_CHAR)150 1518 y Fq(netCDF3/4)32 b(T)m(yp)s(es)150
+(@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
@@ -21055,27 +21168,27 @@ b(op)-5 b(er)g(ator\))37 b FD(has)30 b(also)i(b)s(een)d(implemen)m
 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(})g(else)g(if\(exp2\))p
+5121 y(stmt1a;)533 5230 y(stmt1b;)390 5340 y(}else)f(if\(exp2\))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.4)j(User)d(Guide)533 299 y Fy(stmt2;)390 408
-y(else)47 b({)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
+%%Page: 116 122
+TeXDict begin 116 121 bop 150 -116 a FD(116)2582 b FC(NCO)30
+b FD(4.4.5)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
 (value)i(of)g(time="\);print\(time_max,")o(\045f"\))o(;)390
@@ -21099,9 +21212,9 @@ 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
 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: 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)150
+%%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
@@ -21124,7 +21237,7 @@ y(lon[0]=0)390 1613 y(lon[1]=90)390 1723 y(lon[2]=180)390
 (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)191
+(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
 b(op)s(erate)g(sligh)m(tly)h(di\013eren)m(tly)f(in)f
@@ -21157,9 +21270,9 @@ b(Consider)f(the)h(variable:)390 5011 y(int)g
 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
 eop end
-%%Page: 116 122
-TeXDict begin 116 121 bop 150 -116 a FD(116)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 408 y Fy(n2=-999,-999,11,11,11,11)o(,11,)
+%%Page: 118 124
+TeXDict begin 118 123 bop 150 -116 a FD(118)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -21194,9 +21307,9 @@ b(ariable.)73 b(If)41 b(the)g(v)-5 b(ariable)42 b(exists)g(in)f(Input)f
 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(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 3098 y Fy(number_miss\(\))630 3208 y FD(Coun)m(ts)30
+(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
@@ -21213,9 +21326,9 @@ b(a)h(v)-5 b(ariable)31 b(con)m(tains.)390 3367 y Fy
 (;)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: 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)390
+%%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
@@ -21262,15 +21375,15 @@ 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(79)g(and)f(see)g(Section)h(4.8)g([ncp)s(dq)
+(k)m(ed)i(data],)f(page)f(81)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(186)150 5230 y Fy(pack\(\))e(&)h(pack_short\(\))630
+(page)g(189)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: 118 124
-TeXDict begin 118 123 bop 150 -116 a FD(118)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y Fy(pack_byte\(\))630
+%%Page: 120 126
+TeXDict begin 120 125 bop 150 -116 a FD(120)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -21288,7 +21401,7 @@ b FD(Returns)29 b(the)i(netcdf)f(t)m(yp)s(e)h(\(see)g(previous)f
 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(115)150 2540 y Fy(set_miss\(expr\))630
+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(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
@@ -21308,7 +21421,7 @@ b(to)g(disk)f(i.e.,)i(con)m(v)m(erts)g(it)f(to)g(a)g(regular)f(disk)g
 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(186)150 4751
+(ute)g(Dimensions)f(Quic)m(kly],)i(page)f(189)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
@@ -21318,9 +21431,9 @@ b(All)28 b(the)g(dims)f(of)g(the)h(v)-5 b(ariable)630
 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: 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)275
+%%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
@@ -21331,7 +21444,7 @@ 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(87\).)41
+(e)150 1166 y(Con)m(v)m(ersion],)28 b(page)e(88\).)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
@@ -21363,7 +21476,7 @@ 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
 (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
-(148)275 3847 y(All)c(the)h(mathematical)h(metho)s(ds)e(tak)m(e)i(a)f
+(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
 b(If)31 b(the)h(op)s(erand)e(t)m(yp)s(e)i(is)f(less)h(than)f
@@ -21394,9 +21507,9 @@ 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: 120 126
-TeXDict begin 120 125 bop 150 -116 a FD(120)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y FC(RAM)c FD(v)-5
+%%Page: 122 128
+TeXDict begin 122 127 bop 150 -116 a FD(122)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -21449,2745 +21562,2816 @@ f(the)h(assign)330 4861 y(pro)s(cess)k(pro)s(ceeds)g(as)h(b)s(efore.)
 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: 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)330
+%%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
-712 y(Example:)114 b(Consider)67 b(the)h(v)-5 b(ariables)68
+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 821 y(msk\(lat,lon\);)p FD(.)76
+b Fy(float)29 b(var_)150 816 y(msk\(lat,lon\);)p FD(.)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
-931 y FD(equals)31 b(1:)390 1095 y Fy(where\(var_msk==1\))43
-b(lon_2D_rct=2*lon_2D_rct;)275 1259 y FD(Supp)s(ose)23
+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
 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 1369 y(than)k(8)h(or)f(greater)
-i(than)e(80)h(to)g(0)q(:)390 1533 y Fy(where\(RDM)45
-b(<)j(8)f(||)g(RDM)g(>)h(80\))f(RDM=0;)275 1697 y FD(Consider)1207
-b(irregularly)h(gridded)150 1807 y(data,)35 b(describ)s(ed)e(using)g
-(rank)d(2)k(co)s(ordinates:)48 b Fy(double)28 b
-(lat\(south_north,east_west)o(\))p FD(,)h Fy(double)150
-1916 y(lon\(south_north,east_wes)o(t\))p FD(,)f Fy(double)g
-(temperature\(south_north,e)o(ast_)o(west)o(\))p FD(.)42
-b(T)-8 b(o)33 b(\014nd)150 2026 y(the)d(a)m(v)m(erage)i(temp)s(erature)
-e(in)g(a)g(region)g(b)s(ounded)e(b)m(y)i([)p Fz(lat)p
-2235 2026 28 4 v 41 w(min)p FD(,)p Fz(lat)p 2558 2026
-V 41 w(max)6 b FD(])30 b(and)g([)p Fz(lon)p 3152 2026
-V 40 w(min)p FD(,)p Fz(lon)p 3490 2026 V 40 w(max)6 b
-FD(]:)390 2190 y Fy(temperature_msk[$south_n)o(orth)o(,$ea)o(st_)o
-(west)o(]=0.)o(0;)390 2300 y(where\(lat)45 b(>=)i(lat_min)f(&&)h(lat)g
-(<=)h(lat_max\))d(&&)i(\(lon)g(>=)g(lon_min)f(&&)h(lon)g(<=)g
-(lon_max\))485 2409 y(temperature_msk=temperatur)o(e;)390
-2519 y(elsewhere)485 2628 y(temperature_msk=temperatur)o(e at _F)o(ill)o
-(Valu)o(e;)390 2848 y(temp_avg=temperature_msk)o(.avg)o(\(\);)390
-2957 y(temp_max=temperature.max)o(\(\);)150 3166 y Fu(4.1.14)63
-b(Lo)s(ops)150 3313 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 3422
-y(them)30 b(only)g(with)g FC(RAM)g FD(v)-5 b(ariables)30
+(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
+(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
+(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
+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
+(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
+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
+(${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
+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
+(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
+(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.5)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)
+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
+(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
+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
 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 3532 y(a)h(lo)s(op)f(use)g(the)
+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 3696
+(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 3806 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 3915 y
-(*sz_idx=$time.size;)390 4025 y(*sz_jdx=$lat.size;)390
-4244 y(for\(*idx=0;idx<sz_idx;id)o(x++\))485 4354 y
-(for\(*jdx=0;jdx<sz_jdx;jdx+)o(+\))581 4463 y(if\(temp\(idx,jdx\))c(>)
-48 b(100\))e(temp\(idx,jdx\)=100.0;)676 4573 y(else)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
 (if\(temp\(idx,jdx\))c(<)48 b(0\))f(temp\(idx,jdx\)=0.0;)390
-4792 y(//)g(Are)g(values)f(of)h(co-ordinate)e(variable)h(double)g
-(lat\(lat\))f(monotonic?)390 4902 y(*sz=$lat.size;)390
-5121 y(for\(*idx=1;idx<sz;idx++\))485 5230 y
-(if\(lat\(idx\)-lat\(idx-1\))d(<)48 b(0.0\))e(break;)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.4)j(User)d(Guide)390 299 y Fy(if\(idx)46 b(==)h(sz\))g
-(print\("lat)e(co-ordinate)g(is)i(monotonic\\n"\);)533
-408 y(else)g(print\("lat)e(co-ordinate)g(is)i(NOT)g(monotonic\\n"\);)
-390 628 y(//)g(Sum)g(odd)g(elements)390 737 y(*idx=0;)390
-847 y(*sz=$lat_nw.size;)390 956 y(*sum=0.0;)390 1176
-y(while\(idx<sz\){)485 1285 y(if\(lat\(idx\)\0452\))d(sum+=lat\(idx\);)
-485 1395 y(idx++;)390 1504 y(})390 1724 y(ram_write\(sum\);)390
-1833 y(print\("Total)g(of)k(odd)f(elements)e
-("\);print\(sum\);print\("\\n"\))o(;)150 2053 y Fu(4.1.15)63
-b(Include)41 b(\014les)150 2200 y FD(The)30 b(syn)m(tax)h(of)f(an)h
-Fz(include-\014le)k FD(is:)390 2370 y Fy(#include)46
-b("script.nco")275 2540 y FD(The)24 b(script)i(\014lename)f(is)g(searc)
+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)
 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
-2650 y(\014les)36 b(to)i(an)e(arbitrary)g(depth.)59 b(A)36
+1550 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 2759 y(Use)31 b FC(RAM)g FD(v)-5
+(used)f(constan)m(ts.)150 1660 y(Use)31 b FC(RAM)g FD(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 2929
-y Fy(//)47 b(script.nco)390 3039 y(//)g(Sample)f(file)h(to)g(#include)f
-(in)h(ncap2)f(script)390 3148 y(*pi=3.1415926535;)d(//)k(RAM)g
-(variable,)e(not)i(written)f(to)h(output)390 3258 y(*h=6.62607095e-34;)
+(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;)
 c(//)k(RAM)g(variable,)e(not)i(written)f(to)h(output)390
-3367 y(e=2.71828;)e(//)i(Regular)f(\(disk\))g(variable,)f(written)h(to)
-h(output)150 3588 y Fu(4.1.16)63 b Fl(sort)41 b Fu(metho)s(ds)150
-3734 y FD(In)35 b FC(ncap2)g FD(there)i(are)f(m)m(ultiple)h(w)m(a)m(ys)
+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 3844 y FC(ncap2)29
-b FD(supp)s(ort)g(six)h(sorting)h(functions:)390 4014
+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 4124 y(var_out=asort\(var_in,&sr)o(t_ma)o(p\);)c
-(//)47 b(Accending)f(sort)390 4233 y(var_out=dsort\(var_in,&sr)o(t_ma)o
-(p\);)41 b(//)47 b(Desending)f(sort)390 4343 y
+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
 (var_out=remap\(var_in,srt)o(_map)o(\);)c(//)47 b(Apply)f(srt_map)g(to)
-h(var_in)390 4452 y(var_out=unmap\(var_in,srt)o(_map)o(\);)42
+h(var_in)390 3349 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
-4562 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 4732
+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 4841 y Fz(v)-5 b(ar)p 280 4841
+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
 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 4951 y(function,)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)
 g(order.)41 b(Remem)m(b)s(er)30 b(that)i(ascending)150
-5061 y(and)e(descending)g(sorts)g(are)h(sp)s(eci\014ed)f(b)m(y)g
+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 5230 y(These)26 b(three)h(functions)f(are)i(o)m(v)m(erloaded)g
+b(.)275 4125 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 5340 y(map)33 b Fz(srt)p 468 5340 V 40 w(map)p
+(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)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)150
-299 y(an)33 b(amp)s(ersand.)46 b(If)32 b(the)h(sort)g(map)g(do)s(es)f
+(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 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 Fz(v)-5 b(ar)p 898 584 28 4 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 584
-V 40 w(in)p FD(.)53 b(The)150 693 y(output)33 b Fz(v)-5
-b(ar)p 581 693 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 803 y(applying)29 b(\(with)g
-Fy(unmap\(\))p FD(\))f(the)h(sort)h(map)f Fz(srt)p 1811
-803 V 40 w(map)i FD(to)f(the)g(input)e Fz(v)-5 b(ar)p
-2685 803 V 40 w(in)p FD(.)40 b(T)-8 b(o)30 b(apply)e(the)i(sort)f(map)
-150 913 y(with)g Fy(remap\(\))f FD(the)h(size)i(of)e(the)h(v)-5
+(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 1088 y(The)d(\014nal)g(function)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 1088 V 39 w(map)i FD(whic)m(h)e(is)150
-1198 y(in)m(v)m(erse)j(map)f(of)g(the)h(input)e(map)h
-Fz(srt)p 1470 1198 V 40 w(map)p FD(.)40 b(This)29 b(giv)m(es)j(the)e
+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
-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 Fy
-(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 FD(If)30 b(the)i(map)f(v)-5 b(ariable)32 b(do)s(es)f(not)g
+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.5)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 2863 y(the)i(same)h(shap)s(e)e(as)h(the)h
+(b)s(e)g(created)h(with)150 1724 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 2973 y(exists,)c(then)e(the)i(only)f(restriction)h(is)e
+b(already)150 1833 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 3082 y(T)d(o)31 b(apply)f(a)h(map)f(use)g
-Fy(remap\(var_in,srt_map\))p FD(.)390 3258 y Fy(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: 124 130
-TeXDict begin 124 129 bop 150 -116 a FD(124)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(//)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 FD(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 Fy(reverse\(\))d FD(metho)s(d)h(after)i(the)g
-Fy(sort\(\))p FD(.)275 1760 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 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 Fy(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: 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)533
-299 y Fy(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 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
+(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
+(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.5)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
-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
+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
-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
+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
-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)
+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
-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
+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 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
+(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
 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 3806 y(meeting)f(the)h(mask)g(condition)e
+(so)i(that)g(all)g(points)533 2600 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
-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
+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
 (last)i(msk_nbr)f(values)g(of)h(variable\(s\))e(of)i(interest)f(*/)390
-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
+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
 (\(dmn)o(_in_)o(sz-)o(msk_)o(nbr\))o(:\(d)o(mn_i)o(n_sz)o(-1\))o(\);)
-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
+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
 (coordinate)f(of)i(interest,)e(time,)h(is)i(written)d(to)j(the)f
-(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: 126 132
-TeXDict begin 126 131 bop 150 -116 a FD(126)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(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 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 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 Fy(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
+(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
 (variable)e(three_dmn_rec_var\(time,lat)o(,lon)o(\))533
-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
+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
 (overloaded,)e(and)i(takes)f(one)h(or)g(two)g(arguments)533
-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
+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
 (reference,)e(i.e.,)i(prefix)f(with)h(an)g(ampersand)533
-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
+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
 (type)h(the)f(same)h(shape)f(as)i(the)f(input)f(variable.)533
-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
+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
 (\(ascending)f(order\))h(and)h(associated)e(sort)i(map)g
 (=\\n"\);print\(time\);print)o(\(srt)o(_map)o(\);)390
-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
+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
 (solve)g(the)h(problem)f(in)h(ascending)e(order)i(\(the)f(default\))533
-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
+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
 (the)h(sort)g(map)f(to)i(return)e(things)g(in)h(descending)533
-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
+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
 (to)g(srt_map_3d,)e(the)i(size)f(of)h(the)g(data)g(array)533
-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
+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
 (into)h(an)g(integer)f(so)h(srt_map_3d)e(is)i(an)h(integer)533
-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
+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
 (map)g(to)g(the)g(3-d)g(sort)f(map)h(\(NCO)g(automatically)d(resizes\))
-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: 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)533
-299 y Fy(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 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
+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)
+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.5)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
 y(lat_lon_idx[$lat,$lon]=l)o(at_i)o(dx+l)o(on_)o(idx;)390
-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
+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
 y(//)h(Method)f(two:)h(Key)g(difference)e(is)i
-(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 Fu(4.1.17)63 b(Irregular)41 b(Grids)150
-3874 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 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
 (man)m(y)g(di\013eren)m(t)g(underlying)f(co)s(ordinate)i(grid)f(t)m(yp)
-s(es.)150 3984 y(netCDF)26 b(w)m(as)g(dev)m(elop)s(ed)f(for)g(and)g
+s(es.)150 2776 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 4093 y(forming)33 b(a)g(rectangular)h(co)s(ordinate)f
+(dimensions)150 2886 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
-4203 y(ingly)h(common)g(for)f(datasets)h(to)h(use)e(metadata)i(to)f
+2996 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 4313 y(\014rst)c(de\014ne)f(three)i(imp)s(ortan)m(t)f
+b(Let)34 b(us)150 3105 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 4498
+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(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 4607 y(degree)g
+b(F)-8 b(or)39 b(example,)j(a)d(4-b)m(y-5)150 3399 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
-4717 y(\(4)31 b(degrees)q(\))c(are)h(constan)m(t)h(as)f(are)f(the)h
+3508 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 4826 y(ing)27 b(in)g Fo(irr)-5
+(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
 (along)g(the)g(co)s(ordinate.)40 b(Grids)27 b(suc)m(h)f(as)i(Gaussian)
-150 4936 y(grids)f(ha)m(v)m(e)i(unev)m(en)e(spacing)h(in)f(latitude)h
+150 3727 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 5121 y(Grids)35 b(are)h Fo(r)-5 b(e)g(ctangular)48
+(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 5230 y(an)m(y)f(other)h
+(dimension)g(is)g(not)g(a)g(function)g(of)150 4021 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 5340
+(latitude-longitude)i(grid)e(is)g(rectangular)150 4131
 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)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.4)j(User)d(Guide)150 299 y(are)j 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 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
-FC(NCO)p FD(.)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
-(62\),)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
-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 950 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 1060 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 1221 y(Before)i(describing)f(the)h
+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
 (construction)h(of)e(masks,)i(let)f(us)f(review)h(ho)m(w)g(irregularly)
-g(gridded)e(geo-)150 1330 y(science)40 b(data)f(are)g(describ)s(ed.)63
+g(gridded)e(geo-)150 5340 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)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 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 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 Fz(R)p FD(=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
-Fz(R)p FD(=2)h(is)f(common:)275 2413 y Fz(R)p FD(=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 FC(WRF)p FD(\))f(mo)s(del)e(uses)g Fz(R)p FD(=3:)275
-2736 y Fz(R)p FD(=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 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 3168 y(so-called)e Fy(")p
-FD(staggered)f(grids)p Fy(")f FD(will)g(use)g(few)m(er)g(east)p
-2017 3168 V 41 w(w)m(est)h(p)s(oin)m(ts)f(near)g(the)g(p)s(oles)g(and)g
-(more)g(near)150 3277 y(the)f(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 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 Fy(ncap2)e FD(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 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 3767 V 41 w(min)p
-FD(,)p Fz(lat)p 3514 3767 V 41 w(max)6 b FD(])150 3877
-y(and)30 b([)p Fz(lon)p 479 3877 V 40 w(min)p FD(,)p
-Fz(lon)p 817 3877 V 40 w(max)6 b FD(]:)390 4038 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 4147 y(\(lon)f(>=)h(lon_min)f(&&)h(lon)g(<=)g
-(lon_max\);')e(in.nc)i(out.nc)275 4309 y FD(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
-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
-4579 y Fy(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 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 FD(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 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 5121 y Fy(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
-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: 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)485
-299 y Fy(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 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 1006 y(metadata)d(to)f(determine)f(the)g(grid)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 Fy(")p FD(staggered)f(grids)p
+Fy(")f FD(will)g(use)g(few)m(er)g(east)p 2017 2082 V
+41 w(w)m(est)h(p)s(oin)m(ts)f(near)g(the)g(p)s(oles)g(and)g(more)g
+(near)150 2191 y(the)f(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
+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
+(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
+(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
+(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
+(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
+(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
+(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 1116 y(latitudes,)41
+FD(and)h Fy(XLONG)e FD(in)m(to)j(real)150 5230 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
-1226 y(this.)k(F)-8 b(or)31 b FC(WRF)g FD(\014les)f(creating)i
-(regional)f(masks)g(lo)s(oks)f(lik)m(e)390 1385 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
-1545 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 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 Fz(R)p FD(.)150 1854
-y Fu(4.1.18)63 b(Bilinear)41 b(in)m(terp)s(olation)150
-2001 y FD(As)32 b(of)g(v)m(ersion)h(4.0.0)h FC(NCO)e
+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.5)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 2110 y(data)g(sets.)43
+(terp)s(olation)i(on)e(gridded)150 1024 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
-2220 y(in)m(terp)s(olating)40 b(functions)e(of)h(t)m(w)m(o)h(v)-5
+1134 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 2329 y(in)m(terp)s(olation)
+b(idea)g(is)g(to)g(p)s(erform)f(linear)150 1243 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 2489 y(Supp)s(ose)22 b(w)m(e)i(ha)m(v)m(e)h(an)
+(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 2598 y Fy(lat[lat],)28
+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 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
-Fy(lat_min)29 b(<=)g(X)150 2818 y(<=)h(lat_max)i FD(and)h
+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 2927
+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
-3087 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 3246 y Fy
+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
 (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
-3406 y FD(where)150 3590 y Fy(grid_in)144 b FD(Input)37
+2320 y FD(where)150 2504 y Fy(grid_in)144 b FD(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
-3700 y Fy(grid_in_x.size\(\)*grid_in)o(_y.s)o(ize\()o(\))150
-3859 y(grid_out)96 b FD(This)32 b(v)-5 b(ariable)34 b(is)f(the)g(shap)s
+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 3969 y(m)m(ust)30
+(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 4129 y(grid_out_x)630 4238 y Fz(X)40 b
-FD(output)30 b(v)-5 b(alues)150 4398 y Fy(grid_out_y)630
-4507 y Fz(Y)43 b FD(output)30 b(v)-5 b(alues)150 4667
-y Fy(grid_in_x)630 4777 y Fz(X)40 b FD(input)29 b(v)-5
+(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
 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 4936 y Fy(grid_in_y)630
-5046 y Fz(Y)43 b FD(input)30 b(v)-5 b(alues)30 b(v)-5
+(\(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
 b(alues.)41 b(Must)31 b(b)s(e)e(monotonic)j(\(increasing)f(or)g
-(decreasing\).)150 5230 y(Prior)39 b(to)h(calculations)h(all)f(argumen)
+(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 5340 y Fy(var_out)28
+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(.)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.4)j(User)d(Guide)275 299 y(Supp)s(ose)e(the)j(\014rst)e(part)i
-(of)f(an)g Fy(ncap2)f FD(script)i(is)390 471 y Fy(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 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 2131 y Fy(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
+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
 (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
-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
+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 3571 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 3680 y(print\(var_out\);)390
-3790 y(//)47 b(513.920594059406)150 3962 y Fq(W)-8 b(rapping)30
-b(and)f(Extrap)s(olation)150 4072 y FD(The)g(function)g
+(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 4181 y FD(but)36
+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 4291 y(the)37 b(giv)m(en)g(range)g
+(edge)h(of)f(the)g(grid.)59 b(If)150 3203 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
-4401 y(endp)s(oin)m(ts)e(of)g(the)h(range)g(are)g(used)f(for)g(the)h
+3313 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 4510 y(wrapping)36 b(to)i(o)s(ccur)g
+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
 (in)g(the)g(range)h(\(0,360\))i(or)e(\(-180,180\).)150
-4620 y(There)22 b(are)h(no)g(restrictions)h(on)f(the)f(longitude)i(\()p
+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 4729 y(\(-90,90\).)44 b(This)29
+(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 4902
-y Fy(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: 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)390
-299 y Fy(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
+(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.5)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 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 Fu(4.1.19)63 b(GSL)41 b(sp)s(ecial)h(functions)150
-3273 y FD(As)47 b(of)h(v)m(ersion)g(3.9.6)h(\(released)g(Jan)m(uary)-8
+(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)47 b(of)h(v)m(ersion)g(3.9.6)h(\(released)g(Jan)m(uary)-8
 b(,)52 b(2009\),)i FC(NCO)48 b FD(can)g(link)f(to)h(the)g(GNU)g(Scien)m
-(ti\014c)h(Li-)150 3383 y(brary)37 b(\()p FC(GSL)p FD(\).)65
+(ti\014c)h(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
-3493 y(gamma,)d(b)s(eta,)f(h)m(yp)s(ergeometric,)i(and)c(Legendre)g
+2418 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 3602 y(b)s(e)28 b(v)m(ersion)j(1.4)f(or)e(later.)41
+b FD(m)m(ust)150 2527 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 3712 y(-f)i(|)g(grep)f(^gsl)p FD(.)150 3871
+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 3981 y FD(functions)26
+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
-3948 y Ft(2)3725 3981 y FD(.)150 4090 y(This)26 b(allo)m(ws)j
+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 4200 y(or)35 b(a)h(\015oating)g(p)s(oin)m(t)f(exception.)57
+(error)150 3135 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 4309 y(the)42 b FC(GSL)h FD(n)m(umerical)f
+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(negligible)i(\(please)f(let)
-g(us)f(kno)m(w)g(if)g(y)m(ou)g(\014nd)150 4419 y(otherwise\).)150
-4578 y(Consider)30 b(the)g(gamma)h(function.)150 4688
+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
-4798 y Fy(int)e(gsl_sf_gamma_e\(const)c(double)k(x,)h(gsl_sf_result)c
+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
-4907 y(b)s(e:)390 5067 y Fy(lon_in[lon]={-1,0.1,0,2,)o(0.3})o(;)p
-150 5154 1200 4 v 199 5221 a Ft(2)297 5253 y Fs(These)i(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: 132 138
-TeXDict begin 132 137 bop 150 -116 a FD(132)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(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 FD(The)38 b(\014rst)g(v)-5 b(alue)38 b(is)h(set)g(to)g
+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 687 y(in)m(tegers.)52 b(If)33
+(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 796 y(default)22 b(double)f(\014ll)h(v)-5
+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 906 y(=)30
-b(9.969e+36)p FD(\).)150 1074 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 1184
+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\))275 1353 y FD(An)g Fy(ncap2)e
-FD(script)j(w)m(ould)f(b)s(e)390 1521 y Fy(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 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
-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 2078 y Fy(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 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 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
-2685 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 2794
-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 2904 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 3072 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 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 3519 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
-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 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
-3848 y Fy(GSL_PREC_MODE)p FD(.)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 3957 y(for)30
-b(more)h(details.)390 4126 y Fy(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 FD(The)37 b Fy(ncap2)f FD(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 4623 y FC(GSL)30
-b FD(protot)m(yp)s(e)150 4733 y Fy(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
-4902 y(b1=lon.double\(\);)390 5011 y(x=0.5;)390 5121
+(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
+(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
+(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
+(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
+(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
+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
+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
+(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(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
 y(status=gsl_sf_bessel_Jn_)o(arra)o(y\(1,)o(4,x)o(,&b1)o(\);)390
-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: 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)150
-299 y(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 408
+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 518 y(used.)45
+(the)h(\014rst)e(v)-5 b(alue)28 b(is)150 4581 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 628 y(this)25 b(is)g(a)h(call)g(b)m(y)f
+Fy(&)g FD(indicates)150 4691 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 737 y(size)34 b Fz(nmax-nmin)p Fy(+)p Fz(1)p FD(.)50
+150 4800 y(size)34 b Fz(nmax-nmin)p Fy(+)p Fz(1)p FD(.)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 847 y(an)d(error)g(message.)42
+(then)g(the)h(function)f(returns)150 4910 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 1022 y(Consider)f(another)g(arra)m
-(y)h(function)150 1132 y Fy(int)e(gsl_sf_legendre_Pl_array\()24
+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(int)29 b(lmax,)g(double)g(x,)h(double)e(*result_array\);)390
-1307 y(a1=time.double\(\);)390 1417 y(x=0.3;)390 1526
+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.5)j(User)d(Guide)390 299 y Fy(x=0.3;)390 408
 y(status=gsl_sf_legendre_P)o(l_ar)o(ray\()o(a1.)o(size)o(\(\)-1)o(,)42
-b(x,&a1\);)390 1636 y(print\(status\);)150 1811 y FD(This)25
-b(call)i(calculates)g Fz(P)p 992 1811 28 4 v 40 w(l)t
+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 1921 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 2096
+(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 2206 y(for)i FC(GSL)g
+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
 (a)m(v)-5 b(ailable)34 b(on)e(y)m(our)h(build)e(run)g(the)h(command)150
-2315 y Fy(ncap2)d(-f)h(|grep)f(^gsl)e FD(.)41 b(T)-8
+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 2425
-y(the)i(spreadsheet)f Fq(do)s(c/nco)p 1124 2425 28 5
-v 40 w(gsl.o)s(ds)p FD(.)150 2819 y Fq(GSL)g(NAME)867
-b(I)144 b(NCAP)30 b(FUNCTION)g(CALL)150 2929 y FD(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: 134 140
-TeXDict begin 134 139 bop 150 -116 a FD(134)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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
+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
 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(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
+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
 y(gsl)p 262 3587 V 41 w(sf)p 367 3587 V 39 w(b)s(essel)p
-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
+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
 y(gsl)p 262 3696 V 41 w(sf)p 367 3696 V 39 w(b)s(essel)p
-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
+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
 y(gsl)p 262 3806 V 41 w(sf)p 367 3806 V 39 w(b)s(essel)p
-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
+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
 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(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
+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
 1802 4902 V 40 w(sf)p 1906 4902 V 40 w(b)s(essel)p 2177
-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
+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
 1802 5011 V 40 w(sf)p 1906 5011 V 40 w(b)s(essel)p 2177
-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
+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
 1802 5121 V 40 w(sf)p 1906 5121 V 40 w(b)s(essel)p 2177
-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: 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)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: 136 142
-TeXDict begin 136 141 bop 150 -116 a FD(136)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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(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
+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(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
+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(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(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(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(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
+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.4)j(User)d(Guide)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(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
+b FD(4.4.5)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(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 Fu(4.1.20)63 b(GSL)41
-b(in)m(terp)s(olation)150 3057 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
-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 FC(GSL)h
-FD(functions)f(computes)h(a)g(con)m(tin)m(uous)150 3436
-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 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 FC(GSL)f FD(man)m(ual.)150
-3815 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
-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 FC(RAM)i FD(v)-5 b(ariable)22
-b(holds)f(in)g(memory)150 4034 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
-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 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 4413 y(A)f(simple)h(example)390 4573 y Fy
-(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
+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
+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.4)j(User)d(Guide)390 299 y Fy(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 FD(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 Fb(GSL)h Fq(In)m(terp)s(olation)i(T)m(yp)s(es)
-150 1653 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
-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
+b FD(4.4.5)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
+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
+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
+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
+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.5)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
-2933 y(Implemen)m(ted)150 3043 y FD(gsl)p 262 3043 V
-41 w(spline)p 531 3043 V 39 w(ev)-5 b(al\(\))150 3152
-y Fq(Unimplemen)m(ted)150 3262 y FD(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 Fu(4.1.21)63 b(GSL)41 b(least-squares)h(\014tting)150
-3986 y FD(Least)26 b(Squares)f(\014tting)g(is)h(a)f(metho)s(d)g(of)g
+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
 (calculating)j(a)d(straigh)m(t)i(line)f(through)e(a)i(set)g(of)f(exp)s
-(erimen)m(tal)150 4095 y(data)c(p)s(oin)m(ts)f(in)g(the)h(XY)f(plane.)
+(erimen)m(tal)150 3107 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 4205
+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
-4389 y(These)g FC(GSL)h FD(functions)f(fall)h(in)m(to)g(three)f
-(categories:)150 4498 y Fq(A\))g FD(Fitting)i(data)f(to)g(Y=c0)p
-Fy(+)p FD(c1*X)150 4608 y Fq(B\))f FD(Fitting)i(data)f(\(through)f(the)
-h(origin\))g(Y=c1*X)150 4718 y Fq(C\))f FD(Multi-parameter)i(\014tting)
-f(\(not)g(y)m(et)g(implemen)m(ted\))275 5011 y Fq(Section)g(A)150
-5230 y Fy(status=)p Fq(gsl)p 598 5230 28 5 v 39 w(\014t)p
-723 5230 V 40 w(linear)150 5340 y Fy(\(data_x,stride_x,data_y,)o(stri)o
+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
 (de_y)o(,n,)o(&co,)o(&c1,)o(&co)o(v00,)o(&cov)o(01,)o(&cov)o(11,&)o
-(sum)o(sq\))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 Fq(Input)29 b(v)-5 b(ariables)p FD(:)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 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 Fy(double)p FD(.)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 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 1011
+(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
+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
 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 1121 y(v)-5 b(ariables)31 b(don't)f(exist)i(prior)d(to)i
+(output)150 5340 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)150 1230 y(t)m(yp)s(e)h
-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 1340 y(call)g(is)e(successful)g(then)g
-Fy(status=0)p FD(.)275 1504 y Fy(status=)e Fq(gsl)p 751
-1504 28 5 v 40 w(\014t)p 877 1504 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
-1614 y(y,n,&co,&c1,&cov00,&cov0)o(1,&c)o(ov11)o(,&c)o(hisq)o(\))150
-1778 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 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
-Fy(data_y_out=)p Fq(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 Fy
-(\(data_x,c0,c1,cov00,cov01,)o(cov)o(11\))150 2217 y
+(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.5)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 2600
-y Fq(Section)g(B)150 2819 y Fy(status=)p Fq(gsl)p 598
-2819 V 39 w(\014t)p 723 2819 V 40 w(m)m(ul)p Fy
+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
 (\(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 2984 y Fq(Input)e(v)-5 b(ariables)p
-FD(:)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
+(,&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
 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 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
+(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 3477 y Fq(Output)g(v)-5 b(ariables)p
-FD(:)41 b(c1,co)m(v11,sumsq)275 3751 y Fy(status=)28
-b Fq(gsl)p 751 3751 28 5 v 40 w(\014t)p 877 3751 V 40
+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 3861 y(y,n,&c1,&cov11,&sumsq\))150 4025
+(,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
 (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 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
-Fy(data_y_out=)p Fq(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 Fy
-(\(data_x,c0,c1,cov11\))150 4463 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 4847
+(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
-4847 V 40 w(\014t)p 1450 4847 V 40 w(linear\(\))i FD(in)e(action)390
-5011 y Fy(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
+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
 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(;)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.4)j(User)d(Guide)390 299 y Fy(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 Fu(4.1.22)63 b(GSL)41
-b(statistics)150 2126 y FD(W)-8 b(rapp)s(ers)44 b(for)h(most)g(of)g
+(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 2236 y FD(function)34
+(implemen)m(ted.)84 b(The)45 b FC(GSL)150 1250 y FD(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 2345 y(equiv)-5 b(alen)m(t)36 b FC(NCO)f
+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
 (then)f(dep)s(ending)e(on)i(the)g(data)h(t)m(yp)s(e)150
-2455 y(the)29 b(appropriate)f FC(GSL)g FD(function)h(is)f(called.)41
+1469 y(the)29 b(appropriate)f FC(GSL)g FD(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 2565 y(wvariance\(\))33 b FD(are)j(only)f
+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
 (es;)k(so)d(y)m(our)f(data)h(m)m(ust)g(of)g(t)m(yp)s(e)150
-2674 y Fy(float)h FD(or)h Fy(double)e FD(otherwise)i(ncap2)h(will)f
+1688 y Fy(float)h FD(or)h Fy(double)e FD(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 2784 y(functions)30 b(use)g(the)h(shell)f(command)g
-Fy(ncap2)f(-f|grep)g(_stats)150 2945 y FC(GSL)h FD(F)-8
-b(unctions)390 3107 y Fy(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
+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
 (gsl_stats_int_mean)d(\(int)k(data[],)e(size_t)h(stride,)g(size_t)g
-(n\);)390 3326 y(double)g(gsl_stats_short_sd_with_f)o(ixe)o(d_me)o(an)c
+(n\);)390 2340 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 3436 y(double)g(gsl_stats_wmean)e(\(double)i(w[],)g(size_t)g
+390 2450 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
-3545 y(double)g(gsl_stats_quantile_from_s)o(ort)o(ed_d)o(ata)41
+2559 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 3707 y FD(Equiv)-5 b(alen)m(t)31
-b(ncap2)g(wrapp)s(er)d(functions)390 3869 y Fy(short)46
+(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
 b(gsl_stats_max)f(\(var_data,)g(data_stride,)f(n\);)390
-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
+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
 (\(var_weight,)g(weight_stride,)g(var_data,)h(data_stride,)g(n,)i
-(var_mean\);)390 4307 y(double)f(gsl_stats_quantile_from_s)o(ort)o
+(var_mean\);)390 3321 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 4469 y FC(GSL)26 b FD(has)g(no)g(notion)h(of)f(missing)g(v)-5
+150 3482 y FC(GSL)26 b FD(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 4578 y(v)-5
+b(If)26 b(y)m(our)g(data)h(has)f(missing)150 3592 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 4688 y(functions\()32 b(Section)h(4.1.11)h([Metho)s(ds)f
-(and)e(functions],)i(page)g(117)g(\).)47 b(The)31 b FC(GSL)i
-FD(functions)e(op)s(erate)150 4798 y(on)36 b(a)h(v)m(ector)g(of)g(v)-5
+(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
 b(alues)36 b(created)h(from)f(the)h(v)-5 b(ar)p 1866
-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
+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
 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 5017 y(in)30 b(the)h(v)m(ector.)275 5178 y(Some)f(examples)
-390 5340 y Fy(a1[time]={1,2,3,4,5,6,7,)o(8,9,)o(10)42
-b(};)p eop end
-%%Page: 143 149
-TeXDict begin 143 148 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(143)390
-408 y Fy(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 1450 y FD(F)-8
-b(or)37 b(functions)f(with)g(the)h(signature)f Fq(func)p
-1669 1450 28 5 v 40 w(nm\(v)-5 b(ar)p 1997 1450 V 39
-w(data,data)p 2409 1450 V 41 w(stride,n\))p FD(,)39 b(one)d(ma)m(y)h
-(omit)g(the)g(sec-)150 1559 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 1669 y Fy
-(1+\(data.size\(\)-1\)/stride)o FD(.)390 1833 y Fy(//)k(Following)e
-(statements)g(are)i(equvalent)390 1943 y(n2=gsl_stats_max\(a1,1,10)o
-(\))390 2052 y(n2=gsl_stats_max\(a1,1\);)390 2162 y
-(n2=gsl_stats_max\(a1\);)390 2381 y(//)g(Following)e(statements)g(are)i
-(equvalent)390 2491 y(n3=gsl_stats_median_from)o(_sor)o(ted_)o(dat)o
-(a\(a1)o(,2,5)o(\);)390 2600 y(n3=gsl_stats_median_from)o(_sor)o(ted_)o
-(dat)o(a\(a1)o(,2\);)390 2819 y(//)g(Following)e(statements)g(are)i
-(NOT)g(equvalent)390 2929 y(n4=gsl_stats_kurtosis\(a1)o(,3,2)o(\);)390
-3039 y(n4=gsl_stats_kurtosis\(a1)o(,3\);)41 b(//default)k(n=4)275
-3203 y FD(The)22 b(follo)m(wing)i(example)f(illustrates)h(some)f(of)g
+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
+eop end
+%%Page: 146 152
+TeXDict begin 146 151 bop 150 -116 a FD(146)2582 b FC(NCO)30
+b FD(4.4.5)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
 (the)f(w)m(eigh)m(ted)i(functions.)38 b(The)22 b(data)h(are)g(randomly)
-150 3313 y(generated.)42 b(In)29 b(this)i(case)g(the)g(v)-5
+150 2173 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 3477 y Fy(defdim\("r1",2000\);)390
-3587 y(data[r1]=1.0;)390 3806 y(//)47 b(Fill)g(with)f(random)h(numbers)
-e([0.0,10.0\))390 3915 y(data=10.0*gsl_rng_unifor)o(m\(da)o(ta\);)390
-4134 y(//)i(Create)f(a)i(weighting)d(variable)390 4244
-y(weight=\(data>4.0\);)390 4463 y(wmean=gsl_stats_wmean\(we)o(ight)o
-(,1,d)o(ata)o(,1,$)o(r1.s)o(ize)o(\);)390 4573 y(print\(wmean\);)390
-4792 y(wsd=gsl_stats_wsd\(weight)o(,1,d)o(ata,)o(1,$)o(r1.s)o(ize\))o
-(;)390 4902 y(print\(wsd\);)390 5121 y(//)i(number)f(of)h(values)g(in)g
-(data)f(that)h(are)g(greater)f(than)g(4)390 5230 y
-(weight_size=weight.total)o(\(\);)390 5340 y(print\(weight_size\);)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.4)j(User)d(Guide)390 408 y Fy(//)47 b(print)g(min/max)e(of)j
-(data)390 518 y(dmin=data.gsl_stats_min\()o(\);)390 628
-y(dmax=data.gsl_stats_max\()o(\);)390 737 y
-(print\(dmin\);print\(dmax\);)150 941 y Fu(4.1.23)63
-b(GSL)41 b(random)h(n)m(um)m(b)s(er)f(generation)150
-1088 y FD(The)j FC(GSL)h FD(library)f(has)g(a)h(large)h(n)m(um)m(b)s
+(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 1197 y(are)27 b(a)h(large)g(set)g(of)f
+b(In)44 b(addition)h(there)150 5230 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 1307 y(probabilt)m(y)e
+(to)j(discrete)g(or)f(con)m(tin)m(uous)150 5340 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)150
-1416 y(n)m(um)m(b)s(ers)j(output,)i(sp)s(eed)e(of)i(execution)h(and)e
+(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 1526 y(see)40 b(the)h FC(GSL)f
+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
 (set)f(via)h(en)m(vironmen)m(t)f(v)-5 b(ariables,)150
-1636 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 1797 y Fq(Setup)150 1907 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 2016 y(isn't)31
-b(set)g(then)f(the)h(default)f(rng)h(algorithm)g(is)g(gsl)p
-1945 2016 28 4 v 40 w(rng)p 2117 2016 V 40 w(19937.)43
-b(The)30 b(seed)h(is)f(set)i(with)e(the)h(en)m(viron-)150
-2126 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 2235 y(ab)s(out)30 b(the)h(c)m(hosen)g
-(algorithm.)150 2534 y Fy(gsl_rng_min\(\))630 2643 y
-FD(the)g(minimium)e(v)-5 b(alue)31 b(returned)e(b)m(y)h(the)h(rng)f
-(algorithm.)150 2807 y Fy(gsl_rng_max\(\))630 2916 y
-FD(the)h(maximium)f(v)-5 b(alue)30 b(returned)g(b)m(y)g(the)g(rng)g
-(algorithm.)150 3105 y Fq(Uniformly)g(Distributed)g(Random)g(Num)m(b)s
-(ers)150 3294 y Fy(gsl_rng_get\(var_in\))630 3403 y FD(This)f(function)
-h(returns)f(v)-5 b(ar)p 1637 3403 V 40 w(in)30 b(with)g(in)m(tegers)h
+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
 (from)f(the)g(c)m(hosen)h(rng)f(algorithm.)41 b(The)630
-3513 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 3676 y Fy
-(gsl_rng_uniform_int\(var_)o(in\))630 3786 y FD(This)i(function)g
-(returns)f(v)-5 b(ar)p 1644 3786 V 40 w(in)32 b(with)g(random)f(in)m
+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
 (tegers)j(from)d(0)i(to)g(n-1.)47 b(The)32 b(v)-5 b(alue)32
-b(n)630 3896 y(m)m(ust)c(b)s(e)f(less)h(than)f(or)h(equal)g(to)h(the)f
+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 4059 y Fy(gsl_rng_uniform\(var_in\))630 4169 y FD(This)c(function)g
-(returns)g(v)-5 b(ar)p 1621 4169 V 40 w(in)24 b(with)g
+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
-4278 y(The)30 b(range)h(includes)f(0.0)h(and)f(excludes)g(1.0.)150
-4442 y Fy(gsl_rng_uniform_pos\(var_)o(in\))630 4552 y
-FD(This)23 b(function)g(returns)g(v)-5 b(ar)p 1618 4552
+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 4661 y(excluding)31 b(b)s(oth)e(0.0)j(and)d
-(1.0.)150 4850 y(Belo)m(w)j(are)f(examples)g(of)f Fy(gsl_rng_get\(\))d
+(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
-5011 y Fy(export)46 b(GSL_RNG_TYPE=ranlux)390 5121 y(export)g
-(GSL_RNG_SEED=10)390 5230 y(ncap2)g(-v)i(-O)f(-s)g
+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
 ('a1[time]=0;a2=gsl_rng_g)o(et\(a)o(1\);)o(')42 b(in.nc)k(foo.nc)390
-5340 y(//)h(10)g(random)f(numbers)g(from)h(the)g(range)f(0)i(-)f
-(16777215)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
-299 y Fy(//)47 b(a2=9056646,)e(12776696,)g(1011656,)h(13354708,)f
-(5139066,)h(1388751,)f(11163902,)g(7730127,)h(15531355,)f(10387694)h(;)
-390 518 y(ncap2)g(-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
-628 y(//)h(10)g(random)f(numbers)g(from)h(the)g(range)f(0)i(-)f(20)390
-737 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 1017 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 1127 y(algorithm)46 b(has)f(a)g(maximium)g(v)-5
+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
+(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
+('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 1236 y(functions)30
+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 1346 y(Please)36 b(b)s(e)e(a)m(w)m(are)j(of)e
+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)150 1456 y(the)29 b 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
-1565 y FD(and)h Fy(gsl_ran_pascal\(\))p FD(.)390 1736
-y Fy(export)46 b(GSL_RNG_TYPE=mt19937)390 1845 y(ncap2)g(-v)i(-O)f(-s)g
+(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.5)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
 ('a1[time]=0;a2=gsl_rng_g)o(et\(a)o(1\);)o(')42 b(in.nc)k(foo.nc)150
-2016 y FD(T)-8 b(o)31 b(\014nd)e(the)h(maximium)g(v)-5
+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 2186 y Fy(ncap2)46
+m(wing)h(co)s(de)e(snipp)s(et.)390 1011 y Fy(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 2357 y Fq(Random)30
-b(Num)m(b)s(er)f(Distributions)150 2466 y FD(The)34 b
+(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
 (b)s(er)g(disribution)g(functions.)54 b(The)34 b(library)h(also)150
-2576 y(pro)m(vides)42 b(cum)m(ulativ)m(e)i(distribution)d(functions)h
+1395 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
-2685 y(sometimes)c(referred)f(to)h(a)f(quan)m(tile)i(functions.)57
+1504 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 2795 y(shell)31 b(command)f Fy(ncap2)f(-f|grep)f
-(-e)i(_ran)f(-e)h(_cdf)p FD(.)150 2966 y(The)g(follo)m(wing)i(examples)
+(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)
 f(all)g(return)e(v)-5 b(ariables)31 b(of)g(t)m(yp)s(e)f
-Fy(NC_INT)390 3246 y(defdim\("out",15\);)390 3355 y(a1[$out]=0.5;)390
-3465 y(a2=gsl_ran_binomial\(a1,3)o(0\).s)o(ort\()o(\);)390
-3574 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 3684
-y(a3=gsl_ran_geometric\(a2\))o(.sor)o(t\(\);)390 3794
+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
 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 3903 y(a4=gsl_ran_pascal\(a2,50\))o(;)390
-4013 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 4183 y FD(The)30
+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
 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 4354 y Fy(defdim\("b1",1000\);)390
-4463 y(b1[$b1]=0.8;)390 4573 y(b2=gsl_ran_exponential\(b)o(1\);)390
-4682 y(b2_avg=b2.avg\(\);)390 4792 y(print\(b2_avg\);)390
-4902 y(//)47 b(b2_avg)f(=)i(0.756047976787)390 5121 y
-(b3=gsl_ran_gaussian\(b1\);)390 5230 y(b3_avg=b3.avg\(\);)390
-5340 y(b3_rms=b3.rms\(\);)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.4)j(User)d(Guide)390 299 y Fy(print\(b3_avg\);)390
-408 y(//)47 b(b3_avg)f(=)i(-0.00903446534258;)390 518
-y(print\(b3_rms\);)390 628 y(//)f(b3_rms)f(=)i(0.81162979889;)390
-847 y(b4[$b1]=10.0;)390 956 y(b5[$b1]=20.0;)390 1066
-y(b6=gsl_ran_flat\(b4,b5\);)390 1176 y(b6_avg=b6.avg\(\);)390
-1285 y(print\(b6_avg\);)390 1395 y(//)f(b6_avg=15.0588129413)150
-1649 y Fu(4.1.24)63 b(Examples)41 b(ncap2)150 1796 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 1905 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 2092 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 2202 y(ble)p 272 2202 28 4 v
-40 w(att)g FD(of)c(v)-5 b(ariable)31 b Fz(att)p 1020
-2202 V 41 w(v)-5 b(ar)7 b FD(:)390 2389 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 2575 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 2762 y Fy(ncap2)46 b(-s)i
+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
+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 2949 y FD(Multiple)38 b(commands)f(ma)m(y)h(b)s(e)
+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 3059 y(b)s(e)k(placed)g(in)g
+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
-3168 y(individually)35 b(sp)s(eci\014ed)f(with)g(m)m(ultiple)i(`)p
+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 3278 y(the)39
+FD(in)m(v)m(o)s(cation.)56 b(Third,)150 1858 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 3387 y Fy(tst.nco)g
+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 3497
+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
-3684 y Fy(ncap2)46 b(-v)i(-S)f(tst.nco)f(in.nc)g(out.nc)390
-3793 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 3903 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 4090 y FD(The)32 b(second)h(and)f(third)h
+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 4199 y(colon)26 b(`)p
+(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 4309 y(allo)m(w)m(ed.)61
+p Fy(;)p FD(')f(is)f(alw)m(a)m(ys)150 2861 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 4418
+(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 4605 y Fy(ncap2)j FD(ma)m(y)i(b)s(e)g(used)f
+FD(')f(argumen)m(t.)275 3144 y Fy(ncap2)j FD(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 4715 y(tering)41 b(existing)g(data.)71
+(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
-4824 y Fy(new_ORO\(new_lat,new_lon\))22 b FD(that)29
+3363 y Fy(new_ORO\(new_lat,new_lon\))22 b FD(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 5011 y Fy(defdim\("new_lat",$lat.si)o(ze+1)o
+(the)g(new)f(grid.)390 3536 y Fy(defdim\("new_lat",$lat.si)o(ze+1)o
 (\);)42 b(//)47 b(Define)f(new)h(dimension)e(sizes)390
-5121 y(defdim\("new_lon",$lon.si)o(ze+1)o(\);)390 5230
+3645 y(defdim\("new_lon",$lon.si)o(ze+1)o(\);)390 3755
 y(new_ORO[$new_lat,$new_lo)o(n]=0)o(.0f;)c(//)47 b(Initialize)e(to)i
-(zero)390 5340 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)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)275
-299 y(The)31 b(commands)g(to)i(de\014ne)e(new)g(co)s(ordinate)i(v)-5
+(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
+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 408 y(\014le)g(follo)m(w)g(a)g(similar)g(pattern.)44
+(output)150 4147 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 518 y FD(and)f(then)g(execute)i(the)e(script)
-g(with)390 679 y Fy(ncap2)46 b(-v)i(-S)f(grow.nco)e(in.nc)i(out.nc)275
-840 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 b(of)g(an)f(arra)m(y)-8
-b(.)41 b(The)27 b(\015ag)h(should)150 949 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 1059 y(the)e(binary)e(\015ag)i
+(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
+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
+(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
-1219 y Fy(ncap2)46 b(-s)i('ORO_flg=\(ORO)c(>)j(1.0\)')g(in.nc)f(out.nc)
-275 1380 y FD(Supp)s(ose)28 b(y)m(our)i(task)h(is)g(to)g(c)m(hange)g
+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 1541 y Fy(ncap2)46
+(the)g(new)e(v)-5 b(alue)31 b(3.0)q(:)390 5340 y Fy(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)275 1702 y FD(This)30
-b(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 1811 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 1921 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
-2082 y Fy(ncap2)46 b(-s)i('where\(ORO==2.0\))43 b(ORO=3.0;')i(in.nc)i
-(foo.nc)275 2242 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 2352
-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 2461 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 2571 y(Sym)m(b)s
-(olically)-8 b(,)36 b(the)e(co)m(v)-5 b(ariance)35 b([)p
-Fv(u)1386 2538 y Fd(0)1410 2571 y Fv(v)1457 2538 y Fd(0)1481
-2571 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 2681 y([)p Fv(x)p FD(])28 b FA(\021)390 2645
-y Ft(1)p 388 2660 38 4 v 388 2712 a Fg(\034)451 2612
-y Ff(R)506 2632 y Fg(t)p Ft(=)p Fg(\034)490 2708 y(t)p
-Ft(=0)639 2681 y Fv(x)p FD(\()p Fv(t)p FD(\))15 b(d)p
-Fv(t)31 b FD(and)h Fv(x)1155 2648 y Fd(0)1209 2681 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 2790 y(us)29
+(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.5)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
 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 2900 y(mean)e(signals.)41 b(Sometimes)29 b(this)f(is)g(called)
+(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
 b(e)29 b(will)g(store)f(the)h(co)m(v)-5 b(ariance)30
-b(in)150 3009 y(the)h(v)-5 b(ariable)31 b Fy(uprmvprm)p
-FD(.)390 3170 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 3280
+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
 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 3389 y(ncks)h(-A)g(-v)g(uavg,vavg)e(foo.nc)h
+h(avoid)f(conflict)390 1998 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
-3499 y(ncap2)g(-O)i(-s)f('uprmvprm=u*v-uavg*vavg)o(')42
-b(in.nc)k(in.nc)h(#)g(Covariance)390 3608 y(ncra)g(-O)g(-v)g(uprmvprm)f
-(in.nc)g(foo.nc)g(#)h(Time-mean)f(covariance)275 3769
+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
 (same)g(co)m(v)-5 b(ariance)37 b(w)m(ould)e(b)s(e)f(obtained)h(b)m(y)
-150 3879 y(replacing)c(the)g(step)f(in)m(v)m(olving)i
-Fy(ncap2)d FD(with)390 4040 y Fy(ncap2)46 b(-O)i(-s)f
+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
 ('uprmvprm=\(u-uavg\)*\(v-v)o(avg\))o(')42 b(foo.nc)k(foo.nc)g(#)h
-(Covariance)275 4200 y FD(As)34 b(of)g FC(NCO)g FD(v)m(ersion)h(3.1.8)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 4310 y(v)-5 b(ariances,)31
-b(b)m(y)g(itself:)390 4471 y Fy(ncap2)46 b(-s)i
+(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
 ('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 4580 y(-s)48
+(=u*)o(v-ua)o(vg*v)o(avg)o(')42 b(\\)676 3203 y(-s)48
 b('uprmvrpmavg=uprmvprm.a)o(vg\()o($tim)o(e\)')41 b(in.nc)47
-b(foo.nc)275 4741 y FD(W)-8 b(e)44 b(ha)m(v)m(e)g(not)g(seen)f(a)h
+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
 (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 4850 y Fy(ncap2)p FD(.)275 5011
+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
-5121 y(command-line)h(shell)g(if)g(not)f(quoted)h(prop)s(erly)-8
+3751 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 5230 y(in)g(utilizing)i(extended)e(regular)h(expressions)f
+(arise)150 3861 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 5340 y(Files],)32 b(page)g(40\).)43
+([Subsetting)150 3970 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)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.4)j(User)d(Guide)150 299 y(is)f(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 408 y(unless)h(it)h(is)f(quoted:)390 571 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 681 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
-791 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 900 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 1063 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 1173 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
-1282 y(dimensions)30 b(rather)g(than)g(just)g(the)g Fz(time)37
+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
+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
-1445 y(W)-8 b(e)45 b(recommend)e(using)g(single)i(quotes)f(to)g
+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
-1555 y(shell,)27 b(ev)m(en)f(when)e(suc)m(h)h(protection)i(is)e(not)h
+5340 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)150 1665 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 1774
-y([CCSM)d(Example],)h(page)g(239\).)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
-1884 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 2047 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
-2156 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 2266 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)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
 (arithmetic.)41 b(Suc)m(h)27 b(is)h(the)h(case)g(in)f(the)150
-2375 y(ab)s(o)m(v)m(e)i(example,)g(where)e(the)h(\014rst)g(step)f
+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 2485 y(Of)k(course)h(the)h(n)m
+FD(for)g(the)h(time-a)m(v)m(eraging.)150 1116 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
-2595 y(unless)23 b(`)p Fy(-b)p FD(')h(is)g(sp)s(eci\014ed,)h
+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
-2704 y(to)34 b(k)m(eeping)f Fz(time)39 b FD(as)33 b(a)h(degenerate)g
+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 2814
+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 2923 y(the)g(non-degenerate)i
+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 3033 y(w)m(ould)k(b)s(e)g(unde\014ned)e(\(and)i
+FD(\))f(command)150 1664 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
-3143 y(\(see)e(Section)f(3.12)h([Subsetting)e(Co)s(ordinate)h(V)-8
-b(ariables],)31 b(page)e(44\))h(to)f Fy(ncwa)f FD(to)h(prev)m(en)m(t)g
-(an)m(y)g(scalar)150 3252 y Fz(time)43 b FD(v)-5 b(ariable)37
+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(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
-3362 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 3568
+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
-3715 y Fy(ncap2)22 b FD(supp)s(orts)g(the)i(standard)e(mathematical)k
+2331 y Fy(ncap2)22 b FD(supp)s(orts)g(the)i(standard)e(mathematical)k
 (functions)d(supplied)g(with)g(most)h(op)s(erating)g(systems.)150
-3825 y(Standard)g(calculator)k(notation)f(is)f(used)f(for)g(addition)h
+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 3934 y Fn(/)p FD(,)i(exp)s(onen)m(tiation)h
+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
 b(a)m(v)-5 b(ailable)31 b(elemen)m(tary)f(mathematical)h(functions)d
-(are:)150 4235 y Fy(abs\(x\))192 b Fz(Absolute)31 b(v)-5
+(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 4402 y Fy(acos\(x\))144
+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 4512
-y(0)p Fv(:)p FD(0)150 4678 y Fy(acosh\(x\))96 b Fz(Hyp)s(erb)s(olic)24
+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 4788 y(Example:)41 b(acosh\(1)p Fv(:)p
-FD(0\))28 b(=)d(0)p Fv(:)p FD(0)150 4954 y Fy(asin\(x\))144
+(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 5064
-y(1)p Fv(:)p FD(5707963267948)q(96)q(619)q(22)150 5230
+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
-5340 y(Example:)i(asinh\(1)p Fv(:)p FD(0\))27 b(=)e(0)p
-Fv(:)p FD(88137358702)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 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 408 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 576 y Fy(atan2\(y,x\))630 686 y Fz(Arc-tangen)m(t2)40
-b FD(Arc-tangen)m(t)32 b(of)f Fz(y/x)150 853 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 963 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 1130 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
-1240 y(ceil\(0)p Fv(:)p FD(1\))28 b(=)d(1)p Fv(:)p FD(0)150
-1408 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 1575 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 1685 y(ample:)41 b(cosh\(0)p Fv(:)p
-FD(0\))27 b(=)e(1)p Fv(:)p FD(0)150 1852 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 1962 y(Example:)e(erf\(1)p
-Fv(:)p FD(0\))27 b(=)e(0)p Fv(:)p FD(842701)150 2130
-y Fy(erfc\(x\))144 b Fz(Complemen)m(tary)35 b(error)f(function)g
+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.5)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 2239 y(sp)s(eci\014ed)30
+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
-2407 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 2374 y Fg(x)2745
-2407 y FD(.)608 b(Example:)630 2516 y(exp\(1)p Fv(:)p
-FD(0\))27 b(=)e(2)p Fv(:)p FD(7182818284590)q(452)q(35)q(36)150
-2684 y Fy(floor\(x\))96 b Fz(Flo)s(or)39 b FD(Flo)s(or)32
+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
 b(alue)32 b(not)g(greater)h(than)e(argumen)m(t.)46 b(Example:)630
-2794 y(\015o)s(or\(1)p Fv(:)p FD(9\))27 b(=)e(1)150 2961
+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 3071 y(tin)m(uous)c(factorial)j
+(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 3006 y FA(p)p 2784 3006 56 4 v 65 x Fv(\031)150
-3238 y Fy(gamma_inc_P\(x\))630 3348 y Fz(Incomplete)34
+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 3458 y(v)-5 b(ariable)39 b Fz(x)p
+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
 b(of)g(the)g(four)f(incomplete)j(gamma)e(functions.)64
-b(Example:)630 3567 y(gamma)p 923 3567 28 4 v 41 w(inc)p
-1080 3567 V 40 w(P\(1)p Fv(;)15 b FD(1\))27 b(=)e(1)c
-FA(\000)f FD(e)1696 3534 y Fd(\000)p Ft(1)150 3735 y
+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
-3844 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 4012 y Fy(log\(x\))192 b
+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 4180 y Fy(log10\(x\))96 b Fz(Base)31
+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 4201 y Ft(10)2560 4180 y FD(\()p Fv(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 4347 y Fy(nearbyint\(x\))630 4457 y Fz(Round)31
+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 4566 y(exceptions)31 b(are)g(raised)g(for)f
+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 4734
+(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 4844 y(main)d(errors)p FD(.)59 b(Due)37 b(to)g(t)m(yp)s
+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 4953 y(argumen)m(ts)30
+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(87\))f(to)h(t)m(yp)s(e)630 5063 y
+(ersion],)g(page)h(88\))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 5230 y Fy(rint\(x\))144
+(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 5340 y(ceptions)31 b(are)g(raised)f(for)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)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.4)j(User)d(Guide)150 299 y Fy(round\(x\))96
+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 408 y(cases)28 b(a)m(w)m(a)m(y)h(from)e
-(zero,)i(regardless)f(of)f(curren)m(t)g(IEEE)g(rounding)f(direction.)41
-b(Example:)630 518 y(round\(0)p Fv(:)p FD(5\))26 b(=)f(1)p
-Fv(:)p FD(0)150 672 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
-782 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 936 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(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 1046
+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
-1200 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 1135 y FA(p)p 1968 1135 52 4
-v 1968 1200 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 1355 y Fy(tan\(x\))192
+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 1464 y(tan\(0)p Fv(:)p FD(785398163397)q
+(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
-1618 y Fy(tanh\(x\))144 b Fz(Hyp)s(erb)s(olic)40 b(tangen)m(t)k
+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
-1728 y(Example:)h(tanh\(1)p Fv(:)p FD(0\))27 b(=)e(0)p
-Fv(:)p FD(761594155956)150 1882 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 1992 y(w)m(a)m(y)d(cases)h(to)m(w)m
-(ard)f(zero,)i(regardless)d(of)h(curren)m(t)f(IEEE)g(rounding)f
-(direction.)39 b(Example:)630 2102 y(trunc\(0)p Fv(:)p
-FD(5\))26 b(=)f(0)p Fv(:)p FD(0)150 2283 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 2393 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 2360 y Ft(3)3524 2393 y FD(.)55 b(and)150
-2502 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
-2612 y(a)k(complete)h(list)f(of)f(functions)g(supp)s(orted)f(on)h(y)m
-(our)g(platform.)2425 2579 y Ft(4)150 2806 y Fu(4.1.26)63
-b(Op)s(erator)42 b(precedence)e(and)h(asso)s(ciativit)m(y)150
-2953 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 3063 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 3332 y Fq(Op)s(erator)382 b(Description)1773
-b(Asso)s(ciativit)m(y)150 3441 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 3551 y Fy(\(\))652 b FD(P)m(aren)m(theses)31
-b(\(function)f(call\))150 3661 y Fy(.)700 b FD(Metho)s(d)30
-b(call)150 3770 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 3880
-y Fy(+)f(-)622 b FD(Unary)30 b(Plus/Min)m(us)150 3989
-y Fy(!)700 b FD(Logical)32 b(Not)150 4099 y Fy(^)700
+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
+(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
+(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
+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 4208 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 4318
+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 4428 y Fy(>>)f(<<)526 b
+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)p 150 4528 1200 4 v 199 4595
-a Ft(3)301 4627 y Fs(ANSI)25 b(C)i(compilers)h(are)g(guaran)n(teed)f
+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
+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
+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)
@@ -24212,140 +24396,121 @@ Fs(,)j(p)r(erforming)f(the)e(op)r(eration,)j(and)d(then)g(re-casting.)
 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: 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 Fy(<)30 b(<=)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 408 y Fy(>)f(>=)574
-b FD(Greater)31 b(than/Greater)h(than)e(or)g(equal)h(to)150
-518 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 628 y Fy(&&)652 b FD(Logical)32
-b(AND)1713 b(Left)30 b(to)h(Righ)m(t)150 737 y Fy(||)652
-b FD(Logical)32 b(OR)1780 b(Left)30 b(to)h(Righ)m(t)150
-847 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 956 y Fy(=)700 b FD(Assignmen)m(t)1772
-b(Righ)m(t)31 b(to)g(Left)150 1066 y Fy(+=)f(-=)526 b
-FD(Addition/subtraction)31 b(assignmen)m(t)150 1176 y
-Fy(*=)f(/=)526 b FD(Multiplication/division)33 b(assignmen)m(t)150
-1379 y Fu(4.1.27)63 b(ID)41 b(Quoting)150 1526 y FD(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
-1636 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)150 1745 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 1855 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 2017 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 2178 y Fy(DGT:)238 b(\('0'..'9'\);)390
-2288 y(LPH:)g(\()47 b('a'..'z')f(|)h('A'..'Z')f(|)h('_')g(\);)390
-2398 y(name:)190 b(\(LPH\)\(LPH|DGT\)+)150 2559 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 2669 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 2669 28 4 v 41 w(23,)g(hell)p 2805 2669 V 40 w(is)p
-2906 2669 V 40 w(666)g(\))150 2830 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 2992 y Fy(LPHDGT:)94
-b(\()47 b('a'..'z')f(|)h('A'..'Z')f(|)h('_')g(|)g('0'..'9'\);)390
-3102 y(name:)190 b(\(LPHDGT|'-'|'+'|'.'|'\(')o(|'\))o('|':)o(')42
-b(\)+)95 b(;)150 3263 y FD(Quote)31 b(a)f(v)-5 b(ariable:)150
-3373 y('a)m(vg')32 b(,)f('10)p 544 3373 V 41 w Fy(+)p
-FD(10','set)p 909 3373 V 42 w(miss')f(')p Fy(+)p FD(-90\014eld')i(,)e
-('{test'=10.0d)150 3592 y(Quote)h(a)f(attribute:)150
-3702 y('three at 10',)i('set)p 762 3702 V 41 w(mss@)p Fy(+)p
+%%Page: 154 160
+TeXDict begin 154 159 bop 150 -116 a FD(154)2582 b FC(NCO)30
+b FD(4.4.5)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 3921 y FD(Quote)e(a)f(dimension:)150
-4030 y('$10',)i('$t1{',)h('${o)s(dd',)e(c1['$10','$t1{']=23.)q(0d)275
-4411 y(The)d(follo)m(wing)j(commen)m(ts)g(are)e(from)g(the)h(netCDF)g
+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
 (library)f(de\014nitions)g(and)g(detail)h(the)g(naming)150
-4521 y(con)m(v)m(en)m(tions)i(for)f(eac)m(h)g(release.)42
-b(netcdf-3.5.1)150 4630 y(netcdf-3.6.0-p1)150 4740 y(netcdf-3.6.1)150
-4850 y(netcdf-3.6.2)390 5121 y Fy(/*)438 5230 y(*)47
+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
 b(\()h([a-zA-Z]|[0-9]|'_'|'-'|)o('+'|)o('.')o(|'|')o(:'|')o(@'|)o
-('\('|)o('\)')41 b(\)+)438 5340 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)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.4)j(User)d(Guide)438 299 y Fy(*)47 b(alphanumeric,)d('-',)j
-('_',)g('+',)f(or)h('.'.)438 408 y(*)g(Also)g(permit)f(':',)h('@',)f
-('\(',)h(or)g('\)')g(in)g(names)f(for)h(chemists)f(currently)f(making)
-438 518 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 628 y(*)h(also)g(handle)f
-(these)g(characters)f(in)i(names.)438 737 y(*/)150 897
-y FD(netcdf-3.6.3)150 1006 y(netcdf-4.0)32 b(Final)f(2008/08/28)390
-1275 y Fy(/*)438 1385 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 1494
-y(*)h(syntax)f(\(in)h(RE)g(form\))g(is:)438 1604 y(*)438
-1714 y(*)g(\([a-zA-Z_]|{UTF8}\)\([^\\x00)o(-\\x1)o(F\\x)o(7F/])o(|{UT)o
-(F8})o(\)*)438 1823 y(*)438 1933 y(*)g(where)g(UTF8)f(represents)f(a)j
-(multibyte)d(UTF-8)h(encoding.)93 b(Also,)47 b(no)438
-2042 y(*)g(trailing)f(spaces)g(are)h(permitted)e(in)i(names.)94
-b(This)47 b(definition)438 2152 y(*)g(must)g(be)g(consistent)e(with)i
+('\('|)o('\)')41 b(\)+)438 3915 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
+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
-2262 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 2371 y(*)g(group)g(separator.)92
+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
-2481 y(*)i(character)e(can)i(occur)g(anywhere)e(within)h(an)i
-(identifier.)92 b(We)47 b(later)438 2590 y(*)g(normalize)e(UTF-8)i
+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
-2700 y(*/)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 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 618 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 727 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 837 y Fn(input-file)e
-Fy([[)p Fn(output-file)p Fy(]])150 996 y FD(DESCRIPTION)275
-1156 y Fy(ncatted)35 b FD(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 1265 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 1375 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 1484
-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 1594 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 1704 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 1813 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
-1923 y([Filters)c(for)e Fy(ncks)p FD(],)f(page)j(181\).)275
-2082 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 2192 y FD(global)32 b(attribute)g(\(see)g(Section)g
-(3.35)h([History)e(A)m(ttribute],)i(page)f(95\),)h(the)e(`)p
-Fy(-h)p FD(')g(switc)m(h)g(is)g(pro)m(vided)150 2301
-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 2411 y Fz(output-\014le)p FD(.)275 2570 y(When)i
-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
-2680 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 2790 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
-2899 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 3009 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 3118 y(e.g.,)d(b)m(y)d Fy(ncrcat)p
+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.5)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 618 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 727 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
+837 y Fn(input-file)e Fy([[)p Fn(output-file)p Fy(]])150
+996 y FD(DESCRIPTION)275 1156 y Fy(ncatted)35 b FD(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 1265 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
+1375 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 1484 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
+1594 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 1704
+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 1813 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 1923 y([Filters)c(for)e
+Fy(ncks)p FD(],)f(page)j(184\).)275 2082 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 2192
+y FD(global)32 b(attribute)g(\(see)g(Section)g(3.35)h([History)e(A)m
+(ttribute],)i(page)f(97\),)h(the)e(`)p Fy(-h)p FD(')g(switc)m(h)g(is)g
+(pro)m(vided)150 2301 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 2411 y Fz(output-\014le)p
+FD(.)275 2570 y(When)i 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 2680 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
+2790 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 2899 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
+3009 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 3118 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
-([Missing)f(V)-8 b(alues],)31 b(page)e(69,)h(for)150
+([Missing)f(V)-8 b(alues],)31 b(page)e(70,)h(for)150
 3228 y(more)h(information.)275 3387 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 3497 y(the)32 b(attribute)g(mo)s
@@ -24381,26 +24546,27 @@ b(of)h Fz(att)p 1345 5184 V 41 w(t)m(yp)s(e)p FD(.)150
 5340 y Fz(att)p 271 5340 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(.)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.4)j(User)d(Guide)150 299 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 408
-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 570 y(The)37 b(v)-5 b(alue)38 b(of)g
-Fz(att)p 943 570 28 4 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 679 y(this)29 b(should)f(b)s(e)h(clear)h(to)g(all)g
-Fy(ncatted)e FD(users.)39 b(Recall,)31 b(as)f(men)m(tioned)g(ab)s(o)m
-(v)m(e,)h(that)e Fz(v)-5 b(ar)p 3271 679 V 40 w(nm)29
-b FD(ma)m(y)h(b)s(e)150 789 y(sp)s(eci\014ed)g(as)h(a)h(regular)f
-(expression.)42 b(If)30 b Fz(att)p 1702 789 V 42 w(nm)g
-FD(is)h(omitted)h(\(i.e.,)g(left)g(blank\))f(and)f Fz(Delete)38
-b FD(mo)s(de)31 b(is)150 898 y(selected,)h(then)e(all)h(attributes)g
-(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)f(v)-5 b(ariable)31
-b(will)f(b)s(e)g(deleted.)275 1060 y(The)23 b(v)-5 b(alue)24
-b(of)g Fz(v)-5 b(ar)p 910 1060 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
+%%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)150
+299 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 408 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 570
+y(The)37 b(v)-5 b(alue)38 b(of)g Fz(att)p 943 570 28
+4 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
+679 y(this)29 b(should)f(b)s(e)h(clear)h(to)g(all)g Fy(ncatted)e
+FD(users.)39 b(Recall,)31 b(as)f(men)m(tioned)g(ab)s(o)m(v)m(e,)h(that)
+e Fz(v)-5 b(ar)p 3271 679 V 40 w(nm)29 b FD(ma)m(y)h(b)s(e)150
+789 y(sp)s(eci\014ed)g(as)h(a)h(regular)f(expression.)42
+b(If)30 b Fz(att)p 1702 789 V 42 w(nm)g FD(is)h(omitted)h(\(i.e.,)g
+(left)g(blank\))f(and)f Fz(Delete)38 b FD(mo)s(de)31
+b(is)150 898 y(selected,)h(then)e(all)h(attributes)g(asso)s(ciated)h
+(with)e(the)h(sp)s(eci\014ed)f(v)-5 b(ariable)31 b(will)f(b)s(e)g
+(deleted.)275 1060 y(The)23 b(v)-5 b(alue)24 b(of)g Fz(v)-5
+b(ar)p 910 1060 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 1060 V 41 w(nm)p FD(\))150 1169 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.)
@@ -24491,14 +24657,13 @@ b(alue\(s\))38 b(sp)s(eci\014ed)e(in)g Fz(att)p 1967
 5230 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 5340 y Fy(NC_DOUBLE)p
 FD(.)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)150
-299 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 299 28 4 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 408
-y(t)m(yp)s(e)31 b Fy(NC_INT)p FD(.)150 571 y Fy(s)432
+%%Page: 158 164
+TeXDict begin 158 163 bop 150 -116 a FD(158)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y Fy(i,)g(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 299 28 4 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
+408 y(t)m(yp)s(e)31 b Fy(NC_INT)p FD(.)150 571 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 571 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 681 y Fy(NC_SHORT)p
@@ -24586,182 +24751,192 @@ FC(ASCI)r(I)150 5340 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,)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.4)j(User)d(Guide)150 299 y(e.g.,)d FC(ASCI)r(I)e
-FD(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
-408 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 518 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 628 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 737 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(173,)j(for)c(more)150 847 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
-1015 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 1124 y Fy(")p FD(protected)p Fy(")c
-FD(b)m(y)f(a)h(bac)m(kslash.)42 b(The)30 b(c)m(haracters)i
+%%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(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(b)m(yte)g(shorter)f(than)h(the)f
+(input)g(string)150 408 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 518 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
+628 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 737
+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
+847 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 1008 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 1118 y Fy(")p FD(protected)p
+Fy(")c FD(b)m(y)f(a)h(bac)m(kslash.)42 b(The)30 b(c)m(haracters)i
 Fy(")p FD(,)e Fy(')p FD(,)h Fy(?)p FD(,)f(and)g Fy(\\)g
 FD(ma)m(y)h(b)s(e)f(input)g(to)h(the)g(shell)g(as)f Fy(\\")p
-FD(,)150 1234 y Fy(\\')p FD(,)f Fy(\\?)p FD(,)f(and)g
+FD(,)150 1227 y Fy(\\')p FD(,)f 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 1344 y(editing)35 b(the)f(attribute.)54 b(No)34
+(efore)150 1337 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 1453 y(whic)m(h)27 b(precede)h(an)m(y)
+(kslash.)53 b(Bac)m(kslashes)150 1446 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 1563 y(will)j(b)s(e)e(included)h(in)g
-(the)h(attribute.)275 1731 y(Note)37 b(that)h(the)e(NUL)h(c)m(haracter)
+(b)s(e)f(\014ltered)h(and)150 1556 y(will)j(b)s(e)e(included)h(in)g
+(the)h(attribute.)275 1717 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 1840 y(need)44 b(not)g(b)s(e)f
+b(strings)e(is)h(assumed)f(and)150 1827 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
-1950 y(Ho)m(w)m(ev)m(er,)30 b(this)c(will)i(mak)m(e)f(the)g(subsequen)m
+1937 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 2060 y(library)35
+b(,)29 b(in)m(visible)e(to)h(C)i(standard)150 2046 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
-2169 y(con)m(text-sensitiv)m(e)e(rules,)d(one)g(m)m(ust)f(use)h
+2156 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 2279 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 2447 y(Note)36 b(that)f Fy(ncatted)e
+e(than)150 2265 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 2427 y(Note)36 b(that)f Fy(ncatted)e
 FD(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 2556 y(strings.)41
-b(EXAMPLES)275 2724 y(App)s(end)28 b(the)j(string)f Fy(")p
+(of)g(t)m(yp)s(e)g Fy(NC_CHAR)p FD(\))e(as)150 2536 y(strings.)41
+b(EXAMPLES)275 2698 y(App)s(end)28 b(the)j(string)f Fy(")p
 FD(Data)i(v)m(ersion)e(2.0.)p Fy(\\)p FD(n)p Fy(")h FD(to)g(the)g
-(global)g(attribute)h Fy(history)p FD(:)390 2892 y Fy(ncatted)46
+(global)g(attribute)h Fy(history)p FD(:)390 2859 y Fy(ncatted)46
 b(-a)h(history,global,a,c,"Data)41 b(version)46 b(2.0\\n")g(in.nc)275
-3061 y FD(Note)31 b(the)g(use)f(of)g(em)m(b)s(edded)g(C)g(language)h
+3020 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
-3229 y(Change)i(the)g(v)-5 b(alue)34 b(of)g(the)f Fy(long_name)e
+3181 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 3338 y(is)c(to)i Fy(")p FD(temp)s(erature)p
-Fy(")p FD(:)390 3506 y Fy(ncatted)46 b(-a)h(long_name,T,o,c,temperat)o
-(ure)41 b(in.nc)275 3674 y FC(NCO)e FD(arithmetic)i(op)s(erators)f
-(will)g(not)f(w)m(ork)h(as)g(exp)s(ected)g(on)g(IEEE)f(NaN)h(\(short)g
-(for)f(Not-a-)150 3784 y(Num)m(b)s(er\))29 b(and)g(NaN-lik)m(e)j(n)m
-(um)m(b)s(ers)c(suc)m(h)i(as)g(p)s(ositiv)m(e)g(in\014nit)m(y)g(and)f
-(negativ)m(e)j(in\014nit)m(y)-8 b(.)40 b(One)30 b(w)m(a)m(y)g(to)150
-3893 y(w)m(ork-around)k(this)g(problem)g(is)g(to)h(c)m(hange)h(IEEE)e
-(NaNs)h(to)g(normal)f(missing)g(v)-5 b(alues.)53 b(As)35
-b(of)f FC(NCO)150 4003 y FD(4.1.0)f(\(Marc)m(h,)f(2012\),)h
+(it)g(curren)m(tly)150 3291 y(is)c(to)i Fy(")p FD(temp)s(erature)p
+Fy(")p FD(:)390 3452 y Fy(ncatted)46 b(-a)h(long_name,T,o,c,temperat)o
+(ure)41 b(in.nc)275 3614 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 3723 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
+3690 y Ft(1)3322 3723 y FD(.)53 b(One)34 b(w)m(a)m(y)150
+3833 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 3942 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 4113 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(IEEE)f(NaN)h
-(v)-5 b(alue.)390 4281 y Fy(ncatted)46 b(-a)h(_FillValue,,o,f,NaN)c
-(in.nc)275 4449 y FD(Then)35 b(c)m(hange)j(the)e(missing)g(v)-5
-b(alue)37 b(from)f(the)h(IEEE)f(NaN)h(v)-5 b(alue)37
-b(to)g(a)g(normal)f(IEEE)g(n)m(um)m(b)s(er,)150 4558
-y(lik)m(e)c(1.0e36)g(\(or)f(to)g(whatev)m(er)g(the)g(original)h
-(missing)e(v)-5 b(alue)31 b(w)m(as\).)390 4726 y Fy(ncatted)46
-b(-a)h(_FillValue,,m,f,1.0e36)42 b(in.nc)275 4894 y FD(Delete)32
-b(all)f(existing)h Fy(units)d FD(attributes:)390 5062
-y Fy(ncatted)46 b(-a)h(units,,d,,)e(in.nc)150 5230 y
-FD(The)29 b(v)-5 b(alue)30 b(of)g Fz(v)-5 b(ar)p 803
-5230 28 4 v 40 w(nm)29 b FD(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 5340 y Fz(att)p 271
-5340 V 41 w(t)m(yp)s(e)36 b FD(and)30 b Fz(att)p 814
-5340 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.)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)275
-299 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 460 y Fy(ncatted)46 b(-a)h(,tpt,d,,)f(-a)h(,global,d,,)
-d(in.nc)150 620 y FD(The)d(v)-5 b(alue)41 b(of)h Fz(att)p
-829 620 28 4 v 41 w(nm)e FD(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
-730 y(v)-5 b(ariable.)42 b(T)-8 b(o)30 b(delete)i(all)f(global)h
+b(alue)150 4052 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.)390 4213 y Fy(ncatted)46
+b(-a)h(_FillValue,,o,f,NaN)c(in.nc)275 4375 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 4484 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 4646 y Fy(ncatted)46 b(-a)h
+(_FillValue,,m,f,1.0e36)42 b(in.nc)275 4807 y FD(Delete)32
+b(all)f(existing)h Fy(units)d FD(attributes:)390 4968
+y Fy(ncatted)46 b(-a)h(units,,d,,)e(in.nc)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 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.5)j(User)d(Guide)150 299 y(The)f(v)-5 b(alue)30
+b(of)g Fz(v)-5 b(ar)p 803 299 28 4 v 40 w(nm)29 b FD(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
+408 y Fz(att)p 271 408 V 41 w(t)m(yp)s(e)36 b FD(and)30
+b Fz(att)p 814 408 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 573 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 737 y Fy(ncatted)46 b(-a)h(,tpt,d,,)f(-a)h
+(,global,d,,)d(in.nc)150 902 y FD(The)d(v)-5 b(alue)41
+b(of)h Fz(att)p 829 902 V 41 w(nm)e FD(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 1011 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 891 y(Mo)s(dify)g(all)h
+Fy(global)f FD(in)h(the)g(ab)s(o)m(v)m(e.)275 1176 y(Mo)s(dify)g(all)h
 (existing)g Fy(units)e FD(attributes)i(to)g Fy(")p FD(meter)g(second-1)
-p Fy(")p FD(:)390 1051 y Fy(ncatted)46 b(-a)h(units,,m,c,"meter)c
-(second-1")i(in.nc)275 1212 y FD(Add)30 b(a)i Fy(units)f
+p Fy(")p FD(:)390 1340 y Fy(ncatted)46 b(-a)h(units,,m,c,"meter)c
+(second-1")i(in.nc)275 1504 y FD(Add)30 b(a)i Fy(units)f
 FD(attribute)h(of)g Fy(")p FD(kilogram)g(kilogram-1)p
 Fy(")i FD(to)e(all)h(v)-5 b(ariables)32 b(whose)f(\014rst)g(three)h(c)m
-(har-)150 1322 y(acters)f(are)g(`)p Fy(H2O)p FD(':)390
-1482 y Fy(ncatted)46 b(-a)h(units,'^H2O',c,c,"kilogr)o(am)42
-b(kilogram-1")i(in.nc)275 1643 y FD(Ov)m(erwrite)30 b(the)h
+(har-)150 1614 y(acters)f(are)g(`)p Fy(H2O)p FD(':)390
+1778 y Fy(ncatted)46 b(-a)h(units,'^H2O',c,c,"kilogr)o(am)42
+b(kilogram-1")i(in.nc)275 1943 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
-1804 y Fy(ncatted)46 b(-O)h(-a)g(quanta,energy,o,s,"010,10)o(1,11)o
-(1,1)o(21")41 b(in.nc)275 1965 y FD(As)34 b(of)g FC(NCO)g
+2107 y Fy(ncatted)46 b(-O)h(-a)g(quanta,energy,o,s,"010,10)o(1,11)o
+(1,1)o(21")41 b(in.nc)275 2271 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 2074 y(gumen)m(ts)29 b(for)g(v)-5 b(ariable)29
+FD(as)d(ar-)150 2381 y(gumen)m(ts)29 b(for)g(v)-5 b(ariable)29
 b(names.)41 b(Create)29 b Fy(isotope)e FD(attributes)i(for)g(all)h(v)-5
 b(ariables)29 b(con)m(taining)i(`)p Fy(H2O)p FD(')d(in)150
-2184 y(their)i(names.)390 2345 y Fy(ncatted)46 b(-O)h(-a)g
-(isotope,'^H2O*',c,s,"18")41 b(in.nc)275 2505 y FD(See)30
+2491 y(their)i(names.)390 2655 y Fy(ncatted)46 b(-O)h(-a)g
+(isotope,'^H2O*',c,s,"18")41 b(in.nc)275 2819 y FD(See)30
 b(Section)h(3.11)h([Subsetting)f(Files],)g(page)h(40)f(for)f(more)g
-(details.)275 2666 y(As)41 b(of)g FC(NCO)g FD(4.3.8)i(\(No)m(v)m(em)m
+(details.)275 2984 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 2776 y(names)30 b(of)h(attributes,)g(v)-5
-b(ariables,)31 b(dimensions,)f(and)g(groups.)390 2936
+h(group)e(paths)h(in)150 3093 y(names)30 b(of)h(attributes,)g(v)-5
+b(ariables,)31 b(dimensions,)f(and)g(groups.)390 3258
 y Fy(#)47 b(Overwrite)f(units)g(attribute)f(of)j(specific)d('lon')h
-(variable)390 3046 y(ncatted)g(-O)h(-a)g(units,/g1/lon,o,c,"degree)o
-(s_we)o(st")41 b(in_grp.nc)390 3156 y(#)47 b(Overwrite)f(units)g
-(attribute)f(of)j(all)e('lon')h(variables)390 3265 y(ncatted)f(-O)h(-a)
+(variable)390 3367 y(ncatted)g(-O)h(-a)g(units,/g1/lon,o,c,"degree)o
+(s_we)o(st")41 b(in_grp.nc)390 3477 y(#)47 b(Overwrite)f(units)g
+(attribute)f(of)j(all)e('lon')h(variables)390 3587 y(ncatted)f(-O)h(-a)
 g(units,lon,o,c,"degrees_we)o(st")41 b(in_grp.nc)390
-3375 y(#)47 b(Delete)g(units)f(attribute)f(of)i(all)g('lon')g
-(variables)390 3484 y(ncatted)f(-O)h(-a)g(units,lon,d,,)d(in_grp.nc)390
-3594 y(#)j(Overwrite)f(units)g(attribute)f(with)i(new)g(type)g(for)f
-(specific)g('lon')g(variable)390 3703 y(ncatted)g(-O)h(-a)g
+3696 y(#)47 b(Delete)g(units)f(attribute)f(of)i(all)g('lon')g
+(variables)390 3806 y(ncatted)f(-O)h(-a)g(units,lon,d,,)d(in_grp.nc)390
+3915 y(#)j(Overwrite)f(units)g(attribute)f(with)i(new)g(type)g(for)f
+(specific)g('lon')g(variable)390 4025 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
-3813 y(#)47 b(Add)g(new_att)f(attribute)f(to)j(all)f(variables)390
-3923 y(ncatted)f(-O)h(-a)g(new_att,,c,sng,"new)c(variable)i(attribute")
-g(in_grp.nc)390 4032 y(#)i(Add)g(new_grp_att)e(group)h(attribute)g(to)h
-(all)g(groups)390 4142 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 4251
+4134 y(#)47 b(Add)g(new_att)f(attribute)f(to)j(all)f(variables)390
+4244 y(ncatted)f(-O)h(-a)g(new_att,,c,sng,"new)c(variable)i(attribute")
+g(in_grp.nc)390 4354 y(#)i(Add)g(new_grp_att)e(group)h(attribute)g(to)h
+(all)g(groups)390 4463 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 4573
 y(#)i(Add)g(new_grp_att)e(group)h(attribute)g(to)h(single)f(group)390
-4361 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 4471 y(#)i(Add)g(new_glb_att)e
-(global)h(attribute)f(to)j(root)e(group)390 4580 y(ncatted)g(-O)h(-a)g
+4682 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 4792 y(#)i(Add)g(new_glb_att)e
+(global)h(attribute)f(to)j(root)e(group)390 4902 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 4741 y FD(Demonstrate)24 b(input)d(of)i(C-language)h
+(in_grp.nc)275 5066 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 4850 y(\(e.g.,)32 b Fy(\\")p
-FD(\))390 5011 y Fy(ncatted)46 b(-h)h(-a)g(special,global,o,c,)390
-5121 y('\\nDouble)e(quote:)h(\\"\\nTwo)g(consecutive)f(double)h
-(quotes:)g(\\"\\"\\n)390 5230 y(Single)g(quote:)g(Beyond)g(my)h(shell)g
-(abilities!\\nBackslash:)42 b(\\\\\\n)390 5340 y(Two)47
+(ecial)h(c)m(haracters)150 5176 y(\(e.g.,)32 b Fy(\\")p
+FD(\))390 5340 y Fy(ncatted)46 b(-h)h(-a)g(special,global,o,c,)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('\\nDouble)45 b(quote:)h(\\"\\nTwo)g(consecutive)f(double)h
+(quotes:)g(\\"\\"\\n)390 408 y(Single)g(quote:)g(Beyond)g(my)h(shell)g
+(abilities!\\nBackslash:)42 b(\\\\\\n)390 518 y(Two)47
 b(consecutive)e(backslashes:)f(\\\\\\\\\\nQuestion)g(mark:)i(\\?\\n')h
-(in.nc)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.4)j(User)d(Guide)275 299 y(Note)i(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 408 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: 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 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([-c])390 759 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])
-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
+(in.nc)275 677 y FD(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 787 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.5)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
+([-c])390 759 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])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
@@ -24773,7 +24948,7 @@ g(in)f Fz(\014le)p 2753 1907 V 40 w(3)p FD(.)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
-2126 y(V)-8 b(alues],)46 b(page)d(69,)i(for)d(treatmen)m(t)h(of)f
+2126 y(V)-8 b(alues],)46 b(page)d(70,)i(for)d(treatmen)m(t)h(of)f
 (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
@@ -24824,17 +24999,17 @@ 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: 160 166
-TeXDict begin 160 165 bop 150 -116 a FD(160)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(Care)i(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(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 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
+%%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
+(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
+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
 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
@@ -24928,13 +25103,13 @@ 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: 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)150
-299 y(are)28 b Fz(broadcast)j FD(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
+%%Page: 164 170
+TeXDict begin 164 169 bop 150 -116 a FD(164)2582 b FC(NCO)30
+b FD(4.4.5)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
+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
@@ -24972,26 +25147,26 @@ 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)37 b(to)h(fail.)61
-b(F)-8 b(or)37 b(concreteness)h(sa)m(y)f(the)h(record)e(dimension)g(in)
-h Fy(file_1)e FD(is)i Fy(time)p FD(.)59 b(If)36 b Fz(\014le)p
-3663 1936 V 40 w(2)150 2046 y FD(w)m(ere)j(created)g(b)m(y)f(a)m(v)m
-(eraging)j Fz(\014le)p 1365 2046 V 40 w(1)46 b FD(o)m(v)m(er)40
-b(the)e Fy(time)f FD(dimension)h(with)g(the)g Fy(ncra)f
-FD(op)s(erator)i(rather)150 2156 y(than)33 b(with)h(the)g
-Fy(ncwa)e FD(op)s(erator,)j(then)f Fz(\014le)p 1689 2156
-V 40 w(2)41 b FD(will)34 b(ha)m(v)m(e)h(a)f Fy(time)e
-FD(dimension)i(of)f(size)f(1)i(rather)f(than)150 2265
-y(ha)m(ving)k(no)g Fy(time)f FD(dimension)g(at)i(all)1496
-2232 y Ft(6)1534 2265 y FD(.)60 b(In)36 b(this)h(case)g(the)g(input)f
-(\014les)h(to)h Fy(ncbo)p FD(,)f Fz(\014le)p 3216 2265
-V 40 w(1)45 b FD(and)36 b Fz(\014le)p 3645 2265 V 40
-w(2)p FD(,)150 2375 y(will)c(ha)m(v)m(e)g(unequally)f(sized)g
-Fy(time)f FD(dimensions)h(whic)m(h)g(causes)g Fy(ncbo)f
-FD(to)i(fail.)44 b(T)-8 b(o)32 b(prev)m(en)m(t)f(this)g(from)150
-2484 y(o)s(ccuring,)g(use)f Fy(ncwa)f FD(to)i(remo)m(v)m(e)h(the)e
-Fy(time)g FD(dimension)f(from)h Fz(\014le)p 2486 2484
-V 41 w(2)p FD(.)41 b(See)30 b(the)h(example)g(b)s(elo)m(w.)275
+Fy(ncbo)150 1936 y FD(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)
 -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
@@ -25003,10 +25178,10 @@ e(longitude\))i(are)f(ph)m(ysically)h(meaningful)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(97)g(for)f(a)h(complete)g
+b(Con)m(v)m(en)m(tions],)j(page)e(98)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(170\))h(is)e(designed)g
+(netCDF)h(File)g(In)m(terp)s(olator],)i(page)e(173\))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
@@ -25053,27 +25228,28 @@ Fs(collapses)h(the)d(record)h(dimension)h(to)f(a)g(size)h(of)d(1)i
 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)
 l(ariable)h(size)f(and)g(rank.)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.4)j(User)d(Guide)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 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)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 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 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 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 1816 y(No)m(w)37 b(none)f(of)h(the)g(v)-5 b(ariables)37
+%%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
+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)
+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
+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
+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
+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
+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(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
@@ -25128,23 +25304,22 @@ Fy(bias.nc)e FD(whic)m(h)i(has)g(the)150 4961 y(same)g(group)f
 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: 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)390
-299 y Fy(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 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(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
+%%Page: 166 172
+TeXDict begin 166 171 bop 150 -116 a FD(166)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(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
+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
+(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
 (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
@@ -25179,22 +25354,23 @@ b(-F)g(-d)g(time,${idx},,12)d(t_anm_8501_8912.nc)e(foo.${idx})150
 (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
 (t_anm_8589_0112.nc)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.4)j(User)d(Guide)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])f([-A])h([-C])f
-([-c])390 731 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])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
+%%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])
+f([-A])h([-C])f([-c])390 731 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])
+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
@@ -25236,7 +25412,7 @@ b(or)f(group,)h(and)f(eac)m(h)h(input)f(\014le)h(or)f(group)g(m)m(ust)g
 3431 y Ft(2)3559 3464 y Fy(nces)150 3573 y FD(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(54\))g(resolv)m(es)f
+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
 (limits)i(for)f(eac)m(h)h(input)e(\014le)h(so)g(that)h(co)s(ordinate)g
@@ -25277,39 +25453,38 @@ Fs(allo)n(ws)g(h)n(yp)r(erslabs)f(in)f(all)i(dimensions)f(so)h(long)f
 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: 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)150
-299 y(groups)34 b(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
+%%Page: 168 174
+TeXDict begin 168 173 bop 150 -116 a FD(168)2582 b FC(NCO)30
+b FD(4.4.5)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
@@ -25339,7 +25514,7 @@ y(co)s(ordinate)43 b(v)-5 b(ariables)43 b(to)g(b)s(e)f(pro)s(cessed)f
 (regardless)d(of)150 3258 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(82\).)41 b(Th)m(us)26 b(it)i(can)f(b)s(e)g
+b(T)m(yp)s(es],)h(page)f(83\).)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(all)i(a)m(v)m(erage)h(co)s(ordinate)f(v)-5 b(ariables)36
@@ -25370,20 +25545,21 @@ 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: 166 172
-TeXDict begin 166 171 bop 150 -116 a FD(166)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y Fy(85.nc)p FD(,)i(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
+%%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
 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
@@ -25417,14 +25593,13 @@ 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
 (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: 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.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([-c])390
-740 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])i([--cnk_plc)e(plc])h
-([--cnk_scl)f(sz])390 849 y([-D)i Fn(dbg)p Fy(])g([-d)f
+%%Page: 170 176
+TeXDict begin 170 175 bop 150 -116 a FD(170)2582 b FC(NCO)30
+b FD(4.4.5)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
+([-c])390 740 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])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
@@ -25483,7 +25658,7 @@ 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(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(54\))g(resolv)m(es)g(to)f(the)g(same)h(size)f(for)g
+(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\).)
@@ -25508,34 +25683,34 @@ 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: 168 174
-TeXDict begin 168 173 bop 150 -116 a FD(168)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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(45\).)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
+%%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
 y(b)m(y)21 b(stripping)g(the)g(input)f(\014le)i(name)f(of)g(an)m(y)h(t)
@@ -25611,40 +25786,40 @@ 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: 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(ing)36 b(parameters)h(di\013er)e(across)i Fz(input-\014les)i
-FD(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 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(that)g(the)g(exp)s(erimen)m(ter)g(sligh)m(tly)g(p)s
-(erturbs)e(the)h(initial)i(conditions)f(of)g(the)150
-1056 y(problem)h(b)s(efore)g(generating)i(eac)m(h)g(new)e(solution.)46
-b(Assume)31 b(eac)m(h)i(\014le)f(con)m(tains)g(all)h(t)m(w)m(elv)m(e)h
-(mon)m(ths)150 1166 y(\(a)g(seasonal)h(cycle\))g(of)f(data)g(and)f(w)m
-(e)h(w)m(an)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(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 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(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(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
+%%Page: 172 178
+TeXDict begin 172 177 bop 150 -116 a FD(172)2582 b FC(NCO)30
+b FD(4.4.5)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
+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
+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
+(that)g(the)g(exp)s(erimen)m(ter)g(sligh)m(tly)g(p)s(erturbs)e(the)h
+(initial)i(conditions)f(of)g(the)150 1056 y(problem)h(b)s(efore)g
+(generating)i(eac)m(h)g(new)e(solution.)46 b(Assume)31
+b(eac)m(h)i(\014le)f(con)m(tains)g(all)h(t)m(w)m(elv)m(e)h(mon)m(ths)
+150 1166 y(\(a)g(seasonal)h(cycle\))g(of)f(data)g(and)f(w)m(e)h(w)m(an)
+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
+(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
+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(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
+(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
 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)
@@ -25666,24 +25841,25 @@ b(in.nc)g(out.nc)h(#)g(Convert)f(time)g(to)i(non-record)d(dimension)390
 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(186)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(173)h(for)f(other)g(metho)s(ds)e(of)i(of)
+b(page)49 b(189)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)
 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: 170 176
-TeXDict begin 170 175 bop 150 -116 a FD(170)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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_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
+%%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_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
@@ -25770,20 +25946,20 @@ h(command)f(line,)h Fy(ncflint)e FD(defaults)h(to)h(w)m(eigh)m(ting)150
 (\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
 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 Fy(0.5,0.5)p FD('.)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(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
+%%Page: 174 180
+TeXDict begin 174 179 bop 150 -116 a FD(174)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y Fy(0.5,0.5)p FD('.)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
+(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
 (existing)g(\014les,)g(but)150 1186 y(is)38 b(rarely)f(used)g(to)h
@@ -25867,37 +26043,37 @@ 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: 172 178
-TeXDict begin 172 177 bop 150 -116 a FD(172)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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(\(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 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(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(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(85p86.nc)390
-2232 y(ncflint)f(-w)h(1,-1)g(85.nc)f(86.nc)g(85m86.nc)390
+%%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
+(\(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
+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
+(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
+(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
+(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
 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
 (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(159\))h(conforming)e(v)-5
+2720 y(Op)s(erator],)f(page)f(162\))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
@@ -25909,19 +26085,19 @@ b(ariables)35 b(needed)f(to)150 2939 y(b)s(e)c(broadcast.)275
 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: 173 179
-TeXDict begin 173 178 bop 150 -116 a FD(Chapter)30 b(4:)41
-b(Op)s(erator)30 b(Reference)h(Man)m(ual)1897 b(173)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])390 849 y([--cnk_dmn)e(nm,sz])h
-([--cnk_map)f(map])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([-H])g([-h])g([--hdn])e
-([--hdr_pad)g Fn(nbr)p Fy(])390 1178 y([-L)i Fn(dfl_lvl)p
+%%Page: 176 182
+TeXDict begin 176 181 bop 150 -116 a FD(176)2582 b FC(NCO)30
+b FD(4.4.5)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])
+390 849 y([--cnk_dmn)e(nm,sz])h([--cnk_map)f(map])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
@@ -26001,21 +26177,22 @@ b(naming)g(con\015icts)150 5340 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 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)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.4)j(User)d(Guide)150 299 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 408 y(v)-5 b(aluable)31 b(data)g(are)g(inadv)m(ertan)m(tly)h
-(o)m(v)m(erwritten.)275 568 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 677 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
-787 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 897 y(on)28 b(the)h(uniqueness)e(of)i(the)f(v)-5
+%%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(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 408 y(v)-5
+b(aluable)31 b(data)g(are)g(inadv)m(ertan)m(tly)h(o)m(v)m(erwritten.)
+275 568 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
+677 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 787 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 897 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
 1006 y(extracted)d(from)d Fz(input-\014le)28 b FD(do)s(es)23
@@ -26106,35 +26283,34 @@ Fs(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: 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)150
-299 y(`)p Fy(-b)30 b(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 408 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(ariables)39 b(in)e(binary)h(format)
-630 518 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 628 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 737 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 894 y Fy(\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 1003 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 1113 y(200)870 1223 y(\045)g(ls)h(-l)f(~/bnr.dat)
-870 1332 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
-1442 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 1551 y(40)150
-1755 y FD(`)p Fy(--fix_rec_dmn)p FD(')630 1864 y(Change)39
-b(record)f(dimension)g Fz(dim)h FD(in)f(the)h(input)f(\014le)g(in)m(to)
-i(a)f(\014xed)f(dimension)g(in)h(the)630 1974 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 2084 y(the)i(syn)m(tax)g(for)g Fy(--fix_rec_dmn)c
+%%Page: 178 184
+TeXDict begin 178 183 bop 150 -116 a FD(178)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 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 408 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(ariables)39 b(in)e(binary)h(format)630 518 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 628 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 737
+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
+894 y Fy(\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 1003 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 1113 y(200)870 1223
+y(\045)g(ls)h(-l)f(~/bnr.dat)870 1332 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 1442 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
+1551 y(40)150 1755 y FD(`)p Fy(--fix_rec_dmn)p FD(')630
+1864 y(Change)39 b(record)f(dimension)g Fz(dim)h FD(in)f(the)h(input)f
+(\014le)g(in)m(to)i(a)f(\014xed)f(dimension)g(in)h(the)630
+1974 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 2084 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 2193 y(the)28 b(dimension)g(name)g Fz(dim)p FD(.)39
 b(This)27 b(is)h(b)s(ecause)h(the)f(feature)g(only)g(w)m(ork)m(ed)h(on)
@@ -26166,7 +26342,7 @@ y(netCDF4)k(\014les)f(that)h(ha)m(v)m(e)g(m)m(ultiple)g(record)f
 (dimensions)f(p)s(er)g(group)h(in)m(to)h(netCDF3)630
 3774 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 3884
-y([Group)30 b(P)m(ath)h(Editing],)g(page)g(45\).)630
+y([Group)30 b(P)m(ath)h(Editing],)g(page)g(46\).)630
 4041 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 4150 y(prin)m(t)35 b(hidden)e(\(ak)-5
@@ -26193,12 +26369,12 @@ 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 5340 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)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.4)j(User)d(Guide)630 299 y(ingested)j(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
-408 y FC(CDL)c FD(prin)m(ting:)870 540 y Fy(zender at roulee:~$)43
+%%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)630
+299 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 408 y FC(CDL)c FD(prin)m(ting:)870 540 y Fy(zender at roulee:~$)43
 b(ncks)k(-v)g(one)g(~/nco/data/in.nc)870 650 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 759 y(one)h(size)g(\(RAM\))f(=)h
@@ -26238,9 +26414,9 @@ Fz(dim)h FD(to)h(a)g(record)f(dimension)g(in)g(the)g(output)g(\014le.)
 m(a)m(y)g(of)f(c)m(hanging)g(a)h(dimension)e(to)i(a/the)g(record)e
 (dimen-)630 4529 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 4639 y(Concatenator],)g(page)f(167)g(and)f(Section)h(4.8)g([ncp)s
+630 4639 y(Concatenator],)g(page)f(170)g(and)f(Section)h(4.8)g([ncp)s
 (dq)d(netCDF)j(P)m(erm)m(ute)g(Dimensions)630 4748 y(Quic)m(kly],)38
-b(page)e(186)h(for)f(other)f(metho)s(ds)g(of)h(c)m(hanging)h(v)-5
+b(page)e(189)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
 4858 y(cluding)30 b(the)h(record)f(dimension.)150 5011
 y(`)p Fy(-H)p FD(')334 b(T)-8 b(urn-on)29 b(prin)m(ting)i(to)g(screen)g
@@ -26253,25 +26429,25 @@ b(default)h Fy(ncks)e FD(prin)m(ts)h(all)h(metadata)h(and)d(data)630
 f(screen)630 5340 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\))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)630
-299 y(when)38 b(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
-(data)630 408 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 518 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 628 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
-b(ariables)36 b(dimensions.)54 b(The)35 b(dimension)630
-737 y(and)23 b(v)-5 b(ariable)24 b(indices)f(refer)g(to)i(the)e(lo)s
-(cation)i(of)e(the)h(corresp)s(onding)e(data)i(elemen)m(t)h(with)630
-847 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
-1003 y Fy(\045)47 b(ncks)g(-C)g(-v)g(three_dmn_var)e(in.nc)870
-1113 y(lat[0]=-90)g(lev[0]=100)g(lon[0]=0)h(three_dmn_var[0]=0)870
-1223 y(lat[0]=-90)f(lev[0]=100)g(lon[1]=90)g(three_dmn_var[1]=1)870
+%%Page: 180 186
+TeXDict begin 180 185 bop 150 -116 a FD(180)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)630 299 y(when)38 b(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(data)630 408 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
+518 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
+628 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 b(ariables)36 b(dimensions.)54
+b(The)35 b(dimension)630 737 y(and)23 b(v)-5 b(ariable)24
+b(indices)f(refer)g(to)i(the)e(lo)s(cation)i(of)e(the)h(corresp)s
+(onding)e(data)i(elemen)m(t)h(with)630 847 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 1003 y Fy(\045)47
+b(ncks)g(-C)g(-v)g(three_dmn_var)e(in.nc)870 1113 y(lat[0]=-90)g
+(lev[0]=100)g(lon[0]=0)h(three_dmn_var[0]=0)870 1223
+y(lat[0]=-90)f(lev[0]=100)g(lon[1]=90)g(three_dmn_var[1]=1)870
 1332 y(lat[0]=-90)g(lev[0]=100)g(lon[2]=180)g(three_dmn_var[2]=2)870
 1442 y(...)870 1551 y(lat[1]=90)g(lev[2]=1000)g(lon[1]=90)g
 (three_dmn_var[21]=21)870 1661 y(lat[1]=90)g(lev[2]=1000)g(lon[2]=180)g
@@ -26321,15 +26497,15 @@ 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 5230 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
 5340 y(output)30 b(\014le.)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.4)j(User)d(Guide)630 299 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 408 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 518
-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
+%%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(The)28 b(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
+408 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
+518 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
 628 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 737 y(\(e.g.,)43 b(with)38 b(`)p Fy(-O)p
@@ -26405,30 +26581,29 @@ 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 5340 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('.)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(-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 408 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 518 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
-678 y(`)p Fy(-Q)p FD(')334 b(T)-8 b(oggle)23 b(prin)m(ting)e(of)g
-(dimension)f(indices)h(and)f(co)s(ordinate)i(v)-5 b(alues)21
-b(when)f(prin)m(ting)g(arra)m(ys.)630 788 y(Eac)m(h)26
-b(v)-5 b(ariable's)27 b(name)f(app)s(ears)f(\015ush)f(left)j(in)e(the)h
-(output.)39 b(This)25 b(helps)h(lo)s(cate)h(sp)s(eci\014c)630
-897 y(v)-5 b(ariables)31 b(in)f(lists)h(with)f(man)m(y)h(v)-5
-b(ariables)31 b(and)e(di\013eren)m(t)i(dimensions.)150
+%%Page: 182 188
+TeXDict begin 182 187 bop 150 -116 a FD(182)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 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 408 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 518
+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 678 y(`)p Fy(-Q)p FD(')334
+b(T)-8 b(oggle)23 b(prin)m(ting)e(of)g(dimension)f(indices)h(and)f(co)s
+(ordinate)i(v)-5 b(alues)21 b(when)f(prin)m(ting)g(arra)m(ys.)630
+788 y(Eac)m(h)26 b(v)-5 b(ariable's)27 b(name)f(app)s(ears)f(\015ush)f
+(left)j(in)e(the)h(output.)39 b(This)25 b(helps)h(lo)s(cate)h(sp)s
+(eci\014c)630 897 y(v)-5 b(ariables)31 b(in)f(lists)h(with)f(man)m(y)h
+(v)-5 b(ariables)31 b(and)e(di\013eren)m(t)i(dimensions.)150
 1058 y(`)p Fy(-q)p FD(')334 b(T)-8 b(urn)36 b(o\013)i(all)h(prin)m
 (ting)e(to)h(screen.)63 b(This)37 b(o)m(v)m(errides)h(the)g(setting)h
 (of)f(all)g(prin)m(t-related)630 1167 y(switc)m(hes,)h(equiv)-5
 b(alen)m(t)38 b(to)g Fn(-H)29 b(-M)h(-m)36 b FD(when)g(in)g
 (single-\014le)i(prin)m(ting)e(mo)s(de.)60 b(When)36
 b(in-)630 1277 y(v)m(ok)m(ed)d(with)f Fy(-R)g FD(\(see)h(Section)g(3.8)
-g([Retaining)h(Retriev)m(ed)f(Files],)i(page)e(34\),)h
+g([Retaining)h(Retriev)m(ed)f(Files],)i(page)e(35\),)h
 Fy(ncks)d FD(au-)630 1386 y(tomatically)g(sets)e Fy(-q)p
 FD(.)39 b(This)27 b(allo)m(ws)j Fy(ncks)d FD(to)i(retriev)m(e)g(remote)
 g(\014les)f(without)g(automat-)630 1496 y(ically)k(trying)e(to)h(prin)m
@@ -26469,7 +26644,7 @@ FD(one)i(can)630 3671 y(translate)j(en)m(tire)g(netCDF3)g(and)f
 630 3780 y(and)30 b(data,)i(using)e(all)h FC(NCO)p FD('s)g(subsetting)f
 (and)g(h)m(yp)s(erslabbing)g(capabilities.)43 b(Compare)630
 3890 y Fy(ncks)29 b FD(\\traditional")k(with)d FC(XML)h
-FD(prin)m(ting:)870 4025 y Fy(zender@@roulee:~$)43 b(ncks)k(-v)g(one)g
+FD(prin)m(ting:)870 4025 y Fy(zender at roulee:~$)43 b(ncks)k(-v)g(one)g
 (~/nco/data/in.nc)870 4134 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 4244 y(one)h(size)g(\(RAM\))f(=)h(1*sizeof\(NC_FLOAT\))c(=)48
@@ -26483,17 +26658,18 @@ b(1*4)f(=)g(4)g(bytes)870 4354 y(one)g(attribute)e(0:)i(long_name,)e
 (type="float")f(shape="">)1061 5230 y(<attribute)h(name="long_name")e
 (separator="*")h(value="one")h(/>)1061 5340 y(<values>1.</values>)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.4)j(User)d(Guide)965 299 y Fy(</variable>)870
-408 y(</netcdf>)630 567 y FC(XML)p FD(-mo)s(de)41 b(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 677 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 b(2014\),)i(hidden)33 b(at-)630 786 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
-896 y(p)s(orted)32 b(datat)m(yp)s(es)i(is)f(v)m(eri\014ed)g(b)m(y)g
+%%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)965
+299 y Fy(</variable>)870 408 y(</netcdf>)630 567 y FC(XML)p
+FD(-mo)s(de)41 b(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
+677 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
+b(2014\),)i(hidden)33 b(at-)630 786 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 896
+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
 1006 y FD(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
@@ -26518,19 +26694,19 @@ FD(')d(options)j(customize)i(the)e(strings)g(used)g(as)630
 b(ariables)40 b(of)g(c)m(haracter-t)m(yp)s(e)i(and)e(n)m(umeric-)630
 2151 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(")p FD(*)p
-Fy(")f FD(and)g Fy(")g(")p FD(:)870 2309 y Fy(zender@@roulee:~$)43
-b(ncks)k(--xml)f(-d)h(time,0,3)f(-v)h(two_dmn_rec_var_sng)c(in.nc)870
+Fy(")f FD(and)g Fy(")g(")p FD(:)870 2309 y Fy(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
 2419 y(...)1013 2528 y(<values)j(separator="*">abc*bcd*cd)o(e*de)o
-(f</v)o(alu)o(es>)918 2638 y(...)918 2748 y(zender@@roulee:~$)d(ncks)j
-(--xml_spr_chr=',)e(')j(-v)g(two_dmn_rec_var_sng)c(in.nc)870
-2857 y(...)870 2967 y(<values)j(separator=",)e(">abc,)i(bcd,)h(cde,)g
-(def,)f(efg,)h(fgh,)g(ghi,)f(hij,)h(jkl,)f(klm</values>)870
-3076 y(...)870 3186 y(zender@@roulee:~$)d(ncks)k(--xml)f(-v)h
-(one_dmn_rec_var)d(in.nc)870 3296 y(...)870 3405 y(<values>1)h(2)j(3)f
-(4)h(5)f(6)h(7)f(8)g(9)h(10</values>)870 3515 y(...)870
-3624 y(zender@@roulee:~$)43 b(ncks)k(--xml_spr_nmr=',)c(')48
-b(-v)f(one_dmn_rec_var)c(in.nc)870 3734 y(...)870 3843
-y(<values)j(separator=",)e(">1,)j(2,)g(3,)g(4,)g(5,)h(6,)f(7,)g(8,)g
+(f</v)o(alu)o(es>)918 2638 y(...)918 2748 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 2857 y(...)870 2967 y(<values)k(separator=",)e(">abc,)i
+(bcd,)h(cde,)g(def,)f(efg,)h(fgh,)g(ghi,)f(hij,)h(jkl,)f(klm</values>)
+870 3076 y(...)870 3186 y(zender at roulee:~$)d(ncks)k(--xml)f(-v)i
+(one_dmn_rec_var)43 b(in.nc)870 3296 y(...)870 3405 y(<values>1)i(2)j
+(3)f(4)h(5)f(6)h(7)f(8)g(9)h(10</values>)870 3515 y(...)870
+3624 y(zender at roulee:~$)43 b(ncks)k(--xml_spr_nmr=',)c(')48
+b(-v)f(one_dmn_rec_var)d(in.nc)870 3734 y(...)870 3843
+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 3953 y(...)630 4112 y FD(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 4221
@@ -26558,37 +26734,37 @@ g(parsers.)80 b(If)43 b(problems)g(arise,)48 b(use)630
 (include)f(an)g(NcML)h(formatting)g(c)m(haracters)630
 5317 y(\(e.g.,)d(commas,)g(angles,)f(quotes\).)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)150
-299 y Fu(4.7.2)63 b(Filters)41 b(for)h Fl(ncks)150 446
-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 555 y Fy(ncks)22 b FD(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
-665 y(in)30 b(a)h(\014le)f(try)390 826 y Fy(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 986 y FD(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 1096 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
-1205 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 1315 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 1425 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
-1534 y Fy(grep)h FD(and)h Fy(cut)f FD(\014lter)i(is)f(desirable,)h(suc)
-m(h)f(as)390 1695 y Fy(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 1856 y FD(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 1965 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
+%%Page: 184 190
+TeXDict begin 184 189 bop 150 -116 a FD(184)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y Fu(4.7.2)63 b(Filters)41
+b(for)h Fl(ncks)150 446 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 555 y Fy(ncks)22
+b FD(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 665 y(in)30 b(a)h(\014le)f(try)390 826
+y Fy(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 986
+y FD(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
+1096 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 1205 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
+1315 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 1425 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 1534 y Fy(grep)h FD(and)h
+Fy(cut)f FD(\014lter)i(is)f(desirable,)h(suc)m(h)f(as)390
+1695 y Fy(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 1856 y FD(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 1965 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 2126 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
@@ -26631,27 +26807,27 @@ b(.)67 b(Shell)150 5121 y(commands)27 b(ma)m(y)h(b)s(e)f(re-used)f
 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 5340 y(tiv)m(ely)-8 b(.)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.4)j(User)d(Guide)390 299 y Fy(#)47 b(NB:)g(Untested)f(on)h
-(Csh,)g(Ksh,)f(Sh,)h(Zsh!)g(Send)g(us)g(feedback!)390
-408 y(#)g(Bash)g(shell)f(\(/bin/bash\))f(users)i(place)f(these)g(in)h
-(.bashrc)390 518 y(#)g(ncattget)f($att_nm)g($var_nm)g($fl_nm)g(:)h
-(What)g(attributes)e(does)h(variable)g(have?)390 628
-y(function)g(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(})390 737 y(#)g(ncunits)f($att_val)g($fl_nm)g(:)h
-(Which)g(variables)e(have)i(given)f(units?)390 847 y(function)g
-(ncunits)f({)j(ncks)e(-M)i(-m)f(${2})f(|)i(grep)f(-E)g(-i)g(")g
-(attribute)f([0-9]+:)f(units.+)h(${1}")h(|)g(cut)g(-f)g(1)h(-d)f(')g(')
-h(|)f(sort)g(;)g(})390 956 y(#)g(ncavg)g($var_nm)f($fl_nm)g(:)h(What)g
-(is)g(mean)g(of)g(variable?)390 1066 y(function)f(ncavg)g({)h(ncwa)g
-(-y)g(avg)g(-O)g(-C)g(-v)h(${1})e(${2})h(~/foo.nc)e(;)j(ncks)f(-H)g(-C)
-g(-v)g(${1})g(~/foo.nc)e(|)j(cut)f(-f)g(3-)g(-d)g(')h(')f(;)g(})390
-1176 y(#)g(ncavg)g($var_nm)f($fl_nm)g(:)h(What)g(is)g(mean)g(of)g
-(variable?)390 1285 y(function)f(ncavg)g({)h(ncap2)g(-O)g(-C)g(-v)g(-s)
-g("foo=${1}.avg\(\);print\(foo\))o(")42 b(${2})k(~/foo.nc)g(|)h(cut)g
-(-f)g(3-)h(-d)f(')g(')h(;)f(})390 1395 y(#)g(ncdmnsz)f($dmn_nm)g
+%%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(#)47 b(NB:)g(Untested)f(on)h(Csh,)g(Ksh,)f(Sh,)h(Zsh!)g(Send)g
+(us)g(feedback!)390 408 y(#)g(Bash)g(shell)f(\(/bin/bash\))f(users)i
+(place)f(these)g(in)h(.bashrc)390 518 y(#)g(ncattget)f($att_nm)g
+($var_nm)g($fl_nm)g(:)h(What)g(attributes)e(does)h(variable)g(have?)390
+628 y(function)g(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(})390 737 y(#)g(ncunits)f($att_val)g($fl_nm)g
+(:)h(Which)g(variables)e(have)i(given)f(units?)390 847
+y(function)g(ncunits)f({)j(ncks)e(-M)i(-m)f(${2})f(|)i(grep)f(-E)g(-i)g
+(")g(attribute)f([0-9]+:)f(units.+)h(${1}")h(|)g(cut)g(-f)g(1)h(-d)f(')
+g(')h(|)f(sort)g(;)g(})390 956 y(#)g(ncavg)g($var_nm)f($fl_nm)g(:)h
+(What)g(is)g(mean)g(of)g(variable?)390 1066 y(function)f(ncavg)g({)h
+(ncwa)g(-y)g(avg)g(-O)g(-C)g(-v)h(${1})e(${2})h(~/foo.nc)e(;)j(ncks)f
+(-H)g(-C)g(-v)g(${1})g(~/foo.nc)e(|)j(cut)f(-f)g(3-)g(-d)g(')h(')f(;)g
+(})390 1176 y(#)g(ncavg)g($var_nm)f($fl_nm)g(:)h(What)g(is)g(mean)g(of)
+g(variable?)390 1285 y(function)f(ncavg)g({)h(ncap2)g(-O)g(-C)g(-v)g
+(-s)g("foo=${1}.avg\(\);print\(foo\))o(")42 b(${2})k(~/foo.nc)g(|)h
+(cut)g(-f)g(3-)h(-d)f(')g(')h(;)f(})390 1395 y(#)g(ncdmnsz)f($dmn_nm)g
 ($fl_nm)g(:)i(What)e(is)h(dimension)f(size?)390 1504
 y(function)g(ncdmnsz)f({)j(ncks)e(-m)i(-M)f(${2})f(|)i(grep)f(-E)g(-i)g
 (":)g(${1},)f(size)h(=")g(|)h(cut)f(-f)g(7)g(-d)g(')h(')f(|)h(uniq)e(;)
@@ -26714,17 +26890,17 @@ 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 5230 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
-5340 y(A)m(ttribute],)28 b(page)e(95\))g(will)g(con)m(tain)g(the)f
+5340 y(A)m(ttribute],)28 b(page)e(97\))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)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)150
-299 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 b(Of)32 b(course)i(the)g(in)m(ternal)g(storage)h
-(of)e(v)-5 b(ariable)150 408 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 518 y(a)j(\014le)f(is)h(useful)e(\(see)j
+%%Page: 186 192
+TeXDict begin 186 191 bop 150 -116 a FD(186)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(in)j Fy(out.nc)f
+FD(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 408 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 518 y(a)j(\014le)f(is)h(useful)e(\(see)j
 (description)e(of)h Fy(-a)e FD(switc)m(h\).)275 682 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 847
@@ -26785,128 +26961,132 @@ y(23.000000)390 4792 y(\045)j(ncks)g(-s)g('\045+16.10f\\n')e(-C)i(-v)g
 y(+1.0000000000)390 5121 y(...)485 5230 y(+23.0000000000)390
 5340 y(\045)j(ncks)g(-s)g('\045f,)g(')g(-C)h(-v)f(three_dmn_var)d
 (in.nc)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.4)j(User)d(Guide)390 299 y Fy(0.000000,)45 b(1.000000,)h(...,)
-g(23.000000,)150 467 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 577 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 686 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(153,)i(for)d(more)h(details)g(on)150 796 y(string)c
-(formatting)i(and)d(sp)s(ecial)i(c)m(haracters.)275 964
-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 b(as)g(blanks)f
-(\(i.e.,)j(the)150 1073 y(underscore)d(c)m(haracter)i(`)p
-Fy(_)p FD('\))e(b)m(y)h(default:)390 1241 y Fy(\045)47
-b(ncks)g(-C)g(-H)g(-v)h(mss_val)d(in.nc)390 1351 y(lon[0]=0)h
-(mss_val[0]=73)390 1461 y(lon[1]=90)f(mss_val[1]=_)390
-1570 y(lon[2]=180)g(mss_val[2]=73)390 1680 y(lon[3]=270)g(mss_val[3]=_)
-390 1789 y(\045)i(ncks)g(-s)g('\045+5.1f,)f(')h(-H)g(-C)h(-v)f(mss_val)
-f(in.nc)390 1899 y(+73.0,)g(_,)h(+73.0,)f(_,)275 2067
+%%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(0.000000,)45 b(1.000000,)h(...,)g(23.000000,)150
+460 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
+569 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 679 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
+788 y(string)c(formatting)i(and)d(sp)s(ecial)i(c)m(haracters.)275
+949 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
+b(as)g(blanks)f(\(i.e.,)j(the)150 1059 y(underscore)d(c)m(haracter)i(`)
+p Fy(_)p FD('\))e(b)m(y)h(default:)390 1219 y Fy(\045)47
+b(ncks)g(-C)g(-H)g(-v)h(mss_val)d(in.nc)390 1329 y(lon[0]=0)h
+(mss_val[0]=73)390 1439 y(lon[1]=90)f(mss_val[1]=_)390
+1548 y(lon[2]=180)g(mss_val[2]=73)390 1658 y(lon[3]=270)g(mss_val[3]=_)
+390 1767 y(\045)i(ncks)g(-s)g('\045+5.1f,)f(')h(-H)g(-C)h(-v)f(mss_val)
+f(in.nc)390 1877 y(+73.0,)g(_,)h(+73.0,)f(_,)275 2038
 y FD(One)g(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
-2177 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 2345 y Fy(ncks)47 b(-v)g(fl_nm)f(in.nc)
-150 2513 y FD(The)33 b Fy(\045c)f FD(formatting)j(co)s(de)e(is)h
+2147 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 2308 y Fy(ncks)47 b(-v)g(fl_nm)f(in.nc)
+150 2469 y FD(The)33 b Fy(\045c)f FD(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 2622 y(sen)m(ting)c(\014xed)f(length)h
-(strings)390 2790 y Fy(ncks)47 b(-s)g('\045c')f(-v)i(fl_nm_arr)d(in.nc)
-150 2958 y FD(Using)22 b(the)f Fy(\045s)g FD(format)h(co)s(de)g(on)g
+m(haracters)i(repre-)150 2578 y(sen)m(ting)c(\014xed)f(length)h
+(strings)390 2739 y Fy(ncks)47 b(-s)g('\045c')f(-v)i(fl_nm_arr)d(in.nc)
+150 2900 y FD(Using)22 b(the)f Fy(\045s)g FD(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 3068 y(strings\))31 b(is)f(lik)m(ely)i(to)f
-(result)f(in)g(a)h(core)g(dump.)275 3236 y(Create)g(netCDF)g
+(not)h(tec)m(hnically)150 3009 y(strings\))31 b(is)f(lik)m(ely)i(to)f
+(result)f(in)g(a)h(core)g(dump.)275 3170 y(Create)g(netCDF)g
 Fy(out.nc)d FD(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
-3345 y(v)-5 b(ariable)31 b Fy(time)p FD(,)f(from)g(netCDF)h
-Fy(in.nc)p FD(:)390 3513 y Fy(ncks)47 b(-x)g(-v)g(time)g(in.nc)f
-(out.nc)275 3682 y FD(As)32 b(a)h(sp)s(ecial)h(case)g(of)e(this,)i
-(consider)f(ho)m(w)f(to)i(remo)m(v)m(e)g(a)f FC(CF)g
-FD(Con)m(v)m(en)m(tion)h(comlian)m(t)h Fy(bounds)c FD(or)150
-3791 y Fy(coordinates)f FD(v)-5 b(ariable)34 b(\(see)f(Section)h(3.37)h
-([CF)e(Con)m(v)m(en)m(tions],)i(page)f(97\))g(suc)m(h)f(as)g
-Fy(time_bounds)p FD(.)150 3901 y FC(NCO)39 b FD(subsetting)h(assumes)f
-(the)g(user)g(w)m(an)m(ts)h(all)g(co)s(ordinates)h(and)d(b)s(ounds)g
-(and)g(axes)i(asso)s(ciated)150 4010 y(with)34 b(all)g(extracted)h(v)-5
-b(ariables)35 b(\(see)g(Section)f(3.12)i([Subsetting)d(Co)s(ordinate)h
-(V)-8 b(ariables],)37 b(page)d(44\).)150 4120 y(Hence)f(to)h(exclude)f
-(a)g Fy(bounds)e FD(or)h Fy(coordinates)e FD(v)-5 b(ariable)34
-b(while)e(retaining)i(the)e(\\paren)m(t")i(v)-5 b(ariable)150
-4229 y(\(here)31 b Fy(time)p FD(\),)e(one)i(m)m(ust)f(use)g(the)h(`)p
-Fy(-C)p FD(')f(switc)m(h:)390 4398 y Fy(ncks)47 b(-C)g(-x)g(-v)g
-(time_bounds)e(in.nc)h(out.nc)275 4566 y FD(The)25 b(`)p
-Fy(-C)p FD(')h(switc)m(h)g(tells)h(the)f(op)s(erator)g
-Fo(NOT)37 b FD(to)27 b(necessarily)g(include)e(all)i(the)f
-FC(CF)g FD(co)s(ordinates)h(and)150 4675 y(b)s(ounds)h(and)i(axes.)41
-b(Hence)31 b(the)g(output)f(\014le)g(will)h(con)m(tain)h
-Fy(time)d FD(and)h(not)h Fy(time_bounds)p FD(.)275 4843
-y(Extract)i(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 4953 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 5062
-y Fy(out.nc)p FD(:)390 5230 y Fy(ncks)47 b(-v)g(time,pressure)d(in.nc)i
-(out.nc)390 5340 y(ncks)h(-C)g(-v)g(time,pressure)d(in.nc)j(out.nc)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)150
-299 y(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 408 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
-(is)150 518 y(guaran)m(teed)e(to)h(con)m(tain)f(only)g(t)m(w)m(o)g(v)-5
+3280 y(v)-5 b(ariable)31 b Fy(time)p FD(,)f(from)g(netCDF)h
+Fy(in.nc)p FD(:)390 3440 y Fy(ncks)47 b(-x)g(-v)g(time)g(in.nc)f
+(out.nc)275 3601 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
+3711 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(98\))150 3820 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
+3930 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 4040 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
+4149 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 4259 y(`)p Fy(-C)p
+FD(')e(switc)m(h:)390 4419 y Fy(ncks)47 b(-C)g(-x)g(-v)g(time_bounds)e
+(in.nc)h(out.nc)275 4580 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
+4690 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 4799 y Fy(time_bounds)p FD(.)275
+4960 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 5070
+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 5179 y Fy(out.nc)p FD(:)390 5340 y Fy(ncks)47
+b(-v)g(time,pressure)d(in.nc)i(out.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.5)j(User)d(Guide)390 299 y Fy(ncks)47 b(-C)g(-v)g
+(time,pressure)d(in.nc)j(out.nc)150 458 y FD(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 568 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(is)150
+677 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(.)275
-677 y(Create)e(netCDF)h Fy(out.nc)e FD(con)m(taining)i(all)g(v)-5
+837 y(Create)e(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
-b(the)g(dimensions)150 787 y(of)38 b(these)h(v)-5 b(ariables)39
+b(the)g(dimensions)150 946 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
-(o)s(d)150 897 y(measure.)84 b(The)44 b(sp)s(eci\014ed)h(h)m(yp)s
+(o)s(d)150 1056 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
-1006 y(range)39 b Fz(lat)i Fv(>)d FD(0)p Fv(:)h FD(in)f(co)s(ordinate)h
+1166 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 1116 y(closed)36 b(in)m(terv)-5 b(al)36
+FD(;)j(the)150 1275 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
-(closest)h(to)e(1000.)i(in)150 1225 y(co)s(ordinate)c
+(closest)h(to)e(1000.)i(in)150 1385 y(co)s(ordinate)c
 Fy(lev)p FD(.)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 1335 y(p)s(oin)m(t,)d(and)e(limits)i(applied)f(to)g
+(decimal)150 1494 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 1445 y([Hyp)s(erslabs],)i(page)h(54.)390
-1604 y Fy(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 1714 y(-d)g(lev,1000.0)e(in.nc)i(out.nc)275
-1873 y FD(Assume)40 b(the)h(domain)g(of)g(the)g(monotonically)i
+(t)f(See)h(Section)f(3.15)150 1604 y([Hyp)s(erslabs],)i(page)h(55.)390
+1763 y Fy(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 1873 y(-d)g(lev,1000.0)e(in.nc)i(out.nc)275
+2032 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 1983 y Fz(lon)25 b Fv(<)g FD(360.)42 b(Here,)29
+Fv(<)150 2142 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
-2092 y(whic)m(h)35 b(crosses)i(the)e(Green)m(wic)m(h)i(meridian)f
+2252 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 2202 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 2361 y Fy(ncks)47
-b(-d)g(lon,260.0,45.0)d(in.nc)i(out.nc)275 2521 y FD(F)-8
+(as)150 2361 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 2521 y Fy(ncks)47
+b(-d)g(lon,260.0,45.0)d(in.nc)i(out.nc)275 2680 y FD(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(62.)p eop
+b(rapp)s(ed)30 b(Co)s(ordinates],)h(page)g(63.)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.4)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
-727 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])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
+%%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)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 727 y([--cnk_dmn)f(nm,sz])h([--cnk_map)
+f(map])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
@@ -26923,7 +27103,7 @@ b(.)44 b(The)31 b Fz(p)s(dq)h FD(ma)m(y)g(stand)f(for)g(\\P)m(erm)m
 (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(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(117,)k(and)
+(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(algorithms)h(b)m(y)e(pro)m(viding)g(high)g(lev)m(el)j(con)m
@@ -26961,13 +27141,13 @@ FD(',)29 b(`)p Fy(pck_xst_new_att)p FD(')150 5121 y Fz(Unpac)m(king)630
 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
 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)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: 190 196
+TeXDict begin 190 195 bop 150 -116 a FD(190)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)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
 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
@@ -26977,7 +27157,7 @@ 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(97.)39
+(Section)h(3.37)h([CF)e(Con)m(v)m(en)m(tions],)j(page)e(98.)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
@@ -27040,7 +27220,7 @@ b(.)63 b(Note)38 b(that)g Fy(ncpdq)e FD(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(159\).)59 b(That)36
+(Binary)150 4491 y(Op)s(erator],)g(page)g(162\).)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
@@ -27058,21 +27238,21 @@ 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
 b(pac)m(king)f(maps)f(are)h(curren)m(tly)f(implemen)m(ted:)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.4)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
+%%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)150
+299 y Fz(P)m(ac)m(k)32 b(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
@@ -27129,7 +27309,7 @@ y(the)32 b(t)m(ypical)h Fy(NC_FLOAT)p FD(-dominated)d(\014le)i(size)h
 (reduces)e(an)h Fy(NC_)150 4742 y(DOUBLE)p FD(-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(117\))150 5011 y(is)i(lossy|once)g(pac)m(k)m(ed,)
+(functions],)h(page)g(119\))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
@@ -27140,20 +27320,19 @@ b(est)30 b(the)h Fy(_FillValue)c FD(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
 b(and)h(data)h(that)f(are)h(not)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)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
+%%Page: 192 198
+TeXDict begin 192 197 bop 150 -116 a FD(192)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(misssing)g(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
@@ -27188,7 +27367,7 @@ FD(capabilit)m(y)j(mak)m(es)f(it)g(p)s(ossible)e(to)i(concatenate)i
 (most)g(slo)m(wly)h(v)-5 b(arying)34 b(dimension)f(in)g(a)h(record)g(v)
 -5 b(ariable)34 b(\(see)h(Section)g(3.14)g([C)f(and)150
 2550 y(F)-8 b(ortran)31 b(Index)f(Con)m(v)m(en)m(tions],)j(page)e
-(53\).)43 b(The)30 b(sp)s(eci\014ed)g(re-ordering)g(fails)i(if)e(it)h
+(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)
@@ -27203,7 +27382,7 @@ h(a)g(v)-5 b(ariable.)83 b(T)-8 b(o)45 b(do)g(this,)150
 (transp)s(ose)150 3257 y(a)35 b(v)-5 b(ariable's)35 b(storage)h(order,)
 f(e.g.,)i(from)30 b(C)k(to)h(F)-8 b(ortran)35 b(data)h(storage)g(order)
 d(\(see)j(Section)f(3.14)h([C)150 3367 y(and)28 b(F)-8
-b(ortran)29 b(Index)e(Con)m(v)m(en)m(tions],)j(page)f(53\).)41
+b(ortran)29 b(Index)e(Con)m(v)m(en)m(tions],)j(page)f(54\).)41
 b(T)-8 b(o)29 b(do)f(this,)h(include)f(all)h(the)g(v)-5
 b(ariable's)29 b(dimensions)150 3476 y(in)i(the)h(dimension)g(re-order)
 f(list)i(in)e(rev)m(ersed)h(order.)44 b(Explicit)33 b(examples)f(of)g
@@ -27250,27 +27429,28 @@ 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)
 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: 190 196
-TeXDict begin 190 195 bop 150 -116 a FD(190)2582 b FC(NCO)30
-b FD(4.4.4)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
-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
-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
+%%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(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 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 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
 b(In)33 b(practice,)j(mapping)d(o)s(ccurs)g(in)150 1325
@@ -27358,25 +27538,25 @@ 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
 (hgh_byt)d(in.nc)i(out.nc)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)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: 194 200
+TeXDict begin 194 199 bop 150 -116 a FD(194)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)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
 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
@@ -27438,11 +27618,12 @@ b(Although)26 b(it)h(is)g(no)n(w)g(straigh)n(tforw)n(ard)i(to)275
 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: 192 198
-TeXDict begin 192 197 bop 150 -116 a FD(192)2582 b FC(NCO)30
-b FD(4.4.4)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)
-f(increases)150 408 y(from)g(south)g(to)h(north.)77 b(Rev)m(ersing)43
+%%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(Supp)s(ose)39 b(the)i(dimension)g Fy(lat)f FD(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
 (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
@@ -27495,11 +27676,11 @@ y Fy(\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: 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)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: 196 202
+TeXDict begin 196 201 bop 150 -116 a FD(196)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)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
 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
@@ -27559,24 +27740,24 @@ 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
 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(167)h(and)f(Section)g(4.7)h([nc)m(ks)f(netCDF)h
-(Kitc)m(hen)f(Sink],)g(page)g(173)h(for)f(other)g(metho)s(ds)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
 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: 194 200
-TeXDict begin 194 199 bop 150 -116 a FD(194)2582 b FC(NCO)30
-b FD(4.4.4)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
-([-c])390 733 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])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
+%%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)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([-c])390 733 y([--cnk_dmn)f(nm,sz])h([--cnk_map)f(map])
+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
@@ -27607,7 +27788,7 @@ 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
-(erslabs],)g(page)f(54\))h(for)150 2981 y(the)31 b(record)f(dimension)g
+(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
@@ -27621,7 +27802,7 @@ b FD(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(82\).)150 3749 y(EXAMPLES)275 3914 y(Av)m(erage)e(\014les)f
+(page)h(83\).)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
@@ -27642,58 +27823,57 @@ b FD(kno)m(ws)g(ho)m(w)h(to)g(h)m(yp)s(erslab)e(the)i(record)f
 (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
 (85.nc)h(86.nc)h(87.nc)f(8512_8602.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)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
-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
-(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(55,)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
-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
-(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)
-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.4)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_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(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 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
+%%Page: 198 204
+TeXDict begin 198 203 bop 150 -116 a FD(198)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)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 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(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
+(56,)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 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(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)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)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_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
+(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
+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)
 g(\(see)i(Section)f(2.7)g([Large)h(Num)m(b)s(ers)d(of)h(Files],)i(page)
@@ -27734,8 +27914,8 @@ b(Second,)150 3940 y(concatenate)33 b(the)e(unpac)m(k)m(ed)f(data)h
 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(98)h(for)e
-(a)g(complete)i(description.)150 4391 y(EXAMPLES)275
+y(Section)31 b(3.38)h([ARM)f(Con)m(v)m(en)m(tions],)h(page)f(100)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
@@ -27747,36 +27927,35 @@ b(in)g Fy(8589.nc)p FD(:)390 4841 y Fy(ncrcat)46 b(85.nc)g(86.nc)h
 (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: 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)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
-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
-(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)
-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
-(\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
-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
+%%Page: 200 206
+TeXDict begin 200 205 bop 150 -116 a FD(200)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)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 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(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)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(\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 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
 (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
 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(55,)h(for)e(a)g(description)h(of)f(the)h Fz(stride)k
+g(56,)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
 (suc)m(h)i(that)g(Jan)m(uary)-8 b(,)44 b(1985)33 b(=)d(1)150
@@ -27785,19 +27964,19 @@ Fy(??)h FD(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
 (8506_8906.nc)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.4)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 620
-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 730 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
-839 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 949 y(file)p
-Fy(])f([-p)h Fn(path)p Fy(])g([-R])f([-r])390 1059 y([-v)h
-Fn(old_name)p Fy(,)p Fn(new_name)p Fy(])c([-v)k(...)o(])390
-1168 y Fn(input-file)e Fy([[)p Fn(output-file)p Fy(]])150
+%%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)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 620 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 730 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 839 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
+949 y(file)p Fy(])f([-p)h Fn(path)p Fy(])g([-R])f([-r])390
+1059 y([-v)h Fn(old_name)p Fy(,)p Fn(new_name)p Fy(])c([-v)k(...)o(])
+390 1168 y Fn(input-file)e Fy([[)p Fn(output-file)p Fy(]])150
 1330 y FD(DESCRIPTION)275 1492 y Fy(ncrename)31 b FD(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 1601 y(that)26 b(has)f(a)h(name)f(in)g
@@ -27877,18 +28056,17 @@ b(The)43 b(old)g(and)g(new)g(names)g(of)g(the)h(attribute)g(are)g(sp)s
 Fy(--attribute)p FD('\))e(b)m(y)i(the)h(asso)s(ciated)g
 Fz(old)p 2600 5340 V 41 w(name)k FD(and)23 b Fz(new)p
 3209 5340 V 40 w(name)29 b FD(v)-5 b(alues.)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)630
-299 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 408 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 518 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 628 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
+%%Page: 202 208
+TeXDict begin 202 207 bop 150 -116 a FD(202)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)630 299 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 408 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
+518 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
+628 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
 737 y Fz(old)p 757 737 28 4 v 40 w(name)k FD(in)31 b(the)g(format)h
 Fz(old)p 1728 737 V 40 w(v)-5 b(ar)p 1892 737 V 40 w(name at old)p
 2336 737 V 40 w(att)p 2491 737 V 41 w(name)p FD(.)44
@@ -27964,13 +28142,14 @@ FD(:)390 4956 y Fy(ncrename)46 b(-v)h(/g1/lon,longitude)c(in_grp.nc)390
 (an)h(easy)g(w)m(a)m(y)h(to)g(c)m(hange)f(whether)g(a)g(v)-5
 b(ariable)29 b(is)g(a)g(co)s(ordinate.)41 b(If)29 b(y)m(ou)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.4)j(User)d(Guide)150 299 y(w)m(an)m(t)37 b(to)h(rename)f(a)g
-(co)s(ordinate)g(v)-5 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
-408 y(separately)32 b(rename)e(b)s(oth)g(the)g(dimension)g(and)g(the)g
-(v)-5 b(ariable:)390 568 y Fy(ncrename)46 b(-d)h(lon,longitude)d(-v)j
+%%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)150
+299 y(w)m(an)m(t)37 b(to)h(rename)f(a)g(co)s(ordinate)g(v)-5
+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 408 y(separately)32
+b(rename)e(b)s(oth)g(the)g(dimension)g(and)g(the)g(v)-5
+b(ariable:)390 568 y Fy(ncrename)46 b(-d)h(lon,longitude)d(-v)j
 (lon,longitude)d(in.nc)275 727 y FD(Unfortunately)-8
 b(,)32 b(the)f(netCDF4)i(library)e(has)g(a)g(longstanding)h(bug)f
 (\(all)h(v)m(ersions)g(un)m(til)f(4.3.1-rc5)150 837 y(released)42
@@ -28051,35 +28230,34 @@ b(and)d(lea)m(v)m(e)k(unc)m(hanged)c(an)m(y)i Fy(Convention)150
 5340 y FD(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(\))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)150
-299 y(need)30 b(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.)150 408 y(V)-8
-b(ariables)28 b(pre\014xed)d(with)h(a)h(p)s(erio)s(d)e(\()p
+%%Page: 204 210
+TeXDict begin 204 209 bop 150 -116 a FD(204)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y(need)g(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.)150
+408 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(t.)40
 b(V)-8 b(ariables)27 b(not)g(pre\014xed)150 518 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(presen)m(t.)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.4)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
-(map])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
+%%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 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(map])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
@@ -28116,7 +28294,7 @@ FD('.)54 b(As)36 b(with)g(all)h(arithmetic)150 3366 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(54\).)41 b Fy(ncwa)27 b FD(also)i(handles)f(v)-5
+(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
@@ -28161,22 +28339,21 @@ 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: 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)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
-(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
-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
-(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
+%%Page: 206 212
+TeXDict begin 206 211 bop 150 -116 a FD(206)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y Fy(latitude)p FD(,)k(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(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 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(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
@@ -28201,7 +28378,7 @@ b(In)31 b(the)h(case)g(of)g(latitude,)h(`)p Fy(-I)p FD(')e(sp)s
 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(82,)j Fy(ncwa)43 b Fo(always)48 b(aver)-5
+(yp)s(es],)k(page)e(83,)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
 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
@@ -28210,7 +28387,7 @@ b(v)-5 b(ariables.)39 b(This)19 b(is)i(indep)s(enden)m(t)e(of)i(the)g
 b(mathematical)150 2109 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(82\).)150 2433 y Fu(4.12.1)63 b(Mask)41 b(condition)150
+(page)h(83\).)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
@@ -28288,15 +28465,15 @@ Fs(')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: 204 210
-TeXDict begin 204 209 bop 150 -116 a FD(204)2582 b FC(NCO)30
-b FD(4.4.4)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
+%%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)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
@@ -28351,13 +28528,13 @@ h(sum)e(of)g(the)h(w)m(eigh)m(ts)i(\(the)e(denominator)g(in)f(the)h(a)m
 FD(')150 3117 y(tells)32 b Fy(ncwa)d FD(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(82\).)275 3386 y(With)36 b(this)h(normalization)h
+(es],)f(page)h(83\).)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
 (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(82\))f(is)g(output)f(if)h(default)150
+(eration)f(T)m(yp)s(es],)g(page)h(83\))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
@@ -28384,14 +28561,14 @@ 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
 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)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
+%%Page: 208 214
+TeXDict begin 208 213 bop 150 -116 a FD(208)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)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
@@ -28435,24 +28612,25 @@ Fs(in)f(man)n(y)f(climate)i(mo)r(dels.)199 5221 y Ft(5)275
 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: 206 212
-TeXDict begin 206 211 bop 150 -116 a FD(206)2582 b FC(NCO)30
-b FD(4.4.4)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
-(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
+%%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)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(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
 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
@@ -28505,9 +28683,11 @@ 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
 (parser)g(and)f(lexer.)p eop end
-%%Page: 207 213
-TeXDict begin 207 212 bop 150 -116 a FD(Chapter)30 b(5:)41
-b(Con)m(tributing)2486 b(207)150 299 y Fx(5)80 b(Con)l(tributing)150
+%%Page: 210 216
+TeXDict begin 210 215 bop 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
 (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
@@ -28555,21 +28735,22 @@ 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)43 b(con)m(v)m(ersion)h
-(for)g(arithmetic.)81 b(Migration)44 b(to)h(netCDF3)f(API.)f
-Fy(ncap2)f FD(parser,)630 3649 y(lexer,)c FC(GSL)p FD(-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 4017 y(Original)59 b(autoto)s(ol)h(build)d
-(supp)s(ort.)124 b(Long)58 b(command-line)h(options.)126
-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 y(Benc)m(hmarking.)41 b(OP)m(eND)m(AP)32 b(con\014guration.)p
+FD(and)h Fy(ncwa)p FD(.)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
+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
+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
+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
 (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
@@ -28582,86 +28763,105 @@ 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
 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: 208 214
-TeXDict begin 208 213 bop 150 -116 a FD(208)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y(P)m(edro)h(Vicen)m(te)630
+%%Page: 212 218
+TeXDict begin 212 217 bop 150 -116 a FD(212)2582 b FC(NCO)30
+b FD(4.4.5)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(NCO)g(structural)g
-(algorithms)150 737 y(Brian)h(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 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 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
+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
+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
+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
+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
 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
 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
-(hmidt,)f(Mic)m(hael)j(Sc)m(h)m(ulz,)e(Lori)f(Sen)m(tman,)h(Gary)f
-(Strand,)g(George)i(White)f(Andrew)150 3313 y(Witten)m(b)s(erg,)h
-(Remik)e(Ziemlinski)630 3422 y(Excellen)m(t)i(bug)e(rep)s(orts)g(and)f
-(feature)i(requests.)150 3587 y(Daniel)g(Baumann,)f(Nic)m(k)h(Bo)m(w)m
-(er,)h(Luk)d(Claebs,)h(Barry)g(deF)-8 b(reese,)31 b(Aleksandar)f
-(Jelenak,)h(F)-8 b(rancesco)150 3696 y(Lo)m(v)m(ergine,)32
-b(Matej)g(V)-8 b(ela)630 3806 y(Debian)31 b(pac)m(k)-5
-b(aging)150 3970 y(P)m(atrice)32 b(Dumas,)f(Ed)e(Hill,)j(Orion)e(P)m
-(opla)m(wski)630 4080 y(RedHat)h(pac)m(k)-5 b(aging)150
-4244 y(George)32 b(Shapa)m(v)-5 b(alo)m(v,)32 b(P)m(atric)m(k)g(Kursa)m
-(w)m(e)630 4354 y(Gen)m(to)s(o)g(pac)m(k)-5 b(aging)150
-4518 y(Filip)s(e)31 b(F)-8 b(ernandes)630 4628 y(Op)s(enSuse)28
-b(pac)m(k)-5 b(aging)150 4792 y(T)d(ak)m(eshi)31 b(Enomoto,)h
-(Alexander)e(Hansen)630 4902 y(Mac)h(OS)f(pac)m(k)-5
-b(aging)150 5066 y(Eric)30 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: 209 215
-TeXDict begin 209 214 bop 150 -116 a FD(Chapter)30 b(5:)41
-b(Con)m(tributing)2486 b(209)150 299 y(Andrea)30 b(Cimatoribus)630
+(hmidt,)f(Mic)m(hael)j(Sc)m(h)m(ulz,)e(Lori)f(Sen)m(tman,)h(Ric)m(h)f
+(Signell,)i(Gary)e(Strand,)g(George)i(White)150 3313
+y(Andrew)d(Witten)m(b)s(erg,)j(Remik)f(Ziemlinski)630
+3422 y(Excellen)m(t)h(bug)e(rep)s(orts)g(and)f(feature)i(requests.)150
+3587 y(Daniel)g(Baumann,)f(Nic)m(k)h(Bo)m(w)m(er,)h(Luk)d(Claebs,)h
+(Barry)g(deF)-8 b(reese,)31 b(Aleksandar)f(Jelenak,)h(F)-8
+b(rancesco)150 3696 y(Lo)m(v)m(ergine,)32 b(Matej)g(V)-8
+b(ela)630 3806 y(Debian)31 b(pac)m(k)-5 b(aging)150 3970
+y(P)m(atrice)32 b(Dumas,)f(Ed)e(Hill,)j(Orion)e(P)m(opla)m(wski)630
+4080 y(RedHat)h(pac)m(k)-5 b(aging)150 4244 y(George)32
+b(Shapa)m(v)-5 b(alo)m(v,)32 b(P)m(atric)m(k)g(Kursa)m(w)m(e)630
+4354 y(Gen)m(to)s(o)g(pac)m(k)-5 b(aging)150 4518 y(Filip)s(e)31
+b(F)-8 b(ernandes)630 4628 y(Op)s(enSuse)28 b(pac)m(k)-5
+b(aging)150 4792 y(T)d(ak)m(eshi)31 b(Enomoto,)h(Alexander)e(Hansen)630
+4902 y(Mac)h(OS)f(pac)m(k)-5 b(aging)150 5066 y(Eric)30
+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)
 -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
 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(Prop)t(osals)46 b(for)f(Institutional)
-h(F)-11 b(unding)150 1523 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
-1632 y(Reduction)d(&)f(Analysis)h(\()p FC(DDRA)p FD(\))i(b)m(y)e(ev)m
+(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\),)
+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
+(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
+(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
+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 1742 y(called)45 b FC(SDO)p
+(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 1851 y FC(MPI)p FD(\))29 b(and)g(Serv)m(er-Side)g
+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 1961
+(extensions)i(to)g FC(OP)n(eND)n(AP)f FD(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
-2120 y(With)e(this)g(\014rst)f FC(NCO)h FD(prop)s(osal)g(funded,)f(the)
+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
-(clear.)41 b(W)-8 b(e)150 2230 y(are)29 b(in)m(terested)h(in)e
+(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
-b(W)-8 b(e)29 b(plan)150 2340 y(to)i(submit)f(a)g(prop)s(osal)g(to)h
+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 2499 y(W)g(e)33 b(are)f(considering)h
+FD(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 2609 y(y)m(ou)24
+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
-b(on)f(the)h(prop)s(osals)150 2718 y(and)30 b(letters)h(of)g(supp)s
+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: 210 216
-TeXDict begin 210 215 bop eop end
-%%Page: 211 217
-TeXDict begin 211 216 bop 150 -116 a FD(Chapter)30 b(6:)41
-b(Quic)m(k)31 b(Start)2534 b(211)150 299 y Fx(6)80 b(Quic)l(k)53
+%%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
 (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
@@ -28690,17 +28890,17 @@ 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(95\).)40 b(The)25 b Fy(-d)g
+(de],)150 4002 y(page)27 b(97\).)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(page)37 b(54\).)60 b(There)36 b(are)g(detailed)i(instructions)e(on)g
+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(194)h(and)e Fy(ncrcat)f
+4221 y(Av)m(erager],)h(page)d(197)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(196\).)59 b FC(NCO)36 b FD(supp)s(orts)e(UDUnits)j
+150 4331 y(page)i(199\).)59 b FC(NCO)36 b FD(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(65\).)150 4688 y FB(6.2)68 b(Mon)l(thly)45
+(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
@@ -28708,16 +28908,16 @@ Fy(time)f FD(is)i(from)e(Jan)h(1990)j(to)e(Dec)g(2005.)150
 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
 eop end
-%%Page: 212 218
-TeXDict begin 212 217 bop 150 -116 a FD(212)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(ncra)47 b(-O)g(--mro)f(-d)h
+%%Page: 216 222
+TeXDict begin 216 221 bop 150 -116 a FD(216)2582 b FC(NCO)30
+b FD(4.4.5)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
 (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
 (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(58\).)69
+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
 (of)g(a)g(single-record)g(output.)65 b(F)-8 b(or)150
@@ -28773,276 +28973,312 @@ Fy(ncra)g FD(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: 213 219
-TeXDict begin 213 218 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(213)150 299 y Fx(7)80 b FB(CMIP5)54
-b Fx(Example)150 553 y FD(The)62 b(\014fth)g(phase)g(of)h(the)g
+%%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
 (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 663
+b(\()p FC(CMIP5)e FD(\()p Fy(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
-b(pro)m(vides)39 b(a)g(m)m(ulti-mo)s(del)150 772 y(framew)m(ork)26
-b(for)g(comparing)h(the)g(mec)m(hanisms)f(and)g(resp)s(onses)f(of)i
-(climate)h(mo)s(dels)e(from)f(around)h(the)150 882 y(w)m(orld.)48
-b(Ho)m(w)m(ev)m(er,)36 b(it)e(is)f(a)g(tremendous)g(w)m(orkload)g(to)h
-(retriev)m(e)h(a)e(single)h(climate)g(statistic)i(from)c(all)150
-992 y(these)37 b(mo)s(dels,)h(eac)m(h)g(of)e(whic)m(h)g(includes)h(sev)
-m(eral)g(ensem)m(ble)g(mem)m(b)s(ers.)59 b(Not)37 b(only)g(that,)i(it)e
-(is)f(to)s(o)150 1101 y(often)e(a)f(rep)s(etitiv)m(e)i(pro)s(cess)e
-(whic)m(h)g(imp)s(edes)g(new)g(researc)m(h)h(and)e(h)m(yp)s(othesis)h
-(testing.)51 b(Our)32 b FC(NASA)150 1211 y(A)n(CCESS)39
-b FD(pro)5 b(ject)39 b(is)g(designed)g(to)h(simplify)e(and)g
-(accelerate)k(this)d(pro)s(cess.)66 b(T)-8 b(o)40 b(b)s(egin,)h(w)m(e)e
-(do)s(cu-)150 1320 y(men)m(t)26 b(b)s(elo)m(w)g(a)g(protot)m(ypical)h
-(example)g(of)e FC(CMIP5)g FD(analysis)h(and)f(ev)-5
-b(aluation)27 b(using)e(traditional)i FC(NCO)150 1430
-y FD(commands)36 b(on)g(netCDF3-format)i(mo)s(del)d(and)h
-FC(HDF-EOS)g FD(format)g(observ)-5 b(ational)38 b(\()p
-FC(NASA)f(MODIS)150 1539 y FD(satellite)k(instrumen)m(t\))e(datasets.)
-68 b(These)38 b(examples)i(complemen)m(t)g(the)f FC(NCO)f
-FD(User)h(Guide)g(b)m(y)g(de-)150 1649 y(tailing)33 b(in-depth)e(data)i
-(analysis)f(in)g(a)g(frequen)m(tly)g(encoun)m(tered)g(\\real)h(w)m
-(orld")f(con)m(text.)47 b(Graphical)150 1759 y(represen)m(tations)27
-b(of)f(the)g(results)f(\()p FC(NCL)h FD(scripts)g(a)m(v)-5
-b(ailable)28 b(up)s(on)c(request\))j(are)f(pro)m(vided)f(to)i
-(illustrate)150 1868 y(ph)m(ysical)f(meaning)g(of)g(the)g(analysis.)40
-b(Since)25 b FC(NCO)h FD(can)f(pro)s(cess)h(hierarc)m(hical)h
-(datasets,)h(i.e.,)g(datasets)150 1978 y(stored)g(with)g(netCDF4)h
-(groups,)f(w)m(e)h(presen)m(t)f(sample)g(scripts)g(illustrating)h
-(group-based)e(pro)s(cessing)150 2087 y(as)k(w)m(ell.)150
-2318 y FB(7.1)68 b(Com)l(bine)46 b(Files)150 2477 y FD(Sometimes,)30
+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
+b(Ho)m(w)m(ev)m(er,)34 b(it)e(is)f(a)g(tremendous)g(w)m(orkload)h(to)f
+(retriev)m(e)i(a)e(single)h(climate)h(statistic)g(from)150
+1018 y(all)39 b(these)g(mo)s(dels,)i(eac)m(h)e(of)g(whic)m(h)f
+(includes)g(sev)m(eral)i(ensem)m(ble)f(mem)m(b)s(ers.)64
+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
+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
+1511 y(one)h(lev)m(el)h(or)f(namespace\))h(\014les.)50
+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)
+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)
+150 1949 y(to)g(allo)m(wing)h(new)m(er)f(hierarc)m(hical)g(\(or)g
+(\\nested"\))h(datasets.)275 2113 y(Hierarc)m(hical)45
+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
+(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
+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
+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
+(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
+(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
+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
+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
 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
-2586 y(\014le)d(size.)40 b(But)24 b(it)i(is)f(not)g(con)m(v)m(enien)m
-(t)h(to)g(pro)s(cess)e(in)h(a)g(batc)m(h)g(mo)s(de.)39
-b(The)24 b(follo)m(wing)i(script)f(illustrates)150 2696
-y(ho)m(w)30 b(to)i(concatenate)h(these)d(\014les)h(in)m(to)g(one.)41
-b(Key)30 b(steps)h(include:)199 2855 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 2989 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 3098 y(tion)31
-b(4.10)h([ncrcat)f(netCDF)g(Record)g(Concatenator],)h(page)f(196\).)390
-3258 y Fy(#!/bin/bash)283 b(#)48 b(shell)e(type)390 3367
-y(shopt)g(-s)i(extglob)d(#)j(enable)e(extended)f(globbing)390
-3587 y(#=======================)o(====)o(====)o(===)o(====)o(====)o
-(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)390
-3696 y(#)i(Some)g(of)g(the)g(models)f(cut)h(one)g(ensemble)f(member)g
-(into)g(several)g(files,)390 3806 y(#)95 b(which)47 b(include)e(data)i
-(of)g(different)e(time)i(periods.)390 3915 y(#)g(We'd)g(better)f
-(concatenate)f(them)i(into)f(one)h(at)g(the)g(beginning)e(so)j(that)390
-4025 y(#)95 b(we)47 b(won't)g(have)f(to)i(think)e(about)g(which)h
-(files)f(we)h(need)g(if)g(we)g(want)390 4134 y(#)95 b(to)47
-b(retrieve)f(a)h(specific)f(time)h(period)f(later.)390
-4244 y(#)390 4354 y(#)h(Method:)390 4463 y(#)334 b(-)47
-b(Make)g(sure)g('time')f(is)h(the)g(record)f(dimension)f(\(i.e.,)h
-(left-most\))390 4573 y(#)334 b(-)47 b(ncrcat)390 4682
-y(#)390 4792 y(#)g(Input)g(files)f(like:)390 4902 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-1)o(9001)o(2.n)o(c)390 5011 y(#)g
-(/data/cmip5/snc_LImon_bcc-)o(csm1)o(-1_)o(hist)o(oric)o(al_)o(r1i1)o
-(p1_1)o(901)o(01-2)o(0051)o(2.n)o(c)390 5121 y(#)390
-5230 y(#)g(Output)g(files)f(like:)390 5340 y(#)h
+4326 y(\014le)36 b(size.)57 b(It)36 b(is)g(more)f(con)m(v)m(enien)m(t)j
+(to)f(concatenate)h(these)e(\014les)f(in)m(to)i(a)f(single)g
+(timeseries,)j(and)c(the)150 4435 y(follo)m(wing)d(script)e
+(illustrates)i(ho)m(w.)40 b(Key)31 b(steps)f(include:)199
+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(199\).)390 5011 y Fy(#!/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.5)k(User)d(Guide)390 299 y Fy(#)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
+(one)h(at)g(the)g(beginning)e(so)j(that)390 628 y(#)95
+b(we)47 b(won't)g(have)f(to)i(think)e(about)g(which)h(files)f(we)h
+(need)g(if)g(we)g(want)390 737 y(#)95 b(to)47 b(retrieve)f(a)h
+(specific)f(time)h(period)f(later.)390 847 y(#)390 956
+y(#)h(Method:)390 1066 y(#)334 b(-)47 b(Make)g(sure)g('time')f(is)h
+(the)g(record)f(dimension)f(\(i.e.,)h(left-most\))390
+1176 y(#)334 b(-)47 b(ncrcat)390 1285 y(#)390 1395 y(#)g(Input)g(files)
+f(like:)390 1504 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-1)o(9001)o(2.n)o(c)390
+1614 y(#)g(/data/cmip5/snc_LImon_bcc-)o(csm1)o(-1_)o(hist)o(oric)o(al_)
+o(r1i1)o(p1_1)o(901)o(01-2)o(0051)o(2.n)o(c)390 1724
+y(#)390 1833 y(#)g(Output)g(files)f(like:)390 1943 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)p eop end
-%%Page: 214 220
-TeXDict begin 214 219 bop 150 -116 a FD(214)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)390 299 y Fy(#)390 408 y(#)47
-b(Online:)94 b(http://nco.sourceforge.n)o(et/n)o(co.h)o(tml)o(#Com)o
-(bine)o(-Fi)o(les)390 518 y(#)390 628 y(#)47 b(Execute)f(this)h
-(script:)93 b(bash)47 b(cmb_fl.sh)390 737 y(#=======================)o
-(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o
-(====)o(===)o(====)o(====)390 956 y(drc_in='/home/wenshanw/d)o(ata/)o
-(cmip)o(5/')41 b(#)48 b(Directory)d(of)i(input)f(files)390
-1176 y(var=\()g('snc')h('snd')f(\))811 b(#)48 b(Variables)390
-1285 y(rlm='LImon')1190 b(#)48 b(Realm)390 1395 y(xpt=\()e
-('historical')f(\))763 b(#)48 b(Experiment)d(\()i(could)f(be)i(more)e
-(\))390 1614 y(for)h(var_id)f(in)h({0..1};)f(do)572 b(#)48
-b(Loop)e(over)h(two)g(variables)485 1724 y(#)h(Names)e(of)h(all)g(the)g
-(models)f(\(ls)h([get)g(file)g(names];)485 1833 y(#)96
-b(cut)47 b([get)f(model)h(names];)485 1943 y(#)96 b(sort;)46
-b(uniq)h([remove)e(duplicates];)g(awk)i([print]\))485
-2052 y(mdl_set=$\()e(ls)j(${drc_in}${var[var_id]})o(_${r)o(lm})o(_*_$)o
-({xpt)o([0])o(}_*.)o(nc)42 b(|)47 b(\\)581 2162 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(\))485
-2271 y(#)h(Number)e(of)h(models)f(\(echo)h([print)f(contents];)f(wc)i
-([count]\))485 2381 y(mdl_nbr=$\()e(echo)i(${mdl_set})e(|)j(wc)f(-w)g
-(\))485 2491 y(echo)g("========================)o(===)o(===")485
-2600 y(echo)g("There)f(are")h(${mdl_nbr})e("models)h(for")g
-(${var[var_id]}.)485 2819 y(for)h(mdl)g(in)g(${mdl_set};)e(do)620
-b(#)48 b(Loop)e(over)h(models)581 2929 y(#)g(Names)g(of)g(all)g(the)g
-(ensemble)e(members)581 3039 y(nsm_set=$\()g(ls)i
+(p1_1)o(850)o(01-2)o(0051)o(2.n)o(c)390 2052 y(#)390
+2162 y(#)g(Online:)94 b(http://nco.sourceforge.n)o(et/n)o(co.h)o(tml)o
+(#Com)o(bine)o(-Fi)o(les)390 2271 y(#)390 2381 y(#)47
+b(Execute)f(this)h(script:)93 b(bash)47 b(cmb_fl.sh)390
+2491 y(#=======================)o(====)o(====)o(===)o(====)o(====)o
+(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)390
+2710 y(drc_in='/home/wenshanw/d)o(ata/)o(cmip)o(5/')41
+b(#)48 b(Directory)d(of)i(input)f(files)390 2929 y(var=\()g('snc')h
+('snd')f(\))811 b(#)48 b(Variables)390 3039 y(rlm='LImon')1190
+b(#)48 b(Realm)390 3148 y(xpt=\()e('historical')f(\))763
+b(#)48 b(Experiment)d(\()i(could)f(be)i(more)e(\))390
+3367 y(for)h(var_id)f(in)h({0..1};)f(do)572 b(#)48 b(Loop)e(over)h(two)
+g(variables)485 3477 y(#)h(Names)e(of)h(all)g(the)g(models)f(\(ls)h
+([get)g(file)g(names];)485 3587 y(#)96 b(cut)47 b([get)f(model)h
+(names];)485 3696 y(#)96 b(sort;)46 b(uniq)h([remove)e(duplicates];)g
+(awk)i([print]\))485 3806 y(mdl_set=$\()e(ls)j(${drc_in}${var[var_id]})
+o(_${r)o(lm})o(_*_$)o({xpt)o([0])o(}_*.)o(nc)42 b(|)47
+b(\\)581 3915 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(\))485 4025 y(#)h(Number)e(of)h(models)f
+(\(echo)h([print)f(contents];)f(wc)i([count]\))485 4134
+y(mdl_nbr=$\()e(echo)i(${mdl_set})e(|)j(wc)f(-w)g(\))485
+4244 y(echo)g("========================)o(===)o(===")485
+4354 y(echo)g("There)f(are")h(${mdl_nbr})e("models)h(for")g
+(${var[var_id]}.)485 4573 y(for)h(mdl)g(in)g(${mdl_set};)e(do)620
+b(#)48 b(Loop)e(over)h(models)581 4682 y(#)g(Names)g(of)g(all)g(the)g
+(ensemble)e(members)581 4792 y(nsm_set=$\()g(ls)i
 (${drc_in}${var[var_id]}_$)o({rl)o(m}_$)o({mdl)o(}_$)o({xpt)o([0]})o
-(_*.)o(nc)42 b(|)47 b(\\)676 3148 y(cut)g(-d)g('_')g(-f)h(5)f(|)g(sort)
-g(|)h(uniq)e(-c)h(|)h(awk)f('{print)f($2}')g(\))581 3258
+(_*.)o(nc)42 b(|)47 b(\\)676 4902 y(cut)g(-d)g('_')g(-f)h(5)f(|)g(sort)
+g(|)h(uniq)e(-c)h(|)h(awk)f('{print)f($2}')g(\))581 5011
 y(#)h(Number)f(of)i(ensemble)d(members)h(in)h(each)g(model)581
-3367 y(nsm_nbr=$\()e(echo)i(${nsm_set})e(|)i(wc)g(-w)g(\))581
-3477 y(echo)g("----------------------)o(---)o(----)o(-")581
-3587 y(echo)g("Model")e(${mdl})h("includes")f(${nsm_nbr})g("ensemble)h
-(member\(s\):")581 3696 y(echo)h(${nsm_set}".")581 3915
-y(for)g(nsm)g(in)g(${nsm_set};)e(do)429 b(#)47 b(Loop)g(over)f
-(ensemble)g(members)676 4025 y(#)i(Number)e(of)h(files)f(in)i(this)e
-(ensemble)g(member)676 4134 y(fl_nbr=$\()g(ls)h
+5121 y(nsm_nbr=$\()e(echo)i(${nsm_set})e(|)i(wc)g(-w)g(\))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
+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
 (${drc_in}${var[var_id]}_)o(${r)o(lm}_)o(${md)o(l}_)o(${xp)o(t[0])o
-(}_$)o({nsm)o(}_*.)o(nc)41 b(\\)772 4244 y(|)47 b(wc)g(-w)h(\))676
-4463 y(#)g(If)f(there)f(is)i(only)e(1)i(file,)e(continue)g(to)h(next)f
-(loop)676 4573 y(if)i([)f(${fl_nbr})e(-le)i(1)h(])676
-4682 y(then)772 4792 y(echo)e("There)h(is)g(only)f(1)i(file)e(in")h
-(${nsm}.)772 4902 y(continue)676 5011 y(fi)676 5230 y(echo)g("There)f
-(are")h(${fl_nbr})e("files)h(in")h(${nsm}.)p eop end
-%%Page: 215 221
-TeXDict begin 215 220 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(215)676 299 y Fy(#)48 b(Starting)d(date)i
-(of)g(data)676 408 y(#)143 b(\(sed)47 b([the)g(name)f(of)h(the)g(first)
-g(file)f(includes)g(the)h(starting)e(date]\))676 518
-y(yyyymm_str=$\()g(ls)i(${drc_in}${var[var_id]})o(_${r)o(lm}_)o(${m)o
-(dl}_)o(${xp)o(t[0)o(]}_$)o({nsm)o(}_*)o(.nc\\)772 628
-y(|)g(sed)g(-n)g('1p')g(|)g(cut)g(-d)h('_')e(-f)i(6)f(|)h(cut)e(-d)i
-('-')f(-f)g(1)g(\))676 737 y(#)h(Ending)e(date)h(of)g(data)676
-847 y(#)143 b(\(sed)47 b([the)g(name)f(of)h(the)g(last)g(file)g
-(includes)e(the)i(ending)f(date]\))676 956 y(yyyymm_end=$\()f(ls)i
+(}_$)o({nsm)o(}_*.)o(nc)41 b(\\)772 847 y(|)47 b(wc)g(-w)h(\))676
+1066 y(#)g(If)f(there)f(is)i(only)e(1)i(file,)e(continue)g(to)h(next)f
+(loop)676 1176 y(if)i([)f(${fl_nbr})e(-le)i(1)h(])676
+1285 y(then)772 1395 y(echo)e("There)h(is)g(only)f(1)i(file)e(in")h
+(${nsm}.)772 1504 y(continue)676 1614 y(fi)676 1833 y(echo)g("There)f
+(are")h(${fl_nbr})e("files)h(in")h(${nsm}.)676 2052 y(#)h(Starting)d
+(date)i(of)g(data)676 2162 y(#)143 b(\(sed)47 b([the)g(name)f(of)h(the)
+g(first)g(file)f(includes)g(the)h(starting)e(date]\))676
+2271 y(yyyymm_str=$\()g(ls)i(${drc_in}${var[var_id]})o(_${r)o(lm}_)o
+(${m)o(dl}_)o(${xp)o(t[0)o(]}_$)o({nsm)o(}_*)o(.nc\\)772
+2381 y(|)g(sed)g(-n)g('1p')g(|)g(cut)g(-d)h('_')e(-f)i(6)f(|)h(cut)e
+(-d)i('-')f(-f)g(1)g(\))676 2491 y(#)h(Ending)e(date)h(of)g(data)676
+2600 y(#)143 b(\(sed)47 b([the)g(name)f(of)h(the)g(last)g(file)g
+(includes)e(the)i(ending)f(date]\))676 2710 y(yyyymm_end=$\()f(ls)i
 (${drc_in}${var[var_id]})o(_${r)o(lm}_)o(${m)o(dl}_)o(${xp)o(t[0)o
-(]}_$)o({nsm)o(}_*)o(.nc\\)772 1066 y(|)g(sed)g(-n)g("${fl_nbr}p")e(|)i
+(]}_$)o({nsm)o(}_*)o(.nc\\)772 2819 y(|)g(sed)g(-n)g("${fl_nbr}p")e(|)i
 (cut)g(-d)g('_')g(-f)g(6)h(|)f(cut)g(-d)g('-')g(-f)h(2)f(\))676
-1285 y(#)h(Concatenate)d(one)h(ensemble)g(member)g(files)676
-1395 y(#)143 b(into)47 b(one)g(along)f(the)h(record)f(dimension)f
-(\(now)i(is)g(time\))676 1504 y(ncrcat)f(-O)i(${drc_in}${var[var_id]})o
+3039 y(#)h(Concatenate)d(one)h(ensemble)g(member)g(files)676
+3148 y(#)143 b(into)47 b(one)g(along)f(the)h(record)f(dimension)f
+(\(now)i(is)g(time\))676 3258 y(ncrcat)f(-O)i(${drc_in}${var[var_id]})o
 (_${r)o(lm})o(_${m)o(dl}_)o(${x)o(pt[0)o(]}_$)o({ns)o(m}_*)o(.nc)41
-b(\\)772 1614 y(${drc_in}${var[var_id]}_)o(${r)o(lm}_)o(${md)o(l}_)o
-(${xp)o(t[0])o(}_\\)772 1724 y(${nsm}_${yyyymm_str}-${y)o(yyy)o(mm_e)o
-(nd})676 1943 y(#)48 b(Remove)e(useless)g(files)676 2052
+b(\\)772 3367 y(${drc_in}${var[var_id]}_)o(${r)o(lm}_)o(${md)o(l}_)o
+(${xp)o(t[0])o(}_\\)772 3477 y(${nsm}_${yyyymm_str}-${y)o(yyy)o(mm_e)o
+(nd})676 3696 y(#)48 b(Remove)e(useless)g(files)676 3806
 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 2162 y(!\(${yyyymm_str}-${yyyymm)o(_en)o(d}\))
-581 2271 y(done)485 2381 y(done)390 2491 y(done)275 2655
-y FD(Righ)m(t)33 b(no)m(w,)h FC(CMIP5)e FD(mo)s(del)h(data)h(do)m
-(wnloaded)f(from)f(Earth)h(System)g(Grid)f(F)-8 b(ederation)35
-b(\()p FC(ESGF)150 2765 y FD(\()p Fy(http://pcmdi9.llnl.gov/esg)o(f-w)o
-(eb-f)o(e/)p FD(\)\))18 b(will)25 b(not)f(con)m(tain)h
-Fy(group)e FD(features)h(y)m(et.)40 b(Therefore)150 2874
-y(users)27 b(can)i(aggregate)i(the)d(\015at)h(\014les)f(in)m(to)h
-(groups)f(themselv)m(es.)41 b(The)27 b(follo)m(wing)j(script)e(sho)m
-(ws)g(ho)m(w)g(to)150 2984 y(aggregate)36 b(mo)s(dels)c(to)h(one)g
-(\014le.)48 b(Eac)m(h)33 b(dataset)h(b)s(ecomes)f(a)g(group)f(in)h(the)
-g(output)f(\014le.)47 b(There)33 b(can)150 3093 y(b)s(e)h(sev)m(eral)i
-(lev)m(els)h(of)d(groups.)54 b(In)34 b(this)g(example,)j(w)m(e)e(emplo)
-m(y)h(t)m(w)m(o)g(exp)s(erimen)m(ts)e(as)h(the)g(top-lev)m(el.)150
-3203 y(The)h(second-lev)m(el)i(comprises)e(di\013eren)m(t)h(mo)s(dels.)
-58 b(Some)36 b(mo)s(dels)g(ha)m(v)m(e)i(more)e(than)g(one)g(ensem)m
-(ble)150 3313 y(mem)m(b)s(er.)53 b(These)35 b(ensem)m(ble)g(mem)m(b)s
-(ers)f(are)h(on)f(the)h(third)f(lev)m(el.)55 b(In)34
-b(eac)m(h)i(sub-group)e(of)g(ensem)m(ble)150 3422 y(mem)m(b)s(ers,)i(w)
-m(e)g(app)s(ended)e(t)m(w)m(o)i(v)-5 b(ariables,)38 b
-Fz(snc)j FD(and)35 b Fz(snd)i FD(\(these)g(stand)e(for)g(sno)m(w)g(co)m
-(v)m(er)i(and)e(sno)m(w)150 3532 y(depth,)30 b(b)m(y)g(the)h(w)m(a)m
-(y\).)390 3696 y Fy(#!/bin/bash)390 3806 y(#)390 3915
-y(#=======================)o(====)o(====)o(===)o(====)o(====)o(===)o
-(====)o(====)o(===)o(====)390 4025 y(#)47 b(Aggregate)f(models)g(to)h
-(one)g(group)f(file)390 4134 y(#)390 4244 y(#)h(Method:)390
-4354 y(#)g(-)h(Create)e(files)g(with)h(groups)f(by)h(ncecat)f(--gag)390
-4463 y(#)334 b(-)47 b(Append)f(groups)g(level)h(by)g(level)f(using)h
-(ncks)390 4573 y(#)390 4682 y(#)g(Input)g(files)f(like:)390
-4792 y(#)h(snc_LImon_CCSM4_historical)o(_r1i)o(1p1)o(_199)o(001-)o(200)
-o(512.)o(nc)390 4902 y(#)g(snd_LImon_CESM1-BGC_esmHis)o(tori)o(cal)o
-(_r1i)o(1p1_)o(199)o(001-)o(2005)o(12.)o(nc)390 5011
-y(#)390 5121 y(#)g(Output)g(files)f(like:)390 5230 y(#)h
-(sn_LImon_199001-200512.nc)390 5340 y(#)p eop end
-%%Page: 216 222
-TeXDict begin 216 221 bop 150 -116 a FD(216)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)390 299 y Fy(#)47 b(Online:)94
-b(http://nco.sourceforge.n)o(et/n)o(co.h)o(tml)o(#Com)o(bine)o(-Fi)o
-(les)390 408 y(#)390 518 y(#)47 b(Execute)f(this)h(script:)93
-b(bash)47 b(cmb_fl_grp.sh)390 628 y(#=======================)o(====)o
-(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)390
-847 y(#)g(Directories)390 956 y(drc_in='../data/')390
-1066 y(drc_out='../data/grp/')390 1285 y(#)g(Constants)390
-1395 y(rlm='LImon')427 b(#)47 b(Realm:)94 b(LandIce;)45
-b(Time)i(frequency:)93 b(monthly)390 1504 y(tms='200001-200512')43
-b(#)k(Timeseris)390 1614 y(flt='nc')571 b(#)47 b(File)g(Type)390
-1833 y(#)g(Geographical)e(weights)390 1943 y(#)i(Can)g(be)h(skipped)d
-(when)i(ncap2)f(works)h(on)g(group)f(data)390 2052 y(#)h(Loop)g(over)g
-(all)g(snc)g(files)390 2162 y(for)g(fn)g(in)g($\()g(ls)h
-(${drc_in}snc_${rlm}_*_$)o({tms)o(}.$)o({flt)o(})42 b(\);)47
-b(do)485 2271 y(ncap2)g(-O)g(-s)g(\\)581 2381 y('gw)g(=)g
-(float\(cos\(lat*3.1416/180.)o(\)\);)41 b(gw at long_name="geographical)g
-(weight";'\\)581 2491 y(${fn})46 b(${fn})390 2600 y(done)390
-2819 y(var=\()g('snc')h('snd')f(\))390 2929 y(xpt=\()g('esmHistorical')
-e('historical')g(\))390 3039 y(mdl=\()i('CCSM4')g('CESM1-BGC')f
-('CESM1-CAM5')f(\))390 3258 y(for)j(i)g(in)h({0..1};)d(do)238
-b(#)48 b(Loop)f(over)f(variables)485 3367 y(for)h(j)h(in)f({0..1};)f
-(do)142 b(#)48 b(Loop)f(over)f(experiments)581 3477 y(for)h(k)g(in)g
-({0..2};)f(do)h(#)h(Loop)f(over)f(models)676 3587 y(ncecat)g(-O)i
-(--glb_mtd_spp)c(-G)j(${xpt[j]}/${mdl[k]}/${md)o(l[k])o(}_)42
-b(\\)772 3696 y(${drc_in}${var[i]}_${rlm)o(}_$)o({mdl)o([k]})o(_${)o
-(xpt[)o(j]}_)o(*_$)o({tms)o(}.${)o(flt)o(})g(\\)772 3806
-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 3915 y(ncks)47
-b(-A)g(\\)772 4025 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})41
-b(\\)772 4134 y(${drc_out}${var[i]}_${rl)o(m}_)o(${md)o(l[0])o(}_$)o
-({xpt)o([j]})o(_al)o(l-ns)o(m_${)o(tms)o(}.${)o(flt})581
-4244 y(done)762 b(#)48 b(Loop)f(done:)94 b(models)581
-4354 y(ncks)47 b(-A)g(\\)676 4463 y(${drc_out}${var[i]}_${rlm})o(_${)o
+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
+(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
+(sho)m(ws)g(ho)m(w.)150 4792 y(Eac)m(h)i(dataset)h(b)s(ecomes)f(a)g
+(group)g(in)f(the)h(output)f(\014le.)42 b(There)30 b(can)h(b)s(e)f(sev)
+m(eral)i(lev)m(els)h(of)e(groups.)41 b(In)150 4902 y(this)33
+b(example,)i(w)m(e)f(emplo)m(y)g(t)m(w)m(o)g(exp)s(erimen)m(ts)g
+(\(\\scenarios"\))h(as)f(the)f(top-lev)m(el.)52 b(The)33
+b(second-lev)m(el)150 5011 y(comprises)39 b(di\013eren)m(t)h(mo)s(dels)
+e(\(e.g.,)44 b(CCSM4,)d(CESM1-BGC\).)f(Man)m(y)f(mo)s(dels)g(are)h(run)
+d(m)m(ultiple)150 5121 y(times)27 b(with)g(sligh)m(t)h(p)s(erturb)s(ed)
+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
+eop end
+%%Page: 220 226
+TeXDict begin 220 225 bop 150 -116 a FD(220)2565 b(NCO)29
+b(4.4.5)k(User)d(Guide)390 299 y Fy(#!/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
+y(#)390 847 y(#)h(Method:)390 956 y(#)g(-)h(Create)e(files)g(with)h
+(groups)f(by)h(ncecat)f(--gag)390 1066 y(#)h(-)h(Append)e(groups)g
+(level)g(by)i(level)e(using)g(ncks)390 1176 y(#)390 1285
+y(#)h(Input)g(files)f(like:)390 1395 y(#)h(snc_LImon_CCSM4_historical)o
+(_r1i)o(1p1)o(_199)o(001-)o(200)o(512.)o(nc)390 1504
+y(#)g(snd_LImon_CESM1-BGC_esmHis)o(tori)o(cal)o(_r1i)o(1p1_)o(199)o
+(001-)o(2005)o(12.)o(nc)390 1614 y(#)390 1724 y(#)g(Output)g(files)f
+(like:)390 1833 y(#)h(sn_LImon_199001-200512.nc)390 1943
+y(#)390 2052 y(#)g(Online:)94 b(http://nco.sourceforge.n)o(et/n)o(co.h)
+o(tml)o(#Com)o(bine)o(-Fi)o(les)390 2162 y(#)390 2271
+y(#)47 b(Execute)f(this)h(script:)93 b(bash)47 b(cmb_fl_grp.sh)390
+2381 y(#=======================)o(====)o(====)o(===)o(====)o(====)o
+(===)o(====)o(====)o(===)o(====)390 2600 y(#)g(Directories)390
+2710 y(drc_in='../data/')390 2819 y(drc_out='../data/grp/')390
+3039 y(#)g(Constants)390 3148 y(rlm='LImon')427 b(#)47
+b(Realm:)94 b(LandIce;)45 b(Time)i(frequency:)93 b(monthly)390
+3258 y(tms='200001-200512')43 b(#)k(Timeseries)390 3367
+y(flt='nc')571 b(#)47 b(File)g(Type)390 3587 y(#)g(Geographical)e
+(weights)390 3696 y(#)i(Can)g(be)h(skipped)d(when)i(ncap2)f(works)h(on)
+g(group)f(data)390 3806 y(#)h(Loop)g(over)g(all)g(snc)g(files)390
+3915 y(for)g(fn)g(in)g($\()g(ls)h(${drc_in}snc_${rlm}_*_$)o({tms)o(}.$)
+o({flt)o(})42 b(\);)47 b(do)485 4025 y(ncap2)g(-O)g(-s)g(\\)581
+4134 y('gw)g(=)g(float\(cos\(lat*3.1416/180.)o(\)\);)41
+b(gw at long_name="geographical)g(weight";'\\)581 4244 y(${fn})46
+b(${fn})390 4354 y(done)390 4573 y(var=\()g('snc')h('snd')f(\))390
+4682 y(xpt=\()g('esmHistorical')e('historical')g(\))390
+4792 y(mdl=\()i('CCSM4')g('CESM1-BGC')f('CESM1-CAM5')f(\))390
+5011 y(for)j(i)g(in)h({0..1};)d(do)238 b(#)48 b(Loop)f(over)f
+(variables)485 5121 y(for)h(j)h(in)f({0..1};)f(do)142
+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
+(}_$)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
+518 y(ncks)47 b(-A)g(\\)772 628 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})41 b(\\)772 737 y(${drc_out}${var[i]}_${rl)o(m}_)o(${md)o(l[0])o
+(}_$)o({xpt)o([j]})o(_al)o(l-ns)o(m_${)o(tms)o(}.${)o(flt})581
+847 y(done)762 b(#)48 b(Loop)f(done:)94 b(models)581
+956 y(ncks)47 b(-A)g(\\)676 1066 y(${drc_out}${var[i]}_${rlm})o(_${)o
 (mdl[)o(0]}_)o(${x)o(pt[j)o(]}_a)o(ll-)o(nsm_)o(${tm)o(s}.)o(${fl)o(t})
-42 b(\\)676 4573 y(${drc_out}${var[i]}_${rlm})o(_${)o(mdl[)o(0]}_)o
+42 b(\\)676 1176 y(${drc_out}${var[i]}_${rlm})o(_${)o(mdl[)o(0]}_)o
 (${x)o(pt[0)o(]}_a)o(ll-)o(nsm_)o(${tm)o(s}.)o(${fl)o(t})485
-4682 y(done)858 b(#)48 b(Loop)f(done:)94 b(experiments)485
-4792 y(ncks)47 b(-A)g(\\)581 4902 y(${drc_out}${var[i]}_${rl)o(m}_$)o
+1285 y(done)858 b(#)48 b(Loop)f(done:)94 b(experiments)485
+1395 y(ncks)47 b(-A)g(\\)581 1504 y(${drc_out}${var[i]}_${rl)o(m}_$)o
 ({md)o(l[0])o(}_${)o(xpt)o([0]})o(_all)o(-ns)o(m_${)o(tms})o(.${)o
-(flt})41 b(\\)581 5011 y(${drc_out}${var[0]}_${rl)o(m}_$)o({md)o(l[0])o
+(flt})41 b(\\)581 1614 y(${drc_out}${var[0]}_${rl)o(m}_$)o({md)o(l[0])o
 (}_${)o(xpt)o([0]})o(_all)o(-ns)o(m_${)o(tms})o(.${)o(flt})390
-5121 y(done)953 b(#)48 b(Loop)f(done:)94 b(variables)390
-5340 y(#)47 b(Rename)g(output)f(file)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)390 299 y Fy(mv)47 b
+1724 y(done)953 b(#)48 b(Loop)f(done:)94 b(variables)390
+1943 y(#)47 b(Rename)g(output)f(file)390 2052 y(mv)h
 (${drc_out}${var[0]}_${rlm)o(}_${)o(mdl)o([0]})o(_${x)o(pt[)o(0]}_)o
-(all-)o(nsm)o(_${t)o(ms}.)o(${f)o(lt})41 b(\\)485 408
+(all-)o(nsm)o(_${t)o(ms}.)o(${f)o(lt})41 b(\\)485 2162
 y(${drc_out}sn_${rlm}_all-md)o(l_al)o(l-x)o(pt_a)o(ll-n)o(sm_)o(${tm)o
-(s}.$)o({fl)o(t})390 518 y(#)47 b(Remove)g(temporary)e(files)390
-628 y(rm)i(${drc_out}sn?_${rlm}*.nc)390 847 y(#!!!!!!!!!!!!!!!!!!!!!!!)
-o(!!!!)o(!!!!)o(!!!)o(!!!!)o(!!!!)o(!!!)o(!!!!)o(!!!!)o(!!!)o(!!!!)390
-956 y(#)g(Coming)g(soon!)390 1066 y(#-)g(Group)g(names:)390
-1176 y(#)143 b(E.g.,)46 b(file)h(snc_LImon_CESM1-CAM5_his)o(tori)o(cal)
-o(_r1i)o(1p1_)o(199)o(001-)o(2005)o(12.)o(nc)390 1285
-y(#)143 b(will)47 b(be)g(group)f(/historical/CESM1-CAM5/00)390
-1395 y(#-)h(You)g(can)g(rename)f(groups)g(on)h(the)g(last)g(level)f(to)
-h(be)h(more)e(meaningful)f(by)390 1504 y(#ncrename)g(-g)i
-(${xpt}/${mdl}/02,${xpt}/${)o(mdl})o(/r3)o(i1p1)41 b(\\)390
-1614 y(#)95 b(${drc_out}${var}_${rlm}_$)o({mdl)o(}_a)o(ll-n)o(sm_$)o
-({tm)o(s}.$)o({flt)o(})390 1724 y(#!!!!!!!!!!!!!!!!!!!!!!!)o(!!!!)o
-(!!!!)o(!!!)o(!!!!)o(!!!!)o(!!!)o(!!!!)o(!!!!)o(!!!)o(!!!!)390
-1943 y(#-----------------------)o(----)o(----)o(---)o(----)o(----)o
-(---)o(----)o(----)o(---)o(----)390 2052 y(#)47 b(Output)g(file)f
-(structure)390 2162 y(#-----------------------)o(----)o(----)o(---)o
-(----)o(----)o(---)o(----)o(----)o(---)o(----)390 2271
-y(#)h(esmHistorical)390 2381 y(#)g({)390 2491 y(#)143
-b(CESM1-BGC)390 2600 y(#)g({)390 2710 y(#)238 b(CESM1-BGC_00)390
-2819 y(#)g({)390 2929 y(#)334 b(snc\(time,)45 b(lat,)i(lon\))390
-3039 y(#)334 b(snd\(time,)45 b(lat,)i(lon\))390 3148
-y(#)238 b(})390 3258 y(#)143 b(})390 3367 y(#)47 b(})390
-3477 y(#)g(historical)390 3587 y(#)g({)390 3696 y(#)191
-b(CCSM4)390 3806 y(#)g({)390 3915 y(#)286 b(CCSM4_00)390
-4025 y(#)g({)390 4134 y(#)334 b(snc\(time,)45 b(lat,)i(lon\))390
-4244 y(#)334 b(snd\(time,)45 b(lat,)i(lon\))390 4354
-y(#)286 b(})390 4463 y(#)g(CCSM4_01)390 4573 y(#)g({)390
-4682 y(#)334 b(snc\(time,)45 b(lat,)i(lon\))390 4792
-y(#)334 b(snd\(time,)45 b(lat,)i(lon\))390 4902 y(#)286
-b(})390 5011 y(#)g(CCSM4_02)46 b({)h(...)95 b(})390 5121
-y(#)286 b(CCSM4_03)46 b({)h(...)95 b(})390 5230 y(#)286
-b(CCSM4_04)46 b({)h(...)95 b(})390 5340 y(#)191 b(})p
-eop end
-%%Page: 218 224
-TeXDict begin 218 223 bop 150 -116 a FD(218)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(#)191 b(CESM1-BGC)390
-408 y(#)g({)390 518 y(#)286 b(CESM1-BGC_00)45 b({)i(...)95
-b(})390 628 y(#)191 b(})390 737 y(#)g(CESM1-CAM5)390
-847 y(#)g({)390 956 y(#)286 b(CESM1-CAM5_00)44 b({)k(...)94
-b(})390 1066 y(#)286 b(CESM1-CAM5_01)44 b({)k(...)94
-b(})390 1176 y(#)286 b(CESM1-CAM5_02)44 b({)k(...)94
-b(})390 1285 y(#)191 b(})390 1395 y(#)47 b(})150 1661
-y FB(7.2)68 b(Global)46 b(Distribution)g(of)f(Long-term)g(Av)l(erage)
-150 4510 y @beginspecial 0 @llx 12 @lly 613 @urx 757
- at ury 2520 @rwi @setspecial
+(s}.$)o({fl)o(t})390 2271 y(#)47 b(Remove)g(temporary)e(files)390
+2381 y(rm)i(${drc_out}sn?_${rlm}*.nc)390 2600 y
+(#!!!!!!!!!!!!!!!!!!!!!!!)o(!!!!)o(!!!!)o(!!!)o(!!!!)o(!!!!)o(!!!)o
+(!!!!)o(!!!!)o(!!!)o(!!!!)390 2710 y(#)g(Coming)g(soon!)390
+2819 y(#-)g(Group)g(names:)390 2929 y(#)143 b(E.g.,)46
+b(file)h(snc_LImon_CESM1-CAM5_his)o(tori)o(cal)o(_r1i)o(1p1_)o(199)o
+(001-)o(2005)o(12.)o(nc)390 3039 y(#)143 b(will)47 b(be)g(group)f
+(/historical/CESM1-CAM5/00)390 3148 y(#-)h(You)g(can)g(rename)f(groups)
+g(on)h(the)g(last)g(level)f(to)h(be)h(more)e(meaningful)f(by)390
+3258 y(#ncrename)g(-g)i(${xpt}/${mdl}/02,${xpt}/${)o(mdl})o(/r3)o(i1p1)
+41 b(\\)390 3367 y(#)95 b(${drc_out}${var}_${rlm}_$)o({mdl)o(}_a)o
+(ll-n)o(sm_$)o({tm)o(s}.$)o({flt)o(})390 3477 y
+(#!!!!!!!!!!!!!!!!!!!!!!!)o(!!!!)o(!!!!)o(!!!)o(!!!!)o(!!!!)o(!!!)o
+(!!!!)o(!!!!)o(!!!)o(!!!!)390 3696 y(#-----------------------)o(----)o
+(----)o(---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)390
+3806 y(#)47 b(Output)g(file)f(structure)390 3915 y
+(#-----------------------)o(----)o(----)o(---)o(----)o(----)o(---)o
+(----)o(----)o(---)o(----)390 4025 y(#)h(esmHistorical)390
+4134 y(#)g({)390 4244 y(#)143 b(CESM1-BGC)390 4354 y(#)g({)390
+4463 y(#)238 b(CESM1-BGC_00)390 4573 y(#)g({)390 4682
+y(#)334 b(snc\(time,)45 b(lat,)i(lon\))390 4792 y(#)334
+b(snd\(time,)45 b(lat,)i(lon\))390 4902 y(#)238 b(})390
+5011 y(#)143 b(})390 5121 y(#)47 b(})390 5230 y(#)g(historical)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.5)j(User)d(Guide)390 299 y Fy(#)191 b(CCSM4)390
+408 y(#)g({)390 518 y(#)286 b(CCSM4_00)390 628 y(#)g({)390
+737 y(#)334 b(snc\(time,)45 b(lat,)i(lon\))390 847 y(#)334
+b(snd\(time,)45 b(lat,)i(lon\))390 956 y(#)286 b(})390
+1066 y(#)g(CCSM4_01)390 1176 y(#)g({)390 1285 y(#)334
+b(snc\(time,)45 b(lat,)i(lon\))390 1395 y(#)334 b(snd\(time,)45
+b(lat,)i(lon\))390 1504 y(#)286 b(})390 1614 y(#)g(CCSM4_02)46
+b({)h(...)95 b(})390 1724 y(#)286 b(CCSM4_03)46 b({)h(...)95
+b(})390 1833 y(#)286 b(CCSM4_04)46 b({)h(...)95 b(})390
+1943 y(#)191 b(})390 2052 y(#)g(CESM1-BGC)390 2162 y(#)g({)390
+2271 y(#)286 b(CESM1-BGC_00)45 b({)i(...)95 b(})390 2381
+y(#)191 b(})390 2491 y(#)g(CESM1-CAM5)390 2600 y(#)g({)390
+2710 y(#)286 b(CESM1-CAM5_00)44 b({)k(...)94 b(})390
+2819 y(#)286 b(CESM1-CAM5_01)44 b({)k(...)94 b(})390
+2929 y(#)286 b(CESM1-CAM5_02)44 b({)k(...)94 b(})390
+3039 y(#)191 b(})390 3148 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
+b(Distribution)g(of)f(Long-term)g(Av)l(erage)150 3160
+y @beginspecial 0 @llx 12 @lly 613 @urx 757 @ury 2520
+ at rwi @setspecial
 %%BeginDocument: xmp/fgr1.eps
 %!PS-Adobe-3.0 EPSF-3.0
 %%BoundingBox: 0 12 613 757
@@ -50746,113 +50982,114 @@ cleartomark end end pagesave restore
 %%Pages: 1
 
 %%EndDocument
- @endspecial 275 4745 a FD(Figure)30 b(7.1:)42 b(Global)32
-b(Distribution)e(of)h(Long-term)g(Av)m(erage.)150 4950
+ @endspecial 275 3394 a FD(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
-5060 y(Figure)34 b(7.1\))h(with)e(either)h(\015at)f(\014les)g(or)h
+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
-(net)r(/)r(nco)r(.)r(ht)o(ml)r(#)150 5169 y(index-groups)p
-FD(\).)38 b(Key)30 b(steps)g(include:)199 5340 y(1.)61
+(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
 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)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)330 299 y(Ensem)m(ble)30
-b(Statistics],)j(page)e(164\))199 442 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 552 y(ager],)i(page)f
-(194\))199 695 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 805 y(Section)31 b(4.10)h([ncrcat)f(netCDF)g
-(Record)g(Concatenator],)h(page)g(196\))g(with)e(the)g
-Fy(--gag)f FD(option)275 1007 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 1176
-y Fy(#!/bin/bash)390 1395 y(#=======================)o(====)o(====)o
+(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
+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(197\))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(199\))g(with)e(the)g
+Fy(--gag)f FD(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
 (===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o
-(====)o(====)390 1504 y(#)47 b(After)g(cmb_fl.sh)390
-1614 y(#)g(Example:)94 b(Long-term)45 b(average)h(of)h(each)g(model)f
-(globally)390 1724 y(#)390 1833 y(#)h(Input)g(files)f(like:)390
-1943 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 2052
-y(#)390 2162 y(#)g(Output)g(files)f(like:)390 2271 y(#)h
-(/data/cmip5/output/snc/snc)o(_LIm)o(on_)o(all-)o(mdl_)o(his)o(tori)o
-(cal_)o(all)o(-nsm)o(_clm)o(.nc)390 2381 y(#)390 2491
-y(#)g(Online:)390 2600 y(#)95 b(http://nco.sourceforge.ne)o(t/nc)o(o.h)
-o(tml#)o(Glob)o(al-)o(Dist)o(ribu)o(tio)o(n-of)o(-Lon)o(g_0)o(02dt)o
-(erm-)o(Ave)o(rage)390 2710 y(#)390 2819 y(#)47 b(Execute)f(this)h
-(script:)93 b(bash)47 b(glb_avg.sh)390 2929 y(#=======================)
-o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o
-(====)o(===)o(====)o(====)390 3148 y(#-----------------------)o(----)o
-(----)o(---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)o(----)o
-(---)o(----)o(----)390 3258 y(#)g(Parameters)390 3367
-y(drc_in='/home/wenshanw/d)o(ata/)o(cmip)o(5/')423 b(#)47
-b(Directory)f(of)h(input)f(files)390 3477 y(drc_out='/home/wenshanw/)o
-(data)o(/cmi)o(p5/)o(outp)o(ut/')41 b(#)47 b(Directory)f(of)h(output)f
-(files)390 3696 y(var=\()g('snc')h('snd')f(\))1193 b(#)47
-b(Variables)390 3806 y(rlm='LImon')1572 b(#)47 b(Realm)390
-3915 y(xpt=\()f('historical')f(\))1145 b(#)47 b(Experiment)e(\()j
-(could)e(be)h(more)g(\))390 4134 y(fld_out=\()e('snc/')h('snd/')g(\))
-907 b(#)47 b(Folders)f(of)h(output)g(files)390 4244 y
-(#-----------------------)o(----)o(----)o(---)o(----)o(----)o(---)o
-(----)o(----)o(---)o(----)o(----)o(---)o(----)o(----)390
-4463 y(for)g(var_id)f(in)h({0..1};)f(do)1240 b(#)48 b(Loop)e(over)h
-(two)g(variables)485 4573 y(#)h(Names)e(of)h(all)g(models)485
-4682 y(#)143 b(\(ls)47 b([get)g(file)g(names];)e(cut)i([get)g(the)g
-(part)f(for)h(model)g(names];)485 4792 y(#)143 b(sort;)47
-b(uniq)f([remove)g(duplicates];)f(awk)i([print]\))485
-4902 y(mdl_set=$\()e(ls)j(${drc_in}${var[var_id]})o(_${r)o(lm})o(_*_$)o
-({xpt)o([0])o(}_*.)o(nc)42 b(|)47 b(\\)581 5011 y(cut)g(-d)g('_')g(-f)g
+(====)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.5)k(User)d(Guide)390 299 y Fy(#)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
+847 y(#)h(/data/cmip5/output/snc/snc)o(_LIm)o(on_)o(all-)o(mdl_)o(his)o
+(tori)o(cal_)o(all)o(-nsm)o(_clm)o(.nc)390 956 y(#)390
+1066 y(#)g(Online:)390 1176 y(#)95 b(http://nco.sourceforge.ne)o(t/nc)o
+(o.h)o(tml#)o(Glob)o(al-)o(Dist)o(ribu)o(tio)o(n-of)o(-Lon)o(g_0)o
+(02dt)o(erm-)o(Ave)o(rage)390 1285 y(#)390 1395 y(#)47
+b(Execute)f(this)h(script:)93 b(bash)47 b(glb_avg.sh)390
+1504 y(#=======================)o(====)o(====)o(===)o(====)o(====)o
+(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)390
+1724 y(#-----------------------)o(----)o(----)o(---)o(----)o(----)o
+(---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)o(----)390
+1833 y(#)g(Parameters)390 1943 y(drc_in='/home/wenshanw/d)o(ata/)o
+(cmip)o(5/')423 b(#)47 b(Directory)f(of)h(input)f(files)390
+2052 y(drc_out='/home/wenshanw/)o(data)o(/cmi)o(p5/)o(outp)o(ut/')41
+b(#)47 b(Directory)f(of)h(output)f(files)390 2271 y(var=\()g('snc')h
+('snd')f(\))1193 b(#)47 b(Variables)390 2381 y(rlm='LImon')1572
+b(#)47 b(Realm)390 2491 y(xpt=\()f('historical')f(\))1145
+b(#)47 b(Experiment)e(\()j(could)e(be)h(more)g(\))390
+2710 y(fld_out=\()e('snc/')h('snd/')g(\))907 b(#)47 b(Folders)f(of)h
+(output)g(files)390 2819 y(#-----------------------)o(----)o(----)o
+(---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)o(----)o(---)o
+(----)o(----)390 3039 y(for)g(var_id)f(in)h({0..1};)f(do)1240
+b(#)48 b(Loop)e(over)h(two)g(variables)485 3148 y(#)h(Names)e(of)h(all)
+g(models)485 3258 y(#)143 b(\(ls)47 b([get)g(file)g(names];)e(cut)i
+([get)g(the)g(part)f(for)h(model)g(names];)485 3367 y(#)143
+b(sort;)47 b(uniq)f([remove)g(duplicates];)f(awk)i([print]\))485
+3477 y(mdl_set=$\()e(ls)j(${drc_in}${var[var_id]})o(_${r)o(lm})o(_*_$)o
+({xpt)o([0])o(}_*.)o(nc)42 b(|)47 b(\\)581 3587 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(\))485
-5121 y(#)h(Number)e(of)h(models)f(\(echo)h([print)f(contents];)f(wc)i
-([count]\))485 5230 y(mdl_num=$\()e(echo)i(${mdl_set})e(|)j(wc)f(-w)g
-(\))p eop end
-%%Page: 220 226
-TeXDict begin 220 225 bop 150 -116 a FD(220)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)485 299 y Fy(for)47 b(mdl)g(in)g(${mdl_set};)
-e(do)1861 b(#)47 b(Loop)g(over)g(models)772 408 y(#)g(Average)f(all)h
-(the)g(ensemble)e(members)h(of)h(each)g(model)581 518
-y(#)g(Use)g(nces)g(file)g(ensembles)e(mode:)94 b(--nsm_fl)772
-628 y(nces)46 b(--nsm_fl)g(-O)h(-4)g(-d)h(time,"1956-01-01)43
-b(00:00:0.0","2005-12-31)f(23:59:9.9")j(\\)676 737 y
+3696 y(#)h(Number)e(of)h(models)f(\(echo)h([print)f(contents];)f(wc)i
+([count]\))485 3806 y(mdl_num=$\()e(echo)i(${mdl_set})e(|)j(wc)f(-w)g
+(\))485 4025 y(for)g(mdl)g(in)g(${mdl_set};)e(do)1861
+b(#)47 b(Loop)g(over)g(models)772 4134 y(#)g(Average)f(all)h(the)g
+(ensemble)e(members)h(of)h(each)g(model)581 4244 y(#)g(Use)g(nces)g
+(file)g(ensembles)e(mode:)94 b(--nsm_fl)772 4354 y(nces)46
+b(--nsm_fl)g(-O)h(-4)g(-d)h(time,"1956-01-01)43 b
+(00:00:0.0","2005-12-31)f(23:59:9.9")j(\\)676 4463 y
 (${drc_in}${var[var_id]}_${)o(rlm)o(}_${)o(mdl})o(_${)o(xpt[)o(0]}_)o
-(*.n)o(c)d(\\)676 847 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)
-o(_id)o(]}_$)o({rlm)o(}_$)o({mdl)o(}_${)o(xpt)o([0]})o(\\)676
-956 y(_all-nsm_195601-200512.nc)772 1176 y(#)47 b(Average)f(along)g
-(time)772 1285 y(ncra)g(-O)i(${drc_out}${fld_out[var)o(_id])o(}${)o
+(*.n)o(c)d(\\)676 4573 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o
+([var)o(_id)o(]}_$)o({rlm)o(}_$)o({mdl)o(}_${)o(xpt)o([0]})o(\\)676
+4682 y(_all-nsm_195601-200512.nc)772 4902 y(#)47 b(Average)f(along)g
+(time)772 5011 y(ncra)g(-O)i(${drc_out}${fld_out[var)o(_id])o(}${)o
 (var[)o(var_)o(id])o(}_${)o(rlm})o(_${)o(mdl})o(_${x)o(pt[)o(0]}\\)676
-1395 y(_all-nsm_195601-200512.nc)41 b(\\)676 1504 y
+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)772 1724 y(echo)46 b(Model)h(${mdl})f(done!)485
-1833 y(done)772 2052 y(#)h(Remove)f(temporary)g(files)772
-2162 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 2381 y(#)h(Store)e(models)g(as)i(groups)e
-(in)h(the)g(output)f(file)485 2491 y(ncecat)h(-O)g(--gag)f
-(${drc_out}${fld_out[var_i)o(d]})o(${va)o(r[va)o(r_i)o(d]}_)o(*.nc)41
-b(\\)581 2600 y(${drc_out}${fld_out[var_)o(id]})o(${v)o(ar[v)o(ar_i)o
-(d]})o(_${r)o(lm}_)o(\\)581 2710 y(all-mdl_${xpt[0]}_all-ns)o(m_cl)o
-(m.n)o(c)772 2929 y(echo)46 b(Var)h(${var[var_id]})d(done!)390
-3039 y(done)275 3331 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 3623 y Fy(#)47 b(Data)g(from)g
-(cmb_fl_grp.sh)390 3733 y(#)g(ensemble)f(averaging)390
-3842 y(nces)h(-O)g(--nsm_grp)e(--nsm_sfx='_avg')e(\\)390
-3952 y(sn_LImon_all-mdl_all-xpt)o(_all)o(-nsm)o(_20)o(0001)o(-200)o
-(512)o(.nc)e(\\)485 4061 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(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
+(}.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
+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
+956 y(#)h(Store)e(models)g(as)i(groups)e(in)h(the)g(output)f(file)485
+1066 y(ncecat)h(-O)g(--gag)f(${drc_out}${fld_out[var_i)o(d]})o(${va)o
+(r[va)o(r_i)o(d]}_)o(*.nc)41 b(\\)581 1176 y(${drc_out}${fld_out[var_)o
+(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
+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
+(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
@@ -50863,12 +51100,11 @@ y(tm-avg.nc)p FD(,)42 b(sub-groups)f(with)g(a)i(su\016x)e(of)h(`a)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: 221 227
-TeXDict begin 221 226 bop 150 -116 a FD(Chapter)30 b(7:)41
-b FC(CMIP5)29 b FD(Example)2358 b(221)150 299 y FB(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
+%%Page: 226 232
+TeXDict begin 226 231 bop 150 -116 a FD(226)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)150 299 y FB(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
 %!PS-Adobe-3.0 EPSF-3.0
 %%BoundingBox: 22 118 589 685
@@ -55447,38 +55683,38 @@ b(Av)m(erage)j(o)m(v)m(er)e(Regions.)150 3436 y(This)i(section)j
 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(102\))h(and)e Fy(ncwa)f
+(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(202\);)199 3958
+b(eigh)m(ted)32 b(Av)m(erager],)g(page)g(205\);)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(186\);)199 4207
+330 4068 y(sions)i(Quic)m(kly],)i(page)f(189\);)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(194\);)199 4346 y(4.)61 b(Anomaly)40 b(from)g(long-term)h(a)m
+(page)e(197\);)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(159\);)199
+(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(159\))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(164\);)199
+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
 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(198\);)199 5091 y(7.)61
+(Renamer],)330 4953 y(page)31 b(201\);)199 5091 y(7.)61
 b(Edit)36 b(attributions)g(using)f Fy(ncatted)f FD(\(see)i(Section)h
 (4.2)g([ncatted)f(netCDF)h(A)m(ttribute)f(Editor],)330
-5201 y(page)31 b(153\);)199 5340 y(8.)61 b(Linear)33
+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
 (netCDF)g(Arithmetic)g(Pro)s(cessor],)p eop end
-%%Page: 222 228
-TeXDict begin 222 227 bop 150 -116 a FD(222)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)330 299 y(page)h(102\);)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(102\))h(with)e(nco)330
+%%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
 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(173\).)275 1007 y Fq(Flat)g(\014les)f
+(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
 (gsl_rgr.nco)390 1504 y(#=======================)o(====)o(====)o(===)o
 (====)o(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)o
@@ -55518,16 +55754,16 @@ 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: 223 229
-TeXDict begin 223 228 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(223)485 299 y Fy(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(]}_)o(*.nc)41 b(\);)47 b(do)676 628 y(pfx=$\()f(echo)h(${fn})f
-(|)i(cut)f(-d'/')f(-f6)h(|)h(cut)e(-d'_')h(-f1-5)f(\))676
-847 y(#)i(Two)f(regions)676 956 y(#)h(Geographical)c(weight)676
-1066 y(ncap2)j(-O)g(-s)g('gw)g(=)g(cos\(lat*3.1415926/180.\);)42
+%%Page: 228 234
+TeXDict begin 228 233 bop 150 -116 a FD(228)2565 b(NCO)29
+b(4.4.5)k(User)d(Guide)485 299 y Fy(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(]}_)
+o(*.nc)41 b(\);)47 b(do)676 628 y(pfx=$\()f(echo)h(${fn})f(|)i(cut)f
+(-d'/')f(-f6)h(|)h(cut)e(-d'_')h(-f1-5)f(\))676 847 y(#)i(Two)f
+(regions)676 956 y(#)h(Geographical)c(weight)676 1066
+y(ncap2)j(-O)g(-s)g('gw)g(=)g(cos\(lat*3.1415926/180.\);)42
 b(gw at long_name="geographi)o(cal)f(weight"\\)772 1176
 y(;gw at units="ratio"')i(${fn})j(${drc_out}${fld_out[var_)o(id]})o(${pf)o
 (x}_)o(gw.n)o(c)676 1285 y(#)i(Greenland)676 1395 y(ncwa)f(-O)g(-w)g
@@ -55564,10 +55800,10 @@ 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: 224 230
-TeXDict begin 224 229 bop 150 -116 a FD(224)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)581 299 y Fy(#)47 b(Average)f(over)h(all)g(the)g
-(ensemble)e(members)581 408 y(ncea)i(-O)g(-4)g
+%%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
+(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
 (${drc_out}${fld_out[var_id)o(]}\\)676 628 y
@@ -55617,17 +55853,16 @@ 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: 225 231
-TeXDict begin 225 230 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(225)676 299 y Fy
-(${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 737 y(#)47
-b(Move)g(the)g(variable)e('sdv')i(into)f(the)h(anomaly)f(files)h
-(\(i.e.,)f(*anm.nc)f(files\))581 847 y(ncks)i(-A)g(-v)g(sdv)g(\\)676
-956 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o(]}_$)o
-({rlm)o(}_\\)676 1066 y(${mdl}_${xpt[0]}_all-nsm_s)o(dv.)o(nc)42
+%%Page: 230 236
+TeXDict begin 230 235 bop 150 -116 a FD(230)2565 b(NCO)29
+b(4.4.5)k(User)d(Guide)676 299 y Fy(${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
+737 y(#)47 b(Move)g(the)g(variable)e('sdv')i(into)f(the)h(anomaly)f
+(files)h(\(i.e.,)f(*anm.nc)f(files\))581 847 y(ncks)i(-A)g(-v)g(sdv)g
+(\\)676 956 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o
+(]}_$)o({rlm)o(}_\\)676 1066 y(${mdl}_${xpt[0]}_all-nsm_s)o(dv.)o(nc)42
 b(\\)676 1176 y(${drc_out}${fld_out[var_id)o(]}$)o({var)o([var)o(_id)o
 (]}_$)o({mdl)o(}.n)o(c)581 1285 y(rm)47 b(${drc_out}${fld_out[var_i)o
 (d]})o(${va)o(r[va)o(r_i)o(d]}_)o(*his)o(tor)o(ical)o(*)581
@@ -55662,9 +55897,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: 226 232
-TeXDict begin 226 231 bop 150 -116 a FD(226)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)390 408 y Fy(//)47 b(P)h
+%%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
 (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
@@ -55712,19 +55947,18 @@ 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: 227 233
-TeXDict begin 227 232 bop 150 -116 a FD(Chapter)30 b(7:)41
-b FC(CMIP5)29 b FD(Example)2358 b(227)485 299 y Fy
-(${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 956 y(#)47 b(Aggregate)f(2)h
-(regions)f(together)390 1066 y(ncecat)g(-O)h(-u)g(rgn)g
-(${drc}${pfx}_${tms}_???.nc)41 b(\\)485 1176 y
-(${drc}${pfx}_${tms}_rgn2.n)o(c)390 1395 y(#)47 b(Change)g(dimensions)e
-(order)390 1504 y(ncpdq)h(-O)i(-a)f(time,rgn)e
-(${drc}${pfx}_${tms}_rgn2.)o(nc)d(\\)485 1614 y
-(${drc}${pfx}_${tms}_rgn2.n)o(c)390 1833 y(#)47 b(Remove)g(temporary)e
+%%Page: 232 238
+TeXDict begin 232 237 bop 150 -116 a FD(232)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)485 299 y Fy(${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
+956 y(#)47 b(Aggregate)f(2)h(regions)f(together)390 1066
+y(ncecat)g(-O)h(-u)g(rgn)g(${drc}${pfx}_${tms}_???.nc)41
+b(\\)485 1176 y(${drc}${pfx}_${tms}_rgn2.n)o(c)390 1395
+y(#)47 b(Change)g(dimensions)e(order)390 1504 y(ncpdq)h(-O)i(-a)f
+(time,rgn)e(${drc}${pfx}_${tms}_rgn2.)o(nc)d(\\)485 1614
+y(${drc}${pfx}_${tms}_rgn2.n)o(c)390 1833 y(#)47 b(Remove)g(temporary)e
 (files)h(\(optional\))390 1943 y(rm)h(${drc}${pfx}_${tms}_???.n)o(c)390
 2162 y(#Annual)f(average)390 2271 y(ncra)h(-O)g(--mro)f(-d)h
 (time,,,12,12)e(${drc}${pfx}_${tms}_rgn2)o(.nc)c(\\)485
@@ -55744,9 +55978,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: 228 234
-TeXDict begin 228 233 bop 150 -116 a FD(228)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)150 299 y FB(7.4)68 b(Mon)l(thly)45
+%%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
 b(Cycle)150 2540 y @beginspecial 20 @llx 0 @lly 771 @urx
 613 @ury 2880 @rwi @setspecial
 %%BeginDocument: xmp/fgr3.eps
@@ -57238,10 +57472,10 @@ 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: 229 235
-TeXDict begin 229 234 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(229)390 408 y Fy(#-----------------------)o
-(----)o(----)o(---)o(----)o(----)o(---)o(----)o(----)o(---)o(----)390
+%%Page: 234 240
+TeXDict begin 234 239 bop 150 -116 a FD(234)2565 b(NCO)29
+b(4.4.5)k(User)d(Guide)390 408 y Fy(#-----------------------)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
 737 y(drc_out='/home/wenshanw/)o(data)o(/cmi)o(p5/)o(outp)o(ut/')232
@@ -57293,11 +57527,11 @@ 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: 230 236
-TeXDict begin 230 235 bop 150 -116 a FD(230)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)963 299 y Fy(${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
+%%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
+(_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
 (\\)867 847 y(${drc_out}${fld_out[var_i)o(d]}$)o({var)o([va)o(r_id)o
 (]}_\\)867 956 y(${rlm}_${mdl}_${xpt[0]}_a)o(ll-n)o(sm_G)o(N.n)o(c)d
@@ -57340,26 +57574,25 @@ y(echo)47 b(Var)g(${var[var_id]})d(done!)390 4902 y(done)275
 (.)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: 231 237
-TeXDict begin 231 236 bop 150 -116 a FD(Chapter)30 b(7:)41
-b FC(CMIP5)29 b FD(Example)2358 b(231)390 408 y Fy
+%%Page: 236 242
+TeXDict begin 236 241 bop 150 -116 a FD(236)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 408 y Fy(#=======================)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
+(cmb_fl_grpsh)390 847 y(#)143 b(sn_LImon_all-mdl_all-xpt)o(_all)o(-ns)o
+(m_19)o(9001)o(-20)o(0512)o(.nc)390 956 y(#)47 b(Online:)94
+b(http://nco.sourceforge.n)o(et/n)o(co.h)o(tml)o(#Mon)o(thly)o(-Cy)o
+(cle)390 1066 y(#)390 1176 y(#)47 b(Execute)f(this)h(script)f(in)h
+(command)f(line:)94 b(bash)47 b(mcc_grp.sh)390 1285 y
 (#=======================)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(cmb_fl_grpsh)390 847
-y(#)143 b(sn_LImon_all-mdl_all-xpt)o(_all)o(-ns)o(m_19)o(9001)o(-20)o
-(0512)o(.nc)390 956 y(#)47 b(Online:)94 b(http://nco.sourceforge.n)o
-(et/n)o(co.h)o(tml)o(#Mon)o(thly)o(-Cy)o(cle)390 1066
-y(#)390 1176 y(#)47 b(Execute)f(this)h(script)f(in)h(command)f(line:)94
-b(bash)47 b(mcc_grp.sh)390 1285 y(#=======================)o(====)o
-(====)o(===)o(====)o(====)o(===)o(====)o(====)o(===)o(====)390
-1395 y(#)g(Input)g(and)g(output)f(directory)390 1504
-y(drc='../data/grp/')390 1724 y(#)h(Constants)390 1833
-y(pfx='sn_LImon_all-mdl_al)o(l-xp)o(t_al)o(l-n)o(sm_2)o(0000)o(1-2)o
-(0051)o(2')390 2052 y(#)g(Greenland)390 2162 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
-2271 y(${drc}${pfx}.nc)f(${drc}${pfx}_grl.nc)390 2491
-y(#)j(Anomaly)f(from)h(annual)f(average)g(of)h(each)g(year)390
+(====)o(====)o(===)o(====)390 1395 y(#)g(Input)g(and)g(output)f
+(directory)390 1504 y(drc='../data/grp/')390 1724 y(#)h(Constants)390
+1833 y(pfx='sn_LImon_all-mdl_al)o(l-xp)o(t_al)o(l-n)o(sm_2)o(0000)o
+(1-2)o(0051)o(2')390 2052 y(#)g(Greenland)390 2162 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 2271 y(${drc}${pfx}.nc)f(${drc}${pfx}_grl.nc)390
+2491 y(#)j(Anomaly)f(from)h(annual)f(average)g(of)h(each)g(year)390
 2600 y(for)g(yyyy)g(in)g({2000..2005};)d(do)485 2710
 y(#)k(Annual)e(average)485 2819 y(ncwa)h(-O)g(-d)g
 (time,"${yyyy}-01-01","${yy)o(yy}-)o(12-)o(31")41 b(\\)581
@@ -57383,14 +57616,14 @@ 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: 232 238
-TeXDict begin 232 237 bop 150 -116 a FD(232)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)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(129\))199
+%%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
+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
 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(198\).)275
+([ncre-)330 560 y(name)i(netCDF)h(Renamer],)g(page)g(201\).)275
 780 y Fq(Main)f(Script)390 956 y Fy(#!/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
@@ -57434,15 +57667,15 @@ 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: 233 239
-TeXDict begin 233 238 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(233)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 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 b(Define)g(new)f(dimension:)93 b(latitude)390
-1066 y(defdim\("lonn",288\);)615 b(//)47 b(Define)g(new)f(dimension:)93
+%%Page: 238 244
+TeXDict begin 238 243 bop 150 -116 a FD(238)2565 b(NCO)29
+b(4.4.5)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
+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
+b(Define)g(new)f(dimension:)93 b(latitude)390 1066 y
+(defdim\("lonn",288\);)615 b(//)47 b(Define)g(new)f(dimension:)93
 b(longitude)390 1176 y(latn[$latn])45 b(=)i({90,89.0576)e(,88.1152)g
 (,87.1728)h(,86.2304)g(,85.288)93 b(,\\)485 1285 y(84.3456)46
 b(,83.4031)g(,82.4607)f(,81.5183)h(,80.5759)f(,79.6335)h(,78.6911)g
@@ -57505,37 +57738,38 @@ 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: 234 240
-TeXDict begin 234 239 bop 150 -116 a FD(234)2565 b(NCO)29
-b(4.4.4)k(User)d(Guide)485 299 y Fy(-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(\\)485 518 y
-(-22.5,-21.25,-20,-18.75,-1)o(7.5,)o(-16)o(.25,)o(-15,)o(-13)o(.75,)o
-(-12.)o(5,-)o(11.2)o(5,-1)o(0,\\)485 628 y(-8.75,-7.5,-6.25,-5,-3.75,)o
-(-2.5)o(,-1)o(.25,)o(0,1.)o(25,)o(2.5,)o(3.75)o(,5,)o(6.25)o(,7.5)o
-(,\\)485 737 y(8.75,10,11.25,12.5,13.75,1)o(5,16)o(.25)o(,17.)o(5,18)o
-(.75)o(,20,)o(21.2)o(5,2)o(2.5,)o(23.7)o(5,\\)485 847
-y(25,26.25,27.5,28.75,30,31.)o(25,3)o(2.5)o(,33.)o(75,3)o(5,3)o(6.25)o
-(,37.)o(5,3)o(8.75)o(,40,)o(\\)485 956 y(41.25,42.5,43.75,45,46.25,)o
-(47.5)o(,48)o(.75,)o(50,5)o(1.2)o(5,52)o(.5,5)o(3.7)o(5,55)o(,56.)o
-(25,)o(\\)485 1066 y(57.5,58.75,60,61.25,62.5,6)o(3.75)o(,65)o(,66.)o
-(25,6)o(7.5)o(,68.)o(75,7)o(0,7)o(1.25)o(,72.)o(5,\\)485
-1176 y(73.75,75,76.25,77.5,78.75,)o(80,8)o(1.2)o(5,82)o(.5,8)o(3.7)o
-(5,85)o(,86.)o(25,)o(87.5)o(,88.)o(75,)o(\\)485 1285
-y(90,91.25,92.5,93.75,95,96.)o(25,9)o(7.5)o(,98.)o(75,1)o(00,)o(101.)o
-(25,1)o(02.)o(5,10)o(3.75)o(,\\)485 1395 y(105,106.25,107.5,108.75,11)o
-(0,11)o(1.2)o(5,11)o(2.5,)o(113)o(.75,)o(115,)o(116)o(.25,)o(117.)o
-(5,\\)485 1504 y(118.75,120,121.25,122.5,12)o(3.75)o(,12)o(5,12)o(6.25)
-o(,12)o(7.5,)o(128.)o(75,)o(130,)o(131.)o(25,)o(\\)485
-1614 y(132.5,133.75,135,136.25,13)o(7.5,)o(138)o(.75,)o(140,)o(141)o
-(.25,)o(142.)o(5,1)o(43.7)o(5,14)o(5,\\)485 1724 y
-(146.25,147.5,148.75,150,15)o(1.25)o(,15)o(2.5,)o(153.)o(75,)o(155,)o
-(156.)o(25,)o(157.)o(5,\\)485 1833 y(158.75,160,161.25,162.5,16)o(3.75)
-o(,16)o(5,16)o(6.25)o(,16)o(7.5,)o(168.)o(75,)o(170,)o(171.)o(25,)o(\\)
-485 1943 y(172.5,173.75,175,176.25,17)o(7.5,)o(178)o(.75,)o(180})o(;)
-185 b(//)47 b(Copy)g(of)g(CCSM4)f(longitude)390 2162
-y(*out[$time,$latn,$lonn]=)o(0.0;)566 b(//)47 b(Output)f(structure)390
+%%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
+(-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(\\)
+485 518 y(-22.5,-21.25,-20,-18.75,-1)o(7.5,)o(-16)o(.25,)o(-15,)o(-13)o
+(.75,)o(-12.)o(5,-)o(11.2)o(5,-1)o(0,\\)485 628 y
+(-8.75,-7.5,-6.25,-5,-3.75,)o(-2.5)o(,-1)o(.25,)o(0,1.)o(25,)o(2.5,)o
+(3.75)o(,5,)o(6.25)o(,7.5)o(,\\)485 737 y(8.75,10,11.25,12.5,13.75,1)o
+(5,16)o(.25)o(,17.)o(5,18)o(.75)o(,20,)o(21.2)o(5,2)o(2.5,)o(23.7)o
+(5,\\)485 847 y(25,26.25,27.5,28.75,30,31.)o(25,3)o(2.5)o(,33.)o(75,3)o
+(5,3)o(6.25)o(,37.)o(5,3)o(8.75)o(,40,)o(\\)485 956 y
+(41.25,42.5,43.75,45,46.25,)o(47.5)o(,48)o(.75,)o(50,5)o(1.2)o(5,52)o
+(.5,5)o(3.7)o(5,55)o(,56.)o(25,)o(\\)485 1066 y
+(57.5,58.75,60,61.25,62.5,6)o(3.75)o(,65)o(,66.)o(25,6)o(7.5)o(,68.)o
+(75,7)o(0,7)o(1.25)o(,72.)o(5,\\)485 1176 y(73.75,75,76.25,77.5,78.75,)
+o(80,8)o(1.2)o(5,82)o(.5,8)o(3.7)o(5,85)o(,86.)o(25,)o(87.5)o(,88.)o
+(75,)o(\\)485 1285 y(90,91.25,92.5,93.75,95,96.)o(25,9)o(7.5)o(,98.)o
+(75,1)o(00,)o(101.)o(25,1)o(02.)o(5,10)o(3.75)o(,\\)485
+1395 y(105,106.25,107.5,108.75,11)o(0,11)o(1.2)o(5,11)o(2.5,)o(113)o
+(.75,)o(115,)o(116)o(.25,)o(117.)o(5,\\)485 1504 y
+(118.75,120,121.25,122.5,12)o(3.75)o(,12)o(5,12)o(6.25)o(,12)o(7.5,)o
+(128.)o(75,)o(130,)o(131.)o(25,)o(\\)485 1614 y
+(132.5,133.75,135,136.25,13)o(7.5,)o(138)o(.75,)o(140,)o(141)o(.25,)o
+(142.)o(5,1)o(43.7)o(5,14)o(5,\\)485 1724 y(146.25,147.5,148.75,150,15)
+o(1.25)o(,15)o(2.5,)o(153.)o(75,)o(155,)o(156.)o(25,)o(157.)o(5,\\)485
+1833 y(158.75,160,161.25,162.5,16)o(3.75)o(,16)o(5,16)o(6.25)o(,16)o
+(7.5,)o(168.)o(75,)o(170,)o(171.)o(25,)o(\\)485 1943
+y(172.5,173.75,175,176.25,17)o(7.5,)o(178)o(.75,)o(180})o(;)185
+b(//)47 b(Copy)g(of)g(CCSM4)f(longitude)390 2162 y
+(*out[$time,$latn,$lonn]=)o(0.0;)566 b(//)47 b(Output)f(structure)390
 2381 y(//)h(Bi-linear)e(interpolation)390 2491 y
 (bsa_sw_less=bilinear_int)o(erp_)o(wrap)o(\(bs)o(a_sw)o(,out)o(,la)o
 (tn,l)o(onn,)o(lat)o(,lon)o(\);)390 2600 y(wsa_sw_less=bilinear_int)o
@@ -57561,20 +57795,20 @@ Fu(MODIS)h FB(Data)150 4742 y Fq(Main)31 b(Script)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: 235 241
-TeXDict begin 235 240 bop 150 -116 a FD(Chapter)30 b(7:)41
-b(CMIP5)30 b(Example)2333 b(235)390 299 y Fy(#)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)e(\(using)h(coor.nco\):)93
-b(there)46 b(is)h(no)g(coordinate)e(information)390 628
-y(#)716 b(in)47 b(MODIS)f(data.)94 b(We)47 b(have)g(to)g(add)g(it)g
-(manually)f(now.)390 737 y(#)390 847 y(#)h(Input)g(files:)390
-956 y(#)g(/modis/mcd43c3/cesm-grid/M)o(CD43)o(C3.)o(2000)o(049.)o(reg)o
-(rid.)o(nc)390 1066 y(#)390 1176 y(#)g(Output)g(files:)390
-1285 y(#)g(/modis/mcd43c3/cesm-grid/M)o(CD43)o(C3.)o(2000)o(049.)o(reg)
-o(rid.)o(nc)390 1395 y(#)390 1504 y(#)g(Online:)94 b
+%%Page: 240 246
+TeXDict begin 240 245 bop 150 -116 a FD(240)2565 b(NCO)29
+b(4.4.5)k(User)d(Guide)390 299 y Fy(#)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)
+e(\(using)h(coor.nco\):)93 b(there)46 b(is)h(no)g(coordinate)e
+(information)390 628 y(#)716 b(in)47 b(MODIS)f(data.)94
+b(We)47 b(have)g(to)g(add)g(it)g(manually)f(now.)390
+737 y(#)390 847 y(#)h(Input)g(files:)390 956 y(#)g
+(/modis/mcd43c3/cesm-grid/M)o(CD43)o(C3.)o(2000)o(049.)o(reg)o(rid.)o
+(nc)390 1066 y(#)390 1176 y(#)g(Output)g(files:)390 1285
+y(#)g(/modis/mcd43c3/cesm-grid/M)o(CD43)o(C3.)o(2000)o(049.)o(reg)o
+(rid.)o(nc)390 1395 y(#)390 1504 y(#)g(Online:)94 b
 (http://nco.sourceforge.n)o(et/n)o(co.h)o(tml)o(#Add)o(-Coo)o(rdi)o
 (nate)o(s-to)o(-MO)o(DIS-)o(Data)390 1614 y(#)390 1724
 y(#)47 b(Execute)f(this)h(script:)93 b(bash)47 b(add_crd.sh)390
@@ -57617,25 +57851,25 @@ 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
 eop end
-%%Page: 236 242
-TeXDict begin 236 241 bop 150 -116 a FD(236)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(##======================)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(coordinates:)92 b(the)47
-b(grid)g(of)g(MODIS)f(is)390 628 y(##)668 b(from)46 b(\(-180)h(degE,)f
-(90)h(degN\),)f(the)h(left-up)f(corner,)g(to)390 737
-y(##)668 b(\(180)46 b(degE,)h(-90)g(degN\),)f(the)h(right-low)e
-(corner.)93 b(However,)46 b(CMIP5)g(is)390 847 y(##)668
-b(from)46 b(\(0)h(degE,)g(-90)g(degN\))f(to)h(\(360)g(degE,)f(90)h
-(degN\).)g(The)f(script)390 956 y(##)668 b(here)46 b(changes)g(the)h
-(MODIS)f(grid)h(to)g(CMIP5)g(grid.)390 1066 y(##)390
-1176 y(##)g(Input)g(files:)390 1285 y(##)g(/modis/mcd43c3/cesm-grid/)o
-(MCD4)o(3C3)o(.200)o(0049)o(.re)o(grid)o(.nc)390 1395
-y(##)390 1504 y(##)g(Output)f(files:)390 1614 y(##)h
+%%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
+(##======================)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
+(coordinates:)92 b(the)47 b(grid)g(of)g(MODIS)f(is)390
+628 y(##)668 b(from)46 b(\(-180)h(degE,)f(90)h(degN\),)f(the)h(left-up)
+f(corner,)g(to)390 737 y(##)668 b(\(180)46 b(degE,)h(-90)g(degN\),)f
+(the)h(right-low)e(corner.)93 b(However,)46 b(CMIP5)g(is)390
+847 y(##)668 b(from)46 b(\(0)h(degE,)g(-90)g(degN\))f(to)h(\(360)g
+(degE,)f(90)h(degN\).)g(The)f(script)390 956 y(##)668
+b(here)46 b(changes)g(the)h(MODIS)f(grid)h(to)g(CMIP5)g(grid.)390
+1066 y(##)390 1176 y(##)g(Input)g(files:)390 1285 y(##)g
 (/modis/mcd43c3/cesm-grid/)o(MCD4)o(3C3)o(.200)o(0049)o(.re)o(grid)o
-(.nc)390 1724 y(##)390 1833 y(##)g(Online:)94 b
-(http://nco.sourceforge.)o(net/)o(nco.)o(htm)o(l#Pe)o(rmut)o(e-M)o
+(.nc)390 1395 y(##)390 1504 y(##)g(Output)f(files:)390
+1614 y(##)h(/modis/mcd43c3/cesm-grid/)o(MCD4)o(3C3)o(.200)o(0049)o(.re)
+o(grid)o(.nc)390 1724 y(##)390 1833 y(##)g(Online:)94
+b(http://nco.sourceforge.)o(net/)o(nco.)o(htm)o(l#Pe)o(rmut)o(e-M)o
 (ODIS)o(-Coo)o(rdi)o(nate)o(s)390 1943 y(##)390 2052
 y(##)47 b(Execute)f(this)h(script:)93 b(bash)47 b(pmt_crd.sh)390
 2162 y(##======================)o(====)o(====)o(===)o(====)o(====)o
@@ -57656,30 +57890,32 @@ 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: 237 243
-TeXDict begin 237 242 bop 150 -116 a FD(Chapter)30 b(8:)41
-b(P)m(arallel)2699 b(237)150 299 y Fx(8)80 b(P)l(arallel)150
+%%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
 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: 238 244
-TeXDict begin 238 243 bop eop end
-%%Page: 239 245
-TeXDict begin 239 244 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(239)150 299 y Fx(9)80 b(CCSM)53
+%%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
 (****)o(***)o(****)o(****)o(***)o(****)o(****)o(***)o(****)390
 956 y(Task)47 b(0:)g(Finding)f(input)g(files)390 1066
-y(************************)o(****)o(****)o(***)o(****)o(****)o(***)o
-(****)o(****)o(***)o(****)o(****)o(***)o(****)390 1176
-y(The)h(CCSM)g(model)f(outputs)g(files)g(to)h(a)h(local)e(directory)f
-(like:)390 1395 y(/ptmp/zender/archive/T42)o(x1_4)o(0)390
+y(x***********************)o(****)o(****)o(***)o(****)o(****)o(***)o
+(****)o(****)o(***)o(****)o(****)o(***)o(****)o(*)390
+1176 y(The)h(CCSM)g(model)f(outputs)g(files)g(to)h(a)h(local)e
+(directory)f(like:)390 1395 y(/ptmp/zender/archive/T42)o(x1_4)o(0)390
 1614 y(Each)i(component)e(model)h(has)h(its)g(own)g(subdirectory,)d
 (e.g.,)390 1833 y(/ptmp/zender/archive/T42)o(x1_4)o(0/at)o(m)390
 1943 y(/ptmp/zender/archive/T42)o(x1_4)o(0/cp)o(l)390
@@ -57715,9 +57951,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: 240 246
-TeXDict begin 240 245 bop 150 -116 a FD(240)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 408 y Fy(caseid='T42x1_40')390
+%%Page: 246 252
+TeXDict begin 246 251 bop 150 -116 a FD(246)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 408 y Fy(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})
@@ -57752,9 +57988,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: 241 247
-TeXDict begin 241 246 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(241)581 299 y Fy(${drc_out}/${caseid}_clm)o
+%%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
 (??.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
@@ -57797,9 +58033,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: 242 248
-TeXDict begin 242 247 bop 150 -116 a FD(242)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 408 y Fy(Method)46 b(2:)h(Create)f(dpm)h
+%%Page: 248 254
+TeXDict begin 248 253 bop 150 -116 a FD(248)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 408 y Fy(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(\\)
@@ -57813,13 +58049,13 @@ h(record,time)c(${drc_out}/foo.nc)390 1285 y(ncatted)i(-O)h(-h)g(\\)485
 b(-A)g(-v)g(dpm)g(${drc_out}/foo.nc)c(${drc_out}/${caseid}_clm)o(_011)o
 (2.nc)390 1943 y(Method)j(3:)h(Create)f(small)h(netCDF)f(file)g(using)h
 (ncgen)390 2052 y(cat)g(>)g(foo.cdl)f(<<)h('EOF')390
-2162 y(netcdf)f(foo)h({)390 2271 y(dimensions:)390 2381
-y(time=unlimited;)390 2491 y(variables:)390 2600 y(float)f
-(dpm\(time\);)390 2710 y(dpm:long_name="Days)d(per)j(month";)390
-2819 y(dpm:units="days";)390 2929 y(data:)390 3039 y
-(dpm=31,28.25,31,30,31,30)o(,31,)o(31,3)o(0,3)o(1,30)o(,31;)390
-3148 y(})390 3258 y(EOF)390 3367 y(ncgen)g(-b)i(-o)f(foo.nc)f(foo.cdl)
-390 3477 y(ncks)h(-A)g(-v)g(dpm)g(${drc_out}/foo.nc)c
+2162 y(netcdf)f(foo)h({)390 2271 y(dimensions:)772 2381
+y(time=unlimited;)390 2491 y(variables:)772 2600 y(float)f
+(dpm\(time\);)772 2710 y(dpm:long_name="Days)c(per)47
+b(month";)772 2819 y(dpm:units="days";)390 2929 y(data:)772
+3039 y(dpm=31,28.25,31,30,31,30)o(,31)o(,31,)o(30,3)o(1,3)o(0,31)o(;)
+390 3148 y(})390 3258 y(EOF)390 3367 y(ncgen)f(-b)i(-o)f(foo.nc)f
+(foo.cdl)390 3477 y(ncks)h(-A)g(-v)g(dpm)g(${drc_out}/foo.nc)c
 (${drc_out}/${caseid}_clm)o(_011)o(2.nc)390 3696 y(Another)j(way)h(to)g
 (get)g(correct)f(monthly)f(weighting)h(is)h(to)g(average)f(daily)390
 3806 y(output)g(files,)g(if)h(available.)390 4025 y
@@ -57836,9 +58072,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: 243 249
-TeXDict begin 243 248 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(243)390 299 y Fy(************************)o
+%%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
 (****)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
@@ -57889,9 +58125,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: 244 250
-TeXDict begin 244 249 bop 150 -116 a FD(244)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)390 299 y Fy(iap_fgoals1_0_g)44
+%%Page: 250 256
+TeXDict begin 250 255 bop 150 -116 a FD(250)2582 b FC(NCO)30
+b FD(4.4.5)j(User)d(Guide)390 299 y Fy(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
@@ -57939,9 +58175,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: 245 251
-TeXDict begin 245 250 bop 150 -116 a FD(Chapter)30 b(9:)41
-b(CCSM)29 b(Example)2357 b(245)390 299 y Fy(ncks)47 b(-A)g(-v)g(tas,pr)
+%%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)
 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(}_${)
@@ -57951,18 +58187,18 @@ o(yyyy)o(mm})o(.nc)390 847 y(ncks)i(-d)g(time,.......)d(file1.nc)i
 1176 y(Level)h(III:)h(Many)g(derived)e(products)h(from)h(level)f(II,)h
 (e.g.,)676 1395 y(A.)h(Global)e(mean)g(timeseries)676
 1504 y(ncwa)h(-w)g(area)g(-a)g(lat,lon)f(\\)915 1614
-y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912.)o(nc)c(\\)533
-1724 y(sresa1b_ukmo_hadcm3_run1_)o(2000)o(01_)o(2099)o(12_x)o(y.n)o(c)
+y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912.)o(nc)c(\\)915
+1724 y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912_)o(xy.n)o(c)
 676 1943 y(B.)48 b(Califoria)d(average)h(timeseries)676
 2052 y(ncwa)h(-m)g(msk_rgn)f(-w)h(area)g(-a)g(lat,lon)f(\\)915
 2162 y(sresa1b_ukmo_hadcm3_run1)o(_200)o(001_)o(209)o(912.)o(nc)c(\\)
-533 2271 y(sresa1b_ukmo_hadcm3_run1_)o(2000)o(01_)o(2099)o(12_x)o(y_C)o
-(al.n)o(c)p eop end
-%%Page: 246 252
-TeXDict begin 246 251 bop eop end
-%%Page: 247 253
-TeXDict begin 247 252 bop 150 -116 a FD(Chapter)30 b(10:)41
-b(References)2536 b(247)150 299 y Fx(10)80 b(References)225
+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
 (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
@@ -58041,54 +58277,54 @@ 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: 248 254
-TeXDict begin 248 253 bop eop end
-%%Page: 249 255
-TeXDict begin 249 254 bop 150 -116 a FD(General)31 b(Index)2902
-b(249)150 299 y Fx(General)53 b(Index)150 610 y Fc(")150
+%%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
 (:)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(156)150 986 y FB(#)150
+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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(103)150 1350
+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(43)150 1733 y
+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(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(148)150 2109 y FB(')150 2227 y Fr(')26 b Fs(\(end)f(quote\))7
+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
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(156)150 2492 y FB(*)150 2609 y Fr(*)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)
+b Fs(159)150 2492 y FB(*)150 2609 y Fr(*)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)37 b Fs(159)150 2697 y Fr(*)26 b Fs(\(\014lename)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b
-Fs(43)150 2785 y Fr(*)26 b Fs(\(m)n(ultiplication\))7
+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
 (:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(148)150 2873 y Fr(*)26 b Fs(\(wildcard)g(c)n(haracter\))18
+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(43)150 3110 y
+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(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)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(159)150 3316 y Fr(+)26 b Fs(\(addition\))17 b Fa(:)c(:)g(:)g(:)g
+b Fs(162)150 3316 y Fr(+)26 b Fs(\(addition\))17 b Fa(:)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(148)150 3403 y Fr(+)26 b Fs(\(wildcard)g(c)n(haracter\))18
+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(43)150 3640 y
+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(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)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(159)150 3846 y Fr(-)26 b Fs(\(subtraction\))17 b
+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
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(148)150 3934 y Fr(--3)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Fs(151)150 3934 y Fr(--3)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(35)150 4022 y Fr(--4)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
@@ -58106,672 +58342,679 @@ g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34
 b Fs(35)150 4373 y Fr(--abc)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(174)150 4461 y Fr(--alphabetize)14 b Fa(:)i(:)d(:)h(:)f(:)g(:)g(:)
+b Fs(177)150 4461 y Fr(--alphabetize)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(174)150 4549 y Fr(--apn)13
+(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(177)150 4549 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(95,)h(183)150 4637 y Fr(--append)e Fa(:)13
+b Fs(16,)26 b(97,)h(186)150 4637 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(95,)h(183)150 4725 y Fr(--auxiliary)d Fa(:)13 b(:)g(:)g(:)g(:)h(:)f
+b(97,)h(186)150 4725 y Fr(--auxiliary)d 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(:)48 b Fs(63)150
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fs(64)150
 4813 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 4900 y 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(:)h(:)f(:)g(:)g(:)33 b Fs(63)150 4988 y Fr(--bfr_sz_hnt)22
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)33 b Fs(64)150 4988 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fs(77)150 5076 y Fr(--binary)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
+b Fs(79)150 5076 y Fr(--binary)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(174)150 5164 y Fr(--bnr)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+Fs(177)150 5164 y Fr(--bnr)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(174)150 5252 y Fr(--cdl)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Fs(177)150 5252 y Fr(--cdl)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(175)150 5340 y Fr(--cell_methods)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(98)2025 610 y Fr(--chunk_byte)21
+b Fs(178)150 5340 y Fr(--cell_methods)12 b Fa(:)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(100)2025 610 y Fr(--chunk_byte)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(71)2025 698 y Fr(--chunk_dimension)6 b Fa(:)17 b(:)c(:)g(:)g(:)g
+b Fs(72)2025 698 y Fr(--chunk_dimension)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(71)2025 785 y Fr(--chunk_map)24
+g(:)g(:)g(:)g(:)g(:)33 b Fs(72)2025 785 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-48 b Fs(71)2025 873 y Fr(--chunk_policy)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
+48 b Fs(72)2025 873 y Fr(--chunk_policy)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(71)2025 961 y Fr(--chunk_scalar)14
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fs(72)2025 961 y Fr(--chunk_scalar)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(71)2025 1048 y Fr(--cll_mth)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+b Fs(72)2025 1048 y Fr(--cll_mth)7 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(:)g(:)h(:)f(:)34 b Fs(100)2025
+1136 y Fr(--cnk_byt)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(72)2025 1224
+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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025 1311 y
+Fr(--cnk_map)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(72)2025 1399 y Fr(--cnk_map)27
+b Fh(cnk_map)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(74)2025 1486 y Fr(--cnk_plc)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(98)2025 1136 y Fr(--cnk_byt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)
+Fs(72)2025 1574 y Fr(--cnk_scl)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(71)2025
-1224 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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(71)2025 1311
-y Fr(--cnk_map)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(71)2025 1399 y
-Fr(--cnk_map)27 b Fh(cnk_map)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(73)2025 1486 y Fr(--cnk_plc)9 b Fa(:)15
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72)2025
+1662 y Fr(--coords)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(45,)27 b(100)2025 1749 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)34 b Fs(45,)27 b(100)2025 1837 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
+b Fs(16,)27 b(79)2025 1925 y Fr(--data)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(179)2025 2012 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(13,)26 b(22,)h(27)2025 2100 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(90)2025 2187 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(13,)27 b(22)2025 2275 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(77)2025 2363 y Fr(--dfl_lvl)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(71)2025 1574 y Fr(--cnk_scl)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(71)2025 1662 y Fr(--coords)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(44,)27 b(98)2025
-1749 y Fr(--crd)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(44,)27 b(98)2025
-1837 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)34 b Fs(16,)27 b(78)2025 1925 y Fr(--data)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(176)2025 2012 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(13,)26 b(22,)h(27)2025 2100 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(89)2025
-2187 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(13,)27
-b(22)2025 2275 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(75)2025
-2363 y Fr(--dfl_lvl)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(75)2025 2450
-y Fr(--dimension)2178 2537 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(58)2025 2625 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(55)2025 2713 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
-2800 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(54,)27 b(59,)f(62,)h(65)2025 2887 y Fr(--diskless_all)c
+g(:)36 b Fs(77)2025 2450 y Fr(--dimension)2178 2537 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 2625 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(56)2025 2713
+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 2800 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 2887 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(78)2025 2975 y Fr(--dmn)f Fh(dim)p Fr(,[)p Fh(min)p
+b(79)2025 2975 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 3062 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(58)2025 3150 y Fr(--dmn)26 b Fh(dim)p Fr(,[)p Fh(min)p
+b Fs(59)2025 3150 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(55)2025 3238 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Fs(56)2025 3238 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(54,)27 b(59,)2178 3325 y(62,)g(65)2025 3412 y Fr(--ensemble_file)9
+b Fs(55,)27 b(60,)2178 3325 y(63,)g(66)2025 3412 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(164)2025 3500 y Fr(--ensemble_group)7 b Fa(:)16
+b Fs(167)2025 3500 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(164)2025
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(167)2025
 3588 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(164)2025 3675 y Fr(--exclude)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)
+48 b Fs(167)2025 3675 y Fr(--exclude)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(40,)27 b(183)2025
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(40,)27 b(186)2025
 3763 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 3850 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(96)2025 3938 y Fr(--fix_rec_dmn)28 b(all)13 b
+48 b Fs(97)2025 3938 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
 4026 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(175)2025 4113 y Fr(--fl_bnr)10 b Fa(:)15
+g(:)g(:)38 b Fs(178)2025 4113 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(174)2025 4201 y Fr(--fl_fmt)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g
+g(:)37 b Fs(177)2025 4201 y Fr(--fl_fmt)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(35)2025 4289 y Fr(--fl_lst_in)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(96)2025
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(97)2025
 4376 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 4464 y Fr(--fl_spt)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(102)2025 4551 y Fr(--flt)21 b Fa(:)13
+g(:)g(:)g(:)37 b Fs(104)2025 4551 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(89)2025 4639 y Fr(--fnc_tbl)7
+g(:)g(:)h(:)f(:)g(:)46 b Fs(90)2025 4639 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)34 b Fs(150)2025 4727 y Fr(--fortran)9 b Fa(:)15
+h(:)f(:)34 b Fs(153)2025 4727 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(53)2025 4814 y Fr(--gag)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+g(:)36 b Fs(54)2025 4814 y Fr(--gag)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(:)49 b Fs(168,)27
-b(215)2025 4902 y Fr(--glb_mtd_spp)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(171,)27
+b(219)2025 4902 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(168)2025 4989 y Fr(--gpe)26
+g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(171)2025 4989 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(45)2025 5077 y Fr(--group)27 b Fh(grp)11
+g(:)g(:)g(:)33 b Fs(46)2025 5077 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)2025 5165 y Fr(--grp)26 b Fh(grp)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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)43
-b Fs(40)2025 5252 y Fr(--hdf_unpack)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fs(40)2025 5252 y Fr(--grp_xtr_var_xcl)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(40)2025
+5340 y Fr(--gxvx)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(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.5)j(User)d(Guide)150 299 y Fr(--hdf_unpack)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(81)150 387 y Fr(--hdf_upk)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(81)150
+476 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b
+Fs(11)150 564 y Fr(--hdn)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 653 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(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(25)150
+741 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 830 y Fr(--hidden)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(178)150 918 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(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(179)150 1006 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(97)150 1095 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(:)g(:)g(:)g(:)h(:)45 b Fs(79)2025 5340
-y Fr(--hdf_upk)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(79)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.4)j(User)d(Guide)150 299 y Fs(`)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Fs(11)150 387 y Fr(--hdn)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(175)150 476 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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fs(25)150 564 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 653 y Fr(--hidden)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(175)150 741 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(176)150 830 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(95)150 918 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(95)150 1006 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 1095 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 1183 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
-1272 y Fr(--map)27 b Fh(cnk_map)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)46 b Fs(97)150 1183 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 1272 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
+1360 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(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fs(73)150 1360 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(187)150 1449 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(203)150
-1537 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(202)150 1625 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(203)150 1714 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(202,)27 b(203)150 1802 y Fr(--mask_value)h Fh(mask_val)18
+f(:)g(:)34 b Fs(30)150 1449 y Fr(--map)27 b Fh(cnk_map)6
+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(:)g(:)h(:)32
+b Fs(74)150 1537 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(190)150 1625 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(203)150 1891 y Fr(--mask_variable)29
+g(:)g(:)g(:)g(:)h(:)44 b Fs(206)150 1714 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(202)150 1979 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(76)150 2068 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(76)150 2156 y Fr(--md5_write_attribute)13 b Fa(:)18
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(205)150 1802 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(206)150 1891
+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(205,)27 b(206)150
+1979 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(206)150 2068 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(205)150 2156 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(77)150 2245 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(77)150 2333 y Fr(--md5_write_attribute)13 b Fa(:)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(76)150 2245 y Fr(--md5_wrt_att)16
+g(:)g(:)g(:)h(:)f(:)39 b Fs(77)150 2421 y Fr(--md5_wrt_att)16
 b Fa(:)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(76)150 2333 y Fr(--metadata)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(77)150 2510 y Fr(--metadata)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(178)150 2421
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(181)150 2598
 y Fr(--Metadata)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(177)150 2510 y Fr(--mk_rec_dmn)28
+g(:)g(:)g(:)g(:)g(:)49 b Fs(180)150 2687 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(169,)27 b(176)150
-2598 y Fr(--mrd)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(172,)27 b(179)150
+2775 y Fr(--mrd)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(69)150 2687 y Fr(--mro)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+Fs(70)150 2864 y Fr(--mro)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(58)150 2775 y Fr(--msa)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(59)150 2952 y Fr(--msa)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(59)150 2864 y Fr(--msa_user_order)9 b Fa(:)16 b(:)e(:)f(:)g(:)g(:)
+b Fs(60)150 3041 y Fr(--msa_user_order)9 b Fa(:)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(59)150 2952 y Fr(--msa_usr_rdr)16
+(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(60)150 3129 y Fr(--msa_usr_rdr)16
 b Fa(:)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(59)150 3041 y Fr(--msk_cmp_typ)29 b Fh(mask_comp)13
+b Fs(60)150 3217 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(203)150 3129 y Fr(--msk_cnd)28 b
+g(:)h(:)f(:)39 b Fs(206)150 3306 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(202)150
-3217 y Fr(--msk_cnd_sng)29 b Fh(mask_cond)13 b Fa(:)h(:)f(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fs(205)150
+3394 y Fr(--msk_cnd_sng)29 b Fh(mask_cond)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(203)150 3306 y Fr(--msk_nm)27 b Fh(mask_var)11 b
+b Fs(206)150 3483 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(202)150
-3394 y Fr(--msk_val)28 b Fh(mask_val)8 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)h
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(205)150
+3571 y Fr(--msk_val)28 b Fh(mask_val)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(203)150 3483 y Fr(--msk_var)28 b Fh(mask_var)8
+g(:)g(:)35 b Fs(206)150 3660 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(202)150
-3571 y Fr(--mtd)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(205)150
+3748 y Fr(--mtd)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
-3660 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 Fs(181)150
+3836 y Fr(--Mtd)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(177)150
-3748 y Fr(--multiple_record_dimensions)13 b Fa(:)19 b(:)13
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(180)150
+3925 y Fr(--multiple_record_dimensions)13 b Fa(:)19 b(:)13
 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(69)150 3836 y Fr(--ncml)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
+b Fs(70)150 4013 y Fr(--ncml)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(179)150 3925 y Fr(--netcdf4)9 b Fa(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+b Fs(182)150 4102 y Fr(--netcdf4)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(35)150 4013 y Fr(--nintap)27 b Fh(loop)6 b Fa(:)15
+Fs(35)150 4190 y Fr(--nintap)27 b Fh(loop)6 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(:)g(:)h(:)32
-b Fs(28)150 4102 y Fr(--no-blank)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(28)150 4279 y Fr(--no-blank)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(178)150 4190
-y Fr(--no-coords)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(44,)26 b(98)150 4279 y Fr(--no-crd)18
-b Fa(:)d(:)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(:)45
-b Fs(44,)26 b(98)150 4367 y Fr(--no_blank)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(:)g(:)49 b Fs(178)150
-4456 y Fr(--no_cell_methods)6 b Fa(:)17 b(:)c(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(181)150 4367
+y Fr(--no-coords)9 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(:)35 b Fs(45,)27 b(100)150 4456 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
+b Fs(45,)27 b(100)150 4544 y Fr(--no_blank)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(181)150 4632 y Fr(--no_cell_methods)25 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(:)48 b Fs(100)150 4721 y
+Fr(--no_cll_mth)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)32 b Fs(98)150 4544 y Fr(--no_cll_mth)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(98)150 4632 y Fr(--no_rec_dmn)28 b Fh(dim)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(175)150 4721 y Fr(--no_tmp_fl)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(16,)26 b(79)150 4809 y Fr(--noblank)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 4898 y Fr(--nsm_fl)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g
+g(:)h(:)43 b Fs(100)150 4809 y Fr(--no_rec_dmn)28 b Fh(dim)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(178)150
+4898 y Fr(--no_tmp_fl)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(16,)26 b(81)150 4986 y Fr(--noblank)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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
-b Fs(164)150 4986 y Fr(--nsm_grp)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(164)150
-5075 y Fr(--nsm_sfx)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(164)150 5163
-y Fr(--nsx)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(42)150
-5252 y Fr(--omp_num_threads)29 b Fh(thr_nbr)10 b Fa(:)15
+g(:)g(:)34 b Fs(181)150 5075 y Fr(--nsm_fl)10 b Fa(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)36 b Fs(25)150 5340 y Fr(--op_rlt)27 b Fh(mask_comp)8
-b Fa(:)16 b(:)d(:)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(203)2025
-299 y Fr(--op_typ)27 b Fh(op_typ)d Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)37 b Fs(167)150 5163 y Fr(--nsm_grp)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(167)150 5252 y Fr(--nsm_sfx)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(167)150
+5340 y Fr(--nsx)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(42)2025 299 y Fr(--omp_num_threads)29 b Fh(thr_nbr)10
+b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)36 b Fs(25)2025 387 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(206)2025
+476 y Fr(--op_typ)27 b Fh(op_typ)d 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(:)49
-b Fs(82,)27 b(159)2025 387 y Fr(--open_ram)22 b Fa(:)13
+b Fs(83,)27 b(162)2025 564 y Fr(--open_ram)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(:)47 b Fs(16,)26
-b(22,)h(78)2025 476 y Fr(--operation)h Fh(op_typ)15 b
+b(22,)h(79)2025 653 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(82,)27 b(159)2025 564 y Fr
+(:)g(:)g(:)h(:)f(:)41 b Fs(83,)27 b(162)2025 741 y Fr
 (--orphan_dimensions)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(179)2025 653 y Fr(--output)27 b Fh(fl_out)18 b Fa(:)d(:)e(:)g(:)g
+b Fs(182)2025 830 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(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(30)2025 741 y
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(30)2025 918 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(95)2025 830 y Fr(--ovr)9 b Fa(:)14
+g(:)37 b Fs(16,)27 b(97)2025 1006 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(95)2025 918 y Fr(--pack_policy)h
+h(:)f(:)35 b Fs(16,)27 b(97)2025 1095 y Fr(--pack_policy)h
 Fh(pck_plc)18 b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(186)2025 1006
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(189)2025 1183
 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 1095 y Fr(--pck_map)g Fh(pck_map)11
+b Fs(28,)27 b(30)2025 1272 y Fr(--pck_map)g Fh(pck_map)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(187)2025
-1183 y Fr(--pck_plc)27 b Fh(pck_plc)11 b Fa(:)k(:)e(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(190)2025
+1360 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(186)2025 1272 y Fr(--print)12 b Fa(:)j(:)e(:)g(:)g(:)g
+g(:)g(:)38 b Fs(189)2025 1449 y Fr(--print)12 b Fa(:)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(178)2025 1360 y Fr(--prn)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(181)2025 1537 y Fr(--prn)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(178)2025 1449 y Fr(--prn_fnc_tbl)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f
+b Fs(181)2025 1625 y Fr(--prn_fnc_tbl)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(150)2025 1537 y Fr(--pseudonym)7
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(153)2025 1714 y Fr(--pseudonym)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 1625 y Fr(--pth)26 b Fh(input-path)f
+g(:)g(:)34 b Fs(8)2025 1802 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
-1714 y Fr(--quiet)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+1891 y Fr(--quiet)12 b Fa(:)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(179)2025
-1802 y Fr(--rad)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 Fs(182)2025
+1979 y Fr(--rad)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(179)2025
-1891 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 Fs(182)2025
+2068 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)42 b Fs(22,)27 b(78)2025 1979 y(`)p Fr(--rcd_nm)h
+g(:)h(:)f(:)g(:)42 b Fs(22,)27 b(79)2025 2156 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(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(167)2025 2068 y Fr(--rec_apn)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+b Fs(170)2025 2245 y Fr(--rec_apn)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(57)2025 2156 y Fr(--record_append)11 b Fa(:)17 b(:)c(:)g(:)g(:)g(:)g
+Fs(58)2025 2333 y Fr(--record_append)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(57)2025 2245 y Fr(--retain)12
+h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(58)2025 2421 y Fr(--retain)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(34)2025 2333 y Fr(--retain_all_dimensions)28
+(:)g(:)g(:)g(:)39 b Fs(35)2025 2510 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(179)2025 2421 y Fr(--revision)13 b
-Fa(:)i(:)f(:)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(:)40
-b Fs(13,)27 b(99)2025 2510 y Fr(--rph_dmn)7 b Fa(:)15
+(:)g(:)g(:)50 b Fs(182)2025 2598 y Fr(--revision)11 b
+Fa(:)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(13,)27 b(101)2025 2687 y Fr(--rph_dmn)7 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(:)g(:)h(:)f(:)
-34 b Fs(179)2025 2598 y Fr(--rth_dbl)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g
+34 b Fs(182)2025 2775 y Fr(--rth_dbl)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(89)2025 2687 y Fr(--rth_flt)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+b Fs(90)2025 2864 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(89)2025 2775 y Fr(--rtn)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+Fs(90)2025 2952 y Fr(--rtn)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(34)2025 2864 y Fr(--script)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
+b Fs(35)2025 3041 y Fr(--script)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(102)2025 2952 y Fr(--script-file)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f(:)g
+Fs(104)2025 3129 y Fr(--script-file)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(102)2025 3041 y Fr(--sng_fmt)7
+g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(104)2025 3217 y Fr(--sng_fmt)7
 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(:)g(:)
-h(:)f(:)34 b Fs(179)2025 3129 y Fr(--spt)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)
+h(:)f(:)34 b Fs(182)2025 3306 y Fr(--spt)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(102)2025 3217 y Fr(--string)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g
+b Fs(104)2025 3394 y Fr(--string)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(179)2025 3306 y Fr(--thr_nbr)27 b Fh(thr_nbr)13 b
+Fs(182)2025 3483 y Fr(--thr_nbr)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
-3394 y Fr(--threads)27 b Fh(thr_nbr)13 b Fa(:)i(:)e(:)g(:)g(:)h(:)f(:)g
+3571 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 3483 y(`)p Fr(--ulm_nm)28
+g(:)g(:)h(:)39 b Fs(25)2025 3660 y(`)p Fr(--ulm_nm)28
 b Fh(ulm_nm)p Fs(')12 b Fa(:)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(167)2025 3571 y Fr(--union)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+b Fs(170)2025 3748 y Fr(--union)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(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(40,)27
-b(42)2025 3660 y Fr(--units)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b(42)2025 3836 y Fr(--units)12 b Fa(:)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(179)2025
-3748 y Fr(--unn)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(182)2025
+3925 y Fr(--unn)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(40,)27 b(42)2025
-3836 y Fr(--unpack)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+4013 y Fr(--unpack)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(187)2025
-3925 y Fr(--upk)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(190)2025
+4102 y Fr(--upk)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(187)2025
-4013 y Fr(--variable)28 b Fh(var)8 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(190)2025
+4190 y Fr(--variable)28 b Fh(var)8 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(:)34 b Fs(40,)27 b(183)2025 4102 y Fr(--version)16
-b Fa(:)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(13,)27 b(99)2025 4190 y Fr(--vrs)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(13,)27 b(99)2025 4279 y Fr(--weight)g Fh(weight)16
+g(:)h(:)34 b Fs(40,)27 b(186)2025 4279 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(13,)27 b(101)2025 4367 y Fr(--vrs)7 b Fa(:)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(13,)27 b(101)2025 4456 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(202)2025 4367 y Fr(--weight)27 b Fh(wgt1)p Fr([,)p
+Fs(205)2025 4544 y Fr(--weight)27 b Fh(wgt1)p Fr([,)p
 Fh(wgt2)p Fr(])c Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(170)2025
-4456 y Fr(--wgt_var)27 b Fh(weight)13 b Fa(:)i(:)e(:)h(:)f(:)g(:)g(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(173)2025
+4632 y Fr(--wgt_var)27 b Fh(weight)13 b Fa(:)i(:)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(:)40 b Fs(202)2025 4544 y Fr(--wgt_var)27 b
+g(:)h(:)f(:)40 b Fs(205)2025 4721 y Fr(--wgt_var)27 b
 Fh(wgt1)p Fr([,)p Fh(wgt2)p Fr(])18 b Fa(:)e(:)d(:)g(:)g(:)g(:)g(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(170)2025 4632 y Fr(--write_tmp_fl)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h
+b Fs(173)2025 4809 y Fr(--write_tmp_fl)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(16)2025 4721 y Fr(--wrt_tmp_fl)21
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fs(16)2025 4898 y Fr(--wrt_tmp_fl)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(16)2025 4809 y Fr(--xcl)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(16)2025 4986 y Fr(--xcl)7 b Fa(:)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(40,)27
-b(183)2025 4898 y Fr(--xml)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b(186)2025 5075 y Fr(--xml)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(179)2025 4986 y Fr(--xml_no_location)25 b Fa(:)13
+b Fs(182)2025 5163 y Fr(--xml_no_location)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(180)2025 5075
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(183)2025 5252
 y Fr(--xml_spr_chr)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(180)2025 5163 y Fr(--xml_spr_nmr)14 b
+f(:)g(:)41 b Fs(183)2025 5340 y Fr(--xml_spr_nmr)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(180)2025 5252 y Fr(-3)17 b Fa(:)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(:)f(:)g(:)g(:)g(:)43
-b Fs(10,)27 b(35)2025 5340 y Fr(-4)17 b Fa(:)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(:)f(:)g(:)g(:)g(:)43
-b Fs(10,)27 b(35)p eop end
-%%Page: 251 257
-TeXDict begin 251 256 bop 150 -116 a FD(General)31 b(Index)2902
-b(251)150 299 y Fr(-5)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(174)150 389 y Fr(-6)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+b Fs(183)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(-3)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(10,)26 b(35)150 387 y Fr(-4)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(10,)26 b(35)150 474 y Fr(-5)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(177)150 562 y Fr(-6)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-37 b Fs(35)150 479 y Fr(-7)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 568 y Fr(-a)12 b Fa(:)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(174,)27 b(182)150 658 y Fr(-A)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)37 b Fs(35)150 650 y Fr(-7)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 738 y Fr(-a)12 b Fa(:)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(185)150 826 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(95,)h(183)150 748 y(`)p Fr(-A)p Fs(')22 b
+Fs(16,)26 b(97,)h(186)150 914 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(190)150 838 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(148,)27 b(161)150
-928 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(174)150 1018 y Fr(-B)26 b Fh(mask_cond)11 b Fa(:)k(:)e(:)g(:)g(:)h
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(193)150 1001
+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 1089 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(177)150 1177 y Fr(-B)26 b Fh(mask_cond)11 b Fa(:)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(202,)27 b(203)150 1108 y
-Fr(-c)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(44,)26 b(98)150
-1198 y Fr(-C)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(44,)26 b(98,)h(148)150
-1287 y Fr(-D)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(13)150 1377 y Fr(-D)26 b Fh(debug-level)16 b Fa(:)g(:)d(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)38 b Fs(205,)27 b(206)150 1265 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(:)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(100)150
+1353 y Fr(-C)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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)45 b Fs(45,)27 b(100,)g(151)150 1440
+y Fr(-D)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(13)150 1528 y Fr(-D)26 b Fh(debug-level)16 b Fa(:)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(13,)27 b(22,)f(27)150 1467 y Fr(-d)g Fh(dim)p
+(:)g(:)43 b Fs(13,)27 b(22,)f(27)150 1616 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(58)150 1557 y Fr(-d)26 b Fh(dim)p Fr(,[)p
+b(:)g(:)37 b Fs(59)150 1704 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
 b(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)36 b Fs(55)150 1647 y Fr(-d)26 b Fh(dim)p Fr(,[)p
+g(:)36 b Fs(56)150 1792 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(54,)26 b(59,)h(62,)304
-1734 y(65)150 1824 y Fr(-d)f Fh(dim)p Fr(,[)p Fh(min)p
+b Fa(:)19 b(:)13 b(:)g(:)41 b Fs(55,)26 b(60,)h(63,)304
+1879 y(66)150 1967 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fs(202)150 1914 y Fr(-f)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(205)150 2054 y Fr(-f)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(150)150 2004 y Fr(-F)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(153)150 2142 y Fr(-F)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(53)150 2093 y Fr(-G)26 b Fh(gpe_dsc)14 b Fa(:)h(:)e(:)g(:)g
+(:)37 b Fs(54)150 2230 y Fr(-G)26 b Fh(gpe_dsc)14 b Fa(:)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(45)150 2183 y Fr(-g)26 b Fh(grp)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fs(46)150 2318 y Fr(-g)26 b Fh(grp)7 b Fa(:)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 2273 y Fr(-h)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+b Fs(40)150 2406 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(95,)27 b(153)150 2363 y Fr(-H)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(97,)27 b(156)150 2493 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(96,)27 b(176)150 2453 y Fr(-I)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)
+b Fs(97,)27 b(179)150 2581 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(203)150 2543 y Fr(-L)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)35 b Fs(206)150 2669 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
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)37 b Fs(75)150 2633 y Fr(-l)26 b Fh(output-path)10
+g(:)g(:)g(:)37 b Fs(77)150 2757 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(31)150 2722 y Fr(-m)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b(32)150 2845 y Fr(-m)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 2812 y Fr(-M)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fs(181)150 2933 y Fr(-M)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(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fs(36,)27 b(168,)g(177)150
-2902 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 Fs(37,)27 b(171,)g(180)150
+3020 y Fr(-M)f Fh(cnk_map)14 b Fa(:)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(73)150 2992
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b Fs(74)150 3108
 y Fr(-m)26 b Fh(mask_var)9 b Fa(:)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(202)150 3082 y Fr(-M)26
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(205)150 3196 y Fr(-M)26
 b Fh(pck_map)12 b Fa(:)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(187)150 3172 y Fr(-N)15 b
+(:)g(:)g(:)h(:)f(:)38 b Fs(190)150 3284 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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)41 b Fs(83,)27 b(204)150 3262 y Fr(-n)f
+h(:)f(:)g(:)g(:)g(:)41 b Fs(85,)27 b(207)150 3372 y Fr(-n)f
 Fh(loop)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(:)
-44 b Fs(19,)27 b(21,)f(28)150 3352 y Fr(-O)17 b Fa(:)c(:)g(:)g(:)h(:)f
+44 b Fs(19,)27 b(21,)f(28)150 3459 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(95)150 3441 y Fr(-o)g Fh(fl_out)e
+(:)44 b Fs(16,)26 b(97)150 3547 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 3531 y Fr(-P)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(20,)26 b(30)150 3635 y Fr(-P)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 3621 y Fr(-p)26 b Fh(input-path)12
+(:)g(:)35 b Fs(181)150 3723 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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40 b
-Fs(28,)26 b(31)150 3711 y Fr(-P)g Fh(pck_plc)12 b Fa(:)i(:)g(:)f(:)g(:)
+Fs(28,)26 b(32)150 3811 y Fr(-P)g Fh(pck_plc)12 b Fa(:)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(186)150 3801 y Fr(-q)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(189)150 3898 y Fr(-q)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(179)150 3891 y Fr(-Q)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(182)150 3986 y Fr(-Q)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(179)150 3981 y Fr(-r)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(13,)26 b(99)150 4070 y Fr(-R)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h
+b Fs(182)150 4074 y Fr(-r)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(13,)27 b(101)150 4162 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(34)150 4160 y Fr(-s)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)
+(:)g(:)g(:)37 b Fs(35)150 4250 y Fr(-s)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(179)150 4250 y Fr(-t)26 b Fh(thr_nbr)c
+g(:)g(:)g(:)35 b Fs(182)150 4337 y Fr(-t)26 b 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)150 4340 y Fr(-u)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(23,)26 b(25)150 4425 y Fr(-u)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(179)150 4430 y Fr(-U)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)35 b Fs(182)150 4513 y Fr(-U)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(187)150 4520 y(`)p Fr(-u)26 b Fh(ulm_nm)p
+(:)g(:)g(:)35 b Fs(190)150 4601 y(`)p Fr(-u)26 b Fh(ulm_nm)p
 Fs(')10 b Fa(:)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(:)37 b Fs(167)150 4610 y(`)p Fr(-v)p Fs(')22
+g(:)g(:)g(:)37 b Fs(170)150 4689 y(`)p Fr(-v)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(190)150 4699
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(193)150 4776
 y Fr(-v)26 b Fh(var)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(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(40,)27 b(183)150
-4789 y Fr(-w)f Fh(weight)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(40,)27 b(186)150
+4864 y Fr(-w)f Fh(weight)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(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Fs(202)150 4879
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Fs(205)150 4952
 y Fr(-w)26 b Fh(wgt1)p Fr([,)p Fh(wgt2)p Fr(])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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(170)150
-4969 y Fr(-x)15 b Fa(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(173)150
+5040 y Fr(-x)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(40,)27
-b(183)150 5059 y Fr(-X)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b(186)150 5128 y Fr(-X)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(63)150 5149 y Fr(-X)26 b Fh(lon_min)p Fr(,)p Fh(lon_max)p
+b Fs(64)150 5216 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_m)q(ax)h Fa(:)13 b(:)g(:)g(:)g(:)h(:)
-f(:)g(:)47 b Fs(63)150 5239 y Fr(-y)26 b Fh(op_typ)c
+f(:)g(:)47 b Fs(64)150 5303 y Fr(-y)26 b Fh(op_typ)c
 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(82,)27 b(159)2025 299 y FB(.)2025 416 y Fh(.)11
+b Fs(83,)27 b(162)2025 299 y FB(.)2025 416 y Fh(.)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(198)2025
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fs(201)2025
 504 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(43)2025 592 y Fr(.bashrc)12 b Fa(:)j(:)e(:)g(:)g(:)
+g(:)g(:)h(:)44 b Fs(44)2025 592 y Fr(.bashrc)12 b Fa(:)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(181)2025 680 y Fr(.netrc)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(184)2025 680 y Fr(.netrc)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(30)2025 768 y Fr(.rhosts)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
@@ -58780,21 +59023,21 @@ g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
 b Fs(30)2025 1014 y FB(/)2025 1131 y Fr(/)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(:)f(:)g
-(:)g(:)g(:)g(:)g(:)38 b Fs(159)2025 1219 y Fr(/)26 b
+(:)g(:)g(:)g(:)g(:)38 b Fs(162)2025 1219 y Fr(/)26 b
 Fs(\(division\))9 b Fa(:)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(148)2025 1307 y Fr(/*...*/)27
+g(:)g(:)g(:)h(:)f(:)36 b Fs(151)2025 1307 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(103)2025 1395 y Fr(//)26 b Fs(\(commen)n(t\))18
+b Fs(105)2025 1395 y Fr(//)26 b Fs(\(commen)n(t\))18
 b Fa(:)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(103)2025 1631 y FB(:)2025 1748 y Fr(:)26 b Fs(\(separator)g(c)n
+b Fs(105)2025 1631 y FB(:)2025 1748 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(45)2025
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(46)2025
 1985 y FB(;)2025 2102 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(103)2025
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37 b Fs(105)2025
 2338 y Fc(<)2025 2455 y Fr(<arpa/nameser.h>)11 b Fa(:)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
@@ -58803,2852 +59046,2898 @@ b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fs(8)2025 2780
 y FB(?)2025 2897 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(43)2025 2985
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Fs(44)2025 2985
 y Fr(?)26 b Fs(\(question)f(mark\))19 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(:)46 b Fs(156)2025 3073 y Fr(?)26 b Fs(\(wildcard)g(c)n
+g(:)g(:)g(:)g(:)46 b Fs(159)2025 3073 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(43)2025
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(44)2025
 3331 y FB(@)2025 3448 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
 (:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-33 b Fs(103)2025 3536 y Fr(@)26 b Fs(\(separator)g(c)n(haracter\))d
+33 b Fs(105)2025 3536 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(45)2025 3801 y
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(46)2025 3801 y
 FB([)2025 3918 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(103)2025
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(105)2025
 4166 y Fc(^)2025 4284 y Fr(^)26 b Fs(\(p)r(o)n(w)n(er\))c
 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(:)49 b Fs(148)2025 4371 y Fr(^)26 b Fs(\(wildcard)g(c)n
+f(:)g(:)49 b Fs(151)2025 4371 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(43)p
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(44)p
 2034 4608 41 6 v 2025 4725 a Fr(_ChunkSizes)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(:)h(:)f(:)g(:)46
-b Fs(175)2025 4813 y Fr(_DeflateLevel)14 b Fa(:)i(:)d(:)g(:)g(:)h(:)f
+b Fs(178)2025 4813 y Fr(_DeflateLevel)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(175)2025 4901 y Fr(_Endianness)22
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(178)2025 4901 y Fr(_Endianness)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(:)h(:)f(:)g(:)46
-b Fs(175)2025 4989 y Fr(_FillValue)13 b Fa(:)i(:)f(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)40 b Fs(69,)27 b(79,)f(153,)i(171,)f(188,)g(200)
+b Fs(178)2025 4989 y Fr(_FillValue)13 b Fa(:)i(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)40 b Fs(70,)27 b(81,)f(156,)i(174,)f(191,)g(203)
 2025 5076 y Fr(_Fletcher32)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(:)h(:)f(:)g(:)46 b Fs(175)2025 5164 y Fr(_Format)12
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(178)2025 5164 y Fr(_Format)12
 b Fa(:)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(175)2025 5252 y Fr(_NOFILL)12
+(:)g(:)h(:)f(:)39 b Fs(178)2025 5252 y Fr(_NOFILL)12
 b Fa(:)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(175)2025 5340 y Fr(_Shuffle)10
+(:)g(:)h(:)f(:)39 b Fs(178)2025 5340 y Fr(_Shuffle)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(175)p eop end
-%%Page: 252 258
-TeXDict begin 252 257 bop 150 -116 a FD(252)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y Fr(_Storage)10 b
+g(:)g(:)g(:)37 b Fs(178)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.5)j(User)d(Guide)150 299 y Fr(_Storage)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(175)150 557 y Fc(\\)150 676 y Fr(\\)26
+g(:)g(:)g(:)37 b Fs(178)150 557 y Fc(\\)150 676 y Fr(\\)26
 b Fs(\(bac)n(kslash\))15 b Fa(:)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(156)150 764 y Fr(\\")26 b
+g(:)g(:)h(:)f(:)g(:)41 b Fs(159)150 764 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(156)150
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(159)150
 852 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(156)150 941 y Fr(\\?)26 b
+(:)g(:)g(:)g(:)g(:)49 b Fs(159)150 941 y Fr(\\?)26 b
 Fs(\(protected)f(question)h(mark\))16 b Fa(:)d(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(156)150
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(159)150
 1029 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(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(156)150
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(159)150
 1117 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(156)150 1205 y Fr(\\a)26
+g(:)g(:)g(:)g(:)g(:)39 b Fs(159)150 1205 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
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)44 b Fs(156)150 1294 y Fr(\\b)26 b Fs(\()p Fp(ASCI)r(I)g
+g(:)g(:)44 b Fs(159)150 1294 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(156)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(159)150
 1382 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(156)150 1470 y Fr(\\n)26
+g(:)h(:)f(:)g(:)g(:)38 b Fs(159)150 1470 y Fr(\\n)26
 b Fs(\()p Fp(ASCI)r(I)g Fs(LF,)g(linefeed\))14 b Fa(:)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(155)150 1559 y Fr(\\n)26 b Fs(\(linefeed\))9
+40 b Fs(158)150 1559 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
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-36 b Fs(183)150 1647 y Fr(\\r)26 b Fs(\()p Fp(ASCI)r(I)g
+36 b Fs(186)150 1647 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(156)150 1735 y Fr(\\t)26
+(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fs(159)150 1735 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(155)150 1824 y Fr(\\t)26 b Fs(\(horizon)n(tal)h(tab\))19
+b Fs(158)150 1824 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(183)150
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(186)150
 1912 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(156)150 2172 y Fc(|)150 2291 y Fr(|)26
+g(:)g(:)36 b Fs(159)150 2172 y Fc(|)150 2291 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(43)150 2545 y FB(0)150 2664 y Fr(0)26 b Fs(\(NUL\))c
+b Fs(44)150 2545 y FB(0)150 2664 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
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)50 b Fs(156)150 2918 y FB(3)150 3036 y Fs(32-bit)26
+g(:)g(:)g(:)50 b Fs(159)150 2918 y FB(3)150 3036 y Fs(32-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(36)150 3275 y FB(6)150 3393 y Fs(64-bit)26 b(o\013set)g(\014le)g
+b Fs(37)150 3275 y FB(6)150 3393 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(36)150
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(37)150
 3482 y Fr(64BIT)27 b Fs(\014les)11 b Fa(:)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
 3720 y FB(A)150 3839 y Fm(abs)10 b Fa(:)k(:)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(:)34
-b Fs(148)150 3927 y(absolute)26 b(v)l(alue)14 b Fa(:)f(:)g(:)h(:)f(:)g
+b Fs(151)150 3927 y(absolute)26 b(v)l(alue)14 b Fa(:)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(:)41 b Fs(148)150 4015
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)41 b Fs(151)150 4015
 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(148)150
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(151)150
 4104 y Fm(acosh)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(:)33 b
-Fs(148)150 4192 y Fr(add)23 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+Fs(151)150 4192 y Fr(add)23 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
-b Fs(159)150 4280 y Fm(add)p 279 4280 24 4 v 34 w(o\013set)19
+b Fs(162)150 4280 y Fm(add)p 279 4280 24 4 v 34 w(o\013set)19
 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(:)44 b Fs(24)150 4369 y Fr(add_offset)22 b
 Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)46 b Fs(79,)27 b(168,)g(186,)g(196)150
+(:)g(:)g(:)g(:)h(:)46 b Fs(81,)27 b(171,)g(189,)g(199)150
 4457 y(adding)f(data)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
-(:)49 b Fs(159,)27 b(170)150 4545 y(addition)20 b Fa(:)13
+(:)49 b Fs(162,)27 b(173)150 4545 y(addition)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(:)47 b Fs(148,)27
-b(159,)g(170)150 4633 y(aggregation)7 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47 b Fs(151,)27
+b(162,)g(173)150 4633 y(aggregation)7 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(:)g(:)h(:)33 b Fs(215)150
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(219)150
 4722 y(Aleksandar)26 b(Jelenak)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(:)38 b Fs(208)150 4810 y(Alexander)25 b(Hansen)14 b
+g(:)38 b Fs(212)150 4810 y(Alexander)25 b(Hansen)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(:)41 b Fs(208)150
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b Fs(212)150
 4898 y Fr(alias)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(160)150
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(163)150
 4987 y(alias)7 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(:)g(:)g(:)h(:)f(:)33 b
-Fs(181)150 5075 y Fr(alias)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+Fs(184)150 5075 y Fr(alias)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(187)150 5163 y(`)p Fr(all)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
+b Fs(190)150 5163 y(`)p Fr(all)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(72)150 5252 y(alphab)r(etization)10 b Fa(:)15
+g(:)47 b Fs(73)150 5252 y(alphab)r(etization)10 b Fa(:)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(:)g(:)37
-b Fs(174)150 5340 y(alphab)r(etize)26 b(output)20 b Fa(:)13
+b Fs(177)150 5340 y(alphab)r(etize)26 b(output)20 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(:)47 b Fs(182)2025 299
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(185)2025 299
 y(alternate)26 b(in)n(v)n(o)r(cations)d 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(:)48 b Fs(159)2025 387 y(anc)n(hor)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+f(:)48 b Fs(162)2025 387 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(:)g(:)h(:)f(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
 b Fs(41)2025 476 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(:)h(:)f(:)g(:)g(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49 b
-Fs(41)2025 564 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(208)2025 653 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(208)2025
-741 y(ann)n(ual)25 b(a)n(v)n(erage)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h
+Fs(41)2025 564 y(ancillary)27 b(v)l(ariables)f(con)n(v)n(en)n(tion)15
+b Fa(:)d(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)41 b Fs(99)2025 653 y Fr(ancillary_variables)18 b
+Fa(:)f(:)c(:)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(99)2025 741 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 830 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
+918 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(221)2025 830 y(ann)n(ual)25
+g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(226)2025 1007 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(211)2025
-918 y(ann)n(ual)25 b(a)n(v)n(erage)i(from)f(mon)n(thly)f(data)14
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)46 b Fs(215)2025
+1095 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(211)2025 1007 y(anomalies)11 b Fa(:)k(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(215)2025 1184 y(anomalies)11 b Fa(:)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(161,)27 b(221,)g(228)2025 1095 y Fp(ANSI)18
+g(:)38 b Fs(164,)27 b(226,)g(233)2025 1272 y Fp(ANSI)18
 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(:)45 b Fs(6)2025 1184
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fs(6)2025 1360
 y Fr(ANSI)26 b(C)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(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(150)2025
-1272 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 Fs(153)2025
+1449 y(app)r(ending)25 b(data)12 b Fa(:)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(148,)27 b(173)2025 1360 y(app)r(ending)e(to)h(\014les)18
+39 b Fs(151,)27 b(176)2025 1537 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(95,)g(183)2025 1449
+g(:)g(:)g(:)g(:)45 b Fs(16,)27 b(97,)g(186)2025 1626
 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(102,)g(190)2025
-1537 y Fp(AR4)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(16,)27 b(17,)g(104,)g(193)2025
+1714 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(164)2025 1626 y(arccosine)27 b(function)18 b Fa(:)13
+Fs(167)2025 1803 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(148)2025
-1714 y(arcsine)26 b(function)21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(151)2025
+1891 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(148)2025 1803 y(arctangen)n(t)26
+g(:)g(:)h(:)f(:)47 b Fs(151)2025 1980 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(148)2025 1891 y Fr(area)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(151)2025 2068 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(97)2025 1980 y(area-a)n(v)n(eraging)10 b Fa(:)k(:)f(:)h(:)f(:)g(:)
+b Fs(98)2025 2157 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(221)2025 2068
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(226)2025 2245
 y(arithmetic)26 b(op)r(erators)18 b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fs(70,)27 b(202)2025 2157 y(arithmetic)f(pro)r(cessor)14
+b Fs(71,)27 b(205)2025 2334 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(102)2025
-2245 y Fp(ARM)25 b Fs(con)n(v)n(en)n(tions)14 b Fa(:)e(:)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(:)40 b Fs(98)2025 2334 y(ARM)25
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(104)2025
+2422 y Fp(ARM)25 b Fs(con)n(v)n(en)n(tions)11 b Fa(:)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(100)2025 2510 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-48 b Fs(196)2025 2422 y Fr(array)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)
+48 b Fs(199)2025 2599 y Fr(array)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(108)2025 2510 y Fr(array)26 b Fs(function)21 b Fa(:)14
+b Fs(110)2025 2687 y Fr(array)26 b Fs(function)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48
-b Fs(108)2025 2599 y(arra)n(y)26 b(indexing)10 b Fa(:)i(:)h(:)h(:)f(:)g
+b Fs(110)2025 2776 y(arra)n(y)26 b(indexing)10 b Fa(:)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(103)2025
-2687 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 Fs(105)2025
+2864 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(103)2025 2776 y(arra)n(y)26
+(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(105)2025 2953 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
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)34 b Fs(103)2025 2864 y(arra)n(ys)13
+g(:)g(:)g(:)h(:)34 b Fs(105)2025 3041 y(arra)n(ys)13
 b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)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(108)2025 2953 y(arriv)l(al)26
+(:)f(:)g(:)g(:)g(:)g(:)40 b Fs(110)2025 3130 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)38 b Fs(170)2025 3041 y Fp(ASCI)r(I)23 b
+g(:)g(:)g(:)38 b Fs(173)2025 3218 y Fp(ASCI)r(I)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(:)49 b Fs(155,)27 b(156)2025 3130 y Fm(asin)15 b Fa(:)f(:)f(:)g(:)g
+g(:)49 b Fs(158,)27 b(159)2025 3307 y Fm(asin)15 b Fa(:)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(148)2025 3218 y Fm(asinh)11 b Fa(:)i(:)g(:)g(:)g(:)h
+(:)g(:)g(:)42 b Fs(151)2025 3395 y Fm(asinh)11 b Fa(:)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(148)2025 3307 y Fr(asort)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g
+(:)38 b Fs(151)2025 3484 y Fr(asort)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(122)2025 3395 y(assignmen)n(t)26 b(statemen)n(t)8
+b Fs(125)2025 3572 y(assignmen)n(t)26 b(statemen)n(t)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(:)35 b Fs(103)2025 3484
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(105)2025 3660
 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 3572 y Fm(atan)7 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)34 b Fs(30)2025 3749 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(148)2025 3660 y Fm(atanh)19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fs(151)2025 3837 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(148)2025 3749 y(attribute)25 b(inheritance)7 b Fa(:)13
+b Fs(151)2025 3926 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(112)2025 3837
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(114)2025 4014
 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(153,)27 b(198)2025 3926 y(attribute)e(propagation)9
+b Fs(156,)27 b(201)2025 4103 y(attribute)e(propagation)9
 b Fa(:)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(:)36 b Fs(112)2025 4014
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)36 b Fs(114)2025 4191
 y(attribute)25 b(syn)n(tax)14 b Fa(:)e(:)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(:)41 b Fs(103)2025 4103 y(attribute,)26 b Fr(units)17
+g(:)g(:)g(:)41 b Fs(105)2025 4280 y(attribute,)26 b Fr(units)17
 b Fa(:)d(:)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(:)44
-b Fs(65)2025 4191 y(attributes)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(66)2025 4368 y(attributes)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(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(153)2025
-4280 y(attributes,)26 b(app)r(ending)10 b Fa(:)i(:)i(:)f(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(156)2025
+4457 y(attributes,)26 b(app)r(ending)10 b Fa(:)i(:)i(:)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(154)2025 4368 y(attributes,)26 b(creating)15
+(:)37 b Fs(157)2025 4545 y(attributes,)26 b(creating)15
 b Fa(:)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(:)42 b Fs(154)2025
-4457 y(attributes,)26 b(deleting)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(157)2025
+4634 y(attributes,)26 b(deleting)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(:)44 b Fs(154)2025 4545 y(attributes,)26 b(editing)9
+(:)g(:)44 b Fs(157)2025 4722 y(attributes,)26 b(editing)9
 b Fa(:)k(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)36 b Fs(154,)27 b(221,)g(231)2025 4634 y(attributes,)f(global)d
-Fa(:)13 b(:)g(:)g(:)48 b Fs(20,)27 b(95,)g(96,)g(99,)f(154,)h(156,)g
-(173,)2178 4721 y(174,)g(183,)h(199,)f(200)2025 4809
-y(attributes,)f(mo)r(difying)8 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fs(154,)27 b(221,)g(231)2025
-4898 y(attributes,)f(o)n(v)n(erwriting)21 b Fa(:)13 b(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(154,)27 b(221,)g(231)2025
-4986 y(attributes)p Fr(ncap2)7 b Fa(:)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(:)33 b Fs(111)2025 5075 y Fr(autoconf)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(14)2025 5163 y(auto)r(con)n(v)n(ersion)22
-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(:)48
-b Fs(38)2025 5252 y(automagic)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(:)49 b Fs(7,)26 b(19)2025
-5340 y(automatic)g(t)n(yp)r(e)f(con)n(v)n(ersion)d Fa(:)13
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48
-b Fs(87,)27 b(149)p eop end
-%%Page: 253 259
-TeXDict begin 253 258 bop 150 -116 a FD(General)31 b(Index)2902
-b(253)150 299 y Fs(auxiliary)26 b(co)r(ordinates)e Fa(:)13
+g(:)g(:)36 b Fs(157,)27 b(226,)g(236)2025 4810 y(attributes,)f(global)
+17 b Fa(:)e(:)44 b Fs(20,)26 b(97,)h(101,)g(157,)g(160,)g(176,)g(177,)
+2178 4898 y(186,)g(202,)h(203)2025 4986 y(attributes,)e(mo)r(difying)8
+b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+35 b Fs(157,)27 b(226,)g(236)2025 5075 y(attributes,)f(o)n(v)n
+(erwriting)21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)47 b Fs(157,)27 b(226,)g(236)2025 5163 y(attributes)p
+Fr(ncap2)7 b Fa(:)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(:)
+33 b Fs(113)2025 5252 y Fr(autoconf)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(14)2025 5340 y(auto)r(con)n(v)n(ersion)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(:)49 b Fs(98)150 387 y(a)n(v)n(erage)18
-b Fa(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fs(82,)26
-b(203,)i(211,)f(212,)g(218,)g(221,)g(228)150 474 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(69,)27 b(164,)g(194,)g(202)150
-562 y Fr(avg)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(82)150 650 y(a)n(vg\(\))11 b Fa(:)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(117)150 737 y Fr(avgsqr)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(82)150 991 y FB(B)150 1108 y Fs(Barry)26 b(deF)-6
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48
+b Fs(39)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(automagic)23 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(:)h(:)f(:)48 b Fs(7,)26 b(19)150
+387 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(88,)27 b(152)150 474 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(100)150 562
+y(a)n(v)n(erage)18 b Fa(:)c(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
+b Fs(83,)26 b(206,)i(215,)f(216,)g(223,)g(226,)g(233)150
+650 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(70,)27
+b(167,)g(197,)g(205)150 737 y Fr(avg)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(83)150 825 y(a)n(vg\(\))11 b Fa(:)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 913 y Fr(avgsqr)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(83)150 1167 y FB(B)150 1284 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
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-45 b Fs(208)150 1196 y Fr(base_time)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 1284 y Fr(bash)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(44,)27
-b(181)150 1372 y(Bash)f(shell)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f
+45 b Fs(212)150 1372 y Fr(base_time)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(100)150 1459 y Fr(bash)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(45,)27
+b(184)150 1547 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(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)44 b Fs(160,)27 b(181)150 1459 y(Bash)f(Shell)7
+g(:)g(:)g(:)g(:)h(:)44 b Fs(163,)27 b(184)150 1635 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)34 b Fs(163)150 1547 y(batc)n(h)25 b(mo)r(de)7
+g(:)g(:)34 b Fs(166)150 1722 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(95)150 1635 y(b)r(eer)12 b Fa(:)h(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)33 b Fs(97)150 1810 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(94)150 1722 y(b)r(enc)n(hmarks)20 b Fa(:)13
+(:)f(:)38 b Fs(95)150 1898 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(26)150 1810 y(Bessel)27 b(function)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f
+b Fs(26)150 1985 y(Bessel)27 b(function)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(:)43 b Fs(132)150 1898 y(bilinear)27
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Fs(134)150 2073 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(231)150 1985 y(Bill)27 b(Ko)r(cik)14 b Fa(:)f(:)g(:)g(:)h(:)f(:)g
+b Fs(236)150 2161 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(208)150 2073 y(binary)25 b(format)c Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)
+Fs(212)150 2248 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(174)150 2161 y(binary)25
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(177)150 2336 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(159)150 2248 y(binary)e(Op)r(erators)15
+b Fs(23,)27 b(162)150 2424 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(105)150 2336 y(blank)22 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+Fs(107)150 2511 y(blank)22 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(:)h(:)49
-b Fs(178)150 2424 y Fr(bounds)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(181)150 2599 y Fr(bounds)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(98)150 2511 y(b)r(ounds)25 b(con)n(v)n(en)n(tion)10
+b Fs(99)150 2687 y(b)r(ounds)25 b(con)n(v)n(en)n(tion)10
 b Fa(:)i(:)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(:)36 b
-Fs(98)150 2599 y(Bourne)26 b(Shell)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)
+Fs(99)150 2775 y(Bourne)26 b(Shell)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(56,)27 b(163)150 2687
+(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(57,)27 b(166)150 2862
 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)50 b Fs(208)150 2775 y(broadcasting)23
+f(:)g(:)g(:)g(:)g(:)50 b Fs(212)150 2950 y(broadcasting)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(:)g(:)48
-b Fs(162)150 2862 y(broadcasting)27 b(groups)10 b Fa(:)k(:)f(:)g(:)g(:)
+b Fs(165)150 3038 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(161,)g(162)150 2950 y(broadcasting)g(v)l(ariables)12
-b Fa(:)h(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(104,)27
-b(160,)g(172,)g(202)150 3038 y Fr(BSD)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fs(10,)27 b(164,)g(165)150 3125 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(205)150 3213 y Fr(BSD)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(27)150 3125 y(Bu\013er)26 b(sizes)12
+(:)g(:)g(:)34 b Fs(27)150 3301 y(Bu\013er)26 b(sizes)12
 b Fa(:)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(77)150 3213 y(bu\013ering)20 b Fa(:)13
+(:)h(:)38 b Fs(79)150 3388 y(bu\013ering)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)47 b Fs(24)150 3301 y(bugs,)26 b(rep)r(orting)16
+g(:)g(:)47 b Fs(24)150 3476 y(bugs,)26 b(rep)r(orting)16
 b Fa(:)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 3388 y(b)n(yte\(\))13 b Fa(:)f(:)h(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(13)150 3564 y(b)n(yte\(\))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(:)40
-b Fs(119)150 3645 y FB(C)150 3762 y Fs(C)26 b(index)f(con)n(v)n(en)n
+b Fs(121)150 3820 y FB(C)150 3937 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(53)150 3849 y(C)26 b(language)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)42 b Fs(7,)27 b(70,)f(88,)h(89,)g(103,)g(156,)g(179)
-150 3937 y(C)f(Shell)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b Fs(54)150 4025 y(C)26 b(language)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)42 b Fs(7,)27 b(71,)f(90,)h(91,)g(105,)g(159,)g(182)
+150 4112 y(C)f(Shell)17 b Fa(:)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(:)44 b Fs(56,)27 b(163)150 4025
+(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fs(57,)27 b(166)150 4200
 y Fr(c++)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 4112 y(C)p Fr(++)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(6)150 4288 y(C)p Fr(++)20 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(:)g(:)g
-(:)46 b Fs(6)150 4200 y Fm(C)p 210 4200 24 4 v 34 w(format)13
+(:)46 b Fs(6)150 4375 y Fm(C)p 210 4375 24 4 v 34 w(format)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)38 b Fs(24)150 4288 y(C89)11 b Fa(:)j(:)g(:)f(:)g(:)g(:)
+(:)g(:)g(:)g(:)38 b Fs(24)150 4463 y(C89)11 b Fa(:)j(:)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(:)h(:)
-f(:)38 b Fs(6,)26 b(7)150 4375 y(C99)11 b Fa(:)j(:)g(:)f(:)g(:)g(:)g(:)
+f(:)38 b Fs(6,)26 b(7)150 4551 y(C99)11 b Fa(:)j(:)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(:)h(:)f(:)
-38 b Fs(7,)26 b(8)150 4463 y Fp(CAM3)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)
+38 b Fs(7,)26 b(8)150 4638 y Fp(CAM3)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)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(92)150 4551 y Fr(cc)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b Fs(93)150 4726 y Fr(cc)12 b Fa(:)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(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)39 b Fs(6)150 4638 y Fr(CC)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+f(:)39 b Fs(6)150 4814 y Fr(CC)12 b Fa(:)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(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)39 b Fs(6)150 4726 y Fp(CCM)25 b Fs(Pro)r(cessor)7
+(:)h(:)f(:)39 b Fs(6)150 4902 y Fp(CCM)25 b Fs(Pro)r(cessor)7
 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fs(28,)27 b(194,)g(196)150
-4814 y Fp(CCSM)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fs(28,)27 b(197,)g(199)150
+4989 y Fp(CCSM)13 b Fa(:)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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fs(209)150
-4902 y(CCSM)22 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(:)39 b Fs(213)150
+5077 y(CCSM)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(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(239)150 4989
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(245)150 5165
 y Fp(CCSM)25 b Fs(con)n(v)n(en)n(tions)12 b Fa(:)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(:)g(:)g(:)g(:)39 b Fs(97)150 5077 y Fp(CDL)7 b
+f(:)g(:)g(:)g(:)g(:)39 b Fs(98)150 5252 y Fp(CDL)7 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(:)34 b Fs(175)150 5165
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(178)150 5340
 y Fm(ceil)10 b Fa(:)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(:)g(:)g(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b
-Fs(148)150 5252 y(ceiling)27 b(function)12 b Fa(:)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(:)39 b Fs(148)150 5340 y(cell)27
-b(metho)r(ds)e(con)n(v)n(en)n(tion)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(:)49
-b Fs(98)2025 299 y(cell-based)26 b(grids)15 b Fa(:)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(63)2025 387
-y Fr(cell_methods)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(98)2025 476 y Fp(CF)25 b Fs(compliance)i(c)n
-(hec)n(k)n(er)9 b Fa(:)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(50)2025 564 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(63,)f(66,)h(97,)g(161)2025 653 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(50)2025 741 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(116)2025 830 y(c)n(har\(\))14 b Fa(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+Fs(151)2025 299 y(ceiling)27 b(function)12 b Fa(:)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(:)f(:)g(:)41
-b Fs(119)2025 918 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(155)2025
-1006 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(207)2025 1095 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(207)2025 1183 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(73)2025 1272 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(71,)g(178)2025
-1360 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(71,)27 b(73)2025 1449 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(71)2025 1537 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(71)2025 1625 y Fr(clang)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fs(151)2025 387 y(cell)26
+b(metho)r(ds)g(con)n(v)n(en)n(tion)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(:)47
+b Fs(100)2025 476 y(cell-based)26 b(grids)15 b Fa(:)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 564
+y Fr(cell_methods)17 b Fa(:)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(100)2025 653 y Fp(CF)25 b Fs(compliance)i(c)n(hec)n
+(k)n(er)9 b Fa(:)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
+741 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(67,)h(98,)g(164)2025 830 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 918 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 1006
+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
+1095 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(158)2025 1183 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 1272 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 1360 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(74)2025
+1449 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 1537 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(72,)27 b(74)2025 1625 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(72)2025 1714 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(72)2025 1802 y(citation)22 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(:)49 b
+Fs(213)2025 1891 y Fr(clang)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(6)2025 1714 y Fr(CLASSIC)27 b Fs(\014les)c Fa(:)13
+b Fs(6)2025 1979 y Fr(CLASSIC)27 b Fs(\014les)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)49
-b Fs(35)2025 1802 y(clien)n(t-serv)n(er)18 b Fa(:)13
+b Fs(35)2025 2068 y(clien)n(t-serv)n(er)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(:)45
-b Fs(32)2025 1891 y(Climate)27 b(and)e(F)-6 b(orecast)27
+b Fs(32)2025 2156 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(66)2025 1979 y(climate)27 b(mo)r(del)c Fa(:)13 b(:)g(:)g(:)h(:)f
+b Fs(67)2025 2245 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(168,)g(205)2025 2068 y(clipping)f(op)r(erators)18
+b(18,)h(29,)g(171,)g(208)2025 2333 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(106)2025
-2156 y Fp(CMIP)8 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fs(108)2025
+2421 y Fp(CMIP)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
-(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(164,)27 b(167)2025
-2245 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 Fs(167,)27 b(170)2025
+2510 y Fp(CMIP5)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fs(213)2025
-2333 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 Fs(217)2025
+2598 y(`)p Fr(cnk_all)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(72)2025 2421 y(`)p Fr(cnk_dmn)p Fs(')10 b Fa(:)15
+Fs(73)2025 2687 y(`)p Fr(cnk_dmn)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 2510 y(`)p Fr(cnk_g2d)p Fs(')10
+g(:)g(:)37 b Fs(74)2025 2775 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
 (:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)37 b Fs(72)2025 2598 y(`)p Fr(cnk_g3d)p
+g(:)g(:)g(:)g(:)37 b Fs(73)2025 2864 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(72)2025 2687 y(`)p Fr(cnk_lfp)p
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(73)2025 2952 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
 (:)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 2775 y Fm(cnk)p
-2148 2775 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 Fs(74)2025 3041 y Fm(cnk)p
+2148 3041 V 33 w(map)22 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(:)46 b Fs(73)2025
-2864 y(`)p Fr(cnk_prd)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 Fs(74)2025
+3129 y(`)p Fr(cnk_prd)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 2952 y(`)p Fr(cnk_rd1)p Fs(')10 b Fa(:)15
+Fs(74)2025 3217 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 3041 y(`)p Fr(cnk_scl)p Fs(')10
+g(:)g(:)37 b Fs(73)2025 3306 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(73)2025 3129 y(`)p Fr(cnk_xpl)p
+g(:)g(:)g(:)g(:)37 b Fs(74)2025 3394 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(72)2025 3217 y(`)p Fr(cnk_xst)p
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(74)2025 3483 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 3571 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(72,)27 b(73)2025 3306 y(Comeau)17 b Fa(:)d(:)g(:)f(:)g
+(:)g(:)43 b Fs(73,)27 b(74)2025 3660 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 3394 y(command)26 b(line)g(options)c
+(:)45 b Fs(6)2025 3748 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(26)2025 3483
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(27)2025 3836
 y(command)26 b(line)g(switc)n(hes)d Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)49 b Fs(15,)26 b(25,)h(30,)g(101)2025
-3571 y(commen)n(ts)16 b Fa(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)h(:)49 b Fs(15,)26 b(25,)h(30,)g(103)2025
+3925 y(commen)n(ts)16 b Fa(:)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(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fs(103)2025 3660 y Fr(como)7
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fs(105)2025 4013 y Fr(como)7
 b Fa(:)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 Fs(6)2025
-3748 y(Compaq)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+4102 y(Compaq)14 b Fa(:)g(:)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(:)41 b Fs(6)2025
-3836 y(comparator)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+4190 y(comparator)9 b Fa(:)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(:)g(:)36 b Fs(203)2025 3925 y(compatabilit)n(y)9
+f(:)g(:)g(:)g(:)g(:)g(:)36 b Fs(206)2025 4279 y(compatabilit)n(y)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(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)36 b Fs(6)2025 4013 y(compilers)11 b Fa(:)j(:)f(:)g(:)g(:)h(:)f(:)g
+g(:)36 b Fs(6)2025 4367 y(compilers)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(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
-b Fs(30)2025 4102 y(complemen)n(tary)26 b(error)g(function)7
+b Fs(30)2025 4456 y(complemen)n(tary)26 b(error)g(function)7
 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)34 b Fs(148)2025 4190 y(compliance)27 b(c)n(hec)n(k)n(er)18
+(:)34 b Fs(151)2025 4544 y(compliance)27 b(c)n(hec)n(k)n(er)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(:)f(:)g(:)g(:)46 b Fs(50)2025
-4279 y(compression)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(51)2025
+4632 y(compression)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(:)g(:)h(:)f(:)g(:)
-g(:)g(:)48 b Fs(75,)27 b(178)2025 4367 y(concatenation)17
+g(:)g(:)48 b Fs(77,)27 b(181)2025 4721 y(concatenation)17
 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)44 b Fs(17,)27 b(167,)g(189,)g(196)2025 4456
+h(:)f(:)44 b Fs(17,)27 b(170,)g(192,)g(199)2025 4809
 y(conditional)g(Op)r(erator)20 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(:)47
-b Fs(106)2025 4544 y Fr(config.guess)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fs(108)2025 4898 y Fr(config.guess)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(14)2025 4632
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fs(14)2025 4986
 y Fr(configure.eg)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(14)2025 4721 y(constrain)n(t)26
+(:)g(:)g(:)g(:)h(:)45 b Fs(14)2025 5075 y(constrain)n(t)26
 b(expressions)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(:)49
-b Fs(33)2025 4809 y(con)n(ten)n(ts)15 b Fa(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(33)2025 5163 y(con)n(ten)n(ts)15 b Fa(:)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(:)f(:)42
-b Fs(5)2025 4898 y(con)n(tributing)12 b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(5)2025 5252 y(con)n(tributing)12 b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)h
 (:)f(:)g(:)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(207)2025
-4986 y(con)n(tributors)14 b Fa(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fs(211)2025
+5340 y(con)n(tributors)14 b Fa(:)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(:)41 b Fs(207)2025 5075 y(co)r(ordinate)27
-b(limits)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(:)f(:)g(:)g(:)49
-b Fs(54)2025 5163 y(co)r(ordinate)27 b(v)l(ariable)7
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34
-b Fs(65,)26 b(82,)h(98,)g(161,)g(203)2025 5252 y(co)r(ordinate)g(v)l
-(ariables)20 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(:)46
-b Fs(199)2025 5340 y Fr(coordinates)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(63,)27 b(98)p eop end
-%%Page: 254 260
-TeXDict begin 254 259 bop 150 -116 a FD(254)2582 b FC(NCO)30
-b FD(4.4.4)j(User)d(Guide)150 299 y Fs(co)r(ordinates)10
+h(:)f(:)g(:)g(:)g(:)g(:)41 b Fs(211)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.5)j(User)d(Guide)150 299 y Fs(co)r(ordinate)d(limits)c
+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(:)49
+b Fs(55)150 387 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(66,)27
+b(84,)g(100,)g(164,)g(206)150 475 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(202)150
+563 y Fr(coordinates)9 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(:)35 b Fs(64,)27 b(100)150 651 y(co)r(ordinates)10
 b Fa(:)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(234)150 387 y(co)r(ordinates)27 b(con)n(v)n(en)n(tion)8
-b Fa(:)k(:)h(:)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(98)150 475 y(co)r(ordinates,)27
+(:)36 b Fs(239)150 739 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(100)150 828 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(235)150 563 y(core)26 b(dump)9 b Fa(:)j(:)h(:)h(:)f(:)g(:)g(:)g(:)g
+Fs(240)150 916 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
-651 y Fr(core)27 b(dump)21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+1004 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(184)150 739 y Fm(cos)15
+h(:)f(:)g(:)g(:)g(:)47 b Fs(21,)27 b(187)150 1092 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(148)150 828
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Fs(151)150 1180
 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(148)150
-916 y(cosine)27 b(function)18 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)35 b Fs(151)150
+1268 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(148)150 1004 y(co)n(v)l(ariance)11
+g(:)h(:)f(:)g(:)g(:)45 b Fs(151)150 1356 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(147)150 1092 y Fr(cp)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h
+(:)g(:)38 b Fs(150)150 1444 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(:)
 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 1180 y(Cra)n(y)11 b Fa(:)i(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)37 b Fs(41)150 1532 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 1268 y Fr(csh)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(6,)26 b(21)150 1621 y Fr(csh)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(44)150 1356 y(Csh)26 b(shell)15 b Fa(:)f(:)f(:)g(:)g(:)g
+(:)g(:)34 b Fs(45)150 1709 y(Csh)26 b(shell)15 b Fa(:)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(181)150 1444 y Fr(cxx)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(184)150 1797 y Fr(cxx)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 1532 y(Cygwin)10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)37 b Fs(6)150 1885 y(Cygwin)10 b Fa(:)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 1787 y FB(D)150 1905 y Fs(daily)26 b(data)19
+b Fs(8)150 2139 y FB(D)150 2257 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
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)45
-b Fs(211,)27 b(212)150 1993 y(Daniel)f(Baumann)21 b Fa(:)13
+b Fs(215,)27 b(216)150 2345 y(Daniel)f(Baumann)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(:)47 b Fs(208)150
-2081 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 Fs(212)150
+2433 y(Daniel)26 b(W)-6 b(ang)18 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(:)45 b Fs(207)150 2169 y
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(211)150 2521 y
 Fp(D)n(AP)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(:)h(:)f(:)g(:)g(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b
-Fs(32)150 2257 y(data)26 b(access)h(proto)r(col)18 b
+Fs(32)150 2609 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
-2345 y(data)26 b(safet)n(y)d Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+2698 y(data)26 b(safet)n(y)d 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(:)49 b Fs(15,)27 b(198)150 2433 y(data,)f(missing)21
+h(:)f(:)g(:)g(:)49 b Fs(15,)27 b(201)150 2786 y(data,)f(missing)21
 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(:)46
-b Fs(69,)27 b(153)150 2521 y Fr(date)c Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+b Fs(70,)27 b(156)150 2874 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(97)150 2609 y Fr(datesec)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)
+49 b Fs(98)150 2962 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(97)150 2698 y Fm(dbg)p 279 2698 24 4 v 34 w(lvl)12
+b Fs(98)150 3050 y Fm(dbg)p 279 3050 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(13,)27 b(22,)f(26)150 2786 y Fp(DDRA)9 b Fa(:)k(:)g(:)g(:)g(:)h(:)
+b Fs(13,)27 b(22,)f(26)150 3138 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(209)150 2874 y(Debian)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(213)150 3226 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 2962 y Fm(debug-lev)n(el)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fs(12)150 3314 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(13,)26 b(22)150
-3050 y(debugging)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+3402 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 3138 y Fp(DEC)9 b Fa(:)k(:)g(:)h(:)f
+(:)38 b Fs(13,)27 b(22,)f(26)150 3491 y Fp(DEC)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)36 b Fs(6)150 3226 y Fr(defdim\(\))10
+(:)g(:)h(:)f(:)g(:)36 b Fs(6)150 3579 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(107)150 3314 y(de\014ning)25 b(dimensions)i(in)e
+g(:)g(:)g(:)37 b Fs(109)150 3667 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(107)150 3402 y(de\015ation)17
+(:)h(:)f(:)g(:)g(:)33 b Fs(109)150 3755 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(75,)h(178)150 3491 y(degenerate)f(dimension)9
-b Fa(:)k(:)h(:)35 b Fs(73,)27 b(85,)f(148,)h(161,)h(169,)f(170,)304
-3578 y(193,)g(194,)g(202,)g(205)150 3666 y(delete)f(\(groups\))19
+b Fs(10,)26 b(77,)h(181)150 3843 y(degenerate)f(dimension)9
+b Fa(:)k(:)h(:)35 b Fs(74,)27 b(87,)f(151,)h(164,)h(172,)f(173,)304
+3930 y(196,)g(197,)g(205,)g(208)150 4018 y(delete)f(\(groups\))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(:)g(:)g(:)g(:)g(:)g(:)g(:)46
-b Fs(45)150 3754 y Fr(delete_miss\(\))14 b Fa(:)i(:)d(:)h(:)f(:)g(:)g
+b Fs(46)150 4106 y Fr(delete_miss\(\))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(116)150 3842 y(demotion)13
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(118)150 4195 y(demotion)13
 b Fa(:)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 Fs(87)150 3930 y(Dennis)25 b(Heim)n(bigner)18
+(:)g(:)g(:)h(:)39 b Fs(88)150 4283 y(Dennis)25 b(Heim)n(bigner)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(:)44 b Fs(207)150
-4018 y(deriv)n(ed)25 b(\014elds)15 b Fa(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)44 b Fs(211)150
+4371 y(deriv)n(ed)25 b(\014elds)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(:)g(:)g(:)g(:)42 b Fs(102)150 4106 y(digest)20
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(104)150 4459 y(digest)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(:)g(:)g(:)g(:)46 b Fs(76)150 4195 y(Digital)24
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)46 b Fs(77)150 4547 y(Digital)24
 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(:)49 b Fs(6)150 4283 y(dimension)26
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b Fs(6)150 4635 y(dimension)26
 b(limits)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(:)39
-b Fs(54)150 4371 y(dimension)26 b(names)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g
+b Fs(55)150 4723 y(dimension)26 b(names)17 b Fa(:)d(:)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(:)44 b Fs(198)150 4459 y(dimension)26
+g(:)g(:)g(:)g(:)g(:)44 b Fs(201)150 4811 y(dimension)26
 b(order)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)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(221)150 4547 y(dimensions,)27 b(gro)n(wing)16 b
+b Fs(226)150 4899 y(dimensions,)27 b(gro)n(wing)16 b
 Fa(:)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(:)43 b Fs(146)150 4635
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fs(149)150 4988
 y(disaggregate)13 b Fa(:)j(:)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(:)39 b Fs(48)150 4723 y(disjoin)n(t)26
+g(:)g(:)h(:)f(:)g(:)39 b Fs(49)150 5076 y(disjoin)n(t)26
 b(\014les)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(:)45 b Fs(17)150 4811 y(diskless)26
+(:)g(:)g(:)g(:)h(:)45 b Fs(17)150 5164 y(diskless)26
 b(\014les)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(:)g(:)h(:)
-f(:)g(:)g(:)g(:)44 b Fs(78)150 4899 y(dismem)n(b)r(er)22
+f(:)g(:)g(:)g(:)44 b Fs(79)150 5252 y(dismem)n(b)r(er)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(:)48 b Fs(48)150 4988 y(Distributed)25 b(Data)h(Reduction)f(&)g
-(Analysis)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(209)150
-5076 y(Distributed)25 b(Oceanographic)i(Data)f(System)17
-b Fa(:)12 b(:)h(:)g(:)h(:)f(:)g(:)43 b Fs(32)150 5164
-y Fr(divide)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(159)150 5252
-y(dividing)26 b(data)12 b Fa(:)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(:)39 b Fs(159)150 5340 y(division)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(:)47 b Fs(148)2025 299 y(`)p Fr(dmn)p Fs(')22
+g(:)g(:)48 b Fs(49)150 5340 y(Distributed)25 b(Data)h(Reduction)f(&)g
+(Analysis)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(213)2025
+299 y(Distributed)25 b(Oceanographic)i(Data)f(System)17
+b Fa(:)12 b(:)h(:)g(:)g(:)h(:)f(:)43 b Fs(32)2025 387
+y Fr(divide)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(162)2025 474
+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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)39 b Fs(162)2025 562 y(division)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(:)47 b Fs(151)2025 650 y(`)p Fr(dmn)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 387 y(do)r(cumen)n
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(74)2025 738 y(do)r(cumen)n
 (tation)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(:)
-g(:)g(:)g(:)34 b Fs(5)2025 474 y Fp(DODS)6 b Fa(:)13
+g(:)g(:)g(:)34 b Fs(5)2025 826 y Fp(DODS)6 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(:)32 b Fs(32,)27 b(35)2025 562 y Fr(DODS_ROOT)9
+g(:)h(:)32 b Fs(32,)27 b(35)2025 913 y Fr(DODS_ROOT)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(32)2025 650 y(dot)25 b(pro)r(duct)18
+f(:)g(:)g(:)36 b Fs(32)2025 1001 y(dot)25 b(pro)r(duct)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(:)
-45 b Fs(204)2025 738 y(double\(\))9 b Fa(:)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(119)2025 826 y(double-precision)15 b Fa(:)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(150)2025 913 y Fr(dsort)18
+45 b Fs(207)2025 1089 y(double\(\))9 b Fa(:)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 1177 y(double-precision)15 b Fa(:)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 1265 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(122)2025 1001 y(duration)9
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(125)2025 1352 y(duration)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(:)35 b Fs(58)2025 1089 y(dynamic)25
+(:)g(:)g(:)g(:)h(:)35 b Fs(59)2025 1440 y(dynamic)25
 b(linking)d 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(:)49 b Fs(9)2025 1342 y FB(E)2025 1459 y Fs(Ed)25 b(Hartnett)12
+g(:)49 b Fs(9)2025 1693 y FB(E)2025 1810 y Fs(Ed)25 b(Hartnett)12
 b Fa(:)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(207)2025 1547 y(Ed)25 b(Hill)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(211)2025 1898 y(Ed)25 b(Hill)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(208)2025 1635 y(eddy)24 b(co)n(v)l(ariance)e Fa(:)13
+b Fs(212)2025 1986 y(eddy)24 b(co)n(v)l(ariance)e 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(:)47 b Fs(147)2025
-1722 y(editing)26 b(attributes)11 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)47 b Fs(150)2025
+2073 y(editing)26 b(attributes)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(:)38 b Fs(153)2025 1810 y Fr(egrep)21 b Fa(:)13
+g(:)g(:)g(:)38 b Fs(156)2025 2161 y Fr(egrep)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(43)2025 1898 y(Elliptic)27
+g(:)g(:)h(:)f(:)g(:)46 b Fs(43)2025 2249 y(Elliptic)27
 b(in)n(tegrals)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
-(:)36 b Fs(132)2025 1986 y(ensem)n(ble)23 b Fa(:)13 b(:)g(:)g(:)g(:)g
+(:)36 b Fs(135)2025 2337 y(ensem)n(ble)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(:)49 b Fs(18,)27
-b(164)2025 2073 y(ensem)n(ble)f(a)n(v)n(erage)15 b Fa(:)f(:)f(:)g(:)g
+b(167)2025 2425 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(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(164)2025 2161 y(ensem)n(ble)26
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(167)2025 2512 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(167)2025
-2249 y Fm(erf)28 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(170)2025
+2600 y Fm(erf)28 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(:)h(:)f(:)40
-b Fs(148)2025 2337 y Fm(erfc)23 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(151)2025 2688 y Fm(erfc)23 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(:)45
-b Fs(148)2025 2425 y(Eric)26 b(Blak)n(e)9 b Fa(:)14 b(:)f(:)g(:)g(:)g
+b Fs(151)2025 2776 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(208)2025 2512 y(error)26 b(function)21 b Fa(:)13
+b Fs(212)2025 2864 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(148)2025 2600 y(error)26 b(tolerance)9 b Fa(:)14
+b Fs(151)2025 2951 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 2688 y(Etienne)25 b(T)-6 b(ourign)n(y)11
+b Fs(15)2025 3039 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(209)2025 2776 y(exclusion)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+Fs(213)2025 3127 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(183,)g(184)2025 2864 y(execution)e(time)e
+g(:)g(:)h(:)34 b Fs(40,)27 b(186,)g(187)2025 3215 y(execution)e(time)e
 Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)50
-b Fs(9,)26 b(16,)h(24,)f(25,)h(70,)g(198)2025 2951 y
+b Fs(9,)26 b(16,)h(24,)f(25,)h(71,)g(201)2025 3303 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(148)2025
-3039 y(exp)r(onen)n(t)16 b Fa(:)c(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(151)2025
+3390 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(93)2025
-3127 y(exp)r(onen)n(tiation)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(95)2025
+3478 y(exp)r(onen)n(tiation)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(:)48 b Fs(148)2025 3215 y(exp)r(onen)n(tiation)25
+g(:)g(:)g(:)g(:)g(:)48 b Fs(151)2025 3566 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(148)2025
-3303 y(expressions)14 b Fa(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(151)2025
+3654 y(expressions)14 b Fa(:)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(103)2025 3390 y(extended)24
+g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(105)2025 3742 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)2025 3478 y(extended)24 b(regular)j(expressions)16
-b Fa(:)e(:)f(:)h(:)f(:)43 b Fs(20,)27 b(43,)f(147,)h(153,)2178
-3565 y(157)2025 3653 y(extraction)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(37)2025 3829 y(extended)24 b(regular)j(expressions)16
+b Fa(:)e(:)f(:)h(:)f(:)43 b Fs(20,)27 b(43,)f(150,)h(156,)2178
+3917 y(160)2025 4004 y(extraction)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(:)35 b Fs(40,)27 b(183,)g(184)2025 3906 y FB(F)2025
-4023 y Fr(f90)10 b Fa(:)j(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)35 b Fs(40,)27 b(186,)g(187)2025 4257 y FB(F)2025
+4374 y Fr(f90)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(8)2025 4111 y(features,)27 b(requesting)13 b Fa(:)g(:)g(:)g(:)g(:)
+b Fs(8)2025 4462 y(features,)27 b(requesting)13 b Fa(:)g(:)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(:)39 b Fs(13)2025 4199 y(File)26
+(:)g(:)h(:)f(:)g(:)g(:)39 b Fs(13)2025 4550 y(File)26
 b(bu\013ers)14 b Fa(:)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(:)41 b Fs(77)2025 4286 y(\014le)26
+g(:)h(:)f(:)g(:)g(:)41 b Fs(79)2025 4638 y(\014le)26
 b(com)n(bination)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(:)45 b Fs(213)2025 4374 y(\014le)26 b(deletion)9 b
+h(:)45 b Fs(217)2025 4725 y(\014le)26 b(deletion)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(:)g(:)g(:)
-h(:)35 b Fs(34)2025 4462 y(\014le)26 b(m)n(ultiplication)8
+h(:)35 b Fs(35)2025 4813 y(\014le)26 b(m)n(ultiplication)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(:)35
-b Fs(172)2025 4550 y(\014le)26 b(remo)n(v)l(al)11 b Fa(:)i(:)g(:)g(:)g
+b Fs(175)2025 4901 y(\014le)26 b(remo)n(v)l(al)11 b Fa(:)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(:)37
-b Fs(34)2025 4638 y(\014le)26 b(reten)n(tion)8 b Fa(:)k(:)i(:)f(:)g(:)g
+b Fs(35)2025 4989 y(\014le)26 b(reten)n(tion)8 b Fa(:)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(:)g(:)h(:)f(:)34 b
-Fs(34)2025 4725 y(\014les,)26 b(m)n(ultiple)12 b Fa(:)h(:)h(:)f(:)g(:)g
+Fs(35)2025 5077 y(\014les,)26 b(m)n(ultiple)12 b Fa(:)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(:)38 b Fs(28)2025
-4813 y(\014les,)26 b(n)n(umerous)f(input)d Fa(:)13 b(:)g(:)g(:)g(:)h(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(29)2025
+5164 y(\014les,)26 b(n)n(umerous)f(input)d 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(:)49 b Fs(19)2025 4901 y(Filip)r(e)26 b(F)-6
+(:)g(:)g(:)49 b Fs(19)2025 5252 y(Filip)r(e)26 b(F)-6
 b(ernandes)8 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(:)34
-b Fs(208)2025 4989 y(\014lters)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(212)2025 5340 y(\014lters)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(:)h(:)f(:)48
-b Fs(181)2025 5077 y(\014ndgen-equiv)l(alen)n(t)16 b
-Fa(:)11 b(:)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(:)43 b Fs(108)2025
-5164 y(\014x)25 b(record)h(dimension)c Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50 b Fs(167,)27 b(169,)g(176)2025
-5252 y(\014xed)d(dimension)d Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(167,)28 b(169,)f(175,)g(176)2025
-5340 y(\015ags)7 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(:)34
-b Fs(147)p eop end
-%%Page: 255 261
-TeXDict begin 255 260 bop 150 -116 a FD(General)31 b(Index)2902
-b(255)150 299 y Fs(\015atten)25 b(\(groups\))9 b Fa(:)k(:)g(:)g(:)h(:)f
+b Fs(184)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(\014ndgen-equiv)l(alen)n(t)16 b Fa(:)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 387 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
+475 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
+563 y(\015ags)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(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b
+Fs(149)150 651 y(\015atten)25 b(\(groups\))9 b Fa(:)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(45)150 387
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(46)150 739
 y(\015attening)9 b Fa(:)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 475 y
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(39)150 828 y
 Fr(float)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(150)150 563
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(153)150 916
 y(\015oat\(\))11 b Fa(:)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(119)150
-651 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 Fs(121)150
+1004 y Fm(\015o)r(or)26 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(:)47
-b Fs(148)150 739 y(\015o)r(or)26 b(function)9 b Fa(:)k(:)h(:)f(:)g(:)g
+b Fs(151)150 1092 y(\015o)r(or)26 b(function)9 b Fa(:)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(148)150
-828 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 Fs(151)150
+1180 y(`)p Fr(flt_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(187)150
-916 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 Fs(190)150
+1268 y(`)p Fr(flt_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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(187)150
-1004 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 Fs(190)150
+1356 y(for\(\))23 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(:)49 b
-Fs(121)150 1092 y(force)27 b(app)r(end)21 b Fa(:)13 b(:)g(:)g(:)g(:)g
+Fs(124)150 1444 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(95)150
-1180 y(force)27 b(o)n(v)n(erwrite)7 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(97)150
+1532 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(95)150 1268 y(forew)n(ord)9
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33 b Fs(97)150 1621 y(forew)n(ord)9
 b Fa(:)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 1356 y(F)-6 b(ortran)17
+f(:)g(:)g(:)g(:)g(:)g(:)36 b Fs(1)150 1709 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(89,)27 b(194,)g(196)150 1444 y(F)-6 b(ortran)26
+b Fs(91,)27 b(197,)g(199)150 1797 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(53)150 1532 y Fm(F)n(OR)-6 b(TRAN)p 542 1532 24
+b Fs(54)150 1885 y Fm(F)n(OR)-6 b(TRAN)p 542 1885 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 1621 y(F)-6 b(rancesco)27 b(Lo)n(v)n(ergine)17
+b Fs(24)150 1973 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(208)150 1709
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(212)150 2061
 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 1797 y Fp(FTP)11 b Fa(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b(30)150 2149 y Fp(FTP)11 b Fa(:)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 Fs(35)150 1885 y(funding)23 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(35)150 2237 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(209)150 2139 y FB(G)150 2257 y Fr(g++)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)
+Fs(213)150 2492 y FB(G)150 2609 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 2345 y Fr(g++)10 b Fa(:)k(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)37 b Fs(6)150 2698 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(8)150 2433 y(`)p Fr(g2d)p
+(:)g(:)g(:)g(:)g(:)37 b Fs(8)150 2786 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(72)150
-2521 y(`)p Fr(g3d)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(:)47 b Fs(73)150
+2874 y(`)p Fr(g3d)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(72)150 2609 y Fp(GA)n(G)18 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(73)150 2962 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(167)150 2698 y Fm(gamma)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(170)150 3050 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(148)150 2786 y(gamma)h(function)19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)
+b(151)150 3138 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(131,)27 b(148)150 2874 y(Gary)f(Strand)7 b
+(:)45 b Fs(134,)27 b(151)150 3226 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(208)150 2962 y(Gaussian)27 b(w)n(eigh)n(ts)14
+34 b Fs(212)150 3314 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(205)150 3050 y(Ga)n(vin)26 b(Burris)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)h
+Fs(208)150 3402 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(208)150 3138
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(212)150 3491
 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(208)150 3226 y Fr(gcc)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(212)150 3579 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 3314 y Fr(gcc)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)37 b Fs(6)150 3667 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(8)150 3402 y Fp(GCM)22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+(:)g(:)37 b Fs(8)150 3755 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(92)150 3491 y(geographical)i(w)n(eigh)n(t)7
+b Fs(15,)26 b(93)150 3843 y(geographical)i(w)n(eigh)n(t)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(:)h(:)33 b Fs(228)150
-3579 y(George)27 b(Shapa)n(v)l(alo)n(v)19 b Fa(:)13 b(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(233)150
+3931 y(George)27 b(Shapa)n(v)l(alo)n(v)19 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(:)46 b Fs(208)150 3667 y(George)27 b(Shap)r(o)n(v)l(alo)n
+f(:)g(:)g(:)g(:)46 b Fs(212)150 4019 y(George)27 b(Shap)r(o)n(v)l(alo)n
 (v)18 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(:)45
-b Fs(208)150 3755 y(George)27 b(White)18 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)
+b Fs(212)150 4107 y(George)27 b(White)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(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fs(208)150 3843
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fs(212)150 4195
 y Fr(get_miss\(\))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(116)150 3931 y Fr(gethostname)7
+(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(118)150 4284 y Fr(gethostname)7
 b Fa(:)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(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)33 b Fs(8)150 4019 y Fr(getopt)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g
+g(:)h(:)33 b Fs(8)150 4372 y Fr(getopt)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(27)150 4107 y Fr(getopt.h)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(27)150 4460 y Fr(getopt.h)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(27)150 4195 y Fr(getopt_long)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+Fs(27)150 4548 y Fr(getopt_long)24 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(:)48 b Fs(27)150 4284
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fs(27)150 4636
 y Fr(getuid)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(8)150
-4372 y(Glenn)26 b(Da)n(vis)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+4724 y(Glenn)26 b(Da)n(vis)11 b Fa(:)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(207)150 4460 y Fr(global)27
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(211)150 4812 y Fr(global)27
 b Fs(attribute)11 b Fa(:)i(:)g(:)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(156,)27 b(199)150 4548 y(global)g(attributes)15
-b Fa(:)e(:)h(:)f(:)g(:)42 b Fs(20,)26 b(95,)h(96,)g(99,)f(154,)i(156,)f
-(173,)304 4635 y(174,)g(183,)g(199,)g(200)150 4723 y(globbing)c
-Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fs(20,)26 b(28,)h(44,)g(147,)g(160,)g(194,)g(196)150
-4811 y Fp(GNU)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(160,)27 b(202)150 4900 y(global)g(attributes)11
+b Fa(:)i(:)g(:)38 b Fs(20,)26 b(97,)h(101,)g(157,)g(160,)h(176,)f(177,)
+304 4988 y(186,)g(202,)g(203)150 5076 y(globbing)c Fa(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fs(20,)26
+b(28,)h(45,)g(150,)g(163,)g(197,)g(199)150 5164 y Fp(GNU)9
+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(:)36 b Fs(27,)26 b(43)150 5252 y Fr(gnu-win32)12
+b Fa(:)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(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)38 b Fs(8)150 5340 y Fp(GNU)p Fs(/Lin)n(ux)7
+b Fa(:)12 b(:)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(:)33 b Fs(21)2025 299 y Fr(GNUmakefile)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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fs(27,)26 b(43)150
-4899 y Fr(gnu-win32)12 b Fa(:)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(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(8)150 4988
-y Fp(GNU)p Fs(/Lin)n(ux)7 b Fa(:)12 b(:)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(:)33 b Fs(21)150 5076
-y Fr(GNUmakefile)7 b Fa(:)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(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(8)150 5164 y(Go)r(d)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(:)g(:)g(:)g(:)h(:)f(:)g(:)38 b Fs(67)150 5252
-y Fr(grep)27 b(-E)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(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)48 b Fs(43)150
-5340 y(group)26 b(aggregation)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48
-b Fs(167,)27 b(215)2025 299 y(group)f(names)21 b Fa(:)14
+34 b Fs(8)2025 387 y(Go)r(d)12 b Fa(:)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(68)2025 475 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(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42 b
+Fs(217)2025 563 y Fr(grep)26 b(-E)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(:)48
+b Fs(43)2025 651 y(group)26 b(aggregation)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(:)
+49 b Fs(170,)27 b(219)2025 739 y(group)f(names)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(198)2025 386 y(group)26 b(path)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(201)2025 827 y(group)26 b(path)17 b Fa(:)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(45)2025
-474 y(group,)26 b(aggregation)7 b Fa(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fs(46)2025
+915 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)34 b Fs(226)2025 562 y(group,)26 b(anomaly)8
+g(:)g(:)34 b Fs(231)2025 1003 y(group,)26 b(anomaly)8
 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(:)35
-b Fs(226)2025 649 y(group,)26 b(dimension)g(p)r(erm)n(utation)17
+b Fs(231)2025 1091 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(226)2025 737 y(group,)26 b(spatial)h(a)n(v)n(eraging)21
+b Fs(231)2025 1179 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(226)2025 824 y(group,)26
+(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(231)2025 1268 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(226)2025
-912 y(group,)26 b(temp)r(oral)g(a)n(v)n(eraging)15 b
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49 b Fs(231)2025
+1356 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(226)2025 1000 y(groups)11 b Fa(:)i(:)g(:)g(:)h(:)f
+(:)g(:)g(:)42 b Fs(231)2025 1444 y(groups)11 b Fa(:)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(157)2025 1087 y(groups,)f(a)n(v)n(eraging)10
+b Fs(10,)27 b(160)2025 1532 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(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b
-Fs(220)2025 1175 y(groups,)26 b(creating)17 b Fa(:)d(:)f(:)h(:)f(:)g(:)
+Fs(225)2025 1620 y(groups,)26 b(creating)17 b Fa(:)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(215)2025 1262 y(groups,)26
+(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(219)2025 1708 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)42 b Fs(47)2025 1350 y(groups,)26 b(renaming)15 b
+g(:)42 b Fs(48)2025 1796 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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)41
-b Fs(47)2025 1438 y(gro)n(wing)27 b(dimensions)9 b Fa(:)14
+b Fs(48)2025 1884 y(gro)n(wing)27 b(dimensions)9 b Fa(:)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(146)2025 1525
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)36 b Fs(149)2025 1972
 y Fp(GSL)8 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(:)34 b Fs(7,)27 b(131,)g(139)2025 1613
-y Fm(gsl)p 2119 1613 V 35 w(sf)p 2207 1613 V 34 w(b)r(essel)p
-2435 1613 V 35 w(Jn)8 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)34 b Fs(7,)27 b(134,)g(142)2025 2060
+y Fm(gsl)p 2119 2060 V 35 w(sf)p 2207 2060 V 34 w(b)r(essel)p
+2435 2060 V 35 w(Jn)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(:)h(:)f(:)
-g(:)g(:)g(:)35 b Fs(132)2025 1700 y Fm(gsl)p 2119 1700
-V 35 w(sf)p 2207 1700 V 34 w(gamma)8 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)35 b Fs(134)2025 2148 y Fm(gsl)p 2119 2148
+V 35 w(sf)p 2207 2148 V 34 w(gamma)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(:)g(:)g(:)g(:)g(:)35 b Fs(131)2025 1788
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(134)2025 2236
 y Fr(gsl_sf_legendre_Pl)22 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(:)45
-b Fs(133)2025 1876 y Fr(gw)15 b Fa(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(135)2025 2324 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(97,)27 b(205)2025 2129 y FB(H)2025 2246 y Fp(H4CF)8
+b Fs(98,)27 b(208)2025 2580 y FB(H)2025 2698 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 2334
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35 b Fs(12)2025 2786
 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 2421
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(12)2025 2874
 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(207)2025 2509 y(hash)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)43 b Fs(211)2025 2962 y(hash)7 b Fa(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)33 b Fs(76)2025 2597 y Fp(HDF)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)33 b Fs(77)2025 3050 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(175,)g(209)2025
-2684 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(:)34 b Fs(9,)26 b(35,)h(178,)g(213)2025
+3138 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(81)2025 2772 y Fr(hdf_name)12
+g(:)g(:)h(:)f(:)g(:)g(:)38 b Fs(82)2025 3227 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 2859 y Fp(HDF4)11 b Fa(:)i(:)g(:)g(:)g
+(:)g(:)g(:)g(:)39 b Fs(12)2025 3315 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(175)2025 2947 y Fp(HDF5)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fs(11,)27 b(178)2025 3403 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 3035 y Fr(hdp)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)33 b Fs(10)2025 3491 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(175)2025 3122 y(help)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(178)2025 3579 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)2025 3210 y(Henry)24 b(Buto)n(wsky)f Fa(:)14
+b Fs(13)2025 3667 y(Henry)24 b(Buto)n(wsky)f 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(:)50 b Fs(207)2025
-3297 y(`)p Fr(hgh_byt)p Fs(')8 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)50 b Fs(211)2025
+3755 y(`)p Fr(hgh_byt)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(187)2025
-3385 y(`)p Fr(hgh_sht)p Fs(')8 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(190)2025
+3843 y(`)p Fr(hgh_sht)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(187)2025
-3473 y(hidden)25 b(attributes)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(190)2025
+3931 y(hidden)25 b(attributes)13 b Fa(:)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(:)40 b Fs(175)2025 3560 y(Hierarc)n(hical)27
+g(:)g(:)g(:)40 b Fs(178)2025 4019 y(Hierarc)n(hical)27
 b(Data)f(F)-6 b(ormat)13 b Fa(:)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(9)2025 3648 y Fr(history)8 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(21,)27
-b(30,)f(95,)h(99,)g(153,)g(182)2025 3735 y Fr(hncgen)15
+b Fs(9)2025 4107 y Fr(history)6 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)32 b Fs(21,)27
+b(30,)g(97,)g(101,)g(156,)g(185)2025 4195 y Fr(hncgen)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(175)2025 3823 y Fp(HP)18 b
+(:)f(:)g(:)g(:)g(:)42 b Fs(178)2025 4283 y Fp(HP)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(:)g(:)g(:)
 g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fs(6)2025
-3911 y Fp(HPSS)11 b Fa(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+4371 y Fp(HPSS)11 b Fa(:)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(:)g(:)g(:)g(:)g(:)g(:)38 b
-Fs(31)2025 3998 y Fr(hsi)8 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Fs(31)2025 4459 y Fr(hsi)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(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fs(31)2025 4086 y Fp(HTML)14 b Fa(:)e(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(31)2025 4547 y Fp(HTML)14 b Fa(:)e(:)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(:)f(:)g(:)g(:)g(:)g(:)41
-b Fs(5)2025 4173 y Fp(HTTP)25 b Fs(proto)r(col)c Fa(:)13
+b Fs(5)2025 4635 y Fp(HTTP)25 b Fs(proto)r(col)c 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(:)46
-b Fs(32)2025 4261 y Fr(hyai)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(32)2025 4724 y Fr(hyai)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(97)2025 4348 y Fr(hyam)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(98)2025 4812 y Fr(hyam)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(97)2025 4436 y Fr(hybi)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(98)2025 4900 y Fr(hybi)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(97)2025 4524 y Fr(hybm)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(98)2025 4988 y Fr(hybm)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(97)2025 4611 y(h)n(ybrid)24 b(co)r(ordinate)j(system)15
+b Fs(98)2025 5076 y(h)n(ybrid)24 b(co)r(ordinate)j(system)15
 b Fa(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)42 b Fs(108)2025 4699 y(h)n(yp)r(erb)r(olic)25
+g(:)g(:)g(:)g(:)42 b Fs(110)2025 5164 y(h)n(yp)r(erb)r(olic)25
 b(arccosine)j(function)18 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fs(148)2025 4786
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fs(151)2025 5252
 y(h)n(yp)r(erb)r(olic)25 b(arcsine)i(function)20 b Fa(:)14
 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)47 b Fs(148)2025 4874 y(h)n(yp)r(erb)r(olic)25 b(arctangen)n(t)h
+(:)47 b Fs(151)2025 5340 y(h)n(yp)r(erb)r(olic)25 b(arctangen)n(t)h
 (function)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)36 b Fs(148)2025 4962 y(h)n(yp)r(erb)r(olic)25
-b(cosine)i(function)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(148)2025 5049
-y(h)n(yp)r(erb)r(olic)25 b(sine)h(function)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(:)47 b Fs(148)2025 5137 y(h)n(yp)r(erb)r(olic)25
-b(tangen)n(t)e 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(:)50
-b Fs(148)2025 5224 y(h)n(yp)r(erslab)18 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)45 b Fs(54,)27 b(72,)f(164,)h(167,)h(194,)f(196,)g(202)
-2025 5312 y(h)n(yp)r(erslabs)7 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(:)h(:)f(:)34 b Fs(109)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.4)j(User)d(Guide)150 299 y FB(I)150 416 y Fs(I/O)16
+(:)g(:)g(:)36 b Fs(151)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.5)j(User)d(Guide)150 299 y Fs(h)n(yp)r(erb)r(olic)c(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 387 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
+475 y(h)n(yp)r(erb)r(olic)26 b(tangen)n(t)c 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(:)49 b Fs(151)150 563 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(197,)g(199,)g(205)150 651 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(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)34 b Fs(111)150 905 y FB(I)150 1022 y Fs(I/O)16
 b Fa(:)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(53,)f(60)150 503 y(I/O)f(blo)r(c)n(k)h(size)17
+(:)g(:)43 b Fs(34,)27 b(54,)f(61)150 1110 y(I/O)f(blo)r(c)n(k)h(size)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(:)44
-b Fs(77)150 591 y(I18N)20 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(79)150 1198 y(I18N)20 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(:)46
-b Fs(25)150 678 y Fp(IBM)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(:)g(:)g(:)g(:)g(:)43
-b Fs(6)150 766 y Fr(icc)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 853 y(ID)25 b(Quoting)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(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(151)150
-941 y Fp(IDL)22 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(25)150 1286 y Fp(IBM)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(15)150 1029 y Fp(IEEE)16 b Fa(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
+b Fs(6)150 1374 y Fr(icc)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 1462 y(ID)25 b(Quoting)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(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(153)150
+1550 y Fp(IDL)22 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(:)g(:)h(:)f(:)g(:)48
+b Fs(15)150 1638 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(89)150 1116 y(IEEE)26 b(NaN)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(:)46 b Fs(156)150
-1204 y(if\(\))12 b Fa(:)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(113)150 1291 y Fr(ilimit)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(90)150 1726 y Fp(IEEE)26 b Fs(NaN)10 b Fa(:)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 1814 y(if\(\))12 b Fa(:)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 1902 y Fr(ilimit)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 1379 y(illegal)28 b(names)22 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)
+b Fs(21)150 1990 y(illegal)28 b(names)22 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(:)48 b Fs(12)150
-1466 y(implicit)27 b(con)n(v)n(ersion)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+2078 y(implicit)27 b(con)n(v)n(ersion)8 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(:)34 b Fs(89)150 1554 y Fr(include)12
+h(:)f(:)g(:)g(:)g(:)34 b Fs(90)150 2166 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(122)150 1642 y(including)26 b(\014les)c
+(:)h(:)f(:)g(:)39 b Fs(125)150 2254 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(103)150 1729 y(index)25 b(con)n(v)n(en)n(tion)d
+b Fs(105)150 2342 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(53)150 1817 y(indgen-equiv)l(alen)n(t)10 b Fa(:)i(:)h(:)g(:)g(:)g
+b Fs(54)150 2430 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(108)150 1904 y(inexact)26
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(110)150 2518 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(149)150 1992 y(Info)20 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(152)150 2606 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 2079 y(input)25 b(\014les)15 b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)
+b Fs(5)150 2694 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
-2167 y Fm(input-path)13 b Fa(:)f(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+2782 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(31)150 2255 y(installation)7
+(:)g(:)h(:)f(:)g(:)40 b Fs(28,)26 b(32)150 2870 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 2342 y(in)n(t\(\))c Fa(:)13 b(:)h(:)f(:)g(:)g(:)
+33 b Fs(6,)26 b(14)150 2958 y(in)n(t\(\))c 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(:)h(:)
-49 b Fs(119)150 2430 y(in)n(t64\(\))19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h
+49 b Fs(121)150 3046 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(119)150 2517 y(in)n(tegration)18 b Fa(:)d(:)e(:)g(:)g(:)g(:)g(:)g
+b Fs(121)150 3134 y(in)n(tegration)18 b Fa(:)d(:)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(:)45 b Fs(204)150
-2605 y(in)n(tegrit)n(y)10 b Fa(:)j(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fs(207)150
+3222 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(76)150
-2692 y(In)n(tel)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fs(77)150
+3310 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 2780 y(In)n(ternationalization)9 b Fa(:)14
+b Fs(6)150 3398 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
-2868 y(in)n(terop)r(erabilit)n(y)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)h(:)
+3486 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(81)150 2955 y(in)n(terp)r(olation)7
+(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(82)150 3574 y(in)n(terp)r(olation)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(:)g(:)34
-b Fs(170,)27 b(231)150 3043 y(in)n(tersection)16 b Fa(:)e(:)f(:)g(:)g
+b Fs(173,)27 b(236)150 3662 y(in)n(tersection)16 b Fa(:)e(:)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(:)43 b Fs(40,)26
-b(42)150 3130 y(in)n(tro)r(duction)15 b Fa(:)e(:)h(:)f(:)g(:)g(:)g(:)g
+b(42)150 3750 y(in)n(tro)r(duction)15 b Fa(:)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(:)f(:)g(:)42 b Fs(5)150
-3218 y Fr(invert_map)24 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+3838 y Fr(invert_map)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(122)150 3305 y Fp(IPCC)15
+g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(125)150 3926 y Fp(IPCC)15
 b Fa(:)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(:)42 b Fs(164,)27 b(209)150 3393 y(irregular)g(grids)15
+(:)g(:)42 b Fs(167,)27 b(213)150 4014 y(irregular)g(grids)15
 b Fa(:)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(:)41
-b Fs(127)150 3481 y Fp(ISO)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Fs(130)150 4102 y Fp(ISO)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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)36 b Fs(6)150 3715 y FB(J)150 3832 y Fs(James)27
+g(:)36 b Fs(6)150 4340 y FB(J)150 4457 y Fs(James)27
 b(Gallagher)8 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(:)
-35 b Fs(207)150 3920 y(Jim)26 b(Edw)n(ards)15 b Fa(:)f(:)f(:)g(:)h(:)f
+35 b Fs(211)150 4545 y(Jim)26 b(Edw)n(ards)15 b Fa(:)f(:)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(:)42 b Fs(208)150
-4007 y(Jo)r(e)27 b(Hamman)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(212)150
+4633 y(Jo)r(e)27 b(Hamman)13 b Fa(:)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(:)g(:)h(:)f(:)39 b Fs(207)150 4095 y(John)26
+g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(211)150 4721 y(John)26
 b(Caron)c 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(:)48 b Fs(207)150 4182 y(Juliana)27 b(Rew)10 b
+g(:)g(:)48 b Fs(211)150 4809 y(Juliana)27 b(Rew)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(:)g(:)37
-b Fs(208)150 4417 y FB(K)150 4534 y Fs(Karen)26 b(Sc)n(h)n(uc)n(hardt)
+b Fs(212)150 5046 y FB(K)150 5164 y Fs(Karen)26 b(Sc)n(h)n(uc)n(hardt)
 18 b Fa(:)12 b(:)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(:)45
-b Fs(208)150 4621 y(Keith)25 b(Lindsa)n(y)15 b Fa(:)e(:)g(:)g(:)g(:)g
+b Fs(212)150 5252 y(Keith)25 b(Lindsa)n(y)15 b Fa(:)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(:)41 b Fs(208)150 4709
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fs(212)150 5340
 y(kitc)n(hen)25 b(sink)16 b Fa(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)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(173)150 4797 y(Kyle)25
-b(Wilco)n(x)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(:)38 b Fs(208)150 5048 y FB(L)150 5165 y Fs(L10N)9
-b Fa(:)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(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(25)150 5252 y(large)27
-b(datasets)13 b Fa(:)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(:)40
-b Fs(21,)26 b(26)150 5340 y(Large)h(File)f(Supp)r(ort)10
-b Fa(:)i(:)h(:)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(21,)26 b(39)2025
-299 y Fr(lat_bnds)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)43 b Fs(176)2025 299 y(Kyle)25
+b(Wilco)n(x)11 b Fa(:)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 553 y FB(L)2025 671 y Fs(L10N)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(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(25)2025 759 y(large)27
+b(datasets)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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)39
+b Fs(21,)27 b(26)2025 847 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
+935 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(97)2025 387
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(98)2025 1023
 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 476 y(left)26 b(hand)f(casting)12
+(:)g(:)g(:)41 b Fs(9)2025 1111 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(108)2025
-564 y(Legendre)f(p)r(olynomial)c Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(23,)27 b(110)2025
+1199 y(Legendre)f(p)r(olynomial)c 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(:)48
-b Fs(133)2025 652 y(Lemp)r(el-Ziv)25 b(de\015ation)8
+b Fs(135)2025 1287 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(75)2025
-741 y(Len)25 b(Makin)20 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(:)46 b Fs(208)2025 829 y(lexer)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(:)f(:)45 b Fs(102)2025 917 y(`)p
-Fr(lfp)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 1006 y(LFS)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(77)2025
+1375 y(Len)25 b(Makin)20 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(:)46 b Fs(212)2025 1463
+y(lexer)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(:)f(:)45 b Fs(104)2025
+1551 y(`)p Fr(lfp)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(74)2025 1639 y(LFS)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(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b
-Fs(21,)27 b(39)2025 1094 y Fp(LHS)13 b Fa(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+Fs(21,)27 b(40)2025 1727 y Fp(LHS)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(:)g(:)g(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fs(108)2025 1183 y Fr(libnco)20 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(110)2025 1815 y Fr(libnco)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 1271 y(libraries)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(6)2025 1903 y(libraries)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(:)46
-b Fs(9)2025 1359 y(link)n(ers)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Fs(9)2025 1991 y(link)n(ers)9 b Fa(:)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 1448 y(Lin)n(ux)18 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(30)2025 2079 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(150)2025 1536 y Fp(LL)-8 b(VM)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fs(153)2025 2167 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 1624 y Fm(ln)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)48 b Fs(6)2025 2255 y Fm(ln)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(:)
 h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)42 b Fs(148)2025 1713 y Fr(ln)26 b(-s)12 b Fa(:)h(:)g(:)g(:)g(:)g(:)
+(:)42 b Fs(151)2025 2343 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(160,)27 b(187)2025 1801 y Fm(log)19 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)
+b Fs(163,)27 b(190)2025 2432 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(148)2025 1890 y Fm(log10)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)
+g(:)g(:)39 b Fs(151)2025 2520 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
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-35 b Fs(148)2025 1978 y(logarithm,)27 b(base)f(10)11
+35 b Fs(151)2025 2608 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(148)2025
-2066 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(:)g(:)38 b Fs(151)2025
+2696 y(logarithm,)27 b(natural)13 b Fa(:)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(148)2025 2155 y Fr(lon_bnds)12 b Fa(:)j(:)e(:)g(:)g(:)g
+g(:)g(:)40 b Fs(151)2025 2784 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(97)2025 2243 y Fr(long)26 b(double)9 b Fa(:)15 b(:)e(:)g(:)g(:)g
+b Fs(98)2025 2872 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(150)2025
-2331 y(long)26 b(options)20 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(153)2025
+2960 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(192)2025 2420 y(long-term)f(a)n(v)n(erage)
+f(:)g(:)g(:)46 b Fs(27,)27 b(195)2025 3048 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(218)2025 2508 y(longitude)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(223)2025 3136 y(longitude)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(62)2025 2597 y(Lori)26 b(Sen)n(tman)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
+Fs(63)2025 3224 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(208)2025
-2685 y Fr(lrint\(\).)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(212)2025
+3312 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(89)2025
-2773 y Fr(lround\(\).)9 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(90)2025
+3400 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(89)2025 2862
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(90)2025 3488
 y(Luk)25 b(Claes)16 b Fa(:)e(:)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(:)43 b Fs(208)2025 3101 y FB(M)2025
-3219 y Fs(Macin)n(tosh)15 b Fa(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fs(212)2025 3725 y FB(M)2025
+3843 y Fs(Macin)n(tosh)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(:)g(:)h(:)f(:)42 b Fs(6)2025
-3307 y Fr(Makefile)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+3931 y Fr(Makefile)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(:)39 b Fs(6,)26 b(8,)g(32)2025 3396 y Fr(malloc\(\))12
+g(:)h(:)f(:)g(:)39 b Fs(6,)26 b(8,)g(33)2025 4019 y Fr(malloc\(\))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(23)2025 3484 y(man)n(tissa)23
+(:)g(:)g(:)g(:)39 b Fs(23)2025 4107 y(man)n(tissa)23
 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(:)49 b Fs(93)2025 3573 y(man)n(ual)26 b(t)n(yp)r(e)e(con)
+f(:)g(:)g(:)g(:)49 b Fs(95)2025 4195 y(man)n(ual)26 b(t)n(yp)r(e)e(con)
 n(v)n(ersion)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fs(87)2025
-3661 y(`)p Fr(map_dmn)p Fs(')10 b Fa(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fs(88)2025
+4283 y(`)p Fr(map_dmn)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 3749 y(`)p Fr(map_lfp)p Fs(')10 b Fa(:)15
+Fs(74)2025 4371 y(`)p Fr(map_lfp)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 3838 y(`)p Fr(map_prd)p Fs(')10
+g(:)g(:)37 b Fs(74)2025 4460 y(`)p Fr(map_prd)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 3926 y(`)p Fr(map_rd1)p
+g(:)g(:)g(:)g(:)37 b Fs(74)2025 4548 y(`)p Fr(map_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(73)2025 4014 y(`)p Fr(map_scl)p
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(74)2025 4636 y(`)p Fr(map_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(73)2025 4103 y(`)p Fr(map_xst)p
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(74)2025 4724 y(`)p Fr(map_xst)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 4191 y(Mark)26
+h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(74)2025 4812 y(Mark)26
 b(Flanner)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(:)47 b Fs(208)2025 4280 y(Markus)26 b(Liebig)10
+(:)g(:)47 b Fs(212)2025 4900 y(Markus)26 b(Liebig)10
 b Fa(:)k(:)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(:)37
-b Fs(208)2025 4368 y(Martin)26 b(Dix)12 b Fa(:)g(:)h(:)g(:)h(:)f(:)g(:)
+b Fs(212)2025 4988 y(Martin)26 b(Dix)12 b Fa(:)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(:)38 b Fs(208)2025
-4456 y(Martin)26 b(Otte)12 b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fs(212)2025
+5076 y(Martin)26 b(Otte)12 b Fa(:)h(:)g(:)g(:)g(:)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(209)2025 4545 y(Martin)26
+g(:)h(:)f(:)g(:)g(:)g(:)39 b Fs(213)2025 5164 y(Martin)26
 b(Sc)n(hmidt)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(:)
-46 b Fs(208)2025 4633 y(Martin)26 b(Sc)n(h)n(ultz)20
+46 b Fs(212)2025 5252 y(Martin)26 b(Sc)n(h)n(ultz)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(:)g(:)h(:)f(:)g(:)47
-b Fs(50)2025 4721 y(mask)16 b Fa(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+b Fs(51)2025 5340 y(mask)16 b Fa(:)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(:)43 b Fs(127,)27 b(147)2025
-4810 y(mask)f(condition)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(:)45
-b Fs(203,)27 b(206)2025 4898 y(mask)n(ed)e(a)n(v)n(erage)8
-b Fa(:)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(:)34
-b Fs(202)2025 4986 y(Mass)27 b(Store)e(System)c 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(:)48 b Fs(30)2025
-5075 y(Matej)27 b(V)-6 b(ela)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(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(208)2025 5163
-y(mathematical)27 b(functions)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(:)39
-b Fs(148)2025 5252 y(Matlab)14 b Fa(:)g(:)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(:)41
-b Fs(15)2025 5340 y Fr(max)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
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43 b Fs(130,)27 b(149)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 Fs(mask)26 b(condition)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(:)45 b Fs(206,)27 b(209)150 390 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
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
+b Fs(205)150 481 y(Mass)27 b(Store)f(System)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(:)47 b Fs(30)150
+572 y(Matej)27 b(V)-6 b(ela)17 b Fa(:)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(:)
-34 b Fs(82)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 Fs(max\(\))14 b Fa(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(212)150 663 y(mathematical)27
+b(functions)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(:)39 b Fs(151)150
+754 y(Matlab)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(:)g(:)g(:)g(:)g(:)41 b Fs(15)150
+845 y Fr(max)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(83)150 936 y(max\(\))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(:)
 g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fs(117)150 387 y(maxim)n(um)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
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fs(82)150
-476 y(MD5)26 b(digest)8 b Fa(:)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(76)150 564 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(82)150 652 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(78)150 741 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)33
-b Fs(23)150 829 y(memory)26 b(requiremen)n(ts)c Fa(:)13
+b Fs(119)150 1027 y(maxim)n(um)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(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b
+Fs(83)150 1119 y(MD5)26 b(digest)8 b Fa(:)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(77)150
+1210 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(83)150
+1301 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(79)150 1392 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+33 b Fs(23)150 1483 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(42,)f(78)150 917 y(merging)h(\014les)13
+b Fs(22,)27 b(43,)f(79)150 1574 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(173)150 1006 y(metadata)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+b Fs(17,)27 b(176)150 1665 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(178)150 1094 y(metadata)26 b(optimization)9 b Fa(:)15
+b Fs(181)150 1756 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 1183 y(metadata,)27
+(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fs(25)150 1847 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(168,)27
-b(177)150 1271 y(Mic)n(hael)g(Dec)n(k)n(er)15 b Fa(:)d(:)h(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(171,)27
+b(180)150 1938 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(50)150 1359
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(51)150 2029
 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(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)43 b Fs(93)150 1448 y(Mic)n(hael)27 b(Sc)n(h)n(ulz)19
+h(:)f(:)g(:)g(:)43 b Fs(95)150 2120 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(208)150 1536 y(Microsoft)24 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)
+b Fs(212)150 2211 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 1624 y(Microsoft)i(Visual)e(Studio)12 b Fa(:)g(:)i(:)f(:)g(:)g
+b(7)150 2303 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 1713 y(Mik)n(e)26 b(F)-6 b(olk)21
+g(:)g(:)39 b Fs(7)150 2394 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 1801 y(Mik)n(e)26 b(P)n(age)8
+h(:)f(:)g(:)g(:)48 b Fs(9)150 2485 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(:)g(:)g(:)h(:)f(:)
-g(:)g(:)35 b Fs(208)150 1890 y Fr(min)8 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)35 b Fs(212)150 2576 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(82)150 1978 y(min\(\))21 b Fa(:)14
+(:)g(:)g(:)34 b Fs(83)150 2667 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(117)150 2066 y(minim)n(um)10
+g(:)g(:)g(:)h(:)48 b Fs(119)150 2758 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(82)150 2155 y(missing)27 b(v)l(alues)18
+(:)g(:)h(:)f(:)36 b Fs(83)150 2849 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(69,)27 b(83,)g(153,)g(171,)g(178)150 2243 y(missing)g(v)l(alues)f
+b Fs(70,)27 b(84,)g(156,)g(174,)g(181)150 2940 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(115)150
-2331 y Fr(missing_value)10 b Fa(:)16 b(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(117)150
+3031 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(69,)26 b(79,)h(200)150 2420 y(MKS)e(units)10 b Fa(:)j(:)g(:)g(:)h
+b Fs(70,)26 b(81,)h(203)150 3122 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(65,)26
-b(67)150 2508 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(:)37 b Fs(66,)26
+b(68)150 3213 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(231,)27 b(234)150 2597
+g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(236,)27 b(239)150 3304
 y(mo)r(dulus)8 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(:)34 b Fs(148)150 2685
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)34 b Fs(151)150 3395
 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 2773 y(mon)n(thly)25 b(a)n(v)n(erage)14 b
+b Fs(24)150 3487 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(211,)27 b(228)150
-2862 y(mon)n(thly)e(data)13 b Fa(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(215,)27 b(233)150
+3578 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(211,)27 b(212)150 2950 y(mo)n(v)n(e)e(groups)10
+(:)40 b Fs(215,)27 b(216)150 3669 y(mo)n(v)n(e)e(groups)10
 b Fa(:)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(:)f(:)g(:)g
-(:)36 b Fs(47)150 3038 y(MR)n(O)8 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g
+(:)36 b Fs(48)150 3760 y(MR)n(O)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(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)35
-b Fs(58)150 3127 y Fp(MSA)22 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+b Fs(59)150 3851 y Fp(MSA)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(:)49
-b Fs(59)150 3215 y Fr(msk_*)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(60)150 3942 y Fr(msk_*)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(97)150 3303 y Fr(msrcp)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(98)150 4033 y Fr(msrcp)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(31)150 3392 y Fp(msrcp)8 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(31)150 4124 y Fp(msrcp)8 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(:)35
-b Fs(35)150 3480 y Fr(msread)17 b Fa(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Fs(35)150 4215 y Fr(msread)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(31)150 3569 y Fp(MSS)12 b Fa(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(31)150 4306 y Fp(MSS)12 b Fa(:)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(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38
-b Fs(30)150 3657 y(m)n(ulti-\014le)25 b(op)r(erators)15
-b Fa(:)g(:)42 b Fs(22,)26 b(28,)h(30,)g(165,)g(168,)g(194,)g(196)150
-3745 y(m)n(ulti-h)n(yp)r(erslab)9 b Fa(:)j(:)h(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(30)150 4397 y(m)n(ulti-\014le)25 b(op)r(erators)15
+b Fa(:)g(:)42 b Fs(22,)26 b(29,)h(30,)g(168,)g(171,)g(197,)g(199)150
+4488 y(m)n(ulti-h)n(yp)r(erslab)9 b Fa(:)j(:)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(:)35 b Fs(59)150 3834 y(Multi-Record)26
+g(:)h(:)f(:)g(:)g(:)g(:)35 b Fs(60)150 4579 y(Multi-Record)26
 b(Op)r(erator)19 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(:)45 b
-Fs(58)150 3922 y(m)n(ultiplication)10 b Fa(:)k(:)f(:)h(:)f(:)g(:)g(:)g
+Fs(59)150 4671 y(m)n(ultiplication)10 b Fa(:)k(:)f(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)37
-b Fs(148,)27 b(159,)g(172)150 4010 y Fr(multiply)10 b
+b Fs(151,)27 b(162,)g(175)150 4762 y Fr(multiply)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(159)150 4099 y(m)n(ultiplying)26
+g(:)g(:)g(:)37 b Fs(162)150 4853 y(m)n(ultiplying)26
 b(data)11 b Fa(:)i(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fs(159,)27
-b(170)150 4187 y(m)n(ultislab)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fs(162,)27
+b(173)150 4944 y(m)n(ultislab)14 b Fa(:)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(:)40 b
-Fs(59)150 4276 y Fr(mv)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+Fs(60)150 5035 y Fr(mv)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(41)150 4364 y Fr(MVS)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(41)150 5126 y Fr(MVS)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 4452 y Fp(MVS)7 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)
+(:)37 b Fs(6)150 5217 y Fp(MVS)7 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(:)h(:)
-f(:)34 b Fs(7)150 4691 y FB(N)150 4810 y Fs(nak)n(ed)25
-b(c)n(haracters)e 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(:)49
-b Fs(160)150 4898 y(NaN)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(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48
-b Fs(156)150 4986 y Fp(NASA)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+f(:)34 b Fs(7)2025 299 y FB(N)2025 416 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
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49
+b Fs(163)2025 504 y(NaN)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(:)g(:)g(:)g(:)49
+b Fs(159)2025 592 y Fp(NARR)25 b Fs(\(North)g(American)h(Regional)h
+(Reanalysis\)a)2200 679 y 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
+b Fs(123)2025 767 y Fp(NASA)17 b Fa(:)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 855 y Fp(NASA)23 b(EOSDIS)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(:)f(:)g(:)g(:)g(:)g(:)40 b Fs(19)2025 943
+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 1031
+y Fr(nc__enddef\(\))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(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fs(209)150 5075 y Fp(NASA)23 b(EOSDIS)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(19)150 5163
-y(National)27 b(Virtual)e(Ocean)h(Data)g(System)d Fa(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)49 b Fs(32)150 5252
-y Fr(nc__enddef\(\))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(25)150 5340 y Fr(NC_BYTE)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(187)2025 299 y Fr(NC_CHAR)6 b
+g(:)g(:)g(:)g(:)h(:)45 b Fs(25)2025 1119 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)39 b Fs(190)2025 1207 y Fr(NC_CHAR)6 b
 Fa(:)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(55,)27 b(161,)g(187)2025 387 y Fr(NC_DISKLESS)d
+b Fs(56,)27 b(164,)g(190)2025 1295 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(78)2025 476 y Fr(NC_DOUBLE)12 b Fa(:)j(:)e(:)g(:)g(:)g(:)g(:)g
+48 b Fs(79)2025 1383 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(150,)27 b(187)2025 564
+f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(153,)27 b(190)2025 1471
 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(187)2025 653 y
-Fr(NC_FORMAT_DAP2)14 b Fa(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(190)2025 1559
+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 741 y Fr(NC_FORMAT_DAP4)14 b
+h(:)f(:)40 b Fs(37)2025 1647 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 830 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 918 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
-1006 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 1095 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
-1183 y Fr(NC_INT)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+b Fs(37)2025 1735 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
+1823 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 1911 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 1998 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
+2086 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(187)2025
-1272 y Fr(NC_INT64)16 b Fa(:)f(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42 b Fs(190)2025
+2174 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(187)2025 1360 y Fr(NC_SHORT)10
+f(:)g(:)g(:)g(:)43 b Fs(10,)27 b(190)2025 2262 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(187)2025 1449 y Fr(NC_UBYTE)16 b
+g(:)g(:)g(:)37 b Fs(190)2025 2350 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(187)2025 1537 y Fr(NC_UINT)20 b Fa(:)13
+b Fs(10,)27 b(190)2025 2438 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(187)2025 1625 y Fr(NC_UINT64)14 b Fa(:)h(:)e(:)g(:)g(:)g
+b Fs(10,)27 b(190)2025 2526 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(187)2025
-1714 y Fr(NC_USHORT)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(10,)27 b(190)2025
+2614 y Fr(NC_USHORT)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(187)2025 1802 y Fr(ncadd)18
+g(:)g(:)h(:)40 b Fs(10,)27 b(190)2025 2702 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(159)2025 1891 y Fr(ncap)21
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(162)2025 2790 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(102)2025 1979 y Fr(ncap2)23
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(104)2025 2878 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 2068 y
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fs(7)2025 2966 y
 Fr(ncap2)15 b Fa(:)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(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)42 b Fs(23,)26 b(26,)h(95)2025 2156 y Fr(ncap2)18
+(:)g(:)h(:)42 b Fs(23,)26 b(26,)h(96)2025 3054 y Fr(ncap2)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(102)2025 2245 y Fr(ncap2)18
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(104)2025 3142 y Fr(ncap2)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(186)2025 2333 y Fp(NCAR)13
+(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(189)2025 3230 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 2421 y Fp(NCAR)23
+(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Fs(15)2025 3317 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 2510 y Fr(ncatted)15
+h(:)f(:)g(:)g(:)42 b Fs(30)2025 3405 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 2598 y Fr(ncatted)15
+(:)h(:)f(:)g(:)g(:)41 b Fs(43)2025 3493 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(70)2025 2687 y Fr(ncatted)15
+(:)h(:)f(:)g(:)g(:)41 b Fs(71)2025 3581 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(96)2025 2775 y Fr(ncatted)12
+(:)h(:)f(:)g(:)g(:)41 b Fs(97)2025 3669 y Fr(ncatted)12
 b Fa(:)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(153)2025 2864 y Fr(ncattget)14
+(:)g(:)h(:)f(:)39 b Fs(156)2025 3757 y Fr(ncattget)14
 b Fa(:)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(153,)27 b(181)2025 2952 y Fr(ncavg)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g
+b Fs(156,)27 b(184)2025 3845 y Fr(ncavg)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(181)2025 3041 y Fr(ncbo)23 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(184)2025 3933 y Fr(ncbo)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(71)2025 3129 y Fr(ncbo)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(72)2025 4021 y Fr(ncbo)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(159)2025 3217 y Fr(ncdiff)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+b Fs(162)2025 4109 y Fr(ncdiff)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(159)2025 3306 y Fr(ncdismember)11 b Fa(:)k(:)e(:)g(:)h(:)f(:)g(:)g
+b Fs(162)2025 4197 y Fr(ncdismember)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(48,)27 b(50)2025 3394
+g(:)g(:)h(:)f(:)g(:)g(:)37 b Fs(49,)27 b(51)2025 4285
 y Fr(ncdivide)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(159)2025 3483
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(162)2025 4373
 y Fr(ncdmnsz)12 b Fa(:)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(181)2025 3571
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fs(184)2025 4461
 y Fr(ncdump)13 b Fa(:)h(:)f(:)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(37,)27 b(175,)g(178,)g(179)2025 3660 y Fr(ncecat)17
+b Fs(37,)27 b(178,)g(181,)g(182)2025 4549 y Fr(ncecat)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(18)2025 3748 y Fr(ncecat)15
+(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(18)2025 4636 y Fr(ncecat)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(167)2025 3836 y Fr(nces)12
+(:)f(:)g(:)g(:)g(:)42 b Fs(170)2025 4724 y Fr(nces)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(:)h(:)f
-(:)g(:)g(:)g(:)g(:)38 b Fs(19,)27 b(71)2025 3925 y Fr(nces)21
+(:)g(:)g(:)g(:)g(:)38 b Fs(19,)27 b(72)2025 4812 y Fr(nces)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(164)2025 4013 y Fr(ncextr)15
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)47 b Fs(167)2025 4900 y Fr(ncextr)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(173)2025 4102 y Fr(ncflint)22
+(:)f(:)g(:)g(:)g(:)42 b Fs(176)2025 4988 y Fr(ncflint)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)47 b Fs(19,)27 b(71)2025 4190 y Fr(ncflint)12 b Fa(:)j(:)e(:)g(:)g
+g(:)47 b Fs(19,)27 b(72)2025 5076 y Fr(ncflint)12 b Fa(:)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(170)2025 4279 y Fr(ncgen)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(173)2025 5164 y Fr(ncgen)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(175)2025 4367 y Fr(ncgen-hdf)7 b Fa(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
+b Fs(178)2025 5252 y Fr(ncgen-hdf)7 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(:)g(:)h(:)f(:)34 b Fs(175)2025
-4456 y Fr(ncks)23 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(:)34 b Fs(178)2025
+5340 y Fr(ncks)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(36)2025 4544 y Fr(ncks)14 b Fa(:)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(:)40 b Fs(76,)27 b(148,)g(173)2025
-4632 y Fp(NCL)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(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41 b Fs(15,)27 b(191)2025
-4721 y Fr(ncl_convert2nc)18 b Fa(:)e(:)d(:)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(11,)27 b(191)2025 4809 y Fr(nclist)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g
+b Fs(37)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.5)j(User)d(Guide)150 299 y Fr(ncks)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(:)40 b Fs(77,)27
+b(151,)g(176)150 387 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42
-b Fs(181)2025 4898 y Fr(ncmax)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(181)2025 4986 y Fr(ncmdn)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(181)2025 5075 y Fr(ncmin)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(181)2025 5163 y Fp(NcML)19 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b
+Fs(15,)27 b(194)150 476 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(179)2025 5252 y Fr(ncmult)15 b Fa(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)44 b Fs(11,)27 b(194)150 564 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 653 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 741 y Fr(ncmdn)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 830 y Fr(ncmin)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 918 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)42
-b Fs(159)2025 5340 y Fr(ncmultiply)24 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f
+h(:)f(:)g(:)g(:)g(:)g(:)46 b Fs(182)150 1006 y Fr(ncmult)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 1095 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 1183 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 1272 y Fp(NCO)25 b Fs(homepage)15 b Fa(:)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(:)49 b Fs(159)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.4)j(User)d(Guide)150 299 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 387 y Fp(NCO)25 b Fs(homepage)15 b Fa(:)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(5)150
-476 y(nco)26 b(script)g(\014le)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(5)150
+1360 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(221)150 564 y Fm(NCO)25
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b Fs(226)150 1449 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 653 y Fr(nco.config.log.${GNU_TRP}.foo)11
+g(:)g(:)44 b Fs(5)150 1537 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 741 y Fr(nco.configure.${GNU_TRP}.foo)13
+b Fs(14)150 1625 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 830 y Fr(nco.make.${GNU_TRP}.foo)8 b Fa(:)18
+b Fs(14)150 1714 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 918 y Fr(nco_input_file_list)7
+h(:)f(:)g(:)34 b Fs(14)150 1802 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(96)150 1006
+(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fs(20,)26 b(97)150 1891
 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(96)150 1095 y Fr(nco_openmp_thread_number)i Fa(:)13
+b(97)150 1979 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 1183 y Fr(ncpack)15 b Fa(:)f(:)g(:)f(:)g(:)g(:)g(:)g
+(:)49 b Fs(25)150 2068 y Fr(ncpack)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(186)150 1272 y Fr(ncpdq)9 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g
+b Fs(189)150 2156 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 1360 y Fr(ncpdq)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)g
+Fs(18,)26 b(26)150 2245 y Fr(ncpdq)15 b Fa(:)g(:)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(:)42 b Fs(72,)27 b(168,)g(186,)g(196)150 1449 y
+g(:)g(:)42 b Fs(73,)27 b(171,)g(189,)g(199)150 2333 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(71)150 1537
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(19,)26 b(72)150 2421
 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(148,)27 b(194)150 1625
+g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(151,)27 b(197)150 2510
 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 1714
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(18,)26 b(26)150 2598
 y Fr(ncrcat)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(196)150 1802
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(199)150 2687
 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(181)150 1891 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Fs(184)150 2775 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(70,)27 b(198)150 1979 y Fr(ncrng)18 b
+g(:)g(:)43 b Fs(71,)27 b(201)150 2864 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(181)150 2068 y Fp(NCSA)20
+g(:)g(:)h(:)f(:)g(:)44 b Fs(184)150 2952 y Fp(NCSA)20
 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(:)46 b Fs(10)150 2156 y Fr(ncsub)18
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(10)150 3041 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(159)150 2245 y Fr(ncsubtract)24
+(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(162)150 3129 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-49 b Fs(159)150 2333 y Fr(ncunits)12 b Fa(:)j(:)e(:)g(:)h(:)f(:)g(:)g
+49 b Fs(162)150 3217 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(181)150 2421 y Fr(ncunpack)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
+b Fs(184)150 3306 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(186)150 2510 y Fr(ncwa)18 b Fa(:)c(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+Fs(189)150 3394 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(71)150
-2598 y Fr(ncwa)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(19,)27 b(26,)f(72)150
+3483 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(148,)27 b(202)150
-2687 y(ndims\(\))19 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fs(151,)27 b(205)150
+3571 y(ndims\(\))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(:)46 b Fs(118)150 2775
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(120)150 3660
 y Fm(nearb)n(yin)n(t)9 b Fa(:)j(:)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(:)g(:)g(:)g(:)g(:)34 b Fs(148)150 2864
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(151)150 3748
 y(nearest)26 b(in)n(teger)g(function)g(\(exact\))14 b
 Fa(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)41
-b Fs(148)150 2952 y(nearest)26 b(in)n(teger)g(function)g(\(inexact\))16
+b Fs(151)150 3836 y(nearest)26 b(in)n(teger)g(function)g(\(inexact\))16
 b Fa(:)d(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fs(148)150 3041 y Fp(NEC)10 b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(151)150 3925 y Fp(NEC)10 b Fa(:)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(:)h(:)f(:)g(:)g(:)g(:)g(:)37
-b Fs(6)150 3129 y(Neil)26 b(Da)n(vis)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)
+b Fs(6)150 4013 y(Neil)26 b(Da)n(vis)12 b Fa(:)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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39
-b Fs(88)150 3217 y(nesting)13 b Fa(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(90)150 4102 y(nesting)13 b Fa(:)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(:)40 b
-Fs(103)150 3306 y(netCDF)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+Fs(105)150 4190 y(netCDF)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(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fs(5)150 3394 y(netCDF2)23 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fs(5)150 4279 y(netCDF2)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(:)49 b Fs(9,)26 b(35)150
-3483 y Fr(NETCDF2_ONLY)e Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+4367 y Fr(NETCDF2_ONLY)e 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(9)150 3571 y(netCDF3)23
+g(:)h(:)f(:)g(:)g(:)g(:)48 b Fs(9)150 4456 y(netCDF3)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(:)49 b Fs(9,)26 b(35)150 3660 y(netCDF3)g(classic)h(\014le)f(format)
+h(:)49 b Fs(9,)26 b(35)150 4544 y(netCDF3)g(classic)h(\014le)f(format)
 17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)43 b Fs(36)150 3748 y(netCDF4)10 b Fa(:)j(:)h(:)f(:)g(:)
+(:)h(:)f(:)g(:)43 b Fs(37)150 4632 y(netCDF4)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(:)37 b Fs(10,)27 b(35,)f(69)150
-3836 y(netCDF4)g(classic)h(\014le)f(format)17 b Fa(:)d(:)g(:)f(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(10,)27 b(35,)f(70)150
+4721 y(netCDF4)g(classic)h(\014le)f(format)17 b Fa(:)d(:)g(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)43
-b Fs(36)150 3925 y(netCDF4)26 b(\014le)g(format)15 b
+b Fs(37)150 4809 y(netCDF4)26 b(\014le)g(format)15 b
 Fa(:)f(:)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(:)42 b Fs(36)150
-4013 y Fr(NETCDF4)27 b Fs(\014les)d Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(37)150
+4898 y Fr(NETCDF4)27 b Fs(\014les)d 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(:)49 b Fs(35)150 4102
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)49 b Fs(35)150 4986
 y Fr(NETCDF4_CLASSIC)29 b Fs(\014les)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(:)46 b Fs(35)150 4190 y Fr(NETCDF4_ROOT)22 b Fa(:)13
+g(:)46 b Fs(35)150 5075 y Fr(NETCDF4_ROOT)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(12)150 4279 y(Nic)n(k)25 b(Bo)n(w)n(er)8 b Fa(:)15
+b Fs(12)150 5163 y(Nic)n(k)25 b(Bo)n(w)n(er)8 b Fa(:)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(:)g(:)h(:)f(:)g(:)g(:)35
-b Fs(208)150 4367 y Fr(NINTAP)9 b Fa(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(212)150 5252 y Fr(NINTAP)9 b Fa(:)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(:)35 b Fs(28,)27 b(194,)g(196)150 4456
+g(:)g(:)h(:)f(:)g(:)35 b Fs(28,)27 b(197,)g(199)150 5340
 y Fr(NO_NETCDF_2)7 b Fa(:)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(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(9)150 4544 y(non-co)r(ordinate)26
-b(grid)g(prop)r(erties)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)43 b Fs(97)150 4632 y(non-rectangular)26
-b(grids)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(:)39 b Fs(127)150
-4721 y(non-standard)25 b(grids)d Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fs(9)2025 299 y(non-co)r(ordinate)26
+b(grid)g(prop)r(erties)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(99)2025 387 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(130)2025
+475 y(non-standard)25 b(grids)d 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(:)48 b Fs(130)2025 563 y(normalization)23 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(:)49
+b Fs(207)2025 651 y(North)25 b(American)h(Regional)h(Reanalysis)f(\()p
+Fp(NARR)p Fs(\))2200 738 y 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
+b Fs(123)2025 826 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(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fs(159)2025 914
+y Fp(NRA)19 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(:)48 b Fs(127)150 4809 y(normalization)24 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(:)48
-b Fs(204)150 4898 y(Not-a-Num)n(b)r(er)9 b Fa(:)j(:)h(:)g(:)g(:)g(:)g
-(:)g(:)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(156)150 4986
-y Fp(NRA)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(:)47 b Fs(213)2025
+1002 y Fr(nrnet)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fs(209)150
-5075 y Fr(nrnet)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(31)150 5163 y Fp(NSF)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(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39
-b Fs(209)150 5252 y(NT)26 b(\(Microsoft)h(op)r(erating)g(system\))7
-b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-34 b Fs(7)150 5340 y(NUL)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(:)g(:)g(:)g(:)g(:)44
-b Fs(156)2025 299 y Fr(NUL)23 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b
+Fs(31)2025 1089 y Fp(NSF)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(:)g(:)g(:)g(:)h(:)f(:)39
+b Fs(213)2025 1177 y(NT)25 b(\(Microsoft)j(op)r(erating)f(system\))7
+b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+34 b Fs(7)2025 1265 y(NUL)17 b Fa(:)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(:)f(:)g(:)g(:)g(:)44
+b Fs(159)2025 1353 y Fr(NUL)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(188)2025 387 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(156)2025 475 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(172)2025 563 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(112)2025 651
-y Fr(number_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(116)2025 738 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(83,)27
-b(204)2025 826 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(32)2025 914 y(`)p Fr(nxt_lsr)p Fs(')8 b Fa(:)15
+b Fs(191)2025 1441 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 1529 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 1617 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
+1705 y Fr(number_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 1793 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(85,)27 b(207)2025 1881 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 1969 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(187)2025 1160 y FB(O)2025 1278 y Fs(o)r(ceanograph)n(y)8
+g(:)35 b Fs(190)2025 2215 y FB(O)2025 2332 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 1366 y(o)r(ctal)27 b(dump)12 b Fa(:)g(:)h(:)g(:)g(:)g
+34 b Fs(32)2025 2420 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(37)2025 1454 y Fr(od)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(38)2025 2508 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(:)
 g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)37 b Fs(37)2025 1541 y Fr(OMP_NUM_THREADS)11 b Fa(:)17
+(:)37 b Fs(38)2025 2596 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
-1629 y(on-line)26 b(do)r(cumen)n(tation)17 b Fa(:)c(:)g(:)h(:)f(:)g(:)g
+2684 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 1717 y(op)r(en)25 b(source)14
+g(:)g(:)45 b Fs(5)2025 2772 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(32)2025 1805 y(Op)r(en-source)f(Pro)t(ject)i(for)g(a)f
-(Net)n(w)n(ork)f(Data)h(Access)2178 1892 y(Proto)r(col)18
+b Fs(1,)26 b(33)2025 2860 y(Op)r(en-source)f(Pro)t(ject)i(for)g(a)f
+(Net)n(w)n(ork)f(Data)h(Access)2178 2947 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 1980 y Fp(OP)n(eND)n(AP)p Fs(.)6 b Fa(:)14
+b Fs(32)2025 3035 y Fp(OP)n(eND)n(AP)p Fs(.)6 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(:)33 b Fs(32)2025 2068 y(Op)r(enMP)13 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)
+g(:)33 b Fs(32)2025 3123 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
-2156 y(op)r(eration)f(t)n(yp)r(es)19 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+3211 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(82,)27 b(194,)g(203)2025 2244 y(op)r(erator)f(sp)r(eed)c
+b Fs(83,)27 b(197,)g(206)2025 3299 y(op)r(erator)f(sp)r(eed)c
 Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)48
-b Fs(9,)26 b(16,)h(24,)f(25,)h(70,)g(198)2025 2332 y(op)r(erators)14
+b Fs(9,)26 b(16,)h(24,)f(25,)h(71,)g(201)2025 3387 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 2420 y(OptIPuter)9
+(:)h(:)f(:)g(:)g(:)41 b Fs(3)2025 3474 y(OptIPuter)9
 b Fa(:)j(:)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(:)36 b Fs(209)2025 2508 y(Orion)26 b(P)n(o)n(wla)n(wski)c
+(:)f(:)36 b Fs(213)2025 3562 y(Orion)26 b(P)n(o)n(wla)n(wski)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(:)f(:)g(:)g(:)g(:)g(:)48
-b Fs(208)2025 2596 y Fr(ORO)12 b Fa(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(212)2025 3650 y Fr(ORO)12 b Fa(:)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(:)39 b
-Fs(97,)27 b(205)2025 2684 y(orphan)e(dimensions)6 b Fa(:)14
+Fs(98,)27 b(208)2025 3738 y(orphan)e(dimensions)6 b Fa(:)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(:)33 b Fs(179)2025
-2771 y Fp(OS)21 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fs(182)2025
+3826 y Fp(OS)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(:)f(:)g(:)g(:)g(:)g(:)49
-b Fs(6)2025 2859 y(output)24 b(\014le)17 b Fa(:)d(:)f(:)g(:)h(:)f(:)g
+b Fs(6)2025 3914 y(output)24 b(\014le)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fs(20,)27 b(30)2025
-2947 y Fm(output-path)17 b Fa(:)12 b(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+4002 y Fm(output-path)17 b Fa(:)12 b(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)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(31)2025 3035 y(o)n(v)n(erview)7
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(32)2025 4090 y(o)n(v)n(erview)7
 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(:)33 b Fs(24)2025 3123 y(o)n(v)n(erwriting)26
+g(:)g(:)h(:)f(:)g(:)33 b Fs(24)2025 4178 y(o)n(v)n(erwriting)26
 b(\014les)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(:)38
-b Fs(16,)27 b(95)2025 3376 y FB(P)2025 3494 y Fs(pac)n(k\(\))9
+b Fs(16,)27 b(97)2025 4431 y FB(P)2025 4549 y Fs(pac)n(k\(\))9
 b Fa(:)j(:)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(:)36 b Fs(117)2025 3582 y Fr(pack\(x\))15
+(:)h(:)f(:)g(:)g(:)g(:)36 b Fs(119)2025 4637 y Fr(pack\(x\))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(79)2025 3670 y(pac)n(k)p 2184
-3670 24 4 v 33 w(b)n(yte\(\))21 b Fa(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)h(:)f(:)g(:)g(:)41 b Fs(81)2025 4725 y(pac)n(k)p 2184
+4725 24 4 v 33 w(b)n(yte\(\))21 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(:)49 b Fs(118)2025 3758
-y(pac)n(k)p 2184 3758 V 33 w(in)n(t\(\))14 b Fa(:)f(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fs(120)2025 4812
+y(pac)n(k)p 2184 4812 V 33 w(in)n(t\(\))14 b Fa(:)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(:)41 b
-Fs(118)2025 3845 y(pac)n(k)p 2184 3845 V 33 w(short\(\))9
+Fs(120)2025 4900 y(pac)n(k)p 2184 4900 V 33 w(short\(\))9
 b Fa(:)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(:)36
-b Fs(118)2025 3933 y(pac)n(king)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+b Fs(120)2025 4988 y(pac)n(king)15 b Fa(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g
 (:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(34,)27
-b(72,)g(79,)g(168,)g(186,)g(196)2025 4021 y(pac)n(king)e(map)d
+b(73,)g(81,)g(171,)g(189,)g(199)2025 5076 y(pac)n(king)e(map)d
 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(:)49
-b Fs(187)2025 4109 y(pac)n(king)25 b(p)r(olicy)11 b Fa(:)j(:)f(:)g(:)g
+b Fs(190)2025 5164 y(pac)n(king)25 b(p)r(olicy)11 b Fa(:)j(:)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(:)38 b Fs(186)2025
-4197 y(pap)r(ers)8 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)38 b Fs(189)2025
+5252 y(pap)r(ers)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(:)34 b
-Fs(24)2025 4285 y Fr(parallel)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)
+Fs(24)2025 5340 y Fr(parallel)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(237)2025
-4373 y(parallelism)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(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)35 b Fs(25,)27 b(209)2025 4461 y(parser)13
-b Fa(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)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(102)2025 4549 y(pasting)26
-b(v)l(ariables)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(:)34 b Fs(17)2025 4637 y Fr(pathcc)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 4725 y Fr(pathCC)20
-b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fs(243)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(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 387
+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 475
+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(:)g(:)h(:)46 b Fs(6)2025 4813 y(P)n(athScale)23
-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(:)49 b Fs(6)2025 4900 y(P)n(atrice)26 b(Dumas)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(:)47
-b Fs(208)2025 4988 y(P)n(atric)n(k)26 b(Kursa)n(w)n(e)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(:)36
-b Fs(208)2025 5076 y(pattern)25 b(matc)n(hing)12 b Fa(:)h(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fs(20,)27 b(43,)g(153,)g(157)2025 5164 y(P)n(a)n(yP)n(al)14
-b Fa(:)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 Fs(207)2025 5252 y Fm(p)r(c)n(k)p
-2148 5252 V 33 w(map)20 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(:)45 b Fs(187)2025
-5340 y Fm(p)r(c)n(k)p 2148 5340 V 33 w(plc)27 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(:)34 b Fs(17)150 563 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(:)50 b Fs(186)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(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(78)150 387 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(207)150 474 y(p)r(erformance)11 b Fa(:)j(:)f(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(9,)26
-b(16,)h(24,)g(25,)f(70,)h(198)150 562 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(155)150 650 y(p)r(erm)n(ute)e(dimensions)20
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(6)150 651 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 739 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(:)46 b Fs(186)150
-738 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(111)150 826 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)49 b Fs(6)150 827 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 916 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 1004 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 1092 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 1180 y Fm(p)r(c)n(k)p
+273 1180 24 4 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(190)150
+1268 y Fm(p)r(c)n(k)p 273 1268 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(189)150 1356 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(79)150 1444
+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(:)33 b Fs(208)150 913 y Fr(pgcc)7 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)h(:)42 b Fs(211)150 1532 y(p)r(erformance)11
+b Fa(:)j(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+38 b Fs(9,)26 b(16,)h(24,)g(25,)f(71,)h(201)150 1620
+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(158)150 1708 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(189)150 1796 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 1885 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 1973 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 2061 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 1001 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 1089 y Fp(PGI)22 b Fa(:)13 b(:)g(:)h(:)f(:)g
+(:)g(:)34 b Fs(6)150 2149 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(:)
+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 2237 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
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)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 1177 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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)33 b Fs(15)150 1265 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 1352 y(`)p Fr(plc_all)p Fs(')10
+g(:)33 b Fs(15)150 2325 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 2413 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 2501 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(72)150 1440 y(`)p Fr(plc_g2d)p
+g(:)g(:)g(:)g(:)37 b Fs(73)150 2589 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(72)150 1528 y(`)p Fr(plc_g3d)p
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 2677 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(72)150 1616 y(`)p Fr(plc_xpl)p
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 2766 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(72)150 1703 y(`)p Fr(plc_xst)p
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 2854 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(72)150 1791 y(p)r(ortabilit)n(y)10
+f(:)g(:)g(:)g(:)g(:)g(:)37 b Fs(73)150 2942 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 1879 y(p)r(ositional)27
+(:)g(:)g(:)g(:)37 b Fs(6)150 3030 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 1967 y Fp(POSIX)14 b Fa(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(30)150 3118 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(43)150 2055 y Fm(p)r(o)n(w)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b(44)150 3206 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(148)150 2142 y(p)r(o)n(w)n(er)16 b Fa(:)e(:)f(:)g(:)g(:)h(:)f(:)g
+b Fs(151)150 3294 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(148)150 2230 y(p)r(o)n(w)n(er)26 b(function)20 b
+b Fs(151)150 3382 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(148)150 2318 y(`)p Fr(prd)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)
+b Fs(151)150 3470 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(73)150 2406 y(precision)20 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g
+g(:)47 b Fs(74)150 3558 y(precision)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(150)150 2494 y(prepro)r(cessor)27 b(tok)n(ens)13
+b Fs(153)150 3646 y(prepro)r(cessor)27 b(tok)n(ens)13
 b Fa(:)g(:)g(:)h(:)f(:)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(8)150 2581 y(presen)n(tations)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)
+Fs(8)150 3735 y(presen)n(tations)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(:)f(:)g(:)g
 (:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)45 b Fs(5)150
-2669 y(prin)n(t\(\))25 b Fr(ncap2)12 b Fa(:)i(:)f(:)g(:)h(:)f(:)g(:)g
+3823 y(prin)n(t\(\))25 b Fr(ncap2)12 b Fa(:)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(:)39 b Fs(115)150 2757
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)39 b Fs(117)150 3911
 y Fr(printf)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
-2845 y Fr(printf\(\))18 b Fa(:)d(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+3999 y Fr(printf\(\))18 b Fa(:)d(:)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(:)45
-b Fs(155,)27 b(179,)g(183)150 2932 y(prin)n(ting)e(\014les)h(con)n(ten)
+b Fs(158,)27 b(182,)g(186)150 4087 y(prin)n(ting)e(\014les)h(con)n(ten)
 n(ts)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(:)36 b Fs(173)150
-3020 y(prin)n(ting)25 b(v)l(ariables)11 b Fa(:)j(:)f(:)g(:)g(:)h(:)f(:)
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fs(176)150
+4175 y(prin)n(ting)25 b(v)l(ariables)11 b Fa(:)j(:)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(:)37 b Fs(173)150 3108 y(Pro)r(cessor)11
+(:)g(:)g(:)h(:)f(:)37 b Fs(176)150 4263 y(Pro)r(cessor)11
 b Fa(:)k(:)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(:)38
-b Fs(194,)27 b(196)150 3196 y(Pro)r(cessor,)h Fp(CCM)21
+b Fs(197,)27 b(199)150 4351 y(Pro)r(cessor,)h Fp(CCM)21
 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(:)48
-b Fs(28)150 3284 y(promotion)7 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(28)150 4439 y(promotion)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(:)34 b Fs(87,)26 b(89,)h(149)150 3371 y(prop)r(osals)9
+g(:)g(:)g(:)34 b Fs(88,)26 b(90,)h(152)150 4527 y(prop)r(osals)9
 b Fa(:)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(209)150 3459 y(pseudon)n(ym)17 b
+h(:)f(:)g(:)36 b Fs(213)150 4616 y(pseudon)n(ym)17 b
 Fa(:)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(:)44 b Fs(8)150 3547 y(publications)20 b Fa(:)13
+h(:)f(:)g(:)44 b Fs(8)150 4704 y(publications)20 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(:)
-46 b Fs(5)150 3800 y FB(Q)150 3917 y Fs(QLogic)17 b Fa(:)d(:)f(:)g(:)g
+46 b Fs(5)150 4958 y FB(Q)150 5076 y Fs(QLogic)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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)44 b Fs(6)150 4005 y(Qt)7 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)44 b Fs(6)150 5164 y(Qt)7 b Fa(:)13 b(:)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(:)g(:)g(:)34 b Fs(8)150 4092 y(quadruple-precision)10
+g(:)g(:)g(:)34 b Fs(8)150 5252 y(quadruple-precision)10
 b Fa(:)i(:)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(:)36 b Fs(150)150
-4180 y(Quic)n(k)25 b(Start)c Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)36 b Fs(153)150
+5340 y(Quic)n(k)25 b(Start)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(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(211)150 4268 y(quiet)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(:)g(:)g(:)g(:)41 b Fs(179)150 4356 y(quotes)22
-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(:)49 b Fs(44,)27
-b(147,)g(160,)g(192)150 4608 y FB(R)150 4725 y Fp(RA)n(G)20
-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(167)150 4813 y Fp(RAM)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(:)49 b Fs(22,)26 b(78)150 4901 y Fp(RAM)f
-Fs(disks)12 b Fa(:)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 Fs(16,)26 b(78)150 4989 y Fp(RAM)f Fs(\014les)14
-b Fa(:)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(:)41
-b Fs(16,)26 b(78)150 5077 y Fp(RAM)f Fs(v)l(ariables)15
-b Fa(:)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 Fs(79,)27
-b(119)150 5164 y(ram)p 287 5164 24 4 v 34 w(delete\(\))7
-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(:)
-34 b Fs(120)150 5252 y(ram)p 287 5252 V 34 w(write\(\))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(:)
-46 b Fs(120)150 5340 y(random)26 b(w)n(alk)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(:)46
-b Fs(93)2025 299 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(104,)27 b(160,)h(161,)f(162,)g(202)2025 387 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(:)48 b Fs(215)2025 299 y(quiet)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(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fs(182)2025 387 y(quotes)22
+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(:)49 b Fs(45,)27
+b(150,)g(163,)g(195)2025 641 y FB(R)2025 759 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 847 y Fp(RA)n(G)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(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46
+b Fs(170)2025 935 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(79)2025 1024 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(:)h(:)f(:)g(:)g(:)43 b Fs(8,)26 b(30)2025 475
-y Fp(R)n(CS)14 b Fa(:)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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40 b
-Fs(99)2025 563 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(:)
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(16,)27
+b(79)2025 1112 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
-(:)47 b Fs(73)2025 651 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(186)2025
-739 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(186)2025 828 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(167)2025
-916 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(57)2025 1004 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(:)40 b Fs(16,)27
+b(79)2025 1200 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(:)37 b Fs(194)2025 1092 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(196)2025 1180
-y(record)26 b(dimension)c Fa(:)13 b(:)g(:)48 b Fs(17,)27
-b(53,)f(75,)h(164,)g(167,)g(169,)g(175,)2178 1267 y(176,)g(189,)h(193,)
-f(194,)g(196)2025 1355 y(record)f(v)l(ariable)10 b Fa(:)j(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)41 b Fs(80,)27 b(121)2025 1288 y(ram)p
+2162 1288 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 1376
+y(ram)p 2162 1376 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
+1464 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(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fs(95)2025 1552
+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(205)2025 1640 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 1728 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(101)2025 1816 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(74)2025 1905 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(189)2025 1993 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(189)2025 2081
+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 2169 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 2257 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(197)2025
+2345 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(199)2025 2433 y(record)26 b(dimension)c Fa(:)13
+b(:)g(:)48 b Fs(17,)27 b(54,)f(76,)h(167,)g(170,)g(172,)g(178,)2178
+2520 y(179,)g(192,)h(196,)f(197,)g(199)2025 2609 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(192)2025 2697 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 2785 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(:)h(:)f(:)36 b Fs(53,)27 b(189)2025 1443
-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(127)2025 1531 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 1620 y(recursiv)n(e)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b
+Fs(41)2025 2873 y(recursiv)n(e)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(:)48
-b Fs(41)2025 1708 y Fr(regex)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+b Fs(41)2025 2961 y Fr(regex)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(43)2025 1796 y(regression)21 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(44)2025 3049 y(regression)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(:)46 b Fs(221)2025
-1884 y(regressions)27 b(arc)n(hiv)n(e)11 b Fa(:)j(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fs(226)2025
+3137 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 1972 y(regrid)17
+f(:)g(:)g(:)g(:)g(:)38 b Fs(14)2025 3225 y(regrid)17
 b Fa(:)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(:)44 b Fs(231)2025 2060 y(regular)26
+(:)g(:)g(:)h(:)f(:)g(:)44 b Fs(236)2025 3313 y(regular)26
 b(expressions)13 b Fa(:)i(:)e(:)g(:)g(:)g(:)g(:)40 b
-Fs(20,)27 b(28,)g(43,)g(147,)g(153,)g(157)2025 2148 y
+Fs(20,)27 b(28,)g(43,)g(150,)g(156,)g(160)2025 3402 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(122)2025 2236
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fs(125)2025 3490
 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(208)2025 2324 y(remote)26 b(\014les)20 b
+g(:)37 b Fs(212)2025 3578 y(remote)26 b(\014les)20 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(:)46
-b Fs(8,)26 b(30)2025 2413 y(rename)g(groups)9 b Fa(:)k(:)g(:)g(:)g(:)g
+b Fs(8,)26 b(30)2025 3666 y(rename)g(groups)9 b Fa(:)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(:)35 b Fs(47)2025
-2501 y(renaming)26 b(attributes)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fs(48)2025
+3754 y(renaming)26 b(attributes)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)g(:)h(:)f
 (:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)36
-b Fs(198,)27 b(231)2025 2589 y(renaming)f(dimensions)6
+b Fs(201,)27 b(236)2025 3842 y(renaming)f(dimensions)6
 b Fa(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)33 b Fs(198,)27 b(231)2025 2677 y(renaming)f(groups)
+(:)g(:)g(:)h(:)f(:)33 b Fs(201,)27 b(236)2025 3930 y(renaming)f(groups)
 6 b Fa(:)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(:)33
-b Fs(198)2025 2765 y(renaming)26 b(v)l(ariables)14 b
+b Fs(201)2025 4018 y(renaming)26 b(v)l(ariables)14 b
 Fa(:)g(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)41 b Fs(198,)27 b(221,)g(231)2025 2853 y(rep)r(orting)f(bugs)10
+(:)41 b Fs(201,)27 b(226,)g(236)2025 4106 y(rep)r(orting)f(bugs)10
 b Fa(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)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 Fs(13)2025 2941 y(reshap)r(e)26 b(v)l(ariables)17 b
+b Fs(13)2025 4195 y(reshap)r(e)26 b(v)l(ariables)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(:)44 b Fs(186)2025
-3029 y Fr(restrict)14 b Fa(:)h(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(189)2025
+4283 y Fr(restrict)14 b Fa(:)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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fs(7)2025
-3117 y(rev)n(erse)26 b(data)15 b Fa(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+4371 y(rev)n(erse)26 b(data)15 b Fa(:)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(:)42 b Fs(192)2025 3206 y(rev)n(erse)26
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fs(195)2025 4459 y(rev)n(erse)26
 b(dimensions)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)44 b Fs(186,)27 b(191,)g(192)2025
-3294 y(rev)n(erse\(\))21 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+f(:)g(:)g(:)g(:)g(:)44 b Fs(189,)27 b(194,)g(195)2025
+4547 y(rev)n(erse\(\))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(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fs(111)2025
-3382 y(`)p Fr(rew)p Fs(')22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fs(113)2025
+4635 y(`)p Fr(rew)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 3470 y Fm(rin)n(t)21 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(:)47
-b Fs(148)2025 3558 y Fr(rms)8 b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Fs(74)2025 4723 y(Ric)n(h)25 b(Signell)18 b Fa(:)c(:)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(:)45 b Fs(212)2025
+4811 y Fm(rin)n(t)21 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(:)47
+b Fs(151)2025 4899 y Fr(rms)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(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)34 b Fs(82)2025 3646 y Fr(rmssdn)17 b Fa(:)d(:)g(:)f(:)g(:)g(:)g(:)g
+(:)34 b Fs(83)2025 4988 y Fr(rmssdn)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(82)2025 3734 y(rmssdn\(\))17 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)g
+b Fs(83)2025 5076 y(rmssdn\(\))17 b Fa(:)c(:)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(:)44 b Fs(117)2025
-3822 y(ro)r(ot-mean-square)13 b Fa(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fs(119)2025
+5164 y(ro)r(ot-mean-square)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(82)2025 3910 y(Rorik)25 b(P)n(eterson)18
+g(:)h(:)f(:)39 b Fs(83)2025 5252 y(Rorik)25 b(P)n(eterson)18
 b Fa(:)c(:)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(:)45
-b Fs(207)2025 3999 y Fm(round)18 b Fa(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)
+b Fs(211)2025 5340 y Fm(round)18 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(:)43
-b Fs(148)2025 4087 y(rounding)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
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fs(93)2025 4175 y(rounding)25 b(functions)e 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(:)49 b Fs(148)2025 4263
-y Fp(RPM)18 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+b Fs(151)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.5)j(User)d(Guide)150 299 y Fs(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(95)150 387 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
+475 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 563 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(197)150 651 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 906 y FB(S)150 1024 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(201)150 1112 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(81,)27 b(171,)g(189,)g(199)150 1200 y Fm(scale)p
+312 1200 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 1288 y(scaling)9
+b Fa(:)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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)45 b Fs(12)2025
-4351 y(running)25 b(a)n(v)n(erage)18 b Fa(:)c(:)f(:)g(:)g(:)h(:)f(:)g
+f(:)g(:)35 b Fs(24,)27 b(175)150 1376 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 1464 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(74)150 1552 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(:)g(:)h(:)f(:)45 b Fs(194)2025 4439 y(Russ)25 b(Rew)e
-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(:)49
-b Fs(207,)27 b(208)2025 4693 y FB(S)2025 4811 y Fs(safeguards)16
-b Fa(:)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 Fs(15,)27 b(198)2025 4899 y Fr(scale_factor)15 b Fa(:)g(:)e(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)42
-b Fs(79,)27 b(168,)g(186,)g(196)2025 4988 y Fm(scale)p
-2187 4988 V 35 w(format)13 b Fa(:)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 Fs(24)2025 5076 y(scaling)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(24,)27 b(172)2025 5164 y(Scien)n(ti\014c)e(Data)h(Op)r
-(erators)13 b Fa(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fs(209)2025 5252 y(`)p
-Fr(scl)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 5340 y(Scott)25 b(Capps)13 b Fa(:)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 Fs(208)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.4)j(User)d(Guide)150 299 y Fr(scp)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 387 y(script)g(\014le)11 b
-Fa(:)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(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)37 b Fs(102)150 476 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(209)150 564 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(211)150 653 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(76)150 741 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(209)150 830 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(103)150
-918 y(separator)11 b Fa(:)j(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(212)150 1640
+y Fr(scp)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 1728 y(script)g(\014le)11 b Fa(:)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(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b Fs(104)150
+1816 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 1905 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(:)h(:)f(:)37 b Fs(180)150 1007 y(serv)n(er)15
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fs(215)150 1993
+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(77)150
+2081 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 2169 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
+2257 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 2345 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 1095 y(Serv)n(er-Side)e(Distributed)i(Data)g
-(Reduction)f(&)304 1182 y(Analysis)17 b Fa(:)c(:)g(:)g(:)h(:)f(:)g(:)g
+b Fs(21,)27 b(32,)f(35)150 2433 y(Serv)n(er-Side)e(Distributed)i(Data)g
+(Reduction)f(&)304 2520 y(Analysis)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(209)150 1271
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44 b Fs(213)150 2609
 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(209)150 1359 y Fr(set_miss\(\))d Fa(:)13
+b Fs(33,)27 b(213)150 2697 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(116)150 1448 y Fr(sftp)14 b Fa(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fs(118)150 2785 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 1536 y Fp(SGI)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h
+b Fs(8,)26 b(30)150 2873 y Fp(SGI)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)36 b Fs(6)150 1625 y(Sh)25 b(shell)20 b Fa(:)13
+(:)g(:)g(:)36 b Fs(6)150 2961 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(181)150 1713 y(shared)26 b(memory)g(mac)n(hines)19
+g(:)g(:)46 b Fs(184)150 3049 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 1801 y(shared)26
+(:)g(:)g(:)g(:)h(:)f(:)45 b Fs(22)150 3137 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
-1890 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(44,)h(66,)g(147,)g
-(160,)g(181)150 1978 y Fm(signedness)14 b Fa(:)g(:)f(:)g(:)g(:)h(:)f(:)
+3225 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 3313 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 2067 y Fm(sin)17 b Fa(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+b Fs(24)150 3402 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(148)150 2155 y(sine)26 b(function)21 b Fa(:)13 b(:)g(:)g(:)g(:)g
+b Fs(151)150 3490 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(148)150
-2244 y(single-precision)15 b Fa(:)g(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fs(151)150
+3578 y(single-precision)15 b Fa(:)g(:)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(:)41 b Fs(150)150 2332 y Fm(sinh)13 b Fa(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)h(:)41 b Fs(153)150 3666 y Fm(sinh)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(:)g(:)g(:)g
-(:)g(:)40 b Fs(148)150 2421 y(size\(\))9 b Fa(:)k(:)h(:)f(:)g(:)g(:)g
+(:)g(:)40 b Fs(151)150 3754 y(size\(\))9 b Fa(:)k(:)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(:)35
-b Fs(118)150 2509 y Fp(SMP)8 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(:)h(:)f(:)g(:)g(:)34
-b Fs(25)150 2598 y Fr(sort)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(122)150 2686 y(sort)26 b(alphab)r(etically)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(:)40 b Fs(174,)27 b(182)150 2775
-y(source)f(co)r(de)12 b Fa(:)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(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(5)150 2863 y(spatial)27
-b(distribution)17 b Fa(:)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(:)44
-b Fs(218)150 2951 y(sp)r(ecial)27 b(attributes)14 b Fa(:)f(:)g(:)g(:)g
+b Fs(120)150 3842 y Fp(SLD)26 b Fs(\(Sw)n(ath-lik)n(e)f(Data\))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(:)35 b Fs(123)150 3930 y
+Fp(SMP)8 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(:)h(:)f(:)g(:)g(:)34 b Fs(25)150
+4018 y Fr(sort)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(:)40 b Fs(175)150 3040 y(sp)r(ecial)27
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)47 b
+Fs(125)150 4106 y(sort)26 b(alphab)r(etically)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(:)40 b Fs(177,)27 b(185)150 4195 y(source)f(co)r(de)12
+b Fa(:)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)39 b Fs(5)150 4283 y(spatial)27 b(distribution)17
+b Fa(:)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(:)44 b Fs(223)150
+4371 y(sp)r(ecial)27 b(attributes)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(:)g(:)g(:)h(:)40 b Fs(178)150 4459 y(sp)r(ecial)27
 b(c)n(haracters)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(:)
-35 b Fs(156)150 3128 y(sp)r(eed)12 b Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+35 b Fs(159)150 4547 y(sp)r(eed)12 b Fa(:)h(:)g(:)g(:)g(:)h(:)f(:)g(:)g
 (:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fs(9,)26
-b(16,)h(21,)g(24,)g(25,)f(70,)h(198)150 3217 y Fr(sqravg)17
+b(16,)h(21,)g(24,)g(25,)f(71,)h(201)150 4635 y Fr(sqravg)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(82)150 3305 y(sqra)n(vg\(\))12
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(83)150 4723 y(sqra)n(vg\(\))12
 b Fa(:)h(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)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(117)150 3394 y Fr(sqrt)23 b Fa(:)13
+(:)g(:)g(:)g(:)39 b Fs(119)150 4811 y Fr(sqrt)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(82)150 3482 y Fm(sqrt)17
+g(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(83)150 4899 y Fm(sqrt)17
 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
 g(:)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(148)150 3571 y(square)26
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fs(151)150 4988 y(square)26
 b(ro)r(ot)g(function)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(:)41
-b Fs(148)150 3659 y Fp(SSDDRA)21 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fs(151)150 5076 y Fp(SSDDRA)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(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(209)150
-3748 y Fp(SSH)9 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)48 b Fs(213)150
+5164 y Fp(SSH)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(:)h(:)
 f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(8,)26
-b(35)150 3836 y(sshort\(\))19 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+b(35)150 5252 y(sshort\(\))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(:)
 g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46 b
-Fs(119)150 3925 y(standard)26 b(deviation)18 b Fa(:)13
+Fs(121)150 5340 y(standard)26 b(deviation)18 b Fa(:)13
 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)45 b Fs(82,)26 b(85,)h(221)150 4013 y(standard)f(input)20
-b Fa(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
-b Fs(20,)27 b(165,)g(168,)g(194,)g(196)150 4101 y Fr(standard_name)16
-b Fa(:)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(63)150 4190 y Fr(stat\(\))27 b(system)g(call)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(:)44 b Fs(77)150
-4278 y(statemen)n(t)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(:)45 b Fs(103)150 4367 y(static)26
-b(linking)21 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(:)47 b Fs(9)150 4455 y Fr(stdin)9 b
-Fa(:)14 b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)36 b Fs(20,)27 b(96,)g(165,)g(168,)g(194,)g(196)150
-4544 y(Stev)n(e)e(Emmerson)f 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(:)50 b Fs(207)150 4632 y(stride)9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)36 b Fs(54,)27 b(55,)f(60,)h(66,)g(194,)g(195,)g
-(196,)g(197)150 4721 y(strings)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(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48
-b Fs(156)150 4809 y(Stu)25 b(Muller)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(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)47 b Fs(208)150
-4898 y(stub)11 b Fa(:)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
-Fs(32)150 4986 y(sub-cycle)16 b Fa(:)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 Fs(58)150
-5075 y(sub)r(cycle)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(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Fs(58)150
-5163 y(subsetting)19 b Fa(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fs(40,)26 b(44,)h(98,)g(183,)g
-(184)150 5252 y Fr(subtract)10 b Fa(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+(:)f(:)45 b Fs(83,)26 b(87,)h(226)2025 299 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(197,)g(199)2025 387 y Fr(standard_name)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(64)2025 474 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(79)2025
+562 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 650
+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 737 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(97,)f(168,)i(171,)f(197,)g(199)2025
+825 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 913 y(stride)9 b Fa(:)k(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)36 b Fs(55,)26 b(56,)h(61,)g(67,)f(197,)i(198,)f
+(199,)g(200)2025 1001 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(:)37 b Fs(159)150
-5340 y(subtracting)26 b(data)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(:)35 b Fs(159)2025 299 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(148,)27 b(159)2025
-387 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 474
-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 562 y(sw)n(ap)26 b(space)14 b Fa(:)g(:)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(:)41 b Fs(21,)26 b(22,)h(78)2025 650
-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 737
-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(160,)g(187)2025 825 y(sync)n(hronous)e(\014le)h(access)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(:)37 b Fs(30)2025 913 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 1001 y(syn)n(tax)22
-b Fa(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)48
+b Fs(159)2025 1088 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
+1176 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 1264 y(sub-cycle)16 b Fa(:)d(:)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(:)50 b Fs(103)2025 1088 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fs(59)2025
+1352 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
+1439 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(100,)g(186,)g
+(187)2025 1527 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
+1615 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 1702 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 1790 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 1878 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 1966 y(sw)n(ap)26 b(space)14 b Fa(:)g(:)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(:)41 b Fs(21,)26 b(22,)h(79)2025 2053
+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 2141 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 2229 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(190)2025
+2316 y(sync)n(hronous)e(\014le)h(access)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(:)h(:)f(:)40 b Fs(77)2025 1341 y FB(T)2025 1458 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(208)2025 1545 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(148)2025 1633 y Fm(tanh)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fs(148)2025 1721 y(temp)r(orary)26 b(\014les)9 b Fa(:)k(:)g(:)g(:)g
+g(:)37 b Fs(30)2025 2404 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 2492 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 2580 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(79)2025
+2832 y FB(T)2025 2949 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 3037 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 3124 y Fm(tanh)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
+b Fs(151)2025 3212 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(79)2025
-1809 y(temp)r(orary)f(output)e(\014les)6 b Fa(:)14 b(:)f(:)h(:)f(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fs(15,)27 b(81)2025
+3300 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(79,)g(198)2025 1896 y(T)2067 1912 y(E)2110 1896 y(Xinfo)20
+b(81,)g(201)2025 3388 y(T)2067 3404 y(E)2110 3388 y(Xinfo)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(:)
-h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(5)2025 1984 y Fm(thr)p
-2133 1984 24 4 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)2025 2072 y(threads)6 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(:)33 b Fs(22,)26 b(23,)h(25)2025
-2159 y Fr(time)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(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fs(66,)27 b(98)2025
-2247 y(time-a)n(v)n(eraging)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)36
-b Fs(148,)27 b(211,)g(212,)h(218,)f(221,)g(228)2025 2335
-y Fr(time_offset)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(98)2025 2423 y(timestamp)9
-b Fa(:)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(:)g(:)g(:)g
-(:)h(:)f(:)35 b Fs(95)2025 2510 y(total)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(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)48 b Fs(82)2025 2598 y(transp)r(ose)14
-b Fa(:)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(:)40
-b Fs(53,)27 b(189)2025 2686 y Fp(TREFHT)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(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)45 b Fs(92)2025 2773 y Fm(trunc)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
-b Fs(148)2025 2861 y Fr(trunc\(\))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(88)2025 2949 y(truncate)25 b(\(groups\))11 b Fa(:)i(:)g(:)g(:)h(:)
+h(:)f(:)g(:)g(:)g(:)g(:)47 b Fs(5)2025 3475 y Fm(thr)p
+2133 3475 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)2025 3563 y(threads)6 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(:)33 b Fs(22,)26 b(23,)h(25)2025
+3651 y Fr(time)9 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(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Fs(45)2025 3037 y(truncation)25
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(67,)27 b(100)2025
+3738 y(time-a)n(v)n(eraging)10 b Fa(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)36
+b Fs(151,)27 b(215,)g(216,)h(223,)f(226,)g(233)2025 3826
+y Fr(time_offset)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(:)h(:)f(:)g(:)46 b Fs(100)2025 3914 y(timestamp)9 b
+Fa(:)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(:)g(:)g(:)g(:)
+h(:)f(:)35 b Fs(97)2025 4002 y(total)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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)48 b Fs(83)2025 4089 y(transp)r(ose)14 b Fa(:)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(:)40 b Fs(54,)27 b(192)2025
+4177 y Fp(TREFHT)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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fs(93)2025 4265
+y Fm(trunc)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(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34 b Fs(151)2025
+4352 y Fr(trunc\(\))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(90)2025
+4440 y(truncate)25 b(\(groups\))11 b Fa(:)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(:)37 b Fs(46)2025 4528 y(truncation)25
 b(function)12 b Fa(:)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(:)39
-b Fs(148)2025 3124 y(truth)24 b(condition)17 b Fa(:)d(:)g(:)f(:)g(:)g
+b Fs(151)2025 4616 y(truth)24 b(condition)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(:)44 b Fs(203,)27 b(206)2025 3212 y Fr(ttl)8
+g(:)g(:)h(:)44 b Fs(206,)27 b(209)2025 4703 y Fr(ttl)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(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(82)2025
-3300 y(ttl\(\))11 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fs(83)2025
+4791 y(ttl\(\))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(:)f(:)g(:)g(:)38 b
-Fs(117)2025 3388 y(t)n(yp)r(e)25 b(con)n(v)n(ersion)11
+Fs(119)2025 4879 y(t)n(yp)r(e)25 b(con)n(v)n(ersion)11
 b Fa(:)i(:)g(:)g(:)g(:)g(:)g(:)h(:)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(87)2025 3475 y(t)n(yp)r(e\(\))12 b Fa(:)g(:)h(:)g(:)g(:)g(:)h(:)f
+b Fs(88)2025 4966 y(t)n(yp)r(e\(\))12 b Fa(:)g(:)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39
-b Fs(118)2025 3732 y FB(U)2025 3849 y Fs(ub)n(yte\(\))9
+b Fs(120)2025 5223 y FB(U)2025 5340 y Fs(ub)n(yte\(\))9
 b Fa(:)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(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)36 b Fs(119)2025 3936 y(UDUnits)18
-b Fa(:)12 b(:)h(:)g(:)g(:)g(:)g(:)g(:)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(6,)26 b(65,)h(97)2025 4024 y(uin)n(t\(\))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(:)g(:)g(:)g(:)g(:)h
-(:)45 b Fs(119)2025 4112 y Fr(ulimit)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(21)2025 4200 y(unary)25 b(op)r(erations)d 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(:)48 b Fs(23)2025
-4287 y(underlying)25 b(\014le)h(format)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(:)f(:)35 b Fs(37)2025 4375 y Fp(UNICOS)14 b Fa(:)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(21)2025 4463 y(Unidata)14 b Fa(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)f(:)g(:)g(:)g(:)36 b Fs(121)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(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(98)150
+390 y(uin)n(t\(\))18 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(:)f(:)g(:)45 b Fs(121)150
+482 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
+573 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 665 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
+757 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 848
+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 940 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(:)
-g(:)h(:)f(:)g(:)g(:)g(:)41 b Fs(6,)26 b(10,)h(65)2025
-4550 y(union)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(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)39 b Fs(40,)27 b(42)2025
-4638 y(union)e(of)i(\014les)c 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(:)h(:)f(:)g(:)g(:)49 b Fs(17)2025 4726 y(unit64\(\))13
-b Fa(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)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 Fs(119)2025 4814 y Fr(units)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(:)44 b Fs(65,)27
-b(66,)g(157,)g(172)2025 4901 y Fp(UNIX)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(:)35 b Fs(6,)26 b(8,)h(20,)f(27,)h(28,)g(181)2025 4989
-y(unlimited)e(dimension)13 b Fa(:)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 Fs(167)2025 5077 y Fr(unmap)18 b Fa(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+h(:)f(:)g(:)40 b Fs(40,)26 b(42)150 1031 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 1123 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 1214 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 1306 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 1397 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 1489 y Fr(unmap)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(:)44
-b Fs(122)2025 5165 y(unpac)n(k\(\))17 b Fa(:)12 b(:)h(:)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 1580 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 1672 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(81)150 1763 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(81,)g(171,)g(189,)g(199)150 1855 y Fp(URL)9 b Fa(:)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(:)g(:)g(:)g(:)h(:)44
-b Fs(118)2025 5252 y Fr(unpack\(x\))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(79)2025 5340 y(unpac)n(king)17 b Fa(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44 b Fs(34,)27
-b(79,)g(168,)g(186,)g(196)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 Fp(URL)9 b Fa(:)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(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)35
-b Fs(30)150 386 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 474 y(ushort\(\))13 b Fa(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+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 1947 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(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fs(119)150
-728 y FB(V)150 844 y Fs(v)l(alue)25 b(list)16 b Fa(:)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(:)h(:)f(:)g(:)g(:)g(:)43
-b Fs(111)150 931 y(v)l(ariable)26 b(names)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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47
-b Fs(198)150 1019 y(v)l(ariables,)27 b(app)r(ending)11
+g(:)g(:)g(:)41 b Fs(5)150 2038 y(ushort\(\))13 b Fa(:)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(:)40
+b Fs(121)150 2315 y FB(V)150 2439 y Fs(v)l(alue)25 b(list)16
+b Fa(:)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(:)h(:)f(:)g
+(:)g(:)g(:)43 b Fs(113)150 2531 y(v)l(ariable)26 b(names)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(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)47
+b Fs(201)150 2622 y(v)l(ariables,)27 b(app)r(ending)11
 b Fa(:)h(:)i(:)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(221)150 1106
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b Fs(226)150 2714
 y(v)l(ariance)14 b Fa(:)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(:)h(:)40 b Fs(82)150 1193
-y(v)n(ersion)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
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fs(99)150
-1281 y(Vista)26 b(\(Microsoft)i(op)r(erating)e(system\))9
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)40 b Fs(83)150 2806
+y(v)n(ersion)15 b Fa(:)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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fs(101)150 2897
+y(Vista)26 b(\(Microsoft)i(op)r(erating)e(system\))9
 b Fa(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
-b Fs(7)150 1535 y FB(W)150 1651 y Fs(w)n(eigh)n(ted)26
-b(a)n(v)n(erage)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(:)49 b Fs(202,)27
-b(228)150 1739 y(W)-6 b(enshan)25 b(W)-6 b(ang)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(:)35 b Fs(209)150 1826
-y Fr(wget)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(30)150
-1913 y(where\(\))22 b Fa(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Fs(7)2025 299 y FB(W)2025 415 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 502 y 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(:)h(:)f(:)48 b Fs(120)150 2001
-y(while\(\))15 b Fa(:)f(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
+b Fs(123)2025 590 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(205,)27 b(233)2025
+677 y(W)-6 b(enshan)25 b(W)-6 b(ang)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(:)36 b Fs(213)2025 764 y Fr(wget)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(30)2025 852 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(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fs(121)150 2088
-y(whitespace)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(:)48 b Fs(66)2025 299 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(153,)g(157)
-2025 387 y Fr(WIN32)c 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(8)2025 475 y(Windo)n(ws)9 b Fa(:)k(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)49 b Fs(122)2025 939 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(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)42 b Fs(124)2025 1026 y(whitespace)22
+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(:)48 b Fs(67)2025 1114 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
+1201 y Fr(WIN32)c 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(8)2025 1289 y(Windo)n(ws)9 b Fa(:)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 564 y(wrapp)r(ed)f(co)r(ordinates)6 b Fa(:)15
+b(7)2025 1376 y(wrapp)r(ed)f(co)r(ordinates)6 b Fa(:)15
 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)33
-b Fs(55,)27 b(62,)g(128,)g(185)2025 652 y(wrapp)r(ed)f(\014lenames)12
+b Fs(56,)27 b(63,)g(130,)g(188)2025 1463 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(:)
 g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b
-Fs(29)2025 740 y Fp(WRF)13 b Fa(:)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(129)2025 828 y(WWW)25 b(do)r(cumen)n(tation)12 b
-Fa(:)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(:)39 b Fs(5)2025 1067
-y FB(X)2025 1185 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(:)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 1273 y Fr(xlc)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 1362 y Fr(xlC)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 1450 y Fp(XML)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(:)
+Fs(29)2025 1551 y Fp(WRF)13 b Fa(:)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 1638 y Fp(WRF)26 b Fs(\(W)-6 b(eather)25
+b(and)g(Researc)n(h)h(F)-6 b(orecast)27 b(Mo)r(del\))2200
+1725 y 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
-(:)45 b Fs(179)2025 1538 y(XP)25 b(\(Microsoft)j(op)r(erating)f
-(system\))9 b Fa(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)36 b Fs(7)2025 1626 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
-(:)g(:)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(72)2025 1715
-y(`)p Fr(xst)p Fs(')10 b Fa(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b Fs(123)2025 1812
+y(WWW)25 b(do)r(cumen)n(tation)12 b Fa(:)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(:)
+39 b Fs(5)2025 2046 y FB(X)2025 2162 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
+(:)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 2250 y Fr(xlc)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 2337 y Fr(xlC)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
+2425 y Fp(XML)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(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fs(182)2025
+2512 y(XP)25 b(\(Microsoft)j(op)r(erating)f(system\))9
+b Fa(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
+b Fs(7)2025 2599 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(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fs(72,)27
-b(73)2025 1970 y FB(Y)2025 2088 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: 262 268
-TeXDict begin 262 267 bop eop end
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)47 b Fs(73)2025 2687 y(`)p Fr(xst)p Fs(')10 b Fa(:)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(74)2025 2937 y FB(Y)2025 3053 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
 %%Trailer
 
 userdict /end-hook known{end-hook}if
diff --git a/doc/nco.texi b/doc/nco.texi
index 1e2831d..0914dee 100644
--- a/doc/nco.texi
+++ b/doc/nco.texi
@@ -7,7 +7,7 @@
 
 @ignore
 
-$Header: /cvsroot/nco/nco/doc/nco.texi,v 1.993 2014/05/29 18:00:26 zender Exp $
+$Header: /cvsroot/nco/nco/doc/nco.texi,v 1.1017 2014/08/27 04:44:01 zender Exp $
 
 Purpose: TeXInfo documentation for NCO suite
 
@@ -81,6 +81,7 @@ Legend (defined in "highlighting" section of TeXInfo manual):
 @command{}: Commands, e.g., @command{ncra}
 @dfn{}: Define use of term, e.g., @dfn{supercalifragilisticexpialidocious}
 @email{}: E-mail address, e.g., @email{surname at uci dot edu}
+ at emph{}: Emphasize text, e.g., @emph{important}
 @env{}: Environment variable, e.g., @env{HOME}
 @file{}: Filename, e.g., @file{in.nc}
 @html: Text until @end html passed without translation
@@ -93,6 +94,7 @@ Legend (defined in "highlighting" section of TeXInfo manual):
 @url{}: URL, synonym for @uref
 @var{}: Metasyntactic variable, e.g., @var{}
 @verbatim: Anything goes inside environment (no @'s needed to protect special characters like braces)
+ at verbatiminclude: Insert contents of file here, e.g., @verbatiminclude{nco.sh}
 @example: Quoted environment (@'s needed to protect special characters like braces)
 @w{}: Unbreakable text, e.g., @w{of 1}
 
@@ -112,12 +114,12 @@ Octave TeXInfo manual shows clean TeXInfo structure
 @setfilename nco.info
 
 @c Define edition, date, ...
- at set nco-edition 4.4.4
- at set doc-edition 4.4.4
+ at set nco-edition 4.4.5
+ at set doc-edition 4.4.5
 @set copyright-years 1995--2014
 @set update-year 2014
- at set update-date 29 May 2014
- at set update-month May 2014
+ at set update-date 26 August 2014
+ at set update-month August 2014
 
 @settitle @acronym{NCO} @value{nco-edition} User Guide
 
@@ -479,32 +481,54 @@ March 2008@*
 Grenoble, France@*
 
 @sp 2
-The end of the @acronym{NSF} SEI grant in August, 2008 curtailed @acronym{NCO}
-development.  
-Fortunately we could justify supporting Henry Butowsky on other research 
+The end of the @acronym{NSF} @acronym{SEI} grant in August, 2008 curtailed
+ at acronym{NCO} development.  
+Fortunately we could justify supporting Henry Butowsky on other research  
 grants until May, 2010 while he developed the key @command{ncap2}
 features used in our climate research.
-And recently the NASA ACCESS program commenced funding NCO support for
-netCDF4 group functionality.@* 
-Thus @acronym{NCO} will grow and evade bit-rot for the foreseeable future.
-
-On a personal level, I continue to receive with gratitude the thanks of
- at acronym{NCO} users at nearly every scientific meeting I attend. 
-People introduce themselves, shake my hand and often extol, sometimes
-effusively, @acronym{NCO} as time-saving tools.
+And recently the @acronym{NASA} @acronym{ACCESS} program commenced
+funding us to support netCDF4 group functionality.
+Thus @acronym{NCO} will grow and evade bit-rot for the foreseeable
+future. 
+
+I continue to receive with gratitude the thanks of @acronym{NCO} users
+at nearly every scientific meeting I attend.  
+People introduce themselves, shake my hand and extol @acronym{NCO},
+often effusively, while I grin in stupid embarassment. 
 These exchanges lighten me like anti-gravity.
 Sometimes I daydream how many hours @acronym{NCO} has turned from grunt
 work to productive research for researchers world-wide, or from research
 into early happy-hours. 
 It's a cool feeling.
 
- at c @uref{http://www.nasa.gov/mission_pages/IPY/main/PolarExploration.html,NNX07AR23G}.@*
 @sp 1
 @noindent
 Charlie Zender@*
 April, 2012@*
 Irvine, California@*
 
+ at ignore
+ at sp 2
+The @acronym{NASA} @acronym{ACCESS} 2011 program generously supported 
+(Cooperative Agreement NNX12AF48A) @acronym{NCO} from 2012--2014.
+We accomplished our goals and produced the first iteration of a
+Group-oriented Data Analysis and Distribution (@acronym{GODAD}) software 
+ecosystem. 
+Shifting geoscience data analysis to @acronym{GODAD}, no small task,
+drives our plans.
+Partly due to this success, the @acronym{NASA} @acronym{ACCESS} 2013
+program agreed to support (Cooperative Agreement NNX14AH55A)
+ at acronym{NCO} from 2014--2016. 
+This support will allow us to implement support for Swath-like Data
+(@acronym{SLD}) and re-gridding.
+
+ at sp 1
+ at noindent
+Charlie Zender@*
+June, 2014@*
+Irvine, California@*
+ at end ignore
+
 @html
 <a name="smr"></a> <!-- http://nco.sf.net/nco.html#smr -->
 @end html
@@ -1005,7 +1029,7 @@ following @acronym{UNIX} commands in the directory where the
 @acronym{NCO} executables are installed.
 @example
 ln -s -f ncbo ncdiff    # ncbo --op_typ='+'
-ln -s -f ncra ncecat    # ncra --pseudonym='ncecat'
+ln -s -f ncra nces      # ncra --pseudonym='nces'
 ln -s -f ncra ncrcat    # ncra --pseudonym='ncrcat'
 ln -s -f ncbo ncadd     # ncbo --op_typ='+'
 ln -s -f ncbo ncsubtract # ncbo --op_typ='-'
@@ -1013,7 +1037,7 @@ ln -s -f ncbo ncmultiply # ncbo --op_typ='*'
 ln -s -f ncbo ncdivide   # ncbo --op_typ='/'
 ln -s -f ncpdq ncpack    # ncpdq
 ln -s -f ncpdq ncunpack  # ncpdq --unpack
-# NB: Cygwin executable (and link) names have an '.exe' suffix, e.g.,
+# NB: Windows/Cygwin executable/link names have '.exe' suffix, e.g.,
 ln -s -f ncbo.exe ncdiff.exe
 ...
 @end example
@@ -1905,11 +1929,13 @@ Initially the record dimension is @code{time}.
 Our goal is to create a single file that contains joins all the
 spatially adjacent regions into one single time-evolving dataset.
 @example
+ at verbatim
 for idx in 01 02 03 04 05 06 07 08 09 10; do # Bourne Shell
-  ncpdq -a x,time x_$@{idx@}.nc foo_$@{idx@}.nc # Make x record dimension
+  ncpdq -a x,time x_${idx}.nc foo_${idx}.nc  # Make x record dimension
 done
 ncrcat foo_??.nc out.nc       # Concatenate along x
 ncpdq -a time,x out.nc out.nc # Revert to time as record dimension
+ at end verbatim
 @end example
 
 Note that @command{ncrcat} will not concatenate fixed-length variables, 
@@ -2016,8 +2042,10 @@ more, typically) of input filenames to the multi-file operators is
 to pass the filenames with the @acronym{UNIX} @dfn{standard input}
 feature, aka @code{stdin}: 
 @example
+ at verbatim
 # Pipe large numbers of filenames to stdin
-/bin/ls | grep $@{CASEID@}_'......'.nc | ncecat -o foo.nc
+/bin/ls | grep ${CASEID}_'......'.nc | ncecat -o foo.nc
+ at end verbatim
 @end example
 This method avoids all constraints on command line size imposed by
 the operating system. 
@@ -2059,8 +2087,10 @@ and to pipe the results to @command{xargs} which, in turn, passes the
 matching filenames to an @acronym{NCO} multi-file operator, e.g.,
 @command{ncecat}.
 @example
+ at verbatim
 # Use xargs to transfer filenames on the command line
-/bin/ls | grep $@{CASEID@}_'......'.nc | xargs -x ncecat -o foo.nc
+/bin/ls | grep ${CASEID}_'......'.nc | xargs -x ncecat -o foo.nc
+ at end verbatim
 @end example
 @cindex pipes
 The single quotes protect the only sensitive parts of the extended
@@ -2098,12 +2128,14 @@ directory. If there are 999,999 netCDF files present, the links are
 named @file{000001.nc} to @file{999999.nc}: 
 @cindex @code{-n @var{loop}}
 @example
+ at verbatim
 # Create enumerated symbolic links
 /bin/ls | grep \.nc | perl -e \
-'$idx=1;while(<STDIN>)@{chop;symlink $_,sprintf("%06d.nc",$idx++);@}'
+'$idx=1;while(<STDIN>){chop;symlink $_,sprintf("%06d.nc",$idx++);}'
 ncecat -n 999999,6,1 000001.nc foo.nc
 # Remove symbolic links when finished
 /bin/rm ??????.nc
+ at end verbatim
 @end example
 The @samp{-n @var{loop}} option tells the @acronym{NCO} operator to
 automatically generate the filnames of the symbolic links.
@@ -2501,7 +2533,11 @@ Availability: All operators@*
 @cindex L10N
 @acronym{NCO} support for @dfn{internationalization} of textual input
 and output (e.g., Warning messages) is nascent.
-We hope to produce foreign language string catalogues in 2004.
+We introduced the first foreign language string catalogues (French and
+Spanish) in 2004, yet did not activate these in distributions because 
+the catalogues were nearly empty.
+We seek volunteers to populate our templates with translations for their
+favorite languages.
 @c fxm: Work on this section
 
 @html
@@ -2812,12 +2848,15 @@ The first method (explicitly specifying all filenames) works by brute
 force. 
 The second method relies on the operating system shell to @dfn{glob}
 (expand) the @dfn{regular expression} @code{8[56789].nc}.
-The shell passes valid filenames which match the expansion to
- at command{ncra}.
-The third method uses the @samp{-p @var{input-path}} argument to specify 
+The shell then passes the valid filenames (those which match the
+regular expansion) to @command{ncra}.
+In this case @command{ncra} never knows that a regular expression was
+used, because the shell intercepts and expands and matches the regular
+expression before @command{ncra} is actually invoked.
+The third method uses the @samp{-p @var{input-path}} argument to specify   
 the directory where all the input files reside.
 @acronym{NCO} prepends @var{input-path} (e.g.,
- at file{/data/usrname/model}) to all @var{input-files} (though not to
+ at file{/data/username/model}) to all @var{input-files} (though not to
 @var{output-file}).  
 Thus, using @samp{-p}, the path to any number of input files need only
 be specified once.
@@ -2826,8 +2865,13 @@ automatically generated if necessary.
 
 The last method passes (with @samp{-n}) syntax concisely describing 
 the entire set of filenames
- at footnote{The @samp{-n} option is a backward compatible superset of the
- at code{NINTAP} option from the @acronym{NCAR} @acronym{CCM} Processor.}. 
+ at footnote{The @samp{-n} option is a backward-compatible superset of the 
+ at code{NINTAP} option from the @acronym{NCAR} @acronym{CCM} Processor.
+The @acronym{CCM} Processor was custom-written Fortran code maintained
+for many years by Lawrence Buja at @acronym{NCAR}, and phased-out in 
+the late 1990s.
+ at acronym{NCO} stole some ideas, like @code{NINTAP}-functionality,
+from the @acronym{CCM} Processor capabilities.}.
 @cindex multi-file operators
 @cindex files, multiple
 This option is only available with the @dfn{multi-file operators}:
@@ -2844,8 +2888,8 @@ For example, in the file @file{ccm3_h0001.nc}, we have
 @var{alphanumeric_prefix} = @file{ccm3_h}, @var{numeric_suffix} =
 @file{0001}, and @var{filetype} = @file{nc}.
 
- at acronym{NCO} is able to decode lists of such filenames encoded using the
- at samp{-n} option. 
+ at acronym{NCO} decodes lists of such filenames encoded using the
+ at samp{-n} syntax. 
 The simpler (3-argument) @samp{-n} usage takes the form 
 @code{-n @var{file_number}, at var{digit_number}, at var{numeric_increment}}
 where @var{file_number} is the number of files, @var{digit_number} is
@@ -2894,12 +2938,12 @@ The first example shows that three arguments to the @samp{-n} option
 suffice to specify consecutive months (@code{06, 07, 08}) which do not
 ``wrap'' back to a minimum value.
 The second example shows how to use the optional fourth and fifth
-elements of the @samp{-n} option to specify a wrap value to @acronym{NCO}.
-The fourth argument to @samp{-n}, if present, specifies the maximum
+elements of the @samp{-n} option to specify a wrap value.
+The fourth argument to @samp{-n}, when present, specifies the maximum
 integer value of @var{numeric_suffix}.
-In this case the maximum value @w{is 12,} and will be formatted as
+In the example the maximum value @w{is 12,} and will be formatted as
 @file{12} in the filename string. 
-The fifth argument to @samp{-n}, if present, specifies the minimum
+The fifth argument to @samp{-n}, when present, specifies the minimum
 integer value of @var{numeric_suffix}.
 The default minimum filename suffix @w{is 1,} which is formatted as
 @file{01} in this case.   
@@ -3004,16 +3048,18 @@ particular access protocol.
 @html
 <a name="ftp"></a> <!-- http://nco.sf.net/nco.html#ftp -->
 @end html
-To access a file via an anonymous @acronym{FTP} server, supply the
-remote file's @acronym{URL}.
+To access a file via an anonymous @acronym{FTP} server, simply supply
+the remote file's @acronym{URL}.
+Anonymous @acronym{FTP} usually requires no further credentials,
+e.g., no @file{.netrc} file is necessary.
 @acronym{FTP} is an intrinsically insecure protocol because it transfers
-passwords in plain text format. 
+passwords in plain text format.  
 Users should access sites using anonymous @acronym{FTP}, or better yet,
-secure @acronym{FTP} when possible. 
+secure @acronym{FTP} (@acronym{SFTP}, see below) when possible. 
 Some @acronym{FTP} servers require a login/password combination for a
 valid user account.
- at acronym{NCO} allows these transactions so long as the required
-information is stored in the @file{.netrc} file. 
+ at acronym{NCO} allows transactions that require additional credentials
+so long as the required information is stored in the @file{.netrc} file.  
 Usually this information is the remote machine name, login, and
 password, in plain text, separated by those very keywords, e.g.,
 @example
@@ -3040,7 +3086,7 @@ specified with a homebrew syntax of the form
 sftp://machine.domain.tld:/path/to/filename
 @end example
 Note the second colon following the top-level-domain, @code{tld}.
-This syntax is a hybrid between an @acronym{FTP URL} and a standard
+This syntax is a hybrid between an @acronym{FTP URL} and standard
 remote file syntax.
 
 @html
@@ -3298,7 +3344,7 @@ input and output file format:
 one = 1
 @end example
 And, of course, @acronym{OPeNDAP}-enabled @acronym{NCO} clients continue
-to support other, orthogonal features such as UDUnits 
+to support orthogonal features such as UDUnits 
 (@pxref{UDUnits Support}):
 @example
 % ncks -u -C -H -v wvl -d wvl,'0.4 micron','0.7 micron' \
@@ -3323,9 +3369,9 @@ http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/su
 @cindex unpacking
 All with one command!
 The data in this particular input file also happen to be packed
-(@pxref{Methods and functions}), although this is completely transparent
-to the user since @acronym{NCO} automatically unpacks data before
-attempting arithmetic. 
+(@pxref{Methods and functions}), although this complication is
+transparent to the user since @acronym{NCO} automatically unpacks data
+before attempting arithmetic. 
 
 @acronym{NCO} obtains remote files from the @acronym{OPeNDAP} server
 (e.g., @file{www.cdc.noaa.gov}) rather than the local machine. 
@@ -3871,13 +3917,9 @@ build time.
 @cindex @code{--xcl}
 @cindex @code{--unn}
 @cindex @code{--union}
+ at cindex @code{--gxvx}
+ at cindex @code{--grp_xtr_var_xcl}
 @cartouche
-Options @code{--unn}@*
-Availability: @command{ncbo}, @command{nces},
- at command{ncecat}, @command{ncflint}, @command{ncks}, @command{ncpdq},
- at command{ncra}, @command{ncrcat}, @command{ncwa}@* 
-Short options: @*
-Long options: @samp{--unn} and @samp{--union}@*
 Options @code{-g @var{grp}}@*
 Availability: @command{ncbo}, @command{nces},
 @command{ncecat}, @command{ncflint}, @command{ncks}, @command{ncpdq},
@@ -3890,6 +3932,16 @@ Availability: (@command{ncap2}), @command{ncbo}, @command{nces},
 @command{ncra}, @command{ncrcat}, @command{ncwa}@*
 Short options: @samp{-v}, @samp{-x}@*
 Long options: @samp{--variable}, @samp{--exclude} or @samp{--xcl}@*
+Options @code{--unn}@*
+Availability: @command{ncbo}, @command{nces},
+ at command{ncecat}, @command{ncflint}, @command{ncks}, @command{ncpdq},
+ at command{ncra}, @command{ncrcat}, @command{ncwa}@* 
+Short options: @*
+Long options: @samp{--unn} and @samp{--union}@*
+Options @code{--grp_xtr_var_xcl}@*
+Availability: @command{ncks}@*
+Short options: @*
+Long options: @samp{--gxvx} and @samp{--grp_xtr_var_xcl}@*
 @end cartouche
 Subsetting variables refers to explicitly specifying variables and
 groups to be included or excluded from operator actions.
@@ -3926,6 +3978,25 @@ distinctions.
 When learning this syntax it is helpful to keep in mind the similarity
 between group hierarchies and directory structures. 
 
+ at html
+<a name="gxvx"></a> <!-- http://nco.sf.net/nco.html#gxvx -->
+<a name="grp_xtr_var_xcl"></a> <!-- http://nco.sf.net/nco.html#grp_xtr_var_xcl -->
+ at end html
+As of @acronym{NCO} 4.4.4 (June, 2014), @command{ncks} (alone) supports 
+an option to include specified groups yet exclude specified variables.
+The @samp{--grp_xtr_var_xcl} switch (with long option equivalent
+ at samp{--gxvx}) extracts all contents of groups given as arguments to
+ at samp{-g @var{grp}[, at dots{}]}, except for variables given as arguments
+to @samp{-v @var{var}[, at dots{}]}.
+Use this when one or a few variables in hierarchical files are not to be
+extracted, and all other variables are.  
+This is useful when coercing netCDF4 files into netCDF3 files such as
+with converting, flattening, or dismembering files 
+(see @ref{Flattening Groups}).
+ at example       
+ncks --grp_xtr_var_xcl -g g1 -v v1 # Extract all of group g1 except v1
+ at end example
+
 @cindex @command{mv}
 @cindex @command{cp}
 @cindex recursion
@@ -4170,22 +4241,24 @@ those groups, and file @file{in.nc} with variables @code{Q},
 @code{Q01}-- at code{Q99}, @code{Q100}, @code{QAA}-- at code{QZZ},
 @code{Q_H2O}, @code{X_H2O}, @code{Q_CO2}, @code{X_CO2}.  
 @example
+ at verbatim
 ncks -v '.+' in.nc               # All variables (default)
 ncks -v 'Q.?' in.nc              # Variables that contain Q
 ncks -v '^Q.?' in.nc             # Variables that start with Q
 ncks -v '^Q+.?.' in.nc           # Q, Q0--Q9, Q01--Q99, QAA--QZZ, etc.
 ncks -v '^Q..' in.nc             # Q01--Q99, QAA--QZZ, etc.
 ncks -v '^Q[0-9][0-9]' in.nc     # Q01--Q99, Q100
-ncks -v '^Q[[:digit:]]@{2@}' in.nc # Q01--Q99
+ncks -v '^Q[[:digit:]]{2}' in.nc # Q01--Q99
 ncks -v 'H2O$' in.nc             # Q_H2O, X_H2O 
 ncks -v 'H2O$|CO2$' in.nc        # Q_H2O, X_H2O, Q_CO2, X_CO2 
 ncks -v '^Q[0-9][0-9]$' in.nc    # Q01--Q99
 ncks -v '^Q[0-6][0-9]|7[0-3]' in.nc # Q01--Q73, Q100
 ncks -v '(Q[0-6][0-9]|7[0-3])$' in.nc # Q01--Q73
-ncks -v '^[a-z]_[a-z]@{3@}$' in.nc # Q_H2O, X_H2O, Q_CO2, X_CO2
+ncks -v '^[a-z]_[a-z]{3}$' in.nc # Q_H2O, X_H2O, Q_CO2, X_CO2
 ncks -g 'g.' in_grp.nc           # 10 Groups g0-g9
 ncks -g 's.' in_grp.nc       # 100 sub-groups g0/s0, g0/s1, ... g9/s9
 ncks -g 'g.' -v 'v.' in_grp.nc   # All variables 'v.' in groups 'g.'
+ at end verbatim
 @end example
 Beware---two of the most frequently used repetition pattern matching
 operators, @samp{*} and @samp{?}, are also valid pattern matching
@@ -4267,12 +4340,15 @@ automatically specifying that @emph{all} coordinate variables in the
 Thus @samp{-c} allows the user to select all the coordinate variables
 without having to know their names.
 @cindex @acronym{CF} conventions
-As of @acronym{NCO} version 3.9.6 (January, 2009) 
-both @samp{-c} and @samp{-C} honor the @acronym{CF} @code{coordinates}
-convention described in @ref{CF Conventions}.
+As of @acronym{NCO} version 4.4.5 (July, 2014) 
+both @samp{-c} and @samp{-C} honor the @acronym{CF} @code{ancillary_variables}
+convention described in @ref{CF Conventions}. 
 As of @acronym{NCO} version 4.0.8 (April, 2011) 
 both @samp{-c} and @samp{-C} honor the @acronym{CF} @code{bounds}
 convention described in @ref{CF Conventions}. 
+As of @acronym{NCO} version 3.9.6 (January, 2009) 
+both @samp{-c} and @samp{-C} honor the @acronym{CF} @code{coordinates}
+convention described in @ref{CF Conventions}.
 
 @html
 <a name="gpe"></a> <!-- http://nco.sf.net/nco.html#gpe -->
@@ -4331,6 +4407,14 @@ Hence, @samp{-G :-1} is the same as @samp{-G @@1}.
 This is simply a way of making the @var{lvl_nbr} argument
 positive-definite. 
 
+ at menu
+* Flattening Groups::
+* Moving Groups::
+* Dismembering Files::
+* Checking CF-compliance::
+ at end menu
+ at node Flattening Groups, Moving Groups, Group Path Editing, Group Path Editing
+ at subsection Deletion, Truncation, and Flattening of Groups
 @html
 <a name="flatten"></a> <!-- http://nco.sf.net/nco.html#flatten -->
 <a name="delete"></a> <!-- http://nco.sf.net/nco.html#delete -->
@@ -4401,6 +4485,7 @@ groups and their placement in the output file as shown by the following
 commands. 
 All commands below may be assumed to end with @samp{in.nc out.nc}.
 @example       
+ at verbatim
 # Prepending paths without editing:
 ncks                   # /g?/v? -> /g?/v?
 ncks             -v v1 # /g?/v1 -> /g?/v1
@@ -4433,7 +4518,7 @@ ncks -G g2:                # /g?/v?    -> /g2/v?
 ncks -G g2: -g g1/g1 -v v1 # /g1/g1/v1 -> /g2/v1
 # Truncate-mode: Truncate from and Append to path tail
 # Syntax: -G [apn]:-lvl_nbr = # of levels to truncate
-# NB: -G [apn]:-lvl_nbr is equivalent to -G [apn]@@lvl_nbr
+# NB: -G [apn]:-lvl_nbr is equivalent to -G [apn]@lvl_nbr
 ncks -G :-1   -g g1    -v v1 # /g1/v1    -> /v1
 ncks -G :-1   -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/v1
 ncks -G :-2   -g g1/g2 -v v1 # /g1/g2/v1 -> /v1
@@ -4441,12 +4526,15 @@ ncks -G :-2   -g g1    -v v1 # /g1/v1    -> /v1
 ncks -G g2:-1          -v v1 # /g?/v1    -> /g2/v1
 ncks -G g2:-1 -g g1    -v v1 # /g1/v1    -> /g2/v1
 ncks -G g1:-1 -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/g1/v1
+ at end verbatim
 @end example
 
 @html
 <a name="mv"></a> <!-- http://nco.sf.net/nco.html#mv -->
 <a name="move"></a> <!-- http://nco.sf.net/nco.html#move -->
 @end html
+ at node Moving Groups, Dismembering Files, Flattening Groups, Group Path Editing
+ at subsection Moving Groups
 @cindex move groups
 @cindex groups, moving
 @cindex rename groups
@@ -4504,6 +4592,8 @@ all other groups (e.g., @code{ecmwf}, @code{giss}).
 <a name="disaggregate"></a> <!-- http://nco.sf.net/nco.html#disaggregate -->
 <a name="ncdismember"></a> <!-- http://nco.sf.net/nco.html#ncdismember -->
 @end html
+ at node Dismembering Files, Checking CF-compliance, Moving Groups, Group Path Editing
+ at subsection Dismembering Files
 @cindex disaggregate
 @cindex dismember
 @findex ncdismember
@@ -4620,6 +4710,8 @@ as @code{NC_STRING} and @code{NC_UBYTE}) to corresponding netCDF3
 atomic types (@code{NC_CHAR} and @code{NC_SHORT}) when the output format
 is netCDF3. 
 
+ at node Checking CF-compliance,  , Dismembering Files, Group Path Editing
+ at subsection Checking CF-compliance
 @cindex @acronym{CF} compliance checker
 @findex cfchecker
 @findex ncdismember
@@ -4689,15 +4781,15 @@ of the procedure necessary to check @acronym{HDF} files for
 @example
 @verbatim
 cat > ~/ncdismember.txt << 'EOF'
-    Preparing an RPM-based OS to Test Hierarchical Files for CF-Compliance
+    Preparing an RPM-based OS to Test HDF & netCDF Files for CF-Compliance
 
 By Charlie Zender, UCI & NASA Dataset Interoperability Working Group (DIWG)
 
 Installation Summary:
-1. HDF4 [with netCDF support _disabled_]
+1. HDF4 [with internal netCDF support _disabled_]
 2. HDF5
-3. netCDF version 4.3.1 (or later) [with HDF4 support _enabled_]
-4. NCO version 4.4.0 (or later)
+3. netCDF [with external HDF4 support _enabled_]
+4. NCO
 5. numpy
 6. netcdf4-python
 7. python-lxml
@@ -4728,20 +4820,19 @@ cd hdf5-1.8.11
 ./configure --enable-shared --prefix=${H5DIR}
 make && make check && make install
 
-# 3. netCDF version 4.3.1. Build in non-default manner with HDF4. No RPM.
+# 3. netCDF version 4.3.1 or later. Build in non-default manner with HDF4.
 # Per http://www.unidata.ucar.edu/software/netcdf/docs/build_hdf4.html
 # Earlier versions of netCDF may fail checking some HDF4 files
-wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.1.tar.gz
-tar xvzf netcdf-4.3.1.tar.gz
-cd netcdf-4.3.1
+wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.2.tar.gz
+tar xvzf netcdf-4.3.2.tar.gz
+cd netcdf-4.3.2
 CPPFLAGS="-I${H5DIR}/include -I${H4DIR}/include" \
 LDFLAGS="-L${H5DIR}/lib -L${H4DIR}/lib" \
 ./configure --enable-hdf4 --enable-hdf4-file-tests
-make && make check && make installas
+make && make check && make install
 
-# 4. NCO version 4.4.4. No RPM for this version. Must install by hand.
-# Earlier versions of NCO are relatively useless for ncdismember
-cd ${DATA}/tmp
+# 4. NCO version 4.4.0 or later. Some RPMs available. Or install by hand.
+# Later versions of NCO have much better support for ncdismember
 wget http://nco.sourceforge.net/src/nco-4.4.4.tar.gz .
 tar xvzf nco-4.4.4.tar.gz
 cd nco-4.4.4
@@ -4759,14 +4850,13 @@ sudo yum install python-lxml -y
 
 # 8. CFunits-python. No RPM available. Must install by hand.
 # http://code.google.com/p/cfunits-python/
-cd ${DATA}/tmp
 wget http://cfunits-python.googlecode.com/files/cfunits-0.9.6.tar.gz .
+tar xvzf cfunits-0.9.6.tar.gz
 cd cfunits-0.9.6
 sudo python setup.py install
 
 # 9. CFChecker. No RPM available. Must install by hand.
 # https://bitbucket.org/mde_/cfchecker
-cd ${DATA}/tmp
 wget https://bitbucket.org/mde_/cfchecker/downloads/CFchecker-1.5.15.tar.bz2 . 
 tar xvjf CFchecker-1.5.15.tar.bz2 
 cd CFchecker
@@ -5063,14 +5153,16 @@ concatenate the resulting files together:
 @cindex Bourne Shell
 @cindex C Shell
 @example
+ at verbatim
 for idx in 02 14 26 38 50; do # Bourne Shell
-  ncks -d time,$@{idx@} 8501_8912.nc foo.$@{idx@}
+  ncks -d time,${idx} 8501_8912.nc foo.${idx}
 done
 foreach idx (02 14 26 38 50) # C Shell
-  ncks -d time,$@{idx@} 8501_8912.nc foo.$@{idx@}
+  ncks -d time,${idx} 8501_8912.nc foo.${idx}
 end
 ncrcat foo.?? 8589_03.nc
 rm foo.??
+ at end verbatim
 @end example
 With the @var{stride} option, @command{ncks} performs this hyperslab
 extraction in one operation:
@@ -5216,13 +5308,15 @@ Traditionally, we would first compute the climatological monthly
 mean for each month of summer. 
 Each of these is a 150-year mean, i.e., 
 @example
+ at verbatim
 # Step 1: Create climatological monthly files clm06.nc..clm08.nc
-for mth in @{6..8@}; do
+for mth in {6..8}; do
   mm=`printf "%02d" $mth`
-  ncra -O -F -d time,$@{mm@},,12 -n 150,4,1 1850.nc clm$@{mm@}.nc
+  ncra -O -F -d time,${mm},,12 -n 150,4,1 1850.nc clm${mm}.nc
 done
 # Step 2: Average climatological monthly files into summertime mean
 ncra -O clm06 clm07.nc clm08.nc clm_JJA.nc
+ at end verbatim
 @end example
 @noindent
 So far, nothing is unusual and this task can be performed by any
@@ -5573,7 +5667,7 @@ ranges.
 This works on datasets that associate coordinate variables to
 grid-mappings using the @acronym{CF}-convention (@pxref{CF Conventions})   
 @code{coordinates} and @code{standard_name} attributes described 
- at uref{http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system, here}. 
+ at uref{http://cfconventions.org/1.6.html#coordinate-system, here}. 
 Currently, @acronym{NCO} understands auxiliary coordinate variables 
 pointed to by the @code{standard_name} attributes for @var{latitude} and 
 @var{longitude}.   
@@ -6269,30 +6363,33 @@ performance.
 The user specifies the desired chunking policy with the @samp{-P} switch 
 (or its long option equivalents, @samp{--cnk_plc} and
 @samp{--chunk_policy}) and its @var{cnk_plc} argument.
-Five chunking policies are currently implemented:@*   
+As of August, 2014, six chunking policies are implemented:@*
 @cindex @samp{all}
 @cindex @samp{g2d}
 @cindex @samp{g3d}
+ at cindex @samp{r1d}
 @cindex @samp{xpl}
 @cindex @samp{xst}
 @cindex @samp{cnk_all}
 @cindex @samp{cnk_g2d}
 @cindex @samp{cnk_g3d}
+ at cindex @samp{cnk_r1d}
 @cindex @samp{cnk_xpl}
 @cindex @samp{cnk_xst}
 @cindex @samp{plc_all}
 @cindex @samp{plc_g2d}
 @cindex @samp{plc_g3d}
+ at cindex @samp{plc_r1d}
 @cindex @samp{plc_xpl}
 @cindex @samp{plc_xst}
 @table @dfn
- at item Chunk All Variables [@emph{default}]
+ at item Chunk All Variables
 Definition: Chunk all variables possible.
 For obvious reasons, scalar variables cannot be chunked.@*
 Alternate invocation: @code{ncchunk}@*
 @var{cnk_plc} key values: @samp{all}, @samp{cnk_all}, @samp{plc_all}@*
 Mnemonic: All@*
- at item Chunk Variables with at least Two Dimensions
+ at item Chunk Variables with at least Two Dimensions [@emph{default}]
 Definition: Chunk all variables possible with at least two dimensions@*
 Alternate invocation: none@*
 @var{cnk_plc} key values: @samp{g2d}, @samp{cnk_g2d}, @samp{plc_g2d}@*
@@ -6302,6 +6399,15 @@ Definition: Chunk all variables possible with at least three dimensions@*
 Alternate invocation: none@*
 @var{cnk_plc} key values: @samp{g3d}, @samp{cnk_g3d}, @samp{plc_g3d}@*
 Mnemonic: @emph{G}reater than or equal to @emph{3} @emph{D}imensions@*
+ at item Chunk One-Dimensional Record Variables
+Definition: Chunk all 1-D record variables@*
+Alternate invocation: none@*
+Any specified (with @samp{--cnk_dmn}) record dimension chunksizes will
+be applied to 1-D record variables (and to no other variables).
+Other dimensions may be chunked with their own @samp{--cnk_dmn} options 
+that will apply to all variables. 
+ at var{cnk_plc} key values: @samp{r1d}, @samp{cnk_r1d}, @samp{plc_r1d}@*
+Mnemonic: @emph{R}ecord @emph{1}- at emph{D} variables@*
 @item Chunk Variables Containing Explicitly Chunked Dimensions
 Definition: Chunk all variables possible that contain at least one
 dimension whose chunksize was explicitly set with the @samp{--cnk_dmn} option.
@@ -6437,6 +6543,14 @@ The option takes two comma-separated arguments,
 chunksize, respectively. 
 The @samp{--cnk_dmn} option may be used as many times as necessary.
 
+The default behavior of chunking depends on several factors.
+When no chunking options are explicitly specified by the user, then
+output netCDF4 files are chunked with the default behavior of the 
+netCDF4 library.
+When any chunking option @emph{except} @samp{cnk_plc} or @samp{cnk_map}
+is specified, then @samp{cnk_plc} and @samp{cnk_map} are set to
+ at samp{g2d} and @samp{rd1}, respectively.
+
 @html
 <a name="xmp_cnk"></a> <!-- http://nco.sf.net/nco.html#xmp_cnk -->
 <a name="xmp_chunk"></a> <!-- http://nco.sf.net/nco.html#xmp_chunk -->
@@ -6476,6 +6590,24 @@ ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
  --cnk_dmn lon,128 dstmch90_clm_0112.nc ~/foo.nc
 @end example
 
+ at html
+<a name="r1d"></a> <!-- http://nco.sf.net/nco.html#r1d -->
+ at 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})
+chunksize. 
+Any specified record dimension chunksizes will be applied to 1-D
+record variables only. 
+Other dimensions may be chunked with their own @samp{--cnk_dmn} options
+that will apply to all variables. 
+For example, 
+ at example
+ncks --cnk_plc=r1d --cnk_dmn=time,1000. in.nc out.nc
+ at end example
+This sets @code{time} chunks to 1000 only in 1-D record variables. 
+Without the @samp{r1d} policy, @code{time} chunks would change in all 
+variables.   
+
 @cindex record dimension
 It is appropriate to conclude by informing users about an aspect of
 chunking that may not be expected.
@@ -6802,16 +6934,18 @@ an arbitrary number (set to one hundred thousand) of files are all
 symbolically linked to the same file. 
 Everything is on the local filesystem (not @acronym{DAP}).
 @example
+ at verbatim
 # Create symbolic links for benchmark
-cd $@{DATA@}/nco # Do all work here
-for idx in @{1..99999@}; do
-  idx_fmt=`printf "%05d" $@{idx@}`
-  /bin/ln -s $@{DATA@}/nco/LPRM-AMSR_E_L3_D_SOILM3_V002-20120512T111931Z_20020619.nc \
-             $@{DATA@}/nco/$@{idx_fmt@}.nc
+cd ${DATA}/nco # Do all work here
+for idx in {1..99999}; do
+  idx_fmt=`printf "%05d" ${idx}`
+  /bin/ln -s ${DATA}/nco/LPRM-AMSR_E_L3_D_SOILM3_V002-20120512T111931Z_20020619.nc \
+             ${DATA}/nco/${idx_fmt}.nc
 done
 # Benchmark time to ncecat one hundred thousand files
 time ncecat --create_ram -O -u time -v ts -d Latitude,40.0 \ 
- -d Longitude,-105.0 -p $@{DATA@}/nco -n 99999,5,1 00001.nc ~/foo.nc
+ -d Longitude,-105.0 -p ${DATA}/nco -n 99999,5,1 00001.nc ~/foo.nc
+ at end verbatim
 @end example
 Run normally on a laptop in 201303, this completes in @w{21 seconds}.
 The @samp{--create_ram} reduces the elapsed time to @w{9 seconds}.
@@ -7570,7 +7704,7 @@ This is why type conversion is limited to the operators @command{ncap2},
 @command{ncwa}.   
 @item The arithmetic operation could benefit from type conversion.
 Operations that could benefit include averaging, summation, or any
-"hard" arithmetic that could overflow or underflow.  
+``hard'' arithmetic that could overflow or underflow.  
 Larger representable sums help avoid overflow, and more precision
 helps to avoid underflow.
 Type conversion does not benefit searching for minima and maxima
@@ -7641,8 +7775,8 @@ These functions round @var{x} to the nearest integer, halfway cases away
 from zero.
 The problem with @code{lround()} is that it always rounds real values
 ending in @code{.5} away from zero.
-This rounds, for example, @code{1.5d} and @code{2.5d} to @code{1s}
-and @code{2s}, respectively.
+This rounds, for example, @code{1.5d} and @code{2.5d} to @code{2s}
+and @code{3s}, respectively.
 
 @findex @code{lrint()}. 
 @cindex @acronym{IEEE}
@@ -7688,18 +7822,18 @@ More, err, precisely, the @acronym{IEEE} single-precision representation
 gives from @w{6 to 9} significant decimal digits precision
 @footnote{According to Wikipedia's summary of @acronym{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
+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 IEEE 754 single-precision is converted to a
+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''.}.
 And the @acronym{IEEE} double-precision representation
 gives from @w{15 to 17} significant decimal digits precision
 @footnote{According to Wikipedia's summary of @acronym{IEEE} standard
 754, ``If a decimal string with at most 15 significant digits is
-converted to IEEE 754 double-precision representation and then converted
+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 IEEE 754 double
+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''.}. 
@@ -7815,9 +7949,9 @@ seven significant figures for single precision floats (@code{tpt_flt}),
 and sixteen significant figures for double precision (@code{tpt_dbl}).
 The input precision determines the answer precision.
 
-IEEE arithmetic guarantees that two methods will produce bit-for-bit
-identical answers only if they compute the same operations in the same  
-order.  
+ at acronym{IEEE} arithmetic guarantees that two methods will produce
+bit-for-bit identical answers only if they compute the same operations
+in the same order.  
 Bit-for-bit identical answers may also occur by happenstance when 
 rounding errors exactly compensate one another.
 This is demonstrated by repeating the example above with the
@@ -8274,8 +8408,8 @@ Nevertheless, we refer to all such metadata collectively as @acronym{CF}
 metadata. 
 Skip this section if you never work with @acronym{CF} metadata.
 
-The @acronym{CF} netCDF conventions are described 
- at uref{http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system, here}. 
+The latest @acronym{CF} netCDF conventions are described 
+ at uref{http://cfconventions.org/1.6.html, here}. 
 Most @acronym{CF} netCDF conventions are transparent to @acronym{NCO}  
 @footnote{
 The exception is appending/altering the attributes @code{x_op},
@@ -8371,7 +8505,7 @@ or alter the @code{Conventions} attribute.
 As of @acronym{NCO} version 4.0.8 (April, 2011), @acronym{NCO} 
 supports the @acronym{CF} @code{bounds} convention for cell boundaries
 described 
- at uref{http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#cell-boundaries, here}.
+ at uref{http://cfconventions.org/1.6.html#cell-boundaries, here}.
 This convention allows coordinate variables (including multidimensional
 coordinates) to describe the boundaries of their cells.
 This is done by naming the variable which contains the bounds in
@@ -8381,6 +8515,28 @@ NCO-generated subsets of @acronym{CF}-compliant files with @code{bounds}
 attributes will include the coordinates specified by the @code{bounds}
 attribute, if any.  
 Hence the subsets will themselves be @acronym{CF}-compliant.
+Bounds are subject to the user-specified override switches
+(including @samp{-c} and @samp{-C}) described in 
+ at ref{Subsetting Coordinate Variables}. 
+
+ at html
+<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 -->
+ at end html
+ at cindex @code{ancillary_variables}
+ at 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 
+described 
+ at uref{http://cfconventions.org/1.6.html#ancillary-data, here}.
+This convention allows ancillary variables to be associated with one or
+more primary variables.
+ at acronym{NCO} attaches any such variables to the extraction list along 
+with the primary variable and its usual (one-dimensional) coordinates,
+if any. 
+Ancillary variables are subject to the user-specified override switches 
+(including @samp{-c} and @samp{-C}) described in 
+ at ref{Subsetting Coordinate Variables}. 
 
 @html
 <a name="cnv_CF_crd"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_crd -->
@@ -8398,14 +8554,15 @@ Hence the subsets will themselves be @acronym{CF}-compliant.
 @cindex @code{--crd}
 As of @acronym{NCO} version 3.9.6 (January, 2009), @acronym{NCO}
 supports the @acronym{CF} @code{coordinates} convention described 
- at uref{http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system, here}. 
+ at uref{http://cfconventions.org/1.6.html#coordinate-system, here}. 
 This convention allows variables to specify additional coordinates
 (including multidimensional coordinates) in a space-separated string
 attribute named @code{coordinates}. 
-NCO attaches any such coordinates to the extraction list along with
-variable and its usual (one-dimensional) coordinates, if any.
-These auxiliary coordinates are subject to the user-specified overrides
-described in @ref{Subsetting Coordinate Variables}.
+ at acronym{NCO} attaches any such coordinates to the extraction list along
+with variable and its usual (one-dimensional) coordinates, if any.
+These auxiliary coordinates are subject to the user-specified override
+switches (including @samp{-c} and @samp{-C}) described in 
+ at ref{Subsetting Coordinate Variables}. 
 
 @html
 <a name="cnv_CF_cll_mth"></a> <!-- http://nco.sf.net/nco.html#cnv_CF_cll_mth -->
@@ -8421,7 +8578,7 @@ described in @ref{Subsetting Coordinate Variables}.
 @cindex cell methods convention
 As of @acronym{NCO} version 4.4.2 (February, 2014), @acronym{NCO} 
 supports some of the @acronym{CF} @code{cell_methods} 
- at uref{http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.7-draft1/cf-conventions.html#cell-methods, convention}
+ at uref{http://cfconventions.org/1.6.html#cell-methods, convention}
 to describe the analysis procedures that have been applied to data.
 The convention creates (or appends to an existing) @code{cell_methods}
 attribute a space-separated list of couplets of the form @var{dmn: op}
@@ -8575,7 +8732,6 @@ described in any detail in the sections below.
 @cindex arithmetic processor
 @findex ncap
 @findex ncap2
-
 @cartouche
 @command{ncap2} understands a relatively full-featured 
 language of operations, including loops, conditionals, arrays,
@@ -8808,6 +8964,7 @@ to precision and rank.@*
 Examples:
 
 @example
+ at verbatim
 dimensions: time=10, lat=2, lon=4
 Suppose we have the two variables:
 
@@ -8833,11 +8990,12 @@ PZ0 =
 Once the expression is evaluated then PZ will be of type double;
 
 Consider now 
- start=four-att_var@@double_att;  // start =-69  and is of type intger;
+ start=four-att_var at double_att;  // start =-69  and is of type intger;
  four_pow=four^3.0f               // four_pow=64 and is of type float  
  three_nw=three_dmn_var_sht*1.0f; // type is now float
- start@@n1=att_var@@short_att*att_var@@int_att; 
-                                  // start@@n1=5329 and is type int 
+ start at n1=att_var at short_att*att_var at int_att; 
+                                  // start at n1=5329 and is type int 
+ at end verbatim
 @end example
 
 @noindent @strong{Binary Operators} @* 
@@ -8911,9 +9069,11 @@ returned else exp3 is returned.
 
 Example:
 @example
+ at verbatim
 weight_avg=weight.avg();
-weight_avg@@units= (weight_avg == 1 ? "kilo" : "kilos");  
+weight_avg at units= (weight_avg == 1 ? "kilo" : "kilos");  
 PS_nw=PS-(PS.min() > 100000 ? 100000 : 0);
+ at end verbatim
 @end example
 
 @html
@@ -9153,8 +9313,9 @@ The number of hyperslab arguments MUST equal the variable's rank.
 
 A simple 1D example:
 @example 
+ at verbatim
 ($time.size=10)
-od[$time]=@{20,22,24,26,28,30,32,34,36,38@};
+od[$time]={20,22,24,26,28,30,32,34,36,38};
 
 od(7);     // 34
 od(7:);    // 34,36,38
@@ -9162,13 +9323,15 @@ od(:7);    // 20,22,24,26,28,30,32,34
 od(::4);   // 20,28,36
 od(1:6:2)  // 22,26,30
 od(:)      // 20,22,24,26,28,30,32,34,36,38 
+ at end verbatim
 @end example
 
 A more complex three dimensional example:
 @example
+ at verbatim
 ($lat.size=2,$lon.size=4)
 th[$time,$lat,$lon]=      
-                          @{1, 2, 3, 4, 5, 6, 7, 8,
+                          {1, 2, 3, 4, 5, 6, 7, 8,
                           9,10,11,12,13,14,15,16,
                           17,18,19,20,21,22,23,24,
                           -99,-99,-99,-99,-99,-99,-99,-99,
@@ -9177,12 +9340,13 @@ th[$time,$lat,$lon]=
                           49,50,51,52,53,54,55,56,
                           -99,58,59,60,61,62,63,64,
                           65,66,67,68,69,70,71,72,
-                          -99,74,75,76,77,78,79,-99 @};
+                          -99,74,75,76,77,78,79,-99 };
 
 th(1,1,3);        // 16
 th(2,0,:);        // 17, 18, 19, 20
 th(:,1,3);        // 8, 16, 24, -99, 40, 48, 56, 64, 72, -99 
 th(::5,:,0:3:2); // 1, 3, 5, 7, 41, 43, 45, 47
+ at end verbatim
 @end example
 
 If hyperslab arguments collapse to a single value (a cross-section has
@@ -9240,8 +9404,10 @@ Use the @code{reverse()} method to reverse a dimension's elements in a
 variable with at least one dimension.
 This is equivalent to a negative stride, e.g., 
 @example 
-th_rv=th(1 ,:,:).reverse($lon); // @{12,11,10,9 @}, @{16,15,14,13@}
-od_rv=od.reverse($time);        // @{38,36,34,32,30,28,26,24,22,20@}
+ at verbatim
+th_rv=th(1 ,:,:).reverse($lon); // {12,11,10,9 }, {16,15,14,13}
+od_rv=od.reverse($time);        // {38,36,34,32,30,28,26,24,22,20}
+ at end verbatim
 @end example
 
 @noindent @strong{Permute method}p@*
@@ -9279,22 +9445,26 @@ three_dmn_var_prm=
 @noindent Attributes are referred to by @emph{var_nm@@att_nm} @*
 All the following are valid statements:
 @example
-global@@text="Test Attributes"; /* Assign a global variable attribute */
+ at verbatim
+global at text="Test Attributes"; /* Assign a global variable attribute */
 a1[$time]=time*20;
-a1@@long_name="Kelvin";
-a1@@min=a1.min();
-a1@@max=a1.max();
-a1@@min++;
---a1@@max; q
-a1(0)=a1@@min;
-a1($time.size-1)=a1@@max;
+a1 at long_name="Kelvin";
+a1 at min=a1.min();
+a1 at max=a1.max();
+a1 at min++;
+--a1 at max; q
+a1(0)=a1 at min;
+a1($time.size-1)=a1 at max;
+ at end verbatim
 @end example
 
 A @emph{value list} can be used on the RHS of an assign...
 @cindex value list
 @example
-a1@@trip1=@{1,2,3@} ;
-a1@@triplet=@{a1@@min,(a1@@min+a1@@max)/2,a1@@max@}; 
+ at verbatim
+a1 at trip1={1,2,3} ;
+a1 at triplet={a1 at min,(a1 at min+a1@max)/2,a1 at max}; 
+ at end verbatim
 @end example
 The netCDF specification allows all attribute types to have a size
 greater than one. 
@@ -9312,8 +9482,10 @@ double a1(time) ;
 The @code{size()} method can be used with attributes.
 For example, to save an attribute text string in a variable,
 @example
-defdim("sng_len", a1@@long_name.size());
-sng_arr[$sng_len]=a1@@long_name; // sng_arr now contains "Kelvin" 
+ at verbatim
+defdim("sng_len", a1 at long_name.size());
+sng_arr[$sng_len]=a1 at long_name; // sng_arr now contains "Kelvin" 
+ at end verbatim
 @end example
 Attributes defined in a script are stored in memory and are written to Output after script completion.
 To stop the attribute being written use the ram_delete() method or use a bogus variable name.
@@ -9336,7 +9508,9 @@ th_min=1.0 + 2*three_dmn_var_dbl.min($time);
 
 If the attribute name contains non-regular characters use ID quoting. See @pxref{ID Quoting}
 @example
-'b..m1@@c--lost'=23;
+ at verbatim
+'b..m1 at c--lost'=23;
+ at end verbatim
 @end example
 
 @html
@@ -9351,11 +9525,13 @@ To use the new netCDF4 types @acronym{NCO} must be compiled/linked to
 the netCDF4 library and the output file must be @acronym{HDF5}.
 
 @example
+ at verbatim
 n1[$time]=1UL; // n1 will now by type @code{NC_UINT}
 n2[$lon]=4b;   // n2 will be of type @code{NC_BYTE}
 n3[$lat]=5ull; // n3 will be of type @code{NC_UINT64}  
-n3@@a1=6.0d;   // attribute will be type @code{NC_DOUBLE}
-n3@@a2=-666L;  // attribute will be type @code{NC_INT}
+n3 at a1=6.0d;   // attribute will be type @code{NC_DOUBLE}
+n3 at a2=-666L;  // attribute will be type @code{NC_INT}
+ at end verbatim
 @end example
 
 A floating point number without a postfix will default to
@@ -9363,13 +9539,15 @@ A floating point number without a postfix will default to
 An integer without a postfix will default to type @code{NC_INT}. 
 There is no postfix for characters, use a quoted string instead.
 @example
+ at verbatim
 n4[$rlev]=0.1      // n4 will be of type @code{NC_DOUBLE}
 n5[$lon_grd]=2.0   // n5 will be of type @code{NC_DOUBLE}
 n6[$gds_crd]=2e3;  // n6 will be of type @code{NC_DOUBLE}
 n7[$gds_crd]=2e3f;  // n7 will be of type @code{NC_FLOAT}
-n6@@a1=41;         // attribute will be type @code{NC_INT}
-n6@@a2=-21;        // attribute will be type @code{NC_INT}  
-n6@@units="kelvin" // attribute will be type @code{NC_CHAR}
+n6 at a1=41;         // attribute will be type @code{NC_INT}
+n6 at a2=-21;        // attribute will be type @code{NC_INT}  
+n6 at units="kelvin" // attribute will be type @code{NC_CHAR}
+ at end verbatim
 @end example 
 
 @table @asis
@@ -9409,6 +9587,7 @@ The syntax of the if statement is similar to its C counterpart.
 The @emph{Conditional Operator (ternary operator)} has also been
 implemented. 
 @example
+ at verbatim
 if(exp1)
    stmt1;
 else if(exp2)     
@@ -9417,17 +9596,18 @@ else
    stmt3;
 
 # Can use code blocks as well:
-if(exp1)@{
+if(exp1){
    stmt1;
    stmt1a;
    stmt1b;
-@} else if(exp2)     
+}else if(exp2)     
    stmt2; 
-else @{
+else{
    stmt3;
    stmt3a;
    stmt3b;
-@}     
+}   
+ at end verbatim
 @end example
 
 @comment Truth
@@ -9440,34 +9620,36 @@ OR (@code{||}) and AND (@code{&&}) operators.
 The whole expression is evaluated regardless if one of the AND/OR
 operands are True/False.
 @example
+ at verbatim
 # Simple example
 if(time>0)
   print("All values of time are greater than zero\n");
 else if( time<0)
   print("All values of time are less than zero\n");   
-else @{
+else {
   time_max=time.max();
   time_min=time.min();
   print("min value of time=");print(time_min,"%f");
   print("max value of time=");print(time_max,"%f");
-@}
+}
 
 # Example from ddra.nco
-if(fl_typ==fl_typ_gcm)@{
+if(fl_typ==fl_typ_gcm){
   var_nbr_apx=32;
   lmn_nbr=1.0*var_nbr_apx*varsz_gcm_4D; /* [nbr] Variable size */
-  if(nco_op_typ==nco_op_typ_avg)@{
+  if(nco_op_typ==nco_op_typ_avg){
     lmn_nbr_avg=1.0*var_nbr_apx*varsz_gcm_4D; // Block size
     lmn_nbr_wgt=dmnsz_gcm_lat; /* [nbr] Weight size */
-  @} // !nco_op_typ_avg
-@}else if(fl_typ==fl_typ_stl)@{
+  } // !nco_op_typ_avg
+}else if(fl_typ==fl_typ_stl){
   var_nbr_apx=8;
   lmn_nbr=1.0*var_nbr_apx*varsz_stl_2D; /* [nbr] Variable size */
-  if(nco_op_typ==nco_op_typ_avg)@{
+  if(nco_op_typ==nco_op_typ_avg){
     lmn_nbr_avg=1.0*var_nbr_apx*varsz_stl_2D; // Block size
     lmn_nbr_wgt=dmnsz_stl_lat; /* [nbr] Weight size */
-  @} // !nco_op_typ_avg
-@} // !fl_typ
+  } // !nco_op_typ_avg
+} // !fl_typ
+ at end verbatim
 @end example
 
 @noindent @strong{Conditional Operator @*}
@@ -9498,6 +9680,7 @@ will be saved and can be printed), and then print the variable.
 
 @noindent examples
 @example
+ at verbatim
 print(lon);
 lon[0]=0 
 lon[1]=90 
@@ -9507,11 +9690,12 @@ lon[3]=270
 print(lon_2D_rrg,"%3.2f,");
 0.00,0.00,180.00,0.00,180.00,0.00,180.00,0.00,
 
-print(mss_val_fst@@_FillValue);
-mss_val_fst@@_FillValue, size = 1 NC_FLOAT, value = -999
+print(mss_val_fst at _FillValue);
+mss_val_fst at _FillValue, size = 1 NC_FLOAT, value = -999
 
 print("This function \t is monotonic\n");
 This function is 	  monotonic
+ at end verbatim
 @end example
 
 @html
@@ -9589,13 +9773,14 @@ They only work on variables in Output.
  If the variable has no missing value then an error is returned.   
 @item delete_miss()
 @cindex @code{delete_miss()}
- Deletes the missing value associated with a variable.
+ Delete the missing value associated with a variable.
 @item number_miss()
 @cindex @code{number_miss()}
- Counts the number of missing values a variable contains.
+ Count the number of missing values a variable contains.
 @end table
 
 @example
+ at verbatim
 th=three_dmn_var_dbl;
 th.change_miss(-1e10d);
 /* Set values less than 0 or greater than 50 to missing value */
@@ -9613,10 +9798,11 @@ elsewhere
 
 // Print missing value and variable summary
 mss_val_nbr=three_dmn_var_dbl.number_miss();
-print(three_dmn_var_dbl@@_FillValue);
+print(three_dmn_var_dbl at _FillValue);
 print("Number of missing values in three_dmn_var_dbl: ");
 print(mss_val_nbr,"%d");
 print(three_dmn_var_dbl);
+ at end verbatim
 @end example
 
 @html
@@ -9853,6 +10039,7 @@ A @code{where()} combines the definition and application of a mask all in one go
 The full syntax of a @code{where()} statement is as follows:
 
 @example
+ at verbatim
 // Single assign (the 'elsewhere' block is optional)
 where(mask) 
    var1=expr1;
@@ -9860,16 +10047,17 @@ elsewhere
    var1=expr2;	   	
 
 // Multiple assigns
-where(mask)@{
+where(mask){
     var1=expr1;
     var2=expr2;
     ...
-@}elsewhere@{
+}elsewhere{
     var1=expr3
     var2=expr4
     var3=expr5;
     ...
-@}
+}
+ at end verbatim
 @end example
 
 @itemize @bullet
@@ -9909,24 +10097,92 @@ to set its values less than 8 or greater than 80 @w{to 0}:
 where(RDM < 8 || RDM > 80) RDM=0;          
 @end example
 
+ at html
+<a name="WRF"></a> <!-- http://nco.sf.net/nco.html#WRF -->
+<a name="SLD"></a> <!-- http://nco.sf.net/nco.html#SLD -->
+<a name="wrf"></a> <!-- http://nco.sf.net/nco.html#wrf -->
+<a name="sld"></a> <!-- http://nco.sf.net/nco.html#sld -->
+ at end html
+ at cindex Weather and Research Forecast (@acronym{WRF}) Model
+ at cindex Swath-like Data (@acronym{SLD})
+ at cindex @acronym{WRF} (Weather and Research Forecast Model)
+ at cindex @acronym{SLD} (Swath-like Data)
 Consider irregularly gridded data, described using @w{rank 2} coordinates: 
 @code{double lat(south_north,east_west)},
 @code{double lon(south_north,east_west)}, 
 @code{double temperature(south_north,east_west)}.
+This type of structure is often found in regional weather/climate model
+(such as @acronym{WRF}) output, and in satellite swath data.
+For this reason we call it ``Swath-like Data'', or @acronym{SLD}.
 To find the average temperature in a region bounded by
 [@var{lat_min}, at var{lat_max}] and [@var{lon_min}, at var{lon_max}]:
 @example
+ at verbatim
 temperature_msk[$south_north,$east_west]=0.0;
-where(lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max)
+where((lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max))
   temperature_msk=temperature;	
 elsewhere
-  temperature_msk=temperature@@_FillValue;
+  temperature_msk=temperature at _FillValue;
 
 temp_avg=temperature_msk.avg();
 temp_max=temperature.max();
+ at end verbatim
 @end example
 
 @html
+<a name="NARR"></a> <!-- http://nco.sf.net/nco.html#NARR -->
+<a name="narr"></a> <!-- http://nco.sf.net/nco.html#narr -->
+ at end html
+ at cindex @acronym{NARR} (North American Regional Reanalysis)a
+ at cindex North American Regional Reanalysis (@acronym{NARR})
+For North American Regional Reanalysis (@acronym{NARR}) data
+(example
+ at uref{http://dust.ess.uci.edu/diwg/narr_uwnd.199605.nc, dataset})
+the procedure looks like this
+ at example
+ at verbatim
+ncap2 -O -v -S ~/narr.nco ${DATA}/hdf/narr_uwnd.199605.nc ~/foo.nc
+ at end verbatim
+ at end example
+where @file{narr.nco} is an @command{ncap2} script like this:
+ at example
+ at verbatim
+/* North American Regional Reanalysis (NARR) Statistics
+   NARR stores grids with 2-D latitude and longitude, aka Swath-like Data (SLD) 
+   Here we work with three variables:
+   lat(y,x), lon(y,x), and uwnd(time,level,y,x);
+   To study sub-regions of SLD, we use masking techniques:
+   1. Define mask as zero times variable to be masked
+      Then mask automatically inherits variable attributes
+      And average below will inherit mask attributes
+   2. Optionally, create mask as RAM variable (as below with asterisk *)
+      NCO does not write RAM variable to output
+      Masks are often unwanted, and can be big, so this speeds execution
+   3. Example could be extended to preserve mean lat and lon of sub-region
+      Follow uwnd example to do this: lat_msk=0.0*lat ... lat_avg=lat.avg($y,$x) */
+*uwnd_msk=0.0*uwnd;
+where((lat >= 35.6 && lat <= 37.0) && (lon >= -100.5 && lon <= -99.0))
+  uwnd_msk=uwnd;
+elsewhere
+  uwnd_msk=uwnd at _FillValue;
+
+// Average only over horizontal dimensions x and y (preserve level and time)
+uwnd_avg=uwnd_msk.avg($y,$x); 
+ at end verbatim
+ at end example
+Stripped of comments and formatting, this example is a three-statement
+script executed by a one-line command. 
+ at acronym{NCO} needs only this meagre input to unpack and copy the input
+data and attributes, compute the statistics, and then define and write
+the output file.  
+Unless the comments pointed out that wind variable (@code{uwnd}) was
+four-dimensional and the latitude/longitude grid variables were both
+two-dimensional, there would be no way to tell.
+This shows how @acronym{NCO} hides from the user the complexity of
+analyzing multi-dimensional @acronym{SLD}. 
+We plan to extend such @acronym{SLD} features to more operators soon.
+
+ at html
 <a name="ncap_lop"></a> <!-- http://nco.sf.net/nco.html#ncap_lop -->
 @end html
 @node Loops, Include files, Where statement, ncap2 netCDF Arithmetic Processor
@@ -9940,6 +10196,7 @@ To break out of a loop use the @command{break} command.
 To iterate to the next cycle use the @command{continue} command. 
 
 @example
+ at verbatim
 // Set elements in variable double temp(time,lat) 
 // If element < 0 set to 0, if element > 100 set to 100
 *sz_idx=$time.size;
@@ -9964,13 +10221,14 @@ if(idx == sz) print("lat co-ordinate is monotonic\n");
 *sz=$lat_nw.size;
 *sum=0.0;
 
-while(idx<sz)@{
+while(idx<sz){
   if(lat(idx)%2) sum+=lat(idx);
   idx++;
-@}
+}
 
 ram_write(sum);
 print("Total of odd elements ");print(sum);print("\n"); 
+ at end verbatim
 @end example
 
 @html
@@ -10048,17 +10306,19 @@ de-sorting map @var{dsr_map} which is inverse map of the input map
 This gives the user access to both the forward and inverse sorting maps
 which can be useful in special situations.
 @example
-a1[$time]=@{10,2,3,4,6,5,7,3,4,1@};
+ at verbatim
+a1[$time]={10,2,3,4,6,5,7,3,4,1};
 a1_sort=sort(a1);
 print(a1_sort);
 // 1, 2, 3, 3, 4, 4, 5, 6, 7, 10;
 
-a2[$lon]=@{2,1,4,3@};
+a2[$lon]={2,1,4,3};
 a2_sort=sort(a2,&a2_map);
 print(a2);
 // 1, 2, 3, 4
 print(a2_map);
 // 1, 0, 3, 2;
+ at end verbatim
 @end example  
 
 If the map variable does not exist prior to the @command{sort()} call,
@@ -10068,15 +10328,16 @@ If the map variable already exists, then the only restriction is that it
 be of at least the same size as the input variable. 
 To apply a map use @code{remap(var_in,srt_map)}. 
 @example
+ at verbatim
 defdim("nlat",5);
 
-a3[$lon]=@{2,5,3,7@};
-a4[$nlat,$lon]=@{
+a3[$lon]={2,5,3,7};
+a4[$nlat,$lon]={
  1, 2, 3, 4, 
  5, 6, 7, 8,
  9,10,11,12,
  13,14,15,16,
- 17,18,19,20@};
+ 17,18,19,20};
 
 a3_sort=sort(a3,&a3_map);
 print(a3_map);
@@ -10090,7 +10351,7 @@ print(a4_sort);
 // 13,15,14,16,
 // 17,19,18,20;
 
-a3_map2[$nlat]=@{4,3,0,2,1@};
+a3_map2[$nlat]={4,3,0,2,1};
 
 a4_sort2=remap(a4,a3_map2);
 print(a4_sort2);
@@ -10098,6 +10359,7 @@ print(a4_sort2);
 // 8, 10, 9,7, 6, 
 // 13,15,14,12,11, 
 // 18,20,19,17,16
+ at end verbatim
 @end example
 As in the above example you may create your own sort map.
 To sort in descending order, apply the @code{reverse()} method after the
@@ -10389,10 +10651,6 @@ ncap2 -S ncap2.in in.nc out.nc
 @end verbatim
 @end example
 
- at html
-<a name="wrf"></a> <!-- http://nco.sf.net/nco.html#wrf -->
-<a name="WRF"></a> <!-- http://nco.sf.net/nco.html#WRF -->
- at end html
 @ignore
 http://foehn.colorado.edu/wrfout_to_cf/wrfout_to_cf.ncl
 ncl 'file_in="wrfout.nc"' 'file_out="wrfpost.nc"' wrfout_to_cf.ncl
@@ -10405,7 +10663,7 @@ one must use global metadata to determine the grid staggering and
 offsets to translate @code{XLAT} and @code{XLONG} into real latitudes, 
 longitudes, and missing points. 
 The @acronym{WRF} grid documentation should describe this.
-For @acronym{WRF} files creating regional masks looks like 
+For @acronym{WRF} files creating regional masks looks, in general, like 
 @example
 mask_var = (XLAT >= lat_min && XLAT <= lat_max) && (XLONG >= lon_min && XLONG <= lon_max);
 @end example
@@ -10469,33 +10727,37 @@ After calculations @code{var_out} is converted to the input type of
 
 Suppose the first part of an @command{ncap2} script is
 @example
+ at verbatim
 defdim("X",4);
 defdim("Y",5);
 
 // Temperature
 T_in[$X,$Y]=
- @{100, 200, 300, 400, 500,
+ {100, 200, 300, 400, 500,
   101, 202, 303, 404, 505,
   102, 204, 306, 408, 510,
-  103, 206, 309, 412, 515.0 @};
+  103, 206, 309, 412, 515.0 };
 
 // Coordinate variables
-x_in[$X]=@{0.0,1.0,2.0,3.01@};
-y_in[$Y]=@{1.0,2.0,3.0,4.0,5@};
+x_in[$X]={0.0,1.0,2.0,3.01};
+y_in[$Y]={1.0,2.0,3.0,4.0,5};
+ at end verbatim
 @end example
 Now we interpolate with the following variables:
 @example
+ at verbatim
 defdim("Xn",3);
 defdim("Yn",4); 
 T_out[$Xn,$Yn]=0.0;
-x_out[$Xn]=@{0.0,0.02,3.01@};
-y_out[$Yn]=@{1.1,2.0,3,4@};
+x_out[$Xn]={0.0,0.02,3.01};
+y_out[$Yn]={1.1,2.0,3,4};
 
 var_out=bilinear_interp(T_in,T_out,x_out,y_out,x_in,y_in);
 print(var_out);
 // 110, 200, 300, 400,
 // 110.022, 200.04, 300.06, 400.08,
 // 113.3, 206, 309, 412 ;
+ at end verbatim
 @end example 
 
 It is possible to interpolate a single point:
@@ -10520,27 +10782,28 @@ typically these are in the range (-90,90).
 This @command{ncap2} script illustrates both wrapping and extrapolation
 of end points:
 @example
+ at verbatim
 defdim("lat_in",6);
 defdim("lon_in",5);
 
 // Coordinate input vars
-lat_in[$lat_in]=@{-80,-40,0,30,60.0,85.0@};
-lon_in[$lon_in]=@{30, 110, 190, 270, 350.0@};
+lat_in[$lat_in]={-80,-40,0,30,60.0,85.0};
+lon_in[$lon_in]={30, 110, 190, 270, 350.0};
 
 T_in[$lat_in,$lon_in]=
-  @{10,40,50,30,15,   
+  {10,40,50,30,15,   
     12,43,52,31,16,   
     14,46,54,32,17,   
     16,49,56,33,18,   
     18,52,58,34,19,   
-    20,55,60,35,20.0 @};
+    20,55,60,35,20.0 };
    
 defdim("lat_out",4);
 defdim("lon_out",3);
 
 // Coordinate variables
-lat_out[$lat_out]=@{-90,0,70,88.0@};   
-lon_out[$lon_out]=@{0,190,355.0@};
+lat_out[$lat_out]={-90,0,70,88.0};   
+lon_out[$lon_out]={0,190,355.0};
 
 T_out[$lat_out,$lon_out]=0.0;
 
@@ -10550,6 +10813,7 @@ print(T_out);
 // 16.25, 54, 16.625,
 // 19.25, 58.8, 19.325,
 // 20.15, 60.24, 20.135 ;
+ at end verbatim
 @end example
 
 @html
@@ -10593,9 +10857,11 @@ us know if you find otherwise).
 @code{int gsl_sf_gamma_e(const double x, gsl_sf_result * result)}
 The @command{ncap2} script would be:
 @example
-lon_in[lon]=@{-1,0.1,0,2,0.3@};
+ at verbatim
+lon_in[lon]={-1,0.1,0,2,0.3};
 lon_out=gsl_sf_gamma(lon_in);
 lon_out= _, 9.5135, 4.5908, 2.9915 
+ at end verbatim
 @end example
 
 @noindent The first value is set to @code{_FillValue} since the gamma
@@ -10621,9 +10887,11 @@ This computes the Bessel function of order @var{n=2} for every value in
 The Bessel order argument, an integer, can also be a non-scalar
 variable, i.e., an array.  
 @example
-n_in[lon]=@{0,1,2,3@};
+ at verbatim
+n_in[lon]={0,1,2,3};
 lon_out=gsl_sf_bessel_Jn(n_in,0.5);
 lon_out= 0.93846, 0.24226, 0.03060, 0.00256
+ at end verbatim
 @end example
 
 @noindent Arguments to @acronym{GSL} wrapper functions in @command{ncap2}
@@ -10997,13 +11265,14 @@ prototypes look at the spreadsheet @strong{doc/nco_gsl.ods}. @* @*
 @noindent A simple example
 
 @example
-x_in[$lon]=@{1.0,2.0,3.0,4.0@};
-y_in[$lon]=@{1.1,1.2,1.5,1.8@};
+ at verbatim
+x_in[$lon]={1.0,2.0,3.0,4.0};
+y_in[$lon]={1.1,1.2,1.5,1.8};
 
 // Ram variable is declared and defined here 
 gsl_interp_cspline(&ram_sp,x_in,y_in);
 
-x_out[$lon_grd]=@{1.1,2.0,3.0,3.1,3.99@};
+x_out[$lon_grd]={1.1,2.0,3.0,3.1,3.99};
 
 y_out=gsl_spline_eval(ram_sp,x_out);
 y2=gsl_spline_eval(ram_sp,1.3);
@@ -11013,6 +11282,7 @@ ram_delete(ram_sp);
 print(y_out); // 1.10472, 1.2, 1.4, 1.42658, 1.69680002 
 print(y2);    // 1.12454 
 print(y3);    // '_' 
+ at end verbatim
 @end example
 
 @noindent Note in the above example y3 is set to 'missing value' because 0.0 isn't within the input X range.  
@@ -11089,21 +11359,23 @@ If data_x or data_y is less than type @code{double} then it is converted to type
 @noindent The below example shows @strong{gsl_fit_linear()} in action
 
 @example
+ at verbatim
 defdim("d1",10);
-xin[d1]=@{1,2,3,4,5,6,7,8,9,10.0@};
-yin[d1]=@{3.1,6.2,9.1,12.2,15.1,18.2,21.3,24.0,27.0,30.0@};
+xin[d1]={1,2,3,4,5,6,7,8,9,10.0};
+yin[d1]={3.1,6.2,9.1,12.2,15.1,18.2,21.3,24.0,27.0,30.0};
 gsl_fit_linear(xin,1,yin,1,$d1.size,&c0,&c1,&cov00,&cov01,&cov11,&sumsq);
 print(c0);  // 0.2
 print(c1);  // 2.98545454545
 
 
 defdim("e1",4);
-xout[e1]=@{1.0,3.0,4.0,11@};
+xout[e1]={1.0,3.0,4.0,11};
 yout[e1]=0.0;
 
 yout=gsl_fit_linear_est(xout, c0,c1, cov00,cov01, cov11, sumsq);
 
 print(yout);  // 3.18545454545 ,9.15636363636, ,12.1418181818 ,33.04
+ at end verbatim
 @end example
 @* @*
 
@@ -11142,7 +11414,8 @@ double gsl_stats_quantile_from_sorted_data (var_sorted_data, data_stride, n, var
 Some examples
 
 @example
-a1[time]=@{1,2,3,4,5,6,7,8,9,10 @};
+ at verbatim
+a1[time]={1,2,3,4,5,6,7,8,9,10};
 
 a1_avg=gsl_stats_mean(a1,1,10);
 print(a1_avg); // 5.5
@@ -11152,7 +11425,7 @@ print(a1_var); // 16.0
 
 // bounding error, vector attempts to access element a1(10)
 a1_sd=gsl_stats_sd(a1,5,3); 
-
+ at end verbatim
 @end example
 
 @noindent For functions with the signature 
@@ -11316,7 +11589,9 @@ Define new attribute @var{new} for existing variable @var{one}
 as twice the existing attribute @var{double_att} of variable
 @var{att_var}: 
 @example
-ncap2 -s 'one@@new=2*att_var@@double_att' in.nc out.nc
+ at verbatim
+ncap2 -s 'one at new=2*att_var at double_att' in.nc out.nc
+ at end verbatim
 @end example
 
 Average variables of mixed types (result is of type @code{double}):
@@ -11496,6 +11771,7 @@ variables in @command{ncap2} command-line scripts
 In such cases it may be necessary to use the shell backslash character
 @samp{\} to protect the @command{ncap2} meta-character.
 
+
 @cindex appending data
 @cindex time-averaging
 @findex ncks
@@ -11901,7 +12177,8 @@ rint$(0.1) = 0$
 @item round(x)
 @dfn{Round}
 Nearest integer to @var{x} is returned in floating point format.
-Round halfway cases away from zero, regardless of current IEEE rounding direction. 
+Round halfway cases away from zero, regardless of current @acronym{IEEE}
+rounding direction.  
 Example: 
 @tex
 round$(0.5) = 1.0$
@@ -11968,7 +12245,8 @@ tanh$(1.0) = 0.761594155956$
 @item trunc(x)
 @dfn{Truncate}
 Nearest integer to @var{x} is returned in floating point format.
-Round halfway cases toward zero, regardless of current IEEE rounding direction. 
+Round halfway cases toward zero, regardless of current @acronym{IEEE}
+rounding direction.  
 Example: 
 @tex
 trunc$(0.5) = 0.0$
@@ -12108,24 +12386,27 @@ netcdf-3.6.0-p1 @*
 netcdf-3.6.1 @*
 netcdf-3.6.2 @*
 @example
+ at verbatim
 /*
- * ( [a-zA-Z]|[0-9]|'_'|'-'|'+'|'.'|'|':'|'@@'|'('|')' )+
+ * ( [a-zA-Z]|[0-9]|'_'|'-'|'+'|'.'|'|':'|'@'|'('|')' )+
  * Verify that name string is valid CDL syntax, i.e., all characters are
  * alphanumeric, '-', '_', '+', or '.'.
- * Also permit ':', '@@', '(', or ')' in names for chemists currently making 
+ * Also permit ':', '@', '(', or ')' in names for chemists currently making 
  * use of these characters, but don't document until ncgen and ncdump can 
  * also handle these characters in names.
  */
+ at end verbatim
 @end example
 
 @noindent netcdf-3.6.3@*
 netcdf-4.0 Final  2008/08/28@*
 @example
+ at verbatim
 /*
  * Verify that a name string is valid syntax.  The allowed name
  * syntax (in RE form) is:
  *
- * ([a-zA-Z_]|@{UTF8@})([^\x00-\x1F\x7F/]|@{UTF8@})*
+ * ([a-zA-Z_]|{UTF8})([^\x00-\x1F\x7F/]|{UTF8})*
  *
  * where UTF8 represents a multibyte UTF-8 encoding.  Also, no
  * trailing spaces are permitted in names.  This definition
@@ -12135,6 +12416,7 @@ netcdf-4.0 Final  2008/08/28@*
  * character can occur anywhere within an identifier.  We later
  * normalize UTF-8 strings to NFC to facilitate matching and queries.
  */ 
+ at end verbatim
 @end example
 @c End HMB documentation
 
@@ -12499,22 +12781,29 @@ ncatted -a long_name,T,o,c,temperature in.nc
 <a name="NaN"></a> <!-- http://nco.sf.net/nco.html#NaN -->
 @end html
 @cindex NaN
- at cindex IEEE NaN
+ at cindex @acronym{IEEE} NaN
 @cindex Not-a-Number
- at acronym{NCO} arithmetic operators will not work as expected on IEEE
-NaN (short for Not-a-Number) and NaN-like numbers such as positive
-infinity and negative infinity.  
-One way to work-around this problem is to change IEEE NaNs to normal
-missing values. 
+ at acronym{NCO} arithmetic operators may not work as expected on
+ at acronym{IEEE} NaN (short for Not-a-Number) and NaN-like numbers such as
+positive infinity and negative infinity
+ at 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.
+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
+normal missing values. 
 As of @acronym{NCO} 4.1.0 (March, 2012), @command{ncatted} works with
 NaNs.
 First set the missing value (i.e., the value of the @code{_FillValue}
-attribute) for the variable(s) in question to the IEEE NaN value. 
+attribute) for the variable(s) in question to the @acronym{IEEE} NaN value. 
 @example
 ncatted -a _FillValue,,o,f,NaN in.nc
 @end example
-Then change the missing value from the IEEE NaN value to a normal IEEE
-number, like 1.0e36 (or to whatever the original missing value was).
+Then change the missing value from the @acronym{IEEE} NaN value to a
+normal @acronym{IEEE} number, like 1.0e36 (or to whatever the original
+missing value was). 
 @example
 ncatted -a _FillValue,,m,f,1.0e36 in.nc
 @end example
@@ -12842,9 +13131,9 @@ In these cases, creating @var{file_2} with @command{ncra} rather than
 @command{ncwa} will cause the @command{ncbo} operation to fail.
 For concreteness say the record dimension in @code{file_1} is
 @code{time}.  
-If @var{file_2} were created by averaging @var{file_1} over the
- at code{time} dimension with the @command{ncra} operator rather than with
-the @command{ncwa} operator, then @var{file_2} will have a @code{time}
+If @var{file_2} was created by averaging @var{file_1} over the
+ at code{time} dimension with the @command{ncra} operator (rather than with
+the @command{ncwa} operator), then @var{file_2} will have a @code{time}
 dimension of @w{size 1} rather than having no @code{time} dimension at
 all 
 @cindex degenerate dimension
@@ -13025,25 +13314,29 @@ twelve months:
 @cindex Bourne Shell
 @cindex C Shell
 @example
-for idx in @{1..12@}; do # Bash Shell (version 3.0+) 
-  idx=`printf "%02d" $@{idx@}` # Zero-pad to preserve order
-  ncks -F -d time,$@{idx@},,12 t_anm_8501_8912.nc foo.$@{idx@}
-  ncra foo.$@{idx@} t_anm_8589_$@{idx@}.nc
+ at verbatim
+for idx in {1..12}; do # Bash Shell (version 3.0+) 
+  idx=`printf "%02d" ${idx}` # Zero-pad to preserve order
+  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+  ncra foo.${idx} t_anm_8589_${idx}.nc
 done
 for idx in 01 02 03 04 05 06 07 08 09 10 11 12; do # Bourne Shell
-  ncks -F -d time,$@{idx@},,12 t_anm_8501_8912.nc foo.$@{idx@}
-  ncra foo.$@{idx@} t_anm_8589_$@{idx@}.nc
+  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+  ncra foo.${idx} t_anm_8589_${idx}.nc
 done
 foreach idx (01 02 03 04 05 06 07 08 09 10 11 12) # C Shell
-  ncks -F -d time,$@{idx@},,12 t_anm_8501_8912.nc foo.$@{idx@}
-  ncra foo.$@{idx@} t_anm_8589_$@{idx@}.nc
+  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+  ncra foo.${idx} t_anm_8589_${idx}.nc
 end
+ at end verbatim
 @end example
 @noindent
 Note that @command{ncra} understands the @code{stride} argument so the
 two commands inside the loop may be combined into the single command 
 @example
-ncra -F -d time,$@{idx@},,12 t_anm_8501_8912.nc foo.$@{idx@}
+ at verbatim
+ncra -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+ at end verbatim
 @end example
 @noindent
 Finally, use @command{ncrcat} to concatenate the @w{12 average} monthly  
@@ -13815,7 +14108,7 @@ SYNTAX
 ncks [-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b @var{binary-file}] [-C] [-c] [--cdl]
 [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_plc plc] [--cnk_scl sz]
 [-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{}]] [-H] [-h] [--hdn] [--hdr_pad @var{nbr}]
+[-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}] 
 [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s @var{format}] 
@@ -14099,15 +14392,16 @@ valid @acronym{CDL} (network Common data form Description Language).
 @command{ncgen} and excreted by @command{ncdump}.
 Compare @command{ncks} ``traditional'' with @acronym{CDL} printing:
 @example
-zender@@roulee:~$ ncks -v one ~/nco/data/in.nc
+ at verbatim
+zender at roulee:~$ ncks -v one ~/nco/data/in.nc
 one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
 one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
 one attribute 0: long_name, size = 3 NC_CHAR, value = one
 
 one = 1 
 
-zender@@roulee:~$ ncks --cdl -v one ~/nco/data/in.nc
-netcdf in @{
+zender at roulee:~$ ncks --cdl -v one ~/nco/data/in.nc
+netcdf in {
 
   variables:
     float one ;
@@ -14116,7 +14410,8 @@ netcdf in @{
   data:
     one = 1 ;
 
-@} // group /
+} // group /
+ at end verbatim
 @end example
 @command{ncgen} converts @acronym{CDL}-mode output into a netCDF file:
 @example
@@ -14436,7 +14731,7 @@ into @acronym{NcML}, including metadata and data, using all
 Compare @command{ncks} ``traditional'' with @acronym{XML} printing:
 @example
 @verbatim
-zender@@roulee:~$ ncks -v one ~/nco/data/in.nc
+zender at roulee:~$ ncks -v one ~/nco/data/in.nc
 one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
 one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
 one attribute 0: long_name, size = 3 NC_CHAR, value = one
@@ -14483,19 +14778,19 @@ variables of character-type and numeric-type, respectively.
 Their default separators are "*" and " ":
 @example
 @verbatim
-zender@@roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
+zender at roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
 ...
    <values separator="*">abc*bcd*cde*def</values>
  ...
- zender@@roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
+ zender at roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
 ...
 <values separator=", ">abc, bcd, cde, def, efg, fgh, ghi, hij, jkl, klm</values>
 ...
-zender@@roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
+zender at roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
 ...
 <values>1 2 3 4 5 6 7 8 9 10</values>
 ...
-zender@@roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
+zender at roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
 ...
 <values separator=", ">1, 2, 3, 4, 5, 6, 7, 8, 9, 10</values>
 ...
@@ -14583,7 +14878,9 @@ The filters are clearly too complex to remember on-the-fly so the entire
 procedure could be implemented as a shell command or function called,
 say, @command{ncattget}
 @example
-function ncattget @{ ncks -M -m $@{3@} | grep -E -i "^$@{2@} attribute [0-9]+: $@{1@}" | cut -f 11- -d ' ' | sort ; @}
+ at verbatim
+function ncattget { ncks -M -m ${3} | grep -E -i "^${2} attribute [0-9]+: ${1}" | cut -f 11- -d ' ' | sort ; }
+ at end verbatim
 @end example
 The shell @command{ncattget} is invoked with three arugments that are,
 in order, the names of the attribute, variable, and file to examine.
@@ -14823,19 +15120,21 @@ coordinates, except variable @code{time}, from netCDF @file{in.nc}:
 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{bounds} or @code{coordinates}
-variable (@pxref{CF Conventions}) such as @code{time_bounds}.
- at acronym{NCO} subsetting assumes the user wants all coordinates 
-and bounds and axes associated with all extracted variables 
+ at acronym{CF} Convention comliant @code{ancillary_variables},
+ at code{bounds}, or @code{coordinates} variable (@pxref{CF Conventions})
+such as @code{time_bounds}. 
+ at acronym{NCO} subsetting assumes the user wants all ancillary variables,
+axes, bounds and coordinates associated with all extracted variables 
 (@pxref{Subsetting Coordinate Variables}).
-Hence to exclude a @code{bounds} or @code{coordinates} variable while
-retaining the ``parent'' variable (here @code{time}), one must use the
- at samp{-C} switch: 
+Hence to exclude a @code{ancillary_variables}, @code{bounds}, or
+ at code{coordinates} variable while retaining the ``parent'' variable
+(here @code{time}), one must use the @samp{-C} switch: 
 @example
 ncks -C -x -v time_bounds in.nc out.nc
 @end example
 The @samp{-C} switch tells the operator @emph{NOT} to necessarily
-include all the @acronym{CF} coordinates and bounds and axes.
+include all the @acronym{CF} ancillary variables, axes, bounds, and
+coordinates.
 Hence the output file will contain @code{time} and not
 @code{time_bounds}. 
 
@@ -15893,7 +16192,9 @@ ncrename -v p,pressure -v .t,temperature in.nc
 Rename the attribute @code{long_name} to @code{largo_nombre} in the
 variable @code{u}, and no other variables in netCDF @file{in.nc}. 
 @example
-ncrename -a u@@long_name,largo_nombre in.nc
+ at verbatim
+ncrename -a u at long_name,largo_nombre in.nc
+ at end verbatim
 @end example
  
 Rename the group @code{g8} to @code{g20} in netCDF4 file
@@ -15958,8 +16259,10 @@ those variables which possess it), the attribute @code{hieght} is
 changed to @code{height} in the variable @code{tpt}, and in the
 variable @code{prs_sfc}, if it exists.
 @example
+ at verbatim
 ncrename -a _FillValue,missing_value -a .units,CGS_units \
-  -a tpt@@hieght,height -a prs_sfc@@.hieght,height in.nc out.nc 
+  -a tpt at hieght,height -a prs_sfc at .hieght,height in.nc out.nc 
+ at end verbatim
 @end example
 The presence and absence of the @samp{.} and @samp{@@} features
 cause this command to execute successfully only if a number of 
@@ -15976,12 +16279,14 @@ The variable @code{prs_sfc} need not exist, and need not contain the
 Rename the global or group attribute @code{Convention} to
 @code{Conventions}
 @example
+ at verbatim
 ncrename -a Convention,Conventions  in.nc # Variable and global atts.
 ncrename -a .Convention,Conventions in.nc # Variable and global atts.
-ncrename -a @@Convention,Conventions  in.nc # Global atts. only
-ncrename -a @@.Convention,Conventions in.nc # Global atts. only
-ncrename -a global@@Convention,Conventions   in.nc # Global atts. only
-ncrename -a .global@@.Convention,Conventions in.nc # Global atts. only
+ncrename -a @Convention,Conventions  in.nc # Global atts. only
+ncrename -a @.Convention,Conventions in.nc # Global atts. only
+ncrename -a global at Convention,Conventions   in.nc # Global atts. only
+ncrename -a .global at .Convention,Conventions in.nc # Global atts. only
+ at end verbatim
 @end example
 The examples without the @code{@@} character attempt to change the
 attribute name in both Global or Group and variable attributes.
@@ -16349,7 +16654,8 @@ EXAMPLES
 
 Given file @file{85_0112.nc}:
 @example
-netcdf 85_0112 @{
+ at verbatim
+netcdf 85_0112 {
 dimensions:
         lat = 64 ;
         lev = 18 ;
@@ -16365,7 +16671,8 @@ variables:
         float two_dmn_var(lat, lev) ;
         float mask(lat, lon) ;
         float gw(lat) ;
-@} 
+} 
+ at end verbatim
 @end example
 
 Average all variables in @file{in.nc} over all dimensions and store
@@ -16491,14 +16798,16 @@ correctly integrate the cell areas into a total regional area.
 Mask a file to contain @var{_FillValue} everywhere except where
 @math{@var{thr_min} <= @var{msk_var} <= @var{thr_max}}:
 @example
+ at verbatim
 # Set masking variable and its scalar thresholds
 export msk_var='three_dmn_var_dbl' # Masking variable
 export thr_max='20' # Maximum allowed value
 export thr_min='10' # Minimum allowed value
 ncecat -O in.nc out.nc # Wrap out.nc in degenerate "record" dimension
-ncwa -O -a record -B "$@{msk_var@} <= $@{thr_max@}" out.nc out.nc
+ncwa -O -a record -B "${msk_var} <= ${thr_max}" out.nc out.nc
 ncecat -O out.nc out.nc # Wrap out.nc in degenerate "record" dimension
-ncwa -O -a record -B "$@{msk_var@} >= $@{thr_min@}" out.nc out.nc
+ncwa -O -a record -B "${msk_var} >= ${thr_min}" out.nc out.nc
+ at end verbatim
 @end example
 After the first use of @command{ncwa}, @file{out.nc} contains
 @var{_FillValue} where @code{$@{msk_var@} >= $@{thr_max@}}.
@@ -16541,10 +16850,11 @@ So you could be the third!
 @end html
 @menu
 * Contributors::
+* Citation::
 * Proposals for Institutional Funding::
 @end menu
 
- at node Contributors, Proposals for Institutional Funding, Contributing, Contributing
+ at node Contributors, Citation, Contributing, Contributing
 @section Contributors
 @acronym{NCO} would not exist without the dedicated efforts of the
 remarkable software engineers who conceive, develop, and
@@ -16587,7 +16897,7 @@ research, releases.
 Non-linear operations and @code{min()}, @code{max()}, @code{total()}
 support in @command{ncra} and @command{ncwa}. 
 Type conversion for arithmetic.
-Migration to netCDF3 API.
+Migration to netCDF3 @acronym{API}.
 @command{ncap2} parser, lexer, @acronym{GSL}-support, @w{and I/O}.
 Multislabbing algorithm.
 Variable wildcarding.
@@ -16595,7 +16905,7 @@ Numerous hacks.
 @command{ncap2} language.
 @cindex Rorik Peterson
 @item Rorik Peterson
-Original autotool build support. 
+Original autotools build support. 
 Long command-line options.
 Original UDUnits support.
 Debianization.
@@ -16617,7 +16927,7 @@ Windows Visual Studio support.
 netCDF4 groups.
 @cindex Russ Rew
 @item Russ Rew
-Advice on NCO structural algorithms
+Advice on @acronym{NCO} structural algorithms
 @cindex Brian Mays
 @item Brian Mays
 Original packaging for Debian @acronym{GNU}/Linux, @command{nroff} man pages.
@@ -16655,11 +16965,12 @@ Large work-load testing
 @cindex Martin Schmidt
 @cindex Lori Sentman
 @cindex Michael Schulz
+ at cindex Rich Signell
 @cindex Gary Strand
 @cindex Andrew Wittenberg
 @cindex George White
 @cindex Remik Ziemlinski
- at item Peter Campbell, Martin Dix, Mark Flanner, Markus Liebig, Keith Lindsay, Mike Page, Martin Schmidt, Michael Schulz, Lori Sentman, Gary Strand, George White Andrew Wittenberg, Remik Ziemlinski
+ at item 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
 Excellent bug reports and feature requests.
 @cindex Daniel Baumann
 @cindex Nick Bower
@@ -16707,6 +17018,33 @@ Single bug reports and fixes
 Please let me know if your name was omitted!
 
 @html
+<a name="ctt"></a> <!-- http://nco.sf.net/nco.html#ctt -->
+ at end html
+ at node Citation, Proposals for Institutional Funding, Contributors, Contributing
+ at section Citation
+ at cindex citation
+The recommended citations for @acronym{NCO} software are
+ at example
+ at verbatim
+Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience
+Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10),
+1338-1342, doi:10.1016/j.envsoft.2008.03.004. 
+
+Zender, C. S. (2014), netCDF Operator (NCO) User Guide, Version 4.4.3,
+http://nco.sf.net/nco.pdf. 
+ at end verbatim
+ at end example
+Use the former when referring to overall design, purpose, and 
+optimization of @acronym{NCO}, and use the latter when referring to
+specific features and/or the User Guide itself.
+
+Additional information on citing @acronym{NCO} is in the User Guide at 
+ at url{http://nco.sf.net#ctt}.
+A complete list of @acronym{NCO} publications and presentations is at
+ at url{http://nco.sf.net#pub}.
+This list links to the full papers and seminars themselves.
+
+ at html
 <a name="prp"></a> <!-- http://nco.sf.net/nco.html#prp -->
 <a name="prp_sei"></a> <!-- http://nco.sf.net/nco.html#prp_sei -->
 <a name="fnd"></a> <!-- http://nco.sf.net/nco.html#fnd -->
@@ -16715,7 +17053,7 @@ Please let me know if your name was omitted!
 * Proposals for Institutional Funding::  
 @end menu
 
- at node Proposals for Institutional Funding,  , Contributors, Contributing
+ at node Proposals for Institutional Funding,  , Citation, Contributing
 @section Proposals for Institutional Funding
 @cindex funding
 @cindex proposals
@@ -16790,18 +17128,20 @@ file of @file{in.nc} with the record dimension as @code{time}.
 @cindex average
 @cindex time-averaging
 @example
-for yyyy in @{1990..2005@}; do      # Loop over years
-  for moy in @{1..12@}; do          # Loop over months
-    mm=$( printf "%02d" $@{moy@} )  # Change to 2-digit format
+ at verbatim
+for yyyy in {1990..2005}; do      # Loop over years
+  for moy in {1..12}; do          # Loop over months
+    mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
 
     # Average specific month yyyy-mm
-    ncra -O -d time,"$@{yyyy@}-$@{mm@}-01","$@{yyyy@}-$@{mm@}-31" \
-         in.nc in_$@{yyyy@}$@{mm@}.nc
+    ncra -O -d time,"${yyyy}-${mm}-01","${yyyy}-${mm}-31" \
+         in.nc in_${yyyy}${mm}.nc
   done
 done
 
 # Concatenate monthly files together
 ncrcat -O in_??????.nc out.nc
+ at end verbatim
 @end example
 
 @noindent
@@ -16810,12 +17150,14 @@ ncrcat -O in_??????.nc out.nc
 @cindex average
 @cindex time-averaging
 @example
-for yyyy in @{1990..2005@}; do      # Loop over years
-  ncra -O -d time,"$@{yyyy@}-01-01","$@{yyyy@}-12-31" in.nc in_$@{yyyy@}.nc
+ at verbatim
+for yyyy in {1990..2005}; do      # Loop over years
+  ncra -O -d time,"${yyyy}-01-01","${yyyy}-12-31" in.nc in_${yyyy}.nc
 done
 
 # Concatenate annual files together
 ncrcat -O in_????.nc out.nc
+ at end verbatim
 @end example
 The @option{-O} switch means to overwrite the pre-existing files (@pxref{Batch Mode}).
 The @option{-d} option is to specify the range of hyperslabs (@pxref{Hyperslabs}).
@@ -16878,11 +17220,13 @@ ncra -O snd_199001??.nc out.nc
 @end example
 You might want to use loop if you need the average of each month.
 @example
-for moy in @{1..12@}; do          # Loop over months
-  mm=$( printf "%02d" $@{moy@} )  # Change to 2-digit format
+ at verbatim
+for moy in {1..12}; do          # Loop over months
+  mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
 
-  ncra -O snd_????$@{mm@}??.nc out_$@{mm@}.nc
+  ncra -O snd_????${mm}??.nc out_${mm}.nc
 done
+ at end verbatim
 @end example
 
 @node Multiple files with multiple time points,  , One time point one file, Quick Start
@@ -16896,10 +17240,12 @@ And for seasonal averages, you can specify the three months by shell scripts.
 
 @html
 <a name="cmip5"></a> <!-- http://nco.sf.net/nco.html#cmip5 -->
+<a name="godad"></a> <!-- http://nco.sf.net/nco.html#godad -->
 @end html
 @node CMIP5 Example, Parallel, Quick Start, Top
 @chapter @acronym{CMIP5} Example
 @cindex @acronym{CMIP5}
+ at cindex @acronym{GODAD}
 @ignore
 This @uref{http://nco.sf.net/xmp_cesm.html,Wonderful CMIP5 Documentation}
 shows complete processing of the @acronym{CMIP5} dataset.
@@ -16912,11 +17258,37 @@ responses of climate models from around the world.
 However, it is a tremendous workload to retrieve a single climate
 statistic from all these models, each of which includes several ensemble 
 members.  
-Not only that, it is too often a repetitive process which impedes new
+Not only that, it is too often a tedious process that impedes new
 research and hypothesis testing.  
-Our @acronym{NASA} @acronym{ACCESS} project is designed to simplify and
-accelerate this process.  
-To begin, we document below a prototypical example of @acronym{CMIP5}
+Our @acronym{NASA} @acronym{ACCESS} 2011 project simplified and
+accelerated this process.   
+
+Traditional geoscience data analysis requires users to work with
+numerous flat (data in one level or namespace) files. 
+In that paradigm instruments or models produce, and then repositories
+archive and distribute, and then researchers request and analyze,
+collections of flat files.
+ at acronym{NCO} works well with that paradigm, yet it also embodies the
+necessary algorithms to transition geoscience data analysis from relying
+solely on traditional (or ``flat'') datasets to allowing newer
+hierarchical (or ``nested'') datasets.  
+
+Hierarchical datasets support and enable combining all datastreams that
+meet user-specified criteria into a single or small number of files that
+hold @emph{all} the science-relevant data.
+ at acronym{NCO} (and no other software to our knowledge) exploits this
+capability now.
+Data and metadata may be aggregated into and analyzed in hierarchical
+structures.
+We call the resulting data storage, distribution, and analysis
+paradigm Group-Oriented Data Analysis and Distribution
+(@acronym{GODAD}). 
+ at acronym{GODAD} lets the scientific question organize the data, not the  
+ at emph{ad hoc} granularity of all relevant datasets.
+This chapter illustrates @acronym{GODAD} techniques applied to 
+analysis of the @acronym{CMIP5} dataset.
+
+To begin, we document below a prototypical example of @acronym{CMIP5} 
 analysis and evaluation using traditional @acronym{NCO} commands on
 netCDF3-format model and @acronym{HDF-EOS} format observational
 (@acronym{NASA} @acronym{MODIS} satellite instrument) datasets.
@@ -16951,8 +17323,8 @@ group-based processing as well.
 @cindex file combination
 Sometimes, the data of one ensemble member will be stored in several
 files to reduce single file size.
-But it is not convenient to process in a batch mode.
-The following script illustrates how to concatenate these files into one.
+It is more convenient to concatenate these files into a single
+timeseries, and the following script illustrates how.
 Key steps include: 
 @enumerate
 @item Obtain number and names (or partial names) of files in a directory
@@ -16963,20 +17335,20 @@ Key steps include:
 @verbatiminclude xmp/cmb_fl.sh
 @end example
 
-Right now, @acronym{CMIP5} model data downloaded from Earth System Grid
+ at acronym{CMIP5} model data downloaded from the Earth System Grid
 Federation (@uref{http://pcmdi9.llnl.gov/esgf-web-fe/, @acronym{ESGF}}) 
-will not contain @key{group} features yet. 
-Therefore users can aggregate the flat files into groups themselves.
-The following script shows how to aggregate models to one file.
+does not contain group features yet. 
+Therefore users must aggregate flat files into hierarchical ones themselves.
+The following script shows how.
 Each dataset becomes a group in the output file.
 There can be several levels of groups.
-In this example, we employ two experiments as the top-level.
-The second-level comprises different models.
-Some models have more than one ensemble member.
-These ensemble members are on the third level.
-In each sub-group of ensemble members, we appended two variables,
- at var{snc} and @var{snd} (these stand for snow cover and snow depth, by
-the way).
+In this example, we employ two experiments (``scenarios'') as the top-level.
+The second-level comprises different models (e.g., CCSM4, CESM1-BGC).
+Many models are run multiple times with slight perturbed initial
+conditions to produce an ensemble of realizations.
+These ensemble members comprise the third level of the hierarchy.
+The script selects two variables, @var{snc} and @var{snd} (snow cover
+and snow depth).
 @cindex @option{--gag}
 @cindex aggregation
 @cindex group aggregation
@@ -17216,7 +17588,9 @@ Here is an example showing:
 This section will describe scripting strategies, including the use of
 @acronym{GNU} Parallel, to @acronym{NCO}.
 @example
-ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" @{@} 50y/@{@}
+ at verbatim
+ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" {} 50y/{}
+ at end verbatim
 @end example
 
 @html
@@ -17229,9 +17603,10 @@ ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" @{@} 50y
 This chapter illustrates how to use @acronym{NCO} to
 process and analyze the results of a @acronym{CCSM} climate simulation.
 @example
+ at verbatim
 ************************************************************************
 Task 0: Finding input files
-************************************************************************
+x************************************************************************
 The CCSM model outputs files to a local directory like:
 
 /ptmp/zender/archive/T42x1_40
@@ -17273,44 +17648,44 @@ Each month in the output file is the mean of 100 input files.
 Normally, we store the "reduced" data in a smaller, local directory.
 
 caseid='T42x1_40'
-#drc_in="$@{DATA@}/archive/$@{caseid@}/atm"
-drc_in="$@{DATA@}/$@{caseid@}"
-drc_out="$@{DATA@}/$@{caseid@}"
-mkdir -p $@{drc_out@}
-cd $@{drc_out@}
+#drc_in="${DATA}/archive/${caseid}/atm"
+drc_in="${DATA}/${caseid}"
+drc_out="${DATA}/${caseid}"
+mkdir -p ${drc_out}
+cd ${drc_out}
 
 Method 1: Assume all data in directory applies
-for mth in @{1..12@}; do
+for mth in {1..12}; do
   mm=`printf "%02d" $mth`
-  ncra -O -D 1 -o $@{drc_out@}/$@{caseid@}_clm$@{mm@}.nc \
-    $@{drc_in@}/$@{caseid@}.cam2.h0.*-$@{mm@}.nc 
+  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc \
+    ${drc_in}/${caseid}.cam2.h0.*-${mm}.nc 
 done # end loop over mth
 
 Method 2: Use shell 'globbing' to construct input filenames
-for mth in @{1..12@}; do
+for mth in {1..12}; do
   mm=`printf "%02d" $mth`
-  ncra -O -D 1 -o $@{drc_out@}/$@{caseid@}_clm$@{mm@}.nc \
-    $@{drc_in@}/$@{caseid@}.cam2.h0.00??-$@{mm@}.nc \
-    $@{drc_in@}/$@{caseid@}.cam2.h0.0100-$@{mm@}.nc
+  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc \
+    ${drc_in}/${caseid}.cam2.h0.00??-${mm}.nc \
+    ${drc_in}/${caseid}.cam2.h0.0100-${mm}.nc
 done # end loop over mth
 
 Method 3: Construct input filename list explicitly
-for mth in @{1..12@}; do
+for mth in {1..12}; do
   mm=`printf "%02d" $mth`
   fl_lst_in=''
-  for yr in @{1..100@}; do
+  for yr in {1..100}; do
     yyyy=`printf "%04d" $yr`
-    fl_in=$@{caseid@}.cam2.h0.$@{yyyy@}-$@{mm@}.nc
-    fl_lst_in="$@{fl_lst_in@} $@{caseid@}.cam2.h0.$@{yyyy@}-$@{mm@}.nc"
+    fl_in=${caseid}.cam2.h0.${yyyy}-${mm}.nc
+    fl_lst_in="${fl_lst_in} ${caseid}.cam2.h0.${yyyy}-${mm}.nc"
   done # end loop over yr
-  ncra -O -D 1 -o $@{drc_out@}/$@{caseid@}_clm$@{mm@}.nc -p $@{drc_in@} \
-    $@{fl_lst_in@}
+  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc -p ${drc_in} \
+    ${fl_lst_in}
 done # end loop over mth
 
 Make sure the output file averages correct input files!
 ncks -M prints global metadata: 
 
-  ncks -M $@{drc_out@}/$@{caseid@}_clm01.nc
+  ncks -M ${drc_out}/${caseid}_clm01.nc
 
 The input files ncra used to create the climatological monthly mean
 will appear in the global attribute named 'history'.
@@ -17318,23 +17693,23 @@ will appear in the global attribute named 'history'.
 Use ncrcat to aggregate the climatological monthly means
 
   ncrcat -O -D 1 \
-    $@{drc_out@}/$@{caseid@}_clm??.nc $@{drc_out@}/$@{caseid@}_clm_0112.nc
+    ${drc_out}/${caseid}_clm??.nc ${drc_out}/${caseid}_clm_0112.nc
 
 Finally, create climatological means for reference.
 The climatological time-mean:
 
   ncra -O -D 1 \
-    $@{drc_out@}/$@{caseid@}_clm_0112.nc $@{drc_out@}/$@{caseid@}_clm.nc
+    ${drc_out}/${caseid}_clm_0112.nc ${drc_out}/${caseid}_clm.nc
 
 The climatological zonal-mean:
 
   ncwa -O -D 1 -a lon \
-    $@{drc_out@}/$@{caseid@}_clm.nc $@{drc_out@}/$@{caseid@}_clm_x.nc
+    ${drc_out}/${caseid}_clm.nc ${drc_out}/${caseid}_clm_x.nc
 
 The climatological time- and spatial-mean:
 
   ncwa -O -D 1 -a lon,lat,time -w gw \
-    $@{drc_out@}/$@{caseid@}_clm.nc $@{drc_out@}/$@{caseid@}_clm_xyt.nc
+    ${drc_out}/${caseid}_clm.nc ${drc_out}/${caseid}_clm_xyt.nc
 
 This file contains only scalars, e.g., "global mean temperature",
 used for summarizing global results of a climate experiment.
@@ -17343,8 +17718,8 @@ Climatological monthly anomalies = Annual Cycle:
 Subtract climatological mean from climatological monthly means. 
 Result is annual cycle, i.e., climate-mean has been removed.
 
-  ncbo -O -D 1 -o $@{drc_out@}/$@{caseid@}_clm_0112_anm.nc \
-    $@{drc_out@}/$@{caseid@}_clm_0112.nc $@{drc_out@}/$@{caseid@}_clm_xyt.nc
+  ncbo -O -D 1 -o ${drc_out}/${caseid}_clm_0112_anm.nc \
+    ${drc_out}/${caseid}_clm_0112.nc ${drc_out}/${caseid}_clm_xyt.nc
 
 ************************************************************************
 Task 2: Correcting monthly averages
@@ -17360,29 +17735,29 @@ declare -a dpm
 dpm=(0 31 28.25 31 30 31 30 31 31 30 31 30 31) # Allows 1-based indexing
 
 Method 1: Create dpm directly in climatological monthly means
-for mth in @{1..12@}; do
-  mm=`printf "%02d" $@{mth@}`
-  ncap2 -O -s "dpm=0.0*date+$@{dpm[$@{mth@}]@}" \
-    $@{drc_out@}/$@{caseid@}_clm$@{mm@}.nc $@{drc_out@}/$@{caseid@}_clm$@{mm@}.nc
+for mth in {1..12}; do
+  mm=`printf "%02d" ${mth}`
+  ncap2 -O -s "dpm=0.0*date+${dpm[${mth}]}" \
+    ${drc_out}/${caseid}_clm${mm}.nc ${drc_out}/${caseid}_clm${mm}.nc
 done # end loop over mth
 
 Method 2: Create dpm by aggregating small files
-for mth in @{1..12@}; do
-  mm=`printf "%02d" $@{mth@}`
-  ncap2 -O -v -s "dpm=$@{dpm[$@{mth@}]@}" ~/nco/data/in.nc \
-    $@{drc_out@}/foo_$@{mm@}.nc
+for mth in {1..12}; do
+  mm=`printf "%02d" ${mth}`
+  ncap2 -O -v -s "dpm=${dpm[${mth}]}" ~/nco/data/in.nc \
+    ${drc_out}/foo_${mm}.nc
 done # end loop over mth
-ncecat -O -D 1 -p $@{drc_out@} -n 12,2,2 foo_$@{mm@}.nc foo.nc
-ncrename -O -D 1 -d record,time $@{drc_out@}/foo.nc
+ncecat -O -D 1 -p ${drc_out} -n 12,2,2 foo_${mm}.nc foo.nc
+ncrename -O -D 1 -d record,time ${drc_out}/foo.nc
 ncatted -O -h \
   -a long_name,dpm,o,c,"Days per month" \
   -a units,dpm,o,c,"days" \
-  $@{drc_out@}/$@{caseid@}_clm_0112.nc
-ncks -A -v dpm $@{drc_out@}/foo.nc $@{drc_out@}/$@{caseid@}_clm_0112.nc
+  ${drc_out}/${caseid}_clm_0112.nc
+ncks -A -v dpm ${drc_out}/foo.nc ${drc_out}/${caseid}_clm_0112.nc
 
 Method 3: Create small netCDF file using ncgen
 cat > foo.cdl << 'EOF'
-netcdf foo @{ 
+netcdf foo { 
 dimensions:
 	time=unlimited;
 variables:
@@ -17391,10 +17766,10 @@ variables:
 	dpm:units="days";
 data:
 	dpm=31,28.25,31,30,31,30,31,31,30,31,30,31;
-@}
+}
 EOF
 ncgen -b -o foo.nc foo.cdl
-ncks -A -v dpm $@{drc_out@}/foo.nc $@{drc_out@}/$@{caseid@}_clm_0112.nc
+ncks -A -v dpm ${drc_out}/foo.nc ${drc_out}/${caseid}_clm_0112.nc
 
 Another way to get correct monthly weighting is to average daily
 output files, if available.  
@@ -17406,8 +17781,8 @@ Let's say you are interested in examining the California region.
 Hyperslab your dataset to isolate the appropriate latitude/longitudes.
 
 ncks -O -D 1 -d lat,30.0,37.0 -d lon,240.0,270.0 \ 
-    $@{drc_out@}/$@{caseid@}_clm_0112.nc \
-    $@{drc_out@}/$@{caseid@}_clm_0112_Cal.nc
+    ${drc_out}/${caseid}_clm_0112.nc \
+    ${drc_out}/${caseid}_clm_0112_Cal.nc
 
 The dataset is now much smaller!
 To examine particular metrics.
@@ -17435,7 +17810,7 @@ http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/su
 pres.sfc.1969.nc ~/foo.nc
 
 LLNL PCMDI IPCC OPeNDAP Data Portal: 
-ncks -M -p http://username:password@@esgcet.llnl.gov/cgi-bin/dap-cgi.py/ipcc4/sresa1b/ncar_ccsm3_0 pcmdi.ipcc4.ncar_ccsm3_0.sresa1b.run1.atm.mo.xml
+ncks -M -p http://username:password@esgcet.llnl.gov/cgi-bin/dap-cgi.py/ipcc4/sresa1b/ncar_ccsm3_0 pcmdi.ipcc4.ncar_ccsm3_0.sresa1b.run1.atm.mo.xml
 
 Earth System Grid (ESG): http://www.earthsystemgrid.org
 
@@ -17463,7 +17838,7 @@ iap_fgoals1_0_g inmcm3_0 ipsl_cm4 miroc3_2_hires miroc3_2_medres \
 miub_echo_g mpi_echam5 mri_cgcm2_3_2a ncar_ccsm3_0 ncar_pcm1 \
 ukmo_hadcm3 ukmo_hadgem1'; do
 for run in '1'; do
-        ncks -R -O -D 3 -p ftp://climate.llnl.gov/$@{scn@}/atm/mo/$@{var@}/$@{mdl@}/run$@{run@} -l $@{DATA@}/$@{scn@}/atm/mo/$@{var@}/$@{mdl@}/run$@{run@} '*' $@{scn@}_$@{mdl@}_$@{run@}_$@{var@}_$@{yyyymm@}_$@{yyyymm@}.nc
+        ncks -R -O -D 3 -p ftp://climate.llnl.gov/${scn}/atm/mo/${var}/${mdl}/run${run} -l ${DATA}/${scn}/atm/mo/${var}/${mdl}/run${run} '*' ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 done # end loop over run
 done # end loop over mdl
 done # end loop over scn
@@ -17471,31 +17846,31 @@ done # end loop over var
 
 cd sresa1b/atm/mo/tas/ukmo_hadcm3/run1/
 ncks -H -m -v lat,lon,lat_bnds,lon_bnds -M tas_A1.nc | m
-bds -x 096 -y 073 -m 33 -o $@{DATA@}/data/dst_3.75x2.5.nc # ukmo_hadcm3
-ncview $@{DATA@}/data/dst_3.75x2.5.nc
+bds -x 096 -y 073 -m 33 -o ${DATA}/data/dst_3.75x2.5.nc # ukmo_hadcm3
+ncview ${DATA}/data/dst_3.75x2.5.nc
 
 # msk_rgn is California mask on ukmo_hadcm3 grid
 # area is correct area weight on ukmo_hadcm3 grid
-ncks -A -v area,msk_rgn $@{DATA@}/data/dst_3.75x2.5.nc \
-$@{DATA@}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/area_msk_ukmo_hadcm3.nc 
+ncks -A -v area,msk_rgn ${DATA}/data/dst_3.75x2.5.nc \
+${DATA}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/area_msk_ukmo_hadcm3.nc 
 
 Template for standardized data:
-$@{scn@}_$@{mdl@}_$@{run@}_$@{var@}_$@{yyyymm@}_$@{yyyymm@}.nc
+${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 
 e.g., raw data
-$@{DATA@}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/tas_A1.nc
+${DATA}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/tas_A1.nc
 becomes standardized data
 
 Level 0: raw from IPCC site--no changes except for name 
          Make symbolic link name match raw data
-Template: $@{scn@}_$@{mdl@}_$@{run@}_$@{var@}_$@{yyyymm@}_$@{yyyymm@}.nc
+Template: ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 
 ln -s -f tas_A1.nc sresa1b_ukmo_hadcm3_run1_tas_200101_209911.nc
 area_msk_ukmo_hadcm3.nc
 
 Level I: Add all variables (not standardized in time)
          to file containing msk_rgn and area
-Template: $@{scn@}_$@{mdl@}_$@{run@}_$@{yyyymm@}_$@{yyyymm@}.nc
+Template: ${scn}_${mdl}_${run}_${yyyymm}_${yyyymm}.nc
 
 /bin/cp area_msk_ukmo_hadcm3.nc sresa1b_ukmo_hadcm3_run1_200101_209911.nc
 ncks -A -v tas sresa1b_ukmo_hadcm3_run1_tas_200101_209911.nc \
@@ -17509,7 +17884,7 @@ mv sresa1b_ukmo_hadcm3_run1_200101_209911.nc foo.nc
 ncks -A -v tas,pr foo.nc sresa1b_ukmo_hadcm3_run1_200101_209911.nc
 
 Level II: Correct # years, months
-Template: $@{scn@}_$@{mdl@}_$@{run@}_$@{var@}_$@{yyyymm@}_$@{yyyymm@}.nc
+Template: ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 
 ncks -d time,....... file1.nc file2.nc 
 ncrcat file2.nc file3.nc sresa1b_ukmo_hadcm3_run1_200001_209912.nc
@@ -17525,6 +17900,7 @@ Level III: Many derived products from level II, e.g.,
       ncwa -m msk_rgn -w area -a lat,lon \
            sresa1b_ukmo_hadcm3_run1_200001_209912.nc \
 	   sresa1b_ukmo_hadcm3_run1_200001_209912_xy_Cal.nc
+ at end verbatim
 @end example
 
 @html
diff --git a/doc/nco.txt b/doc/nco.txt
index 63a35e5..3ff8521 100644
--- a/doc/nco.txt
+++ b/doc/nco.txt
@@ -68,6 +68,10 @@ Summary
   3.11 Subsetting Files
   3.12 Subsetting Coordinate Variables
   3.13 Group Path Editing
+    3.13.1 Deletion, Truncation, and Flattening of Groups
+    3.13.2 Moving Groups
+    3.13.3 Dismembering Files
+    3.13.4 Checking CF-compliance
   3.14 C and Fortran Index conventions
   3.15 Hyperslabs
   3.16 Stride
@@ -149,7 +153,8 @@ Summary
     4.12.2 Normalization and Integration
 5 Contributing
   5.1 Contributors
-  5.2 Proposals for Institutional Funding
+  5.2 Citation
+  5.3 Proposals for Institutional Funding
 6 Quick Start
   6.1 Daily data in one file
   6.2 Monthly data in one file
@@ -191,8 +196,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.4.  It was last updated 20
-May 2014.  Corrections, additions, and rewrites of this documentation
+   This documentation is for NCO version 4.4.5.  It was last updated 8
+July 2014.  Corrections, additions, and rewrites of this documentation
 are very welcome.
 
    Enjoy,
@@ -262,17 +267,17 @@ Grenoble, France
    The end of the NSF SEI grant in August, 2008 curtailed NCO
 development.  Fortunately we could justify supporting Henry Butowsky on
 other research grants until May, 2010 while he developed the key 'ncap2'
-features used in our climate research.  And recentely the NASA ACCESS
-program commenced funding NCO support for netCDF4 group functionality.
+features used in our climate research.  And recently the NASA ACCESS
+program commenced funding us to support netCDF4 group functionality.
 Thus NCO will grow and evade bit-rot for the foreseeable future.
 
-   On a personal level, I continue to receive with gratitude the thanks
-of NCO users at nearly every scientific meeting I attend.  People
-introduce themselves, shake my hand and extol, sometimes rather
-effusively, these time-saving tools.  These exchanges lighten me like
-anti-gravity.  Sometimes I daydream how many hours NCO has turned from
-grunt work to productive research for researchers world-wide, or from
-research into early happy hours.  It's a cool feeling.
+   I continue to receive with gratitude the thanks of NCO users at
+nearly every scientific meeting I attend.  People introduce themselves,
+shake my hand and extol NCO, often effusively, while I grin in stupid
+embarassment.  These exchanges lighten me like anti-gravity.  Sometimes
+I daydream how many hours NCO has turned from grunt work to productive
+research for researchers world-wide, or from research into early
+happy-hours.  It's a cool feeling.
 
 
 Charlie Zender
@@ -353,7 +358,7 @@ 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.4).  The
+   There are twelve operators in the current version (4.4.5).  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
@@ -534,7 +539,7 @@ different switches.  For example, 'ncdiff' is the same as 'ncbo' and
 synonyms by the executing the following UNIX commands in the directory
 where the NCO executables are installed.
      ln -s -f ncbo ncdiff    # ncbo --op_typ='+'
-     ln -s -f ncra ncecat    # ncra --pseudonym='ncecat'
+     ln -s -f ncra nces      # ncra --pseudonym='nces'
      ln -s -f ncra ncrcat    # ncra --pseudonym='ncrcat'
      ln -s -f ncbo ncadd     # ncbo --op_typ='+'
      ln -s -f ncbo ncsubtract # ncbo --op_typ='-'
@@ -542,7 +547,7 @@ where the NCO executables are installed.
      ln -s -f ncbo ncdivide   # ncbo --op_typ='/'
      ln -s -f ncpdq ncpack    # ncpdq
      ln -s -f ncpdq ncunpack  # ncpdq --unpack
-     # NB: Cygwin executable (and link) names have an '.exe' suffix, e.g.,
+     # NB: Windows/Cygwin executable/link names have '.exe' suffix, e.g.,
      ln -s -f ncbo.exe ncdiff.exe
      ...
    The imputed command called by the link is given after the comment.
@@ -1134,7 +1139,7 @@ respectively.  Initially the record dimension is 'time'.  Our goal is to
 create a single file that contains joins all the spatially adjacent
 regions into one single time-evolving dataset.
      for idx in 01 02 03 04 05 06 07 08 09 10; do # Bourne Shell
-       ncpdq -a x,time x_${idx}.nc foo_${idx}.nc # Make x record dimension
+       ncpdq -a x,time x_${idx}.nc foo_${idx}.nc  # Make x record dimension
      done
      ncrcat foo_??.nc out.nc       # Concatenate along x
      ncpdq -a time,x out.nc out.nc # Revert to time as record dimension
@@ -1482,8 +1487,11 @@ controlled by the user.
 
 Availability: All operators
    NCO support for "internationalization" of textual input and output
-(e.g., Warning messages) is nascent.  We hope to produce foreign
-language string catalogues in 2004.
+(e.g., Warning messages) is nascent.  We introduced the first foreign
+language string catalogues (French and Spanish) in 2004, yet did not
+activate these in distributions because the catalogues were nearly
+empty.  We seek volunteers to populate our templates with translations
+for their favorite languages.
 
 3.2 Metadata Optimization
 =========================
@@ -1670,14 +1678,17 @@ They produce identical answers.
      ncra -n 5,2,1 85.nc 8589.nc
    The first method (explicitly specifying all filenames) works by brute
 force.  The second method relies on the operating system shell to "glob"
-(expand) the "regular expression" '8[56789].nc'.  The shell passes valid
-filenames which match the expansion to 'ncra'.  The third method uses
-the '-p INPUT-PATH' argument to specify the directory where all the
-input files reside.  NCO prepends INPUT-PATH (e.g.,
-'/data/usrname/model') to all INPUT-FILES (though not to OUTPUT-FILE).
-Thus, using '-p', the path to any number of input files need only be
-specified once.  Note INPUT-PATH need not end with '/'; the '/' is
-automatically generated if necessary.
+(expand) the "regular expression" '8[56789].nc'.  The shell then passes
+the valid filenames (those which match the regular expansion) to 'ncra'.
+In this case 'ncra' never knows that a regular expression was used,
+because the shell intercepts and expands and matches the regular
+expression before 'ncra' is actually invoked.  The third method uses the
+'-p INPUT-PATH' argument to specify the directory where all the input
+files reside.  NCO prepends INPUT-PATH (e.g., '/data/username/model') to
+all INPUT-FILES (though not to OUTPUT-FILE).  Thus, using '-p', the path
+to any number of input files need only be specified once.  Note
+INPUT-PATH need not end with '/'; the '/' is automatically generated if
+necessary.
 
    The last method passes (with '-n') syntax concisely describing the
 entire set of filenames (1).  This option is only available with the
@@ -1692,8 +1703,8 @@ standard filetype indicator.  For example, in the file 'ccm3_h0001.nc',
 we have ALPHANUMERIC_PREFIX = 'ccm3_h', NUMERIC_SUFFIX = '0001', and
 FILETYPE = 'nc'.
 
-   NCO is able to decode lists of such filenames encoded using the '-n'
-option.  The simpler (3-argument) '-n' usage takes the form '-n
+   NCO decodes lists of such filenames encoded using the '-n' syntax.
+The simpler (3-argument) '-n' usage takes the form '-n
 FILE_NUMBER,DIGIT_NUMBER,NUMERIC_INCREMENT' where FILE_NUMBER is the
 number of files, DIGIT_NUMBER is the fixed number of numeric digits
 comprising the NUMERIC_SUFFIX, and NUMERIC_INCREMENT is the constant,
@@ -1731,10 +1742,10 @@ June-July-August, and December-January-February, respectively:
 suffice to specify consecutive months ('06, 07, 08') which do not "wrap"
 back to a minimum value.  The second example shows how to use the
 optional fourth and fifth elements of the '-n' option to specify a wrap
-value to NCO.  The fourth argument to '-n', if present, specifies the
-maximum integer value of NUMERIC_SUFFIX.  In this case the maximum value
-is 12, and will be formatted as '12' in the filename string.  The fifth
-argument to '-n', if present, specifies the minimum integer value of
+value.  The fourth argument to '-n', when present, specifies the maximum
+integer value of NUMERIC_SUFFIX.  In the example the maximum value is 12,
+and will be formatted as '12' in the filename string.  The fifth
+argument to '-n', when present, specifies the minimum integer value of
 NUMERIC_SUFFIX.  The default minimum filename suffix is 1, which is
 formatted as '01' in this case.  Thus the second and third examples have
 the same effect, that is, they automatically generate, in order, the
@@ -1742,8 +1753,11 @@ filenames '85_12.nc', '85_01.nc', and '85_02.nc' as input to NCO.
 
    ---------- Footnotes ----------
 
-   (1) The '-n' option is a backward compatible superset of the 'NINTAP'
-option from the NCAR CCM Processor.
+   (1) The '-n' option is a backward-compatible superset of the 'NINTAP'
+option from the NCAR CCM Processor.  The CCM Processor was
+custom-written Fortran code maintained for many years by Lawrence Buja
+at NCAR, and phased-out in the late 1990s.  NCO stole some ideas, like
+'NINTAP'-functionality, from the CCM Processor capabilities.
 
 3.6 Specifying Output Files
 ===========================
@@ -1790,15 +1804,17 @@ privileges, NCAR's Mass Storage System (MSS), or an OPeNDAP server.
 Examples of each are given below, following a brief description of the
 particular access protocol.
 
-   To access a file via an anonymous FTP server, supply the remote
-file's URL.  FTP is an intrinsically insecure protocol because it
-transfers passwords in plain text format.  Users should access sites
-using anonymous FTP, or better yet, secure FTP when possible.  Some FTP
-servers require a login/password combination for a valid user account.
-NCO allows these transactions so long as the required information is
-stored in the '.netrc' file.  Usually this information is the remote
-machine name, login, and password, in plain text, separated by those
-very keywords, e.g.,
+   To access a file via an anonymous FTP server, simply supply the
+remote file's URL.  Anonymous FTP usually requires no further
+credentials, e.g., no '.netrc' file is necessary.  FTP is an
+intrinsically insecure protocol because it transfers passwords in plain
+text format.  Users should access sites using anonymous FTP, or better
+yet, secure FTP (SFTP, see below) when possible.  Some FTP servers
+require a login/password combination for a valid user account.  NCO
+allows transactions that require additional credentials so long as the
+required information is stored in the '.netrc' file.  Usually this
+information is the remote machine name, login, and password, in plain
+text, separated by those very keywords, e.g.,
      machine dust.ess.uci.edu login zender password bushlied
    Eschew using valuable passwords for FTP transactions, since '.netrc'
 passwords are potentially exposed to eavesdropping software (1).
@@ -1808,7 +1824,7 @@ the security issues associated with plain FTP.  NCO supports SFTP
 protocol access to files specified with a homebrew syntax of the form
      sftp://machine.domain.tld:/path/to/filename
    Note the second colon following the top-level-domain, 'tld'.  This
-syntax is a hybrid between an FTP URL and a standard remote file syntax.
+syntax is a hybrid between an FTP URL and standard remote file syntax.
 
    To access a file using 'rcp' or 'scp', specify the Internet address
 of the remote file.  Of course in this case you must have 'rcp' or 'scp'
@@ -1939,7 +1955,7 @@ format:
      % ncks -H -v one ~/foo.nc
      one = 1
    And, of course, OPeNDAP-enabled NCO clients continue to support
-other, orthogonal features such as UDUnits (*note UDUnits Support::):
+orthogonal features such as UDUnits (*note UDUnits Support::):
      % ncks -u -C -H -v wvl -d wvl,'0.4 micron','0.7 micron' \
        -p http://thredds-test.ucar.edu/thredds/dodsC/testdods in_4.nc
      % wvl[0]=5e-07 meter
@@ -1954,9 +1970,9 @@ mean surface pressure (in Pa).
      http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/surface \
        pres.sfc.1969.nc ~/foo.nc
 All with one command!  The data in this particular input file also
-happen to be packed (*note Methods and functions::), although this is
-completely transparent to the user since NCO automatically unpacks data
-before attempting arithmetic.
+happen to be packed (*note Methods and functions::), although this
+complication is transparent to the user since NCO automatically unpacks
+data before attempting arithmetic.
 
    NCO obtains remote files from the OPeNDAP server (e.g.,
 'www.cdc.noaa.gov') rather than the local machine.  Input files are
@@ -2348,11 +2364,6 @@ to configure LFS at build time.
 3.11 Subsetting Files
 =====================
 
-Options '--unn'
-Availability: 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncks', 'ncpdq',
-'ncra', 'ncrcat', 'ncwa'
-Short options:
-Long options: '--unn' and '--union'
 Options '-g GRP'
 Availability: 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncks', 'ncpdq',
 'ncra', 'ncrcat', 'ncwa'
@@ -2363,6 +2374,15 @@ Availability: ('ncap2'), 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncks',
 'ncpdq', 'ncra', 'ncrcat', 'ncwa'
 Short options: '-v', '-x'
 Long options: '--variable', '--exclude' or '--xcl'
+Options '--unn'
+Availability: 'ncbo', 'nces', 'ncecat', 'ncflint', 'ncks', 'ncpdq',
+'ncra', 'ncrcat', 'ncwa'
+Short options:
+Long options: '--unn' and '--union'
+Options '--grp_xtr_var_xcl'
+Availability: 'ncks'
+Short options:
+Long options: '--gxvx' and '--grp_xtr_var_xcl'
    Subsetting variables refers to explicitly specifying variables and
 groups to be included or excluded from operator actions.  Subsetting is
 controlled by the '-v VAR[,...]' and '-x' options for directly
@@ -2390,6 +2410,17 @@ controlled by a few powerful yet subtle syntactical distinctions.  When
 learning this syntax it is helpful to keep in mind the similarity
 between group hierarchies and directory structures.
 
+   As of NCO 4.4.4 (June, 2014), 'ncks' (alone) supports an option to
+include specified groups yet exclude specified variables.  The
+'--grp_xtr_var_xcl' switch (with long option equivalent '--gxvx')
+extracts all contents of groups given as arguments to '-g GRP[,...]',
+except for variables given as arguments to '-v VAR[,...]'.  Use this
+when one or a few variables in hierarchical files are not to be
+extracted, and all other variables are.  This is useful when coercing
+netCDF4 files into netCDF3 files such as with converting, flattening, or
+dismembering files (see *note Flattening Groups::).
+     ncks --grp_xtr_var_xcl -g g1 -v v1 # Extract all of group g1 except v1
+
    Two properties of subsetting, recursion and anchoring, are best
 illustrated by reminding the user of their UNIX equivalents.  The UNIX
 command 'mv src dst' moves 'src' _and all its subdirectories_ (and all
@@ -2608,10 +2639,12 @@ simply by explicitly selecting the coordinates with the -V option.  The
 specifying that _all_ coordinate variables in the INPUT-FILES should
 appear in the OUTPUT-FILE.  Thus '-c' allows the user to select all the
 coordinate variables without having to know their names.  As of NCO
+version 4.4.5 (July, 2014) both '-c' and '-C' honor the CF
+'ancillary_variables' convention described in *note CF Conventions::.
+As of NCO version 4.0.8 (April, 2011) both '-c' and '-C' honor the CF
+'bounds' convention described in *note CF Conventions::.  As of NCO
 version 3.9.6 (January, 2009) both '-c' and '-C' honor the CF
-'coordinates' convention described in *note CF Conventions::.  As of NCO
-version 4.0.8 (April, 2011) both '-c' and '-C' honor the CF 'bounds'
-convention described in *note CF Conventions::.
+'coordinates' convention described in *note CF Conventions::.
 
 3.13 Group Path Editing
 =======================
@@ -2654,10 +2687,12 @@ positive and it will be assumed to refer to Truncation-Mode.  Hence, '-G
 :-1' is the same as '-G @1'.  This is simply a way of making the LVL_NBR
 argument positive-definite.
 
-   GPE has three editing modes: Delete, Truncate, and Flatten.  Select
-one of GPE's three editing modes by supplying a LVL_NBR that is
-positive, negative, or zero for Delete-, Truncate- and Flatten-mode,
-respectively.
+3.13.1 Deletion, Truncation, and Flattening of Groups
+-----------------------------------------------------
+
+GPE has three editing modes: Delete, Truncate, and Flatten.  Select one
+of GPE's three editing modes by supplying a LVL_NBR that is positive,
+negative, or zero for Delete-, Truncate- and Flatten-mode, respectively.
 
    In Delete-mode, LVL_NBR is a positive integer which specifies the
 maximum number of group path components (i.e., groups) that GPE will try
@@ -2742,12 +2777,15 @@ commands.  All commands below may be assumed to end with 'in.nc out.nc'.
      ncks -G g2:-1 -g g1    -v v1 # /g1/v1    -> /g2/v1
      ncks -G g1:-1 -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/g1/v1
 
-   Until fall 2013 (netCDF version 4.3.1-pre1), netCDF contained no
-library function for renaming groups, and therefore 'ncrename' cannot
-rename groups.  However, NCO built on earlier versions of netCDF than
-4.3.1 can use a GPE-based workaround mechanism to "rename" groups.  The
-GPE mechanism actually _moves_ (i.e., copies to a new location) groups,
-a more arduous procedure than simply renaming them.  GPE applies to all
+3.13.2 Moving Groups
+--------------------
+
+Until fall 2013 (netCDF version 4.3.1-pre1), netCDF contained no library
+function for renaming groups, and therefore 'ncrename' cannot rename
+groups.  However, NCO built on earlier versions of netCDF than 4.3.1 can
+use a GPE-based workaround mechanism to "rename" groups.  The GPE
+mechanism actually _moves_ (i.e., copies to a new location) groups, a
+more arduous procedure than simply renaming them.  GPE applies to all
 selected groups, so, in the general case, one must move only the desired
 group to a new file, and then merge that new file with the original to
 obtain a file where the desired group has been "renamed" and all else is
@@ -2773,7 +2811,16 @@ format, the '-G :' option flattens all extracted groups, and the '-g
 cesm' option extracts only the 'cesm' group and leaves all other groups
 (e.g., 'ecmwf', 'giss').
 
-   Let us show how to completely disaggregate (or, more memorably)
+   ---------- Footnotes ----------
+
+   (1) Note that the '-3' switch should appear _after_ the '-G' and '-g'
+switches.  This is due to an artifact of the GPE implementation which we
+wish to remove in the future.
+
+3.13.3 Dismembering Files
+-------------------------
+
+Let us show how to completely disaggregate (or, more memorably)
 _dismember_ a hierarchical dataset.  For now we take this to mean: store
 each group as a standalone flat dataset in netCDF3 format.  This can be
 accomplished by looping the previous example over all groups.  This
@@ -2839,7 +2886,8 @@ specified by the second argument:
          eval ${cmd}
          if [ ${flg_cf} = 'cf' ]; then
             # cfchecker needs Conventions <= 1.5
-            ncatted -h -a Conventions,global,o,c,"CF-${cf_vrs}" ${drc_out}/${grp_out}.nc
+            no_bck_sls=`echo ${drc_out}/${grp_out} | sed 's/\\\ / /g'`
+            ncatted -h -a Conventions,global,o,c,CF-${cf_vrs} ${no_bck_sls}.nc
          else # !flg_cf
             echo ${drc_out}/${grp_out}.nc
          fi # !flg_cf
@@ -2876,9 +2924,12 @@ autoconverts netCDF4-only atomic-types (such as 'NC_STRING' and
 'NC_UBYTE') to corresponding netCDF3 atomic types ('NC_CHAR' and
 'NC_SHORT') when the output format is netCDF3.
 
-   One application of dismembering is to check the CF-compliance of each
+3.13.4 Checking CF-compliance
+-----------------------------
+
+One application of dismembering is to check the CF-compliance of each
 group in a file.  When invoked with the optional third argumnt 'cf',
-'ncdismember' passes each file it generates to the freely available (2)
+'ncdismember' passes each file it generates to the freely available (1)
 'cfchecker' command.
      zender at roulee:~$ ncdismember ~/nco/data/mdl_1.nc /data/zender/nco/tmp cf
      NCO dismembering file /home/zender/nco/data/mdl_1.nc
@@ -2920,15 +2971,15 @@ conventions.
    NASA asked the DIWG to prepare a one-page summary of the procedure
 necessary to check HDF files for CF-compliance:
      cat > ~/ncdismember.txt << 'EOF'
-         Preparing an RPM-based OS to Test Hierarchical Files for CF-Compliance
+         Preparing an RPM-based OS to Test HDF & netCDF Files for CF-Compliance
 
      By Charlie Zender, UCI & NASA Dataset Interoperability Working Group (DIWG)
 
      Installation Summary:
-     1. HDF4 [with netCDF support _disabled_]
+     1. HDF4 [with internal netCDF support _disabled_]
      2. HDF5
-     3. netCDF version 4.3.1 (or later) [with HDF4 support _enabled_]
-     4. NCO version 4.4.0 (or later)
+     3. netCDF [with external HDF4 support _enabled_]
+     4. NCO
      5. numpy
      6. netcdf4-python
      7. python-lxml
@@ -2959,20 +3010,19 @@ necessary to check HDF files for CF-compliance:
      ./configure --enable-shared --prefix=${H5DIR}
      make && make check && make install
 
-     # 3. netCDF version 4.3.1. Build in non-default manner with HDF4. No RPM.
+     # 3. netCDF version 4.3.1 or later. Build in non-default manner with HDF4.
      # Per http://www.unidata.ucar.edu/software/netcdf/docs/build_hdf4.html
      # Earlier versions of netCDF may fail checking some HDF4 files
-     wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.1.tar.gz
-     tar xvzf netcdf-4.3.1.tar.gz
-     cd netcdf-4.3.1
+     wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.2.tar.gz
+     tar xvzf netcdf-4.3.2.tar.gz
+     cd netcdf-4.3.2
      CPPFLAGS="-I${H5DIR}/include -I${H4DIR}/include" \
      LDFLAGS="-L${H5DIR}/lib -L${H4DIR}/lib" \
      ./configure --enable-hdf4 --enable-hdf4-file-tests
-     make && make check && make installas
+     make && make check && make install
 
-     # 4. NCO version 4.4.4. No RPM for this version. Must install by hand.
-     # Earlier versions of NCO are relatively useless for ncdismember
-     cd ${DATA}/tmp
+     # 4. NCO version 4.4.0 or later. Some RPMs available. Or install by hand.
+     # Later versions of NCO have much better support for ncdismember
      wget http://nco.sourceforge.net/src/nco-4.4.4.tar.gz .
      tar xvzf nco-4.4.4.tar.gz
      cd nco-4.4.4
@@ -2990,14 +3040,13 @@ necessary to check HDF files for CF-compliance:
 
      # 8. CFunits-python. No RPM available. Must install by hand.
      # http://code.google.com/p/cfunits-python/
-     cd ${DATA}/tmp
      wget http://cfunits-python.googlecode.com/files/cfunits-0.9.6.tar.gz .
+     tar xvzf cfunits-0.9.6.tar.gz
      cd cfunits-0.9.6
      sudo python setup.py install
 
      # 9. CFChecker. No RPM available. Must install by hand.
      # https://bitbucket.org/mde_/cfchecker
-     cd ${DATA}/tmp
      wget https://bitbucket.org/mde_/cfchecker/downloads/CFchecker-1.5.15.tar.bz2 .
      tar xvjf CFchecker-1.5.15.tar.bz2
      cd CFchecker
@@ -3024,11 +3073,7 @@ necessary to check HDF files for CF-compliance:
 
    ---------- Footnotes ----------
 
-   (1) Note that the '-3' switch should appear _after_ the '-G' and '-g'
-switches.  This is due to an artifact of the GPE implementation which we
-wish to remove in the future.
-
-   (2) CFchecker is developed by Michael Decker and Martin Schultz at
+   (1) CFchecker is developed by Michael Decker and Martin Schultz at
 Forschungszentrum Ju"lich and distributed at
 <https://bitbucket.org/mde_/cfchecker>.
 
@@ -3558,9 +3603,9 @@ supports hyperslabbing cell-based grids over coordinate ranges.  This
 works on datasets that associate coordinate variables to grid-mappings
 using the CF-convention (*note CF Conventions::) 'coordinates' and
 'standard_name' attributes described here
-(http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system).
-Currently, NCO understands auxiliary coordinate variables pointed to by
-the 'standard_name' attributes for LATITUDE and LONGITUDE.  Cells that
+(http://cfconventions.org/1.6.html#coordinate-system).  Currently, NCO
+understands auxiliary coordinate variables pointed to by the
+'standard_name' attributes for LATITUDE and LONGITUDE.  Cells that
 contain a value within the user-specified range
 [LON_MIN,LON_MAX,LAT_MIN,LAT_MAX] are included in the output hyperslab.
 
@@ -4044,14 +4089,15 @@ can tune the three switches in tandem to obtain optimal performance.
 
    The user specifies the desired chunking policy with the '-P' switch
 (or its long option equivalents, '--cnk_plc' and '--chunk_policy') and
-its CNK_PLC argument.  Five chunking policies are currently implemented:
-"Chunk All Variables [_default_]"
+its CNK_PLC argument.  As of August, 2014, six chunking policies are
+currently implemented:
+"Chunk All Variables"
      Definition: Chunk all variables possible.  For obvious reasons,
      scalar variables cannot be chunked.
      Alternate invocation: 'ncchunk'
      CNK_PLC key values: 'all', 'cnk_all', 'plc_all'
      Mnemonic: All
-"Chunk Variables with at least Two Dimensions"
+"Chunk Variables with at least Two Dimensions [_default_]"
      Definition: Chunk all variables possible with at least two
      dimensions
      Alternate invocation: none
@@ -4063,6 +4109,15 @@ its CNK_PLC argument.  Five chunking policies are currently implemented:
      Alternate invocation: none
      CNK_PLC key values: 'g3d', 'cnk_g3d', 'plc_g3d'
      Mnemonic: _G_reater than or equal to _3_ _D_imensions
+"Chunk One-Dimensional Record Variables"
+     Definition: Chunk all 1-D record variables
+     Alternate invocation: none
+     Any specified (with '--cnk_dmn') record dimension chunksizes will
+     be applied to 1-D record variables (and to no other variables).
+     Other dimensions may be chunked with their own '--cnk_dmn' options
+     that will apply to all variables.  CNK_PLC key values: 'r1d',
+     'cnk_r1d', 'plc_r1d'
+     Mnemonic: _R_ecord _1_-_D_ variables
 "Chunk Variables Containing Explicitly Chunked Dimensions"
      Definition: Chunk all variables possible that contain at least one
      dimension whose chunksize was explicitly set with the '--cnk_dmn'
@@ -4192,6 +4247,15 @@ many times as necessary.
      ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
       --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.
+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,
+     ncks --cnk_plc=r1d --cnk_dmn=time,1000. in.nc out.nc
+   This sets 'time' chunks to 1000 only in 1-D record variables.
+Without the 'r1d' policy, 'time' chunks would change in all variables.
+
    It is appropriate to conclude by informing users about an aspect of
 chunking that may not be expected.  Three types of variables are
 _always_ chunked: Record variables, Deflated (compressed) variables, and
@@ -4823,7 +4887,7 @@ employed the C library family of rounding functions, 'lround()'.  These
 functions round X to the nearest integer, halfway cases away from zero.
 The problem with 'lround()' is that it always rounds real values ending
 in '.5' away from zero.  This rounds, for example, '1.5d' and '2.5d' to
-'1s' and '2s', respectively.
+'2s' and '3s', respectively.
 
    Since April, 2013 (version 4.3.0), NCO has employed the other C library
 family of rounding functions, 'lrint()'.  This algorithm rounds X to the
@@ -5296,14 +5360,14 @@ datasets may not contain an explicit 'Conventions' attribute (e.g.,
 'CF-1.0').  Nevertheless, we refer to all such metadata collectively as
 CF metadata.  Skip this section if you never work with CF metadata.
 
-   The CF netCDF conventions are described here
-(http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system).
-Most CF netCDF conventions are transparent to NCO (1).  There are no
-known pitfalls associated with using any NCO operator on files adhering
-to these conventions (2).  However, to facilitate maximum user
-friendliness, NCO applies special rules to certain variables in CF
-files.  The special functions are not required by the CF netCDF
-conventions, yet experience shows that they simplify data analysis.
+   The latest CF netCDF conventions are described here
+(http://cfconventions.org/1.6.html).  Most CF netCDF conventions are
+transparent to NCO (1).  There are no known pitfalls associated with
+using any NCO operator on files adhering to these conventions (2).
+However, to facilitate maximum user friendliness, NCO applies special
+rules to certain variables in CF files.  The special functions are not
+required by the CF netCDF conventions, yet experience shows that they
+simplify data analysis.
 
    Currently, NCO determines whether a datafile is a CF output datafile
 simply by checking (case-insensitively) whether the value of the global
@@ -5342,32 +5406,44 @@ first with 'ncrename', or alter the 'Conventions' attribute.
 
    As of NCO version 4.0.8 (April, 2011), NCO supports the CF 'bounds'
 convention for cell boundaries described here
-(http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#cell-boundaries).
-This convention allows coordinate variables (including multidimensional
-coordinates) to describe the boundaries of their cells.  This is done by
-naming the variable which contains the bounds in in the 'bounds'
-attribute.  Note that coordinates of rank N have bounds of rank N+1.
-NCO-generated subsets of CF-compliant files with 'bounds' attributes
-will include the coordinates specified by the 'bounds' attribute, if
-any.  Hence the subsets will themselves be CF-compliant.
+(http://cfconventions.org/1.6.html#cell-boundaries).  This convention
+allows coordinate variables (including multidimensional coordinates) to
+describe the boundaries of their cells.  This is done by naming the
+variable which contains the bounds in in the 'bounds' attribute.  Note
+that coordinates of rank N have bounds of rank N+1.  NCO-generated
+subsets of CF-compliant files with 'bounds' attributes will include the
+coordinates specified by the 'bounds' attribute, if any.  Hence the
+subsets will themselves be CF-compliant.  Bounds are subject to the
+user-specified override switches (including '-c' and '-C') described in
+*note Subsetting Coordinate Variables::.
+
+   As of NCO version 4.4.5 (July, 2014), NCO supports the CF
+'ancillary_variables' convention for described here
+(http://cfconventions.org/1.6.html#ancillary-data).  This convention
+allows ancillary variables to be associated with one or more primary
+variables.  NCO attaches any such variables to the extraction list along
+with the primary variable and its usual (one-dimensional) coordinates,
+if any.  Ancillary variables are subject to the user-specified override
+switches (including '-c' and '-C') described in *note Subsetting
+Coordinate Variables::.
 
    As of NCO version 3.9.6 (January, 2009), NCO supports the CF
 'coordinates' convention described here
-(http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system).
-This convention allows variables to specify additional coordinates
-(including multidimensional coordinates) in a space-separated string
-attribute named 'coordinates'.  NCO attaches any such coordinates to the
+(http://cfconventions.org/1.6.html#coordinate-system).  This convention
+allows variables to specify additional coordinates (including
+multidimensional coordinates) in a space-separated string attribute
+named 'coordinates'.  NCO attaches any such coordinates to the
 extraction list along with variable and its usual (one-dimensional)
 coordinates, if any.  These auxiliary coordinates are subject to the
-user-specified overrides described in *note Subsetting Coordinate
-Variables::.
+user-specified override switches (including '-c' and '-C') described in
+*note Subsetting Coordinate Variables::.
 
    As of NCO version 4.4.2 (February, 2014), NCO supports some of the CF
 'cell_methods' convention
-(http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.7-draft1/cf-conventions.html#cell-methods)
-to describe the analysis procedures that have been applied to data.  The
-convention creates (or appends to an existing) 'cell_methods' attribute
-a space-separated list of couplets of the form DMN: OP where DMN is a
+(http://cfconventions.org/1.6.html#cell-methods) to describe the
+analysis procedures that have been applied to data.  The convention
+creates (or appends to an existing) 'cell_methods' attribute a
+space-separated list of couplets of the form DMN: OP where DMN is a
 comma-separated list of dimensions previously contained in the variable
 that have been reduced by the arithmetic operation OP.  For example, the
 'cell_methods' value 'time: mean' says that the variable in question was
@@ -6027,23 +6103,23 @@ The table below lists the postfix character(s) to add to a number
 literal for type cohesion.  To use the new netCDF4 types NCO must be
 compiled/linked to the netCDF4 library and the output file must be HDF5.
 
-     n1[$time]=1UL; // n1 will now by type NC_UINT
-     n2[$lon]=4b;   // n2 will be of type NC_BYTE
-     n3[$lat]=5ull; // n3 will be of type NC_UINT64
-     n3 at a1=6.0d;   // attribute will be type NC_DOUBLE
-     n3 at a2=-666L;  // attribute will be type NC_INT
+     n1[$time]=1UL; // n1 will now by type @code{NC_UINT}
+     n2[$lon]=4b;   // n2 will be of type @code{NC_BYTE}
+     n3[$lat]=5ull; // n3 will be of type @code{NC_UINT64}
+     n3 at a1=6.0d;   // attribute will be type @code{NC_DOUBLE}
+     n3 at a2=-666L;  // attribute will be type @code{NC_INT}
 
    A floating point number without a postfix will default to
 'NC_DOUBLE'.  An integer without a postfix will default to type
 'NC_INT'.  There is no postfix for characters, use a quoted string
 instead.
-     n4[$rlev]=0.1      // n4 will be of type NC_DOUBLE
-     n5[$lon_grd]=2.0   // n5 will be of type NC_DOUBLE
-     n6[$gds_crd]=2e3;  // n6 will be of type NC_DOUBLE
-     n7[$gds_crd]=2e3f;  // n7 will be of type NC_FLOAT
-     n6 at a1=41;         // attribute will be type NC_INT
-     n6 at a2=-21;        // attribute will be type NC_INT
-     n6 at units="kelvin" // attribute will be type NC_CHAR
+     n4[$rlev]=0.1      // n4 will be of type @code{NC_DOUBLE}
+     n5[$lon_grd]=2.0   // n5 will be of type @code{NC_DOUBLE}
+     n6[$gds_crd]=2e3;  // n6 will be of type @code{NC_DOUBLE}
+     n7[$gds_crd]=2e3f;  // n7 will be of type @code{NC_FLOAT}
+     n6 at a1=41;         // attribute will be type @code{NC_INT}
+     n6 at a2=-21;        // attribute will be type @code{NC_INT}
+     n6 at units="kelvin" // attribute will be type @code{NC_CHAR}
 
 *netCDF3/4 Types*
 b|B
@@ -6087,9 +6163,9 @@ _Conditional Operator (ternary operator)_ has also been implemented.
         stmt1;
         stmt1a;
         stmt1b;
-     } else if(exp2)
+     }else if(exp2)
         stmt2;
-     else {
+     else{
         stmt3;
         stmt3a;
         stmt3b;
@@ -6216,9 +6292,9 @@ with a variable.  They only work on variables in Output.
      is returned. If the variable has no missing value then an error is
      returned.
 'delete_miss()'
-     Deletes the missing value associated with a variable.
+     Delete the missing value associated with a variable.
 'number_miss()'
-     Counts the number of missing values a variable contains.
+     Count the number of missing values a variable contains.
 
      th=three_dmn_var_dbl;
      th.change_miss(-1e10d);
@@ -6479,10 +6555,13 @@ set its values less than 8 or greater than 80 to 0:
    Consider irregularly gridded data, described using rank 2
 coordinates: 'double lat(south_north,east_west)', 'double
 lon(south_north,east_west)', 'double
-temperature(south_north,east_west)'.  To find the average temperature in
-a region bounded by [LAT_MIN,LAT_MAX] and [LON_MIN,LON_MAX]:
+temperature(south_north,east_west)'.  This type of structure is often
+found in regional weather/climate model (such as WRF) output, and in
+satellite swath data.  For this reason we call it "Swath-like Data", or
+SLD.  To find the average temperature in a region bounded by
+[LAT_MIN,LAT_MAX] and [LON_MIN,LON_MAX]:
      temperature_msk[$south_north,$east_west]=0.0;
-     where(lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max)
+     where((lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max))
        temperature_msk=temperature;
      elsewhere
        temperature_msk=temperature at _FillValue;
@@ -6490,6 +6569,42 @@ a region bounded by [LAT_MIN,LAT_MAX] and [LON_MIN,LON_MAX]:
      temp_avg=temperature_msk.avg();
      temp_max=temperature.max();
 
+   For North American Regional Reanalysis (NARR) data (example dataset
+(http://dust.ess.uci.edu/diwg/narr_uwnd.199605.nc)) the procedure looks
+like this
+     ncap2 -O -v -S ~/narr.nco ${DATA}/hdf/narr_uwnd.199605.nc ~/foo.nc
+   where 'narr.nco' is an 'ncap2' script like this:
+     /* North American Regional Reanalysis (NARR) Statistics
+        NARR stores grids with 2-D latitude and longitude, aka Swath-like Data (SLD)
+        Here we work with three variables:
+        lat(y,x), lon(y,x), and uwnd(time,level,y,x);
+        To study sub-regions of SLD, we use masking techniques:
+        1. Define mask as zero times variable to be masked
+           Then mask automatically inherits variable attributes
+           And average below will inherit mask attributes
+        2. Optionally, create mask as RAM variable (as below with asterisk *)
+           NCO does not write RAM variable to output
+           Masks are often unwanted, and can be big, so this speeds execution
+        3. Example could be extended to preserve mean lat and lon of sub-region
+           Follow uwnd example to do this: lat_msk=0.0*lat ... lat_avg=lat.avg($y,$x) */
+     *uwnd_msk=0.0*uwnd;
+     where((lat >= 35.6 && lat <= 37.0) && (lon >= -100.5 && lon <= -99.0))
+       uwnd_msk=uwnd;
+     elsewhere
+       uwnd_msk=uwnd at _FillValue;
+
+     // Average only over horizontal dimensions x and y (preserve level and time)
+     uwnd_avg=uwnd_msk.avg($y,$x);
+   Stripped of comments and formatting, this example is a
+three-statement script executed by a one-line command.  NCO needs only
+this meagre input to unpack and copy the input data and attributes,
+compute the statistics, and then define and write the output file.
+Unless the comments pointed out that wind variable ('uwnd') was
+four-dimensional and the latitude/longitude grid variables were both
+two-dimensional, there would be no way to tell.  This shows how NCO
+hides from the user the complexity of analyzing multi-dimensional SLD.
+We plan to extend such SLD features to more operators soon.
+
 4.1.14 Loops
 ------------
 
@@ -6882,7 +6997,7 @@ document the procedure:
 must use global metadata to determine the grid staggering and offsets to
 translate 'XLAT' and 'XLONG' into real latitudes, longitudes, and
 missing points.  The WRF grid documentation should describe this.  For
-WRF files creating regional masks looks like
+WRF files creating regional masks looks, in general, like
      mask_var = (XLAT >= lat_min && XLAT <= lat_max) && (XLONG >= lon_min && XLONG <= lon_max);
 
    A few notes: Irregular regions are the union of arrays
@@ -7580,7 +7695,7 @@ final value in the vector.
 
    Some examples
 
-     a1[time]={1,2,3,4,5,6,7,8,9,10 };
+     a1[time]={1,2,3,4,5,6,7,8,9,10};
 
      a1_avg=gsl_stats_mean(a1,1,10);
      print(a1_avg); // 5.5
@@ -8320,9 +8435,9 @@ sequences.
 whatever it currently is to "temperature":
      ncatted -a long_name,T,o,c,temperature in.nc
 
-   NCO arithmetic operators will not work as expected on IEEE NaN (short
+   NCO arithmetic operators may not work as expected on IEEE NaN (short
 for Not-a-Number) and NaN-like numbers such as positive infinity and
-negative infinity.  One way to work-around this problem is to change
+negative infinity (1).  One way to work-around this problem is to change
 IEEE NaNs to normal missing values.  As of NCO 4.1.0 (March, 2012),
 'ncatted' works with NaNs.  First set the missing value (i.e., the value
 of the '_FillValue' attribute) for the variable(s) in question to the
@@ -8392,6 +8507,13 @@ other special characters (e.g., '\"')
 quotes.  These outer single quotes are necessary for interactive use,
 but may be omitted in batch scripts.
 
+   ---------- Footnotes ----------
+
+   (1) 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 IEEE 754.  Using NaN
+for the missing value in datasets is legal.  We strongly discourage it.
+
 4.3 'ncbo' netCDF Binary Operator
 =================================
 
@@ -8508,13 +8630,14 @@ FILE_2 was created by applying an averaging operator to a file with
 initially the same dimensions as FILE_1 (often FILE_1 itself).  In these
 cases, creating FILE_2 with 'ncra' rather than 'ncwa' will cause the
 'ncbo' operation to fail.  For concreteness say the record dimension in
-'file_1' is 'time'.  If FILE_2 were created by averaging FILE_1 over the
-'time' dimension with the 'ncra' operator rather than with the 'ncwa'
-operator, then FILE_2 will have a 'time' dimension of size 1 rather than
-having no 'time' dimension at all (6).  In this case the input files to
-'ncbo', FILE_1 and FILE_2, will have unequally sized 'time' dimensions
-which causes 'ncbo' to fail.  To prevent this from occuring, use 'ncwa'
-to remove the 'time' dimension from FILE_2.  See the example below.
+'file_1' is 'time'.  If FILE_2 was created by averaging FILE_1 over the
+'time' dimension with the 'ncra' operator (rather than with the 'ncwa'
+operator), then FILE_2 will have a 'time' dimension of size 1 rather
+than having no 'time' dimension at all (6).  In this case the input
+files to 'ncbo', FILE_1 and FILE_2, will have unequally sized 'time'
+dimensions which causes 'ncbo' to fail.  To prevent this from occuring,
+use 'ncwa' to remove the 'time' dimension from FILE_2.  See the example
+below.
 
    'ncbo' never operates on coordinate variables or variables of type
 'NC_CHAR' or 'NC_STRING'.  This ensures that coordinates like (e.g.,
@@ -9130,7 +9253,7 @@ SYNTAX
      ncks [-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b BINARY-FILE] [-C] [-c] [--cdl]
      [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_plc plc] [--cnk_scl sz]
      [-D DBG] [-d DIM,[MIN][,[MAX][,[STRIDE]]] [-F] [--fix_rec_dmn DIM]
-     [-G GPE_DSC] [-g GRP[,...]] [-H] [-h] [--hdn] [--hdr_pad NBR]
+     [-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]
      [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s FORMAT]
@@ -9502,7 +9625,7 @@ features::.
      netCDF4 files into NcML, including metadata and data, using all
      NCO's subsetting and hyperslabbing capabilities.  Compare 'ncks'
      "traditional" with XML printing:
-          zender@@roulee:~$ ncks -v one ~/nco/data/in.nc
+          zender at roulee:~$ ncks -v one ~/nco/data/in.nc
           one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
           one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
           one attribute 0: long_name, size = 3 NC_CHAR, value = one
@@ -9536,19 +9659,19 @@ features::.
      used as NcML separators for attributes and variables of
      character-type and numeric-type, respectively.  Their default
      separators are "*" and " ":
-          zender@@roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
+          zender at roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
           ...
              <values separator="*">abc*bcd*cde*def</values>
            ...
-           zender@@roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
+           zender at roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
           ...
           <values separator=", ">abc, bcd, cde, def, efg, fgh, ghi, hij, jkl, klm</values>
           ...
-          zender@@roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
+          zender at roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
           ...
           <values>1 2 3 4 5 6 7 8 9 10</values>
           ...
-          zender@@roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
+          zender at roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
           ...
           <values separator=", ">1, 2, 3, 4, 5, 6, 7, 8, 9, 10</values>
           ...
@@ -9757,16 +9880,17 @@ thus not technically strings) is likely to result in a core dump.
 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 'bounds' or 'coordinates' variable (*note CF Conventions::)
-such as 'time_bounds'.  NCO subsetting assumes the user wants all
-coordinates and bounds and axes associated with all extracted variables
-(*note Subsetting Coordinate Variables::).  Hence to exclude a 'bounds'
-or 'coordinates' variable while retaining the "parent" variable (here
+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:
      ncks -C -x -v time_bounds in.nc out.nc
    The '-C' switch tells the operator _NOT_ to necessarily include all
-the CF coordinates and bounds and axes.  Hence the output file will
-contain 'time' and not 'time_bounds'.
+the CF ancillary variables, axes, bounds, and coordinates.  Hence the
+output file will contain 'time' and not 'time_bounds'.
 
    Extract variables 'time' and 'pressure' from netCDF 'in.nc'.  If
 'out.nc' does not exist it will be created.  Otherwise the you will be
@@ -10784,11 +10908,11 @@ Charlie Zender
 Henry Butowsky
      Non-linear operations and 'min()', 'max()', 'total()' support in
      'ncra' and 'ncwa'.  Type conversion for arithmetic.  Migration to
-     netCDF3 API. 'ncap2' parser, lexer, GSL-support, and I/O.
+     netCDF3 API.  'ncap2' parser, lexer, GSL-support, and I/O.
      Multislabbing algorithm.  Variable wildcarding.  Numerous hacks.
      'ncap2' language.
 Rorik Peterson
-     Original autotool build support.  Long command-line options.
+     Original autotools build support.  Long command-line options.
      Original UDUnits support.  Debianization.  Numerous bug-fixes.
 Joe Hamman
      Python bindings (NCOpy).
@@ -10818,7 +10942,7 @@ Gayathri Venkitachalam
      MPI implementation.
 Scott Capps
      Large work-load testing
-Peter Campbell, Martin Dix, Mark Flanner, Markus Liebig, Keith Lindsay, Mike Page, Martin Schmidt, Michael Schulz, Lori Sentman, Gary Strand, George White Andrew Wittenberg, Remik Ziemlinski
+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
      Excellent bug reports and feature requests.
 Daniel Baumann, Nick Bower, Luk Claebs, Barry deFreese, Aleksandar Jelenak, Francesco Lovergine, Matej Vela
      Debian packaging
@@ -10842,7 +10966,26 @@ Wenshan Wang
      CMIP5 and MODIS processing documentation.
    Please let me know if your name was omitted!
 
-5.2 Proposals for Institutional Funding
+5.2 Citation
+============
+
+The recommended citations for NCO software are
+     Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience
+     Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10),
+     1338-1342, doi:10.1016/j.envsoft.2008.03.004.
+
+     Zender, C. S. (2014), netCDF Operator (NCO) User Guide, Version 4.4.3,
+     http://nco.sf.net/nco.pdf.
+   Use the former when referring to overall design, purpose, and
+optimization of NCO, and use the latter when referring to specific
+features and/or the User Guide itself.
+
+   Additional information on citing NCO is in the User Guide at
+<http://nco.sf.net#ctt>.  A complete list of NCO publications and
+presentations is at <http://nco.sf.net#pub>.  This list links to the
+full papers and seminars themselves.
+
+5.3 Proposals for Institutional Funding
 =======================================
 
 NSF has funded a project (http://nco.sf.net#prp_sei) to improve
@@ -10970,26 +11113,48 @@ a multi-model framework for comparing the mechanisms and responses of
 climate models from around the world.  However, it is a tremendous
 workload to retrieve a single climate statistic from all these models,
 each of which includes several ensemble members.  Not only that, it is
-too often a repetitive process which impedes new research and hypothesis
-testing.  Our NASA ACCESS project is designed to simplify and accelerate
-this process.  To begin, we document below a prototypical example of
-CMIP5 analysis and evaluation using traditional NCO commands on
-netCDF3-format model and HDF-EOS format observational (NASA MODIS
-satellite instrument) datasets.  These examples complement the NCO User
-Guide by detailing in-depth data analysis in a frequently encountered
-"real world" context.  Graphical representations of the results (NCL
-scripts available upon request) are provided to illustrate physical
-meaning of the analysis.  Since NCO can process hierarchical datasets,
-i.e., datasets stored with netCDF4 groups, we present sample scripts
-illustrating group-based processing as well.
+too often a tedious process that impedes new research and hypothesis
+testing.  Our NASA ACCESS 2011 project simplified and accelerated this
+process.
+
+   Traditional geoscience data analysis requires users to work with
+numerous flat (data in one level or namespace) files.  In that paradigm
+instruments or models produce, and then repositories archive and
+distribute, and then researchers request and analyze, collections of
+flat files.  NCO works well with that paradigm, yet it also embodies the
+necessary algorithms to transition geoscience data analysis from relying
+solely on traditional (or "flat") datasets to allowing newer
+hierarchical (or "nested") datasets.
+
+   Hierarchical datasets support and enable combining all datastreams
+that meet user-specified criteria into a single or small number of files
+that hold _all_ the science-relevant data.  NCO (and no other software
+to our knowledge) exploits this capability now.  Data and metadata may
+be aggregated into and analyzed in hierarchical structures.  We call the
+resulting data storage, distribution, and analysis paradigm
+Group-Oriented Data Analysis and Distribution (GODAD).  GODAD lets the
+scientific question organize the data, not the _ad hoc_ granularity of
+all relevant datasets.  This chapter illustrates GODAD techniques
+applied to analysis of the CMIP5 dataset.
+
+   To begin, we document below a prototypical example of CMIP5 analysis
+and evaluation using traditional NCO commands on netCDF3-format model
+and HDF-EOS format observational (NASA MODIS satellite instrument)
+datasets.  These examples complement the NCO User Guide by detailing
+in-depth data analysis in a frequently encountered "real world" context.
+Graphical representations of the results (NCL scripts available upon
+request) are provided to illustrate physical meaning of the analysis.
+Since NCO can process hierarchical datasets, i.e., datasets stored with
+netCDF4 groups, we present sample scripts illustrating group-based
+processing as well.
 
 7.1 Combine Files
 =================
 
 Sometimes, the data of one ensemble member will be stored in several
-files to reduce single file size.  But it is not convenient to process
-in a batch mode.  The following script illustrates how to concatenate
-these files into one.  Key steps include:
+files to reduce single file size.  It is more convenient to concatenate
+these files into a single timeseries, and the following script
+illustrates how.  Key steps include:
   1. Obtain number and names (or partial names) of files in a directory
   2. Concatenate files along the record dimension (usually time) using
      'ncrcat' (*note ncrcat netCDF Record Concatenator::).
@@ -11082,17 +11247,17 @@ these files into one.  Key steps include:
        done
      done
 
-   Right now, CMIP5 model data downloaded from Earth System Grid
-Federation (ESGF (http://pcmdi9.llnl.gov/esgf-web-fe/)) will not contain
-<group> features yet.  Therefore users can aggregate the flat files into
-groups themselves.  The following script shows how to aggregate models
-to one file.  Each dataset becomes a group in the output file.  There
-can be several levels of groups.  In this example, we employ two
-experiments as the top-level.  The second-level comprises different
-models.  Some models have more than one ensemble member.  These ensemble
-members are on the third level.  In each sub-group of ensemble members,
-we appended two variables, SNC and SND (these stand for snow cover and
-snow depth, by the way).
+   CMIP5 model data downloaded from the Earth System Grid Federation
+(ESGF (http://pcmdi9.llnl.gov/esgf-web-fe/)) does not contain group
+features yet.  Therefore users must aggregate flat files into
+hierarchical ones themselves.  The following script shows how.  Each
+dataset becomes a group in the output file.  There can be several levels
+of groups.  In this example, we employ two experiments ("scenarios") as
+the top-level.  The second-level comprises different models (e.g.,
+CCSM4, CESM1-BGC). Many models are run multiple times with slight
+perturbed initial conditions to produce an ensemble of realizations.
+These ensemble members comprise the third level of the hierarchy.  The
+script selects two variables, SNC and SND (snow cover and snow depth).
      #!/bin/bash
      #
      #============================================================
@@ -11100,7 +11265,7 @@ snow depth, by the way).
      #
      # Method:
      # - Create files with groups by ncecat --gag
-     #	- Append groups level by level using ncks
+     # - Append groups level by level using ncks
      #
      # Input files like:
      # snc_LImon_CCSM4_historical_r1i1p1_199001-200512.nc
@@ -11120,7 +11285,7 @@ snow depth, by the way).
 
      # Constants
      rlm='LImon'         # Realm: LandIce; Time frequency: monthly
-     tms='200001-200512' # Timeseris
+     tms='200001-200512' # Timeseries
      flt='nc'            # File Type
 
      # Geographical weights
@@ -12019,7 +12184,7 @@ This chapter illustrates how to use NCO to process and analyze the
 results of a CCSM climate simulation.
      ************************************************************************
      Task 0: Finding input files
-     ************************************************************************
+     x************************************************************************
      The CCSM model outputs files to a local directory like:
 
      /ptmp/zender/archive/T42x1_40
@@ -12371,2895 +12536,2906 @@ General Index
 * Menu:
 
 * '"' (double quote):                    ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '#include':                            Syntax of ncap2 statements.
-                                                            (line  5594)
-* '$' (wildcard character):              Subsetting Files.  (line  2537)
+                                                            (line  5669)
+* '$' (wildcard character):              Subsetting Files.  (line  2567)
 * '%' (modulus):                         Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * ''' (end quote):                       ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '*':                                   ncbo netCDF Binary Operator.
-                                                            (line  8468)
-* '*' (filename expansion):              Subsetting Files.  (line  2537)
+                                                            (line  8589)
+* '*' (filename expansion):              Subsetting Files.  (line  2567)
 * '*' (multiplication):                  Intrinsic mathematical methods.
-                                                            (line  7926)
-* '*' (wildcard character):              Subsetting Files.  (line  2544)
+                                                            (line  8040)
+* '*' (wildcard character):              Subsetting Files.  (line  2574)
 * '+':                                   ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * '+' (addition):                        Intrinsic mathematical methods.
-                                                            (line  7926)
-* '+' (wildcard character):              Subsetting Files.  (line  2544)
+                                                            (line  8040)
+* '+' (wildcard character):              Subsetting Files.  (line  2574)
 * '-':                                   ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * '-' (subtraction):                     Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * '--3':                                 File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--4':                                 File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--6':                                 File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--64bit':                             File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--7':                                 File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--abc':                               ncks netCDF Kitchen Sink.
-                                                            (line  9294)
+                                                            (line  9416)
 * '--alphabetize':                       ncks netCDF Kitchen Sink.
-                                                            (line  9294)
+                                                            (line  9416)
 * '--apn':                               Temporary Output Files.
-                                                            (line   991)
-* '--apn' <1>:                           Batch Mode.        (line  5252)
+                                                            (line   996)
+* '--apn' <1>:                           Batch Mode.        (line  5315)
 * '--apn' <2>:                           Filters for 'ncks'.
-                                                            (line  9744)
+                                                            (line  9866)
 * '--append':                            Temporary Output Files.
-                                                            (line   991)
-* '--append' <1>:                        Batch Mode.        (line  5252)
+                                                            (line   996)
+* '--append' <1>:                        Batch Mode.        (line  5315)
 * '--append' <2>:                        Filters for 'ncks'.
-                                                            (line  9744)
+                                                            (line  9866)
 * '--auxiliary':                         Auxiliary Coordinates.
-                                                            (line  3584)
+                                                            (line  3628)
 * '--auxiliary LON_MIN,LON_MAX,LAT_MIN,LAT_MAX': Auxiliary Coordinates.
-                                                            (line  3584)
-* '--bfr_sz_hnt':                        Buffer sizes.      (line  4355)
+                                                            (line  3628)
+* '--bfr_sz_hnt':                        Buffer sizes.      (line  4418)
 * '--binary':                            ncks netCDF Kitchen Sink.
-                                                            (line  9304)
+                                                            (line  9426)
 * '--bnr':                               ncks netCDF Kitchen Sink.
-                                                            (line  9304)
+                                                            (line  9426)
 * '--cdl':                               ncks netCDF Kitchen Sink.
-                                                            (line  9357)
-* '--cell_methods':                      CF Conventions.    (line  5408)
-* '--chunk_byte':                        Chunking.          (line  4052)
-* '--chunk_dimension':                   Chunking.          (line  4052)
-* '--chunk_map':                         Chunking.          (line  4052)
-* '--chunk_policy':                      Chunking.          (line  4052)
-* '--chunk_scalar':                      Chunking.          (line  4052)
-* '--cll_mth':                           CF Conventions.    (line  5408)
-* '--cnk_byt':                           Chunking.          (line  4052)
-* '--cnk_dmn':                           Chunking.          (line  4052)
-* '--cnk_map':                           Chunking.          (line  4052)
-* '--cnk_map CNK_MAP':                   Chunking.          (line  4129)
-* '--cnk_plc':                           Chunking.          (line  4052)
-* '--cnk_scl':                           Chunking.          (line  4052)
+                                                            (line  9479)
+* '--cell_methods':                      CF Conventions.    (line  5483)
+* '--chunk_byte':                        Chunking.          (line  4096)
+* '--chunk_dimension':                   Chunking.          (line  4096)
+* '--chunk_map':                         Chunking.          (line  4096)
+* '--chunk_policy':                      Chunking.          (line  4096)
+* '--chunk_scalar':                      Chunking.          (line  4096)
+* '--cll_mth':                           CF Conventions.    (line  5483)
+* '--cnk_byt':                           Chunking.          (line  4096)
+* '--cnk_dmn':                           Chunking.          (line  4096)
+* '--cnk_map':                           Chunking.          (line  4096)
+* '--cnk_map CNK_MAP':                   Chunking.          (line  4183)
+* '--cnk_plc':                           Chunking.          (line  4096)
+* '--cnk_scl':                           Chunking.          (line  4096)
 * '--coords':                            Subsetting Coordinate Variables.
-                                                            (line  2614)
-* '--coords' <1>:                        CF Conventions.    (line  5397)
+                                                            (line  2644)
+* '--coords' <1>:                        CF Conventions.    (line  5472)
 * '--crd':                               Subsetting Coordinate Variables.
-                                                            (line  2614)
-* '--crd' <1>:                           CF Conventions.    (line  5397)
+                                                            (line  2644)
+* '--crd' <1>:                           CF Conventions.    (line  5472)
 * '--create_ram':                        Temporary Output Files.
-                                                            (line   949)
-* '--create_ram' <1>:                    RAM disks.         (line  4386)
+                                                            (line   954)
+* '--create_ram' <1>:                    RAM disks.         (line  4449)
 * '--data':                              ncks netCDF Kitchen Sink.
-                                                            (line  9405)
+                                                            (line  9527)
 * '--dbg_lvl DEBUG-LEVEL':               Help Requests and Bug Reports.
-                                                            (line   864)
-* '--dbg_lvl DEBUG-LEVEL' <1>:           Large Datasets.    (line  1323)
+                                                            (line   869)
+* '--dbg_lvl DEBUG-LEVEL' <1>:           Large Datasets.    (line  1328)
 * '--dbg_lvl DEBUG-LEVEL' <2>:           Command Line Options.
-                                                            (line  1606)
+                                                            (line  1614)
 * '--dbl':                               Promoting Single-precision to Double.
-                                                            (line  4899)
+                                                            (line  4962)
 * '--debug-level DEBUG-LEVEL':           Help Requests and Bug Reports.
-                                                            (line   864)
-* '--debug-level DEBUG-LEVEL' <1>:       Large Datasets.    (line  1323)
-* '--deflate':                           Deflation.         (line  4248)
-* '--dfl_lvl':                           Deflation.         (line  4248)
-* '--dimension DIM,[MIN],[MAX],STRIDE':  Stride.            (line  3202)
+                                                            (line   869)
+* '--debug-level DEBUG-LEVEL' <1>:       Large Datasets.    (line  1328)
+* '--deflate':                           Deflation.         (line  4311)
+* '--dfl_lvl':                           Deflation.         (line  4311)
+* '--dimension DIM,[MIN],[MAX],STRIDE':  Stride.            (line  3246)
 * '--dimension DIM,[MIN],[MAX],[STRIDE],[SUBCYCLE]': Subcycle.
-                                                            (line  3314)
-* '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]': Hyperslabs.   (line  3098)
+                                                            (line  3358)
+* '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]': Hyperslabs.   (line  3142)
 * '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.
-                                                            (line  3390)
+                                                            (line  3434)
 * '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]' <2>: Wrapped Coordinates.
-                                                            (line  3534)
+                                                            (line  3578)
 * '--dimension DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.
-                                                            (line  3694)
+                                                            (line  3738)
 * '--diskless_all':                      Memory Requirements.
-                                                            (line  1334)
-* '--diskless_all' <1>:                  RAM disks.         (line  4386)
-* '--dmn DIM,[MIN],[MAX],STRIDE':        Stride.            (line  3202)
-* '--dmn DIM,[MIN],[MAX],[STRIDE],SUBCYCLE]': Subcycle.     (line  3314)
-* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]':  Hyperslabs.        (line  3098)
-* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.     (line  3390)
+                                                            (line  1339)
+* '--diskless_all' <1>:                  RAM disks.         (line  4449)
+* '--dmn DIM,[MIN],[MAX],STRIDE':        Stride.            (line  3246)
+* '--dmn DIM,[MIN],[MAX],[STRIDE],SUBCYCLE]': Subcycle.     (line  3358)
+* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]':  Hyperslabs.        (line  3142)
+* '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.     (line  3434)
 * '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <2>: Wrapped Coordinates.
-                                                            (line  3534)
+                                                            (line  3578)
 * '--dmn DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.
-                                                            (line  3694)
+                                                            (line  3738)
 * '--ensemble_file':                     nces netCDF Ensemble Statistics.
-                                                            (line  8759)
+                                                            (line  8881)
 * '--ensemble_group':                    nces netCDF Ensemble Statistics.
-                                                            (line  8759)
+                                                            (line  8881)
 * '--ensemble_suffix':                   nces netCDF Ensemble Statistics.
-                                                            (line  8759)
-* '--exclude':                           Subsetting Files.  (line  2371)
+                                                            (line  8881)
+* '--exclude':                           Subsetting Files.  (line  2386)
 * '--exclude' <1>:                       Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * '--file_format':                       File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--file_list':                         File List Attributes.
-                                                            (line  5300)
-* '--fix_rec_dmn all':                   Autoconversion.    (line  2302)
+                                                            (line  5363)
+* '--fix_rec_dmn all':                   Autoconversion.    (line  2317)
 * '--fix_rec_dmn DIM':                   ncks netCDF Kitchen Sink.
-                                                            (line  9320)
+                                                            (line  9442)
 * '--flt':                               Promoting Single-precision to Double.
-                                                            (line  4899)
+                                                            (line  4962)
 * '--fl_bnr':                            ncks netCDF Kitchen Sink.
-                                                            (line  9304)
+                                                            (line  9426)
 * '--fl_fmt':                            File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--fl_lst_in':                         File List Attributes.
-                                                            (line  5300)
+                                                            (line  5363)
 * '--fl_out FL_OUT':                     Specifying Output Files.
-                                                            (line  1765)
+                                                            (line  1778)
 * '--fl_spt':                            ncap2 netCDF Arithmetic Processor.
-                                                            (line  5532)
+                                                            (line  5607)
 * '--fnc_tbl':                           Intrinsic mathematical methods.
-                                                            (line  8033)
+                                                            (line  8147)
 * '--fortran':                           C and Fortran Index Conventions.
-                                                            (line  3061)
+                                                            (line  3105)
 * '--gag':                               ncecat netCDF Ensemble Concatenator.
-                                                            (line  8931)
-* '--gag' <1>:                           Combine Files.     (line 11158)
+                                                            (line  9053)
+* '--gag' <1>:                           Combine Files.     (line 11322)
 * '--glb_mtd_spp':                       ncecat netCDF Ensemble Concatenator.
-                                                            (line  8957)
+                                                            (line  9079)
 * '--gpe GPE_DSC':                       Group Path Editing.
-                                                            (line  2639)
-* '--group GRP':                         Subsetting Files.  (line  2371)
-* '--grp GRP':                           Subsetting Files.  (line  2371)
+                                                            (line  2671)
+* '--group GRP':                         Subsetting Files.  (line  2386)
+* '--grp GRP':                           Subsetting Files.  (line  2386)
+* '--grp_xtr_var_xcl':                   Subsetting Files.  (line  2386)
+* '--gxvx':                              Subsetting Files.  (line  2386)
 * '--hdf4':                              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   674)
-* '--hdf_unpack':                        Packed data.       (line  4473)
-* '--hdf_upk':                           Packed data.       (line  4473)
+                                                            (line   679)
+* '--hdf_unpack':                        Packed data.       (line  4536)
+* '--hdf_upk':                           Packed data.       (line  4536)
 * '--hdn':                               ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '--hdr_pad HDR_PAD':                   Metadata Optimization.
-                                                            (line  1504)
+                                                            (line  1512)
 * '--header_pad HDR_PAD':                Metadata Optimization.
-                                                            (line  1504)
+                                                            (line  1512)
 * '--hidden':                            ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '--hieronymus':                        ncks netCDF Kitchen Sink.
-                                                            (line  9405)
-* '--history':                           History Attribute. (line  5272)
-* '--hst':                               History Attribute. (line  5272)
-* '--intersection':                      Subsetting Files.  (line  2462)
-* '--lcl OUTPUT-PATH':                   Remote storage.    (line  1797)
-* '--local OUTPUT-PATH':                 Remote storage.    (line  1797)
-* '--map CNK_MAP':                       Chunking.          (line  4129)
+                                                            (line  9527)
+* '--history':                           History Attribute. (line  5335)
+* '--hst':                               History Attribute. (line  5335)
+* '--intersection':                      Subsetting Files.  (line  2492)
+* '--lcl OUTPUT-PATH':                   Remote storage.    (line  1810)
+* '--local OUTPUT-PATH':                 Remote storage.    (line  1810)
+* '--map CNK_MAP':                       Chunking.          (line  4183)
 * '--map PCK_MAP':                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9953)
-* '--mask-value MASK_VAL':               Mask condition.    (line 10661)
+                                                            (line 10076)
+* '--mask-value MASK_VAL':               Mask condition.    (line 10784)
 * '--mask-variable MASK_VAR':            ncwa netCDF Weighted Averager.
-                                                            (line 10593)
-* '--mask_comparator MASK_COMP':         Mask condition.    (line 10647)
+                                                            (line 10716)
+* '--mask_comparator MASK_COMP':         Mask condition.    (line 10770)
 * '--mask_condition MASK_COND':          ncwa netCDF Weighted Averager.
-                                                            (line 10593)
-* '--mask_condition MASK_COND' <1>:      Mask condition.    (line 10647)
-* '--mask_value MASK_VAL':               Mask condition.    (line 10661)
+                                                            (line 10716)
+* '--mask_condition MASK_COND' <1>:      Mask condition.    (line 10770)
+* '--mask_value MASK_VAL':               Mask condition.    (line 10784)
 * '--mask_variable MASK_VAR':            ncwa netCDF Weighted Averager.
-                                                            (line 10593)
-* '--md5_dgs':                           MD5 digests.       (line  4285)
-* '--md5_digest':                        MD5 digests.       (line  4285)
-* '--md5_write_attribute':               MD5 digests.       (line  4285)
-* '--md5_wrt_att':                       MD5 digests.       (line  4285)
+                                                            (line 10716)
+* '--md5_dgs':                           MD5 digests.       (line  4348)
+* '--md5_digest':                        MD5 digests.       (line  4348)
+* '--md5_write_attribute':               MD5 digests.       (line  4348)
+* '--md5_wrt_att':                       MD5 digests.       (line  4348)
 * '--Metadata':                          ncks netCDF Kitchen Sink.
-                                                            (line  9450)
+                                                            (line  9572)
 * '--metadata':                          ncks netCDF Kitchen Sink.
-                                                            (line  9493)
+                                                            (line  9615)
 * '--mk_rec_dmn DIM':                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  9016)
+                                                            (line  9138)
 * '--mk_rec_dmn DIM' <1>:                ncks netCDF Kitchen Sink.
-                                                            (line  9397)
+                                                            (line  9519)
 * '--mrd':                               Multiple Record Dimensions.
-                                                            (line  3901)
-* '--mro':                               Subcycle.          (line  3314)
-* '--msa':                               Multislabs.        (line  3390)
-* '--msa_user_order':                    Multislabs.        (line  3390)
-* '--msa_usr_rdr':                       Multislabs.        (line  3390)
-* '--msk_cmp_typ MASK_COMP':             Mask condition.    (line 10647)
+                                                            (line  3945)
+* '--mro':                               Subcycle.          (line  3358)
+* '--msa':                               Multislabs.        (line  3434)
+* '--msa_user_order':                    Multislabs.        (line  3434)
+* '--msa_usr_rdr':                       Multislabs.        (line  3434)
+* '--msk_cmp_typ MASK_COMP':             Mask condition.    (line 10770)
 * '--msk_cnd MASK_COND':                 ncwa netCDF Weighted Averager.
-                                                            (line 10593)
-* '--msk_cnd_sng MASK_COND':             Mask condition.    (line 10647)
+                                                            (line 10716)
+* '--msk_cnd_sng MASK_COND':             Mask condition.    (line 10770)
 * '--msk_nm MASK_VAR':                   ncwa netCDF Weighted Averager.
-                                                            (line 10593)
-* '--msk_val MASK_VAL':                  Mask condition.    (line 10661)
+                                                            (line 10716)
+* '--msk_val MASK_VAL':                  Mask condition.    (line 10784)
 * '--msk_var MASK_VAR':                  ncwa netCDF Weighted Averager.
-                                                            (line 10593)
+                                                            (line 10716)
 * '--Mtd':                               ncks netCDF Kitchen Sink.
-                                                            (line  9450)
+                                                            (line  9572)
 * '--mtd':                               ncks netCDF Kitchen Sink.
-                                                            (line  9493)
+                                                            (line  9615)
 * '--multiple_record_dimensions':        Multiple Record Dimensions.
-                                                            (line  3901)
+                                                            (line  3945)
 * '--ncml':                              ncks netCDF Kitchen Sink.
-                                                            (line  9553)
+                                                            (line  9675)
 * '--netcdf4':                           File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '--nintap LOOP':                       Specifying Input Files.
-                                                            (line  1662)
+                                                            (line  1670)
 * '--no-blank':                          ncks netCDF Kitchen Sink.
-                                                            (line  9506)
+                                                            (line  9628)
 * '--no-coords':                         Subsetting Coordinate Variables.
-                                                            (line  2614)
-* '--no-coords' <1>:                     CF Conventions.    (line  5397)
+                                                            (line  2644)
+* '--no-coords' <1>:                     CF Conventions.    (line  5472)
 * '--no-crd':                            Subsetting Coordinate Variables.
-                                                            (line  2614)
-* '--no-crd' <1>:                        CF Conventions.    (line  5397)
+                                                            (line  2644)
+* '--no-crd' <1>:                        CF Conventions.    (line  5472)
 * '--noblank':                           ncks netCDF Kitchen Sink.
-                                                            (line  9506)
+                                                            (line  9628)
 * '--no_blank':                          ncks netCDF Kitchen Sink.
-                                                            (line  9506)
-* '--no_cell_methods':                   CF Conventions.    (line  5408)
-* '--no_cll_mth':                        CF Conventions.    (line  5408)
+                                                            (line  9628)
+* '--no_cell_methods':                   CF Conventions.    (line  5483)
+* '--no_cll_mth':                        CF Conventions.    (line  5483)
 * '--no_rec_dmn DIM':                    ncks netCDF Kitchen Sink.
-                                                            (line  9320)
+                                                            (line  9442)
 * '--no_tmp_fl':                         Temporary Output Files.
-                                                            (line   949)
-* '--no_tmp_fl' <1>:                     RAM disks.         (line  4466)
+                                                            (line   954)
+* '--no_tmp_fl' <1>:                     RAM disks.         (line  4529)
 * '--nsm_fl':                            nces netCDF Ensemble Statistics.
-                                                            (line  8759)
+                                                            (line  8881)
 * '--nsm_grp':                           nces netCDF Ensemble Statistics.
-                                                            (line  8759)
+                                                            (line  8881)
 * '--nsm_sfx':                           nces netCDF Ensemble Statistics.
-                                                            (line  8759)
-* '--nsx':                               Subsetting Files.  (line  2462)
-* '--omp_num_threads THR_NBR':           OpenMP Threading.  (line  1525)
+                                                            (line  8881)
+* '--nsx':                               Subsetting Files.  (line  2492)
+* '--omp_num_threads THR_NBR':           OpenMP Threading.  (line  1533)
 * '--open_ram':                          Temporary Output Files.
-                                                            (line   949)
+                                                            (line   954)
 * '--open_ram' <1>:                      Memory Requirements.
-                                                            (line  1334)
-* '--open_ram' <2>:                      RAM disks.         (line  4386)
-* '--operation OP_TYP':                  Operation Types.   (line  4610)
+                                                            (line  1339)
+* '--open_ram' <2>:                      RAM disks.         (line  4449)
+* '--operation OP_TYP':                  Operation Types.   (line  4673)
 * '--operation OP_TYP' <1>:              ncbo netCDF Binary Operator.
-                                                            (line  8468)
-* '--op_rlt MASK_COMP':                  Mask condition.    (line 10647)
-* '--op_typ OP_TYP':                     Operation Types.   (line  4610)
+                                                            (line  8589)
+* '--op_rlt MASK_COMP':                  Mask condition.    (line 10770)
+* '--op_typ OP_TYP':                     Operation Types.   (line  4673)
 * '--op_typ OP_TYP' <1>:                 ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * '--orphan_dimensions':                 ncks netCDF Kitchen Sink.
-                                                            (line  9534)
+                                                            (line  9656)
 * '--output FL_OUT':                     Specifying Output Files.
-                                                            (line  1765)
+                                                            (line  1778)
 * '--overwrite':                         Temporary Output Files.
-                                                            (line   991)
-* '--overwrite' <1>:                     Batch Mode.        (line  5252)
+                                                            (line   996)
+* '--overwrite' <1>:                     Batch Mode.        (line  5315)
 * '--ovr':                               Temporary Output Files.
-                                                            (line   991)
-* '--ovr' <1>:                           Batch Mode.        (line  5252)
+                                                            (line   996)
+* '--ovr' <1>:                           Batch Mode.        (line  5315)
 * '--pack_policy PCK_PLC':               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9886)
+                                                            (line 10009)
 * '--path INPUT-PATH':                   Specifying Input Files.
-                                                            (line  1662)
-* '--path INPUT-PATH' <1>:               Remote storage.    (line  1797)
+                                                            (line  1670)
+* '--path INPUT-PATH' <1>:               Remote storage.    (line  1810)
 * '--pck_map PCK_MAP':                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9953)
+                                                            (line 10076)
 * '--pck_plc PCK_PLC':                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9886)
+                                                            (line 10009)
 * '--print':                             ncks netCDF Kitchen Sink.
-                                                            (line  9514)
+                                                            (line  9636)
 * '--prn':                               ncks netCDF Kitchen Sink.
-                                                            (line  9514)
+                                                            (line  9636)
 * '--prn_fnc_tbl':                       Intrinsic mathematical methods.
-                                                            (line  8033)
-* '--pseudonym':                         Symbolic Links.    (line   534)
+                                                            (line  8147)
+* '--pseudonym':                         Symbolic Links.    (line   539)
 * '--pth INPUT-PATH':                    Specifying Input Files.
-                                                            (line  1662)
-* '--pth INPUT-PATH' <1>:                Remote storage.    (line  1797)
+                                                            (line  1670)
+* '--pth INPUT-PATH' <1>:                Remote storage.    (line  1810)
 * '--quiet':                             ncks netCDF Kitchen Sink.
-                                                            (line  9526)
+                                                            (line  9648)
 * '--rad':                               ncks netCDF Kitchen Sink.
-                                                            (line  9534)
+                                                            (line  9656)
 * '--ram_all':                           Memory Requirements.
-                                                            (line  1334)
-* '--ram_all' <1>:                       RAM disks.         (line  4386)
+                                                            (line  1339)
+* '--ram_all' <1>:                       RAM disks.         (line  4449)
 * '--rcd_nm ULM_NM':                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  8906)
-* '--record_append':                     Record Appending.  (line  3263)
-* '--rec_apn':                           Record Appending.  (line  3263)
+                                                            (line  9028)
+* '--record_append':                     Record Appending.  (line  3307)
+* '--rec_apn':                           Record Appending.  (line  3307)
 * '--retain':                            Retaining Retrieved Files.
-                                                            (line  2049)
+                                                            (line  2064)
 * '--retain_all_dimensions':             ncks netCDF Kitchen Sink.
-                                                            (line  9534)
+                                                            (line  9656)
 * '--revision':                          Help Requests and Bug Reports.
-                                                            (line   864)
-* '--revision' <1>:                      Operator Version.  (line  5482)
+                                                            (line   869)
+* '--revision' <1>:                      Operator Version.  (line  5557)
 * '--rph_dmn':                           ncks netCDF Kitchen Sink.
-                                                            (line  9534)
+                                                            (line  9656)
 * '--rth_dbl':                           Promoting Single-precision to Double.
-                                                            (line  4899)
+                                                            (line  4962)
 * '--rth_flt':                           Promoting Single-precision to Double.
-                                                            (line  4899)
+                                                            (line  4962)
 * '--rtn':                               Retaining Retrieved Files.
-                                                            (line  2049)
+                                                            (line  2064)
 * '--script':                            ncap2 netCDF Arithmetic Processor.
-                                                            (line  5532)
+                                                            (line  5607)
 * '--script-file':                       ncap2 netCDF Arithmetic Processor.
-                                                            (line  5532)
+                                                            (line  5607)
 * '--sng_fmt':                           ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line  9667)
 * '--spt':                               ncap2 netCDF Arithmetic Processor.
-                                                            (line  5532)
+                                                            (line  5607)
 * '--string':                            ncks netCDF Kitchen Sink.
-                                                            (line  9545)
-* '--threads THR_NBR':                   OpenMP Threading.  (line  1525)
-* '--thr_nbr THR_NBR':                   OpenMP Threading.  (line  1525)
+                                                            (line  9667)
+* '--threads THR_NBR':                   OpenMP Threading.  (line  1533)
+* '--thr_nbr THR_NBR':                   OpenMP Threading.  (line  1533)
 * '--ulm_nm ULM_NM':                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  8906)
-* '--union':                             Subsetting Files.  (line  2371)
-* '--union' <1>:                         Subsetting Files.  (line  2462)
+                                                            (line  9028)
+* '--union':                             Subsetting Files.  (line  2386)
+* '--union' <1>:                         Subsetting Files.  (line  2492)
 * '--units':                             ncks netCDF Kitchen Sink.
-                                                            (line  9549)
-* '--unn':                               Subsetting Files.  (line  2371)
-* '--unn' <1>:                           Subsetting Files.  (line  2462)
+                                                            (line  9671)
+* '--unn':                               Subsetting Files.  (line  2386)
+* '--unn' <1>:                           Subsetting Files.  (line  2492)
 * '--unpack':                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9937)
+                                                            (line 10060)
 * '--upk':                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9937)
-* '--variable VAR':                      Subsetting Files.  (line  2371)
+                                                            (line 10060)
+* '--variable VAR':                      Subsetting Files.  (line  2386)
 * '--variable VAR' <1>:                  Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * '--version':                           Help Requests and Bug Reports.
-                                                            (line   864)
-* '--version' <1>:                       Operator Version.  (line  5482)
+                                                            (line   869)
+* '--version' <1>:                       Operator Version.  (line  5557)
 * '--vrs':                               Help Requests and Bug Reports.
-                                                            (line   864)
-* '--vrs' <1>:                           Operator Version.  (line  5482)
+                                                            (line   869)
+* '--vrs' <1>:                           Operator Version.  (line  5557)
 * '--weight WEIGHT':                     ncwa netCDF Weighted Averager.
-                                                            (line 10593)
+                                                            (line 10716)
 * '--weight WGT1[,WGT2]':                ncflint netCDF File Interpolator.
-                                                            (line  9056)
+                                                            (line  9178)
 * '--wgt_var WEIGHT':                    ncwa netCDF Weighted Averager.
-                                                            (line 10593)
+                                                            (line 10716)
 * '--wgt_var WGT1[,WGT2]':               ncflint netCDF File Interpolator.
-                                                            (line  9056)
+                                                            (line  9178)
 * '--write_tmp_fl':                      Temporary Output Files.
-                                                            (line   949)
+                                                            (line   954)
 * '--wrt_tmp_fl':                        Temporary Output Files.
-                                                            (line   949)
-* '--xcl':                               Subsetting Files.  (line  2371)
+                                                            (line   954)
+* '--xcl':                               Subsetting Files.  (line  2386)
 * '--xcl' <1>:                           Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * '--xml':                               ncks netCDF Kitchen Sink.
-                                                            (line  9553)
+                                                            (line  9675)
 * '--xml_no_location':                   ncks netCDF Kitchen Sink.
-                                                            (line  9583)
+                                                            (line  9705)
 * '--xml_spr_chr':                       ncks netCDF Kitchen Sink.
-                                                            (line  9583)
+                                                            (line  9705)
 * '--xml_spr_nmr':                       ncks netCDF Kitchen Sink.
-                                                            (line  9583)
+                                                            (line  9705)
 * '-3':                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   667)
+                                                            (line   672)
 * '-3' <1>:                              File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '-4':                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   667)
+                                                            (line   672)
 * '-4' <1>:                              File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '-5':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9287)
+                                                            (line  9409)
 * '-6':                                  File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '-7':                                  File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * '-A':                                  Temporary Output Files.
-                                                            (line   991)
-* '-A' <1>:                              Batch Mode.        (line  5252)
+                                                            (line   996)
+* '-A' <1>:                              Batch Mode.        (line  5315)
 * '-a':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9294)
+                                                            (line  9416)
 * '-a' <1>:                              Filters for 'ncks'.
-                                                            (line  9732)
+                                                            (line  9854)
 * '-A' <2>:                              Filters for 'ncks'.
-                                                            (line  9744)
+                                                            (line  9866)
 * '-A' <3>:                              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10069)
-* '-b':                                  Examples ncap2.    (line  7904)
+                                                            (line 10192)
+* '-b':                                  Examples ncap2.    (line  8018)
 * '-b' <1>:                              ncbo netCDF Binary Operator.
-                                                            (line  8566)
+                                                            (line  8687)
 * '-b' <2>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9304)
+                                                            (line  9426)
 * '-B MASK_COND':                        ncwa netCDF Weighted Averager.
-                                                            (line 10593)
-* '-B MASK_COND' <1>:                    Mask condition.    (line 10647)
+                                                            (line 10716)
+* '-B MASK_COND' <1>:                    Mask condition.    (line 10770)
 * '-C':                                  Subsetting Coordinate Variables.
-                                                            (line  2614)
+                                                            (line  2644)
 * '-c':                                  Subsetting Coordinate Variables.
-                                                            (line  2614)
-* '-C' <1>:                              CF Conventions.    (line  5397)
-* '-c' <1>:                              CF Conventions.    (line  5397)
-* '-C' <2>:                              Examples ncap2.    (line  7916)
+                                                            (line  2644)
+* '-C' <1>:                              CF Conventions.    (line  5472)
+* '-c' <1>:                              CF Conventions.    (line  5472)
+* '-C' <2>:                              Examples ncap2.    (line  8030)
 * '-D':                                  Help Requests and Bug Reports.
-                                                            (line   849)
+                                                            (line   854)
 * '-D DEBUG-LEVEL':                      Help Requests and Bug Reports.
-                                                            (line   864)
-* '-D DEBUG-LEVEL' <1>:                  Large Datasets.    (line  1323)
+                                                            (line   869)
+* '-D DEBUG-LEVEL' <1>:                  Large Datasets.    (line  1328)
 * '-D DEBUG-LEVEL' <2>:                  Command Line Options.
-                                                            (line  1606)
-* '-d DIM,[MIN],[MAX],STRIDE':           Stride.            (line  3202)
-* '-d DIM,[MIN],[MAX],[STRIDE],[SUBCYCLE]': Subcycle.       (line  3314)
-* '-d DIM,[MIN][,[MAX][,[STRIDE]]]':     Hyperslabs.        (line  3098)
-* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.        (line  3390)
+                                                            (line  1614)
+* '-d DIM,[MIN],[MAX],STRIDE':           Stride.            (line  3246)
+* '-d DIM,[MIN],[MAX],[STRIDE],[SUBCYCLE]': Subcycle.       (line  3358)
+* '-d DIM,[MIN][,[MAX][,[STRIDE]]]':     Hyperslabs.        (line  3142)
+* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <1>: Multislabs.        (line  3434)
 * '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <2>: Wrapped Coordinates.
-                                                            (line  3534)
-* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.   (line  3694)
+                                                            (line  3578)
+* '-d DIM,[MIN][,[MAX][,[STRIDE]]]' <3>: UDUnits Support.   (line  3738)
 * '-d DIM,[MIN][,[MAX]]':                ncwa netCDF Weighted Averager.
-                                                            (line 10585)
+                                                            (line 10708)
 * '-F':                                  C and Fortran Index Conventions.
-                                                            (line  3061)
+                                                            (line  3105)
 * '-f':                                  Intrinsic mathematical methods.
-                                                            (line  8033)
+                                                            (line  8147)
 * '-G GPE_DSC':                          Group Path Editing.
-                                                            (line  2639)
-* '-g GRP':                              Subsetting Files.  (line  2371)
-* '-h':                                  History Attribute. (line  5272)
+                                                            (line  2671)
+* '-g GRP':                              Subsetting Files.  (line  2386)
+* '-h':                                  History Attribute. (line  5335)
 * '-H':                                  File List Attributes.
-                                                            (line  5300)
+                                                            (line  5363)
 * '-h' <1>:                              ncatted netCDF Attribute Editor.
-                                                            (line  8180)
+                                                            (line  8294)
 * '-H' <1>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9405)
+                                                            (line  9527)
 * '-I':                                  ncwa netCDF Weighted Averager.
-                                                            (line 10621)
-* '-L':                                  Deflation.         (line  4248)
-* '-l OUTPUT-PATH':                      Remote storage.    (line  1797)
-* '-l OUTPUT-PATH' <1>:                  Remote storage.    (line  1858)
+                                                            (line 10744)
+* '-L':                                  Deflation.         (line  4311)
+* '-l OUTPUT-PATH':                      Remote storage.    (line  1810)
+* '-l OUTPUT-PATH' <1>:                  Remote storage.    (line  1873)
 * '-M':                                  Determining File Format.
-                                                            (line  2175)
+                                                            (line  2190)
 * '-M' <1>:                              ncecat netCDF Ensemble Concatenator.
-                                                            (line  8957)
+                                                            (line  9079)
 * '-M' <2>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9450)
+                                                            (line  9572)
 * '-m':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9493)
-* '-M CNK_MAP':                          Chunking.          (line  4129)
+                                                            (line  9615)
+* '-M CNK_MAP':                          Chunking.          (line  4183)
 * '-m MASK_VAR':                         ncwa netCDF Weighted Averager.
-                                                            (line 10593)
+                                                            (line 10716)
 * '-M PCK_MAP':                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9953)
+                                                            (line 10076)
 * '-N':                                  Normalization and Integration.
-                                                            (line 10676)
+                                                            (line 10799)
 * '-n LOOP':                             Large Numbers of Files.
-                                                            (line  1193)
+                                                            (line  1198)
 * '-n LOOP' <1>:                         Large Numbers of Files.
-                                                            (line  1263)
+                                                            (line  1268)
 * '-n LOOP' <2>:                         Specifying Input Files.
-                                                            (line  1662)
+                                                            (line  1670)
 * '-O':                                  Temporary Output Files.
-                                                            (line   991)
-* '-O' <1>:                              Batch Mode.        (line  5252)
+                                                            (line   996)
+* '-O' <1>:                              Batch Mode.        (line  5315)
 * '-o FL_OUT':                           Large Numbers of Files.
-                                                            (line  1247)
+                                                            (line  1252)
 * '-o FL_OUT' <1>:                       Specifying Output Files.
-                                                            (line  1765)
+                                                            (line  1778)
 * '-P':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9514)
+                                                            (line  9636)
 * '-p INPUT-PATH':                       Specifying Input Files.
-                                                            (line  1662)
-* '-p INPUT-PATH' <1>:                   Remote storage.    (line  1858)
+                                                            (line  1670)
+* '-p INPUT-PATH' <1>:                   Remote storage.    (line  1873)
 * '-P PCK_PLC':                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9886)
+                                                            (line 10009)
 * '-Q':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9520)
+                                                            (line  9642)
 * '-q':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9526)
+                                                            (line  9648)
 * '-r':                                  Help Requests and Bug Reports.
-                                                            (line   849)
+                                                            (line   854)
 * '-r' <1>:                              Help Requests and Bug Reports.
-                                                            (line   864)
+                                                            (line   869)
 * '-R':                                  Retaining Retrieved Files.
-                                                            (line  2049)
-* '-r' <2>:                              Operator Version.  (line  5482)
+                                                            (line  2064)
+* '-r' <2>:                              Operator Version.  (line  5557)
 * '-s':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line  9667)
 * '-t THR_NBR':                          Single and Multi-file Operators.
-                                                            (line  1417)
-* '-t THR_NBR' <1>:                      OpenMP Threading.  (line  1525)
+                                                            (line  1422)
+* '-t THR_NBR' <1>:                      OpenMP Threading.  (line  1533)
 * '-u':                                  ncks netCDF Kitchen Sink.
-                                                            (line  9549)
+                                                            (line  9671)
 * '-U':                                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9937)
+                                                            (line 10060)
 * '-u ULM_NM':                           ncecat netCDF Ensemble Concatenator.
-                                                            (line  8906)
+                                                            (line  9028)
 * '-v':                                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10069)
-* '-v VAR':                              Subsetting Files.  (line  2371)
+                                                            (line 10192)
+* '-v VAR':                              Subsetting Files.  (line  2386)
 * '-v VAR' <1>:                          Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * '-w WEIGHT':                           ncwa netCDF Weighted Averager.
-                                                            (line 10593)
+                                                            (line 10716)
 * '-w WGT1[,WGT2]':                      ncflint netCDF File Interpolator.
-                                                            (line  9056)
-* '-x':                                  Subsetting Files.  (line  2371)
+                                                            (line  9178)
+* '-x':                                  Subsetting Files.  (line  2386)
 * '-X':                                  Auxiliary Coordinates.
-                                                            (line  3584)
+                                                            (line  3628)
 * '-x' <1>:                              Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * '-X LON_MIN,LON_MAX,LAT_MIN,LAT_MAX':  Auxiliary Coordinates.
-                                                            (line  3584)
-* '-y OP_TYP':                           Operation Types.   (line  4610)
+                                                            (line  3628)
+* '-y OP_TYP':                           Operation Types.   (line  4673)
 * '-y OP_TYP' <1>:                       ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * '.':                                   ncrename netCDF Renamer.
-                                                            (line 10390)
-* '.' (wildcard character):              Subsetting Files.  (line  2537)
+                                                            (line 10513)
+* '.' (wildcard character):              Subsetting Files.  (line  2567)
 * '.bashrc':                             Filters for 'ncks'.
-                                                            (line  9637)
-* '.netrc':                              Remote storage.    (line  1797)
-* '.rhosts':                             Remote storage.    (line  1797)
+                                                            (line  9759)
+* '.netrc':                              Remote storage.    (line  1810)
+* '.rhosts':                             Remote storage.    (line  1810)
 * '/':                                   ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * '/' (division):                        Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * '/*...*/' (comment):                   Syntax of ncap2 statements.
-                                                            (line  5591)
+                                                            (line  5666)
 * '//' (comment):                        Syntax of ncap2 statements.
-                                                            (line  5591)
+                                                            (line  5666)
 * '0' (NUL):                             ncatted netCDF Attribute Editor.
-                                                            (line  8353)
+                                                            (line  8467)
 * 32-bit offset file format:             Determining File Format.
-                                                            (line  2175)
+                                                            (line  2190)
 * 64-bit offset file format:             Determining File Format.
-                                                            (line  2175)
+                                                            (line  2190)
 * '64BIT' files:                         File Formats and Conversion.
-                                                            (line  2089)
-* ':' (separator character):             Group Path Editing.
-                                                            (line  2677)
+                                                            (line  2104)
+* ':' (separator character):             Flattening Groups. (line  2712)
 * ';' (end of statement):                Syntax of ncap2 statements.
-                                                            (line  5589)
+                                                            (line  5664)
 * '<arpa/nameser.h>':                    Windows Operating System.
-                                                            (line   502)
+                                                            (line   507)
 * '<resolv.h>':                          Windows Operating System.
-                                                            (line   502)
-* '?' (filename expansion):              Subsetting Files.  (line  2537)
+                                                            (line   507)
+* '?' (filename expansion):              Subsetting Files.  (line  2567)
 * '?' (question mark):                   ncatted netCDF Attribute Editor.
-                                                            (line  8344)
-* '?' (wildcard character):              Subsetting Files.  (line  2544)
+                                                            (line  8458)
+* '?' (wildcard character):              Subsetting Files.  (line  2574)
 * '@' (attribute):                       Syntax of ncap2 statements.
-                                                            (line  5599)
-* '@' (separator character):             Group Path Editing.
-                                                            (line  2677)
+                                                            (line  5674)
+* '@' (separator character):             Flattening Groups. (line  2712)
 * '[]' (array delimiters):               Syntax of ncap2 statements.
-                                                            (line  5583)
+                                                            (line  5658)
 * '\' (backslash):                       ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '\"' (protected double quote):         ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '\'' (protected end quote):            ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '\?' (protected question mark):        ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '\a' (ASCII BEL, bell):                ncatted netCDF Attribute Editor.
-                                                            (line  8339)
+                                                            (line  8453)
 * '\b' (ASCII BS, backspace):            ncatted netCDF Attribute Editor.
-                                                            (line  8339)
+                                                            (line  8453)
 * '\f' (ASCII FF, formfeed):             ncatted netCDF Attribute Editor.
-                                                            (line  8339)
+                                                            (line  8453)
 * '\n' (ASCII LF, linefeed):             ncatted netCDF Attribute Editor.
-                                                            (line  8329)
+                                                            (line  8443)
 * '\n' (linefeed):                       Filters for 'ncks'.
-                                                            (line  9765)
+                                                            (line  9887)
 * '\r' (ASCII CR, carriage return):      ncatted netCDF Attribute Editor.
-                                                            (line  8339)
+                                                            (line  8453)
 * '\t' (ASCII HT, horizontal tab):       ncatted netCDF Attribute Editor.
-                                                            (line  8329)
+                                                            (line  8443)
 * '\t' (horizontal tab):                 Filters for 'ncks'.
-                                                            (line  9765)
+                                                            (line  9887)
 * '\v' (ASCII VT, vertical tab):         ncatted netCDF Attribute Editor.
-                                                            (line  8339)
+                                                            (line  8453)
 * '\\' (ASCII \, backslash):             ncatted netCDF Attribute Editor.
-                                                            (line  8339)
+                                                            (line  8453)
 * '\\' (protected backslash):            ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * '^' (power):                           Intrinsic mathematical methods.
-                                                            (line  7926)
-* '^' (wildcard character):              Subsetting Files.  (line  2537)
+                                                            (line  8040)
+* '^' (wildcard character):              Subsetting Files.  (line  2567)
 * '_ChunkSizes':                         ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '_DeflateLevel':                       ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '_Endianness':                         ncks netCDF Kitchen Sink.
-                                                            (line  9345)
-* '_FillValue':                          Missing Values.    (line  3939)
-* '_FillValue' <1>:                      Packed data.       (line  4473)
+                                                            (line  9467)
+* '_FillValue':                          Missing Values.    (line  3983)
+* '_FillValue' <1>:                      Packed data.       (line  4536)
 * '_FillValue' <2>:                      ncatted netCDF Attribute Editor.
-                                                            (line  8185)
+                                                            (line  8299)
 * '_FillValue' <3>:                      ncflint netCDF File Interpolator.
-                                                            (line  9105)
+                                                            (line  9227)
 * _FILLVALUE:                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9997)
+                                                            (line 10120)
 * '_FillValue' <4>:                      ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9997)
+                                                            (line 10120)
 * '_FillValue' <5>:                      ncrename netCDF Renamer.
-                                                            (line 10516)
+                                                            (line 10639)
 * '_Fletcher32':                         ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '_Format':                             ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '_NOFILL':                             ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '_Shuffle':                            ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * '_Storage':                            ncks netCDF Kitchen Sink.
-                                                            (line  9345)
-* '|' (wildcard character):              Subsetting Files.  (line  2544)
+                                                            (line  9467)
+* '|' (wildcard character):              Subsetting Files.  (line  2574)
 * ABS:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * absolute value:                        Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * ACOS:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * ACOSH:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * 'add':                                 ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * adding data:                           ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * adding data <1>:                       ncflint netCDF File Interpolator.
-                                                            (line  9032)
+                                                            (line  9154)
 * addition:                              Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * addition <1>:                          ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * addition <2>:                          ncflint netCDF File Interpolator.
-                                                            (line  9032)
-* ADD_OFFSET:                            Performance.       (line  1470)
-* 'add_offset':                          Packed data.       (line  4473)
+                                                            (line  9154)
+* ADD_OFFSET:                            Performance.       (line  1475)
+* 'add_offset':                          Packed data.       (line  4536)
 * 'add_offset' <1>:                      ncecat netCDF Ensemble Concatenator.
-                                                            (line  8979)
+                                                            (line  9101)
 * 'add_offset' <2>:                      ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9879)
+                                                            (line 10002)
 * 'add_offset' <3>:                      ncrcat netCDF Record Concatenator.
-                                                            (line 10327)
-* aggregation:                           Combine Files.     (line 11158)
-* Aleksandar Jelenak:                    Contributors.      (line 10885)
-* Alexander Hansen:                      Contributors.      (line 10893)
+                                                            (line 10450)
+* aggregation:                           Combine Files.     (line 11322)
+* Aleksandar Jelenak:                    Contributors.      (line 11008)
+* Alexander Hansen:                      Contributors.      (line 11016)
 * 'alias':                               ncbo netCDF Binary Operator.
-                                                            (line  8512)
+                                                            (line  8633)
 * alias:                                 Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * 'alias' <1>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9947)
-* 'all':                                 Chunking.          (line  4085)
+                                                            (line 10070)
+* 'all':                                 Chunking.          (line  4130)
 * alphabetization:                       ncks netCDF Kitchen Sink.
-                                                            (line  9294)
+                                                            (line  9416)
 * alphabetize output:                    Filters for 'ncks'.
-                                                            (line  9732)
+                                                            (line  9854)
 * alternate invocations:                 ncbo netCDF Binary Operator.
-                                                            (line  8468)
-* anchor:                                Subsetting Files.  (line  2413)
-* anchoring:                             Subsetting Files.  (line  2413)
-* Andrea Cimatoribus:                    Contributors.      (line 10899)
-* Andrew Wittenberg:                     Contributors.      (line 10883)
+                                                            (line  8589)
+* anchor:                                Subsetting Files.  (line  2443)
+* anchoring:                             Subsetting Files.  (line  2443)
+* ancillary variables convention:        CF Conventions.    (line  5462)
+* 'ancillary_variables':                 CF Conventions.    (line  5462)
+* Andrea Cimatoribus:                    Contributors.      (line 11022)
+* Andrew Wittenberg:                     Contributors.      (line 11006)
 * annual average:                        Annual Average over Regions.
-                                                            (line 11387)
+                                                            (line 11551)
 * annual average from daily data:        Daily data in one file.
-                                                            (line 10955)
+                                                            (line 11097)
 * annual average from monthly data:      Monthly data in one file.
-                                                            (line 10978)
+                                                            (line 11120)
 * anomalies:                             ncbo netCDF Binary Operator.
-                                                            (line  8550)
+                                                            (line  8671)
 * anomalies <1>:                         Annual Average over Regions.
-                                                            (line 11387)
-* anomalies <2>:                         Monthly Cycle.     (line 11678)
-* ANSI:                                  Compatability.     (line   415)
+                                                            (line 11551)
+* anomalies <2>:                         Monthly Cycle.     (line 11842)
+* ANSI:                                  Compatability.     (line   420)
 * 'ANSI C':                              Intrinsic mathematical methods.
-                                                            (line  8032)
-* appending data:                        Examples ncap2.    (line  7904)
+                                                            (line  8146)
+* appending data:                        Examples ncap2.    (line  8018)
 * appending data <1>:                    ncks netCDF Kitchen Sink.
-                                                            (line  9234)
+                                                            (line  9356)
 * appending to files:                    Temporary Output Files.
-                                                            (line   991)
-* appending to files <1>:                Batch Mode.        (line  5252)
+                                                            (line   996)
+* appending to files <1>:                Batch Mode.        (line  5315)
 * appending to files <2>:                Filters for 'ncks'.
-                                                            (line  9744)
+                                                            (line  9866)
 * appending variables:                   Temporary Output Files.
-                                                            (line   991)
+                                                            (line   996)
 * appending variables <1>:               Appending Variables.
-                                                            (line  1016)
+                                                            (line  1021)
 * appending variables <2>:               ncap2 netCDF Arithmetic Processor.
-                                                            (line  5547)
+                                                            (line  5622)
 * appending variables <3>:               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10069)
+                                                            (line 10192)
 * AR4:                                   nces netCDF Ensemble Statistics.
-                                                            (line  8756)
+                                                            (line  8878)
 * arccosine function:                    Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * arcsine function:                      Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * arctangent function:                   Intrinsic mathematical methods.
-                                                            (line  7929)
-* 'area':                                CF Conventions.    (line  5331)
+                                                            (line  8043)
+* 'area':                                CF Conventions.    (line  5394)
 * area-averaging:                        Annual Average over Regions.
-                                                            (line 11387)
-* arithmetic operators:                  Missing Values.    (line  3945)
-* arithmetic operators <1>:              Missing Values.    (line  3998)
+                                                            (line 11551)
+* arithmetic operators:                  Missing Values.    (line  3989)
+* arithmetic operators <1>:              Missing Values.    (line  4042)
 * arithmetic operators <2>:              ncwa netCDF Weighted Averager.
-                                                            (line 10585)
+                                                            (line 10708)
 * arithmetic processor:                  ncap2 netCDF Arithmetic Processor.
-                                                            (line  5514)
-* ARM conventions:                       ARM Conventions.   (line  5451)
+                                                            (line  5589)
+* ARM conventions:                       ARM Conventions.   (line  5526)
 * ARM conventions <1>:                   ncrcat netCDF Record Concatenator.
-                                                            (line 10340)
+                                                            (line 10463)
 * array:                                 Arrays and hyperslabs.
-                                                            (line  5877)
+                                                            (line  5952)
 * 'array' function:                      Arrays and hyperslabs.
-                                                            (line  5877)
+                                                            (line  5952)
 * array indexing:                        Syntax of ncap2 statements.
-                                                            (line  5585)
+                                                            (line  5660)
 * array storage:                         Syntax of ncap2 statements.
-                                                            (line  5587)
+                                                            (line  5662)
 * array syntax:                          Syntax of ncap2 statements.
-                                                            (line  5583)
+                                                            (line  5658)
 * arrays:                                Arrays and hyperslabs.
-                                                            (line  5877)
+                                                            (line  5952)
 * arrival value:                         ncflint netCDF File Interpolator.
-                                                            (line  9072)
+                                                            (line  9194)
 * ASCII:                                 ncatted netCDF Attribute Editor.
-                                                            (line  8327)
+                                                            (line  8441)
 * ASCII <1>:                             ncatted netCDF Attribute Editor.
-                                                            (line  8344)
+                                                            (line  8458)
 * ASIN:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * ASINH:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
-* 'asort':                               Sort methods.      (line  6600)
+                                                            (line  8043)
+* 'asort':                               Sort methods.      (line  6714)
 * assignment statement:                  Syntax of ncap2 statements.
-                                                            (line  5589)
-* asynchronous file access:              Remote storage.    (line  1797)
+                                                            (line  5664)
+* asynchronous file access:              Remote storage.    (line  1810)
 * ATAN:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * ATANH:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
-* attribute inheritance:                 Attributes.        (line  6052)
+                                                            (line  8043)
+* attribute inheritance:                 Attributes.        (line  6127)
 * attribute names:                       ncatted netCDF Attribute Editor.
-                                                            (line  8162)
+                                                            (line  8276)
 * attribute names <1>:                   ncrename netCDF Renamer.
-                                                            (line 10381)
-* attribute propagation:                 Attributes.        (line  6052)
+                                                            (line 10504)
+* attribute propagation:                 Attributes.        (line  6127)
 * attribute syntax:                      Syntax of ncap2 statements.
-                                                            (line  5599)
-* attribute, 'units':                    UDUnits Support.   (line  3694)
+                                                            (line  5674)
+* attribute, 'units':                    UDUnits Support.   (line  3738)
 * attributes:                            ncatted netCDF Attribute Editor.
-                                                            (line  8162)
+                                                            (line  8276)
 * attributes, appending:                 ncatted netCDF Attribute Editor.
-                                                            (line  8244)
+                                                            (line  8358)
 * attributes, creating:                  ncatted netCDF Attribute Editor.
-                                                            (line  8244)
+                                                            (line  8358)
 * attributes, deleting:                  ncatted netCDF Attribute Editor.
-                                                            (line  8244)
+                                                            (line  8358)
 * attributes, editing:                   ncatted netCDF Attribute Editor.
-                                                            (line  8244)
+                                                            (line  8358)
 * attributes, editing <1>:               Annual Average over Regions.
-                                                            (line 11387)
-* attributes, editing <2>:               Regrid MODIS Data. (line 11842)
+                                                            (line 11551)
+* attributes, editing <2>:               Regrid MODIS Data. (line 12006)
 * attributes, global:                    Large Numbers of Files.
-                                                            (line  1221)
-* attributes, global <1>:                History Attribute. (line  5272)
+                                                            (line  1226)
+* attributes, global <1>:                History Attribute. (line  5335)
 * attributes, global <2>:                File List Attributes.
-                                                            (line  5300)
-* attributes, global <3>:                ARM Conventions.   (line  5475)
+                                                            (line  5363)
+* attributes, global <3>:                ARM Conventions.   (line  5550)
 * attributes, global <4>:                ncatted netCDF Attribute Editor.
-                                                            (line  8227)
+                                                            (line  8341)
 * attributes, global <5>:                ncatted netCDF Attribute Editor.
-                                                            (line  8394)
+                                                            (line  8508)
 * attributes, global <6>:                ncks netCDF Kitchen Sink.
-                                                            (line  9220)
+                                                            (line  9342)
 * attributes, global <7>:                ncks netCDF Kitchen Sink.
-                                                            (line  9254)
+                                                            (line  9376)
 * attributes, global <8>:                Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * attributes, global <9>:                ncrename netCDF Renamer.
-                                                            (line 10436)
+                                                            (line 10559)
 * attributes, global <10>:               ncrename netCDF Renamer.
-                                                            (line 10516)
+                                                            (line 10639)
 * attributes, modifying:                 ncatted netCDF Attribute Editor.
-                                                            (line  8244)
+                                                            (line  8358)
 * attributes, modifying <1>:             Annual Average over Regions.
-                                                            (line 11387)
-* attributes, modifying <2>:             Regrid MODIS Data. (line 11842)
+                                                            (line 11551)
+* attributes, modifying <2>:             Regrid MODIS Data. (line 12006)
 * attributes, overwriting:               ncatted netCDF Attribute Editor.
-                                                            (line  8244)
+                                                            (line  8358)
 * attributes, overwriting <1>:           Annual Average over Regions.
-                                                            (line 11387)
-* attributes, overwriting <2>:           Regrid MODIS Data. (line 11842)
-* attributes'ncap2':                     Attributes.        (line  6019)
+                                                            (line 11551)
+* attributes, overwriting <2>:           Regrid MODIS Data. (line 12006)
+* attributes'ncap2':                     Attributes.        (line  6094)
 * 'autoconf':                            Help Requests and Bug Reports.
-                                                            (line   872)
-* autoconversion:                        Autoconversion.    (line  2275)
-* automagic:                             Compatability.     (line   455)
+                                                            (line   877)
+* autoconversion:                        Autoconversion.    (line  2290)
+* automagic:                             Compatability.     (line   460)
 * automagic <1>:                         Large Numbers of Files.
-                                                            (line  1194)
-* automatic type conversion:             Type Conversion.   (line  4763)
+                                                            (line  1199)
+* automatic type conversion:             Type Conversion.   (line  4826)
 * automatic type conversion <1>:         Intrinsic mathematical methods.
-                                                            (line  7999)
-* auxiliary coordinates:                 CF Conventions.    (line  5397)
-* average:                               Operation Types.   (line  4610)
+                                                            (line  8113)
+* auxiliary coordinates:                 CF Conventions.    (line  5472)
+* average:                               Operation Types.   (line  4673)
 * average <1>:                           ncwa netCDF Weighted Averager.
-                                                            (line 10629)
+                                                            (line 10752)
 * average <2>:                           Daily data in one file.
-                                                            (line 10941)
+                                                            (line 11083)
 * average <3>:                           Daily data in one file.
-                                                            (line 10955)
+                                                            (line 11097)
 * average <4>:                           Monthly data in one file.
-                                                            (line 10975)
+                                                            (line 11117)
 * average <5>:                           Monthly data in one file.
-                                                            (line 10978)
+                                                            (line 11120)
 * average <6>:                           One time point one file.
-                                                            (line 11004)
+                                                            (line 11146)
 * average <7>:                           Global Distribution of Long-term Average.
-                                                            (line 11284)
+                                                            (line 11448)
 * average <8>:                           Annual Average over Regions.
-                                                            (line 11387)
-* average <9>:                           Monthly Cycle.     (line 11678)
-* averaging data:                        Missing Values.    (line  3939)
+                                                            (line 11551)
+* average <9>:                           Monthly Cycle.     (line 11842)
+* averaging data:                        Missing Values.    (line  3983)
 * averaging data <1>:                    nces netCDF Ensemble Statistics.
-                                                            (line  8717)
+                                                            (line  8839)
 * averaging data <2>:                    ncra netCDF Record Averager.
-                                                            (line 10228)
+                                                            (line 10351)
 * averaging data <3>:                    ncwa netCDF Weighted Averager.
-                                                            (line 10553)
-* 'avg':                                 Operation Types.   (line  4610)
+                                                            (line 10676)
+* 'avg':                                 Operation Types.   (line  4673)
 * avg():                                 Methods and functions.
-                                                            (line  6320)
-* 'avgsqr':                              Operation Types.   (line  4610)
-* Barry deFreese:                        Contributors.      (line 10885)
-* 'base_time':                           ARM Conventions.   (line  5451)
-* 'bash':                                Subsetting Files.  (line  2589)
+                                                            (line  6395)
+* 'avgsqr':                              Operation Types.   (line  4673)
+* Barry deFreese:                        Contributors.      (line 11008)
+* 'base_time':                           ARM Conventions.   (line  5526)
+* 'bash':                                Subsetting Files.  (line  2619)
 * 'bash' <1>:                            Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * Bash shell:                            ncbo netCDF Binary Operator.
-                                                            (line  8497)
+                                                            (line  8618)
 * Bash Shell:                            ncbo netCDF Binary Operator.
-                                                            (line  8665)
+                                                            (line  8787)
 * Bash shell <1>:                        Filters for 'ncks'.
-                                                            (line  9637)
-* batch mode:                            Batch Mode.        (line  5252)
+                                                            (line  9759)
+* batch mode:                            Batch Mode.        (line  5315)
 * beer:                                  Promoting Single-precision to Double.
-                                                            (line  5150)
-* benchmarks:                            OpenMP Threading.  (line  1584)
+                                                            (line  5213)
+* benchmarks:                            OpenMP Threading.  (line  1592)
 * Bessel function:                       GSL special functions.
-                                                            (line  7087)
-* bilinear interpolation:                Regrid MODIS Data. (line 11842)
-* Bill Kocik:                            Contributors.      (line 10869)
+                                                            (line  7201)
+* bilinear interpolation:                Regrid MODIS Data. (line 12006)
+* Bill Kocik:                            Contributors.      (line 10992)
 * binary format:                         ncks netCDF Kitchen Sink.
-                                                            (line  9304)
-* binary operations:                     Memory for ncap2.  (line  1423)
+                                                            (line  9426)
+* binary operations:                     Memory for ncap2.  (line  1428)
 * binary operations <1>:                 ncbo netCDF Binary Operator.
-                                                            (line  8450)
-* binary Operators:                      Expressions.       (line  5686)
+                                                            (line  8571)
+* binary Operators:                      Expressions.       (line  5761)
 * blank:                                 ncks netCDF Kitchen Sink.
-                                                            (line  9506)
-* 'bounds':                              CF Conventions.    (line  5386)
-* bounds convention:                     CF Conventions.    (line  5386)
-* Bourne Shell:                          Stride.            (line  3240)
+                                                            (line  9628)
+* 'bounds':                              CF Conventions.    (line  5449)
+* bounds convention:                     CF Conventions.    (line  5449)
+* Bourne Shell:                          Stride.            (line  3284)
 * Bourne Shell <1>:                      ncbo netCDF Binary Operator.
-                                                            (line  8665)
-* Brian Mays:                            Contributors.      (line 10865)
+                                                            (line  8787)
+* Brian Mays:                            Contributors.      (line 10988)
 * broadcasting:                          ncbo netCDF Binary Operator.
-                                                            (line  8602)
+                                                            (line  8724)
 * broadcasting groups:                   netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   661)
+                                                            (line   666)
 * broadcasting groups <1>:               ncbo netCDF Binary Operator.
-                                                            (line  8581)
+                                                            (line  8703)
 * broadcasting groups <2>:               ncbo netCDF Binary Operator.
-                                                            (line  8630)
-* broadcasting variables:                Expressions.       (line  5635)
+                                                            (line  8752)
+* broadcasting variables:                Expressions.       (line  5710)
 * broadcasting variables <1>:            ncbo netCDF Binary Operator.
-                                                            (line  8539)
+                                                            (line  8660)
 * broadcasting variables <2>:            ncbo netCDF Binary Operator.
-                                                            (line  8541)
+                                                            (line  8662)
 * broadcasting variables <3>:            ncflint netCDF File Interpolator.
-                                                            (line  9170)
+                                                            (line  9292)
 * broadcasting variables <4>:            ncwa netCDF Weighted Averager.
-                                                            (line 10553)
+                                                            (line 10676)
 * 'BSD':                                 Command Line Options.
-                                                            (line  1603)
-* Buffer sizes:                          Buffer sizes.      (line  4355)
-* buffering:                             Performance.       (line  1461)
+                                                            (line  1611)
+* Buffer sizes:                          Buffer sizes.      (line  4418)
+* buffering:                             Performance.       (line  1466)
 * bugs, reporting:                       Help Requests and Bug Reports.
-                                                            (line   809)
+                                                            (line   814)
 * byte():                                Methods and functions.
-                                                            (line  6412)
+                                                            (line  6487)
 * C index convention:                    C and Fortran Index Conventions.
-                                                            (line  3061)
-* C language:                            Compatability.     (line   437)
-* C language <1>:                        Missing Values.    (line  3987)
+                                                            (line  3105)
+* C language:                            Compatability.     (line   442)
+* C language <1>:                        Missing Values.    (line  4031)
 * C language <2>:                        Automatic type conversion.
-                                                            (line  4892)
+                                                            (line  4955)
 * C language <3>:                        Promoting Single-precision to Double.
-                                                            (line  4911)
+                                                            (line  4974)
 * C language <4>:                        Syntax of ncap2 statements.
-                                                            (line  5577)
-* C language <5>:                        Expressions.       (line  5606)
+                                                            (line  5652)
+* C language <5>:                        Expressions.       (line  5681)
 * C language <6>:                        ncatted netCDF Attribute Editor.
-                                                            (line  8353)
+                                                            (line  8467)
 * C language <7>:                        ncks netCDF Kitchen Sink.
-                                                            (line  9545)
-* C Shell:                               Stride.            (line  3240)
+                                                            (line  9667)
+* C Shell:                               Stride.            (line  3284)
 * C Shell <1>:                           ncbo netCDF Binary Operator.
-                                                            (line  8665)
-* 'c++':                                 Compatability.     (line   402)
-* C++:                                   Compatability.     (line   407)
-* C89:                                   Compatability.     (line   415)
-* C89 <1>:                               Compatability.     (line   439)
-* C99:                                   Compatability.     (line   419)
-* C99 <1>:                               Compatability.     (line   439)
+                                                            (line  8787)
+* '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)
 * C99 <2>:                               Windows Operating System.
-                                                            (line   490)
+                                                            (line   495)
 * CAM3:                                  Promoting Single-precision to Double.
-                                                            (line  5050)
-* 'CC':                                  Compatability.     (line   402)
-* 'cc':                                  Compatability.     (line   402)
+                                                            (line  5113)
+* 'CC':                                  Compatability.     (line   407)
+* 'cc':                                  Compatability.     (line   407)
 * CCM Processor:                         Specifying Input Files.
-                                                            (line  1662)
+                                                            (line  1670)
 * CCM Processor <1>:                     ncra netCDF Record Averager.
-                                                            (line 10268)
+                                                            (line 10391)
 * CCM Processor <2>:                     ncrcat netCDF Record Concatenator.
-                                                            (line 10346)
+                                                            (line 10469)
 * CCSM:                                  Proposals for Institutional Funding.
-                                                            (line 10911)
-* CCSM <1>:                              CCSM Example.      (line 12081)
-* CCSM conventions:                      CF Conventions.    (line  5331)
+                                                            (line 11053)
+* CCSM <1>:                              CCSM Example.      (line 12245)
+* CCSM conventions:                      CF Conventions.    (line  5394)
 * CDL:                                   ncks netCDF Kitchen Sink.
-                                                            (line  9357)
+                                                            (line  9479)
 * CEIL:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * ceiling function:                      Intrinsic mathematical methods.
-                                                            (line  7929)
-* cell methods convention:               CF Conventions.    (line  5408)
+                                                            (line  8043)
+* cell methods convention:               CF Conventions.    (line  5483)
 * cell-based grids:                      Auxiliary Coordinates.
-                                                            (line  3601)
-* 'cell_methods':                        CF Conventions.    (line  5408)
-* CF compliance checker:                 Group Path Editing.
-                                                            (line  2902)
+                                                            (line  3645)
+* 'cell_methods':                        CF Conventions.    (line  5483)
+* CF compliance checker:                 Checking CF-compliance.
+                                                            (line  2952)
 * CF conventions:                        Subsetting Coordinate Variables.
-                                                            (line  2630)
+                                                            (line  2660)
 * CF conventions <1>:                    Auxiliary Coordinates.
-                                                            (line  3584)
-* CF conventions <2>:                    UDUnits Support.   (line  3792)
-* CF conventions <3>:                    CF Conventions.    (line  5331)
+                                                            (line  3628)
+* CF conventions <2>:                    UDUnits Support.   (line  3836)
+* CF conventions <3>:                    CF Conventions.    (line  5394)
 * CF conventions <4>:                    ncbo netCDF Binary Operator.
-                                                            (line  8574)
-* cfchecker:                             Group Path Editing.
-                                                            (line  2902)
+                                                            (line  8696)
+* cfchecker:                             Checking CF-compliance.
+                                                            (line  2952)
 * 'change_miss()':                       Missing values ncap2.
-                                                            (line  6257)
+                                                            (line  6332)
 * char():                                Methods and functions.
-                                                            (line  6414)
+                                                            (line  6489)
 * characters, special:                   ncatted netCDF Attribute Editor.
-                                                            (line  8329)
-* Charlie Zender:                        Foreword.          (line   203)
-* Charlie Zender <1>:                    Contributors.      (line 10840)
-* chocolate:                             Contributing.      (line 10819)
-* Chris Barker:                          Chunking.          (line  4135)
+                                                            (line  8443)
+* Charlie Zender:                        Foreword.          (line   208)
+* Charlie Zender <1>:                    Contributors.      (line 10963)
+* chocolate:                             Contributing.      (line 10942)
+* Chris Barker:                          Chunking.          (line  4189)
 * chunking:                              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   649)
-* chunking <1>:                          Chunking.          (line  4052)
+                                                            (line   654)
+* chunking <1>:                          Chunking.          (line  4096)
 * chunking <2>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9497)
-* chunking map:                          Chunking.          (line  4070)
-* chunking map <1>:                      Chunking.          (line  4129)
-* chunking policy:                       Chunking.          (line  4070)
-* chunksize:                             Chunking.          (line  4070)
-* 'clang':                               Compatability.     (line   402)
+                                                            (line  9619)
+* chunking map:                          Chunking.          (line  4114)
+* chunking map <1>:                      Chunking.          (line  4183)
+* chunking policy:                       Chunking.          (line  4114)
+* chunksize:                             Chunking.          (line  4114)
+* citation:                              Citation.          (line 11034)
+* 'clang':                               Compatability.     (line   407)
 * 'CLASSIC' files:                       File Formats and Conversion.
-                                                            (line  2089)
-* client-server:                         OPeNDAP.           (line  1909)
+                                                            (line  2104)
+* client-server:                         OPeNDAP.           (line  1924)
 * Climate and Forecast Metadata Convention: UDUnits Support.
-                                                            (line  3792)
-* climate model:                         Philosophy.        (line   891)
+                                                            (line  3836)
+* climate model:                         Philosophy.        (line   896)
 * climate model <1>:                     Climate Model Paradigm.
-                                                            (line   917)
-* climate model <2>:                     Concatenation.     (line  1116)
+                                                            (line   922)
+* climate model <2>:                     Concatenation.     (line  1121)
 * climate model <3>:                     Specifying Input Files.
-                                                            (line  1725)
+                                                            (line  1736)
 * climate model <4>:                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  8968)
+                                                            (line  9090)
 * climate model <5>:                     Normalization and Integration.
-                                                            (line 10739)
+                                                            (line 10862)
 * climate model <6>:                     Normalization and Integration.
-                                                            (line 10750)
-* clipping operators:                    Expressions.       (line  5758)
+                                                            (line 10873)
+* clipping operators:                    Expressions.       (line  5833)
 * CMIP:                                  nces netCDF Ensemble Statistics.
-                                                            (line  8756)
+                                                            (line  8878)
 * CMIP <1>:                              ncecat netCDF Ensemble Concatenator.
-                                                            (line  8912)
-* CMIP5:                                 CMIP5 Example.     (line 11030)
-* 'cnk_all':                             Chunking.          (line  4085)
-* 'cnk_dmn':                             Chunking.          (line  4135)
-* 'cnk_g2d':                             Chunking.          (line  4085)
-* 'cnk_g3d':                             Chunking.          (line  4085)
-* 'cnk_lfp':                             Chunking.          (line  4135)
-* CNK_MAP:                               Chunking.          (line  4129)
-* 'cnk_prd':                             Chunking.          (line  4135)
-* 'cnk_rd1':                             Chunking.          (line  4135)
-* 'cnk_scl':                             Chunking.          (line  4135)
-* 'cnk_xpl':                             Chunking.          (line  4085)
-* 'cnk_xst':                             Chunking.          (line  4085)
-* 'cnk_xst' <1>:                         Chunking.          (line  4135)
-* Comeau:                                Compatability.     (line   384)
+                                                            (line  9034)
+* CMIP5:                                 CMIP5 Example.     (line 11172)
+* 'cnk_all':                             Chunking.          (line  4130)
+* 'cnk_dmn':                             Chunking.          (line  4189)
+* 'cnk_g2d':                             Chunking.          (line  4130)
+* 'cnk_g3d':                             Chunking.          (line  4130)
+* 'cnk_lfp':                             Chunking.          (line  4189)
+* CNK_MAP:                               Chunking.          (line  4183)
+* 'cnk_prd':                             Chunking.          (line  4189)
+* 'cnk_r1d':                             Chunking.          (line  4130)
+* 'cnk_rd1':                             Chunking.          (line  4189)
+* 'cnk_scl':                             Chunking.          (line  4189)
+* 'cnk_xpl':                             Chunking.          (line  4130)
+* 'cnk_xst':                             Chunking.          (line  4130)
+* 'cnk_xst' <1>:                         Chunking.          (line  4189)
+* Comeau:                                Compatability.     (line   389)
 * command line options:                  Command Line Options.
-                                                            (line  1589)
-* command line switches:                 Philosophy.        (line   907)
-* command line switches <1>:             Common features.   (line  1487)
+                                                            (line  1597)
+* command line switches:                 Philosophy.        (line   912)
+* command line switches <1>:             Common features.   (line  1492)
 * command line switches <2>:             Specifying Output Files.
-                                                            (line  1765)
+                                                            (line  1778)
 * command line switches <3>:             Operator Reference Manual.
-                                                            (line  5504)
+                                                            (line  5579)
 * comments:                              Syntax of ncap2 statements.
-                                                            (line  5591)
-* 'como':                                Compatability.     (line   402)
-* Compaq:                                Compatability.     (line   384)
-* comparator:                            Mask condition.    (line 10655)
-* compatability:                         Compatability.     (line   384)
+                                                            (line  5666)
+* 'como':                                Compatability.     (line   407)
+* Compaq:                                Compatability.     (line   389)
+* comparator:                            Mask condition.    (line 10778)
+* compatability:                         Compatability.     (line   389)
 * compilers:                             Specifying Output Files.
-                                                            (line  1787)
+                                                            (line  1800)
 * complementary error function:          Intrinsic mathematical methods.
-                                                            (line  7929)
-* compliance checker:                    Group Path Editing.
-                                                            (line  2902)
-* compression:                           Deflation.         (line  4248)
+                                                            (line  8043)
+* compliance checker:                    Checking CF-compliance.
+                                                            (line  2952)
+* compression:                           Deflation.         (line  4311)
 * compression <1>:                       ncks netCDF Kitchen Sink.
-                                                            (line  9497)
+                                                            (line  9619)
 * concatenation:                         Appending Variables.
-                                                            (line  1016)
+                                                            (line  1021)
 * concatenation <1>:                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  8872)
+                                                            (line  8994)
 * concatenation <2>:                     ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10027)
+                                                            (line 10150)
 * concatenation <3>:                     ncrcat netCDF Record Concatenator.
-                                                            (line 10299)
-* conditional Operator:                  Expressions.       (line  5748)
+                                                            (line 10422)
+* conditional Operator:                  Expressions.       (line  5823)
 * 'config.guess':                        Help Requests and Bug Reports.
-                                                            (line   872)
+                                                            (line   877)
 * 'configure.eg':                        Help Requests and Bug Reports.
-                                                            (line   872)
-* constraint expressions:                OPeNDAP.           (line  2035)
+                                                            (line   877)
+* constraint expressions:                OPeNDAP.           (line  2050)
 * contents:                              How to Use This guide.
-                                                            (line   350)
-* contributing:                          Contributing.      (line 10808)
-* contributors:                          Contributors.      (line 10839)
-* coordinate limits:                     Hyperslabs.        (line  3098)
-* coordinate variable:                   UDUnits Support.   (line  3728)
-* coordinate variable <1>:               Operation Types.   (line  4634)
-* coordinate variable <2>:               CF Conventions.    (line  5397)
+                                                            (line   355)
+* contributing:                          Contributing.      (line 10931)
+* contributors:                          Contributors.      (line 10962)
+* coordinate limits:                     Hyperslabs.        (line  3142)
+* coordinate variable:                   UDUnits Support.   (line  3772)
+* coordinate variable <1>:               Operation Types.   (line  4697)
+* coordinate variable <2>:               CF Conventions.    (line  5472)
 * coordinate variable <3>:               ncbo netCDF Binary Operator.
-                                                            (line  8571)
+                                                            (line  8693)
 * coordinate variable <4>:               ncwa netCDF Weighted Averager.
-                                                            (line 10621)
+                                                            (line 10744)
 * coordinate variables:                  ncrename netCDF Renamer.
-                                                            (line 10489)
+                                                            (line 10612)
 * 'coordinates':                         Auxiliary Coordinates.
-                                                            (line  3584)
-* 'coordinates' <1>:                     CF Conventions.    (line  5397)
+                                                            (line  3628)
+* 'coordinates' <1>:                     CF Conventions.    (line  5472)
 * coordinates:                           Add Coordinates to MODIS Data.
-                                                            (line 11980)
-* coordinates convention:                CF Conventions.    (line  5397)
+                                                            (line 12144)
+* coordinates convention:                CF Conventions.    (line  5472)
 * coordinates, modifying:                Permute MODIS Coordinates.
-                                                            (line 12028)
+                                                            (line 12192)
 * core dump:                             Help Requests and Bug Reports.
-                                                            (line   809)
-* 'core dump':                           Large Datasets.    (line  1313)
+                                                            (line   814)
+* 'core dump':                           Large Datasets.    (line  1318)
 * 'core dump' <1>:                       Filters for 'ncks'.
-                                                            (line  9809)
+                                                            (line  9931)
 * COS:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * COSH:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * cosine function:                       Intrinsic mathematical methods.
-                                                            (line  7929)
-* covariance:                            Examples ncap2.    (line  7856)
-* 'cp':                                  Subsetting Files.  (line  2413)
-* Cray:                                  Compatability.     (line   384)
-* Cray <1>:                              Large Datasets.    (line  1308)
-* 'csh':                                 Subsetting Files.  (line  2589)
+                                                            (line  8043)
+* covariance:                            Examples ncap2.    (line  7970)
+* 'cp':                                  Subsetting Files.  (line  2443)
+* Cray:                                  Compatability.     (line   389)
+* Cray <1>:                              Large Datasets.    (line  1313)
+* 'csh':                                 Subsetting Files.  (line  2619)
 * Csh shell:                             Filters for 'ncks'.
-                                                            (line  9637)
-* 'cxx':                                 Compatability.     (line   402)
+                                                            (line  9759)
+* 'cxx':                                 Compatability.     (line   407)
 * Cygwin:                                Windows Operating System.
-                                                            (line   498)
-* Cygwin <1>:                            Symbolic Links.    (line   534)
-* C_FORMAT:                              Performance.       (line  1470)
+                                                            (line   503)
+* Cygwin <1>:                            Symbolic Links.    (line   539)
+* C_FORMAT:                              Performance.       (line  1475)
 * daily data:                            Daily data in one file.
-                                                            (line 10938)
+                                                            (line 11080)
 * daily data <1>:                        One time point one file.
-                                                            (line 11004)
+                                                            (line 11146)
 * daily data <2>:                        Multiple files with multiple time points.
-                                                            (line 11022)
-* Daniel Baumann:                        Contributors.      (line 10885)
-* Daniel Wang:                           Contributors.      (line 10857)
-* DAP:                                   OPeNDAP.           (line  1909)
-* data access protocol:                  OPeNDAP.           (line  1909)
+                                                            (line 11164)
+* Daniel Baumann:                        Contributors.      (line 11008)
+* Daniel Wang:                           Contributors.      (line 10980)
+* DAP:                                   OPeNDAP.           (line  1924)
+* data access protocol:                  OPeNDAP.           (line  1924)
 * data safety:                           Temporary Output Files.
-                                                            (line   928)
+                                                            (line   933)
 * data safety <1>:                       ncrename netCDF Renamer.
-                                                            (line 10412)
-* data, missing:                         Missing Values.    (line  3939)
+                                                            (line 10535)
+* data, missing:                         Missing Values.    (line  3983)
 * data, missing <1>:                     ncatted netCDF Attribute Editor.
-                                                            (line  8185)
-* 'date':                                CF Conventions.    (line  5331)
-* 'datesec':                             CF Conventions.    (line  5331)
+                                                            (line  8299)
+* 'date':                                CF Conventions.    (line  5394)
+* 'datesec':                             CF Conventions.    (line  5394)
 * DBG_LVL:                               Help Requests and Bug Reports.
-                                                            (line   864)
-* DBG_LVL <1>:                           Large Datasets.    (line  1323)
-* DBG_LVL <2>:                           OpenMP Threading.  (line  1573)
+                                                            (line   869)
+* DBG_LVL <1>:                           Large Datasets.    (line  1328)
+* DBG_LVL <2>:                           OpenMP Threading.  (line  1581)
 * DDRA:                                  Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * Debian:                                netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   746)
+                                                            (line   751)
 * DEBUG-LEVEL:                           Help Requests and Bug Reports.
-                                                            (line   864)
-* DEBUG-LEVEL <1>:                       Large Datasets.    (line  1323)
+                                                            (line   869)
+* DEBUG-LEVEL <1>:                       Large Datasets.    (line  1328)
 * debugging:                             Help Requests and Bug Reports.
-                                                            (line   849)
-* debugging <1>:                         Large Datasets.    (line  1323)
-* debugging <2>:                         OpenMP Threading.  (line  1573)
-* DEC:                                   Compatability.     (line   384)
-* 'defdim()':                            Dimensions.        (line  5779)
-* defining dimensions in 'ncap2':        Dimensions.        (line  5779)
+                                                            (line   854)
+* debugging <1>:                         Large Datasets.    (line  1328)
+* debugging <2>:                         OpenMP Threading.  (line  1581)
+* DEC:                                   Compatability.     (line   389)
+* 'defdim()':                            Dimensions.        (line  5854)
+* defining dimensions in 'ncap2':        Dimensions.        (line  5854)
 * deflation:                             netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   645)
-* deflation <1>:                         Deflation.         (line  4248)
+                                                            (line   650)
+* deflation <1>:                         Deflation.         (line  4311)
 * deflation <2>:                         ncks netCDF Kitchen Sink.
-                                                            (line  9497)
-* degenerate dimension:                  Chunking.          (line  4129)
-* degenerate dimension <1>:              Operation Types.   (line  4679)
-* degenerate dimension <2>:              Examples ncap2.    (line  7904)
+                                                            (line  9619)
+* degenerate dimension:                  Chunking.          (line  4183)
+* degenerate dimension <1>:              Operation Types.   (line  4742)
+* degenerate dimension <2>:              Examples ncap2.    (line  8018)
 * degenerate dimension <3>:              ncbo netCDF Binary Operator.
-                                                            (line  8566)
+                                                            (line  8687)
 * degenerate dimension <4>:              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9021)
+                                                            (line  9143)
 * degenerate dimension <5>:              ncflint netCDF File Interpolator.
-                                                            (line  9083)
+                                                            (line  9205)
 * degenerate dimension <6>:              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10189)
+                                                            (line 10312)
 * degenerate dimension <7>:              ncra netCDF Record Averager.
-                                                            (line 10241)
+                                                            (line 10364)
 * degenerate dimension <8>:              ncwa netCDF Weighted Averager.
-                                                            (line 10573)
+                                                            (line 10696)
 * degenerate dimension <9>:              Normalization and Integration.
-                                                            (line 10730)
-* delete (groups):                       Group Path Editing.
-                                                            (line  2677)
+                                                            (line 10853)
+* delete (groups):                       Flattening Groups. (line  2712)
 * 'delete_miss()':                       Missing values ncap2.
-                                                            (line  6267)
-* demotion:                              Type Conversion.   (line  4763)
-* Dennis Heimbigner:                     Contributors.      (line 10831)
+                                                            (line  6342)
+* demotion:                              Type Conversion.   (line  4826)
+* Dennis Heimbigner:                     Contributors.      (line 10954)
 * derived fields:                        ncap2 netCDF Arithmetic Processor.
-                                                            (line  5539)
+                                                            (line  5614)
 * derived fields <1>:                    ncap2 netCDF Arithmetic Processor.
-                                                            (line  5551)
-* digest:                                MD5 digests.       (line  4285)
-* Digital:                               Compatability.     (line   384)
-* dimension limits:                      Hyperslabs.        (line  3098)
+                                                            (line  5626)
+* digest:                                MD5 digests.       (line  4348)
+* Digital:                               Compatability.     (line   389)
+* dimension limits:                      Hyperslabs.        (line  3142)
 * dimension names:                       ncrename netCDF Renamer.
-                                                            (line 10381)
+                                                            (line 10504)
 * dimension order:                       Annual Average over Regions.
-                                                            (line 11387)
-* dimensions, growing:                   Examples ncap2.    (line  7826)
-* disaggregate:                          Group Path Editing.
-                                                            (line  2799)
+                                                            (line 11551)
+* dimensions, growing:                   Examples ncap2.    (line  7940)
+* disaggregate:                          Dismembering Files.
+                                                            (line  2845)
 * disjoint files:                        Appending Variables.
-                                                            (line  1038)
-* diskless files:                        RAM disks.         (line  4386)
-* dismember:                             Group Path Editing.
-                                                            (line  2799)
+                                                            (line  1043)
+* diskless files:                        RAM disks.         (line  4449)
+* dismember:                             Dismembering Files.
+                                                            (line  2845)
 * Distributed Data Reduction & Analysis: Proposals for Institutional Funding.
-                                                            (line 10911)
-* Distributed Oceanographic Data System: OPeNDAP.           (line  1909)
+                                                            (line 11053)
+* Distributed Oceanographic Data System: OPeNDAP.           (line  1924)
 * 'divide':                              ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * dividing data:                         ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * division:                              Intrinsic mathematical methods.
-                                                            (line  7926)
-* 'dmn':                                 Chunking.          (line  4135)
-* documentation:                         Availability.      (line   310)
-* DODS:                                  OPeNDAP.           (line  1909)
+                                                            (line  8040)
+* 'dmn':                                 Chunking.          (line  4189)
+* documentation:                         Availability.      (line   315)
+* DODS:                                  OPeNDAP.           (line  1924)
 * DODS <1>:                              Retaining Retrieved Files.
-                                                            (line  2077)
-* 'DODS_ROOT':                           OPeNDAP.           (line  1909)
+                                                            (line  2092)
+* 'DODS_ROOT':                           OPeNDAP.           (line  1924)
 * dot product:                           Normalization and Integration.
-                                                            (line 10676)
+                                                            (line 10799)
 * dot product <1>:                       Normalization and Integration.
-                                                            (line 10695)
+                                                            (line 10818)
 * double():                              Methods and functions.
-                                                            (line  6423)
+                                                            (line  6498)
 * double-precision:                      Intrinsic mathematical methods.
-                                                            (line  8032)
-* 'dsort':                               Sort methods.      (line  6600)
-* duration:                              Subcycle.          (line  3314)
-* dynamic linking:                       Libraries.         (line   560)
-* Ed Hartnett:                           Contributors.      (line 10831)
-* Ed Hill:                               Contributors.      (line 10887)
-* eddy covariance:                       Examples ncap2.    (line  7862)
+                                                            (line  8146)
+* 'dsort':                               Sort methods.      (line  6714)
+* duration:                              Subcycle.          (line  3358)
+* dynamic linking:                       Libraries.         (line   565)
+* Ed Hartnett:                           Contributors.      (line 10954)
+* Ed Hill:                               Contributors.      (line 11010)
+* eddy covariance:                       Examples ncap2.    (line  7976)
 * editing attributes:                    ncatted netCDF Attribute Editor.
-                                                            (line  8162)
-* 'egrep':                               Subsetting Files.  (line  2514)
+                                                            (line  8276)
+* 'egrep':                               Subsetting Files.  (line  2544)
 * Elliptic integrals:                    GSL special functions.
-                                                            (line  7107)
-* ensemble:                              Concatenation.     (line  1116)
+                                                            (line  7221)
+* ensemble:                              Concatenation.     (line  1121)
 * ensemble <1>:                          nces netCDF Ensemble Statistics.
-                                                            (line  8733)
+                                                            (line  8855)
 * ensemble average:                      nces netCDF Ensemble Statistics.
-                                                            (line  8717)
+                                                            (line  8839)
 * ensemble concatenation:                ncecat netCDF Ensemble Concatenator.
-                                                            (line  8872)
+                                                            (line  8994)
 * ERF:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * ERFC:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
-* Eric Blake:                            Contributors.      (line 10895)
+                                                            (line  8043)
+* Eric Blake:                            Contributors.      (line 11018)
 * error function:                        Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * error tolerance:                       Temporary Output Files.
-                                                            (line   928)
-* Etienne Tourigny:                      Contributors.      (line 10901)
-* exclusion:                             Subsetting Files.  (line  2371)
+                                                            (line   933)
+* Etienne Tourigny:                      Contributors.      (line 11024)
+* exclusion:                             Subsetting Files.  (line  2386)
 * exclusion <1>:                         Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * exclusion <2>:                         Filters for 'ncks'.
-                                                            (line  9812)
-* execution time:                        Libraries.         (line   561)
+                                                            (line  9934)
+* execution time:                        Libraries.         (line   566)
 * execution time <1>:                    Temporary Output Files.
-                                                            (line   943)
-* execution time <2>:                    Performance.       (line  1462)
+                                                            (line   948)
+* execution time <2>:                    Performance.       (line  1467)
 * execution time <3>:                    Metadata Optimization.
-                                                            (line  1504)
-* execution time <4>:                    Missing Values.    (line  3998)
+                                                            (line  1512)
+* execution time <4>:                    Missing Values.    (line  4042)
 * execution time <5>:                    ncrename netCDF Renamer.
-                                                            (line 10427)
+                                                            (line 10550)
 * EXP:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * exponent:                              Promoting Single-precision to Double.
-                                                            (line  5128)
+                                                            (line  5191)
 * exponentiation:                        Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * exponentiation function:               Intrinsic mathematical methods.
-                                                            (line  7929)
-* expressions:                           Expressions.       (line  5601)
+                                                            (line  8043)
+* expressions:                           Expressions.       (line  5676)
 * extended file format:                  Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * extended regular expressions:          Large Numbers of Files.
-                                                            (line  1229)
-* extended regular expressions <1>:      Subsetting Files.  (line  2514)
-* extended regular expressions <2>:      Examples ncap2.    (line  7881)
+                                                            (line  1234)
+* extended regular expressions <1>:      Subsetting Files.  (line  2544)
+* extended regular expressions <2>:      Examples ncap2.    (line  7995)
 * extended regular expressions <3>:      ncatted netCDF Attribute Editor.
-                                                            (line  8205)
+                                                            (line  8319)
 * extended regular expressions <4>:      ncatted netCDF Attribute Editor.
-                                                            (line  8412)
-* extraction:                            Subsetting Files.  (line  2371)
+                                                            (line  8526)
+* extraction:                            Subsetting Files.  (line  2386)
 * extraction <1>:                        Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * extraction <2>:                        Filters for 'ncks'.
-                                                            (line  9812)
+                                                            (line  9934)
 * 'f90':                                 Windows Operating System.
-                                                            (line   498)
+                                                            (line   503)
 * features, requesting:                  Help Requests and Bug Reports.
-                                                            (line   809)
-* File buffers:                          Buffer sizes.      (line  4355)
-* file combination:                      Combine Files.     (line 11052)
+                                                            (line   814)
+* File buffers:                          Buffer sizes.      (line  4418)
+* file combination:                      Combine Files.     (line 11216)
 * file deletion:                         Retaining Retrieved Files.
-                                                            (line  2049)
+                                                            (line  2064)
 * file multiplication:                   ncflint netCDF File Interpolator.
-                                                            (line  9159)
+                                                            (line  9281)
 * file removal:                          Retaining Retrieved Files.
-                                                            (line  2049)
+                                                            (line  2064)
 * file retention:                        Retaining Retrieved Files.
-                                                            (line  2049)
+                                                            (line  2064)
 * files, multiple:                       Specifying Input Files.
-                                                            (line  1696)
+                                                            (line  1707)
 * files, numerous input:                 Large Numbers of Files.
-                                                            (line  1193)
-* Filipe Fernandes:                      Contributors.      (line 10891)
+                                                            (line  1198)
+* Filipe Fernandes:                      Contributors.      (line 11014)
 * filters:                               Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * findgen-equivalent:                    Arrays and hyperslabs.
-                                                            (line  5877)
+                                                            (line  5952)
 * fix record dimension:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  8916)
+                                                            (line  9038)
 * fix record dimension <1>:              ncecat netCDF Ensemble Concatenator.
-                                                            (line  9016)
+                                                            (line  9138)
 * fix record dimension <2>:              ncks netCDF Kitchen Sink.
-                                                            (line  9397)
+                                                            (line  9519)
 * fixed dimension:                       ncecat netCDF Ensemble Concatenator.
-                                                            (line  8916)
+                                                            (line  9038)
 * fixed dimension <1>:                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  9016)
+                                                            (line  9138)
 * fixed dimension <2>:                   ncks netCDF Kitchen Sink.
-                                                            (line  9320)
+                                                            (line  9442)
 * fixed dimension <3>:                   ncks netCDF Kitchen Sink.
-                                                            (line  9397)
-* flags:                                 Examples ncap2.    (line  7840)
-* flatten (groups):                      Group Path Editing.
-                                                            (line  2677)
-* flattening:                            Autoconversion.    (line  2313)
+                                                            (line  9519)
+* flags:                                 Examples ncap2.    (line  7954)
+* flatten (groups):                      Flattening Groups. (line  2712)
+* flattening:                            Autoconversion.    (line  2328)
 * 'float':                               Intrinsic mathematical methods.
-                                                            (line  8032)
+                                                            (line  8146)
 * float():                               Methods and functions.
-                                                            (line  6420)
+                                                            (line  6495)
 * FLOOR:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * floor function:                        Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * 'flt_byt':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'flt_sht':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
-* for():                                 Loops.             (line  6545)
-* force append:                          Batch Mode.        (line  5252)
-* force overwrite:                       Batch Mode.        (line  5252)
-* foreword:                              Foreword.          (line   203)
+                                                            (line 10082)
+* for():                                 Loops.             (line  6659)
+* force append:                          Batch Mode.        (line  5315)
+* force overwrite:                       Batch Mode.        (line  5315)
+* foreword:                              Foreword.          (line   208)
 * Fortran:                               Promoting Single-precision to Double.
-                                                            (line  4911)
+                                                            (line  4974)
 * Fortran <1>:                           ncra netCDF Record Averager.
-                                                            (line 10276)
+                                                            (line 10399)
 * Fortran <2>:                           ncrcat netCDF Record Concatenator.
-                                                            (line 10353)
+                                                            (line 10476)
 * Fortran index convention:              C and Fortran Index Conventions.
-                                                            (line  3061)
-* FORTRAN_FORMAT:                        Performance.       (line  1470)
-* Francesco Lovergine:                   Contributors.      (line 10885)
+                                                            (line  3105)
+* FORTRAN_FORMAT:                        Performance.       (line  1475)
+* Francesco Lovergine:                   Contributors.      (line 11008)
 * 'ftp':                                 Windows Operating System.
-                                                            (line   504)
-* 'ftp' <1>:                             Remote storage.    (line  1797)
+                                                            (line   509)
+* 'ftp' <1>:                             Remote storage.    (line  1810)
 * FTP:                                   Retaining Retrieved Files.
-                                                            (line  2066)
+                                                            (line  2081)
 * funding:                               Proposals for Institutional Funding.
-                                                            (line 10911)
-* 'g++':                                 Compatability.     (line   402)
+                                                            (line 11053)
+* 'g++':                                 Compatability.     (line   407)
 * 'g++' <1>:                             Windows Operating System.
-                                                            (line   518)
-* 'g2d':                                 Chunking.          (line  4085)
-* 'g3d':                                 Chunking.          (line  4085)
+                                                            (line   523)
+* 'g2d':                                 Chunking.          (line  4130)
+* 'g3d':                                 Chunking.          (line  4130)
 * GAG:                                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  8924)
-* GAMMA:                                 Compatability.     (line   453)
+                                                            (line  9046)
+* GAMMA:                                 Compatability.     (line   458)
 * GAMMA <1>:                             Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * gamma function:                        GSL special functions.
-                                                            (line  7073)
+                                                            (line  7187)
 * gamma function <1>:                    Intrinsic mathematical methods.
-                                                            (line  7929)
-* Gary Strand:                           Contributors.      (line 10883)
+                                                            (line  8043)
+* Gary Strand:                           Contributors.      (line 11006)
 * Gaussian weights:                      Normalization and Integration.
-                                                            (line 10739)
-* Gavin Burris:                          Contributors.      (line 10897)
-* Gayathri Venkitachalam:                Contributors.      (line 10879)
-* 'gcc':                                 Compatability.     (line   402)
+                                                            (line 10862)
+* Gavin Burris:                          Contributors.      (line 11020)
+* Gayathri Venkitachalam:                Contributors.      (line 11002)
+* 'gcc':                                 Compatability.     (line   407)
 * 'gcc' <1>:                             Windows Operating System.
-                                                            (line   518)
+                                                            (line   523)
 * GCM:                                   Climate Model Paradigm.
-                                                            (line   917)
+                                                            (line   922)
 * GCM <1>:                               Promoting Single-precision to Double.
-                                                            (line  5050)
-* geographical weight:                   Monthly Cycle.     (line 11678)
-* George Shapavalov:                     Contributors.      (line 10889)
-* George Shapovalov:                     Contributors.      (line 10867)
-* George White:                          Contributors.      (line 10883)
+                                                            (line  5113)
+* geographical weight:                   Monthly Cycle.     (line 11842)
+* George Shapavalov:                     Contributors.      (line 11012)
+* George Shapovalov:                     Contributors.      (line 10990)
+* George White:                          Contributors.      (line 11006)
 * 'gethostname':                         Windows Operating System.
-                                                            (line   502)
+                                                            (line   507)
 * 'getopt':                              Command Line Options.
-                                                            (line  1603)
+                                                            (line  1611)
 * 'getopt.h':                            Command Line Options.
-                                                            (line  1603)
+                                                            (line  1611)
 * 'getopt_long':                         Command Line Options.
-                                                            (line  1603)
+                                                            (line  1611)
 * 'getuid':                              Windows Operating System.
-                                                            (line   502)
+                                                            (line   507)
 * 'get_miss()':                          Missing values ncap2.
-                                                            (line  6262)
-* Glenn Davis:                           Contributors.      (line 10831)
+                                                            (line  6337)
+* Glenn Davis:                           Contributors.      (line 10954)
 * 'global' attribute:                    ncatted netCDF Attribute Editor.
-                                                            (line  8394)
+                                                            (line  8508)
 * 'global' attribute <1>:                ncrename netCDF Renamer.
-                                                            (line 10436)
+                                                            (line 10559)
 * global attributes:                     Large Numbers of Files.
-                                                            (line  1221)
-* global attributes <1>:                 History Attribute. (line  5272)
+                                                            (line  1226)
+* global attributes <1>:                 History Attribute. (line  5335)
 * global attributes <2>:                 File List Attributes.
-                                                            (line  5300)
-* global attributes <3>:                 ARM Conventions.   (line  5475)
+                                                            (line  5363)
+* global attributes <3>:                 ARM Conventions.   (line  5550)
 * global attributes <4>:                 ncatted netCDF Attribute Editor.
-                                                            (line  8227)
+                                                            (line  8341)
 * global attributes <5>:                 ncatted netCDF Attribute Editor.
-                                                            (line  8394)
+                                                            (line  8508)
 * global attributes <6>:                 ncks netCDF Kitchen Sink.
-                                                            (line  9220)
+                                                            (line  9342)
 * global attributes <7>:                 ncks netCDF Kitchen Sink.
-                                                            (line  9254)
+                                                            (line  9376)
 * global attributes <8>:                 Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * global attributes <9>:                 ncrename netCDF Renamer.
-                                                            (line 10436)
+                                                            (line 10559)
 * global attributes <10>:                ncrename netCDF Renamer.
-                                                            (line 10516)
+                                                            (line 10639)
 * globbing:                              Large Numbers of Files.
-                                                            (line  1229)
+                                                            (line  1234)
 * globbing <1>:                          Specifying Input Files.
-                                                            (line  1662)
-* globbing <2>:                          Subsetting Files.  (line  2589)
-* globbing <3>:                          Examples ncap2.    (line  7881)
+                                                            (line  1670)
+* globbing <2>:                          Subsetting Files.  (line  2619)
+* globbing <3>:                          Examples ncap2.    (line  7995)
 * globbing <4>:                          ncbo netCDF Binary Operator.
-                                                            (line  8498)
+                                                            (line  8619)
 * globbing <5>:                          ncra netCDF Record Averager.
-                                                            (line 10268)
+                                                            (line 10391)
 * globbing <6>:                          ncrcat netCDF Record Concatenator.
-                                                            (line 10346)
+                                                            (line 10469)
 * GNU:                                   Command Line Options.
-                                                            (line  1590)
-* GNU <1>:                               Subsetting Files.  (line  2514)
+                                                            (line  1598)
+* GNU <1>:                               Subsetting Files.  (line  2544)
 * 'gnu-win32':                           Windows Operating System.
-                                                            (line   498)
-* GNU/Linux:                             Large Datasets.    (line  1313)
+                                                            (line   503)
+* GNU/Linux:                             Large Datasets.    (line  1318)
 * 'GNUmakefile':                         Windows Operating System.
-                                                            (line   498)
-* God:                                   UDUnits Support.   (line  3838)
-* 'grep -E':                             Subsetting Files.  (line  2514)
+                                                            (line   503)
+* God:                                   UDUnits Support.   (line  3882)
+* GODAD:                                 CMIP5 Example.     (line 11172)
+* 'grep -E':                             Subsetting Files.  (line  2544)
 * group aggregation:                     ncecat netCDF Ensemble Concatenator.
-                                                            (line  8924)
-* group aggregation <1>:                 Combine Files.     (line 11158)
+                                                            (line  9046)
+* group aggregation <1>:                 Combine Files.     (line 11322)
 * group names:                           ncrename netCDF Renamer.
-                                                            (line 10381)
+                                                            (line 10504)
 * group path:                            Group Path Editing.
-                                                            (line  2658)
+                                                            (line  2690)
 * group, aggregation:                    Annual Average over Regions.
-                                                            (line 11612)
+                                                            (line 11776)
 * group, anomaly:                        Annual Average over Regions.
-                                                            (line 11612)
+                                                            (line 11776)
 * group, dimension permutation:          Annual Average over Regions.
-                                                            (line 11612)
+                                                            (line 11776)
 * group, spatial averaging:              Annual Average over Regions.
-                                                            (line 11612)
+                                                            (line 11776)
 * group, standard deviation:             Annual Average over Regions.
-                                                            (line 11612)
+                                                            (line 11776)
 * group, temporal averaging:             Annual Average over Regions.
-                                                            (line 11612)
+                                                            (line 11776)
 * groups:                                netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   654)
+                                                            (line   659)
 * groups <1>:                            ncatted netCDF Attribute Editor.
-                                                            (line  8418)
+                                                            (line  8532)
 * groups, averaging:                     Global Distribution of Long-term Average.
-                                                            (line 11365)
-* groups, creating:                      Combine Files.     (line 11158)
-* groups, moving:                        Group Path Editing.
-                                                            (line  2765)
-* groups, renaming:                      Group Path Editing.
-                                                            (line  2765)
-* growing dimensions:                    Examples ncap2.    (line  7826)
-* GSL:                                   Compatability.     (line   446)
+                                                            (line 11529)
+* groups, creating:                      Combine Files.     (line 11322)
+* groups, moving:                        Moving Groups.     (line  2802)
+* groups, renaming:                      Moving Groups.     (line  2802)
+* growing dimensions:                    Examples ncap2.    (line  7940)
+* GSL:                                   Compatability.     (line   451)
 * GSL <1>:                               GSL special functions.
-                                                            (line  7058)
-* GSL <2>:                               GSL interpolation. (line  7450)
+                                                            (line  7172)
+* GSL <2>:                               GSL interpolation. (line  7564)
 * GSL_SF_BESSEL_JN:                      GSL special functions.
-                                                            (line  7087)
+                                                            (line  7201)
 * GSL_SF_GAMMA:                          GSL special functions.
-                                                            (line  7073)
+                                                            (line  7187)
 * gsl_sf_legendre_Pl:                    GSL special functions.
-                                                            (line  7142)
-* 'gw':                                  CF Conventions.    (line  5331)
+                                                            (line  7256)
+* 'gw':                                  CF Conventions.    (line  5394)
 * 'gw' <1>:                              Normalization and Integration.
-                                                            (line 10739)
+                                                            (line 10862)
 * H4CF:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   737)
+                                                            (line   742)
 * 'h4tonccf':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   737)
-* Harry Mangalam:                        Contributors.      (line 10860)
-* hash:                                  MD5 digests.       (line  4285)
+                                                            (line   742)
+* Harry Mangalam:                        Contributors.      (line 10983)
+* hash:                                  MD5 digests.       (line  4348)
 * HDF:                                   netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   597)
+                                                            (line   602)
 * HDF <1>:                               File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * HDF <2>:                               ncks netCDF Kitchen Sink.
-                                                            (line  9357)
+                                                            (line  9479)
 * HDF <3>:                               Proposals for Institutional Funding.
-                                                            (line 10918)
-* HDF unpacking:                         Packed data.       (line  4542)
+                                                            (line 11060)
+* HDF unpacking:                         Packed data.       (line  4605)
 * HDF4:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   674)
+                                                            (line   679)
 * HDF4 <1>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9357)
+                                                            (line  9479)
 * HDF5:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   611)
+                                                            (line   616)
 * HDF5 <1>:                              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   667)
+                                                            (line   672)
 * 'hdf_name':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   728)
+                                                            (line   733)
 * 'hdp':                                 ncks netCDF Kitchen Sink.
-                                                            (line  9357)
+                                                            (line  9479)
 * help:                                  Help Requests and Bug Reports.
-                                                            (line   809)
-* Henry Butowsky:                        Contributors.      (line 10846)
+                                                            (line   814)
+* Henry Butowsky:                        Contributors.      (line 10969)
 * 'hgh_byt':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'hgh_sht':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * hidden attributes:                     ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * Hierarchical Data Format:              netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   597)
+                                                            (line   602)
 * 'history':                             Large Numbers of Files.
-                                                            (line  1273)
-* 'history' <1>:                         Remote storage.    (line  1797)
-* 'history' <2>:                         History Attribute. (line  5272)
-* 'history' <3>:                         ARM Conventions.   (line  5475)
+                                                            (line  1278)
+* 'history' <1>:                         Remote storage.    (line  1810)
+* 'history' <2>:                         History Attribute. (line  5335)
+* 'history' <3>:                         ARM Conventions.   (line  5550)
 * 'history' <4>:                         ncatted netCDF Attribute Editor.
-                                                            (line  8180)
+                                                            (line  8294)
 * 'history' <5>:                         Filters for 'ncks'.
-                                                            (line  9730)
+                                                            (line  9852)
 * 'hncgen':                              ncks netCDF Kitchen Sink.
-                                                            (line  9357)
-* HP:                                    Compatability.     (line   384)
-* HPSS:                                  Remote storage.    (line  1835)
-* 'hsi':                                 Remote storage.    (line  1835)
-* HTML:                                  Availability.      (line   310)
-* HTTP protocol:                         OPeNDAP.           (line  1909)
-* 'hyai':                                CF Conventions.    (line  5331)
-* 'hyam':                                CF Conventions.    (line  5331)
-* 'hybi':                                CF Conventions.    (line  5331)
-* 'hybm':                                CF Conventions.    (line  5331)
-* hybrid coordinate system:              Left hand casting. (line  5831)
+                                                            (line  9479)
+* HP:                                    Compatability.     (line   389)
+* HPSS:                                  Remote storage.    (line  1850)
+* 'hsi':                                 Remote storage.    (line  1850)
+* HTML:                                  Availability.      (line   315)
+* HTTP protocol:                         OPeNDAP.           (line  1924)
+* 'hyai':                                CF Conventions.    (line  5394)
+* 'hyam':                                CF Conventions.    (line  5394)
+* 'hybi':                                CF Conventions.    (line  5394)
+* 'hybm':                                CF Conventions.    (line  5394)
+* hybrid coordinate system:              Left hand casting. (line  5906)
 * hyperbolic arccosine function:         Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * hyperbolic arcsine function:           Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * hyperbolic arctangent function:        Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * hyperbolic cosine function:            Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * hyperbolic sine function:              Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * hyperbolic tangent:                    Intrinsic mathematical methods.
-                                                            (line  7929)
-* hyperslab:                             Hyperslabs.        (line  3098)
-* hyperslab <1>:                         Chunking.          (line  4075)
+                                                            (line  8043)
+* hyperslab:                             Hyperslabs.        (line  3142)
+* hyperslab <1>:                         Chunking.          (line  4119)
 * hyperslab <2>:                         nces netCDF Ensemble Statistics.
-                                                            (line  8751)
+                                                            (line  8873)
 * hyperslab <3>:                         ncecat netCDF Ensemble Concatenator.
-                                                            (line  8910)
+                                                            (line  9032)
 * hyperslab <4>:                         ncra netCDF Record Averager.
-                                                            (line 10252)
+                                                            (line 10375)
 * hyperslab <5>:                         ncrcat netCDF Record Concatenator.
-                                                            (line 10322)
+                                                            (line 10445)
 * hyperslab <6>:                         ncwa netCDF Weighted Averager.
-                                                            (line 10585)
+                                                            (line 10708)
 * hyperslabs:                            Arrays and hyperslabs.
-                                                            (line  5904)
-* I/O:                                   OPeNDAP.           (line  1981)
+                                                            (line  5979)
+* I/O:                                   OPeNDAP.           (line  1996)
 * I/O <1>:                               C and Fortran Index Conventions.
-                                                            (line  3065)
-* I/O <2>:                               Multislabs.        (line  3440)
-* I/O block size:                        Buffer sizes.      (line  4355)
+                                                            (line  3109)
+* I/O <2>:                               Multislabs.        (line  3484)
+* I/O block size:                        Buffer sizes.      (line  4418)
 * I18N:                                  Internationalization.
-                                                            (line  1496)
-* IBM:                                   Compatability.     (line   384)
-* 'icc':                                 Compatability.     (line   402)
-* ID Quoting:                            ID Quoting.        (line  8097)
-* IDL:                                   Philosophy.        (line   900)
+                                                            (line  1501)
+* IBM:                                   Compatability.     (line   389)
+* 'icc':                                 Compatability.     (line   407)
+* ID Quoting:                            ID Quoting.        (line  8211)
+* IDL:                                   Philosophy.        (line   905)
 * IEEE:                                  Automatic type conversion.
-                                                            (line  4869)
+                                                            (line  4932)
 * IEEE NaN:                              ncatted netCDF Attribute Editor.
-                                                            (line  8375)
-* if():                                  if statement.      (line  6123)
-* 'ilimit':                              Large Datasets.    (line  1311)
+                                                            (line  8489)
+* if():                                  if statement.      (line  6198)
+* 'ilimit':                              Large Datasets.    (line  1316)
 * illegal names:                         netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   728)
+                                                            (line   733)
 * implicit conversion:                   Promoting Single-precision to Double.
-                                                            (line  4899)
-* 'include':                             Include files.     (line  6585)
+                                                            (line  4962)
+* 'include':                             Include files.     (line  6699)
 * including files:                       Syntax of ncap2 statements.
-                                                            (line  5594)
+                                                            (line  5669)
 * index convention:                      C and Fortran Index Conventions.
-                                                            (line  3061)
+                                                            (line  3105)
 * indgen-equivalent:                     Arrays and hyperslabs.
-                                                            (line  5877)
+                                                            (line  5952)
 * inexact conversion:                    Intrinsic mathematical methods.
-                                                            (line  7996)
-* Info:                                  Availability.      (line   310)
+                                                            (line  8110)
+* Info:                                  Availability.      (line   315)
 * input files:                           Large Numbers of Files.
-                                                            (line  1247)
+                                                            (line  1252)
 * input files <1>:                       Specifying Input Files.
-                                                            (line  1662)
+                                                            (line  1670)
 * input files <2>:                       Specifying Output Files.
-                                                            (line  1765)
+                                                            (line  1778)
 * input files <3>:                       Specifying Output Files.
-                                                            (line  1782)
+                                                            (line  1795)
 * INPUT-PATH:                            Specifying Input Files.
-                                                            (line  1662)
-* INPUT-PATH <1>:                        Remote storage.    (line  1858)
-* installation:                          Compatability.     (line   384)
+                                                            (line  1670)
+* INPUT-PATH <1>:                        Remote storage.    (line  1873)
+* installation:                          Compatability.     (line   389)
 * installation <1>:                      Help Requests and Bug Reports.
-                                                            (line   872)
+                                                            (line   877)
 * int():                                 Methods and functions.
-                                                            (line  6418)
+                                                            (line  6493)
 * int64():                               Methods and functions.
-                                                            (line  6433)
+                                                            (line  6508)
 * integration:                           Normalization and Integration.
-                                                            (line 10676)
-* integrity:                             MD5 digests.       (line  4285)
-* Intel:                                 Compatability.     (line   384)
+                                                            (line 10799)
+* integrity:                             MD5 digests.       (line  4348)
+* Intel:                                 Compatability.     (line   389)
 * Internationalization:                  Internationalization.
-                                                            (line  1496)
-* interoperability:                      Packed data.       (line  4542)
+                                                            (line  1501)
+* interoperability:                      Packed data.       (line  4605)
 * interpolation:                         ncflint netCDF File Interpolator.
-                                                            (line  9032)
-* interpolation <1>:                     Regrid MODIS Data. (line 11842)
-* intersection:                          Subsetting Files.  (line  2371)
-* intersection <1>:                      Subsetting Files.  (line  2462)
-* introduction:                          Introduction.      (line   299)
+                                                            (line  9154)
+* interpolation <1>:                     Regrid MODIS Data. (line 12006)
+* intersection:                          Subsetting Files.  (line  2386)
+* intersection <1>:                      Subsetting Files.  (line  2492)
+* introduction:                          Introduction.      (line   304)
 * introduction <1>:                      How to Use This guide.
-                                                            (line   350)
-* 'invert_map':                          Sort methods.      (line  6600)
+                                                            (line   355)
+* 'invert_map':                          Sort methods.      (line  6714)
 * IPCC:                                  nces netCDF Ensemble Statistics.
-                                                            (line  8756)
+                                                            (line  8878)
 * IPCC <1>:                              Proposals for Institutional Funding.
-                                                            (line 10911)
-* irregular grids:                       Irregular grids.   (line  6845)
-* ISO:                                   Compatability.     (line   407)
-* James Gallagher:                       Contributors.      (line 10831)
-* Jim Edwards:                           Contributors.      (line 10873)
-* Joe Hamman:                            Contributors.      (line 10855)
-* John Caron:                            Contributors.      (line 10831)
-* Juliana Rew:                           Contributors.      (line 10875)
-* Karen Schuchardt:                      Contributors.      (line 10877)
-* Keith Lindsay:                         Contributors.      (line 10883)
+                                                            (line 11053)
+* irregular grids:                       Irregular grids.   (line  6959)
+* ISO:                                   Compatability.     (line   412)
+* James Gallagher:                       Contributors.      (line 10954)
+* Jim Edwards:                           Contributors.      (line 10996)
+* Joe Hamman:                            Contributors.      (line 10978)
+* John Caron:                            Contributors.      (line 10954)
+* Juliana Rew:                           Contributors.      (line 10998)
+* Karen Schuchardt:                      Contributors.      (line 11000)
+* Keith Lindsay:                         Contributors.      (line 11006)
 * kitchen sink:                          ncks netCDF Kitchen Sink.
-                                                            (line  9185)
-* Kyle Wilcox:                           Contributors.      (line 10897)
+                                                            (line  9307)
+* Kyle Wilcox:                           Contributors.      (line 11020)
 * L10N:                                  Internationalization.
-                                                            (line  1497)
-* large datasets:                        Large Datasets.    (line  1290)
-* large datasets <1>:                    OpenMP Threading.  (line  1551)
-* Large File Support:                    Large Datasets.    (line  1290)
+                                                            (line  1502)
+* large datasets:                        Large Datasets.    (line  1295)
+* large datasets <1>:                    OpenMP Threading.  (line  1559)
+* Large File Support:                    Large Datasets.    (line  1295)
 * Large File Support <1>:                Large File Support.
-                                                            (line  2337)
-* 'lat_bnds':                            CF Conventions.    (line  5331)
-* 'LD_LIBRARY_PATH':                     Libraries.         (line   560)
-* left hand casting:                     Memory for ncap2.  (line  1423)
-* left hand casting <1>:                 Left hand casting. (line  5831)
+                                                            (line  2352)
+* 'lat_bnds':                            CF Conventions.    (line  5394)
+* 'LD_LIBRARY_PATH':                     Libraries.         (line   565)
+* left hand casting:                     Memory for ncap2.  (line  1428)
+* left hand casting <1>:                 Left hand casting. (line  5906)
 * Legendre polynomial:                   GSL special functions.
-                                                            (line  7142)
-* Lempel-Ziv deflation:                  Deflation.         (line  4248)
-* Len Makin:                             Contributors.      (line 10871)
+                                                            (line  7256)
+* Lempel-Ziv deflation:                  Deflation.         (line  4311)
+* Len Makin:                             Contributors.      (line 10994)
 * lexer:                                 ncap2 netCDF Arithmetic Processor.
-                                                            (line  5514)
-* 'lfp':                                 Chunking.          (line  4135)
-* LFS:                                   Large Datasets.    (line  1290)
+                                                            (line  5589)
+* 'lfp':                                 Chunking.          (line  4189)
+* LFS:                                   Large Datasets.    (line  1295)
 * LFS <1>:                               Large File Support.
-                                                            (line  2337)
-* LHS:                                   Left hand casting. (line  5831)
-* 'libnco':                              Compatability.     (line   407)
-* libraries:                             Libraries.         (line   560)
+                                                            (line  2352)
+* LHS:                                   Left hand casting. (line  5906)
+* 'libnco':                              Compatability.     (line   412)
+* libraries:                             Libraries.         (line   565)
 * linkers:                               Specifying Output Files.
-                                                            (line  1787)
+                                                            (line  1800)
 * Linux:                                 Intrinsic mathematical methods.
-                                                            (line  8034)
-* LLVM:                                  Compatability.     (line   405)
+                                                            (line  8148)
+* LLVM:                                  Compatability.     (line   410)
 * LN:                                    Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * 'ln -s':                               ncbo netCDF Binary Operator.
-                                                            (line  8512)
+                                                            (line  8633)
 * 'ln -s' <1>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9947)
+                                                            (line 10070)
 * LOG:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * LOG10:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * logarithm, base 10:                    Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * logarithm, natural:                    Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * 'long double':                         Intrinsic mathematical methods.
-                                                            (line  8032)
+                                                            (line  8146)
 * long options:                          Command Line Options.
-                                                            (line  1602)
+                                                            (line  1610)
 * long options <1>:                      ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10121)
+                                                            (line 10244)
 * long-term average:                     Global Distribution of Long-term Average.
-                                                            (line 11284)
+                                                            (line 11448)
 * longitude:                             Wrapped Coordinates.
-                                                            (line  3534)
-* 'lon_bnds':                            CF Conventions.    (line  5331)
-* Lori Sentman:                          Contributors.      (line 10883)
+                                                            (line  3578)
+* 'lon_bnds':                            CF Conventions.    (line  5394)
+* Lori Sentman:                          Contributors.      (line 11006)
 * 'lrint()'.:                            Automatic type conversion.
-                                                            (line  4869)
+                                                            (line  4932)
 * 'lround()'.:                           Automatic type conversion.
-                                                            (line  4861)
-* Luk Claes:                             Contributors.      (line 10885)
-* Macintosh:                             Compatability.     (line   384)
-* 'Makefile':                            Compatability.     (line   412)
+                                                            (line  4924)
+* Luk Claes:                             Contributors.      (line 11008)
+* Macintosh:                             Compatability.     (line   389)
+* 'Makefile':                            Compatability.     (line   417)
 * 'Makefile' <1>:                        Windows Operating System.
-                                                            (line   498)
-* 'Makefile' <2>:                        OPeNDAP.           (line  1921)
-* malloc():                              Memory for ncap2.  (line  1432)
+                                                            (line   503)
+* 'Makefile' <2>:                        OPeNDAP.           (line  1936)
+* malloc():                              Memory for ncap2.  (line  1437)
 * mantissa:                              Promoting Single-precision to Double.
-                                                            (line  5128)
-* manual type conversion:                Type Conversion.   (line  4763)
-* 'map_dmn':                             Chunking.          (line  4135)
-* 'map_lfp':                             Chunking.          (line  4135)
-* 'map_prd':                             Chunking.          (line  4135)
-* 'map_rd1':                             Chunking.          (line  4135)
-* 'map_scl':                             Chunking.          (line  4135)
-* 'map_xst':                             Chunking.          (line  4135)
-* Mark Flanner:                          Contributors.      (line 10883)
-* Markus Liebig:                         Contributors.      (line 10883)
-* Martin Dix:                            Contributors.      (line 10883)
-* Martin Otte:                           Contributors.      (line 10901)
-* Martin Schmidt:                        Contributors.      (line 10883)
-* Martin Schultz:                        Group Path Editing.
-                                                            (line  2902)
-* mask:                                  Irregular grids.   (line  6845)
-* mask <1>:                              Examples ncap2.    (line  7849)
-* mask condition:                        Mask condition.    (line 10647)
+                                                            (line  5191)
+* manual type conversion:                Type Conversion.   (line  4826)
+* 'map_dmn':                             Chunking.          (line  4189)
+* 'map_lfp':                             Chunking.          (line  4189)
+* 'map_prd':                             Chunking.          (line  4189)
+* 'map_rd1':                             Chunking.          (line  4189)
+* 'map_scl':                             Chunking.          (line  4189)
+* 'map_xst':                             Chunking.          (line  4189)
+* Mark Flanner:                          Contributors.      (line 11006)
+* Markus Liebig:                         Contributors.      (line 11006)
+* Martin Dix:                            Contributors.      (line 11006)
+* Martin Otte:                           Contributors.      (line 11024)
+* Martin Schmidt:                        Contributors.      (line 11006)
+* Martin Schultz:                        Checking CF-compliance.
+                                                            (line  2952)
+* mask:                                  Irregular grids.   (line  6959)
+* mask <1>:                              Examples ncap2.    (line  7963)
+* mask condition:                        Mask condition.    (line 10770)
 * mask condition <1>:                    Normalization and Integration.
-                                                            (line 10778)
+                                                            (line 10901)
 * masked average:                        ncwa netCDF Weighted Averager.
-                                                            (line 10553)
-* Mass Store System:                     Remote storage.    (line  1797)
-* Matej Vela:                            Contributors.      (line 10885)
+                                                            (line 10676)
+* Mass Store System:                     Remote storage.    (line  1810)
+* Matej Vela:                            Contributors.      (line 11008)
 * mathematical functions:                Intrinsic mathematical methods.
-                                                            (line  7929)
-* Matlab:                                Philosophy.        (line   900)
-* 'max':                                 Operation Types.   (line  4610)
+                                                            (line  8043)
+* Matlab:                                Philosophy.        (line   905)
+* 'max':                                 Operation Types.   (line  4673)
 * max():                                 Methods and functions.
-                                                            (line  6326)
-* maximum:                               Operation Types.   (line  4610)
-* MD5 digest:                            MD5 digests.       (line  4285)
-* mean:                                  Operation Types.   (line  4610)
+                                                            (line  6401)
+* maximum:                               Operation Types.   (line  4673)
+* MD5 digest:                            MD5 digests.       (line  4348)
+* mean:                                  Operation Types.   (line  4673)
 * memory available:                      Memory Requirements.
-                                                            (line  1334)
-* memory available <1>:                  RAM disks.         (line  4386)
-* memory leaks:                          Memory for ncap2.  (line  1423)
+                                                            (line  1339)
+* memory available <1>:                  RAM disks.         (line  4449)
+* memory leaks:                          Memory for ncap2.  (line  1428)
 * memory requirements:                   Memory Requirements.
-                                                            (line  1334)
-* memory requirements <1>:               Subsetting Files.  (line  2495)
-* memory requirements <2>:               RAM disks.         (line  4386)
+                                                            (line  1339)
+* memory requirements <1>:               Subsetting Files.  (line  2525)
+* memory requirements <2>:               RAM disks.         (line  4449)
 * merging files:                         Appending Variables.
-                                                            (line  1016)
+                                                            (line  1021)
 * merging files <1>:                     ncks netCDF Kitchen Sink.
-                                                            (line  9234)
+                                                            (line  9356)
 * metadata:                              ncks netCDF Kitchen Sink.
-                                                            (line  9493)
+                                                            (line  9615)
 * metadata optimization:                 Metadata Optimization.
-                                                            (line  1504)
+                                                            (line  1512)
 * metadata, global:                      ncecat netCDF Ensemble Concatenator.
-                                                            (line  8957)
+                                                            (line  9079)
 * metadata, global <1>:                  ncks netCDF Kitchen Sink.
-                                                            (line  9450)
-* Michael Decker:                        Group Path Editing.
-                                                            (line  2902)
+                                                            (line  9572)
+* Michael Decker:                        Checking CF-compliance.
+                                                            (line  2952)
 * Michael Prather:                       Promoting Single-precision to Double.
-                                                            (line  5237)
-* Michael Schulz:                        Contributors.      (line 10883)
-* Microsoft:                             Compatability.     (line   384)
+                                                            (line  5300)
+* Michael Schulz:                        Contributors.      (line 11006)
+* Microsoft:                             Compatability.     (line   389)
 * Microsoft <1>:                         Windows Operating System.
-                                                            (line   483)
+                                                            (line   488)
 * Microsoft Visual Studio:               Windows Operating System.
-                                                            (line   483)
+                                                            (line   488)
 * Mike Folk:                             netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   597)
-* Mike Page:                             Contributors.      (line 10883)
-* 'min':                                 Operation Types.   (line  4610)
+                                                            (line   602)
+* Mike Page:                             Contributors.      (line 11006)
+* 'min':                                 Operation Types.   (line  4673)
 * min():                                 Methods and functions.
-                                                            (line  6328)
-* minimum:                               Operation Types.   (line  4610)
-* missing values:                        Missing Values.    (line  3939)
+                                                            (line  6403)
+* minimum:                               Operation Types.   (line  4673)
+* missing values:                        Missing Values.    (line  3983)
 * missing values <1>:                    ncatted netCDF Attribute Editor.
-                                                            (line  8185)
+                                                            (line  8299)
 * missing values <2>:                    ncflint netCDF File Interpolator.
-                                                            (line  9105)
+                                                            (line  9227)
 * missing values <3>:                    ncks netCDF Kitchen Sink.
-                                                            (line  9506)
+                                                            (line  9628)
 * missing values ncap2:                  Missing values ncap2.
-                                                            (line  6219)
-* 'missing_value':                       Missing Values.    (line  3939)
-* 'missing_value' <1>:                   Packed data.       (line  4473)
+                                                            (line  6294)
+* 'missing_value':                       Missing Values.    (line  3983)
+* 'missing_value' <1>:                   Packed data.       (line  4536)
 * 'missing_value' <2>:                   ncrename netCDF Renamer.
-                                                            (line 10516)
-* MKS units:                             UDUnits Support.   (line  3708)
-* MKS units <1>:                         UDUnits Support.   (line  3838)
-* MODIS:                                 Regrid MODIS Data. (line 11842)
+                                                            (line 10639)
+* MKS units:                             UDUnits Support.   (line  3752)
+* MKS units <1>:                         UDUnits Support.   (line  3882)
+* MODIS:                                 Regrid MODIS Data. (line 12006)
 * MODIS <1>:                             Add Coordinates to MODIS Data.
-                                                            (line 11980)
+                                                            (line 12144)
 * modulus:                               Intrinsic mathematical methods.
-                                                            (line  7926)
-* monotonic coordinates:                 Performance.       (line  1465)
+                                                            (line  8040)
+* monotonic coordinates:                 Performance.       (line  1470)
 * monthly average:                       Daily data in one file.
-                                                            (line 10941)
-* monthly average <1>:                   Monthly Cycle.     (line 11678)
+                                                            (line 11083)
+* monthly average <1>:                   Monthly Cycle.     (line 11842)
 * monthly data:                          Monthly data in one file.
-                                                            (line 10972)
+                                                            (line 11114)
 * monthly data <1>:                      One time point one file.
-                                                            (line 11004)
+                                                            (line 11146)
 * monthly data <2>:                      Multiple files with multiple time points.
-                                                            (line 11022)
-* move groups:                           Group Path Editing.
-                                                            (line  2765)
-* MRO:                                   Subcycle.          (line  3314)
-* MSA:                                   Multislabs.        (line  3390)
-* 'msk_*':                               CF Conventions.    (line  5331)
-* 'msrcp':                               Remote storage.    (line  1835)
+                                                            (line 11164)
+* move groups:                           Moving Groups.     (line  2802)
+* MRO:                                   Subcycle.          (line  3358)
+* MSA:                                   Multislabs.        (line  3434)
+* 'msk_*':                               CF Conventions.    (line  5394)
+* 'msrcp':                               Remote storage.    (line  1850)
 * msrcp:                                 Retaining Retrieved Files.
-                                                            (line  2066)
-* 'msread':                              Remote storage.    (line  1835)
-* MSS:                                   Remote storage.    (line  1797)
+                                                            (line  2081)
+* 'msread':                              Remote storage.    (line  1850)
+* MSS:                                   Remote storage.    (line  1810)
 * multi-file operators:                  Single and Multi-file Operators.
-                                                            (line  1352)
+                                                            (line  1357)
 * multi-file operators <1>:              Specifying Input Files.
-                                                            (line  1696)
+                                                            (line  1707)
 * multi-file operators <2>:              Specifying Output Files.
-                                                            (line  1777)
+                                                            (line  1790)
 * multi-file operators <3>:              nces netCDF Ensemble Statistics.
-                                                            (line  8786)
+                                                            (line  8908)
 * multi-file operators <4>:              ncecat netCDF Ensemble Concatenator.
-                                                            (line  8952)
+                                                            (line  9074)
 * multi-file operators <5>:              ncra netCDF Record Averager.
-                                                            (line 10245)
+                                                            (line 10368)
 * multi-file operators <6>:              ncrcat netCDF Record Concatenator.
-                                                            (line 10315)
-* multi-hyperslab:                       Multislabs.        (line  3390)
-* Multi-Record Operator:                 Subcycle.          (line  3314)
+                                                            (line 10438)
+* multi-hyperslab:                       Multislabs.        (line  3434)
+* Multi-Record Operator:                 Subcycle.          (line  3358)
 * multiplication:                        Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * multiplication <1>:                    ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * multiplication <2>:                    ncflint netCDF File Interpolator.
-                                                            (line  9159)
+                                                            (line  9281)
 * 'multiply':                            ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * multiplying data:                      ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * multiplying data <1>:                  ncflint netCDF File Interpolator.
-                                                            (line  9032)
-* multislab:                             Multislabs.        (line  3390)
-* 'mv':                                  Subsetting Files.  (line  2413)
-* 'MVS':                                 Compatability.     (line   402)
+                                                            (line  9154)
+* multislab:                             Multislabs.        (line  3434)
+* 'mv':                                  Subsetting Files.  (line  2443)
+* 'MVS':                                 Compatability.     (line   407)
 * MVS:                                   Windows Operating System.
-                                                            (line   483)
+                                                            (line   488)
 * naked characters:                      ncbo netCDF Binary Operator.
-                                                            (line  8497)
+                                                            (line  8618)
 * NaN:                                   ncatted netCDF Attribute Editor.
-                                                            (line  8375)
+                                                            (line  8489)
+* NARR (North American Regional Reanalysis)a: Where statement.
+                                                            (line  6620)
 * NASA:                                  Proposals for Institutional Funding.
-                                                            (line 10918)
+                                                            (line 11060)
 * NASA EOSDIS:                           Large Numbers of Files.
-                                                            (line  1194)
-* National Virtual Ocean Data System:    OPeNDAP.           (line  2011)
+                                                            (line  1199)
+* National Virtual Ocean Data System:    OPeNDAP.           (line  2026)
 * ncadd:                                 ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * ncap:                                  ncap2 netCDF Arithmetic Processor.
-                                                            (line  5514)
-* ncap2:                                 Compatability.     (line   446)
+                                                            (line  5589)
+* ncap2:                                 Compatability.     (line   451)
 * ncap2 <1>:                             ncap2 netCDF Arithmetic Processor.
-                                                            (line  5514)
-* 'ncap2':                               Memory for ncap2.  (line  1423)
-* 'ncap2' <1>:                           OpenMP Threading.  (line  1551)
+                                                            (line  5589)
+* 'ncap2':                               Memory for ncap2.  (line  1428)
+* 'ncap2' <1>:                           OpenMP Threading.  (line  1559)
 * 'ncap2' <2>:                           Manual type conversion.
-                                                            (line  5242)
+                                                            (line  5305)
 * 'ncap2' <3>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9879)
+                                                            (line 10002)
 * NCAR:                                  Climate Model Paradigm.
-                                                            (line   917)
-* NCAR MSS:                              Remote storage.    (line  1797)
-* ncatted:                               Missing Values.    (line  3966)
+                                                            (line   922)
+* NCAR MSS:                              Remote storage.    (line  1810)
+* ncatted:                               Missing Values.    (line  4010)
 * ncatted <1>:                           ncatted netCDF Attribute Editor.
-                                                            (line  8162)
-* 'ncatted':                             Subsetting Files.  (line  2514)
-* 'ncatted' <1>:                         Missing Values.    (line  3991)
-* 'ncatted' <2>:                         History Attribute. (line  5290)
+                                                            (line  8276)
+* 'ncatted':                             Subsetting Files.  (line  2544)
+* 'ncatted' <1>:                         Missing Values.    (line  4035)
+* 'ncatted' <2>:                         History Attribute. (line  5353)
 * 'ncattget':                            ncatted netCDF Attribute Editor.
-                                                            (line  8169)
+                                                            (line  8283)
 * 'ncattget' <1>:                        Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * 'ncavg':                               Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * ncbo:                                  ncbo netCDF Binary Operator.
-                                                            (line  8450)
-* 'ncbo':                                Missing Values.    (line  4014)
+                                                            (line  8571)
+* 'ncbo':                                Missing Values.    (line  4058)
 * ncdiff:                                ncbo netCDF Binary Operator.
-                                                            (line  8450)
-* ncdismember:                           Group Path Editing.
-                                                            (line  2799)
-* ncdismember <1>:                       Group Path Editing.
-                                                            (line  2902)
+                                                            (line  8571)
+* ncdismember:                           Dismembering Files.
+                                                            (line  2845)
+* ncdismember <1>:                       Checking CF-compliance.
+                                                            (line  2952)
 * ncdivide:                              ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * 'ncdmnsz':                             Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * 'ncdump':                              Determining File Format.
-                                                            (line  2206)
+                                                            (line  2221)
 * 'ncdump' <1>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9357)
+                                                            (line  9479)
 * 'ncdump' <2>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9493)
+                                                            (line  9615)
 * 'ncdump' <3>:                          ncks netCDF Kitchen Sink.
-                                                            (line  9553)
+                                                            (line  9675)
 * ncecat:                                ncecat netCDF Ensemble Concatenator.
-                                                            (line  8872)
-* 'ncecat':                              Concatenation.     (line  1103)
+                                                            (line  8994)
+* 'ncecat':                              Concatenation.     (line  1108)
 * nces:                                  nces netCDF Ensemble Statistics.
-                                                            (line  8717)
-* 'nces':                                Averaging.         (line  1161)
-* 'nces' <1>:                            Missing Values.    (line  4014)
+                                                            (line  8839)
+* 'nces':                                Averaging.         (line  1166)
+* 'nces' <1>:                            Missing Values.    (line  4058)
 * 'ncextr':                              ncks netCDF Kitchen Sink.
-                                                            (line  9198)
+                                                            (line  9320)
 * ncflint:                               ncflint netCDF File Interpolator.
-                                                            (line  9032)
-* 'ncflint':                             Interpolating.     (line  1183)
-* 'ncflint' <1>:                         Missing Values.    (line  4014)
+                                                            (line  9154)
+* 'ncflint':                             Interpolating.     (line  1188)
+* 'ncflint' <1>:                         Missing Values.    (line  4058)
 * 'ncgen':                               ncks netCDF Kitchen Sink.
-                                                            (line  9357)
+                                                            (line  9479)
 * 'ncgen-hdf':                           ncks netCDF Kitchen Sink.
-                                                            (line  9357)
-* ncks:                                  Deflation.         (line  4279)
-* ncks <1>:                              Examples ncap2.    (line  7904)
+                                                            (line  9479)
+* ncks:                                  Deflation.         (line  4342)
+* ncks <1>:                              Examples ncap2.    (line  8018)
 * ncks <2>:                              ncks netCDF Kitchen Sink.
-                                                            (line  9185)
+                                                            (line  9307)
 * 'ncks':                                Determining File Format.
-                                                            (line  2175)
-* NCL:                                   Philosophy.        (line   900)
+                                                            (line  2190)
+* NCL:                                   Philosophy.        (line   905)
 * NCL <1>:                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10075)
+                                                            (line 10198)
 * 'nclist':                              Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * 'ncl_convert2nc':                      netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   714)
+                                                            (line   719)
 * 'ncl_convert2nc' <1>:                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10075)
+                                                            (line 10198)
 * 'ncmax':                               Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * 'ncmdn':                               Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * 'ncmin':                               Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * NcML:                                  ncks netCDF Kitchen Sink.
-                                                            (line  9553)
+                                                            (line  9675)
 * ncmult:                                ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * ncmultiply:                            ncbo netCDF Binary Operator.
-                                                            (line  8450)
-* NCO availability:                      Availability.      (line   302)
-* NCO homepage:                          Availability.      (line   326)
+                                                            (line  8571)
+* NCO availability:                      Availability.      (line   307)
+* NCO homepage:                          Availability.      (line   331)
 * nco script file:                       Annual Average over Regions.
-                                                            (line 11387)
-* 'NCO User Guide':                      Availability.      (line   310)
+                                                            (line 11551)
+* 'NCO User Guide':                      Availability.      (line   315)
 * 'nco.config.log.${GNU_TRP}.foo':       Help Requests and Bug Reports.
-                                                            (line   872)
+                                                            (line   877)
 * 'nco.configure.${GNU_TRP}.foo':        Help Requests and Bug Reports.
-                                                            (line   872)
+                                                            (line   877)
 * 'nco.make.${GNU_TRP}.foo':             Help Requests and Bug Reports.
-                                                            (line   872)
+                                                            (line   877)
 * 'nco_input_file_list':                 Large Numbers of Files.
-                                                            (line  1221)
+                                                            (line  1226)
 * 'nco_input_file_list' <1>:             File List Attributes.
-                                                            (line  5300)
+                                                            (line  5363)
 * 'nco_input_file_number':               Large Numbers of Files.
-                                                            (line  1221)
+                                                            (line  1226)
 * 'nco_input_file_number' <1>:           File List Attributes.
-                                                            (line  5300)
-* 'nco_openmp_thread_number':            OpenMP Threading.  (line  1525)
+                                                            (line  5363)
+* 'nco_openmp_thread_number':            OpenMP Threading.  (line  1533)
 * ncpack:                                ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
-* ncpdq:                                 Chunking.          (line  4075)
+                                                            (line  9984)
+* ncpdq:                                 Chunking.          (line  4119)
 * ncpdq <1>:                             ncecat netCDF Ensemble Concatenator.
-                                                            (line  8979)
+                                                            (line  9101)
 * ncpdq <2>:                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * ncpdq <3>:                             ncrcat netCDF Record Concatenator.
-                                                            (line 10327)
-* 'ncpdq':                               Concatenation.     (line  1136)
-* 'ncpdq' <1>:                           OpenMP Threading.  (line  1551)
-* ncra:                                  Examples ncap2.    (line  7904)
+                                                            (line 10450)
+* 'ncpdq':                               Concatenation.     (line  1141)
+* 'ncpdq' <1>:                           OpenMP Threading.  (line  1559)
+* ncra:                                  Examples ncap2.    (line  8018)
 * ncra <1>:                              ncra netCDF Record Averager.
-                                                            (line 10228)
-* 'ncra':                                Averaging.         (line  1161)
-* 'ncra' <1>:                            Missing Values.    (line  4014)
+                                                            (line 10351)
+* 'ncra':                                Averaging.         (line  1166)
+* 'ncra' <1>:                            Missing Values.    (line  4058)
 * ncrcat:                                ncrcat netCDF Record Concatenator.
-                                                            (line 10299)
-* 'ncrcat':                              Concatenation.     (line  1103)
-* 'ncrcat' <1>:                          OpenMP Threading.  (line  1551)
+                                                            (line 10422)
+* 'ncrcat':                              Concatenation.     (line  1108)
+* 'ncrcat' <1>:                          OpenMP Threading.  (line  1559)
 * 'ncrecsz':                             Filters for 'ncks'.
-                                                            (line  9637)
-* ncrename:                              Missing Values.    (line  3966)
+                                                            (line  9759)
+* ncrename:                              Missing Values.    (line  4010)
 * ncrename <1>:                          ncrename netCDF Renamer.
-                                                            (line 10381)
+                                                            (line 10504)
 * 'ncrng':                               Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * NCSA:                                  netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   611)
+                                                            (line   616)
 * ncsub:                                 ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * ncsubtract:                            ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * 'ncunits':                             Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * ncunpack:                              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
-* ncwa:                                  Examples ncap2.    (line  7904)
+                                                            (line  9984)
+* ncwa:                                  Examples ncap2.    (line  8018)
 * ncwa <1>:                              ncwa netCDF Weighted Averager.
-                                                            (line 10553)
-* 'ncwa':                                Averaging.         (line  1161)
-* 'ncwa' <1>:                            OpenMP Threading.  (line  1551)
-* 'ncwa' <2>:                            Missing Values.    (line  4014)
+                                                            (line 10676)
+* 'ncwa':                                Averaging.         (line  1166)
+* 'ncwa' <1>:                            OpenMP Threading.  (line  1559)
+* 'ncwa' <2>:                            Missing Values.    (line  4058)
 * 'NC_BYTE':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
-* 'NC_CHAR':                             Hyperslabs.        (line  3169)
+                                                            (line 10082)
+* 'NC_CHAR':                             Hyperslabs.        (line  3213)
 * 'NC_CHAR' <1>:                         ncbo netCDF Binary Operator.
-                                                            (line  8571)
+                                                            (line  8693)
 * 'NC_CHAR' <2>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
-* 'NC_DISKLESS':                         RAM disks.         (line  4386)
+                                                            (line 10082)
+* 'NC_DISKLESS':                         RAM disks.         (line  4449)
 * 'NC_DOUBLE':                           Intrinsic mathematical methods.
-                                                            (line  8032)
+                                                            (line  8146)
 * 'NC_DOUBLE' <1>:                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_FLOAT':                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_FORMAT_DAP2':                      Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * 'NC_FORMAT_DAP4':                      Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * 'NC_FORMAT_NC3':                       Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * 'NC_FORMAT_NC_HDF4':                   Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * 'NC_FORMAT_NC_HDF5':                   Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * 'NC_FORMAT_PNETCDF':                   Determining File Format.
-                                                            (line  2184)
+                                                            (line  2199)
 * 'NC_INT':                              ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_INT64':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   636)
+                                                            (line   641)
 * 'NC_INT64' <1>:                        ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_SHORT':                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_UBYTE':                            netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   636)
+                                                            (line   641)
 * 'NC_UBYTE' <1>:                        ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_UINT':                             netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   636)
+                                                            (line   641)
 * 'NC_UINT' <1>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_UINT64':                           netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   636)
+                                                            (line   641)
 * 'NC_UINT64' <1>:                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'NC_USHORT':                           netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   636)
+                                                            (line   641)
 * 'NC_USHORT' <1>:                       ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
+                                                            (line 10082)
 * 'nc__enddef()':                        Metadata Optimization.
-                                                            (line  1504)
+                                                            (line  1512)
 * ndims():                               Methods and functions.
-                                                            (line  6362)
+                                                            (line  6437)
 * NEARBYINT:                             Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * nearest integer function (exact):      Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * nearest integer function (inexact):    Intrinsic mathematical methods.
-                                                            (line  7929)
-* NEC:                                   Compatability.     (line   384)
+                                                            (line  8043)
+* NEC:                                   Compatability.     (line   389)
 * Neil Davis:                            Automatic type conversion.
-                                                            (line  4855)
+                                                            (line  4918)
 * nesting:                               Syntax of ncap2 statements.
-                                                            (line  5594)
-* netCDF:                                Availability.      (line   330)
+                                                            (line  5669)
+* netCDF:                                Availability.      (line   335)
 * netCDF2:                               netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   585)
+                                                            (line   590)
 * netCDF2 <1>:                           File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * 'NETCDF2_ONLY':                        netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   606)
+                                                            (line   611)
 * netCDF3:                               netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   585)
+                                                            (line   590)
 * netCDF3 <1>:                           File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * netCDF3 classic file format:           Determining File Format.
-                                                            (line  2175)
+                                                            (line  2190)
 * netCDF4:                               netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   611)
+                                                            (line   616)
 * netCDF4 <1>:                           File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * netCDF4 <2>:                           Multiple Record Dimensions.
-                                                            (line  3901)
+                                                            (line  3945)
 * netCDF4 classic file format:           Determining File Format.
-                                                            (line  2175)
+                                                            (line  2190)
 * netCDF4 file format:                   Determining File Format.
-                                                            (line  2175)
+                                                            (line  2190)
 * 'NETCDF4' files:                       File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * 'NETCDF4_CLASSIC' files:               File Formats and Conversion.
-                                                            (line  2089)
+                                                            (line  2104)
 * 'NETCDF4_ROOT':                        netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   751)
-* Nick Bower:                            Contributors.      (line 10885)
+                                                            (line   756)
+* Nick Bower:                            Contributors.      (line 11008)
 * 'NINTAP':                              Specifying Input Files.
-                                                            (line  1662)
+                                                            (line  1670)
 * 'NINTAP' <1>:                          ncra netCDF Record Averager.
-                                                            (line 10268)
+                                                            (line 10391)
 * 'NINTAP' <2>:                          ncrcat netCDF Record Concatenator.
-                                                            (line 10346)
-* non-coordinate grid properties:        CF Conventions.    (line  5362)
-* non-rectangular grids:                 Irregular grids.   (line  6845)
-* non-standard grids:                    Irregular grids.   (line  6845)
+                                                            (line 10469)
+* non-coordinate grid properties:        CF Conventions.    (line  5425)
+* non-rectangular grids:                 Irregular grids.   (line  6959)
+* non-standard grids:                    Irregular grids.   (line  6959)
 * normalization:                         Normalization and Integration.
-                                                            (line 10676)
+                                                            (line 10799)
+* North American Regional Reanalysis (NARR): Where statement.
+                                                            (line  6620)
 * Not-a-Number:                          ncatted netCDF Attribute Editor.
-                                                            (line  8375)
+                                                            (line  8489)
 * 'NO_NETCDF_2':                         netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   595)
+                                                            (line   600)
 * NRA:                                   Proposals for Institutional Funding.
-                                                            (line 10918)
-* 'nrnet':                               Remote storage.    (line  1835)
+                                                            (line 11060)
+* 'nrnet':                               Remote storage.    (line  1850)
 * NSF:                                   Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * NSF <1>:                               Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * NT (Microsoft operating system):       Windows Operating System.
-                                                            (line   483)
+                                                            (line   488)
 * NUL:                                   ncatted netCDF Attribute Editor.
-                                                            (line  8353)
+                                                            (line  8467)
 * 'NUL':                                 ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9997)
+                                                            (line 10120)
 * NUL-termination:                       ncatted netCDF Attribute Editor.
-                                                            (line  8353)
+                                                            (line  8467)
 * null operation:                        ncflint netCDF File Interpolator.
-                                                            (line  9156)
-* number literals 'ncap2':               Number literals.   (line  6073)
+                                                            (line  9278)
+* number literals 'ncap2':               Number literals.   (line  6148)
 * 'number_miss()':                       Missing values ncap2.
-                                                            (line  6269)
+                                                            (line  6344)
 * 'numerator':                           Normalization and Integration.
-                                                            (line 10676)
-* NVODS:                                 OPeNDAP.           (line  2011)
+                                                            (line 10799)
+* NVODS:                                 OPeNDAP.           (line  2026)
 * 'nxt_lsr':                             ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9959)
-* oceanography:                          OPeNDAP.           (line  1909)
+                                                            (line 10082)
+* oceanography:                          OPeNDAP.           (line  1924)
 * octal dump:                            Determining File Format.
-                                                            (line  2218)
+                                                            (line  2233)
 * 'od':                                  Determining File Format.
-                                                            (line  2218)
-* 'OMP_NUM_THREADS':                     OpenMP Threading.  (line  1551)
-* on-line documentation:                 Availability.      (line   310)
-* open source:                           Foreword.          (line   222)
-* open source <1>:                       OPeNDAP.           (line  2011)
+                                                            (line  2233)
+* 'OMP_NUM_THREADS':                     OpenMP Threading.  (line  1559)
+* on-line documentation:                 Availability.      (line   315)
+* open source:                           Foreword.          (line   227)
+* open source <1>:                       OPeNDAP.           (line  2026)
 * Open-source Project for a Network Data Access Protocol: OPeNDAP.
-                                                            (line  1909)
-* OPeNDAP.:                              OPeNDAP.           (line  1909)
+                                                            (line  1924)
+* OPeNDAP.:                              OPeNDAP.           (line  1924)
 * OpenMP:                                Memory Requirements.
-                                                            (line  1341)
+                                                            (line  1346)
 * OpenMP <1>:                            Single and Multi-file Operators.
-                                                            (line  1416)
-* OpenMP <2>:                            OpenMP Threading.  (line  1525)
-* operation types:                       Operation Types.   (line  4610)
+                                                            (line  1421)
+* OpenMP <2>:                            OpenMP Threading.  (line  1533)
+* operation types:                       Operation Types.   (line  4673)
 * operation types <1>:                   ncra netCDF Record Averager.
-                                                            (line 10261)
+                                                            (line 10384)
 * operation types <2>:                   ncwa netCDF Weighted Averager.
-                                                            (line 10629)
-* operator speed:                        Libraries.         (line   561)
+                                                            (line 10752)
+* operator speed:                        Libraries.         (line   566)
 * operator speed <1>:                    Temporary Output Files.
-                                                            (line   943)
-* operator speed <2>:                    Performance.       (line  1462)
+                                                            (line   948)
+* operator speed <2>:                    Performance.       (line  1467)
 * operator speed <3>:                    Metadata Optimization.
-                                                            (line  1504)
-* operator speed <4>:                    Missing Values.    (line  3998)
+                                                            (line  1512)
+* operator speed <4>:                    Missing Values.    (line  4042)
 * operator speed <5>:                    ncrename netCDF Renamer.
-                                                            (line 10427)
-* operators:                             Summary.           (line   285)
+                                                            (line 10550)
+* operators:                             Summary.           (line   290)
 * OptIPuter:                             Proposals for Institutional Funding.
-                                                            (line 10911)
-* Orion Powlawski:                       Contributors.      (line 10887)
-* 'ORO':                                 CF Conventions.    (line  5331)
+                                                            (line 11053)
+* Orion Powlawski:                       Contributors.      (line 11010)
+* 'ORO':                                 CF Conventions.    (line  5394)
 * 'ORO' <1>:                             Normalization and Integration.
-                                                            (line 10750)
+                                                            (line 10873)
 * orphan dimensions:                     ncks netCDF Kitchen Sink.
-                                                            (line  9534)
-* OS:                                    Compatability.     (line   384)
+                                                            (line  9656)
+* OS:                                    Compatability.     (line   389)
 * output file:                           Large Numbers of Files.
-                                                            (line  1247)
+                                                            (line  1252)
 * output file <1>:                       Specifying Output Files.
-                                                            (line  1765)
-* OUTPUT-PATH:                           Remote storage.    (line  1858)
-* overview:                              Performance.       (line  1447)
+                                                            (line  1778)
+* OUTPUT-PATH:                           Remote storage.    (line  1873)
+* overview:                              Performance.       (line  1452)
 * overwriting files:                     Temporary Output Files.
-                                                            (line   991)
-* overwriting files <1>:                 Batch Mode.        (line  5252)
+                                                            (line   996)
+* overwriting files <1>:                 Batch Mode.        (line  5315)
 * pack():                                Methods and functions.
-                                                            (line  6344)
-* 'pack(x)':                             Packed data.       (line  4473)
-* packing:                               OPeNDAP.           (line  1973)
-* packing <1>:                           Chunking.          (line  4075)
-* packing <2>:                           Packed data.       (line  4473)
+                                                            (line  6419)
+* 'pack(x)':                             Packed data.       (line  4536)
+* packing:                               OPeNDAP.           (line  1988)
+* packing <1>:                           Chunking.          (line  4119)
+* packing <2>:                           Packed data.       (line  4536)
 * packing <3>:                           ncecat netCDF Ensemble Concatenator.
-                                                            (line  8979)
+                                                            (line  9101)
 * packing <4>:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * packing <5>:                           ncrcat netCDF Record Concatenator.
-                                                            (line 10327)
+                                                            (line 10450)
 * packing map:                           ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9953)
+                                                            (line 10076)
 * packing policy:                        ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9878)
+                                                            (line 10001)
 * pack_byte():                           Methods and functions.
-                                                            (line  6347)
+                                                            (line  6422)
 * pack_int():                            Methods and functions.
-                                                            (line  6351)
+                                                            (line  6426)
 * pack_short():                          Methods and functions.
-                                                            (line  6349)
-* papers:                                Performance.       (line  1447)
-* 'parallel':                            Parallel.          (line 12074)
-* parallelism:                           OpenMP Threading.  (line  1525)
+                                                            (line  6424)
+* papers:                                Performance.       (line  1452)
+* 'parallel':                            Parallel.          (line 12238)
+* parallelism:                           OpenMP Threading.  (line  1533)
 * parallelism <1>:                       Proposals for Institutional Funding.
-                                                            (line 10913)
+                                                            (line 11055)
 * parser:                                ncap2 netCDF Arithmetic Processor.
-                                                            (line  5514)
+                                                            (line  5589)
 * pasting variables:                     Appending Variables.
-                                                            (line  1016)
-* 'pathcc':                              Compatability.     (line   402)
-* 'pathCC':                              Compatability.     (line   402)
-* PathScale:                             Compatability.     (line   384)
-* Patrice Dumas:                         Contributors.      (line 10887)
-* Patrick Kursawe:                       Contributors.      (line 10889)
+                                                            (line  1021)
+* 'pathcc':                              Compatability.     (line   407)
+* 'pathCC':                              Compatability.     (line   407)
+* PathScale:                             Compatability.     (line   389)
+* Patrice Dumas:                         Contributors.      (line 11010)
+* Patrick Kursawe:                       Contributors.      (line 11012)
 * pattern matching:                      Large Numbers of Files.
-                                                            (line  1229)
-* pattern matching <1>:                  Subsetting Files.  (line  2514)
+                                                            (line  1234)
+* pattern matching <1>:                  Subsetting Files.  (line  2544)
 * pattern matching <2>:                  ncatted netCDF Attribute Editor.
-                                                            (line  8205)
+                                                            (line  8319)
 * pattern matching <3>:                  ncatted netCDF Attribute Editor.
-                                                            (line  8412)
-* PayPal:                                Contributing.      (line 10812)
+                                                            (line  8526)
+* PayPal:                                Contributing.      (line 10935)
 * PCK_MAP:                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9953)
+                                                            (line 10076)
 * PCK_PLC:                               ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9886)
+                                                            (line 10009)
 * peak memory usage:                     Memory Requirements.
-                                                            (line  1334)
-* peak memory usage <1>:                 RAM disks.         (line  4386)
-* Pedro Vicente:                         Contributors.      (line 10861)
-* performance:                           Libraries.         (line   561)
+                                                            (line  1339)
+* peak memory usage <1>:                 RAM disks.         (line  4449)
+* Pedro Vicente:                         Contributors.      (line 10984)
+* performance:                           Libraries.         (line   566)
 * performance <1>:                       Temporary Output Files.
-                                                            (line   943)
-* performance <2>:                       Performance.       (line  1453)
-* performance <3>:                       Performance.       (line  1462)
+                                                            (line   948)
+* performance <2>:                       Performance.       (line  1458)
+* performance <3>:                       Performance.       (line  1467)
 * performance <4>:                       Metadata Optimization.
-                                                            (line  1504)
-* performance <5>:                       Missing Values.    (line  3998)
+                                                            (line  1512)
+* performance <5>:                       Missing Values.    (line  4042)
 * performance <6>:                       ncrename netCDF Renamer.
-                                                            (line 10427)
-* Perl:                                  Philosophy.        (line   900)
+                                                            (line 10550)
+* Perl:                                  Philosophy.        (line   905)
 * Perl <1>:                              Large Numbers of Files.
-                                                            (line  1260)
+                                                            (line  1265)
 * Perl <2>:                              ncatted netCDF Attribute Editor.
-                                                            (line  8327)
+                                                            (line  8441)
 * permute dimensions:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * permute():                             Arrays and hyperslabs.
-                                                            (line  5996)
-* Peter Campbell:                        Contributors.      (line 10883)
-* 'pgcc':                                Compatability.     (line   402)
-* 'pgCC':                                Compatability.     (line   402)
-* PGI:                                   Compatability.     (line   384)
-* philosophy:                            Philosophy.        (line   891)
+                                                            (line  6071)
+* Peter Campbell:                        Contributors.      (line 11006)
+* 'pgcc':                                Compatability.     (line   407)
+* 'pgCC':                                Compatability.     (line   407)
+* PGI:                                   Compatability.     (line   389)
+* philosophy:                            Philosophy.        (line   896)
 * pipes:                                 Large Numbers of Files.
-                                                            (line  1242)
-* 'plc_all':                             Chunking.          (line  4085)
-* 'plc_g2d':                             Chunking.          (line  4085)
-* 'plc_g3d':                             Chunking.          (line  4085)
-* 'plc_xpl':                             Chunking.          (line  4085)
-* 'plc_xst':                             Chunking.          (line  4085)
-* portability:                           Compatability.     (line   384)
+                                                            (line  1247)
+* 'plc_all':                             Chunking.          (line  4130)
+* 'plc_g2d':                             Chunking.          (line  4130)
+* 'plc_g3d':                             Chunking.          (line  4130)
+* 'plc_r1d':                             Chunking.          (line  4130)
+* 'plc_xpl':                             Chunking.          (line  4130)
+* 'plc_xst':                             Chunking.          (line  4130)
+* portability:                           Compatability.     (line   389)
 * positional arguments:                  Specifying Output Files.
-                                                            (line  1765)
+                                                            (line  1778)
 * POSIX:                                 Command Line Options.
-                                                            (line  1590)
-* POSIX <1>:                             Subsetting Files.  (line  2532)
+                                                            (line  1598)
+* POSIX <1>:                             Subsetting Files.  (line  2562)
 * POW:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * power:                                 Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * power function:                        Intrinsic mathematical methods.
-                                                            (line  7929)
-* 'prd':                                 Chunking.          (line  4135)
+                                                            (line  8043)
+* 'prd':                                 Chunking.          (line  4189)
 * precision:                             Intrinsic mathematical methods.
-                                                            (line  8032)
+                                                            (line  8146)
 * preprocessor tokens:                   Windows Operating System.
-                                                            (line   498)
-* presentations:                         Availability.      (line   320)
-* print() 'ncap2':                       print statement.   (line  6190)
-* 'printf':                              Compatability.     (line   415)
+                                                            (line   503)
+* presentations:                         Availability.      (line   325)
+* print() 'ncap2':                       print statement.   (line  6265)
+* 'printf':                              Compatability.     (line   420)
 * 'printf()':                            ncatted netCDF Attribute Editor.
-                                                            (line  8329)
+                                                            (line  8443)
 * 'printf()' <1>:                        ncks netCDF Kitchen Sink.
-                                                            (line  9545)
+                                                            (line  9667)
 * 'printf()' <2>:                        Filters for 'ncks'.
-                                                            (line  9765)
+                                                            (line  9887)
 * printing files contents:               ncks netCDF Kitchen Sink.
-                                                            (line  9185)
+                                                            (line  9307)
 * printing variables:                    ncks netCDF Kitchen Sink.
-                                                            (line  9185)
+                                                            (line  9307)
 * Processor:                             ncra netCDF Record Averager.
-                                                            (line 10268)
+                                                            (line 10391)
 * Processor <1>:                         ncrcat netCDF Record Concatenator.
-                                                            (line 10346)
+                                                            (line 10469)
 * Processor, CCM:                        Specifying Input Files.
-                                                            (line  1662)
-* promotion:                             Type Conversion.   (line  4763)
+                                                            (line  1670)
+* promotion:                             Type Conversion.   (line  4826)
 * promotion <1>:                         Promoting Single-precision to Double.
-                                                            (line  4899)
+                                                            (line  4962)
 * promotion <2>:                         Intrinsic mathematical methods.
-                                                            (line  7999)
+                                                            (line  8113)
 * proposals:                             Proposals for Institutional Funding.
-                                                            (line 10911)
-* pseudonym:                             Symbolic Links.    (line   534)
-* publications:                          Availability.      (line   320)
-* QLogic:                                Compatability.     (line   384)
+                                                            (line 11053)
+* pseudonym:                             Symbolic Links.    (line   539)
+* publications:                          Availability.      (line   325)
+* QLogic:                                Compatability.     (line   389)
 * Qt:                                    Windows Operating System.
-                                                            (line   490)
+                                                            (line   495)
 * quadruple-precision:                   Intrinsic mathematical methods.
-                                                            (line  8032)
-* Quick Start:                           Quick Start.       (line 10931)
+                                                            (line  8146)
+* Quick Start:                           Quick Start.       (line 11073)
 * quiet:                                 ncks netCDF Kitchen Sink.
-                                                            (line  9526)
-* quotes:                                Subsetting Files.  (line  2589)
-* quotes <1>:                            Examples ncap2.    (line  7881)
+                                                            (line  9648)
+* quotes:                                Subsetting Files.  (line  2619)
+* quotes <1>:                            Examples ncap2.    (line  7995)
 * quotes <2>:                            ncbo netCDF Binary Operator.
-                                                            (line  8498)
+                                                            (line  8619)
 * quotes <3>:                            ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10121)
+                                                            (line 10244)
+* 'r1d':                                 Chunking.          (line  4130)
 * RAG:                                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  8896)
+                                                            (line  9018)
 * RAM:                                   Memory Requirements.
-                                                            (line  1334)
-* RAM <1>:                               RAM disks.         (line  4386)
+                                                            (line  1339)
+* RAM <1>:                               RAM disks.         (line  4449)
 * RAM disks:                             Temporary Output Files.
-                                                            (line   949)
-* RAM disks <1>:                         RAM disks.         (line  4386)
+                                                            (line   954)
+* RAM disks <1>:                         RAM disks.         (line  4449)
 * RAM files:                             Temporary Output Files.
-                                                            (line   949)
-* RAM files <1>:                         RAM disks.         (line  4386)
-* RAM variables:                         RAM disks.         (line  4426)
+                                                            (line   954)
+* RAM files <1>:                         RAM disks.         (line  4449)
+* RAM variables:                         RAM disks.         (line  4489)
 * RAM variables <1>:                     Methods and functions.
-                                                            (line  6450)
-* ram_delete():                          RAM variables.     (line  6462)
-* ram_write():                           RAM variables.     (line  6462)
+                                                            (line  6525)
+* ram_delete():                          RAM variables.     (line  6537)
+* ram_write():                           RAM variables.     (line  6537)
 * random walk:                           Promoting Single-precision to Double.
-                                                            (line  5116)
-* rank:                                  Expressions.       (line  5635)
+                                                            (line  5179)
+* rank:                                  Expressions.       (line  5710)
 * rank <1>:                              ncbo netCDF Binary Operator.
-                                                            (line  8539)
+                                                            (line  8660)
 * rank <2>:                              ncbo netCDF Binary Operator.
-                                                            (line  8552)
+                                                            (line  8673)
 * rank <3>:                              ncbo netCDF Binary Operator.
-                                                            (line  8602)
+                                                            (line  8724)
 * rank <4>:                              ncwa netCDF Weighted Averager.
-                                                            (line 10594)
+                                                            (line 10717)
 * 'rcp':                                 Windows Operating System.
-                                                            (line   504)
-* 'rcp' <1>:                             Remote storage.    (line  1797)
-* RCS:                                   Operator Version.  (line  5482)
-* 'rd1':                                 Chunking.          (line  4135)
+                                                            (line   509)
+* 'rcp' <1>:                             Remote storage.    (line  1810)
+* RCS:                                   Operator Version.  (line  5557)
+* 'rd1':                                 Chunking.          (line  4189)
 * re-dimension:                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * re-order dimensions:                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * record aggregation:                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  8896)
-* record append:                         Record Appending.  (line  3263)
+                                                            (line  9018)
+* record append:                         Record Appending.  (line  3307)
 * record average:                        ncra netCDF Record Averager.
-                                                            (line 10228)
+                                                            (line 10351)
 * record concatenation:                  ncrcat netCDF Record Concatenator.
-                                                            (line 10299)
+                                                            (line 10422)
 * record dimension:                      Appending Variables.
-                                                            (line  1019)
+                                                            (line  1024)
 * record dimension <1>:                  C and Fortran Index Conventions.
-                                                            (line  3079)
-* record dimension <2>:                  Chunking.          (line  4232)
+                                                            (line  3123)
+* record dimension <2>:                  Chunking.          (line  4295)
 * record dimension <3>:                  nces netCDF Ensemble Statistics.
-                                                            (line  8751)
+                                                            (line  8873)
 * record dimension <4>:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  8906)
+                                                            (line  9028)
 * record dimension <5>:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  8910)
+                                                            (line  9032)
 * record dimension <6>:                  ncecat netCDF Ensemble Concatenator.
-                                                            (line  9016)
+                                                            (line  9138)
 * record dimension <7>:                  ncks netCDF Kitchen Sink.
-                                                            (line  9320)
+                                                            (line  9442)
 * record dimension <8>:                  ncks netCDF Kitchen Sink.
-                                                            (line  9397)
+                                                            (line  9519)
 * record dimension <9>:                  ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10025)
+                                                            (line 10148)
 * record dimension <10>:                 ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10027)
+                                                            (line 10150)
 * record dimension <11>:                 ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10176)
+                                                            (line 10299)
 * record dimension <12>:                 ncra netCDF Record Averager.
-                                                            (line 10228)
+                                                            (line 10351)
 * record dimension <13>:                 ncra netCDF Record Averager.
-                                                            (line 10241)
+                                                            (line 10364)
 * record dimension <14>:                 ncrcat netCDF Record Concatenator.
-                                                            (line 10312)
+                                                            (line 10435)
 * record variable:                       C and Fortran Index Conventions.
-                                                            (line  3074)
+                                                            (line  3118)
 * record variable <1>:                   ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10029)
-* rectangular grids:                     Irregular grids.   (line  6845)
-* recursion:                             Subsetting Files.  (line  2413)
-* recursive:                             Subsetting Files.  (line  2413)
-* 'regex':                               Subsetting Files.  (line  2532)
+                                                            (line 10152)
+* rectangular grids:                     Irregular grids.   (line  6959)
+* recursion:                             Subsetting Files.  (line  2443)
+* recursive:                             Subsetting Files.  (line  2443)
+* 'regex':                               Subsetting Files.  (line  2562)
 * regression:                            Annual Average over Regions.
-                                                            (line 11387)
+                                                            (line 11551)
 * regressions archive:                   Help Requests and Bug Reports.
-                                                            (line   879)
-* regrid:                                Regrid MODIS Data. (line 11842)
+                                                            (line   884)
+* regrid:                                Regrid MODIS Data. (line 12006)
 * regular expressions:                   Large Numbers of Files.
-                                                            (line  1229)
+                                                            (line  1234)
 * regular expressions <1>:               Specifying Input Files.
-                                                            (line  1662)
-* regular expressions <2>:               Subsetting Files.  (line  2514)
-* regular expressions <3>:               Examples ncap2.    (line  7881)
+                                                            (line  1670)
+* regular expressions <2>:               Subsetting Files.  (line  2544)
+* regular expressions <3>:               Examples ncap2.    (line  7995)
 * regular expressions <4>:               ncatted netCDF Attribute Editor.
-                                                            (line  8205)
+                                                            (line  8319)
 * regular expressions <5>:               ncatted netCDF Attribute Editor.
-                                                            (line  8412)
-* 'remap':                               Sort methods.      (line  6600)
-* Remik Ziemlinski:                      Contributors.      (line 10883)
+                                                            (line  8526)
+* 'remap':                               Sort methods.      (line  6714)
+* Remik Ziemlinski:                      Contributors.      (line 11006)
 * remote files:                          Windows Operating System.
-                                                            (line   504)
-* remote files <1>:                      Remote storage.    (line  1797)
-* rename groups:                         Group Path Editing.
-                                                            (line  2765)
+                                                            (line   509)
+* remote files <1>:                      Remote storage.    (line  1810)
+* rename groups:                         Moving Groups.     (line  2802)
 * renaming attributes:                   ncrename netCDF Renamer.
-                                                            (line 10381)
-* renaming attributes <1>:               Regrid MODIS Data. (line 11842)
+                                                            (line 10504)
+* renaming attributes <1>:               Regrid MODIS Data. (line 12006)
 * renaming dimensions:                   ncrename netCDF Renamer.
-                                                            (line 10381)
-* renaming dimensions <1>:               Regrid MODIS Data. (line 11842)
+                                                            (line 10504)
+* renaming dimensions <1>:               Regrid MODIS Data. (line 12006)
 * renaming groups:                       ncrename netCDF Renamer.
-                                                            (line 10381)
+                                                            (line 10504)
 * renaming variables:                    ncrename netCDF Renamer.
-                                                            (line 10381)
+                                                            (line 10504)
 * renaming variables <1>:                Annual Average over Regions.
-                                                            (line 11387)
-* renaming variables <2>:                Regrid MODIS Data. (line 11842)
+                                                            (line 11551)
+* renaming variables <2>:                Regrid MODIS Data. (line 12006)
 * reporting bugs:                        Help Requests and Bug Reports.
-                                                            (line   809)
+                                                            (line   814)
 * reshape variables:                     ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
-* 'restrict':                            Compatability.     (line   439)
+                                                            (line  9984)
+* 'restrict':                            Compatability.     (line   444)
 * reverse data:                          ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10151)
+                                                            (line 10274)
 * reverse dimensions:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * reverse dimensions <1>:                ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10108)
+                                                            (line 10231)
 * reverse dimensions <2>:                ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10130)
+                                                            (line 10253)
 * reverse():                             Arrays and hyperslabs.
-                                                            (line  5989)
-* 'rew':                                 Chunking.          (line  4135)
+                                                            (line  6064)
+* 'rew':                                 Chunking.          (line  4189)
+* Rich Signell:                          Contributors.      (line 11006)
 * RINT:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
-* 'rms':                                 Operation Types.   (line  4610)
-* 'rmssdn':                              Operation Types.   (line  4610)
+                                                            (line  8043)
+* 'rms':                                 Operation Types.   (line  4673)
+* 'rmssdn':                              Operation Types.   (line  4673)
 * rmssdn():                              Methods and functions.
-                                                            (line  6332)
-* root-mean-square:                      Operation Types.   (line  4610)
-* Rorik Peterson:                        Contributors.      (line 10852)
+                                                            (line  6407)
+* root-mean-square:                      Operation Types.   (line  4673)
+* Rorik Peterson:                        Contributors.      (line 10975)
 * ROUND:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * rounding:                              Promoting Single-precision to Double.
-                                                            (line  5116)
+                                                            (line  5179)
 * rounding functions:                    Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * RPM:                                   netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   746)
+                                                            (line   751)
 * running average:                       ncra netCDF Record Averager.
-                                                            (line 10228)
-* Russ Rew:                              Contributors.      (line 10831)
-* Russ Rew <1>:                          Contributors.      (line 10863)
+                                                            (line 10351)
+* Russ Rew:                              Contributors.      (line 10954)
+* Russ Rew <1>:                          Contributors.      (line 10986)
 * safeguards:                            Temporary Output Files.
-                                                            (line   928)
+                                                            (line   933)
 * safeguards <1>:                        ncrename netCDF Renamer.
-                                                            (line 10412)
-* 'scale_factor':                        Packed data.       (line  4473)
+                                                            (line 10535)
+* 'scale_factor':                        Packed data.       (line  4536)
 * 'scale_factor' <1>:                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  8979)
+                                                            (line  9101)
 * 'scale_factor' <2>:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9879)
+                                                            (line 10002)
 * 'scale_factor' <3>:                    ncrcat netCDF Record Concatenator.
-                                                            (line 10327)
-* SCALE_FORMAT:                          Performance.       (line  1470)
-* scaling:                               Performance.       (line  1453)
+                                                            (line 10450)
+* SCALE_FORMAT:                          Performance.       (line  1475)
+* scaling:                               Performance.       (line  1458)
 * scaling <1>:                           ncflint netCDF File Interpolator.
-                                                            (line  9159)
+                                                            (line  9281)
 * Scientific Data Operators:             Proposals for Institutional Funding.
-                                                            (line 10911)
-* 'scl':                                 Chunking.          (line  4135)
-* Scott Capps:                           Contributors.      (line 10881)
+                                                            (line 11053)
+* 'scl':                                 Chunking.          (line  4189)
+* Scott Capps:                           Contributors.      (line 11004)
 * 'scp':                                 Windows Operating System.
-                                                            (line   504)
-* 'scp' <1>:                             Remote storage.    (line  1797)
+                                                            (line   509)
+* 'scp' <1>:                             Remote storage.    (line  1810)
 * script file:                           ncap2 netCDF Arithmetic Processor.
-                                                            (line  5532)
+                                                            (line  5607)
 * SDO:                                   Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * seasonal average:                      Monthly data in one file.
-                                                            (line 10975)
-* security:                              MD5 digests.       (line  4285)
+                                                            (line 11117)
+* security:                              MD5 digests.       (line  4348)
 * SEIII:                                 Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * semi-colon:                            Syntax of ncap2 statements.
-                                                            (line  5589)
+                                                            (line  5664)
 * separator:                             ncks netCDF Kitchen Sink.
-                                                            (line  9583)
-* server:                                Large Datasets.    (line  1308)
-* server <1>:                            OPeNDAP.           (line  1909)
+                                                            (line  9705)
+* server:                                Large Datasets.    (line  1313)
+* server <1>:                            OPeNDAP.           (line  1924)
 * server <2>:                            Retaining Retrieved Files.
-                                                            (line  2069)
+                                                            (line  2084)
 * server <3>:                            Retaining Retrieved Files.
-                                                            (line  2077)
+                                                            (line  2092)
 * Server-Side Distributed Data Reduction & Analysis: Proposals for Institutional Funding.
-                                                            (line 10911)
-* server-side processing:                OPeNDAP.           (line  2035)
+                                                            (line 11053)
+* server-side processing:                OPeNDAP.           (line  2050)
 * server-side processing <1>:            Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * 'set_miss()':                          Missing values ncap2.
-                                                            (line  6247)
+                                                            (line  6322)
 * 'sftp':                                Windows Operating System.
-                                                            (line   504)
-* 'sftp' <1>:                            Remote storage.    (line  1797)
-* SGI:                                   Compatability.     (line   384)
+                                                            (line   509)
+* 'sftp' <1>:                            Remote storage.    (line  1810)
+* SGI:                                   Compatability.     (line   389)
 * Sh shell:                              Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * shared memory machines:                Memory Requirements.
-                                                            (line  1341)
-* shared memory parallelism:             OpenMP Threading.  (line  1525)
+                                                            (line  1346)
+* shared memory parallelism:             OpenMP Threading.  (line  1533)
 * shell:                                 Large Numbers of Files.
-                                                            (line  1229)
-* shell <1>:                             Subsetting Files.  (line  2589)
-* shell <2>:                             UDUnits Support.   (line  3765)
-* shell <3>:                             Examples ncap2.    (line  7881)
+                                                            (line  1234)
+* shell <1>:                             Subsetting Files.  (line  2619)
+* shell <2>:                             UDUnits Support.   (line  3809)
+* shell <3>:                             Examples ncap2.    (line  7995)
 * shell <4>:                             ncbo netCDF Binary Operator.
-                                                            (line  8498)
+                                                            (line  8619)
 * shell <5>:                             Filters for 'ncks'.
-                                                            (line  9637)
-* SIGNEDNESS:                            Performance.       (line  1470)
+                                                            (line  9759)
+* SIGNEDNESS:                            Performance.       (line  1475)
 * SIN:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * sine function:                         Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * single-precision:                      Intrinsic mathematical methods.
-                                                            (line  8032)
+                                                            (line  8146)
 * SINH:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * size():                                Methods and functions.
-                                                            (line  6360)
-* SMP:                                   OpenMP Threading.  (line  1525)
-* 'sort':                                Sort methods.      (line  6600)
+                                                            (line  6435)
+* SLD (Swath-like Data):                 Where statement.   (line  6603)
+* SMP:                                   OpenMP Threading.  (line  1533)
+* 'sort':                                Sort methods.      (line  6714)
 * sort alphabetically:                   ncks netCDF Kitchen Sink.
-                                                            (line  9294)
+                                                            (line  9416)
 * sort alphabetically <1>:               Filters for 'ncks'.
-                                                            (line  9732)
-* source code:                           Availability.      (line   302)
+                                                            (line  9854)
+* source code:                           Availability.      (line   307)
 * spatial distribution:                  Global Distribution of Long-term Average.
-                                                            (line 11284)
+                                                            (line 11448)
 * special attributes:                    ncks netCDF Kitchen Sink.
-                                                            (line  9345)
+                                                            (line  9467)
 * special characters:                    ncatted netCDF Attribute Editor.
-                                                            (line  8344)
-* speed:                                 Libraries.         (line   561)
+                                                            (line  8458)
+* speed:                                 Libraries.         (line   566)
 * speed <1>:                             Temporary Output Files.
-                                                            (line   943)
-* speed <2>:                             Large Datasets.    (line  1317)
-* speed <3>:                             Performance.       (line  1462)
+                                                            (line   948)
+* speed <2>:                             Large Datasets.    (line  1322)
+* speed <3>:                             Performance.       (line  1467)
 * speed <4>:                             Metadata Optimization.
-                                                            (line  1504)
-* speed <5>:                             Missing Values.    (line  3998)
+                                                            (line  1512)
+* speed <5>:                             Missing Values.    (line  4042)
 * speed <6>:                             ncrename netCDF Renamer.
-                                                            (line 10427)
-* 'sqravg':                              Operation Types.   (line  4610)
+                                                            (line 10550)
+* 'sqravg':                              Operation Types.   (line  4673)
 * sqravg():                              Methods and functions.
-                                                            (line  6322)
-* 'sqrt':                                Operation Types.   (line  4610)
+                                                            (line  6397)
+* 'sqrt':                                Operation Types.   (line  4673)
 * SQRT:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * square root function:                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * SSDDRA:                                Proposals for Institutional Funding.
-                                                            (line 10911)
+                                                            (line 11053)
 * SSH:                                   Windows Operating System.
-                                                            (line   504)
+                                                            (line   509)
 * SSH <1>:                               Retaining Retrieved Files.
-                                                            (line  2066)
+                                                            (line  2081)
 * sshort():                              Methods and functions.
-                                                            (line  6416)
-* standard deviation:                    Operation Types.   (line  4610)
-* standard deviation <1>:                Operation Types.   (line  4690)
+                                                            (line  6491)
+* standard deviation:                    Operation Types.   (line  4673)
+* standard deviation <1>:                Operation Types.   (line  4753)
 * standard deviation <2>:                Annual Average over Regions.
-                                                            (line 11387)
+                                                            (line 11551)
 * standard input:                        Large Numbers of Files.
-                                                            (line  1212)
+                                                            (line  1217)
 * standard input <1>:                    nces netCDF Ensemble Statistics.
-                                                            (line  8786)
+                                                            (line  8908)
 * standard input <2>:                    ncecat netCDF Ensemble Concatenator.
-                                                            (line  8952)
+                                                            (line  9074)
 * standard input <3>:                    ncra netCDF Record Averager.
-                                                            (line 10245)
+                                                            (line 10368)
 * standard input <4>:                    ncrcat netCDF Record Concatenator.
-                                                            (line 10315)
+                                                            (line 10438)
 * 'standard_name':                       Auxiliary Coordinates.
-                                                            (line  3584)
-* 'stat() system call':                  Buffer sizes.      (line  4355)
+                                                            (line  3628)
+* 'stat() system call':                  Buffer sizes.      (line  4418)
 * statement:                             Syntax of ncap2 statements.
-                                                            (line  5575)
-* static linking:                        Libraries.         (line   560)
+                                                            (line  5650)
+* static linking:                        Libraries.         (line   565)
 * 'stdin':                               Large Numbers of Files.
-                                                            (line  1212)
+                                                            (line  1217)
 * 'stdin' <1>:                           File List Attributes.
-                                                            (line  5300)
+                                                            (line  5363)
 * 'stdin' <2>:                           nces netCDF Ensemble Statistics.
-                                                            (line  8786)
+                                                            (line  8908)
 * 'stdin' <3>:                           ncecat netCDF Ensemble Concatenator.
-                                                            (line  8952)
+                                                            (line  9074)
 * 'stdin' <4>:                           ncra netCDF Record Averager.
-                                                            (line 10245)
+                                                            (line 10368)
 * 'stdin' <5>:                           ncrcat netCDF Record Concatenator.
-                                                            (line 10315)
-* Steve Emmerson:                        Contributors.      (line 10831)
-* stride:                                Hyperslabs.        (line  3123)
-* stride <1>:                            Stride.            (line  3202)
-* stride <2>:                            Multislabs.        (line  3429)
-* stride <3>:                            UDUnits Support.   (line  3756)
+                                                            (line 10438)
+* Steve Emmerson:                        Contributors.      (line 10954)
+* stride:                                Hyperslabs.        (line  3167)
+* stride <1>:                            Stride.            (line  3246)
+* stride <2>:                            Multislabs.        (line  3473)
+* stride <3>:                            UDUnits Support.   (line  3800)
 * stride <4>:                            ncra netCDF Record Averager.
-                                                            (line 10253)
+                                                            (line 10376)
 * stride <5>:                            ncra netCDF Record Averager.
-                                                            (line 10284)
+                                                            (line 10407)
 * stride <6>:                            ncrcat netCDF Record Concatenator.
-                                                            (line 10323)
+                                                            (line 10446)
 * stride <7>:                            ncrcat netCDF Record Concatenator.
-                                                            (line 10364)
+                                                            (line 10487)
 * strings:                               ncatted netCDF Attribute Editor.
-                                                            (line  8353)
-* Stu Muller:                            Contributors.      (line 10883)
-* stub:                                  Remote storage.    (line  1867)
-* sub-cycle:                             Subcycle.          (line  3314)
-* subcycle:                              Subcycle.          (line  3314)
-* subsetting:                            Subsetting Files.  (line  2371)
+                                                            (line  8467)
+* Stu Muller:                            Contributors.      (line 11006)
+* stub:                                  Remote storage.    (line  1882)
+* sub-cycle:                             Subcycle.          (line  3358)
+* subcycle:                              Subcycle.          (line  3358)
+* subsetting:                            Subsetting Files.  (line  2386)
 * subsetting <1>:                        Subsetting Coordinate Variables.
-                                                            (line  2614)
-* subsetting <2>:                        CF Conventions.    (line  5397)
+                                                            (line  2644)
+* subsetting <2>:                        CF Conventions.    (line  5472)
 * subsetting <3>:                        Filters for 'ncks'.
-                                                            (line  9738)
+                                                            (line  9860)
 * subsetting <4>:                        Filters for 'ncks'.
-                                                            (line  9812)
+                                                            (line  9934)
 * 'subtract':                            ncbo netCDF Binary Operator.
-                                                            (line  8468)
+                                                            (line  8589)
 * subtracting data:                      ncbo netCDF Binary Operator.
-                                                            (line  8450)
+                                                            (line  8571)
 * subtraction:                           Intrinsic mathematical methods.
-                                                            (line  7926)
+                                                            (line  8040)
 * subtraction <1>:                       ncbo netCDF Binary Operator.
-                                                            (line  8450)
-* summary:                               Summary.           (line   285)
-* Sun:                                   Compatability.     (line   384)
-* swap space:                            Large Datasets.    (line  1295)
+                                                            (line  8571)
+* summary:                               Summary.           (line   290)
+* Sun:                                   Compatability.     (line   389)
+* swap space:                            Large Datasets.    (line  1300)
 * swap space <1>:                        Memory Requirements.
-                                                            (line  1334)
-* swap space <2>:                        RAM disks.         (line  4386)
+                                                            (line  1339)
+* swap space <2>:                        RAM disks.         (line  4449)
+* Swath-like Data (SLD):                 Where statement.   (line  6603)
 * switches:                              Command Line Options.
-                                                            (line  1590)
-* symbolic links:                        Symbolic Links.    (line   524)
+                                                            (line  1598)
+* symbolic links:                        Symbolic Links.    (line   529)
 * symbolic links <1>:                    Statistics vs. Concatenation.
-                                                            (line  1072)
+                                                            (line  1077)
 * symbolic links <2>:                    Large Numbers of Files.
-                                                            (line  1254)
+                                                            (line  1259)
 * symbolic links <3>:                    ncbo netCDF Binary Operator.
-                                                            (line  8512)
+                                                            (line  8633)
 * symbolic links <4>:                    ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9947)
-* synchronous file access:               Remote storage.    (line  1797)
-* synonym:                               Symbolic Links.    (line   534)
+                                                            (line 10070)
+* synchronous file access:               Remote storage.    (line  1810)
+* synonym:                               Symbolic Links.    (line   539)
 * syntax:                                Syntax of ncap2 statements.
-                                                            (line  5575)
-* System calls:                          Buffer sizes.      (line  4355)
-* Takeshi Enomoto:                       Contributors.      (line 10893)
+                                                            (line  5650)
+* System calls:                          Buffer sizes.      (line  4418)
+* Takeshi Enomoto:                       Contributors.      (line 11016)
 * TAN:                                   Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * TANH:                                  Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * temporary files:                       Temporary Output Files.
-                                                            (line   928)
-* temporary files <1>:                   RAM disks.         (line  4466)
+                                                            (line   933)
+* temporary files <1>:                   RAM disks.         (line  4529)
 * temporary output files:                Temporary Output Files.
-                                                            (line   928)
-* temporary output files <1>:            RAM disks.         (line  4466)
+                                                            (line   933)
+* temporary output files <1>:            RAM disks.         (line  4529)
 * temporary output files <2>:            ncrename netCDF Renamer.
-                                                            (line 10412)
-* TeXinfo:                               Availability.      (line   310)
+                                                            (line 10535)
+* TeXinfo:                               Availability.      (line   315)
 * threads:                               Memory Requirements.
-                                                            (line  1341)
+                                                            (line  1346)
 * threads <1>:                           Single and Multi-file Operators.
-                                                            (line  1416)
-* threads <2>:                           OpenMP Threading.  (line  1525)
-* THR_NBR:                               OpenMP Threading.  (line  1551)
-* 'time':                                UDUnits Support.   (line  3747)
-* 'time' <1>:                            ARM Conventions.   (line  5451)
-* time-averaging:                        Examples ncap2.    (line  7904)
+                                                            (line  1421)
+* threads <2>:                           OpenMP Threading.  (line  1533)
+* THR_NBR:                               OpenMP Threading.  (line  1559)
+* 'time':                                UDUnits Support.   (line  3791)
+* 'time' <1>:                            ARM Conventions.   (line  5526)
+* time-averaging:                        Examples ncap2.    (line  8018)
 * time-averaging <1>:                    Daily data in one file.
-                                                            (line 10941)
+                                                            (line 11083)
 * time-averaging <2>:                    Daily data in one file.
-                                                            (line 10955)
+                                                            (line 11097)
 * time-averaging <3>:                    Monthly data in one file.
-                                                            (line 10975)
+                                                            (line 11117)
 * time-averaging <4>:                    Monthly data in one file.
-                                                            (line 10978)
+                                                            (line 11120)
 * time-averaging <5>:                    One time point one file.
-                                                            (line 11004)
+                                                            (line 11146)
 * time-averaging <6>:                    Global Distribution of Long-term Average.
-                                                            (line 11284)
+                                                            (line 11448)
 * time-averaging <7>:                    Annual Average over Regions.
-                                                            (line 11387)
-* time-averaging <8>:                    Monthly Cycle.     (line 11678)
-* timestamp:                             History Attribute. (line  5272)
-* 'time_offset':                         ARM Conventions.   (line  5451)
-* total:                                 Operation Types.   (line  4610)
+                                                            (line 11551)
+* time-averaging <8>:                    Monthly Cycle.     (line 11842)
+* timestamp:                             History Attribute. (line  5335)
+* 'time_offset':                         ARM Conventions.   (line  5526)
+* total:                                 Operation Types.   (line  4673)
 * transpose:                             C and Fortran Index Conventions.
-                                                            (line  3072)
+                                                            (line  3116)
 * transpose <1>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line 10039)
+                                                            (line 10162)
 * TREFHT:                                Promoting Single-precision to Double.
-                                                            (line  5050)
+                                                            (line  5113)
 * TRUNC:                                 Intrinsic mathematical methods.
-                                                            (line  7929)
+                                                            (line  8043)
 * 'trunc()':                             Automatic type conversion.
-                                                            (line  4842)
-* truncate (groups):                     Group Path Editing.
-                                                            (line  2677)
+                                                            (line  4905)
+* truncate (groups):                     Flattening Groups. (line  2712)
 * truncation function:                   Intrinsic mathematical methods.
-                                                            (line  7929)
-* truth condition:                       Mask condition.    (line 10647)
+                                                            (line  8043)
+* truth condition:                       Mask condition.    (line 10770)
 * truth condition <1>:                   Normalization and Integration.
-                                                            (line 10778)
-* 'ttl':                                 Operation Types.   (line  4610)
+                                                            (line 10901)
+* 'ttl':                                 Operation Types.   (line  4673)
 * ttl():                                 Methods and functions.
-                                                            (line  6334)
-* type conversion:                       Type Conversion.   (line  4757)
+                                                            (line  6409)
+* type conversion:                       Type Conversion.   (line  4820)
 * type():                                Methods and functions.
-                                                            (line  6364)
+                                                            (line  6439)
 * ubyte():                               Methods and functions.
-                                                            (line  6427)
-* UDUnits:                               Compatability.     (line   393)
-* UDUnits <1>:                           UDUnits Support.   (line  3694)
-* UDUnits <2>:                           CF Conventions.    (line  5331)
+                                                            (line  6502)
+* UDUnits:                               Compatability.     (line   398)
+* UDUnits <1>:                           UDUnits Support.   (line  3738)
+* UDUnits <2>:                           CF Conventions.    (line  5394)
 * uint():                                Methods and functions.
-                                                            (line  6431)
-* 'ulimit':                              Large Datasets.    (line  1313)
-* unary operations:                      Memory for ncap2.  (line  1423)
+                                                            (line  6506)
+* 'ulimit':                              Large Datasets.    (line  1318)
+* unary operations:                      Memory for ncap2.  (line  1428)
 * underlying file format:                Determining File Format.
-                                                            (line  2184)
-* UNICOS:                                Large Datasets.    (line  1308)
-* Unidata:                               Compatability.     (line   393)
+                                                            (line  2199)
+* UNICOS:                                Large Datasets.    (line  1313)
+* Unidata:                               Compatability.     (line   398)
 * Unidata <1>:                           netCDF2/3/4 and HDF4/5 Support.
-                                                            (line   611)
-* Unidata <2>:                           UDUnits Support.   (line  3694)
-* union:                                 Subsetting Files.  (line  2371)
-* union <1>:                             Subsetting Files.  (line  2462)
+                                                            (line   616)
+* Unidata <2>:                           UDUnits Support.   (line  3738)
+* union:                                 Subsetting Files.  (line  2386)
+* union <1>:                             Subsetting Files.  (line  2492)
 * union of files:                        Appending Variables.
-                                                            (line  1038)
+                                                            (line  1043)
 * unit64():                              Methods and functions.
-                                                            (line  6435)
-* 'units':                               UDUnits Support.   (line  3694)
-* 'units' <1>:                           UDUnits Support.   (line  3715)
-* 'units' <2>:                           UDUnits Support.   (line  3747)
+                                                            (line  6510)
+* 'units':                               UDUnits Support.   (line  3738)
+* 'units' <1>:                           UDUnits Support.   (line  3759)
+* 'units' <2>:                           UDUnits Support.   (line  3791)
 * 'units' <3>:                           ncatted netCDF Attribute Editor.
-                                                            (line  8401)
+                                                            (line  8515)
 * 'units' <4>:                           ncatted netCDF Attribute Editor.
-                                                            (line  8404)
+                                                            (line  8518)
 * 'units' <5>:                           ncflint netCDF File Interpolator.
-                                                            (line  9177)
-* UNIX:                                  Compatability.     (line   393)
+                                                            (line  9299)
+* UNIX:                                  Compatability.     (line   398)
 * UNIX <1>:                              Windows Operating System.
-                                                            (line   502)
+                                                            (line   507)
 * UNIX <2>:                              Large Numbers of Files.
-                                                            (line  1229)
+                                                            (line  1234)
 * UNIX <3>:                              Command Line Options.
-                                                            (line  1590)
+                                                            (line  1598)
 * UNIX <4>:                              Specifying Input Files.
-                                                            (line  1668)
+                                                            (line  1676)
 * UNIX <5>:                              Filters for 'ncks'.
-                                                            (line  9637)
+                                                            (line  9759)
 * unlimited dimension:                   ncecat netCDF Ensemble Concatenator.
-                                                            (line  8906)
-* 'unmap':                               Sort methods.      (line  6600)
+                                                            (line  9028)
+* 'unmap':                               Sort methods.      (line  6714)
 * unpack():                              Methods and functions.
-                                                            (line  6353)
-* 'unpack(x)':                           Packed data.       (line  4473)
-* unpacking:                             OPeNDAP.           (line  1973)
-* unpacking <1>:                         Packed data.       (line  4473)
+                                                            (line  6428)
+* 'unpack(x)':                           Packed data.       (line  4536)
+* unpacking:                             OPeNDAP.           (line  1988)
+* unpacking <1>:                         Packed data.       (line  4536)
 * unpacking <2>:                         ncecat netCDF Ensemble Concatenator.
-                                                            (line  8979)
+                                                            (line  9101)
 * unpacking <3>:                         ncpdq netCDF Permute Dimensions Quickly.
-                                                            (line  9861)
+                                                            (line  9984)
 * unpacking <4>:                         ncrcat netCDF Record Concatenator.
-                                                            (line 10327)
-* URL:                                   Remote storage.    (line  1797)
-* 'User Guide':                          Availability.      (line   310)
+                                                            (line 10450)
+* URL:                                   Remote storage.    (line  1810)
+* 'User Guide':                          Availability.      (line   315)
 * ushort():                              Methods and functions.
-                                                            (line  6429)
-* value list:                            Attributes.        (line  6031)
+                                                            (line  6504)
+* value list:                            Attributes.        (line  6106)
 * variable names:                        ncrename netCDF Renamer.
-                                                            (line 10381)
+                                                            (line 10504)
 * variables, appending:                  Annual Average over Regions.
-                                                            (line 11387)
-* variance:                              Operation Types.   (line  4610)
-* version:                               Operator Version.  (line  5482)
+                                                            (line 11551)
+* variance:                              Operation Types.   (line  4673)
+* version:                               Operator Version.  (line  5557)
 * Vista (Microsoft operating system):    Windows Operating System.
-                                                            (line   483)
+                                                            (line   488)
+* Weather and Research Forecast (WRF) Model: Where statement.
+                                                            (line  6603)
 * weighted average:                      ncwa netCDF Weighted Averager.
-                                                            (line 10553)
-* weighted average <1>:                  Monthly Cycle.     (line 11678)
-* Wenshan Wang:                          Contributors.      (line 10903)
-* 'wget':                                Remote storage.    (line  1797)
-* where():                               Where statement.   (line  6477)
-* while():                               Loops.             (line  6545)
-* whitespace:                            UDUnits Support.   (line  3756)
+                                                            (line 10676)
+* weighted average <1>:                  Monthly Cycle.     (line 11842)
+* Wenshan Wang:                          Contributors.      (line 11026)
+* 'wget':                                Remote storage.    (line  1810)
+* where():                               Where statement.   (line  6552)
+* while():                               Loops.             (line  6659)
+* whitespace:                            UDUnits Support.   (line  3800)
 * wildcards:                             Specifying Input Files.
-                                                            (line  1662)
-* wildcards <1>:                         Subsetting Files.  (line  2514)
+                                                            (line  1670)
+* wildcards <1>:                         Subsetting Files.  (line  2544)
 * wildcards <2>:                         ncatted netCDF Attribute Editor.
-                                                            (line  8205)
+                                                            (line  8319)
 * wildcards <3>:                         ncatted netCDF Attribute Editor.
-                                                            (line  8412)
+                                                            (line  8526)
 * 'WIN32':                               Windows Operating System.
-                                                            (line   498)
-* Windows:                               Compatability.     (line   384)
+                                                            (line   503)
+* Windows:                               Compatability.     (line   389)
 * Windows <1>:                           Windows Operating System.
-                                                            (line   483)
-* wrapped coordinates:                   Hyperslabs.        (line  3174)
+                                                            (line   488)
+* wrapped coordinates:                   Hyperslabs.        (line  3218)
 * wrapped coordinates <1>:               Wrapped Coordinates.
-                                                            (line  3534)
-* wrapped coordinates <2>:               Irregular grids.   (line  6874)
+                                                            (line  3578)
+* wrapped coordinates <2>:               Irregular grids.   (line  6988)
 * wrapped coordinates <3>:               Filters for 'ncks'.
-                                                            (line  9850)
+                                                            (line  9973)
 * wrapped filenames:                     Specifying Input Files.
-                                                            (line  1725)
-* WRF:                                   Irregular grids.   (line  6932)
-* WWW documentation:                     Availability.      (line   310)
+                                                            (line  1736)
+* WRF:                                   Irregular grids.   (line  7046)
+* WRF (Weather and Research Forecast Model): Where statement.
+                                                            (line  6603)
+* WWW documentation:                     Availability.      (line   315)
 * 'xargs':                               Large Numbers of Files.
-                                                            (line  1229)
+                                                            (line  1234)
 * 'xargs' <1>:                           Specifying Output Files.
-                                                            (line  1782)
-* 'xlC':                                 Compatability.     (line   402)
-* 'xlc':                                 Compatability.     (line   402)
+                                                            (line  1795)
+* 'xlC':                                 Compatability.     (line   407)
+* 'xlc':                                 Compatability.     (line   407)
 * XML:                                   ncks netCDF Kitchen Sink.
-                                                            (line  9553)
+                                                            (line  9675)
 * XP (Microsoft operating system):       Windows Operating System.
-                                                            (line   483)
-* 'xpl':                                 Chunking.          (line  4085)
-* 'xst':                                 Chunking.          (line  4085)
-* 'xst' <1>:                             Chunking.          (line  4135)
-* Yorick:                                Philosophy.        (line   900)
-* Yorick <1>:                            Performance.       (line  1473)
+                                                            (line   488)
+* 'xpl':                                 Chunking.          (line  4130)
+* 'xst':                                 Chunking.          (line  4130)
+* 'xst' <1>:                             Chunking.          (line  4189)
+* Yorick:                                Philosophy.        (line   905)
+* Yorick <1>:                            Performance.       (line  1478)
 
diff --git a/doc/nco.xml b/doc/nco.xml
index 51f45c4..00c3163 100644
--- a/doc/nco.xml
+++ b/doc/nco.xml
@@ -85,6 +85,7 @@ Legend (defined in "highlighting" section of TeXInfo manual):
 @command{}: Commands, e.g., @command{ncra}
 @dfn{}: Define use of term, e.g., @dfn{supercalifragilisticexpialidocious}
 @email{}: E-mail address, e.g., @email{surname at uci dot edu}
+ at emph{}: Emphasize text, e.g., @emph{important}
 @env{}: Environment variable, e.g., @env{HOME}
 @file{}: Filename, e.g., @file{in.nc}
 @html: Text until @end html passed without translation
@@ -97,6 +98,7 @@ Legend (defined in "highlighting" section of TeXInfo manual):
 @url{}: URL, synonym for @uref
 @var{}: Metasyntactic variable, e.g., @var{}
 @verbatim: Anything goes inside environment (no @'s needed to protect special characters like braces)
+ at verbatiminclude: Insert contents of file here, e.g., @verbatiminclude{nco.sh}
 @example: Quoted environment (@'s needed to protect special characters like braces)
 @w{}: Unbreakable text, e.g., @w{of 1}
 
@@ -116,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.4">4.4.4</set>
-<set name="doc-edition" line=" doc-edition 4.4.4">4.4.4</set>
+<set name="nco-edition" line=" nco-edition 4.4.5">4.4.5</set>
+<set name="doc-edition" line=" doc-edition 4.4.5">4.4.5</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 20 May 2014">20 May 2014</set>
-<set name="update-month" line=" update-month May 2014">May 2014</set>
+<set name="update-date" line=" update-date 8 July 2014">8 July 2014</set>
+<set name="update-month" line=" update-month July 2014">July 2014</set>
 
-<settitle spaces=" "><acronym><acronymword>NCO</acronymword></acronym> 4.4.4 User Guide</settitle>
+<settitle spaces=" "><acronym><acronymword>NCO</acronymword></acronym> 4.4.5 User Guide</settitle>
 
 <!-- c Uncomment following line to produce guide in smallbook format -->
 <!-- c @smallbook -->
@@ -507,8 +509,8 @@ ncflint, ncks, ncra, ncrcat, ncrename, ncwa">
 </ignore>
 <title spaces=" ">NCO User Guide</title>
 <subtitle spaces=" ">A suite of netCDF operators</subtitle>
-<subtitle spaces=" ">Edition 4.4.4, for <acronym><acronymword>NCO</acronymword></acronym> Version 4.4.4</subtitle>
-<subtitle spaces=" ">May 2014</subtitle>
+<subtitle spaces=" ">Edition 4.4.5, for <acronym><acronymword>NCO</acronymword></acronym> Version 4.4.5</subtitle>
+<subtitle spaces=" ">July 2014</subtitle>
 
 <author spaces=" ">by Charlie Zender</author>
 <author spaces=" ">Department of Earth System Science</author>
@@ -584,8 +586,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.4.
-It was last updated 20 May 2014.
+<para>This documentation is for <acronym><acronymword>NCO</acronymword></acronym> version 4.4.5.
+It was last updated 8 July 2014.
 Corrections, additions, and rewrites of this documentation are very
 welcome.
 </para>
@@ -683,32 +685,54 @@ March 2008&linebreak;
 Grenoble, France&linebreak;
 </para>
 <sp value="2" line=" 2"></sp>
-<para>The end of the <acronym><acronymword>NSF</acronymword></acronym> SEI grant in August, 2008 curtailed <acronym><acronymword>NCO</acronymword></acronym>
-development.  
-Fortunately we could justify supporting Henry Butowsky on other research 
+<para>The end of the <acronym><acronymword>NSF</acronymword></acronym> <acronym><acronymword>SEI</acronymword></acronym> grant in August, 2008 curtailed
+<acronym><acronymword>NCO</acronymword></acronym> development.  
+Fortunately we could justify supporting Henry Butowsky on other research  
 grants until May, 2010 while he developed the key <command>ncap2</command>
 features used in our climate research.
-And recentely the NASA ACCESS program commenced funding NCO support for
-netCDF4 group functionality.&linebreak; 
-Thus <acronym><acronymword>NCO</acronymword></acronym> will grow and evade bit-rot for the foreseeable future.
-</para>
-<para>On a personal level, I continue to receive with gratitude the thanks of
-<acronym><acronymword>NCO</acronymword></acronym> users at nearly every scientific meeting I attend. 
-People introduce themselves, shake my hand and extol, sometimes rather
-effusively, these time-saving tools.
+And recently the <acronym><acronymword>NASA</acronymword></acronym> <acronym><acronymword>ACCESS</acronymword></acronym> program commenced
+funding us to support netCDF4 group functionality.
+Thus <acronym><acronymword>NCO</acronymword></acronym> will grow and evade bit-rot for the foreseeable
+future. 
+</para>
+<para>I continue to receive with gratitude the thanks of <acronym><acronymword>NCO</acronymword></acronym> users
+at nearly every scientific meeting I attend.  
+People introduce themselves, shake my hand and extol <acronym><acronymword>NCO</acronymword></acronym>,
+often effusively, while I grin in stupid embarassment. 
 These exchanges lighten me like anti-gravity.
 Sometimes I daydream how many hours <acronym><acronymword>NCO</acronymword></acronym> has turned from grunt
 work to productive research for researchers world-wide, or from research
-into early happy hours. 
+into early happy-hours. 
 It&textrsquo;s a cool feeling.
 </para>
-<!-- c @uref{http://www.nasa.gov/mission_pages/IPY/main/PolarExploration.html,NNX07AR23G}.@* -->
 <sp value="1" line=" 1"></sp>
 <noindent></noindent>
 <para>Charlie Zender&linebreak;
 April, 2012&linebreak;
 Irvine, California&linebreak;
 </para>
+<ignore>
+ at sp 2
+The @acronym{NASA} @acronym{ACCESS} 2011 program generously supported 
+(Cooperative Agreement NNX12AF48A) @acronym{NCO} from 2012--2014.
+We accomplished our goals and produced the first iteration of a
+Group-oriented Data Analysis and Distribution (@acronym{GODAD}) software 
+ecosystem. 
+Shifting geoscience data analysis to @acronym{GODAD}, no small task,
+drives our plans.
+Partly due to this success, the @acronym{NASA} @acronym{ACCESS} 2013
+program agreed to support (Cooperative Agreement NNX14AH55A)
+ at acronym{NCO} from 2014--2016. 
+This support will allow us to implement support for Swath-like Data
+(@acronym{SLD}) and re-gridding.
+
+ at sp 1
+ at noindent
+Charlie Zender@*
+June, 2014@*
+Irvine, California@*
+</ignore>
+
 <html endspaces=" ">
 <a name="smr"></a> <!&textndash; http://nco.sf.net/nco.html#smr &textndash;>
 </html>
@@ -845,7 +869,7 @@ 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.4).
+<para>There are twelve operators in the current version (4.4.5).
 The function of each is explained in <ref label="Operator-Reference-Manual"><xrefnodename>Operator Reference Manual</xrefnodename><xrefinfoname spaces=" ">Operator 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>).
@@ -1213,7 +1237,7 @@ following <acronym><acronymword>UNIX</acronymword></acronym> commands in the dir
 <acronym><acronymword>NCO</acronymword></acronym> executables are installed.
 </para><example endspaces=" ">
 <pre xml:space="preserve">ln -s -f ncbo ncdiff    # ncbo --op_typ='+'
-ln -s -f ncra ncecat    # ncra --pseudonym='ncecat'
+ln -s -f ncra nces      # ncra --pseudonym='nces'
 ln -s -f ncra ncrcat    # ncra --pseudonym='ncrcat'
 ln -s -f ncbo ncadd     # ncbo --op_typ='+'
 ln -s -f ncbo ncsubtract # ncbo --op_typ='-'
@@ -1221,7 +1245,7 @@ ln -s -f ncbo ncmultiply # ncbo --op_typ='*'
 ln -s -f ncbo ncdivide   # ncbo --op_typ='/'
 ln -s -f ncpdq ncpack    # ncpdq
 ln -s -f ncpdq ncunpack  # ncpdq --unpack
-# NB: Cygwin executable (and link) names have an '.exe' suffix, e.g.,
+# NB: Windows/Cygwin executable/link names have '.exe' suffix, e.g.,
 ln -s -f ncbo.exe ncdiff.exe
 ...
 </pre></example>
@@ -2122,12 +2146,14 @@ Initially the record dimension is <code>time</code>.
 Our goal is to create a single file that contains joins all the
 spatially adjacent regions into one single time-evolving dataset.
 </para><example endspaces=" ">
-<pre xml:space="preserve">for idx in 01 02 03 04 05 06 07 08 09 10; do # Bourne Shell
-  ncpdq -a x,time x_${idx}.nc foo_${idx}.nc # Make x record dimension
+<verbatim xml:space="preserve">
+for idx in 01 02 03 04 05 06 07 08 09 10; do # Bourne Shell
+  ncpdq -a x,time x_${idx}.nc foo_${idx}.nc  # Make x record dimension
 done
 ncrcat foo_??.nc out.nc       # Concatenate along x
 ncpdq -a time,x out.nc out.nc # Revert to time as record dimension
-</pre></example>
+</verbatim>
+</example>
 
 <para>Note that <command>ncrcat</command> will not concatenate fixed-length variables, 
 whereas <command>ncecat</command> concatenates both fixed-length and record
@@ -2237,9 +2263,11 @@ 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>
 feature, aka <code>stdin</code>: 
 </para><example endspaces=" ">
-<pre xml:space="preserve"># Pipe large numbers of filenames to stdin
-/bin/ls | grep ${CASEID}_'......'.nc | ncecat -o foo.nc
-</pre></example>
+<verbatim xml:space="preserve">
+# Pipe large numbers of filenames to stdin
+/bin/ls | grep ${CASEID}_'......'.nc | ncecat -o foo.nc
+</verbatim>
+</example>
 <para>This method avoids all constraints on command line size imposed by
 the operating system. 
 A drawback to this method is that the <code>history</code> attribute
@@ -2280,9 +2308,11 @@ and to pipe the results to <command>xargs</command> which, in turn, passes the
 matching filenames to an <acronym><acronymword>NCO</acronymword></acronym> multi-file operator, e.g.,
 <command>ncecat</command>.
 </para><example endspaces=" ">
-<pre xml:space="preserve"># Use xargs to transfer filenames on the command line
-/bin/ls | grep ${CASEID}_'......'.nc | xargs -x ncecat -o foo.nc
-</pre></example>
+<verbatim xml:space="preserve">
+# Use xargs to transfer filenames on the command line
+/bin/ls | grep ${CASEID}_'......'.nc | xargs -x ncecat -o foo.nc
+</verbatim>
+</example>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="247">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
@@ -2319,13 +2349,15 @@ 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="253"><code>-n <var>loop</var></code></indexterm></cindex>
 </para><example endspaces=" ">
-<pre xml:space="preserve"># Create enumerated symbolic links
+<verbatim xml:space="preserve">
+# Create enumerated symbolic links
 /bin/ls | grep \.nc | perl -e \
-'$idx=1;while(<STDIN>){chop;symlink $_,sprintf("%06d.nc",$idx++);}'
+'$idx=1;while(<STDIN>){chop;symlink $_,sprintf("%06d.nc",$idx++);}'
 ncecat -n 999999,6,1 000001.nc foo.nc
 # Remove symbolic links when finished
 /bin/rm ??????.nc
-</pre></example>
+</verbatim>
+</example>
 <para>The <samp>-n <var>loop</var></samp> option tells the <acronym><acronymword>NCO</acronymword></acronym> operator to
 automatically generate the filnames of the symbolic links.
 This circumvents any <acronym><acronymword>OS</acronymword></acronym> and shell limits on command line size.
@@ -2729,7 +2761,11 @@ feature is automatic and cannot be controlled by the user.
 <cindex index="cp" spaces=" "><indexterm index="cp" number="312">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 hope to produce foreign language string catalogues in 2004.
+We introduced the first foreign language string catalogues (French and
+Spanish) in 2004, yet did not activate these in distributions because 
+the catalogues were nearly empty.
+We seek volunteers to populate our templates with translations for their
+favorite languages.
 <!-- c fxm: Work on this section -->
 </para>
 <html endspaces=" ">
@@ -3043,12 +3079,15 @@ ncra -n 5,2,1 85.nc 8589.nc
 force. 
 The second method relies on the operating system shell to <dfn>glob</dfn>
 (expand) the <dfn>regular expression</dfn> <code>8[56789].nc</code>.
-The shell passes valid filenames which match the expansion to
-<command>ncra</command>.
-The third method uses the <samp>-p <var>input-path</var></samp> argument to specify 
+The shell then passes the valid filenames (those which match the
+regular expansion) to <command>ncra</command>.
+In this case <command>ncra</command> never knows that a regular expression was
+used, because the shell intercepts and expands and matches the regular
+expression before <command>ncra</command> is actually invoked.
+The third method uses the <samp>-p <var>input-path</var></samp> argument to specify   
 the directory where all the input files reside.
 <acronym><acronymword>NCO</acronymword></acronym> prepends <var>input-path</var> (e.g.,
-<file>/data/usrname/model</file>) to all <var>input-files</var> (though not to
+<file>/data/username/model</file>) to all <var>input-files</var> (though not to
 <var>output-file</var>).  
 Thus, using <samp>-p</samp>, the path to any number of input files need only
 be specified once.
@@ -3057,8 +3096,13 @@ automatically generated if necessary.
 </para>
 <para>The last method passes (with <samp>-n</samp>) syntax concisely describing 
 the entire set of filenames
-<footnote><para>The <samp>-n</samp> option is a backward compatible superset of the
-<code>NINTAP</code> option from the <acronym><acronymword>NCAR</acronymword></acronym> <acronym><acronymword>CCM</acronymword></acronym> Processor.</para></footnote>. 
+<footnote><para>The <samp>-n</samp> option is a backward-compatible superset of the 
+<code>NINTAP</code> option from the <acronym><acronymword>NCAR</acronymword></acronym> <acronym><acronymword>CCM</acronymword></acronym> Processor.
+The <acronym><acronymword>CCM</acronymword></acronym> Processor was custom-written Fortran code maintained
+for many years by Lawrence Buja at <acronym><acronymword>NCAR</acronymword></acronym>, and phased-out in 
+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="367">multi-file operators</indexterm></cindex>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="368">files, multiple</indexterm></cindex>
 This option is only available with the <dfn>multi-file operators</dfn>:
@@ -3075,8 +3119,8 @@ For example, in the file <file>ccm3_h0001.nc</file>, we have
 <var>alphanumeric_prefix</var> = <file>ccm3_h</file>, <var>numeric_suffix</var> =
 <file>0001</file>, and <var>filetype</var> = <file>nc</file>.
 </para>
-<para><acronym><acronymword>NCO</acronymword></acronym> is able to decode lists of such filenames encoded using the
-<samp>-n</samp> option. 
+<para><acronym><acronymword>NCO</acronymword></acronym> decodes lists of such filenames encoded using the
+<samp>-n</samp> syntax. 
 The simpler (3-argument) <samp>-n</samp> usage takes the form 
 <code>-n <var>file_number</var>,<var>digit_number</var>,<var>numeric_increment</var></code>
 where <var>file_number</var> is the number of files, <var>digit_number</var> is
@@ -3125,12 +3169,12 @@ ncra -n 3,2,1,12,1 85_12.nc 85_1202.nc
 suffice to specify consecutive months (<code>06, 07, 08</code>) which do not
 &textldquo;wrap&textrdquo; back to a minimum value.
 The second example shows how to use the optional fourth and fifth
-elements of the <samp>-n</samp> option to specify a wrap value to <acronym><acronymword>NCO</acronymword></acronym>.
-The fourth argument to <samp>-n</samp>, if present, specifies the maximum
+elements of the <samp>-n</samp> option to specify a wrap value.
+The fourth argument to <samp>-n</samp>, when present, specifies the maximum
 integer value of <var>numeric_suffix</var>.
-In this case the maximum value <w>is 12,</w> and will be formatted as
+In the example the maximum value <w>is 12,</w> and will be formatted as
 <file>12</file> in the filename string. 
-The fifth argument to <samp>-n</samp>, if present, specifies the minimum
+The fifth argument to <samp>-n</samp>, when present, specifies the minimum
 integer value of <var>numeric_suffix</var>.
 The default minimum filename suffix <w>is 1,</w> which is formatted as
 <file>01</file> in this case.   
@@ -3237,16 +3281,18 @@ particular access protocol.
 <html endspaces=" ">
 <a name="ftp"></a> <!&textndash; http://nco.sf.net/nco.html#ftp &textndash;>
 </html>
-<para>To access a file via an anonymous <acronym><acronymword>FTP</acronymword></acronym> server, supply the
-remote file&textrsquo;s <acronym><acronymword>URL</acronymword></acronym>.
+<para>To access a file via an anonymous <acronym><acronymword>FTP</acronymword></acronym> server, simply supply
+the remote file&textrsquo;s <acronym><acronymword>URL</acronymword></acronym>.
+Anonymous <acronym><acronymword>FTP</acronymword></acronym> usually requires no further credentials,
+e.g., no <file>.netrc</file> file is necessary.
 <acronym><acronymword>FTP</acronymword></acronym> is an intrinsically insecure protocol because it transfers
-passwords in plain text format. 
+passwords in plain text format.  
 Users should access sites using anonymous <acronym><acronymword>FTP</acronymword></acronym>, or better yet,
-secure <acronym><acronymword>FTP</acronymword></acronym> when possible. 
+secure <acronym><acronymword>FTP</acronymword></acronym> (<acronym><acronymword>SFTP</acronymword></acronym>, see below) when possible. 
 Some <acronym><acronymword>FTP</acronymword></acronym> servers require a login/password combination for a
 valid user account.
-<acronym><acronymword>NCO</acronymword></acronym> allows these transactions so long as the required
-information is stored in the <file>.netrc</file> file. 
+<acronym><acronymword>NCO</acronymword></acronym> allows transactions that require additional credentials
+so long as the required information is stored in the <file>.netrc</file> file.  
 Usually this information is the remote machine name, login, and
 password, in plain text, separated by those very keywords, e.g.,
 </para><example endspaces=" ">
@@ -3273,7 +3319,7 @@ specified with a homebrew syntax of the form
 <pre xml:space="preserve">sftp://machine.domain.tld:/path/to/filename
 </pre></example>
 <para>Note the second colon following the top-level-domain, <code>tld</code>.
-This syntax is a hybrid between an <acronym><acronymword>FTP URL</acronymword></acronym> and a standard
+This syntax is a hybrid between an <acronym><acronymword>FTP URL</acronymword></acronym> and standard
 remote file syntax.
 </para>
 <html endspaces=" ">
@@ -3527,7 +3573,7 @@ input and output file format:
 one = 1
 </pre></example>
 <para>And, of course, <acronym><acronymword>OPeNDAP</acronymword></acronym>-enabled <acronym><acronymword>NCO</acronymword></acronym> clients continue
-to support other, orthogonal features such as UDUnits 
+to support orthogonal features such as UDUnits 
 (<pxref label="UDUnits-Support"><xrefnodename>UDUnits Support</xrefnodename></pxref>):
 </para><example endspaces=" ">
 <pre xml:space="preserve">% ncks -u -C -H -v wvl -d wvl,'0.4 micron','0.7 micron' \
@@ -3552,9 +3598,9 @@ http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/su
 <cindex index="cp" spaces=" "><indexterm index="cp" number="431">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 is completely transparent
-to the user since <acronym><acronymword>NCO</acronymword></acronym> automatically unpacks data before
-attempting arithmetic. 
+(<pxref label="Methods-and-functions"><xrefnodename>Methods and functions</xrefnodename></pxref>), although this complication is
+transparent to the user since <acronym><acronymword>NCO</acronymword></acronym> automatically unpacks data
+before attempting arithmetic. 
 </para>
 <para><acronym><acronymword>NCO</acronymword></acronym> obtains remote files from the <acronym><acronymword>OPeNDAP</acronymword></acronym> server
 (e.g., <file>www.cdc.noaa.gov</file>) rather than the local machine. 
@@ -4107,14 +4153,10 @@ build time.
 <cindex index="cp" spaces=" "><indexterm index="cp" number="500"><code>--xcl</code></indexterm></cindex>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="501"><code>--unn</code></indexterm></cindex>
 <cindex index="cp" spaces=" "><indexterm index="cp" number="502"><code>--union</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="503"><code>--gxvx</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="504"><code>--grp_xtr_var_xcl</code></indexterm></cindex>
 <cartouche endspaces=" ">
-<para>Options <code>--unn</code>&linebreak;
-Availability: <command>ncbo</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: &linebreak;
-Long options: <samp>--unn</samp> and <samp>--union</samp>&linebreak;
-Options <code>-g <var>grp</var></code>&linebreak;
+<para>Options <code>-g <var>grp</var></code>&linebreak;
 Availability: <command>ncbo</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; 
@@ -4126,6 +4168,16 @@ Availability: (<command>ncap2</command>), <command>ncbo</command>, <command>nces
 <command>ncra</command>, <command>ncrcat</command>, <command>ncwa</command>&linebreak;
 Short options: <samp>-v</samp>, <samp>-x</samp>&linebreak;
 Long options: <samp>--variable</samp>, <samp>--exclude</samp> or <samp>--xcl</samp>&linebreak;
+Options <code>--unn</code>&linebreak;
+Availability: <command>ncbo</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: &linebreak;
+Long options: <samp>--unn</samp> and <samp>--union</samp>&linebreak;
+Options <code>--grp_xtr_var_xcl</code>&linebreak;
+Availability: <command>ncks</command>&linebreak;
+Short options: &linebreak;
+Long options: <samp>--gxvx</samp> and <samp>--grp_xtr_var_xcl</samp>&linebreak;
 </para></cartouche>
 <para>Subsetting variables refers to explicitly specifying variables and
 groups to be included or excluded from operator actions.
@@ -4162,12 +4214,31 @@ distinctions.
 When learning this syntax it is helpful to keep in mind the similarity
 between group hierarchies and directory structures. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="503"><command>mv</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="504"><command>cp</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="505">recursion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="506">recursive</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="507">anchor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="508">anchoring</indexterm></cindex>
+<html endspaces=" ">
+<a name="gxvx"></a> <!&textndash; http://nco.sf.net/nco.html#gxvx &textndash;>
+<a name="grp_xtr_var_xcl"></a> <!&textndash; http://nco.sf.net/nco.html#grp_xtr_var_xcl &textndash;>
+</html>
+<para>As of <acronym><acronymword>NCO</acronymword></acronym> 4.4.4 (June, 2014), <command>ncks</command> (alone) supports 
+an option to include specified groups yet exclude specified variables.
+The <samp>--grp_xtr_var_xcl</samp> switch (with long option equivalent
+<samp>--gxvx</samp>) extracts all contents of groups given as arguments to
+<samp>-g <var>grp</var>[,&dots;]</samp>, except for variables given as arguments
+to <samp>-v <var>var</var>[,&dots;]</samp>.
+Use this when one or a few variables in hierarchical files are not to be
+extracted, and all other variables are.  
+This is useful when coercing netCDF4 files into netCDF3 files such as
+with converting, flattening, or dismembering files 
+(see <ref label="Flattening-Groups"><xrefnodename>Flattening Groups</xrefnodename></ref>).
+</para><example endspaces=" ">       
+<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="505"><command>mv</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="506"><command>cp</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="507">recursion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="508">recursive</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="509">anchor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="510">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;>
@@ -4244,12 +4315,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="509">union</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="510">intersection</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="511"><code>--unn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="512"><code>--union</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="513"><code>--nsx</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="514"><code>--intersection</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="511">union</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="512">intersection</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="513"><code>--unn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="514"><code>--union</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="515"><code>--nsx</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="516"><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
@@ -4296,7 +4367,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="515">memory requirements</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="517">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
@@ -4326,14 +4397,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="516">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="517">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="518">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="519">wildcards</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="520"><command>grep -E</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="521"><command>egrep</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="522"><command>ncatted</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="523"><acronym><acronymword>GNU</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="518">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="519">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="520">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="521">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="522"><command>grep -E</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="523"><command>egrep</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="524"><command>ncatted</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="525"><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>
@@ -4355,8 +4426,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="524"><acronym><acronymword>POSIX</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="525"><code>regex</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="526"><acronym><acronymword>POSIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="527"><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.
@@ -4364,11 +4435,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="526"><code>.</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="527"><code>$</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="528"><code>^</code> (wildcard character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="529"><code>?</code> (filename expansion)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="530"><code>*</code> (filename expansion)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="528"><code>.</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="529"><code>$</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="530"><code>^</code> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="531"><code>?</code> (filename expansion)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="532"><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
@@ -4379,10 +4450,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="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> (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> (wildcard character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="536"><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
@@ -4405,23 +4476,25 @@ those groups, and file <file>in.nc</file> with variables <code>Q</code>,
 <code>Q01</code>&textndash;<code>Q99</code>, <code>Q100</code>, <code>QAA</code>&textndash;<code>QZZ</code>,
 <code>Q_H2O</code>, <code>X_H2O</code>, <code>Q_CO2</code>, <code>X_CO2</code>.  
 </para><example endspaces=" ">
-<pre xml:space="preserve">ncks -v '.+' in.nc               # All variables (default)
+<verbatim xml:space="preserve">
+ncks -v '.+' in.nc               # All variables (default)
 ncks -v 'Q.?' in.nc              # Variables that contain Q
 ncks -v '^Q.?' in.nc             # Variables that start with Q
 ncks -v '^Q+.?.' in.nc           # Q, Q0--Q9, Q01--Q99, QAA--QZZ, etc.
 ncks -v '^Q..' in.nc             # Q01--Q99, QAA--QZZ, etc.
 ncks -v '^Q[0-9][0-9]' in.nc     # Q01--Q99, Q100
-ncks -v '^Q[[:digit:]]{2}' in.nc # Q01--Q99
+ncks -v '^Q[[:digit:]]{2}' in.nc # Q01--Q99
 ncks -v 'H2O$' in.nc             # Q_H2O, X_H2O 
 ncks -v 'H2O$|CO2$' in.nc        # Q_H2O, X_H2O, Q_CO2, X_CO2 
 ncks -v '^Q[0-9][0-9]$' in.nc    # Q01--Q99
 ncks -v '^Q[0-6][0-9]|7[0-3]' in.nc # Q01--Q73, Q100
 ncks -v '(Q[0-6][0-9]|7[0-3])$' in.nc # Q01--Q73
-ncks -v '^[a-z]_[a-z]{3}$' in.nc # Q_H2O, X_H2O, Q_CO2, X_CO2
+ncks -v '^[a-z]_[a-z]{3}$' in.nc # Q_H2O, X_H2O, Q_CO2, X_CO2
 ncks -g 'g.' in_grp.nc           # 10 Groups g0-g9
 ncks -g 's.' in_grp.nc       # 100 sub-groups g0/s0, g0/s1, ... g9/s9
 ncks -g 'g.' -v 'v.' in_grp.nc   # All variables 'v.' in groups 'g.'
-</pre></example>
+</verbatim>
+</example>
 <para>Beware&textmdash;two of the most frequently used repetition pattern matching
 operators, <samp>*</samp> and <samp>?</samp>, are also valid pattern matching
 operators for filename expansion (globbing) at the shell-level.
@@ -4441,11 +4514,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="535">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="536">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="537"><command>bash</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="538"><command>csh</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="539">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="537">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="538">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="539"><command>bash</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="540"><command>csh</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="541">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
@@ -4472,13 +4545,13 @@ filename expansion (globbing).
 </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>
 <section spaces=" "><sectiontitle>Subsetting Coordinate Variables</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="540">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="541"><code>-C</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="542"><code>-c</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="543"><code>--no-coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="544"><code>--no-crd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="545"><code>--coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="546"><code>--crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="542">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="543"><code>-C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="544"><code>-c</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="545"><code>--no-coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="546"><code>--no-crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="547"><code>--coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="548"><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>,
@@ -4502,13 +4575,16 @@ 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="547"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
-As of <acronym><acronymword>NCO</acronymword></acronym> version 3.9.6 (January, 2009) 
-both <samp>-c</samp> and <samp>-C</samp> honor the <acronym><acronymword>CF</acronymword></acronym> <code>coordinates</code>
-convention described in <ref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></ref>.
+<cindex index="cp" spaces=" "><indexterm index="cp" number="549"><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>. 
 As of <acronym><acronymword>NCO</acronymword></acronym> version 4.0.8 (April, 2011) 
 both <samp>-c</samp> and <samp>-C</samp> honor the <acronym><acronymword>CF</acronymword></acronym> <code>bounds</code>
 convention described in <ref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></ref>. 
+As of <acronym><acronymword>NCO</acronymword></acronym> version 3.9.6 (January, 2009) 
+both <samp>-c</samp> and <samp>-C</samp> honor the <acronym><acronymword>CF</acronymword></acronym> <code>coordinates</code>
+convention described in <ref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></ref>.
 </para>
 <html endspaces=" ">
 <a name="gpe"></a> <!&textndash; http://nco.sf.net/nco.html#gpe &textndash;>
@@ -4516,8 +4592,8 @@ convention described in <ref label="CF-Conventions"><xrefnodename>CF Conventions
 </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>
 <section spaces=" "><sectiontitle>Group Path Editing</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="548"><code>-G <var>gpe_dsc</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="549"><code>--gpe <var>gpe_dsc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="550"><code>-G <var>gpe_dsc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="551"><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>,
@@ -4544,7 +4620,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="550">group path</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="552">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.
@@ -4568,16 +4644,24 @@ Hence, <samp>-G :-1</samp> is the same as <samp>-G &arobase;1</samp>.
 This is simply a way of making the <var>lvl_nbr</var> argument
 positive-definite. 
 </para>
+<menu endspaces=" ">
+<menuentry leadingtext="* "><menunode separator="::">Flattening Groups</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Moving Groups</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Dismembering Files</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Checking CF-compliance</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry></menu>
+<node name="Flattening-Groups" spaces=" "><nodename>Flattening Groups</nodename><nodenext spaces=" ">Moving Groups</nodenext><nodeprev spaces=" ">Group Path Editing</nodeprev><nodeup spaces=" ">Group Path Editing</nodeup></node>
+<subsection spaces=" "><sectiontitle>Deletion, Truncation, and Flattening of Groups</sectiontitle>
 <html endspaces=" ">
 <a name="flatten"></a> <!&textndash; http://nco.sf.net/nco.html#flatten &textndash;>
 <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="551"><code>&arobase;</code> (separator character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="552"><code>:</code> (separator character)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="553">delete (groups)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="554">truncate (groups)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="555">flatten (groups)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="553"><code>&arobase;</code> (separator character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="554"><code>:</code> (separator character)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="555">delete (groups)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="556">truncate (groups)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="557">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
@@ -4638,7 +4722,8 @@ groups and their placement in the output file as shown by the following
 commands. 
 All commands below may be assumed to end with <samp>in.nc out.nc</samp>.
 </para><example endspaces=" ">       
-<pre xml:space="preserve"># Prepending paths without editing:
+<verbatim xml:space="preserve">
+# Prepending paths without editing:
 ncks                   # /g?/v? -> /g?/v?
 ncks             -v v1 # /g?/v1 -> /g?/v1
 ncks       -g g1       # /g1/v? -> /g1/v?
@@ -4670,7 +4755,7 @@ ncks -G g2:                # /g?/v?    -> /g2/v?
 ncks -G g2: -g g1/g1 -v v1 # /g1/g1/v1 -> /g2/v1
 # Truncate-mode: Truncate from and Append to path tail
 # Syntax: -G [apn]:-lvl_nbr = # of levels to truncate
-# NB: -G [apn]:-lvl_nbr is equivalent to -G [apn]&arobase;lvl_nbr
+# NB: -G [apn]:-lvl_nbr is equivalent to -G [apn]@lvl_nbr
 ncks -G :-1   -g g1    -v v1 # /g1/v1    -> /v1
 ncks -G :-1   -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/v1
 ncks -G :-2   -g g1/g2 -v v1 # /g1/g2/v1 -> /v1
@@ -4678,16 +4763,20 @@ ncks -G :-2   -g g1    -v v1 # /g1/v1    -> /v1
 ncks -G g2:-1          -v v1 # /g?/v1    -> /g2/v1
 ncks -G g2:-1 -g g1    -v v1 # /g1/v1    -> /g2/v1
 ncks -G g1:-1 -g g1/g2 -v v1 # /g1/g2/v1 -> /g1/g1/v1
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="mv"></a> <!&textndash; http://nco.sf.net/nco.html#mv &textndash;>
 <a name="move"></a> <!&textndash; http://nco.sf.net/nco.html#move &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="556">move groups</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="557">groups, moving</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="558">rename groups</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="559">groups, renaming</indexterm></cindex>
+</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="558">move groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="559">groups, moving</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="560">rename groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="561">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.
@@ -4741,8 +4830,11 @@ all other groups (e.g., <code>ecmwf</code>, <code>giss</code>).
 <a name="disaggregate"></a> <!&textndash; http://nco.sf.net/nco.html#disaggregate &textndash;>
 <a name="ncdismember"></a> <!&textndash; http://nco.sf.net/nco.html#ncdismember &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="560">disaggregate</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="561">dismember</indexterm></cindex>
+</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="562">disaggregate</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="563">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.
@@ -4814,7 +4906,8 @@ for grp_in in ${grp_lst} ; do
     eval ${cmd}
     if [ ${flg_cf} = 'cf' ]; then
        # cfchecker needs Conventions <= 1.5
-       ncatted -h -a Conventions,global,o,c,"CF-${cf_vrs}" ${drc_out}/${grp_out}.nc
+       no_bck_sls=`echo ${drc_out}/${grp_out} | sed 's/\\\ / /g'`
+       ncatted -h -a Conventions,global,o,c,CF-${cf_vrs} ${no_bck_sls}.nc
     else # !flg_cf
        echo ${drc_out}/${grp_out}.nc
     fi # !flg_cf
@@ -4856,12 +4949,15 @@ as <code>NC_STRING</code> and <code>NC_UBYTE</code>) to corresponding netCDF3
 atomic types (<code>NC_CHAR</code> and <code>NC_SHORT</code>) when the output format
 is netCDF3. 
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="562"><acronym><acronymword>CF</acronymword></acronym> compliance checker</indexterm></cindex>
+</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="564"><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="563">compliance checker</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="564">Martin Schultz</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="565">Michael Decker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="565">compliance checker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="566">Martin Schultz</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="567">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>,
@@ -4924,15 +5020,15 @@ of the procedure necessary to check <acronym><acronymword>HDF</acronymword></acr
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
 cat > ~/ncdismember.txt << 'EOF'
-    Preparing an RPM-based OS to Test Hierarchical Files for CF-Compliance
+    Preparing an RPM-based OS to Test HDF & netCDF Files for CF-Compliance
 
 By Charlie Zender, UCI & NASA Dataset Interoperability Working Group (DIWG)
 
 Installation Summary:
-1. HDF4 [with netCDF support _disabled_]
+1. HDF4 [with internal netCDF support _disabled_]
 2. HDF5
-3. netCDF version 4.3.1 (or later) [with HDF4 support _enabled_]
-4. NCO version 4.4.0 (or later)
+3. netCDF [with external HDF4 support _enabled_]
+4. NCO
 5. numpy
 6. netcdf4-python
 7. python-lxml
@@ -4963,20 +5059,19 @@ cd hdf5-1.8.11
 ./configure --enable-shared --prefix=${H5DIR}
 make && make check && make install
 
-# 3. netCDF version 4.3.1. Build in non-default manner with HDF4. No RPM.
+# 3. netCDF version 4.3.1 or later. Build in non-default manner with HDF4.
 # Per http://www.unidata.ucar.edu/software/netcdf/docs/build_hdf4.html
 # Earlier versions of netCDF may fail checking some HDF4 files
-wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.1.tar.gz
-tar xvzf netcdf-4.3.1.tar.gz
-cd netcdf-4.3.1
+wget -c ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.3.2.tar.gz
+tar xvzf netcdf-4.3.2.tar.gz
+cd netcdf-4.3.2
 CPPFLAGS="-I${H5DIR}/include -I${H4DIR}/include" \
 LDFLAGS="-L${H5DIR}/lib -L${H4DIR}/lib" \
 ./configure --enable-hdf4 --enable-hdf4-file-tests
-make && make check && make installas
+make && make check && make install
 
-# 4. NCO version 4.4.4. No RPM for this version. Must install by hand.
-# Earlier versions of NCO are relatively useless for ncdismember
-cd ${DATA}/tmp
+# 4. NCO version 4.4.0 or later. Some RPMs available. Or install by hand.
+# Later versions of NCO have much better support for ncdismember
 wget http://nco.sourceforge.net/src/nco-4.4.4.tar.gz .
 tar xvzf nco-4.4.4.tar.gz
 cd nco-4.4.4
@@ -4994,14 +5089,13 @@ sudo yum install python-lxml -y
 
 # 8. CFunits-python. No RPM available. Must install by hand.
 # http://code.google.com/p/cfunits-python/
-cd ${DATA}/tmp
 wget http://cfunits-python.googlecode.com/files/cfunits-0.9.6.tar.gz .
+tar xvzf cfunits-0.9.6.tar.gz
 cd cfunits-0.9.6
 sudo python setup.py install
 
 # 9. CFChecker. No RPM available. Must install by hand.
 # https://bitbucket.org/mde_/cfchecker
-cd ${DATA}/tmp
 wget https://bitbucket.org/mde_/cfchecker/downloads/CFchecker-1.5.15.tar.bz2 . 
 tar xvjf CFchecker-1.5.15.tar.bz2 
 cd CFchecker
@@ -5033,14 +5127,15 @@ EOF
 <a name="ftn"></a> <!&textndash; http://nco.sf.net/nco.html#ftn &textndash;>
 <a name="-F"></a> <!&textndash; http://nco.sf.net/nco.html#-F &textndash;>
 </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>
 <section spaces=" "><sectiontitle>C and Fortran Index conventions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="566">index convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="567">Fortran index convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="568">C index convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="569"><code>-F</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="570"><code>--fortran</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="568">index convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="569">Fortran index convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="570">C index convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="571"><code>-F</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="572"><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>,
@@ -5048,7 +5143,7 @@ EOF
 Short options: <samp>-F</samp>&linebreak;
 Long options: <samp>--fortran</samp>&linebreak;
 </para></cartouche>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="571">I/O</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="573">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. 
@@ -5058,17 +5153,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="572">transpose</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="574">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="573">record variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="575">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="574">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="576">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
@@ -5099,12 +5194,12 @@ lon(1)=0 lev(1)=100 lat(1)=-90 three_dmn_var(1)=0
 </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>
 <section spaces=" "><sectiontitle>Hyperslabs </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="575">hyperslab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="576">dimension limits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="577">coordinate limits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="578"><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="579"><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="580"><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="577">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="578">dimension limits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="579">coordinate limits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="580"><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="581"><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="582"><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>,
@@ -5141,7 +5236,7 @@ ncks -F -d lon,1,2 in.nc out.nc
 ncks -d lon,1,2 in.nc out.nc
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="581">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="583">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. 
@@ -5198,13 +5293,13 @@ ncks -F -d lon,-3, 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="582"><code>NC_CHAR</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="584"><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="583">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="585">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.
@@ -5242,10 +5337,10 @@ This option may be specified more than once in a single command
 </section>
 <node name="Stride" spaces=" "><nodename>Stride</nodename><nodenext spaces=" ">Record Appending</nodenext><nodeprev spaces=" ">Hyperslabs</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Stride </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="584">stride</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>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="586">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="587"><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="588"><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="589"><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>,
@@ -5298,18 +5393,20 @@ 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="588">Bourne Shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="589">C Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="590">Bourne Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="591">C Shell</indexterm></cindex>
 </para><example endspaces=" ">
-<pre xml:space="preserve">for idx in 02 14 26 38 50; do # Bourne Shell
-  ncks -d time,${idx} 8501_8912.nc foo.${idx}
+<verbatim xml:space="preserve">
+for idx in 02 14 26 38 50; do # Bourne Shell
+  ncks -d time,${idx} 8501_8912.nc foo.${idx}
 done
 foreach idx (02 14 26 38 50) # C Shell
-  ncks -d time,${idx} 8501_8912.nc foo.${idx}
+  ncks -d time,${idx} 8501_8912.nc foo.${idx}
 end
 ncrcat foo.?? 8589_03.nc
 rm foo.??
-</pre></example>
+</verbatim>
+</example>
 <para>With the <var>stride</var> option, <command>ncks</command> performs this hyperslab
 extraction in one operation:
 </para><example endspaces=" ">
@@ -5333,9 +5430,9 @@ ncrcat -F -d time,3,,12 85.nc 86.nc 87.nc 88.nc 89.nc 8503_8903.nc
 </section>
 <node name="Record-Appending" spaces=" "><nodename>Record Appending</nodename><nodenext spaces=" ">Subcycle</nodenext><nodeprev spaces=" ">Stride</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Record Appending</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="590">record append</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="591"><code>--rec_apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="592"><code>--record_append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="592">record append</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="593"><code>--rec_apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="594"><code>--record_append</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncra</command>, <command>ncrcat</command>&linebreak; 
 Short options: None&linebreak;
@@ -5411,15 +5508,15 @@ We recommend users try to understand the safety trade-offs involved.
 </section>
 <node name="Subcycle" spaces=" "><nodename>Subcycle</nodename><nodenext spaces=" ">Multislabs</nodenext><nodeprev spaces=" ">Record Appending</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Subcycle</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="593">duration</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="594">sub-cycle</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="595">subcycle</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="596">MRO</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="597">Multi-Record Operator</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="598"><code>--mro</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="599"><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="600"><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="601"><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="595">duration</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="596">sub-cycle</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="597">subcycle</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="598">MRO</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="599">Multi-Record Operator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="600"><code>--mro</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="601"><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="602"><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="603"><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;
@@ -5456,14 +5553,16 @@ Traditionally, we would first compute the climatological monthly
 mean for each month of summer. 
 Each of these is a 150-year mean, i.e., 
 </para><example endspaces=" ">
-<pre xml:space="preserve"># Step 1: Create climatological monthly files clm06.nc..clm08.nc
-for mth in {6..8}; do
+<verbatim xml:space="preserve">
+# Step 1: Create climatological monthly files clm06.nc..clm08.nc
+for mth in {6..8}; do
   mm=`printf "%02d" $mth`
-  ncra -O -F -d time,${mm},,12 -n 150,4,1 1850.nc clm${mm}.nc
+  ncra -O -F -d time,${mm},,12 -n 150,4,1 1850.nc clm${mm}.nc
 done
 # Step 2: Average climatological monthly files into summertime mean
 ncra -O clm06 clm07.nc clm08.nc clm_JJA.nc
-</pre></example>
+</verbatim>
+</example>
 <noindent></noindent>
 <para>So far, nothing is unusual and this task can be performed by any
 <acronym><acronymword>NCO</acronymword></acronym> version. 
@@ -5517,15 +5616,15 @@ records.
 </section>
 <node name="Multislabs" spaces=" "><nodename>Multislabs</nodename><nodenext spaces=" ">Wrapped Coordinates</nodenext><nodeprev spaces=" ">Subcycle</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Multislabs </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="602">multislab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="603">multi-hyperslab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="604"><acronym><acronymword>MSA</acronymword></acronym></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>]]]</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>]]]</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>]]]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="608"><code>--msa</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="609"><code>--msa_usr_rdr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="610"><code>--msa_user_order</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="604">multislab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="605">multi-hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="606"><acronym><acronymword>MSA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="607"><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="608"><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="609"><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="610"><code>--msa</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="611"><code>--msa_usr_rdr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="612"><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>,
@@ -5578,7 +5677,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="611">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="613">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
@@ -5595,7 +5694,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="612">I/O</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="614">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.
@@ -5715,11 +5814,11 @@ hyperslabs makes this clearer.
 </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>
 <section spaces=" "><sectiontitle>Wrapped Coordinates</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="613">wrapped coordinates</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="614">longitude</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="615"><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="616"><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="617"><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">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="616">longitude</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="617"><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="618"><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="619"><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;
@@ -5792,13 +5891,13 @@ values (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref
 </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>
 <section spaces=" "><sectiontitle>Auxiliary Coordinates</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="618"><code>-X</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="619"><code>--auxiliary</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="620"><code>standard_name</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="621"><code>coordinates</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="622"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="623"><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="624"><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="620"><code>-X</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="621"><code>--auxiliary</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="622"><code>standard_name</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="623"><code>coordinates</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="624"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="625"><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="626"><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>,
@@ -5816,7 +5915,7 @@ ranges.
 This works on datasets that associate coordinate variables to
 grid-mappings using the <acronym><acronymword>CF</acronymword></acronym>-convention (<pxref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></pxref>)   
 <code>coordinates</code> and <code>standard_name</code> attributes described 
-<uref><urefurl>http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
+<uref><urefurl>http://cfconventions.org/1.6.html#coordinate-system</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
 Currently, <acronym><acronymword>NCO</acronymword></acronym> understands auxiliary coordinate variables 
 pointed to by the <code>standard_name</code> attributes for <var>latitude</var> and 
 <var>longitude</var>.   
@@ -5824,7 +5923,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="625">cell-based grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="627">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
@@ -5936,13 +6035,13 @@ to avoid confusion.
 </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>
 <section spaces=" "><sectiontitle>UDUnits Support </sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="626">UDUnits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="627">Unidata</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="628"><code>units</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="629">attribute, <code>units</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="630"><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="631"><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="632"><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="628">UDUnits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="629">Unidata</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="630"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="631">attribute, <code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="632"><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="633"><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="634"><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>,
@@ -5964,7 +6063,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="633">MKS units</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="635">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
@@ -5975,7 +6074,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="634"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="636"><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.
@@ -5995,7 +6094,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="635">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="637">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. 
@@ -6017,8 +6116,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="636"><code>units</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="637"><code>time</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="638"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="639"><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>
@@ -6030,8 +6129,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="638">stride</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="639">whitespace</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="640">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="641">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
@@ -6047,7 +6146,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="640">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="642">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
@@ -6081,8 +6180,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="641">Climate and Forecast Metadata Convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="642"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="643">Climate and Forecast Metadata Convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="644"><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. 
@@ -6142,8 +6241,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="643">MKS units</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="644">God</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="645">MKS units</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="646">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. 
@@ -6226,9 +6325,9 @@ but also any bounds associated with the record coordinate (e.g.,
 </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>
 <section spaces=" "><sectiontitle>Multiple Record Dimensions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="645">netCDF4</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="646"><code>--mrd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="647"><code>--multiple_record_dimensions</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="647">netCDF4</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="648"><code>--mrd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="649"><code>--multiple_record_dimensions</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: 
 <command>ncecat</command>, <command>ncpdq</command> 
@@ -6285,11 +6384,11 @@ Use <samp>--mrd</samp> to override this.
 </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>
 <section spaces=" "><sectiontitle>Missing values</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="648">missing values</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="649">data, missing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="650">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="651"><code>missing_value</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="652"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="650">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="651">data, missing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="652">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="653"><code>missing_value</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="654"><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; 
@@ -6299,7 +6398,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="653">arithmetic operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="655">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:
@@ -6364,7 +6463,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="654">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="656">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>
@@ -6373,7 +6472,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="655"><command>ncatted</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="657"><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
@@ -6382,11 +6481,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="656">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="657">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="658">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="659">execution time</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="660">arithmetic operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="658">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="659">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="660">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="661">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="662">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.
@@ -6406,11 +6505,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="661"><command>nces</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="662"><command>ncra</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="663"><command>ncwa</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="664"><command>ncbo</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="665"><command>ncflint</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="663"><command>nces</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="664"><command>ncra</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="665"><command>ncwa</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="666"><command>ncbo</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="667"><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. 
@@ -6454,17 +6553,17 @@ important information from being lost.
 </section>
 <node name="Chunking" spaces=" "><nodename>Chunking</nodename><nodenext spaces=" ">Deflation</nodenext><nodeprev spaces=" ">Missing Values</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Chunking</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="666"><code>--cnk_byt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="667"><code>--cnk_dmn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="668"><code>--cnk_map</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="669"><code>--cnk_plc</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="670"><code>--cnk_scl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="671"><code>--chunk_byte</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="672"><code>--chunk_dimension</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="673"><code>--chunk_map</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="674"><code>--chunk_policy</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="675"><code>--chunk_scalar</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="676">chunking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="668"><code>--cnk_byt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="669"><code>--cnk_dmn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="670"><code>--cnk_map</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="671"><code>--cnk_plc</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="672"><code>--cnk_scl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="673"><code>--chunk_byte</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="674"><code>--chunk_dimension</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="675"><code>--chunk_map</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="676"><code>--chunk_policy</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="677"><code>--chunk_scalar</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="678">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>,
@@ -6489,9 +6588,9 @@ Dataset chunking issues are described in detail
 and
 <uref><urefurl>http://www.unidata.ucar.edu/blogs/developer/en/entry/chunking_data_choosing_shapes</urefurl><urefdesc>here</urefdesc></uref>.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="677">chunking policy</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="678">chunking map</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="679">chunksize</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="679">chunking policy</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="680">chunking map</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="681">chunksize</indexterm></cindex>
 <para>The <acronym><acronymword>NCO</acronymword></acronym> chunking implementation is designed to be flexible. 
 Users control three aspects of the chunking implementation.
 These are known as the <dfn>chunking policy</dfn>, <dfn>chunking map</dfn>,
@@ -6499,9 +6598,9 @@ and <dfn>chunksize</dfn>.
 The first two are high-level mechanisms that apply to an entire file
 and all variables and dimensions, while the third allows per-dimension
 specification of parameters. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="680">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="682">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="681">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="683">packing</indexterm></cindex>
 The implementation is 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 the hyperslab
 specifications (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref>).
@@ -6513,30 +6612,33 @@ performance.
 <para>The user specifies the desired chunking policy with the <samp>-P</samp> switch 
 (or its long option equivalents, <samp>--cnk_plc</samp> and
 <samp>--chunk_policy</samp>) and its <var>cnk_plc</var> argument.
-Five chunking policies are currently implemented:&linebreak;   
-<cindex index="cp" spaces=" "><indexterm index="cp" number="682"><samp>all</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="683"><samp>g2d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="684"><samp>g3d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="685"><samp>xpl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="686"><samp>xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="687"><samp>cnk_all</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="688"><samp>cnk_g2d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="689"><samp>cnk_g3d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="690"><samp>cnk_xpl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="691"><samp>cnk_xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="692"><samp>plc_all</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="693"><samp>plc_g2d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="694"><samp>plc_g3d</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="695"><samp>plc_xpl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="696"><samp>plc_xst</samp></indexterm></cindex>
+As of August, 2014, six chunking policies are currently implemented:&linebreak;
+<cindex index="cp" spaces=" "><indexterm index="cp" number="684"><samp>all</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="685"><samp>g2d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="686"><samp>g3d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="687"><samp>r1d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="688"><samp>xpl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="689"><samp>xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="690"><samp>cnk_all</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="691"><samp>cnk_g2d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="692"><samp>cnk_g3d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="693"><samp>cnk_r1d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="694"><samp>cnk_xpl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="695"><samp>cnk_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="696"><samp>plc_all</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="697"><samp>plc_g2d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="698"><samp>plc_g3d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="699"><samp>plc_r1d</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="700"><samp>plc_xpl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="701"><samp>plc_xst</samp></indexterm></cindex>
 </para><table commandarg="dfn" spaces=" " endspaces=" ">
-<tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk All Variables [<emph>default</emph>]</itemformat></item>
+<tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk All Variables</itemformat></item>
 </tableterm><tableitem><para>Definition: Chunk all variables possible.
 For obvious reasons, scalar variables cannot be chunked.&linebreak;
 Alternate invocation: <code>ncchunk</code>&linebreak;
 <var>cnk_plc</var> key values: <samp>all</samp>, <samp>cnk_all</samp>, <samp>plc_all</samp>&linebreak;
 Mnemonic: All&linebreak;
-</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk Variables with at least Two Dimensions</itemformat></item>
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk Variables with at least Two Dimensions [<emph>default</emph>]</itemformat></item>
 </tableterm><tableitem><para>Definition: Chunk all variables possible with at least two dimensions&linebreak;
 Alternate invocation: none&linebreak;
 <var>cnk_plc</var> key values: <samp>g2d</samp>, <samp>cnk_g2d</samp>, <samp>plc_g2d</samp>&linebreak;
@@ -6546,6 +6648,15 @@ Mnemonic: <emph>G</emph>reater than or equal to <emph>2</emph> <emph>D</emph>ime
 Alternate invocation: none&linebreak;
 <var>cnk_plc</var> key values: <samp>g3d</samp>, <samp>cnk_g3d</samp>, <samp>plc_g3d</samp>&linebreak;
 Mnemonic: <emph>G</emph>reater than or equal to <emph>3</emph> <emph>D</emph>imensions&linebreak;
+</para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk One-Dimensional Record Variables</itemformat></item>
+</tableterm><tableitem><para>Definition: Chunk all 1-D record variables&linebreak;
+Alternate invocation: none&linebreak;
+Any specified (with <samp>--cnk_dmn</samp>) record dimension chunksizes will
+be applied to 1-D record variables (and to no other variables).
+Other dimensions may be chunked with their own <samp>--cnk_dmn</samp> options 
+that will apply to all variables. 
+<var>cnk_plc</var> key values: <samp>r1d</samp>, <samp>cnk_r1d</samp>, <samp>plc_r1d</samp>&linebreak;
+Mnemonic: <emph>R</emph>ecord <emph>1</emph>-<emph>D</emph> variables&linebreak;
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="dfn">Chunk Variables Containing Explicitly Chunked Dimensions</itemformat></item>
 </tableterm><tableitem><para>Definition: Chunk all variables possible that contain at least one
 dimension whose chunksize was explicitly set with the <samp>--cnk_dmn</samp> option.
@@ -6576,12 +6687,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="697">chunking map</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="698">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="699"><var>cnk_map</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="700"><code>-M <var>cnk_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="701"><code>--cnk_map <var>cnk_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="702"><code>--map <var>cnk_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="702">chunking map</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="703">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="704"><var>cnk_map</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="705"><code>-M <var>cnk_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="706"><code>--cnk_map <var>cnk_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="707"><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
@@ -6590,26 +6701,26 @@ 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.
 Four chunking maps are currently implemented:&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="703"><samp>dmn</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="704"><samp>scl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="705"><samp>prd</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="706"><samp>lfp</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="707"><samp>rd1</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="708"><samp>xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="709"><samp>rew</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="710"><samp>cnk_dmn</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="711"><samp>cnk_scl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="712"><samp>cnk_prd</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="713"><samp>cnk_lfp</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="714"><samp>cnk_rd1</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="715"><samp>cnk_xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="716"><samp>map_dmn</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="717"><samp>map_scl</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="718"><samp>map_prd</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="719"><samp>map_lfp</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="720"><samp>map_rd1</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="721"><samp>map_xst</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="722">Chris Barker</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="708"><samp>dmn</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="709"><samp>scl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="710"><samp>prd</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="711"><samp>lfp</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="712"><samp>rd1</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="713"><samp>xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="714"><samp>rew</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="715"><samp>cnk_dmn</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="716"><samp>cnk_scl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="717"><samp>cnk_prd</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="718"><samp>cnk_lfp</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="719"><samp>cnk_rd1</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="720"><samp>cnk_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="721"><samp>map_dmn</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="722"><samp>map_scl</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="723"><samp>map_prd</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="724"><samp>map_lfp</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="725"><samp>map_rd1</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="726"><samp>map_xst</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="727">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. 
@@ -6719,7 +6830,25 @@ ncwa -O -4 -D 4 -a time --cnk_plc=g2d --cnk_map=rd1 --cnk_dmn lat,32 \
  --cnk_dmn lon,128 dstmch90_clm_0112.nc ~/foo.nc
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="723">record dimension</indexterm></cindex>
+<html endspaces=" ">
+<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>)
+chunksize. 
+Any specified record dimension chunksizes will be applied to 1-D
+record variables only. 
+Other dimensions may be chunked with their own <samp>--cnk_dmn</samp> options
+that will apply to all variables. 
+For example, 
+</para><example endspaces=" ">
+<pre xml:space="preserve">ncks --cnk_plc=r1d --cnk_dmn=time,1000. in.nc out.nc
+</pre></example>
+<para>This sets <code>time</code> chunks to 1000 only in 1-D record variables. 
+Without the <samp>r1d</samp> policy, <code>time</code> chunks would change in all 
+variables.   
+</para>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="728">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,
@@ -6745,12 +6874,12 @@ variables.
 </section>
 <node name="Deflation" spaces=" "><nodename>Deflation</nodename><nodenext spaces=" ">MD5 digests</nodenext><nodeprev spaces=" ">Chunking</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Deflation</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="724"><code>-L</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="725"><code>--deflate</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="726"><code>--dfl_lvl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="727">Lempel-Ziv deflation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="728">compression</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="729">deflation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="729"><code>-L</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="730"><code>--deflate</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="731"><code>--dfl_lvl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="732">Lempel-Ziv deflation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="733">compression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="734">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>,
@@ -6808,15 +6937,15 @@ ncpdq -4 -L 9 in.nc out.nc # Deflated packing  (~80% compression)
 </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>
 <section spaces=" "><sectiontitle>MD5 digests</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="730"><code>--md5_digest</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="731"><code>--md5_dgs</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="732"><code>--md5_wrt_att</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="733"><code>--md5_write_attribute</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="734">integrity</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="735">security</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="736">digest</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="737">hash</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="738">MD5 digest</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="735"><code>--md5_digest</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="736"><code>--md5_dgs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="737"><code>--md5_wrt_att</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="738"><code>--md5_write_attribute</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="739">integrity</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="740">security</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="741">digest</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="742">hash</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="743">MD5 digest</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: 
 <command>ncecat</command>, <command>ncks</command>, <command>ncrcat</command>&linebreak;
@@ -6911,12 +7040,12 @@ We welcome feedback and suggestions from users.
 </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>
 <section spaces=" "><sectiontitle>Buffer sizes</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="739"><code>--bfr_sz_hnt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="740">Buffer sizes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="741">File buffers</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="742"><command>stat() system call</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="743">I/O block size</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="744">System calls</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="744"><code>--bfr_sz_hnt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="745">Buffer sizes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="746">File buffers</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="747"><command>stat() system call</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="748">I/O block size</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="749">System calls</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: &linebreak;
@@ -6956,19 +7085,19 @@ ncks: INFO nc__open() opened file with buffer size = 2097152 bytes
 </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>
 <section spaces=" "><sectiontitle>RAM disks</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="745"><code>--ram_all</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="746"><code>--create_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="747"><code>--open_ram</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="748"><code>--diskless_all</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="749"><acronym><acronymword>RAM</acronymword></acronym> disks</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="750"><acronym><acronymword>RAM</acronymword></acronym> files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="751"><code>NC_DISKLESS</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="752">diskless files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="753">memory requirements</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="754">memory available</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="755"><acronym><acronymword>RAM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="756">swap space</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="757">peak memory usage</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="750"><code>--ram_all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="751"><code>--create_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="752"><code>--open_ram</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="753"><code>--diskless_all</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="754"><acronym><acronymword>RAM</acronymword></acronym> disks</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="755"><acronym><acronymword>RAM</acronymword></acronym> files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="756"><code>NC_DISKLESS</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="757">diskless files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="758">memory requirements</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="759">memory available</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="760"><acronym><acronymword>RAM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="761">swap space</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="762">peak memory usage</indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: &linebreak;
@@ -7017,7 +7146,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="758"><acronym><acronymword>RAM</acronymword></acronym> variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="763"><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
@@ -7048,17 +7177,19 @@ an arbitrary number (set to one hundred thousand) of files are all
 symbolically linked to the same file. 
 Everything is on the local filesystem (not <acronym><acronymword>DAP</acronymword></acronym>).
 </para><example endspaces=" ">
-<pre xml:space="preserve"># Create symbolic links for benchmark
-cd ${DATA}/nco # Do all work here
-for idx in {1..99999}; do
-  idx_fmt=`printf "%05d" ${idx}`
-  /bin/ln -s ${DATA}/nco/LPRM-AMSR_E_L3_D_SOILM3_V002-20120512T111931Z_20020619.nc \
-             ${DATA}/nco/${idx_fmt}.nc
+<verbatim xml:space="preserve">
+# Create symbolic links for benchmark
+cd ${DATA}/nco # Do all work here
+for idx in {1..99999}; do
+  idx_fmt=`printf "%05d" ${idx}`
+  /bin/ln -s ${DATA}/nco/LPRM-AMSR_E_L3_D_SOILM3_V002-20120512T111931Z_20020619.nc \
+             ${DATA}/nco/${idx_fmt}.nc
 done
 # Benchmark time to ncecat one hundred thousand files
 time ncecat --create_ram -O -u time -v ts -d Latitude,40.0 \ 
- -d Longitude,-105.0 -p ${DATA}/nco -n 99999,5,1 00001.nc ~/foo.nc
-</pre></example>
+ -d Longitude,-105.0 -p ${DATA}/nco -n 99999,5,1 00001.nc ~/foo.nc
+</verbatim>
+</example>
 <para>Run normally on a laptop in 201303, this completes in <w>21 seconds</w>.
 The <samp>--create_ram</samp> reduces the elapsed time to <w>9 seconds</w>.
 Some of this speed may be due to using symlinks and caching.
@@ -7068,9 +7199,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="759">temporary output files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="760">temporary files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="761"><code>--no_tmp_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="764">temporary output files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="765">temporary files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="766"><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 
@@ -7083,16 +7214,16 @@ This is accomplished with the <samp>--no_tmp_fl</samp> switch
 </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>
 <section spaces=" "><sectiontitle>Packed data</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="762">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="763">unpacking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="764"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="765"><code>scale_factor</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="766"><code>missing_value</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="767"><code>_FillValue</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="768"><command>pack(x)</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="769"><command>unpack(x)</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="770"><code>--hdf_upk</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="771"><code>--hdf_unpack</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="767">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="768">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="769"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="770"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="771"><code>missing_value</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="772"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="773"><command>pack(x)</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="774"><command>unpack(x)</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="775"><code>--hdf_upk</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="776"><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; 
@@ -7195,8 +7326,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="772">interoperability</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="773"><acronym><acronymword>HDF</acronymword></acronym> unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="777">interoperability</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="778"><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 
@@ -7300,27 +7431,27 @@ Pack and unpack individual variables with <command>ncpdq</command> and the
 </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>
 <section spaces=" "><sectiontitle>Operation Types</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="774">operation types</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="775"><code>avg</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="776"><code>sqravg</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="777"><code>avgsqr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="778"><code>min</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="779"><code>max</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="780"><code>rmssdn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="781"><code>rms</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="782"><code>ttl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="783"><code>sqrt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="784">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="785">mean</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="786">total</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="787">minimum</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="788">maximum</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="789">root-mean-square</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="790">standard deviation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="791">variance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="792"><code>-y <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="793"><code>--operation <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="794"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="779">operation types</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="780"><code>avg</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="781"><code>sqravg</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="782"><code>avgsqr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="783"><code>min</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="784"><code>max</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="785"><code>rmssdn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="786"><code>rms</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="787"><code>ttl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="788"><code>sqrt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="789">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="790">mean</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="791">total</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="792">minimum</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="793">maximum</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="794">root-mean-square</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="795">standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="796">variance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="797"><code>-y <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="798"><code>--operation <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="799"><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;
@@ -7351,7 +7482,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="795">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="800">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
@@ -7585,7 +7716,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="796">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="801">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
@@ -7610,7 +7741,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="797">standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="802">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.
@@ -7701,7 +7832,7 @@ less required by the <command>ncbo</command> operation in the third step.
 </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>
 <section spaces=" "><sectiontitle>Type Conversion</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="798">type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="803">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; 
@@ -7710,10 +7841,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="799">promotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="800">demotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="801">automatic type conversion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="802">manual type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="804">promotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="805">demotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="806">automatic type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="807">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).  
@@ -7793,7 +7924,7 @@ This is why type conversion is limited to the operators <command>ncap2</command>
 <command>ncwa</command>.   
 </para></listitem><listitem spaces=" "><para>The arithmetic operation could benefit from type conversion.
 Operations that could benefit include averaging, summation, or any
-"hard" arithmetic that could overflow or underflow.  
+&textldquo;hard&textrdquo; arithmetic that could overflow or underflow.  
 Larger representable sums help avoid overflow, and more precision
 helps to avoid underflow.
 Type conversion does not benefit searching for minima and maxima
@@ -7827,7 +7958,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="803"><code>trunc()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="808"><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
@@ -7835,7 +7966,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="804">C language</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="809">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>.
@@ -7848,7 +7979,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="805">Neil Davis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="810">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>.
@@ -7863,11 +7994,11 @@ These functions round <var>x</var> to the nearest integer, halfway cases away
 from zero.
 The problem with <code>lround()</code> is that it always rounds real values
 ending in <code>.5</code> away from zero.
-This rounds, for example, <code>1.5d</code> and <code>2.5d</code> to <code>1s</code>
-and <code>2s</code>, respectively.
+This rounds, for example, <code>1.5d</code> and <code>2.5d</code> to <code>2s</code>
+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="806"><acronym><acronymword>IEEE</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="811"><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 
@@ -7895,12 +8026,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="807">promotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="808">implicit conversion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="809"><code>--dbl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="810"><code>--rth_dbl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="811"><code>--flt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="812"><code>--rth_flt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="812">promotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="813">implicit conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="814"><code>--dbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="815"><code>--rth_dbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="816"><code>--flt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="817"><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
@@ -7911,18 +8042,18 @@ More, err, precisely, the <acronym><acronymword>IEEE</acronymword></acronym> sin
 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 IEEE 754 single-precision and then converted back to the
+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 IEEE 754 single-precision is converted to a
+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>.
 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 IEEE 754 double-precision representation and then converted
+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 IEEE 754 double
+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>. 
@@ -7931,8 +8062,8 @@ 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="813">C language</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="814">Fortran</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="818">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="819">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,
@@ -8038,9 +8169,9 @@ seven significant figures for single precision floats (<code>tpt_flt</code>),
 and sixteen significant figures for double precision (<code>tpt_dbl</code>).
 The input precision determines the answer precision.
 </para>
-<para>IEEE arithmetic guarantees that two methods will produce bit-for-bit
-identical answers only if they compute the same operations in the same  
-order.  
+<para><acronym><acronymword>IEEE</acronymword></acronym> arithmetic guarantees that two methods will produce
+bit-for-bit identical answers only if they compute the same operations
+in the same order.  
 Bit-for-bit identical answers may also occur by happenstance when 
 rounding errors exactly compensate one another.
 This is demonstrated by repeating the example above with the
@@ -8103,9 +8234,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="815"><acronym><acronymword>TREFHT</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="816"><acronym><acronymword>CAM3</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="817"><acronym><acronymword>GCM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="820"><acronym><acronymword>TREFHT</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="821"><acronym><acronymword>CAM3</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="822"><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
@@ -8184,8 +8315,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="818">rounding</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="819">random walk</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="823">rounding</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="824">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 
@@ -8194,7 +8325,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="820">Michael Prather</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="825">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.
@@ -8203,8 +8334,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="821">mantissa</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="822">exponent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="826">mantissa</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="827">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>.
@@ -8237,7 +8368,7 @@ agreement.
 <!-- c P(>=25500,50000)= ? -->
 <!-- c fxm: Use Gaussian distribution/Random Walk -->
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="823">beer</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="828">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>. 
@@ -8310,7 +8441,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="824"><command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="829"><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
@@ -8329,17 +8460,17 @@ external type <code>NC_DOUBLE</code> (a C-type <code>double</code>).
 </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>
 <section spaces=" "><sectiontitle>Batch Mode</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="825">batch mode</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="826">overwriting files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="827">appending to files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="828">force overwrite</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="829">force append</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="830"><code>-O</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="831"><code>-A</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="832"><code>--overwrite</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="833"><code>--ovr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="834"><code>--apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="835"><code>--append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="830">batch mode</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="831">overwriting files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="832">appending to files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="833">force overwrite</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="834">force append</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="835"><code>-O</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="836"><code>-A</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="837"><code>--overwrite</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="838"><code>--ovr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="839"><code>--apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="840"><code>--append</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-O</samp>, <samp>-A</samp>&linebreak;
@@ -8370,13 +8501,13 @@ already contain the appended dimensions.
 </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>
 <section spaces=" "><sectiontitle>History Attribute</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="836"><code>history</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="837">timestamp</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="838">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="839">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="840"><code>-h</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="841"><code>--hst</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="842"><code>--history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="841"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="842">timestamp</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="843">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="844">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="845"><code>-h</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="846"><code>--hst</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="847"><code>--history</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-h</samp>&linebreak;
@@ -8403,7 +8534,7 @@ attributes.
 When more than one global attribute fits the case-insensitive search
 for "history", the first one found will be used.
 <code>history</code> attribute
-<cindex index="cp" spaces=" "><indexterm index="cp" number="843"><command>ncatted</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="848"><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 
@@ -8418,14 +8549,14 @@ Note that the <samp>-h</samp> switch also turns off writing the
 </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>
 <section spaces=" "><sectiontitle>File List Attributes</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="844"><code>nco_input_file_list</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="845"><code>nco_input_file_number</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="846"><code>stdin</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="847">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="848">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="849"><code>-H</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="850"><code>--fl_lst_in</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="851"><code>--file_list</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="849"><code>nco_input_file_list</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="850"><code>nco_input_file_number</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="851"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="852">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="853">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="854"><code>-H</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="855"><code>--fl_lst_in</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="856"><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;
@@ -8470,21 +8601,21 @@ may amount to many thousands of filenames in a metadata attribute.
 </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>
 <section spaces=" "><sectiontitle><acronym><acronymword>CF</acronymword></acronym> Conventions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="852"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="853"><acronym><acronymword>CCSM</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="854">UDUnits</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="855"><code>ORO</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="856"><code>area</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="857"><code>datesec</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="858"><code>date</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="859"><code>gw</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="860"><code>hyai</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="861"><code>hyam</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="862"><code>hybi</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="863"><code>hybm</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="864"><code>lat_bnds</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="865"><code>lon_bnds</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="866"><code>msk_*</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="857"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="858"><acronym><acronymword>CCSM</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="859">UDUnits</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="860"><code>ORO</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="861"><code>area</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="862"><code>datesec</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="863"><code>date</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="864"><code>gw</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="865"><code>hyai</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="866"><code>hyam</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="867"><code>hybi</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="868"><code>hybm</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="869"><code>lat_bnds</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="870"><code>lon_bnds</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="871"><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;
@@ -8502,8 +8633,8 @@ Nevertheless, we refer to all such metadata collectively as <acronym><acronymwor
 metadata. 
 Skip this section if you never work with <acronym><acronymword>CF</acronymword></acronym> metadata.
 </para>
-<para>The <acronym><acronymword>CF</acronymword></acronym> netCDF conventions are described 
-<uref><urefurl>http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
+<para>The latest <acronym><acronymword>CF</acronymword></acronym> netCDF conventions are described 
+<uref><urefurl>http://cfconventions.org/1.6.html</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
 Most <acronym><acronymword>CF</acronymword></acronym> netCDF conventions are transparent to <acronym><acronymword>NCO</acronymword></acronym>  
 <footnote spaces="\n"><para>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
@@ -8548,7 +8679,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="867">non-coordinate grid properties</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="872">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>,
@@ -8592,12 +8723,12 @@ 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="868"><code>bounds</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="869">bounds convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="873"><code>bounds</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="874">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 
-<uref><urefurl>http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#cell-boundaries</urefurl><urefdesc spaces=" ">here</urefdesc></uref>.
+<uref><urefurl>http://cfconventions.org/1.6.html#cell-boundaries</urefurl><urefdesc spaces=" ">here</urefdesc></uref>.
 This convention allows coordinate variables (including multidimensional
 coordinates) to describe the boundaries of their cells.
 This is done by naming the variable which contains the bounds in
@@ -8607,31 +8738,54 @@ NCO-generated subsets of <acronym><acronymword>CF</acronymword></acronym>-compli
 attributes will include the coordinates specified by the <code>bounds</code>
 attribute, if any.  
 Hence the subsets will themselves be <acronym><acronymword>CF</acronymword></acronym>-compliant.
+Bounds are subject to the user-specified override switches
+(including <samp>-c</samp> and <samp>-C</samp>) described in 
+<ref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetting Coordinate Variables</xrefnodename></ref>. 
+</para>
+<html endspaces=" ">
+<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="875"><code>ancillary_variables</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="876">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 
+<uref><urefurl>http://cfconventions.org/1.6.html#ancillary-data</urefurl><urefdesc spaces=" ">here</urefdesc></uref>.
+This convention allows ancillary variables to be associated with one or
+more primary variables.
+<acronym><acronymword>NCO</acronymword></acronym> attaches any such variables to the extraction list along 
+with the primary variable and its usual (one-dimensional) coordinates,
+if any. 
+Ancillary variables are subject to the user-specified override switches 
+(including <samp>-c</samp> and <samp>-C</samp>) described in 
+<ref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetting Coordinate Variables</xrefnodename></ref>. 
 </para>
 <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="870"><code>coordinates</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="871">coordinates convention</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="872">coordinate variable</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="873">auxiliary coordinates</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="874">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="875"><code>-C</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="876"><code>-c</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="877"><code>--no-coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="878"><code>--no-crd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="879"><code>--coords</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="880"><code>--crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="877"><code>coordinates</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="878">coordinates convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="879">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="880">auxiliary coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="881">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="882"><code>-C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="883"><code>-c</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="884"><code>--no-coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="885"><code>--no-crd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="886"><code>--coords</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="887"><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://cf-pcmdi.llnl.gov/documents/cf-conventions/1.6/cf-conventions.html#coordinate-system</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
+<uref><urefurl>http://cfconventions.org/1.6.html#coordinate-system</urefurl><urefdesc spaces=" ">here</urefdesc></uref>. 
 This convention allows variables to specify additional coordinates
 (including multidimensional coordinates) in a space-separated string
 attribute named <code>coordinates</code>. 
-NCO attaches any such coordinates to the extraction list along with
-variable and its usual (one-dimensional) coordinates, if any.
-These auxiliary coordinates are subject to the user-specified overrides
-described in <ref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetting Coordinate Variables</xrefnodename></ref>.
+<acronym><acronymword>NCO</acronymword></acronym> attaches any such coordinates to the extraction list along
+with variable and its usual (one-dimensional) coordinates, if any.
+These auxiliary coordinates are subject to the user-specified override
+switches (including <samp>-c</samp> and <samp>-C</samp>) described in 
+<ref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetting Coordinate Variables</xrefnodename></ref>. 
 </para>
 <html endspaces=" ">
 <a name="cnv_CF_cll_mth"></a> <!&textndash; http://nco.sf.net/nco.html#cnv_CF_cll_mth &textndash;>
@@ -8639,15 +8793,15 @@ described in <ref label="Subsetting-Coordinate-Variables"><xrefnodename>Subsetti
 <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="881"><code>cell_methods</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="882"><code>--cll_mth</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="883"><code>--no_cll_mth</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="884"><code>--cell_methods</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="885"><code>--no_cell_methods</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="886">cell methods convention</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="888"><code>cell_methods</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="889"><code>--cll_mth</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="890"><code>--no_cll_mth</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="891"><code>--cell_methods</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="892"><code>--no_cell_methods</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="893">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://cf-pcmdi.llnl.gov/documents/cf-conventions/1.7-draft1/cf-conventions.html#cell-methods</urefurl><urefdesc spaces=" ">convention</urefdesc></uref>
+<uref><urefurl>http://cfconventions.org/1.6.html#cell-methods</urefurl><urefdesc spaces=" ">convention</urefdesc></uref>
 to describe the analysis procedures that have been applied to data.
 The convention creates (or appends to an existing) <code>cell_methods</code>
 attribute a space-separated list of couplets of the form <var>dmn: op</var>
@@ -8680,10 +8834,10 @@ These options are only available in the operators <command>ncwa</command> and
 </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>
 <section spaces=" "><sectiontitle><acronym><acronymword>ARM</acronymword></acronym> Conventions</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="887"><acronym><acronymword>ARM</acronymword></acronym> conventions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="888"><code>time_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="889"><code>base_time</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="890"><code>time</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="894"><acronym><acronymword>ARM</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="895"><code>time_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="896"><code>base_time</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="897"><code>time</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: <command>ncrcat</command>&linebreak;
 Short options: None&linebreak;
@@ -8719,9 +8873,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="891"><code>history</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="892">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="893">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="898"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="899">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="900">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>
@@ -8732,12 +8886,12 @@ whenever these <acronym><acronymword>ARM</acronymword></acronym>-specific proced
 </section>
 <node name="Operator-Version" spaces=" "><nodename>Operator Version</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">ARM Conventions</nodeprev><nodeup spaces=" ">Common features</nodeup></node>
 <section spaces=" "><sectiontitle>Operator Version</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="894">version</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="895"><acronym><acronymword>RCS</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="896"><code>-r</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="897"><code>--revision</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="898"><code>--version</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="899"><code>--vrs</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="901">version</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="902"><acronym><acronymword>RCS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="903"><code>-r</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="904"><code>--revision</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="905"><code>--version</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="906"><code>--vrs</code></indexterm></cindex>
 <cartouche endspaces=" ">
 <para>Availability: All operators&linebreak;
 Short options: <samp>-r</samp>&linebreak;
@@ -8771,7 +8925,7 @@ This tells you that <command>ncks</command> contains all patches up to version
 <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="900">command line switches</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="907">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.
@@ -8800,12 +8954,11 @@ described in any detail in the sections below.
 </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>
 <section spaces=" "><sectiontitle><command>ncap2</command> netCDF Arithmetic Processor</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="901">parser</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="902">lexer</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="903">arithmetic processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="908">parser</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="909">lexer</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="910">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=" ">
 <para><command>ncap2</command> understands a relatively full-featured 
 language of operations, including loops, conditionals, arrays,
@@ -8844,11 +8997,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="904">script file</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="905"><code>--script-file</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="906"><code>--fl_spt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="907"><code>--script</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="908"><code>--spt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="911">script file</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="912"><code>--script-file</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="913"><code>--fl_spt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="914"><code>--script</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="915"><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>)
@@ -8857,7 +9010,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="909">derived fields</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="916">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>. 
@@ -8868,7 +9021,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="910">appending variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="917">appending variables</indexterm></cindex>
 NB: As of 20120515, <command>ncap2</command> is unable to append to files that
 already contain the appended dimensions. 
 </para>
@@ -8909,7 +9062,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="911">derived fields</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="918">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
@@ -8929,49 +9082,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="912">statement</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="913">syntax</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="919">statement</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="920">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="914">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="921">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="915">array syntax</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="916"><code>[]</code> (array delimiters)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="922">array syntax</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="923"><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="917">array indexing</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="924">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="918">array storage</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="925">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="919">assignment statement</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="920">semi-colon</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="921"><code>;</code> (end of statement)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="926">assignment statement</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="927">semi-colon</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="928"><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="922">comments</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="923"><code>/*...*/</code> (comment)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="924"><code>//</code> (comment)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="929">comments</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="930"><code>/*...*/</code> (comment)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="931"><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="925">including files</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="926">nesting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="927"><code>#include</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="932">including files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="933">nesting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="934"><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="928">attribute syntax</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="929"><code>&arobase;</code> (attribute)</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="935">attribute syntax</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="936"><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> 
@@ -8981,12 +9134,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="930">expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="937">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="931">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="938">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=" ">
@@ -9015,8 +9168,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="932">broadcasting variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="933">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="939">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="940">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
@@ -9039,7 +9192,8 @@ to precision and rank.&linebreak;
 Examples:
 </para>
 <example endspaces=" ">
-<pre xml:space="preserve">dimensions: time=10, lat=2, lon=4
+<verbatim xml:space="preserve">
+dimensions: time=10, lat=2, lon=4
 Suppose we have the two variables:
 
 double  P(time,lat,lon);
@@ -9064,15 +9218,16 @@ PZ0 =
 Once the expression is evaluated then PZ will be of type double;
 
 Consider now 
- start=four-att_var&arobase;double_att;  // start =-69  and is of type intger;
+ start=four-att_var at double_att;  // start =-69  and is of type intger;
  four_pow=four^3.0f               // four_pow=64 and is of type float  
  three_nw=three_dmn_var_sht*1.0f; // type is now float
- start&arobase;n1=att_var&arobase;short_att*att_var&arobase;int_att; 
-                                  // start&arobase;n1=5329 and is type int 
-</pre></example>
+ start at n1=att_var at short_att*att_var at int_att; 
+                                  // start at n1=5329 and is type int 
+</verbatim>
+</example>
 
 <noindent></noindent> <para><strong>Binary Operators</strong> &linebreak; 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="934">binary Operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="941">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
@@ -9134,7 +9289,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="935">conditional Operator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="942">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
@@ -9142,17 +9297,19 @@ returned else exp3 is returned.
 </para>
 <para>Example:
 </para><example endspaces=" ">
-<pre xml:space="preserve">weight_avg=weight.avg();
-weight_avg&arobase;units= (weight_avg == 1 ? "kilo" : "kilos");  
+<verbatim xml:space="preserve">
+weight_avg=weight.avg();
+weight_avg at units= (weight_avg == 1 ? "kilo" : "kilos");  
 PS_nw=PS-(PS.min() > 100000 ? 100000 : 0);
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="clp"></a> <!&textndash; http://nco.sf.net/nco.html#clp &textndash;>
 <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="936">clipping operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="943">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
@@ -9183,8 +9340,8 @@ 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="937">defining dimensions in <command>ncap2</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="938"><code>defdim()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="944">defining dimensions in <command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="945"><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);
@@ -9249,9 +9406,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="939">hybrid coordinate system</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="940">left hand casting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="941"><acronym><acronymword>LHS</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="946">hybrid coordinate system</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="947">left hand casting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="948"><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.
@@ -9315,10 +9472,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="942"><code>array</code> function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="943">arrays</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="944">findgen-equivalent</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="945">indgen-equivalent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="949"><code>array</code> function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="950">arrays</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="951">findgen-equivalent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="952">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 
@@ -9356,7 +9513,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="946">hyperslabs</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="953">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
@@ -9387,8 +9544,9 @@ The number of hyperslab arguments MUST equal the variable&textrsquo;s rank.
 </para>
 <para>A simple 1D example:
 </para><example endspaces=" "> 
-<pre xml:space="preserve">($time.size=10)
-od[$time]={20,22,24,26,28,30,32,34,36,38};
+<verbatim xml:space="preserve">
+($time.size=10)
+od[$time]={20,22,24,26,28,30,32,34,36,38};
 
 od(7);     // 34
 od(7:);    // 34,36,38
@@ -9396,13 +9554,15 @@ od(:7);    // 20,22,24,26,28,30,32,34
 od(::4);   // 20,28,36
 od(1:6:2)  // 22,26,30
 od(:)      // 20,22,24,26,28,30,32,34,36,38 
-</pre></example>
+</verbatim>
+</example>
 
 <para>A more complex three dimensional example:
 </para><example endspaces=" ">
-<pre xml:space="preserve">($lat.size=2,$lon.size=4)
+<verbatim xml:space="preserve">
+($lat.size=2,$lon.size=4)
 th[$time,$lat,$lon]=      
-                          {1, 2, 3, 4, 5, 6, 7, 8,
+                          {1, 2, 3, 4, 5, 6, 7, 8,
                           9,10,11,12,13,14,15,16,
                           17,18,19,20,21,22,23,24,
                           -99,-99,-99,-99,-99,-99,-99,-99,
@@ -9411,13 +9571,14 @@ th[$time,$lat,$lon]=
                           49,50,51,52,53,54,55,56,
                           -99,58,59,60,61,62,63,64,
                           65,66,67,68,69,70,71,72,
-                          -99,74,75,76,77,78,79,-99 };
+                          -99,74,75,76,77,78,79,-99 };
 
 th(1,1,3);        // 16
 th(2,0,:);        // 17, 18, 19, 20
 th(:,1,3);        // 8, 16, 24, -99, 40, 48, 56, 64, 72, -99 
 th(::5,:,0:3:2); // 1, 3, 5, 7, 41, 43, 45, 47
-</pre></example>
+</verbatim>
+</example>
 
 <para>If hyperslab arguments collapse to a single value (a cross-section has
 been specified), then that dimension is removed from the returned
@@ -9469,17 +9630,19 @@ prs(:,1,:,:)=th1
 </pre></example>
 
 <noindent></noindent> <para><strong>Reverse method</strong>&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="947">reverse()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="954">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., 
 </para><example endspaces=" "> 
-<pre xml:space="preserve">th_rv=th(1 ,:,:).reverse($lon); // {12,11,10,9 }, {16,15,14,13}
-od_rv=od.reverse($time);        // {38,36,34,32,30,28,26,24,22,20}
-</pre></example>
+<verbatim xml:space="preserve">
+th_rv=th(1 ,:,:).reverse($lon); // {12,11,10,9 }, {16,15,14,13}
+od_rv=od.reverse($time);        // {38,36,34,32,30,28,26,24,22,20}
+</verbatim>
+</example>
 
 <noindent></noindent> <para><strong>Permute method</strong>p&linebreak;
-<cindex index="cp" spaces=" "><indexterm index="cp" number="948">permute()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="955">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. 
@@ -9510,27 +9673,31 @@ 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="949">attributes<command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="956">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=" ">
-<pre xml:space="preserve">global&arobase;text="Test Attributes"; /* Assign a global variable attribute */
+<verbatim xml:space="preserve">
+global at text="Test Attributes"; /* Assign a global variable attribute */
 a1[$time]=time*20;
-a1&arobase;long_name="Kelvin";
-a1&arobase;min=a1.min();
-a1&arobase;max=a1.max();
-a1&arobase;min++;
---a1&arobase;max; q
-a1(0)=a1&arobase;min;
-a1($time.size-1)=a1&arobase;max;
-</pre></example>
+a1 at long_name="Kelvin";
+a1 at min=a1.min();
+a1 at max=a1.max();
+a1 at min++;
+--a1 at max; q
+a1(0)=a1 at min;
+a1($time.size-1)=a1 at max;
+</verbatim>
+</example>
 
 <para>A <emph>value list</emph> can be used on the RHS of an assign...
-<cindex index="cp" spaces=" "><indexterm index="cp" number="950">value list</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="957">value list</indexterm></cindex>
 </para><example endspaces=" ">
-<pre xml:space="preserve">a1&arobase;trip1={1,2,3} ;
-a1&arobase;triplet={a1&arobase;min,(a1&arobase;min+a1&arobase;max)/2,a1&arobase;max}; 
-</pre></example>
+<verbatim xml:space="preserve">
+a1 at trip1={1,2,3} ;
+a1 at triplet={a1 at min,(a1 at min+a1@max)/2,a1 at max}; 
+</verbatim>
+</example>
 <para>The netCDF specification allows all attribute types to have a size
 greater than one. 
 The maximum is defined by <code>NC_MAX_ATTRS</code>.
@@ -9547,15 +9714,17 @@ The following is an <command>ncdump</command> of the metadata for variable <var>
 <para>The <code>size()</code> method can be used with attributes.
 For example, to save an attribute text string in a variable,
 </para><example endspaces=" ">
-<pre xml:space="preserve">defdim("sng_len", a1&arobase;long_name.size());
-sng_arr[$sng_len]=a1&arobase;long_name; // sng_arr now contains "Kelvin" 
-</pre></example>
+<verbatim xml:space="preserve">
+defdim("sng_len", a1 at long_name.size());
+sng_arr[$sng_len]=a1 at long_name; // sng_arr now contains "Kelvin" 
+</verbatim>
+</example>
 <para>Attributes defined in a script are stored in memory and are written to Output after script completion.
 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="951">attribute propagation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="952">attribute inheritance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="958">attribute propagation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="959">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 "inherits" attributes from an Input variable with the same name
@@ -9571,8 +9740,10 @@ th_min=1.0 + 2*three_dmn_var_dbl.min($time);
 
 <para>If the attribute name contains non-regular characters use ID quoting. See <pxref label="ID-Quoting"><xrefnodename>ID Quoting</xrefnodename></pxref>
 </para><example endspaces=" ">
-<pre xml:space="preserve">'b..m1&arobase;c--lost'=23;
-</pre></example>
+<verbatim xml:space="preserve">
+'b..m1 at c--lost'=23;
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="ncap_num"></a> <!&textndash; http://nco.sf.net/nco.html#ncap_num &textndash;>
@@ -9580,33 +9751,37 @@ 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="953">number literals <command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="960">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
 the netCDF4 library and the output file must be <acronym><acronymword>HDF5</acronymword></acronym>.
 </para>
 <example endspaces=" ">
-<pre xml:space="preserve">n1[$time]=1UL; // n1 will now by type <code>NC_UINT</code>
-n2[$lon]=4b;   // n2 will be of type <code>NC_BYTE</code>
-n3[$lat]=5ull; // n3 will be of type <code>NC_UINT64</code>  
-n3&arobase;a1=6.0d;   // attribute will be type <code>NC_DOUBLE</code>
-n3&arobase;a2=-666L;  // attribute will be type <code>NC_INT</code>
-</pre></example>
+<verbatim xml:space="preserve">
+n1[$time]=1UL; // n1 will now by type @code{NC_UINT}
+n2[$lon]=4b;   // n2 will be of type @code{NC_BYTE}
+n3[$lat]=5ull; // n3 will be of type @code{NC_UINT64}  
+n3 at a1=6.0d;   // attribute will be type @code{NC_DOUBLE}
+n3 at a2=-666L;  // attribute will be type @code{NC_INT}
+</verbatim>
+</example>
 
 <para>A floating point number without a postfix will default to
 <code>NC_DOUBLE</code>. 
 An integer without a postfix will default to type <code>NC_INT</code>. 
 There is no postfix for characters, use a quoted string instead.
 </para><example endspaces=" ">
-<pre xml:space="preserve">n4[$rlev]=0.1      // n4 will be of type <code>NC_DOUBLE</code>
-n5[$lon_grd]=2.0   // n5 will be of type <code>NC_DOUBLE</code>
-n6[$gds_crd]=2e3;  // n6 will be of type <code>NC_DOUBLE</code>
-n7[$gds_crd]=2e3f;  // n7 will be of type <code>NC_FLOAT</code>
-n6&arobase;a1=41;         // attribute will be type <code>NC_INT</code>
-n6&arobase;a2=-21;        // attribute will be type <code>NC_INT</code>  
-n6&arobase;units="kelvin" // attribute will be type <code>NC_CHAR</code>
-</pre></example> 
+<verbatim xml:space="preserve">
+n4[$rlev]=0.1      // n4 will be of type @code{NC_DOUBLE}
+n5[$lon_grd]=2.0   // n5 will be of type @code{NC_DOUBLE}
+n6[$gds_crd]=2e3;  // n6 will be of type @code{NC_DOUBLE}
+n7[$gds_crd]=2e3f;  // n7 will be of type @code{NC_FLOAT}
+n6 at a1=41;         // attribute will be type @code{NC_INT}
+n6 at a2=-21;        // attribute will be type @code{NC_INT}  
+n6 at units="kelvin" // attribute will be type @code{NC_CHAR}
+</verbatim>
+</example> 
 
 <table commandarg="asis" spaces=" " endspaces=" ">
 <tableentry><tableterm><item spaces=" "><itemformat command="asis"><strong>netCDF3/4 Types</strong></itemformat></item>
@@ -9641,12 +9816,13 @@ n6&arobase;units="kelvin" // attribute will be type <code>NC_CHAR</cod
 </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="954">if()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="961">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. 
 </para><example endspaces=" ">
-<pre xml:space="preserve">if(exp1)
+<verbatim xml:space="preserve">
+if(exp1)
    stmt1;
 else if(exp2)     
    stmt2;
@@ -9654,18 +9830,19 @@ else
    stmt3;
 
 # Can use code blocks as well:
-if(exp1){
+if(exp1){
    stmt1;
    stmt1a;
    stmt1b;
-} else if(exp2)     
+}else if(exp2)     
    stmt2; 
-else {
+else{
    stmt3;
    stmt3a;
    stmt3b;
-}     
-</pre></example>
+}   
+</verbatim>
+</example>
 
 <!-- comment Truth -->
 <noindent></noindent> <para>For a variable or attribute expression to be logically true
@@ -9677,35 +9854,37 @@ OR (<code>||</code>) and AND (<code>&&</code>) operators.
 The whole expression is evaluated regardless if one of the AND/OR
 operands are True/False.
 </para><example endspaces=" ">
-<pre xml:space="preserve"># Simple example
+<verbatim xml:space="preserve">
+# Simple example
 if(time>0)
   print("All values of time are greater than zero\n");
 else if( time<0)
   print("All values of time are less than zero\n");   
-else {
+else {
   time_max=time.max();
   time_min=time.min();
   print("min value of time=");print(time_min,"%f");
   print("max value of time=");print(time_max,"%f");
-}
+}
 
 # Example from ddra.nco
-if(fl_typ==fl_typ_gcm){
+if(fl_typ==fl_typ_gcm){
   var_nbr_apx=32;
   lmn_nbr=1.0*var_nbr_apx*varsz_gcm_4D; /* [nbr] Variable size */
-  if(nco_op_typ==nco_op_typ_avg){
+  if(nco_op_typ==nco_op_typ_avg){
     lmn_nbr_avg=1.0*var_nbr_apx*varsz_gcm_4D; // Block size
     lmn_nbr_wgt=dmnsz_gcm_lat; /* [nbr] Weight size */
-  } // !nco_op_typ_avg
-}else if(fl_typ==fl_typ_stl){
+  } // !nco_op_typ_avg
+}else if(fl_typ==fl_typ_stl){
   var_nbr_apx=8;
   lmn_nbr=1.0*var_nbr_apx*varsz_stl_2D; /* [nbr] Variable size */
-  if(nco_op_typ==nco_op_typ_avg){
+  if(nco_op_typ==nco_op_typ_avg){
     lmn_nbr_avg=1.0*var_nbr_apx*varsz_stl_2D; // Block size
     lmn_nbr_wgt=dmnsz_stl_lat; /* [nbr] Weight size */
-  } // !nco_op_typ_avg
-} // !fl_typ
-</pre></example>
+  } // !nco_op_typ_avg
+} // !fl_typ
+</verbatim>
+</example>
 
 <noindent></noindent> <para><strong>Conditional Operator &linebreak;</strong>
 </para><example endspaces=" ">
@@ -9720,7 +9899,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="955">print() <command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="962">print() <command>ncap2</command></indexterm></cindex>
 <example endspaces=" ">
 <pre xml:space="preserve">print(variable_name/attribute name/string, format string);
 </pre></example>  
@@ -9736,7 +9915,8 @@ will be saved and can be printed), and then print the variable.
 </para>
 <noindent></noindent> <para>examples
 </para><example endspaces=" ">
-<pre xml:space="preserve">print(lon);
+<verbatim xml:space="preserve">
+print(lon);
 lon[0]=0 
 lon[1]=90 
 lon[2]=180 
@@ -9745,12 +9925,13 @@ lon[3]=270
 print(lon_2D_rrg,"%3.2f,");
 0.00,0.00,180.00,0.00,180.00,0.00,180.00,0.00,
 
-print(mss_val_fst&arobase;_FillValue);
-mss_val_fst&arobase;_FillValue, size = 1 NC_FLOAT, value = -999
+print(mss_val_fst at _FillValue);
+mss_val_fst at _FillValue, size = 1 NC_FLOAT, value = -999
 
 print("This function \t is monotonic\n");
 This function is 	  monotonic
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="ncap_miss"></a> <!&textndash; http://nco.sf.net/nco.html#ncap_miss &textndash;>
@@ -9758,7 +9939,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="956">missing values ncap2</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="963">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=" ">
@@ -9801,7 +9982,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="957"><code>set_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="964"><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.
@@ -9814,28 +9995,29 @@ 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="958"><code>change_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="965"><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="959"><code>get_miss()</code></indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="966"><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="960"><code>delete_miss()</code></indexterm></cindex>
- <para>Deletes the missing value associated with a variable.
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="967"><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="961"><code>number_miss()</code></indexterm></cindex>
- <para>Counts the number of missing values a variable contains.
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="968"><code>number_miss()</code></indexterm></cindex>
+ <para>Count the number of missing values a variable contains.
 </para></tableitem></tableentry></table>
 
 <example endspaces=" ">
-<pre xml:space="preserve">th=three_dmn_var_dbl;
+<verbatim xml:space="preserve">
+th=three_dmn_var_dbl;
 th.change_miss(-1e10d);
 /* Set values less than 0 or greater than 50 to missing value */
 where(th < 0.0 || th > 50.0) th=th.get_miss();
@@ -9852,11 +10034,12 @@ elsewhere
 
 // Print missing value and variable summary
 mss_val_nbr=three_dmn_var_dbl.number_miss();
-print(three_dmn_var_dbl&arobase;_FillValue);
+print(three_dmn_var_dbl at _FillValue);
 print("Number of missing values in three_dmn_var_dbl: ");
 print(mss_val_nbr,"%d");
 print(three_dmn_var_dbl);
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="ncap_mtd"></a> <!&textndash; http://nco.sf.net/nco.html#ncap_mtd &textndash;>
@@ -9891,26 +10074,26 @@ 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="962">avg()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="969">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="963">sqravg()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="970">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="964">max()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="971">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="965">min()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="972">min()</indexterm></cindex>
 <para>Minimum 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="966">rmssdn()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="973">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="967">ttl()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="974">ttl()</indexterm></cindex>
 <para>Sum of values
 </para></tableitem></tableentry></table>
 
@@ -9924,19 +10107,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="968">pack()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="975">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="969">pack_byte()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="976">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="970">pack_short()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="977">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="971">pack_int()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="978">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="972">unpack()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="979">unpack()</indexterm></cindex>
 <para>The standard unpacking algorithm is applied. 
 </para></tableitem></tableentry></table>
 
@@ -9945,13 +10128,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="973">size()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="980">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="974">ndims()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="981">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="975">type()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="982">type()</indexterm></cindex>
 <para>Returns the netcdf type (see previous section)
 </para></tableitem></tableentry></table>
 
@@ -9997,38 +10180,38 @@ lat_2D_rrg_new=0,90,-30,30,-30,30,-90,0
 <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="976">byte()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="983">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="977">char()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="984">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="978">sshort()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="985">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="979">int()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="986">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="980">float()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="987">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="981">double()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="988">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="982">ubyte()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="989">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="983">ushort()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="990">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="984">uint()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="991">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="985">int64()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="992">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="986">unit64()</indexterm></cindex>
+</tableterm><tableitem><cindex index="cp" spaces=" "><indexterm index="cp" number="993">unit64()</indexterm></cindex>
  <para>convert to <code>NC_UINT64</code>, an unsigned 8-byte integer
 </para></tableitem></tableentry></table>
 
@@ -10052,7 +10235,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="987"><acronym><acronymword>RAM</acronymword></acronym> variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="994"><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>
@@ -10067,8 +10250,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="988">ram_write()</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="989">ram_delete()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="995">ram_write()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="996">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
@@ -10090,29 +10273,31 @@ 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="990">where()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="997">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>
 <example endspaces=" ">
-<pre xml:space="preserve">// Single assign (the 'elsewhere' block is optional)
+<verbatim xml:space="preserve">
+// Single assign (the 'elsewhere' block is optional)
 where(mask) 
    var1=expr1;
 elsewhere
    var1=expr2;	   	
 
 // Multiple assigns
-where(mask){
+where(mask){
     var1=expr1;
     var2=expr2;
     ...
-}elsewhere{
+}elsewhere{
     var1=expr3
     var2=expr4
     var3=expr5;
     ...
-}
-</pre></example>
+}
+</verbatim>
+</example>
 
 <itemize commandarg="bullet" spaces=" " endspaces=" "><itemprepend><formattingcommand command="bullet"/></itemprepend>
 <listitem spaces=" "><prepend>•</prepend><para>The only expression allowed in the predicate of a where is assign,
@@ -10151,31 +10336,99 @@ to set its values less than 8 or greater than 80 <w>to 0</w>:
 <pre xml:space="preserve">where(RDM < 8 || RDM > 80) RDM=0;          
 </pre></example>
 
+<html endspaces=" ">
+<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;>
+<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="998">Weather and Research Forecast (<acronym><acronymword>WRF</acronymword></acronym>) Model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="999">Swath-like Data (<acronym><acronymword>SLD</acronymword></acronym>)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1000"><acronym><acronymword>WRF</acronymword></acronym> (Weather and Research Forecast Model)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1001"><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>, 
 <code>double temperature(south_north,east_west)</code>.
+This type of structure is often found in regional weather/climate model
+(such as <acronym><acronymword>WRF</acronymword></acronym>) output, and in satellite swath data.
+For this reason we call it &textldquo;Swath-like Data&textrdquo;, or <acronym><acronymword>SLD</acronymword></acronym>.
 To find the average temperature in a region bounded by
 [<var>lat_min</var>,<var>lat_max</var>] and [<var>lon_min</var>,<var>lon_max</var>]:
 </para><example endspaces=" ">
-<pre xml:space="preserve">temperature_msk[$south_north,$east_west]=0.0;
-where(lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max)
+<verbatim xml:space="preserve">
+temperature_msk[$south_north,$east_west]=0.0;
+where((lat >= lat_min && lat <= lat_max) && (lon >= lon_min && lon <= lon_max))
   temperature_msk=temperature;	
 elsewhere
-  temperature_msk=temperature&arobase;_FillValue;
+  temperature_msk=temperature at _FillValue;
 
 temp_avg=temperature_msk.avg();
 temp_max=temperature.max();
-</pre></example>
+</verbatim>
+</example>
+
+<html endspaces=" ">
+<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="1002"><acronym><acronymword>NARR</acronymword></acronym> (North American Regional Reanalysis)a</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1003">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>)
+the procedure looks like this
+</para><example endspaces=" ">
+<verbatim xml:space="preserve">
+ncap2 -O -v -S ~/narr.nco ${DATA}/hdf/narr_uwnd.199605.nc ~/foo.nc
+</verbatim>
+</example>
+<para>where <file>narr.nco</file> is an <command>ncap2</command> script like this:
+</para><example endspaces=" ">
+<verbatim xml:space="preserve">
+/* North American Regional Reanalysis (NARR) Statistics
+   NARR stores grids with 2-D latitude and longitude, aka Swath-like Data (SLD) 
+   Here we work with three variables:
+   lat(y,x), lon(y,x), and uwnd(time,level,y,x);
+   To study sub-regions of SLD, we use masking techniques:
+   1. Define mask as zero times variable to be masked
+      Then mask automatically inherits variable attributes
+      And average below will inherit mask attributes
+   2. Optionally, create mask as RAM variable (as below with asterisk *)
+      NCO does not write RAM variable to output
+      Masks are often unwanted, and can be big, so this speeds execution
+   3. Example could be extended to preserve mean lat and lon of sub-region
+      Follow uwnd example to do this: lat_msk=0.0*lat ... lat_avg=lat.avg($y,$x) */
+*uwnd_msk=0.0*uwnd;
+where((lat >= 35.6 && lat <= 37.0) && (lon >= -100.5 && lon <= -99.0))
+  uwnd_msk=uwnd;
+elsewhere
+  uwnd_msk=uwnd at _FillValue;
 
+// Average only over horizontal dimensions x and y (preserve level and time)
+uwnd_avg=uwnd_msk.avg($y,$x); 
+</verbatim>
+</example>
+<para>Stripped of comments and formatting, this example is a three-statement
+script executed by a one-line command. 
+<acronym><acronymword>NCO</acronymword></acronym> needs only this meagre input to unpack and copy the input
+data and attributes, compute the statistics, and then define and write
+the output file.  
+Unless the comments pointed out that wind variable (<code>uwnd</code>) was
+four-dimensional and the latitude/longitude grid variables were both
+two-dimensional, there would be no way to tell.
+This shows how <acronym><acronymword>NCO</acronymword></acronym> hides from the user the complexity of
+analyzing multi-dimensional <acronym><acronymword>SLD</acronymword></acronym>. 
+We plan to extend such <acronym><acronymword>SLD</acronymword></acronym> features to more operators soon.
+</para>
 <html endspaces=" ">
 <a name="ncap_lop"></a> <!&textndash; http://nco.sf.net/nco.html#ncap_lop &textndash;>
 </html>
 </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="991">while()</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="992">for()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1004">while()</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1005">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. 
@@ -10183,7 +10436,8 @@ To break out of a loop use the <command>break</command> command.
 To iterate to the next cycle use the <command>continue</command> command. 
 </para>
 <example endspaces=" ">
-<pre xml:space="preserve">// Set elements in variable double temp(time,lat) 
+<verbatim xml:space="preserve">
+// Set elements in variable double temp(time,lat) 
 // If element < 0 set to 0, if element > 100 set to 100
 *sz_idx=$time.size;
 *sz_jdx=$lat.size;
@@ -10207,14 +10461,15 @@ if(idx == sz) print("lat co-ordinate is monotonic\n");
 *sz=$lat_nw.size;
 *sum=0.0;
 
-while(idx<sz){
+while(idx<sz){
   if(lat(idx)%2) sum+=lat(idx);
   idx++;
-}
+}
 
 ram_write(sum);
 print("Total of odd elements ");print(sum);print("\n"); 
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="ncap_inc"></a> <!&textndash; http://nco.sf.net/nco.html#ncap_inc &textndash;>
@@ -10222,7 +10477,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="993"><command>include</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1006"><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"
@@ -10248,12 +10503,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="994"><command>sort</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="995"><command>asort</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="996"><command>dsort</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="997"><command>remap</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="998"><command>unmap</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="999"><command>invert_map</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1007"><command>sort</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1008"><command>asort</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1009"><command>dsort</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1010"><command>remap</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1011"><command>unmap</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1012"><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:
@@ -10293,18 +10548,20 @@ de-sorting map <var>dsr_map</var> which is inverse map of the input map
 This gives the user access to both the forward and inverse sorting maps
 which can be useful in special situations.
 </para><example endspaces=" ">
-<pre xml:space="preserve">a1[$time]={10,2,3,4,6,5,7,3,4,1};
+<verbatim xml:space="preserve">
+a1[$time]={10,2,3,4,6,5,7,3,4,1};
 a1_sort=sort(a1);
 print(a1_sort);
 // 1, 2, 3, 3, 4, 4, 5, 6, 7, 10;
 
-a2[$lon]={2,1,4,3};
+a2[$lon]={2,1,4,3};
 a2_sort=sort(a2,&a2_map);
 print(a2);
 // 1, 2, 3, 4
 print(a2_map);
 // 1, 0, 3, 2;
-</pre></example>  
+</verbatim>
+</example>  
 
 <para>If the map variable does not exist prior to the <command>sort()</command> call,
 then it will be created with the same shape as the input variable and be
@@ -10313,15 +10570,16 @@ If the map variable already exists, then the only restriction is that it
 be of at least the same size as the input variable. 
 To apply a map use <code>remap(var_in,srt_map)</code>. 
 </para><example endspaces=" ">
-<pre xml:space="preserve">defdim("nlat",5);
+<verbatim xml:space="preserve">
+defdim("nlat",5);
 
-a3[$lon]={2,5,3,7};
-a4[$nlat,$lon]={
+a3[$lon]={2,5,3,7};
+a4[$nlat,$lon]={
  1, 2, 3, 4, 
  5, 6, 7, 8,
  9,10,11,12,
  13,14,15,16,
- 17,18,19,20};
+ 17,18,19,20};
 
 a3_sort=sort(a3,&a3_map);
 print(a3_map);
@@ -10335,7 +10593,7 @@ print(a4_sort);
 // 13,15,14,16,
 // 17,19,18,20;
 
-a3_map2[$nlat]={4,3,0,2,1};
+a3_map2[$nlat]={4,3,0,2,1};
 
 a4_sort2=remap(a4,a3_map2);
 print(a4_sort2);
@@ -10343,7 +10601,8 @@ print(a4_sort2);
 // 8, 10, 9,7, 6, 
 // 13,15,14,12,11, 
 // 18,20,19,17,16
-</pre></example>
+</verbatim>
+</example>
 <para>As in the above example you may create your own sort map.
 To sort in descending order, apply the <code>reverse()</code> method after the
 <command>sort()</command>.    
@@ -10523,11 +10782,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="1000">irregular grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1001">rectangular grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1002">non-rectangular grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1003">non-standard grids</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1004">mask</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1013">irregular grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1014">rectangular grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1015">non-rectangular grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1016">non-standard grids</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1017">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.
@@ -10563,7 +10822,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="1005">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1018">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
@@ -10635,23 +10894,19 @@ ncap2 -S ncap2.in in.nc out.nc
 </verbatim>
 </example>
 
-<html endspaces=" ">
-<a name="wrf"></a> <!&textndash; http://nco.sf.net/nco.html#wrf &textndash;>
-<a name="WRF"></a> <!&textndash; http://nco.sf.net/nco.html#WRF &textndash;>
-</html>
 <ignore>
 http://foehn.colorado.edu/wrfout_to_cf/wrfout_to_cf.ncl
 ncl 'file_in="wrfout.nc"' 'file_out="wrfpost.nc"' wrfout_to_cf.ncl
 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="1006"><acronym><acronymword>WRF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1019"><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, 
 longitudes, and missing points. 
 The <acronym><acronymword>WRF</acronymword></acronym> grid documentation should describe this.
-For <acronym><acronymword>WRF</acronymword></acronym> files creating regional masks looks like 
+For <acronym><acronymword>WRF</acronymword></acronym> files creating regional masks looks, in general, like 
 </para><example endspaces=" ">
 <pre xml:space="preserve">mask_var = (XLAT >= lat_min && XLAT <= lat_max) && (XLONG >= lon_min && XLONG <= lon_max);
 </pre></example>
@@ -10716,34 +10971,38 @@ After calculations <code>var_out</code> is converted to the input type of
 </para>
 <para>Suppose the first part of an <command>ncap2</command> script is
 </para><example endspaces=" ">
-<pre xml:space="preserve">defdim("X",4);
+<verbatim xml:space="preserve">
+defdim("X",4);
 defdim("Y",5);
 
 // Temperature
 T_in[$X,$Y]=
- {100, 200, 300, 400, 500,
+ {100, 200, 300, 400, 500,
   101, 202, 303, 404, 505,
   102, 204, 306, 408, 510,
-  103, 206, 309, 412, 515.0 };
+  103, 206, 309, 412, 515.0 };
 
 // Coordinate variables
-x_in[$X]={0.0,1.0,2.0,3.01};
-y_in[$Y]={1.0,2.0,3.0,4.0,5};
-</pre></example>
+x_in[$X]={0.0,1.0,2.0,3.01};
+y_in[$Y]={1.0,2.0,3.0,4.0,5};
+</verbatim>
+</example>
 <para>Now we interpolate with the following variables:
 </para><example endspaces=" ">
-<pre xml:space="preserve">defdim("Xn",3);
+<verbatim xml:space="preserve">
+defdim("Xn",3);
 defdim("Yn",4); 
 T_out[$Xn,$Yn]=0.0;
-x_out[$Xn]={0.0,0.02,3.01};
-y_out[$Yn]={1.1,2.0,3,4};
+x_out[$Xn]={0.0,0.02,3.01};
+y_out[$Yn]={1.1,2.0,3,4};
 
 var_out=bilinear_interp(T_in,T_out,x_out,y_out,x_in,y_in);
 print(var_out);
 // 110, 200, 300, 400,
 // 110.022, 200.04, 300.06, 400.08,
 // 113.3, 206, 309, 412 ;
-</pre></example> 
+</verbatim>
+</example> 
 
 <para>It is possible to interpolate a single point:
 </para><example endspaces=" ">
@@ -10767,27 +11026,28 @@ typically these are in the range (-90,90).
 This <command>ncap2</command> script illustrates both wrapping and extrapolation
 of end points:
 </para><example endspaces=" ">
-<pre xml:space="preserve">defdim("lat_in",6);
+<verbatim xml:space="preserve">
+defdim("lat_in",6);
 defdim("lon_in",5);
 
 // Coordinate input vars
-lat_in[$lat_in]={-80,-40,0,30,60.0,85.0};
-lon_in[$lon_in]={30, 110, 190, 270, 350.0};
+lat_in[$lat_in]={-80,-40,0,30,60.0,85.0};
+lon_in[$lon_in]={30, 110, 190, 270, 350.0};
 
 T_in[$lat_in,$lon_in]=
-  {10,40,50,30,15,   
+  {10,40,50,30,15,   
     12,43,52,31,16,   
     14,46,54,32,17,   
     16,49,56,33,18,   
     18,52,58,34,19,   
-    20,55,60,35,20.0 };
+    20,55,60,35,20.0 };
    
 defdim("lat_out",4);
 defdim("lon_out",3);
 
 // Coordinate variables
-lat_out[$lat_out]={-90,0,70,88.0};   
-lon_out[$lon_out]={0,190,355.0};
+lat_out[$lat_out]={-90,0,70,88.0};   
+lon_out[$lon_out]={0,190,355.0};
 
 T_out[$lat_out,$lon_out]=0.0;
 
@@ -10797,7 +11057,8 @@ print(T_out);
 // 16.25, 54, 16.625,
 // 19.25, 58.8, 19.325,
 // 20.15, 60.24, 20.135 ;
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="gsl"></a> <!&textndash; http://nco.sf.net/nco.html#gsl &textndash;>
@@ -10805,7 +11066,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="1007"><acronym><acronymword>GSL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1020"><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 GNU Scientific Library (<acronym><acronymword>GSL</acronymword></acronym>). 
 <command>ncap2</command> can access most <acronym><acronymword>GSL</acronymword></acronym> special functions including
@@ -10833,17 +11094,19 @@ 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="1008">gamma function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1009"><var>gsl_sf_gamma</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1021">gamma function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1022"><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>
 The <command>ncap2</command> script would be:
 </para><example endspaces=" ">
-<pre xml:space="preserve">lon_in[lon]={-1,0.1,0,2,0.3};
+<verbatim xml:space="preserve">
+lon_in[lon]={-1,0.1,0,2,0.3};
 lon_out=gsl_sf_gamma(lon_in);
 lon_out= _, 9.5135, 4.5908, 2.9915 
-</pre></example>
+</verbatim>
+</example>
 
 <noindent></noindent> <para>The first value is set to <code>_FillValue</code> since the gamma
 function is undefined for negative integers.
@@ -10852,8 +11115,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="1010">Bessel function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1011"><var>gsl_sf_bessel_Jn</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1023">Bessel function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1024"><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> 
@@ -10868,10 +11131,12 @@ lon_out=0.11490, 0.0012, 0.00498, 0.011165
 The Bessel order argument, an integer, can also be a non-scalar
 variable, i.e., an array.  
 </para><example endspaces=" ">
-<pre xml:space="preserve">n_in[lon]={0,1,2,3};
+<verbatim xml:space="preserve">
+n_in[lon]={0,1,2,3};
 lon_out=gsl_sf_bessel_Jn(n_in,0.5);
 lon_out= 0.93846, 0.24226, 0.03060, 0.00256
-</pre></example>
+</verbatim>
+</example>
 
 <noindent></noindent> <para>Arguments to <acronym><acronymword>GSL</acronymword></acronym> wrapper functions in <command>ncap2</command>
 must conform to one another, i.e., they must share the same sub-set of
@@ -10882,7 +11147,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="1012">Elliptic integrals</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1025">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=" ">
@@ -10923,7 +11188,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="1013">Legendre polynomial</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1026">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();
@@ -11235,7 +11500,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="1014"><acronym><acronymword>GSL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1027"><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 [...]
@@ -11245,13 +11510,14 @@ prototypes look at the spreadsheet <strong>doc/nco_gsl.ods</strong>. &linebreak;
 <noindent></noindent> <para>A simple example
 </para>
 <example endspaces=" ">
-<pre xml:space="preserve">x_in[$lon]={1.0,2.0,3.0,4.0};
-y_in[$lon]={1.1,1.2,1.5,1.8};
+<verbatim xml:space="preserve">
+x_in[$lon]={1.0,2.0,3.0,4.0};
+y_in[$lon]={1.1,1.2,1.5,1.8};
 
 // Ram variable is declared and defined here 
 gsl_interp_cspline(&ram_sp,x_in,y_in);
 
-x_out[$lon_grd]={1.1,2.0,3.0,3.1,3.99};
+x_out[$lon_grd]={1.1,2.0,3.0,3.1,3.99};
 
 y_out=gsl_spline_eval(ram_sp,x_out);
 y2=gsl_spline_eval(ram_sp,1.3);
@@ -11261,7 +11527,8 @@ ram_delete(ram_sp);
 print(y_out); // 1.10472, 1.2, 1.4, 1.42658, 1.69680002 
 print(y2);    // 1.12454 
 print(y3);    // '_' 
-</pre></example>
+</verbatim>
+</example>
 
 <noindent></noindent> <para>Note in the above example y3 is set to &textrsquo;missing value&textrsquo; because 0.0 isn&textrsquo;t within the input X range.  
 </para>
@@ -11338,22 +11605,24 @@ If data_x or data_y is less than type <code>double</code> then it is converted t
 <noindent></noindent> <para>The below example shows <strong>gsl_fit_linear()</strong> in action
 </para>
 <example endspaces=" ">
-<pre xml:space="preserve">defdim("d1",10);
-xin[d1]={1,2,3,4,5,6,7,8,9,10.0};
-yin[d1]={3.1,6.2,9.1,12.2,15.1,18.2,21.3,24.0,27.0,30.0};
+<verbatim xml:space="preserve">
+defdim("d1",10);
+xin[d1]={1,2,3,4,5,6,7,8,9,10.0};
+yin[d1]={3.1,6.2,9.1,12.2,15.1,18.2,21.3,24.0,27.0,30.0};
 gsl_fit_linear(xin,1,yin,1,$d1.size,&c0,&c1,&cov00,&cov01,&cov11,&sumsq);
 print(c0);  // 0.2
 print(c1);  // 2.98545454545
 
 
 defdim("e1",4);
-xout[e1]={1.0,3.0,4.0,11};
+xout[e1]={1.0,3.0,4.0,11};
 yout[e1]=0.0;
 
 yout=gsl_fit_linear_est(xout, c0,c1, cov00,cov01, cov11, sumsq);
 
 print(yout);  // 3.18545454545 ,9.15636363636, ,12.1418181818 ,33.04
-</pre></example>
+</verbatim>
+</example>
 &linebreak; &linebreak;
 
 
@@ -11392,7 +11661,8 @@ double gsl_stats_quantile_from_sorted_data (var_sorted_data, data_stride, n, var
 <para>Some examples
 </para>
 <example endspaces=" ">
-<pre xml:space="preserve">a1[time]={1,2,3,4,5,6,7,8,9,10 };
+<verbatim xml:space="preserve">
+a1[time]={1,2,3,4,5,6,7,8,9,10};
 
 a1_avg=gsl_stats_mean(a1,1,10);
 print(a1_avg); // 5.5
@@ -11402,8 +11672,8 @@ print(a1_var); // 16.0
 
 // bounding error, vector attempts to access element a1(10)
 a1_sd=gsl_stats_sd(a1,5,3); 
-
-</pre></example>
+</verbatim>
+</example>
 
 <noindent></noindent> <para>For functions with the signature 
 <strong>func_nm(var_data,data_stride,n)</strong>, 
@@ -11568,8 +11838,10 @@ for more complete demonstrations of <command>ncap2</command> functionality
 as twice the existing attribute <var>double_att</var> of variable
 <var>att_var</var>: 
 </para><example endspaces=" ">
-<pre xml:space="preserve">ncap2 -s 'one&arobase;new=2*att_var&arobase;double_att' in.nc out.nc
-</pre></example>
+<verbatim xml:space="preserve">
+ncap2 -s 'one at new=2*att_var at double_att' in.nc out.nc
+</verbatim>
+</example>
 
 <para>Average variables of mixed types (result is of type <code>double</code>):
 </para><example endspaces=" ">
@@ -11600,8 +11872,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="1015">growing dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1016">dimensions, growing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1028">growing dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1029">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
@@ -11624,7 +11896,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="1017">flags</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1030">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>,
@@ -11639,7 +11911,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="1018">mask</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1031">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,
@@ -11656,7 +11928,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="1019">covariance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1032">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
@@ -11679,7 +11951,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="1020">eddy covariance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1033">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=" ">
@@ -11704,11 +11976,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="1021">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1022">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1023">quotes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1024">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1025">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1034">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1035">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1036">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1037">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1038">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.
@@ -11739,13 +12011,14 @@ variables in <command>ncap2</command> command-line scripts
 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="1026">appending data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1027">time-averaging</indexterm></cindex>
+
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1039">appending data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1040">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="1028">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1029"><samp>-b</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1041">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1042"><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.
@@ -11763,7 +12036,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="1030"><code>-C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1043"><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.  
@@ -11778,78 +12051,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="1031">addition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1032">subtraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1033">multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1034">division</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1035">exponentiation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1036">power</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1037">modulus</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1038"><code>+</code> (addition)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1039"><code>-</code> (subtraction)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1040"><code>*</code> (multiplication)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1041"><code>/</code> (division)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1042"><code>^</code> (power)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1043"><code>%</code> (modulus)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1044">addition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1045">subtraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1046">multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1047">division</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1048">exponentiation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1049">power</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1050">modulus</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1051"><code>+</code> (addition)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1052"><code>-</code> (subtraction)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1053"><code>*</code> (multiplication)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1054"><code>/</code> (division)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1055"><code>^</code> (power)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1056"><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="1044"><var>abs</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1045"><var>acosh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1046"><var>acos</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1047"><var>asinh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1048"><var>asin</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1049"><var>atanh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1050"><var>atan</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1051"><var>ceil</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1052"><var>cosh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1053"><var>cos</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1054"><var>erfc</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1055"><var>erf</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1056"><var>exp</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1057"><var>floor</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1058"><var>gamma</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1059"><var>ln</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1060"><var>log10</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1061"><var>log</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1062"><var>nearbyint</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1063"><var>pow</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1064"><var>rint</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1065"><var>round</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1066"><var>sinh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1067"><var>sin</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1068"><var>sqrt</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1069"><var>tanh</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1070"><var>tan</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1071"><var>trunc</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1072">mathematical functions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1073">nearest integer function (inexact)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1074">nearest integer function (exact)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1075">rounding functions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1076">truncation function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1077">absolute value</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1078">arccosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1079">arcsine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1080">arctangent function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1081">ceiling function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1082">complementary error function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1083">cosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1084">error function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1085">exponentiation function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1086">floor function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1087">gamma function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1088">hyperbolic arccosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1089">hyperbolic arcsine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1090">hyperbolic arctangent function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1091">hyperbolic cosine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1092">hyperbolic sine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1093">hyperbolic tangent</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1094">logarithm, base 10</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1095">logarithm, natural</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1096">power function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1097">sine function</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1098">square root function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1057"><var>abs</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1058"><var>acosh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1059"><var>acos</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1060"><var>asinh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1061"><var>asin</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1062"><var>atanh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1063"><var>atan</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1064"><var>ceil</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1065"><var>cosh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1066"><var>cos</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1067"><var>erfc</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1068"><var>erf</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1069"><var>exp</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1070"><var>floor</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1071"><var>gamma</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1072"><var>ln</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1073"><var>log10</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1074"><var>log</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1075"><var>nearbyint</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1076"><var>pow</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1077"><var>rint</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1078"><var>round</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1079"><var>sinh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1080"><var>sin</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1081"><var>sqrt</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1082"><var>tanh</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1083"><var>tan</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1084"><var>trunc</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1085">mathematical functions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1086">nearest integer function (inexact)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1087">nearest integer function (exact)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1088">rounding functions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1089">truncation function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1090">absolute value</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1091">arccosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1092">arcsine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1093">arctangent function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1094">ceiling function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1095">complementary error function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1096">cosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1097">error function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1098">exponentiation function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1099">floor function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1100">gamma function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1101">hyperbolic arccosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1102">hyperbolic arcsine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1103">hyperbolic arctangent function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1104">hyperbolic cosine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1105">hyperbolic sine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1106">hyperbolic tangent</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1107">logarithm, base 10</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1108">logarithm, natural</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1109">power function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1110">sine function</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1111">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>
@@ -12048,7 +12321,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="1099">inexact conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1112">inexact conversion</indexterm></cindex>
 No exceptions are raised for <dfn>inexact conversions</dfn>.
 Example: 
 <tex endspaces=" ">
@@ -12057,8 +12330,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="1100">promotion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1101">automatic type conversion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1113">promotion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1114">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,
@@ -12081,7 +12354,8 @@ rint$(0.1) = 0$
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">round(x)</itemformat></item>
 </tableterm><tableitem><para><dfn>Round</dfn>
 Nearest integer to <var>x</var> is returned in floating point format.
-Round halfway cases away from zero, regardless of current IEEE rounding direction. 
+Round halfway cases away from zero, regardless of current <acronym><acronymword>IEEE</acronymword></acronym>
+rounding direction.  
 Example: 
 <tex endspaces=" ">
 round$(0.5) = 1.0$
@@ -12134,7 +12408,8 @@ tanh$(1.0) = 0.761594155956$
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="code">trunc(x)</itemformat></item>
 </tableterm><tableitem><para><dfn>Truncate</dfn>
 Nearest integer to <var>x</var> is returned in floating point format.
-Round halfway cases toward zero, regardless of current IEEE rounding direction. 
+Round halfway cases toward zero, regardless of current <acronym><acronymword>IEEE</acronymword></acronym>
+rounding direction.  
 Example: 
 <tex endspaces=" ">
 trunc$(0.5) = 0.0$
@@ -12147,14 +12422,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="1102"><code>ANSI C</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1103"><code>float</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1104">precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1105">quadruple-precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1106">single-precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1107">double-precision</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1108"><code>long double</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1109"><code>NC_DOUBLE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1115"><code>ANSI C</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1116"><code>float</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1117">precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1118">quadruple-precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1119">single-precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1120">double-precision</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1121"><code>long double</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1122"><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>
@@ -12172,12 +12447,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="1110"><code>-f</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1111"><code>--prn_fnc_tbl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1112"><code>--fnc_tbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1123"><code>-f</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1124"><code>--prn_fnc_tbl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1125"><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="1113">Linux</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1126">Linux</indexterm></cindex>
 <footnote><para>Linux supports more of these intrinsic functions than
 other OSs.</para></footnote>
 </para>
@@ -12238,7 +12513,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="1114">ID Quoting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1127">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>
@@ -12273,24 +12548,27 @@ netcdf-3.6.0-p1 &linebreak;
 netcdf-3.6.1 &linebreak;
 netcdf-3.6.2 &linebreak;
 </para><example endspaces=" ">
-<pre xml:space="preserve">/*
- * ( [a-zA-Z]|[0-9]|'_'|'-'|'+'|'.'|'|':'|'&arobase;'|'('|')' )+
+<verbatim xml:space="preserve">
+/*
+ * ( [a-zA-Z]|[0-9]|'_'|'-'|'+'|'.'|'|':'|'@'|'('|')' )+
  * Verify that name string is valid CDL syntax, i.e., all characters are
  * alphanumeric, '-', '_', '+', or '.'.
- * Also permit ':', '&arobase;', '(', or ')' in names for chemists currently making 
+ * Also permit ':', '@', '(', or ')' in names for chemists currently making 
  * use of these characters, but don't document until ncgen and ncdump can 
  * also handle these characters in names.
  */
-</pre></example>
+</verbatim>
+</example>
 
 <noindent></noindent> <para>netcdf-3.6.3&linebreak;
 netcdf-4.0 Final  2008/08/28&linebreak;
 </para><example endspaces=" ">
-<pre xml:space="preserve">/*
+<verbatim xml:space="preserve">
+/*
  * Verify that a name string is valid syntax.  The allowed name
  * syntax (in RE form) is:
  *
- * ([a-zA-Z_]|{UTF8})([^\x00-\x1F\x7F/]|{UTF8})*
+ * ([a-zA-Z_]|{UTF8})([^\x00-\x1F\x7F/]|{UTF8})*
  *
  * where UTF8 represents a multibyte UTF-8 encoding.  Also, no
  * trailing spaces are permitted in names.  This definition
@@ -12300,7 +12578,8 @@ netcdf-4.0 Final  2008/08/28&linebreak;
  * character can occur anywhere within an identifier.  We later
  * normalize UTF-8 strings to NFC to facilitate matching and queries.
  */ 
-</pre></example>
+</verbatim>
+</example>
 <!-- c End HMB documentation -->
 
 <page></page>
@@ -12311,9 +12590,9 @@ netcdf-4.0 Final  2008/08/28&linebreak;
 </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>
 <section spaces=" "><sectiontitle><command>ncatted</command> netCDF Attribute Editor</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1115">attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1116">attribute names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1117">editing attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1128">attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1129">attribute names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1130">editing attributes</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="21" mergedindex="cp">ncatted</indexterm></findex>
 
 <noindent></noindent>
@@ -12327,7 +12606,7 @@ netcdf-4.0 Final  2008/08/28&linebreak;
 <noindent></noindent>
 <para>DESCRIPTION
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1118"><command>ncattget</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1131"><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
@@ -12342,16 +12621,16 @@ 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="1119"><code>history</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1120"><code>-h</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1132"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1133"><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="1121">missing values</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1122">data, missing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1123"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1134">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1135">data, missing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1136"><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, 
@@ -12379,10 +12658,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="1124">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1125">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1126">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1127">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1137">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1138">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1139">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1140">wildcards</indexterm></cindex>
 Regular expressions (<pxref label="Subsetting-Files"><xrefnodename>Subsetting Files</xrefnodename></pxref>) are accepted and will 
 select any matching variable names.
 The names <code>global</code> and <code>group</code> have special meaning.
@@ -12413,8 +12692,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="1128">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1129">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1141">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1142">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.
@@ -12442,12 +12721,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="1130">attributes, appending</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1131">attributes, creating</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1132">attributes, deleting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1133">attributes, modifying</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1134">attributes, editing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1135">attributes, overwriting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1143">attributes, appending</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1144">attributes, creating</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1145">attributes, deleting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1146">attributes, modifying</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1147">attributes, editing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1148">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>.
@@ -12567,15 +12846,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="1136">Perl</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1137"><acronym><acronymword>ASCII</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1149">Perl</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1150"><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="1138"><code>printf()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1139"><code>\n</code> (<acronym><acronymword>ASCII</acronymword></acronym> LF, linefeed)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1140">characters, special</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1141"><code>\t</code> (<acronym><acronymword>ASCII</acronymword></acronym> HT, horizontal tab)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1151"><code>printf()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1152"><code>\n</code> (<acronym><acronymword>ASCII</acronymword></acronym> LF, linefeed)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1153">characters, special</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1154"><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.
@@ -12589,27 +12868,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="1142"><code>\a</code> (<acronym><acronymword>ASCII</acronymword></acronym> BEL, bell)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1143"><code>\b</code> (<acronym><acronymword>ASCII</acronymword></acronym> BS, backspace)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1144"><code>\f</code> (<acronym><acronymword>ASCII</acronymword></acronym> FF, formfeed)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1145"><code>\r</code> (<acronym><acronymword>ASCII</acronymword></acronym> CR, carriage return)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1146"><code>\v</code> (<acronym><acronymword>ASCII</acronymword></acronym> VT, vertical tab)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1147"><code>\\</code> (<acronym><acronymword>ASCII</acronymword></acronym> \, backslash)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1155"><code>\a</code> (<acronym><acronymword>ASCII</acronymword></acronym> BEL, bell)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1156"><code>\b</code> (<acronym><acronymword>ASCII</acronymword></acronym> BS, backspace)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1157"><code>\f</code> (<acronym><acronymword>ASCII</acronymword></acronym> FF, formfeed)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1158"><code>\r</code> (<acronym><acronymword>ASCII</acronymword></acronym> CR, carriage return)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1159"><code>\v</code> (<acronym><acronymword>ASCII</acronymword></acronym> VT, vertical tab)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1160"><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="1148"><code>\'</code> (protected end quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1149"><code>\"</code> (protected double quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1150"><code>\?</code> (protected question mark)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1151"><code>\\</code> (protected backslash)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1152"><code>'</code> (end quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1153"><code>"</code> (double quote)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1154"><code>?</code> (question mark)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1155"><code>\</code> (backslash)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1156">special characters</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1157"><acronym><acronymword>ASCII</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1161"><code>\'</code> (protected end quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1162"><code>\"</code> (protected double quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1163"><code>\?</code> (protected question mark)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1164"><code>\\</code> (protected backslash)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1165"><code>'</code> (end quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1166"><code>"</code> (double quote)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1167"><code>?</code> (question mark)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1168"><code>\</code> (backslash)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1169">special characters</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1170"><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 "protected" by a backslash.
 The characters <code>"</code>, <code>'</code>, <code>?</code>, and <code>\</code> may be 
@@ -12621,11 +12900,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="1158">strings</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1159">NUL-termination</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1160">NUL</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1161">C language</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1162"><code>0</code> (NUL)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1171">strings</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1172">NUL-termination</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1173">NUL</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1174">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1175"><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 -->
@@ -12665,23 +12944,30 @@ from whatever it currently is to "temperature":
 <html endspaces=" ">
 <a name="NaN"></a> <!&textndash; http://nco.sf.net/nco.html#NaN &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1163">NaN</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1164">IEEE NaN</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1165">Not-a-Number</indexterm></cindex>
-<para><acronym><acronymword>NCO</acronymword></acronym> arithmetic operators will not work as expected on IEEE
-NaN (short for Not-a-Number) and NaN-like numbers such as positive
-infinity and negative infinity.  
-One way to work-around this problem is to change IEEE NaNs to normal
-missing values. 
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1176">NaN</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1177"><acronym><acronymword>IEEE</acronymword></acronym> NaN</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1178">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.
+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
+normal missing values. 
 As of <acronym><acronymword>NCO</acronymword></acronym> 4.1.0 (March, 2012), <command>ncatted</command> works with
 NaNs.
 First set the missing value (i.e., the value of the <code>_FillValue</code>
-attribute) for the variable(s) in question to the IEEE NaN value. 
+attribute) for the variable(s) in question to the <acronym><acronymword>IEEE</acronymword></acronym> NaN value. 
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncatted -a _FillValue,,o,f,NaN in.nc
 </pre></example>
-<para>Then change the missing value from the IEEE NaN value to a normal IEEE
-number, like 1.0e36 (or to whatever the original missing value was).
+<para>Then change the missing value from the <acronym><acronymword>IEEE</acronymword></acronym> NaN value to a
+normal <acronym><acronymword>IEEE</acronymword></acronym> number, like 1.0e36 (or to whatever the original
+missing value was). 
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncatted -a _FillValue,,m,f,1.0e36 in.nc
 </pre></example>
@@ -12696,9 +12982,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="1166"><code>global</code> attribute</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1167">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1168">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1179"><code>global</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1180">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1181">attributes, global</indexterm></cindex>
 <para>Delete all attributes associated with the <code>tpt</code> variable, and
 delete all global attributes
 </para><example endspaces=" ">
@@ -12710,13 +12996,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="1169"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1182"><code>units</code></indexterm></cindex>
 <para>Modify all existing <code>units</code> attributes to "meter second-1":
 </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="1170"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1183"><code>units</code></indexterm></cindex>
 <para>Add a <code>units</code> attribute of "kilogram kilogram-1" to all variables 
 whose first three characters are <samp>H2O</samp>:
 </para><example endspaces=" ">
@@ -12729,10 +13015,10 @@ whose first three characters are <samp>H2O</samp>:
 <pre xml:space="preserve">ncatted -O -a quanta,energy,o,s,"010,101,111,121" in.nc
 </pre></example>
 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1171">extended regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1172">regular expressions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1173">pattern matching</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1174">wildcards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1184">extended regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1185">regular expressions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1186">pattern matching</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1187">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.
 Create <code>isotope</code> attributes for all variables containing <samp>H2O</samp> 
@@ -12742,7 +13028,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="1175">groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1188">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.
@@ -12801,14 +13087,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="1176">binary operations</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1177">addition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1178">subtraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1179">multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1180">adding data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1181">subtracting data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1182">multiplying data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1183">dividing data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1189">binary operations</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1190">addition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1191">subtraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1192">multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1193">adding data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1194">subtracting data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1195">multiplying data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1196">dividing data</indexterm></cindex>
 
 <noindent></noindent>
 <para>SYNTAX
@@ -12835,18 +13121,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="1184"><code>add</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1185"><code>subtract</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1186"><code>multiply</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1187"><code>divide</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1188"><code>+</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1189"><code>-</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1190"><code>*</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1191"><code>/</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1192"><code>-y <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1193"><code>--operation <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1194"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1195">alternate invocations</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1197"><code>add</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1198"><code>subtract</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1199"><code>multiply</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1200"><code>divide</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1201"><code>+</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1202"><code>-</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1203"><code>*</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1204"><code>/</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1205"><code>-y <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1206"><code>--operation <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1207"><code>--op_typ <var>op_typ</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1208">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:  
@@ -12877,12 +13163,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="1196">naked characters</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1209">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="1197">Bash shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1210">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
@@ -12892,9 +13178,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="1198">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1199">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1200">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1211">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1212">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1213">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)
@@ -12910,9 +13196,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="1201"><command>alias</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1202"><command>ln -s</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1203">symbolic links</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1214"><command>alias</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1215"><command>ln -s</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1216">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,
@@ -12954,12 +13240,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="1204">broadcasting variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1205">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1217">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1218">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="1206">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1219">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>
@@ -12982,12 +13268,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="1207">anomalies</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1220">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="1208">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1221">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>. 
@@ -13002,13 +13288,13 @@ In these cases, creating <var>file_2</var> with <command>ncra</command> rather t
 <command>ncwa</command> will cause the <command>ncbo</command> operation to fail.
 For concreteness say the record dimension in <code>file_1</code> is
 <code>time</code>.  
-If <var>file_2</var> were created by averaging <var>file_1</var> over the
-<code>time</code> dimension with the <command>ncra</command> operator rather than with
-the <command>ncwa</command> operator, then <var>file_2</var> will have a <code>time</code>
+If <var>file_2</var> was created by averaging <var>file_1</var> over the
+<code>time</code> dimension with the <command>ncra</command> operator (rather than with
+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="1209">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1210"><samp>-b</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1222">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1223"><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
@@ -13022,14 +13308,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="1211">coordinate variable</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1212"><code>NC_CHAR</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1224">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1225"><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="1213"><acronym><acronymword>CF</acronymword></acronym> conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1226"><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>.
@@ -13045,7 +13331,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="1214">broadcasting groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1227">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
@@ -13080,8 +13366,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="1215">broadcasting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1216">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1228">broadcasting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1229">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
@@ -13128,7 +13414,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="1217">broadcasting groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1230">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
@@ -13181,30 +13467,34 @@ 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="1218">Bash Shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1219">Bourne Shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1220">C Shell</indexterm></cindex>
-</para><example endspaces=" ">
-<pre xml:space="preserve">for idx in {1..12}; do # Bash Shell (version 3.0+) 
-  idx=`printf "%02d" ${idx}` # Zero-pad to preserve order
-  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
-  ncra foo.${idx} t_anm_8589_${idx}.nc
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1231">Bash Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1232">Bourne Shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1233">C Shell</indexterm></cindex>
+</para><example endspaces=" ">
+<verbatim xml:space="preserve">
+for idx in {1..12}; do # Bash Shell (version 3.0+) 
+  idx=`printf "%02d" ${idx}` # Zero-pad to preserve order
+  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+  ncra foo.${idx} t_anm_8589_${idx}.nc
 done
 for idx in 01 02 03 04 05 06 07 08 09 10 11 12; do # Bourne Shell
-  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
-  ncra foo.${idx} t_anm_8589_${idx}.nc
+  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+  ncra foo.${idx} t_anm_8589_${idx}.nc
 done
 foreach idx (01 02 03 04 05 06 07 08 09 10 11 12) # C Shell
-  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
-  ncra foo.${idx} t_anm_8589_${idx}.nc
+  ncks -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+  ncra foo.${idx} t_anm_8589_${idx}.nc
 end
-</pre></example>
+</verbatim>
+</example>
 <noindent></noindent>
 <para>Note that <command>ncra</command> understands the <code>stride</code> argument so the
 two commands inside the loop may be combined into the single command 
 </para><example endspaces=" ">
-<pre xml:space="preserve">ncra -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
-</pre></example>
+<verbatim xml:space="preserve">
+ncra -F -d time,${idx},,12 t_anm_8501_8912.nc foo.${idx}
+</verbatim>
+</example>
 <noindent></noindent>
 <para>Finally, use <command>ncrcat</command> to concatenate the <w>12 average</w> monthly  
 anomaly files into one twelve-record file which contains the entire
@@ -13222,8 +13512,8 @@ seasonal cycle of the monthly anomalies:
 </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>
 <section spaces=" "><sectiontitle><command>nces</command> netCDF Ensemble Statistics</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1221">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1222">ensemble average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1234">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1235">ensemble average</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="30" mergedindex="cp">nces</indexterm></findex>
 
 <noindent></noindent>
@@ -13253,7 +13543,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="1223">ensemble</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1236">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
@@ -13283,17 +13573,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="1224">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1225">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1237">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1238">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="1226"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1227"><acronym><acronymword>AR4</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1228"><acronym><acronymword>CMIP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1239"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1240"><acronym><acronymword>AR4</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1241"><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).   
@@ -13303,12 +13593,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="1229"><code>--nsm_fl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1230"><code>--nsm_grp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1231"><code>--ensemble_file</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1232"><code>--ensemble_group</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1233"><code>--nsm_sfx</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1234"><code>--ensemble_suffix</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1242"><code>--nsm_fl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1243"><code>--nsm_grp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1244"><code>--ensemble_file</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1245"><code>--ensemble_group</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1246"><code>--nsm_sfx</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1247"><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>) 
@@ -13346,9 +13636,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="1235">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1236">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1237"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1248">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1249">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1250"><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 
@@ -13446,8 +13736,8 @@ member in the first file.
 </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>
 <section spaces=" "><sectiontitle><command>ncecat</command> netCDF Ensemble Concatenator</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1238">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1239">ensemble concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1251">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1252">ensemble concatenation</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="31" mergedindex="cp">ncecat</indexterm></findex>
 
 <noindent></noindent>
@@ -13484,8 +13774,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="1240">record aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1241"><acronym><acronymword>RAG</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1253">record aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1254"><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
@@ -13498,27 +13788,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="1242">unlimited dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1243">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1244"><samp>-u <var>ulm_nm</var></samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1245"><samp>--ulm_nm <var>ulm_nm</var></samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1246"><samp>--rcd_nm <var>ulm_nm</var></samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1255">unlimited dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1256">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1257"><samp>-u <var>ulm_nm</var></samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1258"><samp>--ulm_nm <var>ulm_nm</var></samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1259"><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="1247">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1248">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1260">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1261">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="1249"><acronym><acronymword>CMIP</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1262"><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="1250">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1251">fix record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1263">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1264">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
@@ -13531,8 +13821,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="1252">group aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1253"><acronym><acronymword>GAG</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1265">group aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1266"><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 
@@ -13541,7 +13831,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="1254"><option>--gag</option></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1267"><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>,
@@ -13570,17 +13860,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="1255">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1256">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1257"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1268">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1269">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1270"><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="1258"><code>-M</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1259"><code>--glb_mtd_spp</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1260">metadata, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1271"><code>-M</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1272"><code>--glb_mtd_spp</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1273">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>.  
@@ -13594,7 +13884,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="1261">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1274">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. 
@@ -13609,10 +13899,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="1262">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1263">unpacking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1264"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1265"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1275">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1276">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1277"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1278"><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>).
@@ -13673,10 +13963,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="1266">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1267">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1268">fix record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1269"><code>--mk_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1279">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1280">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1281">fix record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1282"><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.
@@ -13685,7 +13975,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="1270">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1283">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
@@ -13703,10 +13993,10 @@ of changing variable dimensionality, including the record dimension.
 </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>
 <section spaces=" "><sectiontitle><command>ncflint</command> netCDF File Interpolator</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1271">interpolation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1272">adding data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1273">multiplying data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1274">addition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1284">interpolation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1285">adding data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1286">multiplying data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1287">addition</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="33" mergedindex="cp">ncflint</indexterm></findex>
 
 <noindent></noindent>
@@ -13749,9 +14039,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="1275"><code>-w <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1276"><code>--weight <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1277"><code>--wgt_var <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1288"><code>-w <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1289"><code>--weight <var>wgt1</var>[,<var>wgt2</var>]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1290"><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. 
@@ -13770,7 +14060,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="1278">arrival value</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1291">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
@@ -13793,7 +14083,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="1279">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1292">degenerate dimension</indexterm></cindex>
 Thus any dimensions associated with <var>var</var> must be <dfn>degenerate</dfn>,
 i.e., of size one.
 </para>
@@ -13820,8 +14110,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="1280">missing values</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1281"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1293">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1294"><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>,
@@ -13897,13 +14187,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="1282">null operation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1295">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="1283">multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1284">file multiplication</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1285">scaling</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1296">multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1297">file multiplication</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1298">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=" ">
@@ -13923,14 +14213,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="1286">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1299">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="1287"><code>units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1300"><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=" ">
@@ -13946,9 +14236,9 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 </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>
 <section spaces=" "><sectiontitle><command>ncks</command> netCDF Kitchen Sink</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1288">kitchen sink</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1289">printing files contents</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1290">printing variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1301">kitchen sink</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1302">printing files contents</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1303">printing variables</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="34" mergedindex="cp">ncks</indexterm></findex>
 
 <noindent></noindent>
@@ -13957,7 +14247,7 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 <pre xml:space="preserve">ncks [-3] [-4] [-5] [-6] [-7] [-A] [-a] [-b <var>binary-file</var>] [-C] [-c] [--cdl]
 [--cnk_dmn nm,sz] [--cnk_map map] [--cnk_plc plc] [--cnk_scl sz]
 [-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;]] [-H] [-h] [--hdn] [--hdr_pad <var>nbr</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>] 
 [-Q] [-q] [-R] [-r] [--rad] [--ram_all] [-s <var>format</var>] 
@@ -13968,7 +14258,7 @@ ncatted -a units,prs_sfc,o,c,millibar out.nc
 <noindent></noindent>
 <para>DESCRIPTION
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1291"><command>ncextr</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1304"><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  
@@ -13997,8 +14287,8 @@ including <acronym><acronymword>CDL</acronymword></acronym> and <acronym><acrony
 <samp>-s</samp>, <samp>-u</samp>, <samp>--xml</samp> (and their long option counterparts)
 control the formatted appearance of the data.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1292">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1293">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1305">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1306">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).
@@ -14015,8 +14305,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="1294">appending data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1295">merging files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1307">appending data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1308">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
@@ -14043,8 +14333,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="1296">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1297">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1309">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1310">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>.  
@@ -14094,7 +14384,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="1298"><code>-5</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1311"><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.
@@ -14107,11 +14397,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="1299">alphabetization</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1300">sort alphabetically</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1301"><code>-a</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1302"><code>--abc</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1303"><code>--alphabetize</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1312">alphabetization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1313">sort alphabetically</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1314"><code>-a</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1315"><code>--abc</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1316"><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
@@ -14128,11 +14418,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="1304">binary format</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1305"><code>-b</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1306"><code>--fl_bnr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1307"><code>--bnr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1308"><code>--binary</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1317">binary format</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1318"><code>-b</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1319"><code>--fl_bnr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1320"><code>--bnr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1321"><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>.
@@ -14156,10 +14446,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="1309">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1310">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1311"><code>--fix_rec_dmn <var>dim</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1312"><code>--no_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1322">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1323">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1324"><code>--fix_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1325"><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. 
@@ -14191,18 +14481,18 @@ 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="1313">hidden attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1314">special attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1315"><code>--hdn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1316"><code>--hidden</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1317"><code>_Format</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1318"><code>_DeflateLevel</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1319"><code>_Shuffle</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1320"><code>_Storage</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1321"><code>_ChunkSizes</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1322"><code>_Endianness</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1323"><code>_Fletcher32</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1324"><code>_NOFILL</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1326">hidden attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1327">special attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1328"><code>--hdn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1329"><code>--hidden</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1330"><code>_Format</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1331"><code>_DeflateLevel</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1332"><code>_Shuffle</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1333"><code>_Storage</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1334"><code>_ChunkSizes</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1335"><code>_Endianness</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1336"><code>_Fletcher32</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1337"><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>.
@@ -14223,15 +14513,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="1325"><command>hdp</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1326"><command>ncgen</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1327"><command>ncgen-hdf</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1328"><command>hncgen</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1329"><command>ncdump</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1330"><code>--cdl</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1331"><acronym><acronymword>CDL</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1332"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1333"><acronym><acronymword>HDF4</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1338"><command>hdp</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1339"><command>ncgen</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1340"><command>ncgen-hdf</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1341"><command>hncgen</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1342"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1343"><code>--cdl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1344"><acronym><acronymword>CDL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1345"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1346"><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
@@ -14240,15 +14530,16 @@ valid <acronym><acronymword>CDL</acronymword></acronym> (network Common data for
 <command>ncgen</command> and excreted by <command>ncdump</command>.
 Compare <command>ncks</command> &textldquo;traditional&textrdquo; with <acronym><acronymword>CDL</acronymword></acronym> printing:
 </para><example endspaces=" ">
-<pre xml:space="preserve">zender&arobase;roulee:~$ ncks -v one ~/nco/data/in.nc
+<verbatim xml:space="preserve">
+zender at roulee:~$ ncks -v one ~/nco/data/in.nc
 one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
 one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
 one attribute 0: long_name, size = 3 NC_CHAR, value = one
 
 one = 1 
 
-zender&arobase;roulee:~$ ncks --cdl -v one ~/nco/data/in.nc
-netcdf in {
+zender at roulee:~$ ncks --cdl -v one ~/nco/data/in.nc
+netcdf in {
 
   variables:
     float one ;
@@ -14257,8 +14548,9 @@ netcdf in {
   data:
     one = 1 ;
 
-} // group /
-</pre></example>
+} // group /
+</verbatim>
+</example>
 <para><command>ncgen</command> converts <acronym><acronymword>CDL</acronymword></acronym>-mode output into a netCDF file:
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks --cdl -v one ~/nco/data/in.nc > ~/in.cdl
@@ -14285,10 +14577,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="1334">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1335">fixed dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1336">fix record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1337"><code>--mk_rec_dmn <var>dim</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1347">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1348">fixed dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1349">fix record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1350"><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
@@ -14301,9 +14593,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="1338"><code>-H</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1339"><code>--data</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1340"><code>--hieronymus</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1351"><code>-H</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1352"><code>--data</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1353"><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>.
@@ -14363,10 +14655,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="1341"><code>-M</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1342"><code>--Mtd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1343"><code>--Metadata</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1344">metadata, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1354"><code>-M</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1355"><code>--Mtd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1356"><code>--Metadata</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1357">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.
@@ -14422,20 +14714,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="1345"><command>ncdump</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1346"><code>-m</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1347"><code>--mtd</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1348"><code>--metadata</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1349">metadata</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1358"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1359"><code>-m</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1360"><code>--mtd</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1361"><code>--metadata</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1362">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="1350">chunking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1351">compression</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1352">deflation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1363">chunking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1364">compression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1365">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>.
@@ -14451,11 +14743,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="1353"><code>--no_blank</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1354"><code>--noblank</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1355"><code>--no-blank</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1356">blank</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1357">missing values</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1366"><code>--no_blank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1367"><code>--noblank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1368"><code>--no-blank</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1369">blank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1370">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>
@@ -14469,9 +14761,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="1358"><code>-P</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1359"><code>--print</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1360"><code>--prn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1371"><code>-P</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1372"><code>--print</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1373"><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 
@@ -14482,7 +14774,7 @@ This set of switches is useful for exploring file contents.
 <html endspaces=" ">
 <a name="Q"></a> <!&textndash; http://nco.sf.net/nco.html#Q &textndash;>
 </html>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1361"><code>-Q</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1374"><code>-Q</code></indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-Q </itemformat></item>
 </tableterm><tableitem><para>Toggle printing of dimension indices and coordinate values when printing
 arrays. 
@@ -14494,9 +14786,9 @@ different dimensions.
 <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="1362"><code>-q</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1363"><code>--quiet</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1364">quiet</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1375"><code>-q</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1376"><code>--quiet</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1377">quiet</indexterm></cindex>
 </tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="samp">-q </itemformat></item>
 </tableterm><tableitem><para>Turn off all printing to screen.
 This overrides the setting of all print-related switches, equivalent to
@@ -14512,11 +14804,11 @@ Also <samp>--quiet</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="1365"><code>--rad</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1366">orphan dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1367"><code>--retain_all_dimensions</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1368"><code>--orphan_dimensions</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1369"><code>--rph_dmn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1378"><code>--rad</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1379">orphan dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1380"><code>--retain_all_dimensions</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1381"><code>--orphan_dimensions</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1382"><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),
@@ -14535,11 +14827,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="1370"><code>-s</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1371"><code>--string</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1372"><code>--sng_fmt</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1373"><code>printf()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1374">C language</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1383"><code>-s</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1384"><code>--string</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1385"><code>--sng_fmt</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1386"><code>printf()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1387">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. 
@@ -14549,8 +14841,8 @@ Also <samp>--string</samp>  and <samp>--sng_fmt</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="1375"><code>-u</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1376"><code>--units</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1388"><code>-u</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1389"><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.
@@ -14560,11 +14852,11 @@ Also <samp>--units</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="1377"><code>--xml</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1378"><code>--ncml</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1379"><command>ncdump</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1380"><acronym><acronymword>XML</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1381"><acronym><acronymword>NcML</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1390"><code>--xml</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1391"><code>--ncml</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1392"><command>ncdump</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1393"><acronym><acronymword>XML</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1394"><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
@@ -14577,7 +14869,7 @@ into <acronym><acronymword>NcML</acronymword></acronym>, including metadata and
 Compare <command>ncks</command> &textldquo;traditional&textrdquo; with <acronym><acronymword>XML</acronymword></acronym> printing:
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
-zender@@roulee:~$ ncks -v one ~/nco/data/in.nc
+zender at roulee:~$ ncks -v one ~/nco/data/in.nc
 one: type NC_FLOAT, 0 dimensions, 1 attribute, chunked? no, compressed? no, packed? no
 one size (RAM) = 1*sizeof(NC_FLOAT) = 1*4 = 4 bytes
 one attribute 0: long_name, size = 3 NC_CHAR, value = one
@@ -14603,10 +14895,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="1382"><code>--xml_no_location</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1383"><code>--xml_spr_chr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1384"><code>--xml_spr_nmr</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1385">separator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1395"><code>--xml_no_location</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1396"><code>--xml_spr_chr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1397"><code>--xml_spr_nmr</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1398">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>. 
@@ -14624,19 +14916,19 @@ variables of character-type and numeric-type, respectively.
 Their default separators are "*" and " ":
 </para><example endspaces=" ">
 <verbatim xml:space="preserve">
-zender@@roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
+zender at roulee:~$ ncks --xml -d time,0,3 -v two_dmn_rec_var_sng in.nc
 ...
    <values separator="*">abc*bcd*cde*def</values>
  ...
- zender@@roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
+ zender at roulee:~$ ncks --xml_spr_chr=', ' -v two_dmn_rec_var_sng in.nc
 ...
 <values separator=", ">abc, bcd, cde, def, efg, fgh, ghi, hij, jkl, klm</values>
 ...
-zender@@roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
+zender at roulee:~$ ncks --xml -v one_dmn_rec_var in.nc
 ...
 <values>1 2 3 4 5 6 7 8 9 10</values>
 ...
-zender@@roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
+zender at roulee:~$ ncks --xml_spr_nmr=', ' -v one_dmn_rec_var in.nc
 ...
 <values separator=", ">1, 2, 3, 4, 5, 6, 7, 8, 9, 10</values>
 ...
@@ -14682,25 +14974,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="1386"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1387"><command>ncattget</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1388"><command>ncavg</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1389"><command>ncdmnsz</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1390"><command>nclist</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1391"><command>ncmax</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1392"><command>ncmdn</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1393"><command>ncmin</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1394"><command>ncrecsz</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1395"><command>ncrng</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1396"><command>ncunits</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1397"><file>.bashrc</file></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1398">filters</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1399">alias</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1400">shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1401">Bash shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1402">Csh shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1403">Sh shell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1404"><command>bash</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1399"><acronym><acronymword>UNIX</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1400"><command>ncattget</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1401"><command>ncavg</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1402"><command>ncdmnsz</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1403"><command>nclist</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1404"><command>ncmax</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1405"><command>ncmdn</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1406"><command>ncmin</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1407"><command>ncrecsz</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1408"><command>ncrng</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1409"><command>ncunits</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1410"><file>.bashrc</file></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1411">filters</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1412">alias</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1413">shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1414">Bash shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1415">Csh shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1416">Sh shell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1417"><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
@@ -14725,8 +15017,10 @@ In this example, <command>ncks -m -v z</command> is too verbose so a robust
 procedure could be implemented as a shell command or function called,
 say, <command>ncattget</command>
 </para><example endspaces=" ">
-<pre xml:space="preserve">function ncattget { ncks -M -m ${3} | grep -E -i "^${2} attribute [0-9]+: ${1}" | cut -f 11- -d ' ' | sort ; }
-</pre></example>
+<verbatim xml:space="preserve">
+function ncattget { ncks -M -m ${3} | grep -E -i "^${2} attribute [0-9]+: ${1}" | cut -f 11- -d ' ' | sort ; }
+</verbatim>
+</example>
 <para>The shell <command>ncattget</command> is invoked with three arugments that are,
 in order, the names of the attribute, variable, and file to examine.
 Global attributes are indicated by using a variable name of <code>global</code>.
@@ -14825,12 +15119,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="1405"><code>history</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1418"><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="1406">alphabetize output</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1407">sort alphabetically</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1408"><code>-a</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1419">alphabetize output</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1420">sort alphabetically</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1421"><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
@@ -14840,16 +15134,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="1409">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1410">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1411">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1412">exclusion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1413">extraction</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1414"><code>-v <var>var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1415"><code>--variable <var>var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1416"><code>-x</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1417"><code>--exclude</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1418"><code>--xcl</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1422">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1423">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1424">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1425">exclusion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1426">extraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1427"><code>-v <var>var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1428"><code>--variable <var>var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1429"><code>-x</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1430"><code>--exclude</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1431"><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=" ">
@@ -14860,10 +15154,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="1419"><code>-A</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1420"><code>--apn</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1421"><code>--append</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1422">appending to files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1432"><code>-A</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1433"><code>--apn</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1434"><code>--append</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1435">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.
@@ -14891,9 +15185,9 @@ 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="1423"><code>printf()</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1424"><code>\n</code> (linefeed)</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1425"><code>\t</code> (horizontal tab)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1436"><code>printf()</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1437"><code>\n</code> (linefeed)</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1438"><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.
@@ -14952,32 +15246,34 @@ 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="1426"><code>core dump</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1439"><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="1427">subsetting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1428">exclusion</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1429">extraction</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1440">subsetting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1441">exclusion</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1442">extraction</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>bounds</code> or <code>coordinates</code>
-variable (<pxref label="CF-Conventions"><xrefnodename>CF Conventions</xrefnodename></pxref>) such as <code>time_bounds</code>.
-<acronym><acronymword>NCO</acronymword></acronym> subsetting assumes the user wants all coordinates 
-and bounds and axes associated with all extracted variables 
+<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>. 
+<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>).
-Hence to exclude a <code>bounds</code> or <code>coordinates</code> variable while
-retaining the &textldquo;parent&textrdquo; variable (here <code>time</code>), one must use the
-<samp>-C</samp> switch: 
+Hence to exclude a <code>ancillary_variables</code>, <code>bounds</code>, or
+<code>coordinates</code> variable while retaining the &textldquo;parent&textrdquo; variable
+(here <code>time</code>), one must use the <samp>-C</samp> switch: 
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncks -C -x -v time_bounds in.nc out.nc
 </pre></example>
 <para>The <samp>-C</samp> switch tells the operator <emph>NOT</emph> to necessarily
-include all the <acronym><acronymword>CF</acronymword></acronym> coordinates and bounds and axes.
+include all the <acronym><acronymword>CF</acronymword></acronym> ancillary variables, axes, bounds, and
+coordinates.
 Hence the output file will contain <code>time</code> and not
 <code>time_bounds</code>. 
 </para>
@@ -15015,7 +15311,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="1430">wrapped coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1443">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.
@@ -15040,13 +15336,13 @@ the easternmost longitude as <var>max</var>, as follows:
 <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="1431">reshape variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1432">permute dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1433">reverse dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1434">re-order dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1435">re-dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1436">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1437">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1444">reshape variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1445">permute dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1446">reverse dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1447">re-order dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1448">re-dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1449">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1450">unpacking</indexterm></cindex>
 
 <noindent></noindent>
 <para>SYNTAX
@@ -15071,10 +15367,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="1438"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1439"><code>scale_factor</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1440"><command>ncap2</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1441">packing policy</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1451"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1452"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1453"><command>ncap2</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1454">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
@@ -15082,10 +15378,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="1442"><var>pck_plc</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1443"><code>-P <var>pck_plc</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1444"><code>--pck_plc <var>pck_plc</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1445"><code>--pack_policy <var>pck_plc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1455"><var>pck_plc</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1456"><code>-P <var>pck_plc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1457"><code>--pck_plc <var>pck_plc</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1458"><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.
@@ -15150,9 +15446,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="1446"><code>-U</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1447"><code>--upk</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1448"><code>--unpack</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1459"><code>-U</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1460"><code>--upk</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1461"><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.
@@ -15167,20 +15463,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="1449"><command>alias</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1450"><command>ln -s</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1451">symbolic links</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1462"><command>alias</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1463"><command>ln -s</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1464">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="1452">packing map</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1453"><var>pck_map</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1454"><code>-M <var>pck_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1455"><code>--pck_map <var>pck_map</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1456"><code>--map <var>pck_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1465">packing map</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1466"><var>pck_map</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1467"><code>-M <var>pck_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1468"><code>--pck_map <var>pck_map</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1469"><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,
@@ -15189,22 +15485,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="1457"><samp>hgh_sht</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1458"><samp>hgh_byt</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1459"><samp>flt_sht</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1460"><samp>flt_byt</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1461"><samp>nxt_lsr</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1462"><code>NC_DOUBLE</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1463"><code>NC_FLOAT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1464"><code>NC_INT64</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1465"><code>NC_UINT64</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1466"><code>NC_INT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1467"><code>NC_UINT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1468"><code>NC_SHORT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1469"><code>NC_USHORT</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1470"><code>NC_CHAR</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1471"><code>NC_BYTE</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1472"><code>NC_UBYTE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1470"><samp>hgh_sht</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1471"><samp>hgh_byt</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1472"><samp>flt_sht</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1473"><samp>flt_byt</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1474"><samp>nxt_lsr</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1475"><code>NC_DOUBLE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1476"><code>NC_FLOAT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1477"><code>NC_INT64</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1478"><code>NC_UINT64</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1479"><code>NC_INT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1480"><code>NC_UINT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1481"><code>NC_SHORT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1482"><code>NC_USHORT</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1483"><code>NC_CHAR</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1484"><code>NC_BYTE</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1485"><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;
@@ -15243,9 +15539,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="1473"><var>_FillValue</var></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1474"><code>_FillValue</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1475"><code>NUL</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1486"><var>_FillValue</var></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1487"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1488"><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. 
@@ -15283,16 +15579,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="1476">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1489">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="1477">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1478">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1490">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1491">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="1479">record variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1492">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
@@ -15307,7 +15603,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="1480">transpose</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1493">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>).
@@ -15428,9 +15724,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="1481">appending variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1482"><samp>-A</samp></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1483"><samp>-v</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1494">appending variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1495"><samp>-A</samp></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1496"><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>).
@@ -15438,8 +15734,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="1484"><command>ncl_convert2nc</command></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1485"><acronym><acronymword>NCL</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1497"><command>ncl_convert2nc</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1498"><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
@@ -15497,7 +15793,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="1486">reverse dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1499">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
@@ -15515,8 +15811,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="1487">long options</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1488">quotes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1500">long options</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1501">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.
@@ -15527,7 +15823,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="1489">reverse dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1502">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>: 
@@ -15551,7 +15847,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="1490">reverse data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1503">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. 
@@ -15586,7 +15882,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="1491">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1504">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  
@@ -15605,7 +15901,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="1492">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1505">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"
@@ -15635,10 +15931,10 @@ changing variable dimensionality, including the record dimension.
 </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>
 <section spaces=" "><sectiontitle><command>ncra</command> netCDF Record Averager</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1493">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1494">record average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1495">record dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1496">running average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1506">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1507">record average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1508">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1509">running average</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="38" mergedindex="cp">ncra</indexterm></findex>
 
 <noindent></noindent>
@@ -15659,15 +15955,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="1497">degenerate dimension</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1498">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1510">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1511">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="1499">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1500">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1501"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1512">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1513">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1514"><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 
@@ -15676,10 +15972,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="1502">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1515">hyperslab</indexterm></cindex>
 Hyperslabs of the record dimension which include more than one file 
 work correctly.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1503">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1516">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.
@@ -15689,7 +15985,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="1504">operation types</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1517">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>). 
@@ -15702,10 +15998,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="1505">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1506"><code>NINTAP</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1507">Processor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1508"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1518">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1519"><code>NINTAP</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1520">Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1521"><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
@@ -15715,7 +16011,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="1509">Fortran</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1522">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,
@@ -15729,7 +16025,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="1510">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1523">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=" ">
@@ -15752,8 +16048,8 @@ averages June, 1985&textndash;June, 1989:
 </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>
 <section spaces=" "><sectiontitle><command>ncrcat</command> netCDF Record Concatenator</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1511">concatenation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1512">record concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1524">concatenation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1525">record concatenation</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="39" mergedindex="cp">ncrcat</indexterm></findex>
 
 <noindent></noindent>
@@ -15774,14 +16070,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="1513">record dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1526">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="1514">multi-file operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1515">standard input</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1516"><code>stdin</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1527">multi-file operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1528">standard input</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1529"><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 
@@ -15790,19 +16086,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="1517">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1530">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="1518">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1531">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="1519">packing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1520">unpacking</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1521"><code>add_offset</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1522"><code>scale_factor</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1532">packing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1533">unpacking</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1534"><code>add_offset</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1535"><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>).
@@ -15819,7 +16115,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="1523">ARM conventions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1536">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.
@@ -15832,10 +16128,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="1524">globbing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1525"><code>NINTAP</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1526">Processor</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1527"><acronym><acronymword>CCM</acronymword></acronym> Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1537">globbing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1538"><code>NINTAP</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1539">Processor</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1540"><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
@@ -15846,7 +16142,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="1528">Fortran</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1541">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
@@ -15863,7 +16159,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="1529">stride</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1542">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
@@ -15887,14 +16183,14 @@ concatenates June, 1985&textndash;June, 1989:
 </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>
 <section spaces=" "><sectiontitle><command>ncrename</command> netCDF Renamer</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1530">renaming variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1531">renaming groups</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1532">renaming dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1533">renaming attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1534">variable names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1535">dimension names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1536">attribute names</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1537">group names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1543">renaming variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1544">renaming groups</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1545">renaming dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1546">renaming attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1547">variable names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1548">dimension names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1549">attribute names</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1550">group names</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="41" mergedindex="cp">ncrename</indexterm></findex>
 
 <noindent></noindent>
@@ -15910,7 +16206,7 @@ concatenates June, 1985&textndash;June, 1989:
 <noindent></noindent>
 <para>DESCRIPTION
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1538"><kbd>.</kbd></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1551"><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
@@ -15939,9 +16235,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="1539">data safety</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1540">safeguards</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1541">temporary output files</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1552">data safety</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1553">safeguards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1554">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
@@ -15961,10 +16257,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="1542">performance</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1543">operator speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1544">speed</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1545">execution time</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1555">performance</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1556">operator speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1557">speed</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1558">execution time</indexterm></cindex>
 <para>According to the <cite>netCDF User Guide</cite>, renaming properties 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>.
@@ -15978,9 +16274,9 @@ when the <var>new_name</var> is shorter than the <var>old_name</var>.
 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="1546"><code>global</code> attribute</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1547">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1548">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1559"><code>global</code> attribute</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1560">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1561">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
@@ -16041,8 +16337,10 @@ In this case <code>p</code> must exist in the input file (or
 <para>Rename the attribute <code>long_name</code> to <code>largo_nombre</code> in the
 variable <code>u</code>, and no other variables in netCDF <file>in.nc</file>. 
 </para><example endspaces=" ">
-<pre xml:space="preserve">ncrename -a u&arobase;long_name,largo_nombre in.nc
-</pre></example>
+<verbatim xml:space="preserve">
+ncrename -a u at long_name,largo_nombre in.nc
+</verbatim>
+</example>
  
 <para>Rename the group <code>g8</code> to <code>g20</code> in netCDF4 file
 <file>in_grp.nc</file>:   
@@ -16060,7 +16358,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="1549">coordinate variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1562">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
@@ -16095,10 +16393,10 @@ ncrename -O -d lat_T42,lat ~/foo.nc ~/foo2.nc # Also renames variable
 version 4.3.1-rc5 or later, or convert the file to netCDF3 first,
 then rename as intended, then convert back.
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1550">global attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1551">attributes, global</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1552"><code>_FillValue</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1553"><code>missing_value</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1563">global attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1564">attributes, global</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1565"><code>_FillValue</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1566"><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
@@ -16106,9 +16404,11 @@ those variables which possess it), the attribute <code>hieght</code> is
 changed to <code>height</code> in the variable <code>tpt</code>, and in the
 variable <code>prs_sfc</code>, if it exists.
 </para><example endspaces=" ">
-<pre xml:space="preserve">ncrename -a _FillValue,missing_value -a .units,CGS_units \
-  -a tpt&arobase;hieght,height -a prs_sfc&arobase;.hieght,height in.nc out.nc 
-</pre></example>
+<verbatim xml:space="preserve">
+ncrename -a _FillValue,missing_value -a .units,CGS_units \
+  -a tpt at hieght,height -a prs_sfc at .hieght,height in.nc out.nc 
+</verbatim>
+</example>
 <para>The presence and absence of the <samp>.</samp> and <samp>&arobase;</samp> features
 cause this command to execute successfully only if a number of 
 conditions are met. 
@@ -16124,13 +16424,15 @@ The variable <code>prs_sfc</code> need not exist, and need not contain the
 <para>Rename the global or group attribute <code>Convention</code> to
 <code>Conventions</code>
 </para><example endspaces=" ">
-<pre xml:space="preserve">ncrename -a Convention,Conventions  in.nc # Variable and global atts.
+<verbatim xml:space="preserve">
+ncrename -a Convention,Conventions  in.nc # Variable and global atts.
 ncrename -a .Convention,Conventions in.nc # Variable and global atts.
-ncrename -a &arobase;Convention,Conventions  in.nc # Global atts. only
-ncrename -a &arobase;.Convention,Conventions in.nc # Global atts. only
-ncrename -a global&arobase;Convention,Conventions   in.nc # Global atts. only
-ncrename -a .global&arobase;.Convention,Conventions in.nc # Global atts. only
-</pre></example>
+ncrename -a @Convention,Conventions  in.nc # Global atts. only
+ncrename -a @.Convention,Conventions in.nc # Global atts. only
+ncrename -a global at Convention,Conventions   in.nc # Global atts. only
+ncrename -a .global at .Convention,Conventions in.nc # Global atts. only
+</verbatim>
+</example>
 <para>The examples without the <code>&arobase;</code> character attempt to change the
 attribute name in both Global or Group and variable attributes.
 The examples with the <code>&arobase;</code> character attempt to change only 
@@ -16151,10 +16453,10 @@ Variables not prefixed with a period (<code>global</code>) must be present.
 </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>
 <section spaces=" "><sectiontitle><command>ncwa</command> netCDF Weighted Averager</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1554">averaging data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1555">weighted average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1556">masked average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1557">broadcasting variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1567">averaging data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1568">weighted average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1569">masked average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1570">broadcasting variables</indexterm></cindex>
 <findex index="fn" spaces=" "><indexterm index="fn" number="42" mergedindex="cp">ncwa</indexterm></findex>
 
 <noindent></noindent>
@@ -16182,7 +16484,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="1558">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1571">degenerate dimension</indexterm></cindex>
 <para>Averaged dimensions are, by default, eliminated as dimensions.
 Their corresponding coordinates, if any, are output as scalar
 variables. 
@@ -16196,9 +16498,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="1559">arithmetic operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1560">hyperslab</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1561"><code>-d <var>dim</var>,[<var>min</var>][,[<var>max</var>]]</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1572">arithmetic operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1573">hyperslab</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1574"><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>). 
@@ -16213,20 +16515,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="1562"><code>-w <var>weight</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1563"><code>--weight <var>weight</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1564"><code>--wgt_var <var>weight</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1565"><code>-m <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1566"><code>--mask-variable <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1567"><code>--mask_variable <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1568"><code>--msk_nm <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1569"><code>--msk_var <var>mask_var</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1570"><code>-B <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1571"><code>--msk_cnd <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1572"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1575"><code>-w <var>weight</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1576"><code>--weight <var>weight</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1577"><code>--wgt_var <var>weight</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1578"><code>-m <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1579"><code>--mask-variable <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1580"><code>--mask_variable <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1581"><code>--msk_nm <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1582"><code>--msk_var <var>mask_var</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1583"><code>-B <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1584"><code>--msk_cnd <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1585"><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="1573">rank</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1586">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
@@ -16261,8 +16563,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="1574">coordinate variable</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1575"><code>-I</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1587">coordinate variable</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1588"><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
@@ -16280,8 +16582,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="1576">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1577">operation types</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1589">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1590">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. 
@@ -16301,8 +16603,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="1578">mask condition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1579">truth condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1591">mask condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1592">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).
@@ -16317,12 +16619,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="1580"><code>--op_rlt <var>mask_comp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1581"><code>--mask_comparator <var>mask_comp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1582"><code>--msk_cmp_typ <var>mask_comp</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1583"><code>--msk_cnd_sng <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1584"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1585"><code>-B <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1593"><code>--op_rlt <var>mask_comp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1594"><code>--mask_comparator <var>mask_comp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1595"><code>--msk_cmp_typ <var>mask_comp</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1596"><code>--msk_cnd_sng <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1597"><code>--mask_condition <var>mask_cond</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1598"><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  
@@ -16337,7 +16639,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="1586">comparator</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1599">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>).  
@@ -16356,9 +16658,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="1587"><code>--mask-value <var>mask_val</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1588"><code>--mask_value <var>mask_val</var></code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1589"><code>--msk_val <var>mask_val</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1600"><code>--mask-value <var>mask_val</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1601"><code>--mask_value <var>mask_val</var></code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1602"><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>.
@@ -16411,11 +16713,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="1590">normalization</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1591"><code>-N</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1592"><code>numerator</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1593">integration</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1594">dot product</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1603">normalization</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1604"><code>-N</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1605"><code>numerator</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1606">integration</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1607">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
@@ -16440,7 +16742,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="1595">dot product</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1608">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 
@@ -16484,7 +16786,8 @@ sophisticated averages (and integrals) from the command line.
 </para>
 <para>Given file <file>85_0112.nc</file>:
 </para><example endspaces=" ">
-<pre xml:space="preserve">netcdf 85_0112 {
+<verbatim xml:space="preserve">
+netcdf 85_0112 {
 dimensions:
         lat = 64 ;
         lev = 18 ;
@@ -16500,8 +16803,9 @@ variables:
         float two_dmn_var(lat, lev) ;
         float mask(lat, lon) ;
         float gw(lat) ;
-} 
-</pre></example>
+} 
+</verbatim>
+</example>
 
 <para>Average all variables in <file>in.nc</file> over all dimensions and store
 results in <file>out.nc</file>:
@@ -16519,7 +16823,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="1596">degenerate dimension</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1609">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=" ">
@@ -16531,9 +16835,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="1597"><code>gw</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1598">Gaussian weights</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1599">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1610"><code>gw</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1611">Gaussian weights</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1612">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
@@ -16559,8 +16863,8 @@ $64 \times 128 = 8192$.
 64 times 128 = 8192.
 <clear name="flg" line=" flg"></clear>
 </para>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1600"><code>ORO</code></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1601">climate model</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1613"><code>ORO</code></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1614">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=" ">
@@ -16615,20 +16919,22 @@ 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="1602">mask condition</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1603">truth condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1615">mask condition</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1616">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=" ">
-<pre xml:space="preserve"># Set masking variable and its scalar thresholds
+<verbatim xml:space="preserve">
+# Set masking variable and its scalar thresholds
 export msk_var='three_dmn_var_dbl' # Masking variable
 export thr_max='20' # Maximum allowed value
 export thr_min='10' # Minimum allowed value
 ncecat -O in.nc out.nc # Wrap out.nc in degenerate "record" dimension
-ncwa -O -a record -B "${msk_var} <= ${thr_max}" out.nc out.nc
+ncwa -O -a record -B "${msk_var} <= ${thr_max}" out.nc out.nc
 ncecat -O out.nc out.nc # Wrap out.nc in degenerate "record" dimension
-ncwa -O -a record -B "${msk_var} >= ${thr_min}" out.nc out.nc
-</pre></example>
+ncwa -O -a record -B "${msk_var} >= ${thr_min}" out.nc out.nc
+</verbatim>
+</example>
 <para>After the first use of <command>ncwa</command>, <file>out.nc</file> contains
 <var>_FillValue</var> where <code>${msk_var} >= ${thr_max}</code>.
 The process is then repeated on the remaining data to filter out 
@@ -16644,17 +16950,17 @@ where <math><var>thr_min</var> <= <var>msk_var</var> <= <var>thr_max</var>
 </chapter>
 <node name="Contributing" spaces=" "><nodename>Contributing</nodename><nodenext spaces=" ">Quick Start</nodenext><nodeprev spaces=" ">Operator Reference Manual</nodeprev><nodeup spaces=" ">Top</nodeup></node>
 <chapter spaces=" "><sectiontitle>Contributing</sectiontitle>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1604">contributing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1617">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="1605">PayPal</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1618">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="1606">chocolate</indexterm></cindex>
+<footnote spaces="\n"><cindex index="cp" spaces=" "><indexterm index="cp" number="1619">chocolate</indexterm></cindex>
 <para>Happy users have sent me a few gifts, though.
 This includes a box of imported chocolate.
 Mmm.
@@ -16672,21 +16978,22 @@ So you could be the third!
 </html>
 <menu endspaces=" ">
 <menuentry leadingtext="* "><menunode separator="::">Contributors</menunode><menudescription><pre xml:space="preserve">
+</pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Citation</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry><menuentry leadingtext="* "><menunode separator="::">Proposals for Institutional Funding</menunode><menudescription><pre xml:space="preserve">
 </pre></menudescription></menuentry></menu>
 
-<node name="Contributors" spaces=" "><nodename>Contributors</nodename><nodenext spaces=" ">Proposals for Institutional Funding</nodenext><nodeprev spaces=" ">Contributing</nodeprev><nodeup spaces=" ">Contributing</nodeup></node>
+<node name="Contributors" spaces=" "><nodename>Contributors</nodename><nodenext spaces=" ">Citation</nodenext><nodeprev spaces=" ">Contributing</nodeprev><nodeup spaces=" ">Contributing</nodeup></node>
 <section spaces=" "><sectiontitle>Contributors</sectiontitle>
 <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="1607">Russ Rew</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1608">John Caron</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1609">Glenn Davis</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1610">Steve Emmerson</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1611">James Gallagher</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1612">Ed Hartnett</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1613">Dennis Heimbigner</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1620">Russ Rew</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1621">John Caron</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1622">Glenn Davis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1623">Steve Emmerson</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1624">James Gallagher</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1625">Ed Hartnett</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1626">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, 
@@ -16701,10 +17008,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="1614">contributors</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1627">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="1615">Charlie Zender</indexterm></cindex>
+<beforefirstitem><cindex index="cp" spaces=" "><indexterm index="cp" number="1628">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,
@@ -16713,131 +17020,160 @@ documentation, anchoring, recursion, <acronym><acronymword>GPE</acronymword></ac
 <command>ncbo</command>, <command>ncpdq</command>, SMP threading and MPI parallelization,
 netCDF4 integration, external funding, project management, science
 research, releases. 
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1616">Henry Butowsky</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1629">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>. 
 Type conversion for arithmetic.
-Migration to netCDF3 API.
+Migration to netCDF3 <acronym><acronymword>API</acronymword></acronym>.
 <command>ncap2</command> parser, lexer, <acronym><acronymword>GSL</acronymword></acronym>-support, <w>and I/O</w>.
 Multislabbing algorithm.
 Variable wildcarding.
 Numerous hacks.
 <command>ncap2</command> language.
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1617">Rorik Peterson</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1630">Rorik Peterson</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Rorik Peterson</itemformat></item>
-</tableterm><tableitem><para>Original autotool build support. 
+</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="1618">Joe Hamman</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1631">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="1619">Daniel Wang</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1632">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="1620">Harry Mangalam</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1633">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="1621">Pedro Vicente</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1634">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="1622">Russ Rew</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1635">Russ Rew</indexterm></cindex>
 </para></tableitem></tableentry><tableentry><tableterm><item spaces=" "><itemformat command="asis">Russ Rew</itemformat></item>
-</tableterm><tableitem><para>Advice on NCO structural algorithms
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1623">Brian Mays</indexterm></cindex>
+</tableterm><tableitem><para>Advice on <acronym><acronymword>NCO</acronymword></acronym> structural algorithms
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1636">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="1624">George Shapovalov</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1637">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="1625">Bill Kocik</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1638">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="1626">Len Makin</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1639">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="1627">Jim Edwards</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1640">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="1628">Juliana Rew</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1641">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="1629">Karen Schuchardt</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1642">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="1630">Gayathri Venkitachalam</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1643">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="1631">Scott Capps</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1644">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="1632">Peter Campbell</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1633">Martin Dix</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1634">Mark Flanner</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1635">Markus Liebig</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1636">Keith Lindsay</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1637">Stu Muller</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1638">Mike Page</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1639">Martin Schmidt</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1640">Lori Sentman</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1641">Michael Schulz</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1642">Gary Strand</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1643">Andrew Wittenberg</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1644">George White</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1645">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, Gary Strand, George White Andrew Wittenberg, Remik Ziemlinski</itemformat></item>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1645">Peter Campbell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1646">Martin Dix</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1647">Mark Flanner</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1648">Markus Liebig</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1649">Keith Lindsay</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1650">Stu Muller</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1651">Mike Page</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1652">Martin Schmidt</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1653">Lori Sentman</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1654">Michael Schulz</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1655">Rich Signell</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1656">Gary Strand</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1657">Andrew Wittenberg</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1658">George White</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1659">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="1646">Daniel Baumann</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1647">Nick Bower</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1648">Luk Claes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1649">Barry deFreese</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1650">Aleksandar Jelenak</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1651">Francesco Lovergine</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1652">Matej Vela</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1660">Daniel Baumann</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1661">Nick Bower</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1662">Luk Claes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1663">Barry deFreese</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1664">Aleksandar Jelenak</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1665">Francesco Lovergine</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1666">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="1653">Patrice Dumas</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1654">Ed Hill</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1655">Orion Powlawski</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1667">Patrice Dumas</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1668">Ed Hill</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1669">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="1656">George Shapavalov</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1657">Patrick Kursawe</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1670">George Shapavalov</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1671">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="1658">Filipe Fernandes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1672">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="1659">Alexander Hansen</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1660">Takeshi Enomoto</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1673">Alexander Hansen</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1674">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="1661">Eric Blake</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1675">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="1662">Gavin Burris</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1663">Kyle Wilcox</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1676">Gavin Burris</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1677">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="1664">Andrea Cimatoribus</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1678">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="1665">Martin Otte</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1666">Etienne Tourigny</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1679">Martin Otte</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1680">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="1667">Wenshan Wang</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1681">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>
 <para>Please let me know if your name was omitted!
 </para>
 <html endspaces=" ">
+<a name="ctt"></a> <!&textndash; http://nco.sf.net/nco.html#ctt &textndash;>
+</html>
+</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="1682">citation</indexterm></cindex>
+<para>The recommended citations for <acronym><acronymword>NCO</acronymword></acronym> software are
+</para><example endspaces=" ">
+<verbatim xml:space="preserve">
+Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience
+Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10),
+1338-1342, doi:10.1016/j.envsoft.2008.03.004. 
+
+Zender, C. S. (2014), netCDF Operator (NCO) User Guide, Version 4.4.3,
+http://nco.sf.net/nco.pdf. 
+</verbatim>
+</example>
+<para>Use the former when referring to overall design, purpose, and 
+optimization of <acronym><acronymword>NCO</acronymword></acronym>, and use the latter when referring to
+specific features and/or the User Guide itself.
+</para>
+<para>Additional information on citing <acronym><acronymword>NCO</acronymword></acronym> is in the User Guide at 
+<url><urefurl>http://nco.sf.net#ctt</urefurl></url>.
+A complete list of <acronym><acronymword>NCO</acronymword></acronym> publications and presentations is at
+<url><urefurl>http://nco.sf.net#pub</urefurl></url>.
+This list links to the full papers and seminars themselves.
+</para>
+<html endspaces=" ">
 <a name="prp"></a> <!&textndash; http://nco.sf.net/nco.html#prp &textndash;>
 <a name="prp_sei"></a> <!&textndash; http://nco.sf.net/nco.html#prp_sei &textndash;>
 <a name="fnd"></a> <!&textndash; http://nco.sf.net/nco.html#fnd &textndash;>
@@ -16847,29 +17183,29 @@ netCDF4 groups.
 </pre></menudescription></menuentry></menu>
 
 </section>
-<node name="Proposals-for-Institutional-Funding" spaces=" "><nodename>Proposals for Institutional Funding</nodename><nodenext spaces="  "></nodenext><nodeprev spaces=" ">Contributors</nodeprev><nodeup spaces=" ">Contributing</nodeup></node>
+<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="1668">funding</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1669">proposals</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1670"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1671">server-side processing</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1672">Distributed Data Reduction & Analysis</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1673">Scientific Data Operators</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1674"><acronym><acronymword>DDRA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1675">Server-Side Distributed Data Reduction & Analysis</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1676"><acronym><acronymword>SSDDRA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1677"><acronym><acronymword>CCSM</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1678"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1679"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1680"><acronym><acronymword>SDO</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1681"><acronym><acronymword>SEIII</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1682">OptIPuter</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1683">funding</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1684">proposals</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1685"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1686">server-side processing</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1687">Distributed Data Reduction & Analysis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1688">Scientific Data Operators</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1689"><acronym><acronymword>DDRA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1690">Server-Side Distributed Data Reduction & Analysis</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1691"><acronym><acronymword>SSDDRA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1692"><acronym><acronymword>CCSM</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1693"><acronym><acronymword>IPCC</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1694"><acronym><acronymword>NSF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1695"><acronym><acronymword>SDO</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1696"><acronym><acronymword>SEIII</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1697">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="1683">parallelism</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1698">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> 
@@ -16877,9 +17213,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="1684"><acronym><acronymword>NASA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1685"><acronym><acronymword>NRA</acronymword></acronym></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1686"><acronym><acronymword>HDF</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1699"><acronym><acronymword>NASA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1700"><acronym><acronymword>NRA</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1701"><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
@@ -16899,7 +17235,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="1687">Quick Start</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1702">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
@@ -16914,43 +17250,47 @@ 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="1688">daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1703">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="1689">monthly average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1690">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1691">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1704">monthly average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1705">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1706">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
-<pre xml:space="preserve">for yyyy in {1990..2005}; do      # Loop over years
-  for moy in {1..12}; do          # Loop over months
-    mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
+<verbatim xml:space="preserve">
+for yyyy in {1990..2005}; do      # Loop over years
+  for moy in {1..12}; do          # Loop over months
+    mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
 
     # Average specific month yyyy-mm
-    ncra -O -d time,"${yyyy}-${mm}-01","${yyyy}-${mm}-31" \
-         in.nc in_${yyyy}${mm}.nc
+    ncra -O -d time,"${yyyy}-${mm}-01","${yyyy}-${mm}-31" \
+         in.nc in_${yyyy}${mm}.nc
   done
 done
 
 # Concatenate monthly files together
 ncrcat -O in_??????.nc out.nc
-</pre></example>
+</verbatim>
+</example>
 
 <noindent></noindent>
 <para><strong>Annual average:</strong>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1692">annual average from daily data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1693">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1694">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1707">annual average from daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1708">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1709">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
-<pre xml:space="preserve">for yyyy in {1990..2005}; do      # Loop over years
-  ncra -O -d time,"${yyyy}-01-01","${yyyy}-12-31" in.nc in_${yyyy}.nc
+<verbatim xml:space="preserve">
+for yyyy in {1990..2005}; do      # Loop over years
+  ncra -O -d time,"${yyyy}-01-01","${yyyy}-12-31" in.nc in_${yyyy}.nc
 done
 
 # Concatenate annual files together
 ncrcat -O in_????.nc out.nc
-</pre></example>
+</verbatim>
+</example>
 <para>The <option>-O</option> switch means to overwrite the pre-existing files (<pxref label="Batch-Mode"><xrefnodename>Batch Mode</xrefnodename></pxref>).
 The <option>-d</option> option is to specify the range of hyperslabs (<pxref label="Hyperslabs"><xrefnodename>Hyperslabs</xrefnodename></pxref>).
 There are detailed instructions on <command>ncra</command> (<pxref label="ncra-netCDF-Record-Averager"><xrefnodename>ncra netCDF Record Averager</xrefnodename></pxref> and <command>ncrcat</command> (<pxref label="ncrcat-netCDF-Record-Concatenator"><xrefnodename>ncrcat netCDF Record Concatenator</xrefnodename></pxref>).
@@ -16959,23 +17299,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="1695">monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1710">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="1696">seasonal average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1697">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1698">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1711">seasonal average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1712">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1713">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="1699">annual average from monthly data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1700">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1701">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1714">annual average from monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1715">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1716">time-averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve">ncra -O --mro -d time,,,12,12 in.nc out.nc
 </pre></example>
@@ -17000,10 +17340,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="1702">daily data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1703">monthly data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1704">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1705">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1717">daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1718">monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1719">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1720">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.
@@ -17014,18 +17354,20 @@ If you want to know the monthly average of Jan 1990, you can write like,
 </pre></example>
 <para>You might want to use loop if you need the average of each month.
 </para><example endspaces=" ">
-<pre xml:space="preserve">for moy in {1..12}; do          # Loop over months
-  mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
+<verbatim xml:space="preserve">
+for moy in {1..12}; do          # Loop over months
+  mm=$( printf "%02d" ${moy} )  # Change to 2-digit format
 
-  ncra -O snd_????${mm}??.nc out_${mm}.nc
+  ncra -O snd_????${mm}??.nc out_${mm}.nc
 done
-</pre></example>
+</verbatim>
+</example>
 
 </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="1706">daily data</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1707">monthly data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1721">daily data</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1722">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.
@@ -17033,12 +17375,14 @@ And for seasonal averages, you can specify the three months by shell scripts.
 </para>
 <html endspaces=" ">
 <a name="cmip5"></a> <!&textndash; http://nco.sf.net/nco.html#cmip5 &textndash;>
+<a name="godad"></a> <!&textndash; http://nco.sf.net/nco.html#godad &textndash;>
 </html>
 </section>
 </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="1708"><acronym><acronymword>CMIP5</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1723"><acronym><acronymword>CMIP5</acronymword></acronym></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1724"><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.
@@ -17051,11 +17395,37 @@ responses of climate models from around the world.
 However, it is a tremendous workload to retrieve a single climate
 statistic from all these models, each of which includes several ensemble 
 members.  
-Not only that, it is too often a repetitive process which impedes new
+Not only that, it is too often a tedious process that impedes new
 research and hypothesis testing.  
-Our <acronym><acronymword>NASA</acronymword></acronym> <acronym><acronymword>ACCESS</acronymword></acronym> project is designed to simplify and
-accelerate this process.  
-To begin, we document below a prototypical example of <acronym><acronymword>CMIP5</acronymword></acronym>
+Our <acronym><acronymword>NASA</acronymword></acronym> <acronym><acronymword>ACCESS</acronymword></acronym> 2011 project simplified and
+accelerated this process.   
+</para>
+<para>Traditional geoscience data analysis requires users to work with
+numerous flat (data in one level or namespace) files. 
+In that paradigm instruments or models produce, and then repositories
+archive and distribute, and then researchers request and analyze,
+collections of flat files.
+<acronym><acronymword>NCO</acronymword></acronym> works well with that paradigm, yet it also embodies the
+necessary algorithms to transition geoscience data analysis from relying
+solely on traditional (or &textldquo;flat&textrdquo;) datasets to allowing newer
+hierarchical (or &textldquo;nested&textrdquo;) datasets.  
+</para>
+<para>Hierarchical datasets support and enable combining all datastreams that
+meet user-specified criteria into a single or small number of files that
+hold <emph>all</emph> the science-relevant data.
+<acronym><acronymword>NCO</acronymword></acronym> (and no other software to our knowledge) exploits this
+capability now.
+Data and metadata may be aggregated into and analyzed in hierarchical
+structures.
+We call the resulting data storage, distribution, and analysis
+paradigm Group-Oriented Data Analysis and Distribution
+(<acronym><acronymword>GODAD</acronymword></acronym>). 
+<acronym><acronymword>GODAD</acronymword></acronym> lets the scientific question organize the data, not the  
+<emph>ad hoc</emph> granularity of all relevant datasets.
+This chapter illustrates <acronym><acronymword>GODAD</acronymword></acronym> techniques applied to 
+analysis of the <acronym><acronymword>CMIP5</acronymword></acronym> dataset.
+</para>
+<para>To begin, we document below a prototypical example of <acronym><acronymword>CMIP5</acronymword></acronym> 
 analysis and evaluation using traditional <acronym><acronymword>NCO</acronymword></acronym> commands on
 netCDF3-format model and <acronym><acronymword>HDF-EOS</acronymword></acronym> format observational
 (<acronym><acronymword>NASA</acronymword></acronym> <acronym><acronymword>MODIS</acronymword></acronym> satellite instrument) datasets.
@@ -17087,11 +17457,11 @@ 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="1709">file combination</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1725">file combination</indexterm></cindex>
 <para>Sometimes, the data of one ensemble member will be stored in several
 files to reduce single file size.
-But it is not convenient to process in a batch mode.
-The following script illustrates how to concatenate these files into one.
+It is more convenient to concatenate these files into a single
+timeseries, and the following script illustrates how.
 Key steps include: 
 </para><enumerate first="1" endspaces=" ">
 <listitem spaces=" "><para>Obtain number and names (or partial names) of files in a directory
@@ -17102,24 +17472,24 @@ Key steps include:
 <verbatiminclude file="xmp/cmb_fl.sh" spaces=" ">xmp/cmb_fl.sh</verbatiminclude>
 </example>
 
-<para>Right now, <acronym><acronymword>CMIP5</acronymword></acronym> model data downloaded from Earth System Grid
+<para><acronym><acronymword>CMIP5</acronymword></acronym> model data downloaded from the Earth System Grid
 Federation (<uref><urefurl>http://pcmdi9.llnl.gov/esgf-web-fe/</urefurl><urefdesc spaces=" "><acronym><acronymword>ESGF</acronymword></acronym></urefdesc></uref>) 
-will not contain <key>group</key> features yet. 
-Therefore users can aggregate the flat files into groups themselves.
-The following script shows how to aggregate models to one file.
+does not contain group features yet. 
+Therefore users must aggregate flat files into hierarchical ones themselves.
+The following script shows how.
 Each dataset becomes a group in the output file.
 There can be several levels of groups.
-In this example, we employ two experiments as the top-level.
-The second-level comprises different models.
-Some models have more than one ensemble member.
-These ensemble members are on the third level.
-In each sub-group of ensemble members, we appended two variables,
-<var>snc</var> and <var>snd</var> (these stand for snow cover and snow depth, by
-the way).
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1710"><option>--gag</option></indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1711">aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1712">group aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1713">groups, creating</indexterm></cindex>
+In this example, we employ two experiments (&textldquo;scenarios&textrdquo;) as the top-level.
+The second-level comprises different models (e.g., CCSM4, CESM1-BGC).
+Many models are run multiple times with slight perturbed initial
+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="1726"><option>--gag</option></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1727">aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1728">group aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1729">groups, creating</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatiminclude file="xmp/cmb_fl_grp.sh" spaces=" ">xmp/cmb_fl_grp.sh</verbatiminclude>
 </example>
@@ -17127,10 +17497,10 @@ the way).
 </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="1714">spatial distribution</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1715">long-term average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1716">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1717">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1730">spatial distribution</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1731">long-term average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1732">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1733">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>
@@ -17151,7 +17521,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="1718">groups, averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1734">groups, averaging</indexterm></cindex>
 </para><example endspaces=" ">
 <pre xml:space="preserve"># Data from cmb_fl_grp.sh
 # ensemble averaging
@@ -17175,20 +17545,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="1719">annual average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1720">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1721">time-averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1722">area-averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1723">dimension order</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1724">anomalies</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1725">standard deviation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1726">renaming variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1727">attributes, editing</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1728">attributes, modifying</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1729">attributes, overwriting</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1730">regression</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1731">nco script file</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1732">variables, appending</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1735">annual average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1736">average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1737">time-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1738">area-averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1739">dimension order</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1740">anomalies</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1741">standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1742">renaming variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1743">attributes, editing</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1744">attributes, modifying</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1745">attributes, overwriting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1746">regression</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1747">nco script file</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1748">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>
@@ -17223,12 +17593,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="1733">group, spatial averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1734">group, temporal averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1735">group, anomaly</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1736">group, standard deviation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1737">group, aggregation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1738">group, dimension permutation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1749">group, spatial averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1750">group, temporal averaging</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1751">group, anomaly</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1752">group, standard deviation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1753">group, aggregation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1754">group, dimension permutation</indexterm></cindex>
 </para><example endspaces=" ">
 <verbatiminclude file="xmp/ann_avg_grp.sh" spaces=" ">xmp/ann_avg_grp.sh</verbatiminclude>
 </example>
@@ -17236,12 +17606,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="1739">monthly average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1740">average</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1741">time-averaging</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1742">anomalies</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1743">geographical weight</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1744">weighted average</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1755">monthly average</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="1758">anomalies</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1759">geographical weight</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1760">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>
@@ -17267,16 +17637,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="1745">regrid</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1746">MODIS</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1747">bilinear interpolation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1748">interpolation</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1749">renaming variables</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1750">renaming attributes</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1751">renaming dimensions</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1752">attributes, editing</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1753">attributes, modifying</indexterm></cindex>
-<cindex index="cp" spaces="	"><indexterm index="cp" number="1754">attributes, overwriting</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1761">regrid</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1762">MODIS</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1763">bilinear interpolation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1764">interpolation</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1765">renaming variables</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1766">renaming attributes</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1767">renaming dimensions</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1768">attributes, editing</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1769">attributes, modifying</indexterm></cindex>
+<cindex index="cp" spaces="	"><indexterm index="cp" number="1770">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. 
@@ -17298,8 +17668,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="1755">MODIS</indexterm></cindex>
-<cindex index="cp" spaces=" "><indexterm index="cp" number="1756">coordinates</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1771">MODIS</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1772">coordinates</indexterm></cindex>
 <para><strong>Main Script</strong>
 </para><example endspaces=" ">
 <verbatiminclude file="xmp/add_crd.sh" spaces=" ">xmp/add_crd.sh</verbatiminclude>
@@ -17312,7 +17682,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="1757">coordinates, modifying</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1773">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
@@ -17359,12 +17729,14 @@ 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="1758"><command>parallel</command></indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1774"><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=" ">
-<pre xml:space="preserve">ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" {} 50y/{}
-</pre></example>
+<verbatim xml:space="preserve">
+ls *historical*.nc | parallel ncks -O -d time,"1950-01-01","2000-01-01" {} 50y/{}
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="ccsm"></a> <!&textndash; http://nco.sf.net/nco.html#ccsm &textndash;>
@@ -17372,14 +17744,15 @@ Here is an example showing:
 </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="1759">CCSM</indexterm></cindex>
+<cindex index="cp" spaces=" "><indexterm index="cp" number="1775">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.
 </para><example endspaces=" ">
-<pre xml:space="preserve">************************************************************************
-Task 0: Finding input files
+<verbatim xml:space="preserve">
 ************************************************************************
+Task 0: Finding input files
+x************************************************************************
 The CCSM model outputs files to a local directory like:
 
 /ptmp/zender/archive/T42x1_40
@@ -17421,44 +17794,44 @@ Each month in the output file is the mean of 100 input files.
 Normally, we store the "reduced" data in a smaller, local directory.
 
 caseid='T42x1_40'
-#drc_in="${DATA}/archive/${caseid}/atm"
-drc_in="${DATA}/${caseid}"
-drc_out="${DATA}/${caseid}"
-mkdir -p ${drc_out}
-cd ${drc_out}
+#drc_in="${DATA}/archive/${caseid}/atm"
+drc_in="${DATA}/${caseid}"
+drc_out="${DATA}/${caseid}"
+mkdir -p ${drc_out}
+cd ${drc_out}
 
 Method 1: Assume all data in directory applies
-for mth in {1..12}; do
+for mth in {1..12}; do
   mm=`printf "%02d" $mth`
-  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc \
-    ${drc_in}/${caseid}.cam2.h0.*-${mm}.nc 
+  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc \
+    ${drc_in}/${caseid}.cam2.h0.*-${mm}.nc 
 done # end loop over mth
 
 Method 2: Use shell 'globbing' to construct input filenames
-for mth in {1..12}; do
+for mth in {1..12}; do
   mm=`printf "%02d" $mth`
-  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc \
-    ${drc_in}/${caseid}.cam2.h0.00??-${mm}.nc \
-    ${drc_in}/${caseid}.cam2.h0.0100-${mm}.nc
+  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc \
+    ${drc_in}/${caseid}.cam2.h0.00??-${mm}.nc \
+    ${drc_in}/${caseid}.cam2.h0.0100-${mm}.nc
 done # end loop over mth
 
 Method 3: Construct input filename list explicitly
-for mth in {1..12}; do
+for mth in {1..12}; do
   mm=`printf "%02d" $mth`
   fl_lst_in=''
-  for yr in {1..100}; do
+  for yr in {1..100}; do
     yyyy=`printf "%04d" $yr`
-    fl_in=${caseid}.cam2.h0.${yyyy}-${mm}.nc
-    fl_lst_in="${fl_lst_in} ${caseid}.cam2.h0.${yyyy}-${mm}.nc"
+    fl_in=${caseid}.cam2.h0.${yyyy}-${mm}.nc
+    fl_lst_in="${fl_lst_in} ${caseid}.cam2.h0.${yyyy}-${mm}.nc"
   done # end loop over yr
-  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc -p ${drc_in} \
-    ${fl_lst_in}
+  ncra -O -D 1 -o ${drc_out}/${caseid}_clm${mm}.nc -p ${drc_in} \
+    ${fl_lst_in}
 done # end loop over mth
 
 Make sure the output file averages correct input files!
 ncks -M prints global metadata: 
 
-  ncks -M ${drc_out}/${caseid}_clm01.nc
+  ncks -M ${drc_out}/${caseid}_clm01.nc
 
 The input files ncra used to create the climatological monthly mean
 will appear in the global attribute named 'history'.
@@ -17466,23 +17839,23 @@ will appear in the global attribute named 'history'.
 Use ncrcat to aggregate the climatological monthly means
 
   ncrcat -O -D 1 \
-    ${drc_out}/${caseid}_clm??.nc ${drc_out}/${caseid}_clm_0112.nc
+    ${drc_out}/${caseid}_clm??.nc ${drc_out}/${caseid}_clm_0112.nc
 
 Finally, create climatological means for reference.
 The climatological time-mean:
 
   ncra -O -D 1 \
-    ${drc_out}/${caseid}_clm_0112.nc ${drc_out}/${caseid}_clm.nc
+    ${drc_out}/${caseid}_clm_0112.nc ${drc_out}/${caseid}_clm.nc
 
 The climatological zonal-mean:
 
   ncwa -O -D 1 -a lon \
-    ${drc_out}/${caseid}_clm.nc ${drc_out}/${caseid}_clm_x.nc
+    ${drc_out}/${caseid}_clm.nc ${drc_out}/${caseid}_clm_x.nc
 
 The climatological time- and spatial-mean:
 
   ncwa -O -D 1 -a lon,lat,time -w gw \
-    ${drc_out}/${caseid}_clm.nc ${drc_out}/${caseid}_clm_xyt.nc
+    ${drc_out}/${caseid}_clm.nc ${drc_out}/${caseid}_clm_xyt.nc
 
 This file contains only scalars, e.g., "global mean temperature",
 used for summarizing global results of a climate experiment.
@@ -17491,8 +17864,8 @@ Climatological monthly anomalies = Annual Cycle:
 Subtract climatological mean from climatological monthly means. 
 Result is annual cycle, i.e., climate-mean has been removed.
 
-  ncbo -O -D 1 -o ${drc_out}/${caseid}_clm_0112_anm.nc \
-    ${drc_out}/${caseid}_clm_0112.nc ${drc_out}/${caseid}_clm_xyt.nc
+  ncbo -O -D 1 -o ${drc_out}/${caseid}_clm_0112_anm.nc \
+    ${drc_out}/${caseid}_clm_0112.nc ${drc_out}/${caseid}_clm_xyt.nc
 
 ************************************************************************
 Task 2: Correcting monthly averages
@@ -17508,29 +17881,29 @@ declare -a dpm
 dpm=(0 31 28.25 31 30 31 30 31 31 30 31 30 31) # Allows 1-based indexing
 
 Method 1: Create dpm directly in climatological monthly means
-for mth in {1..12}; do
-  mm=`printf "%02d" ${mth}`
-  ncap2 -O -s "dpm=0.0*date+${dpm[${mth}]}" \
-    ${drc_out}/${caseid}_clm${mm}.nc ${drc_out}/${caseid}_clm${mm}.nc
+for mth in {1..12}; do
+  mm=`printf "%02d" ${mth}`
+  ncap2 -O -s "dpm=0.0*date+${dpm[${mth}]}" \
+    ${drc_out}/${caseid}_clm${mm}.nc ${drc_out}/${caseid}_clm${mm}.nc
 done # end loop over mth
 
 Method 2: Create dpm by aggregating small files
-for mth in {1..12}; do
-  mm=`printf "%02d" ${mth}`
-  ncap2 -O -v -s "dpm=${dpm[${mth}]}" ~/nco/data/in.nc \
-    ${drc_out}/foo_${mm}.nc
+for mth in {1..12}; do
+  mm=`printf "%02d" ${mth}`
+  ncap2 -O -v -s "dpm=${dpm[${mth}]}" ~/nco/data/in.nc \
+    ${drc_out}/foo_${mm}.nc
 done # end loop over mth
-ncecat -O -D 1 -p ${drc_out} -n 12,2,2 foo_${mm}.nc foo.nc
-ncrename -O -D 1 -d record,time ${drc_out}/foo.nc
+ncecat -O -D 1 -p ${drc_out} -n 12,2,2 foo_${mm}.nc foo.nc
+ncrename -O -D 1 -d record,time ${drc_out}/foo.nc
 ncatted -O -h \
   -a long_name,dpm,o,c,"Days per month" \
   -a units,dpm,o,c,"days" \
-  ${drc_out}/${caseid}_clm_0112.nc
-ncks -A -v dpm ${drc_out}/foo.nc ${drc_out}/${caseid}_clm_0112.nc
+  ${drc_out}/${caseid}_clm_0112.nc
+ncks -A -v dpm ${drc_out}/foo.nc ${drc_out}/${caseid}_clm_0112.nc
 
 Method 3: Create small netCDF file using ncgen
 cat > foo.cdl << 'EOF'
-netcdf foo { 
+netcdf foo { 
 dimensions:
 	time=unlimited;
 variables:
@@ -17539,10 +17912,10 @@ variables:
 	dpm:units="days";
 data:
 	dpm=31,28.25,31,30,31,30,31,31,30,31,30,31;
-}
+}
 EOF
 ncgen -b -o foo.nc foo.cdl
-ncks -A -v dpm ${drc_out}/foo.nc ${drc_out}/${caseid}_clm_0112.nc
+ncks -A -v dpm ${drc_out}/foo.nc ${drc_out}/${caseid}_clm_0112.nc
 
 Another way to get correct monthly weighting is to average daily
 output files, if available.  
@@ -17554,8 +17927,8 @@ Let's say you are interested in examining the California region.
 Hyperslab your dataset to isolate the appropriate latitude/longitudes.
 
 ncks -O -D 1 -d lat,30.0,37.0 -d lon,240.0,270.0 \ 
-    ${drc_out}/${caseid}_clm_0112.nc \
-    ${drc_out}/${caseid}_clm_0112_Cal.nc
+    ${drc_out}/${caseid}_clm_0112.nc \
+    ${drc_out}/${caseid}_clm_0112_Cal.nc
 
 The dataset is now much smaller!
 To examine particular metrics.
@@ -17583,7 +17956,7 @@ http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/ncep.reanalysis.dailyavgs/su
 pres.sfc.1969.nc ~/foo.nc
 
 LLNL PCMDI IPCC OPeNDAP Data Portal: 
-ncks -M -p http://username:password&arobase;esgcet.llnl.gov/cgi-bin/dap-cgi.py/ipcc4/sresa1b/ncar_ccsm3_0 pcmdi.ipcc4.ncar_ccsm3_0.sresa1b.run1.atm.mo.xml
+ncks -M -p http://username:password@esgcet.llnl.gov/cgi-bin/dap-cgi.py/ipcc4/sresa1b/ncar_ccsm3_0 pcmdi.ipcc4.ncar_ccsm3_0.sresa1b.run1.atm.mo.xml
 
 Earth System Grid (ESG): http://www.earthsystemgrid.org
 
@@ -17611,7 +17984,7 @@ iap_fgoals1_0_g inmcm3_0 ipsl_cm4 miroc3_2_hires miroc3_2_medres \
 miub_echo_g mpi_echam5 mri_cgcm2_3_2a ncar_ccsm3_0 ncar_pcm1 \
 ukmo_hadcm3 ukmo_hadgem1'; do
 for run in '1'; do
-        ncks -R -O -D 3 -p ftp://climate.llnl.gov/${scn}/atm/mo/${var}/${mdl}/run${run} -l ${DATA}/${scn}/atm/mo/${var}/${mdl}/run${run} '*' ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
+        ncks -R -O -D 3 -p ftp://climate.llnl.gov/${scn}/atm/mo/${var}/${mdl}/run${run} -l ${DATA}/${scn}/atm/mo/${var}/${mdl}/run${run} '*' ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 done # end loop over run
 done # end loop over mdl
 done # end loop over scn
@@ -17619,31 +17992,31 @@ done # end loop over var
 
 cd sresa1b/atm/mo/tas/ukmo_hadcm3/run1/
 ncks -H -m -v lat,lon,lat_bnds,lon_bnds -M tas_A1.nc | m
-bds -x 096 -y 073 -m 33 -o ${DATA}/data/dst_3.75x2.5.nc # ukmo_hadcm3
-ncview ${DATA}/data/dst_3.75x2.5.nc
+bds -x 096 -y 073 -m 33 -o ${DATA}/data/dst_3.75x2.5.nc # ukmo_hadcm3
+ncview ${DATA}/data/dst_3.75x2.5.nc
 
 # msk_rgn is California mask on ukmo_hadcm3 grid
 # area is correct area weight on ukmo_hadcm3 grid
-ncks -A -v area,msk_rgn ${DATA}/data/dst_3.75x2.5.nc \
-${DATA}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/area_msk_ukmo_hadcm3.nc 
+ncks -A -v area,msk_rgn ${DATA}/data/dst_3.75x2.5.nc \
+${DATA}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/area_msk_ukmo_hadcm3.nc 
 
 Template for standardized data:
-${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
+${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 
 e.g., raw data
-${DATA}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/tas_A1.nc
+${DATA}/sresa1b/atm/mo/tas/ukmo_hadcm3/run1/tas_A1.nc
 becomes standardized data
 
 Level 0: raw from IPCC site--no changes except for name 
          Make symbolic link name match raw data
-Template: ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
+Template: ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 
 ln -s -f tas_A1.nc sresa1b_ukmo_hadcm3_run1_tas_200101_209911.nc
 area_msk_ukmo_hadcm3.nc
 
 Level I: Add all variables (not standardized in time)
          to file containing msk_rgn and area
-Template: ${scn}_${mdl}_${run}_${yyyymm}_${yyyymm}.nc
+Template: ${scn}_${mdl}_${run}_${yyyymm}_${yyyymm}.nc
 
 /bin/cp area_msk_ukmo_hadcm3.nc sresa1b_ukmo_hadcm3_run1_200101_209911.nc
 ncks -A -v tas sresa1b_ukmo_hadcm3_run1_tas_200101_209911.nc \
@@ -17657,7 +18030,7 @@ mv sresa1b_ukmo_hadcm3_run1_200101_209911.nc foo.nc
 ncks -A -v tas,pr foo.nc sresa1b_ukmo_hadcm3_run1_200101_209911.nc
 
 Level II: Correct # years, months
-Template: ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
+Template: ${scn}_${mdl}_${run}_${var}_${yyyymm}_${yyyymm}.nc
 
 ncks -d time,....... file1.nc file2.nc 
 ncrcat file2.nc file3.nc sresa1b_ukmo_hadcm3_run1_200001_209912.nc
@@ -17673,7 +18046,8 @@ Level III: Many derived products from level II, e.g.,
       ncwa -m msk_rgn -w area -a lat,lon \
            sresa1b_ukmo_hadcm3_run1_200001_209912.nc \
 	   sresa1b_ukmo_hadcm3_run1_200001_209912_xy_Cal.nc
-</pre></example>
+</verbatim>
+</example>
 
 <html endspaces=" ">
 <a name="bibliography"></a> <!&textndash; http://nco.sf.net/nco.html#bibliography &textndash;>
diff --git a/doc/nco_news.shtml b/doc/nco_news.shtml
index d38c4dd..959a1f0 100644
--- a/doc/nco_news.shtml
+++ b/doc/nco_news.shtml
@@ -1,4 +1,4 @@
-<!-- $Header: /cvsroot/nco/nco/doc/nco_news.shtml,v 1.22 2012/06/14 20:20:14 zender Exp $
+<!-- $Header: /cvsroot/nco/nco/doc/nco_news.shtml,v 1.23 2014/06/13 19:43:51 zender Exp $
 
 Purpose: NCO news archive
 
@@ -23,11 +23,7 @@ scp -p ~/nco/doc/nco_news.shtml nco.sf.net:/home/project-web/nco/htdocs/nco_news
 <body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#008080" alink="#FF0000">
 
 <dt><a name="News"></a></dt>
-<h2>NCO News</h2>
-
-<ul>
-<li><a href="./nco_news.shtml">Past NCO News \& Announcements</a></li>
-</ul>
+<h2>NCO News and Announcements from 20030624 (version 2.8.3) and earlier</h2>
 
 <a name="20030624"></a>
 <p>2003/06/24: A potpurri of old news which is no longer needed on the homepage
diff --git a/doc/problems_old.shtml b/doc/problems_old.shtml
new file mode 100644
index 0000000..61f3ac0
--- /dev/null
+++ b/doc/problems_old.shtml
@@ -0,0 +1,440 @@
+<!-- $Header: /cvsroot/nco/nco/doc/problems_old.shtml,v 1.2 2014/06/15 16:45:40 zender Exp $
+
+Purpose: Problems archive
+
+URL:
+http://nco.sf.net/problems_old.shtml
+http://dust.ess.uci.edu/nco/problems_old.shtml
+file:///home/zender/nco/doc/problems_old.shtml
+
+Usage:
+/usr/bin/scp ~/nco/doc/problems_old.shtml zender,nco at web.sf.net:/home/project-web/nco/htdocs
+scp -p ~/nco/doc/problems_old.shtml dust.ess.uci.edu:/var/www/html/nco
+-->
+
+<!doctype html public "-//W3C//DTD HTML 3.2//EN">
+<html>
+<head>
+   <title>NCO Homepage</title>
+   <meta name="GENERATOR" content="Mozilla/3.04Gold (X11; I; Linux 2.0.0 i686) [Netscape]">
+   <meta name="Author" content="Charles S. Zender">
+   <meta name="Keywords" content="NCO Homepage, netCDF, netCDF operator, GCM, HDF, scientific data">
+</head>
+<body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#008080" alink="#FF0000">
+
+<dt><a name="News"></a></dt>
+<h2>Known Problems through 2012 (version 4.2.3)</h2>
+
+<ul><b>Older Generic Run-time Problems:</b>
+
+<!-- http://nco.sf.net#bug_mm3 -->
+<a name="bug_mm3"></a>
+<li><i><tt>MM3</tt> slowdown:</i>
+A longstanding “feature” of netCDF3 was identified in
+March, 2012, and is now known by the tag MM3.
+The MM3 issue can lead to unusually slow performance. 
+The problem is triggered by an aggregate pattern of file access so the
+workaround must be implemented in the application software (e.g., NCO)
+rather than in the netCDF library itself.   
+The name MM3 fits because the problem is normally encountered on
+Multi-record Multi-variable netCDF3 files.
+And we call our “solution” the MM3-workaround.  
+If you encounter unusually slow NCO performance while using NCO to
+analyze MM3 files on a large blocksize filesystem, 
+chances are you are encountering an MM3-induced slowdown. 
+NCO release 4.1.0 implements the MM3-workaround for <tt>ncks</tt>.  
+It speeds-up common ncks sub-setting on NCAR's GLADE by 10-50x.  
+MM3-induced slowdowns are present in other NCO operators and we are 
+prioritizing our MM3-patches to those encountered most often.  
+Thanks to Gary Strand for reporting this problem, and to Russ Rew for 
+creating the workaround algorithm, which is also now in <tt>nccopy</tt>.
+</li>
+
+<!-- http://nco.sf.net#bug_nofill -->
+<a name="bug_nofill"></a>
+<li><i><tt>NOFILL</tt> bug:</i>
+All netCDF versions prior to 4.1.3 may create corrupt netCDF3 files 
+when linked to any version of NCO except 4.0.8.
+The solution is to install netCDF version 4.1.3 or later.
+The corruption occurs silently (without warning or error messages). 
+The problem has been seen "in the wild" only on filesystems with
+large block sizes (e.g., Lustre), although it may be more widespread. 
+It is caused by a netCDF bug that NCO triggers by invoking
+NOFILL mode for faster writes. Hence it is called the NOFILL bug.  
+The bug is hard to trigger, it depends on a rare interaction of
+filesystem block-size, hyperslab size, and order-of-variable writing.
+The bug exists in all versions of netCDF through 4.1.2.
+
+If you have a large block filesystem and cannot upgrade your netCDF
+library, then use NCO version 4.0.8, which disables NOFILL mode (and
+thus writes files more slowly).  
+NCO 4.0.8 and will workaround the NOFILL bug on all versions of netCDF
+(i.e., 4.1.2 and earlier). 
+Hence NCO 4.0.8 will always correctly write netCDF3 files.
+Other temporary workarounds include creating only netCDF4 files 
+(e.g., <tt>ncks -4 ...</tt>) instead of netCDF3 files.
+The NOFILL patch included in NCO 4.0.8 was subsequently removed
+in NCO 4.0.9, which assumes that netCDF 4.1.3 or later is installed.
+</li>
+
+<!-- http://nco.sf.net#bug_hyp_dgn -->
+<a name="bug_hyp_dgn"></a>
+<li><i>Degenerate hyperslabbing bug:</i>
+Versions ???—4.0.6 could return incorrect hyperslabs when
+user-specified hyperslabs did not include at least one point.  
+In such cases, instead of returning no data, hyperslabs could return all data. 
+To determine whether your NCO is affected by this bug, run these commands:
+<tt>ncks -O -v lat -d lat,20.,20.001 ~/nco/data/in.nc ~/foo.nc;ncks -H ~/foo.nc</tt>
+If the returned hyperslab contains any data, then your NCO is buggy
+(because that hyperslab should be empty).
+This can lead to incorrect answers for hyperslabs that should be empty.
+Analogous problems would occur with empty auxiliary coordinate bounding boxes.
+Although most users do not specify empty hyperslabs, we urge all users
+to upgrade to NCO 4.0.7+ just to be safe.
+</li>
+
+<!-- http://nco.sf.net#bug_thr_msa -->
+<a name="bug_thr_msa"></a>
+<li><i>Threading problems with MSA:</i>
+NCO version 3.9.5 has a nasty bug that causes threaded arithmetic
+operators, e.g., <tt>nces</tt> to produce incorrect results under some
+conditions. 
+The problem may occur whenever OpenMP is enabled and the operators 
+run on a multi-core CPU with more than one thread.
+These incorrect answers, if generated, are relatively easy to notice.
+The number of threads used to generate a file is, by default, recorded
+in the global attribute <tt>nco_openmp_thread_number</tt> which may
+be examined with <tt>ncks -M foo.nc | grep nco_openmp_thread_number</tt>.
+The only action that will correct a file that you think (or know)
+contains corrupted data because of this NCO bug is to re-process the
+file with a non-buggy NCO version.
+<i>Version 3.9.5 is buggy and should be upgraded ASAP</i>.
+Be careful with data processed using this NCO version on multi-core CPUs.
+The (one-line!) patch to fix this bug in 3.9.5 is 
+<a href="http://sf.net/forum/message.php?msg_id=6217274">here</a>.
+</li>
+
+<!-- http://nco.sf.net#bug_idx_hyp -->
+<a name="bug_idx_hyp"></a>
+<li><i>Index-based hyperslab problems:</i>
+NCO versions 2.7.3—2.8.3 have a nasty bug that causes
+index-based hyperslabs, e.g., <tt>-d lat,1,</tt> to 
+behave like value-based hyperslabs, e.g., <tt>-d lat,1.0</tt> under
+some conditions.
+Unfortunately, the incorrect answers generated may be hard to notice!
+This problem was most often enountered by users trying to assemble
+monthly averages using the stride feature of <tt>ncrcat</tt>.
+One common symptom is that the time-offset of the output file is
+incorrect. 
+<i>Versions 2.7.3—2.8.3 are buggy and should be upgraded ASAP</i>.
+Re-do any data-processing that used index-based hyperslabbing with
+these versions of NCO.
+</li>
+</ul>
+
+<ul><b>Older Operator-specific Run-time Problems:</b>
+
+<!-- http://nco.sf.net#bug_ncks_aux -->
+<a name="bug_ncks_aux"></a>
+<li><i><tt>ncks</tt> bug with auxiliary coordinates:</i>
+Versions 4.2.x–4.3.1 of <tt>ncks</tt> did not correctly 
+support auxiliary coordinates (specified with <tt>-X</tt>). 
+Auxiliary coordinates continued to work with the other hyperslabbing
+NCO operators. Auxiliary coordinates once again work in all
+hyperslabbing operators, including on netCDF4 group files in operators
+that support them.
+Fixed in version 4.3.2.
+</li>
+
+<!-- http://nco.sf.net#bug_ncatted_strcmp -->
+<a name="bug_ncatted_strcmp"></a>
+<li><i><tt>ncatted</tt> bug on implicit attribute names:</i>
+Versions 4.2.x–4.3.0 of <tt>ncatted</tt> could segfault when
+processing attributes specified implicitly (i.e., by leaving the
+attribute field blank in the <tt>-a</tt> specification.
+Fixed in version 4.3.1.
+</li>
+
+<!-- http://nco.sf.net#bug_ncbo_ccm_ccsm_cf -->
+<a name="bug_ncbo_ccm_ccsm_cf"></a>
+<li><i><tt>ncbo</tt> bug handling certain special variables:</i>
+Version 4.3.0 of <tt>ncbo</tt> inadvertently always turns off
+certain <a href="http://nco.sf.net/nco.html#prc_xcp">exceptions</a>  
+to variable list processing.
+This may cause some grid-related variables (e.g., <tt>ntrm</tt> and <tt>nbdate</tt>)
+and some non-grid variables (e.g., <tt>ORO</tt> and <tt>gw</tt>) to be
+arithmetically processed (e.g., subtracted) even when that makes no
+sense in most climate model datasets. 
+Fixed in version 4.3.1.
+</li>
+
+<!-- http://nco.sf.net#bug_ncks_mtd -->
+<a name="bug_ncks_mtd"></a>
+<li><i><tt>ncks</tt> bug copying metadata:</i>
+Version 4.2.6 of <tt>ncks</tt> does not copy variable metadata by default. 
+Thus output files appear stripped of metadata.
+One can work around this problem in 4.2.6 by specifying the  <tt>-m</tt> option.
+Otherwise an upgrade is recommended.
+Fixed in version 4.3.0.
+</li>
+
+<!-- http://nco.sf.net#bug_ncks_sbs -->
+<a name="bug_ncks_sbs"></a>
+<li><i><tt>ncks</tt> bug subsetting variables:</i>
+Version 4.2.4 of <tt>ncks</tt> sometimes dumps core
+when subsetting variables with <tt>-v var</tt>.
+Fixed in version 4.2.5.
+</li>
+
+<!-- http://nco.sf.net#bug_ncks_mk_rec_dmn -->
+<a name="bug_ncks_mk_rec_dmn"></a>
+<li><i><tt>ncks</tt> bug with altering record dimensions:</i>
+Version 4.2.4 of <tt>ncks</tt> ignored both the 
+<tt>--mk_rec_dmn</tt> and the <tt>--fix_rec_dmn</tt> switches.  
+It exited successfully without altering the record variable.
+Fixed in version 4.2.5.
+</li>
+
+<!-- http://nco.sf.net#bug_nces_rec_var -->
+<a name="bug_nces_rec_var"></a>
+<li><i><tt>nces</tt> bug with non-record files:</i>
+Versions 4.2.1—4.2.3 of <tt>nces</tt> incorrectly referenced
+the record variable on files which do not contain it.
+This caused a segmentation violation and core dump.
+</li>
+
+<!-- http://nco.sf.net#bug_ncra_flg_bfr_nrm -->
+<a name="bug_ncra_flg_bfr_nrm"></a>
+<li><i><tt>ncra</tt> bug when last file(s) is/are superfluous:</i>
+Versions 4.2.1—4.2.3 of <tt>ncra</tt> incorrectly skipped
+writing the results of the final normalization when trailing files
+were superfluous (not used). 
+In the most common case, all values are zeros in the output file.
+Upgrade if you call <tt>ncra</tt> with trailing superfluous files. 
+</li>
+
+<!-- http://nco.sf.net#bug_ncecat_nintap -->
+<a name="bug_ncecat_nintap"></a>
+<li><i><tt>ncecat</tt> bug when files generated with <tt>-n</tt>:</i>
+Version 4.2.2 of <tt>ncecat</tt> could incorrectly skip the first
+input file in the default mode (RECORD_AGGREGATE) when 
+the <tt>-n NINTAP</tt> switch is used to automate filename generation.
+Upgrade if you use <tt>ncecat -n</tt>.
+</li>
+
+<!-- http://nco.sf.net#bug_ncra_cf_crd_rec_crd -->
+<a name="bug_ncra_cf_crd_rec_crd"></a>
+<li><i><tt>ncra</tt> bug handling CF <tt>coordinates</tt> attributes   
+that contain the name of the record coordinate:</i>
+Versions 4.0.3—4.0.4 of <tt>ncra</tt> incorrectly treat the
+record variable (usually <tt>time</tt>) as a fixed variable if it 
+is specified in the <tt>coordinates</tt> attribute of any variable in
+a file processed with CCM/CCSM/CF metadata conventions. 
+This bug caused core dumps, and even weirder behavior like 
+creating imaginary time slices in the ouput.
+Upgrade recommended if you work with NCAR CCSM/CESM model output.
+
+One workaround that does not require NCO upgrades is to remove the
+record coordinate name (usually <tt>time</tt>) from
+the <tt>coordinates</tt> attribute of all variables in CF-compliant
+files before processing the file with <tt>ncra</tt>.
+</li>
+
+<!-- http://nco.sf.net#bug_ncra_cf_YYYYMMDD_date -->
+<a name="bug_ncra_cf_YYYYMMDD_date"></a>
+<li><i><tt>ncra</tt> bug averaging YYYYMMDD-format <tt>date</tt>
+variables in CCSM/CF-compliant files:</i>
+Versions ???—4.0.5 of <tt>ncra</tt> contain a bug which
+produces an incorrect average (usually zero) of the <tt>date</tt>
+variable which many CCSM/CF-compliant files use to track model dates
+in the human-readable YYYYMMDD-format.
+Averaging YYYYMMDD-format integers is intrinsically difficult, since
+such dates have calendar assumptions built-in.
+NCO attempts this in CCSM/CF-compliant files by using the
+<tt>nbdate</tt> (beginning date) and <tt>time</tt> (days
+since <tt>nbdate</tt>) variables to find the average date,
+converting that to YYYYMMDD, and writing that as the average value
+of <tt>date</tt>. 
+</li>
+
+<!-- http://nco.sf.net#bug_ncks_nc4_nc4_hyp_fix -->
+<a name="bug_ncks_nc4_nc4_hyp_fix"></a>
+<li><i><tt>ncks</tt> bug hyperslabbinging fixed netCDF4 dimensions:</i>
+Versions 4.0.3—4.0.4 of <tt>ncks</tt> contain a bug which
+triggers a core-dump when hyperslabbing (along a non-record
+dimension) a netCDF4-format input file into a netCDF4-format output 
+file, e.g., <tt>ncks -d 0,1,lat in4.nc out4.nc</tt>. 
+Three workarounds that do not require NCO upgrades (or downgrades) are 
+to explicitly specify chunking with, e.g., 
+<tt>ncks --cnk_plc=all -d 0,1,lat in4.nc out4.nc</tt>, or, to use 
+<tt>nces</tt> instead of <tt>ncks</tt> for hyperslabbing, e.g.,
+<tt>nces -d 0,1,lat in4.nc out4.nc</tt> (<tt>nces</tt> does a no-op
+when there is only one input file), or to write to a netCDF3 file,
+<tt>ncks -3 -d 0,1,lat in4.nc out3.nc</tt>.
+</li>
+
+<!-- http://nco.sf.net#bug_ncks_m -->
+<a name="bug_ncks_m"></a>
+<li><i>Core dump with <tt>ncks</tt>:</i>
+Printing variables to screen with <tt>ncks</tt> can trigger a segfault
+in NCO 3.9.9—4.0.3. 
+Users may upgrade, downgrade, or apply this one-line patch to 3.9.9 sources:
+Remove this line
+“<tt>*cnk_sz=(size_t)NULL;</tt>”
+—near line 751 of <tt>nco/src/nco/nco_netcdf.c</tt>—
+should fix the problem.
+The problem in later NCO versions is due to a different bug and this
+patch will not work.
+</li>
+
+<!-- http://nco.sf.net#bug_ncrename_dot -->
+<a name="bug_ncrename_dot"></a>
+<li><i><tt>ncrename</tt> erroneous error exit:</i>
+Versions 4.0.1—4.0.3 of <tt>ncrename</tt> contain a bug where
+commands like <tt>ncrename -a .old_nm,new_nm in.nc out.nc</tt>
+would, if <tt>old_nm</tt> did not exist, write the correct file and
+then exit with an error message although no error had occurred.
+The files written were fine, and the error message can be safely
+ignored. This was due to not clearing an extraneous return code.
+
+<!-- http://nco.sf.net#bug_ncbo_rfr -->
+<a name="bug_ncbo_rfr"></a>
+<li><i><tt>ncbo</tt> segmentation fault:</i>
+<tt>ncbo</tt> versions 4.0.0—4.0.2 incorrectly refreshed
+internal metadata, leading to segmentation faults and core dumps with
+some exacting compilers, notably xlC on AIX. 
+
+<!-- http://nco.sf.net#bug_ncra_date -->
+<a name="bug_ncra_date"></a>
+<li><i><tt>ncra</tt> segmentation fault:</i>
+<tt>ncra</tt> versions 4.0.0—4.0.1 mishandled some CF-compliant  
+dates, leading to segmentation faults and core dumps.
+
+<!-- http://nco.sf.net#bug_ncap_cmt -->
+<a name="bug_ncap_cmt"></a>
+<li><i>Arithmetic problems with <tt>ncap</tt> division, modulo, and exponentiation:</i>
+<tt>ncap</tt> versions < 3.0.1 incorrectly exponentiate
+variables to variable powers (<tt>V^V</tt>).
+We recommend that all <tt>ncap</tt> users upgrade.<br>
+  
+<tt>ncap</tt> versions up to 2.9.1 incorrectly handle division,
+modulo, and exponentiation operations of the form <tt>S/V</tt>,
+<tt>S%V</tt>, and <tt>S^V</tt> where first operand (<tt>S</tt>) is 
+scalar (i.e., either typed directly in the <tt>ncap</tt> script or 
+converted from an attribute) and the second operand (<tt>V</tt>) is
+a full variable (i.e., stored in a file or computed by <tt>ncap</tt>).
+Instead of the requested quantity, <tt>ncap</tt> returned
+<tt>V/S</tt>, <tt>V%S</tt>, and <tt>V^S</tt>.
+In other words <tt>ncap</tt> treated some non-commutative operations
+as commutative. This is now fixed. 
+The 
+<tt>V/V</tt>, <tt>V%V</tt>, <tt>V^V</tt>, 
+<tt>V/S</tt>, <tt>V%S</tt>, <tt>V^S</tt>, 
+<tt>S/S</tt>, <tt>S%S</tt>, and <tt>S^S</tt> operations were never
+affected. 
+We recommend that all <tt>ncap</tt> users upgrade.
+</li>
+
+<!-- http://nco.sf.net#bug_ncbo_pck -->
+<a name="bug_ncbo_pck"></a>
+<li><i>Incorrect <tt>ncbo</tt> output for packed input:</i>
+<tt>ncbo</tt> versions ???—3.2.0 incorrectly write differences
+of packed input. This only affects packed variables. 
+
+<!-- http://nco.sf.net#bug_ncflint_mss_val -->
+<a name="bug_ncflint_mss_val"></a>
+<li><i>Problems with <tt>ncflint</tt> and <tt>missing_value</tt>s:</i>
+The algorithm <tt>ncflint</tt> used to perform interpolation in
+versions up to 2.9.4 was not commutative.
+It returned the weighted valid datum when the other datum was
+<tt>missing_value</tt>, or it returned <tt>missing_value</tt>,
+depending on the order the input files were specified.
+As of version 2.9.5, <tt>ncflint</tt> always returns
+<tt>missing_value</tt> when either input datum is
+<tt>missing_value</tt>. 
+Possible future implementations are discussed 
+<a href="http://nco.sf.net/nco.html#ncflint">here</a>.
+
+<!-- http://nco.sf.net#bug_mss_val_zro_ncra -->
+<a name="bug_mss_val_zro_ncra"></a>
+<li><i>Problems with <tt>ncra</tt> and <tt>nces</tt> when <tt>missing_value</tt> = 0.0:</i>
+The algorithm <tt>ncra</tt> and <tt>nces</tt> used to perform
+arithmetic in versions up to 2.9.2 breaks if <tt>missing_value</tt>
+is 0.0. 
+Why, you ask?
+Running average (or total, etc.) algorithms must initialize the answer  
+to 0.0.
+This is done since the sum accumulates in place as <tt>ncra</tt> and
+<tt>nces</tt> proceeds across records and files.  
+(Normalizing this accumulation by the total number of records is the
+last step).
+The old algorithm compared both the current running average and the
+new record to the <tt>missing_value</tt>.
+If either comparison matched, then nothing accumulated for that
+record. 
+This zero-initialization led to a state where it was impossible 
+to ever recognize valid data.
+As a result nothing accumulated and the answer was always zero.
+The record and ensemble averages would also fail (in a non-obvious)
+way whenever an intermediate sum equalled <tt>missing_value</tt>.
+The chances of the latter event ever happening are exceedingly
+remote. 
+The new algorithm compares only the new record to the
+<tt>missing_value</tt>. 
+This fixes both problems and is faster, too.
+
+<!-- http://nco.sf.net#bug_pck_ncwa -->
+<a name="bug_pck_ncwa"></a>
+<li><i>Packing problems with <tt>ncwa</tt>:</i>
+NCO versions ???—2.9.0 have a bug that causes <tt>ncwa</tt>
+to fail (produce garbage answers) when processing packed
+<tt>NC_FLOAT</tt> data.  Version 2.9.1 fixes this problem.
+This problem may have been noticed most by
+<a href="http://opendap.org">OPeNDAP</a> users since many 
+netCDF climate datasets served by
+<a href="http://opendap.org">OPeNDAP</a> are packed
+<tt>NC_FLOAT</tt>s.  
+Upgrade to 2.9.1 if you use <tt>ncwa</tt> on packed data.
+</li>
+
+<!-- http://nco.sf.net#bug_pck -->
+<a name="bug_pck"></a>
+<li><i>Packing problems with <tt>ncap</tt>:</i>
+NCO versions 2.8.4—2.8.6 have a bug that causes the <tt>ncap</tt>
+intrinsic packing function <tt>pack()</tt> to fail.
+Version 2.8.7 fixes this problem.
+</li>
+</ul>
+
+<ul><b>Older Platform-specific Run-time Problems:</b>
+<a name="bug_ncap_flt_fnc_aix"></a>
+<li><i>Float-valued intrinsic arithmetic functions in <tt>ncap</tt> on AIX:</i>
+<tt>ncap</tt> versions through 4.0.4 have a bug that causes all float-valued
+intrinsic math functions to fail under AIX.
+Float-valued math functions are the ISO C99 functions, e.g.,
+<tt>cosf()</tt>, <tt>fabsf()</tt>, <tt>logf()</tt>.
+The user does not invoke these functions directly—
+the user always specifies the <i>generic function name</i>, e.g.,
+<tt>cos()</tt>, <tt>abs()</tt>, <tt>log()</tt>.
+NCO automatically calls the native single precision (i.e.,
+float-valued) math functions when the generic function argument 
+is a native float (e.g., naked constants like <tt>1.0f</tt> or
+variables stored as <tt>NC_FLOAT</tt>).
+Double precision arguments cause NCO to invoke the standard
+(double-valued) form of the generic function, e.g., <tt>cos()</tt>, 
+<tt>fabs()</tt>, <tt>log()</tt>. 
+<!-- Whevnever this bug is fixed, here is some text
+Version info:
+<tt>ncap</tt> float functions work in AIX (<a href="#bug_ncap_flt_fnc_aix">long-time bug</a>, upgrade will be required for AIX ncap users)
+ANNOUNCE info:
+First, AIX NCO installations should upgrade to this version to get the
+AIX-specific ncap bug-fix.
+Bug-fixes:
+1. fxm: AIX uses NCO-supplied float-valued functions (e.g., cosf())
+-->
+</li>
+</ul>
+<hr></p>
+
+</body>
+</html>
diff --git a/doc/surfit_2014.txt b/doc/surfit_2014.txt
index e160fd3..7af37f6 100644
--- a/doc/surfit_2014.txt
+++ b/doc/surfit_2014.txt
@@ -2,6 +2,7 @@
 # (Summer Undergraduate Research Fellowships in Information Technologies)
 # 20140416: Submitted to Brittany Gray <grayb at uci.edu> 
 
+cat > ${HOME}/sdn_ugr_03_adv.txt << 'EOF'
 Optimized Storage Shapes for Multi-dimensional Gridded Datasets
 
 PI: Prof. Charlie Zender
@@ -28,11 +29,15 @@ Recommended Web sites and publications:
 4. netCDF Operators http://nco.sf.net
 5. Zender, C. S., and H. J. Mangalam (2007), Scaling Properties of Common Statistical Operators for Gridded Datasets, Int. J. High Perform. Comput. Appl., 21(4), 485-498, doi:10.1177/1094342007083802.
 6. Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10), 1338-1342, doi:10.1016/j.envsoft.2008.03.004.
+EOF
+scp ${HOME}/sdn_ugr_03_adv.txt dust.ess.uci.edu:/var/www/html/hire
+URL: http://dust.ess.uci.edu/hire/sdn_ugr_03_adv.txt
 
 ************************************************************************
 NB: Following project not "researchy" enough, maybe next year
 ************************************************************************
 
+cat > ${HOME}/sdn_ugr_02_adv.txt << 'EOF'
 Next Generation Parser for Structured Data Analysis
 
 PI: Prof. Charlie Zender
@@ -61,4 +66,7 @@ Recommended Web sites and publications:
 2. netCDF Operators http://nco.sf.net
 3. Zender, C. S., and H. J. Mangalam (2007), Scaling Properties of Common Statistical Operators for Gridded Datasets, Int. J. High Perform. Comput. Appl., 21(4), 485-498, doi:10.1177/1094342007083802.
 4. Zender, C. S. (2008), Analysis of Self-describing Gridded Geoscience Data with netCDF Operators (NCO), Environ. Modell. Softw., 23(10), 1338-1342, doi:10.1016/j.envsoft.2008.03.004.
+EOF
+scp ${HOME}/sdn_ugr_02_adv.txt dust.ess.uci.edu:/var/www/html/hire
+URL: http://dust.ess.uci.edu/hire/sdn_ugr_02_adv.txt
 
diff --git a/doc/xmp/cmb_fl_grp.sh b/doc/xmp/cmb_fl_grp.sh
index e5603d9..6a1a13d 100644
--- a/doc/xmp/cmb_fl_grp.sh
+++ b/doc/xmp/cmb_fl_grp.sh
@@ -5,7 +5,7 @@
 #
 # Method:
 # - Create files with groups by ncecat --gag
-#	- Append groups level by level using ncks
+# - Append groups level by level using ncks
 #
 # Input files like:
 # snc_LImon_CCSM4_historical_r1i1p1_199001-200512.nc
@@ -25,7 +25,7 @@ drc_out='../data/grp/'
 
 # Constants
 rlm='LImon'         # Realm: LandIce; Time frequency: monthly
-tms='200001-200512' # Timeseris
+tms='200001-200512' # Timeseries
 flt='nc'            # File Type
 
 # Geographical weights
diff --git a/man/ncks.1 b/man/ncks.1
index 233c036..dbdfdcb 100644
--- a/man/ncks.1
+++ b/man/ncks.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.46 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.47 2014/06/11 17:28:22 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncks
 .\" Usage:
 .\" nroff -man ~/nco/man/ncks.1 | less
@@ -32,6 +32,7 @@ dbg_lvl]
 .IR gpe_dsc ]
 [\-g  
 .IR grp [,...]]
+[\-\-grp_xtr_var_xcl]
 [\-H] [\-h] [\-\-hdn] 
 [\-\-hdr_pad
 .IR sz ]
@@ -590,7 +591,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.46 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncks.1,v 1.47 2014/06/11 17:28:22 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 1995404..3c64ed1 100644
--- a/man/ncrcat.1
+++ b/man/ncrcat.1
@@ -1,4 +1,4 @@
-.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.31 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.32 2014/07/15 18:48:54 zender Exp $ -*-nroff-*-
 .\" Purpose: ROFF man page for ncrcat
 .\" Usage:
 .\" nroff -man ~/nco/man/ncrcat.1 | less
@@ -136,8 +136,34 @@ concatenates June, 1985--June, 1989:
 ncrcat \-d time,6.,54. ??.nc 8506_8906.nc
 .RE
 
+.SH CAVEAT
+
+.B ncrcat
+does not re-scale packed data (i.e., data stored using the
+.B scale_factor
+and
+.B add_offset 
+attributes recommended by the Unidat and CF conventions.
+.B ncrcat
+just copies the data directly from the input files.
+It copies the relevant metadata (i.e., 
+.B scale_factor 
+and 
+.B add_offset
+attributes) from the first file. 
+Concatenating multiple datasets packed with different scales is beyond
+its capabilities (concatenating data packed with the same scales in
+multiple files works fine). 
+The workaround for cases where the scales change among files is to
+first unpack the data in all the file using 
+.B ncpdq,
+then to concatenate the unpacked data using
+.B ncrcat,
+and finally to repack the result using
+.B ncpdq.
+
 .\" NB: Append man_end.txt here
-.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.31 2014/05/29 18:00:26 zender Exp $ -*-nroff-*-
+.\" $Header: /cvsroot/nco/nco/man/ncrcat.1,v 1.32 2014/07/15 18:48:54 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/po/es/nco.po b/po/es/nco.po
new file mode 100644
index 0000000..581a3a6
--- /dev/null
+++ b/po/es/nco.po
@@ -0,0 +1,42 @@
+# Portable Object Spanish translations for NCO, the netCDF Operators
+# Copyright (C) 1995-2014 Charlie Zender
+# This file is distributed under the same license as the NCO package
+
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: NCO 4.4.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-06-17 13:16-0700\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Charlie Zender <surname at uci.edu>\n"
+"Language-Team: Spanish <LL at li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/nco/ncra.c:539
+#, c-format
+msgid "%s: ERROR Incorrect abbreviation for file list\n"
+msgstr "%s: ERREUR Abreviatura incorrecta para lista de archivos\n"
+
+#: ../src/nco/ncra.c:616
+#, c-format
+msgid "%s: I18N Current charset = %s\n"
+msgstr "%s: I18N Corriente charset = %s\n"
+
+#: ../src/nco/ncra.c:796
+#, c-format
+msgid "%s: INFO Input file %d is %s"
+msgstr "%s: INFO archivo de entrada %d es %s"
+
+#: ../src/nco/ncra.c:799
+#, c-format
+msgid ", local file is %s"
+msgstr ", archivo local es %s"
+
+#: ../src/nco/ncks.c:717
+#, c-format
+msgid "%s: I18N This text may appear in a foreign language\n"
+msgstr "%s: I18N Este texto puede aparecer en un idioma extranjero\n"
diff --git a/po/fr/nco.po b/po/fr/nco.po
new file mode 100644
index 0000000..7577405
--- /dev/null
+++ b/po/fr/nco.po
@@ -0,0 +1,42 @@
+# Portable Object French translations for NCO, the netCDF Operators
+# Copyright (C) 1995-2014 Charlie Zender
+# This file is distributed under the same license as the NCO package
+
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: NCO 4.4.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-06-17 13:16-0700\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Charlie Zender <surname at uci.edu>\n"
+"Language-Team: French <LL at li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/nco/ncra.c:539
+#, c-format
+msgid "%s: ERROR Incorrect abbreviation for file list\n"
+msgstr "%s: ERREUR abr�viation incorrecte pour la liste de fichiers\n"
+
+#: ../src/nco/ncra.c:616
+#, c-format
+msgid "%s: I18N Current charset = %s\n"
+msgstr "%s: I18N Courant charset = %s\n"
+
+#: ../src/nco/ncra.c:796
+#, c-format
+msgid "%s: INFO Input file %d is %s"
+msgstr "%s: INFO Fichier d'entr�e %d est %s"
+
+#: ../src/nco/ncra.c:799
+#, c-format
+msgid ", local file is %s"
+msgstr ", fichier local est %s"
+
+#: ../src/nco/ncks.c:717
+#, c-format
+msgid "%s: I18N This text may appear in a foreign language\n"
+msgstr "%s: I18N Ce texte peut appara�tre dans une langue �trang�re\n"
diff --git a/po/nco.pot b/po/nco.pot
new file mode 100644
index 0000000..334f96c
--- /dev/null
+++ b/po/nco.pot
@@ -0,0 +1,37 @@
+# Portable Object Template file for NCO, the netCDF Operators
+# Copyright (C) 1995-2014 Charlie Zender
+# This file is distributed under the same license as the NCO package
+
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: NCO 4.4.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2014-06-17 13:16-0700\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Charlie Zender <surname at uci.edu>\n"
+"Language-Team: LANGUAGE <LL at li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/nco/ncra.c:539
+#, c-format
+msgid "%s: ERROR Incorrect abbreviation for file list\n"
+msgstr ""
+
+#: ../src/nco/ncra.c:616
+#, c-format
+msgid "%s: I18N Current charset = %s\n"
+msgstr ""
+
+#: ../src/nco/ncra.c:796
+#, c-format
+msgid "%s: INFO Input file %d is %s"
+msgstr ""
+
+#: ../src/nco/ncra.c:799
+#, c-format
+msgid ", local file is %s"
+msgstr ""
diff --git a/src/nco++/Makefile.am b/src/nco++/Makefile.am
index 3df55f7..94ea6c6 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.27 2013/07/25 04:51:36 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco++/Makefile.am,v 1.28 2014/07/30 22:47:02 zender Exp $ -*-makefile-*-
 
 # Purpose: Template builds for nco++ directory
 # Process this file with automake to produce Makefile.in
@@ -37,6 +37,10 @@ ncap2_LDADD = -lnco -lantlr
 # fxm: 20080515 Takeshi Enomoto reports that MACOSX needs
 # ncap2_LDADD = ../nco/.libs/libnco.dylib -lantlr
 
+# fxm: 20140730 Ed Anderson reports that PGI- and GCC-compiled ncap2 need
+# -Xcompiler -shared added to ncap2_LINK which, apparently, would be done with
+# ncap2_LDFLAGS = -Xcompiler -shared
+
 if ENABLE_GSL
 GSL_LIB_ARG = $(shell gsl-config --libs)
 GSL_INC_ARG = $(shell gsl-config --cflags)
diff --git a/src/nco++/Makefile.in b/src/nco++/Makefile.in
index 2d35c92..0084728 100644
--- a/src/nco++/Makefile.in
+++ b/src/nco++/Makefile.in
@@ -14,7 +14,7 @@
 
 @SET_MAKE@
 
-# $Header: /cvsroot/nco/nco/src/nco++/Makefile.in,v 1.98 2014/04/02 05:40:24 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco++/Makefile.in,v 1.99 2014/08/03 23:49:17 zender Exp $ -*-makefile-*-
 
 # Purpose: Template builds for nco++ directory
 # Process this file with automake to produce Makefile.in
@@ -370,6 +370,10 @@ nco_gsl.c
 ncap2_LDADD = -lnco -lantlr
 # fxm: 20080515 Takeshi Enomoto reports that MACOSX needs
 # ncap2_LDADD = ../nco/.libs/libnco.dylib -lantlr
+
+# fxm: 20140730 Ed Anderson reports that PGI- and GCC-compiled ncap2 need
+# -Xcompiler -shared added to ncap2_LINK which, apparently, would be done with
+# 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)
 @ENABLE_GSL_FALSE at ncap2_LDFLAGS = -L../nco
diff --git a/src/nco++/Makefile.old b/src/nco++/Makefile.old
index 05aa267..9f5f0c5 100644
--- a/src/nco++/Makefile.old
+++ b/src/nco++/Makefile.old
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/src/nco++/Makefile.old,v 1.125 2014/05/04 05:39:01 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco++/Makefile.old,v 1.132 2014/07/07 06:04:23 zender Exp $ -*-makefile-*-
 
 # Purpose: Makefile for NCO C++ directory nco++
 # Requires GNU Make---AT&T Make chokes on GNU syntax
@@ -15,25 +15,25 @@
 
 # Usage:
 # cd ~/nco/src/nco++;make -f Makefile.old dpn_cln cln all
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D UDUNITS2=Y all # givre, neige
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D UDUNITS2=Y lib_cln cln ncap2 # givre, neige
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=Y OPTS=D UDUNITS2=Y all # virga
-# cd ~/nco/src/nco++;SZ_LIB=/sopt/lib make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D SZ=Y UDUNITS2=N all # greenplanet intel
-# cd ~/nco/src/nco++;ANTLR_ROOT=/sopt/gfortran_g++ NETCDF_ROOT=/sopt/gfortran_g++ SZ_LIB=/sopt/lib make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D SZ=Y UDUNITS2=N all # greenplanet gcc
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=Y OMP=N OPTS=D UDUNITS2=Y all # ashes, elnino
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=Y OPTS=D UDUNITS2=N all # esmf
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=Y OPTS=D UDUNITS2=N all # silt
-# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=N OPTS=D UDUNITS2=N all # sand, clay, tephra
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D UDUNITS=Y all # givre, neige
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D UDUNITS=Y lib_cln cln ncap2 # givre, neige
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=Y OPTS=D UDUNITS=Y all # virga
+# cd ~/nco/src/nco++;SZ_LIB=/sopt/lib make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D SZ=Y UDUNITS=N all # greenplanet intel
+# cd ~/nco/src/nco++;ANTLR_ROOT=/sopt/gfortran_g++ NETCDF_ROOT=/sopt/gfortran_g++ SZ_LIB=/sopt/lib make -f Makefile.old NETCDF4=Y OMP=Y OPTS=D SZ=Y UDUNITS=N all # greenplanet gcc
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=Y OMP=N OPTS=D UDUNITS=Y all # ashes, elnino
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=Y OPTS=D UDUNITS=N all # esmf
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=Y OPTS=D UDUNITS=N all # silt
+# cd ~/nco/src/nco++;make -f Makefile.old NETCDF4=N OMP=N OPTS=D UDUNITS=N all # sand, clay, tephra
 # 64-bit ABI on UCI MPC systems:
 # cd ${HOME}/nco/src/nco++;env ANTLR='/software/antlr/bin/antlr' ANTLR_ROOT='/software/antlr' UDUNITS_INC='/software/udunits/include' UDUNITS_LIB='/software/udunits/lib' make -f Makefile.old --jobs=1 ABI=64 all;cd -
 # cd ${HOME}/nco/src/nco++;env ANTLR='/usr/local/pgi/bin/antlr' ANTLR_ROOT='/usr/local/pgi' make -f Makefile.old --jobs=1 ABI=64 all;cd -
 # 64-bit ABI netCDF3 on NCAR AIX systems (bluefire):
-# cd ${HOME}/nco/src/nco++;ANTLR='/contrib/antlr-2.7.7/bin/antlr' ANTLR_ROOT='/contrib/antlr-2.7.7' NETCDF_LIB='/usr/local/lib64/r4i4' UDUNITS_INC='/contrib/udunits-1.12.9/include' UDUNITS_LIB='/contrib/udunits-1.12.9/lib' make -f Makefile.old --jobs=1 ABI=64 OPTS=D NETCDF4=N UDUNITS2=N all;cd -
+# cd ${HOME}/nco/src/nco++;ANTLR='/contrib/antlr-2.7.7/bin/antlr' ANTLR_ROOT='/contrib/antlr-2.7.7' NETCDF_LIB='/usr/local/lib64/r4i4' UDUNITS_INC='/contrib/udunits-1.12.9/include' UDUNITS_LIB='/contrib/udunits-1.12.9/lib' make -f Makefile.old --jobs=1 ABI=64 OPTS=D NETCDF4=N UDUNITS=N all;cd -
 # 64-bit ABI netCDF4 on NCAR AIX systems (bluefire):
 # cd ${HOME}/nco/src/nco++;ANTLR='/contrib/antlr-2.7.7/bin/antlr' ANTLR_ROOT='/contrib/antlr-2.7.7' CURL_LIB='/contrib/curl/7.21.2/lib' GSL_INC='/contrib/gsl-1.12/include' GSL_LIB='/contrib/gsl-1.12/lib' GSL_MINOR_VERSION='12' HDF5_ROOT='/contrib/hdf5-1.8.7_seq' LDFLAGS='-lnetcdf -lhdf5_hl -lhdf5 -lz' NETCDF_ROOT='/contrib/netcdf/4.1.3_seq' SZ_LIB='/contrib/szip/lib' UDUNITS_LIB='/contrib/zlib/lib' make -f Makefile.old --jobs=1 ABI=64 OPTS=D SZ=Y all;cd -
 # 
 # Cygwin on Windows Vista systems:
-# cd ~/nco/src/nco++;ANTLR='antlr' make -f Makefile.old GSL=Y OPTS=D NETCDF4=Y UDUNITS2=Y all;cd -
+# cd ~/nco/src/nco++;ANTLR='antlr' make -f Makefile.old GSL=Y OPTS=D NETCDF4=Y UDUNITS=Y all;cd -
 
 # NB: ncap2 requires ANTLR headers and library
 # http://www.antlr.org
@@ -105,11 +105,17 @@ endif # endif ANTLR
 ifndef ANTLR_ROOT
  ANTLR_ROOT := /usr/local
 endif
-ifndef ANTLR_INC
- ANTLR_INC := ${ANTLR_ROOT}/include # Directory containing AST.hpp
+ifdef ANTLR_INC
+# Directory containing AST.hpp
+ ANTLR_INC := -I${ANTLR_INC}
+else
+ ANTLR_INC := -I${ANTLR_ROOT}/include
 endif
-ifndef ANTLR_LIB
- ANTLR_LIB := ${ANTLR_ROOT}/lib # Directory containing libantlr.a
+ifdef ANTLR_LIB
+# Directory containing libantlr.a
+ ANTLR_LIB := -L${ANTLR_LIB} -lantlr
+else
+ ANTLR_LIB := -L${ANTLR_ROOT}/lib -lantlr
 endif
 ifndef ${CCACHE}
  CCACHE := N
@@ -118,12 +124,9 @@ ifndef CNK
 # Use newer netCDF4.1 chunking API
  CNK := Y
 endif # endif CNK
-ifndef DAP_NETCDF
- DAP_NETCDF := Y
-endif # DAP_NETCDF
-ifndef DAP_OPENDAP
- DAP_OPENDAP := N
-endif # DAP_OPENDAP
+ifndef DAP
+ DAP := Y
+endif # DAP
 ifndef ${DBG}
 # Debugging token N=No (default) Y=Yes
  DBG := N
@@ -195,11 +198,7 @@ ifndef SZ
 endif
 ifndef UDUNITS
 # Use UDUnits functionality
- UDUNITS := N
-endif
-ifndef UDUNITS2
-# Use UDUnits2 functionality
- UDUNITS2 := Y
+ UDUNITS := Y
 endif
 ifndef UNAMES
  UNAMES := $(shell uname -s)
@@ -262,53 +261,12 @@ ifeq (${PRC},D)
 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
 
-# Default NCO build: DAP_NETCDF, DAP_OPENDAP, NETCDF4, PNETCDF, and ZNETCDF clauses may overwrite this
-NC_LDFLAGS := -L${NETCDF_LIB}
-NC_LIBS := -lnetcdf 
-
-ifeq (${DAP_NETCDF},Y)
-# Build NCO as DAP-enabled clients with netCDF-provided DAP
-ifndef DAP_NETCDF_ROOT
-# Directory containing libcurl.a
- DAP_NETCDF_ROOT := /usr
-endif # DAP_NETCDF_ROOT
- NC_LDFLAGS := -L${DAP_NETCDF_ROOT}/lib
-# netCDF 4.0.1+:
- NC_LIBS += -lcurl
-endif # end DAP_NETCDF
-
-ifeq (${DAP_OPENDAP},Y)
-# Build NCO as DAP-enabled clients with OPeNDAP
-# fxm: OPeNDAP bloats executables, should automagically enable stripping?
-# http://www.opendap.org/user/guide-html/guide_28.html
-ifndef DAP_OPENDAP_ROOT
-# Directory containing libdap.a, libnc-dap.a
- DAP_OPENDAP_ROOT := /usr/local
-endif # DAP_OPENDAP_ROOT
- NC_LDFLAGS := -L${DAP_OPENDAP_ROOT}/lib
-# NB: nc-dods, dap++ prior to version 3.5.X must be linked twice!
-# Required libraries for
-# DODS 3.3-:
-# NC_LIBS := -lnc-dods -ldap++ -lnc-dods -ldap++ -lwww -lz -lrx
-# DODS 3.4.X:
-# NC_LIBS := -lnc-dods -ldap++ -lnc-dods -ldap++ -lxml2 -lcurl -lpthread -ldl -lz
-# OPeNDAP 3.5.0-3.5.1:
-# NC_LIBS := -lnc-dap -ldap++ -lxml2 -lcurl
-# OPeNDAP 3.5+:
- NC_LIBS := -lnc-dap -ldap -lxml2 -lcurl
-# In addition, AIX OPeNDAP requires these libraries...
-ifneq (${null},$(findstring AIX,${PVM_ARCH}))
- NC_LIBS += -lcrypto -liconv -lssl -lz
-endif # end AIX
-# Get netCDF from OPeNDAP version
- NETCDF_INC=${DAP_OPENDAP_ROOT}/include/libnc-dap
- NETCDF_LIB=${DAP_OPENDAP_ROOT}/lib
-endif # end DAP_OPENDAP
-
 # Internationalize NCO with i18n features
 ifeq (${I18N},Y)
  MY_SHR_DIR := ${HOME}/share
@@ -316,11 +274,6 @@ ifeq (${I18N},Y)
  MY_FR_DIR := ${MY_SHR_DIR}/locale/fr/LC_MESSAGES
 endif
 
-ifeq (${NETCDF4},Y)
- CPPFLAGS += -DENABLE_NETCDF4 -DHAVE_NETCDF4_H
-endif
-# endif NETCDF4
-
 # Message Passing Interface (MPI)
 ifeq (${MPI_FAKE},Y)
 # MPI_FAKE instructs make to compile mpnc*.c operators without defining ENABLE_MPI
@@ -338,122 +291,61 @@ else # !MPI_PRC
  MPI_PRC_SNG :=
 endif # !MPI_PRC
 
-ifeq (${NETCDF4},Y)
-# Enable netCDF4 functionality
-ifndef HDF5_ROOT
- HDF5_ROOT := ${NETCDF4_ROOT}
-endif
-ifndef HDF5_INC
- HDF5_INC := ${HDF5_ROOT}/include # Directory containing hdf5.h
-endif
-ifndef HDF5_LIB
- HDF5_LIB := ${HDF5_ROOT}/lib # Directory containing libhdf5.a
-endif
-# fxm: Temporary kludge: Machines with MPI_ROOT set are assumed to have parallel filesystems for NCO builds
-ifdef MPI_ROOT
- HDF5_INC += -I${MPI_ROOT}/include # Directory containing mpi.h
- HDF5_LIB += ${MPI_ROOT}/lib64 # Directory containing libmpi.a
-endif # !MPI_ROOT
- NETCDF_INC := ${NETCDF4_ROOT}/include
- NETCDF_LIB := ${NETCDF4_ROOT}/lib
- NC_LDFLAGS := -L${NETCDF_LIB} $(addprefix -L,${HDF5_LIB})
-# NC_LIBS := -lnetcdf -lhdf5_hl -lhdf5 -lz ${NC_LIBS}
- NC_LIBS := $(shell nc-config --libs) ${NC_LIBS}
-ifdef MPI_ROOT
- NC_LIBS += -lmpi
-endif # !MPI_ROOT
-ifdef CURL_LIB
- NC_LDFLAGS += -L${CURL_LIB}
-endif # end 
-ifeq (${SZ},Y)
-ifndef SZ_LIB
- SZ_LIB := /usr/lib # Directory containing libsz.a
-endif
- NC_LDFLAGS += -L${SZ_LIB}
- NC_LIBS += -lsz
-endif # !SZ
-ifneq (${HDF5_INC},${NETCDF_INC})
- NETCDF_INC += -I${HDF5_INC}
-endif # end 
-endif # endif NETCDF4
-
-ifeq (${PNETCDF},Y)
-# Enable pnetCDF functionality
- NC_LDFLAGS := -L${NETCDF_LIB}
- NC_LIBS += -lpnetcdf
-endif # endif PNETCDF
-
 ifeq (${GSL},Y)
 # Build GSL-enabled NCO 
-# Place GSL block after DAP block for both to work together
+# Place GSL block after DAP blocks for both to work together
 ifdef GSL_INC
  GSL_INC := -I${GSL_INC}
 else
  GSL_INC := $(shell gsl-config --cflags)
 endif # endif GSL_INC
 ifdef GSL_LIB
- GSL_LIB := -L${GSL_LIB}
+ GSL_LIB := -L${GSL_LIB} -lgsl
 else
  GSL_LIB := $(shell gsl-config --libs)
 endif # endif GSL_LIB
- NETCDF_INC += ${GSL_INC}
- NC_LDFLAGS += ${GSL_LIB}
- NC_LIBS += -lgsl
- # Assumes GSL version in form [1-9].[0-9]+
-ifndef GSL_MINOR_VERSION
- GSL_MINOR_VERSION := $(shell gsl-config --version | sed s/^[1-9]\.// )
- ifeq (${GSL_MINOR_VERSION},${null})
-	GSL_MINOR_VERSION := 4
- endif # end if GSL_MINOR_VERSION
-endif # endif GSL_MINOR_VERSION
+ ifndef GSL_MINOR_VERSION
+  GSL_MINOR_VERSION := $(shell gsl-config --version | sed s/^[1-9]\.// )
+  ifeq (${GSL_MINOR_VERSION},${null})
+        GSL_MINOR_VERSION := 4
+  endif # end if GSL_MINOR_VERSION
+ endif # endif GSL_MINOR_VERSION
 endif # end if GSL
 
-ifeq (${UDUNITS2},Y)
- UDUNITS := Y
-endif # end if UDUNITS
 ifeq (${UDUNITS},Y)
-# Build UDUnits-enabled NCO 
-# Place UDUNITS block after DAP block for both to work together
-ifndef UDUNITS_INC
- UDUNITS_INC := /usr/local/include # Directory containing udunits.h
-endif
-ifndef UDUNITS_LIB
- UDUNITS_LIB := /usr/local/lib # Directory containing libudunits.a
-endif
-ifneq (${UDUNITS_INC},${NETCDF_INC})
- NETCDF_INC += -I${UDUNITS_INC}
-endif # end 
-ifneq (${UDUNITS_LIB},${NETCDF_LIB})
- NC_LDFLAGS += -L${UDUNITS_LIB}
-endif # end if
-ifeq (${UDUNITS2},Y)
 # 20130607: -lexpat needed on .deb systems, not on RPM systems
-UDUNITS_RPM_DRC := /usr/include/udunits2
-ifneq (${UDUNITS_INC},/usr/local/include)
-# UDUNITS_RPM_TST := $(shell ls ${UDUNITS_RPM_DRC}/udunits2.h)
- UDUNITS_RPM_TST := ${UDUNITS_RPM_DRC}/udunits2.h
+ifdef UDUNITS_INC
+ UDUNITS_INC := -I${UDUNITS_INC}
 else
- UDUNITS_RPM_TST := /usr/include/udunits2.h
-endif # end if
-ifeq (${UDUNITS_RPM_TST},${UDUNITS_RPM_DRC}/udunits2.h)
- NETCDF_INC += -I${UDUNITS_RPM_DRC}
-endif # end if
-ifneq (${UDUNITS_RPM_TST},${UDUNITS_RPM_DRC}/udunits2.h)
- NC_LIBS += -ludunits2 -lexpat
-else # end if UDUNITS2 Fedora
- NC_LIBS += -ludunits2
-endif # end if UDUNITS2 Fedora
+ UDUNITS_INC := -I/usr/include/udunits2
+endif # endif UDUNITS_INC
+ifdef UDUNITS_LIB
+ UDUNITS_LIB := -L${UDUNITS_LIB} -ludunits2
 else
- NC_LIBS += -ludunits
-endif # end if UDUNITS2
+ UDUNITS_LIB := -ludunits2
+endif # end if UDUNITS_LIB
 endif # end if UDUNITS
 
-# TMP_* and NCO_* are required to play nicely with DAP flags
-NCO_LDFLAGS := -L${MY_LIB_DIR}
-# NCO_LIBS := -lnco++ -lnco -lnco_c++
-NCO_LIBS := -lnco++ -lnco 
-TMP_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS} -L${ANTLR_LIB}
-TMP_LIBS := ${NCO_LIBS} ${NC_LIBS} -lantlr
+# 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)
+NCO_LDFLAGS := -L${MY_LIB_DIR} -lnco -lnco++
+
+ifeq (${PNETCDF},Y)
+# Enable pnetCDF functionality
+ NC_CFLAGS := $(shell /usr/local/parallel/bin/nc-config --cflags)
+ NC_LDFLAGS := $(shell /usr/local/parallel/bin/nc-config --libs)
+ MPI_CFLAGS := -I/usr/include/openmpi-x86_64
+ MPI_LDFLAGS := -L/usr/lib64/openmpi/lib -lmpi
+endif # endif PNETCDF
+
+ifdef LIB_NCAR
+ NC_LDFLAGS := ${LIB_NCAR} ${NC_LDFLAGS}
+endif
+
+OTHER_CFLAGS := ${NC_CFLAGS} ${MPI_CFLAGS} ${GSL_INC} ${UDUNITS_INC} ${ANTLR_INC}
+OTHER_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS} ${MPI_LDFLAGS} ${GSL_LIB} ${UDUNITS_LIB} ${ANTLR_LIB}
+
 # sort removes duplicates but unfortunately changes precedence too
 # fxm: use uniq instead
 #TMP_LDFLAGS := $(sort ${TMP_LDFLAGS})
@@ -605,12 +497,9 @@ endif # AIX
 ifeq (${CNK},Y)
  CPP_TKN_OS += -DHAVE_NEW_CHUNKING_API
 endif # !CNK
-ifeq (${DAP_NETCDF},Y)
- CPP_TKN_OS += -DENABLE_DAP
-endif # !DAP_NETCDF
-ifeq (${DAP_OPENDAP},Y)
+ifeq (${DAP},Y)
  CPP_TKN_OS += -DENABLE_DAP
-endif # !DAP_OPENDAP
+endif # !DAP
 ifeq (${GSL},Y)
  CPP_TKN_OS += -DENABLE_GSL -DHAVE_GSL_H -DNCO_GSL_MINOR_VERSION='${GSL_MINOR_VERSION}'
 endif # !GSL
@@ -620,10 +509,7 @@ ifneq (${MPI_FAKE},Y)
 endif # MPI_FAKE
 endif # !MPI
 ifeq (${UDUNITS},Y)
- CPP_TKN_OS += -DENABLE_UDUNITS -DHAVE_UDUNITS_H
-ifeq (${UDUNITS2},Y)
- CPP_TKN_OS += -DHAVE_UDUNITS2_H
-endif # !UDUNITS2
+ CPP_TKN_OS += -DENABLE_UDUNITS -DHAVE_UDUNITS_H -DHAVE_UDUNITS2_H
 endif # !UDUNITS
 ifeq (${null},$(findstring SGI,${PVM_ARCH}))
  CPP_TKN_OS += -DHAVE_CSTDLIB
@@ -643,10 +529,10 @@ ifneq (${null},$(findstring xl,${CC}))
  CPP_TKN_OS += -I/usr/vacpp/include
 endif # xlC compilers
 # Add /usr/local/include for libintl.h explicitly until netCDF is moved there
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC} -I/usr/local/include
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} -I/usr/local/include
 FC := xlf95_r
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
 LEX := flex
 LINT := lint
 YACC := bison
@@ -760,13 +646,13 @@ CXX := cxx -std strict_ansi
 CC := cc
 CFLAGS := ${OMP_FLG}
 # OSF1 is for CCM compatibility
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DOSF1 ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DOSF1 ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := f90
 FFLAGS := -c ${OMP_FLG} -automatic -fpe3
 FIXEDFLAGS := -extend_source
 FREEFLAGS := -DHIDE_SHR_MSG -free
 LD := ld
-LDFLAGS += ${OMP_FLG} ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OMP_FLG} ${OTHER_LDFLAGS}
 LEX := flex
 LINT := lint
 YACC := bison
@@ -797,10 +683,10 @@ ifeq (${PVM_ARCH},CRAY)
 CXX := g++
 CC := cc
 CPP := cpp
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
 LDFLAGS += -L/lib -lf
 LEX := lex
 LINT := lint
@@ -829,16 +715,19 @@ ${MY_OBJ_DIR}/%.o : %.f
 endif
 # endif CRAY
 
-# Works on LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD
-ifneq (${null},$(findstring ${PVM_ARCH},LINUXALPHALINUXAMD64LINUXARMFREEBSD))
+# Works on LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD and MACOSX
+ifneq (${null},$(findstring ${PVM_ARCH},LINUXALPHALINUXAMD64LINUXARMFREEBSDMACOSX))
 CXX := ${LINUX_CXX}
 CC := ${LINUX_CC}
 CPP := ${CXX}
 # HAVE_INLINE is GNU standard to activate inline functions (used by GSL)
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DHAVE_INLINE ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC} 
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DHAVE_INLINE ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := ${LINUX_FC}
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
+ifeq (${PVM_ARCH},MACOSX)
+ LDFLAGS += -lresolv
+endif # endif MACOSX
 LEX := flex
 LINT := lint
 YACC := bison
@@ -860,8 +749,15 @@ ifeq (${OPTS},X)
 endif
  CXXFLAGS := ${CFLAGS}
 endif # endif Comeau C Compiler
-# GNU Compiler Collection
-ifeq (${CXX},g++)
+# GNU Compiler Collection or LLVM
+# 20140204: gcc and clang should receive identical options
+ifeq (g++,$(firstword ${CXX}))
+ GCC_OR_CLANG := Y
+endif
+ifeq (clang,$(firstword ${CXX}))
+ GCC_OR_CLANG := Y
+endif
+ifeq (${GCC_OR_CLANG},Y)
  CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
  CFLAGS := -Wno-unused-variable
 # Compilation flags for numerical routines recommended by GSL 1.3 manual, p. 397
@@ -882,7 +778,7 @@ ifeq (${CXX},g++)
 # -Wwrite-strings: Apply const-qualifier to string constants, die if overwritten
 # -fno-common: Prevent global variables from being simultaneously defined in different files
 # -g: Put debugging symbols in executable
-# -O4: Turn on optimization so unitialized variables are flagged
+# -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
 # --no-alias? -fstrict-aliasing
@@ -894,10 +790,18 @@ ifeq (${CXX},g++)
 # -Dinline=: inline is not an ANSI keyword, must undefine inline to work with -ansi
 # -fshort-enums: Make enums as short as possible, ususally non-int. Do not ever invoke this! This breaks ABI and causes subtle problems
 ifeq (${OMP},Y)
+ifneq (clang,$(firstword ${CXX}))
+# 20140526 clang does not recognize/utilize -fopenmp
  OMP_FLG_C := -fopenmp
  OMP_FLG_F := -fopenmp
  LDFLAGS += -lgomp -lpthread
+endif # endif clang
 endif # endif OMP
+ifeq (clang,$(firstword ${CXX}))
+# 20140531 avoid clang error that -O4 is ame as -O3
+ CFLAGS := $(subst -O4,-O3,${CFLAGS})
+ LDFLAGS += -lstdc++
+endif # endif clang
 ifeq (${OPTS},O)
  CFLAGS += -O -g ${GCC_RCH_ARG}
 endif
@@ -918,7 +822,7 @@ ifeq (${ABI},64)
 endif # endif ABI
 endif # endif LINUXAMD64
  CXXFLAGS := ${CFLAGS}
-endif # endif GNU Compiler Collection
+endif # endif GNU Compiler Collection or LLVM
 # Intel (Kai) C++ Compiler
 ifeq (icpc,$(firstword ${CXX}))
 # -cxxlib-gcc: link using C++ run-time libraries provided with GCC (default) (generated code is binary compatible with g++)
@@ -1071,17 +975,17 @@ ifeq (${OMP},Y)
  LDFLAGS := ${OMP_FLG_C} ${LDFLAGS}
 endif # endif OMP
 endif
-# endif LINUX
+# endif LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD and MACOSX
 
-ifeq (${PVM_ARCH},MACOSX)
+ifeq (${PVM_ARCH},MACOSXOLD)
 CXX := c++
 CC := cc
 CFLAGS := -Wall
 CPP := ${CC}
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lresolv -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lresolv -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1105,7 +1009,7 @@ ifeq (${OMP},Y)
  LDFLAGS := ${OMP_FLG} ${LDFLAGS}
 endif # endif OMP
 endif
-# endif MACOSX
+# endif MACOSXOLD
 
 ifeq (${PVM_ARCH},NECSX)
 ifeq (${OMP},Y)
@@ -1116,10 +1020,10 @@ CXX := c++
 CC := cc
 CPP := c++ -E
 #CPP := /usr/lib/cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${OTHER_CFLAGS} 
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 ifeq ($(USE_FORTRAN_ARITHMETIC),Y)
 # LDFLAGS += -L/lib -lf
 endif
@@ -1150,10 +1054,10 @@ ifeq (${PVM_ARCH},RS6K)
 CXX := g++
 CC := gcc -ansi
 CPP := /lib/cpp -P
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${OTHER_CFLAGS} 
 FC := xlf
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 ifeq ($(USE_FORTRAN_ARITHMETIC),Y)
  LDFLAGS += -lxlf90 -lxlf
 endif
@@ -1187,10 +1091,10 @@ CC := cc -c99
 # 20000302: -w suppresses warnings which will swamp linker
 #CXX := g++ -w
 #CC := gcc
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := f90 -cpp
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1210,7 +1114,7 @@ else # ABI=32
 endif # endif ABI
 endif # endif SGI64, SGIMP64
 ifeq (gcc,$(firstword ${CC}))
- LDFLAGS := $(GCC_LDFLAGS_SZ_SPC) ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+ LDFLAGS := $(GCC_LDFLAGS_SZ_SPC) ${OTHER_LDFLAGS} -lm
  CFLAGS := ${GCC_ABI_FLG} -Wall
 ifeq (${OPTS},O)
  CFLAGS += -O2
@@ -1229,7 +1133,7 @@ endif
 # endif CC=gcc
 ifeq (CC,$(firstword ${CXX}))
 # SGI Native C++ headers are in /usr/include/CC
- LDFLAGS := ${SGI_ABI_FLG} ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+ LDFLAGS := ${SGI_ABI_FLG} ${OTHER_LDFLAGS} -lm
  CFLAGS := ${SGI_ABI_FLG}
 ifeq (${OPTS},O)
  CFLAGS += -O2
@@ -1271,12 +1175,12 @@ CXX := g++
 CC := gcc
 CFLAGS := -Wall
 CPP := cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC} 
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := f90 -DHIDE_SHR_MSG
 #FFLAGS := -xs -stackvar -e -Qoption f90comp -r8const
 FFLAGS := -xs -stackvar -e 
 LD := ld
-LDFLAGS := ${TMP_LDFLAGS} ${TMP_LIBS} -lsunmath -lsocket -lnsl
+LDFLAGS := ${OTHER_LDFLAGS} -lsunmath -lsocket -lnsl
 #LDFLAGS += -lF77 -lM77 -lresolv
 LEX := lex
 LINT := lint
@@ -1321,10 +1225,10 @@ CC := gcc -ansi
 CPP := cpp
 # NB: nameser.h needs -Di386, but gcc sends -Di586 (on pentiums)
 CPP_TKN_OS += -Di386 -DNEED_STRCASECMP -DNEED_STRDUP -I/usr/include
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -I${ANTLR_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := g77
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1471,10 +1375,8 @@ dbg:
 	@printf "CURL_LIB = ${CURL_LIB}\n"
 	@printf "CXX = ${CXX}\n"
 	@printf "CXXFLAGS = ${CXXFLAGS}\n"
-	@printf "DAP_NETCDF = ${DAP_NETCDF}\n"
-	@printf "DAP_NETCDF_ROOT = ${DAP_NETCDF_ROOT}\n"
-	@printf "DAP_OPENDAP = ${DAP_OPENDAP}\n"
-	@printf "DAP_OPENDAP_ROOT = ${DAP_OPENDAP_ROOT}\n"
+	@printf "DAP = ${DAP}\n"
+	@printf "DAP_ROOT = ${DAP_ROOT}\n"
 	@printf "DBG = ${DBG}\n"
 	@printf "FC = ${FC}\n"
 	@printf "FFLAGS = ${FFLAGS}\n"
@@ -1537,7 +1439,6 @@ dbg:
 	@printf "TMP_LDFLAGS = ${TMP_LDFLAGS}\n"
 	@printf "TMP_LIBS = ${TMP_LIBS}\n"
 	@printf "UDUNITS = $(UDUNITS)\n"
-	@printf "UDUNITS2 = $(UDUNITS2)\n"
 	@printf "UDUNITS_INC = $(UDUNITS_INC)\n"
 	@printf "UDUNITS_LIB = $(UDUNITS_LIB)\n"
 	@printf "UNAMES = ${UNAMES}\n"
diff --git a/src/nco++/fmc_all_cls.cc b/src/nco++/fmc_all_cls.cc
index b8cce0a..82e9e65 100644
--- a/src/nco++/fmc_all_cls.cc
+++ b/src/nco++/fmc_all_cls.cc
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/fmc_all_cls.cc,v 1.68 2014/04/10 10:45:49 hmb Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/fmc_all_cls.cc,v 1.70 2014/08/11 11:44:24 hmb Exp $ */
 
 /* Purpose: netCDF arithmetic processor class methods: families of functions/methods */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "fmc_all_cls.hh"
 
@@ -2702,6 +2703,393 @@ double bil_cls::clc_lin_ipl(double x1,double x2, double x, double Q0,double Q1){
   }
 
 
+
+//misc Functions /******************************************/
+// These fuctions are used to create and apply masks to 2D grid variables
+//    mask_out=imask_make(var_in,lat,lon)
+//
+//    var_in is a 2D var. mask_out is a 0/1 mask of grid points.
+//    value is set to 1 if point in var_in is  missing_value but has a neigbour with a non-missing value;
+//
+//    var_out=imask_fill(var_in.mask_out,lat,lon)
+//  
+//    Points  in var_in are filled if they are missing AND are specified in mask_out.
+//    The fill value is an average from the nearest neigbours. nb if a neighbour has just been filled 
+//    in then this value is NOT used in the calculation of the average      
+//    Typically mask_out and var_in should be the same shape. 
+//    Howver its possible to specify multiple mask in mask_out - in this case each mask is iterativly applied to var_in
+//    so the shape would be like mask_out(mask_size,lat,lon) 
+// 
+//
+//
+  misc_cls::misc_cls(bool flg_dbg){
+    //Populate only on first constructor call
+    if(fmc_vtr.empty()){
+      fmc_vtr.push_back( fmc_cls("imask",this,(int)PMISC1));
+      fmc_vtr.push_back( fmc_cls("imask_make",this,(int)PMISC2));
+      fmc_vtr.push_back( fmc_cls("imask_fill",this,(int)PMISC3));
+    }
+  }
+
+
+
+
+  var_sct *misc_cls::fnd(RefAST expr, RefAST fargs,fmc_cls &fmc_obj, ncoTree &walker){
+  const std::string fnc_nm("misc_cls::fnd");
+    int idx;
+    int fdx=fmc_obj.fdx();   //index
+    int nbr_args;
+    int in_nbr_args;
+    prs_cls* prs_arg=walker.prs_arg;
+    var_sct *var_arr[4];
+    var_sct *var_out;
+    RefAST tr;
+    nc_type in_typ;  
+    std::string susg;
+    std::string serr;
+    std::string sfnm =fmc_obj.fnm(); //method name
+    std::vector<RefAST> vtr_args; 
+    NcapVector<dmn_sct*> dmn_vtr;
+
+
+    if(expr)
+      vtr_args.push_back(expr);
+
+    if(tr=fargs->getFirstChild()) {
+       do  
+         vtr_args.push_back(tr);
+       while(tr=tr->getNextSibling());    
+    } 
+
+      
+    nbr_args=vtr_args.size();  
+
+    switch(fdx){
+
+      case PMISC1:
+       in_nbr_args=nbr_args;  
+       susg="usage: var_out="+sfnm+"(Data_2D, X_in, Y_in)"; 
+       break;
+
+      case PMISC2: 
+        in_nbr_args=nbr_args;  
+        susg="usage: var_out="+sfnm+"(data_2D, mask,X_in?, Y_in?)"; 
+        break;
+
+
+      case PMISC3:
+       in_nbr_args=nbr_args;  
+       susg="usage: var_out="+sfnm+"(data_2D,mask, X_in, Y_in)"; 
+       break;
+
+
+    } // end switch
+
+
+    if(in_nbr_args <3 ){   
+      serr="function requires at least two arguments. You have only supplied "+nbr2sng(in_nbr_args)+ " arguments\n"; 
+      err_prn(sfnm,serr+susg);
+    }
+
+    
+   
+    // process input args 
+    for(idx=0 ; idx<in_nbr_args; idx++)
+      var_arr[idx]=walker.out(vtr_args[idx]);
+
+   
+    // initial scan
+    if(prs_arg->ntl_scn){
+        for(idx=1 ; idx<in_nbr_args ; idx++)
+	    nco_var_free(var_arr[idx]);
+
+        return var_arr[0];
+    }
+
+    // save inital type
+    in_typ=var_arr[0]->type;     
+    // convert all args to type DOUBLE 
+    for(idx=0;idx<in_nbr_args;idx++)
+       var_arr[idx]=nco_var_cnf_typ(NC_DOUBLE,var_arr[idx]);               
+
+   
+
+    if(fdx==PMISC1){
+      // recall input arguments in order
+      // 0 - input data
+      // 1 - input X   co-ordinate var
+      // 2 - input Y   co-ordinate var
+      long cnt=0l; 
+      long ldx; 
+      long idx;
+      long jdx;
+      long v_sz;
+      long iidx;
+      long jjdx;
+      long lldx; 
+      long x_sz;
+      long y_sz;
+      double *dpi;
+      double *dpo;
+      double mss_dbl=9.999e20;; 
+
+      var_out=nco_var_dpl(var_arr[0]);
+      (void)cast_void_nctype(NC_DOUBLE,&var_out->val);   
+
+      for(idx=0;idx<in_nbr_args;idx++) 
+         (void)cast_void_nctype(NC_DOUBLE,&var_arr[idx]->val);
+
+      // grab missing value;  
+      if( var_arr[0]->has_mss_val ){
+         cast_void_nctype(NC_DOUBLE,&var_arr[0]->mss_val);
+         mss_dbl=*var_arr[0]->mss_val.dp;      
+         cast_nctype_void(NC_DOUBLE,&var_arr[0]->mss_val);       
+       }   
+
+      dpi=var_arr[0]->val.dp; 
+      dpo=var_out->val.dp;          
+      v_sz=var_arr[0]->sz;     
+      x_sz=var_arr[1]->sz;   
+      y_sz=var_arr[2]->sz;   
+
+      
+      
+      // set all values to zero      
+     memset((void*)dpo,0, sizeof(double) *v_sz);     
+
+     for(idx=2;idx<x_sz-2; idx++)       
+       for(jdx=2;jdx<y_sz-2;jdx++ ){
+         ldx=idx*y_sz+jdx; 
+         // set output to default missing vale; 
+         dpo[ldx]=mss_dbl; 
+         // mask either 1 or mss_dbl
+	 if( dpi[ldx] !=1.0 ){
+	   for(iidx=idx-2; iidx<idx+3;iidx++){ 
+	     for(jjdx=jdx-2; jjdx<jdx+3;jjdx++){ 
+	       lldx=iidx*y_sz+jjdx;
+	        if(dpi[lldx]==1.0){
+		  dpo[ldx]=1.0;  
+                  cnt++; 
+                  goto outer; 
+	        }             
+	     }
+           }
+	 } 
+       outer: ;
+       }
+       
+     printf("misc_cls number of spots processed=%ld\n" ,cnt);
+                       
+    } // end fdx
+
+    if(fdx==PMISC2){
+      // recall input arguments in order
+      // 0 - input var -2D INPUT GRID 
+      // 1 - input X   co-ordinate var
+      // 2 - input Y   co-ordinate var
+      long ldx;  
+      long v_sz;
+      long x_sz;
+      long y_sz;
+      long mcnt=0l;   // num missing values count 
+      long vmcnt=0l; // num missing processed;   
+      double mss_dbl=9.999e20; 
+      double *dpi;   // input pointer
+      double *dpo;   //output pointer 
+      double *dpm;   // mask pointer;  
+      // save in type; 
+      ostringstream os; 
+      
+      // var_out is the output mask - same shape as input var 
+      var_out=nco_var_dpl(var_arr[0]);         
+      (void)cast_void_nctype(NC_DOUBLE,&var_out->val); 
+
+      // cast all vars
+      for(idx=0;idx<in_nbr_args;idx++)
+        (void)cast_void_nctype(NC_DOUBLE,&var_arr[idx]->val);
+        
+      v_sz=var_arr[0]->sz;
+      x_sz=var_arr[1]->sz;
+      y_sz=var_arr[2]->sz;
+   
+      
+      dpo=var_out->val.dp;
+      dpi=var_arr[0]->val.dp;     
+      dpm=var_arr[1]->val.dp;      
+ 
+      // grab missing value;  
+     if( var_arr[0]->has_mss_val ){
+         cast_void_nctype(NC_DOUBLE,&var_arr[0]->mss_val);
+         mss_dbl=*var_arr[0]->mss_val.dp;      
+         cast_nctype_void(NC_DOUBLE,&var_arr[0]->mss_val);       
+       }   
+      
+      for(ldx=0; ldx<v_sz ; ldx++){
+        // set otuput to default -0.0 
+        dpo[ldx]=0.0;
+
+        if(dpi[ldx]==mss_dbl ){  
+          int cnt=0;  
+          int jdx;
+          long iX=ldx/y_sz;
+          long iY= ldx -iX*y_sz;
+          double sum=0.0;
+          double Q[4]={mss_dbl,mss_dbl,mss_dbl,mss_dbl};
+          mcnt++; 
+            
+  
+          if(iY >0 )    Q[0]=dpi[ldx-1];
+          if(iY+1<y_sz) Q[1]=dpi[ldx+1]; 
+          if(iX>0 )     Q[2]=dpi[ldx-y_sz];
+          if(iX+1 < x_sz) Q[3]=dpi[ldx+y_sz];   
+           
+          for(jdx=0 ; jdx<4 ;jdx++)
+	    if(Q[jdx] !=mss_dbl) {
+	      sum+=Q[jdx];              
+              cnt++; 
+	    }
+       
+	  if(cnt){ 
+	    dpo[ldx]=1.0;   
+            vmcnt++;
+	  }
+           
+	} // end if
+               
+      } // end for
+
+      if(nco_dbg_lvl_get() >= 2){ 
+          os<< sfnm<<": num missing="<<mcnt<<+" num valid="<<vmcnt;
+          dbg_prn(fnc_nm,os.str());
+      } 
+
+    } // end fdx  
+
+
+    if(fdx==PMISC3){
+      // recall input arguments in order
+      // 0 - input var -2D INPUT GRID 
+      // 1 - input mask 2D GRID (VARMASK these are the places we want to fill a value)
+      //     nb this mask may contain multiple masks. So size of mask is a multiple of the
+      //     the input size grid i.e mask size = n * v_sz, When its a multiple we apply each mask
+      //     i an iteration    
+      // 2 - input X   co-ordinate var
+      // 3 - input Y   co-ordinate var
+      long ldx;  
+      long mdx;
+      long v_sz;
+      long m_sz;
+      long x_sz;
+      long y_sz;
+      size_t m_offset=0ll; 
+      double mss_dbl=9.999e20; 
+      double *dpi;   // input pointer
+      double *dpo;   //output pointer 
+      double *dpm;   // mask pointer;  
+   
+      // save in type; 
+      
+
+
+      var_out=nco_var_dpl(var_arr[0]);         
+      (void)cast_void_nctype(NC_DOUBLE,&var_out->val);
+
+      // cast all arguments
+      for(idx=0;idx<in_nbr_args;idx++)
+        (void)cast_void_nctype(NC_DOUBLE,&var_arr[idx]->val);
+
+      v_sz=var_arr[0]->sz;
+      m_sz=var_arr[1]->sz; 
+      x_sz=var_arr[2]->sz;
+      y_sz=var_arr[3]->sz;
+      
+    
+      assert(v_sz==x_sz*y_sz); 
+      // check mask size  
+      assert(m_sz % v_sz ==0l);    
+     
+      dpo=var_out->val.dp;
+      dpi=var_arr[0]->val.dp;     
+ 
+ 
+      // grab missing value;  
+      if( var_arr[0]->has_mss_val ){
+	cast_void_nctype(NC_DOUBLE,&var_arr[0]->mss_val);
+	mss_dbl=*var_arr[0]->mss_val.dp;      
+	cast_nctype_void(NC_DOUBLE,&var_arr[0]->mss_val);       
+      }   
+
+      for(mdx=0;mdx < m_sz/v_sz ; mdx++){  
+        long mcnt=0l;
+        long vmcnt=0l;        
+	ostringstream os; 
+        dpm=var_arr[1]->val.dp+mdx*v_sz;
+
+        // copy new values into input pointer !!
+        // dont want dpi and dpo the same
+        if(mdx >0)
+          memcpy(dpi,dpo, v_sz* sizeof(double));    
+
+	for(ldx=0; ldx<v_sz ; ldx++){
+	  //check mask  
+	  // if(dpm[ldx]==1.0 && dpi[ldx]==mss_dbl){  
+	  // if( dpi[ldx]==mss_dbl) dpo[ldx]=0.0; 
+	  // if(dpm[ldx]==1.0 && dpi[ldx]==mss_dbl){     
+	  if(dpi[ldx]==mss_dbl && dpm[ldx]==1.0){  
+	    int cnt=0;  
+	    int jdx;  
+	    long iX=ldx/y_sz;
+	    long iY= ldx -iX*y_sz;
+	    double sum=0.0;
+	    double Q[4]={mss_dbl,mss_dbl,mss_dbl,mss_dbl};
+	    mcnt++;
+       
+	    if(iY >0 )    Q[0]=dpi[ldx-1];
+	    if(iY+1<x_sz) Q[1]=dpi[ldx+1]; 
+	    if(iX>0 )     Q[2]=dpi[ldx-y_sz];
+	    if(iX+1 < x_sz) Q[3]=dpi[ldx+y_sz];   
+           
+	    for(jdx=0 ; jdx<4 ;jdx++){
+	      if(Q[jdx] !=mss_dbl) {
+		sum+=Q[jdx];              
+		cnt++; 
+	      }
+	    }
+	    if(cnt){ 
+	      dpo[ldx]=sum/cnt;
+	      vmcnt++;  
+	    } 
+
+	  } // end if
+
+	} // end for ldx 
+
+        if(nco_dbg_lvl_get() >= 2){ 
+	      os<< sfnm<<" mask num="<<mdx<<" : num missing="<<mcnt<<+" num processed="<<vmcnt;
+              dbg_prn(fnc_nm,os.str());
+	} 
+         
+      } // end for mdx
+    } 
+
+    // cast everything back to void,and free up
+    for(idx=0;idx<in_nbr_args;idx++){
+      (void)cast_nctype_void(NC_DOUBLE,&var_arr[idx]->val);
+      nco_var_free(var_arr[idx]);
+    } 
+
+    (void)cast_nctype_void(NC_DOUBLE,&var_out->val);    
+    // change back to input type  
+    var_out=nco_var_cnf_typ(in_typ,var_out);
+    
+
+    return var_out;
+
+
+  }// end  
+
+
+
 /*****************************************************************************************************************/
 /* ncap2 functions and methods */
 
diff --git a/src/nco++/fmc_all_cls.hh b/src/nco++/fmc_all_cls.hh
index 4840fa0..3fe893a 100644
--- a/src/nco++/fmc_all_cls.hh
+++ b/src/nco++/fmc_all_cls.hh
@@ -1,8 +1,9 @@
 /* Purpose: netCDF arithmetic processor class methods */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Standard C++ headers
 #ifndef FMC_ALL_CLS_HH
@@ -202,6 +203,18 @@ public:
   double clc_lin_ipl(double x1,double x2, double x, double Q0,double Q1);
 };
 
+
+//Miscellaneous Function /****************************************/	 
+ class misc_cls: public vtl_cls {	 
+ private:	 
+   enum {PMISC1, PMISC2, PMISC3 };	 
+    bool _flg_dbg;	 
+ public:	 
+   misc_cls(bool flg_dbg);	 
+   var_sct *fnd(RefAST expr, RefAST fargs,fmc_cls &fmc_obj, ncoTree &walker);	 
+ 	 
+ };	 
+ 	 
 // Co-ord class /*********************************************************/
 class cod_cls: public vtl_cls {
 private:
diff --git a/src/nco++/fmc_cls.hh b/src/nco++/fmc_cls.hh
index f1b7ae5..8daf511 100644
--- a/src/nco++/fmc_cls.hh
+++ b/src/nco++/fmc_cls.hh
@@ -1,8 +1,9 @@
 /* Purpose: netCDF arithmetic processor class methods */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Standard C++ headers
 #ifndef FMC_CLS_HH
diff --git a/src/nco++/fmc_gsl_cls.cc b/src/nco++/fmc_gsl_cls.cc
index 91338cc..5d29781 100644
--- a/src/nco++/fmc_gsl_cls.cc
+++ b/src/nco++/fmc_gsl_cls.cc
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/fmc_gsl_cls.cc,v 1.69 2014/02/17 23:12:39 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/fmc_gsl_cls.cc,v 1.70 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor class methods for GSL */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "fmc_gsl_cls.hh"
 #include "nco_gsl.h"
diff --git a/src/nco++/fmc_gsl_cls.hh b/src/nco++/fmc_gsl_cls.hh
index 0829c4e..2194642 100644
--- a/src/nco++/fmc_gsl_cls.hh
+++ b/src/nco++/fmc_gsl_cls.hh
@@ -1,8 +1,9 @@
 /* Purpose: netCDF arithmetic processor class methods */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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  
 #define FMC_GSL_CLS_HH
diff --git a/src/nco++/libnco++.hh b/src/nco++/libnco++.hh
index 5002ac6..f04083a 100644
--- a/src/nco++/libnco++.hh
+++ b/src/nco++/libnco++.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco++/libnco++.hh,v 1.21 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco++/libnco++.hh,v 1.22 2014/06/15 21:06:24 zender Exp $ 
 
 // Purpose: Prototypes, typedefs, and global variables for libnco++
 
-/* Copyright (C) 2006--2014 Charlie Zender
-   You may copy, distribute, and/or modify this software under the terms of the GNU General Public License (GPL) Version 2
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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
    Thus libnco++.a requires libnco.a to function correctly
diff --git a/src/nco++/ncap2.cc b/src/nco++/ncap2.cc
index d2ea09a..b489834 100644
--- a/src/nco++/ncap2.cc
+++ b/src/nco++/ncap2.cc
@@ -1,21 +1,19 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/ncap2.cc,v 1.189 2014/03/25 14:19:36 hmb Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncap2.cc,v 1.194 2014/08/11 11:41:26 hmb 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
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -72,9 +70,8 @@
 
 /* 3rd party vendors */
 #ifdef ENABLE_GSL
-#include <gsl/gsl_errno.h>
-#include <gsl/gsl_rng.h>
-
+# include <gsl/gsl_errno.h>
+# include <gsl/gsl_rng.h>
 #endif // !ENABLE_GSL
 
 /* Personal headers */
@@ -125,6 +122,8 @@ main(int argc,char **argv)
   nco_bool WRT_TMP_FL=True; /* [flg] Write output to temporary file */
   nco_bool flg_cln=True; /* [flg] Clean memory prior to exit */
   
+  aed_sct att_item; // Used to convert atts in vector to normal form  
+  
   char **fl_lst_abb=NULL_CEWI; /* Option n */
   char **fl_lst_in;
   char **var_lst_in=NULL_CEWI;
@@ -145,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.189 2014/03/25 14:19:36 hmb Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.189 $";
+  const char * const CVS_Id="$Id: ncap2.cc,v 1.194 2014/08/11 11:41:26 hmb Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.194 $";
   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 */
   
@@ -223,8 +222,6 @@ main(int argc,char **argv)
   var_sct **var_prc;
   var_sct **var_prc_out;
   
-  aed_sct att_item; // Used to convert atts in vector to normal form  
-  
   static struct option opt_lng[]=
     { /* Structure ordered by short option key if possible */
       /* Long options with no argument, no short option counterpart */
@@ -401,6 +398,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'F': /* Toggle index convention. Default is 0-based arrays (C-style). */
       FORTRAN_IDX_CNV=!FORTRAN_IDX_CNV;
@@ -521,8 +519,8 @@ main(int argc,char **argv)
   bil_cls bil_obj(true); 
   // Co-ordinates functions
   cod_cls cod_obj(true); 
-
-
+  // misc functions
+  misc_cls misc_obj(true); 
 
   // Populate vector
   (void)pop_fmc_vtr(fmc_vtr,&cnv_obj);
@@ -539,6 +537,7 @@ main(int argc,char **argv)
   (void)pop_fmc_vtr(fmc_vtr,&arr_obj);
   (void)pop_fmc_vtr(fmc_vtr,&bil_obj);
   (void)pop_fmc_vtr(fmc_vtr,&cod_obj);
+  (void)pop_fmc_vtr(fmc_vtr,&misc_obj);
 
 #ifdef ENABLE_GSL
 #ifdef ENABLE_NCO_GSL
@@ -738,6 +737,7 @@ main(int argc,char **argv)
     xtr_lst_a=nco_var_lst_mk(out_id,nbr_var_fl,(char**)NULL,False,False,&nbr_xtr);      
     for(idx=0;idx<nbr_var_fl;idx++){
       var_tmp=prs_arg.ncap_var_init(xtr_lst_a[idx].nm,false);
+
       Nvar=new NcapVar(var_tmp); 
       Nvar->flg_stt=2;   
       prs_arg.var_vtr.push(Nvar);
@@ -877,7 +877,7 @@ main(int argc,char **argv)
   /* Define non-processed vars */
   (void)nco_var_dfn(in_id,fl_out,out_id,var_out,xtr_nbr,(dmn_sct **)NULL,(int)0,nco_pck_plc_nil,nco_pck_map_nil,dfl_lvl);
   
-  /* Write out new attributes possibly overwriting old ones */
+  /* Write new attributes possibly overwriting old ones */
   for(idx=0;idx<var_vtr.size();idx++){
    
     if(var_vtr[idx]->xpr_typ == ncap_var){
@@ -887,35 +887,34 @@ main(int argc,char **argv)
       var_ref=var_vtr[idx]->var;
       rcd=nco_inq_varid_flg(out_id,var_ref->nm,&var_id);
       
-      /* filter out ram vars */ 
+      /* Filter-out RAM vars */ 
       if(rcd!=NC_NOERR || !var_ref->has_mss_val) continue;  
       
-      /* see if missing value already present */
+      /* Is missing value already present? */
       rcd_inq_att=nco_inq_att_flg(out_id,var_id,nco_mss_val_sng_get(),&att_item.type,&att_item.sz);
 
-      /* type mismatch dont overwrite. This can occur when packed vars are in output from using the -A switch */
-      if(rcd_inq_att==NC_NOERR && var_ref->type != att_item.type) continue;   
+      /* Do not overwrite if type mismatch, e.g., packed variable are in output with -A switch */
+      if(rcd_inq_att == NC_NOERR && var_ref->type != att_item.type) continue;   
 
-      /* fill mode and att exists */ 
-      if(prs_arg.NCAP4_FILL && rcd_inq_att==NC_NOERR){
+      /* Fill-mode and attribute exists */ 
+      if(prs_arg.NCAP4_FILL && rcd_inq_att == NC_NOERR){
         (void)nco_rename_att(out_id,var_id,nco_mss_val_sng_get(),att_nm_tmp);     
         (void)nco_put_att(out_id,var_id,att_nm_tmp,var_ref->type,1,var_ref->mss_val.vp);   
         (void)nco_rename_att(out_id,var_id,att_nm_tmp,nco_mss_val_sng_get());  
         continue;
-      }
+      } /* end if */
 
-      /* fill mode and att doesn't exist   */ 
-      if(prs_arg.NCAP4_FILL && rcd_inq_att!=NC_NOERR){
+      /* Fill-mode and attribute does not exist   */ 
+      if(prs_arg.NCAP4_FILL && rcd_inq_att != NC_NOERR){
         (void)nco_put_att(out_id,var_id,att_nm_tmp,var_ref->type,1,var_ref->mss_val.vp);
         (void)nco_rename_att(out_id,var_id,att_nm_tmp,nco_mss_val_sng_get());
         continue;
-      }
+      } /* end if */
 
-      /* netcdf3 file just put att */
+      /* netCDF3 file so just put attribute */
       (void)nco_put_att(out_id,var_id,nco_mss_val_sng_get(),var_ref->type,1,var_ref->mss_val.vp);      
       continue;
-    }
-   
+    } /* endif */
 
      /* Write misssing value contained inside variable */
      /* If missing value type is same as disk type  */  
@@ -958,15 +957,15 @@ main(int argc,char **argv)
     /* NB: These attributes should probably be written prior to last data mode */
     (void)nco_aed_prc(out_id,var_id,att_item);
     
- cln_up: ;
-   att_item.var_nm=(char*)nco_free(att_item.var_nm);
-   att_item.att_nm=(char*)nco_free(att_item.att_nm);
+  cln_up:
+    att_item.var_nm=(char*)nco_free(att_item.var_nm);
+    att_item.att_nm=(char*)nco_free(att_item.att_nm);
   } /* end for */
   
   /* Set chunksize parameters */
   if(fl_out_fmt == NC_FORMAT_NETCDF4 || fl_out_fmt == NC_FORMAT_NETCDF4_CLASSIC) (void)nco_cnk_sz_set(out_id,(lmt_msa_sct **)NULL_CEWI,(int)0,&cnk_map,&cnk_plc,cnk_sz_scl,cnk.cnk_dmn,cnk_nbr);
 
-  /* Turn off default filling behavior to enhance efficiency */
+  /* Turn-off default filling behavior to enhance efficiency */
   nco_set_fill(out_id,NC_NOFILL,&fll_md_old);
   
   /* Take output file out of define mode */
diff --git a/src/nco++/ncap2_utl.cc b/src/nco++/ncap2_utl.cc
index 0cab060..e2c5804 100644
--- a/src/nco++/ncap2_utl.cc
+++ b/src/nco++/ncap2_utl.cc
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.cc,v 1.158 2014/05/27 16:51:56 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.cc,v 1.159 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "ncap2_utl.hh"
 
diff --git a/src/nco++/ncap2_utl.hh b/src/nco++/ncap2_utl.hh
index 891ded2..1af0ed8 100644
--- a/src/nco++/ncap2_utl.hh
+++ b/src/nco++/ncap2_utl.hh
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.hh,v 1.20 2013/04/16 21:53:24 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncap2_utl.hh,v 1.21 2014/06/15 21:06:24 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--2008 Charlie Zender
-   You may copy, distribute, and/or modify this software under the terms of the GNU General Public License (GPL) Version 2
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "ncap.h" *//* netCDF arithmetic processor-specific definitions (symbol table, ...) */
diff --git a/src/nco++/ncoGrammer.g b/src/nco++/ncoGrammer.g
index 3a130bf..d76a84d 100644
--- a/src/nco++/ncoGrammer.g
+++ b/src/nco++/ncoGrammer.g
@@ -1,11 +1,12 @@
 header {
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoGrammer.g,v 1.206 2014/05/01 19:05:39 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoGrammer.g,v 1.207 2014/06/15 21:06:25 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 2005--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
     #include <assert.h>
diff --git a/src/nco++/ncoLexer.cpp b/src/nco++/ncoLexer.cpp
index 733ac94..da50109 100644
--- a/src/nco++/ncoLexer.cpp
+++ b/src/nco++/ncoLexer.cpp
@@ -1324,7 +1324,7 @@ void ncoLexer::mBLASTOUT(bool _createToken) {
 	ANTLR_USE_NAMESPACE(std)string::size_type _saveIndex;
 	
 	matchNot(EOF/*_CHAR*/);
-#line 435 "ncoGrammer.g"
+#line 436 "ncoGrammer.g"
 	
 	// blast out of lexer & parser
 	// Can't use RecognitionException() as 
@@ -1381,7 +1381,7 @@ void ncoLexer::mUNUSED_OPS(bool _createToken) {
 	}
 	}
 	}
-#line 451 "ncoGrammer.g"
+#line 452 "ncoGrammer.g"
 	
 	
 	ostringstream os;
@@ -1415,7 +1415,7 @@ void ncoLexer::mWS(bool _createToken) {
 	case 0x9 /* '\t' */ :
 	{
 		match('\t' /* charlit */ );
-#line 464 "ncoGrammer.g"
+#line 465 "ncoGrammer.g"
 		tab();
 #line 1421 "ncoLexer.cpp"
 		break;
@@ -1428,7 +1428,7 @@ void ncoLexer::mWS(bool _createToken) {
 	case 0xa /* '\n' */ :
 	{
 		match('\n' /* charlit */ );
-#line 464 "ncoGrammer.g"
+#line 465 "ncoGrammer.g"
 		newline();
 #line 1434 "ncoLexer.cpp"
 		break;
@@ -1439,7 +1439,7 @@ void ncoLexer::mWS(bool _createToken) {
 	}
 	}
 	}
-#line 465 "ncoGrammer.g"
+#line 466 "ncoGrammer.g"
 	_ttype = antlr::Token::SKIP;
 #line 1445 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
@@ -1469,7 +1469,7 @@ void ncoLexer::mCXX_COMMENT(bool _createToken) {
 	_loop149:;
 	} // ( ... )*
 	match('\n' /* charlit */ );
-#line 470 "ncoGrammer.g"
+#line 471 "ncoGrammer.g"
 	_ttype = antlr::Token::SKIP; newline();
 #line 1475 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
@@ -1510,7 +1510,7 @@ void ncoLexer::mC_COMMENT(bool _createToken) {
 			}
 			}
 			}
-#line 477 "ncoGrammer.g"
+#line 478 "ncoGrammer.g"
 			newline();
 #line 1516 "ncoLexer.cpp"
 		}
@@ -1527,7 +1527,7 @@ void ncoLexer::mC_COMMENT(bool _createToken) {
 	_loop154:;
 	} // ( ... )*
 	match("*/");
-#line 481 "ncoGrammer.g"
+#line 482 "ncoGrammer.g"
 	_ttype = antlr::Token::SKIP;
 #line 1533 "ncoLexer.cpp"
 	if ( _createToken && _token==ANTLR_USE_NAMESPACE(antlr)nullToken && _ttype!=ANTLR_USE_NAMESPACE(antlr)Token::SKIP ) {
@@ -1566,7 +1566,7 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 	}
 	
 	}
-#line 488 "ncoGrammer.g"
+#line 489 "ncoGrammer.g"
 	_ttype = DOUBLE;
 #line 1572 "ncoLexer.cpp"
 	{
@@ -1592,7 +1592,7 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 		}
 		}
 		}
-#line 489 "ncoGrammer.g"
+#line 490 "ncoGrammer.g"
 		_ttype = DOUBLE;
 #line 1598 "ncoLexer.cpp"
 		break;
@@ -1618,7 +1618,7 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 		}
 		}
 		}
-#line 490 "ncoGrammer.g"
+#line 491 "ncoGrammer.g"
 		_ttype = FLOAT;
 #line 1624 "ncoLexer.cpp"
 		break;
@@ -1644,7 +1644,7 @@ void ncoLexer::mNUMBER_DOT(bool _createToken) {
 		}
 		}
 		}
-#line 491 "ncoGrammer.g"
+#line 492 "ncoGrammer.g"
 		_ttype = DOUBLE;
 #line 1650 "ncoLexer.cpp"
 		break;
@@ -1681,7 +1681,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 	}
 	_loop165:;
 	}  // ( ... )+
-#line 496 "ncoGrammer.g"
+#line 497 "ncoGrammer.g"
 	_ttype = INT;
 #line 1687 "ncoLexer.cpp"
 	{
@@ -1736,7 +1736,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		
 		}
 		}
-#line 497 "ncoGrammer.g"
+#line 498 "ncoGrammer.g"
 		_ttype = DOUBLE;
 #line 1742 "ncoLexer.cpp"
 		break;
@@ -1747,7 +1747,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		{
 		mXPN(false);
 		}
-#line 498 "ncoGrammer.g"
+#line 499 "ncoGrammer.g"
 		_ttype = DOUBLE;
 #line 1753 "ncoLexer.cpp"
 		break;
@@ -1773,7 +1773,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 500 "ncoGrammer.g"
+#line 501 "ncoGrammer.g"
 		_ttype = SHORT;
 #line 1779 "ncoLexer.cpp"
 		break;
@@ -1799,7 +1799,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 501 "ncoGrammer.g"
+#line 502 "ncoGrammer.g"
 		_ttype = BYTE;
 #line 1805 "ncoLexer.cpp"
 		break;
@@ -1824,7 +1824,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 506 "ncoGrammer.g"
+#line 507 "ncoGrammer.g"
 			_ttype = UINT64;
 #line 1830 "ncoLexer.cpp"
 		}
@@ -1847,7 +1847,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 502 "ncoGrammer.g"
+#line 503 "ncoGrammer.g"
 			_ttype = UBYTE;
 #line 1853 "ncoLexer.cpp"
 		}
@@ -1870,7 +1870,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 503 "ncoGrammer.g"
+#line 504 "ncoGrammer.g"
 			_ttype = USHORT;
 #line 1876 "ncoLexer.cpp"
 		}
@@ -1893,7 +1893,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 505 "ncoGrammer.g"
+#line 506 "ncoGrammer.g"
 			_ttype = INT64;
 #line 1899 "ncoLexer.cpp"
 		}
@@ -1916,7 +1916,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			}
 			}
-#line 499 "ncoGrammer.g"
+#line 500 "ncoGrammer.g"
 			_ttype = INT;
 #line 1922 "ncoLexer.cpp"
 		}
@@ -1939,7 +1939,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 			}
 			
 			}
-#line 504 "ncoGrammer.g"
+#line 505 "ncoGrammer.g"
 			_ttype = UINT;
 #line 1945 "ncoLexer.cpp"
 		}
@@ -1970,7 +1970,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 508 "ncoGrammer.g"
+#line 509 "ncoGrammer.g"
 		_ttype = FLOAT;
 #line 1976 "ncoLexer.cpp"
 		break;
@@ -1996,7 +1996,7 @@ void ncoLexer::mNUMBER(bool _createToken) {
 		}
 		}
 		}
-#line 509 "ncoGrammer.g"
+#line 510 "ncoGrammer.g"
 		_ttype = DOUBLE;
 #line 2002 "ncoLexer.cpp"
 		break;
@@ -2104,7 +2104,7 @@ void ncoLexer::mVAR_ATT(bool _createToken) {
 	}
 	_loop188:;
 	} // ( ... )*
-#line 516 "ncoGrammer.g"
+#line 517 "ncoGrammer.g"
 	
 	// try to intelligently guess the type to avoid un-necessary function search  
 	bool bDoSearch;
@@ -2226,7 +2226,7 @@ void ncoLexer::mVAR_ATT(bool _createToken) {
 		}
 		_loop192:;
 		} // ( ... )*
-#line 548 "ncoGrammer.g"
+#line 549 "ncoGrammer.g"
 		_ttype = ATT_ID;
 #line 2232 "ncoLexer.cpp"
 	}
@@ -2254,7 +2254,7 @@ void ncoLexer::mVAR_ATT_QT(bool _createToken) {
 	text.erase(_saveIndex);
 	}
 	mVAR_NM_QT(false);
-#line 553 "ncoGrammer.g"
+#line 554 "ncoGrammer.g"
 	_ttype = VAR_ID;
 #line 2260 "ncoLexer.cpp"
 	{
@@ -2263,7 +2263,7 @@ void ncoLexer::mVAR_ATT_QT(bool _createToken) {
 	{
 		match('@' /* charlit */ );
 		mVAR_NM_QT(false);
-#line 554 "ncoGrammer.g"
+#line 555 "ncoGrammer.g"
 		_ttype = ATT_ID;
 #line 2269 "ncoLexer.cpp"
 		break;
@@ -2306,7 +2306,7 @@ void ncoLexer::mDIM_QT(bool _createToken) {
 	match('$' /* charlit */ );
 	text.erase(_saveIndex);
 	mVAR_NM_QT(false);
-#line 560 "ncoGrammer.g"
+#line 561 "ncoGrammer.g"
 	_ttype = DIM_ID;
 #line 2312 "ncoLexer.cpp"
 	}
@@ -2320,7 +2320,7 @@ void ncoLexer::mDIM_QT(bool _createToken) {
 		_saveIndex = text.length();
 		match(".size");
 		text.erase(_saveIndex);
-#line 562 "ncoGrammer.g"
+#line 563 "ncoGrammer.g"
 		_ttype = DIM_ID_SIZE;
 #line 2326 "ncoLexer.cpp"
 	}
@@ -2429,7 +2429,7 @@ void ncoLexer::mDIM_VAL(bool _createToken) {
 	}
 	_loop205:;
 	} // ( ... )*
-#line 567 "ncoGrammer.g"
+#line 568 "ncoGrammer.g"
 	_ttype = DIM_ID;
 #line 2435 "ncoLexer.cpp"
 	{
@@ -2437,7 +2437,7 @@ void ncoLexer::mDIM_VAL(bool _createToken) {
 		_saveIndex = text.length();
 		match(".size");
 		text.erase(_saveIndex);
-#line 569 "ncoGrammer.g"
+#line 570 "ncoGrammer.g"
 		_ttype = DIM_ID_SIZE;
 #line 2443 "ncoLexer.cpp"
 	}
@@ -2508,7 +2508,7 @@ void ncoLexer::mNSTRING(bool _createToken) {
 	_saveIndex = text.length();
 	match('\"' /* charlit */ );
 	text.erase(_saveIndex);
-#line 582 "ncoGrammer.g"
+#line 583 "ncoGrammer.g"
 	_ttype = NSTRING;
 #line 2514 "ncoLexer.cpp"
 	{
@@ -2516,7 +2516,7 @@ void ncoLexer::mNSTRING(bool _createToken) {
 		_saveIndex = text.length();
 		match('s' /* charlit */ );
 		text.erase(_saveIndex);
-#line 583 "ncoGrammer.g"
+#line 584 "ncoGrammer.g"
 		_ttype = N4STRING;
 #line 2522 "ncoLexer.cpp"
 	}
@@ -2561,7 +2561,7 @@ void ncoLexer::mINCLUDE(bool _createToken) {
 	}
 	mNSTRING(true);
 	f=_returnToken;
-#line 588 "ncoGrammer.g"
+#line 589 "ncoGrammer.g"
 	
 			// ANTLR_USING_NAMESPACE(std)
 			// create lexer to handle include
diff --git a/src/nco++/ncoLexer.hpp b/src/nco++/ncoLexer.hpp
index 433654d..bfc9877 100644
--- a/src/nco++/ncoLexer.hpp
+++ b/src/nco++/ncoLexer.hpp
@@ -10,13 +10,14 @@
 #include <antlr/CharScanner.hpp>
 #line 1 "ncoGrammer.g"
 
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoLexer.hpp,v 1.130 2014/05/02 03:08:27 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoLexer.hpp,v 1.135 2014/06/16 23:04:51 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 2005--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
     #include <assert.h>
@@ -49,10 +50,10 @@
     ANTLR_USING_NAMESPACE(std);
     ANTLR_USING_NAMESPACE(antlr);
 
-#line 53 "ncoLexer.hpp"
+#line 54 "ncoLexer.hpp"
 class CUSTOM_API ncoLexer : public ANTLR_USE_NAMESPACE(antlr)CharScanner, public ncoParserTokenTypes
 {
-#line 322 "ncoGrammer.g"
+#line 323 "ncoGrammer.g"
 
 private:
     prs_cls *prs_arg;
@@ -81,7 +82,7 @@ public:
 		}
 		// else ANTLR_USE_NAMESPACE(std)cout << "Hit EOF of main file" << ANTLR_USE_NAMESPACE(std)endl;
 	}
-#line 57 "ncoLexer.hpp"
+#line 58 "ncoLexer.hpp"
 private:
 	void initLiterals();
 public:
diff --git a/src/nco++/ncoParser.cpp b/src/nco++/ncoParser.cpp
index 976adc0..8ccd33c 100644
--- a/src/nco++/ncoParser.cpp
+++ b/src/nco++/ncoParser.cpp
@@ -88,7 +88,7 @@ void ncoParser::statement() {
 		astFactory->addASTChild( currentAST, returnAST );
 		match(SEMI);
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 93 "ncoGrammer.g"
+#line 94 "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))); 
@@ -171,7 +171,7 @@ void ncoParser::statement() {
 	{
 		match(SEMI);
 		statement_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 110 "ncoGrammer.g"
+#line 111 "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"
 		currentAST.root = statement_AST;
@@ -499,7 +499,7 @@ void ncoParser::block() {
 	} // ( ... )*
 	match(RCURL);
 	block_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 131 "ncoGrammer.g"
+#line 132 "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"
 	currentAST.root = block_AST;
@@ -618,7 +618,7 @@ void ncoParser::lmt() {
 	_loop20:;
 	} // ( ... )*
 	lmt_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 144 "ncoGrammer.g"
+#line 145 "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"
 	currentAST.root = lmt_AST;
@@ -656,7 +656,7 @@ void ncoParser::lmt_list() {
 	} // ( ... )*
 	match(RPAREN);
 	lmt_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 148 "ncoGrammer.g"
+#line 149 "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"
 	currentAST.root = lmt_list_AST;
@@ -738,7 +738,7 @@ void ncoParser::dmn_list() {
 	} // ( ... )*
 	match(RSQUARE);
 	dmn_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 156 "ncoGrammer.g"
+#line 157 "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"
 	currentAST.root = dmn_list_AST;
@@ -820,7 +820,7 @@ void ncoParser::dmn_arg_list() {
 	} // ( ... )*
 	match(DIVIDE);
 	dmn_arg_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 162 "ncoGrammer.g"
+#line 163 "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"
 	currentAST.root = dmn_arg_list_AST;
@@ -858,7 +858,7 @@ void ncoParser::value_list() {
 	} // ( ... )*
 	match(RCURL);
 	value_list_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 167 "ncoGrammer.g"
+#line 168 "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"
 	currentAST.root = value_list_AST;
@@ -1051,7 +1051,7 @@ void ncoParser::func_arg() {
 	} // ( ... )*
 	match(RPAREN);
 	func_arg_AST = ANTLR_USE_NAMESPACE(antlr)RefAST(currentAST.root);
-#line 174 "ncoGrammer.g"
+#line 175 "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"
 	currentAST.root = func_arg_AST;
@@ -1362,7 +1362,7 @@ void ncoParser::unaryleft_exp() {
 		in_AST = astFactory->create(in);
 		astFactory->makeASTRoot(currentAST, in_AST);
 		match(INC);
-#line 191 "ncoGrammer.g"
+#line 192 "ncoGrammer.g"
 		in_AST->setType(POST_INC);
 		in_AST->setText("POST_INC");
 #line 1369 "ncoParser.cpp"
@@ -1374,7 +1374,7 @@ void ncoParser::unaryleft_exp() {
 		de_AST = astFactory->create(de);
 		astFactory->makeASTRoot(currentAST, de_AST);
 		match(DEC);
-#line 193 "ncoGrammer.g"
+#line 194 "ncoGrammer.g"
 		de_AST->setType(POST_DEC);
 		de_AST->setText("POST_DEC");
 #line 1381 "ncoParser.cpp"
@@ -1483,7 +1483,7 @@ void ncoParser::unary_exp() {
 			ur_AST = astFactory->create(ur);
 			astFactory->makeASTRoot(currentAST, ur_AST);
 			match(TIMES);
-#line 206 "ncoGrammer.g"
+#line 207 "ncoGrammer.g"
 			ur_AST->setType(UTIMES);ur_AST->setText("UTIMES");
 #line 1489 "ncoParser.cpp"
 			break;
diff --git a/src/nco++/ncoParser.hpp b/src/nco++/ncoParser.hpp
index ef14240..699aba9 100644
--- a/src/nco++/ncoParser.hpp
+++ b/src/nco++/ncoParser.hpp
@@ -10,13 +10,14 @@
 
 #line 1 "ncoGrammer.g"
 
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoParser.hpp,v 1.127 2014/05/02 03:08:27 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoParser.hpp,v 1.132 2014/06/16 23:04:51 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 2005--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
     #include <assert.h>
@@ -49,15 +50,15 @@
     ANTLR_USING_NAMESPACE(std);
     ANTLR_USING_NAMESPACE(antlr);
 
-#line 53 "ncoParser.hpp"
+#line 54 "ncoParser.hpp"
 class CUSTOM_API ncoParser : public ANTLR_USE_NAMESPACE(antlr)LLkParser, public ncoParserTokenTypes
 {
-#line 81 "ncoGrammer.g"
+#line 82 "ncoGrammer.g"
 
 
 public:
    std::vector<std::string> inc_vtr;
-#line 57 "ncoParser.hpp"
+#line 58 "ncoParser.hpp"
 public:
 	void initializeASTFactory( ANTLR_USE_NAMESPACE(antlr)ASTFactory& factory );
 protected:
diff --git a/src/nco++/ncoTree.cpp b/src/nco++/ncoTree.cpp
index 1c1621c..8329908 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 956 "ncoGrammer.g"
+#line 957 "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 958 "ncoGrammer.g"
+#line 959 "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 969 "ncoGrammer.g"
+#line 970 "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;
@@ -71,7 +71,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 	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 969 "ncoGrammer.g"
+#line 970 "ncoGrammer.g"
 	
 	var_sct *var;
 	const std::string fnc_nm("statements");
@@ -92,7 +92,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,BLOCK);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 978 "ncoGrammer.g"
+#line 979 "ncoGrammer.g"
 				
 				//std::cout <<"Num of Children in block="<<blk->getNumberOfChildren()<<endl;
 				iret=run_exe(blk->getFirstChild(),lpp_vtr.size() );
@@ -114,7 +114,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t219;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 984 "ncoGrammer.g"
+#line 985 "ncoGrammer.g"
 				
 				RefAST tr;
 				RefAST ntr;  
@@ -151,7 +151,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t220;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1008 "ncoGrammer.g"
+#line 1009 "ncoGrammer.g"
 				
 				
 				var=out(fss);
@@ -177,7 +177,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t221;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1016 "ncoGrammer.g"
+#line 1017 "ncoGrammer.g"
 				
 				//if can have only 3 or 4 parts  , 1 node and 2 or 3 siblings
 				// IF LOGICAL_EXP STATEMENT1 STATEMENT2
@@ -225,7 +225,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t222;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1046 "ncoGrammer.g"
+#line 1047 "ncoGrammer.g"
 				
 				// convert mask to short 
 				RefAST tr; 
@@ -288,7 +288,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t223;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1090 "ncoGrammer.g"
+#line 1091 "ncoGrammer.g"
 				
 				
 				bool br;
@@ -342,7 +342,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t224;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1119 "ncoGrammer.g"
+#line 1120 "ncoGrammer.g"
 				
 				bool b1,b2,b3,br;
 				var_sct *var_f1;
@@ -403,7 +403,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,ELSE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1170 "ncoGrammer.g"
+#line 1171 "ncoGrammer.g"
 				iret=ELSE;
 #line 409 "ncoTree.cpp"
 			}
@@ -415,7 +415,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,BREAK);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1171 "ncoGrammer.g"
+#line 1172 "ncoGrammer.g"
 				iret=BREAK;
 #line 421 "ncoTree.cpp"
 			}
@@ -427,7 +427,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,CONTINUE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1172 "ncoGrammer.g"
+#line 1173 "ncoGrammer.g"
 				iret=CONTINUE;
 #line 433 "ncoTree.cpp"
 			}
@@ -439,7 +439,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,NULL_NODE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1173 "ncoGrammer.g"
+#line 1174 "ncoGrammer.g"
 				iret=NULL_NODE;
 #line 445 "ncoTree.cpp"
 			}
@@ -459,7 +459,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t225;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1175 "ncoGrammer.g"
+#line 1176 "ncoGrammer.g"
 				
 				
 				long sz;
@@ -513,7 +513,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				_t = __t229;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1188 "ncoGrammer.g"
+#line 1189 "ncoGrammer.g"
 					
 					
 					int var_id;
@@ -601,7 +601,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 					_t = __t233;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1234 "ncoGrammer.g"
+#line 1235 "ncoGrammer.g"
 						
 						
 						int apsn;
@@ -697,7 +697,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 						_t = __t237;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1289 "ncoGrammer.g"
+#line 1290 "ncoGrammer.g"
 							
 							char *prn_sng;
 							
@@ -731,7 +731,7 @@ int  ncoTree::statements(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 }
 
 var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 1835 "ncoGrammer.g"
+#line 1836 "ncoGrammer.g"
 	var_sct *var;
 #line 737 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST out_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
@@ -765,7 +765,7 @@ 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 1835 "ncoGrammer.g"
+#line 1836 "ncoGrammer.g"
 	
 	const std::string fnc_nm("out"); 
 		var_sct *var1;
@@ -791,7 +791,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t305;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1862 "ncoGrammer.g"
+#line 1863 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, TIMES );
 #line 797 "ncoTree.cpp"
 			}
@@ -810,7 +810,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t306;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1865 "ncoGrammer.g"
+#line 1866 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, DIVIDE );
 #line 816 "ncoTree.cpp"
 			}
@@ -829,7 +829,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t307;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1867 "ncoGrammer.g"
+#line 1868 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, MOD);
 #line 835 "ncoTree.cpp"
 			}
@@ -848,7 +848,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t308;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1869 "ncoGrammer.g"
+#line 1870 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, CARET);
 #line 854 "ncoTree.cpp"
 			}
@@ -865,7 +865,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t309;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1872 "ncoGrammer.g"
+#line 1873 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,NULL_CEWI, LNOT );
 #line 871 "ncoTree.cpp"
 			}
@@ -882,7 +882,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t312;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1878 "ncoGrammer.g"
+#line 1879 "ncoGrammer.g"
 				var=ncap_var_var_inc(var1,NULL_CEWI,INC,false,prs_arg);
 #line 888 "ncoTree.cpp"
 			}
@@ -899,7 +899,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t313;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1880 "ncoGrammer.g"
+#line 1881 "ncoGrammer.g"
 				var=ncap_var_var_inc(var1,NULL_CEWI, DEC,false,prs_arg );
 #line 905 "ncoTree.cpp"
 			}
@@ -916,7 +916,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t314;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1882 "ncoGrammer.g"
+#line 1883 "ncoGrammer.g"
 				
 				var=ncap_var_var_inc(var1,NULL_CEWI,POST_INC,false,prs_arg);
 				
@@ -935,7 +935,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t315;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1885 "ncoGrammer.g"
+#line 1886 "ncoGrammer.g"
 				
 				var=ncap_var_var_inc(var1,NULL_CEWI,POST_DEC,false,prs_arg);
 				
@@ -956,7 +956,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t316;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1890 "ncoGrammer.g"
+#line 1891 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LAND );
 #line 962 "ncoTree.cpp"
 			}
@@ -975,7 +975,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t317;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1892 "ncoGrammer.g"
+#line 1893 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LOR );
 #line 981 "ncoTree.cpp"
 			}
@@ -994,7 +994,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t318;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1895 "ncoGrammer.g"
+#line 1896 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LTHAN );
 #line 1000 "ncoTree.cpp"
 			}
@@ -1013,7 +1013,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t319;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1897 "ncoGrammer.g"
+#line 1898 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, GTHAN );
 #line 1019 "ncoTree.cpp"
 			}
@@ -1032,7 +1032,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t320;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1899 "ncoGrammer.g"
+#line 1900 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, GEQ );
 #line 1038 "ncoTree.cpp"
 			}
@@ -1051,7 +1051,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t321;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1901 "ncoGrammer.g"
+#line 1902 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, LEQ );
 #line 1057 "ncoTree.cpp"
 			}
@@ -1070,7 +1070,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t322;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1903 "ncoGrammer.g"
+#line 1904 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, EQ );
 #line 1076 "ncoTree.cpp"
 			}
@@ -1089,7 +1089,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t323;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1905 "ncoGrammer.g"
+#line 1906 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, NEQ );
 #line 1095 "ncoTree.cpp"
 			}
@@ -1108,7 +1108,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t324;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1908 "ncoGrammer.g"
+#line 1909 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, FLTHAN );
 #line 1114 "ncoTree.cpp"
 			}
@@ -1127,7 +1127,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t325;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1910 "ncoGrammer.g"
+#line 1911 "ncoGrammer.g"
 				var=ncap_var_var_op(var1,var2, FGTHAN );
 #line 1133 "ncoTree.cpp"
 			}
@@ -1147,7 +1147,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t326;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1912 "ncoGrammer.g"
+#line 1913 "ncoGrammer.g"
 				
 				var1=out_asn(pls_asn);
 				var=ncap_var_var_inc(var1,var2, PLUS_ASSIGN ,(pls_asn->getType()==UTIMES), prs_arg);
@@ -1170,7 +1170,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t327;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1916 "ncoGrammer.g"
+#line 1917 "ncoGrammer.g"
 				
 				var1=out_asn(min_asn);
 				var=ncap_var_var_inc(var1,var2, MINUS_ASSIGN ,(min_asn->getType()==UTIMES), prs_arg);
@@ -1193,7 +1193,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t328;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1920 "ncoGrammer.g"
+#line 1921 "ncoGrammer.g"
 				
 				var1=out_asn(tim_asn);
 				var=ncap_var_var_inc(var1,var2, TIMES_ASSIGN ,(tim_asn->getType()==UTIMES), prs_arg);
@@ -1216,7 +1216,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t329;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1924 "ncoGrammer.g"
+#line 1925 "ncoGrammer.g"
 					
 				var1=out_asn(div_asn);
 				var=ncap_var_var_inc(var1,var2, DIVIDE_ASSIGN ,(div_asn->getType()==UTIMES), prs_arg);
@@ -1237,7 +1237,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t330;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1930 "ncoGrammer.g"
+#line 1931 "ncoGrammer.g"
 				
 				// Check for RAM variable - if present 
 				// change tree - for example from:
@@ -1288,7 +1288,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t331;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1964 "ncoGrammer.g"
+#line 1965 "ncoGrammer.g"
 				
 				
 				
@@ -1310,7 +1310,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t332;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1969 "ncoGrammer.g"
+#line 1970 "ncoGrammer.g"
 				
 				bool br;
 				
@@ -1343,7 +1343,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t333;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1987 "ncoGrammer.g"
+#line 1988 "ncoGrammer.g"
 				
 				// The lexer has appended the index of the function to the function name m - (name#index)
 				//  the index is into fmc_vtr  
@@ -1375,7 +1375,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t334;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1998 "ncoGrammer.g"
+#line 1999 "ncoGrammer.g"
 				
 				// The lexer has appended the index of the function to the function name m - (name#index)
 				//  the index is into fmc_vtr  
@@ -1394,7 +1394,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,DIM_ID_SIZE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2008 "ncoGrammer.g"
+#line 2009 "ncoGrammer.g"
 				
 				string sDim=dval->getText();
 				dmn_sct *dmn_fd;
@@ -1444,7 +1444,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,ATT_ID);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2080 "ncoGrammer.g"
+#line 2081 "ncoGrammer.g"
 				
 				
 				NcapVar *Nvar=NULL;
@@ -1484,7 +1484,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,VALUE_LIST);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2111 "ncoGrammer.g"
+#line 2112 "ncoGrammer.g"
 				
 				var=value_list(vlst);
 				
@@ -1498,7 +1498,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,NSTRING);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2116 "ncoGrammer.g"
+#line 2117 "ncoGrammer.g"
 				
 				char *tsng;
 				
@@ -1530,7 +1530,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,N4STRING);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2139 "ncoGrammer.g"
+#line 2140 "ncoGrammer.g"
 				
 				char *tsng;
 				
@@ -1568,7 +1568,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,FLOAT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2169 "ncoGrammer.g"
+#line 2170 "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"
 			}
@@ -1580,7 +1580,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,DOUBLE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2171 "ncoGrammer.g"
+#line 2172 "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"
 			}
@@ -1592,7 +1592,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,INT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2173 "ncoGrammer.g"
+#line 2174 "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"
 			}
@@ -1604,7 +1604,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,SHORT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2175 "ncoGrammer.g"
+#line 2176 "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"
 			}
@@ -1616,7 +1616,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,BYTE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2177 "ncoGrammer.g"
+#line 2178 "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"
 			}
@@ -1628,7 +1628,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,UBYTE);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2182 "ncoGrammer.g"
+#line 2183 "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"
 			}
@@ -1640,7 +1640,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,USHORT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2186 "ncoGrammer.g"
+#line 2187 "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"
 			}
@@ -1652,7 +1652,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,UINT);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2188 "ncoGrammer.g"
+#line 2189 "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"
 			}
@@ -1664,7 +1664,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,INT64);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2190 "ncoGrammer.g"
+#line 2191 "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"
 			}
@@ -1676,7 +1676,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,UINT64);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2194 "ncoGrammer.g"
+#line 2195 "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"
 			}
@@ -1722,7 +1722,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 				_t = __t276;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1845 "ncoGrammer.g"
+#line 1846 "ncoGrammer.g"
 					var=ncap_var_var_op(var1,var2, PLUS );
 #line 1728 "ncoTree.cpp"
 				}
@@ -1767,7 +1767,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 					_t = __t280;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1847 "ncoGrammer.g"
+#line 1848 "ncoGrammer.g"
 						var=ncap_var_var_op(var1,var2, MINUS );
 #line 1773 "ncoTree.cpp"
 					}
@@ -1820,7 +1820,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 						_t = __t285;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1848 "ncoGrammer.g"
+#line 1849 "ncoGrammer.g"
 							
 							var=ncap_var_var_inc(var1,NULL_CEWI,POST_INC,true,prs_arg);      
 							
@@ -1875,7 +1875,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 							_t = __t291;
 							_t = _t->getNextSibling();
 							if ( inputState->guessing==0 ) {
-#line 1851 "ncoGrammer.g"
+#line 1852 "ncoGrammer.g"
 								
 								var=ncap_var_var_inc(var1,NULL_CEWI,POST_DEC,true,prs_arg);      
 								
@@ -1930,7 +1930,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 								_t = __t297;
 								_t = _t->getNextSibling();
 								if ( inputState->guessing==0 ) {
-#line 1854 "ncoGrammer.g"
+#line 1855 "ncoGrammer.g"
 									
 									var=ncap_var_var_inc(var1,NULL_CEWI,INC,true,prs_arg);      
 									
@@ -1985,7 +1985,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 									_t = __t303;
 									_t = _t->getNextSibling();
 									if ( inputState->guessing==0 ) {
-#line 1857 "ncoGrammer.g"
+#line 1858 "ncoGrammer.g"
 										
 										var=ncap_var_var_inc(var1,NULL_CEWI,DEC,true,prs_arg);      
 										
@@ -2002,7 +2002,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 									_t = __t310;
 									_t = _t->getNextSibling();
 									if ( inputState->guessing==0 ) {
-#line 1874 "ncoGrammer.g"
+#line 1875 "ncoGrammer.g"
 										var=ncap_var_var_op(var1,NULL_CEWI, MINUS );
 #line 2008 "ncoTree.cpp"
 									}
@@ -2055,7 +2055,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 										_t = __t338;
 										_t = _t->getNextSibling();
 										if ( inputState->guessing==0 ) {
-#line 2049 "ncoGrammer.g"
+#line 2050 "ncoGrammer.g"
 											
 											// see if hyperslab limit is a single value
 											if(lmt->getNumberOfChildren()==1 && 
@@ -2075,7 +2075,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 										match(_t,VAR_ID);
 										_t = _t->getNextSibling();
 										if ( inputState->guessing==0 ) {
-#line 2063 "ncoGrammer.g"
+#line 2064 "ncoGrammer.g"
 											
 											
 											var=prs_arg->ncap_var_init(v->getText(),true);
@@ -2115,7 +2115,7 @@ var_sct * ncoTree::out(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	bool bram
 ) {
-#line 1303 "ncoGrammer.g"
+#line 1304 "ncoGrammer.g"
 	var_sct *var;
 #line 2121 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST assign_ntl_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
@@ -2127,7 +2127,7 @@ 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 1303 "ncoGrammer.g"
+#line 1304 "ncoGrammer.g"
 	
 	const std::string fnc_nm("assign_ntl"); 
 	var=NULL_CEWI;
@@ -2172,7 +2172,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 			_t = __t242;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1308 "ncoGrammer.g"
+#line 1309 "ncoGrammer.g"
 				
 				
 				std::string var_nm; 
@@ -2242,7 +2242,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				_t = __t246;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1337 "ncoGrammer.g"
+#line 1338 "ncoGrammer.g"
 					
 					
 					int idx;
@@ -2319,7 +2319,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				match(_t,VAR_ID);
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1406 "ncoGrammer.g"
+#line 1407 "ncoGrammer.g"
 					
 					
 					std::string var_nm;
@@ -2389,7 +2389,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 					_t = __t250;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1435 "ncoGrammer.g"
+#line 1436 "ncoGrammer.g"
 						
 						;
 						
@@ -2434,7 +2434,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 						_t = __t254;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1438 "ncoGrammer.g"
+#line 1439 "ncoGrammer.g"
 							
 							;
 							
@@ -2446,7 +2446,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 						match(_t,ATT_ID);
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1441 "ncoGrammer.g"
+#line 1442 "ncoGrammer.g"
 							
 							
 							//In Initial scan all newly defined atts are flagged as Undefined
@@ -2488,7 +2488,7 @@ var_sct * ncoTree::assign_ntl(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	bool bram
 ) {
-#line 1461 "ncoGrammer.g"
+#line 1462 "ncoGrammer.g"
 	var_sct *var;
 #line 2494 "ncoTree.cpp"
 	ANTLR_USE_NAMESPACE(antlr)RefAST assign_AST_in = (_t == ANTLR_USE_NAMESPACE(antlr)RefAST(ASTNULL)) ? ANTLR_USE_NAMESPACE(antlr)nullAST : _t;
@@ -2500,7 +2500,7 @@ 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 1461 "ncoGrammer.g"
+#line 1462 "ncoGrammer.g"
 	
 	const std::string fnc_nm("assign"); 
 	var=NULL_CEWI;
@@ -2545,7 +2545,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 			_t = __t259;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 1467 "ncoGrammer.g"
+#line 1468 "ncoGrammer.g"
 				
 				
 				int idx;
@@ -2779,7 +2779,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				_t = __t263;
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1661 "ncoGrammer.g"
+#line 1662 "ncoGrammer.g"
 					
 					
 					var_sct *var1;
@@ -2866,7 +2866,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 				match(_t,VAR_ID);
 				_t = _t->getNextSibling();
 				if ( inputState->guessing==0 ) {
-#line 1740 "ncoGrammer.g"
+#line 1741 "ncoGrammer.g"
 					
 					// Set class wide variables
 					var_sct *var1;
@@ -2961,7 +2961,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 					_t = __t267;
 					_t = _t->getNextSibling();
 					if ( inputState->guessing==0 ) {
-#line 1794 "ncoGrammer.g"
+#line 1795 "ncoGrammer.g"
 						
 						;
 						
@@ -3006,7 +3006,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 						_t = __t271;
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1797 "ncoGrammer.g"
+#line 1798 "ncoGrammer.g"
 							
 							;
 							
@@ -3018,7 +3018,7 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 						match(_t,ATT_ID);
 						_t = _t->getNextSibling();
 						if ( inputState->guessing==0 ) {
-#line 1800 "ncoGrammer.g"
+#line 1801 "ncoGrammer.g"
 							
 							
 							var_sct *var1;
@@ -3074,14 +3074,14 @@ var_sct * ncoTree::assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 }
 
 var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2204 "ncoGrammer.g"
+#line 2205 "ncoGrammer.g"
 	var_sct *var;
 #line 3080 "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 2204 "ncoGrammer.g"
+#line 2205 "ncoGrammer.g"
 	
 	const std::string fnc_nm("assign_asn");
 	var=NULL_CEWI; 
@@ -3104,7 +3104,7 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			_t = __t340;
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2211 "ncoGrammer.g"
+#line 2212 "ncoGrammer.g"
 				
 				if(vid1->getFirstChild())
 				err_prn(fnc_nm,"Invalid Lvalue " +vid1->getText() );
@@ -3125,7 +3125,7 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,VAR_ID);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2222 "ncoGrammer.g"
+#line 2223 "ncoGrammer.g"
 				
 				if(vid->getFirstChild())
 				err_prn(fnc_nm,"Invalid Lvalue " +vid->getText() );
@@ -3146,7 +3146,7 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 			match(_t,ATT_ID);
 			_t = _t->getNextSibling();
 			if ( inputState->guessing==0 ) {
-#line 2233 "ncoGrammer.g"
+#line 2234 "ncoGrammer.g"
 				
 				// check "output"
 				NcapVar *Nvar=NULL;
@@ -3203,12 +3203,12 @@ var_sct * ncoTree::out_asn(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 }
 
 var_sct * ncoTree::value_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2267 "ncoGrammer.g"
+#line 2268 "ncoGrammer.g"
 	var_sct *var;
 #line 3209 "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 2267 "ncoGrammer.g"
+#line 2268 "ncoGrammer.g"
 	
 	const std::string fnc_nm("value_list");
 	var=NULL_CEWI; 
@@ -3222,7 +3222,7 @@ var_sct * ncoTree::value_list(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		_t = _t->getNextSibling();
 		}
 		if ( inputState->guessing==0 ) {
-#line 2272 "ncoGrammer.g"
+#line 2273 "ncoGrammer.g"
 			
 			
 			char *cp;
@@ -3329,11 +3329,11 @@ 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 2363 "ncoGrammer.g"
+#line 2364 "ncoGrammer.g"
 	var_sct *var;
 #line 3335 "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 2363 "ncoGrammer.g"
+#line 2364 "ncoGrammer.g"
 	
 	const std::string fnc_nm("value_list_string");
 	var=NULL_CEWI; 
@@ -3342,7 +3342,7 @@ var_sct * ncoTree::value_list_string(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 	
 	try {      // for error handling
 		if ( inputState->guessing==0 ) {
-#line 2369 "ncoGrammer.g"
+#line 2370 "ncoGrammer.g"
 			
 			int idx;
 			int nbr_lst;
@@ -3410,12 +3410,12 @@ 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 2420 "ncoGrammer.g"
+#line 2421 "ncoGrammer.g"
 	bool bret;
 #line 3416 "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 2420 "ncoGrammer.g"
+#line 2421 "ncoGrammer.g"
 	
 	const std::string fnc_nm("where_assign");
 	var_sct *var_rhs;
@@ -3442,7 +3442,7 @@ bool  ncoTree::where_assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 		_t = __t345;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2426 "ncoGrammer.g"
+#line 2427 "ncoGrammer.g"
 			
 			
 			bool bfr=false;
@@ -3591,12 +3591,12 @@ bool  ncoTree::where_assign(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 }
 
 var_sct * ncoTree::var_lmt_one(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
-#line 2561 "ncoGrammer.g"
+#line 2562 "ncoGrammer.g"
 	var_sct *var;
 #line 3597 "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 2561 "ncoGrammer.g"
+#line 2562 "ncoGrammer.g"
 	
 	const std::string fnc_nm("var_lmt_one");
 	var=NULL_CEWI; 
@@ -3626,7 +3626,7 @@ var_sct * ncoTree::var_lmt_one(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		_t = __t348;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2567 "ncoGrammer.g"
+#line 2568 "ncoGrammer.g"
 			
 			
 			int idx;
@@ -3746,12 +3746,12 @@ 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 2671 "ncoGrammer.g"
+#line 2672 "ncoGrammer.g"
 	var_sct *var;
 #line 3752 "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 2671 "ncoGrammer.g"
+#line 2672 "ncoGrammer.g"
 	
 	const std::string fnc_nm("var_lmt_one_lhs");
 	var=NULL_CEWI; 
@@ -3781,7 +3781,7 @@ var_sct * ncoTree::var_lmt_one_lhs(ANTLR_USE_NAMESPACE(antlr)RefAST _t,
 		_t = __t352;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2677 "ncoGrammer.g"
+#line 2678 "ncoGrammer.g"
 			
 			int idx; 
 			int var_id; 
@@ -3943,13 +3943,13 @@ 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 2824 "ncoGrammer.g"
+#line 2825 "ncoGrammer.g"
 	var_sct *var;
 #line 3949 "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 2824 "ncoGrammer.g"
+#line 2825 "ncoGrammer.g"
 	
 	const std::string fnc_nm("var_lmt");
 	var=NULL_CEWI; 
@@ -3967,7 +3967,7 @@ var_sct * ncoTree::var_lmt(ANTLR_USE_NAMESPACE(antlr)RefAST _t) {
 		_t = __t356;
 		_t = _t->getNextSibling();
 		if ( inputState->guessing==0 ) {
-#line 2829 "ncoGrammer.g"
+#line 2830 "ncoGrammer.g"
 			
 			bool bram;   // Check for a RAM variable
 			bool bnrm;
diff --git a/src/nco++/ncoTree.hpp b/src/nco++/ncoTree.hpp
index 923c715..8257546 100644
--- a/src/nco++/ncoTree.hpp
+++ b/src/nco++/ncoTree.hpp
@@ -8,13 +8,14 @@
 
 #line 1 "ncoGrammer.g"
 
-/* $Header: /cvsroot/nco/nco/src/nco++/ncoTree.hpp,v 1.150 2014/05/02 03:08:27 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/ncoTree.hpp,v 1.155 2014/06/16 23:04:52 zender Exp $ */
 
 /* Purpose: ANTLR Grammar and support files for ncap2 */
 
-/* Copyright (C) 2005--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
     // C Standard Headers
     #include <assert.h>
@@ -47,10 +48,10 @@
     ANTLR_USING_NAMESPACE(std);
     ANTLR_USING_NAMESPACE(antlr);
 
-#line 51 "ncoTree.hpp"
+#line 52 "ncoTree.hpp"
 class CUSTOM_API ncoTree : public ANTLR_USE_NAMESPACE(antlr)TreeParser, public ncoParserTokenTypes
 {
-#line 619 "ncoGrammer.g"
+#line 620 "ncoGrammer.g"
 
 
 private:
@@ -385,7 +386,7 @@ RefAST nco_dupList(RefAST tr){
       */ 
       return otr; 
      }
-#line 55 "ncoTree.hpp"
+#line 56 "ncoTree.hpp"
 public:
 	ncoTree();
 	static void initializeASTFactory( ANTLR_USE_NAMESPACE(antlr)ASTFactory& factory );
diff --git a/src/nco++/prs_cls.cc b/src/nco++/prs_cls.cc
index 8f620b2..078679b 100644
--- a/src/nco++/prs_cls.cc
+++ b/src/nco++/prs_cls.cc
@@ -1,11 +1,12 @@
-/* $Header: /cvsroot/nco/nco/src/nco++/prs_cls.cc,v 1.33 2014/02/12 17:39:51 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco++/prs_cls.cc,v 1.34 2014/06/15 21:06:25 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor */
 /* prs_cls -- symbol table - class methods */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Standard C++ headers
 #include <algorithm>
diff --git a/src/nco++/prs_cls.hh b/src/nco++/prs_cls.hh
index 150a299..bdd447e 100644
--- a/src/nco++/prs_cls.hh
+++ b/src/nco++/prs_cls.hh
@@ -2,8 +2,9 @@
 /* prs_cls -- symbol table - data members & class methods */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #ifndef PRS_CLS_HH
 #define PRS_CLS_HH
diff --git a/src/nco++/sdo_utl.cc b/src/nco++/sdo_utl.cc
index 911a3e3..6dc3cb2 100644
--- a/src/nco++/sdo_utl.cc
+++ b/src/nco++/sdo_utl.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.cc,v 1.6 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.cc,v 1.7 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Implementation (declaration) of SDO stand-alone utilities 
 
-/* Copyright (C) 1997--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 b17057d..43b87d6 100644
--- a/src/nco++/sdo_utl.hh
+++ b/src/nco++/sdo_utl.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.hh,v 1.6 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco++/sdo_utl.hh,v 1.7 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of SDO stand-alone utilities
 
-/* Copyright (C) 1997--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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/libnco.h b/src/nco/libnco.h
index 3e6bb7a..f16514f 100644
--- a/src/nco/libnco.h
+++ b/src/nco/libnco.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/libnco.h,v 1.59 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/libnco.h,v 1.60 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: netCDF Operator (NCO) library */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 */
 
diff --git a/src/nco/mpncbo.c b/src/nco/mpncbo.c
index 8abd5eb..60bb72c 100644
--- a/src/nco/mpncbo.c
+++ b/src/nco/mpncbo.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncbo.c,v 1.142 2014/01/06 06:46:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncbo.c,v 1.146 2014/07/15 18:48:54 zender Exp $ */
 
 /* mpncbo -- netCDF binary operator */
 
@@ -6,17 +6,15 @@
    from two input netCDF files and output them to a single file. */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -127,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.142 2014/01/06 06:46:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.142 $";
+  const char * const CVS_Id="$Id: mpncbo.c,v 1.146 2014/07/15 18:48:54 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.146 $";
   const char * const opt_sht_lst="3467ACcD:d:FhL:l:Oo:p:rRSt:v:X:xy:-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
@@ -220,7 +218,6 @@ main(int argc,char **argv)
   var_sct **var_prc_out;
   
 #ifdef ENABLE_MPI
-  /* #if defined(ENABLE_MPI) && !defined(ENABLE_NETCDF4) */
   /* Declare all MPI-specific variables here */
   MPI_Status mpi_stt; /* [enm] Status check to decode msg_tag_typ */
   
@@ -418,6 +415,7 @@ main(int argc,char **argv)
     case 'D': /* The debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -689,7 +687,7 @@ main(int argc,char **argv)
   rcd=nco_var_lst_mrg(&var_prc_1,&var_prc_2,&nbr_var_prc_1,&nbr_var_prc_2); 
 
   /* Make output and input files consanguinous */
-  if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt_1;
+ if(fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt_1;
 
   /* Verify output file format supports requested actions */
   (void)nco_fl_fmt_vet(fl_out_fmt,cnk_nbr,dfl_lvl);
@@ -751,7 +749,7 @@ main(int argc,char **argv)
   /* Manager obtains output filename and broadcasts to workers */
   if(prc_rnk == rnk_mgr) fl_nm_lng=(int)strlen(fl_out_tmp); 
   MPI_Bcast(&fl_nm_lng,1,MPI_INT,rnk_mgr,MPI_COMM_WORLD);
-  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)malloc((fl_nm_lng+1)*sizeof(char));
+  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)nco_malloc((fl_nm_lng+1)*sizeof(char));
   MPI_Bcast(fl_out_tmp,fl_nm_lng+1,MPI_CHAR,rnk_mgr,MPI_COMM_WORLD); 
   
   if(prc_rnk == rnk_mgr){ /* MPI manager code */
diff --git a/src/nco/mpncecat.c b/src/nco/mpncecat.c
index 321ebd7..af82f91 100644
--- a/src/nco/mpncecat.c
+++ b/src/nco/mpncecat.c
@@ -1,21 +1,19 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncecat.c,v 1.119 2014/01/06 06:46:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncecat.c,v 1.124 2014/07/15 18:48:54 zender Exp $ */
 
 /* ncecat -- netCDF ensemble concatenator */
 
 /* Purpose: Join variables across files into a new record variable */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -52,8 +50,8 @@
 /* 3rd party vendors */
 #include <netcdf.h> /* netCDF definitions and C library */
 #ifdef ENABLE_MPI
-#include <mpi.h> /* MPI definitions */
-#include "nco_mpi.h" /* MPI utilities */
+# include <mpi.h> /* MPI definitions */
+# include "nco_mpi.h" /* MPI utilities */
 #endif /* !ENABLE_MPI */
 
 /* Personal headers */
@@ -102,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.119 2014/01/06 06:46:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.119 $";
+  const char * const CVS_Id="$Id: mpncecat.c,v 1.124 2014/07/15 18:48:54 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.124 $";
   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;
@@ -176,9 +174,7 @@ main(int argc,char **argv)
 #ifdef ENABLE_MPI
   /* Declare all MPI-specific variables here */
   MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
-# if defined(ENABLE_NETCDF4) || defined(ENABLE_PNETCDF)
   MPI_Info mpi_nfo=MPI_INFO_NULL; /* [sct] File geometry hints */
-# endif /* !ENABLE_NETCDF4 || !ENABLE_PNETCDF */
   MPI_Status mpi_stt; /* [enm] Status check to decode msg_tag_typ */
   
   nco_bool TKN_WRT_FREE=True; /* [flg] Write-access to output file is available */
@@ -374,6 +370,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -715,7 +712,7 @@ main(int argc,char **argv)
   /* Manager obtains output filename and broadcasts to workers */
   if(prc_rnk == rnk_mgr) fl_nm_lng=(int)strlen(fl_out_tmp);
   MPI_Bcast(&fl_nm_lng,1,MPI_INT,0,mpi_cmm);
-  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)malloc((fl_nm_lng+1)*sizeof(char));
+  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)nco_malloc((fl_nm_lng+1)*sizeof(char));
   MPI_Bcast(fl_out_tmp,fl_nm_lng+1,MPI_CHAR,0,mpi_cmm);
   
   if(prc_rnk == rnk_mgr){ /* MPI manager code */
@@ -753,9 +750,6 @@ main(int argc,char **argv)
 #ifdef ENABLE_NETCDF4
     rcd=nco_open_par(fl_in,NC_MPIIO|NC_NETCDF4,mpi_cmm,mpi_nfo,&in_id);
 #endif /* !ENABLE_NETCDF4 */
-#ifdef ENABLE_PNETCDF
-    rcd=ncompi_open(mpi_cmm,fl_in,NC_NOWRITE,mpi_nfo,&in_id);
-#endif /* !ENABLE_PNETCDF */
 #endif /* !0 */
     /* Perform various error-checks on input file */
     if(False) (void)nco_fl_cmp_err_chk();
diff --git a/src/nco/mpncflint.c b/src/nco/mpncflint.c
index def752f..5eca1ae 100644
--- a/src/nco/mpncflint.c
+++ b/src/nco/mpncflint.c
@@ -1,21 +1,19 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncflint.c,v 1.120 2014/01/06 06:46:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncflint.c,v 1.123 2014/07/15 18:48:54 zender Exp $ */
 
 /* mpncflint -- netCDF file interpolator */
 
 /* Purpose: Linearly interpolate a third netCDF file from two input files */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -113,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.120 2014/01/06 06:46:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.120 $";
+  const char * const CVS_Id="$Id: mpncflint.c,v 1.123 2014/07/15 18:48:54 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.123 $";
   const char * const opt_sht_lst="3467ACcD:d:Fhi:L:l:Oo:p:rRSt:v:xw:-:";
   
   cnk_dmn_sct **cnk_dmn=NULL_CEWI;
@@ -388,6 +386,7 @@ main(int argc,char **argv)
     case 'D': /* The debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -676,7 +675,7 @@ main(int argc,char **argv)
   /* Manager obtains output filename and broadcasts to workers */
   if(prc_rnk == rnk_mgr) fl_nm_lng=(int)strlen(fl_out_tmp); 
   MPI_Bcast(&fl_nm_lng,1,MPI_INT,0,MPI_COMM_WORLD);
-  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)malloc((fl_nm_lng+1)*sizeof(char));
+  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)nco_malloc((fl_nm_lng+1)*sizeof(char));
   MPI_Bcast(fl_out_tmp,fl_nm_lng+1,MPI_CHAR,0,MPI_COMM_WORLD);
   
   if(prc_rnk == rnk_mgr){ /* MPI manager code */
diff --git a/src/nco/mpncpdq.c b/src/nco/mpncpdq.c
index b73dda7..395dca9 100644
--- a/src/nco/mpncpdq.c
+++ b/src/nco/mpncpdq.c
@@ -1,21 +1,19 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncpdq.c,v 1.114 2014/01/06 06:46:04 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncpdq.c,v 1.117 2014/07/15 18:48:54 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
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -119,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.114 2014/01/06 06:46:04 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.114 $";
+  const char * const CVS_Id="$Id: mpncpdq.c,v 1.117 2014/07/15 18:48:54 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.117 $";
   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;
@@ -399,6 +397,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -898,7 +897,7 @@ main(int argc,char **argv)
   /* Manager obtains output filename and broadcasts to workers */
   if(prc_rnk == rnk_mgr) fl_nm_lng=(int)strlen(fl_out_tmp); 
   MPI_Bcast(&fl_nm_lng,1,MPI_INT,0,MPI_COMM_WORLD);
-  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)malloc((fl_nm_lng+1)*sizeof(char));
+  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)nco_malloc((fl_nm_lng+1)*sizeof(char));
   MPI_Bcast(fl_out_tmp,fl_nm_lng+1,MPI_CHAR,0,MPI_COMM_WORLD);
   
 #endif /* !ENABLE_MPI */
diff --git a/src/nco/mpncra.c b/src/nco/mpncra.c
index df9a929..d6858f5 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.150 2014/01/06 06:46:05 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncra.c,v 1.153 2014/07/15 18:48:54 zender Exp $ */
 
 /* This single source file may be called as three separate executables:
    ncra -- netCDF record averager
@@ -10,17 +10,15 @@
    to a single file. */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -152,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.150 2014/01/06 06:46:05 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.150 $";
+  const char * const CVS_Id="$Id: mpncra.c,v 1.153 2014/07/15 18:48:54 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.153 $";
   const char * const opt_sht_lst="3467ACcD:d:FHhL:l:n:Oo:p:P:rRSt:v:xY:y:-:";
   
   dmn_sct **dim;
@@ -431,6 +429,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -733,7 +732,7 @@ main(int argc,char **argv)
   /* Manager obtains output filename and broadcasts to workers */
   if(prc_rnk == rnk_mgr) fl_nm_lng=(int)strlen(fl_out_tmp); 
   MPI_Bcast(&fl_nm_lng,1,MPI_INT,0,MPI_COMM_WORLD);
-  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)malloc((fl_nm_lng+1)*sizeof(char));
+  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)nco_malloc((fl_nm_lng+1)*sizeof(char));
   MPI_Bcast(fl_out_tmp,fl_nm_lng+1,MPI_CHAR,0,MPI_COMM_WORLD);
 #endif /* !ENABLE_MPI */
   
diff --git a/src/nco/mpncwa.c b/src/nco/mpncwa.c
index 40d7745..f36343b 100644
--- a/src/nco/mpncwa.c
+++ b/src/nco/mpncwa.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/mpncwa.c,v 1.142 2014/01/06 06:46:05 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/mpncwa.c,v 1.146 2014/07/15 18:48:55 zender Exp $ */
 
 /* mpncwa -- netCDF weighted averager */
 
@@ -6,17 +6,15 @@
    in a single input netCDF file and output them to a single file. */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -128,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.142 2014/01/06 06:46:05 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.142 $";
+  const char * const CVS_Id="$Id: mpncwa.c,v 1.146 2014/07/15 18:48:55 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.146 $";
   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;
@@ -455,6 +453,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -830,7 +829,7 @@ main(int argc,char **argv)
   /* Manager obtains output filename and broadcasts to workers */ 
   if(prc_rnk == rnk_mgr) fl_nm_lng=(int)strlen(fl_out_tmp); 
   MPI_Bcast(&fl_nm_lng,1,MPI_INT,0,MPI_COMM_WORLD);
-  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)malloc((fl_nm_lng+1)*sizeof(char));
+  if(prc_rnk != rnk_mgr) fl_out_tmp=(char *)nco_malloc((fl_nm_lng+1)*sizeof(char));
   MPI_Bcast(fl_out_tmp,fl_nm_lng+1,MPI_CHAR,0,MPI_COMM_WORLD);
   
   if(prc_rnk == rnk_mgr){ /* MPI manager code */
@@ -1334,6 +1333,7 @@ main(int argc,char **argv)
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
+  if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
   
   nco_exit_gracefully();
   return EXIT_SUCCESS;
diff --git a/src/nco/ncap.c b/src/nco/ncap.c
index 4bb84ac..755836b 100644
--- a/src/nco/ncap.c
+++ b/src/nco/ncap.c
@@ -1,15 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncap.c,v 1.284 2014/01/06 19:00:49 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncap.c,v 1.287 2014/07/09 20:47:53 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
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -128,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.284 2014/01/06 19:00:49 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.284 $";
+  const char * const CVS_Id="$Id: ncap.c,v 1.287 2014/07/09 20:47:53 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.287 $";
   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;
@@ -424,6 +422,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -964,8 +963,8 @@ main(int argc,char **argv)
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncap.h b/src/nco/ncap.h
index 05d6509..feabede 100644
--- a/src/nco/ncap.h
+++ b/src/nco/ncap.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncap.h,v 1.99 2014/03/05 22:02:43 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncap.h,v 1.100 2014/06/15 21:06:21 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
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "ncap.h" *//* netCDF arithmetic processor-specific definitions (symbol table, ...) */
diff --git a/src/nco/ncap_utl.c b/src/nco/ncap_utl.c
index 807ee19..8b9683b 100644
--- a/src/nco/ncap_utl.c
+++ b/src/nco/ncap_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncap_utl.c,v 1.158 2014/02/04 22:40:20 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncap_utl.c,v 1.159 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: netCDF arithmetic processor */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include <assert.h>
 #include "ncap.h" /* netCDF arithmetic processor */
diff --git a/src/nco/ncap_yacc.y b/src/nco/ncap_yacc.y
index 66a316a..6bfc4ad 100644
--- a/src/nco/ncap_yacc.y
+++ b/src/nco/ncap_yacc.y
@@ -1,15 +1,13 @@
-%{ /* $Header: /cvsroot/nco/nco/src/nco/ncap_yacc.y,v 1.67 2014/02/04 22:40:20 zender Exp $ -*-C-*- */
+%{ /* $Header: /cvsroot/nco/nco/src/nco/ncap_yacc.y,v 1.68 2014/06/17 00:10:32 zender Exp $ -*-C-*- */
   
 /* Begin C declarations section */
   
 /* Purpose: Grammar parser for ncap */
   
 /* Copyright (C) 1995--2014 Charlie Zender
-     
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
diff --git a/src/nco/ncatted.c b/src/nco/ncatted.c
index 1b30894..bc10b1d 100644
--- a/src/nco/ncatted.c
+++ b/src/nco/ncatted.c
@@ -1,15 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncatted.c,v 1.187 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncatted.c,v 1.193 2014/07/11 20:55:45 zender Exp $ */
 
 /* ncatted -- netCDF attribute editor */
 
 /* Purpose: Add, create, delete, or overwrite attributes in a netCDF file */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -123,8 +121,26 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
 /* 3rd party vendors */	 
 #include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
 #define MAIN_PROGRAM_FILE
@@ -158,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.187 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.187 $";
+  const char * const CVS_Id="$Id: ncatted.c,v 1.193 2014/07/11 20:55:45 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.193 $";
   const char * const opt_sht_lst="Aa:D:hl:Oo:p:Rr-:";
 
 #if defined(__cplusplus) || defined(PGI_CC)
@@ -188,6 +204,13 @@ main(int argc,char **argv)
 
   nco_dmn_dne_t *flg_dne=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
  
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -240,6 +263,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -281,6 +312,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'h': /* Toggle appending to history global attribute */
       HISTORY_APPEND=!HISTORY_APPEND;
@@ -367,7 +399,7 @@ main(int argc,char **argv)
   /* Get number of variables in file */
   (void)nco_inq(nc_id,(int *)NULL,&nbr_var_fl,(int *)NULL,(int *)NULL);
 
- /* Initialize traversal table */ 
+  /* Initialize traversal table */ 
   trv_tbl_init(&trv_tbl); 
 
   /* Construct GTT (Group Traversal Table) */
@@ -409,7 +441,7 @@ main(int argc,char **argv)
   } /* Loop input names */
 
 
-  /* Catenate the timestamped command line to the "history" global attribute */
+  /* Catenate the time-stamped command line to the "history" global attribute */
   if(HISTORY_APPEND) (void)nco_hst_att_cat(nc_id,cmd_ln);
 
   /* Take output file out of define mode */
@@ -452,11 +484,15 @@ main(int argc,char **argv)
     trv_tbl_free(trv_tbl);
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncbo.c b/src/nco/ncbo.c
index 4787f8a..8108623 100644
--- a/src/nco/ncbo.c
+++ b/src/nco/ncbo.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncbo.c,v 1.301 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncbo.c,v 1.307 2014/07/11 20:55:45 zender Exp $ */
 
 /* ncbo -- netCDF binary operator */
 
@@ -6,17 +6,15 @@
    from two input netCDF files and output them to a single file. */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -74,10 +72,24 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
 /* 3rd party vendors */
 #include <netcdf.h> /* netCDF definitions and C library */
 #ifdef ENABLE_MPI
 # include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
 # include "nco_mpi.h" /* MPI utilities */
 #endif /* !ENABLE_MPI */
 
@@ -132,8 +144,8 @@ main(int argc,char **argv)
 
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncbo.c,v 1.301 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.301 $";
+  const char * const CVS_Id="$Id: ncbo.c,v 1.307 2014/07/11 20:55:45 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.307 $";
   const char * const opt_sht_lst="3467ACcD:d:FG:g:hL:l:Oo:p:rRt:v:X:xzy:-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -216,6 +228,13 @@ main(int argc,char **argv)
   nco_dmn_dne_t *flg_dne2=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
   nco_dmn_dne_t *flg_dne=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -306,7 +325,6 @@ main(int argc,char **argv)
       {"hlp",no_argument,0,'?'},
       {0,0,0,0}
     }; /* end opt_lng */
-
   int opt_idx=0; /* Index of current long option into opt_lng array */
 
   nbr_gpe_nm=0;
@@ -320,6 +338,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
   
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -407,6 +433,7 @@ main(int argc,char **argv)
     case 'D': /* The debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -546,7 +573,7 @@ main(int argc,char **argv)
   for(int lmt_idx=0;lmt_idx<lmt_nbr;lmt_idx++) flg_dne[lmt_idx]=flg_dne1[lmt_idx]; 
   for(int lmt_idx=0;lmt_idx<lmt_nbr;lmt_idx++) flg_dne[lmt_nbr+lmt_idx]=flg_dne2[lmt_idx];
  
-  /* Check if all input -d dimensions were found */ 
+  /* Were all user-specified dimensions found? */ 
   (void)nco_chk_dmn(lmt_nbr,flg_dne);
 
   /* Get number of variables, dimensions, and global attributes in file, file format */
@@ -583,7 +610,7 @@ main(int argc,char **argv)
 
   /* Copy global attributes from file 1 */
   (void)nco_att_cpy(in_id_1,out_id,NC_GLOBAL,NC_GLOBAL,(nco_bool)True);
-  /* Catenate timestamped command line to "history" global attribute */
+  /* Catenate time-stamped command line to "history" global attribute */
   if(HISTORY_APPEND) (void)nco_hst_att_cat(out_id,cmd_ln);
   if(HISTORY_APPEND) (void)nco_vrs_att_cat(out_id);
 
@@ -655,12 +682,15 @@ main(int argc,char **argv)
 
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
-
 } /* end main() */
diff --git a/src/nco/ncecat.c b/src/nco/ncecat.c
index 9a8488a..a7cfb18 100644
--- a/src/nco/ncecat.c
+++ b/src/nco/ncecat.c
@@ -1,15 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncecat.c,v 1.366 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncecat.c,v 1.372 2014/08/21 18:22:44 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
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -62,8 +60,26 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
-/* 3rd party vendors */
-#include <netcdf.h> /* netCDF definitions and C library */
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
+/* 3rd party vendors */	 
+#include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* Personal headers */
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
@@ -124,8 +140,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.366 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.366 $";
+  const char * const CVS_Id="$Id: ncecat.c,v 1.372 2014/08/21 18:22:44 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.372 $";
   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 */
@@ -200,6 +216,13 @@ main(int argc,char **argv)
 
   nco_dmn_dne_t *flg_dne=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -234,6 +257,7 @@ main(int argc,char **argv)
     /* 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_map",required_argument,0,0}, /* [nbr] Chunking map */
     {"chunk_map",required_argument,0,0}, /* [nbr] Chunking map */
     {"cnk_plc",required_argument,0,0}, /* [nbr] Chunking policy */
     {"chunk_policy",required_argument,0,0}, /* [nbr] Chunking policy */
@@ -308,6 +332,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -400,6 +432,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -539,7 +572,7 @@ main(int argc,char **argv)
     /* Construct GTT, Group Traversal Table (groups,variables,dimensions, limits) */
     (void)nco_bld_trv_tbl(in_id,trv_pth,lmt_nbr,lmt_arg,aux_nbr,aux_arg,MSA_USR_RDR,FORTRAN_IDX_CNV,grp_lst_in,grp_lst_in_nbr,var_lst_in,xtr_nbr,EXTRACT_ALL_COORDINATES,GRP_VAR_UNN,False,EXCLUDE_INPUT_LIST,EXTRACT_ASSOCIATED_COORDINATES,nco_pck_plc_nil,&flg_dne,trv_tbl);
 
-    /* Check if all input -d dimensions were found */ 
+    /* Were all user-specified dimensions found? */ 
     (void)nco_chk_dmn(lmt_nbr,flg_dne);     
 
     /* Get number of variables, dimensions, and global attributes in file, file format */
@@ -824,7 +857,7 @@ main(int argc,char **argv)
 
         /* Write variable into current record in output file */
 
-        /* Obtain output group ID using full group name */
+        /* Obtain output group ID */
         (void)nco_inq_grp_full_ncid(out_id,var_trv->grp_nm_fll,&grp_out_id);
 
         /* Get variable ID */
@@ -912,11 +945,15 @@ main(int argc,char **argv)
     } /* RECORD_AGGREGATE */
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncflint.c b/src/nco/ncflint.c
index 0af0b11..9bbd067 100644
--- a/src/nco/ncflint.c
+++ b/src/nco/ncflint.c
@@ -1,15 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncflint.c,v 1.290 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncflint.c,v 1.295 2014/07/15 18:48:55 zender Exp $ */
 
 /* ncflint -- netCDF file interpolator */
 
 /* Purpose: Linearly interpolate a third netCDF file from two input files */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -60,8 +58,27 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
-/* 3rd party vendors */
-#include <netcdf.h> /* netCDF definitions and C library */
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
+/* 3rd party vendors */	 
+#include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
+
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
 #define MAIN_PROGRAM_FILE
 #include "libnco.h" /* netCDF Operator (NCO) library */
@@ -116,8 +133,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: ncflint.c,v 1.290 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.290 $";
+  const char * const CVS_Id="$Id: ncflint.c,v 1.295 2014/07/15 18:48:55 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.295 $";
   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 */
@@ -203,6 +220,13 @@ main(int argc,char **argv)
 
   nco_dmn_dne_t *flg_dne=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -307,6 +331,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -394,6 +426,7 @@ main(int argc,char **argv)
     case 'D': /* The debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -561,7 +594,7 @@ main(int argc,char **argv)
   /* Construct GTT, Group Traversal Table (groups,variables,dimensions, limits) */
   (void)nco_bld_trv_tbl(in_id_1,trv_pth,lmt_nbr,lmt_arg,aux_nbr,aux_arg,MSA_USR_RDR,FORTRAN_IDX_CNV,grp_lst_in,grp_lst_in_nbr,var_lst_in,xtr_nbr,EXTRACT_ALL_COORDINATES,GRP_VAR_UNN,False,EXCLUDE_INPUT_LIST,EXTRACT_ASSOCIATED_COORDINATES,nco_pck_plc_nil,&flg_dne,trv_tbl);
 
-  /* Check if all input -d dimensions were found */ 
+  /* Were all user-specified dimensions found? */ 
   (void)nco_chk_dmn(lmt_nbr,flg_dne);     
 
   /* Get number of variables, dimensions, and global attributes in file, file format */
@@ -754,7 +787,7 @@ main(int argc,char **argv)
       nco_exit(EXIT_FAILURE);
     } /* endif */
 
-    /* Obtain group ID using full group name */
+    /* Obtain group ID */
     (void)nco_inq_grp_full_ncid(in_id_1,var_trv_1->grp_nm_fll,&grp_id_1);
     (void)nco_inq_grp_full_ncid(in_id_2,var_trv_2->grp_nm_fll,&grp_id_2);
 
@@ -799,7 +832,7 @@ main(int argc,char **argv)
     /* Edit group name for output */
     if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv_1->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv_1->grp_nm_fll);
 
-    /* Obtain output group ID using full group name */
+    /* Obtain output group ID */
     (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
 
     /* Memory management after current extracted group */
@@ -887,11 +920,15 @@ main(int argc,char **argv)
     if(gpe) gpe=(gpe_sct *)nco_gpe_free(gpe);
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncks.c b/src/nco/ncks.c
index d9680b4..34debed 100644
--- a/src/nco/ncks.c
+++ b/src/nco/ncks.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncks.c,v 1.718 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncks.c,v 1.737 2014/07/15 18:48:55 zender Exp $ */
 
 /* ncks -- netCDF Kitchen Sink */
 
@@ -6,11 +6,9 @@
    Print them to screen, or copy them to a new file, or both */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -81,8 +79,26 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
 /* 3rd party vendors */
 #include <netcdf.h> /* netCDF definitions and C library */
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* Personal headers */
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
@@ -118,7 +134,7 @@ main(int argc,char **argv)
   nco_bool PRN_XML=False; /* [flg] Print XML (NcML) */
   nco_bool PRN_XML_LOCATION=True; /* [flg] Print XML location tag */
   nco_bool PRN_DMN_IDX_CRD_VAL=True; /* [flg] Print leading dimension/coordinate indices/values Option Q */
-  nco_bool PRN_DMN_UNITS=False; /* [flg] Print dimensional units Option u */
+  nco_bool PRN_DMN_UNITS=True; /* [flg] Print dimensional units Option u */
   nco_bool PRN_DMN_VAR_NM=True; /* [flg] Print dimension/variable names */
   nco_bool PRN_DMN_UNITS_TGL=False; /* [flg] Toggle print dimensional units Option u */
   nco_bool PRN_GLB_METADATA=False; /* [flg] Print global metadata */
@@ -167,8 +183,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.718 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.718 $";
+  const char * const CVS_Id="$Id: ncks.c,v 1.737 2014/07/15 18:48:55 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.737 $";
   const char * const opt_sht_lst="34567aABb:CcD:d:FG:g:HhL:l:MmOo:Pp:qQrRs:uv:X:xz-:";
 
   cnk_sct cnk; /* [sct] Chunking structure */
@@ -227,6 +243,13 @@ main(int argc,char **argv)
 
   nco_dmn_dne_t *flg_dne=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -237,18 +260,21 @@ main(int argc,char **argv)
       {"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 */
-      {"md5_dgs",no_argument,0,0}, /* [flg] Perform MD5 digests */
-      {"md5_digest",no_argument,0,0}, /* [flg] Perform MD5 digests */
-      {"md5_wrt_att",no_argument,0,0}, /* [flg] Write MD5 digests as attributes */
-      {"md5_write_attribute",no_argument,0,0}, /* [flg] Write MD5 digests as attributes */
       {"cmp",no_argument,0,0},
       {"compiler",no_argument,0,0},
-      {"id",no_argument,0,0}, /* [flg] Print normally hidden information, like file, group, and variable IDs */
+      {"copyright",no_argument,0,0},
+      {"cpy",no_argument,0,0},
+      {"license",no_argument,0,0},
+      {"hdf4",no_argument,0,0}, /* [flg] Treat file as HDF4 */
       {"hdn",no_argument,0,0}, /* [flg] Print hidden attributes */
       {"hidden",no_argument,0,0}, /* [flg] Print hidden attributes */
+      {"id",no_argument,0,0}, /* [flg] Print normally hidden information, like file, group, and variable IDs */
       {"lbr",no_argument,0,0},
       {"library",no_argument,0,0},
+      {"md5_dgs",no_argument,0,0}, /* [flg] Perform MD5 digests */
+      {"md5_digest",no_argument,0,0}, /* [flg] Perform MD5 digests */
+      {"md5_wrt_att",no_argument,0,0}, /* [flg] Write MD5 digests as attributes */
+      {"md5_write_attribute",no_argument,0,0}, /* [flg] Write MD5 digests as attributes */
       {"mpi_implementation",no_argument,0,0},
       {"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 */
@@ -320,6 +346,8 @@ main(int argc,char **argv)
       {"4",no_argument,0,'4'},
       {"64bit",no_argument,0,'4'},
       {"netcdf4",no_argument,0,'4'},
+      {"pnetcdf",no_argument,0,'5'},
+      {"5",no_argument,0,'5'},
       {"7",no_argument,0,'7'},
       {"abc",no_argument,0,'a'},
       {"alphabetize",no_argument,0,'a'},
@@ -335,6 +363,7 @@ main(int argc,char **argv)
       {"no-crd",no_argument,0,'C'},
       {"data",required_argument,0,'H'},
       {"debug",required_argument,0,'D'},
+      {"dbg_lvl",required_argument,0,'D'},
       {"nco_dbg_lvl",required_argument,0,'D'},
       {"dimension",required_argument,0,'d'},
       {"dmn",required_argument,0,'d'},
@@ -365,6 +394,7 @@ main(int argc,char **argv)
       {"retain",no_argument,0,'R'},
       {"rtn",no_argument,0,'R'},
       {"revision",no_argument,0,'r'},
+      {"spinlock",no_argument,0,'S'}, /* [flg] Suspend with signal handler to facilitate debugging */
       {"sng_fmt",required_argument,0,'s'},
       {"string",required_argument,0,'s'},
       {"units",no_argument,0,'u'},
@@ -381,6 +411,13 @@ main(int argc,char **argv)
     }; /* end opt_lng */
   int opt_idx=0; /* Index of current long option into opt_lng array */
 
+#ifdef _LIBINTL_H
+  setlocale(LC_ALL,""); /* LC_ALL sets all localization tokens to same value */
+  bindtextdomain("nco","/home/zender/share/locale"); /* ${LOCALEDIR} is e.g., /usr/share/locale */
+  /* MO files should be in ${LOCALEDIR}/es/LC_MESSAGES */
+  textdomain("nco"); /* PACKAGE is name of program or library */
+#endif /* not _LIBINTL_H */
+
   /* Start timer and save command line */ 
   ddra_info.tmr_flg=nco_tmr_srt;
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
@@ -390,6 +427,22 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+/* MPI I/O: Either Parallel netCDF (PnetCDF) or HDF5-based
+   export NETCDF_ROOT=/usr/local/parallel;export NETCDF_INC=/usr/local/parallel/include;export NETCDF_LIB=/usr/local/parallel/lib;export NETCDF4_ROOT=/usr/local/parallel;
+   cd ~/nco/bld;make MPI=Y;cd -
+   LD_LIBRARY_PATH=/usr/local/parallel/lib\:${LD_LIBRARY_PATH}
+   ldd `which ncks`
+   ncks -O -5 ~/nco/data/in.nc ~/foo.nc # PnetCDF 
+   mpiexec -n 1 ncks -O -4 ~/nco/data/in.nc ~/foo.nc # HDF5
+   od -An -c -N4 ~/foo.nc */
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -431,6 +484,10 @@ main(int argc,char **argv)
         (void)fprintf(stdout,"%s\n",nco_cmp_get());
         nco_exit(EXIT_SUCCESS);
       } /* endif "cmp" */
+      if(!strcmp(opt_crr,"cpy") || !strcmp(opt_crr,"copyright") || !strcmp(opt_crr,"license")){
+	(void)nco_cpy_prn();
+        nco_exit(EXIT_SUCCESS);
+      } /* endif "copyright" */
       if(!strcmp(opt_crr,"cdl")) PRN_CDL=True; /* [flg] Print CDL */
       if(!strcmp(opt_crr,"cln") || !strcmp(opt_crr,"mmr_cln") || !strcmp(opt_crr,"clean")) flg_cln=True; /* [flg] Clean memory prior to exit */
       if(!strcmp(opt_crr,"drt") || !strcmp(opt_crr,"mmr_drt") || !strcmp(opt_crr,"dirty")) flg_cln=False; /* [flg] Clean memory prior to exit */
@@ -478,7 +535,7 @@ main(int argc,char **argv)
       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,"secret") || !strcmp(opt_crr,"scr") || !strcmp(opt_crr,"shh")){
-        (void)fprintf(stdout,"Hidden/unsupported NCO options:\nCompiler used\t\t--cmp, --compiler\nHidden functions\t--scr, --ssh, --secret\nLibrary used\t\t--lbr, --library\nMemory clean\t\t--mmr_cln, --cln, --clean\nMemory dirty\t\t--mmr_drt, --drt, --dirty\nMPI implementation\t--mpi_implementation\nNameless printing\t--no_nm_prn, --no_dmn_var_nm\nNo-clobber files\t--no_clb, --no-clobber\nPseudonym\t\t--pseudonym, -Y (ncra only)\nStreams\t\t\t--srm\nSysconf\t\t\t--sysconf\nTest UDUnits [...]
+        (void)fprintf(stdout,"Hidden/unsupported NCO options:\nCompiler used\t\t--cmp, --compiler\nCopyright\t\t--cpy, --copyright, --license\nHidden functions\t--scr, --ssh, --secret\nLibrary used\t\t--lbr, --library\nMemory clean\t\t--mmr_cln, --cln, --clean\nMemory dirty\t\t--mmr_drt, --drt, --dirty\nMPI implementation\t--mpi_implementation\nNameless printing\t--no_nm_prn, --no_dmn_var_nm\nNo-clobber files\t--no_clb, --no-clobber\nPseudonym\t\t--pseudonym, -Y (ncra only)\nSpinlock\t\t [...]
         nco_exit(EXIT_SUCCESS);
       } /* endif "shh" */
       if(!strcmp(opt_crr,"srm")) PRN_SRM=True; /* [flg] Print ncStream */
@@ -538,6 +595,7 @@ main(int argc,char **argv)
       if(!strcmp(opt_crr,"64bit")) fl_out_fmt=NC_FORMAT_64BIT; else fl_out_fmt=NC_FORMAT_NETCDF4; 
       break;
     case '5': /* Print using new print format */
+      fl_out_fmt=NC_FORMAT_CDF5;
       PRN_NEW_FMT=!PRN_NEW_FMT;
       break;
     case '6': /* Request netCDF3 64-bit offset output storage format */
@@ -564,6 +622,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -632,6 +691,12 @@ main(int argc,char **argv)
       (void)nco_cnf_prn();
       nco_exit(EXIT_SUCCESS);
       break;
+#ifdef ENABLE_MPI
+    case 'S': /* Suspend with signal handler to facilitate debugging */
+      if(signal(SIGUSR1,nco_cnt_run) == SIG_ERR) (void)fprintf(stdout,"%s: ERROR Could not install suspend handler.\n",nco_prg_nm);
+      while(!nco_spn_lck_brk) usleep(nco_spn_lck_us); /* Spinlock. fxm: should probably insert a sched_yield */
+      break;
+#endif /* !ENABLE_MPI */
     case 's': /* User specified delimiter string for printed output */
       dlm_sng=(char *)strdup(optarg);
       break;
@@ -675,6 +740,27 @@ main(int argc,char **argv)
     if(opt_crr) opt_crr=(char *)nco_free(opt_crr);
   } /* end while loop */
 
+#ifdef _LANGINFO_H
+/* Internationalization i18n
+   Linux Journal 200211 p. 57--59 http://www.linuxjournal.com/article/6176 
+   Fedora: http://fedoraproject.org/wiki/How_to_do_I18N_through_gettext
+   cd ~/nco/bld;make I18N=Y
+   cd ~/nco/bld;xgettext --default-domain=nco --join-existing -o ../po/nco.pot ../src/nco/ncks.c ../src/nco/ncra.c
+   for LL in fr es; do
+     mkdir -p ~/share/locale/${LL}/LC_MESSAGES
+     msgfmt ~/nco/po/${LL}/nco.po -o ~/nco/po/${LL}/nco.mo
+     /bin/cp ~/nco/po/${LL}/nco.mo ~/share/locale/${LL}/LC_MESSAGES
+#     sudo /bin/cp ~/nco/po/${LL}/nco.mo /usr/share/locale/${LL}/LC_MESSAGES  
+   done
+   export LOCALEDIR=${HOME}/share/locale
+   LC_ALL=en ncks -D 1 -O ~/nco/data/in.nc ~/foo.nc
+   LANG=en_GB.utf8 LANGUAGE=en_GB:en:fr_FR:fr LC_ALL=en_GB.utf8 ncks -D 1 -O ~/nco/data/in.nc ~/foo.nc
+   LANG=es ncks -D 1 -O ~/nco/data/in.nc ~/foo.nc
+   LANG=fr_FR.utf8 LANGUAGE=fr_FR:fr:en_GB:en LC_ALL=fr_FR.utf8 ncks -D 1 -O ~/nco/data/in.nc ~/foo.nc */
+  if(nco_dbg_lvl >= nco_dbg_std) (void)fprintf(stdout,gettext("%s: I18N Current charset = %s\n"),nco_prg_nm,nl_langinfo(CODESET));
+  if(nco_dbg_lvl >= nco_dbg_std) (void)fprintf(stdout,gettext("%s: I18N This text may appear in a foreign language\n"),nco_prg_nm);
+#endif /* !_LANGINFO_H */
+
   /* Initialize traversal table */
   (void)trv_tbl_init(&trv_tbl);
  
@@ -695,7 +781,7 @@ main(int argc,char **argv)
   /* Construct GTT (Group Traversal Table), check -v and -g input names and create extraction list*/
   (void)nco_bld_trv_tbl(in_id,trv_pth,lmt_nbr,lmt_arg,aux_nbr,aux_arg,MSA_USR_RDR,FORTRAN_IDX_CNV,grp_lst_in,grp_lst_in_nbr,var_lst_in,xtr_nbr,EXTRACT_ALL_COORDINATES,GRP_VAR_UNN,GRP_XTR_VAR_XCL,EXCLUDE_INPUT_LIST,EXTRACT_ASSOCIATED_COORDINATES,nco_pck_plc_nil,&flg_dne,trv_tbl);
 
-  /* Check if all input -d dimensions were found */ 
+  /* Were all user-specified dimensions found? */ 
   (void)nco_chk_dmn(lmt_nbr,flg_dne);    
 
   /* Get number of variables, dimensions, and global attributes in file */
@@ -705,6 +791,12 @@ main(int argc,char **argv)
   (void)nco_inq_format(in_id,&fl_in_fmt);
   if(fl_out && fl_out_fmt == NCO_FORMAT_UNDEFINED) fl_out_fmt=fl_in_fmt;
 
+#ifdef ENABLE_MPI
+  if(prc_rnk == rnk_mgr) (void)fprintf(stdout,"%s: MPI process rank %d reports %d process%s\n",nco_prg_nm,prc_rnk,prc_nbr,(prc_nbr == 1) ? "" : "es");
+  /* Roll call */
+  (void)fprintf(stdout,"%s: MPI process rank %d reports %d process%s\n",nco_prg_nm,prc_rnk,prc_nbr,(prc_nbr == 1) ? "" : "es");
+#endif /* !ENABLE_MPI */
+
   /* Process -z option if requested */ 
   if(GET_LIST){ 
     if(ALPHABETIZE_OUTPUT) trv_tbl_srt(trv_tbl);
@@ -787,14 +879,16 @@ main(int argc,char **argv)
     /* Create structure with all chunking information */
     if(fl_out_fmt == NC_FORMAT_NETCDF4 || fl_out_fmt == NC_FORMAT_NETCDF4_CLASSIC) rcd+=nco_cnk_ini(fl_out,cnk_arg,cnk_nbr,cnk_map,cnk_plc,cnk_sz_byt,cnk_sz_scl,&cnk);
 
-    if(nco_dbg_lvl == nco_dbg_old) (void)nco_prn_var(in_id,trv_tbl);       
-
     /* Define extracted groups, variables, and attributes in output file */
     (void)nco_xtr_dfn(in_id,out_id,&cnk,dfl_lvl,gpe,md5,PRN_GLB_METADATA,PRN_VAR_METADATA,RETAIN_ALL_DIMS,nco_pck_plc_nil,rec_dmn_nm,trv_tbl);
 
-    /* Catenate timestamped command line to "history" global attribute */
+    /* Catenate time-stamped command line to "history" global attribute */
     if(HISTORY_APPEND) (void)nco_hst_att_cat(out_id,cmd_ln);
     if(HISTORY_APPEND) (void)nco_vrs_att_cat(out_id);
+#ifdef ENABLE_MPI
+    if(prc_rnk == rnk_mgr)
+      if(prc_nbr > 0 && HISTORY_APPEND) (void)nco_mpi_att_cat(out_id,prc_nbr);
+#endif /* !ENABLE_MPI */
 
     /* Turn off default filling behavior to enhance efficiency */
     nco_set_fill(out_id,NC_NOFILL,&fll_md_old);
@@ -823,7 +917,7 @@ main(int argc,char **argv)
     if(nco_dbg_lvl_get() == 14){
       (void)nco_wrt_trv_tbl(in_id,trv_tbl,True);
       (void)nco_wrt_trv_tbl(out_id,trv_tbl,True);
-    }
+    } /* endif */
 
     /* Close output file and move it from temporary to permanent location */
     (void)nco_fl_out_cls(fl_out,fl_out_tmp,out_id);
@@ -832,8 +926,6 @@ main(int argc,char **argv)
 
     nco_bool ALPHA_BY_FULL_GROUP=False; /* [flg] Print alphabetically by full group */
     nco_bool ALPHA_BY_STUB_GROUP=True; /* [flg] Print alphabetically by stub group */
-    //      nco_bool ALPHA_BY_FULL_OBJECT=False; /* [flg] Print alphabetically by full object */
-    //      nco_bool ALPHA_BY_STUB_OBJECT=False; /* [flg] Print alphabetically by stub object */
     char *fl_nm_stub;
     char *fl_in_dpl=NULL;
     char *sfx_ptr;
@@ -878,9 +970,7 @@ main(int argc,char **argv)
     if(prn_flg.xml) prn_flg.nwl_pst_val=False; else prn_flg.nwl_pst_val=True;
     prn_flg.dlm_sng=dlm_sng;
     prn_flg.ALPHA_BY_FULL_GROUP=ALPHA_BY_FULL_GROUP;
-    // prn_flg.ALPHA_BY_FULL_OBJECT=ALPHA_BY_FULL_OBJECT;
     prn_flg.ALPHA_BY_STUB_GROUP=ALPHA_BY_STUB_GROUP;
-    // prn_flg.ALPHA_BY_STUB_OBJECT=ALPHA_BY_STUB_OBJECT;
     prn_flg.FORTRAN_IDX_CNV=FORTRAN_IDX_CNV;
     prn_flg.PRN_DMN_IDX_CRD_VAL=PRN_DMN_IDX_CRD_VAL;
     prn_flg.PRN_DMN_UNITS=PRN_DMN_UNITS;
@@ -940,33 +1030,21 @@ main(int argc,char **argv)
       
     }else{ 
 
-      /* New file dump format developed 201307 for CDL, TRD, XML, SRM */
+      /* 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();
         goto close_and_free;
       } /* !PRN_SRM */
 
       if(ALPHA_BY_FULL_GROUP || ALPHA_BY_STUB_GROUP){
+	/* Ineptly named nco_grp_prn() emits full CDL and XML formats, and partial JSN */
         rcd+=nco_grp_prn(in_id,trv_pth,&prn_flg,trv_tbl);
       }else{
-        trv_sct trv_obj; /* [sct] Traversal table object */
-        for(unsigned int obj_idx=0;obj_idx<trv_tbl->nbr;obj_idx++){
-          /* Shallow copy to avoid indirection */
-          trv_obj=trv_tbl->lst[obj_idx];
-          /* Print this group */
-          if(trv_obj.nco_typ == nco_obj_typ_grp){
-            /* Print dimensions defined in this group */
-            // (void)nco_prn_dmn_xtr(in_id,trv_tbl);
-            /* Print group attributes */
-            //if(PRN_GLB_METADATA) (void)nco_prn_grp_att(in_id,trv_tbl);
-            ;
-          } /* endif group */
-          if(trv_obj.nco_typ == nco_obj_typ_var){
-            if(PRN_VAR_METADATA) (void)nco_prn_xtr_mtd(in_id,&prn_flg,trv_tbl);
-            if(PRN_VAR_DATA) (void)nco_prn_xtr_val(in_id,&prn_flg,trv_tbl);
-          } /* endif variable */
-        } /* end loop over obj_idx */
+	/* Place-holder for other options for organization/alphabetization */
+	if(PRN_VAR_METADATA) (void)nco_prn_xtr_mtd(in_id,&prn_flg,trv_tbl);
+	if(PRN_VAR_DATA) (void)nco_prn_xtr_val(in_id,&prn_flg,trv_tbl);
       } /* end if */
     } /* endif new format */
 
@@ -1021,12 +1099,15 @@ close_and_free:
     rec_dmn_nm_fix=(char *)nco_free(rec_dmn_nm_fix);
   } /* !flg_cln */
   
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
-  
 } /* end main() */
diff --git a/src/nco/nco.h b/src/nco/nco.h
index 6001ff9..55ff133 100644
--- a/src/nco/nco.h
+++ b/src/nco/nco.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco.h,v 1.510 2014/05/27 03:26:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco.h,v 1.514 2014/07/07 06:04:22 zender Exp $ */
 
 /* Purpose: netCDF Operator (NCO) definitions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco.h" *//* netCDF Operator (NCO) definitions */
@@ -240,9 +241,25 @@ extern "C" {
 /* Compatibility tokens for when NCO compiled with older netcdf.h
    It is hard to track where/when many tokens defined
    Easiest to individually check for pre-definition of each */
-/* Three compatibility tokens new to netCDF4 netcdf.h: */
+/* Compatibility tokens new to netCDF4 netcdf.h: */
 #ifndef NC_NETCDF4
-# define NC_NETCDF4     (0x1000) /* Use netCDF-4/HDF5 format */
+# define NC_NETCDF4  0x1000 /* Use netCDF-4/HDF5 format. Mode flag for nc_create(). */
+#endif
+#ifndef NC_MPIIO
+# define NC_MPIIO    0x2000 /* Turn on MPI I/O. Mode flag for both nc_create() and nc_open(). */
+#endif
+#ifndef NC_MPIPOSIX
+# define NC_MPIPOSIX 0x4000 /* Turn on MPI POSIX I/O. Mode flag for both nc_create() and nc_open(). */
+#endif
+#ifndef NC_PNETCDF
+# define NC_PNETCDF  0x8000 /* Use parallel-netcdf library. Mode flag for nc_open(). */
+#endif
+/* Use these with nc_var_par_access(). */
+#ifndef NC_INDEPENDENT
+# define NC_INDEPENDENT 0
+#endif
+#ifndef NC_COLLECTIVE
+# define NC_COLLECTIVE 1
 #endif
 #ifndef NC_ENDIAN_NATIVE
 # define NC_ENDIAN_NATIVE 0
@@ -315,6 +332,18 @@ extern "C" {
 # define NC_FORMAT_DAP4    (6)
 #endif
 
+  /* Three compatibility tokens from pnetcdf.h introduced to NCO 20140604 
+     None are used yet */
+#ifndef NC_64BIT_DATA
+# define NC_64BIT_DATA	0x0010 /* CDF-5 format, (64-bit) supported */
+#endif
+#ifndef NC_FORMAT_CDF5
+# define NC_FORMAT_CDF5  5 /* CDF-5 format, with NC_64BIT_DATA. */
+#endif
+#ifndef NC_FORMAT_64BIT_DATA
+# define NC_FORMAT_64BIT_DATA	NC_FORMAT_CDF5
+#endif
+
   /* Backwards-compatibility error codes for netCDF4
      Currently used only in nco_grp_utl.c and nco_netcdf.c */
 #ifndef NC_EBADGRPID
diff --git a/src/nco/nco_att_utl.c b/src/nco/nco_att_utl.c
index 00038e5..8e0e661 100644
--- a/src/nco/nco_att_utl.c
+++ b/src/nco/nco_att_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.c,v 1.173 2014/05/27 02:04:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.c,v 1.174 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Attribute utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 4f0ab25..371a277 100644
--- a/src/nco/nco_att_utl.h
+++ b/src/nco/nco_att_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.h,v 1.48 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_att_utl.h,v 1.49 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Attribute utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_att_utl.h" *//* Attribute utilities */
diff --git a/src/nco/nco_aux.c b/src/nco/nco_aux.c
index 705449a..9633f1b 100644
--- a/src/nco/nco_aux.c
+++ b/src/nco/nco_aux.c
@@ -1,8 +1,9 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.c,v 1.81 2014/05/27 02:04:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.c,v 1.83 2014/07/15 18:48:55 zender Exp $ */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Purpose: Support hyperslabbing cell-based grids over coordinate ranges 
    This works on datasets that contain CF-convention auxiliary coordinate variables.
@@ -424,7 +425,7 @@ nco_aux_evl_trv
 
   *aux_lmt_nbr=0;
 
-  /* Obtain group ID of 'latitude' and 'longitude' from netCDF API using full group name */
+  /* Obtain group ID of 'latitude' and 'longitude' */
   (void)nco_inq_grp_full_ncid(nc_id,lat_trv->grp_nm_fll,&grp_id_lat);
   (void)nco_inq_grp_full_ncid(nc_id,lon_trv->grp_nm_fll,&grp_id_lon);
 
@@ -580,7 +581,7 @@ nco_find_lat_lon_trv
 
   assert(var_trv->nco_typ == nco_obj_typ_var);
 
-  /* Obtain group ID from netCDF API using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id);
 
   /* Obtain variable ID */
diff --git a/src/nco/nco_aux.h b/src/nco/nco_aux.h
index b808840..5408eab 100644
--- a/src/nco/nco_aux.h
+++ b/src/nco/nco_aux.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.h,v 1.34 2014/05/27 02:04:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_aux.h,v 1.35 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Sub-set cell-based grids using auxiliary coordinate variable */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_aux.h" *//* Auxiliary coordinates */
diff --git a/src/nco/nco_bnr.c b/src/nco/nco_bnr.c
index 5dc44eb..5bef80d 100644
--- a/src/nco/nco_bnr.c
+++ b/src/nco/nco_bnr.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.c,v 1.26 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.c,v 1.27 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Binary write utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 34d1512..fa8b97b 100644
--- a/src/nco/nco_bnr.h
+++ b/src/nco/nco_bnr.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.h,v 1.21 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_bnr.h,v 1.22 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Binary write utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_bnr.h" *//* Binary write utilities */
diff --git a/src/nco/nco_cln_utl.c b/src/nco/nco_cln_utl.c
index ca4f953..feb23d4 100644
--- a/src/nco/nco_cln_utl.c
+++ b/src/nco/nco_cln_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.c,v 1.47 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.c,v 1.48 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Calendar utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cln_utl.h" /* Calendar utilities */
 
diff --git a/src/nco/nco_cln_utl.h b/src/nco/nco_cln_utl.h
index f09bbac..4858273 100644
--- a/src/nco/nco_cln_utl.h
+++ b/src/nco/nco_cln_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.h,v 1.35 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cln_utl.h,v 1.36 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Calendar utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_cln_utl.h" *//* Calendar utilities */
diff --git a/src/nco/nco_cnf_dmn.c b/src/nco/nco_cnf_dmn.c
index 1ecf4d7..dd71a0d 100644
--- a/src/nco/nco_cnf_dmn.c
+++ b/src/nco/nco_cnf_dmn.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.c,v 1.94 2014/02/18 17:44:07 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.c,v 1.95 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Conform dimensions between variables */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 37c20a8..48cc850 100644
--- a/src/nco/nco_cnf_dmn.h
+++ b/src/nco/nco_cnf_dmn.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.h,v 1.39 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_dmn.h,v 1.40 2014/06/15 21:06:21 zender Exp $ */
 
 /* Purpose: Conform dimensions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_cnf_dmn.h" *//* Conform dimensions */
diff --git a/src/nco/nco_cnf_typ.c b/src/nco/nco_cnf_typ.c
index a6d2c26..259435b 100644
--- a/src/nco/nco_cnf_typ.c
+++ b/src/nco/nco_cnf_typ.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.c,v 1.76 2014/02/19 21:36:44 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.c,v 1.77 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Conform variable types */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cnf_typ.h" /* Conform variable types */
 
diff --git a/src/nco/nco_cnf_typ.h b/src/nco/nco_cnf_typ.h
index d4666c6..68e1c55 100644
--- a/src/nco/nco_cnf_typ.h
+++ b/src/nco/nco_cnf_typ.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.h,v 1.42 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnf_typ.h,v 1.43 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Conform variable types */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_cnf_typ.h" *//* Conform variable types */
diff --git a/src/nco/nco_cnk.c b/src/nco/nco_cnk.c
index a233dd7..c4edaad 100644
--- a/src/nco/nco_cnk.c
+++ b/src/nco/nco_cnk.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.c,v 1.122 2014/05/20 05:53:20 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.c,v 1.128 2014/08/22 01:01:21 zender Exp $ */
 
 /* Purpose: NCO utilities for chunking */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    ncks -O -4 -D 4 --cnk_scl=8 ~/nco/data/in.nc ~/foo.nc
@@ -85,6 +86,8 @@ nco_cnk_plc_sng_get /* [fnc] Convert chunking policy enum to string */
     return "g2d";
   case nco_cnk_plc_g3d: 
     return "g3d";
+  case nco_cnk_plc_r1d:
+    return "r1d";
   case nco_cnk_plc_xpl: 
     return "xpl";
   case nco_cnk_plc_xst:
@@ -181,9 +184,18 @@ nco_cnk_ini /* [fnc] Create structure with all chunking information */
   /* Make uniform list of user-specified per-dimension chunksizes */
   if(cnk->cnk_nbr > 0) cnk->cnk_dmn=nco_cnk_prs(cnk_nbr,cnk_arg);
 
-  /* Set actual chunk policy and map to defaults as necessary */
-  if(cnk_map == nco_cnk_map_nil) cnk->cnk_map=nco_cnk_map_get((char *)NULL);
-  if(cnk_plc == nco_cnk_plc_nil) cnk->cnk_plc=nco_cnk_plc_get((char *)NULL);
+  /* Set actual chunk policy and map to defaults as necessary
+     20140821: Until today, defaults for map and policy were set independently
+     Now we consider four distinct cases: 
+     1. Neither map nor policy was explicitly set, and something else, e.g., size, was
+     2. User set map not policy
+     3. User set policy not map */
+  if(cnk->flg_usr_rqs && (cnk_map == nco_cnk_map_nil) && (cnk_plc == nco_cnk_plc_nil)){
+    cnk->cnk_map=nco_cnk_map_rd1;
+    cnk->cnk_plc=nco_cnk_plc_g2d;
+  } /* endif */
+  if(cnk_map == nco_cnk_map_nil && cnk_plc != nco_cnk_plc_nil) cnk->cnk_map=nco_cnk_map_rd1;
+  if(cnk_plc == nco_cnk_plc_nil && cnk_map != nco_cnk_map_nil) cnk->cnk_plc=nco_cnk_plc_g2d;
 
   return rcd;
 } /* end nco_cnk_ini() */
@@ -294,14 +306,15 @@ nco_cnk_map_get /* [fnc] Convert user-specified chunking map to key */
 (const char *nco_cnk_map_sng) /* [sng] User-specified chunking map */
 {
   /* Purpose: Convert user-specified string to chunking map
-     Return nco_cnk_map_rd1 by default */
+     Return nco_cnk_map_xst by default */
   const char fnc_nm[]="nco_cnk_map_get()"; /* [sng] Function name */
   char *nco_prg_nm; /* [sng] Program name */
   nco_prg_nm=nco_prg_nm_get(); /* [sng] Program name */
 
   if(nco_cnk_map_sng == NULL){
-    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 \"rd1\".\n",nco_prg_nm,fnc_nm,nco_prg_nm);
-    return nco_cnk_map_rd1;
+    /* 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);
+    return nco_cnk_map_xst;
   } /* endif */
 
   if(!strcmp(nco_cnk_map_sng,"nil")) return nco_cnk_map_nil;
@@ -331,14 +344,15 @@ nco_cnk_plc_get /* [fnc] Convert user-specified chunking policy to key */
 (const char *nco_cnk_plc_sng) /* [sng] User-specified chunking policy */
 {
   /* Purpose: Convert user-specified string to chunking operation type 
-     Return nco_cnk_plc_g2d by default */
+     Return nco_cnk_plc_xst by default */
   const char fnc_nm[]="nco_cnk_plc_get()"; /* [sng] Function name */
   char *nco_prg_nm; /* [sng] Program name */
   nco_prg_nm=nco_prg_nm_get(); /* [sng] Program name */
 
   if(nco_cnk_plc_sng == NULL){
-    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 \"g2d\".\n",nco_prg_nm,fnc_nm,nco_prg_nm);
-    return nco_cnk_plc_g2d;
+    /* 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);
+    return nco_cnk_plc_xst;
   } /* endif */
 
   if(!strcmp(nco_cnk_plc_sng,"nil")) return nco_cnk_plc_nil;
@@ -354,6 +368,9 @@ nco_cnk_plc_get /* [fnc] Convert user-specified chunking policy to key */
   if(!strcmp(nco_cnk_plc_sng,"cnk_g3d")) return nco_cnk_plc_g3d;
   if(!strcmp(nco_cnk_plc_sng,"plc_g3d")) return nco_cnk_plc_g3d;
   if(!strcmp(nco_cnk_plc_sng,"xpl")) return nco_cnk_plc_xpl;
+  if(!strcmp(nco_cnk_plc_sng,"r1d")) return nco_cnk_plc_r1d;
+  if(!strcmp(nco_cnk_plc_sng,"cnk_r1d")) return nco_cnk_plc_r1d;
+  if(!strcmp(nco_cnk_plc_sng,"plc_r1d")) return nco_cnk_plc_r1d;
   if(!strcmp(nco_cnk_plc_sng,"cnk_xpl")) return nco_cnk_plc_xpl;
   if(!strcmp(nco_cnk_plc_sng,"plc_xpl")) return nco_cnk_plc_xpl;
   if(!strcmp(nco_cnk_plc_sng,"xst")) return nco_cnk_plc_xst;
@@ -791,6 +808,7 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
   nc_type var_typ_dsk; /* [nbr] Variable type */
 
   nco_bool *flg_mch; /* [flg] Name match (absolute or relative) between chunking structure 'cnk_sct' and dimension 'dmn_cmn' */
+  nco_bool flg_ovr; /* [flg] Override default chunking with user-specified chunking for this dimension */
   nco_bool flg_usr_rqs; /* [flg] User requested checking */
   nco_bool is_rec_var; /* [flg] Record variable */
   nco_bool is_chk_var; /* [flg] Check-summed variable */
@@ -861,7 +879,7 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
   is_chunked=False; /* [flg] Chunked variable */
   is_xpl_cnk=False; /* [flg] Explicitly chunked variable */
 
-  /* Obtain variable ID using group ID */
+  /* Obtain variable ID */
   (void)nco_inq_varid(grp_id_out,var_nm,&var_id_out);
   (void)nco_inq_varid(grp_id_in,var_nm,&var_id_in);
 
@@ -909,7 +927,7 @@ nco_cnk_sz_set_trv /* [fnc] Set chunksize parameters (GTT version of nco_cnk_sz_
     /* Some variables simply must be chunked */
     if(nco_dbg_lvl_get() >= nco_dbg_var && nco_dbg_lvl_get() != nco_dbg_dev) (void)fprintf(stdout,"%s: INFO %s %s must be chunked (record, compressed, or check-summed variable)\n",nco_prg_nm_get(),fnc_nm,var_nm);
   }else{
-    /* Explicitly turn-off chunking for arrays that are... */
+    /* Explicitly exit this chunking function now (and thus implement netCDF4-default chunking behavior) for variables that are... */
     if((cnk_plc == nco_cnk_plc_xpl && !is_xpl_cnk) || /* ...not explicitly chunked... */
        (cnk_plc == nco_cnk_plc_xst && !is_chunked) || /* ...not already chunked... */
        (cnk_plc == nco_cnk_plc_g2d && dmn_nbr < 2) || /* ...much too small... */
@@ -1095,11 +1113,13 @@ cnk_xpl_override: /* end goto */
 
   /* Override "reasonable" defaults with explicitly set per-dimension sizes, if any */
   flg_mch=(nco_bool *)nco_malloc(dmn_nbr*sizeof(nco_bool));
+  /* Loop over all dimensions in this variable */
   for(dmn_idx=0;dmn_idx<dmn_nbr;dmn_idx++){
 
     /* Initialize to false then override */
     flg_mch[dmn_idx]=False;
 
+    /* Loop over all user-specified chunk-sizes */
     for(cnk_idx=0;cnk_idx<cnk_nbr;cnk_idx++){
 
       if(cnk_dmn[cnk_idx]->nm_fll){
@@ -1108,32 +1128,49 @@ cnk_xpl_override: /* end goto */
         if(!strcmp(cnk_dmn[cnk_idx]->nm,dmn_cmn[dmn_idx].nm)) flg_mch[dmn_idx]=True;
       } /* end else */
 
-      /* Name match found */
+      /* User-specified name matches current dimension name */
       if(flg_mch[dmn_idx]){
-        cnk_sz[dmn_idx]=cnk_dmn[cnk_idx]->sz;
-        /* Is this a record dimension? */
-        if(dmn_cmn[dmn_idx].is_rec_dmn){
-          /* dmn_sz of record dimension can/will be zero in output file
-	     Allow (though warn) when cnk_sz > dmn_sz in such cases */
-          if(dmn_cmn[dmn_idx].NON_HYP_DMN){
-            if(dmn_cmn[dmn_idx].sz > 0 && /* Warn only after records have been written */
-	       cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].sz){
-              (void)fprintf(stderr,"%s: WARNING %s allowing user-specified record dimension %s chunksize %lu which exceeds current output file record dimension size = %lu. May fail if output file is not concatenated from multiple inputs.\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_dmn[cnk_idx]->sz,(unsigned long)dmn_cmn[dmn_idx].sz);
-            } /* endif too big */
-          }else{ /* !NON_HYP_DMN */
-            if(cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].dmn_cnt){
-              (void)fprintf(stderr,"%s: WARNING %s allowing user-specified record dimension %s chunksize = %lu which exceeds user-specified record dimension input hyperslab size = %lu. May fail if output file is not concatenated from multiple inputs.\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_dmn[cnk_idx]->sz,(unsigned long)dmn_cmn[dmn_idx].dmn_cnt);
-            } /* endif too big */
-          } /* !NON_HYP_DMN */
-        }else{ /* !rcd_dmn_id */
-          if(cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].sz){
-            /* Unlike record dimensions, non-record dimensions must have cnk_sz <= dmn_sz */
-            (void)fprintf(stderr,"%s: WARNING %s trimming user-specified fixed dimension %s chunksize from %lu to %lu\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_dmn[cnk_idx]->sz,(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;
-          } /* endif */
-        } /* !rcd_dmn_id */
-        break;
+	flg_ovr=False;
+
+	/* Override default chunking with user-specified chunking for this dimension if... */
+	if(
+	   /* ... Policy is anything but r1d or ...*/
+	   (cnk_plc != nco_cnk_plc_r1d) ||
+	   /* ... Policy is r1d and this is the matching r1d coordinate or ... */
+	   (cnk_plc == nco_cnk_plc_r1d && (dmn_nbr == 1 && is_rec_var)) ||
+	   False){
+	  /* Perform override */
+	  cnk_sz[dmn_idx]=cnk_dmn[cnk_idx]->sz;
+	  flg_ovr=True;
+	} /* endif */
+
+	/* Sanity checks for dimensions that were over-ridden by user-specified chunksizes */
+	if(flg_ovr){
+	  /* Is this a record dimension? */
+	  if(dmn_cmn[dmn_idx].is_rec_dmn){
+	    /* dmn_sz of record dimension can/will be zero in output file
+	       Allow (though warn) when cnk_sz > dmn_sz in such cases */
+	    if(dmn_cmn[dmn_idx].NON_HYP_DMN){
+	      if(dmn_cmn[dmn_idx].sz > 0 && /* Warn only after records have been written */
+		 cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].sz){
+		(void)fprintf(stderr,"%s: WARNING %s allowing user-specified record dimension %s chunksize %lu which exceeds current output file record dimension size = %lu. May fail if output file is not concatenated from multiple inputs.\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_dmn[cnk_idx]->sz,(unsigned long)dmn_cmn[dmn_idx].sz);
+	      } /* endif too big */
+	    }else{ /* !NON_HYP_DMN */
+	      if(cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].dmn_cnt){
+		(void)fprintf(stderr,"%s: WARNING %s allowing user-specified record dimension %s chunksize = %lu which exceeds user-specified record dimension input hyperslab size = %lu. May fail if output file is not concatenated from multiple inputs.\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_dmn[cnk_idx]->sz,(unsigned long)dmn_cmn[dmn_idx].dmn_cnt);
+	      } /* endif too big */
+	    } /* !NON_HYP_DMN */
+	  }else{ /* !rcd_dmn_id */
+	    if(cnk_sz[dmn_idx] > (size_t)dmn_cmn[dmn_idx].sz){
+	      /* Unlike record dimensions, non-record dimensions must have cnk_sz <= dmn_sz */
+	      (void)fprintf(stderr,"%s: WARNING %s trimming user-specified fixed dimension %s chunksize from %lu to %lu\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[dmn_idx].nm,(unsigned long)cnk_dmn[cnk_idx]->sz,(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;
+	    } /* endif */
+	  } /* !rcd_dmn_id */
+	} /* !flg_ovr */
+	/* Dimension matched this chunk name, no need to search other chunk names */
+	break;
       } /* cnk_nm != dmn_nm */
     } /* end loop over dimensions */
   } /* end loop over cnk */
diff --git a/src/nco/nco_cnk.h b/src/nco/nco_cnk.h
index afe10b0..609191f 100644
--- a/src/nco/nco_cnk.h
+++ b/src/nco/nco_cnk.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.h,v 1.37 2014/02/01 02:52:30 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnk.h,v 1.39 2014/08/14 22:44:39 zender Exp $ */
 
 /* Purpose: Description (definition) of chunking functions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_cnk.h" *//* Chunking */
@@ -36,7 +37,8 @@ enum nco_cnk_plc{ /* [enm] Chunking policy */
   nco_cnk_plc_g3d, /* 3 [enm] Chunk variables >= three dimensions */
   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_uck, /* 6 [enm] Unchunk all chunked variables */
+  nco_cnk_plc_r1d /* 7 [enm] Chunk record coordinates == one dimension */
 }; /* 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 c4c6ee3..81f8288 100644
--- a/src/nco/nco_cnv_arm.c
+++ b/src/nco/nco_cnv_arm.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.c,v 1.35 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.c,v 1.36 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: ARM conventions, e.g., http://www.arm.gov/data/time.stm */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 8b129a1..12dd3c3 100644
--- a/src/nco/nco_cnv_arm.h
+++ b/src/nco/nco_cnv_arm.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.h,v 1.29 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_arm.h,v 1.30 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: ARM conventions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_cnv_arm.h" *//* ARM conventions */
diff --git a/src/nco/nco_cnv_csm.c b/src/nco/nco_cnv_csm.c
index c4234e7..ea2bab8 100644
--- a/src/nco/nco_cnv_csm.c
+++ b/src/nco/nco_cnv_csm.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.c,v 1.113 2014/03/26 18:55:58 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.c,v 1.115 2014/07/15 18:48:55 zender Exp $ */
 
 /* Purpose: CCM/CCSM/CF conventions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_cnv_csm.h" /* CCM/CCSM/CF conventions */
 
@@ -302,7 +303,7 @@ nco_cnv_cf_cll_mth_add               /* [fnc] Add cell_methods attributes */
     /* Edit group name for output */
     if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
 
-    /* Obtain output group ID using full group name */
+    /* Obtain output group ID */
     (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
 
     /* Memory management after current extracted group */
diff --git a/src/nco/nco_cnv_csm.h b/src/nco/nco_cnv_csm.h
index 9436bdb..5ce80e1 100644
--- a/src/nco/nco_cnv_csm.h
+++ b/src/nco/nco_cnv_csm.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.h,v 1.42 2014/02/17 23:12:38 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_cnv_csm.h,v 1.43 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: CCM/CCSM/CF conventions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_cnv_csm.h" *//* CCM/CCSM/CF conventions */
diff --git a/src/nco/nco_ctl.c b/src/nco/nco_ctl.c
index 96a74a5..09ee35f 100644
--- a/src/nco/nco_ctl.c
+++ b/src/nco/nco_ctl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.c,v 1.471 2014/05/27 22:13:54 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.c,v 1.491 2014/08/27 04:44:01 zender Exp $ */
 
 /* Purpose: Program flow control functions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_ctl.h" /* Program flow control functions */
 
@@ -23,11 +24,11 @@ nco_cmp_get(void) /* [fnc] Return compiler and version */
   static const char cmp_nm[]="xlC"; /* [sng] Compiler name */
   static const char cmp_sng[]="Token __xlC__ defined in nco_cmp_get(), probably compiled with AIX xlC_r or xlC"; /* [sng] Compiler string */
 #endif /* !__xlC__ */
-#if defined(__GNUC__) && !defined(__INTEL_COMPILER) && !defined(__PATHCC__) && !defined(PGI_CC)
+#if defined(__GNUC__) && !defined(__clang) && !defined(__INTEL_COMPILER) && !defined(__PATHCC__) && !defined(PGI_CC)
   /* Testing for GCC macros early is dangerous because some compilers, 
      including Intel's, define GCC macros for compatibility */
   static const char cmp_nm[]="gcc"; /* [sng] Compiler name */
-  static const char cmp_sng[]="Token __GNUC__ defined in nco_cmp_get(), probably compiled with GNU gcc"; /* [sng] Compiler string */
+  static const char cmp_sng[]="Token __GNUC__ defined in nco_cmp_get(). Compiled with GNU gcc (or a compiler that emulates gcc)."; /* [sng] Compiler string */
   static const char cmp_vrs[]=TKN2SNG(__VERSION__); // [sng] Compiler version
   static const char cmp_vrs_mjr[]=TKN2SNG(__GNUC__); // [sng] Compiler major version
   static const char cmp_vrs_mnr[]=TKN2SNG(__GNUC_MINOR__); // [sng] Compiler minor version
@@ -42,6 +43,11 @@ nco_cmp_get(void) /* [fnc] Return compiler and version */
     (void)fprintf(stderr,"%s: INFO GCC version is %s\n",nco_prg_nm_get(),cmp_vrs);
   } /* endif dbg */
 #endif /* !__GNUC__ */
+#ifdef __clang
+  /* Some compilers, including clang, also define __GNUC__ by default */
+  static const char cmp_nm[]="clang";
+  static const char cmp_sng[]="Token __clang defined in nco_cmp_get(), probably compiled with LLVM clang"; /* [sng] Compiler string */
+#endif /* !__clang */
 #ifdef __INTEL_COMPILER
   /* Some compilers, including icc, also define __GNUC__ by default */
   static const char cmp_nm[]="icc";
@@ -57,8 +63,8 @@ nco_cmp_get(void) /* [fnc] Return compiler and version */
   static const char cmp_sng[]="Token PGI_CC defined in nco_cmp_get(), probably compiled with PGI pgcc"; /* [sng] Compiler string */
 #endif /* !PGI_CC */
 
-  /* In case none of the above tokens matched */
-#if !defined(NCO_XLC_LIKELY) && !defined(__GNUC__) && !defined(__INTEL_COMPILER) && !defined(__PATHCC__) && !defined(PGI_CC)
+  /* No tokens matched */
+#if !defined(NCO_XLC_LIKELY) && !defined(__clang) && !defined(__GNUC__) && !defined(__INTEL_COMPILER) && !defined(__PATHCC__) && !defined(PGI_CC)
   /* Unknown compiler */
   static const char cmp_nm[]="unknown"; /* [sng] Compiler name */
   static const char cmp_sng[]="Unknown compiler tokens in nco_cmp_get(), compiler is unknown"; /* [sng] Compiler string */
@@ -91,9 +97,13 @@ nco_mpi_get(void) /* [fnc] Return MPI implementation */
   static const char mpi_nm[]="MPICH2"; /* [sng] MPI name */
   static const char mpi_sng[]="Token MPICH2 defined in nco_mpi_get(), MPI environment is probably MPICH2, i.e., MPICH version 2"; /* [sng] MPI string */
 #endif /* !MPICH2 */
+#ifdef OMPI_MPI_H
+  static const char mpi_nm[]="OPENMPI"; /* [sng] MPI name */
+  static const char mpi_sng[]="Token OMPI_MPI_H defined in nco_mpi_get(), MPI environment is probably OpenMPI"; /* [sng] MPI string */
+#endif /* !OMPI_MPI_H */
 
   /* In case no token matched */
-#if !defined(_H_MPI) && !defined(LAM_MPI) && (MPICH_NAME != '1') && !defined(MPICH2)
+#if !defined(_H_MPI) && !defined(LAM_MPI) && (MPICH_NAME != '1') && !defined(MPICH2) && !defined(OMPI_MPI_H)
 #ifndef MPI_VERSION
   /* MPI is not installed */
   static const char mpi_nm[]="none"; /* [sng] MPI name */
@@ -680,30 +690,20 @@ nco_cnf_prn(void) /* [fnc] Print NCO configuration and help text */
   /* Purpose: Print NCO configuration and help text */
 
   (void)fprintf(stdout,"Homepage: http://nco.sf.net\n");
-  (void)fprintf(stdout,"User's Guide: http://nco.sf.net/nco.html\n");
+  (void)fprintf(stdout,"User Guide: http://nco.sf.net/nco.html\n");
   /* fxm: TKN2YESNO breaks when TKN is undefined
      Full macro language like M4 might be useful here, though probably too much trouble */
 #define TKN2YESNO(x) ((x+0) ? ("No"):("Yes"))
   /* NB: Keep configuration option tokens consistent among configure.ac, bld/Makefile, and nco_ctl.c
      Alphabetize list by first word in English text description of token */
-  (void)fprintf(stdout,"Configuration Option:\tActive?\tMeaning or Reference:\nCheck _FillValue\t%s\thttp://nco.sf.net/nco.html#mss_val\nCheck missing_value\t%s\thttp://nco.sf.net/nco.html#mss_val\nCompressed netCDF3\t%s\thttp://nco.sf.net/nco.html#znetcdf (pre-alpha)\nDAP clients (libdap)\t%s\thttp://nco.sf.net/nco.html#dap\nDAP clients (libnetcdf)\t%s\thttp://nco.sf.net/nco.html#dap\nDebugging: Custom\t%s\tPedantic, bounds checking (slowest execution)\nDebugging: Symbols\t%s\tProduce s [...]
+  (void)fprintf(stdout,"Configuration Option:\tActive?\tMeaning or Reference:\nCheck _FillValue\t%s\thttp://nco.sf.net/nco.html#mss_val\nCheck missing_value\t%s\thttp://nco.sf.net/nco.html#mss_val\nDAP clients\t\t%s\thttp://nco.sf.net/nco.html#dap\nDebugging: Custom\t%s\tPedantic, bounds checking (slowest execution)\nDebugging: Symbols\t%s\tProduce symbols for debuggers (e.g., dbx, gdb)\nGNU Scientific Library\t%s\thttp://nco.sf.net/nco.html#gsl\nHDF4 support\t\t%s\thttp://nco.sf.net/nco [...]
 		(!strcmp("_FillValue",nco_mss_val_sng_get())) ? "Yes" : "No",
 		(!strcmp("missing_value",nco_mss_val_sng_get())) ? "Yes" : "No",
-#if defined(ENABLE_ZNETCDF) && (ENABLE_ZNETCDF)
+#if defined(ENABLE_DAP) && (ENABLE_DAP)
 		"Yes",
-#else /* !ENABLE_ZNETCDF */
+#else /* !ENABLE_DAP */
 		"No",
-#endif /* !ENABLE_ZNETCDF */
-#if defined(ENABLE_DAP_OPENDAP) && (ENABLE_DAP_OPENDAP)
-		"Yes",
-#else /* !ENABLE_DAP_OPENDAP */
-		"No",
-#endif /* !ENABLE_DAP_OPENDAP */
-#if defined(ENABLE_DAP_NETCDF) && (ENABLE_DAP_NETCDF)
-		"Yes",
-#else /* !ENABLE_DAP_NETCDF */
-		"No",
-#endif /* !ENABLE_DAP_NETCDF */
+#endif /* !ENABLE_DAP */
 #if defined(ENABLE_DEBUG_CUSTOM) && (ENABLE_DEBUG_CUSTOM)
 		"Yes",
 #else /* !ENABLE_DEBUG_CUSTOM */
@@ -799,7 +799,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 "Staycation: New records set\n";
+  return "UHS Registration. Go Trojans!\n";
 } /* end nco_nmn_get() */
 
 char * /* O [sng] nm_in stripped of any path (i.e., program name stub) */ 
@@ -922,7 +922,7 @@ 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_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");
     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_plc plc] [--cnk_scl sz] [-D nco_dbg_lvl] [-d ...] [-F] [--fix_rec_dmn dim] [--fl_fmt fmt] [-G grp:lvl] [-g ...] [-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] [-R] [-r] [--rad] [--ram_all] [-s for [...]
+    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_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] [-R] [-r] [--rad] [...]
     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_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");
@@ -1009,6 +1009,7 @@ nco_usg_prn(void)
     if(prg_lcl == ncrename) (void)fprintf(stdout,"-g, --grp --group\told_grp,new_grp Group's old and new names\n");
     if(prg_lcl != ncrename) (void)fprintf(stdout,"-g, --grp grp1[,grp2[...]] Group(s) to process (regular expressions supported)\n");
   } /* end if */
+  if(strstr(opt_sng,"--gxvx, --grp_xtr_var_xcl")) (void)fprintf(stdout,"    --gxvx, --grp_xtr_var_xcl\tGroup Extraction Variable Exclusion\n");
 #endif /* !ENABLE_NETCDF4 */
   if(strstr(opt_sng,"[-H]")){
     if(prg_lcl == ncks) (void)fprintf(stdout,"-H, --data, --hieronymus\tToggle printing data\n");
@@ -1112,7 +1113,7 @@ nco_usg_prn(void)
   (void)fprintf(stdout,"\nEight ways to find more help on %s and/or NCO:\n",nco_prg_nm_get());
   (void)fprintf(stdout,"1. Examples:     http://nco.sf.net/nco.html#xmp_%s\n",nco_prg_nm_get());
   (void)fprintf(stdout,"2. Ref. manual:  http://nco.sf.net/nco.html#%s\n",nco_prg_nm_get());
-  (void)fprintf(stdout,"3. User's Guide: http://nco.sf.net#RTFM\n");
+  (void)fprintf(stdout,"3. User Guide:   http://nco.sf.net#RTFM\n");
   (void)fprintf(stdout,"4. Manual pages: \'man %s\', \'man nco\', ...\n",nco_prg_nm_get());
   (void)fprintf(stdout,"5. Homepage:     http://nco.sf.net\n");
   (void)fprintf(stdout,"6. FAQ:          http://nco.sf.net#FAQ\n");
@@ -1121,4 +1122,3 @@ nco_usg_prn(void)
   (void)fprintf(stdout,"Post questions, suggestions, patches at http://sf.net/projects/nco\n");
 
 } /* end nco_usg_prn() */
-
diff --git a/src/nco/nco_ctl.h b/src/nco/nco_ctl.h
index 23c4550..4809425 100644
--- a/src/nco/nco_ctl.h
+++ b/src/nco/nco_ctl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.h,v 1.47 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_ctl.h,v 1.48 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Program flow control functions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_ctl.h" *//* Program flow control functions */
diff --git a/src/nco/nco_dbg.c b/src/nco/nco_dbg.c
index 8d9c984..3f6809a 100644
--- a/src/nco/nco_dbg.c
+++ b/src/nco/nco_dbg.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.c,v 1.21 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.c,v 1.22 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Debugging */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 d4d6711..6b83ac4 100644
--- a/src/nco/nco_dbg.h
+++ b/src/nco/nco_dbg.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.h,v 1.19 2013/12/31 05:14:01 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dbg.h,v 1.20 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Debugging */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_dbg.h" *//* Debugging */
diff --git a/src/nco/nco_dmn_utl.c b/src/nco/nco_dmn_utl.c
index 2dbe76a..1e9f5ce 100644
--- a/src/nco/nco_dmn_utl.c
+++ b/src/nco/nco_dmn_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.c,v 1.69 2014/05/10 05:33:52 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.c,v 1.70 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Dimension utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 6235817..6e2cffa 100644
--- a/src/nco/nco_dmn_utl.h
+++ b/src/nco/nco_dmn_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.h,v 1.49 2014/01/02 22:56:39 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_dmn_utl.h,v 1.50 2014/06/15 21:06:22 zender Exp $ */
 
 /* Purpose: Dimension utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_dmn_utl.h" *//* Dimension utilities */
diff --git a/src/nco/nco_fl_utl.c b/src/nco/nco_fl_utl.c
index 7a108f9..0faae3b 100644
--- a/src/nco/nco_fl_utl.c
+++ b/src/nco/nco_fl_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.c,v 1.240 2014/05/22 15:40:34 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.c,v 1.249 2014/08/22 20:27:48 zender Exp $ */
 
 /* Purpose: File manipulation */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_fl_utl.h" /* File manipulation */
 
@@ -33,6 +34,8 @@ nco_create_mode_mrg /* [fnc] Merge clobber mode with user-specified file format
   md_create=md_clobber;
   if(fl_out_fmt == NC_FORMAT_64BIT){
     md_create|=NC_64BIT_OFFSET;
+  }else if(fl_out_fmt == NC_FORMAT_CDF5){
+    md_create|=NC_64BIT_DATA;
   }else if(fl_out_fmt == NC_FORMAT_NETCDF4){
     md_create|=NC_NETCDF4;
   }else if(fl_out_fmt == NC_FORMAT_NETCDF4_CLASSIC){
@@ -44,6 +47,10 @@ nco_create_mode_mrg /* [fnc] Merge clobber mode with user-specified file format
     nco_exit(EXIT_FAILURE);
   } /* end else fl_out_fmt */
 
+#ifdef ENABLE_MPI
+  md_create|=NC_NETCDF4|NC_MPIIO;
+#endif /* !ENABLE_MPI */
+
   return md_create;
 } /* end nco_create_mode_mrg() */
 
@@ -54,7 +61,9 @@ nco_create_mode_prs /* [fnc] Parse user-specified file format */
 {
   int rcd=NC_NOERR; /* [rcd] Return code */
 
-  /* Careful! Some valid format strings are subsets of other valid format strings */
+  /* Careful! Some valid format strings are subsets of other valid format strings:
+     "classic" is a sub-string of itself and of "netcdf4_classic"
+     "netcdf4" is a sub-string of itself and of "netcdf4_classic" */
   if(strcasestr("classic",fl_fmt_sng) && !strcasestr(fl_fmt_sng,"netcdf4")){
     /* If "classic" contains string and string does not contain "netcdf4" */
     *fl_fmt_enm=NC_FORMAT_CLASSIC;
@@ -75,13 +84,13 @@ nco_create_mode_prs /* [fnc] Parse user-specified file format */
     (void)fprintf(stderr,"%s: ERROR This NCO was not built with netCDF4 and cannot create the requested netCDF4 file format. HINT: Re-try with netCDF3 file format, either by omitting the filetype specification, or by explicitly specifying the \"-3\", \"--fl_fmt=classic\", \"-6\",  or \"--fl_fmt=64bit\" options.\n",nco_prg_nm_get());
     nco_exit(EXIT_FAILURE);
 #endif /* !ENABLE_NETCDF4 */
-  }else if(strcasestr("znetcdf",fl_fmt_sng)){
-#ifdef ENABLE_ZNETCDF
-    /* If "znetcdf" contains string */
-    *fl_fmt_enm=NC_COMPRESS;
-#else /* !ENABLE_ZNETCDF */
-    (void)fprintf(stderr,"%s: ERROR This NCO was not built with znetCDF (http://snow.cit.cornell.edu/noon/z_netcdf.html) and cannot create the requested znetCDF file format. HINT: Re-try with different (or no) specified file format, such as \"classic\" or \"64bit\".\n",nco_prg_nm_get());
-#endif /* !ENABLE_ZNETCDF */
+  }else if(strcasestr("pnetcdf",fl_fmt_sng)){
+#ifdef ENABLE_MPI
+    /* If "pnetcdf" contains string */
+    *fl_fmt_enm=NC_FORMAT_CDF5;
+#else /* !ENABLE_MPI */
+    (void)fprintf(stderr,"%s: ERROR This NCO was not built with PnetCDF (http://trac.mcs.anl.gov/projects/parallel-netcdf) and cannot create the requested PnetCDF file format. HINT: Re-try with supported file format such as \"classic\" or \"64bit\".\n",nco_prg_nm_get());
+#endif /* !ENABLE_MPI */
   }else{
     (void)fprintf(stderr,"%s: ERROR Unknown output file format \"%s\" requested. Valid formats are (unambiguous leading characters of) \"classic\", \"64bit\", \"netcdf4\", and \"netcdf4_classic\".\n",nco_prg_nm_get(),fl_fmt_sng);
     nco_exit(EXIT_FAILURE);
@@ -233,8 +242,8 @@ nco_fl_cp /* [fnc] Copy first file to second */
 
   /* 20131227 Allow for whitespace characters in fl_dst 
      Assume CDL translation results in acceptable name for shell commands */
-  fl_src_cdl=nm2sng_cdl(fl_src);
-  fl_dst_cdl=nm2sng_cdl(fl_dst);
+  fl_src_cdl=nm2sng_fl(fl_src);
+  fl_dst_cdl=nm2sng_fl(fl_dst);
 
   /* 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));
@@ -415,9 +424,10 @@ nco_fl_lst_mk /* [fnc] Create file list from command line positional arguments *
 	} /* endelse */
 
 	/* Allocate temporary space for input buffer */
-#define FL_NM_IN_MAX_LNG 256 /* [nbr] Maximum length of input file name */
-#define FL_LST_IN_MAX_LNG 10000000 /* [nbr] Maximum length of input file list */
-	/* 20121207: 10 MB is per user request of S. McGinnis on 20121130 */
+#define FL_NM_IN_MAX_LNG 256 /* [nbr] Maximum length of single input file name */
+#define FL_LST_IN_MAX_LNG 504576001 /* [nbr] Maximum length of input file list */
+	/* 20121207: 10 MB per request of S. McGinnis 20121130
+	   20140711: 50 MB per request of Christine Smit 20140711 for 30 years of hourly data files each 192 characters long */
 	bfr_in=(char *)nco_malloc((FL_NM_IN_MAX_LNG+1L)*sizeof(char));
 	(void)sprintf(fmt_sng,"%%%ds\n",FL_NM_IN_MAX_LNG);
 
@@ -532,6 +542,7 @@ nco_fl_mk_lcl /* [fnc] Retrieve input file and return local filename */
   const char fnc_nm[]="nco_fl_mk_lcl()"; /* [sng] Function name */
   const char ftp_url_sng[]="ftp://";
   const char http_url_sng[]="http://";
+  const char https_url_sng[]="https://";
   const char sftp_url_sng[]="sftp://";
 
 #ifdef ENABLE_DAP
@@ -571,8 +582,8 @@ nco_fl_mk_lcl /* [fnc] Retrieve input file and return local filename */
     fl_nm_lcl=(char *)nco_malloc(strlen(fl_pth_lcl_tmp)+1UL);
     (void)strcpy(fl_nm_lcl,fl_pth_lcl_tmp);
     fl_nm_lcl_tmp=(char *)nco_free(fl_nm_lcl_tmp);
-  }else if(strstr(fl_nm_lcl,http_url_sng) == fl_nm_lcl){
-    /* Filename starts with "http://": Try DAP first (if available), then wget */
+  }else if((strstr(fl_nm_lcl,http_url_sng) == fl_nm_lcl) || (strstr(fl_nm_lcl,https_url_sng) == fl_nm_lcl)){
+    /* Filename starts with "http://" or "https://" so try DAP first (if available), then wget */
 
 #ifdef ENABLE_DAP
     /* Filename has http:// prefix so try DAP access to unadulterated filename */
@@ -1161,8 +1172,8 @@ nco_fl_mv /* [fnc] Move first file to second */
 
   /* 20131227 Allow for whitespace characters in fl_dst 
      Assume CDL translation results in acceptable name for shell commands */
-  fl_src_cdl=nm2sng_cdl(fl_src);
-  fl_dst_cdl=nm2sng_cdl(fl_dst);
+  fl_src_cdl=nm2sng_fl(fl_src);
+  fl_dst_cdl=nm2sng_fl(fl_dst);
 
   /* 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));
@@ -1364,8 +1375,12 @@ nco_fl_open /* [fnc] Open file using appropriate buffer size hints and verbosity
   if(flg_rqs_vrb_xpl) (void)fprintf(stderr,"%s: INFO %s reports nc__open() will request file buffer size = %lu bytes\n",nco_prg_nm_get(),fnc_nm,(unsigned long)*bfr_sz_hnt); 
 
   /* Pass local copy of size hint otherwise user-specified value is overwritten on first call */
+#ifdef ENABLE_MPI
+  rcd=nco_open_par(fl_nm,md_open|NC_MPIIO,MPI_COMM_WORLD,MPI_INFO_NULL,nc_id);
+#else /* !ENABLE_MPI */
   rcd=nco__open(fl_nm,md_open,&bfr_sz_hnt_lcl,nc_id);
-  
+#endif /* !ENABLE_MPI */
+
   /* Print results using same verbosity criteria
      NB: bfr_sz_hnt_lcl is never NULL because nco__open() always returns a valid size */
   if(flg_rqs_vrb_mpl || flg_rqs_vrb_xpl) (void)fprintf(stderr,"%s: INFO %s reports nc__open() opened file with buffer size = %lu bytes\n",nco_prg_nm_get(),fnc_nm,(unsigned long)bfr_sz_hnt_lcl);
@@ -1568,7 +1583,11 @@ nco_fl_out_open /* [fnc] Open output file subject to availability and user input
   bfr_sz_hnt_lcl= (bfr_sz_hnt) ? *bfr_sz_hnt : NC_SIZEHINT_DEFAULT; /* [B] Buffer size hint */
 
   if(FORCE_OVERWRITE){
+#ifdef ENABLE_MPI
+    rcd+=nco_create_par(fl_out_tmp,md_create,MPI_COMM_WORLD,MPI_INFO_NULL,out_id);
+#else /* !ENABLE_MPI */
     rcd+=nco__create(fl_out_tmp,md_create,NC_SIZEHINT_DEFAULT,&bfr_sz_hnt_lcl,out_id);
+#endif /* !ENABLE_MPI */
     return fl_out_tmp;
   } /* end if */
 
@@ -1654,8 +1673,12 @@ nco_fl_out_open /* [fnc] Open output file subject to availability and user input
       break;
     case 'O':
     case 'o':
-      rcd+=nco__create(fl_out_tmp,md_create,NC_SIZEHINT_DEFAULT,&bfr_sz_hnt_lcl,out_id);
-      break;
+#ifdef ENABLE_MPI
+    rcd+=nco_create_par(fl_out_tmp,md_create,MPI_COMM_WORLD,MPI_INFO_NULL,out_id);
+#else /* !ENABLE_MPI */
+    rcd+=nco__create(fl_out_tmp,md_create,NC_SIZEHINT_DEFAULT,&bfr_sz_hnt_lcl,out_id);
+#endif /* !ENABLE_MPI */
+       break;
     case 'A':
     case 'a':
       /* Incur expense of copying current file to temporary file */
@@ -1670,7 +1693,11 @@ nco_fl_out_open /* [fnc] Open output file subject to availability and user input
     md_create=NC_NOCLOBBER;
     md_create=nco_create_mode_mrg(md_create,fl_out_fmt);
     if(RAM_CREATE) md_create|=NC_DISKLESS|NC_WRITE;
+#ifdef ENABLE_MPI
+    rcd+=nco_create_par(fl_out_tmp,md_create,MPI_COMM_WORLD,MPI_INFO_NULL,out_id);
+#else /* !ENABLE_MPI */
     rcd+=nco__create(fl_out_tmp,md_create,NC_SIZEHINT_DEFAULT,&bfr_sz_hnt_lcl,out_id);
+#endif /* !ENABLE_MPI */
   } /* end if output file does not already exist */
 
   if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
diff --git a/src/nco/nco_fl_utl.h b/src/nco/nco_fl_utl.h
index 711a173..6f688bb 100644
--- a/src/nco/nco_fl_utl.h
+++ b/src/nco/nco_fl_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.h,v 1.76 2014/02/04 20:58:53 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_fl_utl.h,v 1.77 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: File manipulation */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_fl_utl.h" *//* File manipulation */
diff --git a/src/nco/nco_grp_trv.c b/src/nco/nco_grp_trv.c
index 1fadda2..37d677d 100644
--- a/src/nco/nco_grp_trv.c
+++ b/src/nco/nco_grp_trv.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.c,v 1.297 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.c,v 1.298 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: netCDF4 traversal storage */
 
-/* Copyright (C) 2011--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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:
    Group Traversal Table (GTT): functions prefixed with "trv_tbl_"
diff --git a/src/nco/nco_grp_trv.h b/src/nco/nco_grp_trv.h
index 83e2ad4..5c40ed0 100644
--- a/src/nco/nco_grp_trv.h
+++ b/src/nco/nco_grp_trv.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.h,v 1.117 2014/04/17 06:13:38 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_trv.h,v 1.118 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: netCDF4 traversal storage */
 
-/* Copyright (C) 2011--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_grp_trv.h" *//* Group traversal */
diff --git a/src/nco/nco_grp_utl.c b/src/nco/nco_grp_utl.c
index 6a8b75e..38a4873 100644
--- a/src/nco/nco_grp_utl.c
+++ b/src/nco/nco_grp_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.c,v 1.1437 2014/05/27 01:23:41 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.c,v 1.1457 2014/08/26 20:10:16 zender Exp $ */
 
 /* Purpose: Group utilities */
 
-/* Copyright (C) 2011--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Testing:
    eos52nc4 ~/nco/data/in.he5 ~/in.nc4
@@ -440,7 +441,7 @@ nco_prn_att_trv /* [fnc] Traverse tree to print all group and global attributes
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
     trv_sct trv=trv_tbl->lst[idx_tbl];
     if(trv.nco_typ == nco_obj_typ_grp && trv.flg_xtr){
-      /* Obtain group ID from netCDF API using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(nc_id,trv.nm_fll,&grp_id);
 
       /* Obtain info for group */
@@ -981,11 +982,11 @@ nco_xtr_xcl /* [fnc] Convert extraction list to exclusion list */
      Consider, e.g., ncks -x -g g1
      In this case g1 and all descendents should be excluded
 
-     ncdismember needs to create extraction lists like: *g1*, ~(/g1/v1)
+     ncdismember needs to create extraction lists like: *g1*, ~(/g1/v1); or *g1*, ~v1;
      Potential avenues to implement this include
      1. ncks -x -g g1 -v v1
      2. ncks -x -g g1 -v /g1/v1
-     3. ncks --grp_xtr_var_xcl -g g1 -v v1
+     3. ncks --grp_xtr_var_xcl -g g1 -v v1 (method implemented in NCO 4.4.4 in 201405)
 
      Given that, here is how this routine and NCO actually uses flg_xcl:
      For variables, -x sets the exclusion flag and is "permanent", i.e., removes variable from extraction list
@@ -1051,12 +1052,12 @@ nco_xtr_crd_add                       /* [fnc] Add all coordinates to extraction
 void
 nco_xtr_cf_add                        /* [fnc] Add to extraction list variables associated with CF convention */
 (const int nc_id,                     /* I [ID] netCDF file ID */
- const char * const cf_nm,            /* I [sng] CF convention ("coordinates" or "bounds") */
+ const char * const cf_nm,            /* I [sng] CF convention ("ancillary_variables", "bounds", or "coordinates") */
  trv_tbl_sct * const trv_tbl)         /* I/O [sct] GTT (Group Traversal Table) */
 {
   /* Add to extraction list all variables associated with specified CF convention
      Driver routine for nco_xtr_cf_prv_add()
-     Detect associated coordinates specified by CF "bounds" and "coordinates" conventions
+     Detect associated coordinates specified by CF "ancillary_variables", "bounds", and "coordinates" conventions
      http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.1/cf-conventions.html#coordinate-system */ 
 
   const char fnc_nm[]="nco_xtr_cf_add()"; /* [sng] Function name */
@@ -1064,10 +1065,7 @@ nco_xtr_cf_add                        /* [fnc] Add to extraction list variables
   /* Search for and add CF-compliant bounds and coordinates to extraction list */
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
     trv_sct trv_obj=trv_tbl->lst[idx_tbl];
-    /* Filter extracted variables */
-    if(trv_obj.nco_typ == nco_obj_typ_var && trv_obj.flg_xtr){
-      (void)nco_xtr_cf_prv_add(nc_id,&trv_obj,cf_nm,trv_tbl);
-    } /* Filter extracted variables */
+    if(trv_obj.nco_typ == nco_obj_typ_var && trv_obj.flg_xtr) (void)nco_xtr_cf_prv_add(nc_id,&trv_obj,cf_nm,trv_tbl);
   } /* end loop over table */
 
   /* Print extraction list in debug mode */
@@ -1077,15 +1075,16 @@ nco_xtr_cf_add                        /* [fnc] Add to extraction list variables
 } /* nco_xtr_cf_add() */
 
 void
-nco_xtr_cf_prv_add                    /* [fnc] Add specified CF-compliant coordinates of specified variable to extraction list */
+nco_xtr_cf_prv_add                    /* [fnc] Add variables associated (via CF) with specified variable to extraction list */
 (const int nc_id,                     /* I [ID] netCDF file ID */
  const trv_sct * const var_trv,       /* I [sct] Variable (object) */
- const char * const cf_nm,            /* I [sng] CF convention ( "coordinates" or "bounds") */
+ const char * const cf_nm,            /* I [sng] CF convention ("ancillary_variables", "bounds", or "coordinates") */
  trv_tbl_sct * const trv_tbl)         /* I/O [sct] GTT (Group Traversal Table) */
 {
-  /* Detect associated coordinates specified by CF "bounds" or "coordinates" convention for single variable
-  Private routine called by nco_xtr_cf_add()
-  http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.1/cf-conventions.html#coordinate-system */ 
+  /* Detect associated variables specified by CF "ancillary_variables", "bounds", or "coordinates" convention
+     Private routine called by nco_xtr_cf_add()
+     http://cfconventions.org/1.6.html#ancillary-data
+     http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.1/cf-conventions.html#coordinate-system */ 
 
   char **cf_lst; /* [sng] 1D array of list elements */
   char att_nm[NC_MAX_NAME+1]; /* [sng] Attribute name */
@@ -1094,12 +1093,12 @@ nco_xtr_cf_prv_add                    /* [fnc] Add specified CF-compliant coordi
 
   int grp_id; /* [id] Group ID */
   int nbr_att; /* [nbr] Number of attributes */
-  int nbr_cf; /* [nbr] Number of coordinates specified in "bounds" or "coordinates" attribute */
+  int nbr_cf; /* [nbr] Number of variables specified in CF attribute ("ancillary_variables", "bounds", or "coordinates") */
   int var_id; /* [id] Variable ID */
 
   assert(var_trv->nco_typ == nco_obj_typ_var);
 
-  /* Obtain group ID from netCDF API using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id);
 
   /* Obtain variable ID */
@@ -1125,8 +1124,7 @@ nco_xtr_cf_prv_add                    /* [fnc] Add specified CF-compliant coordi
       /* Yes, get list of specified attributes */
       (void)nco_inq_att(grp_id,var_id,att_nm,&att_typ,&att_sz);
       if(att_typ != NC_CHAR){
-        (void)fprintf(stderr,"%s: WARNING \"%s\" attribute for variable %s is type %s, not %s. This violates CF convention for specifying additional attributes. Therefore will skip this attribute.\n",
-          nco_prg_nm_get(),att_nm,var_trv->nm_fll,nco_typ_sng(att_typ),nco_typ_sng(NC_CHAR));
+        (void)fprintf(stderr,"%s: WARNING \"%s\" attribute for variable %s is type %s, not %s. This violates CF convention for specifying additional attributes. Therefore will skip this attribute. If you want CF to support NC_STRING attributes, please tell them and CC: NCO.\n",nco_prg_nm_get(),att_nm,var_trv->nm_fll,nco_typ_sng(att_typ),nco_typ_sng(NC_CHAR));
         return;
       } /* end if */
       att_val=(char *)nco_malloc((att_sz+1L)*sizeof(char));
@@ -1135,9 +1133,9 @@ nco_xtr_cf_prv_add                    /* [fnc] Add specified CF-compliant coordi
       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 */
       cf_lst=nco_lst_prs_sgl_2D(att_val,dlm_sng,&nbr_cf);
-      /* ...for each coordinate in CF convention attribute, i.e., "bounds" or "coordinate"... */
+      /* ...for each coordinate in CF convention attribute, i.e., "ancillary_variables", "bounds", or "coordinate"... */
       for(int idx_cf=0;idx_cf<nbr_cf;idx_cf++){
         char *cf_lst_var=cf_lst[idx_cf];
         if(!cf_lst_var) continue;
@@ -1148,7 +1146,7 @@ nco_xtr_cf_prv_add                    /* [fnc] Add specified CF-compliant coordi
         char *ptr_chr;            /* [sng] Pointer to character '/' in full name */
         int psn_chr;              /* [nbr] Position of character '/' in in full name */
 
-        /* Construct full name of 'CF' variable to find using the full group name where variable resides */
+        /* Construct full name of CF variable */
         cf_lst_var_nm_fll=(char *)nco_malloc(strlen(var_trv->grp_nm_fll)+strlen(cf_lst_var)+2L);
         strcpy(cf_lst_var_nm_fll,var_trv->grp_nm_fll);
         if(strcmp(var_trv->grp_nm_fll,sls_sng)) strcat(cf_lst_var_nm_fll,sls_sng);
@@ -1161,14 +1159,11 @@ nco_xtr_cf_prv_add                    /* [fnc] Add specified CF-compliant coordi
 
           /* If variable is on list */
           if(trv_tbl_fnd_var_nm_fll(cf_lst_var_nm_fll,trv_tbl)){
-
             /* Mark it for extraction */
             (void)trv_tbl_mrk_xtr(cf_lst_var_nm_fll,True,trv_tbl);
-
-            /* Exclude ancestor with lower scope (closer to root) variables, add only the most in scope (usually in same group) */
+            /* Exclude ancestor (greater scope, closer to root) variables, add only most in-scope (usually in same group) */
             break;
-
-          } /* If variable is on list, mark it for extraction */
+          } /* end if */
 
           cf_lst_var_nm_fll[psn_chr]='\0';
           ptr_chr=strrchr(cf_lst_var_nm_fll,sls_chr);
@@ -1235,9 +1230,9 @@ nco_trv_tbl_nm_id                     /* [fnc] Create extraction list of nm_id_s
       grp_out_fll=(char *)nco_free(grp_out_fll);
 
       /* 20130213: Necessary to allow MM3->MM4 and MM4->MM3 workarounds
-      Store in/out group IDs as determined in nco_xtr_dfn() 
-      In MM3/4 cases, either grp_in_id or grp_out_id are always root
-      Other is always root unless GPE is used */
+	 Store in/out group IDs as determined in nco_xtr_dfn() 
+	 In MM3/4 cases, either grp_in_id or grp_out_id are always root
+	 Other is always root unless GPE is used */
       xtr_lst[nbr_tbl].grp_id_in=grp_id_in;
       xtr_lst[nbr_tbl].grp_id_out=grp_id_out;
       xtr_lst[nbr_tbl].id=var_id;
@@ -1276,10 +1271,10 @@ nco_xtr_crd_ass_add                   /* [fnc] Add to extraction list all coordi
     /* Filter variables to extract */
     if(var_trv.nco_typ == nco_obj_typ_var && var_trv.flg_xtr){
 
-      /* Obtain group ID using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
-      /* Obtain variable ID using group ID */
+      /* Obtain variable ID */
       (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
 
       /* Get number of dimensions for *variable* */
@@ -1399,33 +1394,27 @@ nco_xtr_crd_ass_add                   /* [fnc] Add to extraction list all coordi
 void
 nco_get_prg_info(void) /* [fnc] Get program info */
 {
-  /* Purpose: Return a numeric code depending on netCDF library version */
-
+  /* Purpose: Return numeric code depending on netCDF library version */
   char lbr_sng[NC_MAX_NAME+1];
 
   int rcd=3;
-
   strcpy(lbr_sng,nc_inq_libvers());
-#if defined(ENABLE_NETCDF4) && defined(ENABLE_NETCDF4)
-  rcd=40;
-  /* Used to detect buggy netCDF version 4.1; other versions are irrelavant */
-  if (lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '1' )
-  {
-    rcd=41;
-  }
-  else if (lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '3' && lbr_sng[3] == '.' && lbr_sng[4] == '1' )
-  {
-    rcd=43;
-  }
+#if defined(ENABLE_NETCDF4) && defined(HAVE_NETCDF4_H)
+  rcd=400;
+  /* Detect buggy netCDF version 4.1; other versions are irrelevant */
+  if(lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '1'){rcd=410;}
+  else if(lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '3' && lbr_sng[3] == '.' && lbr_sng[4] == '0' ){rcd=430;}
+  else if(lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '3' && lbr_sng[3] == '.' && lbr_sng[4] == '1' ){rcd=431;}
+  else if(lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '3' && lbr_sng[3] == '.' && lbr_sng[4] == '2' ){rcd=432;}
+  else if(lbr_sng[0] == '4' && lbr_sng[1] == '.' && lbr_sng[2] == '3' && lbr_sng[3] == '.' && lbr_sng[4] == '3' ){rcd=433;}
 #endif /* HAVE_NETCDF4_H */
-
   exit(rcd);
 } /* end nco_get_prg_info() */
 
 void 
-nco_xtr_lst_prn                            /* [fnc] Print name-ID structure list */
-(nm_id_sct * const nm_id_lst,          /* I [sct] Name-ID structure list */
- const int nm_id_nbr)                  /* I [nbr] Number of name-ID structures in list */
+nco_xtr_lst_prn /* [fnc] Print name-ID structure list */
+(nm_id_sct * const nm_id_lst, /* I [sct] Name-ID structure list */
+ const int nm_id_nbr) /* I [nbr] Number of name-ID structures in list */
 {
   (void)fprintf(stdout,"%s: INFO List: %d extraction variables\n",nco_prg_nm_get(),nm_id_nbr); 
   for(int idx=0;idx<nm_id_nbr;idx++) (void)fprintf(stdout,"[%d] %s\n",idx,nm_id_lst[idx].nm); 
@@ -1450,10 +1439,10 @@ nco_prn_xtr_mtd /* [fnc] Print variable metadata */
       int grp_id; /* [id] Group ID */
       int var_id; /* [id] Variable ID */
 
-      /* Obtain group ID using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
-      /* Obtain variable ID using group ID */
+      /* Obtain variable ID */
       (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
 
       /* Print variable attributes */
@@ -1697,42 +1686,35 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
   /* Isolate extra complexity of copying group metadata */
   if(CPY_GRP_METADATA){
     /* Extraction flag for groups was set in nco_xtr_grp_mrk() 
-    This loop defines those groups in output file and copies their metadata */
+       This loop defines those groups in output file and copies their metadata */
     for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
       trv_sct grp_trv=trv_tbl->lst[idx_tbl];
 
       /* If object is group ancestor of extracted variable */
       if(grp_trv.nco_typ == nco_obj_typ_grp && grp_trv.flg_xtr){
 
-        /* Obtain group ID from netCDF API using full group name */
+        /* Obtain group ID */
         (void)nco_inq_grp_full_ncid(nc_id,grp_trv.grp_nm_fll,&grp_id);
 
-        /* ncge case */ 
-        if(nco_prg_id_get() == ncge){
-
-          if(grp_trv.flg_nsm_prn){
-            /* Ensemble parent groups */
-            if(trv_tbl->nsm_sfx){
-              /* Define new name by appending suffix (e.g., /cesm + _avg) */
-              char *nm_fll_sfx=nco_bld_nsm_sfx(grp_trv.grp_nm_fll_prn,trv_tbl);
-              /* Use then delete new name */
-              if(gpe) grp_out_fll=nco_gpe_evl(gpe,nm_fll_sfx); else grp_out_fll=(char *)strdup(nm_fll_sfx);
-              nm_fll_sfx=(char *)nco_free(nm_fll_sfx);
-            }else{
-              if(gpe) grp_out_fll=nco_gpe_evl(gpe,grp_trv.grp_nm_fll_prn); else grp_out_fll=(char *)strdup(grp_trv.grp_nm_fll_prn);
-            } /* !nsm_sfx */
-          }else if(grp_trv.flg_nsm_mbr){
-            /* If group is ensemble member, do not create it in same location as input */
-            continue;
-          }else{
-            /* Regular group */
-            if(gpe) grp_out_fll=nco_gpe_evl(gpe,grp_trv.grp_nm_fll); else grp_out_fll=(char *)strdup(grp_trv.grp_nm_fll);
-          } /* !flg_nsm_prn */
-
-        }else{
-          /* Non ncge case: Edit group name for output */
-          if(gpe) grp_out_fll=nco_gpe_evl(gpe,grp_trv.grp_nm_fll); else grp_out_fll=(char *)strdup(grp_trv.grp_nm_fll);
-        } /* !ncge */
+        /* ncge groups require special handling */ 
+	if(nco_prg_id == ncge && grp_trv.flg_nsm_prn){
+	  /* Ensemble parent groups */
+	  if(trv_tbl->nsm_sfx){
+	    /* Define new name by appending suffix (e.g., /cesm + _avg) */
+	    char *nm_fll_sfx=nco_bld_nsm_sfx(grp_trv.grp_nm_fll_prn,trv_tbl);
+	    /* Use then delete new name */
+	    if(gpe) grp_out_fll=nco_gpe_evl(gpe,nm_fll_sfx); else grp_out_fll=(char *)strdup(nm_fll_sfx);
+	    nm_fll_sfx=(char *)nco_free(nm_fll_sfx);
+	  }else{
+	    if(gpe) grp_out_fll=nco_gpe_evl(gpe,grp_trv.grp_nm_fll_prn); else grp_out_fll=(char *)strdup(grp_trv.grp_nm_fll_prn);
+	  } /* !nsm_sfx */
+	}else if(nco_prg_id == ncge && grp_trv.flg_nsm_mbr){
+	  /* Ensemble member groups are not written to output */
+	  continue;
+	}else{
+	  /* Regular (non-ensemble-related) group (within ncge or any other operator) */
+	  if(gpe) grp_out_fll=nco_gpe_evl(gpe,grp_trv.grp_nm_fll); else grp_out_fll=(char *)strdup(grp_trv.grp_nm_fll);
+	} /* !flg_nsm */
 
         /* If output group does not exist, create it */
         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);
@@ -1741,14 +1723,13 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
         if(grp_trv.nbr_att){
           PCK_ATT_CPY=True;
           (void)nco_att_cpy(grp_id,grp_out_id,NC_GLOBAL,NC_GLOBAL,PCK_ATT_CPY);
-        } /* Copy group attributes */
+        } /* grp_trv.nbr_att */
 
         /* Memory management after current extracted group */
         if(grp_out_fll) grp_out_fll=(char *)nco_free(grp_out_fll);
 
       } /* end if group and flg_xtr */
-    } /* end loop to define group attributes */
-
+    } /* end loop over traversal table */
   } /* !CPY_GRP_METADATA */
 
   /* Define variables */
@@ -1758,45 +1739,38 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
     /* If object is an extracted variable... */
     if(var_trv.nco_typ == nco_obj_typ_var && var_trv.flg_xtr){
 
-      /* Obtain group ID using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
-      /* ncge */
-      if(nco_prg_id_get() == ncge){
-        /* If variable is in an ensemble member, do not create it in same location as input */
-        if(var_trv.flg_nsm_mbr){
-          if(trv_tbl->nsm_sfx){
-            /* Define new name by appending suffix (e.g., /cesm + _avg) */
-            char *nm_fll_sfx=nco_bld_nsm_sfx(var_trv.grp_nm_fll_prn,trv_tbl);
-            /* Use then delete new name */
-            if(gpe) grp_out_fll=nco_gpe_evl(gpe,nm_fll_sfx); else grp_out_fll=(char *)strdup(nm_fll_sfx);
-            nm_fll_sfx=(char *)nco_free(nm_fll_sfx);
-          }else{ /* Non suffix case */
-            if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv.nsm_nm); else grp_out_fll=(char *)strdup(var_trv.nsm_nm);
-          } /* !trv_tbl->nsm_sfx */
-
-        }else{
-          /* Edit group name for output */
-          if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv.grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv.grp_nm_fll);
-        } /* !flg_nsm_mbr  */
+      /* Transform ensemble member group paths as above */
+      if(nco_prg_id == ncge && var_trv.flg_nsm_mbr){
+	if(trv_tbl->nsm_sfx){
+	  /* Define new name by appending suffix (e.g., /cesm + _avg) */
+	  char *nm_fll_sfx=nco_bld_nsm_sfx(var_trv.grp_nm_fll_prn,trv_tbl);
+	  /* Use then delete new name */
+	  if(gpe) grp_out_fll=nco_gpe_evl(gpe,nm_fll_sfx); else grp_out_fll=(char *)strdup(nm_fll_sfx);
+	  nm_fll_sfx=(char *)nco_free(nm_fll_sfx);
+	}else{ /* Non-suffix case */
+	  if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv.nsm_nm); else grp_out_fll=(char *)strdup(var_trv.nsm_nm);
+	} /* !trv_tbl->nsm_sfx */
       }else{
-        /* Edit group name for output */
-        if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv.grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv.grp_nm_fll);
+	/* Variable not in ensembles */
+	if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv.grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv.grp_nm_fll);
       } /* !ncge */
 
       /* If output group does not exist, create it */
       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);
 
-      /* ncge */
-      if(nco_prg_id_get() == ncge){
-        /* Is requested variable in output file? */
+      if(nco_prg_id == ncge){
+        /* Is requested variable already in output file?
+	   fxm: Seems wasteful. Can ncge restrict definition to only variables in template group? i.e., satifying both flg_xtr and flg_nsm_tpl */
         int rcd=nco_inq_varid_flg(grp_out_id,var_trv.nm,&var_out_id);
         /* Yes, get outta' Dodge... avoid GPE failure on duplicate definition */
-        if(rcd == 0) continue;
+        if(rcd == NC_NOERR) continue;
       } /* ncge */
 
       /* Detect duplicate GPE names in advance, then exit() with helpful error */
-      if(gpe) nco_gpe_chk(grp_out_fll,var_trv.nm,&gpe_nm,&nbr_gpe_nm);                       
+      if(gpe) nco_gpe_chk(grp_out_fll,var_trv.nm,&gpe_nm,&nbr_gpe_nm);
 
       /* Define variable in output file */
       var_out_id=nco_cpy_var_dfn_trv(nc_id,nc_out_id,cnk,grp_out_fll,dfl_lvl,gpe,rec_dmn_nm,&var_trv,&dmn_cmn_out,&nbr_dmn_cmn_out,trv_tbl);
@@ -1807,7 +1781,7 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
 
         var_sct *var_prc;  /* [sct] Variable to process */
 
-        /* Obtain group ID using full group name */
+        /* Obtain group ID */
         (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
         /* Get variable ID */
@@ -1823,7 +1797,7 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
         for(int idx_dmn=0;idx_dmn<var_prc->nbr_dim;idx_dmn++){
           var_prc->dim[idx_dmn]->xrf=(dmn_sct *)nco_dmn_free(var_prc->dim[idx_dmn]->xrf);
           var_prc->dim[idx_dmn]=(dmn_sct *)nco_dmn_free(var_prc->dim[idx_dmn]);   
-        }
+        } /* end loop over dimensions */
 
         var_prc=(var_sct *)nco_var_free(var_prc);
       } /* !CPY_VAR_METADATA */
@@ -1850,17 +1824,13 @@ nco_xtr_dfn                          /* [fnc] Define extracted groups, variables
     } /* end if variable and flg_xtr */
   } /* end loop over idx_tbl */
 
-  /* Retain all dimensions */ 
-  if (RETAIN_ALL_DIMS){ 
-    (void)nco_rad(nc_out_id,nbr_dmn_cmn_out,dmn_cmn_out,trv_tbl); 
-  } 
+  /* Retain all dimensions */
+  if(RETAIN_ALL_DIMS) (void)nco_rad(nc_out_id,nbr_dmn_cmn_out,dmn_cmn_out,trv_tbl);
 
   /* Memory management for GPE names */
   for(int idx=0;idx<nbr_gpe_nm;idx++) gpe_nm[idx].var_nm_fll=(char *)nco_free(gpe_nm[idx].var_nm_fll);
 
-  for(int idx=0;idx<nbr_dmn_cmn_out;idx++){
-    dmn_cmn_out[idx].nm_fll=(char *)nco_free(dmn_cmn_out[idx].nm_fll);
-  }
+  for(int idx=0;idx<nbr_dmn_cmn_out;idx++) dmn_cmn_out[idx].nm_fll=(char *)nco_free(dmn_cmn_out[idx].nm_fll);
   dmn_cmn_out=(dmn_cmn_sct *)nco_free(dmn_cmn_out);
 
   /* Print extraction list in developer mode */
@@ -1982,7 +1952,7 @@ nco_prn_dmn /* [fnc] Print dimensions for a group  */
 
   long dmn_sz;                  /* [nbr] Dimension size */
 
-  /* Obtain group ID from netCDF API using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,grp_nm_fll,&grp_id);
 
   (void)nco_inq_unlimdims(grp_id,&nbr_dmn_ult,NULL);
@@ -2246,7 +2216,7 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
   if(grp_nm_fll_prn) trv_tbl->lst[idx].grp_nm_fll_prn=strdup(grp_nm_fll_prn); /* [sng] (ncge) Parent group full name */         
   else trv_tbl->lst[idx].grp_nm_fll_prn=NULL;
   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_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 */ 
 
@@ -2343,8 +2313,7 @@ nco_grp_itr                            /* [fnc] Populate traversal table by exam
     trv_tbl->lst[idx].var_typ=var_typ; 
     trv_tbl->lst[idx].enm_prc_typ=err_typ;
     trv_tbl->lst[idx].var_typ_out=(nc_type)err_typ; 
-    if(grp_nm_fll_prn) trv_tbl->lst[idx].grp_nm_fll_prn=strdup(grp_nm_fll_prn); /* [sng] (ncge) Parent group full name */         
-    else trv_tbl->lst[idx].grp_nm_fll_prn=NULL;
+    if(grp_nm_fll_prn) trv_tbl->lst[idx].grp_nm_fll_prn=strdup(grp_nm_fll_prn); else trv_tbl->lst[idx].grp_nm_fll_prn=NULL;
     trv_tbl->lst[idx].flg_nsm_prn=False;
     trv_tbl->lst[idx].flg_nsm_mbr=False;
     trv_tbl->lst[idx].flg_nsm_tpl=False;
@@ -2670,11 +2639,9 @@ nco_bld_crd_var_trv                   /* [fnc] Build GTT "crd_sct" coordinate va
             trv_tbl->lst_dmn[idx_dmn].crd[crd_idx]->lmt_msa.lmt_crr=0;
             trv_tbl->lst_dmn[idx_dmn].crd[crd_idx]->lmt_msa.lmt_dmn=NULL;
 
-            
             if(nco_dbg_lvl_get() == nco_dbg_old){     
               crd_sct *crd=trv_tbl->lst_dmn[idx_dmn].crd[crd_idx];
-              (void)fprintf(stdout,"%s: INFO %s variable <%s> has coordinate <%s> from dimension <%s>\n",nco_prg_nm_get(),fnc_nm,
-                var_trv.nm_fll,crd->crd_nm_fll,crd->dmn_nm_fll);
+              (void)fprintf(stdout,"%s: INFO %s variable <%s> has coordinate <%s> from dimension <%s>\n",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll,crd->crd_nm_fll,crd->dmn_nm_fll);
             }
 
             /* Limits are initialized in build limits function */
@@ -2900,10 +2867,7 @@ nco_has_crd_dmn_scp                  /* [fnc] Is there a variable with same name
   } /* Unique dimension list */
 
   /* Unique dimension list */
-  for(unsigned idx_dmn=0;idx_dmn<trv_tbl->nbr_dmn;idx_dmn++){
-    dmn_trv_sct dmn_trv=trv_tbl->lst_dmn[idx_dmn]; 
-    assert(dmn_trv.has_crd_scp != nco_obj_typ_err);
-  } /* Unique dimension list */
+  for(unsigned idx_dmn=0;idx_dmn<trv_tbl->nbr_dmn;idx_dmn++) assert(trv_tbl->lst_dmn[idx_dmn].has_crd_scp != nco_obj_typ_err);
 
 } /* nco_has_crd_dmn_scp() */
 
@@ -3316,8 +3280,7 @@ nco_wrt_trv_tbl                      /* [fnc] Obtain file information from GTT (
         (void)fprintf(stdout,"%s: INFO %s variable <%s>",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll);        
       } /* endif dbg */
 
-
-      /* Obtain group ID where variable is located using full group name */
+      /* Obtain group ID where variable is located */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
       /* Obtain variable ID */
@@ -3332,9 +3295,7 @@ nco_wrt_trv_tbl                      /* [fnc] Obtain file information from GTT (
       /* Get dimension IDs for variable */
       (void)nco_inq_vardimid(grp_id,var_id,dmn_id_var);
 
-      if(nco_dbg_lvl_get() == nco_dbg_old){
-        (void)fprintf(stdout," %d dimensions: ",nbr_dmn_var);        
-      } /* endif dbg */
+      if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout," %d dimensions: ",nbr_dmn_var);        
 
       /* Variable dimensions */
       for(int idx_dmn_var=0;idx_dmn_var<nbr_dmn_var;idx_dmn_var++){
@@ -3344,23 +3305,14 @@ nco_wrt_trv_tbl                      /* [fnc] Obtain file information from GTT (
 
         /* Get dimension name */
         (void)nco_inq_dim(grp_id,dmn_id_var[idx_dmn_var],dmn_nm_var,&dmn_sz_var);
+        if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"#%d'%s' ",dmn_id_var[idx_dmn_var],dmn_nm_var);
+      } /* end for */
 
-        if(nco_dbg_lvl_get() == nco_dbg_old){
-          (void)fprintf(stdout,"#%d'%s' ",
-            dmn_id_var[idx_dmn_var],dmn_nm_var);
-        }
-      }
-
-      if(nco_dbg_lvl_get() == nco_dbg_old){
-        (void)fprintf(stdout,"\n");
-      }
-
+      if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"\n");
       dmn_id_var=(int *)nco_free(dmn_id_var);
 
     } /* endif */
-
   } /* end loop over idx_tbl */
-
 } /* nco_wrt_trv_tbl() */
 
 void
@@ -3494,7 +3446,7 @@ nco_fll_var_trv                       /* [fnc] Fill-in variable structure list f
     if(trv_tbl->lst[tbl_idx].nco_typ == nco_obj_typ_var && trv_tbl->lst[tbl_idx].flg_xtr){
       trv_sct var_trv=trv_tbl->lst[tbl_idx]; 
 
-      /* Obtain group ID from API using full group name */
+      /* Obtain group ID from API */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
       /* Get variable ID */
@@ -3552,7 +3504,7 @@ nco_var_trv                           /* [fnc] Fill-in variable structure list f
       int grp_id; /* [ID] Group ID */
       int var_id; /* [ID] Variable ID */
 
-      /* Obtain group ID from API using full group name */
+      /* Obtain group ID from API */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
       /* Get variable ID */
@@ -3598,7 +3550,7 @@ nco_cpy_fix_var_trv                   /* [fnc] Copy fixed variables from input t
         continue;
       }
 
-      /* Obtain group IDs using full group name */
+      /* Obtain group IDs */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id_in);
 
       /* Edit group name for output */
@@ -3691,7 +3643,7 @@ nco_prc_cmn                            /* [fnc] Process objects (ncbo only) */
     if(gpe) grp_out_fll=nco_gpe_evl(gpe,trv_2->grp_nm_fll); else grp_out_fll=(char *)strdup(trv_2->grp_nm_fll);
   } /* !flg_grp_1 */
 
-  /* Obtain group ID using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id_1,trv_1->grp_nm_fll,&grp_id_1);
   (void)nco_inq_grp_full_ncid(nc_id_2,trv_2->grp_nm_fll,&grp_id_2);
 
@@ -3935,7 +3887,7 @@ nco_cpy_fix                            /* [fnc] Copy fixed object (ncbo only) */
   /* Edit group name for output */
   if(gpe) grp_out_fll=nco_gpe_evl(gpe,trv_1->grp_nm_fll); else grp_out_fll=(char *)strdup(trv_1->grp_nm_fll);
 
-  /* Obtain group ID using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id_1,trv_1->grp_nm_fll,&grp_id_1);
 
   /* Get variable ID */
@@ -4204,12 +4156,12 @@ nco_var_fll_trv                       /* [fnc] Allocate variable structure and f
     assert(strcmp(dmn_nm,dmn_trv->nm) == 0);
 
     /* Get hyperslabbed count */
-    dmn_cnt=-1;
+    dmn_cnt=-1L;
     if(var_trv->var_dmn[idx_dmn].crd) dmn_cnt=var_trv->var_dmn[idx_dmn].crd->lmt_msa.dmn_cnt;
     else if(var_trv->var_dmn[idx_dmn].ncd) dmn_cnt=var_trv->var_dmn[idx_dmn].ncd->lmt_msa.dmn_cnt;
 
     var->cnt[idx_dmn]=dmn_cnt;
-    var->end[idx_dmn]=dmn_cnt-1;
+    var->end[idx_dmn]=dmn_cnt-1L;
     var->srt[idx_dmn]=0L;
     var->srd[idx_dmn]=1L;
     var->sz*=dmn_cnt;
@@ -4318,22 +4270,19 @@ nco_var_fll_trv                       /* [fnc] Allocate variable structure and f
   /* Get enm_prc_typ from GTT */
   for(unsigned idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
     if(!strcmp(var->nm_fll,trv_tbl->lst[idx_tbl].nm_fll)){
-      if(trv_tbl->lst[idx_tbl].enm_prc_typ == prc_typ){
-        var->is_fix_var=0;
-      }else if(trv_tbl->lst[idx_tbl].enm_prc_typ == fix_typ){
-        var->is_fix_var=1;
-      } 
+      if(trv_tbl->lst[idx_tbl].enm_prc_typ == prc_typ) var->is_fix_var=False; 
+      else if(trv_tbl->lst[idx_tbl].enm_prc_typ == fix_typ) var->is_fix_var=True;
       break;
-    }
-  }
+    } /* endif */
+  } 
 
   var->undefined=False; /* [flg] Used by ncap parser */
 
   dmn_in_id_var=(int *)nco_free(dmn_in_id_var);
+
   return var;
 } /* nco_var_fll_trv() */
 
-
 int                                 /* O [id] Output file variable ID */
 nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output file */
 (const int nc_in_id,                /* I [ID] netCDF input file ID */
@@ -4366,6 +4315,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
   char *rec_dmn_nm=NULL;                 /* [sng] User-specified record dimension name */
   char *rec_dmn_nm_mlc=NULL;             /* [sng] Local copy of rec_dmn_nm_cst, which may be encoded */
   char *grp_dmn_out_fll=NULL;            /* [sng] Group name of dimension in output */
+  char *dmn_nm_fll_out=NULL;             /* [sng] Full name of dimension in output */
   char dmn_nm[NC_MAX_NAME+1];            /* [sng] Dimension name  */
   char dmn_nm_grp[NC_MAX_NAME+1];        /* [sng] Dimension name for group */  
 
@@ -4407,7 +4357,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
 
   dmn_trv_sct *dmn_trv;                  /* [sct] Unique dimension object */
   
-  dmn_cmn_sct dmn_cmn[NC_MAX_DIMS];      /* [sct] Dimension information on output (for a variable ) */
+  dmn_cmn_sct dmn_cmn[NC_MAX_DIMS];      /* [sct] Dimension information on output (for a variable) */
 
   rec_dmn_out_id=NCO_REC_DMN_UNDEFINED;
 
@@ -4614,7 +4564,6 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
       } /* strcmp() */
     } /* Loop group defined dimensions */
 
-
     dmn_out_id_grp=(int *)nco_free(dmn_out_id_grp);
 
     /* Define dimension in output file if necessary */
@@ -4713,7 +4662,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
         In other words, there is no good way to "fix" a record dimension for a variable with no records/data
         Workaround is to arbitrarily assign such dimensions a size of 1 so they are fixed output, and still have no data
         This ugly hack seems to work and is only invoked in this extreme corner case so may be OK */
-        if(dmn_cnt == 0) dmn_cnt=1;
+        if(dmn_cnt == 0) dmn_cnt=1L;
         /* Update GTT dimension */
         (void)nco_dmn_set_msa(var_dim_id,dmn_cnt,trv_tbl);  
       } /* !DFN_CRR_DMN_AS_REC_IN_OUTPUT */
@@ -4735,29 +4684,63 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
         if(var_trv->var_dmn[idx_dmn].flg_rdd){
           found_dim=True;
           /* If dimension was to be record keep it that way, otherwise define degenerate size of 1 */
-          if(DFN_CRR_DMN_AS_REC_IN_OUTPUT) dmn_cnt=NC_UNLIMITED; else dmn_cnt=1;
+          if(DFN_CRR_DMN_AS_REC_IN_OUTPUT) dmn_cnt=NC_UNLIMITED; else dmn_cnt=1L;
         } 
         if(!found_dim){
           DEFINE_DIM[idx_dmn]=False;
           nbr_dmn_var_out--;    
         } /* found_dim */
-      } /* ncwa */
+      } /* !ncwa */
 
       /* Always define, except maybe for ncwa */
       if(DEFINE_DIM[idx_dmn]){
         /* Define dimension and obtain dimension ID */
         (void)nco_def_dim(grp_dmn_out_id,dmn_nm,dmn_cnt,&dmn_id_out);
 
-        if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: DEBUG %s Defined dimension <%s><%s>#%d\n",nco_prg_nm_get(),fnc_nm,grp_dmn_out_fll,dmn_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_nm,dmn_id_out);
+        }
 
-        /* Redefine output dimension array for this dimension */
-        (void)nco_dfn_dmn(dmn_nm,dmn_cnt,dmn_id_out,dmn_cmn,var_trv->nbr_dmn);
         /* Assign defined ID to dimension ID array for the variable */
         dmn_out_id[idx_dmn]=dmn_id_out; 
       } /* !DEFINE_DIM */
 
     } /* end if dimension is not yet defined */
 
+    /* pvn 20140824 Always redefine output dimension array; repeat logic above regarding value of "dmn_cnt"
+    for both non ncwa and ncwa cases */
+    if(nco_prg_id != ncwa){
+      if(var_trv->var_dmn[idx_dmn].is_crd_var){
+        dmn_cnt=var_trv->var_dmn[idx_dmn].crd->lmt_msa.dmn_cnt;
+      }else{ /* !is_crd_var */
+        dmn_cnt=var_trv->var_dmn[idx_dmn].ncd->lmt_msa.dmn_cnt;
+      } /* !is_crd_var */
+    } else if(nco_prg_id == ncwa){
+      /* Degenerate dimensions */
+      for(int idx_dmn_dgn=0;idx_dmn_dgn<trv_tbl->nbr_dmn_dgn;idx_dmn_dgn++){
+        /* Compare ID */
+        if(trv_tbl->dmn_dgn[idx_dmn_dgn].id == var_dim_id){
+          dmn_cnt=trv_tbl->dmn_dgn[idx_dmn_dgn].cnt;
+          /* If dimension is record keep it that way */
+          if(dmn_trv->is_rec_dmn) dmn_cnt=NC_UNLIMITED;
+          break;
+        } /* Compare ID */
+      } /* !Degenerate */
+      if(var_trv->var_dmn[idx_dmn].flg_rdd){
+        /* If dimension was to be record keep it that way, otherwise define degenerate size of 1 */
+        if(DFN_CRR_DMN_AS_REC_IN_OUTPUT) dmn_cnt=NC_UNLIMITED; else dmn_cnt=1L;
+      } 
+    } /* !ncwa */
+
+    /* Construct full dimension name using the full group name */
+    dmn_nm_fll_out=(char *)nco_malloc(strlen(grp_dmn_out_fll)+strlen(dmn_nm)+2L);
+    strcpy(dmn_nm_fll_out,grp_dmn_out_fll);
+    if(strcmp(grp_dmn_out_fll,"/")) strcat(dmn_nm_fll_out,"/");
+    strcat(dmn_nm_fll_out,dmn_nm);
+
+    /* Redefine output dimension array for this dimension */
+    (void)nco_dfn_dmn(dmn_nm_fll_out,dmn_cnt,dmn_id_out,dmn_cmn,var_trv->nbr_dmn);
+
     /* Die informatively if record dimension is not first dimension in netCDF3 output */
     if(idx_dmn > 0 && dmn_out_id[idx_dmn] == rec_dmn_out_id && fl_fmt != NC_FORMAT_NETCDF4 && DEFINE_DIM[idx_dmn]){
       (void)fprintf(stdout,"%s: ERROR User defined the output record dimension to be \"%s\". Yet in the variable \"%s\" this is dimension number %d. The output file adheres to the netCDF3 API which only supports the record dimension as the first (i.e., least rapidly varying) dimension. Consider using ncpdq to permute the location of the record dimension in the output file.\n",nco_prg_nm_get(),rec_dmn_nm,var_nm,idx_dmn+1);  
@@ -4766,6 +4749,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
 
     /* Memory management after defining current output dimension */
     if(grp_dmn_out_fll) grp_dmn_out_fll=(char *)nco_free(grp_dmn_out_fll); 
+    if(dmn_nm_fll_out) dmn_nm_fll_out=(char *)nco_free(dmn_nm_fll_out); 
 
   } /* End of the very important dimension loop */
 
@@ -4860,18 +4844,16 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
 
     (void)nco_def_var(grp_out_id,var_nm,var_typ_out,nbr_dmn_var_out,dmn_out_id,&var_out_id);
 
-    if(nco_dbg_lvl_get() == nco_dbg_old){
-      (void)fprintf(stdout,"%s: DEBUG %s Defined variable <%s><%s> : ",nco_prg_nm_get(),fnc_nm,grp_out_fll,var_nm);
-      for(int idx_dmn=0;idx_dmn<nbr_dmn_var;idx_dmn++){
-        (void)fprintf(stdout,"<%s>#%d : ",dmn_cmn[idx_dmn].nm_fll,dmn_out_id[idx_dmn]);
-      }
-      (void)fprintf(stdout,"\n");
-    } 
-
   } /* !ncwa */
 
+  if(nco_dbg_lvl_get() == nco_dbg_dev){
+    (void)fprintf(stdout,"%s: DEBUG %s Defined variable <%s><%s> : ",nco_prg_nm_get(),fnc_nm,grp_out_fll,var_nm);
+    for(int idx_dmn=0;idx_dmn<nbr_dmn_var;idx_dmn++) (void)fprintf(stdout,"<%s>#%d SIZE=%ld : ",dmn_cmn[idx_dmn].nm_fll,dmn_out_id[idx_dmn],dmn_cmn[idx_dmn].sz);
+    (void)fprintf(stdout,"\n");
+  } /* endif dbg */ 
+
   /* If output dimensions array exists */
-  if (dmn_cmn_out!=NULL && nco_prg_id == ncks){
+  if(dmn_cmn_out != NULL && nco_prg_id == ncks){
 
     nco_bool dmn_flg=False;
 
@@ -4882,7 +4864,7 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
       for(int idx_dmn_out=0;idx_dmn_out<*nbr_dmn_cmn_out;idx_dmn_out++){
 
         /* Match by ID */
-        if( (*dmn_cmn_out)[idx_dmn_out].id==dmn_cmn[idx_dmn].id){
+        if((*dmn_cmn_out)[idx_dmn_out].id == dmn_cmn[idx_dmn].id){
           dmn_flg=True;
           break;
         }  /* Match by ID */
@@ -4907,12 +4889,9 @@ nco_cpy_var_dfn_trv                 /* [fnc] Define specified variable in output
         nbr_dmn_out_tmp++;
         *nbr_dmn_cmn_out=nbr_dmn_out_tmp;
 
-        if(nco_dbg_lvl_get() == nco_dbg_old){
-          (void)fprintf(stdout,"%s: DEBUG %s Inserted dimension #%d to output list\n",nco_prg_nm_get(),fnc_nm,
-            dmn_cmn[idx_dmn].id);
-        } 
+        if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: DEBUG %s Inserted dimension #%d to output list\n",nco_prg_nm_get(),fnc_nm,dmn_cmn[idx_dmn].id);
 
-      }  /* If this dimension is not in output array */
+      } /* If this dimension is not in output array */
     } /* Loop over each dimension in variable */
   } /* If output dimensions array exists */
 
@@ -5018,21 +4997,11 @@ nco_dmn_swap                           /* [fnc] Swap dimensions */
 
   dmn_cmn_sct dmn_cmn_tmp;
 
-  /* Loop dimensions */
-  for(int idx_dmn=0;idx_dmn<nbr_dmn;idx_dmn++){
-    /* Find index of name 1 */
-    if(strcmp(dmn_nm_1,dmn_cmn[idx_dmn].nm) == 0){
-      dmn_nm_1_idx=idx_dmn;
-    } /* Find index of name 1 */
-  } /* Loop dimensions */
+  for(int idx_dmn=0;idx_dmn<nbr_dmn;idx_dmn++)
+    if(!strcmp(dmn_nm_1,dmn_cmn[idx_dmn].nm)) dmn_nm_1_idx=idx_dmn;
 
-  /* Loop dimensions */
-  for(int idx_dmn=0;idx_dmn<nbr_dmn;idx_dmn++){
-    /* Find index of name 2 */
-    if(strcmp(dmn_nm_2,dmn_cmn[idx_dmn].nm) == 0){
-      dmn_nm_2_idx=idx_dmn;
-    } /* Find index of name 2 */
-  } /* Loop dimensions */
+  for(int idx_dmn=0;idx_dmn<nbr_dmn;idx_dmn++)
+    if(!strcmp(dmn_nm_2,dmn_cmn[idx_dmn].nm)) dmn_nm_2_idx=idx_dmn;
 
   /* Swap */
   dmn_cmn_tmp=dmn_cmn[dmn_nm_1_idx];
@@ -5043,18 +5012,18 @@ nco_dmn_swap                           /* [fnc] Swap dimensions */
 
 void
 nco_dfn_dmn                            /* [fnc] Define dimension size and ID in array */
-(const char * const dmn_nm,            /* I [sng] Name of dimension */
+(const char * const dmn_nm_fll_out,    /* I [sng] Full name of dimension in output */
  const long dmn_sz,                    /* I [nbr] Size of dimension */
- const int dmn_id,                     /* I [id] ID of dimension */
+ const int dmn_id_out,                 /* I [id] ID of dimension in output */
  dmn_cmn_sct *dmn_cmn,                 /* I/O [sct] Dimension structure array */
  const int nbr_dmn)                    /* I [nbr] Number of dimensions (size of above array) */
 {
   /* Loop dimensions */
   for(int idx_dmn=0;idx_dmn<nbr_dmn;idx_dmn++){
     /* Find dimension */
-    if(strcmp(dmn_nm,dmn_cmn[idx_dmn].nm) == 0){
+    if(!strcmp(dmn_nm_fll_out,dmn_cmn[idx_dmn].nm_fll)){
       dmn_cmn[idx_dmn].sz=dmn_sz;
-      dmn_cmn[idx_dmn].id=dmn_id;
+      dmn_cmn[idx_dmn].id=dmn_id_out;
       return;
     } /* Find dimension */
   } /* Loop dimensions */
@@ -5333,24 +5302,20 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
                 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)  */
-                for(int idx_dmn=0;idx_dmn<var_trv_mrk.nbr_dmn;idx_dmn++){
+                for(int idx_dmn=0;idx_dmn<var_trv_mrk.nbr_dmn;idx_dmn++)
                   dmn_idx_out_in[idx_dmn]=var_trv_mrk.dmn_idx_out_in[idx_dmn];
-                } 
 
                 int dmn_out_idx;
                 /* Search all dimensions in variable for new record dimension */
-                for(dmn_out_idx=0;dmn_out_idx<var_prc_out[idx_var_prc_out]->nbr_dim;dmn_out_idx++){
-                  if(!strcmp(var_prc_out[idx_var_prc_out]->dim[dmn_out_idx]->nm,rec_dmn_nm_out)){
-                    break;
-                  }
-                }
+                for(dmn_out_idx=0;dmn_out_idx<var_prc_out[idx_var_prc_out]->nbr_dim;dmn_out_idx++)
+                  if(!strcmp(var_prc_out[idx_var_prc_out]->dim[dmn_out_idx]->nm,rec_dmn_nm_out)) break;
+
                 /* ...Will variable be record variable in output file?... */
                 if(dmn_out_idx == var_prc_out[idx_var_prc_out]->nbr_dim){
                   /* ...No. Variable will be non-record---does this change its status?... */
-                  if(nco_dbg_lvl_get() >= nco_dbg_var){
-                    if(var_prc_out[idx_var_prc_out]->is_rec_var) (void)fprintf(stdout,"%s: INFO Requested re-order will change variable %s from record to non-record variable\n",
-                      nco_prg_nm_get(),var_prc_out[idx_var_prc_out]->nm);
-                  }
+                  if(nco_dbg_lvl_get() >= nco_dbg_var)
+		    if(var_prc_out[idx_var_prc_out]->is_rec_var) 
+		      (void)fprintf(stdout,"%s: INFO Requested re-order will change variable %s from record to non-record variable\n",nco_prg_nm_get(),var_prc_out[idx_var_prc_out]->nm);
                   /* Assign record flag dictated by re-order */
                   var_prc_out[idx_var_prc_out]->is_rec_var=False; 
                 }else{ /* ...otherwise variable will be record variable... */
@@ -5360,16 +5325,14 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
                     int dmn_dpl_idx;
                     for(dmn_dpl_idx=1;dmn_dpl_idx<var_prc_out[idx_var_prc_out]->nbr_dim;dmn_dpl_idx++){ /* NB: loop starts from 1 */
                       if(var_prc_out[idx_var_prc_out]->dmn_id[0] == var_prc_out[idx_var_prc_out]->dmn_id[dmn_dpl_idx]){
-                        (void)fprintf(stdout,"%s: ERROR Requested re-order turns duplicate non-record dimension %s in variable %s into output record dimension. netCDF does not support duplicate record dimensions in a single variable.\n%s: HINT: Exclude variable %s from extraction list with \"-x -v %s\".\n",
-                          nco_prg_nm_get(),rec_dmn_nm_out,var_prc_out[idx_var_prc_out]->nm,nco_prg_nm_get(),var_prc_out[idx_var_prc_out]->nm,var_prc_out[idx_var_prc_out]->nm);
+                        (void)fprintf(stdout,"%s: ERROR Requested re-order turns duplicate non-record dimension %s in variable %s into output record dimension. netCDF does not support duplicate record dimensions in a single variable.\n%s: HINT: Exclude variable %s from extraction list with \"-x -v %s\".\n",nco_prg_nm_get(),rec_dmn_nm_out,var_prc_out[idx_var_prc_out]->nm,nco_prg_nm_get(),var_prc_out[idx_var_prc_out]->nm,var_prc_out[idx_var_prc_out]->nm);
                         nco_exit(EXIT_FAILURE);
                       } /* endif err */
                     } /* end loop over dmn_out */
                   } /* endif has_dpl_dmn */
                   /* ...Will becoming record variable change its status?... */
                   if(!var_prc_out[idx_var_prc_out]->is_rec_var){
-                    if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stdout,"%s: INFO Requested re-order will change variable %s from non-record to record variable\n",
-                      nco_prg_nm_get(),var_prc_out[idx_var_prc_out]->nm);
+                    if(nco_dbg_lvl_get() >= nco_dbg_var) (void)fprintf(stdout,"%s: INFO Requested re-order will change variable %s from non-record to record variable\n",nco_prg_nm_get(),var_prc_out[idx_var_prc_out]->nm);
                     /* Change record flag to status dictated by re-order */
                     var_prc_out[idx_var_prc_out]->is_rec_var=True;
                     /* ...Swap dimension information for multi-dimensional variables... */
@@ -5392,9 +5355,8 @@ nco_var_dmn_rdr_mtd_trv               /* [fnc] Determine and set new dimensional
                       dmn_idx_out_in[dmn_idx_rec_in]=dmn_idx_swp;
 
                       /* Transfer dimension structures (re-ordered again) into GTT */
-                      for(int idx_dmn=0;idx_dmn<var_trv_mrk.nbr_dmn;idx_dmn++){
+                      for(int idx_dmn=0;idx_dmn<var_trv_mrk.nbr_dmn;idx_dmn++)
                         trv_tbl->lst[ idx_var_mrk ].dmn_idx_out_in[idx_dmn]=dmn_idx_out_in[idx_dmn];
-                      } 
 
                       /* Swap dimensions in list */
                       dmn_swp=var_prc_out[idx_var_prc_out]->dim[dmn_idx_rec_out];
@@ -5763,9 +5725,9 @@ nco_aed_prc_trv                       /* [fnc] Process single attribute edit for
         trv_sct var_trv=trv_tbl->lst[idx_tbl];
         /* Filter variables */
         if(var_trv.nco_typ == nco_obj_typ_var){
-          /* Obtain group ID using full group name */
+          /* Obtain group ID */
           (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
-          /* Obtain variable ID using group ID */
+          /* Obtain variable ID */
           (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
           /* Edit attribute */
           (void)nco_aed_prc(grp_id,var_id,aed_lst[idx_aed]);
@@ -5783,9 +5745,9 @@ nco_aed_prc_trv                       /* [fnc] Process single attribute edit for
         trv_sct var_trv=trv_tbl->lst[idx_tbl];
         /* Filter variables */
         if(var_trv.nco_typ == nco_obj_typ_var ){
-          /* Obtain group ID using full group name */
+          /* Obtain group ID */
           (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
-          /* Obtain variable ID using group ID */
+          /* Obtain variable ID */
           (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
           /* Edit attribute */
           (void)nco_aed_prc(grp_id,var_id,aed_lst[idx_aed]);
@@ -5803,9 +5765,9 @@ nco_aed_prc_trv                       /* [fnc] Process single attribute edit for
         trv_sct var_trv=trv_tbl->lst[idx_tbl];
         /* Filter variables */
         if(var_trv.nco_typ == nco_obj_typ_var && strcmp(aed_lst[idx_aed].var_nm,var_trv.nm) == 0){
-          /* Obtain group ID using full group name */
+          /* Obtain group ID */
           (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
-          /* Obtain variable ID using group ID */
+          /* Obtain variable ID */
           (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
           /* Edit attribute */
           (void)nco_aed_prc(grp_id,NC_GLOBAL,aed_lst[idx_aed]);
@@ -5822,9 +5784,9 @@ nco_aed_prc_trv                       /* [fnc] Process single attribute edit for
         trv_sct var_trv=trv_tbl->lst[idx_tbl];
         /* Filter variables */
         if(var_trv.nco_typ == nco_obj_typ_var && strcmp(aed_lst[idx_aed].var_nm,var_trv.nm) == 0){
-          /* Obtain group ID using full group name */
+          /* Obtain group ID */
           (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
-          /* Obtain variable ID using group ID */
+          /* Obtain variable ID */
           (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
           /* Edit attribute */
           (void)nco_aed_prc(grp_id,var_id,aed_lst[idx_aed]);
@@ -5854,7 +5816,7 @@ nco_dmn_trv_msa_tbl                   /* [fnc] Update all GTT dimensions with hy
     /* If object is an extracted variable... */
     if(var_trv.nco_typ == nco_obj_typ_var && var_trv.flg_xtr){
 
-      /* Obtain group ID using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
       /* Update for this variable */
@@ -5950,12 +5912,8 @@ nco_dmn_msa_tbl                       /* [fnc] Update all GTT dimensions with hy
 
   /* If variable has a re-defined record dimension. NOTE: this implies passing NULL as User-specified record dimension parameter  */
   if(var_trv->rec_dmn_nm_out){
-
-    /* Must be ncpdq */
     assert(nco_prg_id == ncpdq);
-
     rec_dmn_nm=(char *)strdup(var_trv->rec_dmn_nm_out);
-
   } /* If variable has a re-defined record dimension */
 
   /* Is requested record dimension in input file? */
@@ -6589,7 +6547,7 @@ nco_bld_rec_dmn                       /* [fnc] Build record dimensions array */
             (*lmt_rec)=(lmt_sct **)nco_realloc((*lmt_rec),(rec_nbr+1)*sizeof(lmt_sct *));
             (*lmt_rec)[rec_nbr]=(lmt_sct *)nco_malloc(sizeof(lmt_sct));
 
-            /* Obtain group ID using full group name */
+            /* Obtain group ID */
             (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
 
             /* a) case where the dimension has coordinate variables */
@@ -6827,9 +6785,10 @@ nco_bld_trv_tbl                       /* [fnc] Construct GTT, Group Traversal Ta
   /* Is this a CCM/CCSM/CF-format history tape? */
   CNV_CCM_CCSM_CF=nco_cnv_ccm_ccsm_cf_inq(nc_id);
   if(CNV_CCM_CCSM_CF && EXTRACT_ASSOCIATED_COORDINATES){
-    /* Implement CF "coordinates" and "bounds" conventions */
-    (void)nco_xtr_cf_add(nc_id,"coordinates",trv_tbl);
+    /* Implement CF "ancillary_variables", "bounds", and "coordinates" */
+    (void)nco_xtr_cf_add(nc_id,"ancillary_variables",trv_tbl);
     (void)nco_xtr_cf_add(nc_id,"bounds",trv_tbl);
+    (void)nco_xtr_cf_add(nc_id,"coordinates",trv_tbl);
   } /* CNV_CCM_CCSM_CF */
 
   /* Mark extracted dimensions */
@@ -6868,7 +6827,7 @@ nco_chk_dmn                           /* [fnc] Check valid dimension names */
 (const int lmt_nbr,                   /* I [nbr] number of dimensions with limits */
  nco_dmn_dne_t * flg_dne)             /* I/O [lst] Flag to check if input dimension -d "does not exist" */
 {
-  /* Check if all input -d dimensions were found */ 
+  /* Were all user-specified dimensions found? */ 
   for(int lmt_idx=0;lmt_idx<lmt_nbr;lmt_idx++){
     /* Check this flag */
     if(flg_dne[lmt_idx].flg_dne){
@@ -6876,7 +6835,7 @@ nco_chk_dmn                           /* [fnc] Check valid dimension names */
       flg_dne=(nco_dmn_dne_t *)nco_free(flg_dne);
       nco_exit(EXIT_FAILURE);
     } /* Check this flag */
-  } /* Check if all input -d dimensions were found */
+  } /* Were all user-specified dimensions found? */
 } /* nco_chk_dmn() */
 
 void
@@ -7261,8 +7220,8 @@ nco_msa_var_get_lmn_trv             /* [fnc] Read a used defined limit */
             /* And set start,count,stride to match current record ...Jesuzz */
             var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[idx_lmt]->srt=idx_rec_crr_in;
             var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[idx_lmt]->end=idx_rec_crr_in;
-            var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[idx_lmt]->cnt=1;
-            var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[idx_lmt]->srd=1;
+            var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[idx_lmt]->cnt=1L;
+            var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[idx_lmt]->srd=1L;
           } /* Loop limits */
 
           /* ! Case of previously existing limits */
@@ -7277,8 +7236,8 @@ nco_msa_var_get_lmn_trv             /* [fnc] Read a used defined limit */
           /* And set start, count, stride to match current record ... */
           var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->srt=idx_rec_crr_in;
           var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->end=idx_rec_crr_in;
-          var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->cnt=1;
-          var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->srd=1;
+          var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->cnt=1L;
+          var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->srd=1L;
           var_trv->var_dmn[idx_dmn].crd->lmt_msa.lmt_dmn[0]->nm=strdup("record_limit");
         } /* ! Case of previously existing limits */
       } /* Case of dimension being coordinate variable */
@@ -7297,8 +7256,8 @@ nco_msa_var_get_lmn_trv             /* [fnc] Read a used defined limit */
             /* And set start,count,stride to match current record ...Jesuzz */
             var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[idx_lmt]->srt=idx_rec_crr_in;
             var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[idx_lmt]->end=idx_rec_crr_in;
-            var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[idx_lmt]->cnt=1;
-            var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[idx_lmt]->srd=1;
+            var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[idx_lmt]->cnt=1L;
+            var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[idx_lmt]->srd=1L;
           } /* Loop limits */
 
           /* ! Case of previously existing limits */
@@ -7313,8 +7272,8 @@ nco_msa_var_get_lmn_trv             /* [fnc] Read a used defined limit */
           /* And set start,count,stride to match current record ...Jesuzz */
           var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->srt=idx_rec_crr_in;
           var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->end=idx_rec_crr_in;
-          var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->cnt=1;
-          var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->srd=1;
+          var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->cnt=1L;
+          var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->srd=1L;
           var_trv->var_dmn[idx_dmn].ncd->lmt_msa.lmt_dmn[0]->nm=strdup("record_limit");
         } /* ! Case of previously existing limits */
       } /* Case of dimension not being coordinate variable */
@@ -7409,7 +7368,7 @@ nco_var_get_wgt_trv                   /* [fnc] Retrieve weighting or mask variab
 
     var_sct *wgt_var;
 
-    /* Obtain group ID from API using full group name */
+    /* Obtain group ID from API */
     (void)nco_inq_grp_full_ncid(nc_id,wgt_trv->grp_nm_fll,&grp_id);
 
     /* Get variable ID */
@@ -7464,7 +7423,7 @@ nco_var_get_wgt_trv                   /* [fnc] Retrieve weighting or mask variab
             if(!strcmp(wgt_trv[idx_wgt]->grp_nm_fll,var_trv.grp_nm_fll)){ 
               var_sct *wgt_var;
 
-              /* Obtain group ID from API using full group name */
+              /* Obtain group ID from API */
               (void)nco_inq_grp_full_ncid(nc_id,wgt_trv[idx_wgt]->grp_nm_fll,&grp_id);
 
               /* Get variable ID */
@@ -7892,14 +7851,14 @@ nco_grp_var_lst                        /* [fnc] Export list of variable names fo
 } /* end nco_grp_var_lst() */
 
 char *                                /* O [sng] Name of variable   */
-nco_var_has_cf                        /* [fnc] Variable has CF-compliant information ("coordinates" or "bounds") */
+nco_var_has_cf                        /* [fnc] Variable has CF-compliant attributes ("ancillary_variables", "bounds", or "coordinates") */
 (const int nc_id,                     /* I [ID] netCDF file ID */
  const trv_sct * const var_trv,       /* I [sct] Variable (object) */
- const char * const cf_nm,            /* I [sng] CF convention ( "coordinates" or "bounds") */
+ const char * const cf_nm,            /* I [sng] CF convention ("ancillary_variables", "bounds", or "coordinates") */
  nco_bool *flg_cf_fnd)                /* I/O [flg] CF variable was found */
 {
-  /* Detect associated coordinates specified by CF "bounds" or "coordinates" convention for single variable
-  http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.1/cf-conventions.html#coordinate-system */ 
+  /* Detect associated variables specified by CF "ancillary_variables", "bounds", or "coordinates" convention
+     http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.1/cf-conventions.html#coordinate-system */ 
 
   const char dlm_sng[]=" ";     /* [sng] Delimiter string */
 
@@ -7916,7 +7875,7 @@ nco_var_has_cf                        /* [fnc] Variable has CF-compliant informa
   /* Initialize return value */
   *flg_cf_fnd=False;
 
-  /* Obtain group ID from netCDF API using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id);
 
   /* Obtain variable ID */
@@ -7954,15 +7913,15 @@ nco_var_has_cf                        /* [fnc] Variable has CF-compliant informa
       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 */
       cf_lst=nco_lst_prs_sgl_2D(att_val,dlm_sng,&nbr_cf);
-      /* ...for each coordinate in CF convention attribute, i.e., "bounds" or "coordinate"... */
+      /* ...for each associated variable in CF convention attribute, i.e., "ancillary_variables", "bounds", or "coordinates"... */
       for(int idx_cf=0;idx_cf<nbr_cf;idx_cf++){
         char *cf_lst_var=cf_lst[idx_cf];
         if(!cf_lst_var) continue;
       } /* end loop over idx_cf */
 
-      /* Return cf_lst_var, associated name (e.g., "lat_bounds"). NB: Assumption only 1 associated name */
+      /* Return cf_lst_var, associated name (e.g., "lat_bounds"). NB: Assumption only one associated name */
       char *cf_lst_var=strdup(cf_lst[0]);
 
       /* Free allocated memory */
@@ -7970,7 +7929,6 @@ nco_var_has_cf                        /* [fnc] Variable has CF-compliant informa
       cf_lst=nco_sng_lst_free(cf_lst,nbr_cf);
 
       return cf_lst_var;
-
     } /* end strcmp() */
   } /* end loop over attributes */
 
@@ -8538,7 +8496,7 @@ nco_dmn_malloc                        /* [fnc] Inquire about number of dimension
   int grp_id;            /* [ID]  Group ID */
   int nbr_dmn;           /* [nbr] Number of dimensions */
 
-  /* Obtain group ID from netCDF API using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,grp_nm_fll,&grp_id);
 
   /* Obtain number of dimensions for group */
@@ -8558,37 +8516,6 @@ nco_dmn_malloc                        /* [fnc] Inquire about number of dimension
 }
 
 void
-nco_prn_var                           /* [fnc] Print variable (debug only) */
-(const int nc_id,                     /* I [ID] netCDF file ID (Input or output file) */
- trv_tbl_sct * const trv_tbl)         /* I/O [sct] Traversal table */
-{
-  const char fnc_nm[]="nco_prn_var()"; /* [sng] Function name  */
-
-  int grp_id;
-  int var_id;
-  int nbr_dmn;
-
-  nc_type var_typ; 
-
-  /* Loop table */
-  for(unsigned int idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
-
-    trv_sct var_trv=trv_tbl->lst[idx_tbl];
-
-    /* Is variable */
-    if(var_trv.nco_typ == nco_obj_typ_var){
-
-      (void)nco_inq_grp_full_ncid(nc_id,var_trv.grp_nm_fll,&grp_id);
-      (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);   
-      (void)nco_inq_var(grp_id,var_id,(char *)NULL,&var_typ,&nbr_dmn,(int *)NULL,(int *)NULL);
-
-      if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s variable <%s> Type: %d\n",nco_prg_nm_get(),fnc_nm,var_trv.nm_fll,var_typ); 
-
-    } /* Is variable */
-  } /* Loop table */
-} /* nco_prn_var() */
-
-void
 nco_dmn_lmt                            /* [fnc] Convert a lmt_sct array to dmn_sct (name only) */
 (lmt_sct **lmt,                        /* I [lst] lmt_sct array  */
  const int nbr_lmt,                    /* I [nbr] Size of lmt_sct array  */
@@ -8603,13 +8530,13 @@ nco_dmn_lmt                            /* [fnc] Convert a lmt_sct array to dmn_s
     (*dmn)[idx]->xrf=NULL;
     (*dmn)[idx]->val.vp=NULL;
     (*dmn)[idx]->is_rec_dmn=lmt[idx]->is_rec_dmn;
-    (*dmn)[idx]->cnt=-1;
-    (*dmn)[idx]->sz=-1;
-    (*dmn)[idx]->srt=-1;
-    (*dmn)[idx]->end=-1;
-    (*dmn)[idx]->srd=-1;
+    (*dmn)[idx]->cnt=-1L;
+    (*dmn)[idx]->sz=-1L;
+    (*dmn)[idx]->srt=-1L;
+    (*dmn)[idx]->end=-1L;
+    (*dmn)[idx]->srd=-1L;
     (*dmn)[idx]->cid=-1;
-    (*dmn)[idx]->cnk_sz=-1;
+    (*dmn)[idx]->cnk_sz=-1L;
     (*dmn)[idx]->type=(nc_type)-1;
   }  
 
@@ -8932,7 +8859,6 @@ nco_nsm_dfn_wrt                      /* [fnc] Define OR write ensemble fixed var
   for(int idx_nsm=0;idx_nsm<trv_tbl->nsm_nbr;idx_nsm++){
 
     /* Get output group */
-
     if(trv_tbl->nsm_sfx){
       /* Define new name by appending suffix (e.g., /cesm + _avg) */
       char *nm_fll_sfx=nco_bld_nsm_sfx(trv_tbl->nsm[idx_nsm].grp_nm_fll_prn,trv_tbl);
@@ -8943,27 +8869,23 @@ nco_nsm_dfn_wrt                      /* [fnc] Define OR write ensemble fixed var
       if(gpe) grp_out_fll=nco_gpe_evl(gpe,trv_tbl->nsm[idx_nsm].grp_nm_fll_prn); else grp_out_fll=(char *)strdup(trv_tbl->nsm[idx_nsm].grp_nm_fll_prn);
     } /* !trv_tbl->nsm_sfx */
 
-
-    /* List of fixed templates  */
+    /* 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  */
-      if (flg_def == True) (void)nco_cpy_var_dfn_trv(nc_id,nc_out_id,cnk,grp_out_fll,dfl_lvl,gpe,NULL,var_trv,NULL,0,trv_tbl);
+      if(flg_def) (void)nco_cpy_var_dfn_trv(nc_id,nc_out_id,cnk,grp_out_fll,dfl_lvl,gpe,NULL,var_trv,NULL,0,trv_tbl);
 
-      /* Obtain group IDs using full group name */
+      /* Obtain group IDs */
       (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id_in);
       (void)nco_inq_grp_full_ncid(nc_out_id,grp_out_fll,&grp_id_out);
 
-      /* Copy variable data  */
-      if (flg_def == False) (void)nco_cpy_var_val_mlt_lmt_trv(grp_id_in,grp_id_out,(FILE *)NULL,NULL,var_trv);
+      /* Copy variable data */
+      if(!flg_def) (void)nco_cpy_var_val_mlt_lmt_trv(grp_id_in,grp_id_out,(FILE *)NULL,NULL,var_trv);
 
-      if(nco_dbg_lvl_get() >= nco_dbg_vrb && nco_dbg_lvl_get() != nco_dbg_dev){
-        (void)fprintf(stdout,"%s: INFO creating fixed variables <%s> in ensemble parent group <%s>\n",nco_prg_nm_get(),
-          trv_tbl->nsm[idx_nsm].skp_nm_fll[idx_skp],grp_out_fll);
-      }  
+      if(nco_dbg_lvl_get() >= nco_dbg_vrb && nco_dbg_lvl_get() != nco_dbg_dev) (void)fprintf(stdout,"%s: INFO creating fixed variables <%s> in ensemble parent group <%s>\n",nco_prg_nm_get(),trv_tbl->nsm[idx_nsm].skp_nm_fll[idx_skp],grp_out_fll);
 
     } /* List of fixed templates  */
 
@@ -9006,7 +8928,7 @@ nco_nsm_ncr                           /* [fnc] Increase ensembles (more than 1 f
       (void)fprintf(stdout,"%s: DEBUG %s <ensemble %d> <%s>\n",nco_prg_nm_get(),fnc_nm,idx_nsm,trv_tbl->nsm[idx_nsm].grp_nm_fll_prn);
     }
 
-    /* Obtain group ID of current ensemble using full group name */
+    /* Obtain group ID of current ensemble */
     rcd+=nco_inq_grp_full_ncid_flg(nc_id,trv_tbl->nsm[idx_nsm].grp_nm_fll_prn,&grp_id);
 
     /* Group must exist (file # call > 1 ), if not exit */
@@ -9928,7 +9850,7 @@ nco_fix_dfn_wrt                        /* [fnc] Define/write fixed variables (nc
   /* Edit group name for output */
   if(gpe) grp_out_fll=nco_gpe_evl(gpe,trv->grp_nm_fll); else grp_out_fll=(char *)strdup(trv->grp_nm_fll);
 
-  /* Obtain group ID using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,trv->grp_nm_fll,&grp_id);
 
   /* Get variable ID */
@@ -9952,7 +9874,6 @@ nco_fix_dfn_wrt                        /* [fnc] Define/write fixed variables (nc
 
   }else{ /* !flg_dfn */
     /* Write mode */
-
     md5_sct *md5=NULL; /* [sct] MD5 configuration */
 
     /* Get group ID */
@@ -10176,7 +10097,7 @@ nco_chk_nsm                            /* [fnc] Check if ensembles are valid  */
     if(nco_dbg_lvl_get() >= nco_dbg_dev) (void)fprintf(stdout,"%s: DEBUG %s <ensemble %d> <%s>\n",nco_prg_nm_get(),fnc_nm,
       idx_nsm,trv_tbl->nsm[idx_nsm].grp_nm_fll_prn);
 
-    /* Obtain group ID of current ensemble using full group name */
+    /* Obtain group ID of current ensemble */
     rcd+=nco_inq_grp_full_ncid_flg(in_id,trv_tbl->nsm[idx_nsm].grp_nm_fll_prn,&grp_id);
 
     /* Group must exist, if not exit */
@@ -10260,7 +10181,7 @@ nco_chk_nsm                            /* [fnc] Check if ensembles are valid  */
               size_t tpl_sz;                   /* [nbr] Size of template dimension */
 
               long dmn_sz;                     /* [nbr] Size of dimension */
-              long dmn_cnt_gtt;                /* [nbr] Hyperslabbed size of dimension of GTT variable (first file only) */  
+              long dmn_cnt_gtt=-1;             /* [nbr] Hyperslabbed size of dimension of GTT variable (first file only) */  
 
               nco_bool flg_has_lmt;            /* [flg] Dimension has hyperslab */
 
@@ -10387,7 +10308,7 @@ nco_nsm_att                            /* [fnc] Inquire if ensemble parent group
 
           trv_sct trv=trv_tbl->lst[idx_tbl];
 
-          /* Obtain output group ID using full group name */
+          /* Obtain output group ID */
           (void)nco_inq_grp_full_ncid(nc_id,trv.grp_nm_fll,&grp_id);
 
           /* Does attribute "ensemble_source" exist? (saved in ncge); string is hard coded and duplicated  */
@@ -10608,10 +10529,10 @@ nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
 
   long dmn_sz;                         /* [nbr] Dimension size */  
 
-  /* Obtain group ID using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,grp_nm_fll,&grp_id);
 
-  /* Obtain variable ID using group ID */
+  /* Obtain variable ID */
   (void)nco_inq_varid(grp_id,var_nm,&var_id);
 
   /* Get number of dimensions for variable */
@@ -10643,7 +10564,7 @@ nco_prt_dmn                            /* [fnc] Print dimensions (debug) */
   /* Loop over dimensions of variable */
   for(int idx_var_dim=0;idx_var_dim<var_trv->nbr_dmn;idx_var_dim++){
 
-    int dmn_id;
+    int dmn_id=-1;
 
     if (var_trv->var_dmn[idx_var_dim].crd){
       dmn_sz=var_trv->var_dmn[idx_var_dim].crd->sz;
@@ -10683,7 +10604,7 @@ nco_nsm_wrt_att                  /* [fnc] Save ncge metadata attribute */
     /* If object is group  */
     if(grp_trv.nco_typ == nco_obj_typ_grp){
 
-      /* Obtain group ID from netCDF API using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(nc_id,grp_trv.grp_nm_fll,&grp_id);
 
       if(grp_trv.flg_nsm_prn){
@@ -10701,7 +10622,7 @@ nco_nsm_wrt_att                  /* [fnc] Save ncge metadata attribute */
           if(gpe) grp_out_fll=nco_gpe_evl(gpe,grp_trv.grp_nm_fll_prn); else grp_out_fll=(char *)strdup(grp_trv.grp_nm_fll_prn);
         } /* !nsm_sfx */
 
-        /* Obtain output group ID using full group name */
+        /* Obtain output group ID */
         (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);   
 
         aed.att_nm=strdup("ensemble_source");
diff --git a/src/nco/nco_grp_utl.h b/src/nco/nco_grp_utl.h
index d5de0d8..580c0ee 100644
--- a/src/nco/nco_grp_utl.h
+++ b/src/nco/nco_grp_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.h,v 1.511 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_grp_utl.h,v 1.514 2014/08/26 17:53:43 pvicente Exp $ */
 
 /* Purpose: Group utilities */
 
-/* Copyright (C) 2011--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_var_utl.h" *//* Group utilities */
@@ -671,9 +672,9 @@ nco_dmn_swap                           /* [fnc] Swap dimensions */
 
 void
 nco_dfn_dmn                            /* [fnc] Define dimension size and ID in array */
-(const char * const dmn_nm,            /* I [sng] Name of dimension */
+(const char * const dmn_nm_fll_out,    /* I [sng] Full name of dimension in output */
  const long dmn_sz,                    /* I [nbr] Size of dimension */
- const int dmn_id,                     /* I [id] ID of dimension */
+ const int dmn_id_out,                 /* I [id] ID of dimension in output */
  dmn_cmn_sct *dmn_cmn,                 /* I/O [sct] Dimension structure array */
  const int nbr_dmn);                   /* I [nbr] Number of dimensions (size of above array) */
 
@@ -726,19 +727,13 @@ nco_lmt_aux                           /* [fnc] Apply auxiliary -X limits (Auxili
  trv_tbl_sct * const trv_tbl);        /* I/O [sct] GTT (Group Traversal Table) */
 
 void
-nco_prn_var                           /* [fnc] Print variable (debug only) */
-(const int nc_id,                     /* I [ID] netCDF file ID (Input or output file) */
- trv_tbl_sct * const trv_tbl);        /* I/O [sct] Traversal table */
-
-void
 nco_dmn_lmt                            /* [fnc] Convert a lmt_sct array to dmn_sct (name only) */
 (lmt_sct **lmt,                        /* I [lst] lmt_sct array  */
  const int nbr_lmt,                    /* I [nbr] Size of lmt_sct array  */
  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 */
diff --git a/src/nco/nco_lmt.c b/src/nco/nco_lmt.c
index 7c76f9f..0d396c2 100644
--- a/src/nco/nco_lmt.c
+++ b/src/nco/nco_lmt.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.c,v 1.208 2014/02/14 05:22:17 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.c,v 1.210 2014/07/15 18:48:55 zender Exp $ */
 
 /* Purpose: Hyperslab limits */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_lmt.h" /* Hyperslab limits */
 
@@ -1368,7 +1369,7 @@ nco_lmt_evl_dmn_crd            /* [fnc] Parse user-specified limits into hypersl
   lmt.srd=1L;
   lmt.flg_input_complete=False;
 
-  /* Obtain group ID using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,grp_nm_fll,&grp_id);
 
   /* Use parameter to inquire about coordinate. 
@@ -1378,7 +1379,7 @@ nco_lmt_evl_dmn_crd            /* [fnc] Parse user-specified limits into hypersl
      ncks -O -v ts -d time,0,1 -d Latitude,40.0 -d Longitude,-105.0 http://hydro1.sci.gsfc.nasa.gov/opendap/hyrax/ncml/LPRM_AMSRE_D_SOILM3_timeSeries.ncml amsre.nc */
 
   if(is_crd){
-    /* Obtain coordinate variable ID using group ID */
+    /* Obtain coordinate variable ID */
     (void)nco_inq_varid(grp_id,nm,&var_id);
 
     /* Get coordinate type */
@@ -1492,7 +1493,7 @@ nco_lmt_evl_dmn_crd            /* [fnc] Parse user-specified limits into hypersl
   /* If there is a coordinate variable */
   if(is_crd){
 
-    /* Get variable ID of coordinate. NOTE: using group ID */
+    /* Get variable ID of coordinate */
     (void)nco_inq_varid(grp_id,lmt.nm,&dim.cid);
 
     char *cln_sng=NULL_CEWI;
diff --git a/src/nco/nco_lmt.h b/src/nco/nco_lmt.h
index e07795a..d830521 100644
--- a/src/nco/nco_lmt.h
+++ b/src/nco/nco_lmt.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.h,v 1.69 2014/01/28 07:15:55 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lmt.h,v 1.70 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Hyperslab limits */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_lmt.h" *//* Hyperslab limits */
diff --git a/src/nco/nco_lst_utl.c b/src/nco/nco_lst_utl.c
index 95a4821..1d8fdd3 100644
--- a/src/nco/nco_lst_utl.c
+++ b/src/nco/nco_lst_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.c,v 1.84 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.c,v 1.85 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: List utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_lst_utl.h" /* List utilities */
 
diff --git a/src/nco/nco_lst_utl.h b/src/nco/nco_lst_utl.h
index 3f35ae3..9229f46 100644
--- a/src/nco/nco_lst_utl.h
+++ b/src/nco/nco_lst_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.h,v 1.54 2014/01/06 06:46:05 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_lst_utl.h,v 1.55 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: List utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_lst_utl.h" *//* List utilities */
diff --git a/src/nco/nco_md5.c b/src/nco/nco_md5.c
index 578d911..e21baeb 100644
--- a/src/nco/nco_md5.c
+++ b/src/nco/nco_md5.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.c,v 1.21 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.c,v 1.22 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: NCO utilities for MD5 digests */
 
-/* Copyright (C) 2012--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    ncecat -O -D 1 --md5 -p ~/nco/data in.nc in.nc ~/foo.nc
@@ -197,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.21 2013/12/31 05:14:02 zender Exp $ */
+/* $Id: nco_md5.c,v 1.22 2014/06/15 21:06:23 zender Exp $ */
 /*
   Independent implementation of MD5 (RFC 1321).
   
diff --git a/src/nco/nco_md5.h b/src/nco/nco_md5.h
index 79f0135..c969ba3 100644
--- a/src/nco/nco_md5.h
+++ b/src/nco/nco_md5.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.h,v 1.15 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_md5.h,v 1.16 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Description (definition) of MD5 digest functions */
 
-/* Copyright (C) 2012--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_md5.h" *//* MD5 digests */
@@ -93,7 +94,7 @@ extern "C" {
   ghost at aladdin.com
   
 */
-/* $Id: nco_md5.h,v 1.15 2013/12/31 05:14:02 zender Exp $ */
+/* $Id: nco_md5.h,v 1.16 2014/06/15 21:06:23 zender Exp $ */
 /*
   Independent implementation of MD5 (RFC 1321).
   
diff --git a/src/nco/nco_mmr.c b/src/nco/nco_mmr.c
index 700902b..95c909b 100644
--- a/src/nco/nco_mmr.c
+++ b/src/nco/nco_mmr.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.c,v 1.64 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.c,v 1.66 2014/07/10 22:33:02 zender Exp $ */
 
 /* Purpose: Memory management */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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():
    nco_malloc(): Use this for small memory requests
@@ -572,6 +573,9 @@ nco_mmr_usg_prn /* [fnc] Print rusage memory usage statistics */
 #if (defined LINUX) || (defined LINUXAMD64)
   (void)fprintf(stdout,"%s: INFO %s reports system type is LINUX so getrusage() does implement ru_maxrss [kB] and DOES NOT implement ru_ixrss, ru_idrss, and ru_idrss. Page size is %d B.\n",nco_prg_nm_get(),fnc_nm,sz_pg);
 #endif /* !LINUX */
+#ifdef MACOSX
+  (void)fprintf(stdout,"%s: INFO %s reports system type is MACOSX so rusage structure elements ru_utime and ru_stime are of type 'int' not 'long int'.\n",nco_prg_nm_get(),fnc_nm);
+#endif /* !MACOSX */
 #ifdef NECSX
   (void)fprintf(stdout,"%s: INFO %s reports system type is NECSX so getrusage() units for page size and time are unknown.\n",nco_prg_nm_get(),fnc_nm);
 #endif /* !NECSX */
@@ -586,7 +590,8 @@ nco_mmr_usg_prn /* [fnc] Print rusage memory usage statistics */
   rcd_sys=rusage_who;
   /* fxm: use input argument rusage_who instead of RUSAGE_SELF */
   rcd_sys=0*rcd_sys+getrusage(RUSAGE_SELF,&usg);
-  if(nco_dbg_lvl_get() > nco_dbg_io) (void)fprintf(stdout,"%s: INFO %s reports: rusage.ru_utime.tv_sec = user time used = %li s, rusage.ru_utime.tv_usec = user time used = %li us, rusage.ru_stime.tv_sec = system time used = %li s, rusage.ru_stime.tv_usec = system time used = %li us, rusage.ru_maxrss = maximum resident set size = %li [sz], rusage.ru_ixrss = integral shared memory size =  %li [sz tm], rusage.ru_idrss = integral unshared data size = %li [sz], rusage.ru_isrss = integral unsh [...]
+  /* MACOSX rusage structure elements ru_utime and ru_stime are of type 'int' not 'long int' */
+  if(nco_dbg_lvl_get() > nco_dbg_io) (void)fprintf(stdout,"%s: INFO %s reports: rusage.ru_utime.tv_sec = user time used = %li s, rusage.ru_utime.tv_usec = user time used = %li us, rusage.ru_stime.tv_sec = system time used = %li s, rusage.ru_stime.tv_usec = system time used = %li us, rusage.ru_maxrss = maximum resident set size = %li [sz], rusage.ru_ixrss = integral shared memory size =  %li [sz tm], rusage.ru_idrss = integral unshared data size = %li [sz], rusage.ru_isrss = integral unsh [...]
 
   return (long)usg.ru_maxrss; /* [B] Maximum resident set size */
 #else /* !HAVE_GETRUSAGE */
diff --git a/src/nco/nco_mmr.h b/src/nco/nco_mmr.h
index bdb30b6..e718cd2 100644
--- a/src/nco/nco_mmr.h
+++ b/src/nco/nco_mmr.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.h,v 1.37 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mmr.h,v 1.38 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Memory management */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_mmr.h" *//* Memory management */
diff --git a/src/nco/nco_mpi.h b/src/nco/nco_mpi.h
index 544da82..6720b26 100644
--- a/src/nco/nco_mpi.h
+++ b/src/nco/nco_mpi.h
@@ -1,21 +1,22 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mpi.h,v 1.22 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mpi.h,v 1.24 2014/07/11 02:13:51 zender Exp $ */
 
 /* Purpose: MPI utilities */
 
 /* NB: Currently this header is only accessed by main() MPI programs 
    Hence it is not (yet) part of libnco.a
-   Header assumes its inclusion is already conditional on ENABLE_MPI
+   Header assumes its inclusion depends on ENABLE_MPI
    Header is currently mostly for file-scope constants needed by MPI routines 
    No functions (yet) but some will eventually live here after MPI functionalization
    Adding functions will require creating a corresponding *.c file
    *.c files must reside in libnco.a or link separately to MPI executables
    The latter would slightly complicate the build procedure
-   I am not yet sure I want _any_ MPI dependencies in libnco.a 
-   Cross-platform link weirdness (e.g., AIX) makes avoiding this desirable */
+   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
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_mpi.h" *//* MPI utilities */
diff --git a/src/nco/nco_msa.c b/src/nco/nco_msa.c
index 176d4f8..f323723 100644
--- a/src/nco/nco_msa.c
+++ b/src/nco/nco_msa.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.c,v 1.246 2014/05/23 20:37:23 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.c,v 1.250 2014/08/27 04:44:01 zender Exp $ */
 
 /* Purpose: Multi-slabbing algorithm */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_msa.h" /* Multi-slabbing algorithm */
 
@@ -780,10 +781,7 @@ nco_msa_wrp_splt_trv   /* [fnc] Split wrapped dimensions (GTT version) */
 
     if(dmn_trv->lmt_msa.lmt_dmn[idx]->srt > dmn_trv->lmt_msa.lmt_dmn[idx]->end){
 
-      if(nco_dbg_lvl_get() == nco_dbg_old){
-        (void)fprintf(stdout,"%s: INFO %s dimension <%s> has wrapped limits (%li->%li):\n",
-          nco_prg_nm_get(),fnc_nm,dmn_trv->nm_fll,dmn_trv->lmt_msa.lmt_dmn[idx]->srt,dmn_trv->lmt_msa.lmt_dmn[idx]->end);
-      }
+      if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s dimension <%s> has wrapped limits (%li->%li):\n",nco_prg_nm_get(),fnc_nm,dmn_trv->nm_fll,dmn_trv->lmt_msa.lmt_dmn[idx]->srt,dmn_trv->lmt_msa.lmt_dmn[idx]->end);
 
       lmt_wrp=(lmt_sct *)nco_malloc(2*sizeof(lmt_sct));
 
@@ -831,7 +829,6 @@ nco_msa_wrp_splt_trv   /* [fnc] Split wrapped dimensions (GTT version) */
         (void)fprintf(stdout,"%d:\n",dmn_trv->lmt_msa.lmt_dmn_nbr);
       }
 
-
       /* "trv": Insert 2 non-wrapped limits */ 
 
       /* Current number of dimension limits for this table dimension  */
@@ -859,19 +856,13 @@ nco_msa_wrp_splt_trv   /* [fnc] Split wrapped dimensions (GTT version) */
       /* Update current index of dimension limits for this table dimension  */
       dmn_trv->lmt_msa.lmt_crr++;
 
-      if(nco_dbg_lvl_get() == nco_dbg_old){
-        (void)fprintf(stdout,"%s: INFO %s dimension <%s> new limits inserted (%li->%li) - (%li->%li):\n",
-          nco_prg_nm_get(),fnc_nm,dmn_trv->nm_fll,dmn_trv->lmt_msa.lmt_dmn[idx]->srt,dmn_trv->lmt_msa.lmt_dmn[idx]->end,
-          dmn_trv->lmt_msa.lmt_dmn[lmt_new_idx]->srt,dmn_trv->lmt_msa.lmt_dmn[lmt_new_idx]->end);
-      }
+      if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s dimension <%s> new limits inserted (%li->%li) - (%li->%li):\n",nco_prg_nm_get(),fnc_nm,dmn_trv->nm_fll,dmn_trv->lmt_msa.lmt_dmn[idx]->srt,dmn_trv->lmt_msa.lmt_dmn[idx]->end,dmn_trv->lmt_msa.lmt_dmn[lmt_new_idx]->srt,dmn_trv->lmt_msa.lmt_dmn[lmt_new_idx]->end);
 
     } /* endif srt > end */
   } /* end loop over size */
 
   /* Check if genuine wrapped co-ordinate */
-  if(size==1 && dmn_trv->lmt_msa.lmt_dmn_nbr==2){
-    dmn_trv->lmt_msa.WRP=True;
-  }
+  if(size == 1 && dmn_trv->lmt_msa.lmt_dmn_nbr == 2) dmn_trv->lmt_msa.WRP=True;
 
 } /* End nco_msa_wrp_splt_trv() */
 
@@ -921,7 +912,6 @@ nco_msa_clc_cnt_trv     /* [fnc] Calculate size of  multiple hyperslab (GTT vers
   } /* end else */
 
   return; 
-
 } /* End nco_msa_clc_cnt_trv() */
 
 void             
@@ -942,8 +932,6 @@ nco_msa_qsort_srt_trv  /* [fnc] Sort limits by srt values (GTT version) */
 
 } /* End nco_msa_qsort_srt_trv() */
 
-
-
 nco_bool                /* O [flg] Return true if limits overlap (GTT version) */
 nco_msa_ovl_trv         /* [fnc] See if limits overlap */ 
 (dmn_trv_sct *dmn_trv)  /* [sct] Dimension structure from GTT */
@@ -1030,7 +1018,6 @@ nco_msa_wrp_splt /* [fnc] Split wrapped dimensions */
   if(size==1 && lmt_lst->lmt_dmn_nbr==2) lmt_lst->WRP=True;
 } /* end nco_msa_wrp_splt() */
 
-
 void
 nco_msa_wrp_splt_cpy    /* [fnc] Split wrapped dimensions (make deep copy of new wrapped limits) */
 (lmt_msa_sct *lmt_lst)  /* [sct] MSA */
@@ -1113,7 +1100,6 @@ nco_msa_wrp_splt_cpy    /* [fnc] Split wrapped dimensions (make deep copy of new
         (void)fprintf(stdout,"current limits=%d:\n",lmt_lst->lmt_dmn_nbr);
       }
 
-
       /* "trv": Insert 2 non-wrapped limits */ 
 
       /* Current number of dimension limits for this table dimension  */
@@ -1141,11 +1127,7 @@ nco_msa_wrp_splt_cpy    /* [fnc] Split wrapped dimensions (make deep copy of new
       /* Update current index of dimension limits for this table dimension  */
       lmt_lst->lmt_crr++;
 
-      if(nco_dbg_lvl_get() == nco_dbg_old){
-        (void)fprintf(stdout,"%s: INFO %s dimension <%s> new limits inserted (%li->%li) - (%li->%li):\n",
-          nco_prg_nm_get(),fnc_nm,lmt_lst->dmn_nm,lmt_lst->lmt_dmn[idx]->srt,lmt_lst->lmt_dmn[idx]->end,
-          lmt_lst->lmt_dmn[lmt_new_idx]->srt,lmt_lst->lmt_dmn[lmt_new_idx]->end);
-      }
+      if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"%s: INFO %s dimension <%s> new limits inserted (%li->%li) - (%li->%li):\n",nco_prg_nm_get(),fnc_nm,lmt_lst->dmn_nm,lmt_lst->lmt_dmn[idx]->srt,lmt_lst->lmt_dmn[idx]->end,lmt_lst->lmt_dmn[lmt_new_idx]->srt,lmt_lst->lmt_dmn[lmt_new_idx]->end);
 
     } /* endif srt > end */
   } /* end loop over size */
@@ -1165,7 +1147,8 @@ nco_cpy_var_val_mlt_lmt_trv         /* [fnc] Copy variable data from input to ou
 {
   /* Purpose: Copy variable data from input netCDF file to output netCDF file 
      Routine truncates dimensions in variable definition in output file according to user-specified limits
-     Routine copies variable-by-variable, old-style, used only by ncks 
+     Routine copies variable-by-variable, old-style, used only by ncks
+     Routine does not handle strides (srd)
 
      "GTT" changes from the original nco_cpy_var_val_mlt_lmt():
      Object to write (variable) is passed as parameter */
@@ -1367,9 +1350,8 @@ nco_cpy_msa_lmt                     /* [fnc] Copy MSA struct from table to local
 
       } /* End Loop needed limits */
 
-
       /* No limits? ...Make a limit to read all */
-      if ( (*lmt_msa)[dmn_idx_var]->lmt_dmn_nbr == 0){
+      if ((*lmt_msa)[dmn_idx_var]->lmt_dmn_nbr == 0){
 
         if(nco_dbg_lvl_get() == nco_dbg_old) (void)fprintf(stdout,"Warning...no limit zone\n "); 
 
@@ -1382,9 +1364,9 @@ nco_cpy_msa_lmt                     /* [fnc] Copy MSA struct from table to local
         (void)nco_lmt_init((*lmt_msa)[dmn_idx_var]->lmt_dmn[0]);
 
         /* And set start,count,stride to read everything ...major success */
-        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srt=0;
+        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srt=0L;
         (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->cnt=(*lmt_msa)[dmn_idx_var]->dmn_sz_org;
-        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srd=1;
+        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srd=1L;
 
       } /* Make a limit to read all */
     } /* If there are limits for this variable dimension, get MSA from table */
@@ -1436,9 +1418,9 @@ nco_cpy_msa_lmt                     /* [fnc] Copy MSA struct from table to local
         (void)nco_lmt_init((*lmt_msa)[dmn_idx_var]->lmt_dmn[0]);
 
         /* And set start,count,stride to read everything ...major success */
-        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srt=0;
+        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srt=0L;
         (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->cnt=(*lmt_msa)[dmn_idx_var]->dmn_sz_org;
-        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srd=1;
+        (*lmt_msa)[dmn_idx_var]->lmt_dmn[0]->srd=1L;
 
       } /* Make a limit to read all */
     } /* If there are limits for this variable dimension, get MSA from table */
@@ -1476,7 +1458,7 @@ nco_msa_var_get_trv                 /* [fnc] Get variable data from disk taking
   var_trv=trv_tbl_var_nm_fll(var_in->nm_fll,trv_tbl);
   assert(var_trv);
 
-  /* Obtain group ID using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id);
 
   nbr_dim=var_in->nbr_dim;	
diff --git a/src/nco/nco_msa.h b/src/nco/nco_msa.h
index 413d0da..bbe9c38 100644
--- a/src/nco/nco_msa.h
+++ b/src/nco/nco_msa.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.h,v 1.81 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_msa.h,v 1.82 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Multi-slabbing algorithm */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_msa.h" *//* Multi-slabbing algorithm */
diff --git a/src/nco/nco_mss_val.c b/src/nco/nco_mss_val.c
index 31ecaec..42c1717 100644
--- a/src/nco/nco_mss_val.c
+++ b/src/nco/nco_mss_val.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.c,v 1.55 2014/05/27 02:55:26 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.c,v 1.56 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Missing value utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_mss_val.h" /* Missing value utilities */
 
diff --git a/src/nco/nco_mss_val.h b/src/nco/nco_mss_val.h
index 620a350..d6df1c1 100644
--- a/src/nco/nco_mss_val.h
+++ b/src/nco/nco_mss_val.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.h,v 1.35 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_mss_val.h,v 1.36 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Missing value utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_mss_val.h" *//* Missing value utilities */
diff --git a/src/nco/nco_netcdf.c b/src/nco/nco_netcdf.c
index b178f51..75c1be3 100644
--- a/src/nco/nco_netcdf.c
+++ b/src/nco/nco_netcdf.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.c,v 1.242 2014/05/20 17:17:03 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.c,v 1.252 2014/07/11 02:13:51 zender Exp $ */
 
 /* Purpose: NCO wrappers for netCDF C library */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_netcdf.h" /* NCO wrappers for netCDF C library */
 
@@ -77,7 +78,7 @@ nco_err_exit /* [fnc] Print netCDF error message, routine name, then exit */
   switch(rcd){
   case NC_EBADTYPE: (void)fprintf(stdout,"ERROR NC_BADTYPE Not a netCDF data type\nHINT: NC_EBADTYPE errors can occur when NCO tries to write netCDF4 features to a netCDF3 file. Features that cannot be defined in a netCDF3 file, and that thus will trigger this error, include groups and netCDF4 atomic types (e.g., NC_STRING, NC_UBYTE). The workaround is to remove all netCDF4 features before attempting the conversion, or to just give up and write a netCDF4 output file instead of a netCDF3  [...]
   case NC_ECANTWRITE: (void)fprintf(stdout,"ERROR NC_ECANTWRITE Can't write file\nHINT: NC_ECANTWRITE errors can occur when NCO tries to write to an HDF5 file that is not netCDF4-compliant. One workaround is translate the file to a netCDF4-compliant file first, e.g., with \'ncks in.h5 out.nc\'.\n"); break;
-  case NC_EINVAL: (void)fprintf(stdout,"ERROR NC_EINVAL Invalid argument\nHINT: NC_EINVAL errors can occur for many reasons. Three common ones are described here. 1. When NCO operators attempt to open netCDF4 files using the diskless option, usually invoked with --diskless_all, --ram_all, or --open_ram.  Is your input file netCDF4 format?  (http://nco.sf.net/nco.html#fmt_inq shows how to tell.) If so then omitting the diskless option may solve this problem. 2. When HDF4-enabled NCO attem [...]
+  case NC_EINVAL: (void)fprintf(stdout,"ERROR NC_EINVAL Invalid argument\nHINT: NC_EINVAL errors can occur for many reasons. Three common ones are described here. 1. When NCO operators attempt to open netCDF4 files using the diskless option, usually invoked with --diskless_all, --ram_all, or --open_ram.  Is your input file netCDF4 format?  (http://nco.sf.net/nco.html#fmt_inq shows how to tell.) If so then omitting the diskless option may solve this problem. 2. When HDF4-enabled NCO attem [...]
   case NC_ELATEFILL: /* netcdf.h replaced NC_EFILLVALUE by NC_ELATEFILL after about netCDF ~4.2.1 */ 
      (void)fprintf(stdout,"ERROR NC_ELATEFILL (formerly NC_EFILLVALUE) Attempt to define fill value when data already exists\nHINT: NC_ELATEFILL errors can occur when ncap2 attempts to define a variable with a _FillValue attribute in a netCDF4 file.  We believe this is an NCO bug (fxm TODO nco1089) and are working to fix it. Does your output file need to be netCDF4 or netCDF4_classic format? If so, then wait for us to fix the bug. If not, change the output format to netCDF3 (e.g., with - [...]
 #ifdef ENABLE_NETCDF4 
@@ -89,7 +90,7 @@ nco_err_exit /* [fnc] Print netCDF error message, routine name, then exit */
 #else /* !ENABLE_NETCDF4 */ 
      (void)fprintf(stdout,"Are your input files netCDF4 format?  (http://nco.sf.net/nco.html#fmt_inq shows how to tell.) If so then installing or re-building a netCDF4-compatible version of NCO should solve this problem. First upgrade netCDF to version 4.x, then install NCO using those netCDF 4.x libraries.\n2. NC_ENOTNC can occur when users attempt to utilize diskless (i.e., RAM) files.  In this case remove the diskless switches (e.g., --ram or --diskless) and then re-issue the command. \n"); 
 #endif /* !ENABLE_NETCDF4 */ 
-     (void)fprintf(stdout,"2. NCO attempts to utilize diskless (i.e., RAM) files.  In this case remove the diskless switches (e.g., --ram or --diskless) and then re-issue the command.\n3. NCO attempts to read other non-supported filetypes, e.g., HDF4, HDF-EOS2. In this case it may be possible to access the input files using NCO if NCO is first re-linked to a version of netCDF configured with the --enable-hdf4 option. This is a non-standard netCDF build option described here: http://www.u [...]
+     (void)fprintf(stdout,"2. NCO attempts to utilize diskless (i.e., RAM) files.  In this case remove the diskless switches (e.g., --ram or --diskless) and then re-issue the command.\n3. NCO attempts to read other filetypes (HDF4, HDF-EOS2, pnetCDF) for which support must be (but was not) enabled at netCDF build-time. In this case it may be possible to access the input files using NCO if NCO is first re-linked to a version of netCDF configured with the --enable-hdf4 option. This is a no [...]
   case NC_ERANGE: (void)fprintf(stdout,"ERROR NC_ERANGE Result not representable in output file\nHINT: NC_ERANGE errors typically occur after an arithmetic operation results in a value not representible by the output variable type when NCO attempts to write those values to an output file.  Possible workaround: Promote the variable to higher precision before attempting arithmetic.  For example,\nncap2 -O -s \'foo=double(foo);\' in.nc in.nc\nFor more details, see http://nco.sf.net/nco.html [...]
   case NC_EUNLIMIT: (void)fprintf(stdout,"ERROR NC_UNLIMIT NC_UNLIMITED size already in use\nHINT: NC_EUNLIMIT errors can occur when attempting to convert netCDF4 classic files that contain multiple record dimensions into a netCDF3 file that allows only one record dimension. In this case, try first fixing the excess record dimension(s) (with, e.g., ncks --fix_rec_dmn) and then convert to netCDF3. For more details, see http://nco.sf.net/nco.html#fix_rec_dmn\n"); break;
   case NC_EVARSIZE: (void)fprintf(stdout,"ERROR NC_EVARSIZE One or more variable sizes violate format constraints\nHINT: NC_EVARSIZE errors can occur when attempting to aggregate netCDF3 classic files together into outputs that exceed the capacity of the netCDF3 classic file format, e.g., a variable with size in excess of 2^31 bytes. In this case, try altering the output file type to netCDF3 classic with 64-bit offsets (with --64) or to netCDF4 (with -4). For more details, see http://nco [...]
@@ -450,6 +451,8 @@ nco_fmt_sng /* [fnc] Convert netCDF file format enum to string */
     return "NC_FORMAT_NETCDF4";
   case NC_FORMAT_NETCDF4_CLASSIC:
     return "NC_FORMAT_NETCDF4_CLASSIC";
+  case NC_FORMAT_CDF5:
+    return "NC_FORMAT_CDF5";
   default: nco_dfl_case_nc_type_err(); break;
   } /* end switch */
 
@@ -472,6 +475,8 @@ nco_fmt_hdn_sng /* [fnc] Convert netCDF file format enum to string for hidden at
     return "netCDF-4";
   case NC_FORMAT_NETCDF4_CLASSIC:
     return "netCDF-4 classic model";
+  case NC_FORMAT_CDF5:
+    return "64-bit-variable";
   default: nco_dfl_case_nc_type_err(); break;
   } /* end switch */
 
@@ -651,11 +656,22 @@ nco_open_flg(const char * const fl_nm,const int mode,int * const nc_id)
   return rcd;
 } /* end nco_open */
 
-#if 0
-#ifdef HAVE_NETCDF4_H
+#ifdef ENABLE_MPI
+# ifdef HAVE_NETCDF4_H
 /* netCDF4 routines defined by Unidata netCDF4 Library libnetcdf.a 
    20051129: nc_*_par() routines require that netCDF4 be configured for parallel filesystems */
 int 
+nco_create_par(const char * const fl_nm,const int cmode,MPI_Comm mpi_cmm,MPI_Info mpi_nfo,int * const nc_id)
+{
+  /* Purpose: Wrapper for nc_create_par() */
+  const char fnc_nm[]="nco_create_par()";
+  int rcd;
+  rcd=nc_create_par(fl_nm,cmode,mpi_cmm,mpi_nfo,nc_id);
+  if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
+  return rcd;
+} /* end nco_create_par */
+
+int 
 nco_open_par(const char * const fl_nm,const int mode,MPI_Comm mpi_cmm,MPI_Info mpi_nfo,int * const nc_id)
 {
   /* Purpose: Wrapper for nc_open_par() */
@@ -665,22 +681,48 @@ nco_open_par(const char * const fl_nm,const int mode,MPI_Comm mpi_cmm,MPI_Info m
   if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
   return rcd;
 } /* end nco_open_par */
-#endif /* !HAVE_NETCDF4_H */
-#endif /* !0 */
 
-#ifdef ENABLE_PNETCDF
-/* pnetCDF routines defined by ANL Parallel netCDF Library libpnetcdf.a */
+int 
+nco_var_par_access(const int nc_id,const int var_id,const int par_access)
+{
+  /* Purpose: Wrapper for nc_var_par_access()
+     NB: HDF5 allows per-variable setting of access type
+     PnetCDF sets all variables to same access type */
+  const char fnc_nm[]="nco_var_par_access()";
+  int rcd;
+  rcd=nc_var_par_access(nc_id,var_id,par_access);
+  if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
+  return rcd;
+} /* end nco_var_par_access */
+# endif /* !HAVE_NETCDF4_H */
+
+# ifdef PNETCDF_EXPOSED_API
+/* PnetCDF routines defined by ANL Parallel netCDF Library libpnetcdf.a
+   NB: netCDF4 versions 4.3.x automagically call PnetCDF internally, yet do not expose its API
+   These sample prototypes will never be used until/unless someone exposes the PnetCDF API to NCO (unlikely)
+   Until then, the token ENABLE_PNETCDF means that netCDF4 was built with --enable-pnetcdf */
 int
-ncompi_open(MPI_Comm mpi_cmm,const char * const fl_nm,const int mode,MPI_Info mpi_nfo,int * const nc_id)
+ncompi_create(MPI_Comm mpi_cmm,const char * const fl_nm,const int cmode,MPI_Info mpi_nfo,int * const nc_id)
+{
+  /* Purpose: Wrapper for ncmpi_create() */
+  const char fnc_nm[]="ncompi_create()";
+  int rcd;
+  rcd=ncmpi_create(mpi_cmm,fl_nm,cmode,mpi_nfo,nc_id);
+  if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
+  return rcd;
+} /* end ncompi_create */
+int
+ncompi_open(MPI_Comm mpi_cmm,const char * const fl_nm,const int omode,MPI_Info mpi_nfo,int * const nc_id)
 {
   /* Purpose: Wrapper for ncmpi_open() */
   const char fnc_nm[]="ncompi_open()";
   int rcd;
-  rcd=ncmpi_open(mpi_cmm,fl_nm,mode,mpi_nfo,nc_id);
+  rcd=ncmpi_open(mpi_cmm,fl_nm,omode,mpi_nfo,nc_id);
   if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
   return rcd;
 } /* end ncompi_open */
-#endif /* !ENABLE_PNETCDF */
+# endif /* !PNETCDF_EXPOSED_API */
+#endif /* !ENABLE_MPI */
 
 int
 nco_redef(const int nc_id)
@@ -1932,9 +1974,21 @@ int
 nco_rename_att(const int nc_id,const int var_id,const char * const att_nm,const char * const att_new_nm)
 {
   /* Purpose: Wrapper for nc_rename_att() */
+  const char fnc_nm[]="nco_rename_att()";
   int rcd;
   rcd=nc_rename_att(nc_id,var_id,att_nm,att_new_nm);
-  if(rcd != NC_NOERR) nco_err_exit(rcd,"nco_rename_att()");
+  if(rcd == NC_ENAMEINUSE){
+    if(var_id > NC_GLOBAL){
+      char var_nm[NC_MAX_NAME+1L];
+      (void)nco_inq_varname(nc_id,var_id,var_nm);
+      (void)fprintf(stdout,"ERROR: %s unable to rename variable \"%s\" attribute \"%s\" to \"%s\" because the variable already has an attribute of that name\n",fnc_nm,var_nm,att_nm,att_new_nm);
+    }else{
+      char grp_nm[NC_MAX_NAME+1L];
+      (void)nco_inq_grpname(nc_id,grp_nm);
+      (void)fprintf(stdout,"ERROR: %s unable to rename group \"%s\" attribute \"%s\" to \"%s\" because the group already has an attribute of that name\n",fnc_nm,grp_nm,att_nm,att_new_nm);
+    } /* endif */
+  } /* !NC_ENAMEINUSE */
+  if(rcd != NC_NOERR) nco_err_exit(rcd,fnc_nm);
   return rcd;
 }  /* end nco_rename_att */
 
@@ -2150,7 +2204,7 @@ int NCO_PUT_ATT_UINT64(const int nc_id,const int var_id,const char *att_nm,const
 int NCO_PUT_ATT_STRING(const int nc_id,const int var_id,const char *att_nm,const nc_type att_typ,size_t att_len,const char **sngp){return 1;}
 #endif /* ENABLE_NETCDF4 */
 #ifndef ENABLE_NETCDF4
-/* 20051119: netcdf4 library did not support these until alpha10, still does not support nco_put/get_att_ubyte() */
+/* 20051119: netCDF4 library did not support these until alpha10, still does not support nco_put/get_att_ubyte() */
 int NCO_GET_ATT_UBYTE(const int nc_id,const int var_id,const char *att_nm,nco_ubyte *ubp){return 1;}
 int NCO_GET_ATT_USHORT(const int nc_id,const int var_id,const char *att_nm,nco_ushort *usp){return 1;}
 int NCO_GET_ATT_UINT(const int nc_id,const int var_id,const char *att_nm,nco_uint *uip){return 1;}
diff --git a/src/nco/nco_netcdf.h b/src/nco/nco_netcdf.h
index 2141603..43c291d 100644
--- a/src/nco/nco_netcdf.h
+++ b/src/nco/nco_netcdf.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.h,v 1.114 2014/04/14 04:54:12 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_netcdf.h,v 1.120 2014/07/10 23:36:22 zender Exp $ */
 
 /* Purpose: NCO wrappers for netCDF C library */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
 #include "nco_netcdf.h" *//* NCO wrappers for netCDF C library */
@@ -47,10 +48,10 @@
 
 /* 3rd party vendors */
 #include <netcdf.h> /* netCDF definitions and C library */
-#ifdef ENABLE_PNETCDF
-#include <mpi.h> /* MPI definitions */
-#include <pnetcdf.h> /* ANL Parallel netCDF definitions and C library */
-#endif /* !ENABLE_PNETCDF */
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+#endif /* !ENABLE_MPI */
 
 /* Personal headers */
 #include "nco_typ.h" /* Type definitions, opaque types */
@@ -114,6 +115,18 @@
 # define NC_FORMAT_DAP4    (6)
 #endif
 
+/* Three compatibility tokens from pnetcdf.h introduced to NCO 20140604 
+   None are used yet */
+#ifndef NC_64BIT_DATA
+# define NC_64BIT_DATA	0x0010 /* CDF-5 format, (64-bit) supported */
+#endif
+#ifndef NC_FORMAT_CDF5
+# define NC_FORMAT_CDF5  5 /* CDF-5 format, with NC_64BIT_DATA. */
+#endif
+#ifndef NC_FORMAT_64BIT_DATA
+# define NC_FORMAT_64BIT_DATA	NC_FORMAT_CDF5
+#endif
+
 /* Some netCDF3 stubs for netCDF4 routines need netCDF4-only return codes
    These netCDF4 tokens are never defined in netCDF3-only netcdf.h */
 #ifndef HAVE_NETCDF4_H
@@ -221,16 +234,19 @@ char * /* O [sng] netCDF-compatible name */
 nm2sng_nc /* [fnc] Turn group/variable/dimension/attribute name into legal netCDF */
 (const char * const nm_sng); /* I [sng] Name to netCDF-ize */
 
-#if 0
-#ifdef HAVE_NETCDF4_H
+#ifdef ENABLE_MPI
+# ifdef HAVE_NETCDF4_H
 /* netCDF4 routines defined by Unidata netCDF4 Library libnetcdf.a */
-int nco_open_par(const char * const fl_nm,const int mode,MPI_Comm mpi_cmm,MPI_Info mpi_nfo,int * const nc_id);
-#endif /* !HAVE_NETCDF4_H */
-#endif /* !0 */
-#ifdef ENABLE_PNETCDF
+int nco_create_par(const char * const fl_nm,const int cmode,MPI_Comm mpi_cmm,MPI_Info mpi_nfo,int * const nc_id);
+int nco_open_par  (const char * const fl_nm,const int  mode,MPI_Comm mpi_cmm,MPI_Info mpi_nfo,int * const nc_id);
+int nco_var_par_access(const int nc_id,const int var_id,const int par_access);
+# endif /* !HAVE_NETCDF4_H */
+# ifdef PNETCDF_EXPOSED_API
 /* pnetCDF routines defined by ANL Parallel netCDF Library libpnetcdf.a */
-int ncompi_open(MPI_Comm mpi_cmm,const char * const fl_nm,const int mode,MPI_Info mpi_nfo,int * const nc_id);
-#endif /* !ENABLE_PNETCDF */
+int ncompi_create(MPI_Comm mpi_cmm,const char * const fl_nm,const int cmode,MPI_Info mpi_nfo,int * const nc_id);
+int ncompi_open  (MPI_Comm mpi_cmm,const char * const fl_nm,const int omode,MPI_Info mpi_nfo,int * const nc_id);
+# endif /* !PNETCDF_EXPOSED_API */
+#endif /* !ENABLE_MPI */
 
 /* Begin file-level routines */
 int nco_create(const char * const fl_nm,const int cmode,int * const nc_id);
diff --git a/src/nco/nco_omp.c b/src/nco/nco_omp.c
index a90a241..83db90d 100644
--- a/src/nco/nco_omp.c
+++ b/src/nco/nco_omp.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.c,v 1.70 2014/03/16 06:29:43 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.c,v 1.71 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: OpenMP utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 630e451..842f4f0 100644
--- a/src/nco/nco_omp.h
+++ b/src/nco/nco_omp.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.h,v 1.31 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_omp.h,v 1.32 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: OpenMP utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_omp.h" *//* OpenMP utilities */
diff --git a/src/nco/nco_pck.c b/src/nco/nco_pck.c
index b20b07b..bf80730 100644
--- a/src/nco/nco_pck.c
+++ b/src/nco/nco_pck.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.c,v 1.98 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.c,v 1.99 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: NCO utilities for packing and unpacking variables */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_pck.h" /* Packing and unpacking variables */
 
diff --git a/src/nco/nco_pck.h b/src/nco/nco_pck.h
index 3be4c7c..0b0e21c 100644
--- a/src/nco/nco_pck.h
+++ b/src/nco/nco_pck.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.h,v 1.52 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_pck.h,v 1.53 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Description (definition) of packing/unpacking functions */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_pck.h" *//* Packing and unpacking variables */
diff --git a/src/nco/nco_prn.c b/src/nco/nco_prn.c
index 3b1cb86..93e2af4 100644
--- a/src/nco/nco_prn.c
+++ b/src/nco/nco_prn.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.c,v 1.220 2014/04/16 18:00:08 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.c,v 1.222 2014/07/15 18:48:55 zender Exp $ */
 
 /* Purpose: Print variables, attributes, metadata */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_prn.h" /* Print variables, attributes, metadata */
 
@@ -1159,10 +1160,10 @@ nco_prn_var_dfn                     /* [fnc] Print variable metadata */
   size_t cnk_sz[NC_MAX_DIMS]; /* [nbr] Chunk sizes */
   size_t dmn_sz[NC_MAX_DIMS]; /* [nbr] Dimension sizes */
 
-  /* Obtain group ID from netCDF API using full group name */
+  /* Obtain group ID */
   (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id);
 
-  /* Obtain variable ID from netCDF API using group ID */
+  /* Obtain variable ID */
   (void)nco_inq_varid(grp_id,var_trv->nm,&var_id);
 
   /* Get number of dimensions, type, and number of attributes for variable */
@@ -1397,7 +1398,7 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
   if(prn_flg->new_fmt && CDL_OR_TRD) prn_ndn=prn_flg->ndn+prn_flg->var_fst;
   if(XML) prn_ndn=prn_flg->ndn;
 
-  /* Obtain group ID where variable is located using full group name */
+  /* Obtain group ID where variable is located */
   (void)nco_inq_grp_full_ncid(nc_id,var_trv->grp_nm_fll,&grp_id);
 
   /* Set defaults */
@@ -1788,10 +1789,10 @@ nco_prn_var_val_trv /* [fnc] Print variable data (GTT version) */
           /* Get coordinate from table */
           crd_sct *crd=var_trv->var_dmn[idx].crd;
 
-          /* Obtain group ID using full group name */
+          /* Obtain group ID */
           (void)nco_inq_grp_full_ncid(nc_id,crd->crd_grp_nm_fll,&var_crd.nc_id);
 
-          /* Obtain variable ID using group ID and name */
+          /* Obtain variable ID and name */
           (void)nco_inq_varid(var_crd.nc_id,crd->nm,&var_crd.id);
 
           /* Store "var_sct" members for MSA read */
@@ -2222,7 +2223,7 @@ nco_grp_prn /* [fnc] Recursively print group contents */
     /* Print variable metadata */ 
     if(prn_flg->PRN_VAR_METADATA || CDL_OR_XML) (void)nco_prn_var_dfn(nc_id,prn_flg,&var_trv);
 
-    /* Obtain variable ID using group ID */
+    /* Obtain variable ID */
     (void)nco_inq_varid(grp_id,var_trv.nm,&var_id);
 
     /* Print variable attributes */
diff --git a/src/nco/nco_prn.h b/src/nco/nco_prn.h
index 8c81b69..92223d3 100644
--- a/src/nco/nco_prn.h
+++ b/src/nco/nco_prn.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.h,v 1.52 2014/02/06 00:48:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_prn.h,v 1.53 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Print variables, attributes, metadata */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_prn.h" *//* Print variables, attributes, metadata */
diff --git a/src/nco/nco_rec_var.c b/src/nco/nco_rec_var.c
index 746b51b..c281948 100644
--- a/src/nco/nco_rec_var.c
+++ b/src/nco/nco_rec_var.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.c,v 1.29 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.c,v 1.30 2014/06/15 21:06:23 zender Exp $ */
 
 /* Purpose: Record variable utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_rec_var.h" /* Record variable utilities */
 
diff --git a/src/nco/nco_rec_var.h b/src/nco/nco_rec_var.h
index 75ca0a6..62c18e9 100644
--- a/src/nco/nco_rec_var.h
+++ b/src/nco/nco_rec_var.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.h,v 1.21 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rec_var.h,v 1.22 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Record variable utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_rec_var.h" *//* Record variable utilities */
diff --git a/src/nco/nco_rth_flt.c b/src/nco/nco_rth_flt.c
index ca4b5bf..17b3b76 100644
--- a/src/nco/nco_rth_flt.c
+++ b/src/nco/nco_rth_flt.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.c,v 1.38 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.c,v 1.39 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Float-precision arithmetic, MSVC macros */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_rth_flt.h" /* Float-precision arithmetic, MSVC macros */
 
diff --git a/src/nco/nco_rth_flt.h b/src/nco/nco_rth_flt.h
index cd434d4..ffc5886 100644
--- a/src/nco/nco_rth_flt.h
+++ b/src/nco/nco_rth_flt.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.h,v 1.51 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_flt.h,v 1.52 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Float-precision arithmetic, MSVC macros */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_rth_flt.h" *//* Float-precision arithmetic, MSVC macros */
diff --git a/src/nco/nco_rth_utl.c b/src/nco/nco_rth_utl.c
index 7443403..bd7be01 100644
--- a/src/nco/nco_rth_utl.c
+++ b/src/nco/nco_rth_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.c,v 1.69 2014/02/17 23:12:38 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.c,v 1.70 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Arithmetic controls and utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_rth_utl.h" /* Arithmetic controls and utilities */
 
diff --git a/src/nco/nco_rth_utl.h b/src/nco/nco_rth_utl.h
index ad988a4..e50446e 100644
--- a/src/nco/nco_rth_utl.h
+++ b/src/nco/nco_rth_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.h,v 1.43 2014/01/03 19:44:44 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_rth_utl.h,v 1.44 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Arithmetic controls and utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_rth_utl.h" *//* Arithmetic controls and utilities */
diff --git a/src/nco/nco_scl_utl.c b/src/nco/nco_scl_utl.c
index 098a023..b496a15 100644
--- a/src/nco/nco_scl_utl.c
+++ b/src/nco/nco_scl_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.c,v 1.31 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.c,v 1.32 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Scalar utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 169317a..14afbb8 100644
--- a/src/nco/nco_scl_utl.h
+++ b/src/nco/nco_scl_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.h,v 1.24 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scl_utl.h,v 1.25 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Scalar utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_scl_utl.h" *//* Scalar utilities */
diff --git a/src/nco/nco_scm.c b/src/nco/nco_scm.c
index a6e585f..07bae6d 100644
--- a/src/nco/nco_scm.c
+++ b/src/nco/nco_scm.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.c,v 1.53 2014/03/04 16:59:24 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.c,v 1.57 2014/08/21 18:22:44 zender Exp $ */
 
 /* Purpose: Software configuration management */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_scm.h" /* Software configuration management */
 
@@ -30,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_4 $";
+  char cvs_Name[]="$Name: nco-4_4_5 $";
   const char dlr_nm_cln_spc[]="$Name: "; /* [sng] Dollar name colon space */
   const char nco_sng[]="nco"; 
   const char spc_dlr[]=" $"; /* [sng] Space dollar */
@@ -124,7 +125,7 @@ cvs_vrs_prs(void) /* [fnc] Return CVS version string */
     (void)sprintf(cvs_vrs_sng,"%li.%li",cvs_mjr_vrs,cvs_mnr_vrs);
   }/* end else */
 
-  if(nco_dbg_lvl_get() >= nco_dbg_sbr){
+  if(nco_dbg_lvl_get() >= nco_dbg_vrb){
     (void)fprintf(stderr,"NCO version %s\n",cvs_vrs_sng);
     (void)fprintf(stderr,"cvs_nm_sng %s\n",cvs_nm_sng);
     (void)fprintf(stderr,"cvs_mjr_vrs_sng %s\n",cvs_mjr_vrs_sng);
@@ -148,7 +149,7 @@ 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,"NCO is free software and comes with a BIG FAT KISS and ABOLUTELY NO WARRANTY\nLicense: GNU General Public License (GPL) Version 3\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");
 } /* end copyright_prn() */
 
 void
diff --git a/src/nco/nco_scm.h b/src/nco/nco_scm.h
index 4b72e3a..c959818 100644
--- a/src/nco/nco_scm.h
+++ b/src/nco/nco_scm.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.h,v 1.25 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_scm.h,v 1.26 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Software configuration management */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_scm.h" *//* Software configuration management */
diff --git a/src/nco/nco_sng_utl.c b/src/nco/nco_sng_utl.c
index 960496f..d0cd4c5 100644
--- a/src/nco/nco_sng_utl.c
+++ b/src/nco/nco_sng_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.c,v 1.75 2014/04/13 07:56:41 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.c,v 1.77 2014/08/22 20:27:48 zender Exp $ */
 
 /* Purpose: String utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_sng_utl.h" /* String utilities */
 
@@ -172,14 +173,14 @@ nm2sng_cdl /* [fnc] Turn variable/dimension/attribute name into legal CDL */
   
   if(nm_sng == NULL) return NULL;
 
-  /* Otherwise name contains special character(s)... */
+  /* Otherwise name may contain special character(s)... */
   nm_lng=strlen(nm_sng);
   /* Maximum conceivable length of CDL-ized name */
   chr_out_ptr=nm_cdl=(char *)nco_malloc(4*nm_lng+1L);
   /* Copy to preserve const-ness */
   chr_in_ptr=nm_cpy=(char *)strdup(nm_sng);
   /* NUL-terminate in case input string is empty so will be output string */
-  chr_out_ptr[0]='0';
+  chr_out_ptr[0]='\0';
 
   /* Search and replace special characters */
 
@@ -241,7 +242,7 @@ nm2sng_cdl /* [fnc] Turn variable/dimension/attribute name into legal CDL */
     chr_in_ptr++;
   } /* end while loop */
   /* NUL-terminate */
-  *chr_out_ptr=0;
+  *chr_out_ptr='\0';
 
   /* Free memory */
   nm_cpy=(char *)nco_free(nm_cpy);
@@ -249,6 +250,98 @@ nm2sng_cdl /* [fnc] Turn variable/dimension/attribute name into legal CDL */
   return nm_cdl;
 } /* end nm2sng_cdl() */
 
+char * /* O [sng] CDL-compatible name */
+nm2sng_fl /* [fnc] Turn file name into legal string for shell commands */
+(const char * const nm_sng) /* I [sng] Name to sanitize */
+{
+  /* Purpose: Turn file name into legal string for shell commands
+     Currently this means protecting special characters with backslash so shell is not confused
+     Based on nm2sng_cdl()
+     NB: Calling function must free() memory containing sanitized string */
+
+  char *chr_in_ptr; /* [sng] Pointer to current character in input name */
+  char *chr_out_ptr; /* [sng] Pointer to current character in output name */
+  char *nm_fl; /* [sng] CDL-compatible name */
+  char *nm_cpy; /* [sng] Copy of input */
+
+  int nm_lng; /* [nbr] Length of original name */
+  
+  if(nm_sng == NULL) return NULL;
+
+  /* Otherwise name may contain special character(s)... */
+  nm_lng=strlen(nm_sng);
+  /* Maximum conceivable length of sanitized name */
+  chr_out_ptr=nm_fl=(char *)nco_malloc(4*nm_lng+1L);
+  /* Copy to preserve const-ness */
+  chr_in_ptr=nm_cpy=(char *)strdup(nm_sng);
+  /* NUL-terminate in case input string is empty so will be output string */
+  chr_out_ptr[0]='\0';
+
+  /* Search and replace special characters */
+
+  /* This block stolen from: ncdump/utils.c/escaped_name() */ 
+
+  if((*chr_in_ptr >= 0x01 && *chr_in_ptr <= 0x20) || (*chr_in_ptr == 0x7f)){
+    (void)fprintf(stderr,"%s: ERROR name begins with space or control-character: %c\n",nco_prg_nm_get(),*chr_in_ptr);
+    nco_exit(EXIT_FAILURE);
+  } /* endif error */
+
+  while(*chr_in_ptr){
+    if(isascii(*chr_in_ptr)){
+      if(iscntrl(*chr_in_ptr)){	/* Render control chars as two hex digits, \%xx */
+	snprintf(chr_out_ptr,4,"\\%%%.2x",*chr_in_ptr);
+	chr_out_ptr+=4;
+      }else{
+	switch(*chr_in_ptr){
+	case ' ':
+	case '!':
+	case '"':
+	case '#':
+	case '$':
+	case '&':
+	case '\'':
+	case '(':
+	case ')':
+	case '*':
+	case ',':
+	  // case ':': /* 20140822: Protecting colon with backslash causes Windows error parsing volume names, e.g., "C:\foo" */
+	case ';':
+	case '<':
+	case '=':
+	case '>':
+	case '?':
+	case '[':
+	case ']':
+	case '\\':
+	case '^':
+	case '`':
+	case '{':
+	case '|':
+	case '}':
+	case '~':
+	  *chr_out_ptr++='\\';
+	  *chr_out_ptr++=*chr_in_ptr;
+	  break;
+	default: /* NB: includes '/' */
+	  *chr_out_ptr++=*chr_in_ptr;
+	  break;
+	} /* end switch */
+      } /* not a control character */
+    }else{ /* not ascii, assume just UTF-8 byte */
+      *chr_out_ptr++=*chr_in_ptr;
+    } /* end else not ascii */
+    /* Advance character */
+    chr_in_ptr++;
+  } /* end while loop */
+  /* NUL-terminate */
+  *chr_out_ptr='\0';
+
+  /* Free memory */
+  nm_cpy=(char *)nco_free(nm_cpy);
+
+  return nm_fl;
+} /* end nm2sng_fl() */
+
 char * /* O [sng] String containing printable result */
 chr2sng_cdl /* [fnc] Translate C language character to printable, visible ASCII bytes */
 (const char chr_val, /* I [chr] Character to process */
diff --git a/src/nco/nco_sng_utl.h b/src/nco/nco_sng_utl.h
index 0b77292..3116151 100644
--- a/src/nco/nco_sng_utl.h
+++ b/src/nco/nco_sng_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.h,v 1.46 2014/04/14 04:54:12 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_sng_utl.h,v 1.48 2014/08/22 20:27:48 zender Exp $ */
 
 /* Purpose: String utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_sng_utl.h" *//* String utilities */
@@ -81,6 +82,10 @@ char * /* O [sng] CDL-compatible name */
 nm2sng_cdl /* [fnc] Turn variable/dimension/attribute name into legal CDL */
 (const char * const nm_sng); /* I [sng] Name to CDL-ize */
 
+char * /* O [sng] CDL-compatible name */
+nm2sng_fl /* [fnc] Turn file name into legal string for shell commands */
+(const char * const nm_sng); /* I [sng] Name to sanitize */
+
 char * /* O [sng] String containing printable result */
 chr2sng_cdl /* [fnc] Translate C language character to printable, visible ASCII bytes */
 (const char chr_val, /* I [chr] Character to process */
diff --git a/src/nco/nco_srm.c b/src/nco/nco_srm.c
index f68adad..f5a7e18 100644
--- a/src/nco/nco_srm.c
+++ b/src/nco/nco_srm.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.c,v 1.2 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.c,v 1.3 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Streams */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 8590352..8ad97af 100644
--- a/src/nco/nco_srm.h
+++ b/src/nco/nco_srm.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.h,v 1.2 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_srm.h,v 1.3 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Streams */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_srm.h" *//* Streams */
diff --git a/src/nco/nco_typ.h b/src/nco/nco_typ.h
index 5dd1e3e..15225fe 100644
--- a/src/nco/nco_typ.h
+++ b/src/nco/nco_typ.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_typ.h,v 1.38 2014/05/27 02:04:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_typ.h,v 1.39 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Type definitions, opaque types */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_typ.h" *//* Type definitions, opaque types */
diff --git a/src/nco/nco_var_avg.c b/src/nco/nco_var_avg.c
index ead95a2..ac8563b 100644
--- a/src/nco/nco_var_avg.c
+++ b/src/nco/nco_var_avg.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.c,v 1.79 2014/02/13 03:21:49 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.c,v 1.80 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Average variables */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_avg.h" /* Average variables */
 
diff --git a/src/nco/nco_var_avg.h b/src/nco/nco_var_avg.h
index 4948e5c..64fb322 100644
--- a/src/nco/nco_var_avg.h
+++ b/src/nco/nco_var_avg.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.h,v 1.27 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_avg.h,v 1.28 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Average variables */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_var_avg.h" *//* Average variables */
diff --git a/src/nco/nco_var_lst.c b/src/nco/nco_var_lst.c
index 0562c6f..6d5181c 100644
--- a/src/nco/nco_var_lst.c
+++ b/src/nco/nco_var_lst.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.c,v 1.168 2014/03/27 18:25:16 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.c,v 1.169 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Variable list utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_lst.h" /* Variable list utilities */
 
diff --git a/src/nco/nco_var_lst.h b/src/nco/nco_var_lst.h
index c8d5257..57de992 100644
--- a/src/nco/nco_var_lst.h
+++ b/src/nco/nco_var_lst.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.h,v 1.75 2014/03/27 18:25:16 pvicente Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_lst.h,v 1.76 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Variable list utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_var_lst.h" *//* Variable list utilities */
diff --git a/src/nco/nco_var_rth.c b/src/nco/nco_var_rth.c
index a6b369e..0181168 100644
--- a/src/nco/nco_var_rth.c
+++ b/src/nco/nco_var_rth.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.c,v 1.69 2014/02/13 04:38:12 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.c,v 1.70 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Variable arithmetic */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_rth.h" /* Variable arithmetic */
 
diff --git a/src/nco/nco_var_rth.h b/src/nco/nco_var_rth.h
index eaae65d..320e396 100644
--- a/src/nco/nco_var_rth.h
+++ b/src/nco/nco_var_rth.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.h,v 1.38 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_rth.h,v 1.39 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Variable arithmetic */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_var_rth.h" *//* Variable arithmetic */
diff --git a/src/nco/nco_var_scv.c b/src/nco/nco_var_scv.c
index fc547b8..c143b99 100644
--- a/src/nco/nco_var_scv.c
+++ b/src/nco/nco_var_scv.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.c,v 1.39 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.c,v 1.40 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Arithmetic between variables and scalar values */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   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 */
 
diff --git a/src/nco/nco_var_scv.h b/src/nco/nco_var_scv.h
index 8c2439b..71ac7c5 100644
--- a/src/nco/nco_var_scv.h
+++ b/src/nco/nco_var_scv.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.h,v 1.28 2013/12/31 05:14:02 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_scv.h,v 1.29 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Arithmetic between variables and scalar values */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_var_scv.h" *//* Arithmetic between variables and scalar values */
diff --git a/src/nco/nco_var_utl.c b/src/nco/nco_var_utl.c
index d0980db..d09ad97 100644
--- a/src/nco/nco_var_utl.c
+++ b/src/nco/nco_var_utl.c
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.c,v 1.358 2014/03/04 22:44:16 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.c,v 1.359 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Variable utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 #include "nco_var_utl.h" /* Variable utilities */
 
diff --git a/src/nco/nco_var_utl.h b/src/nco/nco_var_utl.h
index 500de37..5b0f4f7 100644
--- a/src/nco/nco_var_utl.h
+++ b/src/nco/nco_var_utl.h
@@ -1,10 +1,11 @@
-/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.h,v 1.103 2014/02/14 05:22:17 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/nco_var_utl.h,v 1.104 2014/06/15 21:06:24 zender Exp $ */
 
 /* Purpose: Variable utilities */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+   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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* Usage:
    #include "nco_var_utl.h" *//* Variable utilities */
diff --git a/src/nco/ncpdq.c b/src/nco/ncpdq.c
index b5d68b3..2e384b9 100644
--- a/src/nco/ncpdq.c
+++ b/src/nco/ncpdq.c
@@ -1,15 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncpdq.c,v 1.395 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncpdq.c,v 1.401 2014/08/21 18:22:44 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
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -61,8 +59,26 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
-/* 3rd party vendors */
-#include <netcdf.h> /* netCDF definitions and C library */
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
+/* 3rd party vendors */	 
+#include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
 #define MAIN_PROGRAM_FILE
@@ -121,8 +137,8 @@ main(int argc,char **argv)
   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.395 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.395 $";
+  const char * const CVS_Id="$Id: ncpdq.c,v 1.401 2014/08/21 18:22:44 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.401 $";
   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 */
@@ -202,6 +218,13 @@ main(int argc,char **argv)
 
   nco_dmn_dne_t *flg_dne=NULL; /* [lst] Flag to check if input dimension -d "does not exist" */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -316,6 +339,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -409,6 +440,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -542,7 +574,7 @@ main(int argc,char **argv)
   /* Construct GTT, Group Traversal Table (groups,variables,dimensions, limits) */
   (void)nco_bld_trv_tbl(in_id,trv_pth,lmt_nbr,lmt_arg,aux_nbr,aux_arg,MSA_USR_RDR,FORTRAN_IDX_CNV,grp_lst_in,grp_lst_in_nbr,var_lst_in,xtr_nbr,EXTRACT_ALL_COORDINATES,GRP_VAR_UNN,False,EXCLUDE_INPUT_LIST,EXTRACT_ASSOCIATED_COORDINATES,nco_pck_plc_nil,&flg_dne,trv_tbl);
 
-  /* Check if all input -d dimensions were found */ 
+  /* Were all user-specified dimensions found? */ 
   (void)nco_chk_dmn(lmt_nbr,flg_dne);     
 
   /* Create reversed dimension list */
@@ -556,49 +588,41 @@ main(int argc,char **argv)
     /* Loop table */
     for(unsigned int idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
       trv_sct var_trv=trv_tbl->lst[idx_tbl];
-      /* Is variable to extract  */
+
+      /* Is variable to extract */
       if(var_trv.nco_typ == nco_obj_typ_var && var_trv.flg_xtr){
+
         /* Loop variable dimensions */
         for(int idx_dmn=0;idx_dmn<var_trv.nbr_dmn;idx_dmn++){
 
-          nco_bool flg_is_rvr=False;
-          optarg_lcl=NULL;
-
           /* Loop input -a names */
           for(idx_rdr=0;idx_rdr<dmn_rdr_nbr_in;idx_rdr++){
 
-            /* Does it have a '-' ? */    
+            /* Is dimension to be reversed? i.e., does it have a '-'? */
             if(dmn_rdr_lst_in[idx_rdr][0] == '-'){
-              optarg_lcl=(char *)strdup(dmn_rdr_lst_in[idx_rdr]+1);         
-              flg_is_rvr=True;
-            } /* !flg_is_rvr */  
-
-            /* Compare with dimension name */
-            if(optarg_lcl && !strcmp(optarg_lcl,var_trv.var_dmn[idx_dmn].dmn_nm)) dmn_rdr_nbr_trv++;
-
-            if(flg_is_rvr){
-              assert(optarg_lcl);
-              dmn_rvr_rdr[idx_dmn_rdr_nbr_trv]=True;
+              optarg_lcl=(char *)strdup(dmn_rdr_lst_in[idx_rdr]+1L);
+	      if(!strcmp(optarg_lcl,var_trv.var_dmn[idx_dmn].dmn_nm)) dmn_rdr_nbr_trv++;
               optarg_lcl=(char *)nco_free(optarg_lcl); 
-            }else{
+              dmn_rvr_rdr[idx_dmn_rdr_nbr_trv]=True;
+	    }else{
               dmn_rvr_rdr[idx_dmn_rdr_nbr_trv]=False;
-            } /* !flg_is_rvr */
+            } /* !flg_is_rvr */  
             idx_dmn_rdr_nbr_trv++;
 
           } /* Loop input -a names */
         } /* Loop variable dimensions */
-      } /* Is variable to extract  */
+      } /* Is variable to extract */
     } /* Loop table */
 
-    /* Strip all '-'  */
+    /* Strip all '-' */
     for(idx_rdr=0;idx_rdr<dmn_rdr_nbr_in;idx_rdr++){
       if(dmn_rdr_lst_in[idx_rdr][0] == '-'){
         /* Copy string to new memory one past negative sign to avoid losing byte */
         optarg_lcl=dmn_rdr_lst_in[idx_rdr];
-        dmn_rdr_lst_in[idx_rdr]=(char *)strdup(optarg_lcl+1);
+        dmn_rdr_lst_in[idx_rdr]=(char *)strdup(optarg_lcl+1L);
         optarg_lcl=(char *)nco_free(optarg_lcl);
       } /* endif */
-    } /* Strip all '-'  */
+    } /* Strip all '-' */
   } /* Create reversed dimension list */
 
   /* Get number of variables, dimensions, and global attributes in file, file format */
@@ -781,7 +805,7 @@ main(int argc,char **argv)
       /* Edit group name for output */
       if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
 
-      /* Obtain output group ID using full group name */
+      /* Obtain output group ID */
       (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
 
       /* Memory management after current extracted group */
@@ -840,7 +864,7 @@ main(int argc,char **argv)
         /* Edit group name for output */
         if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
 
-        /* Obtain output group ID using full group name */
+        /* Obtain output group ID */
         (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
 
         /* Memory management after current extracted group */
@@ -949,11 +973,15 @@ main(int argc,char **argv)
     if(gpe) gpe=(gpe_sct *)nco_gpe_free(gpe);
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncra.c b/src/nco/ncra.c
index 074c6d1..2ef3aa9 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.538 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncra.c,v 1.545 2014/07/15 18:48:55 zender Exp $ */
 
 /* This single source file compiles into three separate executables:
    ncra -- netCDF record averager
@@ -10,17 +10,15 @@
    to a single file. */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-   
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
    of the GPL, but in addition obeying the extra stipulations of the 
    HDF, netCDF, OPeNDAP, and UDUnits licenses.
-   
+
    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.  
@@ -76,8 +74,8 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
-/* Internationalization i18n, Linux Journal 200211 p. 57--59 */
 #ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
 # include <libintl.h> /* Internationalization i18n */
 # include <locale.h> /* Locale setlocale() */
 # define _(sng) gettext (sng)
@@ -89,8 +87,13 @@
 # define gettext(foo) foo
 #endif /* _LIBINTL_H */
 
-/* 3rd party vendors */
-#include <netcdf.h> /* netCDF definitions and C library */
+/* 3rd party vendors */	 
+#include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* Personal headers */
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
@@ -137,8 +140,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: ncra.c,v 1.538 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.538 $";
+  const char * const CVS_Id="$Id: ncra.c,v 1.545 2014/07/15 18:48:55 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.545 $";
   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 */
@@ -267,6 +270,13 @@ main(int argc,char **argv)
 
   lmt_sct **lmt_rec=NULL; /* [lst] (ncra) Record dimensions */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -380,7 +390,7 @@ main(int argc,char **argv)
   setlocale(LC_ALL,""); /* LC_ALL sets all localization tokens to same value */
   bindtextdomain("nco","/home/zender/share/locale"); /* ${LOCALEDIR} is e.g., /usr/share/locale */
   /* MO files should be in ${LOCALEDIR}/es/LC_MESSAGES */
-  textdomain("nco"); /* PACKAGE is name of program */
+  textdomain("nco"); /* PACKAGE is name of program or library */
 #endif /* not _LIBINTL_H */
 
   /* Start timer and save command line */ 
@@ -392,6 +402,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -499,6 +517,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -635,7 +654,7 @@ main(int argc,char **argv)
   /* Construct GTT, Group Traversal Table (groups,variables,dimensions, limits) */
   (void)nco_bld_trv_tbl(in_id,trv_pth,lmt_nbr,lmt_arg,aux_nbr,aux_arg,MSA_USR_RDR,FORTRAN_IDX_CNV,grp_lst_in,grp_lst_in_nbr,var_lst_in,var_lst_in_nbr,EXTRACT_ALL_COORDINATES,GRP_VAR_UNN,False,EXCLUDE_INPUT_LIST,EXTRACT_ASSOCIATED_COORDINATES,nco_pck_plc_nil,&flg_dne,trv_tbl);
 
-  /* Check if all input -d dimensions were found */ 
+  /* Were all user-specified dimensions found? */ 
   (void)nco_chk_dmn(lmt_nbr,flg_dne);     
 
   /* Store ncge ensemble suffix in table */
@@ -812,7 +831,7 @@ main(int argc,char **argv)
       for(idx=0;idx<nbr_var_prc;idx++){
         /* Obtain variable GTT object using full variable name */
         trv_sct *trv=trv_tbl_var_nm_fll(var_prc[idx]->nm_fll,trv_tbl);
-        /* Obtain group ID using full group name */
+        /* Obtain group ID */
         (void)nco_inq_grp_full_ncid(in_id,trv->grp_nm_fll,&grp_id);
         (void)nco_var_mtd_refresh(grp_id,var_prc[idx]);
       } /* end loop over variables */
@@ -823,7 +842,7 @@ main(int argc,char **argv)
       /* Loop over number of different record variables in file */
       for(idx_rec=0;idx_rec<nbr_rec;idx_rec++){
 
-        /* Obtain group ID using full group name */
+        /* Obtain group ID */
         (void)nco_inq_grp_full_ncid(in_id,lmt_rec[idx_rec]->grp_nm_fll,&grp_id);
 
         /* Fill record array */
@@ -854,7 +873,7 @@ main(int argc,char **argv)
         /* This file may be superfluous though valid data will be found in upcoming files */
         if(nco_dbg_lvl >= nco_dbg_std)
           if((lmt_rec[idx_rec]->srt > lmt_rec[idx_rec]->end) && (lmt_rec[idx_rec]->rec_rmn_prv_ssc == 0L))
-            (void)fprintf(fp_stdout,gettext("%s: INFO %s (input file %d) is superfluous\n"),nco_prg_nm_get(),fl_in,fl_idx);
+            (void)fprintf(fp_stdout,"%s: INFO %s (input file %d) is superfluous\n",nco_prg_nm_get(),fl_in,fl_idx);
 
         rec_dmn_sz=lmt_rec[idx_rec]->rec_dmn_sz;
         rec_rmn_prv_ssc=lmt_rec[idx_rec]->rec_rmn_prv_ssc; /* Local copy may be decremented later */
@@ -890,7 +909,7 @@ main(int argc,char **argv)
           if(rec_rmn_prv_ssc == 1L) REC_LST_GRP=True; else REC_LST_GRP=False;
 
           /* Process all variables in current record */
-          if(nco_dbg_lvl >= nco_dbg_scl) (void)fprintf(fp_stdout,gettext("%s: INFO Record %ld of %s contributes to output record %ld\n"),nco_prg_nm_get(),idx_rec_crr_in,fl_in,idx_rec_out[idx_rec]);
+          if(nco_dbg_lvl >= nco_dbg_scl) (void)fprintf(fp_stdout,"%s: INFO Record %ld of %s contributes to output record %ld\n",nco_prg_nm_get(),idx_rec_crr_in,fl_in,idx_rec_out[idx_rec]);
 
 #ifdef _OPENMP
 #pragma omp parallel for default(none) private(idx,in_id) shared(CNV_ARM,base_time_crr,base_time_srt,nco_dbg_lvl,fl_in,fl_out,idx_rec_crr_in,idx_rec_out,rec_usd_cml,in_id_arr,REC_FRS_GRP,REC_LST_DSR,md5,nbr_var_prc,nco_op_typ,FLG_BFR_NRM,FLG_MRO,out_id,nco_prg_id,rcd,var_prc,var_prc_out,nbr_dmn_fl,trv_tbl,var_trv,grp_id,gpe,grp_out_fll,grp_out_id,var_out_id,idx_rec,flg_skp1,flg_skp2,lmt_rec,nbr_rec)
@@ -907,12 +926,12 @@ main(int argc,char **argv)
 
             /* Obtain variable GTT object using full variable name */
             var_trv=trv_tbl_var_nm_fll(var_prc[idx]->nm_fll,trv_tbl);
-            /* Obtain group ID using full group name */
+            /* Obtain group ID */
             (void)nco_inq_grp_full_ncid(in_id,var_trv->grp_nm_fll,&grp_id);
             /* Edit group name for output */
             grp_out_fll=NULL;
             if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=var_trv->grp_nm_fll;
-            /* Obtain output group ID using full group name */
+            /* Obtain output group ID */
             (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
             /* Get variable ID */
             (void)nco_inq_varid(grp_out_id,var_trv->nm,&var_out_id);
@@ -1015,7 +1034,7 @@ main(int argc,char **argv)
               var_trv=trv_tbl_var_nm_fll(var_prc_out[idx]->nm_fll,trv_tbl);
               /* Edit group name for output */
               if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
-              /* Obtain output group ID using full group name */
+              /* Obtain output group ID */
               (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
               /* Memory management after current extracted group */
               if(grp_out_fll) grp_out_fll=(char *)nco_free(grp_out_fll);
@@ -1071,11 +1090,11 @@ main(int argc,char **argv)
             rec_nbr_trn=max_int(rec_nbr_spn_max-rec_nbr_spn_act,0L);
             /* Records requested is maximum minus any truncated in last group */
             rec_nbr_rqs=rec_nbr_rqs_max-rec_nbr_trn;
-            if(rec_nbr_rqs != rec_usd_cml[idx_rec]) (void)fprintf(fp_stdout,gettext("%s: WARNING User requested %li records but only %li were found and used\n"),nco_prg_nm_get(),rec_nbr_rqs,rec_usd_cml[idx_rec]);
+            if(rec_nbr_rqs != rec_usd_cml[idx_rec]) (void)fprintf(fp_stdout,"%s: WARNING User requested %li records but only %li were found and used\n",nco_prg_nm_get(),rec_nbr_rqs,rec_usd_cml[idx_rec]);
           } /* end if */
           /* ... and die if no records were read ... */
           if(rec_usd_cml[idx_rec] <= 0){
-            (void)fprintf(fp_stdout,gettext("%s: ERROR No records lay within specified hyperslab\n"),nco_prg_nm_get());
+            (void)fprintf(fp_stdout,"%s: ERROR No records lay within specified hyperslab\n",nco_prg_nm_get());
             nco_exit(EXIT_FAILURE);
           } /* end if */
         } /* end if */
@@ -1096,11 +1115,11 @@ main(int argc,char **argv)
 
         /* Obtain variable GTT object using full variable name */
         var_trv=trv_tbl_var_nm_fll(var_prc[idx]->nm_fll,trv_tbl);
-        /* Obtain group ID using full group name */
+        /* Obtain group ID */
         (void)nco_inq_grp_full_ncid(in_id,var_trv->grp_nm_fll,&grp_id);
         /* Edit group name for output */
         if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
-        /* Obtain output group ID using full group name */
+        /* Obtain output group ID */
         (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
         /* Memory management after current extracted group */
         if(grp_out_fll) grp_out_fll=(char *)nco_free(grp_out_fll);
@@ -1135,7 +1154,7 @@ main(int argc,char **argv)
       /* Construct GTT using current file ID */
       (void)nco_bld_trv_tbl(in_id,trv_pth,lmt_nbr,lmt_arg,aux_nbr,aux_arg,MSA_USR_RDR,FORTRAN_IDX_CNV,grp_lst_in,grp_lst_in_nbr,var_lst_in,var_lst_in_nbr,EXTRACT_ALL_COORDINATES,GRP_VAR_UNN,False,EXCLUDE_INPUT_LIST,EXTRACT_ASSOCIATED_COORDINATES,nco_pck_plc_nil,&flg_dne,trv_tbl1);
 
-      /* Check if all input -d dimensions were found */ 
+      /* Were all user-specified dimensions found? */ 
       (void)nco_chk_dmn(lmt_nbr,flg_dne);  
 
       /* Loop over ensembles in current file */
@@ -1168,7 +1187,7 @@ main(int argc,char **argv)
             var_prc[idx_prc]->nm_fll=nco_bld_nm_fll(grp_nm_fll,var_prc[idx_prc]->nm);
             if(nco_dbg_lvl > nco_dbg_std) (void)fprintf(fp_stdout,"%s:\t variable <%s>\n",nco_prg_nm_get(),var_prc[idx_prc]->nm_fll); 
 
-            /* Obtain group ID using full group name */
+            /* Obtain group ID */
             (void)nco_inq_grp_full_ncid(in_id,grp_nm_fll,&grp_id);
             (void)nco_var_mtd_refresh(grp_id,var_prc[idx_prc]);
 
@@ -1285,7 +1304,7 @@ main(int argc,char **argv)
         if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
       } /* end else */
 
-      /* Obtain output group ID using full group name */
+      /* Obtain output group ID */
       (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
       /* Get output variable ID */
       (void)nco_inq_varid(grp_out_id,var_prc_out[idx]->nm,&var_out_id);   
@@ -1363,10 +1382,15 @@ main(int argc,char **argv)
 
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncrename.c b/src/nco/ncrename.c
index d3588f9..a133db8 100644
--- a/src/nco/ncrename.c
+++ b/src/nco/ncrename.c
@@ -1,15 +1,13 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncrename.c,v 1.193 2014/05/21 20:39:29 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncrename.c,v 1.198 2014/07/11 20:55:45 zender Exp $ */
 
 /* ncrename -- netCDF renaming operator */
 
 /* Purpose: Rename dimensions, variables, and attributes of a netCDF file */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-   
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -58,8 +56,26 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
 /* 3rd party vendors */	 
 #include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
 #define MAIN_PROGRAM_FILE
@@ -100,8 +116,8 @@ main(int argc,char **argv)
 
   char var_nm[NC_MAX_NAME+1];
 
-  const char * const CVS_Id="$Id: ncrename.c,v 1.193 2014/05/21 20:39:29 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.193 $";
+  const char * const CVS_Id="$Id: ncrename.c,v 1.198 2014/07/11 20:55:45 zender Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.198 $";
   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 in file is optional */
@@ -137,6 +153,13 @@ main(int argc,char **argv)
 
   trv_tbl_sct *trv_tbl; /* [lst] Traversal table */
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -192,6 +215,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -233,6 +264,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy argument for later processing */
       dmn_rnm_arg[nbr_dmn_rnm]=(char *)strdup(optarg);
@@ -446,15 +478,13 @@ main(int argc,char **argv)
       trv_obj=nco_obj_usr_sng(var_nm,trv_tbl,&is_opt);  
 
       /* If object is group, set NC_GLOBAL */
-      if(trv_obj && trv_obj->nco_typ == nco_obj_typ_grp){ 
-        var_id=NC_GLOBAL;
-      }
+      if(trv_obj && trv_obj->nco_typ == nco_obj_typ_grp) var_id=NC_GLOBAL;
 
       /* Object found that matches "var_nm" */
-      if (trv_obj || IS_GLB_GRP_ATT){
+      if(trv_obj || IS_GLB_GRP_ATT){
 
         /* If object found get group ID, else groud ID is root (cases of "global") */
-        if (trv_obj) (void)nco_inq_grp_full_ncid(nc_id,trv_obj->grp_nm_fll,&grp_id); else grp_id=nc_id;
+        if(trv_obj) (void)nco_inq_grp_full_ncid(nc_id,trv_obj->grp_nm_fll,&grp_id); else grp_id=nc_id;
 
         /* Get var_id of variable */
         if(IS_GLB_GRP_ATT){
@@ -473,9 +503,7 @@ main(int argc,char **argv)
           }else{ /* Variable name does not contain opt_chr so variable presence is required */
 
             /* Get ID only if object is variable (not group). NB: use relative name found */
-            if(trv_obj->nco_typ == nco_obj_typ_var){ 
-              rcd=nco_inq_varid(grp_id,trv_obj->nm,&var_id);
-            } /* Get ID only if object is variable (not group) */
+            if(trv_obj->nco_typ == nco_obj_typ_var) rcd=nco_inq_varid(grp_id,trv_obj->nm,&var_id);
 
           } /* end if */
         } /* !IS_GLB_GRP_ATT */
@@ -506,29 +534,22 @@ main(int argc,char **argv)
 
       } /* Match variable by name */
 
+    }else{ /* ...or rename attribute for all variables and groups... */
 
-    }else{ /* ...or rename attribute for all variables... */
-
-      /* Loop table */
       for(unsigned int idx_tbl=0;idx_tbl<trv_tbl->nbr;idx_tbl++){
         (void)nco_inq_grp_full_ncid(nc_id,trv_tbl->lst[idx_tbl].grp_nm_fll,&grp_id);
 
-        /* We are in NC_GLOBAL zone if group  */
-        if (trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_grp){
-          var_id=NC_GLOBAL;
-        }else {
-          (void)nco_inq_varid(grp_id,trv_tbl->lst[idx_tbl].nm,&var_id);
-        }
+        if(trv_tbl->lst[idx_tbl].nco_typ == nco_obj_typ_grp) var_id=NC_GLOBAL; else (void)nco_inq_varid(grp_id,trv_tbl->lst[idx_tbl].nm,&var_id);
 
         if(att_rnm_lst[idx_att].old_nm[0] == opt_chr){
-          /* Rename attribute if variable contains attribute else do nothing */
+          /* Rename attribute if variable/group contains attribute else do nothing */
           rcd=nco_inq_attid_flg(grp_id,var_id,att_rnm_lst[idx_att].old_nm+1L,&att_rnm_lst[idx_att].id);
           if(rcd == NC_NOERR){
             (void)nco_rename_att(grp_id,var_id,att_rnm_lst[idx_att].old_nm+1L,att_rnm_lst[idx_att].new_nm);
             nbr_rnm++;
             /* Inform user which variable had attribute renamed */
             if(var_id > NC_GLOBAL){
-              if(nco_dbg_lvl >= nco_dbg_std) (void)fprintf(stdout,"%s: Renamed attribute \'%s\' to \'%s\' for variable \'%s\'\n",nco_prg_nm,att_rnm_lst[idx_att].old_nm+1L,att_rnm_lst[idx_att].new_nm,var_nm);
+              if(nco_dbg_lvl >= nco_dbg_std) (void)fprintf(stdout,"%s: Renamed attribute \'%s\' to \'%s\' for variable \'%s\'\n",nco_prg_nm,att_rnm_lst[idx_att].old_nm+1L,att_rnm_lst[idx_att].new_nm,trv_tbl->lst[idx_tbl].nm);
             }else{
               if(nco_dbg_lvl >= nco_dbg_std) (void)fprintf(stdout,"%s: Renamed global or group attribute \'%s\' to \'%s\'\n",nco_prg_nm,att_rnm_lst[idx_att].old_nm+1L,att_rnm_lst[idx_att].new_nm);
             } /* end else */
@@ -575,7 +596,7 @@ main(int argc,char **argv)
     } /* nbr_rnm */
   } /* end loop over attributes to rename */
 
-  /* Catenate timestamped command line to "history" global attribute */
+  /* Catenate time-stamped command line to "history" global attribute */
   if(HISTORY_APPEND) (void)nco_hst_att_cat(nc_id,cmd_ln);
 
 #ifdef _OPENMP
@@ -623,11 +644,15 @@ main(int argc,char **argv)
     (void)trv_tbl_free(trv_tbl);
   } /* !flg_cln */
 
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
-
   if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
+
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco/ncwa.c b/src/nco/ncwa.c
index 2aeadee..eb4cfdc 100644
--- a/src/nco/ncwa.c
+++ b/src/nco/ncwa.c
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/nco/nco/src/nco/ncwa.c,v 1.420 2014/05/27 03:26:18 zender Exp $ */
+/* $Header: /cvsroot/nco/nco/src/nco/ncwa.c,v 1.425 2014/08/26 17:13:41 pvicente Exp $ */
 
 /* ncwa -- netCDF weighted averager */
 
@@ -6,11 +6,9 @@
    in a single input netCDF file and output them to a single file. */
 
 /* Copyright (C) 1995--2014 Charlie Zender
-
-   License: GNU General Public License (GPL) Version 3
-   The full license text is at http://www.gnu.org/copyleft/gpl.html 
-   and in the file nco/doc/LICENSE in the NCO source distribution.
-
+   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 
+   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
    libraries and to distribute the resulting executables under the terms 
@@ -19,7 +17,7 @@
 
    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.
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
    See the GNU General Public License for more details.
    
    The original author of this software, Charlie Zender, seeks to improve
@@ -60,8 +58,26 @@
 # endif /* !HAVE_GETOPT_H */ 
 #endif /* HAVE_GETOPT_LONG */
 
-/* 3rd party vendors */
-#include <netcdf.h> /* netCDF definitions and C library */
+#ifdef I18N
+# include <langinfo.h> /* nl_langinfo() */
+# include <libintl.h> /* Internationalization i18n */
+# include <locale.h> /* Locale setlocale() */
+# define _(sng) gettext (sng)
+# define gettext_noop(sng) (sng)
+# define N_(sng) gettext_noop(sng)
+#endif /* I18N */
+/* Supply stub gettext() function in case i18n failed */
+#ifndef _LIBINTL_H
+# define gettext(foo) foo
+#endif /* _LIBINTL_H */
+
+/* 3rd party vendors */	 
+#include <netcdf.h> /* netCDF definitions and C library */	 
+#ifdef ENABLE_MPI
+# include <mpi.h> /* MPI definitions */
+# include <netcdf_par.h> /* Parallel netCDF definitions */
+# include "nco_mpi.h" /* MPI utilities */
+#endif /* !ENABLE_MPI */
 
 /* #define MAIN_PROGRAM_FILE MUST precede #include libnco.h */
 #define MAIN_PROGRAM_FILE
@@ -135,8 +151,8 @@ main(int argc,char **argv)
   char *wgt_nm=NULL;
   char trv_pth[]="/"; /* [sng] Root path of traversal tree */
 
-  const char * const CVS_Id="$Id: ncwa.c,v 1.420 2014/05/27 03:26:18 zender Exp $"; 
-  const char * const CVS_Revision="$Revision: 1.420 $";
+  const char * const CVS_Id="$Id: ncwa.c,v 1.425 2014/08/26 17:13:41 pvicente Exp $"; 
+  const char * const CVS_Revision="$Revision: 1.425 $";
   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 */
@@ -222,6 +238,13 @@ main(int argc,char **argv)
   prs_sct prs_arg;  /* I/O [sct] Global information required in ncwa parser */
 #endif
 
+#ifdef ENABLE_MPI
+  /* Declare all MPI-specific variables here */
+  MPI_Comm mpi_cmm=MPI_COMM_WORLD; /* [prc] Communicator */
+  int prc_rnk; /* [idx] Process rank */
+  int prc_nbr=0; /* [nbr] Number of MPI processes */
+#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 */
@@ -349,6 +372,14 @@ main(int argc,char **argv)
   /* Get program name and set program enum (e.g., nco_prg_id=ncra) */
   nco_prg_nm=nco_prg_prs(argv[0],&nco_prg_id);
 
+#ifdef ENABLE_MPI
+  /* MPI Initialization */
+  if(False) (void)fprintf(stdout,gettext("%s: WARNING Compiled with MPI\n"),nco_prg_nm);
+  MPI_Init(&argc,&argv);
+  MPI_Comm_size(mpi_cmm,&prc_nbr);
+  MPI_Comm_rank(mpi_cmm,&prc_rnk);
+#endif /* !ENABLE_MPI */
+  
   /* Parse command line arguments */
   while(1){
     /* getopt_long_only() allows one dash to prefix long options */
@@ -457,6 +488,7 @@ main(int argc,char **argv)
     case 'D': /* Debugging level. Default is 0. */
       nco_dbg_lvl=(unsigned short int)strtoul(optarg,&sng_cnv_rcd,NCO_SNG_CNV_BASE10);
       if(*sng_cnv_rcd) nco_sng_cnv_err(optarg,"strtoul",sng_cnv_rcd);
+      nc_set_log_level(nco_dbg_lvl);
       break;
     case 'd': /* Copy limit argument for later processing */
       lmt_arg[lmt_nbr]=(char *)strdup(optarg);
@@ -684,7 +716,7 @@ main(int argc,char **argv)
   (void)nco_var_prc_fix_trv(nbr_var_prc,var_prc,nbr_var_fix,var_fix,trv_tbl);
 
   /* We now have final list of variables to extract. Phew. */
-  if(nco_dbg_lvl >= nco_dbg_var){
+  if(nco_dbg_lvl >= nco_dbg_var && nco_dbg_lvl != nco_dbg_dev){
     for(idx=0;idx<xtr_nbr;idx++) (void)fprintf(stderr,"var[%d]->nm = %s, ->id=[%d]\n",idx,var[idx]->nm,var[idx]->id);
     for(idx=0;idx<nbr_var_fix;idx++) (void)fprintf(stderr,"var_fix[%d]->nm = %s, ->id=[%d]\n",idx,var_fix[idx]->nm,var_fix[idx]->id);
     for(idx=0;idx<nbr_var_prc;idx++) (void)fprintf(stderr,"var_prc[%d]->nm = %s, ->id=[%d]\n",idx,var_prc[idx]->nm,var_prc[idx]->id);
@@ -723,7 +755,7 @@ main(int argc,char **argv)
       /* Edit group name for output */
       if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
 
-      /* Obtain output group ID using full group name */
+      /* Obtain output group ID */
       (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
 
       /* Memory management after current extracted group */
@@ -822,7 +854,7 @@ main(int argc,char **argv)
       /* Obtain variable GTT object using full variable name */
       var_trv=trv_tbl_var_nm_fll(var_prc[idx]->nm_fll,trv_tbl);
 
-      /* Obtain group ID using full group name */
+      /* Obtain group ID */
       (void)nco_inq_grp_full_ncid(in_id,var_trv->grp_nm_fll,&grp_id);
 
       if(nco_dbg_lvl >= nco_dbg_var && nco_dbg_lvl < nco_dbg_nbr) rcd+=nco_var_prc_crr_prn(idx,var_prc[idx]->nm);
@@ -1051,7 +1083,7 @@ main(int argc,char **argv)
       /* Edit group name for output */
       if(gpe) grp_out_fll=nco_gpe_evl(gpe,var_trv->grp_nm_fll); else grp_out_fll=(char *)strdup(var_trv->grp_nm_fll);
 
-      /* Obtain output group ID using full group name */
+      /* Obtain output group ID */
       (void)nco_inq_grp_full_ncid(out_id,grp_out_fll,&grp_out_id);
 
       /* Memory management after current extracted group */
@@ -1163,15 +1195,19 @@ main(int argc,char **argv)
     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);
+    /* Free traversal table */
+    trv_tbl_free(trv_tbl); 
   } /* !flg_cln */
 
   /* End timer */ 
   ddra_info.tmr_flg=nco_tmr_end; /* [enm] Timer flag */
   rcd+=nco_ddra((char *)NULL,(char *)NULL,&ddra_info);
+  if(rcd != NC_NOERR) nco_err_exit(rcd,"main");
 
-  /* Free traversal table */
-  trv_tbl_free(trv_tbl); 
-
+#ifdef ENABLE_MPI
+  MPI_Finalize();
+#endif /* !ENABLE_MPI */
+  
   nco_exit_gracefully();
   return EXIT_SUCCESS;
 } /* end main() */
diff --git a/src/nco_c++/Makefile.old b/src/nco_c++/Makefile.old
index 95d5fad..b2f9147 100644
--- a/src/nco_c++/Makefile.old
+++ b/src/nco_c++/Makefile.old
@@ -1,4 +1,4 @@
-# $Header: /cvsroot/nco/nco/src/nco_c++/Makefile.old,v 1.106 2014/05/04 05:39:01 zender Exp $ -*-makefile-*-
+# $Header: /cvsroot/nco/nco/src/nco_c++/Makefile.old,v 1.110 2014/07/07 06:04:23 zender Exp $ -*-makefile-*-
 
 # Purpose: Makefile for libnco_c++ module nco_c++
 # Requires GNU Make---AT&T Make chokes on GNU syntax
@@ -93,12 +93,9 @@ endif
 ifndef ${CCACHE}
  CCACHE := N
 endif # CCACHE
-ifndef DAP_NETCDF
- DAP_NETCDF := Y
-endif # DAP_NETCDF
-ifndef DAP_OPENDAP
- DAP_OPENDAP := N
-endif # DAP_OPENDAP
+ifndef DAP
+ DAP := Y
+endif # DAP
 ifndef ${DBG}
 # Debugging token N=No (default) Y=Yes
  DBG := N
@@ -237,171 +234,25 @@ endif # endif PRC
 # 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
 
-# Default NCO build. DAP, NETCDF4, and PNETCDF clauses may overwrite this
-NC_LDFLAGS := -L${NETCDF_LIB}
-NC_LIBS := -lnetcdf 
-
-ifeq (${DAP_NETCDF},Y)
-# Build NCO as DAP-enabled clients with netCDF-provided DAP
-ifndef DAP_NETCDF_ROOT
-# Directory containing libcurl.a
- DAP_NETCDF_ROOT := /usr
-endif # DAP_NETCDF_ROOT
- NC_LDFLAGS := -L${DAP_NETCDF_ROOT}/lib
-# netCDF 4.0.1+:
- NC_LIBS += -lcurl
-endif # end DAP_NETCDF
-
-ifeq (${DAP_OPENDAP},Y)
-# Build NCO as DAP-enabled clients with OPeNDAP
-# fxm: OPeNDAP bloats executables, should automagically enable stripping?
-# http://www.opendap.org/user/guide-html/guide_28.html
-ifndef DAP_OPENDAP_ROOT
-# Directory containing libdap.a, libnc-dap.a
- DAP_OPENDAP_ROOT := /usr/local
-endif # DAP_OPENDAP_ROOT
- NC_LDFLAGS := -L${DAP_OPENDAP_ROOT}/lib
-# NB: nc-dods, dap++ prior to version 3.5.X must be linked twice!
-# Required libraries for
-# DODS 3.3-:
-# NC_LIBS := -lnc-dods -ldap++ -lnc-dods -ldap++ -lwww -lz -lrx
-# DODS 3.4.X:
-# NC_LIBS := -lnc-dods -ldap++ -lnc-dods -ldap++ -lxml2 -lcurl -lpthread -ldl -lz
-# OPeNDAP 3.5.0-3.5.1:
-# NC_LIBS := -lnc-dap -ldap++ -lxml2 -lcurl
-# OPeNDAP 3.5+:
- NC_LIBS := -lnc-dap -ldap -lxml2 -lcurl
-# In addition, AIX OPeNDAP requires these libraries...
-ifneq (${null},$(findstring AIX,${PVM_ARCH}))
- NC_LIBS += -lcrypto -liconv -lssl -lz
-endif # end AIX
-# Get netCDF from OPeNDAP version
- NETCDF_INC=${DAP_OPENDAP_ROOT}/include/libnc-dap
- NETCDF_LIB=${DAP_OPENDAP_ROOT}/lib
-endif # end DAP_OPENDAP
-
-# Internationalize NCO with i18n features
-ifeq (${I18N},Y)
- MY_SHR_DIR := ${HOME}/share
- MY_ES_DIR := ${MY_SHR_DIR}/locale/es/LC_MESSAGES
- MY_FR_DIR := ${MY_SHR_DIR}/locale/fr/LC_MESSAGES
-endif
-
-ifeq (${NETCDF4},Y)
- CPPFLAGS += -DENABLE_NETCDF4 -DHAVE_NETCDF4_H
-endif
-# endif NETCDF4
-
-# Message Passing Interface (MPI)
-ifeq (${MPI_FAKE},Y)
-# MPI_FAKE instructs make to compile mpnc*.c operators without defining ENABLE_MPI
-# Resulting executables use UP or SMP code not MPI code
-# This tests compile, link, execution of MPI mpnc*.c code without using any MPI calls
- MPI := Y
-endif # !MPI_FAKE
-ifdef MPI_PRC
-# MPI_PRC tells test scripts how many MPI processes to spawn
-# Pass this MPI argument to nco_bm.pl
- MPI_PRC_SNG := "--mpi_prc=${MPI_PRC}"
-# MPI_PRC implies MPI
- MPI := Y
-else # !MPI_PRC
- MPI_PRC_SNG :=
-endif # !MPI_PRC
-
-ifeq (${NETCDF4},Y)
-# Enable netCDF4 functionality
-ifndef HDF5_ROOT
- HDF5_ROOT := ${NETCDF4_ROOT}
-endif
-ifndef HDF5_INC
- HDF5_INC := ${HDF5_ROOT}/include # Directory containing hdf5.h
-endif
-ifndef HDF5_LIB
- HDF5_LIB := ${HDF5_ROOT}/lib # Directory containing libhdf5.a
-endif
-# fxm: Temporary kludge: Machines with MPI_ROOT set are assumed to have parallel filesystems for NCO builds
-ifdef MPI_ROOT
- HDF5_INC += -I${MPI_ROOT}/include # Directory containing mpi.h
- HDF5_LIB += ${MPI_ROOT}/lib64 # Directory containing libmpi.a
-endif # !MPI_ROOT
- NETCDF_INC := ${NETCDF4_ROOT}/include
- NETCDF_LIB := ${NETCDF4_ROOT}/lib
- NC_LDFLAGS := -L${NETCDF_LIB} $(addprefix -L,${HDF5_LIB})
-# NC_LIBS := -lnetcdf -lhdf5_hl -lhdf5 -lz ${NC_LIBS}
- NC_LIBS := $(shell nc-config --libs) ${NC_LIBS}
-ifdef MPI_ROOT
- NC_LIBS += -lmpi
-endif # !MPI_ROOT
-ifdef CURL_LIB
- NC_LDFLAGS += -L${CURL_LIB}
-endif # end 
-ifeq (${SZ},Y)
-ifndef SZ_LIB
- SZ_LIB := /usr/lib # Directory containing libsz.a
-endif
- NC_LDFLAGS += -L${SZ_LIB}
- NC_LIBS += -lsz
-endif # !SZ
-ifneq (${HDF5_INC},${NETCDF_INC})
- NETCDF_INC += -I${HDF5_INC}
-endif # end 
-endif # endif NETCDF4
+# 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)
+NCO_LDFLAGS := -L${MY_LIB_DIR} -lnco -lnco++
 
 ifeq (${PNETCDF},Y)
 # Enable pnetCDF functionality
- NC_LDFLAGS := -L${NETCDF_LIB}
- NC_LIBS += -lpnetcdf
+ NC_CFLAGS := $(shell /usr/local/parallel/bin/nc-config --cflags)
+ NC_LDFLAGS := $(shell /usr/local/parallel/bin/nc-config --libs)
+ MPI_CFLAGS := -I/usr/include/openmpi-x86_64
+ MPI_LDFLAGS := -L/usr/lib64/openmpi/lib -lmpi
 endif # endif PNETCDF
 
-ifeq (${UDUNITS2},Y)
- UDUNITS := Y
-endif # end if UDUNITS
-ifeq (${UDUNITS},Y)
-# Build UDUnits-enabled NCO 
-# Place UDUNITS block after DAP blocks for both to work together
-ifndef UDUNITS_INC
- UDUNITS_INC := /usr/local/include # Directory containing udunits.h
-endif
-ifndef UDUNITS_LIB
- UDUNITS_LIB := /usr/local/lib # Directory containing libudunits.a
-endif
-ifneq (${UDUNITS_INC},${NETCDF_INC})
- NETCDF_INC += -I${UDUNITS_INC}
-endif # end 
-ifneq (${UDUNITS_LIB},${NETCDF_LIB})
- NC_LDFLAGS += -L${UDUNITS_LIB}
-endif # end if
-ifeq (${UDUNITS2},Y)
-# 20130607: -lexpat needed on .deb systems, not on RPM systems
-UDUNITS_RPM_DRC := /usr/include/udunits2
-ifneq (${UDUNITS_INC},/usr/local/include)
-# UDUNITS_RPM_TST := $(shell ls ${UDUNITS_RPM_DRC}/udunits2.h)
- UDUNITS_RPM_TST := ${UDUNITS_RPM_DRC}/udunits2.h
-else
- UDUNITS_RPM_TST := /usr/include/udunits2.h
-endif # end if
-ifeq (${UDUNITS_RPM_TST},${UDUNITS_RPM_DRC}/udunits2.h)
- NETCDF_INC += -I${UDUNITS_RPM_DRC}
-endif # end if
-ifneq (${UDUNITS_RPM_TST},${UDUNITS_RPM_DRC}/udunits2.h)
- NC_LIBS += -ludunits2 -lexpat
-else # end if UDUNITS2 Fedora
- NC_LIBS += -ludunits2
-endif # end if UDUNITS2 Fedora
-else
- NC_LIBS += -ludunits
-endif # end if UDUNITS2
-endif # end if UDUNITS
+ifdef LIB_NCAR
+ NC_LDFLAGS := ${LIB_NCAR} ${NC_LDFLAGS}
+endif
 
-# TMP_* and NCO_* are required to play nicely with DAP flags
-NCO_LDFLAGS := -L${MY_LIB_DIR}
-NCO_LIBS := -lnco_c++
-TMP_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS}
-TMP_LIBS := ${NCO_LIBS} ${NC_LIBS}
-# sort removes duplicates but unfortunately changes precedence too
-# fxm: use uniq instead
-#TMP_LDFLAGS := $(sort ${TMP_LDFLAGS})
+OTHER_CFLAGS := ${NC_CFLAGS} ${MPI_CFLAGS} ${GSL_INC} ${UDUNITS_INC}
+OTHER_LDFLAGS := ${NCO_LDFLAGS} ${NC_LDFLAGS} ${MPI_LDFLAGS} ${GSL_LIB} ${UDUNITS_LIB}
 
 # NB: Do NOT add comment lines, e.g., # This is a comma, to character definitions
 null :=
@@ -528,12 +379,9 @@ ifneq (${null},$(findstring AIX,${PVM_ARCH}))
 # Visual age compiler headers must occur before g++ headers
  CPP_TKN_OS += -I/usr/vacpp/include
 endif # AIX
-ifeq (${DAP_NETCDF},Y)
- CPP_TKN_OS += -DENABLE_DAP
-endif # !DAP_NETCDF
-ifeq (${DAP_OPENDAP},Y)
+ifeq (${DAP},Y)
  CPP_TKN_OS += -DENABLE_DAP
-endif # !DAP_OPENDAP
+endif # !DAP
 ifeq (${MPI},Y)
 ifneq (${MPI_FAKE},Y)
  CPP_TKN_OS += -DENABLE_MPI
@@ -566,10 +414,10 @@ ifneq (${null},$(findstring xl,${CC}))
  CPP_TKN_OS += -I/usr/vacpp/include
 endif # xlC compilers
 # Add /usr/local/include for libintl.h explicitly until netCDF is moved there
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} -I/usr/local/include
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} -I/usr/local/include
 FC := xlf95_r
 LD := ld
-LDFLAGS += -bh:5 ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += -bh:5 ${OTHER_LDFLAGS}
 LEX := flex
 LINT := lint
 YACC := bison
@@ -683,13 +531,13 @@ CXX := cxx -std strict_ansi
 CC := cc
 CFLAGS := ${OMP_FLG}
 # OSF1 is for CCM compatibility
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DOSF1 ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DOSF1 ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 FFLAGS := -c ${OMP_FLG} -automatic -fpe3
 FIXEDFLAGS := -extend_source
 FREEFLAGS := -DHIDE_SHR_MSG -free
 LD := ld
-LDFLAGS += ${OMP_FLG} ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OMP_FLG} ${OTHER_LDFLAGS}
 LEX := flex
 LINT := lint
 YACC := bison
@@ -720,10 +568,10 @@ ifeq (${PVM_ARCH},CRAY)
 CXX := g++
 CC := cc
 CPP := cpp
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
 LDFLAGS += -L/lib -lf
 LEX := lex
 LINT := lint
@@ -752,16 +600,19 @@ ${MY_OBJ_DIR}/%.o : %.f
 endif
 # endif CRAY
 
-# Works on LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD
-ifneq (${null},$(findstring ${PVM_ARCH},LINUXALPHALINUXAMD64LINUXARMFREEBSD))
+# Works on LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD and MACOSX
+ifneq (${null},$(findstring ${PVM_ARCH},LINUXALPHALINUXAMD64LINUXARMFREEBSDMACOSX))
 CXX := ${LINUX_CXX}
 CC := ${LINUX_CC}
 CPP := ${CXX}
 # HAVE_INLINE is GNU standard to activate inline functions (used by GSL)
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DHAVE_INLINE ${CPP_PTH} -I${NETCDF_INC} 
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} -DHAVE_INLINE ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := ${LINUX_FC}
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
+ifeq (${PVM_ARCH},MACOSX)
+ LDFLAGS += -lresolv
+endif # endif MACOSX
 LEX := flex
 LINT := lint
 YACC := bison
@@ -783,8 +634,15 @@ ifeq (${OPTS},X)
 endif
  CXXFLAGS := ${CFLAGS}
 endif # endif Comeau C Compiler
-# GNU Compiler Collection
-ifeq (${CXX},g++)
+# GNU Compiler Collection or LLVM
+# 20140204: gcc and clang should receive identical options
+ifeq (g++,$(firstword ${CXX}))
+ GCC_OR_CLANG := Y
+endif
+ifeq (clang,$(firstword ${CXX}))
+ GCC_OR_CLANG := Y
+endif
+ifeq (${GCC_OR_CLANG},Y)
  CPPFLAGS += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
  CFLAGS := -Wall -Wno-unused-variable
 # Compilation flags for numerical routines recommended by GSL 1.3 manual, p. 397
@@ -804,7 +662,7 @@ ifeq (${CXX},g++)
 # -Wwrite-strings: Apply const-qualifier to string constants, die if overwritten
 # -fno-common: Prevent global variables from being simultaneously defined in different files
 # -g: Put debugging symbols in executable
-# -O4: Turn on optimization so unitialized variables are flagged
+# -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
 # --no-alias? -fstrict-aliasing
@@ -816,10 +674,18 @@ ifeq (${CXX},g++)
 # -Dinline=: inline is not an ANSI keyword, must undefine inline to work with -ansi
 # -fshort-enums: Make enums as short as possible, ususally non-int. Do not ever invoke this! This breaks ABI and causes subtle problems
 ifeq (${OMP},Y)
+ifneq (clang,$(firstword ${CXX}))
+# 20140526 clang does not recognize/utilize -fopenmp
  OMP_FLG_C := -fopenmp
  OMP_FLG_F := -fopenmp
  LDFLAGS += -lgomp -lpthread
+endif # endif clang
 endif # endif OMP
+ifeq (clang,$(firstword ${CXX}))
+# 20140531 avoid clang error that -O4 is ame as -O3
+ CFLAGS := $(subst -O4,-O3,${CFLAGS})
+ LDFLAGS += -lstdc++
+endif # endif clang
 ifeq (${OPTS},O)
  CFLAGS += -O -g ${GCC_RCH_ARG}
 endif
@@ -840,7 +706,7 @@ ifeq (${ABI},64)
 endif # endif ABI
 endif # endif LINUXAMD64
  CXXFLAGS := ${CFLAGS}
-endif # endif GNU Compiler Collection
+endif # endif GNU Compiler Collection or LLVM
 # Intel (Kai) C++ Compiler
 ifeq (icpc,$(firstword ${CXX}))
 # -cxxlib-gcc: link using C++ run-time libraries provided with GCC (default) (generated code is binary compatible with g++)
@@ -991,17 +857,17 @@ ifeq (${OMP},Y)
  LDFLAGS := ${OMP_FLG_C} ${LDFLAGS}
 endif # endif OMP
 endif
-# endif LINUX
+# endif LINUX, LINUXALPHA, LINUXAMD64, LINUXARM, and FREEBSD and MACOSX
 
-ifeq (${PVM_ARCH},MACOSX)
+ifeq (${PVM_ARCH},MACOSXOLD)
 CXX := c++
 CC := cc
 CFLAGS := -Wall
 CPP := ${CC}
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lresolv -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lresolv -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1025,7 +891,7 @@ ifeq (${OMP},Y)
  LDFLAGS := ${OMP_FLG} ${LDFLAGS}
 endif # endif OMP
 endif
-# endif MACOSX
+# endif MACOSXOLD
 
 ifeq (${PVM_ARCH},NECSX)
 ifeq (${OMP},Y)
@@ -1036,10 +902,10 @@ CXX := c++
 CC := cc
 CPP := c++ -E
 #CPP := /usr/lib/cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${OTHER_CFLAGS}
 FC := f90
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 ifeq ($(USE_FORTRAN_ARITHMETIC),Y)
 # LDFLAGS += -L/lib -lf
 endif
@@ -1070,10 +936,10 @@ ifeq (${PVM_ARCH},RS6K)
 CXX := g++
 CC := gcc -ansi
 CPP := /lib/cpp -P
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} -I${NETCDF_INC}
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${OTHER_CFLAGS}
 FC := xlf
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 ifeq ($(USE_FORTRAN_ARITHMETIC),Y)
  LDFLAGS += -lxlf90 -lxlf
 endif
@@ -1107,10 +973,10 @@ CC := cc -c99
 # 20000302: -w suppresses warnings which will swamp linker
 #CXX := g++ -w
 #CC := gcc
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := f90 -cpp
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS}
+LDFLAGS += ${OTHER_LDFLAGS}
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1130,7 +996,7 @@ else # ABI=32
 endif # endif ABI
 endif # endif SGI64, SGIMP64
 ifeq (gcc,$(firstword ${CC}))
- LDFLAGS := $(GCC_LDFLAGS_SZ_SPC) ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+ LDFLAGS := $(GCC_LDFLAGS_SZ_SPC) ${OTHER_LDFLAGS} -lm
  CFLAGS := ${GCC_ABI_FLG} -Wall
 ifeq (${OPTS},O)
  CFLAGS += -O2
@@ -1149,7 +1015,7 @@ endif
 # endif CC=gcc
 ifeq (CC,$(firstword ${CXX}))
 # SGI Native C++ headers are in /usr/include/CC
- LDFLAGS := ${SGI_ABI_FLG} ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+ LDFLAGS := ${SGI_ABI_FLG} ${OTHER_LDFLAGS} -lm
  CFLAGS := ${SGI_ABI_FLG}
 ifeq (${OPTS},O)
  CFLAGS += -O2
@@ -1191,12 +1057,12 @@ CXX := g++
 CC := gcc
 CFLAGS := -Wall
 CPP := cpp
-CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC} 
+CPPFLAGS := ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS} 
 FC := f90 -DHIDE_SHR_MSG
 #FFLAGS := -xs -stackvar -e -Qoption f90comp -r8const
 FFLAGS := -xs -stackvar -e 
 LD := ld
-LDFLAGS := ${TMP_LDFLAGS} ${TMP_LIBS} -lsunmath -lsocket -lnsl
+LDFLAGS := ${OTHER_LDFLAGS} -lsunmath -lsocket -lnsl
 #LDFLAGS += -lF77 -lM77 -lresolv
 LEX := lex
 LINT := lint
@@ -1241,10 +1107,10 @@ CC := gcc -ansi
 CPP := cpp
 # NB: nameser.h needs -Di386, but gcc sends -Di586 (on pentiums)
 CPP_TKN_OS += -Di386 -DNEED_STRCASECMP -DNEED_STRDUP -I/usr/include
-CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} -I${NETCDF_INC}
+CPPFLAGS += ${CPP_TKN} ${CPP_TKN_OS} ${CPP_PTH} ${OTHER_CFLAGS}
 FC := g77
 LD := ld
-LDFLAGS += ${TMP_LDFLAGS} ${TMP_LIBS} -lm
+LDFLAGS += ${OTHER_LDFLAGS} -lm
 LEX := flex
 LINT := lint
 YACC := bison
@@ -1357,10 +1223,8 @@ dbg:
 	@printf "CPP_TKN = ${CPP_TKN}\n"
 	@printf "CXX = ${CXX}\n"
 	@printf "CXXFLAGS = ${CXXFLAGS}\n"
-	@printf "DAP_NETCDF = ${DAP_NETCDF}\n"
-	@printf "DAP_NETCDF_ROOT = ${DAP_NETCDF_ROOT}\n"
-	@printf "DAP_OPENDAP = ${DAP_OPENDAP}\n"
-	@printf "DAP_OPENDAP_ROOT = ${DAP_OPENDAP_ROOT}\n"
+	@printf "DAP = ${DAP}\n"
+	@printf "DAP_ROOT = ${DAP_ROOT}\n"
 	@printf "DBG = ${DBG}\n"
 	@printf "FC = ${FC}\n"
 	@printf "FFLAGS = ${FFLAGS}\n"
diff --git a/src/nco_c++/libnco_c++.hh b/src/nco_c++/libnco_c++.hh
index 1164950..d5080fc 100644
--- a/src/nco_c++/libnco_c++.hh
+++ b/src/nco_c++/libnco_c++.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/libnco_c++.hh,v 1.19 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/libnco_c++.hh,v 1.20 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Prototypes, typedefs, and global variables for libnco_c++
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 /* libnco_c++.hh headers depend only on system headers
    Thus libnco_c++.a may be built independently of any other libraries
diff --git a/src/nco_c++/nco_att.cc b/src/nco_c++/nco_att.cc
index 9052bb9..6ce37ad 100644
--- a/src/nco_c++/nco_att.cc
+++ b/src/nco_c++/nco_att.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.cc,v 1.22 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.cc,v 1.23 2014/06/15 21:06:25 zender Exp $ 
 
 // Implementation (declaration) of C++ interface to netCDF attribute routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 8da59dc..ce983d4 100644
--- a/src/nco_c++/nco_att.hh
+++ b/src/nco_c++/nco_att.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.hh,v 1.20 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_att.hh,v 1.22 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF attribute routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
 // #include <nco_att.hh> // C++ interface to netCDF attribute routines
@@ -363,6 +364,7 @@ nco_get_att // [fnc] Get attribute value
   // Purpose: Wrapper for nco_get_att()
   typ_ntr att_val; // O [frc] Attribute value
   int rcd=nco_get_att(nc_id,var_id,att_nm,att_val);
+  rcd+=0; // 20140531 CEWI to prevent -Wunused-variable
   return att_val;
 } // end nco_get_att<typ_ntr>()
 
@@ -390,6 +392,7 @@ nco_get_att // [fnc] Get attribute value
 
   typ_ntr att_val; // O [frc] Attribute value
   int rcd=nco_get_att(nc_id,nco_inq_varid(nc_id,var_nm),att_nm,att_val);
+  rcd+=0; // 20140531 CEWI to prevent -Wunused-variable
   return att_val;
 } // end nco_get_att<typ_ntr>()
 
diff --git a/src/nco_c++/nco_dmn.cc b/src/nco_c++/nco_dmn.cc
index eb352aa..d527854 100644
--- a/src/nco_c++/nco_dmn.cc
+++ b/src/nco_c++/nco_dmn.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.cc,v 1.17 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.cc,v 1.18 2014/06/15 21:06:25 zender Exp $ 
 
 // Implementation (declaration) of C++ interface to netCDF dimension routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 2a72e7b..55a96ed 100644
--- a/src/nco_c++/nco_dmn.hh
+++ b/src/nco_c++/nco_dmn.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.hh,v 1.16 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_dmn.hh,v 1.17 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF dimension routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
 // #include <nco_dmn.hh> // C++ interface to netCDF dimension routines
diff --git a/src/nco_c++/nco_fl.cc b/src/nco_c++/nco_fl.cc
index 9527fe7..c84e306 100644
--- a/src/nco_c++/nco_fl.cc
+++ b/src/nco_c++/nco_fl.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.cc,v 1.17 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.cc,v 1.18 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Implementation (declaration) of C++ interface to netCDF file-level routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 24d067f..e71658e 100644
--- a/src/nco_c++/nco_fl.hh
+++ b/src/nco_c++/nco_fl.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.hh,v 1.16 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_fl.hh,v 1.17 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF file-level routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
 // #include <nco_fl.hh> // C++ interface to netCDF file-level routines
diff --git a/src/nco_c++/nco_hgh.cc b/src/nco_c++/nco_hgh.cc
index 5d04f2c..6c3d25e 100644
--- a/src/nco_c++/nco_hgh.cc
+++ b/src/nco_c++/nco_hgh.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.cc,v 1.20 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.cc,v 1.21 2014/06/15 21:06:25 zender Exp $ 
 
 // Implementation (declaration) of C++ interface to high-level NCO utilities
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 ca1c1e2..5065b76 100644
--- a/src/nco_c++/nco_hgh.hh
+++ b/src/nco_c++/nco_hgh.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.hh,v 1.16 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_hgh.hh,v 1.17 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of high-level NCO routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
 // #include <nco_hgh.hh> // High-level NCO routines
diff --git a/src/nco_c++/nco_utl.cc b/src/nco_c++/nco_utl.cc
index a893866..2dd3177 100644
--- a/src/nco_c++/nco_utl.cc
+++ b/src/nco_c++/nco_utl.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.cc,v 1.28 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.cc,v 1.29 2014/06/15 21:06:25 zender Exp $ 
 
 // Implementation (declaration) of C++ interface utilities for netCDF routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 f679400..5f30884 100644
--- a/src/nco_c++/nco_utl.hh
+++ b/src/nco_c++/nco_utl.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.hh,v 1.28 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_utl.hh,v 1.29 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface utilities for netCDF routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
 // #include <nco_utl.hh> // C++ interface utilities for netCDF routines
diff --git a/src/nco_c++/nco_var.cc b/src/nco_c++/nco_var.cc
index 82bf5c1..0cb1513 100644
--- a/src/nco_c++/nco_var.cc
+++ b/src/nco_c++/nco_var.cc
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.cc,v 1.36 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.cc,v 1.37 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Implementation (declaration) of C++ interface to netCDF variable routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   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 b4035d8..7520dab 100644
--- a/src/nco_c++/nco_var.hh
+++ b/src/nco_c++/nco_var.hh
@@ -1,10 +1,11 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.hh,v 1.32 2013/12/31 05:14:02 zender Exp $ 
+// $Header: /cvsroot/nco/nco/src/nco_c++/nco_var.hh,v 1.33 2014/06/15 21:06:25 zender Exp $ 
 
 // Purpose: Description (definition) of C++ interface to netCDF variable routines
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
+/* Copyright (C) 1995--2014 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 
+   GNU General Public License (GPL) Version 3 with exceptions described in the LICENSE file */
 
 // Usage:
 // #include <nco_var.hh> // C++ interface to netCDF variable routines
diff --git a/src/nco_c++/tst.cc b/src/nco_c++/tst.cc
index 65b75f8..336b087 100644
--- a/src/nco_c++/tst.cc
+++ b/src/nco_c++/tst.cc
@@ -1,10 +1,7 @@
-// $Header: /cvsroot/nco/nco/src/nco_c++/tst.cc,v 1.40 2013/12/31 05:14:02 zender Exp $
+// $Header: /cvsroot/nco/nco/src/nco_c++/tst.cc,v 1.41 2014/06/15 21:06:25 zender Exp $
 
 // Purpose: Test for C++ programs using libnco_c++ API
 
-/* Copyright (C) 2001--2014 Charlie Zender
-   License: GNU General Public License (GPL) Version 3
-   See http://www.gnu.org/copyleft/gpl.html for full license text */
 
 /* Compilation
    make -W tst.cc OPTS=D tst
@@ -58,10 +55,10 @@ int main(int argc,char **argv)
   long sz_nbr(1); // [nbr] Number of sizes
   register long idx; // [idx] Counting index
 
-  const std::string CVS_Date("$Date: 2013/12/31 05:14:02 $"); // [sng] CVS date string
-  const std::string CVS_Header("$Header: /cvsroot/nco/nco/src/nco_c++/tst.cc,v 1.40 2013/12/31 05:14:02 zender Exp $"); // [sng] CVS header string
-  const std::string CVS_Id("$Id: tst.cc,v 1.40 2013/12/31 05:14:02 zender Exp $"); // [sng] CVS identification string
-  const std::string CVS_Revision("$Revision: 1.40 $"); // [sng] CVS revision string
+  const std::string CVS_Date("$Date: 2014/06/15 21:06:25 $"); // [sng] CVS date string
+  const std::string CVS_Header("$Header: /cvsroot/nco/nco/src/nco_c++/tst.cc,v 1.41 2014/06/15 21:06:25 zender Exp $"); // [sng] CVS header string
+  const std::string CVS_Id("$Id: tst.cc,v 1.41 2014/06/15 21:06:25 zender Exp $"); // [sng] CVS identification string
+  const std::string CVS_Revision("$Revision: 1.41 $"); // [sng] CVS revision string
   const std::string date_cvs(CVS_Date.length() > 7 ? CVS_Date.substr(7,19) : static_cast<std::string>("Unknown")); // [sng] Date from CVS
   const std::string sbr_nm("main"); // [sng] Subroutine name
   const std::string prg_nm("libnco_c++"); // [sng] Program name

-- 
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