[gmt] 01/06: New upstream version 5.4.2+dfsg

Bas Couwenberg sebastic at debian.org
Tue Jun 27 05:52:57 UTC 2017


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

sebastic pushed a commit to branch master
in repository gmt.

commit 539f24dc5aa2e3459ec893da87bcde4f9ec5b18c
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Tue Jun 27 00:22:27 2017 +0200

    New upstream version 5.4.2+dfsg
---
 cmake/ConfigDefault.cmake                          |    8 +-
 cmake/ConfigUserTemplate.cmake                     |    3 +-
 cmake/modules/ConfigureChecks.cmake                |   23 +-
 cmake/modules/FindGDAL.cmake                       |    2 +-
 doc/examples/ex02/example_02.bat                   |    6 +-
 doc/examples/ex02/example_02.ps                    |   51 +-
 doc/examples/ex02/example_02.sh                    |    6 +-
 doc/examples/ex29/example_29.bat                   |    4 +-
 doc/examples/ex29/mars370.txt                      |    2 +-
 doc/examples/ex31/example_31.ps                    |   40 +-
 doc/examples/ex32/example_32.ps                    | 3390 ++++++++++----------
 doc/examples/ex35/example_35.ps                    | 1377 ++------
 doc/examples/ex39/example_39.ps                    | 2733 ++--------------
 doc/rst/conf.py.in                                 |    1 +
 doc/rst/source/GMT_API.rst                         |   14 +-
 doc/rst/source/GMT_Docs.rst                        |  107 +-
 doc/rst/source/GMT_Tutorial.rst                    |  224 +-
 doc/rst/source/explain_-V_full.rst_                |    2 +-
 doc/rst/source/explain_-h_full.rst_                |    4 +-
 doc/rst/source/explain_-icols_full.rst_            |    2 +-
 doc/rst/source/explain_-ocols_full.rst_            |    2 +-
 .../gallery/users_contrib_symbols/geo-cleavage.rst |    2 +-
 .../users_contrib_symbols/geo-cleavage_hor.rst     |    2 +-
 .../users_contrib_symbols/geo-cleavage_vert.rst    |    2 +-
 .../users_contrib_symbols/geo-foliation-2.rst      |    2 +-
 .../users_contrib_symbols/geo-foliation-3.rst      |    2 +-
 .../users_contrib_symbols/geo-foliation.rst        |    2 +-
 .../users_contrib_symbols/geo-foliation_hor.rst    |    2 +-
 .../users_contrib_symbols/geo-foliation_vert.rst   |    2 +-
 .../gallery/users_contrib_symbols/geo-joint.rst    |    2 +-
 .../users_contrib_symbols/geo-joint_hor.rst        |    2 +-
 .../users_contrib_symbols/geo-joint_vert.rst       |    2 +-
 .../users_contrib_symbols/geo-lineation-2.rst      |    2 +-
 .../users_contrib_symbols/geo-lineation-3.rst      |    2 +-
 .../users_contrib_symbols/geo-lineation.rst        |    2 +-
 .../users_contrib_symbols/geo-lineation_hor.rst    |    2 +-
 .../users_contrib_symbols/geo-lineation_vert.rst   |    2 +-
 .../gallery/users_contrib_symbols/geo-plane.rst    |    2 +-
 .../users_contrib_symbols/geo-plane_gentle.rst     |    2 +-
 .../users_contrib_symbols/geo-plane_hor.rst        |    2 +-
 .../users_contrib_symbols/geo-plane_inv.rst        |    2 +-
 .../users_contrib_symbols/geo-plane_medium.rst     |    2 +-
 .../users_contrib_symbols/geo-plane_rake.rst       |    2 +-
 .../users_contrib_symbols/geo-plane_steep.rst      |    2 +-
 .../users_contrib_symbols/geo-plane_und.rst        |    2 +-
 .../users_contrib_symbols/geo-plane_vert.rst       |    2 +-
 doc/rst/source/gmtlogo.rst                         |    2 +-
 doc/rst/source/grdimage.rst                        |    4 +-
 doc/rst/source/grdlandmask.rst                     |   13 +-
 doc/rst/source/grdmask.rst                         |   14 +-
 doc/rst/source/grdview.rst                         |    2 +-
 doc/rst/source/project.rst                         |    2 +-
 doc/rst/source/psbasemap.rst                       |    4 +-
 doc/rst/source/psclip.rst                          |    4 +-
 doc/rst/source/psconvert.rst                       |    5 +
 doc/rst/source/pssolar.rst                         |    2 +-
 doc/rst/source/triangulate.rst                     |   21 +-
 doc/scripts/GMT_App_K_1.ps                         |  511 +--
 doc/scripts/GMT_App_K_2.ps                         |  612 ++--
 doc/scripts/GMT_grinten.ps                         |  180 +-
 doc/scripts/GMT_tut_11.sh                          |    4 +-
 doc/scripts/GMT_tut_12.sh                          |    4 +-
 doc/scripts/GMT_tut_13.sh                          |    4 +-
 doc/scripts/GMT_tut_15.sh                          |    6 +-
 doc/scripts/GMT_tut_16.sh                          |    8 +-
 doc/scripts/GMT_tut_17.sh                          |    4 +-
 doc/scripts/GMT_tut_18.sh                          |    6 +-
 doc/scripts/GMT_tut_19.sh                          |    6 +-
 doc/scripts/GMT_tut_5.ps                           | 1103 +------
 doc/scripts/GMT_tut_7.sh                           |    4 +-
 doc/scripts/GMT_tut_8.sh                           |    6 +-
 doc/scripts/GMT_tut_9.sh                           |    5 +-
 share/tools/gmt5syntax.in                          |    4 +-
 src/blockmean.c                                    |    4 +-
 src/blockmedian.c                                  |    4 +-
 src/blockmode.c                                    |    4 +-
 src/common_math.h                                  |    8 +-
 src/common_sighandler.c                            |    4 +-
 src/filter1d.c                                     |    6 +-
 src/gmt.c                                          |   25 +-
 src/gmt.h                                          |   10 +-
 src/gmt_api.c                                      |  220 +-
 src/gmt_calclock.c                                 |    5 +-
 src/gmt_common.h                                   |    8 +-
 src/gmt_config.h.in                                |    7 +-
 src/gmt_constants.h                                |    8 +-
 src/gmt_dcw.c                                      |   33 +-
 src/gmt_defaults.h                                 |    3 +-
 src/gmt_gdal_librarified.c                         |   15 +-
 src/gmt_gdalread.c                                 |   20 +-
 src/gmt_gdalwrite.c                                |    4 +-
 src/gmt_grdio.c                                    |   31 +-
 src/gmt_init.c                                     |  335 +-
 src/gmt_io.c                                       |    5 +-
 src/gmt_macros.h                                   |   15 +-
 src/gmt_map.c                                      |  130 +-
 src/gmt_nc.c                                       |  156 +-
 src/gmt_notposix.c                                 |   44 +-
 src/gmt_notposix.h                                 |   10 +-
 src/gmt_parse.c                                    |   22 +-
 src/gmt_plot.c                                     |   39 +-
 src/gmt_proj.c                                     |   11 +-
 src/gmt_prototypes.h                               |    7 +-
 src/gmt_support.c                                  |   33 +-
 src/gmt_synopsis.h                                 |    6 +-
 src/gmt_vector.c                                   |   10 +-
 src/gmtconvert.c                                   |    6 +-
 src/gmtinfo.c                                      |    2 +-
 src/gmtlogo.c                                      |    6 +-
 src/gmtmath.c                                      |    8 +-
 src/gmtread.c                                      |   15 +-
 src/gmtselect.c                                    |    6 +-
 src/gmtspatial.c                                   |   17 +-
 src/grd2rgb.c                                      |    4 +-
 src/grdblend.c                                     |   32 +-
 src/grdfilter.c                                    |    4 +-
 src/grdfilter_mt.c                                 |    4 +-
 src/grdhisteq.c                                    |    6 +-
 src/grdimage.c                                     |   82 +-
 src/grdlandmask.c                                  |   19 +-
 src/grdmask.c                                      |   96 +-
 src/grdmath.c                                      |   18 +-
 src/grdproject.c                                   |    4 +-
 src/grdraster.c                                    |    3 +-
 src/grdsample.c                                    |    4 +-
 src/grdvector.c                                    |    8 +-
 src/grdview.c                                      |   54 +-
 src/greenspline.c                                  |   10 +-
 src/gshhg/gshhg.c                                  |    6 +-
 src/gshhg/gshhg.h                                  |    3 +-
 src/img/img2grd.c                                  |    8 +-
 src/makecpt.c                                      |    4 +-
 src/mapproject.c                                   |   14 +-
 src/meca/pssac.c                                   |    2 +-
 src/mgd77/mgd77.c                                  |    8 +-
 src/mgd77/mgd77convert.c                           |    6 +-
 src/mgd77/mgd77header.c                            |   52 +-
 src/mgd77/mgd77info.c                              |    6 +-
 src/mgd77/mgd77list.c                              |    6 +-
 src/mgd77/mgd77manage.c                            |   14 +-
 src/mgd77/mgd77path.c                              |   11 +-
 src/mgd77/mgd77sniffer.c                           |   15 +-
 src/mgd77/mgd77track.c                             |   14 +-
 src/misc/dimfilter.c                               |    3 +-
 src/nearneighbor.c                                 |   15 +-
 src/postscriptlight.c                              |   28 +-
 src/postscriptlight.h                              |    3 +-
 src/potential/gmtflexure.c                         |   10 +-
 src/potential/gmtgravmag3d.c                       |   10 +-
 src/potential/gpsgridder.c                         |    6 +-
 src/potential/grdredpol.c                          |    4 +-
 src/potential/grdseamount.c                        |    3 +-
 src/potential/talwani2d.c                          |   12 +-
 src/potential/talwani3d.c                          |    7 +-
 src/psbasemap.c                                    |    4 +-
 src/psclip.c                                       |   11 +-
 src/pscoast.c                                      |    9 +-
 src/psconvert.c                                    |   43 +-
 src/pshistogram.c                                  |    8 +-
 src/psimage.c                                      |    6 +-
 src/psmask.c                                       |    4 +-
 src/psscale.c                                      |  107 +-
 src/pssolar.c                                      |    4 +-
 src/psternary.c                                    |    7 +-
 src/pswiggle.c                                     |   14 +-
 src/psxy.c                                         |   24 +-
 src/sample1d.c                                     |    6 +-
 src/segy/segy2grd.c                                |    4 +-
 src/sph2grd.c                                      |    4 +-
 src/sphdistance.c                                  |   12 +-
 src/sphinterpolate.c                               |    4 +-
 src/spotter/backtracker.c                          |    6 +-
 src/spotter/gmtpmodeler.c                          |    6 +-
 src/spotter/grdspotter.c                           |    4 +-
 src/spotter/hotspotter.c                           |    6 +-
 src/spotter/rotconverter.c                         |    6 +-
 src/ssrfpack.c                                     |   10 +-
 src/stripack.c                                     |   16 +-
 src/surface.c                                      |    4 +-
 src/surface_mt.c                                   |    2 -
 src/trend1d.c                                      |   13 +-
 src/triangulate.c                                  |    4 +-
 src/x2sys/x2sys.c                                  |   10 +-
 src/x2sys/x2sys_binlist.c                          |   11 +-
 src/x2sys/x2sys_cross.c                            |   10 +-
 src/x2sys/x2sys_datalist.c                         |    9 +-
 src/x2sys/x2sys_put.c                              |   12 +-
 src/x2sys/x2sys_report.c                           |   21 +-
 src/xyz2grd.c                                      |    3 +-
 189 files changed, 4740 insertions(+), 8195 deletions(-)

diff --git a/cmake/ConfigDefault.cmake b/cmake/ConfigDefault.cmake
index d26d70a..fa5f320 100644
--- a/cmake/ConfigDefault.cmake
+++ b/cmake/ConfigDefault.cmake
@@ -1,5 +1,5 @@
 #
-# $Id: ConfigDefault.cmake 18208 2017-05-09 22:11:16Z jluis $
+# $Id: ConfigDefault.cmake 18461 2017-06-25 01:18:55Z pwessel $
 #
 # Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
 # See LICENSE.TXT file for copying and redistribution conditions.
@@ -42,14 +42,14 @@ set (GMT_VERSION_YEAR "2017")
 # The GMT package version.
 set (GMT_PACKAGE_VERSION_MAJOR 5)
 set (GMT_PACKAGE_VERSION_MINOR 4)
-set (GMT_PACKAGE_VERSION_PATCH 1)
+set (GMT_PACKAGE_VERSION_PATCH 2)
 
 # The subversion revision of the GMT source code.
 # This is manually set when making GMT *public* releases.
 # However, when making internal releases or just an ordinary developer build, leave it
 # empty; if it is empty, the revision number is automatically populated for you on build.
-#set (GMT_SOURCE_CODE_CONTROL_VERSION_STRING "18180")
-set (GMT_SOURCE_CODE_CONTROL_VERSION_STRING "18208")
+set (GMT_SOURCE_CODE_CONTROL_VERSION_STRING "18461")
+#set (GMT_SOURCE_CODE_CONTROL_VERSION_STRING "")
 
 # The GMT package version.
 set (GMT_PACKAGE_VERSION "${GMT_PACKAGE_VERSION_MAJOR}.${GMT_PACKAGE_VERSION_MINOR}.${GMT_PACKAGE_VERSION_PATCH}")
diff --git a/cmake/ConfigUserTemplate.cmake b/cmake/ConfigUserTemplate.cmake
index 856e933..44d8d17 100644
--- a/cmake/ConfigUserTemplate.cmake
+++ b/cmake/ConfigUserTemplate.cmake
@@ -1,5 +1,5 @@
 #
-# $Id: ConfigUserTemplate.cmake 17812 2017-03-29 00:01:07Z pwessel $
+# $Id: ConfigUserTemplate.cmake 18366 2017-06-12 01:57:16Z pwessel $
 #
 # Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
 # See LICENSE.TXT file for copying and redistribution conditions.
@@ -234,7 +234,6 @@
 #endif()
 #add_definitions(-DDEBUG)
 #add_definitions(-DMEMDEBUG) # Turn on memory tracking see gmt_support.c for extra info
-#add_definitions(-DDEBUG_MODERN)	# For developers: sets PPID = 0
 #set (CMAKE_C_FLAGS "-Wall -Wdeclaration-after-statement") # recommended even for release build
 #set (CMAKE_C_FLAGS "-Wextra ${CMAKE_C_FLAGS}")            # extra warnings
 #set (CMAKE_C_FLAGS_DEBUG -ggdb3)                          # gdb debugging symbols
diff --git a/cmake/modules/ConfigureChecks.cmake b/cmake/modules/ConfigureChecks.cmake
index 14027ec..756a1da 100644
--- a/cmake/modules/ConfigureChecks.cmake
+++ b/cmake/modules/ConfigureChecks.cmake
@@ -1,5 +1,5 @@
 #
-# $Id: ConfigureChecks.cmake 17487 2017-01-24 04:44:14Z pwessel $
+# $Id: ConfigureChecks.cmake 18344 2017-06-08 21:51:52Z pwessel $
 #
 
 if(NOT DEFINED _INCLUDED_CHECK_MACROS_)
@@ -159,6 +159,7 @@ check_function_exists (strncasecmp      HAVE_STRNCASECMP)
 check_function_exists (stricmp          HAVE_STRICMP)
 check_function_exists (strnicmp         HAVE_STRNICMP)
 check_function_exists (strdup           HAVE_STRDUP)
+check_function_exists (strndup          HAVE_STRNDUP)
 check_function_exists (strsep           HAVE_STRSEP)
 check_function_exists (strtod           HAVE_STRTOD)
 # Note: trailing underscore = GDAL workaround
@@ -418,26 +419,6 @@ if (WIN32)
 	check_symbol_exists (_isnan    "${_math_h}" HAVE__ISNAN)
 endif (WIN32)
 
-# test if sincos is buggy
-if (HAVE_SINCOS)
-	check_c_source_runs (
-		"
-		#define _GNU_SOURCE
-		#define __EXTENSIONS__
-		#include <math.h>
-		int main () {
-		double s = 0.1, c = 0.2;
-		double s1, c1;
-		s1 = s; c1 = c;
-		sincos (0.5, &s, &c);
-		return !(s == s1 || c == c1);} /* return TRUE if sincos fails */
-		"
-		HAVE_BUGGY_SINCOS)
-	if (HAVE_BUGGY_SINCOS)
-		set (HAVE_SINCOS "" CACHE INTERNAL "disable sincos because it is buggy" FORCE)
-	endif (HAVE_BUGGY_SINCOS)
-endif (HAVE_SINCOS)
-
 # restore state of CMAKE_REQUIRED_*
 cmake_pop_check_state()
 
diff --git a/cmake/modules/FindGDAL.cmake b/cmake/modules/FindGDAL.cmake
index f18eed3..4afb57b 100644
--- a/cmake/modules/FindGDAL.cmake
+++ b/cmake/modules/FindGDAL.cmake
@@ -1,5 +1,5 @@
 #
-# $Id: FindGDAL.cmake 18202 2017-05-09 10:22:12Z remko $
+# $Id: FindGDAL.cmake 18235 2017-05-23 18:32:26Z remko $
 #
 # Locate gdal
 #
diff --git a/doc/examples/ex02/example_02.bat b/doc/examples/ex02/example_02.bat
index 830717f..a2a2e70 100755
--- a/doc/examples/ex02/example_02.bat
+++ b/doc/examples/ex02/example_02.bat
@@ -1,6 +1,6 @@
 REM		GMT EXAMPLE 02
 REM
-REM		$Id: example_02.bat 17806 2017-03-27 22:18:01Z pwessel $
+REM		$Id: example_02.bat 18305 2017-06-02 05:17:10Z pwessel $
 REM
 REM Purpose:	Make two color images based gridded data
 REM GMT progs:	gmtset, grd2cpt, grdimage, makecpt, psscale, pstext
@@ -11,10 +11,10 @@ set ps=example_02.ps
 gmt set FONT_TITLE 30p MAP_ANNOT_OBLIQUE 0
 gmt makecpt -Crainbow -T-2/14/2 > g.cpt
 gmt grdimage HI_geoid2.nc -R160/20/220/30r -JOc190/25.5/292/69/4.5i -E50 -K -P -B10 -Cg.cpt -X1.5i -Y1.25i > %ps%
-gmt psscale -Cg.cpt -DJRM+o0.6i/0+e -J -R -O -K -Bx2+lGEOID -By+lm >> %ps%
+gmt psscale -Cg.cpt -DJRM+o0.6i/0+e+mc -J -R -O -K -Bx2+lGEOID -By+lm >> %ps%
 gmt grd2cpt HI_topo2.nc -Crelief -Z > t.cpt
 gmt grdimage HI_topo2.nc -I+a0+nt -R -J -E50 -B+t"H@#awaiian@# T@#opo and @#G@#eoid@#" -B10 -O -K -Ct.cpt -Y4.5i --MAP_TITLE_OFFSET=0.5i >> %ps%
-gmt psscale -Ct.cpt -DJRM+o0.6i/0 -J -R -O -K -I0.3 -Bx2+lTOPO -By+lkm >> %ps%
+gmt psscale -Ct.cpt -DJRM+o0.6i/0+mc -J -R -O -K -I0.3 -Bx2+lTOPO -By+lkm >> %ps%
 echo -0.4 7.5 a) > tmp
 echo -0.4 3.0 b) >> tmp
 gmt pstext tmp -R0/8.5/0/11 -Jx1i -F+f30p,Helvetica-Bold+jCB -O -N -Y-4.5i >> %ps%
diff --git a/doc/examples/ex02/example_02.ps b/doc/examples/ex02/example_02.ps
index 23f16da..460c19c 100644
--- a/doc/examples/ex02/example_02.ps
+++ b/doc/examples/ex02/example_02.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
 %%HiResBoundingBox: 0 0 612 792             
-%%Title: GMT v5.4.0_r17803 [64-bit] Document from grdimage
+%%Title: GMT v5.4.2_r18303M [64-bit] Document from grdimage
 %%Creator: GMT5
 %%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Mon Mar 27 12:24:31 2017
+%%CreationDate: Thu Jun  1 19:13:47 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -773,6 +773,13 @@ N 5400 1998 M 77 32 D S
 N 0 1137 M -80 -24 D S
 N 5400 3333 M 76 34 D S
 N 0 2347 M -79 -27 D S
+25 W
+2 setlinecap
+N 0 0 M 0 3333 D S
+N 5400 0 M 0 3333 D S
+N 0 0 M 5400 0 D S
+N 0 3333 M 5400 0 D S
+0 setlinecap
 45 -161 M PSL_font_encode 0 get 0 eq {Standard+_Encoding /Helvetica /Helvetica PSL_reencode PSL_font_encode 0 1 put} if
 200 F0
 V -74.5 R (160�) ml Z U
@@ -791,13 +798,6 @@ V -74.5 R (160
 -159 1089 M V 16.9 R (30�) mr Z U
 5552 3402 M V 24.3 R (30�) ml Z U
 -157 2292 M V 19.2 R (40�) mr Z U
-25 W
-2 setlinecap
-N 0 0 M 0 3333 D S
-N 5400 0 M 0 3333 D S
-N 0 0 M 5400 0 D S
-N 0 3333 M 5400 0 D S
-0 setlinecap
 %%EndObject
 0 A
 FQ
@@ -805,7 +805,7 @@ O0
 0 0 TM
 
 % PostScript produced by:
-%@GMT: psscale -Cg.cpt -DJRM+o0.6i/0+e -R160/20/220/30+r -JOc190/25.5/292/69/4.5i -O -K -Bx2+lGEOID -By+lm
+%@GMT: psscale -Cg.cpt -DJRM+o0.6i/0+e+mc -R160/20/220/30+r -JOc190/25.5/292/69/4.5i -O -K -Bx2+lGEOID -By+lm
 %@PROJ: omerc 159.90000000 220.10000000 3.18100337 47.53155145 -2779092.940 2820830.781 -1617126.576 1839278.125 +unavailable +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_2
 0 setlinecap
@@ -886,8 +886,12 @@ def
 (14) mr Z
 /PSL_LH 0 def /PSL_L_y PSL_A0_y PSL_A1_y mx def
 90 R
-1333 -516 M 267 F0
-(GEOID) tc Z
+1813 -649 M 267 F0
+V -90 R (G) mc Z U
+1573 -649 M V -90 R (E) mc Z U
+1333 -649 M V -90 R (O) mc Z U
+1093 -649 M V -90 R (I) mc Z U
+853 -649 M V -90 R (D) mc Z U
 2803 53 M 200 F0
 V -90 R (m) bc Z U
 -90 R
@@ -2989,6 +2993,13 @@ N 5400 1998 M 77 32 D S
 N 0 1137 M -80 -24 D S
 N 5400 3333 M 76 34 D S
 N 0 2347 M -79 -27 D S
+25 W
+2 setlinecap
+N 0 0 M 0 3333 D S
+N 5400 0 M 0 3333 D S
+N 0 0 M 5400 0 D S
+N 0 3333 M 5400 0 D S
+0 setlinecap
 /PSL_H_y 767 PSL_font_encode 0 get 0 eq {Standard+_Encoding /Helvetica /Helvetica PSL_reencode PSL_font_encode 0 1 put} if
 200 F0
 (100\312) sh add def
@@ -3018,13 +3029,6 @@ V -74.5 R (160
 -159 1089 M V 16.9 R (30�) mr Z U
 5552 3402 M V 24.3 R (30�) ml Z U
 -157 2292 M V 19.2 R (40�) mr Z U
-25 W
-2 setlinecap
-N 0 0 M 0 3333 D S
-N 5400 0 M 0 3333 D S
-N 0 0 M 5400 0 D S
-N 0 3333 M 5400 0 D S
-0 setlinecap
 %%EndObject
 0 A
 FQ
@@ -3032,7 +3036,7 @@ O0
 0 0 TM
 
 % PostScript produced by:
-%@GMT: psscale -Ct.cpt -DJRM+o0.6i/0 -R160/20/220/30+r -JOc190/25.5/292/69/4.5i -O -K -I0.3 -Bx2+lTOPO -By+lkm
+%@GMT: psscale -Ct.cpt -DJRM+o0.6i/0+mc -R160/20/220/30+r -JOc190/25.5/292/69/4.5i -O -K -I0.3 -Bx2+lTOPO -By+lkm
 %@PROJ: omerc 159.90000000 220.10000000 3.18100337 47.53155145 -2779092.940 2820830.781 -1617126.576 1839278.125 +unavailable +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_4
 0 setlinecap
@@ -3622,8 +3626,11 @@ def
 (2) mr Z
 /PSL_LH 0 def /PSL_L_y PSL_A0_y PSL_A1_y mx def
 90 R
-1333 -516 M 267 F0
-(TOPO) tc Z
+1693 -649 M 267 F0
+V -90 R (T) mc Z U
+1453 -649 M V -90 R (O) mc Z U
+1213 -649 M V -90 R (P) mc Z U
+973 -649 M V -90 R (O) mc Z U
 2750 53 M 200 F0
 V -90 R (km) bc Z U
 -90 R
diff --git a/doc/examples/ex02/example_02.sh b/doc/examples/ex02/example_02.sh
index 2707ecf..80a9e50 100755
--- a/doc/examples/ex02/example_02.sh
+++ b/doc/examples/ex02/example_02.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 #		GMT EXAMPLE 02
-#		$Id: example_02.sh 17806 2017-03-27 22:18:01Z pwessel $
+#		$Id: example_02.sh 18305 2017-06-02 05:17:10Z pwessel $
 #
 # Purpose:	Make two color images based gridded data
 # GMT modules:	gmtset, grd2cpt, grdimage, makecpt, psscale, pstext
@@ -11,11 +11,11 @@ gmt set FONT_TITLE 30p MAP_ANNOT_OBLIQUE 0
 gmt makecpt -Crainbow -T-2/14/2 > g.cpt
 gmt grdimage HI_geoid2.nc -R160/20/220/30+r -JOc190/25.5/292/69/4.5i -E50 -K -P \
             -B10 -Cg.cpt -X1.5i -Y1.25i > $ps
-gmt psscale -Cg.cpt -DJRM+o0.6i/0+e -R -J -O -K -Bx2+lGEOID -By+lm >> $ps
+gmt psscale -Cg.cpt -DJRM+o0.6i/0+e+mc -R -J -O -K -Bx2+lGEOID -By+lm >> $ps
 gmt grd2cpt HI_topo2.nc -Crelief -Z > t.cpt
 gmt grdimage HI_topo2.nc -I+a0 -R -J -B+t"H@#awaiian@# T@#opo and @#G@#eoid@#" \
             -B10 -E50 -O -K -Ct.cpt -Y4.5i --MAP_TITLE_OFFSET=0.5i >> $ps
-gmt psscale -Ct.cpt -DJRM+o0.6i/0 -R -J -O -K -I0.3 -Bx2+lTOPO -By+lkm >> $ps
+gmt psscale -Ct.cpt -DJRM+o0.6i/0+mc -R -J -O -K -I0.3 -Bx2+lTOPO -By+lkm >> $ps
 gmt pstext -R0/8.5/0/11 -Jx1i -F+f30p,Helvetica-Bold+jCB -O -N -Y-4.5i >> $ps << END
 -0.4 7.5 a)
 -0.4 3.0 b)
diff --git a/doc/examples/ex29/example_29.bat b/doc/examples/ex29/example_29.bat
index 3a028d3..0fc4fa6 100755
--- a/doc/examples/ex29/example_29.bat
+++ b/doc/examples/ex29/example_29.bat
@@ -1,5 +1,5 @@
 REM             GMT EXAMPLE 29
-REM             $Id: example_29.bat 17806 2017-03-27 22:18:01Z pwessel $
+REM             $Id: example_29.bat 18334 2017-06-07 19:25:56Z pwessel $
 REM
 REM Purpose:	Illustrates spherical surface gridding with Green's function of splines
 REM GMT progs:	makecpt, grdcontour, grdimage, grdmath greenspline, psscale, pstext
@@ -11,7 +11,7 @@ set ps=example_29.ps
 
 REM This example uses 370 radio occultation data for Mars to grid the topography.
 REM Data and information from Smith, D. E., and M. T. Zuber (1996), The shape of
-REM Mars and the topographic signature of the hemispheric dichotomy, Science, 271, 184–187.
+REM Mars and the topographic signature of the hemispheric dichotomy, Science, 271, 184-187.
 
 REM Make Mars PROJ_ELLIPSOID given their three best-fitting axes:
 set a=3399.472
diff --git a/doc/examples/ex29/mars370.txt b/doc/examples/ex29/mars370.txt
index efbeda0..92a2830 100644
--- a/doc/examples/ex29/mars370.txt
+++ b/doc/examples/ex29/mars370.txt
@@ -1,5 +1,5 @@
 # Data and information from Smith, D. E., and M. T. Zuber (1996), The shape of
-# Mars and the topographic signature of the hemispheric dichotomy, Science, 271, 184–187.
+# Mars and the topographic signature of the hemispheric dichotomy, Science, 271, 184-187.
 # Courtesy of Gregory Neumann, MIT/NASA-GSFC
 # lon lat radius(m)
 -81.7690 -40.0590 3393858.000
diff --git a/doc/examples/ex31/example_31.ps b/doc/examples/ex31/example_31.ps
index 619777d..48e5d9e 100644
--- a/doc/examples/ex31/example_31.ps
+++ b/doc/examples/ex31/example_31.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
 %%HiResBoundingBox: 0 0 612 792             
-%%Title: GMT v5.4.0_r18059M [64-bit] [MP] Document from pscoast
+%%Title: GMT v5.4.2_r18363M [64-bit] Document from pscoast
 %%Creator: GMT5
 %%For: unknown
 %%DocumentNeededResources: font Helvetica LinLibertineOB
-%%CreationDate: Sat Apr 29 00:18:52 2017
+%%CreationDate: Thu Jun 15 10:59:36 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -2049,22 +2049,22 @@ S
 2 -19 D
 13 1 D
 S
-2882 5182 M
-2 10 D
-3 -11 D
+3359 5947 M
+-7 -23 D
+6 1 D
 S
 3353 5853 M
 -7 -18 D
 6 1 D
 S
+2882 5182 M
+2 10 D
+3 -11 D
+S
 3357 5919 M
 -5 -3 D
 5 2 D
 S
-3359 5947 M
--7 -23 D
-6 1 D
-S
 {0.678 0.847 0.902 C} FS
 4181 5135 M
 -5 21 D
@@ -7407,7 +7407,7 @@ FO
 P
 FO
 -7 13 -6 13 -7 13 4 37 36 50 1 1 35 20 -9 -5 36 -19 -6 15 27 -54 4 -72 -33 -38 -69 13 14 6277 7594 SP
-30 -87 61 -174 -39 23 5 11 -17 12 -13 -14 -30 9 -38 82 -36 21 -7 59 26 98 27 46 1 0 13 5807 6715 SP
+30 -87 30 -87 31 -87 -39 23 5 11 -17 12 -13 -14 -30 9 -38 82 -36 21 -7 59 26 98 27 46 1 0 14 5807 6715 SP
 {0.678 0.847 0.902 C} FS
 6508 6116 M
 -36 10 D
@@ -7841,7 +7841,7 @@ P S
 {0.565 0.933 0.565 C} FS
 0 581 78 -113 251 -363 72 -105 4 7158 7608 SP
 {0.678 0.847 0.902 C} FS
-0 634 -94 -136 -240 -346 -104 -152 4 438 7608 SP
+0 634 -334 -482 -104 -152 3 438 7608 SP
 1327 7608 M
 -311 -610 D
 1 18 D
@@ -12916,7 +12916,7 @@ FO
 -2 11 D
 P
 FO
-10 29 11 30 10 30 -37 6 23 -17 -8 -20 -41 6 -4 -19 43 -9 -10 -14 -9 12 5 -26 -14 -13 19 6 -12 -8 4 -23 16 1004 4469 SP
+21 59 10 30 -37 6 23 -17 -8 -20 -41 6 -4 -19 43 -9 -10 -14 -9 12 5 -26 -14 -13 19 6 -12 -8 4 -23 15 1004 4469 SP
 0 -3 -1 -3 0 -3 10 -8 14 -25 60 -3 -5 13 -14 -10 -36 5 -6 14 -21 25 11 2075 4038 SP
 1 0 1 2049 3913 SP
 {0.565 0.933 0.565 C} FS
@@ -20859,6 +20859,22 @@ S
 -33 -5 D
 -8 -16 D
 S
+4554 1811 M
+38 13 D
+-7 13 D
+26 29 D
+-16 21 D
+32 15 D
+3 -19 D
+44 -8 D
+22 -40 D
+24 -3 D
+-4 -25 D
+59 -13 D
+-20 -56 D
+-12 -3 D
+10 -22 D
+S
 6610 3612 M
 24 -12 D
 S
diff --git a/doc/examples/ex32/example_32.ps b/doc/examples/ex32/example_32.ps
index cd271cf..5ca33bb 100644
--- a/doc/examples/ex32/example_32.ps
+++ b/doc/examples/ex32/example_32.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
 %%HiResBoundingBox: 0 0 612 792             
-%%Title: GMT v5.4.0_r18069M [64-bit] Document from grdview
+%%Title: GMT v5.4.2_r18230 [64-bit] Document from grdview
 %%Creator: GMT5
 %%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Sat Apr 29 14:22:40 2017
+%%CreationDate: Sat May 20 17:22:02 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -705,1697 +705,1701 @@ b1g1?,BR^.IJjM\^.Q-V'DUZ&g%=!LT0AG:j<=K.bDj#41)L13R%LCXdAsRLgm+4.b!(up(bVWc9@$Bu
 f=n9-1cDN'\#Qb$?p=RRLKO6LnE\bK%qa.9,F`!ur9L9Wd")*3g2q03*qJ5U%kIYS^ZmW$Upa&UC$iP2T#7FYl?(NNKZ[>f
 J(&RdShQ=hEj3.&K17f/5[Cogn1%fKPSc6pJ$ffmY]9IX=<"t_Dqs;rA)d1Y^A$0+Y<Wb\_]0fl4?%`c84MuZO(L%-cDmM;
 #sGoYkDsHq"@*o*SiY3`'hc(k,?h508Q2]++\L&/n!Ru1:`hYYKt</LX15`%s6FFU(T,>P>.J=l4lB6+/]Y<D=.hFSbb`+N
-,&j5p?QEoji-)otoTolBMp40Id,Aq'2Lei5Q"'h?6E0YT`b'd';40<l^EZPf[M>+ZWT(Gu^f*W'k"i1OZPh/@G%K8Z<a_Pq
-`$S3hf-l#&0t61gqE:kg"J'gWs%B*\^8MRTqr6*k at CHdWq#QHe9^0<RfqKu&fEj83i60Xi&0_1,mAS@)g>M/!Y?1-t5A:V?
-]+lbb1)b%)cP!Fu>]MeD>uAuQ7>&i5Xr+flo9WadMC*1R$"_b>Kc/&gq-;[XTAlH(mJj47i;o<1]l*W,B<ml<2,cK-hpjZ<
-QI5kPVK48ZG&GJ^e=e^Cs%B,-[fV2V;TIft5eSuuO:ndPV%?<0+*8A+/MW#@qd"f&dZbe:E:pkr/fQijopkt57T'88 at V=%3
-bY0p62L$(c!K]HdUC8G*q/Y8!F9YeWLRCZLgaqL*VMrW5ck-.nUIqfNN*:2AjguR\ID9\^*0(Iu&$b!t+jnOM<Fsl:4Z6jb
-!A<Z4AMk4A2FL/&fb09/35'4nQVXj6Vk:m113!f"kCI[S"bL(I=peYYC^ljEe\K!0UV36[cHKpS-RMPt[e(4.KJEZfaX?lX
-<%4k"?a'+(Cp at j&%fGjj""kTT?o:l7Ef(S0r.?Zc1XsF#0L1]b-TD2Ua+h-8,U"T+n4>]!P0`*7cq&^V*0`I:<6!u]\S_Ms
-DhL#1CjG5G&Z47HYci),"dpG1^=3D]"=qER35D#E^S0Od*=g+ZTr0U%N;[eL]8(Ll:EI[XjVuk`^7L`@IO3*$BHkPuEKjD:
-?)pDCIe0\UC;!2<iEm\hbQ6]0r=7\3=u*)rJ%*AnY/d`,[;4q)"DO/F\=oQSK;&n%I!,[hFfjuWRBO1:=-qfa*qnQOe!#Z<
-"uF7job/Vg3cOciK.g_A_*Ls8Mb2`hSmR;GI$($YZNsQ/TeK=\S2sRYE$Y'3lM=!JQ6%$:$1Xqg'9m.THK\[H:rhGbhJ7@,
-Q^it(`X]m4k=$3?`q;Gh0UkVN#HlqBW2ofDcf&hZ'Y93BPAgE6rL*aDi$T%Jhn+s at n:1.F<maW=4hYm;J90&6f*tNZS,:X_
-=^icPBIYJZSpN0gnH3#<(o;f[?"NVDrC1q\l6&5#EI]XtF+p2mSa%@/Y`Up"@<Yr#^tdN>R0tN?KA%_N$a"b)H?k=A!, at lk
-DBOh(BYa+'X+`QmddbhNT`\=ge=`s51J$U^WL+A`0Q's[<%>anUK'km,((+$d#AcnCl4HXl$^f at jDmFl`^j at m0XDk[9aImO
-`hP92^F[&`LP5t$Jh.2VeAh?UVC+4ddcSH;G@/#@ONX1!3#o+AAeO.?@lXp2PJ&I3XP5u[i;<7gqo?=TQ_,EQggURs##B:/
-@#$/tVJ`dr<oVZbJ0)s5$]69Ro%-[Bdt$.FdS)1a4io5+\g[31FAqgYHAo!i+]ZV0;-9@"oMs]pklGsHquol!R@'sW[cK/N
-ht=gP%9eL:6kdKmf+eP,1QUW==Ef:<LmAUNPqsfG(8uriR]?A62tWfNLk))SZ52I:jhlHi$Y^.IptPs(V1'n\QlQW\e]>Of
-\4X1jm)k#(]9AI7rNc=tDqsZr[q?p%m<J923`(*"`Gm,s"6jVI-FVio/,F\3iG`T=H75tO$:F#.2K]7WjjNjFr^jE#YZMt%
-K=+Q#nFTA7bAKp+%Ci$sjKg0J9d,@%[M<hV$/m5BB at 9p%e9J&GSZH`sS=47ihNrfio at mn;2h6 at 7Q[::;Zi*\-WLKclL$I%?
-NK)1bR"]kO7A%Ztk4I/N;GBeteS'8)R$J7i1"0?Z#b"gK^kUnbRAP%!Z'erUm'L8gA=+o+bX:n$;ruC$.%m,,d^(8Q+fc>]
-phA$/P\o]^eOr`k8k_Co=G:l3(A135W8,nH6h`&4A%U4;fC!h;%FeC(5hd<)eLp=&/mEQi[eJZkqjaZs.JQ at dJ/aVOKXjCt
-J1+[;@iZ'"#,4K_MDPud(M)lj:N3&?\n$Gb@^F-Do[<>2889)Bo1('@^Fj=Rk_d:Z^3:[2f#;E5AfA84U"XhXX:9!*\bfaf
-n!IjBS.mam,mEM19)^fkrD'Y4>!jB7OTtZ)d!kuH`[*3Q":(%ffG)alBf:+abs#&2VFX]a'6QF:H<..pe%)QHa!q`DN%nQf
-plma-YY'Bo/^l?`Tl?Cs9hRUQ,f&oQHm4$BXCK,ECC#!#!i0,,3V1V2b.r7"a6"Ci).s,;;tCO6I%QIKNJDE!Qa=YDl<B=\
-)0#`4_s0/o\jF]X6e^uoLVpCRi"Tk\34N^!W>QF^.<='?f&bqK/Rt7X":M0A9ou3UrK11MI*?a3]!L at Gn!#fIs1FP:o<pj\
-8sQH2XT at n5$DNIdXnml(SJeh/V6(QG#ZkOCM=gqM?hA"*Q2(;]A,U]dKQbC]A5C*'e*DanKVAFFHF,l^Y"ol\8c(/miG:u*
-1mtBX\?P<]dCGFB2]h-6IWEZ'<V)aZ/nVM\:MbI3Q'.#4WV]NF\=trSk,;R(i<GiGdKfJF[-W^760jreD]4Cn5)7$ro2\9j
-^pn=`PY#Dg1 at s_CC'_9n:)+fcU&j!jFnM=J\='Z)(8&j#!;aeWWMq,;&&Nd]\qm-=V&TucX+q/d?sul",jds8E'M%e'L?UP
-X#`f#+Q.KR"fRG+%^=KW?[_#UHDX3"ODo)DDV80dHVee[qj?5,+>)lg(f,%iI`LVK(O%KhB00;JRK[&ES'PLYl8U_01mCbn
-.RDJS4[V=Hhr*GlQd4m-gn]g&nuP4UV,]SQPuKfEgf1qu^?=sW*#O#8-rAY9.aoh,3<%cSd at c:?pJ_$k;'BrS%j/;b;?Rr7
-g9s'/auGNX2b*E4[2K%RgI<Q9gan\O#CjUj/34$O%AmUgTi-Jg6C=f[NlVbY.MGB#jNPO:b+Z[Fj[P%+m!@I[Da+/T\".UK
-VaiB9$?L`OVo<jE2d]TG'd#s8JRC=qJ:8;Y3#o+-W\QA)Y-+75MkUpoh^!=rQp8ETBeB89.?KJaY/ak`MmRs3g-FkU7%IcV
-Z::%O/4:1Fh`<VrpnX%Z7(K6W8A#p2YVbGYOG]d3roB`g/$6:!5F@<s1YRA)@ehJY83>Mb<8*sEYlhfdT(uSFRlu4fQ<unm
-,2Q'cQ:nVfqp;`XEM`sGrM]F4C>Ch[T#t6CgV8oZq1T<OC2j)P*X@*;.2ca1A!-sZG&D-)S;PW/$r(os,/o=r"\pk8l at kr.
-OKKG>1G(1n&Df(Q=f'XVC4"N;D^X=u$q8cVI-"as)uQLC%uZ&k]=dUD\"A&k*[fg/NEh]">+Y-QpDP+^DatjR,t=j&mZa$k
-dI"3Y9D;qW%YnQ3:jM<h9iTLV,lD<i5,J^:p5!:`W?;YiMeOT)S3<.n%S(M, at -@9$qOg+86D`4u;--43B\6W3>E:,+A-LtU
-4,%KeGH*T<==1RBmECG]QiQB5H!$nL,XDH.=Seq!;WAKDBi_>n;d3hSUXR50)>$VoZa;[e'+b$XO(Zd'`Z$&K([7hho&T4\
-=;#K_S0t#,="1c"Ku<(3 at M;@)b-7&3BbVj>6?[>7:M5u$1;_0),-JoF>\[OGDW&5(KZ+=p5q//NHGV\_!d%9_J)6D,_;p28
-0%[!tB]^ZaNu.n(%D>8j=Q32GJKOT!?/L68!g*uC`ajWi/)2&VaEsM'o5;TS^[P`W1'cJ+$e`7$ih,KsCIlibrh:0E`%=JC
-:lcTqCrnCpaW>IUqfUKKE6K(EbpHEX'gZ5r>Y8><?jqdY\,:N*"2Im8rn^Z<Q7W^i3urBZ^CICg[*LV1kaU^YooLXBd<LIL
-.((K`W/h8jW3i7#S at 7-Ne*3K/*r8ksS,#fP924UH>%M%%<r>'V"kAmHTjc<>KmC,GH4BEC[(R#Q6'VO7s(I/3&>'d0n9h=Q
-&DBPM>mI9F_E8AuSeY]f=-Rsk#t=u[Zo4Y4YH(fsncV$kkYJ[%/485k$E(4!9MqZ\UGOagKGb<C>!EFEPsTj%9@%6ncR3PK
-k`UC1$M=OH&L'')D0nZ8Ba!XQG_0*,-oXr at XCc087J;$D2Bh]rH/beog_\]b^?3-/l&iYDEX1L[P4LXN!3Q=u,nI%$q<j1D
-9I/*8Jd&]Q*\uJagu`Rf=;KUIWjfWdAOnj%Y@"s(rAQobb:.XrMe/f8c;&'e,C45',$L,UJ9bUfVS@<kCQ31k=L7TRf4>o+
-@]1eF+Ksd)J`W,.!mF9>DF at -#:`aW`;R7'mR3i8=Z-jPjd-[%!&&49u#/TXX6P.qHW!_M*W"=laSKrGi`mnhQDD["1)X?C=
-Voai\\Bsb.qLoX^p[?G4f-1+lY7KqWM"E at u[pou$l8QH)AZSQMk=Jc$i='"`AlhTd.O,tF,X4MP6^J:)lYpS#\M3!Q>Yk.C
-+d<(dcZE07X@<V/$-ZM!A2m0.85`&\ku[M"#S5"@5-cj*^EY66_$]*QR&T9-&][3**4JY#aofm9D0R#NeL'h:ifENh7*<J]
-EEdJ/Rub<->C,745B&FWQW%tuAfF,TUppub6<3Q$N#iI:Vl)e+o+5C5QY6iN>)@_,FZ:AI!kjk;5P`n.;tjg\^AQbF=Q[Bn
-A8:$M+hXO5]sdg(2_%Ac0`/23=499\FSlV=>n)(hn`tU&3RU\tq6Mqc._"$a`B&pCEgoPq^[a9%3Q0'C9o'%^@34Qke!?GA
-7<Xas%Y at YRY?4t+)7OA!3Rra+2V"0E]4KYe$Vl5=^6MEBB;be0CKtnJF?OUDm!=0a?@"YZq.ZsEoG]Ap'KS>k4-3@#^8%$U
-M]rE08JV1tcaqQ%ZES,*dLX\M;sW7$:i51V8kY>hK:mtc0;.K`X]er*eM)Ta+91=2,nhE1QjEK&aGNMYF7W33dO7M8FXWl*
-Kb;)bLfGL6np9"E]gaO_h1jMGZ-,koO;a<3Pb%5cg^UlfE$GShL_hX,MoSGW!&#'lE\?6Nfh*G>X-a+P'>2:L>8h8Q+EEAl
-g=0$8c,`?PqWi)[Ad`pe%f,]$fnm2aWW2:%Y-SrC_b[6((DI#"!$V`q58HJbGQWh"riU-j[*=)9/k#L\E.CYLlncaXioI7i
-_TXOX^L`R6Q3[G/LMgi?Y\iB$J&/m1Vn!?EDR\=BjMQ]:m6=7Mdu3?Ne?*S'pgQEY"t at 0Q]CLVIYH"-paW*9mXj:JL[)1m@
-,=q9B&j10\]U,8LXH.k at Mk0n?k78Zm<'Z[&%$Q7/#s9)_##lEOfA8`"[4"c6L4p?rHL6>3U0cJIa&!JV/M*P%)H/7!Nb&S3
-F?+EKj7A"RR"XUCNA?;']6Z.H!gG9;A<jK(8g0;t.48f<Bi?4S2Yr)kk/[lMOMD+4NW[!nL3Q5+DQOd/1"-\fPN7osA*SKW
-Q(i]@"Th^]k9"_)g&$,fGV^!5Z16`BrYtZ?MpI\X`tonsJo6e9khQ-ia.bR2V'S]BHj\'Uaj!+N<ha)MZd&RkN_KP'h>!NU
-IjQ_8ID>Q0qm.An4kfcYq1%ssnc;:1ZMo;*%cQ:lDLm\4MXL5s*!j-TC<YfR3urAo[D"tVQ6;/96!N.`Am"b^'mD_5JQ+*;
-G)$s>14AB:Ya1=$,VJn_4%T\#GqPM;SRSrM>h,$F=tDj0g5s,-:dH*A+?6H=8T_ItH8<ZI<iH=bCSPo8)/IQ5coEk4[M&k=
-3e9=P=9fXb[.F]ik-r[@V,'=T&HdFK_<aZ&0_$AnO.Y=AO%CIV"Pt$T>O34MAk8,:B?1`anb?gi*noA1<Yr+mDCV8PGT'?j
-.ELDA][A?E!0D/M&8::i#:S+9ec+I]U''UZGc[:DC=-O;X.Os?P>/9m%VBUp+Ic$_0dR10Td,Xl5UR'[/:fbRDIKF,_$uk?
-r80,:U?o`,mW&6O06Y2B:4,5nJRisPc<XlET(`]LiM^PeY_?_/At\Q?AF;k/'W"lf-S7eQ?I+1GmM]E4B(Bua;cn?sdf>/5
-PCR#g`Fgr3VcOUkH:5pSr%[^GLb"i;_UZl8([U>.U++/_KXDZ=J6DV$Dlq8\P*^Uo,HosAfi?cIGu_UsXrkT00Lqt<g22jP
-1KX6B at YRB9c=0<Bo+_Sb^a?BnAS/?,;2.t)nK(DiVl)DCdPEJZLpe@]<\8)/KV9A>pAea*WO"GJB;\o;2lM&#&\BF5OX%*H
-Us6sI@*?NP6(;1B5`_2drk\n"3j=nl1p]K9(&/>8!,B>mn?S9?ri,762#Zcm(F6iT\Spuhkt`S>%:Pg)XuWVbF'.n9G8u!R
-)utfkh1hk$b at _J0Z5a:T1OM4--.;S+#>)0dW&(`#5mqZa;/k1>!"VL9Jhi+mWI'VBCF-d[4mPT<@cn=58CeF9'>;K8N;aA5
-#.$tG$*Ue_*1<iqj4Rj@>=CK_o.ekElc+mPDJJ]EoQJ\V7'F/_782q+&*'je0mQIp\LPjJ(R_DuQ8nq`;:MeI%YpfDA-pQu
-Z\><8#\o_lAm#^T!@6):q1CUKD'/g(q+36HnH>n:-SKDro22&9?t'A_hljBPLT7Sa->UFqI at A8Mr14[;S)CCc;k56MN&%r*
-*=VDQOK9PUP4GTKe+WI_%!be8K/&EJ\@=oA>1;a at YTUV5lW#hA\EP[4:Jjn5Wc]HTV5>;AlBiXY:ESQns6#(IdS-=+6j#CW
-e1hD1Ela)kCBmu1YF at JaG)e8oNr,qY$;Y4Ga6>b^4L"c*\3`&Dc0G>L1\?.%EVqo?Wi=]7A-hC&97!$p$0VDPb(J!6hmL`p
-4I]WFIJt`Oq/o++SjHg6b$01+lHU`G$R^8X*dY<WQMR[E>p;2gEcZcT@[rEdC2+sK$dEP:nf/=*@<p&nDqsX)Y?G0r<rrki
-s.=a\;8FK\ei?m>b09[WNGZSqVbnK(l8Ua4"BkSDe)>9<#A<D='qd\%RRNiEYR5VSFTHLbSq#6P"&DmL5M:S#<'t%$Ud9f6
-F:gpKd3-S<+lN8DJp9r>W2=\f',FX5NOQ=Rh6#@FpYb%s_LT3f5fL*HR/!,H85Ens,Qef'9i"uuQds<h#fq[5/'FgPs/NPX
-Y%.a^Q%1FYGmJ!O.]bne!t$8froaB3AA at pUf*;0?1D9Y3L*&QA`9/60q3479nReODHpHugTXmnEYl\iCFkLD5=A6[e6>#@2
-'l,dXU<E*#+;Pr;KhNZ<I1jee'L%Oijln7^VG8g>A(+,1/`1UQZK#I_^bI/??nClqQ-5GpjIoNpIF=b1/^O4OfDr at E9_K@_
-ak8A!^csR8hYEl"hKI=!I#j3"_Q#g39Dh[i9TW!DoD,QN:#oZIS>38cfs8Xt,lgBTm>R&8),KDq%`]oH0'#Uc9[/FrfrOk2
-LU3U8XDn9>I\_mS*e]c.(G&c5`!+$@^Nrek"ErK/pMANGeO(l<@c(c at M`(tVNug6bA$LA<LHG,p;3-am+pe!D-B$\c)sat;
-:a>d.pnSds9)d<Y%?V#<+*&iW>QWKE>#/6h'f$?M\sJdT1YACB,ZmFFN4"gR*@-3]7M"pt#I>L:W&^Sgg4+HbHB/$uQ7fG9
-(G$?kbE*#aF+`:M1c-dM2/g75">'iPHag]Q<JuF+jWT\u?[iFSJ_34f*Xs3aK<LTTE^FWT*dbRI\E^adFY;c!^<bk7#2(&r
-XG4M[GT9D4$EcsS@<A/#>%''M9l!h^gM`DIW,<+or3q!GSnE]5^8Ph?N at QA`^g*=foS^.^G1G>B^4e#PP4KsZ#T8dA+[p>N
-]n#auij4=OX>#2:@V9p3P?c[d'#^%^Wl1'f;t]FC_r6t/=H_$Hb:i+6'oc6ep+mEq8qJ'IJ(F(F#Cn*"DqE!6EAUPr00[K\
-jZ$Sp_rU3fXf;`#%]?@1f$WLF-EI%"ep9US^2![;p!;]n+dYCFM=&UaL8jObjFKd:mB21U1qo\p%`d2oKHLIf1\n`-YipSU
-)/BTq1mY6^/TQfQ-fG/(dtZ$N4hK8:ZO<SRImGPOrq75d.:@JXn3>cnrO:NAqX^a8j$W"(O_$4P9p8WGW2%894IeKlquelD
-HSZZ?f&Z<dS>)G5[cp-kP6QfMih*01RM at uGrfA#>M2kSV(H,O>"i])K%cFQd;I,As`U5,/"EIM13LCZ['R8:m`t%gXKX_oU
-3"aQKfZF5t)kgo7e1+%E;L6DV4i_G!.t;HDhlPQlfYa^K6b</$pqH;*N0l^>Et/I=Lp[<&gJ9Y?VdllXbPQ55lQ^VdmA*rG
-6boQLFrnl7gt&:?,qGZJqA0ql/t0\JP&]0phn-eb&6hLQ>kfRs&:b2nkp3k8-P,`N!7Zh"p+pL2o$_A9U&[u.0q%4RWq&,L
-=!8OeDdCnK$+aH"F8bNC6dSi5`'I5+DHu:0OA96>jMO7irE#5":e!4?Ra.8VNcKZg at +;).OaN=Z8A,3]R^)-Lf(BD!\rp92
-[@I;nbK]=LrYe"NN'.0u]8m%ZhnMDQa1HU=`p)s[1B!c7VUl:*-i\9!:B:5EgcdB=1XqF[mgBNhbT#?6o.&^m-+b_<kh[4=
-U[mq7rd$6[nIAO##faB&?9+8[=!1]+,XLPsau(E1"-F:l+!HB5/5)jq"LqI`.iAVZ#cp9P,F7\2p%cK9UB^1?XrsZG713F"
--f-6K)(.[o;GCh;]8Q>_MuCX5rU965aDf*S88Vm4IFJg%1HlhbrG._g=Z#_Gh9/cKCC"09VT4]e?V=(C7Wn7Ams=/PDWAY\
-La*5!BOSn?P#>V,A-HU!o+8$uEM!!o*"L$5&.'[@9__Ts705n)f;u,MD2dO?MT)DD\-5FN:Tp6\nj!(k<Q55Y[$M5+rD3[*
-g0t[Jm[c#]n,>3k<0X)F:!F"WGMImU6SUE9MQaBHVMP1o2,P6HTG)1\_RR#>0:[=1A?8W3qZK=rpfb)Q%OXqUcWmp<[:$/[
-U<".Cck6ncmWmjNBBN&T]@B.'b;#RPs'q,S[<)?5/^+QNr=m]\qFO2kpa!J%3dR0\`qaj!OH"*+?`IEb>UV:ZG[1a<6p*F;
-1 at 3[V,Qk8ZCP5CeME]_mW2mC5G*Sm-$>GW+2t[!uLL$l`"gQO'7 at YWJ*;]"g,+h[P8Lgq\O;02'!i/UPcOcm at G2A?5YiRUi
-`mAA!<tNHH<A%II.R5m=Zga'P,HR+e3[/ZOD/R0.Gr>B)7:E$5.UI]W#bA(@"1f:Hkd%pch#[u1aS,GBYalO=_LRql2I9f#
-:%i;<ElcL:1M)@%FUF<^UCmr*jD(8#.N)CZrVIl(+0*@PRCF(#:\pU5Niece;?`EiR)H=tQeu.*(3iinY.L</ltB1L6TTY)
-_tr3H`hH`IQ8'u9,[k>mU7%Fu(cnVLq1^K\Mk?s-#YjYOacQscHt!)Qij:BYbmaXE?c*,ON_?O4NdSg=qZ>k-/CZ:-*17k!
-k5 at ur7/Xr.m-rp3aK+GDHl7?'*8nTe^^'f&8R4!b4%`TB/q'1SY#+c[B'>@5r3pT;:G2AVI4ROq;MP)V)\Y1?7,sKB(Pb4*
-1>N.*rFRRB$E,hKjCOJ(mUPtd8r[K6`b`Bi9mE%8jT7EH0X-d^MR8t?3LYb*=aEBRlTW1E at f<5giW#KfO&*bX\)`kJ;3(2'
-B,IJ<pB.`R>9.QQ#94*m-"NcBVa^5+_?$t&dF[Z2j&kA&2P(`T[;)ITH2il9]^Imj"`st%NKF;GZ?JQ9-d/Zp3?)7/eDYY)
-_h=huSnUds_Q735P3GJkhTKBjPGfjU+15R>rAD93J.9D=o11,(i9OWAk$K1h7N+Q=K*W5up6BhI3/R!Zl_G/u6aEFnMB00T
-\%(D\+pLto+nm`nWljY=4D<\uN&FmtfUMB/OGm>nR?4%7D7sZu5_Ufa!H^XqeS;s.N/YJA*niJli[ZG%JIm2CW^J36ojK.k
-8-9EEXKiH0(@Sec"SIdF?ShYQIrG1ulj_8 at edG#:TR*pZMIJ.mONJ]H*pbab1UZ9UPZ%r"\O(L-#]+[=(*=+bSWKO(JF^Ir
-;1Yl?aZHX(B+ZcoJpMsX\?JT3dt8BO"@1"qI52eoVDE"6Wc^\#BaYe!EcnNL0`U(SZ&W=\A$:ZG@&q2Z]#.CsTRN-18i;V(
->C+0cq6ZDQa<u=pI!AbE;rs95Lf35W$tfAH7pSjfUqrC+CrPFG"c]+5r>R72?c&g7$ta@`p4rD3^D<CQr0'Kg[QRBuBrf.S
-`!SnSBnfi53#j`)hb>^4,T/[AF=Y)oEHr\1G at j:YDXR8fB6AaQ0rQ&_l_h7(;FZ399C2oQ#1N+<#k0M?GXFC?7Ss[-Eko6u
-?-o!?kIVS>6UtkA<$LSs1Z.3sUW7Mhk]]VRC78d[.^PR7?o:;">TC,mbUlW>f:+&OoV)MBF/h/t#/q;Y;=9LJeT%9PobXqP
-Fj-bVUicE_16D$fp8P%p#>7tGT[jk=A:>0^_uUE*qJWiUCY/'Uc_!BFRnj4B&GBTObZOIr/+'SqIB%Tm9D1msRCPajeHf1"
-p+Pk*h53qHYV44M,dGs3"Wo34_)>*B)DYBJ-Z"4`Q,?Z!#2TG\RRu_Z8-2C]BMK[`L7Li?7j`?P4fQ-0pu?R]>tjGEAHfS6
-#rK^Y_^Xqh`!Vitg7?:@p!T-CbifW%2^[,=^oRUr.7,)N^:\M`nW+L=C8aJN#S]2%oC3uHkh/X)*=H:VMd,Q8-Zd;cS)/K$
-%3mS7\huN5%0E/lX-oMG2i_VT1YeP=iKtK60'F<dG at Ki$XfL]N:V[D=nUk(-R"YB%hJERMO''V-A\uBH+%WgWYVuIHQ7DE(
-e2N3!@rZVbrfkr4r8+RAf/FFjGG>NNLuTU1hn]Y<RG$haAq'Mq.`t4Ze*7u'VsJ6A[m]rTc3Pbn#F!s9Ne:8o?Vdi8M[2o;
-Q=F:.Jh?c/I"c0a3,e+$`g&a:\&d-tB.?4=(2<g;?70<;+-l)a*2'H<^7:'.N(Q>4X/Z%+S[:E+DZHg_)1UfZct$)3P$=?g
-0GNc6JVOB1*V2GB%Y2PmL1-dqrd5`k,i9_(<H?hJ#VB2H3EJi[L%N?[!/3.YD3qB`Wr'2(n,1OL>G>Xb?QsSlkW5bJHA*Yl
-(2(EN8pDdi6^:7"IlscAMaqL8I(=&K@[!pFX"+X`oN.H?;mMTR6f/n)r#fNd_lPt4cI`V0;g_M:c=)^Y9)h!c<o[:U_>Y,<
-)pjf9nIdo'NrI*8SfthdO?f)l[qd$[*Ld5ZcPL-PJ4.O'*STelb88nm^b99.=U5HklE)OD57cTZib7I-DA(/]7A=,SOH:[)
-O at DE$s!qG*eRL/tiZZK-LL%)@M??!ibo&%3+7WADqa&^ZXeN at pPs4Lc[+.DO=^J+m#Jse<U8LOjD122EK at o3aS@<QNGMQ\5
-!RW1?/ZEWOO'S2;H$M<]G#$VH088747qu_T,V5%Hf2?Zf<C:e/p[N&L*K#`Abt22I-i"M(\MS3Y*I3oqR%'tB>'d;9_e/+[
-BYfX-.pbm,lBpYp\rjISH at eQZ9^4k.C6q&m.7Po0+;DuY!#_Dd.sS8Qp4tTD#HbGX at 1-R"]%QM[5<0c.NXNN4c+_PD;Ec-_
-g#p(q[SX$F#!!3P4tNg&B-Y"lW5D_86)-^]rL8k_ at E5.HOU\N;C,e:g>:D-`5L`BBXN8HH_d/;9T$76%Q<gon'6ihim.J4X
-D<E at F#Nm8N[GTa*E&bF]hT+H4]7)b@'ufoN?L:,l+V,,2N#=]#RbUg$V5P6DD)<A&7)76<&O=ZY at F=4oRD`K/e^+S"*G`IX
-_]B&@bg]I at .:nae6X'8:pKU#!86L(TaO`c3gSWY_VESBnk*$*a81`cmcg]ks,[^S:p`FP;`fDM>!-G&;?(.J!$R'LEj3Y7!
-^7t/G[k_Coe*DbKjl.T]V\C:JD0G<!eC_56GD1=`dAu&[l%r$_:s/m*p)r]Jc&8fYq/L@$iQ9-C=M`dY&qre;K$#-)/K,S5
-0V29J<<NOn3WVS<^Z\1@\OT\<F8-Y`3-K9=mg9L\+=U'-FR0_HJILMk.UII8QXckkAB\4&&hESq6auZSZsYnLSVaF+%GF$B
-%OeIC+6jL1>tg^QaUA4CGYA`a+nZj7"fRFF3lcVQXS<O3r==U?5W6BMA!UFdIA[#OgDSV&bimpR5aS"9NHpPU.[-:Imqm5-
-*:9DcCTG at UUmI<P<VGs'1-ehd>H5#$i7,&',b[bRClabDdPGcl!&/od>V9;=[QKelH2Y>MR\@29S68Ua"#r>t]jN<7<c'N9
-+ob7BDnBfpWl4D!RP)!7]r#PI>)&;7nuu"7\ga`KDEWmFb4D`&f?EWf77'AV+ouIm6etg at a[=886-pOm9T]'(8!4La"5gdE
-Hhtl99F9_]d at 4S0ZIsD8XMH8*764nI,A8p:OL:'1!qQo9/352rbVY')fXc6.rQM\\<,T,4C12$E2-nI##.\Ro(IcBZL9)6H
-ku`_M3g*p5_jr,a'!I<cacR:dpe^h6ASPS5%r(=17F9Co=W5)@Gk8F["$^LiV;eXo4UdVn+-TR*36i\BcQYQ!$Oq8cTc87K
-qSG/McT(YU((fZ#'gpPB;j`&"mWT&4Z:a::q0s]6_W&fj&!Hh/XPes:kE>WOn"Qt=**K96KXmoJ.Nsndec995YcW)`\(T_Z
-<59));*%'B&WU5'`FnIO$^kTH>?a:b0"rHNM^4c"g)p.(.UCS9pYqCJ]3Mt*&W&p35cp<#rI#-JVG3E.m/=,rVJ9ukCaBWm
-7eNu.R at t3P5B@!hlCoqI)-$sgZF+OO0OECQaj#AM*_0'<`c=L>jf'%tQ49k!4L<Ku<GH5;,)Z1A2R6ql"b2,;]d;i(Hu[1F
-JKf52,j-h5;kgEE3uH/:*P`QPb\X5p_KR4p6A0bL%S/]Gm,o<X7[L0S6>XN&TXTZ2,#;Hq+QHYR[VX,85VlCZ'QcD&?jPjn
-lujrr0i$.V6\j2.2]"o&j`Y;QEGRei9KuZ]3'iKrp)QDXY6h^kKK*8?G9NSoImDk2$[LeVj.a at b"s)$#XFf^Jj=Rj6@:Zf)
-HOH82_%<hLBs\IJ1UkUQEC-f[Hsn@^([<]7,f2h#J&e=f at 55aYRNQBWf42#AmJ%WbXiYmH3Dq]$Nhk_4^!.%BUB68Rgd(<K
-BBbVG+^MG<.ofZ$q!N_nN<I&h85qt:qGIQp,KJ"AM at Mud)p>8A3k(noZ.HFGrDWRcpGII]hLgZU#lHkY1MLFi?)pr3_?_qU
--kR:[E/1GNaoj8M"u,hX&[6F9lI3=J?FaXL="[p1mpKtoPLTar>@_WOX>Ti.XpRqJIl7BT<ri]^8A2;X8!IWEC"6/,i`ZV2
-RkJ';jHCK,#V$6G!@*kgKqPh"1LWC[HB720M8LW4n0Bb5Fo*ssi^)ZLD'1^dog+8r):dJm0>c<7l/]t2maaTSRT;+`S"mE5
-F[knR>K&$8#HgPY5Q+0gDfb[l=\(N/ae8<bUgle'[Tga?)kmRo-dS`SNR at kk7A*t0S_c,2gFg+\D#^A-O2=GG:1LUB.O6Be
-C3E*J<N-j&)]ZC:&q>MY]l at P(bWrU#lq4.b[4u4/?oLOl(N4Wg2$9#V]#.BHe*hCJ,e19EngaKi7Us8H.6nl5bnfr+dMmrS
-AD82O'aonI5$olU>a<k)Y1,M/Tti*`ABbGpNB&OO^X+K&g)iL>Po(_r\Q1slA1CS]+X6WN]jaY42Ad?eY-_T;c:3pr"X?F-
-BX-Na1Bs+UR?LZF1C-,Vnq5S62OJ*RNpV(tg/+lj`4.;)p1lNC+2F2I-\hj?)=GA5G`cO`R=`f at 6Ig0ei^*%[mn:sd-/SNJ
-$+8\jfr=g]G$HF52`_nJkCpGMC0%l+ejIep"0Nl"?ig.#>.V"8Lb!9%RVj"9S+QniN7. at .*U%(u^+qEiPmMLZm5?Q&Y%u?V
-c*]5_D6A`2$4;^1le;Fq`^FAd(*ljSQ(d'KlJ-Ajg2_>;YT$UJIcsJLB&k5KZDF%ALASiq8uj*XSj7ZoZ]!^/;;?Qii-W;h
-KI=N.q(O2Vl,*jLUT!Kp`7('2l?5]eRL#qNg@=BBLJYfb-iX<1`a\!?&gLJ.,Tnls:(0f;G($G73OAZ]=8.'2*=`<!'-i4+
-s*.=2 at .*n\/e.l"@4HiuY15)h9]\ssMO?:qL*nunKc)XkE5U7$O]?3PI#A@:=tk7>Ms*+7']4'?^V6gD6JgiCPlPK!XV[;c
-NTjP6B?R*lj9mfu,-GWZ9%iLVYA21hK%\jC=cHIK;`MMG'q7Q=^K+*<iu9RBUSK(Z)t8u226gTF:1_!u,So[HBUZ at rCe3-W
-F%#&?\%M`1brmb_*>OIsa->*WcSHN*e3-h;pm0,>c&f,gC$qK&K)m5Genc)9mR,LR!;(iN75=opb%Vf9i.oY'PqA%gX#e0\
-P5e#?rM8_spsrF?&tX6USa^":`I&mbF<6ZYn.4Tk^-F%Jo&'5i:I7bd at W;FINpuN`RZK`0nSI1KfqRTJ.a8U8 at Fo9dUER$N
-4!ulh-'B-W/@_i;)6bIb.74-&r_>sj9DoiroasS\<+mgH>K3HR]29M)-P'*Zq8'c?p`&G_oYe5W`9%1&R<Uji/VOfN;XSXo
-kJlW^hID>Y_183 at OQ+>RPq)->4tlJG]\8H029VO#PQ7n+DDab=]'5Ph)ON43JB]Zf33j/e%S4Gmko'm+2=V%&T3+?8Zrq;H
-;3 at nJ=/30I;gE8hNslp5>?`l0ef&/*`bVQA(,*q0lYac!TNP0ka+?h'^F,L&MG-K_S6Ff]86Rg5Yge&NYYa/MhCDUB[HT[M
-ZXNN^l_.h2&>35t<lA4`Z-h"L2Nf8e+X^4VG4gMR7QXI.R9Rd9*HRfa\kaCtda0YY%^']glBQ)gNDIU`FNh.me+:\Sd-"kX
-,q`Iu`QlR&LE4M>=B]_cDG&STid"@ShU5ZCb$?jk`<f5R6;(kq&m8+&JPab5(bp#;N%(C(1`Q9ff$63ahI+SX&(GDm5WY5c
-8J[pY*:brW`*X3jZ4nKPg*b>DF_m=f#W9SO6SaH/&@s`r*l9mlRnGtkp[0EaUs;?q&'&?s`eqs%1E5"=pms!h]M38k!=2C<
-/3*XMF1Z,N1'^K#/n0!I'N8RY(Z?+I.OAhKEEh6$LVqLG[GZ/OOk?&n=tMi=995jBY?=:O805F_\HQ!.3bXoV@)P<!FJ:>/
-i)Q'I`uoJ]a=`j/#TmuV:4O&+;TgG_n;Jsor2VF%=fU*=:hk"'@->"6@=&]b<LPlfRg=)coif,^6uJ1XDN0n=]RuV]l(YDT
-!d&qN(:[Lp;L*651m4KbF6E[`?Q5=;Wi`48#hZ:HZ?h;$Y#^:mMqPYNrBO'C&!gqfNPQPE(J7X%7Qs";U/&9h5lMMp5BMG:
-2s(c-Q>OXIT%a/A2t at AI3I2hKM#/R-&\%pFY`JDkFC65-;\f(H0Vscl$qj'jqHe-sg8_\]r at bJd&E1"JgTf^pX#=cV;'7's
-2=e9ng(br%9t_P*CcJ^+aU+JcLOqX55kNj at 53tl_/fJmOI,\OZibF9uN506KR?j[ak\5sZLUcFYKHp[0&K65*q*oehk3t7s
-39=2o)3>LEp,MRh0$'\d_`1]q',0$[IFmk2oX/.k>XU_^oW^LRR)N^c!K00^(O_3RNmpSY>GL*5qLP.14RqPs5B&D!5ic at _
-j)<S&aMst9g"r at ep\HojDfhq;<jS<;qT0n2'da87Q0m0SkupHZ;6m/H/BtGf:F*$7)4SddnZ&Q=em^0Ze&olOA95u[V=_BV
-<u*8eUZG^@g2Q,Iq;Q<?8]AYPZ2a]MaUOP7n_d#T7cA'e*H#`jSO=b?ffN0g1@<t.ehef at o&s7#BTcW*AK;iDB+_+H_fRCN
-8ZIHebHQEH7Ltr?k"q=c@?X8I;j%4dd4eM.BlqEIb+Q&J=7#s<+\=_10GM3e.nX!We?R+I4B)Ge&o?`CdXcAJZu7junY.W!
-:ajI<,U5bK/fN,gX?Ht#SKi>Iol=m`"aj:s1RD4CW<2'PR03%CO?fMa>eo;0'^fa)^V/D=par&#n$f/+m4b,tgb-R3&(1eX
-3e,:_'rPSUbZ-lW6d#KR0iEfCHl^r]_-)@\P)khY^8,`6XkN%'CXnNE(LQ&`-L)B.0ljG]Pa^=B'2Kug1K#RMk2sTQAde9K
-hr"I&LA5Pq]*&S[S)/LO49Asq(SJpCUarAkA3R"8K5BW/F>.VK+Kp<s@(M/m_Y-K+rRR0MVLS-3*Eb]&rm"G[j/_NfC:;`l
-qn:bp`u>i]I3nm-n9!IuJBNgV?kulc0:esO at guVd8uVsHRg4^5YLnPi1pJ/s,sd@/\!B\C+g^k,-8FT>i4TQi>`S&m+.F)j
-4;#N`9T>%8\p,YkeJ_Ig>SZFpeOY4T>.ZS0JE4UQ1,6`7O2]p+b]uGFNfAJ!qA-FaVKZI2Rd^T7E\-4ko7PMS%o.i`Cq:/c
-aAf:>rD.N-lq]uE)a4;s$\)XV#UPQh!*-Z&:t^RABqfj5c0@`W($(356C!"=/m4MjZlsCF\p_PD&hXb#%Eql&4fK(hfSM.n
-DENE_JfZNn*L*sja, at AEP]E,'\.qAdq2]@'U8`]dkqK)!dA6\\8SQ3V at 7_L1l,]c`VPP1Q6)*)cmO-eG;.X>VJhf260K<NA
-L=3R3]H=_[7%FLu_UI^>p<OH8'>QTFa\]<d.,hn_YeX)FJT5o\-[Agufc[VLkP&9&s-</o=JnFLRgf!2O1pAD!*9-Id%TfY
-n:B+<$UBJ!rqN&BDs.BY=/7I*'4]d.]F*Ta-f78jh%I)_4W at beN2F9QQgOI6IW)m:nV..\Wk at N9=o:'H`@+e,pAUfGkQN;n
-)C at Hr/Zh^QH(2D![rOBB\_4hsd%tbh'c_&E2DM?HJQHlCJEm(WeRJ2S[t]p_Lm;P0Auq"?-imGd@,+rk>1iIHW[1N0V%>(=
-&iNLedX[atKX1i;JFu<ZBh%b at U>@*PB`_p79gUFge#8_ukuF1\i%+2dWSJcZM'^)*<Cn28p""n(3=tcUW%C#bH"hSub"S""
-Z\9[$jt3MV6=%r-HbqATP"2tQ9O!8kJZJIHL.WZ':F[;t##+W-o!0#%hse,f2:EGgB:s%bQVpTL&5@:fk*p=?E[opOc"[4o
-[KU)W at 0O2c*S[g86:MTp6s]6>OU7Wl?Em]*ippLDO'1,P$4pWq6]_>qqnh>k*+V9tT)p(F%QKXO>C)ZV?$gP-?&OFH^AXcN
-4AP0j&>c16)`#>V%f3N8Mq at Lc73B-?p287L`N9XIWpVdaf#PqBIc+fY%>6'pS1>J<FsFO#4%<7A>iS.VCr5L4^;u<5h"Qa*
-hL:7?%0q?[1tH$;MXJ'i^GW&C$?oipY0QNs='GHCZaTG)o/p8+T8ZYuI,8Jcf#B7\Ws(`Z/&VJP*r.1an+G,5]ilX1oT>D9
-7cbY+n<k#Q<+J]HSn_"Vj+Yea?Uj%'gLY2AMO^l/8[m+8h+C>cXF*"XhP at Wc+C!MkegII1&$Bhr\?00)<R9?uoIUTijhqN=
-:(k/aQ]OK10EaIb6"IoRAZF7Jgo15/`#%Z6>rPine07XN%,+Kmi%V2*&NVicRAU1TZg6jY5j]%PW=%)98T(6c*ULTi>)[p&
-Ntnkhd-4(V:3 at o5/9;>/=aHdEZR[kuTt,lOcun7#4QXZo>=$S&2[;6fm'bU3 at V_a)%WNte4IXo!1tApcLD'@^?@SfQ'=ntj
-gji4rMjBjE5Xl]V=iL]g#t#khUl-up@&ot74qG%Oa5\O&nq[7#LNj7`d38 at 6agjJRF6t"rhS`4&2G0P'YFsrpc at 2%&IJA!R
-.W5i>-MNDm+UpL\1eL(W2FW3d_cr\'RI0kT5%`bf8:%'nl6ccUN]._'8tg$Q?%=&'Sm(cGjJNmmn\7YJ/Q3f$klF'MWp)nq
-8.'k"m_FtiYXS"D"?-<):YOAZ9I/>;IFRQk/_[4F[V,`oc(pfi<G$O/%'A3:"$eFBQ#2E5FpDD>N(*HXZf>smF0DsIH#YSr
-<AW4-=q7\=4WEf82`"eD]CNb1m,FY7UNoqr1Ni<3[f3>8b8V0JOM1Z>'lY@?#+`u?E/ir:%>Nu(k^7VQ>c'tH3n.u,Sdi@@
-ohC/.OY2+W`S2H=``?HTpkrm&ZXVbLW,"qj%0cc'D+qG-)-IPeggO[M(F9&_6><Hl+j^k9kW%D"XC%&l'M+-]"5q=H>Vg#O
-IJC3IGTk<,59?Ol3"NY&HmCq4<A;*t'kB[a$`n3k1*=4n3/r"4;m7W/J2rq]ap=\@+a\cY>a%9%?\g-/%e%*nTRZh=BCnd>
-EL6E*8!Jl07$4*Y%UVRZOLPkX0/`_]&dY<P0X6<p5JWtBi^LI"GPumfi^'E`FE5`Y7:4V71!!QOlG*)0>I.BoT'1-0Sq(a]
-6SDD]":UTXRap`F10HE`?"#T9_ei#":IU#fj&\o`BJ+k_!:&jr7T9[pql]8 at L#4$aB2Z/"G4'L-?EIZK>F7Y\WbrVi[XY at V
-&ri:`Io`]!j3].<h4cAU/W=4_f^I4O&7+^MR,10aaW%,"K:C\;iJP3mSqEce[:UR\Z(ZTP:22*sl;X+Y$El;DKjKQWiZOs4
-\/]ZQQMt+6M5AAXCAV3]/(gto\RC'gEB2c"F2J;/;i2S?D+e\rCfmY,SWC;k.JLFoHTc'k;Z6A,d/]uKl<rbcc&HOmGIdKu
-U]_G[._h6C/CVs#Bn'LT(*g.oQUs&V^hWBPBJ.GNbHBRh^"74W:Hh&;h_E9,3d]#60HeJpd4Glo-$Wk-!`GoF>FikFSW1aE
-*0A\X[SXh!EiP+5\3u3,,4/<97[ZA\M*4YIRBEA>]B&l'o3(dR&&%R%[h0)%of,_DhtnXBcsZ9]i_<[\KSu(p2Wk=c9,cLX
-6A/d>O5@]#+fg+]cZ/g=5(>5R1U\@@>TApSjK8L')]I@=KjPC#pbOnC at 4Bfk"_HLIWO.OjX==9CDcT/-$cN6<9u^Mnm>ItJ
-i"PO&6]@TWRr.K4a6V/"FhhUgFW%_U,BUQ@(G"'P4]/_dm+MpTh[LW1ZD!ranm:aK^<LbDk9h]U$)1c*"kWSn[O3[gQMBQU
-<ad at G8hQo(N<Q/R>slFn8T_%n7_*BR$SRTQ9j$;;/d=Oph%!1XKL'4Y:snX+q>?Kj9^0lN at Z0s`RQ>=6BpmZ^6e=T\k/c,5
-Uqq3*qf7SG[FIb"Um4]hj-3d*G4I6%'.tW^9`Nplfi=d>^<6-u=%#03DN-I2EQ_8L=aVca`!U;a_5O5$C1i^.%6Nr1_st5\
-!p`[(F=OSA_hPgljO`W/66-<eS^Rd*9baRBOoSC3iC+jII41?!+eLGP>iQu9kbKdADA2283CV)ZqQTi'2j$kmk(kn5:BpR*
-jL at uM`\`4KP#&gjK=;HoTO2k'juU$mF-9hcG9,(]D3qB`9nK0G0Fd'j:Ys?\@%YcOdat/lQWWoZg\^I7F/aO8/eORPR'@:p
-F#`$,TGN[ts0B!l=(A=0Mkcc[[L*#=fgG=[G6qV8O_`6K>p5dfQe\+u.f\&.M<Lt^e\(1,&&Kg*R\d]-!Aek7[LJr^B_.8a
-QEBjV\pqDG($(RUCQd^NEs:d:UioJe0h#C0/ImE3cc9OR+lHM3kjZ&n7WeF3U;ra*UcG%`d&j`l23OSSHZkTEa3nWuqa_3M
-Wcr=C_5on0>0Tad0pBi'.h^R_5U8CdLhMQbb>-GC at 3puqjJ?#:,:d)L3rASKRH_u-&dccU4:?8He5dn&KX/=Q6WCt/!.W0o
-FAX, at ko*H(9E=WToq/RF3]5[dMm6SOOp&9=ipmr$`[tRa?YpMG%XSq2=W49O,kIln>=hCLRlLr<-^.(E:d^^(qX]j!qMnKl
-,:+iJrG2[I%bF1Xli;(j_/OE3m,D>B=TPB;*frRS,gA!dn8K"&VHbR?ef!Lu4q]3gHe4$jk>D^F3(7?!-gotL6$.WVL"cF!
-GO5"]gWA<=JJqSk9LAq%"AVU+D*S1rMLMbTLt2NNnPiaA>ifdu0%&6H5,eZ6k<ad6`/)>$3t,*AiZ&n`6&74i+D9*d_A+e0
-e&(A>^F!di<=8T*9UrBH%(ShT'=hQ*5=u4t+DQ0:Q3Ak?:ihLl;N[srq5!Td476R1>I1(^9RHL3DVEfH6276nGLoC2bTduU
-aS"a6oU>S]H!#f0kk4C<a$juTdB9R?RRdNA=qW43.!\H!aIu?!&A&J,]W#?u[L(J&WQks#0E*09PdY<^&$^%R1q`C;/h6;Q
- at 2(-*rfsmq3CUhj`(<okSA29F'DH[-#QSoG)bfSJKQaG/'e]XmPnH,^*dU71 at dj].K*&<.+e_K'd2%2tc:&hi;mOfr7[YJb
--g;sUH*ZPFc?!4,&,/&Lmud%5[PcJ5jB79gj at VL+^iC^*k_h>EKaS*eOHE`%]""=Vi5bcgUU%pIGRXa\C^S4M_#.'->^21e
-PHm>:o<=HePnB(!<0Jb:#'WnmhUr5$&uY$nh?RuTkG)D5Z=E6*OQX.CFMroi!3fOXc:7cqcd*/?nE&Jd]7HLrr8Cd>[VYsC
-/N<J&d0FhC[5<.RH(%>/F'G[nekN%BEB&FA5TG-]"Of/0ONT:%hCQpR8kcdg.Di]\:W1R at Km"1-eZ[#G':1AT<Edm0?Fm+m
-;W56^B<<.G>;3bEeR6m/L<lr$iVKu at 1=5dj)-Ydc2Y7fr&L[]Za'H9-oZ6[BW5<0$)Thdo.eZLc&I].G"JWcr8%g6\!q@%X
-90[^-nak+*QUN;s*4T7k/B at 9KVbA?lK\%=T8Sojb8BJ>_>@dN-H)7O0iBpMW0BhVNG?`lHed)rK\*%U=?[RI7W;bD(1[V:o
-rMKRN;%5&TA;\eOl--_,6<r^oA/G7_2R#I'h(H at u]iFsIH[+Wp1d6"Em!UFej]@M.dE_3mDU/jK9]q(=JVXG7@\3PDFT$/2
-gdaDfR"/]p at OECK06B3>@H!S/'M]@6``KfL(Z=n:?Z;f at F,eShc&S:&J^&8SS!$k->ZL'[0U<PI6GaL!VcG8Jdcgcs&(r)`
-!4B).T=c\<235Z7>nImL</MIKr[Fa/,u7mH#`[f;jfJ+5o7,BLA:&`nBg<84S8ES.57=eKUgo$cf-e,R)$QqUn[_4e)-gDV
-Me0,5=]9]HDf)Gm1MI=U9ABk+2c"-;Z+IH;pZ)&g#adrDfZGt`DP[tRpduF`m.doN#/ha_7V`]@o6E(HARS_-+:4NE92j"P
-p]^?7Hf"+dC1S%0k+ at rg&*(.Zpd(.'.kK48I^*e*#73M!D3JQ?:7?KG`65!t=.E$b-c''42(OWHT')D<=rUIKEMZ;tfLj=j
-/42P2p#?:`?TjfOYK`rr%=\?Vb[(En1_llLoQ/mIEk>maks at hg[$4L_bV(hO>Dk^c(O]'&jIIC(D3nb9k=W0-/,&t`*SFbk
-Puthge8lg\'C>H at pCUE`4V:dpF1d%;7FjNaG:WnD!Y"@*X#%+l"'p_c6:ZVN@&k;N?-'MTp60D<H8Ap&("3,%U(+^UGQ#C>
-h>-3nD\,po,_Z0ok2UC8n`XbD-/fCO;T"p?JeK7GGS!80O?YudPJp'Q'o"#5CO0!.^2<=Q+G#)KiOS"9k2ceP).9r6D`I<k
-*nEc91a!0%A*#?*5=-`>$T:i)`Vc&6!)n^&`>.ldr!E<\=t&N'9#r7oG!=h^RthU_?$^ra$0lKB/tnFA$i*4na_I907e.p9
-$a4;^<V#S1H_e]L)n]i`^Cp)>+o`p>nTYVCodES!7buFf4nLDtK#[gWR)HY.HLfsd(YX"1-F(b)#L&ht=V5VS at AItNj4Cr3
-`>saAZL at X>EL(H2,#Js(+iY+n<-?!/Bg7_*Lk`EYa0ic\6eYTu^.!p3TIt&hjJM at QH[ONJXUp122)AYNV at Zh^D.uV3Y$,E8
-U3VBf,mjhpTH9/nQ_35%^e7I95I`rTVgC1G.E:Cb``q##Oi]i>C++pKT`r>]Rj6LG^<Src0.D"km$Tj,p\F"n;T,HX'krI+
-OKC"TN_FIkB4UdU$"Y#1EY6B!HN*=[gk97+FH:Mt]e"++Cb#ns.?SRbTF]\ZJ2f6Gr+3tha"6Ao!W9n]ekcn7G1%sSY]KGD
-GfsiFUl<A)K5aQ7XDB!u$g5s[R7PgskoP-I*_Zc`-q(:pUja!uJ=`G+jY3#V^'l$ZMf+"Y',>XfWLsOMUs81$f@;/*>mnCk
-0nRk7IK>HpHCrrYq/^[!#RqpDcP9/Mj51Y)YD<Rsb!;m[<EQV$B%LDrU3S<*nN2M``"(c at DdO2l<JbRU_5skeP_\3O#k/rO
-_hVgHN4"M75F)ldpt;F1^2ZWWj+X:#/JRQGdcJ4Tf4r(T]A0*@.fJfiSFp+=DO#%4SWC=!4r<3g(TXiq5&2<#T],0e/1%AH
-IaUn"%Veb8df=Q].:WXtHLc0N\oOLi3!JV0XH=TL[k3!.S>YYcO5:NH]smHa7(jo#aZ8rh;5Y!j`5*a9p5+[B%s5Z8:\%0:
-#uODr(C]jP8.Eg2#Wn80bf>jB0OPdh>1l+-EYpb,rQt`#:ER\l`mRX,"93VTES"*:h/>I at k1u'0JHKQEo0;2P^I`&\gNeRL
-Y2N=0<fs]-W]_tMF2T!JVti<?a`M[Yf7n-TmKmTQ;Gr['90.KVUTPqj>bgeBeC[(/c)'Sr=Fh^fCp;C'j=C-,rn$pc9?s<=
-;1%'>[r<Vo2Y5nlib`YFmLXednX1N;)YF*$VXoW#A9S/^W2Oc=QX-GS`Y&]j*AnC[N=b7cEY4EWOR*^F:P`)*]nKQ+nYZ%e
-K=q.gO1h.OqX*>nI&BUj#_eQ17;h<8+HGr"*mA].o5j]As+\Mp8C>=&JGML#q0s;9rSu44qhL]oi1GZM-d9\E+P=9G'2i^m
-d*Co$:E>JI$+^K/p6OG!Kh6V+i1nEqno5&J"q$LVeiX90(8fgHr?D1t]l&qc0>EpgnBFX<;(lcTDuGKW64I3U;\>$drE#4&
-EV1)o8%$2?\4Y5%[epjSef,=<+'C#\ro<kkII'^l=(IT#oM`BVgu,T_C?tP29cJYFBG\7[^WRCn3`bi?FUjj&S0PdQE-BCl
-[hV[OD-6an">I5ugBIm!NASu$[Phk=f&U7!B9CPk:(C*B,^J*L&&mpd'>=\R4O+N;mh"sCGBl]^lH.OJ-=m%WD>4TA:q"4e
-F;dN*leH!L:>5VmpLXC'p.WXIBt'erX<Of]$9It$-^h0d0>Dfgqs?0WVr;WL3on%qe[rem\;RL\Aij_9D6]+uAnC\0A??V%
-*Uo(fDWBr13 at 0#(Tgip*9ik5'>fpYp50DRq9atFm03iS9'%k5"Y1XHNXZG*6?Zm1S$D+a&Uj>7MkoB0k6_&_OF%m[>V^_Kb
-EG?]26!QEh^IqB1J:8lB]]Y,1'8Ot-7&ocY+pt!:KNqIT"utH2 at fGf:9&5pICdA;)[g&3QjTjb/T`4Fu^IMR(Wh2fod1n6J
-9t)c5I/&VXcf3YQ at HX`]-A(gQm,b.H;[`9sfI(X,q?OMOi+`$8.fQ9W&RX.=U)4Tb)6"u'L"tuMHj5]n>i"qCeIZ3g,ceiQ
-g&pegpO>aY>_e,QCQ5,Y0s4\)T?n!tV&(Ie!i\<mlQE[H!2O9[WDX?X!?^gS-SfGccYbcAlrMU$L.,^WRR,%*<)fbQZ&"MU
-(%kt_D(?ZC3R"4q1t!atJP7b`O at NYNp=-]<F;piNFphlb//CR4X>"-M<XlB`eAs\^2cGVqZjF!%>hNhXh:E$:'QZ9VcLMT;
-UrKnQ];0CUj0i!_mOL#-e%a/g?f at _2h8B!C/L6#@^&tAKRjo&QHR9T!Q2]s1HAllpKZk-ej0UlQW9[l;RjU_7XXWOILa=,8
-&`#Qn(+nX<kpB,5WmkNCjjoLr8Ae)DrH$k(-Lg%#Zf`EAc2NXA=j(HjT:J$kl%r3>SO8D9M]#.m9WoD0j/'ug3L1Z+EN=;3
-q"D1fFNZ:G^T4(sKpb7o&$-=DdE"!=f[k?_5V=3l?'6Q'%Z8aZ8?q4q\ba9"e#&FI$D<$q:LQmsqJ/DD+,t&46O3CVBA8')
-G>i8O at +!uh""q"EfMk!^Kneg&FAA9dH[k)dqFQ?1$6!/@AimjIWnd3M1LPIrjO1?fJkf&g+f7Y2??]rBgmcK$E8Y0"7N>gf
-A$>(B>AY)=RR at .3HdK1a7VFLMqT/%/r9;ht*kBcrTP?OFl?:-9qolt]J38\3(rqWc9h$iPIZNA$)@SgLCGbfRO`+at#B4MA
-W2dTnUgO%<IiDDk-3OgkHng.e[N7C.2@%`5`a51.N/G1qc%]Ac at PX0VkIUqds4!WiN+MJ(*oU.B%Vp\+CB>C(>5/MIAUdMP
-SJ_6CeGd:QNXS5%K.SH&)R_56f![I5@'=hPag]EICQl'@W6$d4ID90Qfh.8pZW,4Ds,BpTa%2Zu%K56f")=jZ at 8QUY!"#GO
-gd5JS=4DP_-FT9mpl];D[<]%Y0ri?X*%&Kp\nU]Tmoo;(]CJbR_e3;'-4+`O2IZ+7G(LpXZRumb!X;Ki\lnE,32Z"T1unK_
-bgD;K<a?oZ*O*K/T=f at tWLd?JTe#-_9F,r/V.'99L-r0f+90^jg%=!LQ_,VL55,<VZbq:hfe'(nSPOS3V/PlT-,]c7:[s<m
-Q_0D4Eock:hnfs+.G^$sUT6'GfUZ9I=4PuLZ6A'"VSVB3EbbW(F$KX&ert"1e9!><F0:h*AK+[Yhh(TqBZP"s=cnJ#LIQ)r
-8GO8lC)gP[YQ]7[Pbj=UGN;cY*6pZT#DouaBgG=p.="o9_?!PFGRA<hN[`>:0)@=np/-r[aZ6sRIfl<Mb:fJ\#Ld,%J*(aP
- at 3f\bD\G2GKOPC!X_p-f"Fq_41-&3X#[8bFHjhZI+O.X&HkDVSW=N5:!.CV>iZ&8r("@),XT8Ap:t&i^<+_f"O%QD\h\qH9
-0G>RnnARMcSZ$C7)5Ku09[V;5YGL(WHRD9`bTM?TNm.S\9$=fnh6-cMU^':'KY2atWrKph,I.K'#5cp#s-mr3[%q<>2g+:A
-oFf7=cR3'2%ZiRs'WVbaY;:@B1R/RE at j>YY1SmeeaubXNJ]*%ukdFL7;/N%fGC$maM!-(?FR[%nJ5u3X1XqK%)hreJ99?G9
-m at jE%p)*(nM:0]h=kn?VglC[6+k\#V=LN=tAAe73`CG&88,WNA=Ai72Xsr65E<80!:82m?j),tWqgm'V+\'^Xpb"Og9O,+"
-puhqH_nA7WR]'iQ`g'$PMF@:"'E)XmK^]Y,[qp1/U@>;W^ZiRT3uX8WcWhDFRLr#glSr+I+qPA8LcE%i)r[d=_<>r(U%_Y.
-,:5[7P`5S*Df7.\rr at EJ00[4tJY,/urQ at .*++Bb@!:^(r,Oh6_rP,gRd30k2;Z"@YB[!s5(kDh2fVQ at u2K8=P\?a?dW)VTo
-5V`Q>!*4L1o/q]\?RQJKq3.E)BS<i-lB40C8oqVdLEe;]L0,Qu#`pW6ZYMbu$C't@;Bp(`VrT&-Mb,`Mp>$[NCd$hm$9_cQ
-S7<tQbq at 6_9K>-#'m)NB?MN`"hL>#In,1OLml9F[]g$h`SgWCmQM9:Hq[#40ZkS*T5t$rTT2\#mrZco32mEbI`s8a[\1D0l
-7(dL"DK%i5M+NKCD-J+E*^"e[@*p9?MO*DgW/[5p_,"FZT&ki_8V6-.:I"YVT'X+OgT$P`#+0Wl7P<sRK,p!((_oV+qc4Yo
-Y>;<:^4t-;BVH4p83W_;l?a6$qp`]]-TObXm&:ed'%H;;P9soh),(!e9]-6(J1018KN`6+ReEba5:amTWIY-t!+l`k#>i<c
-pd!ZuN_Erc-E?1E6Euc?m at KEBI>D#5*WPF('H11aa#ENWb`u2h,jXSa^(s;i"h%\fr1t%5]boNi,kGabD3ch]:>[6OM@;t_
-Qtg,9/p6&)k`)5h)WIH\#lS=kMOpMQkVQ%\L9-mD at XOF(A8YgSla,G@&<c.>N_(%Y;n6',g!oK5q1k)HR;5Qg7Zd5`7$#7E
-O=L"MO]5UN-U^X[0Gcd$$HXG-,0;R?=,od0,f3=ADu/.h?@&('/^<.E4j(Od6q'!V9kgg5r:8kQH%>r^"%3 at 7g*K0ZO+S/(
-2CPSdOI9?N2mJ(6 at lsO'$0%S<]XSuB\q[pfcW#)k<g?WS&qsnmYDTRb,j1q]*Z+S2 at X9jKpprm]fCY&-7!b8#4C*QHYV(U6
-'HKr->ckobrF,^.N?jqH=AuGp1c!DA%*Cr!<s,!ArdX2eSXd1j=m4A>Kc_=lFblR;J[GT<^5QM)RI':HcUY`.ch=\olUa$V
-D$8XG]FJ%!JC6n8FJ)U80KKFC]B!4GZA[&G\CnKd4PVW?aslHAOAXr%3%(YCHr$5X+o.Enb4:CB=$YpCc9[K8*QeE*QIZ7;
-WA9+!QA%4SPkIhAA!&PPNR/*V_Yi%;>mI+<jpR<)KEq0/hdSC!IZgjho`XGB*VnHt)9H(qU%C!!k(aJO>bsYtl=>6W(^I"?
-VMK_Be&4867>:P&+<8/t,iap]YD\usa8%M(pP#Um/Z(Qr:LqC?;CNLKmeRO][G_pUR0++o6nV&=16H`CmWr2CDB(q$[Nnr-
-?6_OiF?M!M8T$O)SgBU#^"4h7`*HnUM8hbIF.Z"*6hPL]o]IMG3Zb?#i at r^Z]S,Q#)V!%a;(D.5`6eTIX%3q<[%V+'JAOQG
-ZI4M573U6f'b?$9c]`TAf,!^:Olsk2b34j&8k\1KC(\/pSkEd;.le."6,.`'B.Pp/OS!U?h%3<.T01',dn_.loTOcMKKTG0
-005%O!)\@4Df7T5SXl\YY64dmS$W-?B/]^Z*M.U3'7HuE*,R>I)0$Pj8_R+M[U_1g*"ZBL4?-h<]'j]- at g\#`iV._))1-3O
-hM=u`Cd"Fe:$d);=bIX_i3gJ_R#m"+(Ebkqk2'.ERK34!:fgMnR-8OWCo!WdSCim`INkn6M!H(`7KP/iA]mH/1U%AN>/"7q
-=*OD&O9b`upu?ScFS)sR;S8)]*Xa%:*s`hriX8m-=\7X=1L+;Jg8HbT/Y.!7DP4c[rp)TmATb<p3gTT#>ad&GMGU)s+fLYt
-gPGM;7;1$cAEP_>Bu@:3LrA7sc(U"6:9BCJf:tX9FL$U6!]QhR;'n!"05PO6_37=qSW0U=fMG0ZE<)s:l0l9A=98C"^[C7%
-8?NRC0Y]p*eu8LQcKst45RXVA!<FDC7m7b3 at p&ifC82bf/F(='hO-aoGEUH%6,tLBO1ZCCNWq)aX`<&Q02dnUG5<Zb['$k!
-74f+:QQjtP50*528a,0`BPPV[U-JB3i?k at dd<Vt5CYNE9W(Zd)J1P+UEW,%[DhK+MJhQX2f6*.Dg+'3[a(qGFZSXJ*N>JN7
-_7'%'PWhm^,G$6:Y!W'O(b<;oE[nMld;;,eiNW:[jF1cf;D)_FQ6CXk^C4(b)7F=3J*(TfX%'JMoV0Uk(Gc.\/#UUH1XXs@
-UU/%Ifkigfg*iku4Nb!p'KrF9-3J&:"7X1f4C*I/!<8(I9T=M!_kt2T'E.J4XSmABkBi'F0)4kB9Fnj]0:tj;_9Ca2R-R.7
-UCM,Cq>AB"q0AO5%NO&\iqMSo51uM0L;2g!6,=#QDSIr37a=Z3J!#GP:U#TW=Zq$+ at 5MM?/BS-Ph9 at i>XF:R)9t at Ki?e.-@
-rgbFupi\nLs%ukHk;68j^b;UA7>n@"CEP;u3/fdZ*8LQl\lka=#kuQZnslQ>1Zd3ar9%_/s!)#?$j!CY[[(bDkm$h)R%jK[
-:@3MINKQMONlLE$EMaC^)B>tBC3_4RSO-$Y-qqY6;DdA9bH&In^dE.u+DJ!C>10dGU=i?73ZP=dZ8?sd0)&sk<g0iqY5 at 9e
-l5pk(?F<s?9>$DbU;'&^_SCZ[Ru-<8X=);qqTdA3?s.qB]*4[$ll;BgLM93.Ui4<f(uuU>P#SX(cl+8,;iSR%_=VgY+BZeE
-ITcpk)EG?]giCZj1-jb?BNkk$fq[g^ks(>Jc.j#-_N:23#0tV4C6<,co>I,bI,ZdTF"u+^@AgGcc?\GP/dIsjM99rRXm\72
-ep%/aICtS%T-2!ii1GFgj<rCnqDqO%V"VE7Ip:/, at M&R/Cpg&/1F3#E1I"FUO:i+60rCE"OUX925-b#'<akIlpY!1XL,Zsg
-Z'mf&']j:m7Wj?I2V;SP-($G`+st7Kp,qlBAUjA,kGO%"QD&hY,PFs&`WF!jX?I?ORPn49)moGAR4PEa[/q-[9hR#T5_+A3
-kP+DfroG;(lRtEG%"[UmrV--.\8K)Hh8=AgkemGj2*V!c+qNSf>$iBD"M(CS2a_n.D&"8HE2mh&IN_hTGj]\B-u1M4$6>5"
-[3ZQ)_)Qm_K2R\*AcarH9`V0W7nR,=%LFY?KhK15;UW\?]!#6_A3=GshHYZ$"#QgLi^l5\,i"9!]f>gJ[:%Zf+Mc-sip<*j
-qu'4=[eU&3ia!Y;SUM4-`A.I?ZDcNZ'+\^Sa9mA-;H,q`pb"[7h-AV&B<c<GKY`o5kt(<!0F&.ZA+!3KFc/u=-H[oe)3\<0
-i4:MECRn+5qb6Vq^^eD#%qD^tl_[,f?'!TE7=?t+_4>HnUWp6)ii(;ZErQ^L-aANFC[=H;Fof]eP*TWh0i`Igs#[o;@/AX4
-Ji;!%QXs`o?FOP>a`GXa.N7oc$4V2:M+r**AZW`:pfF[q$hJTkiB_1Q$+>[M6T@'+BA[t43'7g-Y at L_HbK8fg!P%1;f=q4E
->BW0tHBO0Sq25Kg"!fJOanZ,>.>?bQVNJY>EC>tUjR#$)\S^C<mQT^X+3`7703^GiU?GGD>\*h=IOO[c"?um,aRMiD'*V0,
-6gZ!r.os+76t2Z$V8\g"![%_e`#ng*,c183/2+En]ie-rOUQg<L42Q?,o_0-b,lV6"%WD1X==1eHOg&H#Is at f8m`/4o4%#i
-/+tYN!LuG^LV`q+00D=uVQZo<b=P5J&iF6=s5V6&L_'D]!a at K)M#][<.&R at M=CPAPfNL@%o9kX%WOm$h*D]CABbPe_KBY7o
-Y(KV:aK:`\9,_Q*(sDQ-\Y$:*5%e<7m[/@JYdI?1nV`1$.>YiKTmS.6:pTFi&^Q^fH.)9C>e6YH%E4EJ*]tR6PB73;FtUL8
-$O%1jYuLg0=>Y00O=Gb$I%[&=UYp4A)<a1lqoc'njY"Z:i`/'9/gg]->9SM;#tkka/is8p]49T,=7J)@=\U]BC]9qU#q]'R
-:H<]!q7-W/[R at h=(/!M9jr+]!UBQe(3)].I_JOi%(o$P?^S:IJT_([Wl&ed8PJ.OIVFOT61';*6>;6f=;r,3Rc]HU>DROq]
-^lR&'AK!>PK=Pi-];"!GjMBPE6a82a?hgKZ:=7-r+tEsk!\Za*rT:'fj]Fm!+EIPQ$2i4b!/Y1E%/B\Fjm/ePlDdd7cDl9K
-mG>Iad.:kT4J at HaVih\*EZSu?/R!%km"nIGRROD!e4OL!eF\q<@c\:1E3c:$#s_CN<'2l9mQ%>Vj]^hPihtNQ`S";H*57/+
-aH!t5XXDr1p_.l=ooV?,:YiAS#rhDW,&rBdce8,D3gQ*'dt*C-3)r=[V$cgVUhGo at RadO2*`3VZWSD+ASnTtj)SW.R]+LnF
-q^(t8*&AI#[+2pk1CEf8m*be`*VO_-]`a9j3geD+%DqN\h"6V*DPN\T-JIk^)h.7.[r*^rP9(9lEI>Ks"<`a$Nt9^4M+7j.
-i+?P+7N!so'(R0+O8]+)cDR;LQ4*emFo%Z94P%:Flqqp3OO[/,I83fPr:#8RqEM`I/]SiBJ,$`gH!7MbU__S=dPI^-ai<,X
-3!].W1o(&8AS^(BU`(Fo'i>(Xs"no8PJ7-n("jqX.uq87+-Sj0X6OUV1@)lUk44chU`_:O5=I.^Yk"#,LTEVOP\.!B3\i4I
-\jKCe+daoOJE^D8MNYV"_'WS;E'PQP<A`q?c4ePcIU@]ccZB5.OMtiU=*CX^Y(V]51.o\2:%/e4'5lg;P7e&WIhBMYj8mJD
-fcR5sUFLo<iK*pi_-eH4Vb\S7N]P;J3X9DpK6Zp]=DK&jWiN at H3*oIh/$*+pW;8;k[@4O=*4S]X2PS;9T+(%O+*P)c#f<ua
-A#`Qt*3$W;>8hA+lui\..PmRjViRc,Q.f$1-3.cOQ_.m;qN at qj%NtpPpYZ6H/;,"?A&&+OOG/?r*J%BE7?YHPLZinoa(B#I
-q)%2n3'O5C*3M`[iEI?M%F3qX9<-ZY9p6hL<?_n12JDEOLF%]_1*:;58;`S[ikdHDZ#AtS(]l2 at nO9\eX_dAQ[>ahUnEhHM
-E;,Mkgi_PII_G[>H\i'u0r4c1+/N+iB:-">qneE[0<)7uK+GMP"'#(]@G[8gZXjES=9te2,eXNkXP;3rKQ0&?/9o[lY)V+[
-_FU-M5u,]S'1],iP5H*$dZ)OAH at K]Z,K#RMagn>N80j'&-B8%s^NbhGOsG9/FJDsk0m;_iXp`OLG\^2]=H1?fZOs\K^q*sW
-'!Q9K(Q[mP`0qL2_cS6NHClN-I7Oe?TC:l,!"i;3>2Rae-$%CN%8XDj2A[Yj_P5GHQ>=hJ=(>8@?@&<Fe>3sj8<J[g(cj*]
-d\1?dE(o4?eaHUia53KtN/:7SmYD6.495[!%M"[j#T09]F->@8B_:M/;KeGrEJUs`3-U(Z92h&[1F/Rq2q6inV<G0D%lp*Y
-ANioFeb at RSTCIm$%A#48p0=at+JuhO!B'1q3k=H)oLdPkmj`I7l!;B+KF!PYOUBl-n`h8H%^lNj%B at rC3K0-9jV45?3YNW,
-bEe"3Qq*r/[FDQ`%3lp5Bb)BSE4gcn,c?LVoTR_9VRcNce*937b_P!j>[aV17p^:S/;gXh$-t2AVl6WrJO?_T2$=7j=rW9>
-]\J0`<SVSi_6FN_Cr&"4)*@faXm$W==^3t+h(T*7lEem#,_YEGQ_34ITfRt5egY`KBP(<r$X81?FOC>CZYF+/ML%V+^n=X>
--CM<_#rfQh6au0,GY]YZ!6B!>j`l^0iW-gOIlm*AgR]/?T?!&&.Q_?3Osm:%=2jNkW+BbkQ3iXX-*j6 at 96Q<B-KYqhSV5ip
-a)LC<r1eVrs4PH'GT)ES7/;Z>n><.V,PfG#e'O(i:uDC4rt-&J-bu[+!:Z5"qhsIl,WAgPI\(eFB&L#3GZir5>3I)*XNFJ2
-MDHVk%WWU'rgHDlNbC<Z%qT[f-#g$2Ene=.VV;aNpF#_*_K0Z>)O>e8+!&H"S>s3gfV9$V2mr%Y2-<tYF'EsKKN5>SV's^'
-l":ed0j$LBFYJ'Vb>ZUoi0*pYGH`/s)ap2N-L?`,8FH`I6aeJ;[qlQJTX"$O3-C.]Bit=1gl\UrC'4c&)U(o&3E#LW_]t<O
-\Fb0?r2_<]XA/9q\3eg at 7pV,O`VedsW6u.#P*NiW4>"%mda!oT:h^U67PNsE;Wks]pg'_:TKYcc-e+MIr@)Hf6s8d1i;uF>
-Ve2Z\6U6;5N>Sp'fq<`S_N0+>;uIN)`@O>H055JA&^%2jAlos:mi[\V_DC%pd`q5?jjpo3I*:N1hoXOTnEM.d;Il"m70mgU
-75?.)/;tk,:<`j#7FUH?4%#&.m,Q-8qQUn@[DO^lA=CRbP>I*aqrZCqONS:=JDY_P\#].=4'NK=22FY8XGI(Gn7Yo_*Q$gr
-OZ^S76*R7*p5@<,($:M:^O/.kWlU;LTh7*67;6Vl!i57\:tkt\ljrO11*fR[h8Hp at W*GKdo`h3nT0]kb>8S+n,qOCJ&1d6T
-`\M<!=iYsQYq6L"JkaG%50HfMhWX at 1fqhgjNER(WX?DCE13HJfX\,[9b at GZo(pcSkiJ7c\G,Q$B4]ae^o'FHehrgbYI!Y_j
-Pg*&(?M?hG)X5F*?0Y^F_nR=:$8q%3"'AS(g]HH6[Dr at 6p3T.QUeVd(QR_<3d)%O.PO=A#b&[4&cB5KX;bha=oKoV$'uR!h
- at QC/ak#d_/M_B90R8J*ikNi>s-WM#jV,<Rt;;^d9)jYm2Y4 at YBNSK&55s0bJaM0,]VCe%MDH$+2e.nk+X%@Q.R#sQos(@Mp
-:\Od/%r)*&QiKk7kJ!)WoO4Tt5C+ILms"8Y!;b0S"Hjb_#I$;7UU*]0r<./dk@;O_NR?[]XA2i6Q,^5nPIXqHpSp7Nfe/%)
-/&g('f1P.s-$o8)rWL\^A-MKOG1m`A,8D_O>tiLDaoiM&G'lc^#S^iHq at sX[an`m"kffK,2e'=I7>!!Cdkd"\S->'Ijui=)
-H%L8[Id_oumNOcZfuqeOkYZ5=33RTN7_SOd3P<=tL'(l3njEES5n0p:F4gV[PiuKH&=6^*,=50"-/Pae::uF\*1`(iq9`D6
-rLn3ZVhblIrQ:\VP8t'/4;3B\(s>h24>qNS1<;4h3<W0eBTh_-i_=cLjGr=3a2WZWYS$qH8dA!`2+X`aPo+&f[K,OhYU:<e
-&;J,1*Ia=]O8<6nO+][1m0lSk-A%bpT;eP\>1<rM>3tif4+JTWhhk^sR5%6!Q$EEm$Kc*MTbc5SO%6KQeDo_+-c%b4nb.IW
-d)oaL"t'W4Ofmr4!%@E2aIFE!79\i+J,^dP=]54eqG/[1C8$<=g"/Z3eEG"_Je>tR0o1<&1m"Q*G1 at DWq:_4<&N^duV<!;:
-8]DS>JI`u2:E#k:_&i'kl["'?"8!c*GHb?J"8%%EM5K"8D?H_.W%&h=EDF/- at A(JmD,Vk2J14.&<bD\nmqI//<,m*(2_<p@
-l'Bg.8>hYW+qJPu[F;N]ZoSG:8h;rT/)6:sg?Ig:WU9B;gR!B[mb^7rBamXT3Q/\=c"+S^HU*B>Z]ubdqB?B0j&W)gK]9eC
-pN_2Eg+5$[DWuYg0+"cZbu<<qG8k2(Eqs9_o>^r52h1fPU.EA.R3N[6AO^eRB:gE\p;$?c$pk'LnoOjLbIl at Yr,3gGhMGfr
-q at NICl?*^#`Hnt+lA>SB1U,oefBTZXHsF]XgM$/iAW5,TK4%NEg+)auf#EkdJh[Cg=C!VV]-+3YB95<uX")3kFEb@<L<*'L
-oIC_e8 at O[9`CeQhg+<'\>nRDV at RF3G)B<Ju4^<7.U6"32bQ!p!6c<)JpmM)08I>"*e$`J(Q#H`&SHqu(',X`X^^:;?%pOo1
-2_NA.-.rcr'b6t0GD]jb at su2^. at aQkhCTlmiDGe-<E74FYPh5?kb at 4@<=V[S_Eb\(9l=\Fg<u(&nGTdhLfMtnG_sSBj:hM!
-C&.>KRU=lR/iY\]$7o%G%]_'fpS2O<^o(p:L"0JV#CU%6]Y+Q'>8\D*p at Y']nb%823S9u*A9!]R_]'#HmD%8N=TsT2G.#_B
-Os2=*.FfGZ67kJ=LkfhoA6J5Aot\g?=GcM at 8nt:,]S"]<,\:&)lJB3<Ek<kA]MMWCMCW)<cS,f9<q$i\a^UB?80keqH*W_O
-(^I'nd=qRq*3$:J!(:8bXUp;N;f0?NAM,2`r8VEP6e:Hb+2*<?(<BJ!-Z.N'S;D2[RTq%4"&ehhC1GnN4qfE"L#b'#UgMu+
-r!fGBhX_Nomdp<_j!R/UNG&;$"hRCF+i#VWGo;4&JP$+trB?i!diJnsOfpORDC?o6lT*jq/79'^e[#X4nMl!T'#AQtbF"0N
-aBBHH);\1&5p!`8".M4Dl29L)agU<h3*s^)lu!dckJq'36'S(YH.7H(Hl+/2nD;?D1eM"G&?,gX[L#f*f+FC^5\;bmORZO0
-_p+SOOq?bU9pbE"^!oafcI[dQnk"g_e4.!+A'KU(a;`@JDhC:Z06K:AeG&AYgdJ4_iA2AT at _^[6X,ou'bG)2!r5%3Z80e)o
-?ZN.=c!d8$\\h;do:S>.Zl-$@WR7=RDL!;i*JCJ(W8X&YPJU+"4Z\:c$(-D<)YT?-%`doZ$Xq&MTO9K6_,b3IEY\h$>f!EF
-7/`qdrphm,d&H0]>1J13l6[R6XIa4-FAfNfhD:GgpfB&3G#)>(A'Js;D#UVT0,+t6IhK:F8Yl#*WQ2jsf4PmjqO_d.?$b:L
-,JjKN_SWr(Y_",&Z3kO6J4mM%X3riFWFL`NCcZ<G88jYX#Q3i<=]hr;rA<gVA8%%2<=`c3Ai/8QUA at lF%\Si5`eH#`!NF7_
-(g$^!r8_;6FPBB,@(I=\KuG.iqtm9U9cAf2hM!&`;`Ogr2H&F&WW^4u;PLHpS\V,19ja8kD]c,Oo$a20DA+*t*#`M!]I at T"
-*W";tJ+YMhKkEElA+a!m%uj\/91t.!WIm.[j^@N)DEBZ:=J7aXH.p9kfSGaVb$,q0eXVF<;'U7+b[3S\jBk'oL@[T,/<SO3
-SuQA`&2Y8em<UA#<<MkcMC(p*dp.=sR1/hA"FH(?(@jh:A6eeRNiZaHk/S!Es3E:MZWCdDb"fIX66As7a\-7JTEM6j4%.\:
-T`h6JW-A^nQF'"fD'<[]q#CQl7ItO`U]d]>0<K7E)+f60pqtffqo$CV,C^ifj9N?:DaHlVoq=s>NI5!E!Ko[?XoRRp:%]cj
-KJF5lPZlumg\=Yf&EL00'h-(+)3Fg'`(OJWr.+i!5"hVXVh;^tmA*rSb?mVK50]'M::s0=!U0rsaoc2`jeaXskq2RY/NfRN
-^tp0HA,h%"5B#(/ZJo0L+JL*;='0IB8U3-.ql!q=Zg`?pE!WPT!Q*2,c5hoS6q,='jYY5-;b[sh<MoDP*_L9p^YF?GhpS+'
-J#f9H^BjNVfqE$G!F`6,EgZLDg^%L5<a2N$p at H<]-/_5H0*(22V3DccL=PlnU2>54]GL4Tr!q"L'&N:6N'pZ0WHWaBUK&l#
-E)XU;*DXl]!P[5M5B-4fs6^gWiXh6-28jOCP,=V:-_r"^bmh%U2!;EN&>+<bV9&`iW.;,Jd?&/L:TB;]8j%&Mah?Mj]7D4Q
-G+h(Y5<P`1s%(\So.MsjN,es1Ouh8!!F-qa61%5o\_5gA'bs>6B.Wtc70im5_p\F3GN!c=bjYIjWe_sgg\(Ii^")=Va)AXa
-:Lpl"UjQqaMf"f__42L2D4n.Ir at RKQZ2EYZNqgeQ=Ru'T#cHraTXG8V,N<[k8XoFd2TEp8-%A^4`'g!Cm'-f5&LNH:$3-L.
-pAgDX4OSr06j5gW0A.To+b[^+T5K5m[RhfY0UT'iP7]-56:aF0JY4ukeD2ok&4%F,&;Va/8HqSe_:e,`hRq_$]AC0YmeY52
-\)+.RI,-TRJ[JSQs6lK at 4S/2eTCBh"[kak<aT;D;L#e;e6B$HGUI5D9!n"5&\TchA<H\'@$1JpA(ma,1\lXYJF\A5+TfULZ
-/Z]h1]aW2R.h95iQ/S1dhr[dSP])@.%%d!e9_r]MSlBPZ9hSdFhI_p4'IF/`amnsk2oGiWU#2>\?Xd_$2,4o*YUn69&44`S
-T.erYq4bRVoEHo<Q]fXm'-H!+]]Tme;!96Hi#%J6E2A,^rD>>fRMT/1:(b^@L#,Ok2t"&NAA9fFGH4)2Ba+smFn1DW^\+&.
-6?NR)%TH]p'$,"Q,*^4:T:ui;K?%p+#QuD(6Fms,8OY.Im-B9&c at 0X^C$h1'=#8QsrBJ=k9+Rgm..X/S,$=fEV?-r%pgBKU
-UVD1?EW&B#KV035q=TBbrpsDt?%#e_=2(W*[spl]+.n+Z7D(fnOoDrA?2ZW;@*C&qS2p%$,jGuMdd/^`Bh3jiRF`tG&meOp
-^T#i/JJl;%hf at jJE'(*K;T1r6!,UPJ5;`5t-]Xbk-5$MX=Raj6?PX\Dk2[nu5Or6=g[LfGdDRc^BQOI"=W/^?p2#,p1'oAs
-NnI_ at +3F"M2Lm!]$(&;Dd7<J_2p8/&1l:VaociXkVE/O;m;ZKf*^pmpn-%5d=711sUF_D6p"(7LOcb.bk<(-Q>rBXnmFBVh
-AsWsGaB>_t at CdEk(cJ]l='nZpJE&t*'H,UN!i at Z6Sr\*^q=ok4HSVSL*NBEX+YV:R@#1XS1)Ga[KldQ01jn\(.SAOa2K`L=
-]aM\.-r8aki;84XSMfm7_lnMp6Qi;E#3:oB2<r:qEu1X$[TP0cd3<cSaOa9=cW,6<[TK&*YTRm>:o/)$THfpiH&-bS^e_/U
-1D\DL7X1#Q at o\h_QG_;=&rUPH[>m=cXb*&u=[1aAD<dTp<1.]t[0.*?\$L&IE+Tq.5BgmCR`T%M\9P]iW3R:L&WhgM)X#uL
-!Eosd`;,gNKd!9&?e`:QN%th,!="VM,G>`6f;=&BiATrDOmg&("BscKYhYo1dX=q_4gQ+)\R=GV%X?YlB?Z2)F0>3)?EuUC
-`psO;P\dr8^6pWcM1sim\no+o\L``X'*;44";1G]jBAn5;QjuNZ$$<QfLlHIrCt[$jlA78B:^pf$5!1lIZF4]"]geGK<)0X
--*^O9PeZ!FHZ>Tg,!tZTKR:UB4?.oDX*&sl9+9i!p>pXSmqd3d.KKO)?Lb$lYch at .)Pe_rV+%tG=\([-glf4="C$Db9bG?]
-D at G>,&h%DK1$7"4%'brcGS$8na,3tf\03]Q_Kkmc&f_7@'K;DafLupCmj`S1qrVI<9ja;.dk)%fUgK3bjN at bF^lLOc4WGd5
-THo(8A.CErHVW$M\hT,.W-U>X<V"NCr"8n- at sQtE6,C-\1>@T^V1fqB+Ac^f]T9EnJ;_Dtr(;`u6qo"?@Xa^oQ^usqr"j%c
-QJltkh-(H@%V.q3BgXc.rs:L<6C>FX?!tJ#CN2s*o-)(LRhH@"C:SlJ$j0ZCoAWIVY6o0G6?e,CT5/KaduHs-Dp<A0lC!/&
-:\g?kJ&_4C^FXu09.Ok';hB>2b"+;3+^a*rB[e/:Q>_$_MfHfB6&)3;]H_)L"#eM'AYoMH+'bHL)1D)9[-"S`P at B8a<_F,D
-+Q%*eeAH$4.*KR`:ZPPM3br"Zpk=5&I=-K:KRN at bs8&En,FJD_Z^kP6Le2hB:hZMWIF]X)8p;l4aB)'^WiuHhB:N(s!dK*Y
-ZfDPK_[#hWIq:o2\f7K:gf[d-DD'+5jKtl`Djj6_OMJ&+f2 at 5UUJHO6Itoh+BD6-0_P0D*\*9jgCaqG9g28#'6/_F%'`,8K
-fY+'hdWhH2,%JbE at YM$*7-H;(=6G'::QchaE%hAO2Fq4breL[Fdu*E`_7oLe:%Rp at UK.gN3?"c;#)2W/6rI'rIO.W*#n]Ol
-5]b+:q25GN2jHI6jQGN0q(!^,rpV((E,3FMbm,sNQuXZZ5T$4^OC;FJe at TJl!)ZjmPh&X&qlU)V!h\7_:5PYDIApFLf=+^3
-l-R:nZ[fARE6eMaQX5c1j=H^Lr.K*J8?FRI9f?0AOViU at JBI',\/Ug>)ccRgOa'dEYag(^)9?d/%g[27!OKTJ%b:="SkP)3
-ihm$8I;aJN.YcA1mXHTY-W'g2CE at 0DU8[M6SW6i)=Q588(U'=<:fZ;AEYgjjpV1K"9p()W't&@K<'.TTXMT8/T61%d86$gO
-(R-e+/o[/9G15F_"Hrk;3/FU0-ER$&!Tp+n&>O0(`WMah<bcNo*(8>tYCQoS6J!j1YE?!<^kVr90[.bW-PSZH6r$)jQpUj"
-'K]^L5BSRV4d`+!%u8<kn5XibC)A+!P^]a3G_A-f]MN2H!+pDXc.,TW7T(#G0#I/;a/Jfh-S:LjR&<5fL"VFG7KJM"lei66
-RXma5n3?deLbk at npp\#_V2lPYL"1r?XEl^eK'`n8_>YOJrR>c_m at 77?;IJGK[5"4!"U$G_+hS&(AWsDc%g*I. at u*Bk(odK&
-mj(Z9Jr!]m0'c_reX4(1jp4S3_n!g0j83k?g:R3-&VhZTrMjs6KGWmMd,)HJ*Id\IUJH=?KLkm`T$r[1389=XCp6=&\=QMi
-+dHEJoOV_C_k?'CiV::L7HF3]11g9Y_<%+oR_(h6'umN%EGIr\qW_WFPN2"Xrq#CU^,R!OKgGj7X1(EhD6DTpVAd\q.k%rJ
-FpBU-ZjX%Wa?)H*n3D1>bJ$5%QOC2LD]`]ADMMf*d>0fFd?#P!?\7$U2Um/HVP8!>V4ii-lXC7;-M;aPllA^eBtcuI%ALmH
-/pKg>\Nm#sGa at c7eZ"_In[5>;EsF9RK+[2?!,p(LBC*%LF=]GJ`YDl(^"_f(7qMPD4#M(tGN?Zi_Y!2-R2/[s$Gnh6I6]ES
-I*m7E7Dae4!NAjV4lM#sJ=Zik-]JP_/#b9:NdoE?=2&_>9B`/?0 at bWs,".#'9sH+A@@G*8SL_"Fk9QoGKp7YW?Wa6qgT!8.
-BrFe,Fo+S+1B#5(I6GE,3>JpQCJe]S5h<@k]C7;l<(,g$gm[0"?HWDm%V#(&\[1!X"38PF8$,.SOKoR)#.eV@/#&7%W^9Br
-rO2!%XN[!!>6.MmN>=e`ML<P(#@9R>MHlgQEF],lR#t>d:Bus\RE%dReUQ\fB0+ApfW/N5>k"`oSn+_5L\L>#NAmglg`Qn8
-#9/F$eZ:mmS!gP`gPY!-e7LY#p0n/ub(+t?G07/=/d.+"7]r^O8O.<6BLprp=rC%63hboDp>,rn"m07t,Vm'qPZdIJRt(O\
-<D0_".$+7/.k<?n#g'^".GGjAd.l(^(<0e9eT*2$?X]1GSFRrshm-d3K4Z,<0$cpEnktTf%_-c^\MnA%kN_m6*+c<bTkOK/
-'5ub-_A=d`0%UG).46Wb_[Hhc/-!V!hF2L/%DCQGi&]BrL=sprBAb0)<(3k.p#fLmq\BeRq+bV5Zn53NpRWKaP.H at _VlWln
-q4gNt3SXtp]>(qVN'-!?+]?_R=VG'7M.'Z_pP!,h<9q_;Gmr/`"FC1N,W-"-nQo6UpUR0-Se6'W^)=eVOnWR]WFu:UDJ%'\
-WYP67j3ap4<'k`?8[h6SA:-k at .NdFPaRKF>#lKl>jX3M`*]*JK_lnCblie?Dl/6l-%A#@qTjWN.g!@f%@Aus'3BD$e?a9aa
-*"=t.dIYre'+>%QADI14c&5T/O1%E_YHr-alD!.;FEn&5k"9F_LdKBj+D#p+h$,^bOUMNH0^K($XcP--fXOXc(-2mC"V4'X
-HBg8N2,FS-`7S2F&K9db313b_<BYs0Os-)NJg\ZK&'6ac]^Qn+#-_n(]sUnccn1;eW>E-l'@jqZJ*,,hZ&0AdTBGCs9mZO3
-p-Q73f:(r>hnFLBqg6D709'nl[d(l"Doortcd9N)OP):HD$S$*Mjr":6&6Z1>MK`Lc(ZNe1SVs#k4O;Zd+9/[>2V'R/hM5t
-is>I$j]Sn(3McB]0b?0KLrm/p7pbe(Y`bl[AfrFS<5N5'&Xp4Y\B=J2LitpiblhVVGT-L\DZQW/T>/fA%ZZXh&R'+$CJBj7
-9OY\S^7a'H[<nLV(.hQ#HUj>ag`hDQ)Ikf/<Eta/gO-Q/V.r'dI at u-/<%DUjo]Fj.4r(Yg5+Bj?L%MaI:'iI&+EA at kp^%AM
-QV9=([=)eqq"eHSd&_qL\8]rrf,WH]=-Qb$5t7`1W@?S"h-.hhCA0Vl]e<m\7SH%NRH?$F#(\#M]\JhY:$5f(a;7-KA:.&-
-KTLjk/42T7qU%,e,<-\%k/!M(5R*Wi\1q6D=0ifEY&3os*oH57eVRJC:"S469Yd5n[k+`c07QEFA^lQtO#dl,V<!:E#3MUn
-BPm?]@<Q!S"Tjo0.a,GQ+BZ>3)tmc%%+"NA`T?c2VC1>S-ZfbuVX<nY#TH4.`jsFK-:0k5\4JOB<,rc0JtT;$,uk1iK(P).
-Jb!c85S(^4J:81TJ1E0nA6q,Ic-,lgl))u3*'\Yj6gg:P-5.Pa8N+`t=-&`O5_canR>`^i*Do0JW.V?#ML!_>G$i.RmVE0N
-4U+meK1C#_;BE<(BDTVWY>b0gDW;dRrLEhb#SN18lFS`fFF0WU(l5M2YE#7%s2BO6oT+TKZB,<di:jjYnlH_8b-[e`:Ajds
-M34>qG;"bP2RYJN00]+JEOS3lZbNaJ=pYD?;\2EO<XV(JEuH7tp7-#lBmImK^^hS'8Y&nC'gaJrO&0u[eY.S]SlFVmo1b:G
-WX0j#aKUQ2QaE496`8f1*I6%](VB`+JN<k=n5i]uEZ$I:Uj7;lWQaS'-s3,o;@!CE6)W%\G*$5"q<jdMpPF#;<Ct_OOb>4.
-1QV&QY:>q2ieDk6)ffT6AH`n#HXi-#qOn/L]fEDRlb+MR?HHGGohhB_%%nC40kOMIM&OUChmkt*h[p+M=!,:h3<EnKMmnK6
-O7lMdA.!mX(<2VbV!EB1eKWr8&)Z^sp(2]'>E\TpH9,ZQ=DY77WLDT"`4j%Y*A*NWR<7T&D3%dF/)f,pDe`t`NO!d[$db8Z
- at CkD00iL')Y[^gAXK=j&P+c%gYhg&RQj+]#TL%J%5nJV'YEb_Yf4BZL5eO#TaU$H\:Kr`FOjXkeqT0j&9<(u0aEalm,^[2Y
-`\[!9H]:<BZbK>q^P1h8KIj=%/Z?Ho8^\*</?0;(7YGd)4CWcg%QK:,<X>&L#0n0dY at K(AFK!6Mnq9];4A at N!aUS;\)JYt^
-J9V6->#SAToqnI9a8bY(K)V^];o;]Y at gZ3mC*;Zks#EnC.U-AF:>]<gqSpju5Z;mNX+V/F7=Jes;g2;-`0=sBe)N5W>@AZ1
-^>0W_HV/Er1ML_O*e;#a=iqdiLo_=\nY/PWN_IYR_lmTil5h&qf#F<1G<=b<VjT#oH?NbK!Q*)MF?8cgfC:ASghKZTW_[h&
-%WQH.J^?.($h at km.!$o#8*/An7GNNV';FH'_!<?("@$Ns@$*0p#Hfu"6+C623ejl1]D6KG=s.tV#ZB82Mr9*r[XGn&9iluK
-N!l+P[75#@`Y[,U.u\1<TUhPe)n4OJoB#?7Ke@'_o`1Lt\D]/+Z-W7:W__[W_Dn at 9ncY('"aGjUBZ4QRAb/hheq1l`'J(rQ
-;/[8X;fCoumW=CuSt&!fBW#*)BV>b23l[`a<26H*-p3Z`OlMgSJei=b/rBc,ZLL>*SJCRLR2*NQ.(0*sEZUTDe:b3?,uns&
-l_&E>96VV/7!tpqF6qCt(2a*[K?riUi9rK9N1DG6YN`-2cr$U07%!ZEH*Jr?lG]9pCgVr;+;sl'7RLUQ,0Q[U'-Z at Vmd+R@
-!n:^f"l=&7`6_ at cVAcah[FgLQDP>Zq]pbI+1amml!_WZ="Y=h)GcYGGRSS)q'-&^%W=s2>@a?#$Ci+Oo.X;^qCae")?-p6S
-.30%D35fVW-$@C+a0%m/D[*SGlK"V%?8G\LGjsq_W$"KBLi33qZhqJ_9'4lP9<'`Jjs0bP?Os6PI=O5o10k#:13,Z7:^Rob
-1Sn;>o?9"9^s7DKQK3[DjgR5'-AH%F04k5f"!SmI!2OuJ+`oS$o`gW]-S.5pqO:O-:2"/&ej_N-e>p?VSAM9oG_'uMWdn4p
-j%Mg>khb9sLRF2ual[X&BTRtM at 3q0);6R!1YM"8mnt[sqA#?p?TmPeD8<>V'nkgdO8>3cHn at fZ)a20HfkVj^ogMC/:!A3b-
-?0KQN6m"ctnj+f%=I"kK34*@lV*=;!9kZ(m,gFB)Lg+QC.RZ`5m@&-bE"S7=^;RT:NN@:>?EK<p7P4KHmVfnG)Q>o@>9.ba
-hWI*6Fsd,8kha?dCPI*)5$u3n6TFL5l<0,T'j:mW;4TjRp\j4^LKsAL9e.GDe,r`X/UnMDQ#+GJSrB#imu2`>It!\#0^"jN
-p$FI'A4onX.3Uc+Q>U0so>LebHeHBjlRkMQL3`T9T>LrXn;a%hf,sjk=)fn::$,LCE:bA)*T,*Y<VkE<`Y$hu(L6Wq/VC3"
-k8>W#a$c5W+?dM;A87PFY,!,SE^FB<#"RAI803>LCF(ZE39PHTXHKDQc[S8[BsrCC0?maX;^g?*X'MBaV'r_#i:]YI,Ugej
-E'n/_0Kk('*/Wfj``-tqlN:]?WU7orrEtM5_5%#TOE>\ms"0l7.M_O)Dss/BLXVQ,Io#M0RJjUjpTGOLnMb+WS+\Za_p:X;
-?$9)D2iK3=?(?U8Uc$,pVI6l$Z;$6S1L6A0N!49-JP`*-,Fh(S_#>.a#[=4RC=WR6[;PrN#=X^dHH"52.[/CN?;bV?5f/OO
-59f0+o<7!Y=$UK;p`!##q=YD%^CD:ie1h3X'et>^<$?3DbQQ.aO0F&9?5IQRhAmah7]%[tHfM8\lbbNkjCg$\`l/.W_]DPc
-<%*Jd3phRVW4U.l%%*ihfe^i;7KZnh at p;+o#4H))iauNuRM%g$d..bRhC"7a(_`pp0iJMp#ceafCbBZ10/F=F!m`55^n<c?
-YQgn5b,rb]Q"E(^YWN&s at 7F(sE.N$I#eU5eAF?,!U.-Q_7U(L=[.*]Wk.o;s<-qpC>pg]7$kW7B.Msa,P1Fmf3WM!gGJPJr
-!\03EABJAKFOn$5VS6KlXc]@:<]#(!NUkqsNdZ$)Bkn6No#a/Z5HfNUqKtt/)jMQ]Qq+Ob<*7\^d=aVFZ^%TbT%PY<F:2Pd
-L+$FQN"8@(?ir9Kd"pr"Me8Rh.<WrY9m6mS)/9IS*>hojRCe;m`cJY'Bfe[3WY2geZdnVSI,[\_GN:f\r^#F41D$J"l;i[7
-c"@)J9bRZT/,Q!)K?)p/#8Y_fm.`M(2hjcu]drJ,Q#A4hp2ahAqg>u,;DJ4ha@*.i2rMI<r+p&Bi#:s^cf(@@d:?7PIU17c
->^@kf[Y&rfl7W71QCG0]\?h!c!F=ogNoCu4#FTIaP&?A*odsDM_?I][77*#r(r'dA8M5&P?F)7hoF[V;-f,"+IsF at H77cD4
-b[\GY3PdWS\RhY0HGasV%_KT"cM8YQ/Mr_*<hRlDGIdiS[SCNY.7,e;/2.Pi2l,gUh9;).7o?*@4&I2)*D(D!c_c6W(HBp'
-5R_6+#4#+s!2oJ2a;Ut"'?$9]=NRN0H.lHk%d:TEp;4EmD3"t.&C.-]U<PYjJ:FZl8GJn7UbU\5J at 7rZf9hbo:ao_OmAL:A
-0L0dLm1aJ%Gb:rkQBSF0B^O*bbkEYm&(0YD682J=/iIS6jr-W`LC//lS8Z*ql\7'"ne1:]ba/U5Ph?h>@$q\Xs)":W<fh5t
-#/t\P2,d(LE:7F8)u%*gb<o+;65ZH.m6)Sa:RLYfhHT2-H0.2o)?g*Hp&Mu6cFb(!+Bf.dLS:/2=r]?kXJ'($1JI#T1dsB)
-R6&qH%F?R/.lat/hRuMFJ7/]jn$4BU=t8MorVWok9Eih8XneK"5u_WX//To;P]t#P^+=1mC4a-2b7j"I*l$Tf9+[D()rK`"
-VRBCdhT%2Ml.A5hOT[RD`U>u,#>?A/Ru at W>ZBa+8:*<o&?K!b6dLQ/iofiurpb/4iO5qmR8tR]*2mD,s[sgAFXs0t_W1`4r
-XqYoWs/eTk]W3.%31M^7b86-`$9)T'U$B)hF8XGi0;:-$q=XNn-6%u;]?T<8:aE!dX[14 at QmXm^q\uY*Nf\I1LbL\e(02`c
-<m\IuigtDC*[0OCFC.SGgrKJ:SeY/6/sX5=o<'@<J,s5BHH<T2Y8fV!/tnfI*kt15k?7QV)B?Ge-;HC'0[VZR,g:sCoc^[D
-W2!a[A_4CACUClU]tsaN!#Pd%/+%MsA&=TI2(^\V1W.P.]Td9I]U=$X_YPC6ot\aXOnK0\'/=bo%G5=[L;L]];k$NIgH^Z]
-C`EhAKh]3_(s;PB5$[OkmA7Y95_mgh+m8NDj!('0R'8Xkn9d7nV@]. at eDEM[j1FPBDm"g.DeAJE0F8?u:;psV$=sp;RUQ"2
-AL/HdN]N<Nl=?islrf?eCY8)NMV`HU&871jk;c8O]EHgojH)!5V4kEmPuqjt03?5g at 1KZEVnmGO_cX.S5ToZlk3ugD#Basn
-NEN`oA_<s3,0TQC<eid;-OgK2Vd-Dmg?p63<<q;p9hU#5'kk_U)]hO31^]m5_[LW_c)n3AUbcY)$i4a&@YMe=%N5CtcOScN
-F=Hb$gd#9=72KA6]Q?MXhXu+uMEqWjZOi"MF_%s\ORBimVfVQ\gZcI"6)EHd-*0'h&Wj0b7VY>nCF^%8l4n07IW+\QBce5c
-r82%hn98<Ue9b/8679PUDYlLV_n9VtTX0gBp;tA"qoHBGY2j0Ap[OT$-cYX#U>&(UqS@%:r5Nu!VjCdqKO6U]?)H6Z/&)jY
-T(R^2=8mop57R:<KF[&".uj>ab,K]HIm\a;o3*_/I"S]@-EZqVG"4_5D+iP1)2WN,bsJ3:YuI#phOUfQeQ3l;hZPU$R<MA)
-\1=&#0[AeTRBgL]H`7&WVWa'?f!Bl=Hqs)@AjNdHlq]U!E/ek8XkiGt(EbM+!t_Is5 at X_9^P at L]WVHfCA97-dhXd[/`/:om
-.sHoa*UL\R`_qqHktMD6[h+*4b?="gmcpX`lNq?O)&f[cmEN at sE!%G40R068B&RdUk\Kp$9`_7sJk@:h1a.VVT2;:_q&$mq
-a@?P*\&B at QjI`9m\eY&fes6Ai^;7*[b+_MYZ!Z8 at T[apYqIU_)N/V`(Eu&Z/[)taH%#I3*4L*bG[\[Q>F/kMXAp(5G-WWsr
-"1]a^j'kjV4_U'6qC`nr)Z#+3<lmI-7uS:. at L@3u&c3$*I$Y:8G]Jo3i>#1DR0*n)JQ,'l%'U&L,Cd2("a'`V,P,Xdi5R$d
-TW5#+8MB?mGl00)kM<rpWunVhG)]AQP1+9G6M at sIj**oCa%ToLnTgd^g[U\n5gGR.C91Y_'XE%#XJTj1+4+:ir>,CTD/0Q_
-"B/SE8Tt+cB09#91'YI.PFiR\+LKMoTOR?8Dof"1TL(*>`r8tu&F`/tjKeNse at SLI.Gn3j6:'J4-M_hY="&a"If;lR2T':h
-OSbN75Jn,T;uB-V_KA>-j^4G\8?m.B0 at T,R6m1 at OjLV+lnKmXKbc`#n'O48T4&j9iV3L&EKjudFnHlhU*aT>;'c%?2r57bK
-K%mT_jirY!^[.h-^H)RL\KJ`Z5q at Y)m!ASuM.`p-/OJ_?ZQBh32g[+qX5)=G#^WgdOHmW&52RP8:kmm49.c'2`62n_@`VW/
-ga-53fpm_HmX3fbgDopKW\:[.`Ge7M+U(m4Un,n0Qg-rg8F'ZbB$&C3s(0C>p,*!Z(n?Vgl5[1D+ at a'nW!9D]dVP=qUemXu
-n;i^0bT26<d$d?;%%3_mTZ%3nh at e+o#=<XQV8^tBh,R/#C43%k)6TWq6(ZDAJ:'("RVK_#g=ku%c(ujD%It7F[Bsq_H3Giq
-1eU31BqW[hUMJ(9D:2g0nD#I?.1ccJ#quoubUH?'78U^o8V.ie/l#[e0Wo[=UW38s0&(!RTXgmP>!@3/cAi7s['?t(1p'P&
-hIW!Hh?gr_r6('a^Q3H/[bEOpF0'Y8ZI(p+*@08'buugOC4RjTl3+bq5r$'loC?N5ec.k)&`X at .VO^JT,(K8j>Ju/'%Toa@
-YmQg1 at haOg!5mPnTo,i!'(?=e"JCqO<anHQ77p!-5=ht]/XKLV\fa?'Rql[\PSa\6L>BhoQnhO5Z(>F.?H7I[,AW^g3j9mp
-&2FC=jVJ^hNZW^jFs`/;)##YK`P'NU!o;r1+deKV;18u"!'D2Wq93e'>e3FtFq<WOKl)f0q$@>_\J5u#0c=r at E=0rKcR72j
-^c^[PU=[b at aO0&b/QRZ.)'.JaSZuOO'#>&<O)S/qb#XX);0T,Zist5O&)FG6FP6bAQ0Y at OaEW-K:1YnZLm7,R5=DR7WODlq
-X^O(V2?STb3r\cL-_-3)q#`6UJ(Rc)+*dT3LgkmTB!JU6g?>#me&t'XmLD-3?t'(net9Wp6`,&7n.On at K9UmU$VZ%:YR7G[
-HqO^,>*<r4eZO>F"KlS2,O6[(#l0DHctJI8mV8I($'>oBXR_J"':V?*!'nhfR.pm at 6)+Nm8W5n4.3oh+eglH?_!m`fLB+G6
-=TT%G+nQ['@ee\.!Aeuu<fRN=g$e/ciVR$Q^!;S\G#g6 at +KC\&@[\6!#BD`DLtI6=lLj4%5&6rS)nE4tq&<&do&h-R#\23N
-n,G'YO>$>_$X>TDmVG$#@Zs)2@$]Uc]\K&\="s.SFd%j at n&*-'J]9sU)Hl]D*$WrYgK":q[WF%G>\i8A:+ at 9S=H?o:j.4G\
-IAMM4Y&l:.AbEVj>6(:`NE+L!C at 7^n(SCn].CRKk].*eJ0g*5-;b.KYe7Wom](q`tGD($SY"%ImO$Oet/F/=)J/7)aR[O3D
-XU_l`3HJ.+5fP;R]&Ph:i.qJ:%Qsf\G'V at kLTe!;[m1h0SL3f5>"E3B_TO'J;\h!-,DRO#g1d`0c!`A2A'4$$ZqBmc;fnM5
-:OdV'+VS``W5*D>%^dN!F\Zm^QI+APhD4UJ,cq].btO;1Ahc^KSD1b8Nuq=4.fZOCS^'[<]]C=2,IN5U+*ncm;/*U%(!t]s
-!>j*Wbqdm=<'[sUmep\OQ-8$DEEo5C,[j:-<ljLlEnm,^/pItFOCtkdZM2%EDm,cGSriOpD>Fgio7JO4gDm at RScF#$+f.Q4
-VJ;@9C<e,(K*VnD6Zd^/*^UH)X+@^i2c1SXIYUEH_V6/jO6BRc^W'n[%kB<q=q/D.d)/1'nZAEq%+H49"#[9c1GEpIR;Q@^
-LL3">`Yqi8`X`c8#t8+A"BdJP*iLC8*A;ns!WVM!&3kZ.`s-s7YO3+9qVo'E$liN?X<FNk(0_]A\h;1\_^dAJ5NQBDB_\ts
-HUu\H'l=HO28>3Z%B7BcB:-- at K'A&UPIC at WWG79rrmXTb</l9MNcrHrcpFt?Q*\LH>b]H/U;'_,/S at f;p""gP<SS!GCG9'*
-e[OI:BPsqPk/0ZLr<=ho`C+e<mnUne$K$!:1/t<POdCG`blIi6^o"@9SIAB!eIjkN7AoGlRZqS^6L&p].nft1UHH1$p:le6
-UgC))nlLr:Tm>+o5EJ7W(EGh^UXllKqE<mjMC8l[=8FGl3-sj/o'_5fSj*.b[qsDjlH`Gq_.)C7QRCtAIb*csk1)(L2EbrT
-?kS"ni9XsNBU2qG;ZVE&b_M#_8fin*Th0t6/&omi`t]r'@`0SJ%VM4H,*;kI-6X;W<VM(5=0*oV;0FEGRXFXOWsc!@&8[^j
-;Lk/dK.L_=p.U)VJ8-q;clI_hT7#$iKl`jIcU<H- at a!)jl4J>t-<bP*j?Y<*3=H2s2GR*SO%jn1F=EulnMd;'4;Jnp)c`lu
-!o_-cODt=6.qZ(ehPEOPem(O5K-Dfim+GZmZ^$OCX0:goI#*'nAA;`)m-dBr^!U+VOHjPu%NUEfbq;bc3X""gb8K_g7l_.M
-g:ca?eBMfD7`;Cr9PcHPIJ.-+fh_Tpg$].Bp%m1Ua0N5mE4Dq#;fl%Qg\tDjZE4IjOdBR4%/o15@);e)YZt+(*$M[RC/Wp!
-B=KJk*/J.E.q4E(I$raWKp?3-;8Mq%e%6C-!T:u5h>@SQK;E8:0KYEJ3b%a3]rPsOkX+L"F. at JHI,WEWAAHG0j0o:M72iu?
-mh3(J7U!Ao9boS at X4rHoaqSp7%_0RM. at JkUB&Y_ll.9HKC)MFB"J:hF6N?/PNQ<Pm2m*#KPDG=T*klCdUE6"KjuW=NojJBY
-Z^lCK#5X<AGU9r]IQMXN5i^D^S:Wk-DSSW[]RE)o6A/2FUToO8/!`mgU\mK`?/].;>aar-$(3Gp+F-94:k[2LeW at 7)o&2sN
-obnP2'B[s^k?>Qpd>\nu]#W at Ckf_Lcd]-N1P"mF'W8Phk,W9"(9 at R]qLIE9reMMU_A6</U27u?'MOYL[84-:tG^WV/OG_#=
-H8\E)dr:&0juT5GohmW>>P'QCY#4^2Se?-rBPoQb%LX1QhGK3GCJKc!*ks$i"RL+",I.ej0R#Zgbs9d#nCVi</3Mu)g\:E8
->04sigDNRaT&gR&'kG(B&]@YI2l3N^8X61cs4H)Q<M8=J6BJO2gf)nSrEQ%;)(E"4qS'3GJ`/Fa/GFF0Ig9 at HZR,!4'F"tS
-P&2;A=tei9c\e5LB^.N6<o@*Q])1;,7!JhALESG^m at 3`f;IsR\q?o#2o;NlFd)f03*kF^EENKs;.n++$bZ7K5]kAVpQVtfc
-67&3S2uj6O%.frXB&"N_A0YH]Hu_?7r`GcABDRP%f>9K"AZh%!c0N'I.n6gXc/sNfW.]ZlJaZ[N(?hMKK[=UTZpe;=aFs)B
-:T<Cl3Y`=t#g_-+<K:g=Bu(?aSI(u<Q.QYS7DgKtLi@!8a3'b;N``3i";$[9U>6G#r]=dKcsj:upo`VejAYjuZ7lUNs6@;I
-P=qh'9RnO9?mg\uamHs"E\"3k&=Ee^9=K`?[7jAojo`/0bUH>$b,0($dF?;gFa,t^d>MC>TU%hpg4U$F?L5up$/.pq/A[9-
-mHXC at Kkk&Kq?d'^a'=2D!9<7j#4^6e?9[G-=)#as<kI'7"=,,=OV[(8?Hf7_mN at D*K1EpVXkVIj2d`PS+d^e6M0Y271;##g
-3\p'=p4\^N[+uq:\C(XH_^d2pE\UcSr$gK0kilQ3'1E]B]'Ydl!9e0q'*@h,\8b+"E7#8B.=6*<eQPB`&#p,h.'VG4O)9"F
-b8(VS%/;tHXGE[@^gpW(9YN#F#G]N8=7;=\7V]VN(?.0/=<L*gBo6VR"l4?aZgT^46'XY<g!Ec3oT1mbi9E6'FVI=YV$]m#
-ddZjIWB'I"c[$fHBf!0#c=i*Cqt-0?2l#ulT]p])^bq+77_Kg^+aDeKFR$U^o at 6k>r+NHQpMi?HT!b0%XEr#E at M1q-4AGe#
->'spuZ)V0e(&desXE\ahiJL>,=\$-2i=%A3>uTI(W-L\Z=tRYuFsHsCYO>rj^,jT'lK$I^>h[#?F^;?:Vk)f?R_<X_>*:bk
-!uVI%ft6eb1I<%d$VK*c<C<IX/3MmbdR`'(Z;cK_.cC'c/p(l+R!'-*F'=;)>T<01XrOTi!f'ZHT`0'B('C,*K--ZYfK=Ql
-K`uTQ\;N%@&V;`6ZA'B[H:0pH]/#e at 0VGsF@h0B^%)&<IBssPsA?L6!enmfChHU97ms`^Fq/`17,.T]CgIXQ[%E\_,:"F5s
-&2ZJqQ:fCsSc,*iY?=soC6TOm!I_A3o)],0TXRT,-G1^Jndc%g;\SY[Dh>$A5>&[cTDS'%a$"b$<NdK#m>[<B^+D!i>CpIb
-">3$:rt7:%N4tfbW\iC+.GFo<Vu)nGEaiAa.Q\KgH'JM<;-74X4X.1>9sT3.Ccr5F/Y0<g;pPZ02nmT`;;RIZ1ZHlO!AOaY
-i*^VaMX%EaGUctWFPF"gr`+^_"ZA,=PKmFBj3an2#n03]#EMT*,\0TeGe2hDALt66^6G`#R]BP)3j<5rg[HLFs,k53i]<&+
-B1ts.P1uJ_`^DoN'\0jhqKcMd"80;&Ln at N6IE!;5ZbM:f5+K<PF\HZ`DV-AV1ANO;@3R.cX;o.lU,qnP.1C_KQ\I&F_WtKh
-E at 0/8.ajhtU`aWrMNN[oa*L_UkqdH.h]'Zj-,0Yg?Z%,(V(\6>&+]gc`*>9n>\BK`;k2!RUJW:PIEl=d;Ap6Y*Z[s3e#oQJ
-L6&i-<QM1RD<(E0/_nu&N.1HA$;tr>Yp>!2E&QJN:/tQV&W_\/Cr$A>-=M'kK,rN$FiA7p0c4:^CfO[gS(U^59fD\#1eH<d
-_jZt%L$Ut`P5J36-Nh?seWbSlqNE'[&(<khRsjB>(7PsD:1WNnNa!apgEOq1DD?";'hBu59!=h)YZB$F_$\0_&JC3,&'Fku
-n?s5AC=Y.c])9A!<SIpOfsDHEm=d0nrPp,!Hej4B77be$=c;khSoeA!D).X'D)@c%_*(!d&K<Y2QO,<_f(spA>$5mTo-(u3
-R0(V5ZU/B&!1N\Zmq at dQhjocrV'-]rc(_CW_qZ3b:p at 7P^!#q]":Ug6@)LqA4s6K,5P!cOhX[A[qeI5Q]]b5`oVKd1&Ad:f
-kmqiA$-38LJ8AM2W\A\95q?C'BA2Wj1[?X2O*!XR;!LNNE-o$06C;11>!H7;*Tg2`BI'OY)Em9BfMeEtlB(lpa&2-Agb_d%
-`\NA+bd/QF9)e7"rX4=f#,7Q=a!Nr_&7eK&#kd/@R8Qf-AP0_1!]$+u,u2.+?O?og/NIZ`M&:b=(.odK4Kt\4Mc[m^`4:cd
-`b-4f`8V_/d>,GMG^g`pIi at grrZ9qn(@IF^?J-b_[Nc;dBca_Y=='"$f6_ge2*Tmb7Y*0ddC(g(#aV_Flu!A at Z:-M\24Jo@
-0K)D*4h#Lh[#pIo;BP"*&f[?5]J0,[Hgb_Q).gC*dg<p48rj-7T":NH(fP[(adS@:E\Vof`R'mUhQcVH8h^qQ9<WFh1uUah
-fe5dD_cc[6M4G=>`IePYSbD2+$TD>'jC<O'+VM[%4Hp93ZB)Et1gW6Z\FPc,:*cL0Gou4Dh]"#VX?C.d.ei1&==_2m7(#Tp
-`1j]naCBKl8RASQ-sIdJS@&,R.[,u>$gdZ8#Jbt*V:+g8*C-K(Pm21-Yki?U+l(T+oo3OU*er&5+8Wc2LHWSuE=?\$Fo[XS
-)C*RJ4W"17#k!:LlS.J$V)!W":'ZZ"#PB@?G+t6_s*oDRJK!4'L'!+B06/g!HDtVM+p/RKPM_r3oD0)N3k;Sh]qXV8Ej9ln
-a:hN&s2Ni<_>SSm7/1dXqD/"g3T'r/oj'&\@o?ZZNbmc.=M5")P3,l/@Vl5ALrO&0O`(@M88H89ncVp/Ji]^,',M#AQ^obe
-@?7TV.7c^C!o at V6\Eo#"WWoEi5X]_A7^.Ri57'<[mAW</:a,##$R3%)CeKoP/)0!QPoj7_d.O0o9S5bM90d+T;mfhuP7U_5
-j<n)9a%Y%3>,c9eG]Bl</FO1BI8R51^p\N at a7%7rQsA59QS*Y_[`8:_Xl&=>kCG*[W-rP(JnsdRN7sjTWk;N:'P:t^DI#R_
-H#*)[#,M_cToPpTe"A7EU2,/_V at 2]DcpL`e"u.\\g>93>pTM95X?M"2>,l*6I at O:^QF3EqA=EImNE=In-`Bli4uQB(O'*$3
-U!&.eY,Det;T0KhIWs-MA#(l&F'JRR[)6a"*C_uh?_M[TDj#VDG#Ip*Km'T0JMh!/Ahgl`i5)'l0P@?2d7O?@MO_==S&(%o
-D>^KVPagpT"(B\6a[GTL't=SMg6m+bY,M-fiT5UQ>5^&el:'2;iGQt?f1s%nrCPVUIG,.f_.=8qSA!kZ#-p$r;Q`G;<Hc_H
-(#et&B@[pu'#*m_hfdtQ%lH'=9$"630975qWJ9Ip$s2Xi5$m_e6I!WB!^8d86<Y>BEJL;1(?$;2=!]`WH8NbTAZ/eH,YT3.
-j=M1E=e]KNdqV.U!&`rZcuX&q&o`\4VPN6<FMTfmOBsC+#tY_hYh]nlK]!6.?q:@:!P!Ah20U\+]sRgLl#0I'Q\gg=,&WH&
-naY!S5;(Bk!f".TO11<ogV[*,#_S-J'@WdqJ"\HH#Q`u:Y,V1<Pdf!sOdM,a#a'O^>`J;>9hQ"cnqo-klUjB4Qj8ZiHA2%8
-$%ZAXINEp:+<l(@;t02ObnnfLSs:Zo#BrWh")L5I!>W2+T)+2h7_+EeEoZ=d$E8$DZtQ$kj6%D%os]Y?,'c&?"/`EkTReqt
-LLHn-W7aqC:M*<j8YF-*(V_4[8Jd&Y!oj:`9JIf&5d\EeEY-Yt0 at J6pS+p4cidbWH],2rQr[!jTkW3G?gBYnm:7.s5(j at 7@
-Q3djm%Gm%-q2$QD"bSDoM]E6J^Oq/]1">!%Ma`#lToGX1,;fisK2NO!1huf$1p7]a#-n6_4_97)WpDCcP`_c?X?-/0fT4,E
-aMlY,abhA/OPp&$'TYm>mEAV%EM[Ui1GW1>P*On$mKR8>QR[GASf=k\%hGkt&^f;+crDeCHU[R0GE>Wi at 4Q@F?3rbL)]:HI
-FID-QC!)s0L=@iYghY70D]`4Ant2`3Yj\o_S^+5#K66?_L=Q](1t50^.6D>5nd^CU]>L-;'EY@@mGk\Jh/]%J!4e4@#jg*f
-3Xn"U$o+3,Y3=ash-n;j%!@YXX;:p<G!,l3gJ5el(7''bXESWCcu"#cblKO0"Bee6`Emn34@*NADP<-mA9=:lGf3N*ViYL5
-A<L%<fC5Y\&oF1^'N+@]%3*!2&kf[Sq2NeV.&L4P&O%LWN_]K,BX4C!\&ki&G2RqnGB;MZGLX,i?)+t5D&+VcR$Kq??1ZVI
-.at##dOFP+VNtL@&oO!a:8;=KO/OIVV&;Y-[U?4_qkM$d"h/q/"-.0j\m[DU,.J_TIuLJ\]YlrTNW9L_E(clbFj*:<CZ>gY
-glLd97`4#9C[GMT"iTn0?.uTtY<uSla1OR5A$63r'G at n4S]P3E_9->l-S,PfTJ'UI0c8TrCN,[fQUX/gOdKMm@%KW0miu"T
-[]0MnIXUoOns6PY5)I9(mQbP=Nh8s%q#3kmjR7OkUs*'EEhfWZ'XKBgq!U>SgK/t[%h8#jl%Aj96P<3UCF\1MHAp%tcu9lJ
-EAQkFjfga9)5W4!.E$nes&F3!.j<*p-[D08-qVZ+-d'2S5_9WF-(5Y(V^\@CBr:qb\\:js3dCS*%a at F&gDB@=*gWN8WDF,4
-,\0;F\^etJ%Fje3^&aeXEcSU(2J^RoWBc'?U)*"tQ#`RFQfB-P2'YqKFY4T<X;uk!"<-$/JDVf!F?19u$LBNji/(H3F2""n
-aKVSji5a at Y%uSY`L(f?Ie2/#S[4]!jS@:Em1r(SX+/7FZC4_4ChY1FO=8SJ5ZjsWomnRS`6-ReQ'-d!5EpRop_\Jr:0Ut*`
-KCQVmq_m"=/doR'q$M-g[PJA$ohfFj4S=Sh+UJm2[J7E/"VM0UGWKQ3&i?%YKVX^[de3f(2`s)s3GX,l\?iV"FI&[R_QOOE
-4\g93TC\\I!d4$20,Wb-!`Vi'fZE&ScCMG^(8rA0jUk1@^W0>F0dj&0-+0VVT#(*D![h4q_ at HrI1P+hGNb;V4-R.r::A:(5
-^Dc?DVge<c_<-ZQ'$m'9JZ>g?npB,.c0-RlCPB<I$=3 at -"9@:/=44*!)g:"NCRL)ercLT=A]NWsB[iK+H')\+TsTU#Jc7ti
-;B3&AKN8t-RKhu=$Hifun*`82hEp1,>2JlL_I('Fr6oFQc]8P=bL8b=?_n3S=n$7Tj9puAc;WQIUHk$m=[p?6H5RVM"HA*8
-JFPZPear2F$/I]0b1C1<7+fPORWRlPk<BJda?kHV6?T%,mfNYC0as_4mTkqVkbdaCWI)lNn"pUH`AB&LCW2/oY7i=/n<@#E
-09]1l]ghLPZih6N-7kN4\>=`0`#NOD'Lf/gq2"lUG[&Bl&kSI/`%#>c"'cbInm',b8\]!HS$=mi+<1ANfNa^AE]]%NQ^UKC
-<e?$dq+am[M$5HJKt%F'lb$Q>^m?[$E=:>CipA`Z*2$"HLklN^S*nA_WlU',IT4nn5Um'L7r;FGju-ZNNH_-N$6Zf].Od5?
-RB.^U?#A=2"Fm^>XZpj@:]MXNaJX7?IB!Oa6$$DKpr,,Z4>F(050oV.\_L/_1l1<R.U<79>0TsGTLItGd8$)GZiSH#ZV`;r
-g[2"'_:H[DG<YFlO<&'9bgiVmg at a2_Th:Y1+DOTdZ$O,Tb17)4Z/M_9gDutj1+^.;0mqfkk0VuV_,*>+O]bQs&e&4.[48VS
-4f%.klr0,H)UD&:\gC*[Q1`19cR(8j9ATi"?<QKlG`K3A9]X!S5%rX9Lp/<9$qp5cQ.>\`r<Yk(DQC(0aof+5I$HtGo5FU.
-'-q+\\_IegFUdX>R:Xsi;`j+9-`e<:2OK#UE^-5C>&=h6juh:S&Q_0Jo#1b>cYaLBGO'XqP-\"Xh7q.!G8OuYWO,K4eSPgU
-2N7rVaeXT(/U\2g0X.b[Ri9L_L.pT^HJQbK.fL6oV;gS'@o$Bg22lX#$\T+1Fm&qi:=.c?(C9K)H9kI=_r+Om+U0,`$3qYo
-aqM&a6kVW?iq9'AHsH:46W0!H^Nf9=.a7/h at EbVU:R(%`')gjgOrloS]R!f1o984K1$;gmX!c`.pr#]:P&o5CW[s7S>B%Xr
-&N>G[pjY37\llJgZH.c\A?MU>=Ie`,YtXnd#Q at 8B!Z+N\INM8sXpY3EBpR]/M?7IMhY9)mlgpCCh/h)Rho;/n\mm<;\ViKO
-b6^::)Kt>R?A4DKge7e_'BW$'GWi\RUa>Sk/3G6m(5Z?uMhPt8A>+TAdM0"2_CM]-_ect_m0f4e8:$'P"3V/B2)!:+CY4n\
-Mja4u?p7CXo`Q,7-7#?WL)*Cik*q\F\-9Smmi]?-p2D7D5ncn>0MTp_eR</VH)@,J!c.pDLKiF_n$E6''tTC8X(RGB$<ALB
-&6mG^2*D5J0dBtZ63X\hafZV_`&[b'3`ZrY;_nOn!"Ogld-^0E!/&)]!tX[T/_W"]M.FR_,`+7fc]Ec8Sa:ITPa^]ChE3I'
-OBT2SH0T+c-qi1lUC<RD%@Qs[,#Y,h[@/E-;6DKK%RfdIQ,3*2D<p!uD+Q@$n-]^p[9>Rc*Q!f0r8773?b_q(;=$=Ee%cO.
-lWmOZ-CTrK$i\/Q1E3nj&4-bA0HH<V,Hf1?c'PaKk$'=^8Go;i%""0W=bQIsD`R-D/eW<omS3hq%g#M00pM3rE5p@'!^et+
-b>\Kfi"XpK>W?6HALEk-d$-Ka7jL>`$d+;K\6DY%%L;e)(-N[a`.s#DBa0$%YgHugGW,O9-<bb1U$E(nHZ7Tsf3$!NGo[b'
-d!I_-p4d at A#mGCiH8KlK*.BO[;]U0Qke##9"uWm2LTM*9!]90`CjC>T<#Ol)e$4sKNi[C[+"5^*QO5hd9[`OSpn"+MfCLAV
-rV<eAqGJM&#XmV/qnI19bHSacN6\r$n(j>c4$QlY+R/^Tf6]]PoZNSb?TaPMjRK&/]=SB]e<2tp5DK@[[VEp=SaFOQV#'jU
-"s6TU3aCGGFEATcfeOEl'PSr=5C)DGi:sA]]Z8Qh/c.0WU7Bq>\],0&#\-EAC:3UEdL.VHjGoeBnD9eco7-Lu*Z$)VfE'9g
-[c_F-^*Z!3A#ORt`60pc#Zm8Ab)HtEQ:`C0lCo%AU&uZ7m:GU_/*,5/jr(36)lW%3Z/lq#i!+V2qguBcZ9\Mq`NW>.AU!DI
-RmhfQ6$CFZGB!1p\lpl#6ogC;'Nt)o\d9gkc,_ak5]_i??m+#WG\j+l=GEh4Kq!^>2D6/(`1-1(jAT<eU$f58Kg'=Lfu&QC
-r.npGCGV>jjO%aTj]9ldWarXu2:X:Tqp8puRkA`!W*PAG1iS>.fqDD6h&.^r`Cn^r6T&dsGH0m'Zj[K?DT]S-8.$@)h8j;p
-^GFniEJ)dc010:'jO,Rb<sTBnXu#cA&JlFG$XG+8ZTZlOM"C<:hN9h_'gdG]I]aN=E0ddNJaqPp8*b\_W:]C0O1mrI!.^XM
-NBJA$5p+CG=u)A7jP8\URdLZ1_;u2"L<T26R;s2cO=D1_-d'Uo>0+]DT!+eq-mmJh+B.FoR=6Go>Q`dLTPFnMN6sKR?"orQ
-J1cP$epf,=Dsq1bKe"0*mEJei5>l7beH;MP^WA7*Vt<_k61/*l:R5Jk7Xp_Vakl%&/V,839qQ?i<mqnq\L1`@:f.L;M`[Z^
-q at XR8SfUFY@Gr3J0&,RekEV=2k\'"33N=JH-ZZ9'K,S)oOHC8;W>32u"Ycb.&g6D6"6pu8ElXqV)idqF/pL9)]&3u>6RVoV
-ASA(POkL/O3og<Eq8/U.k<;BXf:F(5\`]%!m.oM:k;ncm]9;Wd:B(+/6s=/s\**B"MYR20>Ea2HabK\V%j"8jr-7c[:FA:I
-D/F0AdQ;.CaqqJhjZch8jtUPkG$3\1Q'*@n7ru%YD-SY\"g3[1"dWpk(EgS%Mhc'S5I_3Gll/9aBKtmQp.sf%r at _@SXVKa2
-aGdi,/jMH`MZ9tQ<#1c3(oj"tOmbgh*btjDkqVRoN_f?>p!TU&^\+%\VA_DB:3j66H9knJ:4D3<b?kiZWUm`RdG,Epj;R"q
-Q22;;b%.SaU:k=Jl]Xo)QII&roPV0Qal'*^"7n?Y1sum2XDp1<h:2"X6T'$<oA(u$VkB2I7s;&.'T&%^9R85iM$'o at -im]a
-`0pmk9lt%Y\rqToD,lWU6Ld8T5.(83B(2IYUJ?3l$9pC"h<r?anlYtmp.%:tfUdG[d!DVt@^9TrILBGunod"X at 1`NRij;6Y
-Ec]/:h97oY6;eYV`8C],':I'HJr5_c'1l?`oqg1A4CWoUcd_p0$6^Lgj+k!6X]d:tp at G#YDh at Al+.HI8@V]";fBTF96jA<3
-NGrSX8q^<+<_0''/TFRgHF84Q>OM-dE4TeNDLOQZLsb[*4"/QfdhLj=^n(uE4Wb+$fha=D&e3qDH*I84N#q&e;7F:I$`p0A
-lg:6gnOlVXTrZeLk\7qpH]aFgZP8j`;AHC]a"i+kIr^,SIYu0E'>t@/oQ7ubd>6Q8P>3Z4O/r``D.]cM2E&=*>k'9h;oXYu
-IDD7#`P_\%bd9<o%O4]-ZC$Y^Vn\(fS=k`s+pVN]WOkW%?X-i.3t9`=$-Wr[l3c1J:ud\s?:[-ef7fpDL9"hsURWQ2pQYR@
-C_!_%]\(pF7$k0JF913fDACsA\dZ*+)FB0/^+O7maroG&i2U-DoRZBdJZudjR(KFD at K8"k\Q;hf%S&Z;n]Z.1*;7`s-Tni\
-EGP9_nAW)eH[_#ST'Z8ljM/I#]Q6m>k$:R)p\*hHE6J:Q:=AaU3'dh%!FEGkq5Y<pIsj-;GsD, at UWFko-ia&Q_#Rj+q;1O-
-VjKjh0"$"D?p/f3T6j1o>c[L`!<j_#W^<&?iRDYVFs$<(:^buoB'cCQUUidk6 at 4HA#$ck$_Qd%#]]Rt.]$b,C*&Qal-sLl0
-fOSjXlslp.E^\<00ns2AR<7T&9Ao:n(K[=bd#Goqc\&n;84KO1['+L)l4>OV!GcAua589J(@Y^m/#Tb%DtM.ITW+qsfg6 at -
-_MP"t`Ds=JKOhE-s%u,WaN8Y,U'=SW`kI*EO61#0j7Z#PVNca?K%bR*\/6`mdVa0RoKg3FZh7^1XMZK1E*L1P-_BibaLcP[
-1SS*H_%WWckCHaai3A+KR<k9 at fuRA=Ekd-P60$/o.+gdKk7tQQ<9L'tjYCEU)1VM34!4>JQ4lu5l8E%!I=Z.pMl(nX+4l[W
-0#a72Vid7QABWV'W>#@AAD+oEM9Np=HtThOga_#",u90Cn*`$cgD0ZdZ8;!@N/n35h]!12nBecn0lnec/r&F":eb7ra#5\j
-l!s.8>V"U=<+Mb(7>n8'j)tH5o_b?lBgJ1?f7qekf$mg3%Z9SVF3D=I0Br:?=O.4>Ktp"oYbBHLfDK*)BdG,>3aW[siVIt^
-kBq5_e,`S,,?D*q1g.WddPVd$>(V at 2*,(%#JTJE$GM-3MTDS^nYq*L18ktpN_87Y%A)M+ at AG'^,`1'&GOTY;l0ERVWB4?:h
-&+,cD^8Js+AucP\\Oq$2HrDi"I%Y5 at MBHa9e^!%#@am;;UkJ1eHKsgX;1S`bA<@o-g^s7gSg%362Isf<\sY:R'"7_#X1%fg
-IJ!2tA[\!RY8FEs+h:[Q!A+IC!lDe8ZD"],8sV3/\V7?(.@^EQ>.NSWp9E>lK'heZ-m/t.^0F%AE;WrA*^W>BIWCAIdI5k[
-o_`ZKcc=f=E"1V&H9N5$o?k!2?^lGU.XA:`4ME at lXu#n7OlYt<:B'7`jDWWt,?33dA85\Md5RONAtOE4Sk!ZQE(QEB$pgkf
-K$ZGbqXPr'9:6"eY_R?'\_(pDViR9+$\:?l;bpM7cGC%=e,25P+j=:Q*M)[I/C9nUf3g(Z)m>$TrocuY#md,U'gqsh(#Yq*
-oO2[d3!-KH?"8g+\Vm at nZ,uCnkF?YmgJ#nBD9)C3\GC?\SV[`o?A"9b(kIh<igr;McFZ^kqI@=%TW.O*Fo'm;FW<HNrgI#3
--8$!o!1+)t&"jtX#F1M.IG>rE$L'GW<]T'5,b^1kC^s#]Tah]'+_LnB\%+D,'7lr at 2&M-,%3D#,&Cr)uF3de:*e3!M=;=Z<
-c. at X*XTiIDr`*c9V*.?Y257'"o+;!+^VLg_)PBK#Fg0r\Z93_e8hH43`<;T5$1`>Yk$$"^+BM/;pa_bK+jth;6(&_!l&D=\
-aSNP5n=>/XT]OuA/%[=A(KT?5*nY*u9&NE;$^5 at cStHTnGAE<4jq^nm$al]-[[@/$^_J]`]6NXH0C>jkd2o=8=?RadW)]TE
-!P]L]XQ at EWJK""@H,&LnmjA'9!._k8%7>G"e5>1C4q'`IZiQ52Y1?(gfX.4&#eN03J(BKdjWO?F<</<PD"-h1@%*@EaR?IE
-Pd`jC61narM<Vm(h.JB`XZ0B8R9(6UB]?><Wnt`d3^!W0C8FsCX(b5i/i[5lY^dXhdqip,BJ1seDZ._cB!OW?;`unia+/X3
-R\:Yj:bh`'BE?Qt/\"9H/`CKNUPEC*ruJNcRp1WJUEFt3%6"!n$pbIoOS9@)F54h`9\G>0.El);I&fVB%Ua$YJJL<f]:(I)
-oFmNf&uq]!L:VS<r#I9Gh?5i9Sh-+:gs"Af96rd=lM8gN4b$C8f9Z(,jOg%G+7X"0P"1iaDr1Y$^`.JECKCdJD>7JA-%Go1
-_A!.D1r_YP0rB"%"t:S16L``D2h&]iQ1NXrk%2t'A-QFt+6S6'Yb3I- at K:jJ4k%-X#kIt[Ggr*0l.OBllKO20)?]XY\1/A=
-U%*6Ckfo3O'M8bZIsILPE>_lin]S+_>^c3l5?"b<"n$bi_SKm1HOi7X1IV;ZXnVi-e-N]N<Vnrm%a;_5NkS3,=k:U"cL2-#
-;&h>+=,'^#Dj3.YTtrIMhH;\O*4^(pk]fN5=kp5'Y[X7NZ at 8%$KA?olTX)X^V%*dqL5LNt;,6"Go*0bTi>/nkF_$D2k at c!P
-1jEi26^E:LjV:Kn at 1@"7DP3_2CA(&]a_9*0dB"-5IgHP-h.RZt`/"Naqgo_#0\9^l*C`@e1n$Qp34BX\_%OluQ/oCk]SUJ)
-VXAb)nB$C?#O*<!FT.bl:tMc>-f[Celn!A_!J@\+qW&1Zd^7L"*Ze';UDjHiO=AP.fk_O-&d4u?WaD#=Z3R?Q0TaWS/!]FG
-^K0"`Is`X>f=-E4ed6hEn<tfD4=)PDiJ7clciAQG%n?sDps4/X$5dZ at e(p:al9/^bFj*3`!N?*'@Z!A<=2Eo_;V-/+bhAJ6
-i9]u=AGeT`*P\mh4=chm[1Js%Z;cW12JP"bBX0C#Mo;ppf`4nU$B>8BWX(8`LBIg4Vnp7aH at Qr.)_b#-#'-j.1Jgo?=QZk9
-\b<o4F9<B*N(dYOo+bt0p=]H<n`Q;E/P9++NQ12Hh8]nDB0Qc:aAC/^@t-=\c3)LLOm_]\SfdM/akn]#dupq3poI$>AqVp3
-:AmPhn.)CZM-Vu7+QEOahOOWW*jX$s:u?;J+OL2:XLZBf\2>%9_Yg#hR6V_\ak31L\ZFsI(Au\jaYReU9BG6Cfu\:Uaet1F
-n#oFA^)Js3JHZ#JC*I&YkBji at dG!ZJ0C)mcrP>YRb,q+n46PZF]'!+]o=Ts]>L4qHb"<"`TWD)Z*:sOA^KijpK-OY at Wg+$)
-[>5(j2Q&9R\6(pcpR,P/EHtKgj?h3(>\]4EdOeP0I;1bdkQ$.M"B4iVd?fnUD(RRuJ.8Gha at +:7aCP,I0YSk#T68nL$jOep
-%h)O(>NE*G0:'_Cl+#^G+/;hn7PG#+Ak97pXnlP8C0bI<#J4>pcb#aOBRr1+Y1ilrLC<9/8*q;J.Q9#g+s'i`[T0>[;b%oB
-ocR]j9X>Y9B#%BX<^ATVp9KB8&9f$T2T;@`r$F3?k.DlQ))NX`e`=f;nboc;p_6:ie'c5Y^]GBs^i%->fWsU;9+ulhiq.1"
-bT`-[ZN]u5XKL+^J&Bj7&BDQ]@UJkYcBDJHRKF<MAlL[YO9WbBch11/kA04C5hgE?ftc`CRIu4TjN?U#RuT<<`^,qB7_W3p
-#gi$G2PVAqM"Ween+go1)#`?q&QAa"s*fs_nnWV,rI<.K>P;m3(L$Z2YN+Dqq:OBR]Na,*Ws%ogCIt6W83qGV'o)"V&4COL
-Z>e)X90qCJ6,nkJM?/,74GM_kN&t,?Ueco])S2Z$UYCcfFusauRoGYgXj\1IF]%@U[k5B.-Y9_GrGU._BR:"i2=:RI?&QdS
-F],Dsj;TZp#4?`[C'+G:J#9 at qc1F6ffcK\R)6.C/,><^G=a<(lK5$(SHn(d@[tk$\fYZDeM.>MP>Ke3YA+e?:]9!mi<K2R@
-o1:T)SbO&G#DUu73;plMOJdp<NORuM\8A"<",6!MH22VRX;V[kK;]6J"bh._)EpLY%1#CDbP6!<V+H-cKe-U1pU??X++1'N
-(GgAd0sg''0<QrSn(sDDG at 0oO$iYVM+E2oTJX<q\@JW,/%"hRGPOUe#3qud[_eF)?XiX'D,2?QS'-^k@\il at c9Mn4q.gE,$
-RJc.VW`Pfj>=+h`>>Z5;ojU7`;Wd/Hs.-MDR-Ki+!"8tn?Y8Q=BBC/GML60LKJIYdKc0MA at 3.`:Kb<KK9K_?Li"2$cT^$1G
-U8\U'0.Cg:)[+TJaS>4QOo0l_"ac/>"$kiI9jol-cFGlN^^Ni9"At,lbe1RXPNFEJRc7Mg-h:?1B#PFe!2.lRbjo'CJE0A1
-OpkEq_VlD56u]+$W"S-Z1X<.Mc&H][n6qb><YNLsMHgm*mFh']TW5igGCEr*&>?k[<dVPoU,n!Pl4;FY8(7E6=ks/"=-1--
-KX0ZhMq?/Hd#N_T0;:)B<+gpQ*KPZ&qS;KZH?dAZ.r3qj6j_.rCt&&@K+&e\9BnOTe)8=A><.<I)L\S1>1#u'a`;/r.]tR)
-nM;jS$:O\$KH'_CU`GHMns\5H:M]Zkc!8W<ni8#VDK^UXeV3cF2>7L9Qh);*8cJPikY?W(>lHtEJYM(0i+H'=Z_7kYJJg?J
- at +`g[<9"$8#-&abiIgURIQ%Q at Dko'hX0QRX99QR*+M\1N>RGjNM=YS,?4GSUDj4N]n$[b(i at S2'HXOmCEK+S'V%Om^V+/]f
-j13Gbk;qNLFbe7S]_B=M/qfNY(T9QrHjPXs\M]g[\4Z:%E`b11#lb'4UuOC3"$)Uj\lj3Nl:M]h:p]n5&bld0;._KH!h7Z!
-&(AB/Ccp`;AG<oc05u:JmSdsSCA-1mKjWNkaAe@)$8>';q's&)/\fM*cg[P[l_]-`PRP);<)?DECh1XS3i;%t>A at 1Mq,K*Q
-&;&`dC2o/L7d9a=@6Hh8lL/)r\m;Wfl1sk3Wu!(+bXq5mPMCR2U'71TJ:HL$=!^(9K+EJ31;N9AIlmJ,kM[f8o@)_'cp"``
-H(bMu_=q"u7?E2$,#dWNc9mjkA at 1S3YBfe&Zt>VZo7VsDI"h#(TagPe;\VisY)0;(<YFVr_"8;++/3YFab&F^3$$o"nEtU_
->Q`PQ<fSGYo/nCceKEE[P at Dn3K#"COiIY8u<%GlJREgA0M7mL-XuL(Q#0Rm?a'Pm%"\[=&5JRMM.^Ep@;)#[;^O[I.Oq+$?
-mlb'84C'C<&SX[n]-YXdhr:^2;5Y++"pJBg7"[u!0>SoS28IS3*+?BNRb5dcEMpW_;]P)6WS+FRDR-nmBrCH9g#2G)9XKZc
-h6-8MWM)6_VUD7EW;*Ru"TVq_03*L-h;.jHSu*o=k(0n_/FQDMY0KL=!Zg_',iS,G)<Wf]h;?@hGb[qr7=T$+cU[=EMO9=t
- at .dYXg7EWY/4q"1Z"tE'IB*4GhVA!07&EZA'82IipsUk2(bTG4AbQ<U'*eC33sfGI at ItY%m.kTNS0C4HoEAn7i!D)jjoYVg
-4F8tC;UqB_S3eooi'X_=JCNoY7rV_!5Tn6:9RD?5rqNdbREAu<OE&q<PH6dNTi[dCOui.p0C3pkI,Q?;+0JAdrQd-SbL";R
-Xt7*.L\$[`&/@,pWQqgsph;.ZX#CN?MoV at Y"DBk457M7`kiji$oVXS(-Be)$:gZW#NP3`G5]A2qn/F_p%V<6Y'cf<<dLK at J
--s]M[D)Sg,>tcMV1TW;_<73O+QS`<@iuXK1^4h9".Gn2W\I\md'OP;$43tQeLfT.<%uIrufn&[0HePdAo646QI1<k`S!VYK
-ddUT*QrW=k)0-)9()Gg!rOlRM%D;Ss>EL#cnR]gP99X_b-$R[.DSI at Z]IrIEE5^2*P1e_dIe[UIo<l[nSkX\0;XuIH);(hL
-H[EE7&dAEEB<TuD"nXCj`kdHG+HV9gl=^:"=kCf)_.1H)Cr7_3#dDYr.58pTX-T-PPkk.m;G&Wnb(d7``71"B;K&38":P[W
-n1e!X=i4H=T(t9B%?J+B'nob&0[90nOA3noZZ#_<V@"GdOHH';@'=K2"iM^kKPsAR_,Q<l?bYSIZW7W"f^2b-j!tKJnZL9+
-;'E`"KTQMs:ZYTI=pbD^%FrnN(fHDIe1cRL)Nm;TH50Xt7KG1C%(IaPp]f_QK?#<"9Mmh?B&IiC#[E/r7Kg6*D_`VOg0s5)
-c,+]U!(2sI)2.G`Op\5#T[g[\R^MEDP7Zk[@G[19nLjL=Fm>M#=Z[_tS5h,M__*hnF-jKV\A^HMA at Kmc>Q-0$G.m6oc+e:;
-*2^c?^/)X'W(M:Sh<Ka2V>osl*b6:69cKCQCqAOFg at q\n[<,\$B at 3G9`YqMiYfpbs5HoG/,"G"YGm.Ulchu,X,]Z6:s):Wl
->o+c:Lk*b6$4$X)XIk"BiuPNAn:LBJbom'?XFGUTM+/^,kXudp@]3/L$R$r>W-&SFeN.3+_mhE8]i!8CF%?E,W!V;j#-PN]
-n.>)SqZPWf55TohgI`l7;MMGQHWVZCbQ^P)/Mh,\_X#XCp+Q<E'tnClO^D)a*pAe:CJU=1WF/]:PjO+-=gsP%BADVD2$+3W
-k<:8g[$=Yc_t2oIX9Lu>i/==F7MifJ>%>!bb(cja>AEnP7a1DMB6mCMmBR</+t.u]E>rt0$%"As+&I1=I+^*%/P0ndad4BG
-[8*/"[\@VK3?&R,&L,/p+Sn5XKX=5tns9s at mt)A7L8RHL%_1SrDp3Y(9,G6#k);*Lb84e6+[F(j8b[&*rWd@:m[F^r^bbA>
-mcDW`mu?T-G_c"W\?b9f#QO_$jNjDhrpk?E#Q3lAaWIWZ at -hQ1,.eRe2K4#T\[(akqi8g9Y.$R.rZk3ATurtO5,UK[!'YL0
->.Uq<j`6,*?6JaC\C)rEB.'ku3=*0L<S%93rcGs\2r43abL!CuVYCtoG`&ca]k0q7d1XUaW`_CDMH at XI-f1YVPbg/%W#6l4
-QjBlL!/W80Qh at 6?$E%%P5WR'qiJ*7+I>""W_S[nKG(@>/=],Xg/tT(o&+fIslO:L""%HXT6u^(qC.]Ffio=W.C\B"^KoeA+
-2A`2Y*`t^b&$CbX4(utVn9]>W#GCqV&CRW?,4d>'@B2a:OR5<pJ4L%%*Vlp1"R>9iKI?9\2\D^n7>SUt"[W5Z12TQgd at c=;
-\!eM>8IKE6A&'%)Tn%BG@>6Ven/M$.&m864P]J%KmfL>LD5;:!k;o=,V?<)Khr$+U)18cog`u\_^)<UncirC4cJ$Xe&<N;d
-UHq&l!l6Ve3\Us/f5TkT9&1SJ>_tUYp7gi_-j9jH1e=6a]#\LD)=5O-F>3I(VEOu%%/]4+_]41lCmY=i at 0M0)@#,!meDhHp
-hsbFCrouC<pGX`ld0`#*Ia,X at Kb+4W2K4AX;nE,i"B'dDf;_$,;L.D8SftIkem."]J'A+hT50)(--U_'k^97JnQUkT$NnEX
-!5PfGZN"L8!hH,C;N.32:@hcPf;7S4SM#7QR0%h(CEXTH2Xn5td)^_?9Jb#\72?)V0#.Un::&b'c8RChr>-Seq,_`0k]ief
-2Mldsf0?ScfNZS2e="Ya,Ob?'6MGXnX:ftJ-7,9SSbSRgj:!2nVistQ>(kEsG@)sPop17;=E1N`,2np)'(Q\<Kp9X.!7,&+
-)r5ILmE`2^ej+T3-HPP-RRgjNK]7griIMQA$tH/2fY;KFErSI6!'(2_gp\DOW\mr6!Z:FJ+ufi$r5H=/kt-.IYee?j-%Gi7
-U4_$7A;!fQga;gOnYHV#`.t">%^W7FOqF\u)61^BC`)b`1gDt025hVA1uK7Y'FJ:o95!3eYHUX5OdS)1bIg_)C'iBq$KI'J
-e4>RT8:Mf">-]i+p9X>Kgm^Khl+hmZ0]8l;Q(PKgX0bgC1ul/K2Ul+;(`dM0URF"U,maB"H_:&FqB&HGk5Mc,]ls<rD_Vif
-eumFD6ol_/V(b30js[In#bs%[r8>okY>"]YQRoZ0VoW\I2'Sa2,-fD#R<1piES<^E+b*?Rm]_K-YM7%'E(mEWlbae!k4"-1
- at SMKq-9<jLo^GZ2e[K^Q-%+jp,g=GG\Q**Q[36#W$-m4T$OFgl8c>5(iEK$Ri,\rQ93J-f80+cq^WhSF"*LMj,pWBm(]%$R
-Qc`J14f,3])$VdM\cMX(`_SX#h*Lb.Mtpda[t4`"MN57qmP#;'OC=#(Mht%>FdeY^%ASC,<1pd.d1G)!6/j[INp%G*MU,Ro
-iMGY5K/Gcqe;/8ZGlmn=4%)^;hf"&<s%89K_Udh5&-),+"=SL'_L&N\5G0a0(G7AuaMi2C5JETaffI2WEi&ch#]b^>cp^sL
-bNq[(<huUK%W6Ct]-a:pdn(uuWVLSR3&ppaJH^negEX+Q:JggA"ouYd9 at 7+I%Ud/Q/L1E#)$afF;f?rHk+Tr]A"GL!.CNW,
-h)$DJ/Os)FY6k%EUf%'_`.a<;<7YZoQ*=l1'?KepXTi38=k,&b"d_gPDFG`d:<g=Hg*?)k0.sdV5,b'7Sm at .:%4_q6>BW6q
-ES9\DokNrZ,qVA`=s_L'gAfu(GYAko_1/1Zr3e["$,NDFE#@&@-sL)Oo3WX/'5[0gb?dBtRVs"fHd4r!glFo!^9R`uP_9MX
-AP-&N8#QP?kg=]9p)7B9GME0K^k4Qn4l>)[B2 at N>^]<?mEXE5"rV#<[gYj4Ch,R8ZFO,P*!43+Ta:=]M7u1[a,e)^F>!t$E
-g8Wg9(!h#^eZfNlg;+YXK#NWXqn,u^Yd49\AtUm1[acP"MBY43PRAKq%P%I&@^OsQ::X=!^'>.8-_X0)ZBaLW4B at iT]Fia\
-95lU!%;G)-&8b6Ik\n:q$3"@L^!ZEANRQ#X1+\A)^q\?/TNKs2ed?QWRR\*DKst_b6sG=p$CWJlpIgO<qF37*![KVZC\G9e
-etP6Q>V580er9'sY0F_%DcXpck(Aqp=,*(**GV=@Of!\3e)7Lq%LikLRQosqTMSca[+`T#;N4I?9hE1sUZN8:AG"!B"!W5+
-<NCSSh5#MKs0il6<?%I0!Cgu:e]bC2RKdYhYfEctBU at u7K6(aO/7!Zp)bHtsg>Y:j6[IUKF8:A^(!!,X3un2)<0o$4`U1=^
-Q$t6R#X`_c>Fs?-Pb_Kt6*:Z8.l.W]ImXGi_c!Va))oIUed(>n6#0E5e*^7?O15V"hfJq%nX"a;*o-[soG#UMMeDSKT0/*3
-rY8j6jF-jp:Y-nBZTe2sQf(F`k:^1s=.t#:1pc"!SnlUMc+=TUpN8q1Jiol+/\(_hhUO++eqIL_Li#.d%?R7=O at -H=52Sp_
-=7>[<[JL(\i3XMkQ/%m\0C<5P&uZd1p-L3*D+04@*tU"o=9uH?JncJrZ[&>tQ<aU`bAF(h=Z-j3^DS)Q'Xc"rUFCI_).H4'
-I*qY"h at sGa`Vkm`@YE!DBnhE!8PalZQS3W`E:.e(-MF/1QF>J(DD7PVN@(2]ih3L3-X_HF-`Ys)o7G*gZsQ@>-_7XTjcBi*
-E.0e-IRV"E+a#!i?NeSe0GCBa-kF@]B_!pj\J8_I;#p]>6[4]m(;IU&@=V-'Y=G=;+!(./dU`#[GQg4?*'XC at hik]q(K(W)
-h28GQ46HShaBoTbFIed7Jg)]-QOHCh;qRV+7n7opQWsB7J]bl2gYKHRF[3P)3OXfs$Hp6cnNcRZk5<*X at .@"4Xr_J[d?d]o
-UAK`(9YjAc03W:ZIqaK^pI at NDlV';]"!V(Z4%=ds7 at J#UEq:5<l9b0MP'8)7s*A`DbSOh.*-D!,`sBGG2QLU8TI(t20_amm
-XipAUG9Bg8F/KM-)Qp#aL(0s+X+=Ydg^Hk,X#[u+nOiEc4pG*JFqd-S<_9$ZEMi*2`P[7YH?l+5&^\1N[bWXG"0n`>@oF at L
-mCK$"\H<te6+4lOO'+X.j<l:GYqD5$drnimRMHFcEe,RtCM^35D.q\^#r(qCQ#ug[FrY>O[VIua at +1:Wbf=!YhXuNe@)M4;
-69e<7f"ttRfie_1,rfr.]X./;@sm-sR_s=8$h`d^':WHCDF9Zd?lfaLJ=WopZC$_Y&\`EJl4J+,bEkm2<,7Bt=n8VDE&gG"
-CS+)OJ0EK!CcQC>1Q`iEn++la%dJ#A<LM&V_]CC\?]-$[Cg at mhS:C,S4prXo.KBCDH<1(=$i!f+r2UWa$3UdYQc]AqA,K&b
-j#02(/*=e34ILgs!QCu\>0kfF@`CIHR?:ESmi4RSnud(/4YoIZl+eO8UJh#s53K1:R5bpCM2D7p6D3=Pj`hA<q^(C[kCGJI
-'kJec&S?gAeM'7tZ'`&]S599!<N9/`?V3m>kR!S<jGI%/n*V!a]5RkJ.]ssjY!/&NB/jroR!MK;T&JtY6*sZk8BD&P;-h+i
-BU5%++RRhDE28`moj`5E`b4YiT<ufcg*=-seh[u\aR0^&07s5&'- at I'83>&OCRc.aLM,=go*Ue)m*p=c\/>Ka0q2\%;YM)E
-g#8lbpGh9VXU]VA0YlSJ7s+f7Gk,!*IM)Te.cZaDhnC$AK(Ak9*et%e+MjKmJ-ncR9EXGN7)e=N*kcmoP9,L/Atds+M]%8W
-=u6lu1XWJ`gU)XMJD21=0O1)&]j-=GZ]Zt7.nA\o"_pER([7Y4Fjf=$a6&Zr%&Y-4qbG257SCt1?OKdF"42l=o):Ji$f1\W
-]McHB7UM$Q+Zstu"Z"g&G0ML!(VD_]%YPRDc02>A8a&;=^99l:VRk3+N[6G9'@(i+ at 4.Arq)<eR=9,m*RQ=lK=U1Tn=9KA,
-X;3CMTK\7(RW3#`2QTQjmmg`>AK\)a'IhS$L;XgA1J0Ki]O$#dAQ%du.gQ%0**2;1cr!a7;Ui\"?AM=UKZ-&f=ZHZ`DE_'G
-0$>f_YLNTA*ajhq\W@^gYc$ST_7HE.pYA,)MqFPtGKU4=m at ru<B,6fs,7n23Fs;`BbEo9q6AqiBI\TiP;GP,\V+8H+FQpn2
-cR+%F3/E0$;<11Td:2jS=s>O40reZsOJk&N/uU[(1qn=HAo4A/Rk[Odl:Tko,5!4%KqSBXo@&D812A2K;#\4kEV]D-qj6id
-r$k6&55aDC;\AdoG41$qLOnMQAWVpCcd3HTa_9lHo`[-;:o21f0.(#,0I)he_"<7\4a*X[R\C,hBpo/`:LlL%[fqF]qC\KY
-pKD\36GYBk]E7\:(Tp]a`kfu<[N:[APL[g?ahlMA4/rUZFR,_Yf87-kr5G/d?.L at -%<ca*"K<8qLhC_>SNcdRk]e6uWq;(R
-Dr,%G+1P/4.ah>u)_`iD0*mNYB#2%1WO'@'5Nb&6J[Y,@[od$)^2+jLMTi'WK<`-Us4`icFe%+PLfJE*j6k*mfM3puC[1op
-?pi at _:%]sp".kR:1%WUF:&Yds#9ohA93?%`-GP_!TSUAop4[)C#Q+7C10u*e0:kaarY/mm.Oqu]5(*RFJtG.+R/1IA,k'TJ
-83i5#>3+>UQ%?J(6QJjQDn<G_c.5H[7673cbgjK&*a at n6<0Y+:H"WViacSa,U.+:mCVGM5/GDJ?DU1c#WKJ=>/thR&RAF=8
-HI,\P>md:CT4)Va!X?Zj"[Nf&.lZ`Pf62P!bCo49h2ip#Snep?n./Kb<+uc`%Mk%;CT7`Tnj\o(VogGe!/V6HE/Oc%(&9_"
-m+-rc$mc6ebJ,kLaGCnX(B_S%k!B1$W!h<#rDPP<j+a8A"Z[,2HBp3?.g<6c-(:-7+P&AoCq at N4!%bM1KH7B#GYi>tiq,;A
-h^U'/J8P#DAHiJ!;%+V:5"-??FW(OdU>@b$mHMlFp^Fm!-a6]Bg(D"W\Gl`H&G$KDe,*MIim,S.]'!dCa.BjX;ABLM/ef9F
-OO8"-/6/;'N1P)P'1>\N7rlOiMlMmq(naJlkmK2\Q_M(blMOHL3lc!&Q>IY^>$^FOXmY)?H:rLp4,K(&"n<rO5^q&\(InG>
-?8JH3Gi0ZN9h[A4P58.mDWa6648H at pnCO8%R2#c?n<*'q,cWeM4D;^\g7a_<;QU,O\^%kG)P2?;fP0`6 at R\rdHR>m(qYA3`
-5?J8ORn%#qWq?;k<#NaK0DW)s*?#g"i"l, at gD$H"WU'@Y:LpSbZHY7?HAL]cP8,K.<&gX\!tgl16KMPtnoY_c(n7dH<NF5U
-Y3_^A#N($b%H"^,l,QhH5R@@\f6IF.<BfVn/T3k/95A_;^n:d5hUAuDOU[ie^QA+8/[Cg_<,dt,Z[gZGKdp&R3UV41A(r'0
-C?.Z2h<q.H+4T3d7p\7A`5b?>/->9L'btk^POD;7LKs\mAZ."U"^M3^$Q38f[>$PA$AG(D*oHS,YOoK"(^hBLL\;s(VMi]T
-edUHTO&nVK+;j$L:Vp0*aWlW[gm^Vg!tPO-1hmXqLlP_VN1P2(2 at 8ubN9`k9E%%b7b=FNCrSfQ4>q:N2:o6<F!rbkVLP]3*
-Jf]s\9Qt at j$iM?P^Ctd(do,u_G(JG+5@>gf@[O#=g8[n-BMlSI<PXmSd=O&ab4O*m";ZmE^V`p0*-of<APD$?2=C;ibJ1ZE
-9V6h9W8AD%ZH7cF7o+O88t14ulLn"R/[O)m>;FUlpc3\Lj!iW4WQDt:e']$_,mVPdcf$-Ds'gG3YR$m/("3n4:a(]h_T?5D
-%-^c/T3u:&74NoSZZ7+E#6o#G^JBWkEbE!Hq$k)4UU2r(mbJ\D?)gA8OUt`$kiW4oQ_MLJ*=,rAWtj!7.5\%=+;3.K2h-A6
-!MXZ<geLcBb[<XnHT\:@h6IA]^'KTjTsma/4em-.=0#tV]87K4nE:pG2"D/k4nO)[c;R[fHReZ#.4 at 3'%D9(n3ns%?Xt?Ci
-%W=,R-KdcK&5V"N\O3FH=up4([jM/@KqL)oG[dDM%PfRdnj57d&;Y906H[;Sfd,U.YmoNnS.HlQqSMRurY5PA#_2k=miX!n
-04-VAJ:*HNj:kuE(W]DPUle\TVn/GZ\!b_`@$jRM%K%tSi+$84%($)Bq#e<N=ekhKeBl`"mm[sC_MT3;>qTaEdkq,;5RE']
-`4<f%B(HW8$k3aVT[PP5/Gl\TUYN`Ppr$$LUR'5dB%_SgPd:YO(@E:YB,MYQPCg7+[()S::W>kdmq9Y)B[pf$HW_CVr)#4]
-d]F^S$hkMhr%r?F#n.5!0?_pc%"T*$\5K/>:k:j-k3``BE#?%GRN"84JMB[5!bcJ\]6?:'dG7QBX?dO!T\!_m3H[>YoWBZT
-kS'cD0GG-j5gl/IgC:ee8&-5P"'oUQ at q,oUd$Ytn`]ZQ=\*&NRL-Id'fQlaOhI3G'-?h$gV+TKlq?13AT<9sbQ663l6u6eM
-)Hb-r+>"1c at EYrm1p^nZPj&91rpirSWWb2gCo1>pm$Sdh5Yr.<GrPTh9KdcUcd\dX[nkQ2(mpZhmVqeC[HdAlKTPftkmCoY
-A*mPXZeiQ1"'EP=7*+OI9dK8pb!4PIJeu8/7pSYklNoB(P5,ieLP7*3gUu;M(AY7;,srdcOC"Vre;97TH0SQNMXdT/,u]Y:
-`\IT(%FF<*GQUjfR</i-*5[Is;\hnC`nu#m/0pqA\9PU)2GUODLiNkY&70X1f+/HB-KL3_NaOMB.f4X8oqiL(4:kj<4>u$S
-jA'nbVS.2kHKrKH8=uB(PJ=+*1keo'ktDc?;RqjF7j:$5LImCN<.[g2Enm*(FUR-(\J;Dl$g0[.2,Et3nT.5.AGpo;d[. at Z
-Gi/Ybe*"Glh"3N?lcthuN'@%DTEWsNFk:CFp(SXce-@[+cJgV!MCiqlAsC7fQpHhO<eifq1d=B<'oe"2.od%P(G>FXYP)$u
-[Ih%j8OR%u;@(,d\CF,%W4MBTX5FkLU+1u8A2AlW$tlN3kuC]]+WqrTWbA!<3nJ,0C!Q at O&SK410#RVe6$YU\r;QY39.).I
-^]!d[54iZ)r0K at +?b_s*o,EOmmk=h1`\bR=";[l at b`$om.gV&n=_M=m[_)020t-JH6o#V+&mZ&a?ihC*iBcQ^q8G3or*\&[
-FON(ni(Tb-3<jGn!8kYbk$#[\;bNnb)n3B89..RF:^o.C`li1-6)K[1fe=Z5WcQ?%*./c4h%@rfMXfSK.SDFUgm\\n>Yp?E
-<jo\R))(SmQ?h5^*T/0eQ6]gm1u_QA24Bk'QOf\Y$B'JX?hio-$fkK85O!/jW*8l"dq+$IpR)g/2hDpXQ9^:$\4a9,ECRfb
-A5c\h3\o?lU*BO8O.H",G$6EOKSu at GYQuGl&2c*sf7JUdo;TJfr["m/+U)8(:9=Z(/q^MK!0/d'lFoj(<aj1;#L]f4aFUf>
-*[mbcH6H35Bh]T2ZCkQfb<43##uNB;]Zd)`/KmS#h5Tr;XX9`\C2D/((oF#i"g^Y0J`ioLBEOfc<5jE<Bc<'H3he.653tRd
-!NiF&<$p_rX'V.]c)AR<K]?Z0V^bVqm$+giL2PBjO;`YHV>52)':J0VKc at 7X-JemI?)2_t+Kghc?<?uSV(*C++f]6L*tbRK
-:&-<ogkm7M>_qUeh9O&6R<XgbN@]PZ?0FVfcC-oVJ;`#pJHj?A!,QB=fS#%H)QX]KmY?*:$7RQI,e"tAp9PFY>Y"DC5uV*P
-g#%ClJ0rK)j2Uh($%ZGB0:R4+3`Gq!U`3gLn2(/pgM9co>Tagj[1U5@<Y"E!e'UoBM=/!Vl7#k)0M^H&qfF:9=U,N[.SV>'
-AfZBWRjbA;ijK+e6G'%mnpKE&!cA$)AbjG(l#6e\Vd7$lon51JL=G,'Ra_\BpR%h\K'tZ(U#]+fJ1;Db0U?#k40E0h7;"#n
-P`1?Y+Q<(sf=`jg3/]6p9?-CP/CWB9Z8)RD.NK"NF3`elK+^Q/qepC?r"iZm83e$*@"=gZL1O0-':FGS=^]./T(ddIj;Zll
-/2Hk,BVdtGe8H>);antnWU#jI%=s_MBHTIM?=+?QOQB,!eGA62)j?>N[Lc'b]?-L93?OLEq+=G5MA\-Lk^n3+A4tl_P%aGA
-YQg?Xh35B=dgfI>$KZU,TsA!lSX`ca2h0=8)uj/YXh)lhWhDh?1eRITgmPL*;Sj>Ard9Z&/h25N_sY_[9?pKjPKm at P`Gb>!
-\/FE[@;A5sR at 3-oG,R=e,'+\MRKAqkf]pfgRfDjpjFX.YJkJY.[42"]>oA";Fh"8K#t1tbo2BMf&1X/3>6U!n',U'iHpO3P
-)EO=>:)XYpoP<fG&=,nsluN"BniN$OaOsRWT\_Qq-kLp&2%*S]LYl>SrL.O#]CkZ'q;k8bZ&YJ^K,8]NC:\^cP[pMAR3RPp
-de839OU?WiU4#^g5u8gJdOBMY_j)mS3M>,[Rc\02lib42:_i8`Zb/>RB0p-*G#B-]>[Mn@>%hs-nd93+.Ml(jBW;)I.NJ&_
-\>&)3qjd\<aSqjeEXdm->j3++B%g)M3=VOUB;!tJKWYZi6'9!R3_3(DP&nKlBuTOnZgW@"!!)@19\FNG.0'R^bgHmfE>@&u
-/-%87/5:iH@*H*Q&X&(2,VW6PG1-&%"2DsRLMBEpDn9W07sfX^8QeRdnYO'3diH^hb4$)sW)&=4#c6]HRqOes/oLc>qg at u=
-R:Ve7NKdL(LJ1ale;%QH?!P*-qjm,]=t"+!r/0duEok6/%_DQQ at c/ER*iZ-\TJcq$]?4#TdIW%*ZKa#O;@f^A]-XAtWK&^2
--:P`W9%`+ROtV`L^$G3(KZig9!$dQ9#)?OTWlc+r-9P_N/AF>D?&KK at A%<gt9SAXS%g2icM[d/JIi$Q8djH;]Ic37P0?C]Q
->+bs4I)M<D=qlLe!;REPa:Lp\Z!V2YCj%IiTQ230bde[aWCFSLPM.*]CS5S&O?aYdr_LcDaHO&]PV!@sO+\OL&cR#:9d[MQ
-cZaT!c]pM0]HaGuoY`i-VI*g";5RRN;Y,gh^O`:1R[:EgK*UYJ`jc>Aeno5'NSm+X6#K\_8U`Bnr<aHp97W>/%aBp5r*;1W
-H[u8?%CN^5Im[gslVY-&Dod9oVM["\e?dhC\KJELbebH$8RaS2[Jp`aBQPqdjq_tKq7F%HRZ`#?Bq_l at +Z`NUm"m#O&RsT1
-'^(D:!"T8%Z::^XKI']:?Hk'VX=-LultOs#<Pp\Ihg&SMI>>Pk$E$NN2=P]56cdRTC-V2iNrthiqU78g at ."^/aK$`k:m'V-
-=dO73$]aU:HboTFL5t%r4j_]09dTb8-"sD-%V5pc++3HAAV+d=oI%ifl(ISm;O'=7DDMcl[L9S[%.L_7 at a/JuXDk8cHteJH
-CJn)(DZ)G8_db%2]X\*pC)qk_?!i,j;i$(I$W_%FA#Y+ob#u2,AKhM9Y*dQuPakq!K!p+2JMn'-22;<hbNs:68n^mm/@@G5
-'/OX-7MM,K?l.a3j]]DRk?S\_PMIn?Cr;16DZ<[JAB1HH at u`\O%jF at qju6Cg!I:bu+.,lUb2@;jB+i8l/^g`;IlRIVG^.A:
-XCQuLL9!e7pmC2"S9;=I?h,3!2iu=j)Gq0S4^8BLJWfZSkIt^<LtH+b4hPIso:@%[.1I>fqG:@$'ESGPFKa at lB0CmL:&!-D
-o<qW'SQlJ:3&nZ-eqOGDf`'J#03U%+<-+W^_7cl#[EOrsk6_6FCC3&i/XDh<GkH at o"@f3He42gKRAM0bLY4R;STr0'#_7W#
-_0DRXqs^2?V+;[.Y-^cY5ia<K1AR[;!#ljDW#@c-&X(^cK>UeF8,]\YNY%l."l*X6IM.XAan3/>>%?u'UBL\?N1sj5&SA6X
-VAOF/U-CpP\LAIe`YreYRAI`]!/6-bp>6`N2Ifb0;LpuaMRq7ucN!YLjSDJl<YjsZn]Z-[o1k[nUhrR'-S>2$B:oC[E'Lu?
-0fUfR7IS),)OPIjmI5S`q]VOFETFs?EiQ$9(UB/;Z>,$.i')h^=CbXHaSD%J.$QWp7AfE]f^5o=Cu6&?NUgkm11ka0b4Cg!
-#)VaTqJ=sgL=,"b+gGIp^d^[cU!gI^)jABl*h=*TRt=Yn47n%q</\'<OUiBITE-5Gp&^!k))CGknCi'?+,MOK,.YmPD%9oa
-]qEHMC'Tb<&Pfc2FjZ3l&gLn?[HKNP.t*IY4\.GZKPEHc#;O5rBo+k50TF_<"f'W2?f$Bf[)+BX6U(#eln at WnEgi\[!j=A!
-o6qK>!jJATnsI3.Gij;S!ua.RMkuR*+1R_4(=-g&o&]ELbuMKr"R9Sp#F#V$"tS1RTI%^;GBDL at j]lq?$`RepHd6Zd->Mbr
-.kTm0b8dIq$6L'uAa at 5T_I<^$>)Y:g#N).eNGlr at C4'_M0qU4Zc at TUNi8Q2-7Enk?"mo/3lE]5=R&VekRGC0P[K<Jj=p<,,
-C/I3o2^`<#6kpL2^[T4[Y'`t=[0SiU+8;^i!8)Lh)uuN,0u=2eUgN$ZA+)RUj#jM%_2i&g8EFZs'pt([VueMC[OfO`/6S,^
-99uYM8QKBI3IrGH0E<@(&0M!O3Ere#AL^kDk8^#GG,OSqS_cB]1V:?,F1/>L\F3L,-gn0Mml at J%K2X0tIJ&&-\Db!E]f2l4
-9;nC#eGe+)P2RDs%9C4GeHpoTc9`)nh;`+PZ8(cBU&PF9+%8'I0p>D*r_ci.2(Poic^=NcKLVkT+A^_\nXQ1(n<:DOJZsi6
-Br!nQJ+!V$B,SJLXM+Ogn'?6hE93:@:i?g=-Arll<)tDa!,a\nM6I"Q/7%q4V/M&g[<tdRcr#N'77A\81I((9Qe3#sY=^Q$
-$2c80isLX3'asoQjM7LceM:0.C$7O)qTBQ+5:3)CS[aZ$REJcIK4ar9PS\g'lW$J]!M1ec,DM;H_AjO(G(*M#^ICEr65obQ
-on5Ml6#O2]+8#[h8q=*!kRI at Gd\%/[G.q(32Dra!WE!`.S[D73HuH!2B:6:S@>5^A,"rbCP$hiI2=OLUDK!flaQZXfST:S$
- at Tf0^68(9c?'Z9WhWg$srQF8)rEjIsI,HYX9]),aHBjZ(*AV at te4<:-e[/%Z;q"&='+%OHdu#[i;`$I2Tt,hm=K>%'V4]re
-FqaB=Ftr^;ppgD`i0Nsr29m>#@-:\X9crj&B3.XU&`7MWX=h7/$9DM^/,qP0,4U![%NJo/bqU&LA0uJb]"'uR=W"c[0Ra7>
-JCWL[j7MH9]"Z7B#sqAq4qJom;HE[,c5ZHrj>1-$]I?Bg6`>CU\\Vdhj$rN1X;L1gG"/gG!J\/!*tbi>E5RU)JNl5WJE?7f
-T].cjgus<O\qZ6NLL/'f<O+J*'fRASU:48+q1Cm%<Jps&aD99^Cbf/7;sdOe(dFjtT7RFN\Q$0:BrJZ]GqlRe["XN's.TFQ
-O4[e^9NV?&i at I48[pN(6AE?s/go<,:XtlHGOJVB5RF4\#(32:f.qli"+Ye-SB=+A/Kk$Bj)2'Q9*GG]WnkZIq+pu-!e2&<!
-(X9l=`Mj`P!Z/c17S8]kiPo%/)fXC?e<"gk>9](ML4e4lkk>fBho/9pdP%lV`KA(qDUnt!hc(VH"^KDo1V$0M6<0-(`Q_6:
-;`[*&Fm=mq;8JY4*_!(YHP,Q9d1^GIibpf,g6Mo(eTc[cNkQ),Q5Bd)^mHRW]0BZdIp(]2/_lUhg at P)`I8G$l5h>='D=lVK
-fCQn*YAmnqB3E);$+ at 5nN!D4X%?'&a`=3b^Re/]_;V)4PJ4YQ.F6(V.fLLLcMLR*$ZJr=M&sC,t`#Do);6f&,]$>-9,R$bB
-h2>i&[1=^ibX8O:6o,Qb`-0cHq-Q^_W_4Ee&!)Ob_T6u0mEt.AI?ct9&XMAV_=F-9Iq=lJ,DSidU,t^:*.I&KYTcPBn8S&s
-NurN4K<C5j1C-Q`)rP[8=N,3+&EA>l+m6Gemd5N=[\PVso/uXGAjGbia,<*k,CGU4Ns=A55NQc;m[.":`5;5t?X=XC'W1L;
-&N>KZE:0;!qIQ[SmV*S5<j;?Gj2q>rXucjt+'<3#0D,GqZu5CN$7h>fhDWfqkuH*P<U at p=2UE.Q0(g"@+=5D,NSE9bfNc#h
-N'?*SLG\)eBJ;:(pq17s:?$@C2>o1Dr-q!<B*qgN_",@*=74s-f`2?QB^AH2Dcb`.s3q5>KE`bVKcA[M\0r7UbGeo^-m"kd
-"llF.5a)&eY[F&<,\?IXX3h[Vmh!0)&YeQ%Hf[%n-a\g^0MJfK;CfRnPeqIG>V+.pQ1*]O.kc at 1D[VoBf5O#ar0(VDH3C7<
-4Bl(>7S=j+/'Gq_Q$slf':/`:`S>0qDhp6'4D2o6!Ps>Q0Yd:#dG*0u`f)[PCn.nc::p7R)kK-,p8^/^h!Mou8e;jlhX*h)
-o`1#G.j''U#QOD&Oi at E,Pe<MQ=@AXrRVL!I_0ebX9BJFC8Q+k>>6;dBIiDTq-KQr#M-LfrrRV#A*GG>G$tsaJ<I$<s.JBdB
-A!sj$5R+Rm+;M/#*3aiA<>0u0<?Asjoa@@1nZoXSFbifJipC)-&h;$\.00qQ7i.lP'Vkk`f$agOC_62QA`,?o<O)DGhf/aW
-SMkW>VdfMILb=@U-U<de54VeMi7onkE,:nAQiZkq)4#uG2KnA[D-sR.+j9p8QX)&:4cb*E#IeT<[Aeh_aJ]LJi2km[FoB\A
-;Xm"$&LmkB!-PDpj3],Ko;UH/hhT0g3tl8!0RIPUdu]18`QjYp^VJ%P,;,JiEM<A7!KZ8nZt:[+GO73D^@=4"g>fAL at tJda
-]Z.-e5E"()^=&s4I8m]<L\$`i^d,o>!(%'1.cjAI&MiGEdpJ.)!PV;t2MNV/046N,-DI084P.etAZ%?4X-D39)rp-(rURQ6
-T0IVL$htDu'HD0BBLkdm1lBt(Nc`0.lbRTA]kMiaf*5apP^3N>mCo,ZKJL2pW$A#6Jt(PY,GOR/"Y9#SU\sA"nYgY,F"jK=
-O at Y+JIoq7>$:Wmm*>kL;)$dZW<=aud+5^Rs5c3JI!K\"8mN&8)1V*=Lb`AI',n;p-D@?`4`s?DicOQ6)@\rNHZ6]UPmYJX6
-,)'EF*p*G`?[=>sqGr4]\Z(ZJ,t`Z4-I^!SF"dE_r.Kat^ll"U()I:@i1HYRa_WK)*6(kt+Rhq/b,(Z88pOt"M%sO/We+tL
-`pmVC`PLiKVZ,.sAcVuBJ2H1j89jpQK9UX99[Td=n at cu(WJmrsA;KbaI*hf#Lf7,k)7HQYm"t<M^(FrS$VLG3e4aJ%ThXmE
-p at .L>[c7co+#URTnQJH?;UERTX"0kEWSgnWqKR(K!@]V*@d[sZ?D9 at sBNni.DQl`BW*4FOm7JI#)"t2UiUa at .&IuOZBPtI\
-Sp!N$_CZoDOa/'iV9;-Z+Dnal73If*G?E!<T$Osq!1a32OhTH_]s6@)2sGk&ZPZ_d+*DZDP*2U?Q&YOap0fCgH)<Plg;>ml
-O[AC*gXmHd>9DDJ=;IR^'`iM&/^$MfA,0)I\G;HJ/F<86k-?B$Rg[uC$=QB<+Me#fXr2IUo/j at H5>er]8K;:&C98!1N?M`=
-(%eDRKJs]/0446ecp$!Rf^o^&6!Z)Chh;TX#T7bJ"t at c)4sl$k"h5&IUCFi`97%`[IZG1dn$%=_;nP(%Np&3q8U?@+of at HK
-"Sud`,chMpFs[S2\p6SB`&@Km#pf%r"U,06Qj9AuS&CNkesDaF,Z:P.\<^aE7^@$diM\V;Y.0c$H)f>)4K,1s?;We#!XmOO
-,+CID at kI>n2'*r=":>EH/rVIe`pC$n=5:+:Q91.Kn]bj@\S0)h6Y54D!`r[u(_OsVV)=T&hK7!u!`%@QOBQ.o%,bhKDW]\)
-&k,1).=dF"W^oGDpBC7mfT:dd[^'kVa@`RlnP7/?@jB2J4T4+b=s>[,knf[9.uj`?>;nEoIbasf];ZSb;F=PJDIJoL:+-5M
-TH!u=+ahL3*a1/]:eSI,[Va`Ii+_pFRi]!O6n#bZ6a_n^6&L"jq>,-_^bA'FK3_"q4<TYm81O5CZU6Z*^;"^p=>Mi\0Ai4f
-&<2MK3P[Po;&Xb+-`/ZK9dqK/4[*gR8r7Uq2Gpn0%#<8X!5%!.Zo5sHQ.S2&2Lo3:9R[tR6 at 2*6]EJ5:d[#,4Bs.C1AK.CY
-gBlIrL[B<<)(PGtXX^Jib[Gr@'s#[AT9d"g$E9Kq]=5AnOP4"*Y5$,6\7Y[S42-0h0C\t9c[2m at ePi<FSf2\/,LF1b2+P62
-@%BmueZ<.d:<bZ'4fF'i\5SPXp+eh:).71h/%8gJ_^*$HL,FGEnok5T/N+7Z/nAdo7O?0>U*(5&#e`3Vhn&7/'.<]-3oo#]
-=8lU#nbgn6 at 7b5F#fd).eD%dYo8rb!!1_(c7ZJcHdb(^:=7::e^hhKP773iSB=)XuU3_HZ;OmU^^IK_fr686V#3@;7!tTW;
-7u8H_$r'[PmA9Hl%?%e233=-TRl=R:JLuP_ at rq7*mn*ht(KNK^8]Nt;%p<PNGA>0rSA::K%^W1]/97eq%4pp,[qi4R(bc?u
-ehBr4euqRTT+%mUGlQiaT2<:`T#`[;peofG65&("Z=5^h:uW!!-.8&N:cXS?L?4?&?Es',Q8oR<Guo<+cf<pOOUrlqX't.Q
-$WKt$Y$u&=.<VaWR.Z?d=e#%_n(8!iTjG1eE.B)%?e0q!C6,$p,sC^U="H-RW$/lMSbh?F;dYD7=qPnG52^W1PqZ.%b'G,N
-HVi&nTTjN?gsqkTnBJXD@@]1*+ArU`VPL$`_)-,Y!,h[6DMl9D?+hN^SeLRt`F;K;[KU<$'H0Hr3b98VO8(')gh9/s]>7&T
-GbN6=4*B&3!g=a`$O at .N$650qWWND4Eaq?9Xck0-EJ'AKgHo53&s5abmCcNeSEF2R8eBC[-IrGL&<%(nM3-Isb/QPVTe(.,
-R\'[;`c?td_`FOH3A@$l$>.#KK"#=k[$Sn"hn$A"L_YF_nN[R>`)ITcBH2QT'*-_J\:uhPB?HM2:QI5]"P at ndU^'P<28$4g
-cHUut53-:)Eoh1+BYZ_$f5iK%`b'd/l:unkA2uIV"Qt+6 at gP<(22LJ88GENT=A%[4"Qna)m(_"d4S+"jHZ)V\9o#!uCmaG*
-S>hF@^"Tu9Fmc%(oq*Rt3ndeOO10gMbR6mF>J[:XfSa#h6J+Ie]?r)=?F^h\CHD-(Z3^JQKRU;uj)i.Ap$A_dk:fM-'4M]d
-48(c3/n*]4 at Q1k7iF-B)>*m_P at qSUsd,qPbc<p>Nok_T`S8/=!XO(r(ldc40:u"1MFYfhOnWDk7I9'JTF!>j'g=rp;C1K7E
-_!E+CDiR;<`@d;\::h;q@\0h2,F7D;d0)M"7N6m*S07Db)8n%s2N0Z3#.oi>iNe4%pD'&R>^`(1jP\KI+ddgjcMsa<8+5i:
-:!(fh,XL0YBS4Y<-$56RWNTnXM)7:082T$PO:8jZkp9)6g/ept>AM^l%uC?>'7tIFZoEW#^?juhb5bWa0`oF#$q'.Un-V1&
-C,$,W:MR?J0Y'!,1$hg*$5s+"1Z`pKYQRSSN%E'A&h:MJK>a&F:2>@#lJN(EfTd6+o at TTElrY6*C`[ql50M;d/-Tb=H=90s
-8#Hqj;t.OjdCL%L+/7O@*Nk3&73\in.O.s0N(&D!7u6q?6Y`QNM_Nsee^7ZrU2"[I8fp!5''lDIifJgQ;$D<ij]DO/'&s.Z
-"X_HJO$H3o7$f3o*f4h%?j&r*l425_7cgLNc;8JI1-c at aIk+cNoJ1$-]_KaMM\V5[M7-9!6pg;cT+MM)S2md,O>Q@@E(XCd
-Q%!QXj;<>R*jCU^WHSkN]%Nb+jd$NZ'&1\_NkG=%ab8`47e at 6->+79,eqWj/e<F31OU40qYoi]t8K_Dle4Fg2YL\rHcEIG/
-W?OWB@%Lk8Q=BeaT*>R>7Y)L<6?&3pdpa^(F>$h3'*E#"QW'*X]7"Vb2qsW*8G.\Q,Ls,e1g8$&m'T&X<oTsInt0>rjGn`Y
-!6)YC:Xd)ZEP_j!-pqSHAb*=?V*tM](/B,<h.b:M0q^M!BgO6pL,YnB:@4[ib2:F&'>1mPd`9+Jbql5B#T4:^PQF4_oeJo`
-:i7[B%qRuU at A(eUdn&CH?WY4'\-pW('_9[<e!72;n8eRMeU*tUE"QmsHj_hXlbujW$_*Qq[=c8A/Q727G4l$f"U2<7%`2"7
-1+G1Kk at 1-=LXYRE4Fo(F8/.3/9-1.K at L)P`YnoM*,8le3bQ(oAKH$L-(r]/L7\?kjrB;6LH'I+%%@[bj*j.PNOhBAWPn\G+
-LRh0+6j%J^Ju!$3r<O]<&e_RO/Z+[@9%Lc]IAS!>)X\MERObFfRph_[=0thC2(#MTa:0pRMCjq+Jh(4aNBCSYTnoE:n^Vl9
-ojs^oh.h>M6A`gGJP63ng6($_1t%UiB\6t0r;tlqJ:l/`KNqc5MR^o%5&KNQfUS<BkK$=iN?>%:acg&Xge--$cmh8<R)$p^
-eFaMnc:a<_k=)T^cJ#3 at o+S$P-43,X*TVZN04RNYIu_+3T;(rn4eQ9P&*LYrEG]218dgNL=M&<LMJ1=G[lpCIY[+M<`a$T6
-;@lPV?_L_DqAB/;M7l'J)'eBTp6lC0j`&BdINQ&tglP0Nh\EX!(-;cX0m79kePDB7Cm&c9>&6+,1WNeuN:rMdT at Bj6L8sS"
-D*1+/1K;#p"#cWgre`^5iP\Rn)@RggO;fnBaKltE"BZ2e-c4ZX.M]l[Q\gDi]D$>JfmJO#[0!F6K,7P>GIpjlREf=[6"U*$
-J+9hRb>:R6o(s?r''3p)08u;I_6O&'M:!p:pR3>o6mql'V*n;.*HkT_p&oH"H.JA"McSV.R&Ws,:g at h]^eS$"FTp5uIIq?L
-PuX)opn?&E)!PB;F-dLf/HEVmd72;5#B3]8+BgfuL%0FP:5,JIHM$,SB%<k\pn2 at PM)#lB>[CTk/FL2NF`=SNlKI!?;EEdf
-"F!A%rSW at s%TVoXE+[:B<e(oH=To,8(go$+%(gEeo7hR4^uUh[3e6UlR--&4)lYP&%HtEe!>&>U/I.VN0D/SUltp?]3P=Y`
-Dc=gUCC8(.DQ](BY360m_<UgB1[[o#ZhU]@?2L@\inD,2]]gS*G>Ap;`a66E2Yg<a&FMRS2UoJ^=<m#_2jgYVm.%Y;G!N7Y
--)Yap1'1e$cDGBK+_OeDK;%DscES0KU*?-%^p(YI0E at d@`a8EG2h8G+NP1E*-X?Zk/(ZXqpZZ(Q\<ohdX:;I3GL>I',0$Sl
-8$m#E%!\fUpNUC58"4=H\t#NSUi`#l''`="mJi/e++t at 0gY8SoT`'jSj.pIM#-1=NpKg6f4TEOV&"[D at -nr61/SYCg9*7fe
-d`M1n,T^ZHM at FRB'dQce#pt#QGegdJX<=Qo"ua0sgYQO3g7i$M%P\j2;-X^pCWi60IF?K)#T0Ynmj&8H6X1KBY4SXrJWW9*
-0iF+kf#i9NVTS[A3=^19^sP)M^po)VQFt2!_niODF4-j#p/Q`3es!?d7D!#4aPNr9j&`s=A(sN/,bl`?]g7U$Z<:DDdRAL(
-]B>:iMTFa-G1dQ<4BuVaU/CLGPkH<3>%h!SCkkCU,Fh:qm'/Lm$_Bm2rF#?"'QbOi?G>E)*p88PE0e7[j0.78"QBKK!&IkP
-C_jg&)Q,#=s)\UW/q.:U\:V1BJ'VNM&e#Bl%-(;>C-VoFn13ZlA=na(CXj_le"\I1Lk4Nt44NJAI&0!Ka(Z@=WPoI2bdCTR
-QSJf3g:U,bj?CX&NkDfsio3I,oeW0C(u)-TC7nHi*:+6X7clA&!XW_DqR)RBCiB1AaA?R:/Lt^oCG#?6_a>ksE>=A#PNs5S
-JJ8u%^^r$1`miPAXPs>`*b)"=>sa$<BF6bk\[>6P:r+dhYQ^pG<[,NoiMkU+'b)S$+.OThlK0lnA8IO%=6W/%YOVk*402$#
-o$i$=fCcLt632eVj)F9(-6J7i<O\h.i2\c`hK%;66'+'3erj`Bb"CQk<a'rK\TDfZ^SL2qoq,,3r$VY,!P'W[cu1=$(4!K?
-1,a/(V.cHJ.KC;1eF-i_Uc2%7XGc[;8[cb.LWuF"4Ik at J54$MjTrbdPZ-=8CX'ZCf'0<fMp"?TN/`1JR1.?lG8\[Y-`g5A'
-msq#?`<73 at -Wn1l.^+je5CStV!*mbQ^Tf+uo4_0W"DQ#ac4@:O(#74"4m3qn3%oLdgPjs,)7WJu[&Xu>CuQ-r235?, at H^E(
-hI[9RVg)W0q_Cf"&K>,GHjp<N74l$')E("e6$=]Q'CC9d"p:@I0MqMr]b"5b?LSL_EmurrD8C_lB)HB;=f\1qR9NF%Z_`)h
-#oofd89iO<LWL:tLF(m(ciMu'#MJ>\\/iR6PekCg,!2;pqjL3W=;KSPokWC/f_JYkJA3U9qMmjd4LVqY\X6e,>t;u+k.eWY
-)`;jRMc&tj.1ePF5hI-F at D&4+<2XG3/IjOjKIR^\6,a$O4=.$U[!tb4Nh>$jXOhR\23`6YDRarUgZ)AL$Rl<:!+Kp&:ECg@
-:pgRQ4f at K7F6C4XdZ!Pse_ku%Xr/##]@',p*kUe?Vq^<VZ&Yup'#nIUNR*;88l]^`eIBro?FCl3hua5oTEO"q?o!\G]clkQ
-=$B3"5#5H-/gMat6uX"6iKPcEaskt4FN`pLeOq$1=M'`^l?!i@*9jocKIAc/0$qam_c>u3<MS])hJ\.QC0O$>g["U-X'Rj!
-kAtH.2*+l7Vl=tK.r?ch&<d*n80b%^I6)ESe=EpPh6NE!3#/kYXPD`'68[YMCKJ at e.:)mOhE6M_YZ`>Lbg@`lYqFIA$l%3n
--MHad`fsjM:7Cg&$Fo_^4uG)5)N\E5%W at 5?2f)rN0T+ at s)4hc<V<[/6k3#L3Ptkh-E_-/;^AJEE*]]X?)8cVn9MGP.d[_96
-7]l3n.64D+Mo3:MiQ`kHB#!S at qG$+T48WDmrF!40 at eNINOnM[C2KQ+ia3g^$.a.X1e5a4Y5QP"B8Doo,qGLYZ@"<^P^$fFq
-;O9KE<jK?E!V.<O)i_N3qtmFXD-"Y/9$pupB#udb;Teqhoe;Ws0M6TdgMo8&W*,KsFhm at Fh!<)h4ZNR"=?.'TF=H^q/AJ5e
-^X"QRUR$X/OY,4Ide(bu/L=S1>VO;]%<5Z_'n!6fW:HNZUJ*2%dE'M^Y10W:Ob^]$fGSe$pNKml`RMn5oOuH]rE=#%nmaD'
-#muEPMjo?)KAXXCjr'SXlY)__Y/C)^<<TVlm\0i,8gnk?EK^_GVc5t(*#9haFm=n;%++Iq+kUKG.eXp,%ce.Z$CD/3BMaM3
-/)CC@"?hQXG0Kcsj;(YV^.^B)BR*kJWOh.Fk4j`[.DdQE.rb*"jb$!:h-96[+`9hVh!E1X%a%V/T+ZY54 at 7Y02K3YL?I`04
-W$U;^*0#*\-bk,U0?f`5PpJUPPBq1)"O5>X$;oaK.[tC5&l'lCFP)@@mt]RIM\4:kRcd4-+1R>N$":.\iS?Ic(c"^cKIMoB
-qPadoeGXMp8k<bBT<h=^oE)u"r at e(]Lt:nDI4,q at C?6b&IH-*t@*o2$p;r14/@ofj>E0)IGVCEf"g2!-1&KkV6[Kldmt%<G
-]q&EFS%\84ql8MjnsA=G^k[&><:$ke5COHid"V=i!SKcEYi,R at a<Rn&l[)Q;%,6rlcqK/kej:_!-HF7!nW^iU&l^:O!,''r
-9ud:<q]eQ1S2SGo.Lon;_MCD*YG\43d8W,UADV[V5#H0sK5*4Oha17M#n:0I(@Pdn$b^1\W3L4t%M!i'RK1,kf4emAI$mJ,
-,K(IAdXcSU1CaJBAp,=h]Jtb8'E"0Q<sK1i0E'WZRe(DN:/U7,;@ZNf(=GJ,h<iKFQMT?P`@^0?p<`C(ng#aPd>S>DITR1J
-Oq2niHHl'jB,&2tU3FpsLaK at Qk*X$4g]L9jK2o.jG>M'($X7)0)+rNccBB0?!\`Lub@/5)E>pc.>1<%tLNe6s:)_p\.#OKa
-Wks8ombrMLOg:ukpFrK^1dm%KjQR3)m-/8JSDh4!;q=>#T-QDoJ,)[$!D3H'rMA"`3sY6_WA;*o+'AcjB#')0i*41>O$_A(
-1qrF17;oJ\B&2`+]c'iQ\:/9g]/4>+e>;S0bmH__i=uTP)q]t"%?H8%+,5Ub^\JISB.3bbeO5sM8":#06a_D!<g*jEWOmOJ
-nZ&M4T(AB[2Bi+dZDb(:%'RHIf0ZDlQh+rZ\MOsMZa9,]T^($Pf)Dij4"_A+O&X>[$K99;;kO]rc89_9@*K@`>m:0jjEML.
-l%+?CTH<eJNYkOK52X$UJd'cH5!8hUB2=rn!]2#IYh4e:(_c1`9<J^=D-VB@/"W`kR>Mg>6jUX()2oO at 1i-d)Bm:*^(D[T!
-hs6ajd:ZlF^Un=J at Rs8HYIX"VL+An7&k=d02Z-9Hk1<l(VJWQ"?m/&@hTgNK6G$0*nU:m\Il9F&h7QS-KRLQr0Q4qoQ3fS+
-79O%)%);>cfQEp7L.u>X\$dU9=3b"7.ZE8)gpPIkNS2AS_BE6E&m3phW*'+"H.-q7Z`lkA_](X;htaluSY'BWEal'b7OOjK
-1D]V3af7,Anog7Ko`L].%%P]<d1n1h`JX+V*US.=L'Nr&2E;I;l)LYuAI)/!df8X-+UE6*bN\fpK(Jq>CXN!dKV@[1;ol+B
-rAmFEN.^((!p4Q>07SS,H)'n-2irpZ%r2Eu/lhdG;-Sl+h3c&]8dOF"AOB?MqIW5=?i=0*qkYcH/58B*g^O56E4VJ+gePN3
-,jOZke7I:qUF1_"&mW5tXbCrkmp9KP"4dY#En;D3>u_`FqO+k!b[[%AMiq$!qV+p9nO32-9!&Q>")b+oPu%-+<6U&oJ6A.-
-".S78I!aZa4!9"_<=1s3le&g;/JqU7kr-^#S9d)n1Y-Eq5Q$5\cqU>g at bor,Ooh_&FQWQ!WCaoKpW"_*LOO1.%Gd09J(k9l
-Dl>d09,lV2Q8uk%BX3)r#/QW]6<*4fi/3s?cRKU4C9U']pPN.)_3j]r8MX2(N7/b%;;!+2+^GNe$s"r;H:`/T%?5DD;N$F7
-&#e0NUD'J'JAqPr\X;:C5a16cd/2oPH&*_O?[o(]PaL;c`dD_Fj7%;Nb2t*q_=E.L9rVG^*Ym7pM- at pOXdFL_b!R2bFn@@[
-4g_Ie4]HT*ZAPuDhR?\7#@-PS)p_q=gHlL$MKjp4>IVWnY-\A9Oiu7 at Y'u6WhG#I5<:&&Lg^'GVhZ82/TS(L/euWNjk-(N8
-X+[ch"/n>TaY5%Vi6A.*dXG;i^jd6\3/i$H]od&q%i*MV6EMXi1Y>6l">Lse)2e<$kA\XfX].d:=Z*3P<pU7MYG'uIOW1j[
-,*(=pM&!\?HJ54 at I.Ta5g1BQ&:Z7l2-'jOj_OGb[I`O\S$8N3hnJ/E;7+YiuSi=.\CCLZ&<VJ68c;lP%@HmRQT06iTCFU2F
-kd>Erd6IIR7&'8OqX!A.)cJCJpMRlm--U=]&h*Hn8eLfeo/+uQpk2Uear"O(-FXikg=ZuJ"0mPF(=j7!(M]6Lc`(6:^f<+l
-)gcL>qe0TnB at q.p(+\Ron,79QkGQ/@`W0aT.E\jrD``6m$[>"K at 2)cd5=d7poeU6pZ3s[>kHUKtcoB[27"]c<V0Q2tUn*\"
-fOcRDMFjsKl8ijmZ1lbI01F8E7g`-\8jI[qgsp%6l%E?pIden1jR]rk9A%mKB5fGl at P]m at 215,_AMfH:7"gCpa2UU'PX3*X
-^GB</Df``=V at Z-2Zh4^n1^r[#"Hf[,AQTFR8>4^K5P;W4#_Tm7bEXW%0fK`<Uu*>6.i$`"eh&\&AgQ[+<W#8Y!;?-6%[=<(
-YVLU,QNZ6'X4=3\9?#\)?2#lh(H-.WD88J?SJ9"X8sL6O>qcSXYE(a=61GT at ll0C:J(@u36O\i(.6tQ%ATfaojdt at qprqKF
-_U03Cp at s*[Y(0##@0O]\]Z5uhnLV=bh].s7?HV'L;?pNul_.&t&3_m:FV,ee0Ke'*V(KNPOG^Ni,8BCblEUlg'm>p58p]M&
-SeOnf:g:VEaVL=?*JKqe6$KBK4p7s4:ppV%>kW1#R`7IH?t46$]0l+R&t>WJQ!@VL#sC@#pOC*HmjZ"9[k[G(%t%TdZ[<.<
-c=^VNS$N-jl^QKi"5aZ9!OlRZ:rc2E!YktbjQ5G."1.[d,.Jun?oWSV#E1$Nq,tlEKCKQ_*)]lKZ<7#n at 8r%kSl4LO;U40t
-\YU"TTo"YmgFCj/(qE5*@>A(M\cS8d@@m_@/1(O_ at +1^X3iEq#%!eo\c_?LNs6#>AL\3AaH`8IgO;k:JmT:`V(5)[r?N;<F
-gEF)N5N.9KMnT)Eq60CW?jsD-A5QG?.Efhf["-EP#T"91XmoO1f-ti9L$6VK3l\&f<\K/1B<Y0"@LNRLkI/5ke,a1s]5VNK
-g3``1>Z&nUTILN(X]:9f:5bXH.BMXB21YhFAY:,.*VY@/3VNB+9O1Jm2K,'[S&`%Z]b2<?_eXL-K]ijl);<fRXZf;K-V)81
-2C0eng#2pkqDcQN9lL3np!B1,XOCVrl5P`u3<ONt\/@qWqDE/!eK)D?^[D\&De+n!VCl*P%MPW&>(>9&!A?NH9'5u9a'Jik
-%hZB'?*re"HQH!Tgslm at f;[&t%Oo=4[MDfechJ at lX8D9&"I<hH#F$HWM[t/So3g+ma3b.q09gA_S6WJ$RZGdDNLTb#To&,q
-mtGTY*=AFuLpJ/<5)`NIKf7rU\8l($F<A5Q>Tef/m4pZ3!'g1h. at If9&T9&<=ajuR$[%-VK"f,A$qJLOBSHrKs-1.RLr'(a
-M.2_QH,>KCODVe[5:q/78%Hro/uk8rZf-V[E+32kidt4I.a*!^!Lb"Z:1P*a]%62uI`N2]0fuS)9Sln95o2+u$WC]23"nFo
-?3B9$9)=WmFjTCI@[n"`c;<@JlH5:O.&`[/?LZjG.=D_BK\;"F1hG\pL3^=WL%[bfaK1c:YL at k#p0!^r?Z2mgZ:@]tRCZL4
-^Yn!l_<[3?O]7B75VRq>W8b.O#lL]r,WFCO%7:Z.(l!_WIYN^b2)J1%!Zs*T5R($"*S-93p0R*kNQTUk6\jOY_JuQYU33rQ
- at BRlT"WJS.o+P,ET[I`ui7&_D0+OqWi3gif>+scT)$[uHrc91Zm_n:nN_tt\DenQm-cJi:ghU(X^s/&'B)G8cO0E%2EuO$2
-ZBHmJAa!]oB,rrPK:UGUhamRo+p6XLMZ$-egS:T@'25[aNJ;^3:"uqn4S+2:<LUQdouB"uo1#_qLX0;-`nr[]lds/JK"/3p
-WA;S=9rtrM`'SfQD at K3rBLoL4CM/U+d-el4FYBU9]!N>9>d#*t0-$'n(Hq&&5Q6QW=i-1Gb'^W,2><ba?FU_.Z)m&(T at C&-
-7!01eQZsotEO1);T9g"[N4_k978glaHj>jql;g9e;kK at XklMLUaKlr'.PUJUH[!BcLGV*\g1R8Gg$V-tbqm6p0JLARVq<,P
-6ADbP1iPc.*+97ki#2&Q)g>l?:`Pb9H(8U.U)tY<32[lt$P/`O#I9B:SL+pdH#mL$Hbc&4Gk1MLrW48^ZI-c:OI"%l+s_lu
-Mk?1[4o^]lDdD)p%[Oj%Y2<%3prSR4]Q*N'(N*LX;6[]h\u^Fb^O#SM`+j69;<_Y<*0?U(9JnE/mn+VfH0g7j*-3/@T"[(D
-8;u76qHgstRHONH_85PqpY"/1I/pQj18DcFlITMZ)OiOliO/)9_GuLmdGX5F_fI!,$I12%*fNcrUl7:7kE3.39SueWFHg^^
-#?HU??.3V=SRV*r'1fklA#3ctdC*dK!,;m'Ui,isP?p4Y`lec(i9V#=B/O1.#UKDOK+5V>aV[,EC"]?-DZkFRKo]W!@$<Bg
-gSj`L_%c1iD(=.0L.J=DM9'jlJIXK7Kc;F:dY\X.38o.;8FTo^3g_3NFuh,rf`n36gkZh#>l!Fe2l,JpbMmkgVc$2Ni0(uJ
-SAh3QU.06%,"7RHaS6^UgcEY5D(s-EZPO>E at r@!'$<Z*+q/k9TfAbg\]'Fn_98/+H>ld2kKG-UM=ig0h%_+%s]Vja:O2<K#
-^;)c>E]##(4\D]1S%*G40.-T.\P#\\Z>DVG4=KC3Ijb*aR^^(qqqiS$qLDM4HKOQG-s=`CR;`LSQQ?)XAbDU0p;VYPIfA#]
-s-83@%4V1X+j)@Z"R6KGY'tdSo at aUFR*Z\GDT-KIEgU]_IorF2W`I+G'ftELmh+"PH&GI(\G4=Ii+b,XHR\_,$0F+?6\0T>
-KSDl$W@`\%kAW^s8kATV20>("K8;(bU8%aE^"!@&IoU[/8Q8i[4rZ9fJn&^IlHRjDHd8Z#kMZlXX.559UD1VE?U*h-LU#>'
-b/ni:Na`8V622YZRaViA3\G at 7ZP@qiHf?<af&optB?YaWU$u!;;;be at I5n53Yk$,B at K>8=F%"P`[g&.Wa8cA(4_Y/5I\tZ/
-,u;dC5UL?T'8P2J0=jHbp+4PHV0O3B'=gR'N$7]&b`$RIUS_21IJ$:;:'JWBn1e\5C7,.0Kr9me^5>"0B#(K%MJ+?=O'kAp
-g_`:No741pNSg=]E),gO)a]6XC-tJTnDK5ug?TiC3^i<J29&Y1dU\MMk?`%])PJm at l8G(1T\euF5peCETOAM8)Y[HkG_GSa
-hNSi&S,YN5KiMX!^em%0!2Cn[OW_)HpgWlTQ:PgLke\taFLA,T;DEAs\nKE"pH/l:?G,oIfQG[df![JhZ0)4dF.&/-iG.$q
-n2;npWo/R?Pj1-k#*P0Fc)]0CIE):;k2Mr5qW734h.fC[E&<HH1E!t="HQeOmU9J)[Nto7a<-cYB(FU%1O*L*hdqC5YA3De
-D;%WB(H%OBDFuU*GPsRs!G!3hYI`e7luW/a/ss#A6ifL50GYW;DLU=u;RQ'H<hD22[0VN<XZ:C<YB3)i0esr_Pt4(Fs6WgQ
-5*"fNjkP-b at glmi'3/_>HqU.KS3?usKf2 at Ff5MW_=*:OnBqIi(@alX.Nel+'ZQ(e6]0I>WM_'G'0]DL*/6UFtT4Ym!6X;8b
-'F at r>3c*J'TW#.85RRj7M3ndeW5QDd'c0(=<CQ/0G at HPjGW7R>:i.;U&RN4Y3GqhG*M^ss&4(:l"2q3S#]7;JH`JRug&GCP
-d=%G%(]J2\6V]94RbT/BP%fh`U_4#n2?`:h4>S56qWB=u+N9o3iFQhT9:"W!i>3#DS9*;rZmBZm+kmKnLLXZW%*YLa<GL!t
-\jQ0<0EH[?X($u/Z+,Q<23OSH9$%u<g(-8t'tR(qJH\ej[p$0i'mB>%+h(DCaDgN`86CR7'e+:WiqSMZb7fQW*1gp%%`o+S
-g5tf,.rHDoMVahH3^e@?.2pXt>jd>JY$HbA0PSGF#)si[^i?Nq.q0"\.F<-s"6.nN#Fp+LJ7UYTCh&Ht1O5mA7G7$'S2\(c
-gCf7Pl#mZ'XBe9%T9)UQ13#A5Ek6!?DkYO<\M^O7J4Oe;]%,!t(.U"H^^,)kJuDu>\9sZeN]IL&$6a$%TlsF<;q9(6mYo\-
-Nak&s;57TH29k5)UBed[F#jlU*OM5u&Ale!+H&YeR:o#QE<.pJM^=CVabC)^RFE%23&&Ti>Q-EHFX at dYe`Sk>#=OF*74+0'
-A`XsK(;q=6:,c2SXp5a+lf\0I`]q*W(c*k]RT.MRbQloej;<=g3Z-DL>"kZNM@>0[1hI at 6\408I+i/O>ghGVr8>Y2BD.U*;
-Z+D'9iRY:Un$Qpq#g_6(XDMH_U7)hU1C!3V5,)a""f<2(VO'8=*[bW<3]Pj22KrH-VeT'sa(egRSG54[P+_$GfSb:f;n54m
-M'+a]/LaJQ?%O at KeOfQ#MQ`t$"#@]O3r#UKIgL_ge>Y)Uf2!0/I"egqBr_iGP,bjcY[a69*4FcU:7h(Zb`'-VT7E!e,3f<<
-9n20Cf*2GrR.sS,#[>3?:p<2+a!)GG53 at qbR+6qOo,#%_O3,nE`?D,&UVOh=Q*jRA]\8M_2/]a\<[dI_Lp>s.:"otc=<*`V
-88M^PjQ89Q]hZ&Co")4Nb+N4;,W]o^)sOsb^H:u]9:!8^W>?hU0dJGb%'JnFP@&iiHHt<t`r)2]%8'\dc$=KoE7c3Y9 at PLW
-aMl:97A at tD3/G5fPimaOfgoo4%ZLI.]oS'#$'D)?`T0BX]l[2-_,-puiZ3?"!n0bs=&&nY"nY/^):`kMXL at 1;p?etSWe8gS
-OB7b'B(KK<U$R)lom:mcd?b'u#inHA0abALc[D#fQ3l<,&48j2(u$'okL];0R2HUE$[cn#)Zh4!0\LAM!8<*I;p`APd'*i-
-![brf3akM#QI_`c)9hM`+M\'_^<8G])Lus)!#g8oS-5FV2[bKtT-U=Oi*XA:7Ii!h@(0h3FcO$%&QlJD'_S?$,/t:4N:ALg
-?*Nf-llp*70FCjg#ese5C'E?pqndD`[Fc<Z,$j1Ff>f=pG3Jt-])U7,pqa*`>l!HA(;)BM"YF`;<RG*..;?fbEQ2__cA]&:
-.X/P/'(ILjR]]NU^O:cMQ2N8 at RnDu%JhMhGI?7-!g^XfFpA?jup^=#MC9_6G=fJi]EgIZIi.JIA]ck9W9\*^AERuUdN0)j^
-S)X-N#YnQVRR*'_7M0X-B4-9n1M<u&))k7>U*%U*2+?<OLYat/;,$da_u\Nb)9RB2PVei6Ut)S7UM"eHaZ+1Zhqu#a5g$<q
-1k^pJd)^ll"-o^=ab2D<[<%_r"keJL=,<#A?7Gm%m1:1tW0]?UK/:d]DH-q9b9Nl"/#tHV:d=X<<$fKLP305tV1nV*G3:*o
-rn8-bcW$nU\+aWW5cm%,Ur)CuH:sLe[0l<K8Q;6\)pAGLCg*mX9uY)4P#bX@'pd]>+X7B:_?P08Z)FI4D3o`PjoB0[bA6%\
-4Ff?>Kpbl!nr0ed3C^tU+Uj<Q#fd-XF_/aC!U_B<:=u8M=^^niB?kfL-s3>6o,#+A:CZ_PWJQ<<7]PiJj!trk.'uRtYI6W[
-j1q$/r_"&gd=eo9)t:UZed0rr.7=^3f2(l3MumG3ACUi]Q at 5`fdaH^&*G=.b)-.6H/<.;VMtH:Gp(p9RXC3Pc7523*Y>L_a
-VrX"2<%(:UW0N:-^<O-HS]9P`!N%q.ThKigL!6O'@p?\`-[hL`2M_I:,S(?YQj#iXj!30ZqiLDJk7l=od]MpQ_6U6@>HM*o
-QF83K^!McV5 at kBnZ0$#;l<27<MM;U6U&EfZZMmWi.3E(ngg-o6("=hNbF#`foEZ<::<FWZY&3sMp at ArRlb0.B"sri9Y_]+L
-Xa*QD#$`iNs,3?ur,X0rG8+`HUc";P1atjmQ=82-J/9r:!=$FJ2a#.%RZT#AGt"JP0]X6\*0>cG!/-9qO$&85U_s+BB"c',
-'2&Js*u%u)]Z=NQ':L-_4`O3L.LrNc!#\%E.%2q00Za5g(tWEp'!mU\Lgh1gK&j`-DhY-&LqIbWR%S1l5HF[&-u1`uXI)0=
-U.69YOR:\jKs&HS__>=QcFd:Ifla?hh$W1d@#Bt*pH]ca(_$@MI'`jRn+M8(Sc2F!!?2tJj4Z at 4Pcf=)6)`mr!S4>c]NXGo
-;&.&cQJ8PPjq;j"Fplk,Qc3)P%>f/,P?>5KVm"U0gVM[&+lf+YBnisT2fk;/?;S'Z:'ASV<7u=7FK?IjkV2N`Yh<hc^g+_E
-!sIq$MR<n;/7Y>S*\ci)BO6MD]e(Mqf0pOZ.V1?]O;8^!2?9pggkd;-V7[1o6/QB"j_NJGg>E1O)ENW6Od)a$NU2q>aj?-(
-\>8;-2nO$QDFk=1?*f<epX"KVCPf%1Peu=oaMi_kHJplCJ]#tsT]WQ#Yq+`GPlq0H30QuAh`ltubbr6e&X\j+.@=SJJK`!e
-9d`_c at 98>"cXXFI-kJ`$GD;uqS51_N?X?#cm6/LoeqA(QJZ=\:%E3 at YhQ[9g)H)X>RV!JU<cBq>F3i5\1d9Q2jce2T%O1[P
-l;j6]$Dm1Z9mI>F=@)=tLjGRilqcgufG3%Ej"=fXoc\3Xd]eQZSXSYTnFnmHTX)I.e7`'>H1rC+=M4d!QM4j!>7=UEhGFL@
-[G&fq3<&beCG'+L?sIt1&aV4bRNI4m at C4tQ7e6c($]")E&>M<L5MUY(*MF8bLVI=B?l-OlEA4Q7GWa21F;>\&#j(>&&oOiA
-H*ZQX at UZW=+H.rcK_%iJg9 at jHRV/9`W(L_KbQnF\:[2*ALNUg9\<Z.nMk/A(OBP+]lu<m6Z/DaObq^E<mdTa$9>&P$%c5DU
-772#gel4[.?H,Tpb5GiXL'%lX%T0hX(Ml)uIGQ2W6.(eonKr(&YoHm=10K at VOLhYfKKuQ`9*d/m/p$!9o^*(ccHq+7Gotd8
-3M+,KD![@\Q[5u!3`&GM_GVR-k_Bs5=07_XljB_.-6;p,\U0USmk"mTE]hu"qj_oOV9SI:ZXHM=DMC4Vj!)uL1l;ElM+6LC
-Y'j2n><Iaq15-H^_.\A<L+KIPf*a1f1pA`Dl>S#J5"&uDnnS_1rUQ,fdiH5XDcpeAG5RP0d;(3VB)_9UmtWW=c'f/J^Oh0P
-Y^9#IDJ]46RaquTk!8K=/YXjoOU\to^q/lj?Y%[TT,c\ejgY9Xq2G31nO+)r/@>)"r+GsM*V)U"`YJO.NI?_k#S(>2N0TgH
-iugEYgi5qq`MAnK=&c`I.L,XlI^aXBG%/io,9aRT\s*[uPG$B>4];N)4HCD;-ep3J&:G"*O3nW_JriIY93*@aOc'1oKbYSq
-dLsf4_%+;>f]TCFjFo;%JbQM/ea^,Y*-%&WD)Q_K=f+4%kob\q;JA]7,9?),lu,bf,ACbPj-u at 8NlL4TX&;a-Lc]I4VC2qb
-YKYM?Xl!(q;DaHHgsO$Z[_Y!N$F/R,Z(_Ig<g`K;ZO(&BGPR74Sb+MT at aVWfKQ\t(i(;@]gU]gPf;Tp at fYR'@>q)L2O59L8
-gQJFVEf1A$HQP<8DQKM9O)2V[Q3aYDVU$%3b&=F52[Bn?^]u%"I+m,`e5eBPLp>Pg#BXcD_%s43:@1Zr+$8L?.n2M`>4:2?
-)sK=if_Ds^k$%N,DWX6`R!\9!f6Pg/U:0$61:p at +"'D?1eG*b_(\"7]\6 at 5(a?$?G6>e^dW(W5%Tcm%^]coduf1c%DC)'dL
-PsD%6YN#iWAr]02JD<@>i;-T89iNK\ZGQnMn4ai;#c!Ig6l(JtoeL!#%@_sdkE0.gj(8lcXB%WJ0iN%!a'SBD$n@(m,F$"l
-aR5n_,;o08H1h?%=#>7D6h*n8'SdZO:_FSRSuPp7,BS=29!K=".79ZL+p([-hTpYI*;na0)94XbM7S/r=Oeh8=1_(T6-K6<
-&)bc(#PW^g'UHYlUi2e#$["k3X;g;:793q+GD9*oME1qBl-k_u'&()]22rfG-*t$l7G?UD/VO4NG,:E\:eV%B_Gl>aC70D"
-kWh9%'NCfXc(Hj.cX_uEV!>9PG<:_HhI9ckmiB;eOt!enN!^sF/Fh-N4U?HZlJq:&1`oP>W7tUL0$YL2L<J_D,3:Ulencr8
-J5(k0R)YX"V.!:&;bc$,p2tRSa5AfqTd]'2KqijcentR?AlR!/j$/S'i5=@5j(?R"qMa[t\@"&TM7,uG?b#k_G0hXRfWlWH
-^+Xj#Q>HNl%*r:m'aEM3W;cdW%c-U7]DDPN;u^2`s6&RNrm)P[h]LQ7H11e(I+EJu+!Q.jDJ&q3Kh0gt>S%9EZi$h'n'fE"
-2`!nKFd2/ldtk,469DrhA[L`f$$]Sf*_NOGcA5?#8Wp"-G=l_KK?X(NSd:N,3';Jf'=4g)!_$6gaq?Ph.?e*]2mO,l;(5D1
-<q,^JF+XIH2 at Ke*FPO:M1 at N6.;4Uel%O<c(jNbhm;1.*En%kPch&@58>p!P)p-ZN7:\'TJ:3=TDTtH&$?7(mA8,NUH%odHm
-iHR+3i(lXP0RFT_!A)$Mmp`rlX9W,5Qihm+Jb)u`nRG6739pUXa0$2gckWn-\%G5&1ZZI;M2Sim'c#\03H07m(secIqQa=S
-KDXAf0&#pL4cdhZXbOIrB4Ot144dr>eS&bfqrr7*@HH(J`_JFtD*EL?/)(:!H:#n*^W_g.e%i2_K$Rpgg$G'ZPYY7lG>7`M
-N.l"V)_ at VSg-cOSBpQ.LL"3C6q`08RV/C$Y=tK"*YLnD)O519\6R\P+Tgc[Xr3?e,Y<<.GS<NPN1$>8WDiMBmOY^Xa_DkWG
-2S9K^PLma')c[N4.Xk:*fTl'XcF>md6$24i3uE2*1&18:))!)6i\7D&/k\P`F\!mgog8.HM#d1F`O)UAJOEZL8h+ohjj=`T
-4Q&du#>FY007K*gKAc,$B'^G1.;[pR0bq59WEU$o at U;>->\4IE)UPE_1Bm['6*M%9CBCi;&(O;tQ_Ck,G;3&7b4$hsMeC;&
->E,'][E;P)40]JFRS$=\n+qgkZiB]"g&HF]li1?7<s:]kaj+#,;]t%__SR9Z/`n at 3GQe9fUp_i20rfs<=EeE%GkkHqBgd>`
-$dOoDV1q])![-Ns-_+X5#DEThKPF;C4Cfr72FJ#6R<j.k)\&j<].:.bi1^#fiTljNXWSGR2PX73T,aR44R*ik.G%'a5CFI,
-+)CqEWJ39"Ufp>"A05nS.JM'*W*']?e//n'!IB6BQJh]Y<Fb*4%N<tEEW?`D5_,tV"igmH-V"q.'Sh2-EGXl.#I(`6q!2'Z
-%\">#f<g!Gr:SC,3pe52F`/*9Yr0]r42LcRT$T8Xl^X130$=%jmUuKJ]V5B"Qh:=Om!%p@*nuqPs8%t0HnYBS?HC\ka`qR#
-QhCAu_?9*Z=9Vg(r_JQ"U+<j*D&-lhfYtMu6MlIphdj5.HQ+o%D%C,A%E*N)m;K;0%5Vi=L`&:>RL9 at U2/5$"nUDj;g:1o<
-(0UG)kcko`AjP<_Ro,rkj)+HE.WcY]@M_df1AnQbJ02".*i%>ZL:jbh'Lu)iX=+`30s\[T$%?C+aX.F^NDSo:9JqthpL^$B
--'.,-fXbDXO1f:-.L3\FH(&JW\MS.2q_j5?oV;DTO[frt58)d/A(UK[T[Vj`*,C_#_F$:ocJ-3,YQP[W58of`lW?k0,cto8
-g6UQ2i,3)2 at eT0VchCFT91:"jR4!itc^$CFc+DCmHQKf^&R%u`3gkW)NP49aBo1#"gY0<E+^BsK:i-\h];TNmX*Y([rP\^f
-V3J%9cugVi+"qIC)^kR(;&;@=:ojs-7<&gZ"BZ%1T=A71`_?/C]1HH_Ykd*:8ln.Zo`o,e(XtpnSqkaL=Us&B4S^0/S]RfQ
-cK=+W!SisOH.M>qL;n%a\AQ9/5jGN)&P6<:/I/<`/uL,\.JX5.W,gb(Y2_BB2]LpQ at 6!$\%HbfYd/.bd9u'Em>[B5#X3'1c
-jgs.G0\a$.*.'%G(/n-Z/I+FM#AU:TT0E3bfI+mUXIMdIOgPDZH9Dk-9L2\Ulkq7FK0p!lY&s?cd(Hch^LSjtH<DA;U`>3f
-D%B'i(.9m.+MjaF,. at Jne6Ba]BJ-5A8j_&5P8MtdLRl+Zbss64_bRJ7s5dD+IlN)Z+7A%d_;9Mp3dLI^B0Cc*=,f(@Q.1Eq
-*G$A,Pd:3Z4c7>TRMb/kF"T*WSskcWUG9blMZXS,Mrd!K?4KM!Z_p.'V@(F4UK.oCXF%!JX-ir"VJh>=K19F/4QB('(kYOL
-4]T+o/@"M>R45a=>SKb/U"7B#j9=4F<b-#_(%8ruYC#s^l>^=R(\dDodXM&nPFsS1UYIS?k_MG at k3,QgQaW0_O:Zs5V*o@>
-ON(PHehB&h0Nubio at dp-?G^<GW4q,uKe&g;Z#?,Q*gtaPM>?Z0hOVIkG\0VBA9ZW)=k3EDAA<DGQ<sT<fme>pqrE3X"*^rk
-qLA77W01"<YA\E(qhj`YT$Hig?)o_=1<tLRQ1Lnir5?0%XC#Wbo$>jV%\(oU[+Z;5d=_tN at qh3F0UZjFEXuu^IU2isrd]9]
-dd[Vqs(YO]`[SeVfaP)^@3T0@]N(dXifsmbr5aTTl5MO\?Z3nE8/[c)/Z7u%>72C)omVgg9jCO0,DA_n9lT7^"P'[di.B`]
-fESgqjgl;#&tT2,f"YK$4Pp.eqq/gD3;46:W*LQGI_:,X"Q89Dm)Q4;12Sc7LuF_)LY>1>P2;7<Z/sH=ObZTM*:(lM-(U^N
-UlMZD+PFib2LUGhUu\5Y1 at 9Z^DotJ?[js&;kHUKuiO53g@,F0]U:5fccJ>t,85d`l6'Y at DPh[6qbWDj8GU3Tr8r8-GJSF"V
-\D#*Dp60/94&P at J6X3)_U($%Ja4:JC5_CquiSjDLU*aI at Sd5`?g71B&8q=Bs%T"!<UD^tZ(cEl#;nVCp.#h4S7Ui&3RMm4Y
-^'bSKKH$L]e8Hk-$_/bQ^\ZC!`R&B1pR_K_fhR8Jc/&q^PP?WiZ6_"U#ASfuWmC,Yb`c&/nn#5.\cQcUC,+BI<=>K^K%Jh_
-Z#oY;DE_`*S$Ike7 at XqpD:E\ZemTGM at FVL"aC4f#@,_B1OPRTU;l<Wu<8RhjQ?DJoA;YD5Wtd-<gTV96:"+n))@o0JIe0"@
-%Oi2Z;[0'Y:0";26^/3A5W`R!'8?8Hs/Zj*K#*bibnNuVCB9:d3Yr+on3>dRrmNY@@f[Ylf)P7Pr?(B9+bSl'9r3"ZrabF$
-\XaugnPc8T1gp+tGoS'*1%EBuP$5,TQrW9(kXR5&q-r\X#/9?UjA8*OhH6[Og at 1uhW[WmX^f8KAI+rU??lL8LilI>OYX+G/
-)Y&G_Y:q.s^Q(''&%Kta>498C&ZX8+er!X:Wu_a2'rNc(5M+<!B9Tml1PH:+&$3t]Dc?pomFY5K")%[/gC-#p*CB<^=:5Hj
-nD]5%AQZN*hM#)>E!*A6\/2I;)EMQ"f=&JmURNf=O`4-:1Q:1i*M6rHWa30.F&(<dH/Y;UZ[5_c%rKDUCru\O36]$frq&U%
-hjUWVG4s)gg!.^G>FI at Ub`JAu0pdhSDX!R3Qg`jD=V-4NFW#27rc`hp*&k=&Rj,.7O"fa/RKUZ;bOquB^jV5AJ8:=K2T$st
-p_LjhnRfcQjt`YOH at LhHLA]We;=VX_)n`^jXr%al"+MioKKIYe.>ZH,p>h/oT9T!L%R9Q6N'Z\CGN"S3 at 4biZKJHsn3CrVb
-3 at XU,KstYndnkZ?43,jpGS.hC6te,k(iQ\Og)*2PbA_CQ?^'S)Uf@,k>rJ/QKsn;Iju7 at g?,@\pEPr>`f5H$oKG#kd^7e>I
-CbpFVd)8N_i0ZQl96Kb<L-__(^UQ#7Y-cQIa6n=7'K'!(0X8dI+S[r^I9n*5TW6MsW(g`FkE747_rO`)jB?InHZ]=>\LBs!
-9+dS7:dA"XG/uKg6/'PA/GB<aQ(eer=62\55ss$2-a^ct]5"8HC.><GV[i4Fpf1+76hH"uoaG8UUfs<m5JkH<NI&1Upjr"Q
-EsRd(<#lSMFi@,tL%]^L*;HG+G\skG&OMFQq.uXSOok&OW^9rFkL/J\KQadJ0Y]-j%Q]l@%#)-bc?h6+-kYuOV[@l^od;Mg
-ADf"Cf7G,WKTrfBXBdj*N`agu,,2[>l-iuXV?/i(:1q=Z%FbXNU43"M4Gfd5%Q@?=/l/-m/7.#@eIe'[fG&Lnj/S+X<2I#V
-(,++]Uji:)#Q;D#YQ+4*r\$nBn*L8`&B55]%9a]oe,_<,i8aHZFD1\%hgjQr/E"DJrp,KqmiTf-)t_h]OI`UU/g9K.DD@"J
-*m0)t$s(6>^g^_0?(H_&Zj:e>fij$jfrW9=ZA<;KPS at S>Q at eJbD;:LVn8a4bp:PFC^##V75gU4+^Ju#<Di1SQD5SDtMS at E,
-2>^D+R>7@'1H<n:Ek!u*g73U)9UM8\GIGKT_[_VmET6AgOC7rd`Nn4Z<R&i(i>q'4hMmB!TFo0\)Y6"17Og;d0Y/trQ,p(L
-`s>:A0K.I[[gg.(<(`1_&&U#YhsnB/04)-]_i^rpV:,)KA,^s;O+_m(mG11d)78DcKO<X:2m'09U##9IHhMY:A3X;AT0Igi
-.)CY+)**7XVq/Ba[bc2XlM#S="JFmQn,.89:76(33B^_[/4T.P%b.L?I[>B/9k-DMqR%;!%"S1sAea`2i!,mBYROi,"#Jk0
-NiO1I%?UeK54JYj%$T93"BY1l at _\D3IR4RS:?aGf's:c=Y'FM(oB\k(P=:VQ;c4XZVJXtLfS[nZ.!6J-qTb)8,%7?p)9sIM
-5.,I^U6W4d2FN<.ku>qQ!*d.Tho38`l at p8/J+tmrD-f;.+P>GYa$t5Y^37a+A3l0BU2#d$)^'"^S`p.jaMl)Y/`h+/2JKO&
-_?[I#,eP8X:>&O.+j)r^kePV&:?N=3cB=%c;WCRPajRZ8.?H[IQ.jp_plFur<=CZZL_)qG:e!E^LUnhFI=,&UaAg$FS\@n1
->@)&g(poSe9fo\Eb0RP_SZK,*YXRFaL!E.Uqo_t;Q()rddeO-4(j.f"#]-J at YXNuj_XrMg]jUcl:N(4$_\RX!.>W/KCdR',
-iRBemrU^BGfa`,,+n[-7ojAi@/q)NL)o'/Ncs`]lO5Sd'e`fI\?1Tlm??kf!073l"'!J at H#00*r&M@(s"MP9Q#mSAIe5B10
-gs2(m(Y0*ojUgS\e1(p6 at Ld6n<S5)q`s'4:ogP5ol@[[M']W&.B:pN%Ol*jIlB92\/ld/,Mb2JogB,NuaV1kDL[HKk0jBtA
-dVjq*bo&5&WbPsE"]^IjndYBCrCL9kc+Ggn_aoL at r\1:<q=XWCs5EXPrsr0C#QAi3IsX&"j^pUmpZ7#FWrmcjoKU%te\>Jk
-B9iFff>DH9_YF#Gq"*Hq]N"=6-rblq5BY[QB?YaWe`<NtTQ[R[OA8p/d&6Q<-#5-0=IQQRV'9cFOk%ejcAjfVV4:0jVQ=M:
-"g$8[.5W_XjbpB2C+jqNHpo"dX9/@F#.H2:NcRLkY8[;K)hg(jfU;KOnq!6^'9*aCHa'P at Wl@o#rj0^Z"@aHDcN8ro.crrp
-M-XRZar\"U=JLc,8obMH,52HA/F)i&`NX<%hm:rMpWemK)OifCI4)T0fo"Eh2#)JuI2Xm at loD7XHXG7u!JUi!JN9XI;V-eI
-_,PgrbM@&<gp$cbTDJT#PP'G$m293%R5DuZ3,[m)f+[cET#]_m(M<VqR^c/\p"6WnQH.6ZN,7kQ$Q$QHgJ@[1Q^,<jGPMm\
-!n*fAs)I7B2lAG7?-VXk/7i1%S%nVhW^pq+lYut3F(o7ED$Ki+h1/;kaP_oY^f]GM1BYfYJH#3N[hfj6plhOmle>L#:sH6n
-LKi4i^\:BedjI12q:)As"`GQajNWeZeL#NL(?Uq&5fN),O8d\hm9e7UFbAL`+Zc+^4,oQ.1b]ciQsp__ at D:,JnopdEdC-5h
-d&mp8ZVg7Q2&s0jN]GL at AL,$5McVq0(Mjh*Hf#I_<]FYpc*PB;acP0#OIXHP3TNR^6jFe]NX_=.HK8UXJ]:IZm&BXmCG[aW
-@"ZU!Q0P3X;EfFKs%si2-nRk,=h4a]#[@A(9Vp6tXLL:5PEPUJ(7Q1g#29P!i"-WYhhNd:;b40uYPb1QJ:f+)@<VBO.WBsb
-\r[)K#u?k,L-cj(qne(U2)L3@@<c%-R/$\N`JnIKRPnrpVE$X0Y-$lZC/l+R?)c[&,RX+.)n-la-D&3jJgmV]Z`@rT9q1F?
-W.JL'o"^Z)Q5%;'Ln]Cl.[)KGosAEd6-[5%K&jreN]untn\2T-c0=1r50YF[0dD'$]Pm\[[LHKXcT56["%1qQ.kb-+%cQD:
-"mMOnLp;r/M:Z1.k:IO\E$"L6cTS!&c,&pK>(LK;)'4KT;LBF1 at 7T:3f"U1<!VNAP0Se,h6KT at P<Yg$5DH6k7g\59A]%[]Z
-o7"3b%r]Z5mE"/!-[Xm^m*4:k^YFsf)#3R'B)fnefcM8jReTq`+0PE>+91*qro!e%WaI+EIo-hGcft&N;hcL8;I3.El`!g*
-C[;:[/GkU6,dMWZplbn-bs*qC&TOk9*[pdY81?<QgtOT!qa4=tJ)YXcIH.NFG0\F)3Ft!K@?Ir0^b)p%7k&\O^g>D$<.XX)
-4GOgDe(48u<Q[]5TrCHN(".]A#-/&r)\18ECe&i=8_Q.S_qcTc%UDZVlL<OY=PFHsAIW.R8jdA_"r9SIo,V?D1i5n@!0noE
-Bu(lj>U/?<.Q!gtFIhd7=1@>H2a!G+QL>DuZ)&]=(bln3=`_`7+78IHrkDV7mbM%GY>9X^HhOMs/6Ec)Z\dkO[7Brn1';]A
-AaeK at _*n2CDe4]qE$]Ze"j=EDP;[m,3a.-OR74tDZcTJLj(;#!q^@]4Zd5;8WN<!PB0gfXRBdR5;:c&Q:GZB&ZmPlJWQQCB
-in+mlf:2k",+hP_)sqO@`Aa+-!%>-!C[_7D#SS17(=qDPA:_[tbUKl,hUX at 4EGY9#@kW'tV*sK&<^OL4!P;q*k0M1bO_2K<
--<AX!igqSI6\jPYNOR"d3k"5rVFU5iAlo,0-d[ggYj5KUD>eKupZDPW@\SmrQET$hG9X8C"Y,t:JudpDi]LE$ZF3,QZEmQ>
-KqLU&O33eDBN;C50`FX;VDl%VbG;.E^&!.XiYjuMiam$MF$=E<lRl<7k&kH(>^l!W?q3r/]g+VeVpWXjc!=Vc+RY&ujZ0qN
-5'n at N+WfdLntac)>X4u,<gBK&=5%]CUusO3oc?/^feI]f/8tA6CNGJ7NHA3h46PeR:tX;P'\RC$bknfgmYk$nP!=SpnXT^c
-a[6pr2N)u3(\A!n6)%B98m]HdZ%K/-P.S]KPXngnJ(<OTF2;LY(HTje28b[TD'eLeSho..dB<j>.-6JAE65DpbLtk^+3WUh
-\W3P-_a\\LTRCc4 at t+>0gaL5Kjk]QkP9>M at U*X_DV>alR/+Sj,lqhYaV6*G2X1Nb7:/Kh%VioT4%c"sL4S9?HZ)q2GWuH3c
-a]J2MldoTRE0,?nH+6t=T`*@dhK#_r12E,&BmAF=Mj]OH;3K+05 at 0Ff0bH_;>hX:fgWe(V.R_g#"cUq=WCE/&N$L at UO\dOA
-+r50O8uZ2_N"h3@\_c]E?Y#f-S2S/52eQJ]QpF$NG;lQ*s2,dYs6$e^5/:nh:NU/dgn+1gFYZq6+!.2>+GW"pXI2V6(`nm?
-I7H0<0c2;Ba'NJ:@?YqU%1B5D66HTc]_$fb\,e`n&71iQB-3g*1m!&aQTPcTb2!CYGh9iWBM<,j>q);dn[R[Q`j-";Vfn`6
-hOu-TVTgOC/uo(d^r5r-fo1OlF&K>BB at ot[qk8T[0E at pjckI'h5:D-B^DAd2!b9pOcF,bS6e,ID_>S8h(O:"NaR3alo*,p\
-fG^rL750t^^@"U3gZB.@,F!sF^%4&8e at G0W\"b>BYP%\VSeXh,AQ[YDc'TnS7;WDG!WFqKNg39IJ>^`fbKbc.NH;?=Xu_k\
-bTq"ZrkFgh.`dDBKr4nc=\#b>eebZPH%=,$I[QCt_^rRq[u>Cu/5-H+(uIMh$H["i/[Kdf(DJbJ3fB($rVFXpX,`Z<ZOK\;
-WiIQq)uTHWbPhf(+K>A<pXlIC9RbrN;t$<1lgqH1Kl[Mm_s\Ich29s9MhUA>i/de6U5n'D+RR9*P at 1@NKY_b9dL9a:67A]\
->?-UGQjX(,;@231Ri6E:fW/*dk][pp'?Dig9hdWpp8dfeTOG)Lf]RKG?t:`V_V`C?6]V=2%==ADMlr!H13oRO#=m\hc&>,7
-FZ3NZad=Y8pm]0@&6+I<5juF-hY$1u4Epejr"ju4P?E"(eDm*VX[;"\<husNrR%VZ=Cc0d<.912bHCK`T#Y_t@&l7->>fQ9
-JA'6^WGUV.V9 at 5$BKA7bq'/7,D).?9 at AO0jlKs3\CgnWPP8IDWKZ"BP9R+KGTD)!1>':Hl<pXlO=_,BHR8ZI5?^H*.3=t>2
-LPN/e+^3Xk+'JiN),d*4&P]8[8tb[JoRb><q+aNh=4.&RS;EF+1a.\>W>#lu5Q^^0R\*#$,eM[E9nQhn$<T-pGJ40qo+lDV
-U1IPWC9V$ZNo!LD$^e+.Qn_[k29V[oi54M;$q+::P2SO0c2is*7<X5:Z*4],]oZ!.6GI^;c_CWA8Fjb?G^Y2oe]Y&1EA+])
-*%+`1%m4*a.&8gP?r;YZl;LIu*p;YTRo)C=&-TO2&2?J_e,p/)d-::6 at mKKJMnus&\<p9c^4)*T at sd!b[bj<<rTT1*mpFB:
-5M3UJK73"TIrt/bpHf6-f`+AR$d3p(pra]2s7mT#KGV(.Dr6trFU%pM7M%aE\GtS6)(,.Bi;EiYLRD>blH53JE(dI>L9&Qq
-GXGXu^;5A"gAn'LqkA'\jR>I5O\nrO#s\'@T:,ND1ao;re#0sn^Y0;0<ungR"Veb$+O0KTL[reP5(sl),>Wmu^;]ZLfO\S.
-DNTn4qbOa$3Hk;%>X1'$5Rb<G4+I9/mT..>nmcZ*/1:l1WhloJ&>K&bl!&uc_i$?f_J$'fnQ?TaV]Hr&^='L%cba(4(Lkgb
-U0oea)Vb[n02/Ie82cEWZMqf5Oo&GNK]JJ#Ra4=[Km!M!j(9bqE*7'a/(o*PG0XP6!<%D[roKWTgK.umF0f$==J6X&>u+j#
-?LSE6T_&%K:YiaL,QV%`A<l&VrZfr<>0=4jRM at S$AlFiBW(C[IMX`4SrSbE@(apXNZ at pi*,<V*5`Ma_TVf!DH'Je5hk$ig<
-e<G9t@%SA%ZurK'h#N(\hc6Fds)oK))dr$>Kmd<JQ>h9MY*aj,JrmWWbm2M&r5Lu&Pop\9)3LkuiGikXUi]$=#4T6NaX,2M
-P8 at l<UpPjH(?^8h`C8EAkGkDXLllcRreO0?A.B)]eS.<Z-E/u)Jk*jfX(i(1fs*bIG4TX"CKO`r[/c<[(VW0J`L+bEiKO&t
-'%j[W2LLI+eCu=*7)F!-UrOl_1+VF]_lU6toiLL18^B0PNi.i*'trb#/hq5j_lq^Y at YAcWe?6[LHr!n5S.1a0f^nkKrWj=M
-HC<Sh\c="2FQ/6!iU/hRJuNIEpp,O>3$!/'(>FC9euT.G;lpsW'K^#m/#4[1al<=3)V?qZ8n0N%ACLbn+*HFm0Fo;u+T3^E
-l<Rg`SQVJ\ckr=mp*uCml\!t3iJ.$n/Sc/W/?,/mdM9XVfrVT\'p6USe]YfB+Qoje0EH!"k2I!&&m at IHd=)9V!NB6.og)^:
-FG7`::jgXb%+&Kl[BupSjJS`u>Gs1c!e=#NVq:OX2l*rJAc!D;0f%2p=GqMLK5h`LPEI\!pjhp*%?.MVM?U at Qk/5O!8'tk+
-NF,QJ_/K!t,(/?C--3$[*11+YJ>^>)\CWe?A.cJZ&2gU\`+^sh at GqqOhM!-9&7Lb?%TOtm:qI'dKu-RC+\WTh'VY;U(bIbc
-%@`A<T:$CCVS"h>Hi5%Fm/Q at hr\$nDo53WJrP]8`!rX2^eGni5qnG6W at KBi-d/V3Br?!-Ohd9B;)>q-3m'!$*1=6';M#NGF
-rPs-(1WRi)^W;X:de/g#Dp_3U`^e*)2Cr&I;1JWI'MFT*%fqA]*I7>\fQ+ at VR^RM at _i/,:B-$`K89D?ja7OAB6W?u)GE&/J
-<Q6&i$pORSIK)J^!SJ\^?n4V.cp=Z`R>GF'nEK[%7C6\&<NG#$j@/9ibL,sl[K*Hg=T&dc:3CN#5_d5%;Z3sA@>%J%'t^]1
-Yhs\-l;hE.E#4mY<q9+E=#Fc*G/GH1;..QH$+CCCpXf`\'\0mQVR7AcQm^6$a/u$;QI"/N[Y4&nHr6S0I?%*[K#5j^^1tPD
-3*&H[Z%(CjY%C-&?SAa>\UJk5B)5?l+sZ\u7;GpPKn#OSoY\uL)/S-DI3uR?BkH.T^38m9+ngi3Mo7]XQdO"g<u*<5iSq=q
-]]`)@0-V@;9o^q)eF<BrR5/Eu(V!g]AIWC`JH98DnR!iP6Nc@\P0lci5Ti9<ei=u7e+/l^F#_$ZWYn!)5I(1Ibitr at _q:r^
-pW$#T"+a5;UbFK9gWZ=k&hjC[3:V0Y0;r_r[9fR4WYf=[>2+Z)-^>/o4KScYUbS'MAge%!9BP5)'rdFl^7)J+nRgZ<`8ar3
-)t69R.k%.49VFEYI?CKuZ8Y>.XAYB#E=oIZBTtDlq_Rq?GXsaFC`[t64/r.];9H[=8X9pr-51t`J9Jn-><`D-Y,q&2(HmY^
-E7sf+#^;5uC231><7%5WmX/u;'\X[Ng`f/)YdSsT]OU:sO.7rrAV[b)1K?#aQm]>F$$^T-)cZ0e-S(eC5k:;4EUFgq$mKpg
-V[Q1tIf'[(1*1<!SEcs at nHsE8Z*,aM%\[O,m=@s'\^,YP\@n!Aiq;,c_*aT>6]Kg)V8&]LCPZX^/1<tK2Nt`VHU;D<%?CL@
-c9R/,+*MJ1q6n2Gami^cf2p8,oOFJ]2mZ54b'Eo'/^*1%9g0\h^)b8fC66Gsde9AZdcp,>)m*<-kWDk1rkt143C$a*i_ZE"
-Um,oH#i.,icLA<kSa`U,fHkTjB3bB(,L0a&LG_9OdKk5E=LL;7&"UQUK3TX(H<,+\TPKjCg[0i5;MRaT$l583MuuiI>:'p!
-mS'hJQ at 2)bMJHB%SiZNjeM%^6;.pb_8bpXe#[-h%OV(8'L'i]fmeeG&^Nk2"^V?:%hO-O>;-DuK%t;);Hi;O^f+7BVmf,dA
-UOM\3dq!hprs/G:M^1=!d#DEKa?Aa,kX"#'C"$D*#T85nFcuOTjNGcR.>sl0;e'8O.+jP'"f\o7(Un;r`C)ng1E*rc.56i5
-g;\.ZFDn1ioPqt&e#0sV,#P<qFkY:=(?iTnlHa@?EGou0Oe]TIk#qK3#reeU-8$q+#1KDCHTSAj_W4hj/aH=GDF7WW&MpUS
-<k/-[DM[>_9PmE&AK2"LiaZnc<"p1a at CKX2ilHqjGF*=Mfuds;>Kn(oj.RTp%'L'QY],gfo1$Ymgf1k3::)!"!u;Ini!NQE
-K3,1$n$m/*`DOT at p]'bEhOQ"_Y`g_E4`)%(Z1[F=*fQ[5$+!(iq]qknSAmWpZ=(YMkbW++%1s/T>"kA,G$UrumMK!AR^-!o
-O&_IW7DtFNSqu-n]B'DE6F&Y*$dGEK<8\m$J'8q#7ZHciS0/]4j1"Tfh_O,M[iKgteL3W,#a?PA\?E/9C#k>hOjH7/?R/"M
-aT49C(.g/Z)j'O7o1Sb),JWQ3.uu at t^m=8j5D;pF+[l5EQa/0jNI(nN]`_%XIb.=JSpZ8aYY67VOXDs])_h>AG"2C4grqc;
-Og<J"Bu at t7j[N#_^[aOJ_$5`JY(CE)@?=T^g/Tt5.d$:ie?'%^:WC7Pi=_>!O=GV';@u.+-GHGBDR3VL1#=_dL(;r/fY*>B
-gbgQL=dAc)2=,?M_]HjuAd-*S[QXF-p02N-/!Uie::nVa%;Oh%C>OMb$I(cf3_Q1U9#%=e+?6f_q\YD-poHH_9$V=+8I:Rq
-:(p%`dH<Xuq%):I<C5fT#*SnWe*_2t$G7J/(!f[Eo_b];(pea?`dp2MqIaer61O<N'&73]&lgDp1R=.k]%A;Tb:mJ^Z*<[i
-N"*hML(Mn'%gZ$afd+c"$qdc3W,JH?ipkbeVsum%i at na0)]Wsp(3%uZ.1Lm^l'lJ:ikB/n8!K^o<_e at Q4Wl[AU5')65`B1r
-eB3m>$N^Bh.RY@^BpIqONnZm(Z;cVu[1&6CMh%I8`DaY*Y&`IW!UeSHeOtKOiVfG at 9=LX041)ffVA6(MhEf:!Xh!e</4&+R
-lnjT"_k/;Op_>$pZJqNc.0,9q?b)T(ipYcgh7kT.s,6,[hi[U3q.9N>ra,W.:]IUOOq6JUnd!pTHWt2*o`+>LrP-)]qHXPs
-jj;Pc>.J"nnfI-Y=A9%4SZso8#,P0UUk8W,[p">Dh^%?GXtG.l\i&Q#_DnW"mVl'W6EFs%&-%68Dq<;7=[QJ/",S<Q"Kg1P
-X,@':,YkTD&`/6W2k>DIOlqchn!BF,=HUH)+^I#sN/!#]fpFD[2\T5-<Xa1 at _+']JCtNE!9oN<s(b>fX)hiGZ?o^jn+#i2Q
-6ict`^tCHn6%HO\gG%(a)`HZ?@;`SO^HPbjO]fJq!"?YchY),:?,?Z4n0\\a^Tjr,d=I`$@2 at QBW18(LqN(Dtos,[bHbKGT
-jJn>*Ne:+MI;T1n4jHq9[Yes[-m(=\)612Ae$]pmIh&?mJmKmS?[V3^bUP,NE4272/ra^O1?tcE6UeWn-\=F$lr7WJi at K$g
-ku1B`5G#ajdfU$r1H at R,#0IZ&1jVq[@1EbQnVZV.DM9E^Ig0hQ<WQ'pS"KKAbUEa`+2u88%U`bk#^6ub?<ZJ;g95.P65p-k
-ci[kgf3Hu&'`ecV\_'KbS\]te=tX2`Ka\C(5th8P2%;%6ku$%e>#Eqf64*i27#*ZN_"O&AL]W%)CCL8Pe9)AQ.n0h\/rDG5
-Bn/pt-<Yc[mkW at gS?62A!PZr,9T4YAF+3U+EUaAp/kL="Q@?\KZ2peQnG[oC"mpU%r^XiI*=JMYK!9hu?bo.gLQo?^.9oD[
-S#5RCWGYCA=qNr-B1*5#5i4=$+9CE-\hPMF!ciq'CVrU]fF^_&')-3F;#&%*LVZQ/\7,rT*hG_S6[[:ro9#rp+]*.UFjJKb
-W)j<.Z,&A=27tn:D6T$\s-N5cBY1:4$bdN;!u'e]gl*Hmr#@fSoOC!rg/6<W)X!E\12h,a\9H07TkE-s0su!W/o?%B(Eih!
-kCV'Kdd-7K$:B=]+K)CJK=#:S33U_AI[BU+SS1L&fP-;)%b.?SF957V[:&TG&JR;.IhO!PA^VeS/qZmeCrP!dQ0bGj+/JHZ
-D.0sWk73;gXK[]o\W%aPr$'>9g_O"sU]`"R(/`O<:W"Yt]&jlt*2T^.Xrl!Ji*g72mP^?$Z,2D@(%0=o$MrKLCGG4dI;$Wa
--bk1#r6<.4"7*8)<`.'7Ira&.[kgVFiJjoRe,P3(s6t8&1AOFqs-MoT8!HLDa0>TIP]j0VeaPlkCLE_Qq^;bdRT8Br7Be4U
-eLdN&AS>%N=IF?6_H8_$'L3`c[Qd_IoIl32b'Aj_DrJ9hq6i[,e7rlRg6RQ6e?'4a]Lk$U`i[U'fZ(,t at 3f5m?k-U9NWlA?
-#4oc5l`s=0\iPp*>1^rY]CqWp:V.tkK8mR7G5>#C at .8uB^GQ[9e7!ZE&hqk':FlaZNO*hs1"rE9Kr#jWHn9iK\2Rp(8_n;1
-5G:7UU[p#cO;*&cZl_#,6J!$cZH2+_&of`a;A;*`fq;."qHRfIO]Vuig/fk\WCFduC"n?"htm?EQ^KL=H5hpbm'C?>])%HE
-_=*,PaNE8ej"P:-gu.a(VFfF%VK/(m\%6S\WAsQdR?U4[?>6",b:6J.'im>56/S$5G2bFGfCO>>(G*8qfD+<1)nsl\jXDS:
-TDAN,"K_ at f]RDFqlXPD_HkMf9A#I>`R5>bKK/+^PQ%)DAH"fMZ$oH1Y"Z>G_C1::"RrjIk.>O$m2_dDVC3B*9T8?VhEIjS?
-lFK'6T,KkTaLmYHlD:$9EANeA1I_5W8N-&-Rm!8+f3:r_X!@dU?@8NmSj[?&@c<^(b/ZD-,YuYoj2$ioV)(ZQcV76UK^qHj
-hPkrjGpY\f:>Q[@1VRa&?GQR_*W\6YU;gkbC!.AM?\(HU)mChkh_uSZ[O#Ks4V_OVFKHJ'WgKe<//4No%?6$X$6299&RP9S
-6;?'#F at eVQW%#)B+ZcR*eX1S`U]tWM;S@[R84$S?rf at Cb1&K\4+.P4ce_83<(jFB&@kW34_N5Ck5iNcMT&W at X0JmW2r65%.
-rV0fH2"ZhO2P%KJ at AWouiX/G,U"uCR\W\&o>Mc-QY95:M=B?uVe&ODJ+9oR$ZDC<=#V5)Kj:4lXp%SGGggL at 2'Fng1(+f_5
-D]r4V&u_1Gg%'>qAO5Zm4O>D`(+6"[eIGm4V)Qa]P0J[18?]kWUTnA.;R>/].)fn[]+ll2\FRaOUnaV%BYm1tAo2.C+]CV4
-LiNps at VS_;Y?Wm&_3m\?Pah>aW>^*VqW:LPJn9\9#8o^Mp^ce*j?hR-=-Hou+'^cfT)@QPN(!a'+9(h*HLciliVQ,as0q/G
-h#Ho:p&F`@KEXP%i6=@)&0PK\GNZkI3,ug=n,rCrCCLdmed+s<`h1[13T5_U\2-c^jOCY:+Vre:htWpKXK[r7HZ23Y`Pe'M
-b/6-djM$'Qq$GEJYc4i6%*1aAMAe&\CM>%/eg[.$[q>#1]aRN*.pLY&Hhe=36o";0*a)!/<F555(-:1LeL9b%go?7B3),nt
-4>1ken8?D24R3TZ9l[tJGJirmdh\)ADu/0J5<&>p!"oB_Nh&:1PoHusPnuYs?H44h4cB8qjYjA.U+d)6iN1S5&$X=uf^Urf
-);ujTTF5<m;'MC(V'o"#%LtBQZ=4NSP+XKaS at VeFm2`t4?+BCNfD'd9ZF<gZf"U;VTorC'#89Yg,ZN;NDQTpm&Os6hLZc(G
-?l, at rklpdV,>5R-b]Uc.h56X]%9C[rnlBF:M9^)sVg!T5`f-8!UBX),HG5cpnHng=Wg$F<2UDAl][QKASL;P>T#/f/;F=?S
-\s9[YVR%?<Ogg6ceD5#S?X`;-WI-ZhGh]LTi$(Q"`_L<_oCq48j8GaUj.<?BYNj7<3.ALR[pQINHIlfb-^YIc.ktPD-4u;Q
-*#2<V7I:CZ/WP(,fqDN%\i%?/DB*W%.I/-pJM31m8+:9PM%cKD"`qSsjcYQ\i&AZkKp1m\G5=tC5A!1KAGL at r=4P/i_>&fp
-K8R4O;F,XN]D2IZ!(hXp[Eh1&e6W%VIT&[uo<UtU0,*="JSo7RY!S(A8I@=SXfQ^#QIl:n%7dB>$3]LRC,M9=^q\]SerLW\
-8PH=]"()2)1$6?.Bh4Vh=2,M;*c_S0$VD<)("BU`J52-);,uZA>-D-&4u<tl.I;h?'Ir63%_+`]1Ymd,IgbMcmZUXa(RiV&
-g5.`&%N!(<PkRZU#J1cgKKp:QfV]"(lORU at 6ImdM\HNQk?8M#0`_uchoB*fJ5siGP2&+3?2'S"++J(M:HWD=SC\3SJi0^Im
-`nJ3/Wg>#=IZ5WRL3c,3.=7_#nLZS<WY>oG=jDhH[Hm^H19DOOZff!@=Xpf5D)>))Bp\<2Ub[nu18lX:=(.9^*\7b4'$GC@
-q7ktp\7,\T*Z>9%NcJbB2]F!Is&cl_[tl`[r$'$E$E7-4P=m$g"LJ(#S`KMEk+V.n^LUo+^OJ8%W/#eB;\<]RXnq7qm-e<'
-rqbmGkoM/`]QstQ!IdnNdnsM(,ZMq(^N3W/E6E)8nlRdY;<M!85.rONG6<ZY9AS96HKV2.pK at _R?sl6l2I?>=!Hq[5hVOM*
-YjMb&rP at NLSoLCN%H_..3=l9e_2df>Pq37HKi>&9(p_F+gI6tuME-nM`CfU'=4N3,B/![qrs](mlE>_`K0=VIe/'cEqY#+\
-5*$G8P4H$fl]p5g\YYqT(Y(U*>t!2]\gb8Y-7@<=-<'QXaCEmn9kn'\n"4 at 0O:8,OJYe13OK!C.Vn/*B$oast"/XL<OiBXF
-Y,2ggr!3cl]EXs at QDT'*_SpH!;AL;!. at aDebGeid`'R_6nm/*`0:&>0*0$),HB*YQUcY(b@!@l+TK9KgU5GZ/:<:_b^pofa
-XSICJ`>U'8ODC!M,3[lYi&Mh$[K;EG at n:)Eo_3Usf_uQOL216%IEM%49KNtleETnN^Zj_H;LqRu at p^"3.N%=lJ9mO._<Nh;
-TP>'3"RsK.%Ih35Iq'fCp:TGMs27tURb>h76M'RpeL8("8ToLQPd#YE,,+4kO&.hi]Pld)ah4%KP9j&Vg=,)*N--gI88f8-
-Y^$%HZqnPDR90qOPjO at m3u_-Zc62Krp5e27@o at b%L/bd"='B:`@s:,R9b8F at D-OK(*EZEQU*WbISXS5_=8PB%3t5jnr&"3?
--5%kRVD&_SNu,Qf;s at PeMP!#2'%VIBK2fn1c1#i1N%?H'E&5gqj\JNLqA4ngs)JhUBY[QD]Qhl#k8j(WF4MiYABe\H6_#3r
-R`63?OXat!mlLIEB-F!dGX./'d=Wfh8CTu])MI'Yf=iWi#oNpBL*sJX4GZo_^ApPf5_-]4[NE^;i.-_NJD`oTZPUXMJB,]d
-7\Ph">DV/H<ZnT9kBLusLZY"cSJL'VeKVRh:;[r2boS&nKo]<6P`8sk/!T=qkKJ at 6/@^EEW+5Tp(]aBd%3+7[@Tjsu9D%dc
-GKhC7:p)Fp!.rt![9J5V8/"`4/EMM6?1f2],f^>bC3?Z*qf"Zk*"Ni at KCRHL>QL2-`I;5:?m-r.*.k(;\5\t'RYVebl)LXT
-!)Uq1Y5Ve##06`Ld5Wjm>h52%S1RLrXjeq[>2KYIFZ^/QNR_*^5gB?-<n@<8W;\GBd.R0'9`"u$ho&&nXC>R>2=`K+9ND_b
-Amm+pU)(@[08&(pQP:bQ.m]DY?7GmgrYM0<cjb?3*&!ec-B]JqLT>"jloMH"FH=)$hd?<\4W1+5C9IT;PP[R,Lq=%Q`N?`p
-'J<Nm)ijaA0?))*ANX+\SQ[^H(qS?UY.bO>Wp5j:+h&JA at eQs.oc@,,Yo;(RC^("o0\+?e&>sD2$&H1C&JM-?j_@]FVW6SG
-T!Gt3BSSdj<bE!l'u<pFTg!f!NG=&JBJ4#SL?#I2JZ&apGQE)EW]l3okXoslmFKh7[TGUXn\rat6MFO>^HbYRRjhRAQO*ef
-]u7Wg`D1GZ0PjFIZPBEtAh`bWE]tWJ*?pk?#G99kACc_/+J;W;-(*YO0iuT<^[MgnY0AcYXQrA4*C+OYPLbq]/n,,sCA-jA
-jp]UJe&-_o(!#f*/nfBgIsIaToiJIZ+U\s?aqtUG+nXGd2gpRQKc">7UX3V\:,W9Y/3Y>kGiR&9>IdCpRY`_,KM0Z.JH*-I
-f#nKu=>DSiIj7Uo@*GCK(WW_7Z:-JRH/*HbVI9.Jgs!(<*pC8c*h+iM/;p,OI>_O#RcP7YfE7]eg))9d^ekNb-Vp7lV12r[
-N)St]1V1V%AHpDHaYB2?[i?MmYU`/LkHWb_9Q^-VD8D5BG1fK=S0eY73>Afto[=eC`tXZIe_d"hE_rd#IHCkOO::W"EQth&
-^Ij0=i`](A$Z2!UGT0U6[-Bc:ka&16!6oc^]u>`0R*Af%l?_o,1sV=)bM$$OSiTOWB>58u=.6Q<Fl%cG_8XMZE,JapVL;7O
-1V*W*TJ!a_D0u%Ap$;"*$-HX*d!dA"288081&Y>fd+)BJW.3Vq8Zr]mKX at Q'?V,_p0k8,_YF&Mu7a)IE>"fIP-502I4=9jM
-Vbf8JW^UH+ at UK\o<R*C"&k4_g;.0PeR<>N-=M9q-#H\&kO"/[rS_Z=t[>KuV[Afpnfk^;TFQ6&K&35gp8Ni!;_IdbUS+6Dp
-?Mb0'&I\Z`[Mt=]EjMmES>i?P)3b$'*1W58"XbcK?p%B0W;E7O0eKm at Y(.lr7TfCp06kQC!jN4 at cDVp5F.f2l0`W$sGV_5g
-Ws=.2d/QOE_(Cihq_4fo$-7pMmmTn+_FM+W`m$PSk0%!>g7e^k64)@1)E3k*f('.sNp>5;Se\f'[cu9?hk'`.O(L/qf](l<
-k'*t1nLgLYI%u9EF-^),Hs_%u989GFb9mTm?ru7=_MUh<8/TI9aTnD\%qMY9RYCHbaaqK^K,$9RhfZTc9K:;D<"g5\MK`37
-dE\=YkXpO2[Z41uU!*FKU\5Rh+-H,;,7u]pUZ+CpRh`@md0\s2S3-cNAadm=/?>gn_5ik(QJt_s>#-:tm^Z7))+0!(+JW><
-U54\a67,:D*&m"',;M#0,Nj=n85s+("VacE&/c1H5tIk`&4+I-hR(j<h-KtTYLbH()tph)<0``P?FNp8Hd at S7lXn)KkFUXV
-pAXdBhu<>e\Ep_^Dg/*`dZ$bO1q]]-IU^JaQ8X[&n>V^qdSP&Dm]j4/'F$CHB"eJ%3`2RM!^Z'mpr!4)1UVoO/'](uX&,>p
-\2a3HiJ69(fW6-FE$u;=G;2j:MgDht5KFqOVP@;sn-/n\8U>^6V:"nRPA60j0s5T83p[DK!38PpJ5`A)AH3O'AVheGJcps/
-eSEqQG:,ThO-l^&5RX.A7^JYJI\4l<Vl=V$I-r2DrWarkdFgs^O[1*`c<+V[UFg!$+o\%=J=8g#i2Y.llT;fW!Ol'L-UilW
-3K?;QE>+FUe:7-$-5L?lF3)CI,OYmJJ8(2g)4Y+fU^@O/*3DMY:Wbck"Y>VZAN+\9\`u7+f32iB.g==tD,+h7<PfVKTr)ta
-^8b<He%r1dBdP]<)rktlrWj#Sc4O'cJ$Y,ODR:mYR?CP"`ZrT/\XeWd!HfpMUWPQ51.Q\T*Gp?bN^(EZFFF46>`H+.,_U0T
-&*`(\rkV)mgLG[-gm_``&Lni3[XW"Sn5\.(K\fGo51hY$!.0I^XT.PrnRMY8r;!7. at QsB_ZD?D0i*6gtiKnKPf\^rn,-g#j
-GoR$U%\R#!"j9XZ6u'phK8<!oAT't:/sS?``+)G]A.Ft\J at hjeB\*0\,HRKGJ[8;.)DDr:Ls./$V+"k6lT#>+=SA+j5f]b"
-cgLf^%?t+_b[Z.8hphaTar%oG=,i at kaU^d9 at kch]RtI9kP5)(E#4gr66Upk[Wq_K&)<+<.TY'7LS_/+h)?G$>YfY`TNWXTI
-H8pfpX$,bOVgm3!X>Ro!i>/r/JEr.%%UTE&5dR-XVePj]TI])YGkHYq[fPXQ]q=60),!4K$#JCnL/$6FcFAmuS^5%c[ob*I
-mI+--aQ`5icb=D]\bs[XF/?s%4VJW=\F#Z)DjD<f<ZDrW"`Il;ZLA$6gfPN7.90U5':1ZdX`1cj?W$Q_+0s'rH0gt!Zicou
-Vr,_Br:S"PDu7]3T0jkf]]Y!QPP&\k!:]k-mEEfPB#2^-3a<Pm4%"/Zd%Mb\-f.QYb5>'=55&ZTE!\bgc/Q%AWA<[3eVZC>
-mjK('0#O+:gqUGuEEqf(A`K(!Kf[WKOP+>t-ONs[O`6C4!qPAi46bK99KifN9k7qX>s"=_r]T`t`sPnSPiEqqQCf#/e<Q;(
-P)dmF^\1[EJP7QEJR)+Um$+P6_?m,ZHHu]VNW"7`RO8,REKSp:kgc'dS%ml60dSa1e#g.>A_oC.]5X_i>W+IAHp$^m"[_ei
-nj=DJA'SqoDr^N*&`DoM<h]>6Efht*o!&qXMbpdXSYQ>LlZSB4M[*\9_UpGX&2%.+*![PgcD6W\:+:.'0BL)<mW!1CeV@="
-*TSMJ#fosb:]3.P*AAX&:0&W$Io-p2,GQ;90!cQl?f_'O)8NX+Kg8h^cDt$t;W9sUbj7rNY`7ZL=L-7U\&S[X<p82>ZNQ#@
->Uf;H+G?rHTqK9GdL#qGnL3!.R*@3[Y`gq]rB$Ugl!R57I`X7E06G=i-cm-n[kVVSKi*>i8l5;-bMK[e:Ic0H;3A`mXH!hd
-6f!t`?Kn1Es)g?VB#02Z_D'OsbW+C()XrcY5Q2&#"udV9hW*!nom*T2D_UXO/cgKR=:ZqRXPO1nTWE7X&R$/mXh6LA$$AF3
-E/42.mn4S\K:Uq!n5)a>Ig6ag_I?-,SZfo*FG-IE<9<!a.NkRBnOt[oM7s)W(GS!g_OI)I<bB<jbLar9m;g&WL at fn,OadOq
-$01ME at gj2PpVX:G\-+m+ZRqS*@o;?k&>bU)`j04^Z.nn##o8^#<$oZsiJVZD`8Pl>q8$"Am\;rqUP""b&.C?*/QnCWn)Sd>
-XN:(2k(q_3CA at 1;Y*(@F2ERcRi:qAAbcdI-6jCM]Lul"'/GPMn!-ApX6&p(JD(KCVdn\aL&\TZ7f*.:-Mb at I1&Hu)CB\oVB
-MfE_N']:;VW`aht`rM/6$k4hnkmr4)ApL>W62G?M`pl`0\FnqVT)`UM\jW?T4,\fG$fs+c=:A;hd]WT[p>_O&-fkJ('KV$/
-KaXGc4FX*fcC20NmWtI=,2)/Zqf*+QSU'bc07TUo"^P?(J_/hjqgrJ6RDhaRYC$p4I/S2k.Y#&r2SVAD4gp]<4-E?iYq>Wq
-.MVNDf&6N^pmMQf8Z)6RUHa#KX"ZN(-HZ^g5OjOWp:c[C_AoTKAg9><$-b\4RObPR3M.qhH-MiJ?SAAf68d;JI/@ZV*kiii
-jE6k54jKD2Vr-E?hd0VfBVfj^f/,g8&q!(:gu6<PQ%4e5./uajY=-XUgOJ3SJ''2-jQ#^QTgS0lRTDRh,?rnHB^N_WK#6g1
-a9+1tU.\,T7s[`e1IC9*HMW/1JU<AZ&^.5%SOrBQr#Q at MqsPHS/m<UP5*S?N-Qd_.lc:=2`"V\MZ,V[p at Q@6B.Yk3<:2b`L
-VS_Q8rg0/?l/m at 5rg!JcBff?Wcd at i).=+0&K[tf_bMj\)%"DV8/R/an9Whr^Dk^)jGjrCAHj(,de:I]`;_Ki%i5DfW'WG:S
-lcT$\RT=QJN($ZR"U<lgQAt]2aWV&ndhiL?BHm;*(793!WSo)KTlt&4,Zcs#\@gfU7L?0e/<hEn?5TB!%/C+nie\5&JpBSN
-40!2u2HqGPA:.bo3/V!-R50HUHH*//Hhb8>D''<ikJ*i"pr[Ps2TQAcPmZZ;/g<F[\u[);fHi#,[-Ya6bJL!5&q*g$M66O3
-=hnAVL6tPWPe8^*f)%=T!9([,=g-l\Fee/tD4rc at -rIV?HF#@k#rYB]Vn/4>%kJZcDZ(Ir"K]U-&T8+T_>X at XZQ.+%*]H]P
-eh0J2#Es`]i"-:Ti_5D?FH>^k;tbF(%Qk_bJ6X1*2gh,:7*1Ph\,Qnu-eDGIgYoo-qLR1$p+\OAg0o%@0WZC/"carp'[N=U
-^F`?dO3`&bl#@+"`g+R\214d$4K>X!N/m(<L_q;e)_H3625mq9H`2T^YTBt6\<FdbACb3uPQuj<Hd6iFPPfs'ES`Z$F]Eru
-0fq5s:VAh!%5%4n1XpQBR?:9^g:PC%FJh8<NN2f'ju,;uJ-!ck>F?:B1=DYGiF#CT:F8Cfj6ab-MCC-5`>CfmmF+DU`GCT?
-]::=ORPlM&)C1]o'$9p>4#9C=`_fpn]DXb?HD\U.qLeA'p[?Gt)mNW1B4sLU'jL2B at 9S"sGo;XQ`5<^rT:IFj(hgL/[gAnL
-W/dht]Jlql;\uR["=Pk at j*'ePDE1eJ`/M9;9EdHAXR!8n4KJ"XaNke6ptE=4F5BAqLAKFq!V-$9LCD.ChrXWfs*Sa>KTPeD
-jjW:]i,-_#4j>cTJSM+iSA6f6J:Br1YU(QOr-k`5UHW\r=a^hO36d4%Z#Ka+a+&Yb at DV4VU,\E[X*rn<ge'P#Sr5Z_`GON6
-e*H\(a`(,%)qL4=it>[!IJkHb=@c(T6jOEL99Te[ELg5ikR^u at Ln-@nSJsN/-1 at YR")*eo7;;=VrBCZ,5W>\L,ILIT[,el%
-cu7^VYt"lYV"#_1FOs8B.?S^.Hmjpb?F$-+-[]LR^%FIjYulNpZ)\TRFR*Ub9`+\'./1V=@PX,?8Xbd_MDe9B[o;*A=J at Vj
-B&hMUlhqpWM"<;Oo@/@+r]MP4ErSdH`9<OpT;5*-<^)]II1.qWIBgFf3oRbI1Ei;T]dTaVd:HB(>E\=4j\:s\0pX>K7YUqj
-S%%p,m\m_qCN!k[r=l<Dri87_4F"C_:h\f,el2.(-0)C!"0bE5/nJfi_D*/'l2)%DMrD*=SsOH+7!l@@Nj<@<_0O3FGSW8A
-MO?!#.pbIFK&tVROo?@+Z#5U_pD2D#G__f$%s^V`huk5r*8!?lAHEp73r1dOo4_T4bTc>V'+sOQLf233(OllV&EG`VoHW!7
-5!--8CfFA"D1]MON1<-3a9Os&?(_d_S?UNpS[7Op=uFdjO[I4_Z<1HqL%k]]/$9W4h38,^&N#P$XN6QgX3e):q%NWV>@Ue9
-WgYcGFl9,W!c+R<Vl,9VV:t#<X>FfS.:9=GdF5]LLeN83,/JD#q%*3dC at IerZTVd_\s8GI^DpU?G\#d%-Ta4L:$!$tqpZtN
-<gGQJVNB(tLd1R[Ykr,$8b4"&0G+7>MlZf\lJ6_dhbQ\&)i3il[O]5.Criqrm)Wk9lfW,\qbnLtp4b)-PF`kTgS\4Eg@[H;
-`n[u^a>&unisTK<ja?+K/5$RXnLI.$;ZQ-0Wr\]?)>E9M8E@@L&2d-;/s9X2S]P[\k)-.^T6PBQYdX2#&_7sh\4Xo^+he>D
->;^nIHh]Jr\=B#[R!$1beh5!hHbV?:L*'s.:g!U)MgtYJM[-OSVilg(*i.2Z[Q[9%2t)X?Igp1gU=Z\0$?Lsl9\PHcWPN&Z
-6T9)Eh>c5^)9uT60)l]90Ig<^8)ArPQG"h7[%nq$N=)+u7;%T]>4YKOOqM!UO+RHUa5at_IKkI;15KI3\Jnc_h_.L$`GmG"
-1AUHp_Iu?a7%q9u:(/"6Oei^u)ac at H3ZTkd3sjQPN7f+6Jl<mtnEhp[cr$pY>HWJEXaf`iYQG9h]KdaWikcFkHVdSZ`LTEN
-61o#`*bPPe1`=E37/VUjp!OE;%6]T=ZuPSt\s7\*T#7]#quZkZKY/W(m-/Rm[j$V8p at UEEk1qHf+-(8"'Nc!TlZF5'"iO$)
-HR[NkW/8(d'E=Ao>+fjM\h*6Y24T-TD\ig9eB*4)FsWg4pj![e*\`9P+;kQMW#57`QPMlm*RP-1TNAN6EK*00qk2]Z"1'k!
-oGB6P:++dVqkPX"F#]4[h>SubhuWU.`5S$*Qbo>+atjdFN]+^.?+0?'6Ot?=J]kr/iS5r0ah:HVilT%nV)E25$a;6!?!p;i
-HnG`afRJtkl_[fKVJM]q`HdsB:buHK;n3'Od+n6,s5#Q8a.jZ_pm+&tIA#RPMdk0Pa!,-&rE!9iO)"8]"Qo/6r>L(PnX&#?
-S-,D?I.:M;Y-\"TMUR-K[Iag>;JFS?#9],C)#.7ta6LT_<,]2"3mWfpE(U"%7e4C+gr?JK+gZZ1Ul4-Lj",/4-MN62:##/V
-d>?>qoWk>pRUdLn.g<pr\c+9WpaJp6[aYmDDFCWl;X7#sM)-9 at VipJ.=`.?D,_/k4OWP[*I<p'O at 5n]N3p`,fqN at FCf,Yu*
-]6S$7[$abXd'9]K/QH?50+_t>n"DX4b?ehE!HgSPl&W_Je?+gkP%dH-b^mQcV0U$Vh-ghV)>cR(RXC?e1F]YP;A^!u<)Xj$
-E\rg<HC<'\>=!b-lc39UA;V3dc+;*>/7*gV;;43mLNDUa\0Tq1+Y5qQR((2"'FBHbA\5]>p"7'_K8e:.==-:b6R9;+>TZs_
-EIVuuh.9r=F&Jt^dqF*X>%!ql8ui.MZEZM at s&U4O&YZfOh&+mPF`cD at bZh/384XuuCk*9 at 2P*ije1/;oq1`"kG\2M[O$**(
-USP>,i['oA;.n^8'omur at b\RPYC)ai%'P%ek$Z*NM^RN3!8-F5fm+M]egkH\LgWJ;@Kh5Z7ZTbF2:9*gelR5<LPE,r!9A2n
-kC'/%Waj+uqTK3[L*c2Sk"f5RWF$;LK%V at W'hQ4$j'NWL,4[m[k at 2i`\;4h&P>>Xr37*"E3R_I'N!h$>)S3FpO\gOUm;d4T
-k?g\2DOlN('Z]7YIc>B^lRqK,?*Q>N?J[6,<'&e[V8;2_:"o_Lk5%;QTnAe7Aec5`QqH at Fm4q9KWKcj_4R:ee[EDFJ8lQ'm
-hME[L?&.*W)D^7\GVGt9*Rk at q)YsKTL!$9uKM'j7qsIgkXIu-FLR<#MoBq5c'Z&VDR2THP+lKDL4e2_[M9D`cKVWtgit\'A
-(V]6p-AJ9n@"M>8$D'F3Q$"U&JqrOp<jt<_%<dJ/9hUu,VlFN;NGWJ4-E1>3"e0]j,Ah%l#fc?Sf!rVm60'_L5<oDMYFG/?
-*b!MgiB':+XD1I!gB*QB?gt>OH^W>u=SoY6T*)pX6T&_AC`_2=8j]SsPthh at 8u$p5:Xe6gQl'FI!b:M]4[Eg?o9lG+bA'"H
-jefM3Ye(;&7EYE-`[_HpdC_::^]:I:PVqh7JeqO_UHa%!AW=S:RA\<,n+H2FN%PM'(9Eu8QW+ebBCI'FjQe(a>o;[9ldoYs
-quiA4'YBc=%&<nk$KuNc_Rj51^U3W1*.Z&;:.OSR79`9-b$tiMd\(I]ameFU!a=Z2c/RY#85tD\H.*5;WK^-hd,@=9?[*Al
-3Lg6m2tPJY"7N%%GglBEMm>ih2[rX_RRfHE">F.BnjjPLa"_ko'd4V9ESGU0`<jom!%VO?@("nq2$do#&C,91br[.4[#$<3
-]qVI9Z*m!%*RKI_;f9PiWAn5 at p+1WF`DZ2Fk?T%9Wii$X6]G`\QK&1sJna4)^=UZOAhE8=Kc(SFQRIiQ5 at JM$>56J=B"NR+
-e^Pp!%sYnDG;#Vp^ft`m$!VbFj[$U(8b3Sg4uTWrBDUZ:jZ!hnd$Gsf:A?0%V5Q%XENiI:$b$/8cTI[##2kAuL6q;CcThc%
-\n.fm)'rZZ/=r9ECnLO8F[+R"8^1&gOI:CbL]GstN+;+8C$%[GBnsA::*:V=?jSa[IZkKKgdoMd*628kD%iYUkgQh5'e"r#
-/m<Te6S::dF<Y1"[,^<+g/d,=S/ll#Q'Ip"Y0eYfMYG59)>jcD.KrcW*>2**.J#!-hhUZkbL$'YLg+$HG,Ar4df)C,+#2@>
-K:er",o>TdOI,5EgZ,dJIq?X;91$1g[F`(.1IY]SF9.C^'KkM/%!S+6ebd7XpP?EoI=*IU,#*#2Y$Ze,1,Td1LiaYXQ$1?Z
-XE+fEoS at 41*EV%lGHX["$Ohsi36HC-_oR!U;TMn[7HlQX8HMc4QqX:_i&A[FZfY5GJ!kE)JrN,>&3guA?@r"N+VOtgaVu5F
-gJkY3#Fiqh?pG at T-.nr:lA6)'_kk43'VmDkjA2Hj(AQPX*gJo^NR^ZoY%\.-7Yn_-8Ne_n;H=,L%*[mAp@[ZW^>7%1!Xt2G
-/o&<):"Ibf%7P`eP\/&M$P1!dgkp#_AO-c:nCig>RWkcr[LCHjm]/Q?9S=.-Er/WX:nV'u,`f[PlnLO5--DJ2k9)cQM!APX
-l,^#Cb;8o9>In#3!@GWKT at .^$b8E8\QcPGD%Kn(]Eb%D)8.e8+fl7 at 3]fHEu6_QK&MBMi#oBPp*'J?n$e%0a<BYo'<!Q8ja
-at/'qlQ?N>gq?p?UI&TWU`W)''Z5&X_X^;)P]/o*0\3P5'@A*>H>]U99FG=(`CtV*WhmS4bhoTcZ at eLE7.FKu$l*W5RafWE
-PaR!]H-,7GSuTeVW^[S_i0<P_:P#!ca'lNSE\=fE%P&a#lO3/qLDX'g-bQH=<4G,.a(nfG&[u^W7$UV)k`<6n\S+([XCUDZ
-O2=BZ":TN\H6FU0<T:<3W`SQ%(;q2n?c0I6Nkb9<5Q&uoYJa#Glh"tg;oDr2gHBGi6Y#]i\7/E_od*=AYSqXqCSqA\*Mf=P
-8ej5j).)YO:c\QPg[T8+N?_34'$f^^;m1Yr):qIqBAYd7IMK$NbR;J;*-gZ(hNdmYO(\+[m#N@)e,/_pC2iZS*8A\U0)70p
-Ao?><<l^UUh?nW\JV[<@+W7Unk&kRp)qB_b#m_%un+(DREQV:"f75#!#$EKbVLfhulhT&/Jq3ahRGio%KO>67$d9*)g_qe$
-7_\3Qn%?sEi39X9DGP^PEV^NT]JLUm8h*C$+h at ukfpn5mFI'"Fj&=omSTlRl#P;RO\tA43073:<F1hQKLgiP(nh;lVYprX2
-B.+rWI*p(aYcG7(oPJd4PpQ]Y*@/j%h-]Xd at 2#pqq[T6-%:U`'DJ=\E`#GpUHp_tS[Xa]@2Wa'9PrYJG_1anX$AR;0]e,po
-:T+:1;Pq,DE45)<g]%&2 at n>8eEu'iSN(;D8,MU&QA!2T98U:$#?LuBUntND,.-[Td48*,,X'Xc86U!Ac,q=9-M8s/p,*=I"
-!V:r+>;/AlN#^-\<4@?Q)giid+%6J at aU@-kA?VDrL>"(4SKqk2q*>r?=l=j/KlkA?T=a2u%0_8.JOcT4_/dfn_7d]k_G4:Y
-"E8t+n1#_,nF=ROfJ/&[F3aY(VZh5#s2k84=sT_;1MKqPY=q+!C4"bnqgrV6T'o:&fh/*_PX)02Z?dt!RP\-U!lb[Xph=%.
-fB]AKd-B5uf]!&(m9_RS:tdQHEH/u0%Ru/VD(8+N=u\[?H/`94ldnNGK7pi#\P-L*i$CSj,_0j$3ItEgZ^3"`1Y'^k"h4ij
-5Eh2s"`@Fdo\%GQ^t0^;iftsh.KjlE8N&@/:d,H"!+q+_+uhGA:ctOI+]8<1n=r85H]+0Z;0AJ+DIq0EaGX9gmW+mf9<+gB
-s"[q$*$NNf'+WI, at ti=E6Qn&MZKI(.)T4b?`L>9a^VsK!OW9at.7 at qj-u6U^.IY2X`*BMB`MR9RJ&QH^:.?YfRka@>#D:K\
-/]srD.)4#t'M04UA38g1Lm[[;cHYM$j^Co,G_Emi;q`#o%:&2peQD*9,\Z$DVa+OAQ at 6ED]),UmA,BScF1f:((ag%9e=Kch
-5&qb"4=^@:4g'_i>.5-&R1G=O7CET)k\)j4C.8<EX797r'4=9(a.+&e-nftnG at mGk]lG(2'jpi(k1@*5`PM"TI!8Q>UBd<7
-nf9M^^2<"d'>D5LURHXW9kNP<YJ9bK.nG)f?PPc32!JfhSggs;Nk8PI^KH0#7/2^55t8`LR:p`ul$SVk)OZ25-g7r*qcV?f
->7`E3ESPetPo!\qq>50mClo+f)!ao_^T]<qAI[;H,3Ab%E+c^<"YG$,_1:tg,OTUN=(q[ZDhI@\\!!`p2=5dQ=bW"#%rO+>
--n1B[i>0!OH\[`toDbfi?+BaQOhEF+X>RR^\dBpfV'o2ValS8Q420>0aC&?kPJ)E3[eQN7d,8,L]j?[k07Sg`lRZi;-a4el
-7XJ=UPXO]r='WU[#X"@^q>D](4g<G*UhK]fO/s-TmH4LF3!\ZM"=jJe%LJqZ$B\7eAq7k1ea2"g;u=>qM9_^S#6Ns+qBT+U
-PV at VS8MPFsZL_fPi/_8uM.jWu8$DfL4%G[:B:*B_&_Z*lU8MlYLU,1Z&?5#BWU/pKE%s0oGha4H+GrDSZtl&M`S5-oc2638
-GT>X_ at Bs8Uh^(iT"C,U34Fi2$JU_o?+d:65PI!dF;*.4,,6$tYi2pbRAii at OK?fC at HQ@4D,uh400?e5U<*2m?n*4?12R[Dc
-878()3:R7tJQ`Fi?l91a7^;`&EtgK]HKZL]OPOe_'08PET*qF,%X?>KrHBiML_<+uY[-[oYS]Pd4F4"\W(P7<J1S%4QE`G\
-Q\;I&0>-VLZYhbne8'S^NcE#l5?KAYZ1<K"V2O5?U7)\r?*q`,%YirM;lQ6r&;9).p.h63%Yn"UqhUP- at p$LcU\@adR>UWg
-/08^@e+ggX4*H,fB=*o0jI3L\*&>3WrdL at sc+#5MN8I'S&(qq:=)*-\$C+sKD!Eh]nVbE3\8F$OcZ.4b73;c7[)'s-U71KQ
-Ct\l3dE5he"nnHb]sT[_9:JS^drW3?)n/jeH:Op^+Q3LpnaO4kFC`Vjb=k9ZqZ2!tRA539Z=W)GL3>f]:(MNIJ;RU3getlk
-n.-TaBf#^^o!W1V3XW\-G<JaNlMQU&fNUO_`Ht#R3:bS"#oFSi2IH)$G3bcC_p$ROS9aAKR=btKqbK"(c[:Q!s(@@[H1D5e
-s6#7qcci'_j-/s,5CSpo0DB36_eY0B?MJ2'1QJ:G\gkDLlEZO;JT9C at d?Uppbm'u3!PHIs&@E7ZPHe[@/t-ER^A#k;ah+KY
-e\1WY7+Nq+haLt5k1p.E=OOA0iG-k71u!;FUmnA/``-hDb'(!9AY7Vf$aD1a(`t0=^L_=sdm[Ns)(o#tM;<Og)W=u&8ID!`
-qZK/AE#R'AWMaPK;/Xf&pXb'-jf_2r^cBuL7UQjV!.ti\b-PjG:F(ZNl[6<C2QU67YDFMoE at c@CV5<6*k5'\[:O.LG;BU at 1
-nEDgtUb;H&8N at u1,F3.,/3#([rhV>HB2^o88L:d@<#DS]ALCo\2USgS(:<.KdioU'FfJP*+.F at J$=`u!?nr9iFiLm(.M+9'
-\PSQEa[#b"XBQCn at Ze]rm&e-T5Oo7V(VpK,#9oW7(N6'gVC,7HPH+]'$%C^?"Wi5YL.F5W&raZJ'eaQhMnEj'WG[E8c7k*P
-7HIMFJ%t%I&Y]=POA!Sng8AXiX/o$+nJlQdMOI`:O?p2SnXIm*A'7d6P7pgO)!K';eN6"W&urqXX`j?12imI!cC,NhE+#=%
-I;l>e!O1#=Ui:mS"+qZ4H*K\;P12(-U?VrH"3VB0N1?WN`;Gs>_soGHfXra/Kj3)fIG*#Tr7<@T<@tq.MF^+VG"",pU^&&G
-m``(q3fR?TOP<&3SeLdQG!gMg0[+Wbh))m`f@`aa!#!Sp%hLh=A*/RE?$Pt]>46#pJ_?Vplj]Y7d`-7r3"2Wd3)C,oApt#7
-&2=ub1Q>V<.Y,"QgH^LGYBI'5:;Ifp0+=0[>dARF2EsGH&hou6<gko?^9E9u;^Y1Af]`Zer79K;J?B0qZQ1U&e?*88#lga,
-8lrrK#)@@)3(Umg[?'!'_ROSNN&$p"#s.LCFsb&"_h%sq\PMUG#qci5B`eCU-8'eiq$6S+0UcLg,Z08!E/ok!\$^4V>/nG8
-^iQbL[sf(Ks.2$L`B".aKH17&!M[ReZ1t.3X`E1/%?Fh\q=tbnR0,t)4EKk=r\;GKc92%+_?8]s^jp&]4S/3;oC[YZs5lh>
-RD5/c7.V(1!\3uqpG,Ti`pk#*2JVf'kQXj7k`$eMAum46RhJWk+d<,<@bDk#3@]:*BaP19n4+8MK?GHUT*\CSfrHXs7EMRi
-_nNSFYC#s at J+4P^1m;r_)An8rKXorq^2^&iOCI+0JZ4e5I_#ES^C6qZ\KpV.P;hJsMq/nV at Sju^c6b/<*.Q'nJ/ONjmgN:`
-c4gMo]^0K1,><RH-/O7MeR+_j4B#t%9B0B^Gr<>rA]3k-2V%$_OurAH`Z=_f\0Q*p6V5ZrR'o)lq)kWKP&;ah"'e2Y$VLNH
-?,Z(4f39?[%N*.<i<CB%YAl:"Kq- at dC1ih$4I=JGRO.qQanaeD*4]CX\$9&]p_S-Z(NAu*YD)=C at 5MGN,jcnJ[h0r$O3cMX
-58=Zm&/hX<FAYH.R<T_dYs#'E"]VtgZ%_MF?UH\q8_7Fr9*'9u;i!,OC7XKX4!qbfdV7AJ"=,?<`K#QmLD at d@J_OmE)n2!J
-?b8u\rDcTHMLrA6h(5R4o7l<!TAFu\r&('Bp"K/V6*o5rf,s87>[R7Qk8Qj7,=oldWF_Y)lf6LbXg0q(5\;VGTJ^VP8EhIk
-([D7SgLSJ?m<m*kq?ub2<^2b_9JWdqpe`7r4^-YKVSR%*(!(f`-7%4IPM*ZDo3?ItU.*sH at 5nSpV?@URM:M!&Hq'A+T>\Bk
-=JnT'&)d"nr-AlZ-i850U.Q at Hm'C])kJ]g5W2/19(*G6l^tCo^MAO;M`a'X7>oY5'>)tnE>ebG0r.8qslQRX,(J^e^@k"sp
-g8X:./#5eD\\>:p`]<`/c+=DqhK8ZS4u`1VJg+F'_D'*a8PeE;*P=(UgQbsH'F*'o7iF9uc)!>!U]PN>pIom6Hr8A<<MrNr
-)FjG:[35fe"">JM2>C(s0A$$E\.lH`=N1=F\1\,7cQE1 at OGrUf=nh at ._HEA)QL,$$O],+%f6:j&!Ve=gT'WYaBtn>XkV6hj
-^n3f8%]`H/[oc(?chm]gc6P<(E-;//4:'9jP^2d7V#h.>LD\rWh9;(4$BP5=G at iC^o_1Qp8AMufn_9Y'?[ii@"^lTQlHHqg
-1Y8ePA=UIoJS4t2GQ^(Pq39jT1#V<t")nE%H+'ADjitF,9Dfd/M2*@m2X`cj>Y_Pg9(R at q_f2='2a,F at Q\e!'Tt&KARGfNb
-qReld=A0NF(>"<VKV%[Z\O4NaIV2A*)439u;LrL?!J!oYhe:>rX%K\E,^Vm`!OT13PE$hu at JJi,7)&2e:j%lR9mAC2PB%7j
-`;BPMkuXkefe+U6Z^pa`krZ/EaOO^3KW7AYR7Rpa!#u:Q'>9NICYThB9N)'clKdH)bq]W1o8'jX[.FKK&g_/\S%jhEKr>[g
-H&kC[oY>utfp,JQTcsj;lj at -LJ9dXRnj<Gm99Y*7_FP\e[9:*]N$kQ4/ag?9S<Am at gX6c6K17Uclr`P!\nO<b at u#+/ea8EG
-o/&^,.,Jd?!!fWtpH at Me7SS]6rE9$VF)T(Y6g\$u%Oc%qhgNX$2,*O3:DIJE.;QH1,m[SWrp-CH7#NNM5`#HlGpK+DD[l$b
-nt8NYep*X?o_JCCegV4eDZeP*Z<`KN)$3c6FCD!,ik%#bU^*J':Y?&4mO<V\#L%e"bD at fnCb7#+)"sA)NSg3TY;ur[980a7
-+,])uR\H`HAqaY@'&tFaCK-LgHaY_:F'#Do&qGmJbN:p>+7j=@8dB\Dp1OARb.?`gorL*Y+Msj8a\L'D/(^nr4%IR]N&i03
-CpWK.'G']YqDIW2:tp4gRO_+\agUPi&M%+*q[k2]q:X/fZO5Kp,FsKC*Zm%kmKICdZFJ%EoQTu/_b/[?2lr:M;`_Wh$oIrf
-YL+*W/?0<B"=6m^g^C.bJcV$$)M`gaVKIRg2=Zf$[$"-2V6^$H(H:(1[&=9L\>5_jMYg_l4Q\IXml[H,54VPi6Ja)b_)EIr
-+JdaTJsku2P%N\7#Dh\.TA:OU8XV)3]e.FBol;2$UdA!]2Ptp\,KK]nXrb<5OY:Wjp\Qs%j!m#GTMTDT_cm_oc&Z:qpmHE9
-L<9Inrp9(qb5CQ%),=Ubk*Wop1\4t'_N=f*+(S]g/b?GqAS,9D-q?;4[eSf31,H[JaD&r7Hm:hoaU!I?4=3>8J"cDASb-b%
-K->QB%)AK_jI6:f9fq3n-497Y2kRn56<N*SG;rPGHnOR/mOcauIdXG(@s5J3^+B+d6#6<1:65lC?^XN2Rlb0?D:77ToAGXu
-Iljn++FU;/0oj'n3>RQQ4+O)F$s4??aQ*TiWL7-qr[2PaM(:f70m49P%9a:2V)98(JcTUEAaYuCRA>Zdm^%PthbeI'F)]_s
--CW_nB0VmXLd`DhN?WW,IZTI+5ULJ8:@RoFKpm16,^[TTJ-n4jl!AT$X1T#n`(_cQ,i8f4ng,Rf)2nt4rtRBskAFG_SA_fB
-_i.N7IFI)&RGXL0Zd5^<Q(I6nNg48\7O$$<Us1R;4$VU$';?:aaRs[X",HIJeZHF]cHWIG&jfai13DJJ\!+4/;BiH!dudgX
-o5DN-7!$2e$eFhRP6pA)=]Ku(JK078B$F04a(aUi_]&sZ9"[S=moi;mj9P0F!`%+uZ\#CiAf9P9m=XF)7<Y:EIcsmcr+37T
-egm\'&aeb?XiA;FPT5dCSpot(-]g7:qQX&c>Oo`P1 at BuQ5-a4Va/kX?,DSls[?fj$_bK=jS0t,%DV<5!:b)iNm0Ad*;OGBh
--m8&N9pG*n]0uO=M5Fh439Q=4>j"bFmmXb<FO?.E\F^j/q27lfjlLNX7t\2Dm,(fPI^<[^[n(C3iKZIZEG\46P?0g_8+f:[
- at K<*Ga<'&SM5a%oZA at hjX/*CSqYJoW9McPTR[<EKBT+);hT:4tr#k%Hr#eG)AAL+6I=[Rg3+$8TL!Y'-Z.KVDq/Y#m&kOQM
-^i7#b'qk1EV5i2=9HBDtm]FgP'N5SokmmQ*IL)X>g&=U':8T1aGA;ngE-HgOGq\O9)#h]T;gEne*6TW8WC3uO9iT$d+D`JI
- at Y+)Ebnp<a(D^)&SBP/3!JUjW^gE10JfcHD4]g\TOMDNJR<eAj*6.XCIioAKlHf7bkmucLs8B3]\:SWHOl346JH>cH:3@'+
-%8S!%F5T3jDU.`\>)H-1:C(o##`!l+6k=P6$/^V;8'O,8WNj`/D,?dOJA+!BbC/HcE#XhJFo>7g#uA^6_F^34:?Ai51GXd2
-hPDAf9HQ!#,QOA#omQ#bZG_hAN6L/>#L44b)*%\>.lG,,&&(O-%]CZ&&Lf'!LgV(m^4`3efB4anG?btFDojYW:D_e$btoIh
-5VC=NR<Sj.e5*Yg at 6g!]:&Gq(U8Eoq"*H6uh=7FYg*23rG#1lS_75t7%7+t6C<#3ei4EaX_qet;i^p?*]^/`h4n6FaJ;sb%
-bf!SsegM3t$^INeL^Os1^;8=TVcc3)#*K\Wj9IMsEUVhgk at o=6'sVc"%og8K0S<*3I#sO!5=,6<:06#M_.bN*HQ]$n[:(-%
-dT<pCp-5t$,/KX#_iKSXZkPKfPV>R_b7T$9)Sg#oq9;(kH`E]ELDPc-,`*kb1KJ#W:=r?3-13g9 at b*t&=6K1D;-o]1XGT9%
-Bh$PaR$/Wa)orPfHHD7s'-BS=`RrIC*05ucr%bhTD#0o`A#P""NVs-P,P6%4c$hn/(XJ3eJWJL1 at +4gA&s"2d$Z3kfJEr5,
-r&R[_]\j#(6DNZ`^q&&LUSg"A_!\L>0>Na4Hn+/W(npuHG83SeK%,%]g#4cY.*)pH at H*F3Msk\4?WigLAn^ZC/;S*N.p\SP
-.2\CKU8k@@bY!pqM0,=HN0Sm&hLYfGGWOVAAmfF`$DRm*l2GXaag2n/_Nq/-[mK,\6n$P&G^ogcltUu'[@,iZGa!$BSS=hI
-#``hh5)^d7*5l!fIa18P`&lp#6V7>$``hFcS$mZC$EHCUdG"\77$9gk$I-XbKagsOj*#d"W-?%sjp0eB5sd$h;<GQh?0\L(
-Q5:0A.\NZ07A=$ol\;<(Z`ANaRn at eHaVSj6e`M+sF)NC8p9\VlqQVRMc\L`/s5lh>QbJeHE*[)<\_<GRmj&S)\^J^<HDUrX
-]Gi$o;qJ?@^t6@#r64'$7/29#hTY at kfft;CKt$%2R<eJBR:e_UpHPEL&p>\o^P6<h,q-M]OKcW*4$jb""!ZTfIB<"3I00u*
-;o%=4E=J?8,"1dU(>sc]m'/H*c2a3JoN."c(%OqC4=uba(K9.We+Z_)-=/;WOqG at b!mV=X]'@m]@\H"+;pn%4/'#*O:?B3a
-i/Xj.L.l#8dSS1M\H#1;8Hjg<:s++$?n^2TfrgPLfDTF=HAhe2g at ano#l%#(ZEmG#G?d(=jL4(nN,FRur7(%L9^*fgI-#F6
-Q*:64'I&XjdIPs2ksk`OCjpsH->uV;<kDu.$)b%\*BKsJ$+EUJF-i(e&jqEQ0I\;@-rd,K>g0jkIX$!7A7ALnCrP=6;fb3e
->g/?;fq.$oe&.UIl;la?2)`GK;\:Z5c9;/i]33Q^!6Z4/h?MU\R.:"\n"?(`hXq'Z)ePnr7YB0sNH<8-VFb*oSWYPYG!qe[
-'%AP36&6NRUn_*cYL)YhICff at I*=Yh=(XOhig-Y;dMcq#5``JJ\eTlW\_u&a6A8[uGaf?UTN2t`Gr7Ql47+$d2YLM1cfY(u
-\6ss23,Z()%HX(D'g/bohW#C.%7bL+B.6lrGl7Yd+qQNs%dV`Pn#Y at Nh:bX/'^W9%:=>]mQI3J\[ah6L)IJnH:uO9C7G&9]
-GkRM="uYEo"ZH"Q_GQ9ICR=(A0Vsk4NL4=j9PN(hC%DrpY+>9De??N^^<U#slH3HiSB7X%/_YSr>qnR#2itCCacn-8nggO]
->[-p+d%'Kr6YH7)*Ig:t&_fS92%M=6ScQR!@I5 at VSg4t,gD(H9&RnmIEPUZe7o$W#5VcIK'K`S['L[opmq^X]2`@&%LB7Jm
-3@>H.^tHEm<:^("L\b"iX at Jk*NB69)@rM,.aa@`,B'._.+7n/iAtEq03Uj1aDIeshs*1&>!0:EV+Y/(Z^^lVVn8+CEJ4Lf`
-Q at WO;(OYLrc3aDV>:+l0;<lD<RF\K&Xm:Fh[of'.Ufbi[n[K:!%?rX#N^skGdW6/m+l4XVYh+#]3LZH(;1kJ[rAbW7a+l*m
-eGQDT):Q=JglL0#Og"K$=,\S*WU8rVUE"aDoD9b0^ttJ2kDqjU%W"US6B6D#X)-5%*-I1h^U63!i);?`OJ,`BkN6EE"Z"9(
-![&H5;bI/c/!QoW!]o=pg';(%H'p+"-F2M]S;;D.Qd)gTkA;uP;5ZG:Q,)AC8U&f5X[XTqdLombRWu at +ZCSbaDR[f`P+nXp
-*j_CLj,4Wp5b")2!b&MU1S</DH"Sb]eR;l!F'j9n184,)U?MN*D%#)VK-;q1g90;-e\.g%Mu.Bqfs5$u100"2F;Wl7876T;
-6eZ("oh6M5 at B8s1nDF]s>5"+h:`NOtOf/7703m@<5'@+!(?b.)r;)uZH,!t9I(\K'5]hYf-aqi(T at ft0Kk>_KaJe_Kq#h&e
-oI0m8E5$=-bfr`-%NS(-Fr$ZEOrn6.gKDm4.W$)[]eA_YdM%bN_sM81qP;:M)-$Ao`DdAM<jIUZV1J70lkl1<hY2kAR-ir8
-CMN.kkY.e[,X:RGAWK;)Yp@"i:+f at .dCbCmb?Wa2Cs/$,,G9#TZN=<nmP#Fe1m4GTJ$ploJ$(`d"-X&@Ht_4<-\t%b3;<Q%
-JQuB+1qKo,2Q'2J'fbVe\,97YY+u;/P/550"_"n'>f-6eZu*PI28Pt$ObfsS<q<Ki,.MQ#0IbDs.3oZU9(gVlXE^0ICT`+4
- at l6@`R,[Q/HrWUmK;lL3C9Fi0VXrHOO##NKm4>\L\e$rq^HZSUOK]l=Cgc5e-R1pAlNcoe/VBU!U\cDo=0Kj'YVu)SG at Y;l
-4:)Mr_/EkU^FAd&/XZ^mB.,(E._l:@./<E>s4dL?s8H]oi(Y*O":,)n2"UA:JJeG/\ARIbn$e[gF!JXYbuZZ37Djq\]t'18
-$VS'B:Lr/u2rfM-p!`Gn/[.GP"mcW2$%<uqV<O]r!D-V'p.<eY`n?U`OH:G;+Y2e#$Hi$5J8mF:E]MIkAcOp(mfcu.-a at s]
-3!uHqS([6U)q;''msiMek2CI9hfduolnifigTFQu.Kh/YEaqge9mu>/.VDg"JG_PrA#sbNT"-gc)6T:U`1O3$H+'%]JXSK+
-85eKDPDlOV'`fl&"jBBf*S\d##L)m+OctX3pd<]31g0k/48;A;Nf0*/N1.*:ct'4d?G3%l2fOpWk1GSIY1\*HVFDi1\q8KM
-/J9qrW2$<*M#k,5&u(OGX,f1b4liukf;f[tL$9:acgp="VPH:gN^cNAdVm31nS4D53h.q-DUn.3Cr8X7NfROicJV'7$4q*Z
-LV7[8isr<qi7n>Ai;-#sX^;N:J=$q2h1n491I+$l5*3Q!O1QD3_J%u9VS;Z$WKjQ)5n[UDF2K4obHiH6IJE$?Ga+T_+,H4e
-,mmaKW*cYll*`!Z],59"O at pO?m,B$0`LbPS[gCKn4u+)UbP\#tITI]:U"'U%(]KZ at c_?Z`E[g=rXS&B%(brOIONi&Ad]0%&
-W\@oJ`9Tla]$"`GH%%0!(R9WkJ*T(r;G=!NYVo'&LJissP-j#4lZ9*4LYC6Tek)-NTqGXtI(Y&PEd^6VnARuIBlUAjokPC,
-)NZ4Y>/$jK<h94h5Y-H"#A["qf^-H!Pm4<^X3P5)B^.Woa%Cd0[$*\uM_I9+kBSD:%$9U((1Y!-U<EI"r9Kj9)ar5CN];&d
-=<'O5^?):;YnX$&6#eIFW^!!?MS-2qNr(Sh<2&8&.#u2Dhn1]8`3g$R?b%aEo?s$_cSq%&nC1;kcaWiJVf-%WO4R1 at n,I\Z
-oB^\R8GICQP8oDQZU/ZSeZ<>?e48"<AVoLG><h&&'rJ;32W5?4<+qjM)I#7Qs4qY48ZHlg9DMU;Ekgl6Dr:e"+:pDjn;NqD
-&GspZiuZaXKjQHmV\l)]mM1cQ"OfR<6t`\Hp0>?Z*Wb*n$WfI9_N""iBeidIE16Prdl,d\lW1t'o7Q!/.n^-Q0Y;/DJMc0R
-P%#'][@!YeQ-!NJ:S6?QP9+dNE#A at 0MegP2.)mXhIp(]!ds\LIkb7=!J/U([kt"49=p:=g7?23o5O3;dNWQL$M$uR*\3AtH
-i/f?c9LMS\Tm0hC:+NGd.rh$(_D%X#RLK=IMOirbr_1b1LAM\;HI-Q[CX1^G[\Qo?h:&\ZQ_^)NgK?**<<]e*5C"J>Oe5Pl
-E,"l^QFOM+[m,ZXmY7nBlZ[(fq4:NsmRJ+7\.?O_'[cD-edh7X]F>J=-i8Dej^jM3j.@:f3=l8`mIcu%KYZbLK+DrC=nq*P
-aE^B`0PjD73n?>p:hF4%j5NAu8ir,qkBA=J8s73JnYGm_q[Rt=17O8R.1hY;>*e-[`LFAm-I/\o3cU=jl0,,8po&:ohK at O0
-S5%3cWr]UW[>26!74Kmc1_A-<'R*8uTI>^g9f^IZGa%;Ql?)A%),jbT0M-'AZfn5*O?eNg9G4m7#)mh.1ML-#iq*6S*pB6p
-Cf0Te[*Lh)b'rM&=&X:GBa8 at -Z`l`B`XA;9b?dn9*%0XZ($\E&Q0u.8@`D[,?`DerC(C'99/uF^PS2D"FVEI%[4$q*fhQk)
-6a%F;X9]k at X^jNBl_+5U[Xd2/"eban690+h%2p3n-TN*[?f at eM'hcn2f+2Pme at 4/=Q',TL6LAgadW(9UqUXZWIr5%K?(7H`
-Tj_X\s. at K@G4;Q=rnIC>R9sP;^VArjl]1h[olpN0Mq-R0nW+"ng^XaCMbgdo(M?#`;Pcs/$?1^g9($b%Y7f@^K-AUSP=S8S
-K5WjAgE%:@cW0_)+*'Njj2bUj.:WYNEu&1"?=JsXV'3>qm@=X&n?=/?2eYa%+e?m=$du>Ib';&V0U5o\<J$$fdX0<QNm,Dj
-WQi$R_JhcD>d$:l3)(-c8/i\)LgE2EUN"W)FjK`XWJQ'sA.-V*cDKJl'>a96]%N0S-#1:0EGfRG\2LQpE,ck/f<gaULp+_T
-nKCf)XF<%u96r3Q*gHLN-4OQUHGR^8]8X,oi/$nNJ/QN-[RUN%fAEICBu%k9Q;[gE%s;'Gb),1eEcM=rV at l6)&F]n,>Gb?'
-2q;f?T`]51;Fb^us3?8l+a69!%Uh`d;!V.'c at T*+lLt7qmAnDPs5MHsiP4l'l+-tu-c-ACCOCu^nbJgo*iVn(LAsg_`gfGo
-VB'ETP>6&VB'(9U2nT&a#Z3Z@)md/LCq#ccM+=j\Bk`eT'(sF0c^F).RoWeRkZ-2*=PZlL3L)(7]m>ce_ASae=b.G'&jL$u
-To>8Tn0\m>o'$uH;js*SR>dM+;DTl!(HLZ at _KsWt[Papd.5$`pEaO-S.L4FYm:K!j;=0A*>iB%emaK$=5`"99la_JYh_m(<
-B+N:5OY(oo7>i("lTaolh7P1L>R(PQ.omKqr0?T/*uqh$H+Vm;Djmck0f'A1T%.A=EU+dXZCaeC<]0::7*YcH7Yn\;WUW8V
-HPfc-IcW+1p8\s`&Jt';bT!I%Nl#`@Bbo2R(94T%C:t<ceH]5NodbDt/j7RDF\(&.(]-94\$Do!:'[FE`8k2UWa at RR`*6T^
-NMOBp[q$Pn.Pp\g#<s=k at YE8RrliUm"4%q(Egg\>qOJ'3hEc):T^cFo\"bFL$tg_$JY3-&DY86!ot5>['NVLdLgB`:'>F;*
-TDC/p^h8K)cKoh,\<KCeeXLK)9p/45p\!.ORVI4Q3IrHkA'VbV.Ie/N,-QLE:k=WdDO[b^7Eb4`<_)R.)frGU%Yn3j]t=V.
-l0(Uo/B>);E0^hc`]I'Sb'E4Y_h$^8+0ZkrXuGnpKjeR1E\[7>pNPn,^ES^bkokl%iUMM9k#mdYX0J-HW=V:1%FC\C_M_A;
-0.l<Ug'*&=.NjCI-G1+I0Xcp,TjO;Nld!uO!L2a3mJo/%.p5%*i$@FJX"#`Y:dRr.Vm[I0pp(hdj,1C5O]OK*b%`)BA[S7Y
-bnS at o%I?357gUP\84-7+XL`<@K827KeZHF];/CJri-2,e9"0-r$"Lq#7uE)GF>nYO\)O3lH[E4dGMFKg++MDg#h9N;Y_f>j
-:RE.@?96u=<JdCDJFL5)=aXDZStk!Y:U,cHCo/_<4**#/B0C=\C9cJsr at 5)SZGAhioH09GKeM8b`!(M9V2(g[1=APt'5\rr
-qdZ[lUa&b-K*Da&%F)/?YZLU+(JjENS^>pgP<YJF*'hEYSj(2LV5;QKm:`OSRXQncMFALdbh92,S/7t&$n>"TVbH!t\-5Xp
-UR1rsW*nWUQb$2/r64ZJr"In.DsA>mj6+#6^Y&?E:=CP^4=RTQ^kUG^TcfeGrMne=amK=6+kssuN"h,JBl>CgZ+DTFe9^[m
-]PU%LG/9hj#2&[N5uXIurL]14$V0,#F!M;p09u[/5t%fcSn&a!O$W[#.b?HW1kK+09lk$L>uJCXBBGdKRI>"84E>"Fk*\6t
-k(B.PM_5g]!3Qk!3Il[+rWqi>cENq\ht#J@!3nm+Gm=7m)sQe^pV0iu&+ORs,B)7F0$TpX^A"<sh_ae;GLA.NiHI9mO+D-q
-Nc"=_")>G%RVJU=2!<,C&f#q`..]eo1r>*_VRS]M\(AfHL)]eXaEC#=YIKr at +%L,5Rd9Rdc<+S*f$%e:2GQ:]$@A8KO at 4f"
-D3PqmA2RO;c%`Be*N>Jr*i,I!FMG.&Vf^cc!1*81>Z._kWLG00*0_dJ&jeU1H=LlsZ(t(l',D:Z_TP"I^]><4U]ntAA32>Y
-(i]R_cbD"X at L*`='eDplD=][U53C=>=SN[[973+IA"l#ZC`@LTghFj#_t(S]YW3N?W>Za/i0)8i*8#D<J&fBZX.NoH&W_d<
-I'j4jB-"$WFo14QMAL4q;>6Ah#'W4;hY(dLhTsp^f8mu8i`/d]DgK!Ea)d'U7eaWI7gULG:E6o at QE9V_SF$_7'TJekP(q=\
-ie(:]3hKu0 at 2XFq4$.BVD)duQF@[fdZT=c9,1DejZ'_>]/25tH3i8JK&fs;G9:M_G<Fc"^+?DEErtVAf+Wp=YMXS*jHd4sH
-6+0b%1(@+uc(9FN\K_WkmLNZW0:K5/:5tCW7P_A$eu<[D4og at A3YL`F)[PP(@@;)6Be>_%Jn</FigAOMdBnn$oDDEMVYEa%
-djg1X]6fYNEF1QnIQ/r]6+uP;oo?t3I<CP])4D"T2A!$Y9t)##%a&`uGXLL,(X;bW-A:.5l6SUQKs"GPI;m.?039]DH>;R6
-()YkM"O#UQX3R,'#"-[oNLWUt8,9d;0t:N5bd4i49)":+g?m\0Ql^dHJ#7Jl0`/LQf(#>]fr89O?YCl*'CDaSjKTCaQ(0h8
-fn+S/AIKE+;3*^$8qbi<552bN('<CMN,/4YNh8!;<4hKK?D>Cb^rZsb5=l-S,95J4,*to.[3VAu!*H"3G"N)F.ht$H,`UD_
-R;sheio-_m??,JF510jE09b`eldsCn!=46(R8UgX-QBKMATS>AnZHSYBeH?%-&_6/cdVruBb*gBhK-38nX",Z9"ISZoeg[@
-bMHGJm5^L9O2A63#uT,7OiTF7O2kfI+hWs#6l\HMXZc^hn3e$jhT(YJq#McQ/8gR8UHV[%6>Y'jP7C]Kl"BH\OqMTDk*%V(
-i!1hpFpX#I$-Xi$k9QY!6:[Pn-*Np%#cK1HmHBE*0B#_>Vr2)gcucI#[d.m%Z+<rE5Iq;bad8nHP5nngoTd1/h=/oAaq&s,
-s(Bg<rq5>2?@qnnhbX4*@m>/FVi_`S_>q[9,E(t5Rho,%DOT\CH(.:t]`8/;d<htbOm5D1U!YQHFjm]gorIkeqDELRK9U38
-q;[O?!1d*3T\U3.3<,t`23*I.RcCA`B=OjE+6#@.67]J=T%#iG7$&V5"M;gNL;WUdc%rVHFPef7X]e/^d^O:`T*c@"4G%pK
-]9kmbEi5EoX-RLGmHp<6XQMS!g./TS[8X'd:Y>eh8EIo`fNH^>9PsCHqQKm[.1U[A^A+asS,i`gU&]$I?slfmGSHZ3X<0XI
-l_Ypi_tI("00dC+4(mB"YZD0V*H?(6U6e!FC8+*NNi/h$nHM`_gK?\]G#98Nk5r+=@eO:%gTc76/#S"i.VgU$h&#e98IXtC
-E%uJZr:.a_8pV$*^sKC3FrhekS3&b#Fjl$th/;>*&"^\G^^$\u^l!Ng2Xpu/Ti_C.Z#2GpHEVQHCsCF^Mu at VVmNT#KOK1_C
-4^r at g<:[(aT[c::!O,".&)\Bu<j=T%=A+LQ]Hr8Yft7F.!N5/d9N!B&,7gC_1G,NQFp,HlHl[F5(U/RC_$-()LM,ie1p!&+
-^dd^423*Q1%IsN.T,;QhmPAE(=((3=?sE?e^N^\M&QoReeR)#]BKD$_m@&54BbX#S$d[SG7S(PBj(]@$8=u+VcMt"N&N>WE
-LXu*cddf"bN9kh at NK)Ud?K'lV/u8Cffni2h8jpHAOH,-dW.Y7j-$?OsM:e-f)tHSJPX`P9m[q+n>FDEO3)V&OPgVJrMY%-"
-2<cHk.BTD9dWlqBQ!@k$SU/U"f+B.UZn9.8AQR at gKd"XsFSn)%BN\dEeubK(S2mZgea8E>S%ml6^Q;hA!p!dC5Bs%:p`iHb
-Dh!eA^9u,r$(fuQdhUbh)3OLAVLR:5l02SGB=gL^Pk2s5eAGS?WQFQO_F:Cl)NSP-fG?5Y^<H!X^4t`oS(UE$UTu#W!Y95J
-l:`K7Du7>O@"1/Y,Y]j[fVK.<c!pQh%#?)RUtj4fWHgFdaW;:#Td\RC<!$f8r7=>ceR-q8NMN>hbotVA80re$Q\DfM=ljNt
-ZL)["=d#X:,QH+(?IDU(NhD+hIu`\:LJY`7NYa at YSao2*Tj&"";P@&m=Ufm[%b]][`jPHgq4VajGes$XLCE_j3]9,1-V.`_
-$/aEp9)!.F_A8M?+DN=#J#K?"i`*]^%d0$24X5[T<ug[(adf.2S6.1a0]b!.6=Dk=5lu'p&QVuYVNT$r_%\\E[q)o`7aDs"
-LtQBODDajU]$kdP,upWsdb6,_='0+mN,PUe;X5DkIVLQ;0IQdYkC#lm(iK)-*]iXO_0I!Vr6]Gfs.XKhZQ/&OV=epN)jWN@
-3Bk(O2'ekmQ_)jlbjkk9(8X.e'PF:ef#7P/Ag`c0Lm/>N]Jl^B#$2s]Fgf>?D-.VLE6\N*n5Pt#W&-ba>Y(??ZQ2H]`?ecB
-\1EA.,g!5PiR3(;$/)<\)o6Org>N4r3ZPt>@Z&&);oZDZhP_#3Ab,GVDIoupalsSt5%Hj>V\'YA)9g#rHs-$Z.jEl9W"l%%
-Jma*?SjQK+`]T2GY9.CACJqihPmV.l.q'!\U^<5PT4/msD at INr#aX&A5gTUDh?lsE>>mW&CgLP'C)(eBiR=eB67QA9PmD%(
-MZa%NT/VDQXh%NAIr^/bKrt.&iZH&<Ie/T778O1MO6?Qb at EWk$Mhm*GAC8G$J%QN2J]2<ZFii>b2,V&"nbN=fk9l':2rmFm
-p at sH75'M#8p?1 at RBT!cfj!,`G=2-47K6RF7;C<>IR_DgVWuMcQj%SKF[h at VMAqUmpOen+&qaS.HL'_D6,IF8+Fe6Dh[R3BE
-=mV8!rQ$Pg](dSc!q$.kV)2T^J#KrDUiN=u&eV6j[rr,H@^,g?UT#@U#OGFGT`cPj2G<seOU/sp"5fo%71<8WTG^<`.CrY"
-^jtoa?*N7-]hJ<9;]-eG>TkT])3%iKpf=ke`'7/`f1-Ym5H^K3a6mK>Xn978N:N>9+$+'(B,^<Q4K&GTpB-[8(9X.h`J<!o
-S/QH at _r+aL[j5NU't^GtjMjt8J<JQ2VtC_GiB";N$maf,NUGj/&AD$;$5_K3p-d0i$CSGdk$CYpB]E-p+)+ at 6iAXXEL^f!H
-W]5#A5TCr+5MJO.$_qoRrr1sd\+2 at -309B";I::?o^Kb;i_nQ8`hisX66+G/7586(D%9ef>m*SUI]?CAdL5q<J0-G'3$U^q
-?W,heODfX(-$Ok)cG'ff&E&ar!N2SUH]4:^/!C[3r6VF6pYcGDhX[arpZeed!N#p1B&`k%H\?X at 3$-b3RWd0Whg;5#/peeR
-2`M=Y>Nsu0k$;#4r^QS.\=b0W^dEW]9tOS<HSk56M%V/!+\Z1GY$f<(CL581UmKLD-:Nm]H\&fJ0sG5mF*?XadYE>@MdJO2
-OrTABe(6Sl:'0er*\_,<ge=.J*l*A`_=KRjC,:'r,aams#H+J/_/RA,a#$9WGMB[n<o'e1^L2\J=n1mG at 7ri9HLL+S%n*#"
-V at BC/p;^u.ROR at T#Bh/Amf7H:p<?r=J,A>c<rTCAj3t)&f!KjB`@hg`F`2O0c41ZkT42mH-Q&Gd*5,+Q]rW at +Zs,)J'8;\"
-`n)r9W+"[ZgTiHEPtZOmRU?THmX8O'&Sf'+jbU%U[W$[5Kl3,tV\YAZB,]>W_GX;OX9qnHVH:SQf!IqW'IchE1'l.$AH'Gb
-7);G*J$1a8qG<e]"Ps$*&'rb&gH7_kU\R1[OtD%6a,tI*@7'r1a"(L?alVXRHLa7?,&f]UIZ=/eg!"W2h=jht1odJmWm4a=
-VN^5oRR3RP<+/:)AH8EjV&F(^6(]1)KqN:l4jLQO45l9TL2q)[VsC=Q6?l%S^sHonNgkO!eAOUuOF8Q8]pG*phT!kpq$"\$
-ffY+[aE/kk3pVM60)[Nn_P+gP`]js-S[-7ub7??A1B0+1#E4d9Yu']<l2f=GGf+NfP6Ab[Um$TpCkt,O>Uh0PK6,up3 at E^g
-etO.LgceNelnt\Dm+,I`E$#Gd3qq(u$h"SO`>,[C;D\F&3p=#RBPe!Fe')(#)4-QRYGHA8s)(EMVJVqR5PV4oLF2`0KZc]q
-gsQ=6m5;'qo,l7WMPD]kaA at p!^PkVmjj6,QTRm1B^ks5W<4V<e=RC7[)S!+;Fhr_3B9jV^CP%.MCUG#U80TWXBhA[@Hl^m.
-9'-8Van=W,]_dY'=Z[2-jK\NdGQh,%L2&t9i*:bB1VBZn50rM@&AMbCT+B0gHl[SqZP,M&<m$^tGDpm%GuR/K]:[,95+ELk
-DUkl#rP.&e?1mO+l\_`3N4*]uPAm2alslBq\FZ$D0#-CWr3Bh]dtmi8e3()7qgSb`6*jgb^eUcArG*6>J:n*,T7dN&j8S\t
-6\AhsKM?EC^1eNk_eJW>NEbZ'/:G`V^N+B)lep%FFo!tOJ(agO\C.?Uk?VlWE<+.FpSX.W3:4,/bZD)%/SMkKEPf at _lm42t
-I\J'Lif^(^\t3N_,m-C6(Z.lLOTBE551^_[=Oi>oBG/WJ+hK9.kaY6S(8!dR+#ph0-a8 at EPX+s;=hP?WH]c$s''Njm;NAcA
-e0]]+'MZ/kMhOgO\4-3tES/@4l6aTO=FNc;\Q&@O?0'XBNH>GS*O;Z_U4#?,&:G]_01LkifM\/s%PQL_IS*lJ&hh\+)5Et&
-3s9WqBbqq3OlOo9)[IC?j.la^?YgoL_X;W=IdMmUJ)c/,pENNrRNb:\@\:UcEP_6U,iYmE1_Mk(Kc>,;p\b)j]X.5(j,RU[
-Dfdmf,`:.2kjq/[0d!]uSM3iT%-SC]oYf=--"boR<(o2eQY>0SOEld)rh+?!%KKuTT-(iRkn$K\j&uVoEa?2fReFjA]VMo^
-8"_CcDh4j_)qRmeIQ%qo>^K7KS4]LLLA;5F_QJCiqR/W/Va)l+hCtmM]o;pUVDUQI*"s`Z4DWY$pH$7nEks5JSRs;WV'b&C
-p5PmAiCdt?H1@;l=r6,*G$,4s:!,$]S($T_OmW#%ci,F*.5/DQ at U<E^Rnrf[9RAV at eU55$O26UF at q.m&ME\OQ+8jW4PpdT<
-6=s$[Y`\P4cffY)J0 at -:X)2GCWZ"/1*r6+c4V+%Rce,Dc<o'e1s6#lg9Kq17E\O9p;W,T^>k[0DQTb$iP0?)Ogfs8U,#ED;
-'-<cK]AhI5(>X&1+;4#R683e+FRKSgl;_:kB>od=5R[6$hLU_1:g1O2W at olPoZL0oft`=eX'[Zeo3h@`\s502Un'G^L4u/h
-\aQr/Iu7TD^J(Q/^8a1$pg($tk#:Oc*#Vu,(ssQ at B5!%'+;'XinKlLLi#p+;Bni<7rHH1g07Rn?,1XNE1A0;S:VN"[UM64J
-R=]"jD"`%dZYh'"^3LNE:N;l;;$k3Zfn.VrA-EXu)Or;:in!SrA_;D.>LQ=XP3m3$L*&5ogU#f_r_eF;F3G0Bc-`AJ!J&"(
-*t]_-dmUm_J'KX'_i\n/b3Jh1*f9`F3nNlQ]'0C!TAUu%*'",mOg*&iMg6s:!sVTSD6_8(m#o^SZMJKaQ44^Em`K`smU@#_
-p5._2S;4.o_hp*?HK%aIWK$TB^9_a>G2`X"]]$^hhL"C-Ungm^@(YYR8"=rQTE;82ZeWhIbeNKbVd+XBa*ko7I_\Vbb7OR/
-Jsg3_<l%P`%\QHBOl;kL at hm6RHdZ^HjnDErZI[.'Ea_h!CtCD!Q`2,Z3SZUng>rb:EA?W]nhre5OGL!/,1uCUW_BsD?&ScN
-c#gmB8X_ZC?)E`"K)pil,ofPZms"C&Te8<t9:%UKHOX$O#*56Q at fjE9ZDF>qLnJQVL+uXcgJaMfl^@).`\SD-R^7M^"75O0
-Mt)-$(HBi=H<u(H>[=F;;']!7&*CkCc?6GC1#$-4a+dMO1,,&(G)a(I$H$R\_7M;F?[*Bg`;'<JJ#B]SDUkl#r>rBYoZm-4
-^?Uukf=nieb$QC_LRC3"o=h2BrbCH`Qelf'[;S4uM?U&P^mjq&\fJORBS0FR+7BQ@@JLWk_sC49*Yp<Y99Ji89)T%\QX9ZS
-d6='1+NFZ/*lV((p*J?S<E/3MknDeqlmb`h%JUX1"X:$-?s=8`9$3>RcR^4UntnlaZC&PRWm2!e6PDBuM1tfV%-MDmZ.r.m
-&^Pi/W"unKT6)lk)FT!0r-RrQ!WZ)a at oj_el>1E*!m",uZKZE,XQ#saA31]Fo_HS9Es.,G<OAJPHg/nRm,SS*G[KPTEp&5+
-YcADmMojn3FItOJ=\B8K8SJf\E))e`q?&bQpPHlD3s/2#0Q5`5kK*H&gu2I$qCOV;nR<!7I"P??ck;g#Wt#=2'LYH(\[ItP
-ML^:N)KmZ@]Oij+=)C8lS,l.FQSM>2ja5=d50SId%seWjMAP%X!!(o)oI"Qf<1Y2k/7A34eh/2MB\\2i)K48Xqqkcr at 9)r9
-I?nlU7JKIRh\alc*2.YF8[jQN]Zu\r,7),K81LJ'BHP$*cBu%MEYTXE0Fk;QU-F at AEAd$Y=iG?7,Y(Hh()8KO9q)=ioSWIK
-=K?YFQ#M!9/qOmo=o?-Z at p)$]Xl/9tei4MU at +;QipG4=:kL?!A:Hk>6Pa#Yh&tqWc]J<sWE_VTHe/3G<4+TVqS=m,3Or*FU
-b9Bm4/VoV-,-5Lto?1>rGEKKpe#)%jZ:kHJp>C[HQ68iM?-!7ca,-qmiXW7VQh1h;qV"!$`Ia58%(VVOU>6mffiqhnrion2
-DUkl#rOt4XJue>=O)(qE'qY7Dr+UEMo;f%lp"3jU!dt!`F1r#Ho'%<t*5dW:^#g'9Ipo\rA\^jr2;S=+IdY:pj_`=aBLl$E
-p41_tVNpsWKe4+DGT<D!If@/b6mS$lREmR;F"UnN;n)<2]almS>,boh:\4=9WQB;`+cPf8&cXU7c4AY!XhOWHQFmSMX<9Ih
-Gb8U8Yqn]fjDBp_bp:4<6=VA<h%%1DA*()GKERT.Jjq at p;G4R-e$*7DL%oJPF1parrL?4`o9u!/oWKSdA5!'K&$Wt!Q8Y^a
-pNO4No(D6S\oiV%Hg[V6\,<ZI+f<OOT5nRqI9\t,al;6:=pgj!e:U]6ABg;^HaK]EE?E%_]"EWJooa?[81N4Rg[WDbT/kMC
-r$?Qf9gE"L/7FH&5rq;MHn_II%7)Oob#H8(/Q1Li%I;(Cc$$`9i2n\b)\IDh\[2Se)sqlkcMO2eAR(.#YklIb"3@;9Y1'SJ
-`j0pF_r2pkQNJW$Gb"%^r?7Zj9-MX)beLJ+-4c?,OtbqN)I*>o]hsAN;=)p>BWdo3kiH[-_<i08P#=8`0ig:0Db\uben*?a
-+(Gi-luQ*<8Rn?4rFG,']4UM2+sjopaR"l+ljk`f$$ECEARF?IkU-F5Qk'AZ1g*)V7/@RI:aejFKqL7F!L9\j at j``q]]56W
-g!kP1#o&B.'upFUL!/n at CE(p3*/c;=&pLVPk1qWsYW-)$@5#f?7pmgA=]$e]ETW%,7GiO5[2$&Uh5X\%qq'WmFH>d6iM<o/
-naIUf^&N[9s/"I`A!IHBhu=m:fC5 at JqR/VDBQ<X'Y;s#F]DX`FiAIHcKPD?od_ql&#67:s0P1*,n*bo1M3r"t?L2][H2DZe
-jD>j-3oZqckBu]E"9Y6YA)!:97*,(a7JFU=o;Fe6R-dO>Uoq at 1S@!,cTeZt at U'nqYnM[hbn)Ja7dC at D_l\dYO2d0C*c$FAo
-glXFoObSAeS/qLgMbC!-kQ@%Ae+`9decs+X/>9r[45S;[K:-bner(d+ddT^@D$$+&:p;Z)EMBX1<ZQm;A3M\fdZi4hb#@ma
->S-a=*j#]OfcYi%OioG_D;u)?M<Rd,s'g1N^RBlIiYVbnH[JiP5P430,^HjcDGC at HQ_tk,(<>9SqR&p/onDSG at G"'h_r1$Q
-[]tE\E at u&sRu4G:&jr.V4(@BiplP0AE,&JTm"1I2^F>;*3mCi="2`>CI:$r+%.G<FH*sHe7hi1cO.jY(31_IN,W=;bofZqo
-pNaqt]6hD[.GoFl+V5P7*&[P5C.,1d]MHL.1NCea:/K!KP^C2F/SVsJ%)38Rr<%S:0E@/25(5j&,\5AtQE'R3ld_Z]`4kKO
-V<Si?<(;2qV"eeMKI[3tpR=A;N=UO$AmP?.=@/9kGA_s^C6[3a4 at H_Z>r1*Amb1aU:q6e)Za`)3Hp6n%0,#]!,iWkCgt9r@
-V9qk3Y,#r]iprF2=EMkRAP9%-FfTDph[P;Ak3-dQqA4(S_""//"L\p4>5sV8#ecR3nT+N(Vn]b6&Qj'9reU$W2#6>AQele0
-cN?E9?X:s.0*i4.:s@\`]6Ct0TdZZBf`/L?!>R#&<mq9N!&o4-p\i_TG(+K/:DU&q!,D[DNu4DW,NmuYL(/@SQH at d$L84SE
-V+G8'86oFA!Bt#8?=c=t'kL#i9nhV#f,_q^nM]fgmQ`C:radW53&M.u5j#ihpY at Y*Dn-qS$&fsGd^L"mP;iuka/,2"_`2ip
-)[V.GY?WSE3J?-24]6A*(:\>l$O96 at DOR_lD]Vaj^@-1s,<s6RmG\bii6kNDRq,dJgW3!5h22kMmsXrpf9.+U(cga6S)<-Y
-Lo&3XKo>-Th_",&CK52\hGH(JPc&-bqV/>%Bqgss!B5]VFDC`=66D([2d]/R%Z;Or"W;1r>br(>S?d'm3UP+Ui-=NfBJ.V'
-BgHPAU]JfiUs[9oCt"OP!%7;q'DMcG<pp(=>^ISVk3`q!YmmLR_<kbCi06ee=<;;#dS_hqEJ&4R\UM+M[ohX9<YVHk_&>6C
-mWopIOh=`"419S30CbkTY'BljPjX?hhkCIg^@RZg6G/"<Fq@'Gml#ju=m)CK]]o30d"*O/4M6J&'f;2O\KJc:<R,UC]&?f@
-H)2?&gD*k^!.2:7F"W;=JA at 95oVC84/nL?;\!(oLDkjhK4;.D0pgtCQjnd&;n0od/Tj'm-"J0]]/pL:DTJ1gINi=Bmh[=t*
-+$/EB.u11d_!4tVrp;U3b(k>es8%J at Qa]*cF2terA^?+sIrk&!_t=i&EO#9C0G4)H_0]kt1!\a$p:?5!M(/1A4klQ.K-!P@
-iV.j'?^Q(k,kh'2f3e:;iq6+Gq5:rb)#rpN^Jll at P,Rrh9GKBVQi[1s^];EK0XI4Y+B&.`""T+]A"nHKcr8$5QkrI3\GY8F
-K0P"_-QUUn/YY at N/5Cm2/kqE at a=+#].5lF=>X/%&VPZE[hRo>E8E8cMfTC!jQf?7*Bs at b_`S'm9qDIbIlqkKHBMK<(A\0j*
-pD_)a]m-jiCnDaH\J/p=hQ_7(HgA"s-k1!5]bNI#jr7Z;f1&g>F at nOV_G8LGkP?A19pIqt\h'E1*:6$A).V25QuYbb3ekBs
-H`]XX@>!EQ3S at 7N3>9^:*d`ZHW=$8l.(3&W(Tp!X at ZLfto,$3$:V",U>ru:2lL-/&;SVAC_[hlqOK_JSE9M=m+cnB!=%e_)
--To[>"Aq$jigt&"ABg=_(Z.YP<g)gUr%'@!QG68l]A^Ug#Y==TdP)[/*^T>lj1jM0Dclo4nR#[r]^1 at 2\"A%ZYiUf'Pf at k1
-7kttpBIg%s#ZH:4QW[$epss7oa?ZSb%YnR$oN/+!O37#&_KE:*5dhn&7D-BJp9R(gP"0K4hZFin$7dJsp)beZ^UWN"GLTk1
-BlOhV!i%er;-ZG=1AZ;I(R9!G!8\F(E:]*>MW4_QKr[F$r%JZ*r0CUfOf)IeI!)qH^:I=RlLs[h6R[8j\,<FJh-6JqIIT3T
-28n5Kj;[$?^:`g;cS,+5 at eUctDW/>68Hlu"PpTfB$ljWV#?]aRT-u/+n:qQardK"n'K+p$HGrg+L`^R8#q+UbF0;AB#B$rm
-,e$Od96OcYJl<%;02GW[dV!3H>@k.or3#B at bK\!\ee+9m??>oQr[+@(Er"M)fBT>q,h*RLUdeIS&YPcm<NJ9?1+-+P3B at u/
-Yh"F/j&\3>c^MW#mO/\QTUA)5ZS'8Bor9[oCQt,3(:H*H/_A$aGAZ0XAA!(%L4=0>m%%DD)-GN=&P1_7GGXV$[KAWeN1u.%
-F+M?E6%2HOAV at 4r$S8C3l!ukCLY59*G)MZF.#sED@#.\tIIETUkItmSOC=\O)@c#WrJ9r'Vp[\-K=9^A+e)W'XSq]#,]G[n
-ppZK3PI_E<T)qngh9gqPqUHiJ-9_8@!"!g^h?YEc=%1pGs&'nNMJoFtH%^-g:C;kL$B7\L7T5%hQ(3=^SJ"p>Nk&G=c2POs
-mH\m\fGYXaFuVp(I2jJp<dYCn%mh:Nh4GAnV)Xhla_FX at _cj2G4*RE`6b3Firm[3<M[R`+;A),,jDC(K3mDG/(cfJ5ZHb<N
-/HR*5g*q"s6XgX_M at 0IkqG0;ieZHD_\*E[6g*395%n<_30G;B(?0%._(l\B*Y3uh?m=4;u=4;K-_X#,t)oFTpU1>"60H0*-
-4l][C`&[ED08?(C2&#":&WX!_Jj"FtU'o,)1Zc6j%eP`7Rs9"t5,Rsfd]p%KHL5[6Vf^eImTMWK/WYWdGB=qXFi;:f3U.k1
-M9Gj2-j.2Mm)fL*V;Mcdk866'DhF[IC4R>K7*gbu#dY:pEP=WF_D&#6`UVZcr/a3U'VP>[)14.fN%gDm'KUJRF"U<66 at 3\I
-53jQ*1'qR&@Wa2(8]dgro>b/?5DAm$K9g9+#Bh-+Qbj2G.Wh-"cLnXt\Edo\*rja:6hobu5'&O'f$]_=$oSbGC20e`pMU>$
-W:2plA.Gc*>3%)=!6jRHMBI6S=FSr at N_aQm$&^5bpNq8f:JbhWXX2G9X`E[9ajO'r8>-+]AW%$9BK=Y`IK1ik:lGt",G:Kr
-X>&W"D^\b-V')9H3O=kf at dBY2M&uJ`+'?>S+BrH]:F1eSlG(ZgVj;E0)YC-b/n&h;lsZ^-53=Cq$:W:!-me?UqFl4&`No&4
- at Z!M*"W(m4DG;uK<>Y-l6s.M2K'f&!rl5`7l;l`@>BTgEf[;1l]J=L386.94A"U=\iNLo]VPu))!V<9gU*:qo3K=jD>Tr:G
-PHkX6"R2uk0A63X^C1o0!YqGS;X@*-c4 at SP,N"^r)MOMdotRAHR+#^A:u8<lASB%nUO_Z>2iA:C3..P9fCg4WYsqD=l5EUJ
-`Gs&5<.'R/+k6Zal0O#_eeL&^M\"-[NLn5SkPCpJ%3]]!/!Aj\1623&d[PEJ#(D?q]4E'e(*8_#b7uWeZKN9P-!#Z2=;USl
-\UOR?j_e3EI*aJ.8[mL=Zq0YMb2EJVChLgW(rdiWX06h<e;GVf^/.\%0Oe[*3'fFFK\[_LXs!NRZ0ES8N;]",mu<eoYu0n,
->RY,1R.dSVJQ\Q>J`tYq at L:#*aIOiXA#*@M8j\$ur:*9V<`$r80G;/J.9#ik=aaY#S:ptn4`t!!JfjIf6Q&6B!Z%]""g*CQ
-;.^6BZ[`\DqG$a);d&U03,X/2oHdBh:e<)QL#Pq8kt#B8f&r<_f`[0q";"Sh_;k_kF)]BZoQO2nIbQ-55YT<:Y'?HZX`!tU
-+."0>m1e0_<N1s=nj@:#_RCNQ at BFFtXh%NAhq+/T4pLeZ.Of`YfdT.)nZ!t8SS6 at 5H>!GH)Tn92A7e$[2&ipF`aV/AG'28:
-f<'ihml?YWF8`"YgaCXd+gU-qJa[mMM-%K>C6B]D\&L%I&MBrnm5Z5?Kncs=#$dHP.TgJkK-)r94t3+b0N6Nq3$YmgjSC+_
-SkVZCYW">[ejKSUa6[F6RWR>k at T@+k9ViWhZAU'$#U!C"(GTjb4T(>O%_?Q+J*;d&8()JVU3e6%nLIn,<=Wq-.\_)(O'0Cf
-$:Th9JReJNAYKhQnV^&aI]'JGdc5>hPcLonm6!0b!0"alE/n_;I?f57`c$Q.C(<43mTX0$6VOd6EppP&<_oYIc%)8G>GCO?
-JQ#lkHsF6m09Ud)Y;i.RJYnkIS0/fJLCDb@?[(sg;VJ$%OGki#53-_)NcXucoGiG`lto`AW]=TZ7S^XV/UL(L9ZllQ__(![
-qFr\=K5lo<i0?,)bT=V%T^(R9:rb7d?]9Ail/$,L+E8mNqF)jYe-_Eid8BrEb&?ioGK-8b86VA?/eEMug%)+rV!ct/,!/`Q
-]UL2Olm,INl6gGq?uB8BU#"#s'sq4nfARdtl;l`@>BThVD[N&dZ6cVr\c1@,\Z"#rqaN:*)#ik-qaPq8iNW$R<+8_rFY;co
->B.`!X*/$\ME<+ogJ(;T)u]9L_Pl+#PB7$e'(!"2YG8T at 3Vc7Wde6,j@"nWf_b4LnqO(I,CA]&EeZ4(feFp`KOKtIds$rQh
-/:V(f\;k:X3&t9tF;T*G^dfpnhE`"`p^;>jqGetgIF&s#k1'i;>rL`gd<@Q9=">PfN,-D0Fn,1q-gMOgDGaWJ_C2Kbgs](,
-8EaEZouCgapj$@6kF5+;UDMe>K.-k&\p&Z(YCbeslVB>%ST.-;@&];@?8/DH&%pt[;2W<</3crsJ<BHDg#;YTZppFQ%_Zo[
-!"OMm-#fj^V0;TD4tI01!_N^]b%J=qm^?VKVtBB$.j!JiegZW:ZhD?hNj5;(<</<q#.R9F8b"B5T(H[7c/;t5qXI36Sg_jD
-Ns1sqR'mc2J1Ig-g@*tWj#?>**=qfCG!8B:,*N+8IegfNk'3F6R2?"e#Msn*[7;q.[5uH:.BkX&Wr'pL.8\C$'itM,mr2'8
-FfTE1Xh+IHCbTc,i&?X&^QXLf[T@[LG"eq2Y.VXWc+*uI%`S%=1n2>^Qs"Pe\qJ>SAigU!E`Z:J[BIo33&$mu@@2Ph#3dbS
-`Q at MA`q5'%5Zr?/cnE at b=Relmm=n-Oh+UaCW!L+jp$8D$5YEF"b>p[BjVb0DBu.JN6$b_[Kh9GZCRiFU$CR:jf#V-^E<X*T
-9Yn8995s.No=c<qLu98:150fY!5&OMj&N,+[kH=>];9Md*3f=pRs'0kpgGrGh#?Gsj#qH!nnmk[)LG0sV^qX,nYO/j8QpQ#
-72q$g2`Ida,Plh8*)`N>7)=DHrMpT"@KkN=8QRuBh5?]b%g]o7Y5bG)fu6Vgp<^$=6HZm#!+WMT2<dA4k9"`XBp(TD^/Q^5
-qW6gsaY!-*#lp8PI:%c_HPa^u:eL5M%YBFX3&%@:E9>%*=hNhT$PjBC!aL4hWApND5fa@$.34rZ#E8oL8]SP;friC)(dT&7
-M(fT56G^Z9_5^5Pqel at JZ=8cQ.Zb1m5pV4=07/YhOVSpKXsO-T:e-CQbno:1O+fm">BQuaea3l^6O`aEj"=]t14d+d%%8ak
-,M(G^>mE6N0b$6V?qHe:9esmtOQNcNgDJ*]'q)R_M#*;V2RkV^AMLl<F8sO<SCpj]A#.5Lq4VaLqJ&VA2=IjKnhK=a6BBp3
-q9:#[<niA,fR`I,4<sf%*&bFk$R<Rl2SWC[IIjG*YZq]i8mOJdartMKcu,CZDHZWcKk>7Q"O=EuBu]ZEhp0Ste;/gk9#eW0
-C%f/#,q`B:E%(MZp<.L3oNuJ=E%Dtc"/X7&W-T!3M)^ho$do]eBoO9pfGcLQ_uJ;Df&6i[DR8>[QT6SCr%oKb#R%\VYq+1)
-Y+L_<57gAY3.=c[]oh(u9sAgd5N'\97V=?ocH/,_V(40D%oj)t"k)l\8$F)oI$n!+Us.Q;gdR!'q(C&0VW.l++lP+7:\0ZI
-HoQP6\cB#sA4>I4HjKnE4F+&J_:7&Gial@%6D0i*)jsW>,H[3Y;EPs0%k;:@<DBO+8,5mqM3QNLXG?Kt..EO^\5i6SAWPfR
-lu5q',o0:o>"VTfMp-;)"WYNk,NLX[`i_khQj,ZLVlataAj0V1i0r0&ENQO!@*A$(m\t*SXh%NA5F`/`h=6ie]u&e<&uO#I
-(G(N:\)\?(hte)3DtfQ1q,\;M:N$2h69i#JaLE^s'-BKUq`mWgE&D*)ZXR_(h.`5lK%n5'mpjn;/QZXeSAB4VnHKB8,F`Rq
-%KFrqjl,u+dY)R6.fsuO"&7t0KNT<bLM@'"Zaca,SWEqC?L11F\?'W(Z8ZM63Utle)I>Lf%*kg4(8][P?:(t1r;N4bM>"(@
-b=X+c=<Gc)FL!^;AY3GdIisuBZHM0:?,\],;R6J,3MYn=Oa`a>T#Ap15>BmXl0P'a^$N]g8e9;@]^WA at .@+;a&#>^k?0(i>
-]SRQFo-PG`m;ekmf(Dfj=T-08B3cS\3(Z0\d\V^Ec/B>:oFnU=m,8@@(LjZj8"Ol5NuY&bZJT[E(^h=d$3ac$53,4&SAHtX
-,p!*iFRYh%.LO(0V at X]1a2#ubNe(I at 3H^-.C.4ql>c*V`6Laf!\X^'H at R4)dQud2COE0aZ$^Nruc4jNjk+./m8WX7XX&,LY
-(s<X`W8$5U#,O#0mWbp>p&`oFo[p.:,h9gKc<O%+.uHGsnb6jJp7Hj2W`sVHDUn+bD1e%+I=jb\ZY8.LI>AmOHW\`lb*hhK
-o\+8`FW*nP>'d:5la]s?!lEC?c`$,'moC88^H_J at UIe<%#^6LIiF!+dX(beqNors[@Z.gp-KS_S626\1]uibpNQQs!Qlf3Z
-I*<D8)F*t$d='8_Idilr%dlC!nM`=BiJs*Wg%_X7oS,.GO*t:$=:GX[mX:2tVr-`XTWKkIb?.IXgB"CaB+A?6*H4hOCL0it
-H=DY$[oo&TPZ<.Y1`Sf>d?loKYa1^[S;FR34YR0nZRp0QrX855/jA#YNQ6!KVPSFi$PS].;09DFiZI]"H7)i*J.UUYjF'p)
-`"#<2]^Y*VqC_+#/UPuYhu\+0S>ff/:YA1,K#UD$bkUM0;2_>E;D'P`:`65gTTO at JB44&$RN<?84_A%FF8cnQ,Ksf#a*f-_
-'eQ-f<p(^NmQ$.-#,T)3>r'J7ECebMKF5%+r008Hn.jT*m1`!hI;2IEmtgRHq-\7t=R=LXIB8Lf7'N:n/dql=)cW9!mUB(c
-AORs-M9B65JRs$5C+e'*Ia4rtFfTE1m14<6SS[-llZ^i]2uLQXV07")NN^1k&+AI*-'I$9*n at T9c'*4pqgPIHQR4[KTdCeg
-l^U)$gZ_H?UWc/"+G`67hp5S]=KcrGF%X2_6B-u2Q#Q*P?tj]\_84;`Q!ZuX??UIr,Mk7;Ekk4[LluYuB7N3ea'"Qpc&Cl@
-e&HI+Ho^8sUrbT=/!PL$$WEZl>8g45:mfJN8L:Y"N,_T*$;m:kPeYC]3mK,*h&GE#'hMVLdQ"XXKAuhQ*`]%lU8C'\!SB3A
-PrejO,NM"b!H7)3Gk(;C+%BS4a#OOUgXjE)d?9//ldq*`HNAYJebnR#an`Ek?[,XWX#O'!D15:r).*#4PTL<HD;I]*`e?0.
-ECN"6o!W16K1L<9CSI%X$Nmt='[`-D-H(0>8Y20C1pq/nZKM&d at M,UhcN'V/TA-gh/iWj/hurI^5*^mq38*Rj*VLp&pVf&m
-4:qCHiBTk&B8jJ[lLRbc>)tZ-8gZ\p*<ZeOSRNn'N>UL#hgRTZT1ce02>B7.,j,cWh>cO\<o'c[FfTD0aI=P'rR66g%=%J5
-5PiUn_nZ7k,/\c!7i]HDW,C](b9d<+<-%5F$N9>bZ4g2AS:>3CU\hh-j-1kUiN,&m#Ndj*h6>]u?j>`f<6j(0rDA/"N^\XB
-5B\4ph(e^:0kS at njEf3TG(fO3IbQu(2[l.ELOCA2DVQ-kKP at qTl`bF.d;/!a%fB.#Af0)%3YU"IduX-UC\+%K(LP9T"Ls=*
-C`aLM[(e`KXKV9QC>.Qhp'ltmQ'u)Y`JQ]JRX<)))1'IJc.bXl!Sh6\3b)#Nlh'WBh%%6c2MVu"`OYn2m="_Q>kPM<82,T2
-!gl4Y8Y1k&cA\2l%2]c6D/9<o">Bu<hB^@)2!WnsY&]kGah8X0YiuZs6RP!rBr6U6pJub=rX[nmcT.UZ,I^f+hes,pc<b^/
-NUGRcdd0p,)+hauV[tN<F+o#4&.1<=KT7aE.N!-gS%CJ4,)K==>*B1aO%%$AUobc=a2D?'9([%,*I/^Q+;[9r@(j'VO.^ZQ
-U+n??2$+RbmVo!mr]5G^g3O<?\_qK;eC.3l,^%QnU[uH_>rgjT`X:(Q>.+HIMIeK2ZqeMgjuH_1N6i)+jp?dBm\kIGiW*GX
-aG1^V24:/\)](UIJ]F:WBDa,4(^u/j*P9$Ha.)kP)_r3b3-hRH$m>6k1SAgXf?HCk9PbB$?SV7>p3f^[hCd^T)UFJTDbb]7
-8(N-JaoVA(#,RW:32CmoWXI`l`utF5ht%oT]1R$K]Y^nBT1`P+/.`%4+-DBL at Q,rh&RX$#3VQ?Sc80>fPU;&(d,roW at s$q=
-gpDmuGi%^-:H4"?qCl^I,kd*@II5(_-.(Zp5H_FgD$f2QoW4<-`V=f%UJT*hCC8g/*:\<&cW at +O7H)hT='1UkGM"[X&+IT;
-dNji_qZe;:&4S,lpJ&@^*bcW],1:V4bfCS6Y$J9k6]IB;;e("BEkN`a)0C<[h`F5\9@,(1CW)?JIY>HuA2\`CUu`arMKTL:
-,6[t:9';Qhh[AHDr`^lKLEJ]I-6l1Xs'>j?r61:,9i9De0[\55GSg=Yh!Kop#"3g(BM54'8oURs8gC,f1gC-DSjep,>0?(L
-E5N0M4,V7ZBJK&M+I.IRN0>"c'^LAq98OX<O]B=e-n/C#M>N+("%MW&@u:26cMB2)0Gk5UB(5O<[h8hef0B22jTiMnn,JZ.
-r\3R07hXQq%TgEknJ,5T9,s^t&es]KS]$jBnP0)%Q`&HMV+oX\Q3H`+>eU,q3lDdrkC\\OJ#G]U7H23k/@tObXoL$'&4@:0
-4+c$LMm?$\*9m@%(=[k+4X'3^h*sdC+#&<p_K\q7.b&>r8^,$i8'H&Y4]<k<LSm^]23DL&Z:hP;^iO430.,+4dYQMIntODG
-N]MX]Kp_c\K2;58YN0d=9:f<i-gq\g2';u6-sa(TKA3E`5h&,0m'm%uY9<h-$3](3n18c'Sp2bujCe`i+=*ZoN2q+)D3*).
-b>hu3_rfa:_(cgA)O2Zm`.sf!0)EMq4SDhc3-[1A'8d5A5-ftnGtsYkNe"3'7DcPA\2jYr5j3hNl at Xq\ZP8"T),;?C6Pe;e
-Qc^V:d.Zp).uk#T/W$RiNYO``-BHXb<K&DQM7"uP69PX$R.5k.6U/]65q,7'BF,kX'kER6c]p&-dBmGl7NT+ZKe?U<MIo<a
-pr)5"TD]kQ?n`G3h%6c29''hQRIj=rT!.JV5+gNuh at FP]HcfrLY;B*DEVBe1[bCXS"<eAO%.`h_N0)W3>e(sbf+dkUU`ju\
-;`GT!q1E<h94i/A:1ipHmjUP4ElkYRTRJt!r;Gr*./.^/(OF6F<0/kf+ at L>R^Np:u[E?TP5<Z>U$Ptr9=V"^H)A;!RPqh??
-3:[;ci]tl at d:l96,(l)86"%K9Q3!]\4<N7A+Smu`0^amNW*<`B"B]_qcD]]R;\sJ0DlnJZG*tun0%e+DkHaJ'mFXtbK^sZ+
-eL6qT\@u;IFG*e-"sUaXisU?jUl1?+#b`^R3YcMnR^tP/X+kHqRDa;qVgfDA,%i at am1NoA]kA5S.+=RfZ8&JJ/lXs3jf\K5
-QV\E=$WRP>"=8YAWT(li49ktm=JD^4ZfXkH^+*Mi02G?-^/u)AY+G8nGfCD%)R39N=#rdqrD0KU,CaY&g5?H0Fqb0!3Y.Vj
-DC8lA'NHbr4]ZIs$oNUpg@;G7 at 8Yr;Eo$gsTPO01,@&,r\aTiIlG&=p?nct`5[VJQ8+,r.X at Y"'6JpOSf:Fm#i?tmbCXYX5
-5KL6[6kaM\SVJTohXnbu+@;=)"`%e(@(Fk?&abbA0-Z&j%iGL?6kL1.Ul?m&htK,l)N+Aj*)Gi4F&ud,%p_G$/'>cH3[,>j
- at Sb/^+HIMB<!Q5P<<Di=CBi^KSR3Hi:]/GP`(#^-$eHLO6'j(Oojm6Il\[3:Tn$NU1[2Uk^aI+N7CoIlo.a=fc^Q;L(KT!*
-F`49c0k;o'!cHu;`DPt!oiI)6J;=?8#^D.9guKds at Eri'qAq#rl%)BR,M![+Ik[Vu)M#?T=tp,pU]ip.EtFWRM^rd1&[CFO
-,mk@!&3ZN8P3nZF\LX81U)).7W]T[gL.jgd>O[W0b\#Ch<+ at A[)&[id&[!s0$9r!>-!E!c=sW1C,\k8_X/tnhX0N.Uf^'(r
-"sCA$W;.c85G<HNG87\$o at B()KDUqL;._&@MmL%PoBpp`5#@3#6J4_AL!2'cPrI-@!A$D%1IZ1*J,NOM)%6_%iS0DBQ*7%<
-jK-]]C.[-V0 at jsFI$72kR^h3eR=K'E94'NA\4KYV<7"XF"Nu\75LOh26)S2TLROVZ93-P\S at B3tn]bDuJ=G9>eR$V?c/<S!
-3IHlO=E]2K3uC@&N2o;q%)Ut7DH/+:c39&FX+aC<pg*gcj[At/CC@?rTU6B63[N6[LLZc0k'O73+]sam^D-Tef6MtRQ/+94
-J9F74eg<8?TaG&)Ges%E7/<7"`Io?>0;FF]aR^Xt"G62]431/&1_\nhl&jC+E"EnKQeeNVHNlqG&%_]O9UjJ9LIFe^!,%Tg
-mKU9[YkCq>5D#3AS(3+DIZhO"D?V]QLH at 2(>%Uer;b%9crff.L8!KJ']Vo=^SH]!IL!tZoa[:pTUX,>]1 at s?M0n2L+&JD:/
-$:]EE<Cftu2SqF>5,C/3-7Pka'I5HjE`XG^KqQdjN;uLZ!YR4^oVn*opgdRq)pkkrf;/6j0Gk4QIqs!W^U3J"^Uf;NcHid*
-J8hQ"[jCj1mp!.(,$#g4rCG#\W+[6#<tAN?iK6@*#Z%*makA*Mg*M0 at N^]TEZ2H$B:H;d4fg_Qk_Zs<a!/5Bg:bP4)\l(?!
-rY<jJ1eO*&'G,59#pdJ0ikE'e9(p)pVUmr*2Shd&LX:l\:q44HjmF:iTZC1EX[UV`?uf*b]R]=>PIEZWcd-?[n;bR"cs)UU
-X]tbN+)tYn9hs;'9lI@@'%KfMLddI3cXck/3)9lh)hr20=:V&,%GAb/RNl4^6rl!T@:LW5#bS=(R$>/*OrH!`JO7qG>pkA3
-Futb/goOO`TG/;+l&/dYId'\ghaG;VSmqKMBCUf)Gd>8!#Q,gY!E+4uC0_tEi5[mS[Xmfrh&ot'6)7o!<Yo^'?tRH+f1\Ae
-$&RnaKJA3"bZ=rJ4:Rmh#b</AOt*/a,ZG.\9%b4]1X94r5l81c(fUA<(^pVd^GX[DNO#Sm#ri(H1[9[oOK;ON=oMmVD!K[E
-28ZT=i3U!iR'khjl(]nW.;1)0's>sQI.coah&n:BNZ1!t`$6HK,Lt_HGq1K6pcbnAlpL=0Y4o2ZjS^7.e)a?FDE_Ou`4>9^
-m2%Q$kQW'E[BEWoRSH/78bum*J:gJ:*49L+,UA?$IATYh9TstfH7j4;9?3:r(/Ce>?`6RKKO>ccK7Gcs6rd\edeCtNP:Ktg
-4p'VQ`pB0u/EmNsY#1-(jBoJToUWH,6%b,B(afU(ZUmNc-aOsYf,PCpM]!`<:S^s7-'IM%'ZjQ'8'J at Y30]XgKX=`&d4U:e
-Y$=I'a>F4_Cr=&[_-A.0+lWfE1Z/d568r>Eh;J#?_J1R_8J<^r+Nb=+`CVe^7T>o:`uiugfC'P9mbkMFR7\G$a5fNW6g*ob
-mVdKtS2ZS%OmI7M@`5I0"32M%.Ho=iH7F8*?/0j[CsH"0rW\"k?sq)BM&YW"5m36^3WoofZLsjJ?!fXrTVm,-BDRUi4=I=`
-*1RO at cWgAL^@m1?>mOa'd$/UA$eAMj[l8e"o]J"KUuiY<@tRA?n@@?lUC:/ZD_S:7/gQHR0_60\*t'_p%@@c5'GZRUj1H?Z
-bi40k4H3*`Im6,Y;3.#(0<#YI(n>aHE,B]-Oe)$CcoJ';=o0qj%OcI8"Y5E5K!)R?#[%;$9T:$2kWF9&Th;+CYYC1"MRa at 0
-n17[!F:(nFj*Lp"WUh1C@/.0h)&utu#LNT/.<"n0P9/4sK0[Pt^@<<Hq;aue3(#5.KPCW$r=/@ij.fW%h;(s*VN_\(A3m#6
-f2iMA$on&*%1 at ttJ`hkr"2=?2OdC&9R0t.L at j5lkZFO?$)6,0TEu\@Z)I=i.AmtsX8B:[/Lp84[9rJ+,"=-8uQ^>/sZ5$[k
-K?GG%plK*N`^%,7Jk[Z:/F:p50$$)5iG,;#B at OoOICrt,LT1:B%0hI$!)0MB4\.b#*7BR"9bWaJD>QZV9k2^;o$J5Spcual
-IVrH^l1.0r5T/l7]H at i@qLp"iAu(^MTIt+0CaA0[8k7kadK7sNAkg*7d[sf3[)e*umCC<QpjMMS&&%R3d#GsZ4P'fcN$Hb6
-/0^m4"]Eh5PGU=57/cp#&Elq$ZrD/U`SHgfp=soJSBgag+"^diOj%'*<(Dak:,YB:#,hib?GV^`dq[`IJRYN\^lC"p*8,0G
-5esNZ`"0PKL+GY+BK;;JGb>bYoRTmc*?`YFW=VpLp6+\A!i>0\LYU5WZ%$F[%bd!VKd3KK^*Wb.&iUF-ED_/V at hrt@;9i#T
-@;t0/(j3fSED^QLN at oL5><"VKOF1hc3lsYjj%u?>[#s>$WCJdsjT"b'P2lurO<T07H##*[>?VR4j$s&_ at IM/omCm\lhCHSe
-^k9dE/Xh*8pmc!]?;Ps*_8Q"\IYrnEWIdk-qK"S4$jK(KgpH96U4D;^`5TK+r11PkIMRAS3K3G7$TFj-NnnI;e7N\#P^Cdo
-Z4)?T3:8 at IA"RT?4PcZ<':aIWM+dN4Pj:-K_!aX]5]h24He:uYSVX.V.p)$["G+(iL+a_n;_O"BE5:`)BnX#j at h]Oh&GK-$
-cqm/?g79%"6%`pCR%m``D/4A^G:,Oe^&fJ-O4bSI*>'bMpP7uePqPI8TVN_dl84=5!fUg/j)dl/XQ/)*<t/c^*/)<!e?4HX
-GEieVqEcGYKP/COQ@"iM!^[PPHGO^2=Y98Vl;7L&dr!%5$<8OOE[VtX&"#1NT=aVU7:;3%.a?__Pi`Hg at .8dpK-ssE-*pu(
-cHD7m(n\G,I<9F]X7O<YOLkcuM*dk=DY1kHm>!nBIks9E,X*?Ckiq"*'eoto^t-Zc^a<!8fFR`bK[$rsSi2Hbe.AG]ZCYm1
-aVD#P55s0lh2e2mceMn^(^tmAkY&X;_^Ce1g#'fl",Z]EapW.?JYF])V5tI'><-iO'N;4BTjq[AM5s!Y+Ae$,Xsi7],o\\"
-?e!-!.!P;.168G(9d1--jfUq'>UB['`i)XS1'J:"-Am at l@5QqNHEP:_feBQC-KXP:)*_2sKm%RFh!U"K3#kXVcFP6M_A14<
-ip?Am.mJ\oSA&)u!J>Bo at EVl7LbqsnD%(Qa=6XF,>`KLba<_:`Mi#6TmuTQr!\[NH#)TL`8+3MTn8$)G8aIW&E?WHU"A51,
-P1+uXopdOfmnCKZ=,n+$)_,#%!&klD$6[\VGGhTc;j&]rMpM\YqRs^#1e=?+U3u'r59roF%6.<HMhNZ<3&T"_r2=KHA/.L.
-qFtG<cjHr&o"o??@PdhJh(BD&Zj=Z(nF7f\Pg_XdlkT/&dd=:/#%Ibk.oB:rk&LNj<T+kmgS;O*;'dldp$^O at 0Gk4J0>]N:
-3;3VFH29l&7 at M.X^HfIHI[nE_RCo>dS6hjFDQ,CLpuZ7Y at q?g>,F-&KP]X.VU;Wch<O/1)liYl]FLj_8RC`0t&uaE846REm
-MOsG6?%iB((NPaP1ep_L5%ainD(KW2Kn6Ye7o5mRMgPmL#Ule[Zk.N1,"2Zulj1-+7Pt:TK`UdnUjLDI'SBrE[D&nNWX.OS
-#@*[JPT?cL&D(U+D!Ye=Ui):C"BUUJ3->!OjA=3p?]>GZ$AUn:D:NQ01%kUcR:S8Z*s\7PGg<.Kl_f.C>4HYj7*Tp=:B#M*
-QBS\(gTI_fh3$5eYjjqrHXqI$>P.,u5jlIAnUoanbV;1X\QBtPIOV630ck^X_::5E5'B/7HkcH"btX+'<0^jP#<pQDd@/A=
-0h-W;M!UFZNIu+5HLAODK>CqLr6p0LH2<h]%00s at q"P"UjA82H)"WJe. at T/e`mT%"+8q,/l9V"%bAJtR!Ic8"TG1lIAbQ3!
-0F#]\D=+4RMOBU[1us[,&@ZlEMj;+69k4o39.Dq=O08?s`%':!`RJl[l@\4m6-no#pZQ(hR='8LWY:_WCS+IZ&piMD0`V9O
-lG\No0->N at X=B>;Yr"QYnWV-0I`.V(L"buKIdtbg\j<8-&UVpUOc=dI-(-\Tf:"(Vd04#PisMO=OUGOS,Hs]N/\*ATf.==c
-6.B5hmANu/SWOWp;8Ge)8CoP+%f/H>(Em&D`@e`A-QQXCaq)t,Q=(2qa;ed6bhi\2E]P+A5$B#36j#)9ct!YPZUi;&GoEA+
-5%'O7'7VVJb at P(4_uq>^!)nu<Y/,<%AXfn)O54mI)*/Hp5].<)q1MiOoP8&[W]s(-_-etpo7/K2%dal\(3cB92kht*:LEeK
-;c^%(R_H:^a2:2%=M/%$eS>9 at T\CPsI at c7lqh<!7\fQMu4oA-:9</@2A3kQO#NY)Mq8!;Lr"9/DR4YZI[$J%o/Ikdjjen:Q
-F2NIm")[M$6NPGd9kcUnj@&&!P#MDGL:]JIp"X%:5+&TWDIIqZAS/hXFl(X_i;a&5ro&AG(;L$'#slk?OKs@`k0TRAE5p;K
-0*Xd5^#h;+IVE8=:=oAH_]VedM1O#@d#(,U7Zk7fQipE3]q:@Br0D2YaMt!)eoj8=Eo(!!pCIcUW;o5D,+CD[h[gS;"\UFY
-iKdi[^4V)m4:P89`)SP6F5\6&6C?q!8Vnca94/F-]!$!@o at r4A:L#eis7`\N"uD!L.eLHfB]9'0338Gt!'VO2-gB6q2;VW"
-A`!;pW]s(-_-etp;aG5?CXqaqgG.n'A44oo`0&NFM.U0cjrj%S'PCA0!JEidI4tD*qDEbn<oq_$@<9gN`f<U:P<[p.olChF
-dCD"OmqI4i_>J6](l($3i&OXj$I:Km8!gkf2#I'\AKT._JCb=o.bI;,/m.We+pn)2#>[Dg708U]Oat2R'qg\:rJ>IuC'#3V
-YRc<u0PM*:ON.*`HLqi45RYBeC!sC:AbKG`#T(aQFJACr:_N8\\c at E=-2QR\[=k2'@e=d#0:==1IWo9;1[;K5'=Et`=egsO
-*`o:T6J3m!4>4j@#;rgfiF5QuW*,:qMMsL.'(/=24NeHn'I/AWOqAV_M'>tBi(8k%JEgDmVHG\kF:BY)>g;+g`_>GWn6^uK
-A2[/aI%;*Z at P>e?8PKJO@*id]YlqEDOD at HkX@YSi1k(U5QFAd&+/?Y[0Gsf.!0)U0(4h!jc4b\4gCJpJY)L"uR7Jo\Lme?B
-Cf]&`4noY_AlA`U at mQ/D^S.;NRW:b3gbAbRAG/HC2Q$pH0653XjK9-=:F^i/eTu=/;V*:m#ha(!))@]?Bf]NELu<9p]&kst
-"X"fj0"k$3O(uHabOT<g+,CYp^KskY#D,_A84j3k`NU>fgNg0o;L7YD(@WDOqHGup;)[#[+DGk/_ct@@'cKD)0Rk<3Y&Xu^
-+I>r4\`kmjr=Dp3aK^lb,*>/ePq=2?PNZ4ajX]*fSR-=!BePF/J6ime#$s^bRG=&UrZ!s`6<99d8_e6W7.V>^Wq/XC5cNHD
-ZlXXakl"l$l@`1A5k;B2I*WI^,gZY>>Dm9i-]A)W%GKIUi>5ts.@%*Q-DB0>iut2cP$dY!\G&R:QU&$R7[4P%eY3GBlL3#+
-0Gk5]$eURhLN,\NbXY,E5pVRapM#<`pl>%B[?Li,2Z at C^5+^qAii$Sug at L0*Ek:1+#$<%1aUr68WBVK5SG;*hqR<tf5/MdI
-"tedA<@DcXX?Ns&$N-"-X^[FR=qn`NJl&:5+hT5K.$fCZre'_e425kAJ02T[K?Gepq]L+*9.<%D4;Af"L#\f5j;59g$o9#U
-SSKL()$$BF8%<LG]h=\TE86!F2sa3 at +,#Y#'G.90Z%NN+#c]F0Jf at ic>'GEak<`39+t[+8('SOdXsRd$?%L)0<9^_X(C"\0
-E%A#AH(9In!i$-kOep>-LhSG2^eO_!P&!6S+T468)+Feo4N&`?p[b4m1:s<'ogc4e_DUQSn9?c5h.]_.LC75Q&PWK>qBY=Q
-d3fd6$-A]Q1)PU<3&+5<Fm*eh%J-2bog`XK(^u/j$Ug$OJfI&%WQ9fDQU46 at 6tmsXqCYTr]JK(>E>&]D2p,`/lmG7NfYeF!
-9 at X"BgI@"5.sjHqg%"1p"5d)MHs54p.9Qhnh'_.2M@?0-WbL'(8$G?\E2\VJ+>*fq3hdd:W"uq/M]K[pIQB1MN[Ygh<Rb*V
-jWpH]VDW^lUrZ]607O)ZhQ3$tCYg0t`Q[GfVVcL.42(VFU+gH"k>k!]CM_"N5NX^GCu2gD`J6hK36$gJ#-j(_+X!)-U]tj@
-8`X7'P!J8jk-paYRuuCend/8]cl0Kq at EZ^n$2j'c1,E=Oi9^'?(Wu6;3"l/cKkb459\u'."eA&Ek=QO'MgTK_RN2ZuhUhUa
-Qsg95'Q1`L!Z$ckh.LrFO%3Kc"`02*'Kf\5`_V6@"![T+h'U%,S>kWh5Ju%DiD(qR[BB8b\c::j#(sa2^4F#T:L3"Y\V632
-:eL[&(p,;sJK_@&<sN?QFIDM(?a:</._7mhA`R`m8)4($+.BWd!KPIiMQHW`^@1Y^X%rSirE\h*W4Pg%jETCVs(gUF8LR+X
-5XO at C,k0pCHBIhi[9JUp^h)"N`Z)1UY11FIh'-!S?o_(<g at m9&O%0?_>L at NacQGL[lj$-?+jRQhoBW<B;VAUHBb&$]r8P.T
-aA0O@*WP);1uPOVh][o/L;`:%4F$sRK?0X#Ka,Du'g-l3a!u at 3o_p)0?<=c#,ZFoQ4''`Id5^]-2K;-C)c=8Q#Y#WN3qQ:Z
-&d!InoVI)kp*f:XWQ2^rLNH<0!\a2%`.eTgR&:K'4,[-M\45L(_/dg"B at L]X"u\_.*]TQ?.-$9H21>+"9.mqm2]58!i.^SR
-N?Eki@/)?>@fd9X:1cQM at u`u8]@5\\UQ/0:+"T(8I at Sq$D/hr*Ouqq,lES^lNt7lS/?Rh/eGkc:s+Gc+H?\6:%q=ihRBuPa
-ipIJKYkGTWNaq=X%Hu;>"2O?)V at 5ddYa:.P2?8fg,>&RRgl&F<Oq[<k=)7f+/i'2^fH6"I+N-_Y@\D)]Npc!Mo%#sd%-%7P
-H<1.X338XZil2/JWrpX[a$^#U=,&nOG>,2iMe<cii*M5^ZeKKDTaR[B%cY^r#jBX>L=@C-Y.Sr#&NW"A6Ws.H70XK44 at GS0
-#-/E`+(>0^pF at lS_WuEE]d,fgMP=-;S@&FRK]7N_*scl07UbcAFIb^q)<a!oEqk at 3#3s`$n2NKS-5N`(!5pdd5K0YJGLjN_
-=\G-k\=.4u]$g[)G,G,Z1)LE(_m]i,^iI9rd)bh,ID9DbPq1P/q$iQTr1DUtX/0\-<ti__+^]][_*=%M8H_QO5;=2W*-0*)
-=e5"e4mBeC4^Sl'b0'L6:ObLc&5FV>"&W<(ndi?HM<(KKoV`31A3HQdegn`]5j\U)X_Mt"9C0MsPC%`nlMB<"?4ItaR=5S+
-D4-A`Rm*=pnLj3U_=2:D`uS-u)\1'_^h'[n)`h>!)KIl)[<-/D&g4_\GFHA>LkB]6QmdTd6_odC^GU+8lp@%BeAm1D^naBj
-LqmL%6>,]gs##M3UYKb@#"a)\bYbIO$*sW;>&hg)QHs5i>G!f!)N'gS&X.52r0!Bqg_*icZ27@,8WeRE(`:]k6$knR^hr+#
-<:(cKQT/%ZWmE^i0fu!)')Y?t"6,*$njq:bPGS>aJ!22e_DQ!Z..!d;;<*4sg-guYe_cV-?n`G39i0:&B*5q@,R0V3o/l6o
-jLBE0E7T"?A`;e;k!".69tS%2rI34jIjnV%aat6L<c at u=@I*+KF7Z/V\UNCV6oP[O6-3Ik1!$lgbDF\>:mtLO-rRVX;6/7n
-Sj&L]A(FOhc_o3&:R<o.*;joMYTWgtGfl)FaU=pDi=s<l3F3+$$^?6d4XXF#eVX]$1escV&hSQS\tS^P<)+u?/=Etj at em'8
-Z%2U3XuRc%QNn`%MHm*@#nG`rLhd[k532>PEHQ[mH.."OA0gBG6jt`)95,U?/8>^(@s<DZJEMt`PR;t^[>lMD5\oQqkp1it
-*>:f;n7%$=B@>-MjV`N]J at bp5P!SSE at fFUB6.T5(7FDN at OXS<QD at h?Y:G;:j9o-K7+q<6b[sR>0O&egY8++O+ruDsc#(tl=
-#pl?3WJcOaQ!/?YM>[A"H2"e^6bYc%Q=psIq!k!6qCmX<(\Egd>hS^Ol'dZ0$WjQhR"DjFo]&0_rpHauU_@=hhd$)Rr^sgM
-8V(:F%r^;lBE-r8Hg,3\Ec&X5no3P('D4^IQmI$agG#(aUB)B^^'8Lf[9t2_7,#=&pfcmH1[Hl7J:8NLn-'S!k+2i-s'rs$
-LEf'J&D*5_:2BQVY6.P)OQdTk#S:_*aC5!Uj_NK]m8uS`%ce4t]0BDX=pX\l6/8:m45XP7>XnWZo[J=E7QM(E9D?IH30m(X
-J#aDBo_bEScb5`].aTA`&Tk.;;Ud(6!+4M1jJE>Y9gs4eH4m('!M':]drJNPrPS/h"q7:KMbXVMWXu==]^!Fc&NbJ'q/Dh>
-?n`G3])[6^GT:.rN*Q7khNQ]dqHkF+o(iq-J=DBEK^!\E8fM,$B)f6l2p'N=ZPs.,CO8j?H'%;:$DPpHf0Dn\5'6Y+WKj[a
-a)MOldeXdUjl.(poEXWD=i,d"jC4>#ipuGPbb4d&XTdBZ>\<68,I7#KBo\p/S7*T(![>3;=q6m/`.1Xk?:;@)&p\k*@n;ha
-ck1kL6nl+b!Af\-#uDZ"paQ,SN9Y31`X;*KOAJEOHbm?j#/_m4)B?5ARK;+B.s)u/)@:jI-Pnp<<IjDM!.E%ZYWl]$juD_V
-"9F6$YsK[m/lpt'k&tOS7KsN>nRn(Mj^0mX7IOEPTYY"iI-3f6LB<"u`=VO\CrAltE-9dhhqorDm4:1A&cSgX5"N=?J,'=C
-;@U!f\2_ITcO"'WqqKsfj8.>4?dXe4-U*?B4jbtr(-/DRC+q3/HLdD,qO[I(2$8a4@*(qm+U9sQ<q!:A+&>$jOKXlV,3J?k
-%Z,r^We/rf(_$Ci at F>;I02D,X"N77Sm,PCY+g[ZHI3DKWZq^PDB?9O2g4CrEC]g**i+H at k=et4)H',?AU:ooM&9RHAgIS,,
-$NL&!5;N5.kiZ3d`3NI;9GjcJ2!sLoaD[dIPeR5&''P?l`1=2oP?J599oS,^UA9pXdq4<I+e']m0Gk5u*ls`=7/;R5j>Be"
-kFSmGDL*8_b?jA&ol%rVQ]Kf1o,q:Zp*9N'!5cus,RX`@lp(k>gi2q>Z<("h-ZAC;it$V-]'Ylb9H9M5MPqEC"o7I<YRfIe
-,tS4XiRgJR;tc+n>u$D61#q1p=q]chrr-Vl]RPU)Y/8l4l1L:`f8tMR`:ft98/;k.C-W.DSFLR`&l"lk(?/e,USA-jHC^u&
-8F%Q[K#W;co!:74W03L)]2/?<'[L$W)jg7`3f^-[_;DH7H?quH=M9ApG9cuM0/B$)23K"LDKi,,`*b89%,XcaF3?r<]>#\:
-&k_^^(Q_3b^%jJah+?_3Sn$Z-&>1pHUn#te5X_9 at Y4q"s8,eJ,Gu#pkQL4^,!uGO1gWeW+ZGXoK+5F at 6Fb>kLpBf@$$MO9s
-*-T(lY9.>r>b+.@%"'YlrC'pjS\T^_)@I:Y8;)G%1i^<0Nc=9oA.9J9.WH$a[sMS at lFt4$RE[EPcn)^Cf0`S)6'(_K8=]a4
-"*(FeO9.a(HcZ/PM9fiPCaYG/2sp(Z?1pJKQL#)&=O</p1GK^T#/bWu9DAHm"r37fIFZ8'CQJC-`.I/NmIUno:JRu+=sUFb
-s)WZg`[#HHl!gpr'!7Lq(GZj^DlkK%qc&#6/k1C[0h2#2*e$<u;p-AAHZHC54sB2b*5@^G%XGRX8H%aTaqO#odlH5k,XrqW
-rVCE+UU0u\0uP&n4t%(A,J"q<<[,T#FH;$h"t^s^&d"j2g:1:Y7>1kc=!BD]drkJRr>1OM-)2O'MFdDS(^pV$iSOfp$083`
-[FIJ]>VQNA]XIP[R/oIkrZ]U;:skV$GoAeh%=Q'u'aMKnRX8[eW-piUgAh9PdlG#>P'e6)914P*A,pn;.Z<Bn^<pgg.70-F
-KknKOr`m<=YN/BsJ?D[SP.&ar!UfX=.L941Ta<L6JLhJb=Xqmm-jJnN,R'SU`+FW;0c"Up0Hn&VjJ!H$Y>h-K_-er6%0'9L
-n4mL1.';rj=@)\6J&#:h at _fXaQ]9[ZMLCKU4'!))J]+"`1V<!Elkq?9D<#;=ZVu'i-%\P'BY\Ndj$Rme=:,oA[2%%TjQhOF
--S7'fXKgZ^PBT]*eS3D2c\W&8MJl\j,2 at Pos"qXMOC>t'gOQ/X:=qSrrE"#f+N>""48$\Eb1G*_]*F;IM:"s/-m8C1<13%#
-0Gk3&KAiF0inTh??e4qBCu4\.R/rk*^IAeXnR-N1dHonq]=pT>i@/A(TL9t.B35dDGK99ggO9 at D4cQ#?IZJ+s$A0Rm?NSUT
-eE1lnHgUiHD4u%9ZgN0<,8H%;7^]QU at 0sGBT<ake$iMgac4'3s&7f`X;'.'6aPMH':kL5$@Hl_%*I*PrJB\6RT?4b?8X:jc
-6fkM(),ShLQErEu7q"(g$jOVa!,9!EC,V]cli"J2dq;D0^DJfp-q42I2XYhdJ"*lpdCfDc(*n"g8`$q<obf_PHE-#oRfR0X
--).pSs&Wpb(Cgnq8>+%"V];!_#aeL8,65B4`9f;S:KcF:VAlQ!--]-MB:l[^!AaQ6,,C;[VPjWB&Wo[NZp1=g at +K=8&7DVP
-na:J1ECiRs3LsDJd$g98*i=P=%'WP.%RTJ9\`mInr at o,t#(tlNW8 at GTp#_HK##oF:oV)pZ+X7Pu>.!Q_D(epVe(CSDKQDPg
-:/>J+aU>%(?b,=Sqh53lhlh4BHXQI6?+8X6`d,.)-dh at hg,D=3.`JV_pD&S3=djFY5/4^Naa*i*52 at P7AO*uBNb4*I8V$Ve
-N<nuGD]j$_#9nV9j">KP0fO'*8-mB5"-32dU[8*iMDu*#4n6(%_-DPZl4Yig$jM at C?\Z^pc\V!.[s\:6h<YW=!FG-H.7Yk6
-5)&cN6-l";Ilo7Sp[b]fru*H#Vs3Ro3qbFsqjRUA_AMrjNS9c8('Pt-E`_8M&FleE"$d<YTaQs?V\d]4..2!X3/S6XJ\n.2
-W%rmCSHsat]db$,KNp`[_s0fI!6BkLfAFl5JUD`>'!>KLi^9<9\=.Pk\mQ&)0p'-NE<$D3>!-H^q`h`=0+/e1qK)2lO7$c\
-?)kq`0Gk3&_nQiFhSqL%]'n=e%=@$t[/BTai01m2=H*/tQG:n]p1[\)ZP`khb=']<^o5Bn!6ij3g8cq^0)@?qFj[3r_6\A)
-'57VZ;Fp<-CZo*f&?Wm:ff[5&aRaoY>u+.BIn9m$i??o=R/PXP_u=n3Ui;S-Cr/uY8 at i!!GStYB`;li.JG\4aWq[k\*)%+L
-C'.YE-+u0Pq9Nu-\9%,j at _EK"I"pa;)K>d\/YbsFWp;fnmO)p,(^pVdH%NE?/b!K_HeWaoIIYD7*IGN'n,%K%s60`#cj)PJ
-K'YTH)FH1*O3bH.^0pZERKPar5Ss"0\KT?HqEaZ;+9%JIop7,l,7>&UZ7aqPEaH!RA-5C+pnU\=Lq^k&-h`>XJ"'1>'ZFGs
-*aRLc#B>9?[2]N3,2/)1J3'585b##0!'RIkAZo),I+l*t$SE-(qaAF=V(\:Lm/=7RC4j?10Gr(o0TgK_0RVUWmI+ at 9p;"5I
-9G%_AC+e;Y6A!V'8o`1*R\l]\mh^W6mFV$)6=?9r$-qm^cga(I!7M.H.3rJL.-E,LB5)#^TL+;2&e0rE^VodbgK1/%>l1&:
-95`IY2Ls<JOUXSR/kH']-kNBecZfN3.G>+dTlBDT9lFApq=(TnT"]%5IM<3$2Pgje!M*ZF01;$A7I2!)csSOE%#4?_3c'W9
-40.K+[m$<kj)^Rg`.f]$MtZHnU]hJ!QgQXG%pR<sJP$=kQH6fdmR<it\,60UG7n$_Ej<O4"gad$=_gUD?ZP)Z(bu5udL?<<
- at K:^+qL2t at +?33DCR/AeOT at -N\-HugLn2ma(<9d."6&osi](HoTUrB2<p+fl.A0Q"K2bk'`?hl=!fu?r&("]<(^u/j$6ZbS
-%>/O_8hUN`*D`s1W=],#ej5VR,PLcbfH;iq^GsSYb`@TQiMAL%Kjm8OGcp$N[Zq\Yr]6Wl<3!PT'Yk>E["0$5AjEn"0gsOl
-cshMDX\=h5JYGPc,/@6^rG,/7KAZj67i\0jO."[KjnOHV7=[BqX2iFg"$%JZ!$F-=:U36KC_DS1i7(ciIXhWT_-eseLEP`5
-8"<3If!0_1)%]I%n[8$R=fK`Dmj1d at 5FU'k4NBr0S4GY>J[=NXTZogt4E500lccB7=eiD<89Y&/'\AG\U]\O>5UAZA:Btde
-(RY-TcG"caIV(Fl<rE4h$9[ltB#f6_)SM36NqL!PYiT&ZM"=Y\Kd#h6[j.=ARbA<Q at HfYJU)R?di1'Y4cP4TLk1ibY?n`E+
-L at Z(d]dHlGoZ'p8!N2 at eI[Zj7n6A:m#5!rka=JBP`ee,,.%!"24o7ISjWSIATO6.a:Pup0AcV!",Qcmn)^r[X\68;+'n,a)
-![&6^:;PBZOm?r6Tg/1$(5r?5O\ES#o:K*.?LEO($LfT5==Md(KHPGo,V1bc&_H(IiX&9A7F(j-BA`G_>#&/!a(@"B$jOUn
-!UBYW*5G at sH`h-;kSFBuM1CD.ck<CG)F(1l<A at 5"O",EHC\cW'7g$IT$V?2JbUFr?B,nJZHBn>hFMBa52fMH`?E'Q>ra!WQ
-NVg+TblI>2Mmfo#T[a3Z@$Gm>m#!iuqr7#W(r"4\KQjcWkeb?[?G<o1^Fp[U!(+N4h3X/Ua2J67F1SG7^gJi5%0%r!M1Dn\
-?Gr%$K$u7RWT4Ri6)L<J7ic@/d1aP?\bHLXmY%k(jF=!75TBQ7e8lF<QX#&#o"t/gpD=S]=07"S<jFZuJ,T'KL2V]X+o25K
-n8s0r/l=kO^a1r,7cGPsEW5M>L>DkdY*nG\&"[r$A&]2775P,i/A-Qb#0Gr)9D,Y##(sa"p^TXVoR]Z_4hbHgOM8*da]h*Y
->e`4sr)Js^&>'G:VT!f>K<s;B&Ha61@$6ZQrKK!f"TMb8+,^g5puqts!B-oo+=.'!/%rP9bPCg0Qr"o:IXtsM+4/$l$RNGM
-E88:qk<1b5rpsBk:^O0fnda)*TVVg7C'2hFF'#7#FCsG)eAt'39WiUleT3J_$jM at C3t'<bF.#0!oi+Q at I<=ksfA,rD\EM*Y
-:s$urATJ[fm58h[Eq,'l)+:DFSi)GqKPO%.GTK"ockT6s/4fJAiW^Um#PN(7`uL$kg&L31Q!>1dCtZm`09?WnnH=<UTo;=(
-L$SiO?r[k\22=IVP!HSgV9D1u!_G>t>nh0"ZXN9"b68^k#(sb-e+^r"0ALTu`'^:m?Fm'!mFbe6c"MS'JbF<.a'M%4*kBoC
-8AB'1F(,ZA&!!kVB(RXlP/%!fk-qa2OFAJt?^(/*lL.AQ5LfTl=n at DmPh5+)BMl0eEn0b^e*2I.4[,S+Q&BP8Q#luSg]C<=
-&0gO$qCjCBMe4%VG(K-ON@#cU,V7=Q!nIu(3rKm*<S3f+W>H$JK>CrG:gqc<j$0#Zj at 41`M5H^#UR5i at rd3MU/&r_5G at rg/
-/:SCEKf,l,.g:/Y"b7@^pHuP7m/f^c>4hJk$j8-6#\0W;it"WIK$YU;rh2F77gt(=AKCl*Kj1t[+'JoN<@D8b5D>d[#"1Ih
->keB3)_brMV%t5-CJrut_-er6$jO]$'-FmVL)ih`kH6"1rU.\_EN=PTF6An2r85;\O#i97\5W:`[":jJ at d-?iJUS6r(N-tV
-qAj8RRpZH9''L2mmQ`fRTqI1d20dhP[M)]B3C,%8>=0/-2NRnBiWbmZ,QN*!c<Lq:P6jN:if(O^9H0eNT_"%d0Pl$7gGKfV
-#(sa2Art>&[HdF6CJaKOcGKc82,Gq at I3SV;TmgJ6r!bl[H6dV,j4?tR#[Me&CT\Y,OOai/G4aK;LPbj4gouF>r;!H*Wu`B8
-`8+Qhrq#hR_#?acS:H,!5aF[l=uIP4E(FCpgBJU>4`-Cl#4K^<KtTGdm>HM1.XLi*[q7<2$jM at CmfReM"TWD^[RA'Pd?sC/
-kLq at TY*s<cI!JnOmOoK`'5nV'-Gs6,Ln2K`=&4/3MQmEM-S:[Fg.+B<+)hOb*s7,L7$N5GK1g+99m4CMU\=\3_P*SqHKa at N
-]?rs$@)=6i3"YPZSZi,fd8j!soK'=PLR(p6 at 5&N,#(tn'";C;0 at U<O8s7k]IbK&rSitlOE@/*b6FT-TF#Xm_QB&W%`L2Wi(
-r/H1_HJcMX#;<`=a#0%k?T*5f75sWQ+>s<B[V4t[DL:HEM2/TBOXh(P2I/'*!,^lSob^:;6r0JSn,(^T-dr.W"]9;j&-3XN
-Q]KruL.&&b2])r-K>I'W%?_+76Jaa)of^Ou)_\j4#JDHZ^LHO11(8uHiSED^cnB9`R(.U`r9"=BE at g_<-aS=$e<T&)d[EJN
-Na=m5+b'CZ<>-JPg!h7R4cYA4rsCA-j>M\X%Tj#/!YKql0K+gbaH2L>"PFWkY1I&8(^pVd573bd=LdJPOh6FracRrc-4cXQ
-rN\0T0,qV)kI3W;EmY9h[f#mpfILGV0AdCl%4n]J"tc?Y=A;g!g(h"`OFJJLhfn=`I@)sX[t_3t4"hMW'*X@!4Vs179ksrn
-4)j<V6`I66?n`E+#/g7jCF1.ccG\83%@D+uo!&G`"^(n93=sROh%RtAZbe:LF9(P*XqnNheDAA.d6L/fWq.&9#(sa"3)=PE
-7&16oST9Ak%+^!kF'#1I>=LNdO?8JrUp+M_RKPG3[8sN)kPNkL^[Qsu=,oLi_=2<@%W=$<$jM at CgArQ$E`Wn0s'XojCSr/d
- at dJZ(8+,MGJCS0:%%_Y7Z8)6e'OgD'Y1lEh6E9&`$jM@#@/0F=X_@$MhYtU3E<c].5DXhT:+'KSO==KcI>_VZ$ljIFeR8jj
-K>CqLI-YeBaBc^H4?I#go7LpF3ct3QBe`/dPJLW\(^u/f'S]:G2JCfAMZXe)#(sa"0Gk3&K>CqL(^pV$_-er6$jM@#?n`E+
-#(sa"0Gk3&K>CqL)#iF_IfXdO1Hb~>
+,&j5p?QEoji-)otoTolBMp40IcnQKPRZknQE-/sKXW.]k&PB1_2`;&VMTW;'q&P$LYcY.::)2)t!1kAQ0RnE9SBZioZn&bC
+YlaeJ,rTJ[]ggtMM7FYQe*gFV+R%%%qd0uLpI0Mgh%ut!$G2"*a:DsC?qUHQbSFJM^eTFU#@FXjJ.N:uCe&m`eHS7!ID'[i
+qFPbdh5s4.P0n5aHC!bU=8REfiG`T7<-1FR?o*Zj#-Zh[A_3uW8K1i"))bl2`c=a:fCnO.\0khas6<1#!9R(\)h.UNm%nXF
+'Fs>Np!'/+oK\o1gkr##g[Yer.*^TJd\ts'^n at XUnTYdF09$75"KZ#\"B32C>m<Vgb[JeGQ_9s-V2#Rd4n#&eL(7HOB>9 at e
+<'[).)70Z*P7=#k*X6]dA.RKE6O?K$*-W6j_:?G3k)h>VbIFf+ at knu[7).KT;QMjQ(*%AjY/al+n(S>-A&H\]lo.7%FL+D9
+RC5bL:"_pbMu%*i9gu;rOV1L!7,neQY8d?"'<Lij-S^0GS-/#$i#G"5TGP5+!n\Js_ra<DE%o1CYG[C:o,6MD8^j%Y]gP&X
+$pdVY$3!(fb%f,O.t&pPCn%a5IsgI198=!Zc'4lk,"4`ri61p)[4rj6d,Xs/cG7Q, at 4iEh#YI4,dS>e_F#Y6u;IC(AAI]lK
+0f`%4gHbBMU!4'O*r8liBsp(hX'B.#VFSBSomo9B$F(idnE/bLkkA)4_m*)&.Ej_\G9$>E+W^ECLU)F*7eVJ<B-rLC8MUjG
+89.]Mjj\5#C6>.GI&jGSD\?(Ff7uA-J9XDqK/]EgN2jnT/b-R at n`s]PRe]06RUlbB.-SpKk^t[`>leYFl[![8X)>o,j`d5M
+I5p9ZUnXKtN,_bo6j\SX>Wr,FbLfm8OOV6Y;E(H8(ZHfLjCc^g6BtLu9G@]/cBJDN$2ogo^(J,V#=iDnr$hUJjdEFr\lTd!
+YrBAj)BR<QkMhW/_f3_Cd7(K`4c^9#-IVC7X*6Pgl at .W33#ilkmUFu4>JG*kAcN;8ahug+mc-G-T08WCFAl.7Y8f(Ngp?6f
+_pdr6^@ZN5fSMb[MTUe=*mB*2!7qHFBqToVffWKR;4Y*U8C'XC@#ObaU$#LTHH62),gLSch,Z<c[rm2__MZg82G2IclX#HT
+*o\Su)Wm/$La"/a0RV5^@1K&S4S<7KJCP8iW,'ch;L(qc-A;thgJoScMK%3]<K_q>+,)n#@g+$F,,J:c?h4f=S.CuA&f3OO
+lpl:6Juae!BT2L89/"Y#i;o&`$c4a.Z$rV8$-g&gq(V!f(G at c/Ei/pJa")q5`-CcRc9g5qYKAol2 at p,grdET$na>c*B1NE>
+=MgE at P8l^;+\KAG>A]=aGVqFQ8$g]sU.LpRoi(36T_=O*dn5$ao#e?m$@O/T'`FUEUMEXr(%QD[(8id5<VK(2J/oVZ_,FA]
+Au_/6q+K at aIILg#Q6 at Bu">S,C`Bj";A%;iq*FKn^,m7uEbR(c_Wo8K*W^$+bI4-ZkT]`ec`V;mt0V?EQg-\%fpOGo9T?8Hl
+7g!'T1,'uVP-#5+EoG(,,c+2Lm/Hu'p\OCHfuQTD*dt.#<1['/gkb/Z3ZEp4/NDgKIc#*(*#jJNb,_5Q&3>_Dh8*L0[!eKp
+P&)[#Q3[.lD3P;grR0`3RhABsmcPnlX at YiZ87Is'Kj8:X\;BXAFOgXR*\0l2le;uK-JOaYAYB&#p)2-bTV(6**fK`.s&3e"
+VC?AU3])%j at l"m4Tq6SX-aLHH4Z/j2dh5hARbe^Tjhk0Do[Y.:jqS</+aHMRko<W<jqeIgm?f1;-Ar?):jg&X3A`o,B]kTO
+XGKTkC5!FPRe%\6RsJfA&eqbe;pR7#@3(%j4]2G52`:3R]un.CmWA*/],c(tFd4#pG"5lHbPSHc(7pZUrO:HDV^bgV^(Ce3
+7\gc-DU:3_$J4`KLVpBJkRbKQbs^=j)>iD,SER+.fq>7q/2 at gNoR%C:g;_Y?&W,5F$QBJb,&r/%h8c[@nQM<JL at 02_[[oNq
+"']:'rg3=?VV3.?`QU_A!W&dY57V_KPAH]=cpq-4JUSWHT0Kc(8IHKR!Mhq<KsXRC9jMnJcd[Lp;H;47*D`],<U8L`0'hW(
+b(L"0%+bhM-&rS=dU,VioZKTM*%$0a&e?N"0`3GnLn?3`R'>fn_Ao'GBif,r4ERb^0V6e!Gm@]r=TRX6r.?Z[kG)DETj.0N
+D"3qiet[+PSA=j&qTX\rO>HBfp,gX[E3(uX"^3hpY1cfh7R^I;*&a()q06Alf]E7O!buWeA1;>EjOH=6F'ZQKCcL?7,nBE/
+n)W9:XUi0Ej_A4>^q6n(.&0,0I\KGI7P.PQlbtKn'j3k4]n#AarRlTFI_XH9^RbS%h/OLhdr<V)\m[-uk^TTRXj=?>'1PRA
+rek/DRh6Z8k3<(%/Gi1aY%6jXa*ET8*-5cC4D2Ee=mb>b>9A$bU`rq+5#aGC-r,pcC=c\"60FF'JNX`"qr2/5HD^>(`aP[h
+iNV+M<RCn&/fXk&&t,fE4F41L_X3.XKnk at q_"L9(^#oW<k,a*PB<r\1IPOE.lH&1AYb.aEiokS8LVrZITn<>I(_dQRq[a_%
+:TlWEOIO4h%am0>31a4QWoJm;Cj"rC?TEn5kn,6fS=>jLG#mfJe=?M%VRI+-M`NK1PM<A"nTiX'SVuL\Ng@(b_3a$@F-qYB
+cHR.7V%^@2:c*UH&5U8(34T!bZaqbJWM5S=ld1)pQ&^;>Q&[=Q(%8<oq>2NE`h!;?e96ShF at m%'^NWp>.,r>H<<$]480%WH
+#Hj@,_$6mIXU_ru:8I*5dCan0#(Z*Ld7GB<$ROlMT<Kf'c2hm:WL.k-Pb=TZk,Oam15(M,7$7j:o.[n!W:3]q&L%4e*d at RP
+O2'Xj-f)Z(Oc-rj*+7`>n_MO9QW6f"`t<\A(_&Kuho-TGa")bAbY45$lR(D]BZ7hI8R2_d:N0oL$\*=,jJ'BSZ.JFgX^Ah$
+&:,KsB3;gJd:=X5&]N2-:<aM;Bd>9-/ufBo01QU*9fWERU1gPk3G at nSlg<F;VIIr32IN+Y^<-K):A-Z4p1ICl5d6&Wr`76T
+Nut7\(D*g,[hFqd;D$H`FR</"l+oYMWdUFApPl>RZI\C9Y at ML!T`_53*<2;E6(^\?L)KHI,f,P4)k/FWiq!=@PMNW;nKDCn
+dgW$u at AlAc.n9&&98a^ApBtn?C%[)3SorZ>$25W2d<-:53S<?r5AAfgiZQDsn%8#T-f;5MM)Suj(M/MjBD_V?`WsE9OU"sE
+&LtFTV58?WH`ZbcrRdm_iRfh`?93BG<V-G$58o6:l%5Nj at bGNH8;$GA)G2;g:M%#Q;&g2#q0e_r-r at HNBshO%Q-fjU[TCN#
+UWFoeJ[jc9+WK1,l4"\u8ZkiNZQ^&05^Hr^<iHm,:d>_\ri)45GXY8o<GTk/<Z1Jl[..H,4k'<[m7mSu6iY-cg%19p#)Mn?
+qIu*T\N:gtKGt'W8SI?gat@\mn@=P2KG'G'XJBVM77i>t*?=t*R3e5ZE:UYtC[jBN>*jaYG],cSnH*E$b%7uPE6b]g>u\n;
+2^LpI\_rRmodLTDq8pZ%7Y"Q-mh$e1GZ8;5LHShm\)<N:UdMOE=eO.L[mi%ASgWC-gMtgur7IRa!VZIY[dTRXVn1.l;RDk,
+W!+,[bE3=b,=a4fE_K97LYU(%STQn3Z\:uW$'fj+&==f2Or#ehK;%EZIpV(60NG-fGLa68MaYT\a'@B&KBid0F3Q32VYOL\
+Url.`*[2 at lD$gd<UV[$]D($0tXZ"^OqWF0"IT=[*^=1M.e+p^YR9-p657^^ZFerqg(pmpaSo(`=6[V+80*G<PjT*UkRUJ"j
+kCl#\+"K$u2A(Gj_5WnX%n)OmL"OQ`-!kkKOh`6ENG.;:C0%5p_+ksGdqp#H:q)\+l"gr1PUY'0NJol+`e1SJ%te5c&7<9%
+o3'o@$(EZ\Uu.V-4TSlB#RtJ%*mmb%!BMBqT[j1ebu6?t=^"[b^#"H;#ea91GUa@#`AWLTH1-6/AFGT7_)Jmb4AH*2.tE)j
+_s0e,46$;SagAE_6#NQTb]Xo63SZ6QKf4qU/T4r5Oq,Ou(N4U!N=Xldb2))efr:UM;qf0G?CSZb<[9M0T%Kk'n(krdA"+^o
+m!R$"fg`%[l3\-EX*@WP3Mi,DZ]_ at .d8CaELKoG\/B)%pM1S^.["^&Pqdf$1Y at OOs0RLtS6oHKo6?k78`1grn$/V%h[G%u,
+c!\,;3r.`KntHXIF?GV5+[uG0q_RS]8AG2j_n$:$r<rYm(keRYNGinV/(;Rb&f+%u6^O_(PnKn88;Ah>cO]'_V$#O7>afpj
+9R&2A'>APojac>H>nnH^&Hc/;1DV&M:/Wp3P`f&C'n%+>"#?^6ljN[YaN?fQ!k8VMl?RWmEKE9&D:>6M5k at PdhM-0\8URr@
+UO,"`Eq*;fQCRR/j)<#)?MN(^ge at b0e6K]?"q_%g0#Y+n<I>j_LBH2n.?NCK`0e=d>(a+]U0iBj%`bY9Dro_L^,>r?4kZP_
+5PGVQq(Fq")Ycl0YGb7#mCq\A$;rt0rp8Uo1li_!^V`oM6QU.CH66.IoM\]fCsA<hmIbY-cD%/jVU>CH]ZinUZ#WkYi^%FK
+LUlHPV']H0*Me7=+;N?UQBkLiXVu1Soq7+825\N6=a&5F'B#^*A^fPil2Uc%QWtkC:E0AH*oMR8T$CYk=t:Ni7`u['%St%R
+Um.YCkiLj!#Qd:i76f8-Y-b/Zm+S6,"#S-LHM7nK>I_8mP%=,+W$2$GkkSYfelHKBN8X*D^\C1<"NW/A!^8<D,1=lo4B-kg
+$B\^:b,8NR`3242Q%tjASp!f2&W9#cTs]45EYC@,`afEfVn3sn_sSo-aFO?N7>oLOYnAD!9*LZPbP,#FOpK5\V?-JqD_]V)
+L71;^ggZ1"[FB+NE`'UN3ZO15JmPKFrqo'*ipCgPs14]clp^sD'5IIL"[Otq8AatZ`=FKUJ0L5mX.(5KoA>uE;*G:+@$;0!
+9QH=V\LX:+o1JXnR:MZG_*?_KS(\!]S+tN at n1WI//d-d\XYpI\E1qUTcdM1PU,`a,CYKcAQqrl2b-'m04JC3(C?JSP#L6`C
+ZWKAm0R;CYdQ<s%:E24[j_$R=iud\uk<Jq at _Zr.9&7l9fADh##:PPSE'h6-LpCC at X8lN<0 at 0MTrqk/eE(UhdI'ZFkr$`JZs
+Pfn\hftmktcJ7d]]O;m/U%qrg%-#4.*fPdQAW%:+j_U5\87Y!.$/07MPR+:K4s?a_Z9edAn:@b&J?P1\hU/Q3CPGL+1dp:J
+q4uE*HJ`Y;BV03oJ/-?)LKmUJrgkLobQL1Ir3s?=7fM$!ZXqPS7EDI$gE\g at GCT=kBF[LG8Wjp__K'mAEtFV%ka:5.Er^u*
+;h/46IV6Wl$&`EQ0E0o/m"\r/p-)(IT0/os!0WtU^RpEOppZ)aTH^8-q`QnDJo7S,Zh_O7a';9>YE5A&87P9=<k!f$QMk72
+S^)X+Q&:=P at 0Wf,+*ofGV;jFi90VN6d_Tsq9BKW[(p+'Fp#MGTMiX#Z,k*`l:^742%P(`r*U]Vmbd*O7lG;N7W#SXRg9V]>
+N_H,5KL)P3TM?!J_*o at r]`P&+m5&SCdna_s!2"Tlqp>L>r(,H"kP+CS&kF:!G=M?CHNo9DdU_8Rnq9t)I[[0ip,8_s"g*ZO
+asRjo`fidto(OQ91^b3%,TIp0)S5_F9(bT[s#7FN!.#A$/#KIQoU+M#B;"L"'<J?hR9MAdk#-FtM1TO,#ilWFa[68*i/PES
+Qt^kc_e&uM\'(-e]<Hp7SA4ZRSZm_[T+=dAg"hL+=4k+II04[Ql5Dj&i>J.'W&k?S44,fPkuH_7M\2'&F.f)9L=`Gn]Nk"A
+Q<rK+^u<oki0SQUR7u5s<Q1[RO`E[99Y:Dc$Kd.`208*fqt[O2$8N?)/OhL'epYbHCGV49A`*L.X1);VeTOGheZYJ.#;I=E
+;(8MgRj6M.<W/)JiDGZBfMVZr77&o:a_Y%H=`%W4U!ucK7oSO6BhbMt9FEDGX[f*cbM!20-jRsZ!#]S;/.ML0WKt at 0WnqI.
+mYPuF#])2/o5QkEEj90%VUl=)@qE-an,\OZXQ9]3Cf"^I5(jT">&YLp/EMnA.f1;^5J,hW8MGDW)uOjT'?P/[=Jr-6:@%0b
+epHa(#G3"A!2=qO+mRMHfn>,3#=Iec?VY[!2#cu1;JZp0N9jfr6<m.t*;28*6W&T2bb8q>?DH7Y#r$\Oq at S81H%Z9_[=n?D
+0=!F05K&Aom*]pkX0"0Jjsnc'G$*9qdEV*,b]WQh0r(V8>'q+!h=M?-CMnD0'0>s,phOP:?B[XW9(Uk-Ao#(k%_u9_p$8Tp
+iTLeT_Xk`_iTVP<)CCPK<eOQTM0);fi!i3r#QRGFdL0nS_<Tjub8^5(<+cZ-fKo*&lg4JA.]f_n>-LtuB!N&aVZkd$GUpd5
+Vb%&e9J0i\_g='_lc6E/HtqoQID%I)hA#fobbGY#mLZVR[(68h82&25<K04\qTJ_6e.[[R*Jf*BW<\eOVT8P^7l^PKGp.ht
+'Bggk!"K*R9S8QLEan"]!S7/6k"W%M,L!CPIVY4c;jkRDH4N1MCqg4X:^p=/qZ$'o]q9*\s%]k7W\tA*!kQsGSgI;9H9e:s
+TX3j+XYUO7As[,%s%5t6>nMUb&6Oh\Q<p#kZcV at HM;G^shJKg"53kt1LeYG8*$DR)B4I<tRRm0>F.9O!a$aH?hX^Xb[lX/^
+()P>_JA^CHVk73nnAqYQ:=cL%F$=;JgT^Kf<!U&s%Sd*lQ@@Y33#qn5)*;d at -kELndH;1E!Zk?IJD>\<+#VB[',BJ%2IJ2g
+&D.%u&7Q>Z"As"mLpC(f3'W6BhNBarC#-pbKiNHZD(U!VCUVq[\@A at hT^ECg0eF=k^1JhB':KWWJ;$MBdoPgH2=iC$11AnZ
+ZDmZ7lKt2oR=TE*+A7,(6<Ur./(!s>_MFXFH at R*jDna2u!It!*7":fe7o'Zcq+#cqjj7VPg#r_aOSV)<Y1%Hn^`-9Zp/r1I
+;t5d-R5mpZ)NLHREkFPk"c$>+;i#Of6usW-O5jAg\dG=6'26m-1_XBBpKW:938"j^N/7QPM`c+CEb-bH.+Lh[oVZ`Q1VPh,
+J1W(2I7AI%2G>7_:JA<CId"5LSTG7sj.``]l4:fG^D%FsA/"ri^2&!-q3NDjkc7[klnMKH5S8#uUSC2rdlDrrYmI'2Gu?Y$
+Z_B_YlM]f&lmE<Z>QCcGl/J?@+XQ%Mb8(A'JaiK=Sl@@oS[QF!>IJ)8&Bfs`[opeH%>2Toa%bo&ls at rq%_Y]gUEd5R69^[V
+ at X$GDqX#'J8A5^#Bu[$55IEsJj9!AWS;JASJ9 at a?'37ta$j=!+,pq%KG3BnPerVLoXX$sQ8YEE;K7!%&m)KWON[UCjhqjfn
+j+"b=95NeqMZs#6A-1!1 at .tBF9hS=-g[?XYMo#AKD/XaN at c1sGaCF\jT>Gsu2GfZ/_[#D`X/3"i:tr.n?EX[<HLFS!96l?^
+1O50M[Ke:_+g;P"#LfAuCJnRX*N4rufLo&ig=>liRjC1sgB.f_X^7shg#0=ml5F?rb/kGRQY%K at U@"7PosU'&@7mcb4NTQL
+L?(co&R7RS+T8V at CnUt^9H]#@).(E1QSkB<EM\LAYpAI2]fP:p3+`J_,kTg]96t#8UXbP+9LXVt@#*(#om>[!+NaZ<[4t`&
+N>03e:NBJrNgKAlH+RjmWkt[Ol"ZN,[(*`il at -4M*`0PRg:pM`1V%2?V%7`Y]5t\p._ at K^TFkD?X.^DjY:,gVnT?u<LdBE^
+Id]$CqHn6^g4BKfAZJ:Y*2Dgkp]/gNiUT:\DDhCZ!bq75ONN["I>2qQQsM`LO8!2bm<4Nhr9DE!d(*h#),+,\Um4%,kccTK
+k7/_$6&j7J$qJ&i3IDC9BP+elqG>,+_-sJ at -gII=7?=3.A4CU6A!Pi'%2X%Nnb&RX338<C(Z\`(q[#34>ZGAG-AF\f?M;[L
+KDdGHDFQQ[7!(&iEe*IFkSYbU8s5m4*jS\iZ.mOGT,[/VlS]7HYU[q[m_0LOYC$Br-;VRM"%!N-XT7nb'2 at 3FQttUMrYtV.
+a;o1\kn_PUYj%%9#;[s at 2/.'P9'D96`J',+jtN]D>dj1smVk/(edr3*504oM?pd4 at M(\eL6bF072<(S5bSmkdo\,<R^_9sH
+k4uBa4AOF,#Y2^8=7p!RY#jUf^H:0]FHn=q&Cdd#=1K-C;]%IhE)8n$'dXf`Oc6<;o;/pk*$?sQodNQ[T-Pa]Y5sSoXEp%P
+r;qkZj;(p9-NNCOZb!-N`m5`:&&@r-irII#n'D"'DVg.gqRa at 5IqP\DFbB>.5Ma3jJGoqccO8V=[A24J_SSA*#']=E8pG$k
+/dj;C[t`2,Hp!G(hMZZl"'$k'0lEUb:1_<XLmC"lOL]p_c,f!3,_bGPLnQ6?P3F+jDUnDP#/VYf/!/&4-+d?/rp[h(_)n>@
+#\mDfJsXuDpBc>h#nW\-'AD.- at _L<$^MuaC41lam>k&5#)jsVH2$DBe:PWcdRO*=sc2:N710*6N!Z.$aZ/a6`&egp8?2X6)
+hYEl"3&(a!8-12CQnaVsPa<@m_:d!o7&t!kB>-H___Er8Jk6CbIT8at5`s/GX/f/<,PdC0EG5eu!E/R=lfOB.:]FXaZ,%@G
+A]%P5<'dXpR)FopB8cGp^J,"LAZ03>ZU2SNGG3Sa%*b:$.kQc1 at _Z2C<5p*F6lWBbDXI9.B:^jrCK/,65nO45<c,4]#ufG3
+Q`YKaR&dM at o#2u`"9b]NhDk;`q:!Z-p!<AQ9P=5%fOK6pSH!mCZ[uOK`AE*odZH1HaY'6H*[[b(4rsr>@p@*BWg=)0$4J(a
+(W/3E%h=4#HSuDV!,U:+ at FKe%:UWLQl>;knASH]^>,9^YrP%r5=6`gPm.=Tr-OCiL5.cot-WEU!$L at q,"cBeiku5k`"DO!h
+G at V(tGtbV#o\&LE"EJ1 at Mq4d5OH%@54='.s.qO^##[LN$>HgS'%=W.k=K.gJQf&3;B5>S=mY)@dXKQ0D^qqn5I6K<#VaZ4l
+TOjXQ<u=;gI@@A[Ec]o-g#71H_PG>Q_u^R^RO<e]7TOp:4ph(@l7l0`mR@#:53K=`lfNn#!TjA/na,B!pQpgB?Bq_[mUm:s
+g6:KW:>bHCIeU=VBGZ;49M705fGUf)B'(q)%]X]d@>jp?-`T-m'73PrjFSPI(kASF/^-[?_a"+On:@Y#P,k<%?SUcY5WK/Z
+[>PG`VFR;)5Edi7s)8c9r3no]Wd+hV7NW6Jpb+Sq!P`qYf*h).dZqF;T;JG8'Ks)HHK5M7mG$'QbC)f$9969 at +htn6"AT'H
+pn[>siQmBT[fKCAfh/%AC<\&M=_+r;R!l\Hj&rcEgFkf**p-S8!)>'R/>\j\X_24*-K8$k?BF]gO"d>25AF!h^ZXA3P;1B8
+\Rg2RA%_OR7OdR"^hh1p8"7p-a+?effkAfJ&Nu"jJF%OQ[6!2)(3tq"k='d#g?;btJ)`0M]8ftoSO%F/j8abt*>$fDZ>47$
+7Mck`38WRI+XsU-RM(-)X-euZqN7KGZC(G5lH.mQXVbSu9s5RF_f4EodKi)43Z""UQ\W)57Sq2LJjl#SjW+Y&,.lhqWC6*7
+XQZ![a0"5NDE,4`_,Od_^!)bAo"$Fa=u[Ruc'BRI-9Nb'A!V6aj<ml1Y8RR@@EX'!S^:3 at Rd_+<UG%dcG)`$e$;,@^"<W=I
+Oi`*$=:$%s!5okXCrF!*H`eJW^#RMl9`O;5S,P'f__Zi9!YQ*DhJ at n?=GmT`1<?I#H]?QL/U7K\e:L&jd+o67S"67l#K2'=
+AEXJqr%E(iT^,JG:94CtKF>Pf*agTQXO?J-?j.JMcuEZi%*,d?baP,<h2l:'6:Q`8Sa-g15PT9#j4NJGles&?lEIJ[E7?bD
++(_NO9k40gT!3].D.O:Lads_!*`h2uH"@S^PW0_:ftP@$=&V=tn7<G at nT\2&UM"*:`eqj(Y\Ff'=W=LAiB at +BKkCPgjH,mK
+NtZHclEDeD!YJ_,iRStY`sgmMP=l!L`f:bhMXPms*m!Z<=jaFBqu-Cp*M at K_lGibu.;kQ<&YT/%HU5<\F?CuRr(B30OH$YF
+e,t at DY\liFFJdUa/r&c?;49A-8:(3XpUJ''ESW8D>nXW8jr'c5X<nQ^bn(3u#Al5;bL?+V-HS<^BE@(^lHPPZEJ6ZBqkIqL
+>c:Nu`GA!ao-l(:>s=niA3?Z9W[bj$P*@i&FTjdnT7f=H!5siqg[3\J28&5GViSp];o(AFrE'7[epQLMHRqj_WZK]R4]4d^
+DUDKB6<1AjMu.n2W=p$5$hGH3lnqq^LPeR*bu;'*bZ3U.>9A%MYa)qRpV<#*&pc6pJ<CV8'*t%8kE5+n$/L#*C@<hTpmkq3
+e+n8l!U`ed%C42s$@<_s_W at V;kHT6EZm>o43X#;=M=ik_X$CoeON4:Qmi5=)iruk0WmEU)Kh^o]Hq59(2Nq([6C?<_(45r#
+S2'f9pKg5)8;r.<NQt=P^aJ;[B'7O#UY<KlGNWp)Ad4/$H3`,oR(?)ZC-(Gi0Z/D<+I<Qb+odUI>=.6m(@tOo0_+0.Ot?m>
+9g?7d8j!j]%3k:D*8S:mAMk4;GO,+u9nhH[ke[A[3/Gb%YejUVG']pO+248&ZI.1/\jsml4'V8-OhJ=^Jk>4C,^6r^i7-i>
+PABS16INF+f[m34$be6#Tp[%KgU`,ZV9eccZF/qb9$k4>gAee:8K$JWAU5a0W2l4;VrA#XdLZ at mC-P'5D9hbm_!4J1hmihG
+fp&u,<i.MY7=&M&+[KnaI#kW:TJ;X==K&Jh?UlZh2[E0DgboR-9,;-beP\^WI5*09 at 8((`AS\g at IVmUs5BPYG-lL9r#[J1V
+cDm1:@EG+[)).0c?4,:\AWld0cg'0B;49CM/t7gPA8C,g8cpXC<G(9Um%i"TG=Mm&#T;AN/!$)S[R8U[hpdg1=Q?a95>Qs_
+3#5Gss$ZbhoON<]`"%Qt5I,uULbCJ.:aPr)RYOh^Ac_Pq"kbjXO`F!J[X.E5`AS4q9A+.t6:6]XWs[M*K/\EBRe_l2">`o;
+W7O'UU^/]NOjDDSb#_4.(e_Jca>2(Mf5$B*5S$J.`es%O]N)n!&G8VqBWbsDc[#t923:1kQR_*JYSWJd.8j8P++E;op37>8
+m9J=MG?@p31eDd^WnZTEQY'$"SkZDZPP*p.Tsr1,)VQkO$fpHXe=9LgO;ui"4I\ruU*=2j;O?!,IKagGNSAVH?=b2?VWjtD
+?7XC,)*/jC0OrXjf+PSS-Fp[)jR&V3+ON?9qTlb,,nFmN;9L["L%72g`i%f'hCH&u at a4C.X6jr[_H;b7[_(p&N^noc6>o8u
+0/T2`O,$L(\Z_SVeEX;)cGQ at e9<6FmaDM%D0U>\bBTP[_k2UC4n`Xb!""]6Hc48Q/8dioT2%qYono=MFQXd3Ho7+A`="XEi
+?+V/)]eE7:H&Ck&H,t!mpGP)QNp`S7EOXu2?]J,Tn\(5i3tXm%",$tj`_M=:\(#XO.L'f1%EK(mYV]qpcnem.[!?+-1"]D^
+1kJ]I)K>SXa2&rU23_K@)<LFN(;A]i=3rTu<a?^9[8?S*Bf;`c%p51oAAT2sM`CYk4?+n6f7,+GLE*kpis at jK?"m<*B'AYL
+86j at uZu*CXBY<u>N0qEQ]&@nEGR=?u70lh]?2Ga%p2.WO at 30I].^rl5U/EkuEe'uL#^]/7,4&]d*8F,1o!']G0XmlHTb3?Y
+ZH#h#`^VM<B9cL4_1@\CJ<9[^q at R0(Od4Z@^;_"M*?>*k63 at ZfMA%!NH\Fa.6b'R^f,iZ-=D96&ZPJD9$GFL,m5u^I=O(>f
+,-+Fjp<Sp)8h9an]#8t4PNI0H6U3dUP=/SFIE,%_C1Fj#0cq2^IKaNe6fB5NbqJ:JV&)t#l+b)Y`cWL^\p$9`-0JrOSti4+
+A1$qqRiMu/46Ye[lEDf'-)F\.ICu'Y:mK.gl>.(m[4Dq^-k[TUUL^t.N*@D)bTAm49,ER>&*7b:^M^btkUd*RQBUP5NXfMO
+R*(4b)[o<ZIhT]R/mErX1&RrH9<D$oWLBlR at AT,LX;$J.$ELdCO.s8WI-]-:F1Z7Nd*Sse^`(p'pJk2`cn]nY["^=LA3S5"
+UdXL`GH]2]^+p'p_Y?CgAsg/G[Tseen;0YtNnEJ")N?7XD'P+W]Rqkq%Z2qrN?KFQXrUP-Zg at j[>OB%+fUGZ2=#6%+DHk1N
+dIFC`/&l`nf&<`kA/OBHVob=EX5d&t,fMT(PWj2Wg=P at PRQ>3r2"Xq:#&kmF4KdDR:E!lF\1:boK-eOXACN,iF3*ROLl^CZ
+K:Q*-"s1IlY`8E6c97-j`49O"OS.!8jr]]^h*S'AdQ(&$?\t>XGk9(1jF/g6\737aAH'KYW,!PH<bad+/h+G*#UHT25a`a2
+X535]FuUHVE5YJ8cB)"Yj&^'eRJPW(VA[G*Q;=H;01anCal\3K7t.X6=*<30pn[=1f</RN,#L9qCSbBf?N[6 at e"npKs/W9$
+RMuN:#t1%U4Y0-9BEZW,>f!2Hkf[.!'uI:nD&X7L(\V*SF5V_l;:L6'>Z"CElG]$"K5)s`m.=&<>+1S0 at QoX.XI3e=T-.<U
+aZ0l=gp'>A86lnNq9.]\W2n&N`\M65E/$>.)lg.3h8k]i at 3:O4&s!S#q8SQEjXR8AS+%]eXl5tp':0i_\<aKRgG0,_9[s=N
+SIR^u69,dm?&M.1P;LS3 at J.Ua78[=#*L]D:>L,1U:Y$7U&EAq%#>jGr!q%0S:7(9PaQM8!OLO"3*dPi:BX![da"nU6T_\b9
+b:RBERB=`j67.(6"RK)+D8aoID6ld'OD>52R#0jW3fG;?0Tc"cn`Xaj9_#S=aBI9if^!`CrWZqLZCYNc'Fgoal1f^GZbtb#
+5b\6;d!Nf9qP7[nf.?bjeJ04@]-'in!AHYLe^1h?e3W??1%U'm_iVgVZKesF/ZDk=[4PqhP^`RZ%:G4j?t(Jb^Q6f:=rD_>
+.M]'>_Mepr"GRHBTk]QB!K3WP%)-N\XBgh^['#]rDHZ:j9:4Tu(n:>3omk='R@>[ANBW<%JeRaJbs9BN^d9qWYAD>nV-/%H
+oi/9-(4tB)9,AuOUrE[l$:@V)80qahBPkjb(f-UWUU`nSE6/_TM2Y!]rX>*;:jGSN8545T&>=D>olf8OYk<E*H#g7'ohULC
+(!PIqW9mi\;>f?QEJhhgX-*3RJ(!f?*54lX&l)mkB`0.>(t"!'Q>t<,kX"4M1TFu\Zp7D!W)m9&[uAtJbH<VT^T#\W0[c]E
+fPH3Ja[r(mh2t];C51(>7kT\;T:g7Dg__%fOKB&*Ost9c%%/g%N=j1LS)/M:JE3p%E7EG145D4iY3h7^MLM8H=Kkp8&;Oc%
+"hgW%`h<Ogp.&H.Jmt at u<so15A[T*"[8(EaE/GH7Zbf+?%a3-NoLb;?LQ>1V`lLcT'bD(I8ekB_Lj`p>fFkq.L5)BP/_I)0
+;.N\C#gk#'Cj>*$6"O3]U_V>e6B?ft+?#`!VO=Dn45R%s'WWrCY"Ghp>#!6HY\!1C at 6m>:]<EYh,T1^$+>gQ(24^+Zco^ms
+P4NpTpV(!$/N?aRW]ljl(J;],c3EHW@;^Xb<N_AT&2`'jlUW.#_#BO`Y3Zh]ar7gf>6a;'4[BmZ1d,^]H5X;t9[$gS_V at _p
+:!9X(g at J3`/PJm.CEg!7_IE'3G(>N+;&P5p$'eG#W4/rkG?gQE>TG?]L=Lhs3YSh;3JjnTl"6UI^2U4&C']VC&0K?ei\s^K
+2kN5-?LTf1aY-RVbfP,+Yeo0Dl8fmSo];gY*E&"HK'Kgg4SmbT<3Xlo5Cnj"(cd8fa;#g(a:+"@"-\LG+"Kn-Ck'sbrSD.A
+_njF48E&bshGY&SqgOZc"2J-.8mo;I29S$Z3Rb?E-;B]_8WHq^L.iZDY]WlT'jD+(idu^sN#ot_qTU\4[p?kSD_%$5\%+sS
+!8:H=Kr'')3`aY]1+>!S!faXECDrI9[Q=&]=u*6g[Pgr_UXeH?Nph/1jq,\=PuH?17Z5\CW<gTMI,nO,C`'W[RI1QAKfU`Q
+VQCCKP-sQpdCA*dn%V_@%npb/KqeDuAMq<qbXNn$O4=9F-*p#rjD/7o4"%sS!""N?>K*fC&2c<FI at tG>N51<kg;Y--iH''O
+b at Au#%e5S?^X7BmWB)cJ2-%ADB,tk;r)\"qhae0H#Gi=9"1bQfd)gh92h(C_:t(&!>QCcK4?SHIUlTse>BkJ&BXtB?Zc$_5
+oifdW88Zu(8PML-A4 at FEY%p]8XN>q6:r&pBe'ZcF5DNfu"AoaG)N2q-0knUEe4.^)K at EqNE,Rr>#5UADnLZK#3<;Al*`%5X
+Tu;VK4!!IoEI#=nf\pd'+K.;r33lGY$9Od(M`_u_2C))CEi0!c^akpZNR4D;qB_L5-4D&*Esj"KXMg5'P42/V7KS'6]Ya:g
+((^plQJ6mgjD*)mB^OVTSt#*lK1<`/Q41..L0:VJ>&'qR9=*logMo/cQ5&Vhi)0(6a_$GTPE?l`eor!pf$#Bj2'3ql<4Ah#
+8l]hI3fa5V=T.3)ka4+.kgkk2nJ6.]Zo#1MUkig-acsDC4X#p7:6\N9<cV6]S>VeCdt`f;oS]l)X';iTV4'^1e+#L?F04a"
+Hnm,B\QE*n9:&S^1G\u=L[kG2Q<]37;YH8u*`SiB1mbCd(JT6r!Y_fb;Ak'SQIJbS<-0ia9\^Fob%E9ML-Cj0o?EX]=L6-P
+2-UcVc6Z/I`Ff[94H2Jn(PS8.KntlbM)9Z%>9t=W9ekRf$mGh-DN1WN0[AY>dSJ`5q[#3\o8rje0cHLcic=,(7WoEYk6`AN
+PM8Y/6B_T]N^**i/t0Aq!Rlm`R%58:<8#toGQk?EM&KXS<qjDgE-+Du3*gSN2C?+<$dZW:j/D0W<`'<h#B+U"6.MnD)J2/M
+0i/IQ.#Tj*Q)2;O#b<0F$`5#_a.&t?+ at WZeo#W:B at gbL#C(#3NlEr[;>$Nu<q5miQ*^se.-;MT._H_5sf'bJYRq009,:,><
+@&@&;-nM:sh-[YqDAJjD*o&W4jJV\k]"m=W`[-4O/*\#S[]>LkhVkE6Pp,X+FtRYs&/4qnAK#f'nA`A"dT!rCO3a)iPHGLZ
+Itdk4*?b0;q#lXfS$B&mG(9OO4Mt$V?3gPjr^gr0mJn$h,CK_9(^Skq"[3o"C#_4kP0p;D(L4GXC9CP9bA78K3:6B^Cq/K)
+%3&(WLkou/I'/0HKum.i01Ru at N\!M;!b^Da+:fM)4nl&h]97r-L7JO at 3*;c^)PS;u0\]'oAZ6Sog*5l,DRfln#sgq37UU&H
+;4k<XI*F`J\Q*eWjFi1L::uDk18r_WN`H+t"Eo(JFZUXmXdC at M;9p&,lqT`VnQBtLi_S>uhkHM`oo]%#kkDQ8i9!0u]Qqg6
+ge7qaH._NZ)tkD[Z"SEkpZMCd^(/1&*GVA"/E`OPEX6',M1S<1q__$Xekg1ICao`aF)9tP#qK]/VXe]=C?g\a(e`#Y1,B-f
+*4'r?rGLV[L!%qZq:;<!*4]asptJA<ENrR2s1Vi\KB6&p\C-gCGa`H(>FU'h;9;9#%McHHqmVqM%Ec7E\lK**,ZeebLWB'j
+7&nflh9&6N.cKqRCu;YJKBAge<+T at fACAegj?Q!fbg^JJ*AWO.W,1i9qgW!EP0OsS7IT>qP1D7.CiTmo'nMYRgUW_o+C$Pd
+Rgj)EBF?j8MK0*H8<LQC7W]cRO$Z4saB_ZV>T6*4+'%sW-!"c\JG<%)^cW,Q:hVX$E&[uSq\mk#0D>X!9BYC5X_C0bN2Iu2
+9<mT2[)/!OT/'Qg.2a%Fe^*."E^30S'VYb<a#6G,Q6;@O,:/7$.GT6MFuoJ'2<=#@f=-ft\j^n'S810^VKVIIe&g:%PY&9n
+3AH]M6 at IV_pV3RKrgN7-6%e[(pKf)*J69VkW:D>#$L.qcO6Xb.)u2H6baSdW.j- at 0/g@="rK10roq\)A?T`$m<m\Opo9A#)
+.f5a)mIf^m0=Sjh`W^]rM>o4k?$?G0ZD&/&797H%V^]PdK3#<V.REdj_;W]jG2XZ?/-o0G&7Y44j\g<DCq[DO$op:l07uBR
+A,>$%-:S8:"S"?JA)jUB?HQ*PL/esi`AqTh&g4%%mL1'Xq(S./$uu/SEAn8Hh at I;0A)FH'"`9+\?!*mL4G'4GM`C;*i,n%4
+PG&#H0#RfH<U4B!':fd5e'QQu:VcqGT9q`-#p]sFea>P![\60Z.,JI?H;S/UH/ai\V&u4#eti^j#[F*A?a62U98#S5ZP at UY
+WWYM/,"n at Dc_%D6LJ(5EAM)s4U9+Wrga+Uk`R&&m,FbiLC1(=.9I`gp.DK+cg+but;MTW\o')o`WQ%GiW&D*]#rc<mR2LaP
+9[*nQN`_R?1bJdsL[HQfB7[;V1cgfu1PPW-0[=Vme8--t\?@Y=0GJD4*+$`Y*YrQMaDBc0IFn"=V0k#K.?OBQK71e8Y9?)[
+eUKDt./P-7?o?(.cs_hsIOFn0]"uQ)WCu6hfQJ.9!dOUa\'TW6"Dqbs``G-pC%'AZH[VdK)t.aYiP;WHml>D(rsVd[b126[
+^Sj,<JVg.V8PVoO/(8=kVQTWpSBY5T[Vuq&WLR#n#MZ[]N,(i>Q!>H)HG<"Y=FJc&Tqa>OA_EdqX5aLY!*1cjpXXm22Ed=?
+8JGbc6qWMnNDll7 at -0*#Cr%9&4cs*?;*Bc7[g75I^tDPJ:eTe)WoeSQQ)6/.9"S_N[g77g#r,7V;MRQOojLo3K`!uJ9?psP
+RU2pJe"kN1+\AYY$gNOE(UVS]E6GNIOY&`Ff&9*VC;$[AP">&*b!qg#dla/5CrQ<24DmR3FGBB)kZ[SSP`n3t;k9HS-6/\K
+MK`..)M!NY6'tkY61/%!2QX-EOT[75Q[<sf_InO'XOb%o4;ds*(:LFK7+gB.A,u89YkSn;g!A`WJ;:90No^5+*bJ[/*h73$
+U1&[m^ZYraPI_i(.;@Ii%.T.+rp8t1FZb#ua6o2*)`2t_X2DZO]1oR'Z1>"=\62<(TueVD9#dX^81q`=OVJM\\54!2n9U9O
+EhbknrF3ONhr/gtJ_qo9p"-7=]<:U at bpnXgh3XV31VDb5Q@@YkXh<p]%i<A9UXTXC[op,H0h^;:_9`#dE<*R?rlOGP]ejQ/
+eqaZ]A7_!&H,ghNAd'Fp=]:-SRa]K*iUamPOa,c,)4R-?k::&jD7"Z!dZQC:+&94&l"qum<jn1aM5nLHlWYEJ/(f0uF1*QH
+b<p5/nNqnm`%K.X,S30K_%'f`)0&oL.Wm'sWkUL_7J]s7c'9lgLf4h:p<sp>N9YhEc:pai.08StH?p?'])ts2K!]fd>:=e&
+Hglk-UYk6E`N)+C3g,G#SI%0sgr!3Z?E!2V$B8V1DP8J#h=ig'H#gf'd.>W/J^#7JD0EMCg8Li8S;JYS-8lQ4odo'q"?q at f
+?Rb;om_o8e+OoVLjlS1WdDf^_nNh34:^A6/U5TZ9C?U>s6g`%dpkat-iW%j[?@tpnLd#0dmS:f-]>oaenIr*c;Wmj+./B@=
+?fbQ8^7DmYgB4"g]cqnr_p/RJOq<FDO^QT+<i9SBqgO*W=a1jJ*pJ^]M#iClNJ36fkh9D\+ at qis(4 at G'BuYW"Dpi%:<!Yj;
+5S/H\3fs]2_I'`5YbV;9d<cD?%=lN`[P\O.M0<2Iof>Hu[]5iLR_X&%WFgF@=WTIgCNeY::l at VNS)Um4!S at omOo=e9pfl/$
+.rB!,S.&-BN&@Z%K53d!L3q%ebSS*u4>81qpo!@ihA,cYh7U%qs(^rl7R[\qmlsAIS;<_%-Z^eC,<:"$@<j(Y+.a15WR6Y7
+2;=m=6gm?i;k\Q6Mr/sQ[R[F(eX%leU>">&=Ecai)U`1a_1,?%e*VKO<l>o#Ql,Te$,Dg&Rd+Mk["L(n:,a]h(M"9bdN[3A
+\2#,WbSan4IVfd*#]p!+LZfAr")e/]aU_hq9Q+&;g!JXYCYQ2>LMm\uj';9llj4/0Nodi-6>0B??JldS,YuT","fVfH`oHn
+h`egnI1gVVjaG_mAYMCdjCat"f?apO/k#G,NPCAS6E(/_CgkX#E9Np=d;I!1s.6uM:oQ4@*&M'NQZZ.6ns541msX]VlrB)o
+3ZOV:i*5No$WS2JK-d=*ofBBPekC3f=:NAkRo83DOWjDm'pBK'9-?'A\iR21<J&c8l[!d6GK@[i<3<^%H_$j3X'!:U-I@=D
+gI7V!heKnoA#@)7<GV5O1s('QW!Z6,,?Z&\Hh8ROQb+<9\'T<hL8jb%B")$TU9:*NTI=rb=iaQYB]#nTRYce\eYTCb/'W:3
+(ZL30LaWH[LRjI%s- at _8WUdURr`7,JFt73C=J1.Kc?@=bE5K\\@`M$o&mHIt(92cFA$/2Ar at Z,s:E#*i5Q4).!9pRGR(7*U
+,9,TI0)cqAJVAs'De0U*1iuFFhj:pnaDBL?;@OYN>.b!,MmD0EX*/mZ2-f+(&!6a6N&%*PSh_T#8?u]Hb<ohI?J)B1PUZ9+
+B6$@P at ko24A@7"@Pd$.;C1A/7OeRb)qp^s0-4aBkcP(5oC['"p3WI$FQMoo4n,1OL6j%TqNmn"%rl?*:R!Y?J':16.,,M<a
+q8)Ta7eXM, at G'b<GOS2FlJMJ[SGp"Dhb3*jX[b&]LL`6P/&:\0#520X(PEY)$r1_Cb-bbG=a*RiXWeU_MEoUZ<KPcu0nE2c
+Z'TY2U1s`(K_sR:UM%VZgH+oq\o^LaYZY^H7W-QYh<sjQMY1.K'Wrms[KFBjK85b/-tp<,QTM$^1Ypm_8P2s6W0`"M[6BE6
+M2RB?IX.A^fZB8=$gCGs60W(7:bY]Y*G_EIDVOZt$Y3BRei0F`_2i$6K9I!XOI7\"1j`q#J#*9HqD4bri]VjiNn[-/VRF at g
+2:/fmZ?7C+E8C3$SDn[.[8AhrV3C at -jjpo3I#IKIMb,eTJ%&^,Q"[k7Z at 0k1&^R4Vj%O^QZ4q[%+3Pq7!a at rEWp,Z"R3ZOb
+:A`4R4KaLU3n,.?MJV.R+`A_'Fh36&a$Fq4ZiNr97I$<eJ<XGdd78F'$>"4u-]ASfGXrZ4Ba]UK`&UjnOg:iJm!cfGUsle5
+ at L_jk_>PuHmaI4O%A9c_PAgKZX[E0QQ^s/I:+jSWA=*$r7l4W.ASZOS+=S+#_mo?&G;CPtkOYeI2<b&d<rLPAr]C*a.NaO@
+`$Q42XG$KkN]/*E"m!P8/8`\_(ou0GkU*R:!W['1OSn!A_UhNCR^6'sLaU=k2eTbFJ+[Y&\uKd.YBo5]Yfa([C%#0>9HBU>
+K.%,]]]6b<X8S7M?ghA+q5!8DjS7/.!W"CI?.3sj;-/%$_]\79n^q:VGa9pBr2lA!*WE/(nKo#ccK>@QX6j)MjCd;?h.4s=
+1g8BmOoqEC?/'WY.hJ(K1Qun(,]iO6KJkXuM%1sYg>Uhm;m]8$aWifkC"E%"MO0s\If35XHF'bB!](M9!Z`u&Pt;%NXRG0\
+eZ^U?h_GsQe;$f1L=?tPJ:(8nkH(@Pc1_*FXB1H.!Nq6g4N=RE$WtbW)o]G,?A2XM7d;VJ]P5Yl;GthQ:;ckK,Z4otct848
+HmH,6j-8:haiZq7Rt6sE[8AM;J6[CSS/_aF\//%DJ8'`CUlQioo*[?:S-4m%<skjJ`]0WPKZWiBoqC-N'E\e>d9,sr]=:NG
+*?\@UpAX7rH[Y[4ZM.q'`g$PQ&A\R%dh5k(d(kg=hs3(-om^:1'c.3Y3ErIUZo+(D.RD4fOC0^ric+f*"')cha+dn3,0VIV
+=`h5o7Ej>iE-hGc$!VhCK"``KB5BOpY0k?ZDOC-Y;M#(.>$cno6&R5BS>)6IUaehtl+Fim]@c&mlt?jWSpeAC[Ph.t5,m;m
+23Kce8B)!W4ZWe\Aq!f&Q=1VVrB&JJ;;>6[/*j&ZdX[@D`5si.hU2OIBTkQsmXmE9WgJc_6FB:_Es(<X^W8.+Xd[I$m$e_!
+YPb,QME?,$"U_J`AM%^nd4cAV&lfJ*0.b,]]q$>K^`:,ods<mF*NN>^b<S at iK[,m=?BL0`HiiZ-5V-;6BG,$dKcdpJdDt^?
+Cp^NGk(q>T\qsCXCjE5Ugm7HI4c\WNV#.*-NALW\(8;/HdZ+sE*(_^XU(']QJjCntU_^ElY3-)c0n9/#m-tlu_a#$-_D*Ak
+J(,n`hW"=+C_+lT/1"D0`$6;QA4i3)*RqH?G/Ci/WHu>R_-?[0kh!3.)#G*03A*E7Yot:klkQ5#;?-I`1P?]pH+2gO?tTap
+Ga=@AS,[u]%6f:6JK7?7:#8F4VGb7cegcQ"dj[O%No)u2a'LC7oLp%]o#lhJ967-H;_Da at nF#?NnafML*Q<L#lg`oOjbmo>
+(3PV'DJGnFpo`g`.u2Og9WrUs(c at W<1M^"#^9*A'oK at YXeomr#rC(T,MSR_]QYmp/1Aro,Yh?HSErLfNrR+:@K*)g=W:9U[
+Y=Y-I]S5:l:S)D#4LEUL&P<]A0%Vf#EBMVt'?L[A2$cQI)bL31nh&Z5)*VeAWN'S*OHf2A3dT`?<d0?W_M%^OGoPEQTAV<$
+s7P>EH`KcRWIJAV_hp[HU@^l8ZS%@O(HMfS`BT(d/<G(b$SQaCec,%Z?9&:N%p]]m+%pDFeRN0toD>]Fo)gr#3T4'_,!hQ_
+B>66.5F`,UO\R/K+PDV(a[k:s>n0\532R+<'8<@S'ee&?pq5N$*,3r. at ruatj5t2do,R:tjOH.iQ$Og:,t=&ZY_CB%PtHRK
+HGIio2@)9-D/AGan&f1cj03c0`'l,?U;aTkb,J1YdhaK#A%624.t.3jht8q]?CtgJ:]qPHRi^S8_CQ)ZfO3A)8T&T=_<GpO
+mL`D&(RN$K)6@)o']7DE)liF%RKLeI[mJ9_;jp>FXtAl9Gl at mKVGJSIZAbtkW<='P;MI.mrp6E]nOTY,)F`5)?;,QG=B5u(
+_WKIue?T:-5s=h22nQ%mRDcN/Vkr:gq!C%i&1-?D9D+?QXP<20!fpF;U`"fKVHt53Ep<*/Vc2kP0NW>?$KIoE\`K(,7b(RF
+l&lXed]sY3&<C`-pqc;u:M/'kZfuUbhnMC^(Vq(cL$9*GS2[t5DV8%$:_>Q:j]!Z"99%HPi_S>uT+a#+kD*s0jk/n0P3p>J
+]g$O-[b#.<(@WXCSB0Oiqu+Wb6ksrB"P2'B0;*6G[8-Q=90nC7K6l59%'A/I(S[tWO^JIIC.D;@o'O3jjBIGsba3!soREBE
+_lh$c^[P`W^A7OC7$TP7U&Vk&p`"E>qV#@L35gO#E9=C_"NUcg"Ha8V&(&O20iCc#@EI#f?59)NgNsi0?m&NqmWc?h\H,b9
+f^8GQNr5r5FV,f,aMQD.\Vp9EcjAN[%FfDQs!7f`']O4S"oKBj6N<#\MYWAI1<G6@&%L-OTgV56T&3=q3ZP=rW8tl`IM#Vd
+RV&CYr/'(CX'/_m]K>g.kqV<)0,iBEK`"*Vs2eV1*lMbUMUS at u2fraErCaern\5V^0lNt]r&<hnG28BSluMLp1FPsu"<;1o
+l.kY#2/d)H#GQh:]Dc0-AXefQ<5`p8EC;9V*UmIj:F$7 at +YMPiXYA7dp(`R*Ol at L^$_&`YWI+"RT6<IM7,^\]9ULG]`)Utb
+RaS(6<a!1NhI(&SJq4-)a(+DrB/gIldaQk[ma(msT$1MunT^PnQF0e)o$=]^9&`rd_(ad/Lc)!3o2"18$Cs##-BA%Q5'htu
+Z)Me5)WCa-X,=2-PFU,?)?*i,R>-Z*"L=Ac^\\<r at 2UEJ,99H2$X<_e$3NRd,hs=%"#_\Q%ZDZ_=n9QeM`GeXJ+8=PeAJbd
+FGh%'*;p]1ZC2d_,I530>SAtF)p$%9\TDj='"(TJ8)CrbP<g5s&aU[?+%6F--RaC'bb^7O6\jp#gE4C&7 at dC--pfh+ZT?TY
+2+`&E_QQLhi,judJ7F\tkOrKd>[7S$"%`<17FT`\pI37Ui^0e'&8FlR(@@:<2&LpY*XcrbcClGeK/gj)(BmuB@[gm^/$'fR
+ at 5nYs4@mH\@G*DGD;s`>A]+Uup1U=ASC-eM+_ag^"hU^Tq(K[og at +_fGNbeos#UX%r>)hG-(AT2A$2<IL%s<>WbeBT>0%.d
+\9]8j$#>Ej1m<QERT&H-J/r:F(kSr_4<:B'>c9GR_>4XWj9OOY$f<GsWI"$.\&<aam<^!RDi&XXc9,(UBuCO%E!`"^U*B(/
+SZp5"r"=6@<"mdcK7!l$6h:l+%cn/kEF^L,=GFIh[ZA$?`m&m\oK`-!7l$O<oTRA35Mg84[8^N->>MhU\)VAa^mXuq:\`[_
+dM^,LhVkDKpf+Y$Uo^h9O3?5sZ%hpc5#,]F?![03 at G@2s6<]tFP[rX6:>b$/X2uF7."!0qG#34#l1krmi.sK7m.;t,b.bXj
+287k/oB:#?hKJHA>Y0IjI!E5I)dKO-6sj2H-HND\4[>q04JFdf*C1JklJ0p$=6ZQd"@I&s%>8+6`4:P+6t?QKH\LMoiY>m?
++]_(Fl+P[kDh$AKY:$r241P^Ul-]r+ at 3p8_)gVgH,CGj`o:5.E*<,EATs4Sqo^E0[rXWZ at T>jP(piG*e+X]2C-fN/RF0ZYh
+[dN[=PT([NZhhaALZ<N/Y(F6uV)E[/dU!+PW,dE9gd8/p66s-":P-65WA]%:8:O@;)l32NDe:YM1K.H+93]eJ5 at UHc6^Q"r
+KHjIr($.ni]uAi*X`+?Ed^5Z!Ig(Q!#0$%$(<X8hpqB0=]9D:j=X>WteF#4RGce:*HMq's7N`u1Ks'_0ZGii(eN?^"K-h,l
+aR9n7S[/-0`KN\/<du:o9Wd$W_8/Pbc*O[WNLGSZGo4h0,W)0X!u)bISp&^QEBE*3n%f!b1PGci`&m^!hU/BM1:<8O)8Br+
+^4R/bX`+T;`Xq/kpK4GZ2ZMW^fmgb"drIq3D<Ns[LhiH2%Y!q>k,\-tYF`seqb5"DG[-pPq/9O2DXf+BU+;D[:>0PhXJ;at
+R=-JdX$o\e]]5723;QuWa^.W=O]to9PnY+&Z5K-mZM$^cK,=@lfA*S5[W0#s[`!Hl%Q;k(>t)DXkA<D^h at EpRa1M?_B-?eN
+;[;Dub5Oo$RRh?.<t=$S&sNHjhao9cH/d)e at C-Z0CAa?Q!b`u*f9F#N:,fkR^H8`![jD5^d)"56!Tm&N5r^0h5J5b>;-/tH
+-W3?S7>k?um7Rm1ro2qD\9:g'3 at hb!TR8eIq'kXZ6 at D)l$(Rml!NlZPRf8/$Ijo<Sf<q5!#/tROl3Ts(p\G;j6"CI,G<BOr
+KNLI\l>XE0^cUEO?]k]H+em^p,AC#6X4G?>1db[8Kh7XsC6-7na=T"E.9]BEPXJ-Z#Q4.LN8!p1>>@Dpeb$F]OdW7^:pL0<
+eS.`/@cTpG4d^?GMT8m1ZfiitoSHls'9"6udFXOEor\h]`oiTB6J3lIKodN0bZKs,_e^DPZB"@te=mFi6L54aG1pO%o`>oJ
+>Rm=2]S$lr0eU?r.GWRcXd,j^9$H#]D_q2j\7eP0n9oKg$/rPcJEk(MMF?d%$-$SRs7rH3UDtC"1I^:_mEPatH<B%dacUFU
+MRj[7M+;t^2p\$`90$Xr8Q2!+p"3'N2'`4Nn<.)Wgc(T,r:n+pq+"Sos5J%Lnepn/ViGkFimV]+:o"&"`mOn:l\=VJ.J%nH
+,mSJGl<PLGrG<q<ZA[B(W[L_QVNB.,/&YFEnd@\U2-pHJ98H`;Urg6$,'=/h/3-5'IW<T=W?n#8kTKIqfTMO!RS_*riu6Fo
+!C#]"p7UO'PSu_fZoIf19C4_t<=_]q+hB:sP:#AI+1[#Q'&et)#$6u at Nc9_&pH7dN(u@?b[&g^/PLE*Z.?TqJ*LSq^k&M@[
+GhAr,#MA_%lT+T<)b%=b&HLf3F=k'9)U,lYEr,leqK9A>0(fmVRa/CR?*Vd at 1GJnQ:Z=.LE?fUi;+u]$j*-1]K9,O@%K92b
+gR.j=*1JsglE:]^(]W7IL)#7GJHIQ4%,dSV#7c:/!VM__(FLW+U2ET0 at 2>],$t\)eY!M27[HAWAg&&*G\5f*;g0hge5Xr-s
+5/UXYhiiL:`]bBMJ$>dp6]gqJb=RVHD$ui at D9Y8s/)GaGXg6p>UoZ7bEXZsF0:6:YP2jq at Pr$m=UD2uJP,<^rIlQ#0Rd+o1
+'YQLl!pL'$O;R=![GIa:/LCk>,hbn.SnpZNC2tST8aqm\>5[p&Q@/8+r)<@ZR2;Je_OQT[(qdALTSW->Mo<;Z!S"`!<kB0.
+krKa-3.D9V[%`gcQO%I6/2?cEn"!(N-eD#TMYK.EK&0:;(dE`5&1koCJ+Pua]lr>qVb+5 at rPAI!n=P/QMs4m;PMUfR><GR#
+nGi/[]HZ:qBB5s13W7dCE'ur`pLD/*l3fh"-^X*uF`s?m89_d^E;?`.gAg'c:VX[;Ug#f9SI>FeX(?"uL6_/8i&rJ,1)k(2
+jIskm&K;ZeIRfJ<LK>4,!?M>S.:_*QH.=g.1JcXh at d[,t:_IS:?5898J.rlmJm3b8$8eQ:^<D^f<$YRdc>L\[^us>?bNI<i
+FP-,UGoUT:8Xn2``6JLZ=@62k>>>b2i5h?\:6Zg:<_>Fq_[@GTZYq@$7--f$!uCu'he8667tP at WFdlG_^crL^FI3o1)//90
+Ot+AY#%Jq&":-<$0b7tGC7A<0Bi>dGZuknTWOK\"M3/N/LgPpIF23a_Z>Ocnlb=(s!KdO/YFgm@^[TF&C]U3F5'?Puk$'Ag
+WL<*Ih74!."LA!taVTU4U^[[Ml@\WmN8="tAH_ta#[5YMBp4>CNamDYnXh&;D:NZ+S#GA<hX3BJqFDeNr,3Zbe\(A[ojdKG
+TjPYLUb#5ekWYS$L,s(Do^bNfpRVc%UUkA7G).*'/_r59YWbqS;;KPqs$-sX'\8Xeb4e2l5Yf(XB\i'c)b at tti,_\M;=bO:
+$Vhr\(G7j7\j?13YKsL$WnFh#V,=`H;82fnIp+ZPr.Nu[>MY&_Hn5/6HEc1bL8<9Sf>`b]KMh"qc5*DcKEMW+%WC/mGcGd<
+qOC at F4k@W/#nS=- at t4@0gPXrS!2%&b:U"oukDs9Unr<!k?Y9j6I"9fSI-46(n#]`7Lrm?[rpUsIo5-<R+9=6 at .<'tM>^[-c
+CpO0m<Au[pN'TXX(#SgL&)m3u$A;shUusWSiN7dEA.Gilghu]Aa at _+/(.]/AABWHgRZG,`V0f#fL`>\0\VTT]'$Z5\pP'qt
+&,ClF&(h<R(lE.99CiBe:/6->h%#bf55L_WT7"gD5BPXA::YN9O5@/)M)W32rAX.n_MpB(Kj[[f&Z+50ePCr"a<023m"5!%
+JZAo+$Q1H,0-%MAgeW?-dc#3#eq^d at cX&5+F at i!sV)^SOULm-fdhf<&\KYIFi481&:]?V,4"o['WhkLP-6A//Mu(P'LZ:6]
+7?Z!2e]-V7PO"[@+a"NgBZ1 at B:[!r;*_#fe26uF;:/W<`l:%NPFaMN3adG`?d_?t>GQK]Eb4[ih<a2c)]rLDEMDAp]i'7U!
+fn7EJe1_t.;"qLFe!R1mC:UQF/7iD)-_tN"@[9@$^UcX```Ca^9mdOoAJI5I\p9IB71s`oD&3S0W<@&k"ud+8]Ga5.jboJS
+\&aLPK97a_g)-/Lh=h;',:JM*GUOq+Ip&M?B4r/DNK]qWl__E6+!it9>M.I%XS3?\A3$JrdY6j`DH;3Eot,8D@:WR(RT$*r
+jEr`1j)?uRb.VjA<S,P'&X+?]Khe:-El`r*Em3g6j3\<mY`npQIWhcYT&t;kZhJ*nnh2gsOUXi[)QWqRr:iQa+Fqf=OTDb2
+8Q!pr+N:f!MWuEs-<J\kCn^+GN]p[!pu`kTDMP!iTl8=7eK'3 at -.S,G at 2\=1 at OqN$q'`#Y`Vm<6*_cjQDUHfgI3TPj?7$C_
+QXDDH$XkSTLD(n6lS*@/f`+2]8`hq^'Po.Vb]>gtndsm45UVHhT/oXn-Z20b3]1a47n7#/+t%M at mD,GLUKBf/48\C9dBCg$
+rN+n&d`l#9!Oj2T"-s at gZk3Wc-rhdVc@Nea3L?B)ij1=Vp?j:=2p at n78i]"E'Y#I7$0iJee#$GB^86stHm7MaO?($rOCN?e
+Ee(Hl[6[clbTNiqThPumI1tdGjNKn71kW(f5;l0dJZ,dJ66m`562f';fSlPsV!DGP_>-ksrcW-Jns2ZlrJQ^3i<(W4l-GbY
+g"mXe!U?[6ih,!_E=QSX at 6P5.#B0[b\>0&hU*nf;rf"dDTdiWlWQrj())7 at T8qsphI`-PLpdJWR^k=(t9+mUcUg9%nSsP`^
+#EZGIa]5e$aNbu8ccK.L>L%q8alIs?22a\=(E$8Jn^#S;-W98,rL=ArGmT=fa!tg`N3kf&U&'WN[<#!*ML6jmFMQ0O&d91j
+W7a;+0Mmt7oH@:5Lp_'<K-A8+,Tb@@"hRRk\[%#H\g)sXd^Xj3KPuS-;HhjJc@^AgYFa_k98t8DrL at 1Q6rW_*&+T,\PDB8<
+jBis:cN*p%%O2HKP[O at BgJ*01kNW$4JH,N/m!ml[9n-f2k8qi8?gA1lgP\Nj>_[]jp(XV\fo.<a"P5dIcIe6HqqTPc!b,(&
+4WdbF?5ne],*WL?&*Qq*qd"+U+bi+(mI3(^A>-gC8<9IT\!=$A^chqO<E(FpH5n7NBkKISp>_p?88B4)H:P#u5YGJ;nkeHW
+X@'Oa0:2C_h>JV[6,,)Ppg#s%IBA/:0BA89Jk,G<!f)F'6C()AdQ#S^f,(tUWXMKm-XEAa-uan?]$<lMh5l<jANh?*-H^l`
+'IcW[C1YgO at XUZW)KZ2:\Vt1TnE`%WEB%9GW8`P1X('QNBFl_cCa#7_N at 7&V$&n0XRp0b!UlduVA*OXaPgW#@!31PF4)Z<D
+5em?&]D4.DX$d09DpYmL._h<+]/pqX_J2\.J4T^&&&uXl<WKV_-jL`M3\n'dk0Wpp,]u]*n]Kr<YK!`?6-F at cS@6\#'I:#U
+I`ajVX)3,Z917m<8G/n,Z$]ag\i;R9)R?:)cTP%5$)qKX*j"kbG1df!&q)MX9:/:U^\RXD+c!>\90C4:h;bB at 8up2+g8NIO
+bm\4E"fb(sD*9tWcVs at iVhq+J&AL9G9(0H`MQLQ6)j!NKCqi3F+'P8#M]0-;#TrOh"-m/Hm98G?H!B((&Zmt)BJ]J'beVTJ
+.J)Llo_.A0/@')8gQ&Krb%W>dngl(U:TBr,^fpF3]^RmVf,m/k^LJThUYk=?l0mt,^\e1Ls.02c?D=q;^3_H\KC at X>Vik%6
+F*Bh13`4A)6eaji^[b0L?>$;@L\7G;]fDi`[c`2"00+/OE.bINY7-b[o2=p^A0L(KlleYq&"\4e%9Xa1EWKWnZcru\++m-`
+/hH(M[>h8;k=I\J*K\BmeCF1ObuHXjb:-oJi[`q*#g<hij%U$hpV2r1Q7)mQ4`dhiBBf4c\[=X$q-!4eaI!N+^oE9oA_TVa
+5s7$$.)1:2]:X&;jA2AB0tTlEl,8to#HWqh*f=:%:t#IQPB"#FNB"cFC9TA\OBa_8ROb5#1i9+'p(P+La(p_e%H"Y<]c!9h
+j=GoK55CQA#KEN?Xd7NND^<*]muWVbn6bs&iqXDVM0#`3ZSMniQClK at _.FBC#NjKD>*1],)tF+9\H],\eS?nHL.VAD,B-"(
+4^A-qQ85tBQ at X`Z:+d^!>dLgH&3'sLej<j>W4GUtO(;HN2he1aAEL4LF#9 at iUtPK)n`D-i\;U>kN-''ll"m&7hDghEJL=!_
+Eh,Va4&3?Zh1'eoYN*nULbKhDB4!%^aY\adN`7j7rGL?H<c`m1`;_/gmATqV#scSU&!A`E"GBm9WTJG9"-/C;/:WCSfK9(\
+p9)0hNUTE=-;QHe3?4ekh;G(<G$.rSVTb6[$1Y8`:V:Dp?TlX/C#QX7.,a!=4d;hKJFE]B%n3q(N>;?qXZeus$gU?c^kG5+
+&k`E?+J?jP^&,*bH&1#I92@?2+Sn_1IJtt()t6YtE#g+un:,hFO+3#-_md,+f*=H)Xsr5POBu-qKuc-Al<B*P#Z`sW45E!@
+)U+C3#Gc!L8OZi;NZ[&L<$RWq!01J$5\g.Xdas at D_MVd\ddNinFE4hXCK:`Z:RSmTQ_<I@%4S9$d`sZU[j#*2:4>qi=EYDb
+Yd15f]-bdO5?"t,5!bN[f8"7AT1!n.9Rr]cl8ItHK:+s0JffX[<R;Jp$Vsh_(O#^ZCtg=G0]dO?')Wos!Q<BQH^%sp at T0Ui
+Em%e/,hEgAD@>f7kE=O_'E&'<_suHu=R42BWR4/dj7QJNhb73mVjkhBZ`Tr]WjK4i5=GNCCngD;4&MVU5VeY$,oKiZ'cuQ<
+:9P\*rq<dn%J97'=dc,<X]^)CgbPX^`]U at i_d,uG'4#MoC[aFb($sDd4<@+>:tfT7D'I7:%aO at m2dS]YNs*ZWg"#M213lCj
+mWeB3Da4&`?&uUhUuHb#i^)u48P=5IIXuu at Tm2`7,VVe0Oea:Kqp&,X)u5,u&,Gf%1\Ldk<XtfO3`J3XR6R#[$9S=)%tGX?
+HkP7'_3<>E4%RnZQ#/IB(hZ9O0rC08a8m:N7t*<el+K:(9<EJXel--*6f>\P?VsG;L7YAblUKe4&qC1%b5^t&KE(iMmQ?QY
+=2_nef_X0V4Ub!aB9:_RE.?UMcVCP*lfmq[&lONR:"e;$\8hT/"2C)9(/7=D!7*mP.=sdM(`!@bedg&SVW2seY+%r%;j1A<
+K\k*aHHiJUT[XKmCM!4&L70@,1-K+7B.^+/=]hggjrQ?qD,b<KiZW%DU+f[t?c`V=/3?nNF!XDL[(JAbY%V$,0dN7o%uB?n
+*J8p6Mm(`!_1YBr<<*gN:#.Csar`A\W9;#GpmcF13fhqm1@&>Y9/<;fe]sB%M1EHD#[g0>;FI5%Ne-3XfQPqJr/>;idgYE.
+s//IUMcB^T:>Ss!/qK9>O`,l+&pU([7K_ge5pS7H<;W_8)dkmbBRJU=k^=L#I1^:AjHKP<YJ[X0&J^2I5agJ0bXD)&pM].L
+jKsu;/Y=BZUGYc6L5bb4DHkbrBQcI_Y]eJl/5,OM^8[,k1btN at 8j\]VMbds"Gq)0AerUup*'elQ^GHioU6mnB^A`3L\uDgC
+lBIsJ.\Cpsp[0X*]U:<HBVEYLU]dlkLK\bWQ<PhcU(`/kdH_"EdM`BKrT&W63CO">/1G*2OAmJ?:J?:ccDk`leiB)ll1RVe
+[ad9kYMg2$A$:CJ8[g8M`*I_<jGs.:p[!@GNVn;tggT)]G5e+oV<.VsTOK$=ePKGK_L*UXR\Yffp#MK1'EqSg[op1Qg5LZ=
+0<3T at K^$=%M7l-o9El)GormY>6G4VU1k//R4e>8!!@*g=-?V\.Ykn_c^#P at 3k[pNFG!#\Xhtu?6gPY9l#=N#@T5Q.ZLnjt0
+__c&d&V;sO=]q(gL<Q'=4NQPms8TFsl0#5r6NCklIO?_.oe/OVPT9g9p!\D_P>q]LHm"pXcgP8b0h9n=^+WW\QE2^<`O32I
+9^+mL0m>CuJUJ9XW./C3)YY5NL.GN;e3NUiNEu&7Dnp$T[L)P_,HoP9A.RLrqV-qP3jGZpHt<[7L^W9>;2Ymb4=/,n.o.gp
+)(UQ(bR106ckK@`k"?:o\ei)T,k"=/8XKf(:^BB&9fdgr"LO3HQXKSESNn0*nQEquh<M3pi?Ef2P4D*V]S,d-Rs==r6im'i
+6nfm3!&ImRLT9[=b$]8bA%tYjQjCgu'1o0u:@c!AJ_K<1?Ml5&>0)?].Vp,c<tt$//(b$*rleWLVQCaADGu7KBJRXV_n+rb
+SLl7AE37i]WYH+9C9Q`b7U%^]?,DcIbbkC(,O.mtp/@ps5hc.tVcgC@,\sPMaFMc'\,d3M+c#;!E.Aa8+^nJCT[l_t,d?AR
+]%u&E)4Gh79t;L/cRAmMCCt^aQA8%aF1Ch)C,T8E,`,*X8-?@2gA:#Aae==1`u6IkU*R.VYfp#3)`n@\J;SMt;63&6><>G/
+UV/j=qoBl7^#TiN*VcO>0E:fR at KLocBn,26C"D/Zjt+KcnDj@<W\!`!6Z1oa<Ba6HG9u$\)8\!AJgi9CY<i<Vp at K_@S.6kR
+*d+i*@s4FtP3-qLPB4mb&SmIR^P/b2UU-*>hce1Dn0;%U/ntA!M5#Voj1jb1*[H=_#p'Q3-rtMMh>*H(K!Ql^Ra`*Rj0?sI
+"Kha/DO at I-X;h/Xj#SQmk(VqOQ3iZ0Vb'E$&qg/GHT;X&`)Whg\+ECO>dR_QPHBhh71"mVBXFYu)K`dFR$E;j?Do>rl%KsP
+jP_><:<K#I.,$9n;n,Hm44`;oGN]*<@M=S[i^+)M^d3X+_^#fqL+(06A2b\N4h@/J*Th\giiG/c?(pT4']m.>aX=n6[J4Pe
+H7[?/NokhZcP(Nq4n[iJ4<o-(k6m>6QYR:kBeNIOc2+).0)>pgP'#`r8tBC:(G[E_6DI&H!k1t<H:WpGD1P<3C at t@4UZ?>R
+"m;T)":3G]AKitn&LgF+2/Q at 2L^.2=6V'9YY94J"C#V)MUbo8hDZ9I=3`%O%@J9q,==WTu(L7u<i[]8jF3E;el7,'WOK;Ro
+J\m`("sP'@2kaLlG8t=9m)(G[YRNn<:4IV+q?9>(<t8Io$j(tUCigp/@J]'HBD=imc69939&1;Pg""6^<o>0mF91=$R[LXZ
+SrbW[.$]HWVX8B?:%/#,D>>:1PK=F;1>@(7hVtk$5d:"?c9'+UB>sZ/1$#IZ:>1dT$>TN>0mb3]fc%5/![Lj(CoI>r?":6u
+\O9dPTsrK**'5SKkhc&`p2M^V7cG=`INed).I-(eIe(K8FQ48R\3S;g`.c_J0PVX/4QYH!U,Y-S%@2jC-f1U9phVWj(-$p^
+3X?G#o$jPrbXn4TS;2d4AeLOWRLR/%fpcgbS1Cr$[]c^q[RC#kaaLhk**e;SAY7:=#P('Vl>A]WBS=l0D7aTn(=qa*QJNfo
+Q)oE`$8c\tf`b%Xf$6Q%$srGo'QXAdV#JCTlj)/I&SI%/HfHd-H\)$TXU=8DRtEk;Ccj"=h-t.<<^.:BUhZYC_1 at UNF-B1U
+'RfB<Lnk))4eF)d/'9M\dsM8#d'`gL=6"`a5C"!DFG$o1-1F&nbAFYoo-5bbg4[*NN&c[Cq(OjY=/d1<%oMm(25X0!8fB9Y
+<dJu"!"o1/RAf*V&0XCc7Vl*`-ssOS at pd\as2AV*M\+<0g)NP71+TRHQ3P\taJ6?9N45C#o/f^Xokc)6ZM<I(EcqJr3_6mt
+)5U=F_V8 at Y$qW,\,71eWZ[cQ51ci\&OQ/S&pp$H?C^*2mE6Jr_-8N[g<+=b!3Ai/Enq7#$pKmme._XT^Q3D7;,*<dZ,(V%&
+)V.W<YkWGg%l&5=m&>a<@PgH+GpE,<*tOtnEhl:*P)Ofd>$JE8WI$)D2?4WlKDVt`8Q/GEna7;FQ_[Wp!U8-I:i4_uL.+Q<
+b8qJ<$9XZ[N*:V[EM%Mmb<rI at drMY<En$[>HM_K$C">bK<lI%6:SND6S^^Q<''n=.fj#93lk!\e+p,%jW^K_1<=c;r4#6a.
+q</ik*reH91R,Z+rD:!nqJo>tHIq'D01_X#%6ESNQ5'D/5^7&2Z%0FahG=NX'?:$JauUEIE/a^jqr58oS3=6#,VAVP;kFc;
+d&M-*E2nXpNp)`g(?FQ9bFM==<1W)14+Zup<CT;heE'oaG<>eY-(h]Jr8W,K2kXLhO5Mkc08ba'$g"VIPWTb)KrOZY'&G!J
+UsI?dRH4C3^&Ql?)SdOD5a1oPDe)(\Qta?s*m"?X*P<SHr\Q6Y,R=)Flq[09X:n#eJXl?-f^VRD1q5!8doBVKEGbM^/m$rD
+C<h::bMgN7Z*hoc;Yas^Siqin_6b(_5s1$qp-lki`CaDP;mV`E_8V0MT91W*72_>=KnODc5&iA>ZY%mM=RKPD+A0lMN$B$L
+JRjp(:OQiH+Pqk1qr"Tg#`iQjZLe3EPhR2'CL2fon,6)nDt0[_5ZkDkO?\4k""WqI[Ql,bqA2<5V&.^=OOJW7GAE6QDk\[N
+BB*`Uo[ZigBH5/DiWFMAEi8M>#=B3O"Q:6<ZBR8.NS_8UZHQM_!L,1),^Z,-e(u1WA%BL^EM*W>"9=k<_,=2 at P%n2I#$JDe
+!'3 at 28HpYt+n8Whhds["5+'tI@?5=gK9CeB+=HPhWp#W^og6;,qu#%U+N`oX at b5g9%$FFuT"pA<\JfRgKf/kiO_ba)pj(Rb
+n;Vh.rEh at f1)Q_$M8=D3C\f:VMEE:BB1Q?kQMKIr5KRB#<<'T0'8sJ+.,eY/FV,TNH?,B\7'U,.ia2s#A>uJ4on at M%2J-aC
+c at o+E3T4&&nO7la_arCC`i!^Ya8>J>hOjQCIE;:+/6DfN]cU:LWOAq`5j8o]8r%PZ'<b.JW:46M'T+_Tb*&pX)8b?Z)BTGh
+S=T3[9/p at k-$9=<l"$.%K:>3pFKH7Zc2jLL$P),&\"oC73r3#pH[Y\_V4YEtpJ6->6df3LnaC9Mfe;P1&>I?aj[c&Y8AjJt
+'rhA03&'TF?Ji4Mb=n1*qVUd86>M)B<;- at J`n at J!IMpo<nNbXLT0J/\'!c<8aMrLn;'!U.kK'ehE'5M"cp5$%*C.V"DtOM<
+gPD\M at bID<7)#1;>srtCSh6DB,/EIPm!/01\nj&Bf5].qRf%%@,;n3u(mLo+8j.a5Yp>cG%"TX((C]O\81VLoU_!$r8hpD&
+h(GuV1(u\Hb(U\\/Yl(FOu/Rb90RWf"N#iEcrGr-LK["T(S8A)j*0eZs!?h>1"I=nB"q\N_S#BFm?V$(*'e6dJeQi at 7[5R0
+K#.E'QK#oD9658J[R4Y\K;dt(U=eF,?grCLVj<3a9?9VJe7;EVeT05V^CrE7W&\XY_\0C3OD[s[>M?j#1h7SR^F^+.<Ab at p
+U2haZKRZ<l^APA#=*Kr<%S`l'92q(lW_1qB.,+moWL?[mF]\3$?W]4)mfDBJ#02OJ4X`UD4eFtL2J<(n*+[mp#")qun+CBq
+_-s`WD)@i[#`<asFbcJ`999>:@G;i+f",-ME&/),iqpEP)X7=k+LM5AfbL-jGH[(_0$=GPPSJo3$J=Z#9EUXsHpqMM=<n^r
+aY$2WXJH*?Ja-WbTg'tr.P1Z$;&F[2"CgFk>B!T1bK(+lp_hD>27h+(mpN=&1)9CP)g4;U,+OiDQcRX+PWb8b(q--aKM#Yr
+3K4.*QT$"9")3Pbr5F<cr;P=CM%EH-)F-[+XqG^[nB,iZL7i.OOo\4jcR6iAa23>eX%]]9$B!A[c8R-Z=N"kFm"/S,No.<6
+E89)$VW&l,<X)BT2j?^l7rSCBV@@u8J+ugFD)jS9=0`OP)[FI[Z.OO;ALML=[3.FN7`cCXp[TJe'%[aaC;G^C6<)EV"Qh=u
+R>_A]r)V$\F67uuKR$SHV0klgFVBH"[GcX`;Bm3i;6Jn\ZeuPg#'9Cj+HXE4?-Xbh^&&*p&aMp]N!=jcmrn1MjHAE+kURm-
+E&T/m83cp:>\\\.)!FZ]Ya!0jkg)5*L9#!&oV[CISd0TIi at 5^[\7P0*nC(F!:8)8$-6^'W]k"=a0mgu.R.2RQ=:@s/eJYBW
+76qqqYj)6dJ#S"64H0hmWk#Q=FWd'_M$G<,kF*lk<%YEM9]\D9<=>YZdh_"H1Y`8*s(g?s"U*SP7.*\\BmiS<Z*;:Af`dQ<
+V]7sg*k0s]DudPT0Wt\^+N]/8_AbPodOsFW1sL%*(nqS2Ng^m7S#"C3J,4:'<ig.&c2%S]g*:Ib".H))c$$7gIat+oW+2L*
++j3>?lEVDLQ%(&DGuuoZG#B<I/k8rNnON?Qrom4B`Z_[4iQ(@c%Y0:neG#(T_(_XKW2rrGY\@t'(T,d<LT?R8ZtHDn`((W!
+#+@,^MV;*dIWa=N4cFgJ=jHV at I?sat,F7*4Os3Wci(\>SR(K`[cAXbaBT?l"[W+2`ihX0VQA9K<-R)+2L`IN-f8h!K<tDXr
+]T3b"jRnA-C0<P"9h&[*?;#7f!54Pi8Q+t5='pD'_n at 2/*i"CBr6QH%=1t1MlWCXlnUoNpF%c5ne_-7o'<\LbLQbm3d[:(`
+6#,Wod5>,VJa"=-*Wq3Em8-nhaI5ph!5X*2]UTK]JL]JKX.2dO;Vql]YVt&rnM'=N+36>8!H7Lt:m"P%BMr at c+'3B2j:A1>
+5e1c24UE@,%)iRM(AQ!0^6Aj*q5d^f&[?WdAH+4N'%dD<+97>GOsnuITW`8qkn_\;f8uCrF(:7EDpiVj\q7$S5T)r"WJaT!
+90HYj:T"N'pIF])s52VX>;_DAGaCCGkXa\J<h*o&*f\-&C=q5k4Pq8$!\8/=0Q`+lLLUE`&[PLu9lo/j'89t^.K-&t;Hr!2
+2k\d3ZmY7uC?Xt:Jpg15W0qut==fXU- at I[/JshDE(+Q?_r%UnPGgZ3m^j1AXjb8h*ot6N&RpJ&B"oU*hK6*91GJ+A/;3arB
+*?Xug'altU<,d/=PI!N)Dg'G;gjJ>#qZ_s<7-%bcZ!=E,.443a.7mHZ""btHGqLVck8nSVE^1!^+DcK`,hp/!WoC,n%pVhL
+Dn"bE+:3m1BTMp!%r'EU;RPuk98sOY>_&uQ:,YB<=%R=,HdYN([eE$UL!nBe$\)t)!^PPFo`!`Rpg$&S49)'*@L;1?4[2MV
+2>Ytq>OTuR=m[Lahcdm+gLY.S-\l7PBIm>:bPQ3/s7j;Qrph4ur4FDoWB(`l/Hamd38AW(VEM,BnZl*8h\."b&S<nIm/K"k
+mf=b:H)(h?M$eb9?F!-h63r:552?Jq@@LeJ#(m4T1)XM`,_REg'F9Sk8_lNs"q^u)"G)@QRUeYd)k=Uui6CTD^$E?Nm]Q$V
+p"!@?SZdB0)H_>ts**WgkF&6Gqh-V']p4Fn'F?QFJ^_Qu!.Xr6o#FNL7R69:U4a22B\8U*479GT3dcP_G`FEcbA\3PX$`Gh
+,u0"fSS+H.edT)q#%uF##@@DP:sJBGo;FUj2oHF8chLEcICKe`W]$3 at V64WQ1W^XE'*Y>qq"^X'@Y2SGn'/BrZ*]f8-OUAc
+Q>$X2+_\1-QgMe?d9^[9K,48U8S>tuO6q;No8%B7F;$ZR%#5k5d_O9VPg$AoKpJc<"ES4LGN7hF3UJ9K09"$/k"o'H_*W77
+]].:V]dBpZ*C?Y+'j%pKnlrX1ATB_)d0G\_j0sC=!YQ7l?&STUU(oW\Fhu)CNSIXag+2!^B!a3MrYu_+4chRqaHLe'@.g^l
+$5`d$K- at O]rpom'oc)QtJn>#Ff+5=bcZ`f?oj-6Wq4`k]rA4$Cp^A,oiq3nAo[fr-lE?l^UJ?*ob^&Y#;3.rHArjc(6Q2K9
+]O(,on=ihY9tb-KbQpE2Q8:1GgK?t-.Lt/9@/E.cTog]eEU:%kOYCb0K!/MWZLH4<-U4lrOUjh7LA02W-B:qmUGG0\dQk at O
+B at A)k8O.9>bk;tM8;<J:!>N at E\E&@%5#QmC=[mP18Sh2+(J4'PeR?(*O8C^).(Z(+-_MfsEgL8XASJeo^\4=ZN;T/0k;a^S
+W\L)`YEh(#]53!bc at T=.e)c\,YaJ4sqJ'18*#B6_aNuOO0SPAUI(XOHa'\btP=_>5:e`VOH'rOMK.M/.\NiP5UcTEgiG1q^
+;<i&.W>fX:>nCU6H2?(sh_4onXEj7VIeE"F!]_8Z+HIeM;,9*>]--dQc"\\`(:iHj^5c*:Y0&i2`T$69"bDS_.XaYc*SL),
+6e#<?IX4_[Z&g:g_Ll)5X0TsV*4An7=Bn4rFj+Q8($(V$qW[]l;r?B)b(TYn-&Cd"SV=D*1;iV6\_F.49HJPr`TqY8Q-BSm
+J4*qu3;99\cuO at ScHlD=$n6>og at hp_P[Qff0Q9u5$'k"j2Z7D$[n0qeI/emFcjH\(jTZ0\mXmjkRGGB8$T<EC^R+V;`f+"a
+k?@oR-*+pm/C-RMagPF3S,#sJ=SOJKbP!HKbL/@4+^fFb&<Yj:Xu3gBp$0PdC1eZ>]lYCIh\<b&:/98]k"2nP!9#S at kEoUT
+?mXJc\GA6_&pm&=q9,>9(Y<@J,1LKt\2W3^K+iLC=pO9+`%\>;?bT&*c43 at G&ccn7's at rJqq@==6$d!;>,2OnKuAVg/Xb?b
+YQ\^p'N*ZJ`m at F&JTB<^@pWHX&0!'Z#EcQ;XGBl0)a_FnS9M.e_4_E3EJ#-ebp60^Y(A%7DdM#HoTdNQh;Vg0q?;.5^2,J3
+r2=]6_bm-<8ePf(k!0$QpGAG9)m`Y'W`S4d,p/,^+478QQM8WC'WddkffnIM/aO;WJNDiRIACEU>VodG=#qlXC,.LWo?0h<
+m-M[^?_A-<L=aCfCIq>aO:?3+%G"MY-d6fC at IhijJH;OL`@9WeLD3*m:-`'ajT9$M$tqZFM`4);._)/Zh%epsY0C6G4!HDl
+2:E_IB*&,sj^7l`);jWTZ3Z%7XgHnY$0hOA,KVWpI!OnM;1k6=^?&3C`ZZ9()3tX!NhG>>fK_rlR0mJPE.L2`jN3J3R_p=D
+MAa!./Q#o+I)"]=&$(th//Q2dO]sR!XEE4S(BPNInbFaKp4;9(mtYe?@.J*ZG)A!s-K23pU&H,,=cYfth6f3e?SOjI^AbI2
+EFOJ+i:0sqOu$b^+4)\@Pm%3QDNo<bB4^VD\L^sIe"ZEJBdNjH!l'%e9+An"4q5g;*R<l>h5A'sM[k<oVPERcWT519]7%a*
+J_++(khG6/pQ@:&j+WYPN%(Z\'uFi"TtdO4Sc<Ce8V6`Q_$niG+G#CF_[a=T/#k6+qp(Nbc-$3K=uD].BSb4W'ZrW[8Qk0O
+Pq6Vp6k!K*bq7u;0,cP#<:5R)T8S3\YE3#a_hTeZXVE?E+2j[Wb,JnP@>G7VL34)+n#GUS6t(pM>!IH'],&0fHuc8J-%c-j
+V/B"5hbq"\6OW5)!mW./4TeYhH9im at ZXa..'?VaJ[DH0+fk:[\@K7kY.\C).DIC>!<7QIgi^k0.Eq4Kd+N*S1+NW at AbQ]:O
+<8Toe1,0Q$T,n^?^&8PD(eW[Fkt[[BT`!]n4OCN,;;JXl*4&hQ`#&)"?8m>,Wjk.P/pOTr\n_[JOb>+t[<`?b41IPW_KjJ"
+FT'rb<?Z8sPVmV:E0lN,e)Fd=P6$4oLoU4sXSGQkk+Z](UMl14".\:MC2V-57+K>]JHks;f5AX4Ofm6MLB2ZSbfmmN'KcOe
+:.$(i6NADH4(-E"FY3PTR&5KHLW\iM<I?61(a3.KI]]JlKKBXU:hC"6Ap1 at 0ePAP%;ARJo_XZU*W;22r/<[K0Va53Sfo4u]
+!KG[ri!ne:JH62K5PsZ*1R at n4G@R+8+4]6VWt0DVok5ZUgD,a#)h3,+dmi)1kIc\:!rZK0NTi8K+E69HiB=\$S!4A.(m%!)
+6Nijq8F:nV-ZQ.$7-nr9=l2!9`q4+'7o1*Dc98$Dhj:[uhUU593%V&p=/B[V]LXu8p?ja&n>fn<H1DUk7)F0ASo-*sfiH%%
+K-_GTon6KUWVl%X02"qT"snI"`toLE,/5Lk.EaXZ0%UNZg]d8L0TOtL>9hSC="eog*,"1#T2uQm`Q>&/'G:[W]bLlkF4G.c
+eS)[!6-5+m4(nqq?#VqrhU,2T#J0e7p'&UL>c:):qf%aB4"P0,7a-^JL(lB<'&9q%U$hM/'n%;W%;!I\(L$ktWTOXumne=+
+o-H/-&3\Tb_(.:b"Z#2VZZKQT:6bsBY>+\W4(t<*N$-FOG[i']A$918A'#lOXoJRgh(H`3.as10WL8*g,9N3eVIr-:[#fl;
+&Ctjb"*3)UMq6W4&iM!D8:B4V#p7XuoGg+VBk3<38X5EWr.ClZns)jT66Co2W=E/K+VO-TMFABldi;ue>`h`D-Sb9BUjNUN
+_Eoj.<m>>N6Zl;/Ri&!EoGd,io)q/;<7"sT7 at E6==kfP7_Q+q\&WpjMCP&=-/INsgLs^_7c>""%*%U=p[18<cb#3$nkcu52
+Lecg-$8Js]gT$IB10\L2"["@o=p,Qgng/o1GkF0LEe0t)OU96?7T*q_*B=%2*h+EUs-;')kra/gYDub,_5dcbP*q:m]T7ha
+\k/1G#"aV1fJFkPB&sW^b`ijp<YTJI2S47A(F'2c#5jsr;k?^,+]rP>ED=tT!g7Ul6gA",b%RNt$"\UopFbYX0Gc5^Om+a$
+b^'NM":RPu>,h`kH/."T=c"Rs8DZd1g$\?b`h*1:0Fl:/Q<PO4$DZDBPUDn!Q6h/&2!^fRGp^+bQ\om+^r>Wc]kN*[=3m5r
+.!mNR9`l4LJ+KHD?aSb$>UqY-S?0L81F,eur#:]B(X:VjoQ!`[lVoMSAjb1 at JY0;J's/P/T51:j>=^U34/(W][S/R7H\0U8
+l4sGnZ;s!IO!Y%n:b-)Frp$@9npK&C84B^p9lSo9L2ko((Qq'\XY5as0gnAAlj3fVe1d90HWf=_kF0\B7aR_%AdE0AhPYXr
+U&cs[R4T5S<nPmH8$Bp1$.\Pmg`fIUnJR at eHuLGU`trh at n5$c_T,7`Wbg\Q]^ZtKu(Mj)LKBpK6Gg?)<Jdla55:c&QV)AeD
+kdWKtaU2-k2!F^)cWg!:0GK2&EViBf036Iag()NEcG!_cMgDk\jV9>9/$7JL$9;mQPjoo=)ph8K1*B]:YTk:!6FMDRj#2m"
+kVQre4;c3(<Q_8l5Trf7 at q0(?BUHQmA6)u8oa'\QL/d:@Sg9(S,i?]4_K,\p^oigoeljpu[lfDA?KgZK<!SH`RE%dQ<Q$$V
+4?jX#d^/DO(V3ndekBHJp$F9>Z%quKdeK,EX)<gjQ;%5V$luD[RJkRdG#1l<\ESqgKEqXm`VknI/8?po,DnTq?LP',I@\ce
+"o_utdUL6PNfYnqSgF9'6[Bgd"$uO4R#IGYj>Gg!.qr1%#%CJ$-!]RQTo&)jWa%31B_N1kN)S;gVnp.E(,/AWq("Vhi!;mo
+VY/NLeati<'__Rh$Yg,X]D&:?O^o3<G?!85/OF]Y0r>U\`ANLbc'N3LWhtF+#9&sq[;pF`Dlt,=;k_t0Zg"Pr85D>4Peb-;
+,*t$FT>5u)a^i:qgSZBVY:jJnc!&bT$V-2&c&nQ:7;2oFA7WiMR^+NqX^s&eG$i_Kq_G$d`:O.9BYNJB&3+.DbC+Z_FP]HA
+HkGF.`jbS7#YDPF1?:6b+&+OJK#81<*iq at 1A<;Y&)oHfC260%)g at dYnnQh/\SZ()nFPY3b"RO6Pb5scpnlK@(7\'8KL_EWf
+8krJs?lkbkei#/tB(lI/+@,1bZFoK.K%7KH@=OT\n2q4]>[IGBH4hiT6H=%Vg)eRoYYdf'SGSgn,1PY-Rma#H-"k%G#l4m,
+;KWNu8FIB7-kCM-oH5+RkXPXT\AD-6k#DN4]Su<EDH\'rZ#dB<jF16D1(aSUA?u\con_i>A9aT1ak3?;&N(hc3Z(MaQq-O]
+pGI?_cA%G9 at mCb_E(!2Bj`-c7VJe$Z3d&3u2XRcXO`M`sK#AmgqC[^Gh;7<.qW$qqX5bRDr8PL(2NEB6ZB,<di:k!]nlH_8
+b-[e`:AjdsM34>qG;"bP2R_.S00]+JEOS3lZbNaJ=pYD?;\2EO<XV(JHQ"+'p7?/nBmImK^^hS'8Y&nC'gaJrO&0u[eY.S]
+SlFVmo1b:GWX0j#aKUQ2QaE496`8f1*I6'3(VB`+JN<k=n5i]uEZ$I:Uj7;mWQaS'-s3,o;@!CE6)W%\G*$5"q<jdMpPF#;
+<Ct_OOb>4.1QV&QY:>q2ieDk6)ffT6AH`n#HXi-#qS<El]d:!>lb11H?HHGGohhB_%%nC40kOMIM&OUChmkt*hdHcH=!,:h
+3<EnKMmnK6O7lMdA.!mX(<2VbV!EB1eKWr8&)Z^sp(2]'>E\TpH9,ZQ=DY77WLDT"`4j%Y*A*NWR;h<"m>k?q/)f,pDe`t`
+NO!d[$dbhj at CkD00iL')Y[^gAXK=j&P/1<2Yhg&RQj+]#TL%J%5nJV'YEb_Yf4BZL5eO#TaU$J2:Kr`FOjXkeqT0j&9<(u0
+aEalm,^[2Y`\[!9H]:<BZbK>q^QmsHKIj=%/Z?Ho8^\*</?0;(7YGd)4CWcg%QK:,<X>&L%aH#lY at K(AFJq^#nq9];4A at N!
+aUS;\)JYt^J9V6->#SAToqnGca8bY(K)V^];o;]Y at gZ3mW^#XUn[#ub<49^jS\DXXoo5StJYqk&<s^7kMu:^qVXCU9Lagdc
+VT3>8[R,JTICh3HpQXsoB%#H]490lKZ]mV]&6UNBi^Jt8*1<1.L0r'\e3-&lXGsokmr?3S:,>lgp$BTu",*/%k]GHWYN&\0
+\^d?2<M/]**9,o;!hj,.(Z`ad;<Cn%O34_gMRWm5-Ubl.JCfdq$%C0q^`m7i%pWt#K5eNDF:;VAGOsom[6X$6&YuRD(;U"n
+D#8YpR]Znu(`,**C5pq^NA%55<Z'<B5W^nT2K#qsk0)HL$XM1Il2`lrE5Q15@\<8R<M.>9KQ0PPjU!,.$LeV3d>H-.bN>^[
+X9FNI.9Ku,UY[V:Vr#ith<>cu4?7hUd8%62cpAEBFc8?JWCBl4:j=6I,KDP1">/QM>ndP7A`JX43\/u!1Fn!,;/?7qj?,,g
+W!R0\9<.!+f0Sf<QL76=M"jelk3/f-/DL4@#+sH3_;ArR(d1mM?IN'CTVG%>M(n8ipL7 at be;H=iftIqV5Vh\-N/#2+7@$;4
+-UPc7gtC"_"K9AV$G>%MLnUTP9JpAZC9\f,gd83lH8R_5BM\\a"dTGZ$<ZZ1n6!dl24s5m-9,C(;oddS`1At'f\6>o<UqPm
+fMJr1\tF=/;`Z2hE/<189'V^JNa7X=h at +'le]C*)]k3phnA*H';*g#d&Dd7kBD6hHQ-?`+Q;hDsbX_C*^)gC)HTuA'A\&.T
+AE8>MTG/fMB1fX\k*]k&^Rb=^/]e7hb&;:,9ao,l?H`JV#"1dq!(cns6Ki0'l4#-DNa$JXoJ`n8S^>C+Xc7):W)nI53JCIi
+n,ho$;us<j`gMR[d(Rn*%l5;uP0N+*d3&m$_b)?1UL$sB5-suEj[ikla%Ug^6ML8EOW\5rjWdNRO[=JoiI*;2NeLaUd;MJi
+[b87S!a=H9]$R!&Ld$QrjF^M(Ypp^!E+mWa97>O!LX9/Q8=GT0&\$,e<JZSJg,8+Mi?BPZI#2uS)HlG[]NQIiNEZ#pgu!Wl
+2-bRj[Q3FJIF!BalqI1Od(PLSedV*0ID1FfLN)%Je?^,2.^Tb7UH3b/me=sB%_:S!RoW!hW!BE:>5g!f/(ojt4;ff[h\lG\
+rqn<%@*US&lJ#b,ad/m:;aPY6/D\7okDKROp9KU]f3O(-%.j&Q5)0`9i>k']Y!;P_YMrlSS'8"el0(W:3kh(<Wq<]WN$GLs
+0=^9l>6\B$c8//$O,5D86$e'VaOE$k>Y.)/jb1iW%?@drO?<S!f1KGjE6]Ja==$V,T)XJ at dVS_e?CJD9Vbj`4<kCUK92TB%
+_&\RL85PO^i.f>H@!W)-3"jK^N2bmled'>];VRTmqgfF^"38EB5gnKQrO71"X&R/A^V+QS*)9_L)gcV_ceNb<HN1Ru)h2q+
+^NiUB1Ai-ahIRLWHGc,5h8NMF6s<OeC'o,W,ho[C2:I8i_cSV5'aQ,.5/J`O"&-;q7G'YT<jODtY'&L&4Xbo at cmshT:mnC3
+nrd_i!"sH=q at Olp>CQ6O\,o8A`nkt2bdWYCqK;9eTT2%*Y)!scUC)S<@4#@tI>%!7ot#ZXo'Qc\0f!%ffc,,M>T]Qr,tClO
+2D-m)*VOH8TL(@9dV0fq7bpf,@)+$Vc(8>J1)f'X*S]l<2g?^f'"@WCd$4#3L6`?3n31:!_O+/BNgXXL5Zk]J@<6uMGaYNJ
+&9pCl!!_6cKJakm;f5%TY;F^bL#jJ^%5WT^KaX-g5i<B=-?BF"'fA=g2VK'[U4oL(1'`7\UtY./mlKu(Aq860:r-g"P-iMM
+ciKdO]F,JU'i8nG+B'&nKX95M1\D4#DN,>>\"^]KDj:"aEpTQ2:0W)7PZK3's1J3Il16VYD,c6h?lmi&:gmAi7MG at bbZ:n#
+HY0U;cn1'-)5;Y80Kp3<JIU*s66iB%/t.2 at UsqPW1u0H?A>ge>F^S`GAF:eQ):.99V<n\jW(Q"1buW#?nVP.dhN@,cq?MEn
+bs7d#X'6T&24k0p2,+WAYO$mB%NGS++';)4YiFX=g_:O[kZqo#WI/1VFsCYn[*PX#-mehBJP=SIF9DNscHh57$Eh4JqAd5k
+(JRpflIY.AcD at F*A37l!U]*$qBt5[>Kfb2@)UO20l6rgOI?<]*.-Uq]=5Uk at +C+Cd>9r88M=I($R,fIcmPF1G73B at fI/H_.
+s-G)I<.ksGcTDEUR1jrMOBZ>^WAf2pmBA*7kF=2'e3[(_ at 0J-OFf-`DAa>TSOWl'g`rb9TF$nYfdEOf<Hk]RqZP+XJeWEho
+r+l_-IXsl2#fL*t@'C^F!,tQ&N3%#62aND5N0T at ehP[IZmss9lAhUg?de8J>$fPpE+PMd\"Sg"uO+\V/9cDIi#&&>dEK*$T
+$'jMXg5_'+!WuErhG3UlKD1cp at l`4gK@]I,b^@aBoan5X+9Za3j^Q]iDQ,qoFJr#+`;.urI;\iN,qm*;`-dD\8ssOI$'mS;
+rSPV.D$B_^APc'e=Yl>-"o!K>ZuONb>9AIF'uCO4D=7N$I):iOnD6M+aYVh:eL1D_YQl!tE9>\q"jpL=3t0YUdc-XnB+5;;
+SRFidVCBBeb1*s[Bn05==M_7:o'T4E#7NsrGaD,jdo$e at l0"*r at Od3-CsD-*$_gg/AAMCDVn<uJnn!).;A8CQ>FmNei;!77
+>_91Zg\<+&2RSf:pHEKZ:WNH[O!Ls?.Xq-&3+*Z8ggig_Pc`/hklgRrkS7F!,jhfH>lXc=JH+UHpdj94W:\c[H2ZJ<Id<p'
+jXS\^JI5$+lq/G1qVNc%^q2KK)M^,GD#'ff7,d8:+]SD`@#eU*i'e>,+MSsZf4;e(F145Y'oE,/\i$G^(@rf,BRceBa:[tq
+%hY\Yb/1.]ed?`T=POQcg*9!jQ0o$:Q5^]LcEfhef;0,TEo*','el<I;%FPRig#-Dh^+M.pZ'jro/u>f?\>,_eAR3@$RT&3
+T7jc%W]l5>!-K!WZ0_=1AW7IMW`L$&!!#B:EhtooGYAs<U8FcaF(Y2mPF&T"Qa\YE6<G=_Yo\/c/(/n*F<W(#TE4qKh,*k_
+EGEr/BH(XTLQ,epZ*<aW$U`V;aG9)pU:iBc)!FeB2<;D6Dd:5e!Y]`i".h/Yh\78uK_cXdBRDaEkfqXsr65Wk!@C)V_5UNg
+9VIE^;DTkRUT=T/aAF<_>+H)pPs*=\D%6C"8^X#F'`ouXk<,[,Q^?WVJK3)AXu$jE^(Q?@jQ-_/1sCMOoe^p=F;PBd(C4P8
+e/UY'rLiT'[P at +AZO@e\>%Ccbh<'e(i1tp4n!*-\8DB]R\a"]lX_A*GZiVhIIDZ/$LIM<OAse/;WOWa%M0.lrDF*/s8$&q>
+fE"@Tn'dt,]\?^a4>Ji,fR2(8QiJeq:n)Yl*g^?__XT11,%;SG/JY(n0CJ(p^$hgf^Eu7Ch^9_O3'@k8Y4+nq7'15T'#WuL
+D5_o%n#'kA)>3pbA?bQI at DC<=<,t;Q^^=uV4$(9lB5=0HP2u>Ya3FM&]25ZkA^U8BQ[pO(n0=[^6ui(>D=7>AG]'FG?sA:k
+29fF(fEWqA(6"jXK)&LIKucIfon.o-j52AHpuBMrHB!DAJ:[;q/NnK6Z,.iiobM^@4rA-0fdI_pG"9eDU^s_0Q<i@<Y$0 at W
++Eu^&0:J;Q9iSVQRt<?>jnP7LBSUo5!Y;0lNrR\:J.[0(mLWtrZln^23/_a80rM/0s+2%01J.`\W]r^X!Hc)3Kc6rd#U*`"
+m<d^]W'/(VZq)]kMnC(s_mm]aOaQCf#D'>qJKN'<kDnuqV8)m6CNp^8Y6sYK^4L;+-@%:iTHe(-EmEla-aKTLeLX!4&hBE4
+_gtU^dAhR&?kh[37$;Np&G]rfZYkJGM7'1qTPq%cQa3PfFmR^<2e[=<WkK at ++sS>&oULUS0WjmW)+3CZ,#>;LX)2Pgm$qf:
+[TQldkD<3fp->d;f!lRHHk.,AN;eaUXG/ptLfH3kee'-]SX9K7>f;)D-JrCP&tU*(H?]UX at HKh-=!1L?+TlP4m`=9;CB:"+
+fuUh["h6;/*N5uQ>1/>?%ii at -_g-HFa4^gP&%fh0D9;%N;^)$C`UQ$alXQg=^\HSk_sR4m80I(e2)SDe&.2RR2-/0adLYOo
+W.#,(jgI#N=+[D(N?l.9Q89R1B,U[*[Frk5,S4/CIS_cnk;Qr&'i:Tg?"<ma7gO>a>B8DD at HsC#;TeaaUem.3X@^-3kS4H`
+WLlE'Ra&(*39:&ck0L77neD*9P&QshA,2Ig!E*ah_TOc^&J9i.3k=[WCja>d*qO/;!X4ogo*uLU;(3geCZ3phD1'4'["k!c
+ at tb*)$NG(VMVtr0Fa8&&n1VE<fWU;9?nP!SI*bLE)S7*+B)EP4E/Tg(`pAK!p!$gd`[^_*0nS8`(h=pHZHouc$^;gE_,AIN
+)"FmMVASmS,'QTp68g3"TXu9>k]V_EV!<kSFYR.K<_,Lk4)&=ae><"<2:=N&X'%3"`.-J2])>;'!X>Q4X#^J;08P`D$EAYm
+U,6*:*@[69)Z4++.<A!e!OO1N"[hE"(MIg*N44JHj+5PtEG9E89m7?$[9=YeDMB[?A<>t1*$ASsMPcgr\[Jq.D0'D`9S7_H
+DCo_\X^2%O'@"seBGr9TguoY4:Ra2.)a&<O?O?pfA-*/B(j3t7E"S<fBp,,YJr<Q/"cR5'`i*kih.>=L(c8_o7EYprhp(*f
+VM[n<H'Y"uodRklb`^(0iRa6B\`r;OEVA"348OAc26Te6)Q9TejI1L"$`7)Z:dn-MJ<r)@VRLeVrbSA+s3_c>mdOfAkl`L,
+=3n9C4=K?BV2?4mE%*M2+_VB?]T!Z+QqAq2cgXX/.VWfI7Pn&><-7_aoW$G^C%\>2,)!\@L)*+4JP^.7?0mM!'."R_.JE%L
+g_VfQQAM[F9;2n>6Vq';EA?MKi?r8N_J"UBmq,_XgY=4(9jSon8]_Y-fAI(QZU'f$$q8%0Hh;%H0MYm*eu4e)JC'ikOeEAN
+!LFb'ctr<$1-H)j6f')7%IJoj9n(K!Kc#p!Z&RQWrUhNMm#^fEGNGW:'j28of8;<N@/g2QrRsrC*M?KEN_4h\f*CYAVQtnH
+M-g.5Ztc1Y$fKk[<b#Yr0UStP:Od]Gkm3S>i8XEb?1n&FQbS,#"t4+")nVo*^3M`P/6(a!?pb#3-=+"Xm"HB6]i0HJ32[Xi
+">j:iq at eH\=InSY3f):KSEm1um;"%fAW%X52`X1F?Z_&mF3Ji0'4".bV!)3OLP28O*4c+MEaH]&2rIFL*?\!am-.:hd1E]l
+.C954a4*<VBW]AhBKus!f2rX&hd-VVJ`A[R4u8DnSFCs2pg.T&AihLZB+S'8I5/u at T)CYgA43NV8+h1K+.kF=S;l=R]DRX8
+E;=R:7>.r/q"HS)nGaFTq,+=ui3FeRBBu6&RgaTDZg>]ijmL@(Jr+]MRrm_?+"e$61^7.6aJ(?J&@!;0[K>s&V-A6-=p)N\
+;X*,XH5%SAmqfH!.h*JAV/n at AX4Noq!r0uUXJ2"^F8nqI!$qV=Z#/XY<<3qoiVE/<6Ai"@5-*/^c-IrN,FiOB2'VL:%-l2N
+=a(8VZj?-Ibku['F3+=$RA3 at S1045&*S1;nLE3mFn,^nCbB(*RI$KDr"j0*t1jK>T67U.i?3\fHZ>cKV3@($?:4(f1%[59Y
+;at,l<K[TVU>(?LqSPr6R;b5S"cg3:W#a!YF+X"hK\d40QLQmWBpJ1'As1(iM]ot#h"Ijqr1JX<q,b8uF>!.GXUhraW@\8N
+d)44h9%2%aJDQ"h\:AI3QFS?:!lBq=mjI.u>kW&oitCGt#tm=g6:Pn&j4<RH_2DuZ4HmaK^$diUHMs)tKUc[hdt`1>+&juO
+mVo;u"Mh>P.34j7<MMZWF"Wk!6sp!:U>mKj&;g`s%CFBnM<_nH]/oe_]c1JO&\[JifD(<h at HGI5X+An-H<BAW^29Y`rH/B9
+J'I<F$k-EUVVB_FiR^f=Yst"<nH4JQ64oP>5up[mqeJcGa31)`^d%]6`6[?%YsDaQX#l$<^3FNT!s_mSCC"Z"M_,B1?'j[?
+iK]a`TCT622#Q'u4f%A_MDb_8RbpWhL=B_B1JHP0_=YXf8_\[<<40YIJ*J=lW^]078%W7tBHc$[b1U84/lCb(dGLu'QEqq.
+HL!nc.W1!42&NNPl<Ea-1q2$co3nE7IY3rH@\PmYGF)e]L$uTX)6269a at e^kk(%t+?rNG7-UZC![6tKldHPt4-KSEpOSU$p
+$<)K%-kC6L8Ttf#e8(=7r[P3$1iJiV#BHd=U-g>HeCo(F^PA=J&V\'^8q3ZT7o+P#rZ-4&e&PhiQ499TrL%C`=A8YOo&STZ
+cWXVk]\3P1VT6mp9HoPuS:/m$c*E7F.KH]7q(QeSa^\1"1oW0Y`Rm35\AG%AN4=PqiCri0,SGXQ,Xd9rl9=_9MKNJ\b"dX[
+P:p6\Fb)COJdmo5$8 at ZTO<k at ZSnTk\:lRpd\jOj at P:p+?E6bffR>;DWD#"rJ4[SVa7&pe,5A9/%LEV5aVCCfGYrRl(/nL8*
+rhbpBa+D3 at UFMO6+P^')1/8s$`D!__]2WI\RS,&C:h3"J4hIb5[^)l]olY\t%l)Cum+8>")gbG*Dfcd.A>NIa6\hC2Z\t$G
+%YAiIEe_3];%<`AG$k(mFYd6j&M^=J'3i\-T=l(Np6.^Jp:J.i]fu,YZ"u&h*Ngmc'V1N-G2k/2fiEgFaNH;*L44,+Yi(L(
+YZt+(*$M[RC/Wp!B=KJk*/J.E.q4E(I$raWKp?3-;8Mq%e%6C-!T:u5h>@SQK;E8:0KYEJ3b%a3]rPsOkX+L"F. at JHI,WEW
+AAHG0j0o:M72is5G7!#5,;!2s-4:aWeSR]rAW"#A#M`hbPg&Je1NAoGoP:``[>[9\K$VM^U&X]97c]fGRoY"68OUYe%pua)
+;%HG^F.I^8p99>9fhT3`"9!rr]Fs%?^E#?bT^h;j:-kI'2rLB>?GF6h+i:14dF_(_(!EJD;>q`kY4/X.Y"\Q%KZocHOLu]U
+-pm.7C</IXq=(*8H4:5TEV""(F0/cskXGpuh<X?:jQ1,2C"4e)8LKa$<,grF&t?)%-#,<I_kIZtC779j1+Y)f)IB.N7F$g>
+U`h0u]KRi(8B#%/4e&:PBfO"(Eue,_H79cZ/UA4\f;SHT:C4Tt1q/ilLBS,9n#44_2(-B!O'`PE!d6X$&QslER(JupVE\fV
+E,;C=`)Trba<A"Lm=Vg0QWppTP--pj,D[kkIO-4pWDIM*<PahJ:F#kD\"Tif_tSj-B,.tTZDIH/6K^+%Cu=l5 at j(okBr5##
+oAY`MJ-!o\ZnkPr0Si</IB71sKO6kmEmgV[hpbbZA(Bo5ItnTo at 43+MbV6DBd`4qEV%N#H`4X<lL."9S99jbc%X#au<pZn%
+SQ.IM3JmI(9c.,-'qYl!Gd?6-+LErKD]5$`K4pI.I&Z\YnPo?pGuC:!0*5Jghdi(a3[-DapVO'MaeCY^"%&Xnrlk\^?fbIa
+O3/##]=lT-H+>(3`\TfTP%3]T9Y_l8 at hVg%Wo9cX6YLThKVDFT6d-;TTAUm0SV8(7?bSU2S`UPM5U),0CM<M3TZKHWah$HC
+MW^-ujbq3s,cq$HpJOd>SPh6EU>UTn(iC\0$QI6jYQ@(#,1nI&,+dCA4e8#PjK;@X4J=3n\huuV/$%1Ym8-2(Jpi2R!ju\T
+6I^=d5LUlk,NZ051\.oRgHQFUI:_^lnFIWB"\JlUSP'p?="eprO=OY6+X:4YC8VW)J4rI:R*U"3QO:?W-k[%3)*PBF5G-h\
+V/h;q?G at cJ5mkd(U(HV2YRB2%:*.l-Mr`ki,PV\NW7]21CsDIIG^lEbM]GP,>o`(:>;?2OX.;uke-"XK-&KN.8)U61agkGf
+'n&3C3`)Te*[a(YbonWB4A[fkpZSh*P%k&^BcT&+Xq2V41=KUD:G*KeoqklJdk"sZ*6"^&VYLsKgI9E%c^4r;rY/m1>FEl+
+d`?s>ht5Mt*(cAE0^2BNcblUA^^E?lNBF#]e at mu=.Fq8\/(ni1kG(>ln[*g^)C:Ah45rTr\7b'UIm)qpX8;Y>B\-"$4b0-3
+T"D(MatdE=5Z^'B)kXP5bh-B)^Ubrll]YH at j9ia=RJ=+KG\=o3?Bi$u[.dDgJuZ4^L_8u#qA!Ap`Su;gSgDq/WS=tjKD"N@
+B$X77_sK>YhNkPpCSV1j'Y:VpjW.rd2ImVgZ?rX,6;La/_F(/^Z?^#\#eO'On'bS+etOkc-@"[[$kp-/i2'[=<:^5&VNsLG
+lPM/W3_ouF3q'>!qA]hMl<nQI at B(LSA"[?A4!"!MHE)1#1,!'$F,S$Z/nPuI6.++s3Ru5Vp#N4/Lkr^S%&i(TUrW)i5%d<)
+EuMKNHEJ3O"1Xi%hpNW\G+bt&R[lM:439[mY_:LS0>I\dC(]V4%+%7XR3G=L:[$j]&g4)!i#CPV<s=)<I[r[sh-H(goWYB&
+5A&Ug-dR0E?3I_?bt\RMKLl+hE#ojA3O;\!ZD1=+"k$0?1XY=&^)0gm0TblU$+ck8^]]!PAAO^FqoIH:)VeLWD)J2^%3TS:
+T1Pci-1,<_V_\Ea$EV%ZQ514c at GgQR\AIL=?fCsa%N>akA?mPP\SgT*<soZ)O)PRKS*saH]8#)j`mY+;/Rtd!o;-74cs4O^
+dt'CRhhEePq2Ze]&D(Vq3+H,1PMG$e2C at -4Vl8_]e^s[:m]Ys,8,S$tmkaBnSJuoHn&*go=i]Usi.d4h/<fO#&LNZ=aiZn3
++f[=_S&,1#EG<Kl.(nC?).t_<WZo\Z7LB30X;H5]HE9U_T0?1To"C1`;Y"T'qrL:F;>QHDoe7IA8^)nKa`XIp1W?>02]>,j
+f&o0X,Gd[Lk0_RE1[Sp\Ab_)9;h_<1ei&Oagqlc;_WY'nX<9AJ)G<C6#%t86GH0[!Nd*B;B+$m_2[Qg#)XO]:W at N/@O21hf
+ at B8*Sg!#bfDmHA2VFe@:,&:ZE(:*[r9Cba#S.$5j=Ao9Qktd&`4 at BQ3Dt0*>=DU_X30BbU4)U%^Di6Sb]#D&4<Zo)s.(sr@
+_-/_^#:gVr6qB]M4=L)r^tWTLW*.=)l1+pt=)B`1A^aN[[MQNVp)f1umrJSO(*Pu-AhD;@Gg_-t[`M>m\']03"o%p/6u:'U
+>UI+n=mH/JCLtUNcA)ZiC'ld"bR123!bgS[^8!j6Is3mgQ%igg1lK)N%<HH$6c$o3pMS$T&MS1tJdmKNpjdbKn]6L#H-:s]
+n#q!:n=hFrOd at hu63Mp6VE`:M,p3m!"1!'gWP[S%#H`Z9T4t at HbcJ8b5LKR<6E(p+_X6$^$"8RbB`2n4FI5FpUQM4XC at n$O
+UJH;YRmZVQ*(QtIF43+2)Ts7H1XD5c./>spr"fKUog^kENm2bVdW3cXqiNlWVEUM*;p$Q#9^*?m5j#Aa`2RtM97amT-)YT3
+&HhOE6:p7&#M)jcnZ"R>3*26tpe6=4=F=U-qTq/1hcSdrTDH6@@h8$V$[53jYNur at gYiC>1_8>gX:e&#lTIDC)BWmAUHk0C
+BNpm$"Nsm^FuK[[fcli?RS>q0(`T7&T%c8Dg;q>HWK2'PM%*3+?5WUi^%XC9N&"\Pl%EJ*V8n0,:L2:_N%$m%ABi2-\X:(D
+ at d$Een(@D_-('PdV,t5DRdd!Em$FH]i at OkV`6J\ZikYf=:4)T&Kc;XNo!(?O&;f?M*_M0*fgjcu)Qt.h>kpoQ-PB8)]T7-]
+mu<Q;et00mQ2>YNXHh]GU=uCs at StlrjKUhG,d18cP\gpu:0N&dQ-%+0"a5:W"5lJP;X*qW%Nn]O8cq$Q=T(4f&8pe&qSk9e
+%n#RV%t.it_]E:K3/0="3IjX8NKND6*Xi$V(jA9KFU3'=;OKe!VZTB"K6i\Z44-Zks$+5d5`KSN6NKR2(HE?K^!nl7Ob!ka
+a_st*H$tN7S_VoE?IA=,\_+Orj9[<$Iq.oYi;S(0,()BgH's,k*:Nt(qC\&i0r_?=7lKp=XBpR%8TUt(Z*o416t8%)a>\\a
+UpZsmGlk!(5onD'nI('Db>&lCYh.L!'I4e\!H5>V>]rLL<<H3E+<nC1,M9kpT*1\>p=,]RW/u)="VFsO[\_(9Q#6$9aq$*j
+kk`\HVST!b,p9PeWS/rK8VjAUnrp/XA#=!TXjf3C]K"LYQM3)Z^*m)S@,&>Fj7h[I9J1,X9,G;j>@Z)MlR/;(4A[=2[EksB
+E6Xr2;;8EGPuim/_X,L^X\/pHDloV^TTl,se</6r)O+f0FKH(iFC?0oH>)Tj+Jsi]gRHderjC at CeS">X99h'$O0`T>Z8V?@
+9XC at unHrI`"?#2W`s->M0akiMFLfcJ't#2`WYcu5rsfrVN)ZZlDMqkgG.8!a_rujJ/+g"2:%HWe:26B"d&pA-Y_Gj./4T at H
+4;bF5jpVtc3pE8%OcpSo1RO<+9qN/gE\i,g+H/?.RHRq\!]T(F44DKt'c!?)]H$EGX5 at JT]nj6Dh!KOTg;t/55O&$R:V5RI
+\89rPZPU:35^'"ub-`Xoapu"[,!8*WbSm6`_Dcr$gFcb'Ta$6Y#oRpIjUiajeW=$ki<h`j`sY()W&^8E^o,4Y88H+%mW?sr
+,.qFcWh^tGO%/r]$rtK;KScIm]]GkE9=/M\=q.DGT]Y#HHEPLk!\TVYP]T$D/smt*dOQV-+Xt8?FuWrr&:B$B$qXhd!#JG5
+k0>9bQhDL[rCooM1(j(Y`9e-a5!JPua$lFt^sL[(nIBSWJ+tK&@F4OQ at _1(V0=5:%+^j*Z2&6.DneSe`'!i/^+gQ$iX&0q:
+C$@o^?4eN5?0MS#oAD>jYHWI9+gC:ScQb(X6mU)e$GQJQq*KDQZgn7`i3'"iJ.2c;TL.8X;r9:_.!O')DX:V$+Z0Ih(<nXJ
+m$o<'rjGX/,d0[Z^iYk_1m$kl0J(]l2;?7FafNT4#o#DXig8^Rl%0IH?p%hI.>D at ALj%E?%RPL,765a5'7YpI*71d&(BYu2
+^Vk-q>pmmEqd:;`EV!-Kj,O8p1*OK5_4-Q75;?`[@'HJUZ(lk[F!$-0=c`]Q<0phYY?'dpMD1I"#,O"!B[lP'BO3?L$tKCG
+HccP2<7tWO.3hD]=`s:@YTK"hOc-38OqgR<+i3t'.3=g\g6o'(j%A8]An8>Z,qHZ'h$qR\/lhga4?$UB*ZeXq,GMO5dAp_A
+p58(?mNA3\_H,_k]FoO"2DSlpkq^4,e!)j?%B3W<\_!G?h`ePbj?H5D at Gb]H4.T=%#O0[I%':8/BW.7E;g-aIjW+c5G)&$T
+.0Nb`g;e-r]B)#s!HJiP&D4%UFW,-5(h,<6?.$Dq]#0J^)!W7:=>'dWm!]"H[p>#"/M-.N=mt8eU"f&PRfd+@#dUTKMS8`E
+G_4#`h*N7eaQPNbn;*u3:*IkIa<\#WY2N+B,hb<F.&,WC)`E!C-'iA0o,FI6;,"H*,CE,9*1cf6d:>b"DNeG*mD&gfn)h(?
+m\k,\\jgfIg*0ME0eIf]]B63r<2Mn%Uf5p49eEt`,hsqLS4:Pt+&Po78i$ZcD8BEIp.'hQ$Z>o>"ru7]F2Jd77;tI2rtnnB
+H&6l3*!R8LiRU>:lBmJVf>\\=\0'=PNJ=tQe_7k1$AdZ?]!Q$q?\c4cNd5tIa'KFn.3rg24-P))K9aVbO'<1D6!q4q at kb49
+fAJDW/rb8X+u-nd^c[2?hFFs2CfLkerVGl)j=R-&I1hN0gk"$Y*'9L%n4?4ZjR<(AUs*'EEhfWZ'XKBgq!U>SgK/t[%h8#j
+l%Aj96P<3UCF\1MHAp%tcu9lJ0f/([jfga9)5W4!.E$nes&F3!.j<*p-[D08-qVZ+-d'2S5_9WF-(5Y(V^\@CBr:qb\\:js
+3cP!l%]hU?VQu(q!T3*L.9_i at ofu/:7YI%2m0qE.h9PF-d$ZI5B=hc^f'Jq7,T&%HTjCPE(V4fPmSR+C!Yni#U*7_6&bnef
+Z(2*oSRP*ePB!A5/lN"H==#ifMqN[jHR]JR>T;WfdFmE5i\6[e#%P-n-.e%Gp;V[g=JbD;1`K"\n.<e?*mFUuIoDEZ+d_ZR
+.IAmHH.lt!6p=/%]rknU@[%O\'1Z[h^,KQZ`d5L5 at G!);6*A.LVBN$).LhT>?;WF&Tn9H`TD-&b6D52k-Oj%,7e;M!'XCor
+Sfm3N-O2,6m4TB%eolenEjS:1'uI]:.8NW"s7n*?(GGH56!bd$`T2Q?%%cS9Grohn$DLfI`anjk?%iu6_YR81CHCc!>gFs?
+_?D.]OO,ftW,CgD`W^`6da%&uD]/PTOoBLg<t?<f^1]"d]_NVIb5*a*\)#VoNY9!*R+nOcAWK7[i4X.WXh(fHa.0T(\`i-^
+2j at NigmsKqXa-9M=lpbtHfuI50*EN=5q>B;Q-lICJ1dh*]J0*ZhUCO;'],\J4l7pjoo$pV]pA<gkWl at 7*<c1<g/++>cPB6h
+i5jtAeL`ok1eF6L6k$,_Toh[g=9nmDYL?B4ms1&B]u."#:$,*%II*p>\*eVBo,rc='Sn5<2d5]70Ye==!358>*@ZMVg-M1=
+c`H_UqS6!&UVaE>XP!D2JV",&Gnp?7q;gaT"TM"cOC;PPK(4Fs$E-\CTls.-jQ_qiW#pc'`EX^OK_\*=;MI3IV;WoM7=:Zu
+X-Tt-H]nKI!FUT*<V\;WF4bT6R1s3Y=SS9P7"pk-^bT/NRm=7(lNI]El,"7G at SJ''T(Bf"g=6+XkeOHk%e\'9\gk"[QlhSN
+5*/B'_blm=S%4O25i^\aMZUu%Q:aaY:aTraE`_"="i6f^:[=(s0,-ZB"S1dtGb=9;DU@/T0Re#d4&6:OVU%'\DD!j_.LkD5
+9hLb'U/nVM.VM]TCU@%&"`8cGb%tGnh0-C[:Tu_I`EeOO'P)t;!- at f^X*4G":T2_'%>Yp$E3,WaP-Sp-Z.O$Gm-B\Y//]41
+W>N?e5BCN,q-YnKgrM%G$4-nknQH[^boTdR62%;"IZ<Ne**j4)Z-)q'[q??j]d<+K5-HMZ<BNe+"t"BK8ftEVG!suI"bn=L
+d)tX$_Ys\4#e*ge9BC`Z*PP.=l1m8fJ-cjocWomoq7;<'K$6"9j/JSir"E+kBcBa]8%B_gB<=&t8TPs>`J?%:C\crkKkE=P
+Oh5bM@`d:OV=*5Pb<(Zhoi,*CZKh.=)k4hL[:E1P[$El]E#@5's%Nr71IEMZ6bVpLXVLjDger._p<fe@`>V3,]*6'-[lO']
+F!kX=OUHj:;8&X%L10SOdguVD-&$u43op\$![7plE:Nc:-U+\Yp`V*-J7#ta,8Fg5LbRu?KI=o`A;U<U;ot(B94#:`l1rG@
+hjF#<Q.;)d=F=SR$-B_n,#oCLjXiH&M23*<2>fZX?JR/:Bj"t67l&]C#qSjF]ND%Xd0"lo5(O*='u,eV$!2h1i&"*rCIJ7\
+7W7X`?1n"cf'YQ`g2CIr"l6F!P2&JHK&m-,/e'o7>H^@`0kR9`M/i,6?b at Fd$ITR_7M[&/$&_2)X2RC`,-k$2+__9dB&OJ*
+NaXj&W:gD<0-n4unq#nWpR7F]^btK$Yf0:^E\JR`Uj<(N<>1Nm,XVqc>P$+_"l'1:P'7IE8UIrZbb0fh5*.,TpZeuiT01Rt
+$NW/:Y/@AXQ?V&7K*pGSgsn2N'a6*$9o(Ca[[J6?f9h]'6_T*7VIWa<=5k5!=rf,Naf--Z$igN#>3L/'&V*1*qgf"F`>7j/
+eO6_&)Nr%+h.OgFR8.odDbA8p1!c?m8iA$,ep6OsaXBg6s.^!jfaXADRj(b(gU3IrlVXf:;@Z+`jd![SDf+gr*GnA#F79PI
+7C?;Z:*%32U&<gBP$btj:f6R?!Rngq^$As)6me at _0FRm"ZniZ45S-6iD(lun<?nZhJ^'Of&a!:Icq+)2>mu(D)d.jedr.84
+N\1remI!^N]+4s<Y;):3)0a*L:]a!E2To&#,iBBk=^3prfjuOuOjK=OpdZSp4q#Mi+LkWLUCIP(q%c+6HGkSlVeH?aCTu2s
+?[+L.'dd+2Bqai#?[Hbdj4 at DP2gHD]!RQ0Ph=cS<N!TZ/`d0IdXW2dC)cIc'7HhA,;?f"faG4UCdfMAk*c-+JI8h*IZHKM6
+C6#B=1ES$rQ'Vh?&5:ODak32WT@`Z^Qi6`danemZ5R9d9i;:90l-$<GY`-kpRIAsugcI`'\KL/4g"1R7SaaghP@$G9r8dCD
+kIZ'H]@<!,W]u7A)RaD&L7R_RKr"S?7Ksr0CH>_U#]t/14P;J--5:17bs-L9gYhk.$bY*AQS&(ehP-Oo=LlE^ap;KJ_.pCK
+&^h%<a5i8P]("RKddqt7P9(McL=cOPS[R]s=2$"E7:W9>d)=*_e-K-?f#is`]9Z&6[HaJ%-_^\g9^QEWW at R&[.-;DJ'H="9
+A$P,7Uu2H*XS[U\$*lhtYf3hGlt(D+$_'S7,sc^t@!?S^Ek5F0\jSQ@[1ld:5e77NZH^HJ.6qs41n[(a1iR9._cVYn1khEO
+GW%2sKZ'AJ at cUHmYG(BidtKu%UY3NhWVhQ`OD?Y>BB7HUB'!(CLT4mq2Ds#:V>JUT+e(*)DQ$j"kVR79LtSJ%7,8_20?$T6
+^dBttC3Q]AqQpYAphn6dCe+mQmbPfqPeT$7EH-W]+tl;og#UR4#Zh9D19NG,7hHOWN!io<h6T8qAr-'Oqq[ApknQO8\UL[u
+JT-p\*eEk;;b-/(MQ$150TWq7QN2Q-%?3LmDFGYm_-/UZT&e\bk*k]JGerJP8qtR[c^Ael*0;Wh'.:rG4'K_F3M*FI at 43JQ
+GT]rIo9k%RAm>Gnm\">&^l6Yto3GesCI4B)4R9bHUUTtP^VZ7rSbD3ImN3mcpZd<+g>?EYd8P at hY9<SCSXAM at JC1"N@'[8O
+F%`1JH.1rGV:@C,DXPU_%9+#Cgu=@X[(_3IVl'b4 at TYT[ZHFSds1GWM(&b5h0Lljhj$[c"GYmEN$8Smg-aa"XV#Z7W>64qu
+F?oeW<pkA-C;[:`g'(909Ga3"AE`)]\I;2t+];P'2MXC;.pmO"iS<V[j4a+B0DGClR6BFHnQ\TTE`_i1e]D15Qq48oo_+mU
+64r*>Hu$$j/_P)mo"bFMNuq0sjQWK'UM\7-:jOJu5l&9_T`!tFdl[gdfe1J&[Sh/,l=c3$Y)TK9W5'-f]"i?'kQ40IC[l?q
+i<Rt#R=.F.'^_f(e,H?E3pEC3hcfP5N6KAdj8u+jV"cU$6tKdEJ\ddh+8LqMiitBQPTJ;Vl1e4B?S=Q'oNSM%BrWmDm?C[&
+U_iY\lJs<&]_iKfPrcZ1(sPcp6`qT(;5o$gVbG*&-JH(dYWeICBh9>>619PtQ4/fM1GDTL7O.<)cPh!0f1dh=3ETe31>gnS
+E!e)JFCaPA8s)ZT^nf!PO>u1`L_9\WJ#mABfM%(_TIU=Nh-Tc!_\E,LiBu?A at Km?H3T at utXmf9<dN+?Q-(bA1ms*p2K'g+h
+$*=H5+=:k.kdSnb/8qG]*Yo?<-;KJP,r\>adESaK,p\1q8.7+)2Nc+?-)`4 at 3g#Zg?!gc0^`t2Yqb5ffX:Xr23dsW#e>h'Y
+iC7-QohDY2pg\@q5]"\[kurMcT?)P%W"CYa7#;JUd0ck;XX3D7<Nk!"HHVl9'i%itd`i:M%5I]BD$OWuCmng<+5!onU$%'%
+4WE\J6_^:0_[j1_S^E([2X:!;@=bg#A%fQ307M$b.Wk>%(-QNeEA'(FC6h3X:o`OJq,kWiqG0k*_GB]HC4`r=R\"CF/K/UJ
+I+!j?l]H>K^+CndeY_L'O=OXkABHlOWt.0gV0LXBO.#^=dUArN;&7W#m.<4kQ/biK7cY]Y+Ec9Al\gZoBr at XC21ZWs8mMH:
+(2>reg^@hoiOU_mfl33-@[(p:l^i-HS]sH$O;D,*J`nk4P:iM4d]J,u=-iqh;+&ED`RgsR8/Ysm#@-p0LH_qp-4lJE$ZhY7
+6k$lm+ns-ZgZbY,`h0eZ]>G]Dj+PHr4)W<=$X_]`]]]#MjiO))L]@8+aZK5BDr-cOHuH3[&%DO&mj(&gN"L^c(uWs!P.u;d
+q:@QhT(eEj4IUZgE:Ud$&.J&^T'u&<FG`YCiDQ`N#1f!9s1,$aagF`j),N#GXX\F\), at lrCF>Q at JQgE<1Li at L*7Ycr("tH#
+1uKj:'98Z1j>Gh4e<M at 2jIds*5hWI+`?o at .B-/u7Q6V8FN%l<#c%In)>loe:\[W9+JSl1IINIiM5VbZKTm`2a;28fs$Wock
+55%GhY^ct*>rebCHQu=8!_l\^b#Xrj'M]@e/Zu*j,p\t.qi;B$7o$d&'fDY)2"i6FGVh'@*4JEF1SlAh'%Gbg`5Ph-Q$/pT
+V at W5LS?3%N at NA4KKA.#F3rY)96/JHES.XQY%A"\2553*d#*-rMaOJClb=:@bOS]4B$Q<YA5f!Zq3NpdMTfOPa/se:saOnt6
+hY#MkZ(,Kj;muf!lO-ZB?Sq/6q7)`$FXbVS5)lYN-!SBT8u2f$+Nl*<:1Ps]i&d]6k>oui;=ZP7rVeFE]j9#],s)4danU*g
+oXuD6!"ZbI&i5l;ls`L<!S-72F_i;_Q9OG;aL/m591:aB<OBj$4`2&i7aDV1O;=YVEc">fCe]nCl_(`t41G.RpQD*YL at fjI
+=9pIb!?2s%Fj2SJQWA,NU%<EC'X$?FGg6P\7NG=u4^o_,8!=*M03qLRXsGJ5bCN^H'KE"KHC)<6rQ-.S't_m%U?'hG'J,c[
+3X2`f9NJ>$O1uQ#(cc!-"s\Z/Fsbe<qTtgZj*OtbD71q1QE+O4`&BQ+ap4qiW<goV;!mU4/OjSu78!?hU8P^8)&4!=5o/.)
+cOGG4lR?:#AOC)-TUQh*.UgLB\SA1KhFCp[=_:lOnqs,U(m96")UMAI,Tn(3/fSU7TO\pMRTh3;S&-&)VNhP'DPGZF(2QdE
+5lk[2oApktL1BBRn.7A'o93YeLjnODV!!MsHTp<FLMPiIfCR,JSr^>[q:aoi<QU/qjRHg'F.LE#O!K5TEq1$m-%ENj)5aD<
+,uZ<-NP=)/1&KbdnN:iMJP3j*@0fIG'nj:-e!D`P>fo/GJ3BtQaMjJ:3.9;p=U<M#S9itBEu&YTT'"@E%Uo at Rl0*dbDLpq$
+\cu(>gitteoLE4;83lYiX;LL]WW4[eV at S$;`Y#/_ko+&raB^n3MbS(246NF*he$p.CHK7[`7;'Om7^b=qAOI/`X%NN(\d91
+F5C4!clW@="APGjX4-7GX5hR3mFTjV1Oc$J"LqtjGQ at D-4/e\1mc+MF;Fn9*Yfcbg,me.qB6-T^$$D=P$99'(]Zmi%Rg::q
+WBl$8C#IW;#K;1dT6m3ApA!t1_Q&-LD8%@hDDa\;orhi:.d]N:W"Da(R?%Urp^PefdJtT1We2VLQK8_F;ehGZ/LJQo8s%(4
+2V2\e!P))H^gG2o$^(-E%Edb!9lKlM7b6bqJaX<.""iu%=P6ur]s-eqnA%4l;?CcG>*rQ1oE9T8\m'f_2n,1.?`4G,\'5?>
+!j83lhSi^^H>.#oNqQk?`p3A==KNKY$2DaV at kB?'%+KMlchfT7IQ.);!WW?-C`([.ToKJ0o3hpaU^_RUF1!oP`hr.I7bHN_
+2eK0?<Xs]l>m4'hc3E2*#,YN`M>TPa96o:0*`PqDOI.Z5f7!?jf8=YBP'MaYN@$9)XQjY]Ush\]Y#]:K[[OXHmXbQ7!Xkr8
+3mHe&MtYRcmFJIGCF8qb1"@MDI15=@Y8ODb%i'_8K,-.Xd=Q.5g(M+H4*j`cr81qPZ+4GE3XX;JdU7^Bb7G at b"F2(D4NEFt
+_N_adQ,;<fbdTS8joD:P'kjkqZ)\`E83^N#-(uelDlA"!`o!I&mS/cVjiKh\`lrht[\W*8VOekMddoE:F_s^r:QFi<nI^8Z
+/pVP1o(G5N"h\hfZ?Cr[eV=+s>4Uk&-;6]J:LhTn)Ikhk@$&ek/-N_YG2l*J>WIk9BjN.26Y6=Qpi.q-#7IQ;,6m(]e2-L8
+M]hIqM+<PoP+MV'VOjscW\I=WJub%H(E-(>N8=s\8YNN\r0O;f+.%PT)o)<^f@;h;pG;J'=Q%IP-ldWs]_BdJ;,[Stgj8uB
+6&i\G;ml'=iP5k\kK(hWS7QP2lhnJI'?)+nEFi6 at nj[=L'cJ'5l((6Vb`OE"JrWocOi7e,""ORJ,3q`J3S;$,#V(aK=6b<t
+DQ"Cc&`rX*2/a$S(2e,m=\#o6FcQ<.9`rFJ3b1IT='j:M("TT)klrX6V.NM6R>`Jp&C#N`ns@/-gl7V^6ju0H^+ZEN!HS\s
+hI.[o7&/EkKQC>u*\="t:e?+o_4/O>DsFLW"J8rOI?<lG:ZoJ1$$EpBIkpFjb0GSd&25NeVb_bk024O1n)<6$1V.RF%@I8L
+R*Cq:,sa5RX85hA,(#D$!X&77^J_V6pM5Jbs2T>HIsjs\AY&>b#-XFM`)FNN)30N'%1Ve3pi*`nJcC*6Wdpf*38Ik#WnpZ4
+>K8io(6BH--)TntIMFsd,^#)j`iP`q#L4C:7E43eg at 6[D`j:g7=pskg,YNj$@\Y8+N$^(H[7DiaT+)osT\rA&XbuTlHUqNU
+GT&\,Ta/*DZiO[d at 3F0:4p(u]M.I`TP%u^E:H*ftbfCKa1gcAgA=r6r++Kkrd%YV^hIqk>hL3$ZGP8@^L(*0K2>0P(k<'l(
+)"%n6iV=XXOSmp<4Y6sJL!PX at D+5qKjO?D9$h&TaRFkO2">VSpmbJ'9i$$kA"naH[#SIRXc'iu!N*BeS`m+P:P6nSsT8`46
+PKS:O at _lEbO?D!X]MqXDS"2[nOaR!ro)?emmCQdO&4l;OY9j;THG6lO+0A7dq6JlMd3%^-XPBiO\8tF%TmL[23R=b9\eWKL
+XK83o#Kf*Xc9\(1nCs3a3]PQq_-5Mg<f;bf?um6-LPt8HFIu-Z&XPF&9.gAG^no&\-er`bgS^>^Jdqc/9J at 3")0u%Fe(-hf
+"5&-=L.p)*M+jcW!97;3r`Q`/aC'Ogr4m8?\OA.*o4"+=R>r5(s"R]RBEV6fAqi-hfr at 8;X4DD/FKjpSpq4ZCMADQml)Gbb
+I(4.`F4AKTX`F#2/)l*pAQtul3-Fj:;%Fj__DJ<EC'IA>CDBg$AhRB at rGe`d at riV*?:r[Tc7;eT5uVf*9oa$-h_303:Q]`U
+/Stmt/<F9FlrGZs/R(EH1_IeZ:(QO'/-8s4><m,Hl>"$%2f*=<EVu:Zp3#ie4LsRS3FFRN7V0IDBlGX$>VEL,^1Ju(Zs at m>
+%;`bC=\nfYY&&!\kt!%-*-B;3jQj46!<(bc1C=bFBTI5XSe&;^dJs.`5m:Zgn(5W4^W$N-s7^oNFjGegTr%e]3mMT0O.Did
+]<tqL8cTC0Q6](T'QciD at ArT$5pZ1I$g1d%'\)LdAB[TD(sl at aA*Dap\9$b-qR">ETe!]6]%u"P[kmca8QE=P3j!C#(PPV/
+gB&pG;J(j9s#)H_[YMXuj$'^$[>55n-hUY6^<n-6i6KBE2?4<XBBj6[9`NS5m1CG4_4"sl_Be?9Q+,3uQtGR*VZPRmM[3.:
+/^,5u3#5i4`=,X$<_m#3$^lQEeJP5HTCcU2M3#K#@(:W=dsp]cH(%:NGY?>>gGWe-:mdiDQg\n3WaR&0Lt\M):jD/ui?KW*
+J5A)3N;^apRcHtEaR\GBIlloj_3]Is0r*nJ1OD=biqcRDmX<3(pE`VDi9uF3![e6dGc<2*VVh!]&6Q>();FbXK7EPTS-E'N
+RXF`M_ at 6]*+VKO.gLE7e'NKgk at aLR1a^=J/HM&_p-,`rj'noLb0.'(:AUY,Qm\D_V<0p8[?l20/1.r-A1Z.+jjKieJPbAaC
+bb2^jo+2N_N&\:Ur#&94LBoblWh4ElVDbZmUqB-5&4eT$j1jbGne2'?ln+Y8!/V(?L!eO5kMEQH1FT@<6o"6foBsUoR^397
+MJEZnaBs4]'i2IDJ6(tkbBjg$OtY3T1/tpoLMBd#_4g.h8rRQ234nT92o]:ALM4P,9cSp:E`Iq'B?OM3WWnL at m9pVI,4l])
+C<m\j<2]4\rLpgsBY$DXX'=NW$IT`B:mN)?nTt!Pg/2hh7FYn:lE&@Go?iUq+1U?.%hCa at AW=<j.)B&KD7\S:OMM$38Ng^2
+)BAR%.q]D[UG%m#.s`Wl=`03k`H<LWIKi82JLDUlE$Kje[%iaf?8K4QC!@^*R1!2$5,VrHbtbL=\e*bpk'l:dErNs,a^;d_
+h<D,-bQ#UE:_`g8r2aXZ2Up\=0Z+Y+$l^)hCKs-E5kTaSI.2R=mj;K%N>)S4<OU.]8M\j7"PCMG97]kfEPAR#X!'RrNNrrS
+h%igA]Hmr"&+%q%Y0dZb<!!2se>V&44P*`t>R)7Fma0XGpO7A<L!Z"H!qk`@0-Lo`[mkEH="0_7%]]d8iP/cYFSnUC+G[7*
+2p4rq>tO#tCA,=m!hWmXb3VQ&?ut&l+^0,BNFs5dlomDt"cfe&IB'D<c+[A`n1,FtR;2:b!@DJC?\LGMjd5f-)?05=h:)t)
+Os.;d$4;ZPN@\4'a4,KVCX!21^C%s\6EjZt/T/t\-p9dYXQLs$rV\6K[qh9T4[2,NoqLN-3Q[h5P.PX#[,?!Gn.5HbWoSqN
+nDWhC#.XWpD^U&-4T#>.IX8X,g.)o)0,.hVq#5$,#a,a!ABK;GH)S$*N&LXn26VIaf$*](ShSQPYOK4LZp>a_MF%X!2:3/W
+8ci95R!upC6e(KZ=V)PSVrN+AhVHM?CV]egb)q?rT')oT)T3P(;@FIC&6Q=q>]B"aC1Xn;dlC5XZ-Ou;($@.'?o\>ZfW2Ea
+?tjrW#P^P[7CJ1:$DnX%2t01b<-[!,pOFR\FJWA6U_PcTQ7Q6hX0:AMSPhur'S+"B%3!4#"I$pW!(2BZK]Oh#@P at JrTE^G$
+EN&3#B"LsOams&>S\hRAK?M"bd4-nn]>bAWL>G=c8s:0dikl*;!.YNm<;gr^GN6klR\F>\#LY62]L/[/3ZDK6FEjQ.$#c0P
+31l?#r`2e3)eJRhqF`Vl5%4ao`*CLkX3ZsVp=+.r;>SXtA`Hn\;rqBZk2*is11`eE+G<_6T6:7TE&iP!]-fk30]:jG8Kdm<
+U]5:Xc\L95'ERKo00i/1:Ok_f*saRYfs at B7Wr<Fc'S<"]++cWWUgCMpK&a->!a-:Jg'^mRa-X3X<#26\N5J\gABgMO^$;te
+e</@. at E/K1$R`L_:j%ZPq#$kr%"6 at db(Ar,3%ntO;/q5Ql9&j6T8)@:HK--XGgn0<J at 8tXdr;aOSfVB;Ip2G\,&*)FogOPg
+fGcs]"K,-&^G/^L:puiid?4#Mm;N5id`$mjAn,W'`C+`)_]$uj,qZHG8Rlp*mSV[(>?T%7npRp/$UITZnJ-elo?>C5BJhdC
+ON<o[*>m,2V_&iMIoeM_f?h^JH!).3%I[kg=`p=++fB9r at IZM<htOP5^q1]&(&7kO?^<g_1q at 7*Eqd6-p)B1?l]RhMLFp1h
+RJkCkLQ<cH?^puQg#SJQ-3&RYJaIct\(>sW at 3@g^p6dL25i9Fp*/mu#!a,f&N]*Q!FfcW!4B=#R2QY>W!"7VF!jh6tC5J?N
+RBMYpV$$n!CcG'_9KbBho`hE]^p$WD+*E:'28&&3R;X>#n<iN=;2B?!djuRKfsLZ6qmISXWW44J)9Hk+pA)^,5[4@`piZcY
+9VqOaj\&o8CB_P,h0t&<^9[5>mi$Hh'`s=a(k1uQ<*n+SV*I<%?nKW^+nb%c%7=g4+mC5T=0[Hk'EA6NJ=C#)Y<VG3E,:O:
+9:(OYnM^QZ,=CBUHnZb[Kmf.63R\I2^M+J'>6,S01sI.j5EJi at eHN);7F8,9n!Sh_f*_,8I#iKNLTOMD,fn^8T]`Cc_&[^(
+. at Ig'c+kpVq&m:t?JY0b3O.m](Mro4HfHeCT(IFLU-Verj60N&">9Xs&+Le.W,(+k1h>&=n'Jd]D6B`$1-(7.jY>=og43a(
+]D-s%b83/W>0JK&ZZtV^IOC6k;ZDMV,O`2d!CR',6!$;O!+l-,q]G:*V19ApT4e]8G[^R2X%>,d_*DAM\.V/gEaB#Cks2 at l
+E2qJ,ZQ-uEU$.K):7jllYX_FWFtdmc'nM-jYM:MPrq4qT"Q*6HOcqPRL"aF*M.SY"b&!JCgCR\X#.8s6B<CB']8c`_de?#!
+9N`<X0hhhHd\Ub%K[%)n>WCb]a0-(_O?`J")5V2O\f[LcB4Nk*RKd+5>r0(eA^D@%]i-gWh:tmid2=[Z8"]$3Og`Gf*Jg?g
+)TQ^=OX9A1aF?J2IIh$Z!4F/hE@"t`E7R'a2V<nqNTFtEPX^H?Z\%E8ck+VHTu^S1@/gU at KH$Ku2)sNWQbG3Kh(N('ii"ZY
+&2%=[JV4"Df-T7Z_>57d3Os&l1]Yk/6b8U;HbMG=kMr,eVrPpk+!(:NVij8k-MbjJi?%KhD^U%A2M&-.Bo21W7+oBCmH2R2
+>OFR&\%1AhqYHC4Bn\$`2Z'$4$j6:OEG=[S<gCiKVKd[-bMl.'=Ibqp>3$ge(04]GN;M'-)r,PmcR_GqHC<c"Yi at 1PK(kZb
+m70etS#^/cO=OW at B-2Ve.T2STYbPfl>[ntj_>kje\6daUVCS0K3<SA"-\NEk>4`D=('tMT1tr'1?=c\[OLob;#!U8_]<3sb
+.Ld5?.2'H/#HB4i`/0PEeZ at Gf0GHkA37qK#(3s9k,sJgcC at 7_q>JT^V@>fg<3J@#S\]F[UES0E8#@onm3?XL%%S&]6&qRXj
+0]<?9r(R<-D at n'GEe.&;iCk2R=#=Tba/u3EC=7^'e/7\p>UU`O@[J<u2#KiAJj`WS5NSDklFT;8F.4SKo=7V0]]h[-co8I-
+;$Pq;/,.-!ODfkf$?SQnXKsg01'D-bf4\",Zp8S(^(/@Rq_aU`Q;[G^,?J?8R_>YG/kWrG-OnL:Sh@>%GR"&N%NWdlYGi&J
+#=JLdgFrjT&0'b^H<:2U#T0?<!qj&-h`(I:\\G]beG[XM:p^97]O18KDrJUK]a\4TmF:QS%=o4drO&ZOVc96JR:cdWTJ[Op
+oj9KUki^Z-Es_FZ-9 at cu>l9n^_8<uB!rt$VK'[tiW^%rrN"i&MUsj]-q/pD^<i=-4:SrZ7cru7FM at D[#1,La/!Ro9aHBEo4
+T*m?hX4(moM=]!8=oSX2=oO]B&NX7^V+orUnFb,/#kf%?/p/L_^rX.$WR/>r&Z^RlO at dRW&LTah)`^7kjQU3>',G"6dbU7J
+9"cNZ!`n),S4GUdY_;qm5U#6/28D!biC5aG>PiJYZ8KuM[0\U8TdE[)&#"7G6?jUU/&S;7'__!cS(tai(dLgs!;A'9Sn_!N
+[K$LoZ3\a,4b#2i at sV%E$#K,$6cgE7S`l`S)]<)6'"802GC8Yl(\&Y^Tu/F^X^mg!5mFC[3ZH(d*"CNE;%;e\1C\R5/VSf/
+aO45$egmhbDe*J)lS>YCMcp1)Qbk^,!B!b",19hSYa-iaSc,X;3;99\A3-r&(^rC`6KP,Iegg(:&C%`QPmoSf!Chh`n>I\Y
+71$h[bJ*.&YPs=+KXlU">H]&sh-3RkUp[6[#a#US6n(fkW&Y3d35Wb[(I.\9r%$70k9UN(q'e'<BT5Q]YXiSOD'kh$I%5AA
+A]S6.O#u\Oq<N2Y/KBsih=e&X[laM]rj^FmZ'c*G4$EMjG4htC?jWI90a[Gl>&KU->&B(J<.Zo0k5k_U>>i4K8GH5L.JTFK
+b>OWT.8gDOcYkUKmQfU-?ce+R_1fVQh5,.XIo#<DCPDl6Trqc%^?Lgk=*KaSk[K!Ceu^%qL8(I2M*&pL$=oN5c!mEq7%NIO
+A](J(2AKo.=#:&(:ltI2M'Ml:ZJoqlAU%q"l!Or2/2a.B7%OCndghM'rq@@>rP)7jWN^M*jhj<q!W`WLKCBq`r=<QMl at mF)
+2fc1YnrKt$J$oi-Q<^E(2M0^m0m$:CmkT7;X;.]`U4ZYj_lh*0h/lQ;=DGQT0b2KY8ROiYp[q)Eh at gU;MueI6h,<msWWSW-
+C(&/!5fUWCkL<^BV0T!pqO$H)Ef-u$>rN4LI*5C=e8'[8#&+d$4anPb3gI)jD^DJ&mK>:n8uk81<E;!#:;LMi]N^L(L/W/2
+PkGC\er*2(LC^C4Uh:M':W&'Bo9MO8H<`?i:qbT[A4[0UPuc"JR.c#j'-<?k8+<-a'u(cL6p`Tl!Z]4%)p/q`GlA*3I=_pB
+HJ-J3?1[I#H-]X7KDVnZhcCSdOcn&lc4e at 9.QKgA:dL/n_pR'Ae%aoI=90JU3U-A-/jF[q*s;cRpQnfd_!AHWYMB]_JFBXm
+>+g3X'EXq5n3D0LbWS9<@j&;cn'rV.=k-:'DQ%f_CTNP-&CV-7#S\grFP,ciC4VZKD_V?R\[H>b5ueW`OeuCIn8V:p`tP68
+JTT&*b4e&<^cVp'U6hu-TB3>pPi[n7#$QV:R:o,i#CpK?dR&Ek?;0i!A*],?QZ%g`?BAT(li@$U-3M6 at NjMicqpmm0#V<VW
+1EtNs"B<`Qfm@%Go[Gg_&JlR`nNO;"S at 03hg$<BU-aI?3:N^OMQ$]i(:,!ck,eYtG7.3qcrJWT+a-m3mc#d>k&/qc0J'N+#
+TsBtt[?7Ga)P;hSP(N9qbpi;+aHKI+7/k?/<rHR at 8c>OdD_j/L2E4hAN8>JSR;'c"%GVk1O&`U80%6p-kL/j%])%LHP#.(D
+`I420oXp[Uo)5+/N_+#13r0Ge/lDP)gNf2;rDkliL?_mL4K0VU8[X#">T;O#AfCCBL(7+9V-9WMDMFFY&'PW<eu!hmh6"%*
+E>_lnklb2M0E62Y\G9Lr. at g>Qcf3hHGoEUY/&IOlqsrj at Y"Sb+II_S8_37^@?bQrP6MX)bB"N1Jf:)Z-G9r"3l\l;VGtOc6
+E;=RgX&Z1%$c)lVgN(^\+ at 3U_LMV6`^6;[%hW#Jh-O)9_ZlPKugmipKm:*73W#Rhk67GcK7>EoG&1pCS#e=)iC*H!NH)*!W
+>m'Z at D5CoK2A$qD)'4eP[E*'W.="W*@S2o5dIq2/'Op at HrK*:RK["CKL54SV:OpTS06sO9mW443p7_AL[b6OU0Ukmu-CmE]
+TWd3"@"97FWn^VGK$"8(?V"r[S@&jgO:'f_IQ6D;7DDJ=FX#mR"O(R6'<"kY&''iHnhRhf'kX"6!<I:0G`\p@^V:[qJ57Yu
+8"tMU*Ve:8AG'DV"['=856#QYPIu#S;@>\EMQjoYk5ZdK?P?XcSX:1E+tDcB$qLS$fUS6t7sg\k>Pri!b/797h7C7A5e?;B
+[YfYDbJ=2K5k#QOr5.Q'nLhkb*bq\%QVfr at qhO*'_+TtF>&T[UBn@`,7mWm89K=3t,$t[=7Y.@(RVV,-o,C*_6M7[JG9Q8O
+H?1sf(M+I(FSRH-#euZ`X(rfM-7*slpZmg at bOlct+B'h4V[e\)Y,HW#%A_CPJRDm0$qr1P3P`2q9(W]Z#$9f-'L'638YVnu
+VX1b1_h!DcH(NS!d(GCIh(Z;9EMn at tEu\<L\tWTC"!G6B[`K>H=Zu'2-cVd`/sA?FG$(`4((\r9JL9DmCp2f7B\VGO0`7T/
+FSRh<*,O<:CHOO`duqYna'D0kon2R<_s%Rr5>^e!_IVKU=pcW'3-+2pZgnN7I,:'U_fkASp$,BfRpouI6^7LV*Xq^l*OgR)
+R#kPb^32R&&TdHbQV7feCPrI$nuI:[3JY4^T17Ud+kADb3Gu/ZO[53"o$QA*l>X13REQqo*\DqMM]aZh>o:/CJ+FjJ$RFXZ
+s8Jj@<r_h#pfFWrWu$9n":WA<ao[l=r(WC82F1 at ok/?@DR=e68`Mc(+ce!DN`]D#*O],TT*'`TVY&mB$1IKm\^a#GG;Z*mc
+kHR=@3#+N3M>r])T]0\IGS+!R-0F"GJMc7!ALO/_Ar"R[0L3+PR(21H:]b6/W`YBj8kCMr$(!d8MHB?:Sen$2E!)mcXs-WD
+5*N'\.!%J;H;1rAiTeWQZrU*raT`PY?,V5+QC,]8mF^iGUm1WH at sCnkBCsfJ[*0]I,Ip7o1D at jNmLqW7K)^W?*s[!\43ZMr
+N#!UmBA.b)$C5c*e9V>/)$Xb/Rq'oFpDRf"l)9C33p"J#%XC;n^u)7aFT>Qhnl\A0&cZ2fj-2(O^)IZ9o)2?*LC$3g_3u[#
+$:_Es"6T;F`TK<)]mA"g*f#5WU"^oP)2>P&1_U-NdBVN^["Q8G4!+&K>amL^>_au=OtTHY8**AIC.$Gdl(T)9dc8p!k*?Da
+V]G.$0#t%_9?aYJ$W at Z?d"rJ-r\Vh,h>:'^;SE'!?A_`+4En^I1>;;Bbpkgl]JtTTKGAjYkcYLgkWK!]Y<oq"]$c+h,r.79
+c?NN$-^NQ`2h-?[!4bdl$N7b6bD8#a&QE;H>-p\LqC$N%`h=j9Yq?d++*e`iJ[@=3Uf;+J&m)$V.+)/fHM+8'8Z<f1*;',J
+fFDBM8uCmMW/H);&=ZW*Mg<aVEXFr9<L)aQbTcsWrP.RtQIqT5WGr#e>-8R at 43E$0*FuO5c$=WEHuRLdg4"-U@>R/LiDj_B
+JloF.\[jE#R-O-!3gD5W1`TVD6p*`$T'Z&b_C(7o.&[nMDT!)<Fq:W"dR"P@)YO\uC,=h#C at ajR]8(.P<r0-?UL^L0e at d))
+:EijGg5e-V>t??L<l,7+rsK^2O3bRj);iW at Jct/P0:k$9JT#)n0$&AV81mjGl%ns?D%W=tL<`V&0G=RhC>Absil)6\;J?,)
+5Bt^g7iJNZWW8-X8T=8hVIOUM5R=4T,'n7479;,V*2CM(0Q2-n3YcKOr7koM6"rD`X\>-64KZ&eRd^Wm:,m<caNMG-]Lgsk
+D%bT2(["GQRZWDN(:W&_F5M\3(NQ6BIn9J!?.SOs$`1!MD&'8UdfT#j^mJpRS;Wq!q`FUpSjOH1/"^d="X`<Rk/"";SGGAc
+lO3@"D5gUWM&hUY"fFHM^>+SdZm)`Om[k"J,V at VIT-?JWq'[+:cTK\;0/7r!!kPsreM_+3.sVDX#lJ'p=JgO$WTTJM!^V>+
+9_.eQ+T#)7aW:$<,L at 2'j9`WO5C4`&pKg5hHMl/7a#:(/bdA>R?lFFA`SG:;:1>^$),4_Grk8'Y;E(8CoSq$UgK[L6lo>h5
+6AJn=/^.e:(D:e9/t,P#oFQ0HAbXD"%1CR9[_h9,#T`mQF5%?^0Qo&SR]ou+;89ZMj&920A;BE(/BRBdMnjpoTXppk at o.?Q
+BLH''<To],WY at Zt:72/SHl.WC'JQK,Y;p+%4UbmM;=IcgV6N9\j?UEr(kspb)R)\9d.Z[qU8]+k%.u3nJ\]X=I$n+dQq]!V
+ZrI!DVh&>6*E^tV"(7hI-L@*7^k76f&?"E"pf9t;!Go)40/H-!O(&CBoI7ogXOBF:(%n^QC/8dI_e8Iu4FtI,dZ3P)_>Q%V
+Kp[o<S"=`\Mn:&-kh`5>*I[3V86$q&\PR7L?UheeZW)491O@@69FsY+*6AfA/M[JC@=TgNV(]Ua?]+.&X7JR#lPurK>./PZ
+CNZV/\%7'El7Lu^mNb77'Z?V/!;Snc>T!G>HHhhki.6B*2)3 at k9BoIS\t/m!mH!0]_I%Y1Al]1F^dk[`P,R7(nXpUaCBmYd
+9!oF.k;r3dCO#E4A#H_!MA9]0m$Y@=kiX/qra70/DB>&dW7(\J:h:Wq^Z=8jGA(O&Jm7<JCf?G$V68uW4d!-%b-ofmks:bJ
+9idqV:uR at b%7FHa$'g!oaOaQ'@r0/j<NRUG\[$F6++4*&2gjeOV&rph!?q5b?fq`W<V`<V[ClGX0!3g3'8$d.Gu*IX75f63
+r'Ju(YfLRj;8G\MblV53(TL:<k.(9pO)9BbWo42bFM"#gI8GQ/*-pe)'-A0=Z3\+$<E.Ij:;/r1*cgKQQ_C-I'm'nl/7a"5
+eJd"L.27)WH at 4$L^XD_&@Oucj*86I<R4^BB=u1OB5 at +M!JRF##4UG?C-]]NbE,Q*:$p5)Od\o_c+ZaYK0m_P>fHe]$19M9.
+^qm+D/0iiToS^bkG-)%e6CI6a$2?=L*%#EC$@4fe0\s9F/G,.1r_D+>9hXSpfEH:Grd^F7M.)j=BWF2QTLB"l;up(g5RYH-
+.FUpS&6L>Ys%Z'IEo]+8Q8*qDesPd$/H>-E1493.TRL70aX6'1*Bj')-uJOoX4oj=[EN)QDTP;MA*<4MNMg.lVBuQ29M8`o
+PT1s,5)0e.rJUIh_BOL[<(pAl6%p^>#q(KW18J!ZI=dm3(T@\?ccUM]*Z2*br8&D_m7hr_l9!K.N8'\5Ph)_b^&*De9@[].
+&n5Var>_^&;Ueg["/2c:[/udNKgq=/6t/4Gjq"[X5a6/:gIVaE)=5CUO!h?E>?6<s(I>;ToX="cB=*]XCA"ZG2fV2#*o1=f
+7fFR5LOP<3H&@Ji:PFd2$;/TM")mR_c?B)SCWiZ3_jcUmaZ3Z8`03)Wma17+Q;1T#m0Nbh+m@)tSsZIWK+&-G]TCAq"<s at e
+OKu,m2T[pdCdU-4-\P$X^@;!6Ig#iS_VbC>43.`tbEpHh+<TYl3<^8@"nL,,Br"bYWG^noD'jB0(o at pl"2E%mpt44;"0K at T
+r]mYleu8Qk20:_"]?u:iY[U'gQ\uaUF:Ea<:r;-0EA"MMft7Ff6N[Gnkk*%&bC49Y.(A\,5&jQWW9(@\=a&[2jX`a-KfdAo
+=iL[-UnI*8/aat(PHe!GqjB/b>'6:M?C$?XJ!>n[E3%(?_L4l]5L!DU!WrPLbH`uF6QcO7Y#Hhh<8^QO\\#a>*/:T+k!i*P
+@*B4f!1M[0mbNnMFH7(VCX@`!kVX5t:0e>D]rOaCq?6%?%#"fsO>Q.AFou[2&MV;B5Z_.-fGF\mFQS at JER,0hlhTM+i=?G"
+G+Q:-GF3-Ma^'frWRCL44olMiVs@$1,tPfs&_ieW#*s9J85"VGfWm%Ic"rgoAbnZP^V&'XC;C<2>A+c^H`"eH&/7Q(hMj]]
+;\.dD1Nf\Dm8LDO#3Mbs4!"8jXZHC^+lkb6]#'gd=F8ZDXLE0%!*6?g&b>`k'1r,5ndkH/i'jm:&Jn?sHGYWMA:B6r at H#>P
+2D7"A7DA+gaUlMqUfZauET6#*T=S'X at dN>Ta]'IRZ&AZM"#RS#hLH;]-JX28L[\a!PQfKiYrA6s$V;a)/tT5NNDhAiU>1>/
+KNDL;og;-)$+XQ[,M3Bib'r5G]r;/MpW&^,Nm2ZZoX$DBo87NHZS_Gkl]NTCD at TG@W\2X4;Mh8,9i+LE4sh>-m(=>c/XfKB
+1:>kVCNe8\J=#D!aO2Z1pDhaHh,hVA+XrNGo9DsUf"0gk$^=GZqsJIQhc-[=?X>JXj<oHn?k_$qY?fdbJ-8dm^e?bHb8;b<
+cm>/Y(;F5]5n;Whnpo3e&<0[H*h'9322#;Gf^$<+?Wkq-lT-@)NB'NQ#b0aQ_mQ0&p4oi'B,$6'+9n%S&8En`Tn9.C;5&_p
+KKuT4H2?f2X%B0Ke#u62-0)NEoD]'WoaLBfpU;`FTSWXAe'%O5Z_?nrhFrCs?LlE\,gO-A#dbQ"$mQ<cR*IHCnqF.f/37C:
+OdXkidSn-;[[RoO?pIA,6*,VDGT__GQ.+e1f4=E(<HHP^dm/OAIK&:E^i]^+$[\=X%>.G.NV[SKk'etS"N,jL`(V(&Z\\jR
+3bE!AN0nBiY,oIUf?r+hiQSD at qi.MZo^^):\WG#=[:j8cgLliB11+X][r'h"5147=no[JJDC&M^H'rdMi$kk6(o[@dY<KE\
+Y'&'S*g_S\<A-F>p.'M&Gl_n0R#u.jPh:Z$A6Tsb,TK<4[7-i8K+0=\_Z0YgBlEF4[DGYJaI*9k+ArVFo.kA=.(D at 2qV1%;
+12 at P$!!_Z:8eC;D8=KY<(h9B0S)e?"[VU43rL/N^Ge;pc,3l0E10'Lg`.9NKqB`\r,CP^d"f&uY/3;/k at YE.")IMB:&dkPV
+epNBa.`t[D>I5>oDH_uWd-4)$*;Gkt!BHhu\oQQC*Y]I<])#36;@^J,FnsmQ8n7$>edjfAR0$osS=M?UMf+*q!&Q:PTDP/"
+>j!ZnJ;#iZ-:mPK`PVn"NP+emdLRm/d>/0-9j at IM=N,4$?eORB$uu236soA%5$lCMKCitjq#fhI(ZKSglkp%5]Ntt&?s`]g
+9EW=I4Cm&O[:jSFe3d)(BosXN'tLZC*Im34Rf<kdnqtZj<m1_(DZ1M4^*cPZr471,pbUKhg0Z2_(mBZO$1Q\HUQX^?\QGei
+#S+.\:ktU%G%sTjhd'5XaXVm^l:0U-9:='dM""5T6J46^q!6d)@8.KG7;*=f,u'Zf$_J/Q$OA6*:S(.5.u64Qo&]9eX<B<o
+r`7UG<]Ie51j'O\a#ODOQO3pr_3ft]oIAO62.J*s6c#O.1kYu<`tu8RKiu5p<+/laFrt7_k2)5c+WskNE"JO\*\SCq)#E*=
+HQ1tZn9RA%_WV.*oR&><H\.j1'ZA,q)[>uJ%tl(_i-&UmTta#H"VRV[j#ESZEo'An[u>&-S>8RUl.Pb+RS\Mc?h0oA-g03N
+I*AsO:t"2peniM)TFB.JH3.'iLp98_jC9N@$GV`lRu`+XTNprWbVbi4\/JEsf;fFIotp(V]Q1^]UUJkNk?;ZOKuR+%-#05Q
+Z:Es#S5#4\ehH[XA!D"2i>WVWB80N/VLk4TeiGF4PJ>,]0P:\r)nO8;,R:eG[;d"NgG%"hd-S_0LHa)_LX.(Z*#0/m640hh
+iEtfkfTWJUXgLbDHHhtPC+G'9g#Ug9B`&d`E0B\oBa/>9BF[(;4C$@=Yn'0'-JYo]nS?579O8iS=&"9mf>+.H!/B&UBJCNV
+F(OuZY4_87_iNoG0*0*SJoV<,fYsiSl8;G%M%XE\,^N&:"6)a!!*Y:-RL"P=83E\Hp+1qK?W(r1[g=q:b>d+#L:Ns,e2(`_
+FUZTLaIqmq/n2B*qKB6mjK.GXfK`FhWY!NV"4C..k$;sqbP*?Ts+8>kT\FJrM?7&I)$":&;"$OVSY]tlg7*bu$FN0^_43PW
+:f*<rgk'7Zmt7t8H&2M$lm#3WFGhRJ#.Vn*$h&3QetFVp/S?V/L!jAY\"F=rMr>p8<SDWEoksrIaeX],9&jj$B[K=sIJl`?
+8H&(TJRe9lc8*Q3'J67ZM`M-?k<,5I3>F/b!Ib]sq1?hrbe?Qh/"AsRX(CQ`ZA:+c?_@;B%U(HK1gb]#p$`s6%M$)J'k6)e
+bT<a_ae1NpICmX">1)qp^9[#U at o<i9CV(mjb,LCUV^=jK#tik/erh\ELqW]UCP9n".f^fT\d!prnZ'_J)C at Ra^+@%4:L/ko
+b%%t,BM=)DG7OfUKo6DJfRF^d!n/M?Fai:/5qg<idorCH'n!rbp0&/\WW;i2*lnmaDR!P_'5VhFMkG)6L!7(HSuG2mdZ`B,
+=_j[J^Q:\tYPq>B#KW+;IZuDo/WYQ*U_3TN#>HPX:!\$-Q-Y^UE4dEqan3M5_5:RKm89`bfin!*b.iM*-^pC0?@rLI[)TT^
+Qe$"i<K5p&gd,gXN_+[S=T&RFJkLW[Wt*C4XSc?]VL*jr*Y#NeR"%J8Id9k?AT,Y:R\krpgXNR_C:PIsmEEEh<(UOW0=Cfi
+dV*_VMrkdq&G`r?At"m0F_RPU[37S/g['bC4V;/[',9Vfk.V3,n$5E[Q\6YdD-kI=L9)dl3p^S1/6,%pK\q&^aF/iXgBsiO
+0K&?A,X]Z!!bssh=H<P&GP]cF6X]<r!6D2i!`5$9TNRV(!=OqT4F=pAQA1FT?TlccJP at HhVBooX-4XSm`ZKTq6"PXb`q7<r
+#O.oP,Z9mh88^3nS$i^7'b'T@$t at Im^8u:Tc$X5_[VJc>95aVaFi.]9_n<M]enQ4VMHsS>[Sr!7a9u$a=C\=`'$=@d+(ZW(
+Ks$fi4Hu@>ab$sM"G&HB6oB`&L<Jq)5"]K^9e<\2q at bZ)WC at SeO'id^AE@"01$;gSkEA%^dVQgZY&=8=An:)"=(@7Qrsp;@
+1$1DsH3&;mJfg at VJ]cnkJ7fM9#qaT,_LFQFI<^"Z?*%Ri5_c=/SG8K61RrTt#[d-Bju8CIZ5QRRZTVP$gOYO[e*"G\$&I5A
+e31HXht*H.O!tMXS+T;hJ=J8"JV#_icg7O8T#'!THg8+d>H?COY(SYPSDP0!6\Gb^J*Wngf#p8-S0psKYNg6^ZfTiM6GVQK
+!mZ.NV5=B%]cI<-&ZIb_;%RfGWCZ#W[S9E8TCF`>@%h3ehC$0(]Vf9hdKb:QD8IJ.q$FN(^1][FL.48)##@U>Up]"90G_l0
+Ir(2k"DDiW2d)`E6mHJ&]rmRMR![Ct5sR3#-lHEG)=2u)#+`3d:X.)-I at A'p=9FR2ZSWL3TWf!_r]?mqAunU-.^4\);0R?,
+q&eLF>[PUub!Q'HT=GGThJr.S[*<:BKLLCa%$U`2mYCNZ#04]rkZrF"!u&tU*SrGs5KK$4%R1e2:A&_o68jun<c'N-g]u4I
+Mejm[3IapFL!h<VaHV)]],d3%mJB5Z;1>WJ`p><XH%$CL+OOI\T<12j0NoGS,W;_ at fP%34<''b^@ktU at U[nP';m7`uLE99K
+C/K.6nmUP[1dIkQ?Jt;t6RH(J?JBA<,E\fp,^9'gh;PE9(DQ[FmD*]d_T<Rn0%s`%@UuRE(>\+qV=1[h#H>_(;!l9t+NF15
+/MZE.V at acV@&3Ysb?L'i<gX&=aN*1krC,O5:,?uhi)M+AhXA<O!&cZ2*Y[0-cWkBr5Qf&GYr!*m"#lFcigEMA^0G!<\]U8+
+5i(ekJ8uga@"in1Zm8fEN\6foS?'qO+Vd^`cWP/?6k0*@V8^)XR03+`iSu,aCjXf%=NmF,Mie55i;41inP*.ON at uk1k#5m>
+=g0F[>Wd_CW7gI:TKR$X?+,(d;tZt5ZTDjR<^=&tX+6U-/a<T6joeD6W5?EI$XZ$_s'tL\UZ4J?1r55^P"=\N[hY9l;5aOI
+9=?CnP,r?=OsMVVOqjC+:*9iU$igS8"A"'-X;ieEZ8*/sS9#08D0MN,g$,'64gWm)4(fN0K_p3%G2iKVHd?+@*1T?hlDsZ+
+_[Xq?m_(D_L;&DKF4C!r_?Jl.bM*&ZjNe]U6DAaR5m:CXmG+B.a+fifn$$K0qAlM0+FJ>JK!=Ya2iEr\EH_cg:MBVRWYpkc
+I/<K%_K)SXJIR+KbZ?&H3aDi5dY<hGoR)4^bgd,T/aQ(Ym<SV$*spoMnZ0sh/"ZP8N0aoR4fJ_[erXgUfPs5hL!g1`Ai#\X
+)kb-t<Bjgd<bPLV#=SV5AVa/^U`q_gK._/#>p8d=,f>e\Y<k%JOJl<eYjY3p/4s(tA!N=6Nmjo at 4JD^`&mF(IgIR[AXG&QG
+QL at OnnZ5ls6L"pI>S.i.KY/#]i*`e\])qjeqI'r`i+K#:oT9Q&_tEo*(P#?aI"ak)a9S%9`D#"]@M.>D1rlFnXbh5P5/$L"
+V='mck)+g0DKL[g=Wg:fQ'Kk79:<?(3@>uJ:Si9XQ/7F1D=.\CggkS2?EACP0CfW,P at sQ<]ts2h^Jlq9=&/']9'1<<W"DlO
+1#5p[2MFk"$R&1h7-./oZ:ms>i'`:]'!brJ.Q*HBnc[]A^t[V_fL+]^#2"H1cL97BK-5c:B;mh<]_>c<+^ITc^B(XOr-BdT
+GeL<Yhcu#Vmf>CeKF'QW@&/pQfN%5!p/#C1m,#VS*Lm.2HY\ViQb2PZ+t"]C3AL:oL_r`em at -+SfPcktG_Pad+LMZPnh'#/
+O7eMP_(2d"U^Pinc.3(9k5'NpbW<TM06RR!loY?8^Uo,Uc^]'O#=dts3m&Li+g4theq@#XN!P?uAd.6+qT)_i%bMr.;:Dbk
+A0FaV;e9D8Pcf9=/cas1l'eNDnm^\!`(JGn3qe/\qEI/QIt9:^#pb21r$:0K9rX;@B;omOb'^bBBW=Cb\n>VI-eV_FeSq^b
+%B"s!fMS0dL6`U8<Rt^mZA`t&(&[A^_'4[`!;BC;Lf at _<'6b.gAs`p1%!NX>3ECnSCFsA<>shFUee)hW3._tWDF:)S=0?oe
+1W`8(`**sI'%=?n(G:)6FT<1r6-%720$Oc(6$a>+6[_bppuKr(0BP_-B1 at +[WN,;RW7OO8]]G!bjT'%"(-kp\$-#"%-4!^_
+'Mng?VTeK-I%gROJR>g(=*eT,j%oEjaD,=t1]4[rUZ\emSfc1'NVb1cb7Y:WYcVbN4K*78=R8d8DV03^V!%!(\k\%_9L:;"
+,Br"\4phEmr)4c$'t=.-O;)"KhUiHtM?W1lF_5,1.7hVH?7`F^I7SWp*cfdTR]6'+[_n]Xs%;!E?1rMgGXNem7`MKGO%*dM
+X6_j,YRD$JQLEW$/#sp43D=`3h%@Nen2'Ng'f#!jLT<(Tr2B3.FEL!A5tEK[!/IVl.XpE1(_<\X3S1BVD[3)B-&pTFkFiD?
+"*-mk?L5cSiI_ho1t]PB.<g\ia/k.D(:L.?o$U@/0Vtt/\2j28F8$Bq02ptR:X`^WK#KYf:]@89h)T0D^d>Y[W@'[!Fc4::
+=J7SA[ZTuPYC]NP at V9S_JYl7bWOEuT.=n at 7h!QN.k1U8Po^PC5U`mcKK:sI/k<8]c&uRgjl$m"!s!pDq;pYjRQ5>k"ErY"<
+#"Z6o at rHC7]AiP_V_2X11ba2(gq]5p7FB1Z:(9!Hn^t3#(b\SaP2oDn"nPtD.>'ihNNTd at LZh`q&61C</"[\@Tk.2S@@DV-
+=pZ7F'UF[=@VNicHl([BH-'QD>I_njL'n at KT,`4J,>dL_g#AGY=ooRD=Z-JcoF!+;\.!%$k"a*I6_kmd3GWdF#S+4pq5o^9
+hPQ;kAs>kuj/a8Cg:\lhptXQ/?c<W;D at c/3K#hWqDEm^Y#B1)Wq9[SMpg9nX1_/H<jQ.)m,2+$f<)[ZDju\H+1A?W"P$/+E
+&h$6JgXsq0.>K?IjKb`L\,L=75hdYt5bkB]b)88SYub3ObJY,!177/.WJH8gJF-R?RLjSDnd)+k?gr_AQG'E'6Zh<'DuY]W
+:f4)]$#mC=\d6QX+=.T+Si/iBK:#^j".rGiMUcqMNZ2Bm[&KNY("7(jF<MVe!J7]QOh\m at kAL*IA&GCb%&dOVYUnS:Yu;HU
+qhcC)@0T95lq/quH2QnJ_]<%lZSn*<'cE8[!1YpZY-&jm>:L[B,sk%.*2'GlE'0QlC-GY0o)#ZDD.hkp'4t$WDAlDL]@_E"
+j;3&DI)L`F+>2/./)YDpOOicoj0!akgG_9N9mcdICeSg9SCdPdlt<Slf2il5Y`J)#r*Z*/#8kNa'gQH+9r5K/,XR65J,7>#
+5/>dLaMnc;jTR3tdmOnWQ04T=Y3^7"HBn%>?t12T_d at k:iq"NnH3'XiLOs"G"V#1FPX[C^c&lnrBK]H-TJp^`rn;n(JPseo
+U#!2ALeriX&9T7_?Z<>UE^[9?X'io[GEb>J/fs]2Bb&->)A:/RmLLg%6_Oe@\-!t_4lZOOX6N!us3l<g'?Cm#2?8macFj=f
+IjR*=PPHq4[_r3EhMo?:nea[;iRsn[?**\s7CH_LeK+1h>GMg(cGLVek=a._;r;=d+u^7BVF9Z%cXclsA+!q.Z_*?K*`u;U
+gYsDc')XO",+3;ePf$VG!sB[%<k5SY<[j(<40`8=<`Mu at a#LdaX#O5[f$rRqcn&RT!K[N@$OI>nH&sd7L++#U!5;OF0pT#o
+N=7O*N";BW(3'[r0#L_tQToK+_De3JImN?!N1.kI0=6SLdiR at odrq6IlD"P"3aV.9>7+P:F*/cc+;Gls?QX1r1E`M?<m3^D
+g.V'-")[@^dLB5K$rm\=X'Otb$H!oC3IG/!0Z(XB(<qh?b0uA!<Oa>C+u0ZsY&kP;)l/HPTEo(+pC9iA`Uc)k)PD.Z,LRC?
+U,SCmlm<_aG8A*=m\>e;6W.ss^Tm>.`BGj7/^G+98UD;0/lHA2IN*WDDX4&9)p89s]-?0.Uh+gbFtB9.%QFF[2[fMsWk&$6
+qrYchVa=M50*q&sY%n5JgAF_5'i,OHH4gHc\QZ%$H=KL5D$Bn&+5tJ`c7;r.)miC`-oV$VFAS;3^j"ai0LA7bJ3aN`R#f?t
+6345VltF;><7 at GZTBHlYL`f:t-o],''B+`gF./oVkYSIh2bfs+ej at 7Mn7H==5bXY`A4:=@?^3khIooNtJ;&8&)R2k-$"/1<
+ks6M9RYbfo2JaWXLE2CYUZIAK=cfOB?,hMSWo4]#_^;Ta]d0mdUHR0pIpD"W&k/ID at -5<36X\,%$[K]CbAFf]3#CJbp6gi*
+]JWY(4sY*tV2l4nXBo(Oq;Y3$4sT!-/ISO8VTJn1QJuMjbp$"A,b+r"kb3kJjF1HDO+e$7phqYj#E,\5WYk2XX>VuR]Y`.d
+NM7^3K91P%WNtMSYcr7KA*Cu3:Uus at Tcl:H[Gr$Wg#drSDue#mi"a,L/ENSUZ4=:\.r3n:m0B5+O0e(Z4$ePZlS);m(`&pW
+GEo?bB+57_e2c08FM\.>(l"hA^H4N!"698?LO_6l6h9fM\I$ZN3045YK,g_]QZlmg6f!uYo%)h'=/;'?k at G<<CVk$=]a(dR
+>t8[O9NR(q;d]\E(;T"OnL:h81r2iCmj`12(R+"(Y@"^mR^Sc+_fOIZLRk-%^XfFEb/PF`f28gL9`Aao)k`;()6eIgRgc:P
+V='3_5Dj7-?b,4_kPbPO5Pk9_McW,C])&B\(HhiuMc4\m9*j+J`)+\c#3OE?6ed5sG_eF-3Fjf'':T$"k-/m\Kg&03lt9G\
+QS!\W5hog)J`/r87VYnc/1Cp8&W"el_t^A"T0722YG+Cec$nab"rbf`D&S_Ip4.*U0M]:jCci5bIgs2=4CdGSdNX\<RWe at 1
+`sp6NNEn at t$@>5]a!%HALag<BhuA%fU;l(qokRBqZ9%K*VfS(^U;YD8Fkp at r0ANe14+YklEO^;#V&n8U=?AE"5P_I(^jBL4
+e"1[:'Cq6--@;Y6I*)aHWT,\5qTL.m$JWAUNcVf:.uOGG!+66L"_%@U"S'UlRZ7&;hY7EMqrikf",JV,%3Qq4XX>W2'*T]]
+0Ms$"W<ALXW+];IGjCVFhdr3#Oct!cReAlCFH;)7O]`,LO'J?0l?<t)_b[7I4_rV!;J0jp;nZZoHA$UtMSfIHaF@>/Au\"G
+d['O<1L@?1Pb<d+3d'_GVbVXh\nFO^C&3A;O]91k<@[<[,k"#b)h:i3.<AR+QGYZU7YQ!->_>R%=I>87jp0AN70C'e=1Kaa
+pNH4moQs?G`tjRbRG&FH.8jgrEU/j+4?qhp\8n>^`U*jW?/UD`2t#0m1C?g-,VC2n3%/`6%]KpP/BEeO$+*I%LrKljk&1WQ
+<D#Y+;76.![<#>m@(m7A1p2ZmJdDQi"+DHT2OC^(cWMY(S;?=jJ;gbg@`kp8k]RGpkE(:`DlMZ3fg"k8EojcJ.4\j2+ at nVV
+K+'J7"p>hL+SGq'[Q1K6NS0_?jo!S;9HXAEh)jl;;I0g9/<b/H+JKBlfq2N[gCP:mcM[>TbDic0i0V#Ri$2A7N<@#mhS<5[
+O),7LH8-&H64]A[Gn#?#\0Ln>F;rQ=?d[_7'3<Rj,paKWH80'tU1g_gDHrb0W.4cDaeb$k(>@eci>;*;&_C'&.NJ.k(Q8p6
+&(#4$b(EcuL"MhhrL,:SIiY4)D>ZAaYZ<palIS%T'%MY;"n%EL:;0@<pq>=>mR;BQRB4scou,K#e.&cFXG[H%^-Ond0cT;E
+_%A2>*6,QIJNOW*O)Wn`l!f&$\Ef_dQGK's?Bb)k/?BcCN<_/LLXhlh;.-YeUk7(``J^*rCr1uSq-Gn/cDJtn?o07Pr([Id
+MPgnn%^<c%UN<rH+o6TjV@?V!-9O<`FA<*Ri0Xn$l2K(W]4Y'J1]g7q2A=deF@$9SA8LP3R7JOHNWg&TFpfRJ04K6aPF2'o
+KYu at ZFl>]^5g+g'*ZH\+i1r$<jju6f(.X;`neT,>\Nd_ncCS2J6dCnLD$*K"$t]p[<4da:!R"0I?4\Z=;E#g.o"9XuY2LLC
+A\?LG+0mpe!u#jSL%[WPk6!d]LD65uSu0gh1`B"QR^HJS&E;)O7+)eIDc*ko`V5-9pI^2ki`;14.uqbC<A7np+k7/KIasMu
+C>^:0G?&d-=/`'$*0nsmc()_`WJ`_]+\l"QhJtVW!/\X=_.8*'Zf*.U&L5\7M5Wr()`nmfOdEY3FGE`(WKo=S*2X.k6e^E)
+f,hVaR3+#01[8F<UMZ`BPT,aH]?"Uf6ToY=CEXrtHSCsff1MlHgB'Bi+.*9a at sI:pK9U73.!<(s7$Y^!1Q*JrIp"NM\Y9[!
+KSA!S%$%`(I2OmgQVq?\%pnVCI8(=[=<MaLh8u]TV6)O)JRYWM:`>_afU&F:J't4q_OFE\#*'7"AaHeVM*KgSQLDc-R`aaA
+,joR->Pl[RV#jPC at IQh\lm7XWEWCIR:R.2iWMfZ,=;SO.h`F)Cn,1Wk0L2-^JK2go)*jVf/T,876'I!9*dW%!ZpY<N%VV;-
+8r;L9.>:^tB<^qcF5mCAY.j8mDdN="Bc]U\KGUK#:i<rT&IOaAMU"TB:N[N<ZIq&I\B<E'E?ahfo,NIsFO5, at Cb#?&5Y(Jg
+-p(Z:gB6>b%EWp9e]YgAVJbcDn6X9Pi3/^C!-LRnmAbg.duoZINR54<B]7qBqB8XBM[g at gV"2sSlEAtD4a?=I&&CekjUX-I
+QTa<Ik6OO3;h39YCKA2G#@AMupMe"s_iKSRc<_c72Jsh[h;i!W'0FTl*4@!SR7fb28WeZ/X_NcnUk=gfE'^*Fa.\7"L6^oD
+Wo%Djk3*Ose6 at pSCEIT7%#SL%A?au!QqS_8QpW92k^@h9SmZu7-WRVo+0SLM11VL@!OR"qp*bnWjV8^-fl"R?G;8%6ZNVKg
+=.gaT1QkNQ3]o;Jk/988do,4]BlW^>(GrUaFTJklcQX\i1E1H=Kq%[s,gU`JXFdc:WlY+V.A2O7cu96#hpome'#L99DW%E@
+]gWI1R/;NHY>JQZfSIt-+t2$Fg6El9o at RmjW$H1\m$9 at BZ(D^u'?jN+(S!ZYImRU_%r'$S\sU/X"%PB,EerVnD*Ku?'&@cN
+D84'8JTm&Yg3ClkA/C^\>e_&D%IVG[f0,mWV910.C8dikqKNrT&Ddg1Ds`)"At6VF:/j2m'S$C?#V+m>bWGBc#9j3""87R*
+GHjaDZ-?ih+k,km**+tiTjFi$ldju_eb.a9<El=V)+K]*JAGTum-QRX:p'Z0L:fqM>5en>-;(Kn!)I'G9DQ9`83>5@^1Sl,
+Q#h^df"O;`S7J3KVXU;p[hGY(;_o+(>;NK^ekfYgoN!%s>A.SJ,p%L`oGC'oQc%UT"A0%eY\^\o1<]c('g7A=N`';5SrZen
+Bn7<gpl/F!C)&q2g.J*`KbKf>Q6M6603'#4m(,7Sp99cV\2D+YO_$a:Tt<ZlHT at VLZC_k>`D0H"_CGg-$j4E8>Jn+IhAe6F
+V3DHt]-ufe9A)dLbX2L/Y%.ONeT/jLA_9X=QS*WSfj50W3l9X9o)>)0nXc4#jI@`HJlT$954jg2''1[YlYtIi.&FG^0-tO_
+8C60+"f8JjDPg,lPo57%:;.21D[4i!qTB?1C+b"Km`HQsCNR[4gocTd=0]*rg1SK0<RG2fH+\4b`K-r'k<1M8n0\VE.))r&
+4i.Y9mSICHABP9<4NGTe:"t(W(a^j^P!<`7/C[tt34=W_Wl#FN)B&_7.`"8SRa0;-S"MCskRAtH-DlHB'LM\Hj1GV*7DSW*
+Bb>$.j463S>,/oKdc%kU;&.E,EqY.KR0!_SmV.Rt!Pm.!&qG)0r<%mHg7Db at S8\X'eO"l0Si.YZ/Ij;P.\M?PYJ at TUR?=pk
+fY'XG#&Y,V7/>Ol-Y/i+F<gnlC\9d2!l>LM`e5j*C-c7'OB7AT,e17&*j;Ou5$3h4h%ju%9c,R%iSl/%ETD*./*<?Yl%OQ9
+TTJhWlq,U-Qkm!:C at V(an(lLe&N at hq$"7``j.1#;euj,BT#^8EjFe^t3/_'#"To:%>*!?]Hoe+;8?N`^Pq^tO&H<"`&e]QX
+c16H6dRRrpI[,L[Usghp]Z]?jYR/VGGAd8BgQXs.^_1%098UmpQqcTt-0CgpiRYtdN!*5Of&c?</6[Wk at Y8*Zb!cbq^^bhT
+r.s]<&T=e_oPo2AKafajS9K`,SWBt]8,5.3 at QLnV!g:)P9D)3F^f$Z2l%%Oo3Q%!2[T$N&BW?O$ZN+L)<Dj9*$Aa<T!nkZm
+"]Z\=9i\roEguGjIi]I7NP/oBm;T0R^L_X<jY!]&EH?06""96TUC%iI`RgKgg6GZcJCR$2oWq3S0+(Dsa"t1?8cpR<`;m@)
+eAFnsp`VbbS#N+_"o!Y5j at nBW#)S;@ZL]QZW:*a#^ikJj$!NpH&,Wr0G#'NZ0R+R4]u/pKOfn!#PQ6*]-JDZVRkb6^Vor7!
+bt2(&>Lc?h%k<nUmetaZrP/;08qe?u!%/mJ,lmcNV8siVf2'CUNhmH7P>;>^@ta\am"4lL.>W+dION;r\c&bco9P.f4MurF
+Gs at NNpE[28_f5;7TmB&'2l&W!euIj/m7X=4O?2WmLr.ebqsGKoe"N/%U[\I;=@)'!1$1t:P6QQ<g#+g?jD7#>MNArT=k<D"
+G-cc^qYUTS_[GW2cXE<Jq^hpEWLJ(]@\6Ab@]8Ed(Hr8 at 8]0<L608k7$tipZ8L at mK/<d9ri2ERX[nsu>L`jbkKlj'fYK^H_
+',q/@*kN6*lIZIdJjtd37\q^30A_XPm65;#'HhJ?Bl1;cY;h*N<!3L\)Y#MlK)MnVg_i/g)rMi#I06srG_ at jI\5-XjZYEj2
+#o1W-40j=;gDN(;b6.6Xj\"Db#`m$7pFmC>9VC\WRFD)c[r8#GDdkF.IP1jk-Pd!B"#Go1PDSQ]mAe,k`fO#ni\%1^+G?Y'
+on<%"WQ4O-]9;iUNkLaaDUaZ4/:DmCb',#j?j8k)Nr/@AKFt4"iNDA9I"'qbf0c"3]q?8`OP)M/_Kf4oB[:2_4L"S<FM$<\
+f$Um+_O)m]n[X`NWN&[i\j77`bI0bMHiTi at P[I]+9SP:12["TgW[I&VkG]uMKqr7K#S'3cS201p3<e/nDE3-QH3ki-CKJq^
+SaHQE,McCi&EQC#"^5&J\4V1NC=KoBqoo[QD+j):Hi6-MeOsQLI#b>-7OP8$1fZ2;V+i6T at M0duC#kMi:M9*G\oZH'>8B"+
+Vo"aSPoJLLLaLnqm7N`iV/)[FS#9((<iZ@\3P'l*ej[00JV(J``-u"4QkF5Q8X#`A!LLOIVa`"#"&b*$iD"=ZL/!U;7Zk86
+_c('Z<4tE9r7pPCdV8&B%]S@:QbUAP,:?DDA%5p+W@:)-\haHDW&:/*,tCsMEVR!fg_g:Qlo1J/^WG8RB-6K at +&!JMb^QNQ
+dU)4[Ae)9J31?(6AN at Mc]#saR-m1#E#s>Om?cl"]%++IRpK^Hul>jr&8p6OZ5lP8'UTlacIt)UHc-"[-.JbR6/32is9"CRj
+*eogu7L;k?4&-"a2%*?a%[`fPHX/Y*-V%PK.u+1]/d4G+j`eu7p\@6qeC(QMZ3;1FR\'>aV*o*X$V"9s+g+J>Je,:)<SipS
+P\F\a)L:#iQ.jbNo'lAa4+iRbriRcJR+f'.+-$)t?]4;AIOrJl6,BdGEHA@"n at R>p4<q1R*DQ.IF]cDSMEj)U?'M!W$,oXo
+DGoHQPU\)L_kP)I:43_D!W!fu"?R&[`SSMXJc('r!E0"#%17)n`LA!%TEhaHNk+)7gd:;]Q\bna/WWOf<L5nh*$=\r79F,;
+"`?N,I'?/DH]-]=`!r](RpB1H5oJtX;rUTC8*G9C"tgD1Wu>am[DX#IUTr,>jO_`VL"S5cZGadq;@eeBTK.<r+UYkfAJ5PN
+_C9&P%f9)er at j^P1#f`Jo,K4C"4o7[+`+S3]Gj?I6Un&?0Vu$Z5;`J+]"ah0$&MC;F7r1h?@_gas+UI]d<`^A%g=1OXh=;2
+DuAN0/D<AB5$>.C72IP)bAdOp&#Maj^bq$"B)d4XB[:0I4^d;Y.9UR:QgeVUqo?FNpTXR,GV8Joh%pfQCt+Le`\DS/IV:ui
+O=Y3-^^]kUX7,oAe/-$2,W%>V+htFH$*_NkZ@"b\0Y7H&$9c2X06P``_!CuU&HJ^<EgMYN=LBiW&,#7&WEM,Yc6&JKhQfpV
+S*HXb%E#[%<*2ISf9aH<=lVj;)&R+i>E+9QSsq&,0[Y$s))GX^dD-$-#+]k/SaVMi!2>le8.mRN,3B$CV>&M+_r48g2N6e2
+)iR]p3fB4)'W$L?:j at 2rF,d$q2Ht//3P7M^]Y-GL$@=TSJqP4H7$-KI*hZgq4i8.kE/!N31E)to/@7F70JrMhPOW#qm-bsZ
+'E#_5fOfjN[Xn%G7]=*qGgLJ5YZomPc'$Ybr8HVjhn5-WG<LiCk)lYti.?=N?=K_3lIJ,B.0^5Y at 3Bjl"#YG:RNuP at n&:Oa
+;#4f2%f]mb;ItC,J67:MFkk7Cr'ICln%qRq_6Oq4+YNOjEQOtP[/u?V]5Z/eXIiY)3_Z^]'`kIE)q-DK)]!Rq4&iNf&9N09
+J`-ek,%8Ba+o$h$U;Uu!`7Z#c^MGc)-f#AIK?$gUT8_<2_KP4IfMT<XWH747AqNh!s10b]Cb<OTYgp,mlHJA&g/'EH`6.H5
+4#s6#Fe6#@CW;AB#3$jBF.u"2o at F[)`4[sdh)ng2"DV"(^CN?]7=0@=?T>!>]n[hee$mYImsnf^os#$g^])nb-GKNia9aD@
+iYKOe]&/Zd6U_r\*mBLSWcb2u75tlG0Ra3N#6G@(fkMF3"9+!C`5VKIk0<O$=O$:egU\5b'D?2oJ"ko%-aCT%9qVrFF-QJX
+f=GZ8Ca<*g&qIGIhnRP+PZYR?6e\.A:N&0Fe1tI)mgdQG0tLp_c?<&c(]qTnHo?/=W1IE2)Utm+8bSFUQF[F`G8th_ZXdQ(
+Z at HnM(S_*KG84j.!*.m_S^]3,;986]Nn&@QDHc5$fXdU*WeJh,B\\OM]jJ(FN3g/;ARPJPAhsN:[!d&Xb'1,M]@'5s*e3G[
+N[g8Q2E;I;l0>1`AI)/!df8X-+UE6*bN\fpK(Jq>CXN!dKV@[1;ol+BrAmFEN.^((!p4Q>YBYYPH)'n-2irpZ%r2Eu/lhdG
+;-Sl+h3>cY8dOF"AOB?MqIW5=?i=0*qkYcH/58B*g^O56E4VJ+gePN3,jOZke7I:qUF1_"&mW5tXbCrkmp9KP"4dY#En;D3
+>u_`FqO+k!b[[%AMiq$!qV+p9nO32-9!&Q>")b+oPu%-+<6U&oJ6A.-".S78I!a\74!9"_<=1s3le&g;/JqU7kr-^#S9d)n
+1Y-Eq5Q$5\cqU>g at bor,Ooh_&FQWQ!WCaoKpW"_*LOO1.%Gd09J(k9lDl>d09,lV2Q8uk%BX3)r#/QW]6<*4fi/3s?cRKU4
+C9U']pPN.)_3j]r8MX2(N7/b%;;!+2+^GNe$s"r;H:`/T%?5DD;N$F7&#e0NUD'J'JAqPr\X;:C5a16cdJN#QH&*_O?[o(]
+PaL;c`dD_Fj7%;Nb2t*q_=E.L9rVG^*Ym7pM- at pOXdFL_b!R2bFn@@[4g_Ie4]HT*ZAPuDhR?\7#@-PS)p_q=gHlL$MKjp4
+>IVWnY-\A9Oiu7 at Y'GmRhG#I5<:&&Lg^'GVhZ82/TS(L/euWNjk-(N8X+[ch"/n>TaY5%Vi6A.*dXG;i^jd6\3/i$H]od&q
+%i*MV6EMXi1Y>6l">Lse)2e<$kA\XfX].d:=Z*3P<pU7MYG'uIOW1j[,*(=pM&!\?HJ54 at I.Ta5g1BQ&:Z7l2-'jOj_OGb[
+I`O\S$8N3hnJ/E;7+YiuSi=.\CCLZ&<VJ68c;lP%@HmP+Siq;cCFU2Fkd>Erd6IOT7&'8OqX!A.)cJCJpMRlm--U=]&h*Hn
+8eLfeo/+uQpk2Uear"O(-FXikg,TZT"0mPF(=j7!(M]6Lc`(6:^f<+l)gcL<qe0TnB at q.p(+\Ron,79QkGQ/@`W0aT.E\jr
+D``6m$[>"K at 2)cd5=d7poeU6pZ3tNVkHR)i3#'_!fRuYFH%`#>=YQYBP1J8t.:nB.Y#=OGDn!"Ge>Y)id5+9";F3u at H1p%D
+B2IiG?.aVq/9KtE\m\7afRdaT/Xp3*25rH\p?H3GO$uHiM,MC67ba.n^nAFu at C^;t_'5`f6l*-%$gfbZlIH*#WHMiT%V82)
+fk*JA]-7N5^\-'V=R9L7,X=r96f(inZ?`NUB(4#:d+,2lM<k90m at t[MB454[pf9$S^_9eM<?INa\_k!t=Z.mKge-:NKs3Te
+Lt at k@0c%B/&jTeGFl%c1-*l2_`!H at D^N,)H'O+IcGe;/c@"cZc^FeuD[g.V^1$\,qrK^^iO)2Z?Nc03()8Y?9Gg3r_/?umQ
+\Y#].]K"M1SO=TJAq]Fn6K2Eu[+S&UJi+\dDj<g at dZr?o)rN75/rc+f`Xb0\RP^_HHHVI'1n?Z727\>,<f;A3=S&2%%m[\l
+j3BNAGnRs5jHt.Hi[Z<57BnAR]!`8uG#n&2Nn</eIXc6FjB!Dt[UNnF()3=c`6pSW"%Lm$YBpJf+nPhRa,ZjRQ%B/h&4FU_
+aUn_hldnRE:$f]8qN;@+:ZV)QQ4!oW,oAV;YT.2Ypl!"f&ApW,^gj42^JAoD.=OVt'eQmpYR*%)P;'la\'B+"0\aK/$\heX
+$6m<`4`baB1LM*k=;.8p+]\Nf)6FD7 at sI]F;skef=J=QU8E_T1!GoLN7[gbQE1)3m#mhDpqg%d?k:sdiBS"7!YTQi0P7;4,
+S#m8T/@8XAZS&CZlBhq+Ol^_E:$&K`$FS/eT8:E&&n]I,Kmfm%c74"reBkVtpa*GEU1lnn+KSeJ(;lXX3FPigbB7S%"bOo_
+5C,BY&N=as"V7$4TMB@\2OuaeEK>Gm3"C_qnAkm_)b`#o[;T8tOQoW%OKiXp;Wb:&!?CcPO:@];#/]]"2lBcU`A5q%*%Q%6
+nE+^HQJDCRgqp'QIb0&++,o't*9Bn#^AJuu7b+pGV"FgrG0H2podu6<(.'&dFB at a@cXSmrYeEq*gslm at f;[&t%Oo=4[MDfe
+chJ at lX8D9&"I<hH#F$HWM[t/So3g+ma3b.q09gA_S6WJ$RZGdDNLTb#To&,qmtGTY*=AFuLpJ2=5)`NIKf7rU\8l($F<A5Q
+>Tef/m4pZ3!'g1h. at If9&T9&<=ajuR$[%-VK"f,A$qJLOBSHrKs-1.RLr'(aM.2_QH,>KCODVe[5:q/78%Hro/uk8rZf-V[
+E+32kidt4I.a*!^!Lb"Z:1P*a]%63!I`N2]0fuS)9Sln95o22"$WC]23"nFo?3B9$9)=WmFjTCI@[n"`c;<@JlH5:O.&`[/
+?LZjG.=D_BK\;"F1hG\pL3^=WL%[bfaK1c:YL at k#p0!^r?Z2mgZ:@]tRCZL4^Yn!l_<[3?O]7B75VRq>W8b.O#lL]r,WFCO
+%7:Z.(l!_WIYN^b2)J1%!Zs*T5R($"*S-93p0R*kNQTUk6\jOY_JuQYU33rQ at BRlT'cS9>o+P,ET[I`ui7&_D0+OqWi3gif
+>+scT)$[uHrpq3/m_n:nN_tt\DenQm-cJi:ghU+Y^s/&'B)G8cO0E%2EuO$2ZBHmJAa!]oB,rrPK:UGUhamRo+p6XLMZ$-e
+gS:T@'25[aNJ;^3:"uqn4S+2:<LUQdouB"uo1#_qLX0;-`nr[]lds/JK"/3pWA;S=9rtrM`'SfQD at K3rBLoL4CM/U+d-el4
+FYBU9]!N>9>d#*t0-$'n(I.2(5Q6QW=i-1Gb'^W,2><ba?FU_.Z)m&(T at C&-7!01eQZsotEO1);T9g"[N4_k978glaHj>jq
+l;g9e;kK at XklMLUaKlu(.PUJUH[!BcLGV*\\n at l'g$V-tbqm6p0JLARVq<,P6ADbP1iPc.*+97ki#2&Q)g>l?:`Pb9H(8U.
+U)tY<32[lt$P/`O#I9B:SL+pdH#mL$Hbc&4Gk1MLquS&\ZI-c:OI"%l+s_luMk?1[4oaOgDdCrl%[Oj%Y2<%3prO$_]Q*N'
+(N*FV;6[]h\u^Fb^Lm09`+j69;<_Y<*0?U(9JnE/mn+hlH0g7j*-3/@T"[(D8;u76qHgstRHOTJ_85PqpY"/1I/pQj18DcF
+lITMZ)OiOliO/)9_GuLmdGX5F_fI!,$I12%*fNcrUl7:7kE3.39SueWFHg^^#?HU??.3V=SRV*r'1fklA#3ctdC*dK!,;m'
+Ui,isP?p4Y`lec(i9V#=B/O1.#UKDOK+5V>aV[,EC"]?-DZkFR7?:i6@$<BggSj`L_%c1iD(=.0L.J=DM9'jlJIXK7Kc;F:
+dY\X.38o.;8FTo^3g_3NFuh,rf`n36gkZh#>kR.a2l>VrbMmkgVc$2Ni0(uJSB[cYU.06%,"7RHaS6^UgcEY5D(s-EZPO>E
+ at r@!'$<Z*+q/k9TfAbg\]'Fn_98/+H>ld2kKG-UM=ig0h%_+%s]Vjc0O2<K#^;)c>E]##(4\D]1S%*G40.-T.\P#\\Z>DVG
+4=KC3Ijb*aR^^(qqqiS$qLDM4HKOQG-s=`CR;`LSQQ?)XAbDU0p;VYPIf@<Is-83@%4V1X+j)@Z"R6KGY'tdSo at aUFR*Z\G
+DT-KIEgU]_IorF2W`I+G'ftELmh+"PH&GI([.qnEi+b,XHR\_,$0F+?6\0T>KSDl$W@`\%kAW^s8kATV20>("K8;(bU8%aE
+^"!@&IoU[/8Q8i[4rZ9fJn&^IlHRjDB?mOdkMZlXX.559UD1VE?U*hmLU#>'b/ni:Na`8V622YZRaViA3\G at 7ZP@qiHf?<a
+f&optB?YaWU$u!;;;be at I5n53Yk$,B at K>8=F%"P`[g&.Wa8cA(4_Y/5I\tZ/,u;dC5UL?T'8P2J0=jHbp+4PHV0O3B'=gR'
+N$7]&b`$RIUS_21IJ$:;:'JWBn1e\5C7,.0Kr9me^5>"0B#(K%MJ+?=O'kApg_`:No741pNSg=]E),gO)a]6XC-tJTnDK5u
+g?TiC3^i<J29&Y1dU\MMk?`%])PJm at l8G(1T\euF5peCETOAM8)Y[HkG_GSahNSi&TDpr9KiMX!^em%2!2Cn[OW_)HpgWki
+Q:PgLke\taFLA,T;DEAs\nKE"pH/l:?F'3?fQG[df![JhZ0)4dF.&/-iG.$qn2;npWo/R?Pj1-k#*P0Fc)]0CIE):;k2Mr5
+qW734h.fC[E&<HH1E!t="HQeOmU9J)[Nto7a<-cYB(FU%1O*L*hdqC5YA3DeD;%WB(H%ODDFuU*GPsRs!G!3hYIa at GluW/a
+/ss#A6ifL50GYW;DLU=u;RQ'H<hDJ:[0VN<XZ:C<YB3)i0esr_Pt4(Fs6WgQ4c\]Mjh,lB at glmi'3/_>HqU.KS3?usKf2 at F
+f5MW_=*:OnBqIi(@alX.Nel+'ZQ(e6]0I>WM_'G'0]DL*/6UFtSn>cu6X;8b'F at r>3c*J'TW#.85RRj7M3ndeW5QDd'ph#e
+<CQ/0G at HPjGW7R>:i.;U&RN4Y3GqhG*M^ss&4(:l"2q3S#]7;JH`JRug&GCPd=%G%(]J2\6V]94RbT/BP%fh`U_4#n2?`:h
+4>S56qWB=u+N9o3iFQhT9:"W!i>3#DS9*;rZmBZm+kmKnLLXZW%*YLa<GL!t\jQ0<0EH[?X($u/Z+,Q<23OSH9$%u<g(-8t
+'tR(qJH\ej[p$0i'mB>%+h(DCaDgN`86CR7'e+:WiqSMZb7fQW*1gp%%`o+Sg5tf,.rHDoMVahH3^e@?.2pXt>jd>JY$HbA
+0PSGF#)si[^i?Nq.q0"\.F<-s"6.nN#Fp+LJ7UYTCh&Ht1O5mA7G7$'S2\(cgCf7Pl#mZ'XBe9%T9)UQ13#A5Ek6!?DkYO<
+\M^O7J4Oe;]%,!t(.U"H^^,)kJuDu>\9sZeN]IL&$6a$%TlsF<;q9(6mYo\-Nak&s;57TH29k5)UBed[F#jlU*OM5u&Ale!
++H&YeR:o#QE<.pJM^=CVabC)^RFE%23&&Ti>Q-EHFX at dYe`Sk>#=OF*74+0'A`XsK(;q=6:,c2SXp5a+lf\6K`]q*W(c*k]
+RT.MRbQloej;<=g3Z-DL>"kZNM@>0[1hI at 6\408I+i/O>ghGVr8>Y2BI:]eKZ!/8/GDtM3Z6&IWCHi*NgA\0j at r%g-(#^qQ
+m(#<SBab0B)F:6e3)CYDBPfdig;>gm?)sl<;+/H>>>C^`4M?oNkd9!#JI5>d6;iX_2m=k_:PrG0,ph)5q!![>W-&1t_2LGM
+Vb_dKK&tL]0/;'S(41F_Yt&N/&ZV"oZ_js:S\#lMi%%QooE*6q\gsA&O6IkR"LLmQilBXT#/Zc&;UGbS_kBo25T[ri)U(D-
+O>`KVL5lWW]HN?Xe=ac(VTbgN`:B2$<%GW8Oq]ckZ]8'7nBQipigNTr$"[3YR=%PA@;b/g1bcU<\$PZ%[3*Pa@\G&.E>TYZ
+].:WXnbGhE]q),=,c!/<!bMkDlRA$)J:Dn5gt0RDLc#W6f0%<'G3*\q*[XP0/3h4paqR:=bAT at r]Z69"Kn7oJCYB8X!-,]5
+MUVrpVD?-O6V4t5F,%M-Ue'JcHA2LM8r$JC"QK[X6WG#SF`ORlj<sZgX\,UGeCfpbQJ?*D@^DcpHC+;OG?N=[#36'N7RAg:
+[c>\^PR`ucgQ)n57!TX(*KoU;o*1U#&[`!oE!dNc,&8mcDd<@sKQC)=_=Q$X$.]/)a&P0/7`q%JTedS1mV3l[!sQE^2^KAm
+F\MiSI:8WKStJ"MMD:_KVet@!_\GW2/<+&HB]aGt\`aW-[TF7:VPbWX'5WWt/aluTn."_.BCmkb<j`4J at 6eQ2gKFEjF(2Q0
+(d0'KiY^:f.>E$0s/`g3e'[s,Xt*cMj:<'>1"$4WEQ_A0?&0qD`oh?]C%9K-Z=#/+]WVt<//anZ<URVMKPHeN/@:m=lJ7%F
+Kpd at N9MjLS%P7>O2h(6(W%)Pe@]*A.[XrOd)6_tN[T^?f_`gcFA!q>g."$u8h*RUjp0n;&>(i>1OaBP0EL:BHJQXdAZa^l3
+9\#lDB"aWWDX0[Y)n7;nr$gV*m/%4Q^/moFbuiEZetLKt447XZ2rsFGrR=*TY`pttO,MB+KRs;kV236H1%;SlRH+P)Jfe'M
+P#u$>rmL0F)N^na2SXl#c4"Sj#GTBdVA:\_1Fl9dp$,L&`9bq7[s+[)p,mN],L$/@(8fDWWXuZ6C2lM at 3B<nPl;r:)Pj,R_
+mEnL)SQ-WQ"I*_+X2I`O-'+3i=#:YXhE<#,$d$6iFtKttUhO\4IoYV2CH]jVi6=B72UmGK;iU@,Y\6$d`C(jXN-5KI#%;XS
+bBj9X.0<8sTt"65og<B;H6jtAV="^,^&_"=mQ%8'KagMOm7QCh(aCH98_:/S5*b0DQmVf*(QZss[:($D^MVO-fpF3V&*hbB
+n+qtE at E`94"]CY7WJApMeqb>ZgbfsM%]M"=]P3;rl=KZ*8D:.R.:>Ru[t_(`RJNiBP"/J"88kGl9:!<:[uHruhbX?N4"?pt
+I"m@!WO-/>^D82FS5V>%"0<aY%AK3n6WW4l2lun<o2FfddFH[ImM<XEY5;G*><eF^.($\7NYjul&4<_bE4bC<apa/^%SNMo
+h7Kul:IciUA4t]`WS80;/\oPs[aapT)$<XV*iuM]pqc[q'8YtfV9oJnnt`LGV"_!:93VU*0Lc#"Rk=PZ-+e at 8B\fIAOr-#)
+79#R]dHlB"0r4mT_[/7ca2j^3.*Hm)UEVDQ*F9_IJtW0tMs??cM.rb&s&l[7iOk!nK(fc_Y%D#$0[C'M&WE<kVJHtP<Wmp]
+TK3e3R1'pCIj^3 at Z[7O3a%/V'$[4mWi:49Ce2'L!3Bp2626!4urAg*"Rr;?O*d at -!%rKC2CsGB!A"-mDXr:s0XJ,!le^/2f
+nN/En8"KAs%Nl17r\)"=s4)>j^\U_*-f9H6NMCLLRL`"l5G]LPo"Y6@<]",-F/Z$pi\enr<sNdQ]1BO;CP9mjXHA7U\^a9Q
+>/\lklGi4!DT._-:7sG]fuKRB94fh*gCu":@q2P*Gn2r:%U4%BGT,4N[O#=ai:d8(oeOM?L-(\UcmoWoF?MH6`9H+oP4e,b
+$s/_"(hcHu$m6L>="s&1P/'uPKuK_R[#jjdlVhY>K4#-/6h3c?;t*9Mb1gH?84-Y1o=/"0\3%/F#GnTV_ps+t5kVP'<+APZ
+mpP595]XR-*6,d&C)g&kq;^*Bn;0a=!H=RNV1e:Z70)IK@'U'^9'$a\Z.HdQ@`,(,-bll97C;6_HQE`i'F:E#4%%IscDQu8
+0<_%Bp7>brCI5Sd5h/>XL17\gmoY3D%B7BZ9f%c;/%D&0\`[W>)BWe*l:L82#8-kcFfW\?Ki7[>VS!13XIs_u7Z2>Fr<`E+
+])oT[gr2ss5/`FR)E*_S;mT^<rZ9)[<-EMC)JtBdn, at qBX&hR7nm78kMZN.[43 at Q:<dXWUa5?B&c/iaQN%=?CJiuRio:rN5
+N#$frBV#3LiK0TE at W[CgLRW4l,P8k4n96Ddm(ugU%`YmnO,#`NcJemATj4-W_Q>[Z:Y)%(/<&-dK^g@?E.4c[)`BT[q[E*&
+<=+Y<)<!j>8NeU%Y`@BC\$A,+Z'0JL;Tf?)4Utsc(;(Bg=U(\O*BlZ!M:\07_4/!2BF(c_ROY5mb?.>5\XuR3E1gX]+_mA(
+Jh9Kkc[-og-lVY at hLl=lQ340o-HiV2;AV6J&4lJ>$,K'`AM0L9^7CtT)&f_CmpisYa)a4qNI>j>;K#T+#>0hQ=@tsbrUAh/
+Wg-JR>p5KXUa*W7GH[2(]g]b<NX)%aT+g\'XSElQ2Jd*Zc#BRg>_F#Q7Zd[*d7Be[[8/8jM^OW`VQ^+S(_*_%OJUM'HD0Gi
+#$*'E*KDDqLT%:ZIa,^.?X>L4\c]J3/Lq:ZNdn>bH;.thbTD;rr at hid?1WX5=0Rc&G&M*<9l1tXg\Lre*(^(/7FVJjZ at Q'u
+=I4I+Mi at N2PGA#ir:]#4T5hV#SuBMVKspuAs/c6q6_<Ma\Di"IZ#=Ut_*P/nYqcu;*+[*H4&/AKQo*:QMCM\0`SeJ`moHXE
+:+Y+5,Qr<gQdUG!&p.<ZB<"4Wk><JoKNgkeU9DE#0mY$H&CSXHaf<9>;XpBkY_")u>+ulcfHGJOqqQ=F]F`(An9u.c3rZ$0
+7iWdDS'BeVQ>)A"3_1Eu<*E2<8B3b#qcad38=E]Bpnm/QUTo+.Wmm4ci_CGf.>gL\.l0&(lShgu'[>YjGP&,ED6Qcl6>X/N
+XQT\H($7X=CdJui?*WEX-[cB.=L at HGTq0@8G`joF[VjLBF_V1(Ftii)=1W(kA+r+&c4&/_\O?`#]al-,2ce;X7lFah9*El5
+q:\Tbhcs6#&01Co%mksF[&\JOX_+4<A$9SVkh('1/RE4_g6ImeG/e;uN,[:ShR2l4dW*(,nSu1b[I0gGb_&_HpUp=*o;'i(
+D8QZkG+h5,YXfq9n^S%#i(J-1[@WqOF]=iaghmNsQQZ;p6^4s)7>)/SRIje8.]cT"JO2G*`sq%Q*.nS!\URYqos5L)W(uDa
+LCX[KRl2f/7NiM&/.1S*A]4!T2?ef\,Ji$Pbp%C7Xb%U(VVo7M^%`0V<"R#=."b<Wh+PRSC@"%QS-L1?B_FE?ig\@F%QWmK
+,VEst<O4eWkkIo<@Q/a6L,tYi"JjP\TD_ABpq_G9Nc"b.FoB=bW_n;MG*N&[QMhmH^n6Ytmf2>r/;Lc-h`1'@lA.i22pBg0
+XN2+D%'-$8FUS?"V]iMp["!45)FZ2MAo5eM[(Z'7$3Tkc8h"PKQjWhGW=VAG1A.ftJU$<+W'g`W6"_a?aV`&heRsO&FquI=
+`O]+-4,2oD;ecaZ'i6)VihOhL&Ge`Ca4o]i5+qIC\%=b.S3-'HQd$sJb%Jkufin(MRh?YoNB%A=_kmF2R^U9(lgC:'_.u(u
+;9We`8+/dHh$-p(W0e%7IiSF'LUkaOc'm&Q):QKCCL\\)D3L!oB^o<nTMa at GAO6$;?hW2LZh;d'4Fca!(jKP`qYNK<FMF%.
+lMnIjrI<;oT:a='5B#b8Iq\H7^&Q:I=ke at SM"oB-RJi`o,$hZu5qH9cnuGj*:FgYEbS34l;6!hp,IVn)mJPCudAg7pi+5o5
+.()B$,=]3j8Y1+_.CGEN1>b<B,#"H`nDpiLbdL7R'P0QZ9@/3e9R_QJaAOi`V+>#u_9ZW:%0 at 6t0Gpn=ES!@s]Giq&F^bqB
+OMj, at 4!X&[nS(A*#BqA7De*O(I>CVP&,"42a[95ld3T$One0N!R8=qEnK/T3:q`!Ej2o)e56[asls5t]YQ.J5Mt*7B++OB"
+%KNpBc==g>O"l(@lj*#$]3=8^=3M`CnfE)%O:S*60&HS-<.ncC^ubB#4E'*BbC9:,gt/^Yd at SDHH"<dj2<8%&,GQaB\J at 9/
+7Umt&:TnOC/%;Z=G-[6Io)WmDU<mMU-fg6Wb8a)1%1G<JpcQ!Kc$lWdq*]p[f2U)4=K"-d_=@o49bbF4Am#L>=:Lb(T-NQ)
+lD@%J`Nm5WarNJ7f^2KiK]8sL>3*lE0AD$Wg4KsS3B?OCF"Ueif!pV[3HO=5N,pjn_qQ:oGte^W;'c7Bi[9G<>rb^JN14l/
+6s%[FK5lYfK+Hk3nab'W%\js2Z8C'/LNI!00*FM)#XE<39Ucq88>NYdUdCDE*^,(o".h>k^_Hgri]!ho#i9H,`i^JR_?O<^
+;j!!#\i$`@jqX]-A`b\C!KC8?;m7>a"A9oC-87OX:q\]+)/<B'(IOI]%%i-VGh/CqeYq_/X),2W'2(WcWT;S%Y((g^qd4i<
+rQhsZrX\^B<PZM;m#4 at q"VO!J/Bf9e at U:gG=(#u5C<PTWUMB"CFa(iaQ]G.67`;45i%,aHC=naq!&>UA_C7Bb:tRHeW:o;n
+6`*b"6e!6MWL(Z;dBLd(]+U#/*kKZ0^5g=_$?BQn1J0P(aW[\"UTQ>@EdcI0PGdC<_$5FXC04t6Wg2X1p-GU?EmJ!LRME(m
+NC!(QT_Gp.$/U_?2+Cp8TRf6M#9_t3"P=VoE/Yo^Eb$mlEVKb\a-L%R!/m>-^OZRMYaP$&D<hGIhsfF#dpD$7pP,pb>I0j,
+'<LZd#sImdc8f%rU9+C`J(FY?)uG,7C&`+tH2"K.Yt\C$Y>=tlpTjhdKl#"uN2NP!=oTQk4KpGj<IeZGs5]Op]!D4bAte at E
+?-J3[ZsU389nj%\[rJb,p+Q^#5b'4Lr[+,g0[l>=R'BSh\SuLiULphFs&UtSNP!2=ObHSl*c!KJ(A&WU))[jEhGu;)6H9Zd
+G2^pu_f';jp]5a(0m`e4a:$`uEAWs&MDCk<,:ab*i&?slCr0T5#c1kM<$ODEDtZ1hnjkBgXm>ZZfW.K<Eo=!cVl;#/9 at L>R
+Df_:=5O-!$Gm%"7,LK4AG)cMNF?834 at nfj!GR14kH!;*lQD!6#8#*A3*NKL#Up[<ngTm:Xgl5!.bb!Yhq7^T\W at 6g_o-A>L
+foi50GuqRjcXZ]3 at SN,iP;rp'fGd#:QFJKQXj%4m_Slc^e`O*FMooY;\p"_::]0*J9"E(R>t<?An^82XEPd2FFlC4H`L:12
+'^(QOJ at .*(M>Ph\r(Qm$]1HH_Ykd*:8ln4\o`o,e(Xu/fcU6s7/;J"1SpZZSc=BlcB6/'g!:EJ84DXXs6Xr#Agu76(+E^cR
+La91XQ at i0@QW'.?Pl(W'<&sDOfCPH4RuR$90H=ti#'8lgk^>FC-K$1q0!?/Me`?/BEa<M^Qu-%RNkH)4MlE\>Q at kd7"1;-e
+:S7VAlkAM;<mDq`aBF4=]q,L'VP'r;p5B^4_'+MF=1[O.B\lqE?a:DJ]e#7.;@^YD[YH%o$_j"ROPiq^&R58rlE+G?1`'+1
+-)'UV8W7Jm_p2Shjs-.U at Ahc,s7.`&5FfRh&,5Pm at .1cHS\4j at ZQHuQX2Z'[9'X6IN\Z]&8m-V>*_#.:9al)q3L:Nf:X)Fg
+d26Aq`;tgQ`Gut`0*e;Lfi+SN;ha;+;6,I\f"KV6eP(K!dl0^Z6)1_RT(/X$N56j7SuQ'rQItl0b`lBY/rEDr:hsWLnq-3^
+.l'#kMKe"Kf0B-Aosca:MgK[rBto(H8^J:);=58ZFMsd[F*+=o9A at Tj8-hKV;Be,/87O8]CD\#o(bOprH0qtQ04?Y4<*sS!
+_NiKYfXFRcO%es9`-h?(n'5;F4L6>\Z9.CPXQob2ZJRc49<\B/m(^5sI<%QgJ\+uprP/5<<6;)/f=*`OI7<k=:M9IoY#Q>Y
+)<X;:b5"soIUZS#eh8ilq<)KfLWsN;>&B2VBYoMbZ*_Y3R*7K^\Hb#j^TRNJJ&"0?l1fptJ$l9ij-3u<C^/Oj0G-$0hPsHg
+n]D"lIcS at eoo0j?YI at s]Ul<LPQIGQ#Xb at 5%HG at GD-E\bSO[>mr-91U?K'LqmE'`n?CkLKtEa9)L$."/QleeiMSo4VnII,p2
+SG.qTe?0?45 at 2)g!c[Z]p>a^.RC8K,`,JDP6g^U/8aj^/f^`b/aMXiaNceubP"sA7;Ff@]ODNulRm+do;Y&1=R<IP`2eA`0
+gQ`Q.o at TUp&?YWkJeDJK58'^"KXf=`\#)\ocAY&S;YcR4*,Wn]Wt'A##HUOSJgGt^heK[Tb/F";BI,`;m&rc]7TcAnig7^:
+#:Dch26c&uoGsYQAal8s$l7Qe5>Fh$[sAN\(f-nE_mgOA.c++:qPbm&<@:7FTcKR?*Y?$n')7,!T2X6X/"@!;/6osdZH'r2
+CC^*2!W(JEL*b+$%YBo>.d"#_.kq9DJRPS)mj$&?<NYh'[Ag_=DR4(4fa(RcTf[kXh6=/+bu8LDBM"]!M&/UN&I31&odn[&
+)22MKYJnRkp>B?<#'#a\]j4R7<N]<Y"M9tBlE"NREa>^\.kfY]&U-suL^=t16G7j>g1LmE(I1n'V)_:NWYe*f&iN!:Af_V>
+q<@p\&taclQGUl\:fqK6M>'%I$1mXNhTYuJ1Ds['+!&r4nIb^Alsh2kjX*]uFs[,umKU4m,TuVUV+<FNq&4Mu,Gd-baq9e?
+Z':VUjtc-j/Z8DRlpCukl.Y2p5\&YQVbc%9k1$C[N.JcDb<LC/E)g9b+cbR'PO>Y at P)1)seuVpi&ZB&,)41Y6BIU'-i8=l@
+BbP8NXfbY7LRa7NR#I['khrehh"@)PL<Km'k(GZC"2]4tW/1O3J>R1<S&,XYGp'0lKc#()6e!kBh&Yt$/-WP7=A at QY=`t5p
+[*3;ii7$(JQE<\;W43^7n'm at n1KW,0>gPJYli4WecCNWOX0[R>A9YImIs`5JhEcY]7!@IVXCHGIb73,VbHd`uB53hX40rBK
+).hUO1[D3r_99,,"tT!pidh!rrWkK$CeH]UA>(&QcHS0PNkLJ=>If:]*2`eg,Zei;;df)HN&fnBN$HPX6p(&?'^lM,Xja')
+NG1:qF2_B=,3B+/<pC!8VI<C7V[Mn6)0\7nlN8,Uk5?-LdOXb&*N?q[^-E!9_J4+QhOejek[t9Ac)@M5#"*QoWL<9#L/j&V
+=Q2$k at d19TL.7NghQjmCb?mf>n6<M at 2?O;'A]N&6k%MA[5BPqA*MBRmphC'\>5in:TCCKFp5#E!PnLkeFY9$Gi[5.e:5+RF
+ at tIu8U-4Rnp'>t9_oBMBK8ET_#/SUdlLPXn!*,lX7VrdM4-r'$*[[Lg+P1p4g8b;]bY9O$=c1;%K*%e,[mR#Y$.<EtA at X@$
+Wt]uT]da6o$6"eV32%Adg/UK\:bukR3-BbD`ij^*)knFmXChgn,Lu)/q at PoOC=L]i`Xe:MSjR2XVs9*-Y:G)".($b$iP7Ym
+`G;OQNY#ZQb%L;[PSA)?;AJ2K3L;=I-a^2pJb`TfG0m4qA14f*FoI$@6&CE<3`YY_X$;^Q,m.f5\eYE',G^j+ at dV;eG/UBr
+&eWZZ:S7X70GW6VF#s2 at CS3k1(\Qg4i(4UlE4DTVEHqU+AF[gnXcB>J_ksZ5**7:4TIR?tZ$;CS-M?[`BD);ur;P%.qS+HO
+^UG"!5Su^f2/$jZ;$Y/NJ</1Zd at pN2Hin\eZ%*>qpoc>_^OJ'RDU<%f6[$=I\V-bS]>Z&pHRK8n1KXsA!fMc_FEJK3dN[0A
+ASVaDB<rd<b9F)t;c8FB=UMI$[rGnM_93R&g%3 at Sp3N4&!'sOGr`3$8^,`@I[%2 at k/,DGNp?YjhB-)69ceqW0bMh#GBlj,B
+0O\^bh:WRA%m)HT`JM(96A"T/(!C?Y=#E3 at KQidkH8d2!JjpSeB[#e`)6)7._<Ang<$Jg"*?utL_:V_^hDP@<;^j`p4q,%W
+I`M2[]QjD/%nEW`PtKpuN;<Li4;.4=[!*1+B@)O*'7PB0hmTg/L3CammFgC3OSruIJ,]@CU')EIB&j)TSQb2#fQu<&X5E+=
+&qHE8^%9]-3+]tgk4F%`Yo(H43)H[Dpg*/V2i[c(lIU(#0ECCiR8LaeJK'8O_DZ?N%Es>]3NdPl[6tXHqnr`H0hbcg'3rdP
+M>_=hq?]=?3i0a8<4ICJ]&o!?bd.u=9GU&4:J#[[S$la$@Oj4[U==$RkrUj&MM.D_AN5b'q:*\iMcS^.gCPAXUf0:7!,V<@
+Ii%k!W#KY[s5DRg[X%7VJREEV*ZNdXq78F*O9I at NMQ/t.D1K!iGGYUI+;Y\U[ZoC[fVHo4#p7N'POO0S4(V&VL+)elT`[s6
+31X!h3D1h+8<#k0a%P:sVa0fl=.3dJj$1[2':LC=LnRTm,940[>nc'Y^++/6.UgRshl#6]0=<kM>"b?^SQSPGk?H,)<nT1Z
+U at 3t+B-X/LAZGaP9tO-aqu]QM3h.2n[T"d0U:tANH:$=l0RiDe2n8*\$bk+)6p"F-+n30al5QpPHA(R"#<LIuqN at 1k0Fq0M
+4`8Z,hqrM=YYjLPnEo#rFJ>8-I2WSK]_)XJ^4B4>f@=,Yj!"($Q`=?n?Nu5fK47ep.4HBWB1^kdl\DEZLiW]6"jp;nU$\rh
+)`[2oi:j+_#dZpId+Y"!4Nd%"PXI4r]6 at 4[qA at _Y$86TXagu1j5^>54immVHh#o6?bE?6/%FM(6"/]@(/I\\QC2lq]!Iq[F
+W=,_o=/L?^WDM at l"r/r/IXfI(^7P#tiG.AfT8rkgY at aunJg]TmHn]&QTMLUIVg"j2pZqj\ZN'NB\;a0!It&;b5!4pnb5E-1
+MD5(.:4)5aRBNi`SCA5%/sZUf$-O7`[%=[9c(u+IF1.rFUeNYN)EPagd3c5bF"+tj<R%1eebUDB#)9.*0m6+Tj\M8IL]`6/
+TYK1<[KYE*/h$En at m>14E2F+,o6se*:igTMYp+E'G4eDV3/Z.62Yi<Ia@#])+L+kar.cc,9<:\;__rNN<&%TK/g<sL?=BHp
+I at de_(/F:E(;&S_3V#RJF!mjR7(4:C&c7Ij^Q5Bj6ft!sk;@)ECKj$=nDH]Ec=sQ5[GkFF<St`8[i6)AXT-nMr]fj^rEk##
+7b;9"%<<,BS,)[K`;I71nb:Ug=oVi&go'iMCg&mCj(:#82KnpcMr18r-[j.\b$V<`iX#eiC!ip[3:s_Mdi!b?Ap##XZ7iT0
+hteX!,W:2G3!"]C1c+VZ"+?q^`2 at ijnAJC9/8puFJRoccs8%K)M[MlLn^=o>mAi^Tk#dkcX_FBaq^'GM':kM<lI;/P[h)R1
+B#sg`'>-",F%^#9 at eR6#s*F5/Y at t>T_/?UkSPAmM7a"gN(lW$"Z&-=OhrpR)]?n!"gK-.D<sY5IW-H?$Na-\HSERgFP2H,8
+=#ogfC_^o9s"pCNE6>VXB8cYM+gIR]3L+N'aGF;\%R*W-)_PLqaN<QGNLfLj;sPsbBOW+"#*kr5eOt+_I.f]%6ThkIXXGbi
+)d0`Tc3RYTU.hE5N3'NLb**/k^h1TX_)?oK3(1aEpL27g'N/c6.mGHli#kTcR,,HB$=)Mq/n=uk_NSQ$U!Q:#^9AbX%?4h>
+(`jJ9-N:bWEMM3AVTi;JBb$0:C[:eo=qud-=/u!"M1WD%`iTKFM5Tls@*0qpltY9me#)shWh<J#4E+o#,t0O"U?Gstb,!3j
+4`/nG:il,b+Sg#2UX+Ed]WWr$F*b?`:U>mobQsgLn(U%0D$*l/Z]5gZ^lWd-b0--d6b'X'5rpA4 at Vk(:icWo:Gmag/S-M1'
+F,q_7F)_&A<Zp-gL. at r.']6o:fMVF;[I8?R5lGCWbi/2sOSK-BQ,Of&S(5=<p3g)>m^C$Z]H8cq_],pP40nVLakjNZHh6st
+YBFG1#6+M#g&LSGp4p\^-GJ%1LMMCia8bkJ5Iga".MrKj?^/LUF8A#lPbCXQPh/jjHKnJc)Z)fDbJ*$fM<nLorhKQdo1t<T
+7,08g#KhHY;Mkl-pU6%7rXb at KT=CG1ht3tQSbmJ@:>$%V=Cc7OE!pO8;$rmAYZJ17<T(M#cX@%UV"K.PPql3&BI]-lKsY6i
+_.nS`L-r<igX4khOu<g.E&U at q6W[0n3rJ[Yf![tK=i2)Xda20[J]/2kHjA=):"p:>5imhj>4;b3f17oh$4Wpu>pk!geZJZ@
+NR)19ja4r!D!?a=7SJP;ess&'7shkUs)1uRH["'@ldK4pT)GZJ$W]a9CuY8,mEtl_b^^^>ft2H>0G4?*>M5\t>_O1n_(ooj
+UlD"NNg='lAs"djCiZWA\60L!4ppE;ln`<f.dLfm=\t\nVJLs&e.$uodgVTLm7@:VlLK_?34=M42.qH!a<spF7_ at DhnVq*9
+!/bU7g:RA)_?:+'Kf+)l=WfFKF38<d\+L,P*#h'"fF&d!.FIsMPu',P^i#RNq6RA1UtMu(M&!G!\7Z/kd,?oYj)$Q2N\.hu
+l-[/3)4&)%#rH-Gm(1bn>JH]arHSBnR&FMuj6Lm1SHu<)JVkeRi9Ih?300B7XR4B-lthr(+_Zr8U[ht)>1K]&N.2J(ktNeY
+19%;*XF?e,\409,AD,_X>QEOCq?n+RH2ZG-Qf%WYfMU+:09Ar]Bsb0HF&uEqLcZf!H-WSbc^r2FIjgm]r[L^$I6AV69N<BQ
+ns-YR2!Ogp<5"&^Ap2Ch0[#r7_V/6><?n&7k0Eoc1_b*j$q7VZ54a6jYre_FMWE)+Bmch/61RjlMToTPaosrFG`ZU([uqPI
+FmNLOMWAY00I;mI][Wt#U#psQ2D90BSSNs/p"N*iiB1b_';AhIH;Ma)#N=*BDjRfL'g at r$96)%IjbAcW#!i(D?H2p, at CT0r
+&'DNK,:>b]cc&Q6JkA1Aegp<S>3o()P,59S`iH^\LJC\'0W1)aXUa.(Hp%'7ij#UhCo\Lu"j'j>^?aB[?uV3QI<i>)OeD[&
+-/N[E;DN$PI;*r]ZAY-0b#+>F?U%kYCbZMflWi.cRG6!5&1U)uBEa at E$`QU\IuGX3p5r0$^*4>4KM&4O5E$;7o"!WDo3Z%#
+rL>d]/%9%r5+"W%]QZ<8"TRL$=o[ZmT0C&*1J`+(DqprWIs!MG_]KqpOW]E?_Q9.rL):tqWI78ob:sh^"ijq`M.)TmE=E;V
+ZpGlAf"CX,\$uH%<Y/T,HY4Fo2DgMB<L5lZqo[_%0R23eGA'ZaJ6aUob43"'9#e.F5Gr[tX59NoOJ^8Ng+KE.B#)@YO4fJE
+%!,=Q;J4WWX8ATB)DD/f*mbT5;*QI\iP-0e"9N)dm`r7%*CJ at _=2FiQ_\[T<JB7.m.e<iZ/D(lELda"^h7i;LDqjCeoHTTU
+42(5AgsgW@?FQ[Wo<7i^l^nn`@qAcr29hL::.9"-'*8)Al5_CC)?<R*n!BROLDo>b.9q!Hc'V)T%/kZ9Mc>cKpBsat.^G(F
+5HHMM)tO&t,Q0AF:PW)%lYd[(i`VWa[P>LEbS65hC0P<EHnHg`3cl,\"o at nU_cIj;Me3p"'NA.49K)\7TpP]kAjB8mq<tRe
+:RV-t!N4d;#M8-Oq$Q9rQA49QlM;7)r>#dgn\?7BV*l?9I6lSN at j]#iFU3Wa\tg4fVM.i?<OSnCdkMXG`2"$Y!B2n$`irOL
+,1,d8<$m]6b+"i?cKnWs"[Kt77Bk,.KYYZ.N.es,]p9]EFrL'(?Pcuc(M*)'(CuPA0q&u>lKW8q%$NDMAFMO5iuk93#D(`[
+jh)P`I<aWHfD.'(9d[418u]im'3g1/-`fjI"8ein.BpnCN2caKg6Q$DTKS at lr4l?Q3jtjJQ2l9&$WGfsI7op#f?eVa`:?EQ
+WnLu3*Q(JY,1YEQC"U?n,UY=N%LIt6=IAT6O$<T1"L[S=e?%<c7'ameUGAa%EkX1!i,^$b(Cq$f>=,^*jZg*Z>Vi0>AL!XC
+A!B7;7HjuF!V;kH'X"21AN:DMpLur*do.\:\:FeP;`$^s>Y'%AK:<(]iY8V1E:8/ZK'+`JDFMaWqUAodIN?+kH5A8B+#%3-
+VJDJbXh]Y2HPhRGL*a`_At9#D<K$2F at q&jci-QW<i.QRHS=`:X:ka%N3UlkL<N;BgKB$9OAN<Mc6lpT_0MtA\<5>4:Xjj8?
+3'>L0j#<`^MBE1FLEL&XG,Y]bn=\8!`Q!GbJJNlZ;/loC2LYO/H,oWg$Z3Y.2#E1YZ@@*Zli1A]rX\_!bQ#u++5 at 5UE+&\^
+9e7jeH/YrMAH1h.ZkHcuQG%]Zp=:5e&/[_.khuH$O(=X9UP&:Wp`F*_'rriP2Sq&b^)F.46fAJgq=k.!;JcN#;XKC^XcUF*
+SOQ(7PpZFU1O`ru^XJjKL/+B?o)<As1gG1a%MV_>qggTI$QdGXkP,a'!00/J.eje&cXN6'<ObIQDXTgKL?I4V[rMMk,Q]^i
+*q0%*:Us[5>KDlE"gO^O(oWb7:.'j*9;ZVRH42ITYR.)4#01 at V.%Ya4./QWol95T.eQmu&Iu8j*,\V-IKYB.F)C*oh!m:?Q
+b=CuEYnN:->%p/.M&4kP#`P7P`5#rpFff3/c.Y19 at 0#s"nV3BKc>I!WFj80C_./16(j,q3.=&`gie#JE'0UL8;N_/nXcZV4
+j8+g9O(]uk&o1OhKU>J&<hh"82(Q\MI.mm;?=TXiGfUM(PE,-#iYA5+<1UU70N#nnX-ehD8PrFO&VGLHUsmo&\o\#_&q3oA
+Wr:\#aDHI4dh_Y*`EC(Nn[i6?<XM1ag,0s/s7A5S$E+)af[#@A>n)jQ4!pdSRP99LeOqN3I[du0RjFm_Pd`Ugj<uXtjuH3p
+77E0*_tQZ#@Nol40WRqV)Dat(;&)2Sp,Z2`B[;_;ag,-"j'0FDnu`.H>d3],Osn=DNXDDs-^VW_S[@?cXJ=W13@#6'4"!0\
+TorP%-QQg$D5k9j#>BH0)0\2SgoT]smrXD+1DtY\[M0sN4/@$7-Kf`ub2dB;eAIluJ)j*J5-r`"Y0mIr3M[=$j9TtmE>D5B
+F2XCc`5Lo=/%=. at I'R?Qd%"k$J>:agRp7+BWCRg)LX<iFJP[83d3GD=I/'Z3+,"n>Ta0gP5ud:["7"+i4GCf=/@JWjoN<9s
+h?Z'AGAgWr0P!c:ba,CCrm#,X9s'4FAuf5RQ2ip`c%-1/)`&:kTU*sq3JmGcTF"0>6DtF3ntmooDM@)&`b0fC"087m74(56
+IGR;=Gn9st3]OgE+2/o;r at -LQR#dAt`kYd5$Q4o at R%'>)Ohq?f5AFSZ"]?nE%5K#Seins<@r2(#;@e5W%i!t1B.?2:*Tb'>
+)Z`&IL;U^UkpMDINJ4<N4X*XZ3=cM$>k'ET3JRm0b]'LYTn(is&1eN5VNk16U6m,=^C[.dB=MC!0c)O-im3k@#(*QRK9?+>
+S_3s2l$pFlI'LHA6!0f[_h7f8I;8eKa%%]=b7j_:3Mui:,Q at S@W\B'tpP8^l;a^id58_fJd at pU4/pZUSq>;%s1.o-,]_!e%
+8]pf63Q?ebX!.l^+Fmomo&:gc0WHADGlV'/p06!(c[V=EN9mY+^(lJ72s$DjY&fD6WoL7ee$.!),F?5ZJ%b=.LF"'ij=I_p
+KFT#ug6.j`p'74=+&bRCQ=%?%I7IUsY.,HGO)#-]C4k%I&`ZgqLBh?\g`k9E]+IL<eQf?elNmBILS\lGedH\Qfk)NPQ$?<8
+AnEt1;B#e:r1 at ro0QiG9cp1IaMeH;+To=6uh/V3g3ahc29k6o\5/J*NWmp5,PUIsX/FBJrCkH4t'G:4trSqWno`*/k>F=`S
+B5=@TjXr;D%p-,MKi7]DfgA!jN1[r;rOZ^JS!Ra,D<PceXqY?[34qepZ[*M6$uoj`Z55*AlUQliAGm^XdG!XeZVM%Vn!GPF
+[X<Z'-!&TiFrM8P-5lj&&j%p(DC-6LF9Da;@q(ub,!IT>M)^88>c4%LZh5!d5L,d*MD:'\)L?o"<&,$K'Mf&<K=9#5\gd_*
+:lc9.GPQjE(09`IHD$.((88,fR"&#ui53rHO at 1!Cfk,uE@('SuN`;-5.I*s:Wul9RNC,gg'sRdH<3q0#HH[(\,LI<qC*\.Y
+Us1B3Bb;-nqhdjWe$_JNhh6bqK?`Pp2n"pmru.^Br0(Xt@;@VAkQ5F!r1s"<i9SPN*d at .L3")'+Itr!`fVtb1mRdlSH0if]
+,s\.51<1t56k!kckJTI%?Mqk^1LG<MM`XkfU54)(l^E?*Vm\n1/pXb^\IBgFaVj9e1!LhmVf^(SV!?"hJ0O%$`m1Pi)BZ.Z
+<uUtidch<hk1LfsoU5U#kD.e"3 at nLo^"D9Tk20"1G&6D].*3AORLKX^OcI]IDS_nUg?66rJ=n^F+l.no)fECWE,9Rmf?*]N
+o.Bp.Vrl6?;k\4Qs'*\;3+%j[aJNmrZ+V'O0r21).%YNA47YkA(-4KP<M_o7AloO>(:Z?R-oEHM*&L!kMmkM?X`Pq<.LL@@
+SDY8$5Q$>DRDE<k:U`.^h]8$MNnm(#Yf7g;8.!mKF7u8BQ at IZVM/-"E7hQ4GRB)8K:@qa;&B!p0YNV:#6C!FD=p^c]od/-B
+'`([?(Mub>c8#Z.oiI7f9G`EjLP"sl-V(psHhP4hS3>_s4hOWpjR3V.\gMk'f'M!!nH\L^7mEbtn,J<fpko%]p44#OEe9u(
+_(:[pd,WK*\GamR]n?tQ"B4V3n[Zc.R:fG66QN&D`%"Tf*CC03CL]#8h^45;Hr+H4H5TXh+B>e.j\"an<--aQOK59TIn<)'
+;J5:%V=?.aK>Z63h*0lUlGb#<HY^j3n?EXE<0p9`>dt6?9:PWu>]YS?Z0#9AV]OWJ[eq=]?@Anor<(jea)RO$Q2o&e&sgJV
+hAE4?0RgoW_(N]h&V'7%jT)TOcZ$@^2/:0!5uJS,)(&bM.!=[3LmtoRFSD;=3Go$P,"B?_Y/1FI?M3/pf0,%eMM:Kuj7U&H
+:#KG-?bUj?0J[/(f+C._4[B]mMr=>$65MYAGID%uMG_boflA#U+C;IC1dC?<9"!J0XFrHBYG`MC.X-f,.31P`[m,)[(IWpe
+FU/eP79un.6*U?U4"uX4fss+/1*jnYj__bD^`@>Tp,]6OI%1cs7i$&NA#Ibr++4frHec>+L3/U]C7$T9?E,n+hk0(ulMDoW
+f.g>I at 4$LVeRO(1Tuo]Xpb+72=em#2%chpBRS`pbSR+GS%$P(e7"?LXB(S#k!;u2Bpp7JuF)E15WI*'JO$h'LShPWTHQ7YI
+&mJTEeUk[]Yr]:nBXCa_jb]p?'4RSmKrr3<-:]1Yp7A*)IX"S7;:433]0aJMchojcB[:0I5(inE-q%4'piSI\E^IYba/W_T
+_udA1q&]66EC_UF'lHdYa_VE$i2^VLJT_CF51qtiU'sZ/W9,3^[Y4MpO:q>i342B(DLtFdP8-h+7./Ic57%&qh*G%-jg>;U
+r1MO,E?>P#+4:nM:R^qRWRD]jJ:, at f3rXkHEIC.Cm'dV_C#]h+.VLW(O[Qe5,pg_gADFGomn8TKa3',JeX6pR;1dIHbM`k%
+YmRFJUUT7QgHMP*4G2TH at db6UFJBUjg4Ca_K%]CXCXV4VC6hASU!Qh8Ks3]_2`@Cc$B%0. at j0@EOR*>V!f\Zt+'NBDl'dXe
+6<^ZoL`3Z0P9Pp8TPDGE_Ukr2i8+M&fEpCIoRPMH0Gug%DFN#tBS"W,.oPE?K9RliF8=iuK"<JbBb[V&5>Rg=.n5V3`BhC>
+!#@N.EXPgbhnLPNIpLY*Qdaj+,O>C$bPQef^&DB2ra0"X+2GGJ&%6'D[aI;%s4n4_It&@.],E<FTrVt:EkeX94kOn]RLXL&
+ at q.&!8u$8p"ofT][/tKb8^&>`?2EK%CWH[5EEKR&iM6a5=P'Jmre1a;XJ,U!L:Ye;&kc+.>,bA#(C+VES7)@A]F?B/3rT%%
+cQ at T70/;"^,)$Im\o*?A%12X40jWRQ-EPe")"*95N at GatYgK88(qDU[=9pZ@$LL6sEgA%9DT"o!!:F'BZX^(h!-Qc!@AXi!
+Cr.^?gi/s9IBYaWZ[bUJ(kCqbmHs>QKEX9m:E23?@pLU["#VUG/@7uF3Uau\+7]$hANuRVHN.?6X%)eB%R,I9\IlpV3(lEe
+._7('I+7q'W8]j4gJ59;3LC-]HDU7^nZgOtX/piffkuh]1q%,?W1SMj(%EK<#k#pA;k6pDZcm-Z:Hci!GRF1@%l@\<jR at sC
+-s(fCkWSHh3B//"/#npWXB'"dpLit"Bb_1j]&ed`adcgjq,)NEi;b4eN,V;7lD8&uUA]Bb.C<Mk%R"4>E6X)b?P1Z#Ru<i5
+gDNZjVW at kk<QMu6)oMlp<7 at LlRN?T7UD8Il/>PO=6$-eH!c23mN@<_O]%-im7U7*%]jd51k+XhfOp9QLCm*=mr[p!4b1R-!
+*8hc1_Setn4Qcs!&f7`jj-#W3 at Hf-j,o]Z!#k.f&[EtMcDLTZ0%[N5d!E;Dt<\WbgQjEVO17'qR$]/`L[/DE'NQFjE_FNsO
+a8lV2>K-Xg!1[(KVSlP$D at h#/fSBVk6HMXTSh1<Whq70I3,&n)b^n?_F%Bo!0D]lVnru-;$BDn#=kXDZ8mri#pa3.u(Pepu
+ehJ!=&j at +K=#G'8=2SWXU0O7YEMS2YA#GfFN9<krC>)/;geq,6%;laONd3VVN;Ffr2K$NGc0sR7,f'1[&3<a9S_[(M#VZAA
+o^uURp?Wd^2;6:C;Eg`ebm5+INR?.)]%!?Ii/+rZCd'J'@Ro?p+p>JNHA'7KYj%^\pc>=9*Hg4k<5,1\/9g%-!E"jlf!-C-
+0nb0dAGM\K!\9S$^nedjC:a+Q=Ck4Y4p."DFNr;-iu&h!lqG:PVQr!YGfc_t]pVY^?b:b=VB*,Vc$8g?(U/_1GrU.Y?$=gL
+CAIj)NdC;?-4)lKOgSZps)?4)*m[A(s6/tPnpL.end+.jpA_PKY*H1/5)=Urb]@89-"0NSC:p_U2FXaZ7?k4hN=$(EduIEF
+b9iMVk_$hILMDSCV3+e=:Jp.(>Sf0QQH4Y]c#$;3'![h8e_ucpM$DkI'm^>D(j7$\"O%:u+UlJt!0tr>T"&N at p1[Z2#LZ',
+HMMR44`fOqpB5!1Z'Wp7+)1fb*g-''Atk5F9Q*Z-VAf&_jhS<Ep+A-jRoH,de:X<Q,u>?NAo'B)qi0Yae>HbtSg=Q'@ZQrN
+,A'U4qI3MARCl`JNb1b<!XCP$oI4%;CTT-#CLKj4Wl6[BBG`RC]4g_=hk0m'o>OCAj3a6BcKnV6hsif'h(TOGH(0+"L<YGl
+?/E^\#oh;l/sGL"="YU1Vg^4]nqbpKc'*6PKrV8l.d&DIq\%ITgh-M2IW+>"V76@@5J1dLf=IhAj[B#&s502oofeu!YGGl[
+lq`4/!n1iLe6"\o"s\1cL.&H?:MDC6%EO-PL)I4g`r&A%$nGqR%P]m'0_4NVB#e/O:1!NJnVSPD:pXD4G:2oZUF-\B2c<_j
+PZ'__B!Q'HL`\Uujun1"B2ebTX(c%.A0B*SDm\2]BT5;/*0XS%fOfs#WOZG"3:`ec"tB;W$-JW3?KfcueP at U>Uo2hdRpp!L
+fBpZfq#A5V!,#0Y)!rnl3Fh2%&85MTG%Kt9`e2(8Us,p<U9'EY<?kW];mh=56IV^'Og%Q2j/4EE.t:<ml+2['WM]qXKsiBt
+#PGJC'+^#NJ?;/<=3qUPLb%7&&qMNE?ao`]ZY.$VHhe?8/q.p/7?9\N;W89ZSE&%=*/P,ZVX9/2H2jfb4Y2YKrXm)GPBSFV
+[/W^&_+?;e3trl_Z=A:*Hh?qF,c)IG8d0D7pgt8Z^_^.^e>WpdjZJmbJa'oJhEQcWXC-^u!DV=C`;nsN"H,hQ'sfQ#r[t9'
+Ljb3eg4[<%jKtr at Te!_H#!,8[RBRUo2)on=QE4G.QJ3.N33 at 20JgCk-4aE!.1fOQO\-U-VbtKm'lA$-PNhKcQ%8,oNCSj'N
+P:2-*Zi2OV6dK)r]X^Y=bV8]4_Zp]:l[D;UV#>EnfbO4sKu;rm+!/U-"Q97;0AiiYJ%,]sIg#LqHTo at G+9,LDDgt#Si55ZR
+]RpUn1<+ff!N^tg-i=<9E"B5)n=X3L^nb]B$-eVHDL at I+Za<.rI4H%ATcO#i0:Kie9Bl?ZpN'P4C^Ht$CbnfRlfXG'!3HTt
+$ELsm/<lg+d6b+(7T*ZcdKso/et1F8T_,e#KakFk4@)=K1LKF0FnAYpV2o&YU]"PZZ;/WGWgJ^n`#6Ja at ODBKVJOPa*hh:%
+#Fp*!*)AM1&Xi[]YFYQ3Et8a'1#V6IaWjfr&Z]&[a^aIU*2;/nfUl8`'Dj!]j5:s'>5e9tlb%chO2IP$:>uYm:pq#`Jlu97
+Z at qZ(?o'#X7PQD"$7!HfHaVYcnLNLN$P.ZFhj5sB>=E#gHeoSh8L8d=JM^+g<DDN)W`g6JFPD%b?FpPfdE.SY?r&hhPafQq
+-]HDhWd3B-`>g(?Km&dG*&hqbk@\GOGkjF90Jo]jM^][=0Rp2s3Ak=<m(^Y(4V-FqP!&.]r%''M,k\-@=aOgClZ""l]@]U/
+mC)m,`pT,7LZ=#r*IB at j6M+[P[+7<g+7;/G5O*R_aiaFZY.T;Fa#e;<2(PPJIE$\e$$!Tj1PTZXnX.<n&VX'2SflSCL_lF!
+MH-TZ,J<-8!B6LR*o[t1+usuQY83]hiH\``2[iqDa_1d*@glU%fhQ%Tmr\G:#38OF?e9L%/W:F'O2s#RR(Fj`[-+\U+%+R'
+%$LOul^ieUWOq-rr2,>sk@]p5?7*P""5VN.?%j,bOq_Z0>$:7$/[5Nf)idf\'F;o-eS6QYJUb<1X<0$?PF,ZD#JLI1A'@@P
+duZ7ZYC8'V4QI->(R-]1/#[/J!M(31UT2>a[9gQ3I:t$b;qMT].9+NF*,pBCB=d'Q88i[DX?sPGCt at 04[/"jS+Ps!.5?^&!
+]so0fZ2h[(7IXO-Re7"j]9)1k7$Mr@\2tU%okVmGs#L>j#uB,K.+?b'0LCD:hMgf(M>41"1R`r+U/DqG!sbc2Q@/KcQ2hce
+!C<XMJY'iid)`1a1q[E\,ML\NmjH8bEZEAmo,;8 at cu->?5QRcg_LIZi0Z)#+VPmdS8]H+]1mgicdkM[:OrN?%*LM+c*5";S
+SN5JAN6)!.mAeqc_Be`2$jS5W at WBY@-(G+ErUufCpAa9Km+9!_AUo8T3K'hkI</=!BXt8Ake?C*?HN3/l0RXU-5!oe;q_?O
+U11$q^]I*+P_XbO[]&/NgG%]nC`&nlXgie*>I*Z$&AORCZd89h:U0>q$=:N`J3Ih_k%On`[Xu0*.i2UL%qb]k`t(>n5,B4B
+`ti\<#+C,aeJTl?'FY?%%rr(]kDel'7"</qb*6A3GM&s2`VqZ\YH7bY!H[p8^q at K)5'?.KQRmR^]+^gWMF:$]gP#7BD=lW3
+:[a5,S]*3*l=/S6h0+tqC/U6EH=Z*Am%Ymb0YI-U[9lIZeFUIR`*:;^]7X$f8em(";N$*(C8=C1TGps2#o\6q#97%P:Gb^C
+^3n>f2d%SfNoq,%Wp/Wp0/m;_Y$Ce*deO\Pd3t$p83K++_C!\O:(=G>as0`Rg0. at mcu^XGB38Qsb\PgX5h9BRP6f7;aE\A>
+D^Y%ENb)Dq7dr..YmU>S4EbQ at R<HJ*Z%>/Np_TfuMC`N8W4:aWE-S?I-^h4m$V(qjo+4/M9B]dVR7C)]La<+IjJN4Wi7,Lr
+P72fpnaq=j.h'[=AJV!8p6BA,?DAc-^3N?'5?a1GoZft*S/:%knGHhR9\RT$-u857EBD0$QmJOe$QiK`r@?SL at BN9T#8bO+
+`Uo]1WZ5Z5p(.$jEIfhn^Cio6?*u1O[-+\U+5nOP&>ln<>Jgq%/2>Nb.Y^^Cm(fZMU5PQHZm1#<r-8q^Q9/"^MYK]"ho)L9
+/lflO+&rX55);M)j5OZq3c7D&'g0!okJQkgV(2G%6\0`t$3<!A.8sP8C!uU5pn'S4'b%D1o#DnK%oc85N;Q3]1W4JXJ&AT(
+d5F*07H*IHP<'t(+`7b+E3X39POF0`JpbHL>SA0s.?e+h+<hrDi,[RTZNrPK+qPm,&bt^HnN5\!0qqNY,PW&6[t>F:/*Ap!
+*8mN9k$t<CG>ko*mZ5h9`_NjqaA:dT'e3d)=5=4[HKht]?R#r]T`aQs^(LW8rcZ1K3/j5j8DOol4P=!raVC&@$T!=kG%g9/
++;<1V'*V&)i*TPK#;aIV_n9/Y/+c"F:FO9$L!3peocdJQAT4n]Qj6_!$8.+lBaQI-kCFs(``B\I.2)\\1T.;Rf;HIT5=.2%
+N#@t)AN=C]ds*BcMk\dH!dPfI6ZHW/PoropJ%q9AIlaV0M\:+p^(JhCiPIN.&f at Yd(flWD$nRSW`4/rP8qO"\0&4WXGM4?s
+8]"(2-)4Pa5DB,kk:Uko*\PLV-EN%LLrePT=TQ-pCc'rmn)a;1]RN_3l%PSls6A\E%hI[f_I at NN/dR/(f%,RcIeZR at Z=b%N
+<b80E$l+LLp5H&U7&R&2j\X$8a.Ja4X&lu)<G8JR1_6&V5mpBZZ5gf^)c-U1DKWlc.TEsIe@"O#3/"3rXqo`b:U/GQ`(<D%
+<E#iWSpmH'?l%J>=h!Ab.oRR*JMLOsStW11 at 5kb1*IbVC27+sdN_k+C1S2t,<VS4DPi?;tQKi#_!GF-kY?%ol>Sdef'BO$6
+.\dkTI&ic5Ld6_$VU<5XZO3*X,<Q71<,;kQ\7<_tF7Co2KT0d=9K2;6d7aelgY/IrjJ7]9_O-cTqMI98FP6;*?qnTpr/M.g
+h;_jKBRB^./5F:'7%uGk6VRi7p=)g/ias><)9"#2=fml^JLcWhaY)Fp1Zha+;Pn%M9Gl_$oEF/;DPm(^K0GS0N;2;K;CraW
+W#N\Fl_/,l$pl$0S;8WHr?!u)XKMjin$L+^N"F1la%P<!fVN1?"[;X1kD(rb8i1K$6hAD5B4L1u=Vp*t]%i84Yu@&V1M1Z$
+-I"+I#Suc!&aal1Sd/"L':ljY>HjlT?+*WRV[:7<%`Rc`rA9;j0h%mUp%N+3*0_paT=I8l,QmsL>k=K=Y7b9=\5ngi65sGm
+h?HsfXZDLg\g8gf5Vo![DmA7OB!^'M]&#LcNAK\9ZM%:lV[cYDfe5h6Q)8CgSc9g]E,fn/SD2SuC#>-BN35DMW!fbFgE+()
+rHc(cJhi]#[,8uLNGj)<9L%,2F>_Ykl<h"udOR^I+YB\c=45ttbh-n1/*<.K&T`W*(=RoBai"iUNsS#B.9+R+C(V>N(moqt
+Q1GELKMd^r<7jH2At>q9<\Gc:6*%f^UImCJB=A at KXeMRnD<g=tp6pCXh)J=V6k1J5;U;)=YSitnAj$*_f0'4a"9SY1m07+0
+gh^aTB5/l-`ah:b#Nqn'_21bk(sc/:l96VB9FEJ)/)U_u&_?p5$Qh-j5cb'>1TF!f*%:#s$ii`uhMf^slG9)OoRG7jE6G&s
+4q&l4!\ttWHh!9.n.G)YEO3rXq(e:h[OAt^:kJD%`m&%c[Ceh`U\aYRB14GMD>LX>\**_cUR@&t[Wo<`q40$;]LuoDhl%[@
+S0_6"hj<0LP$tBjl:D$kf[Y2SYbD^g&k4Wgnq!^p"'I+<Atf01Eo?KF@"h=mG9-_`ZM3KiP*KUMBF*u,Xgg2sdpkaF`]4Wn
+>NJa,$HOECNJ\o0.LK/i<OkTe93#S8AQ@<qmgFi,aKC$pMBF)EK!G[$;T0i3[(Y9uSnFXAn(`E\1O&EhQM3c_l?#0P1HkG*
+a*H[D-S"]*M=5iTqqh#?ra*"#E1*Dn-J04Nn$:*1SNWOj'hS_t3EGg-VZ"n/h<11'Z!#n#'LE"O<1&HJ5AYI3-WlT'WKB\*
+m<FH-]$`1p`g.bVY;tp at fXd-C%GLmX<bp9#-n931Qs3c'"6r0.=,fKd.+!HP60WR&j'_I7["T5FbT";I=.K`/[.oj&O1`AB
+ZYBV0TnIXF76fTSlM7T4,CRM#NcGT52eXnpMGMR21tl<LWC at I3A"FXkiI\9:YZfNa3)dt%##LFaQIsS"9;!P2]r!COF:(C?
+`U"V#[Eoe+1uB20pR+Qs(Ac%iB.m*HJ$>X_*F4me1'e8O4Veq$BZh97Ljs'^,Gu(r\4Uk?IHP]:kd!feUa36$qpC0LDAjc@
+%:?i=JV>$4*-+,Zj:f?0(cEg9i!aZM<Qp!9BPf$iVL1[*?u^iL]7lg#Q/>HMejPFA0o.`+F&4Bm&rpqRC0Gi!C[1RH($J8d
+Ahmf&0rE.b8+s`\FA_`+iuE<@/9 at RcWUuE#X#@C3F6-FT:'B(MI((lkPf[b/9m!`Kf%Bs19@<814E2+a\r[K?%55T;^\Ia<
+$F\"QnqFP=FMh*@a_:_.$(A&Tk/$_.QM/.[0`YGrP-a,j5JYQr<U^fs\<ZU.Z\XcrZ at HtHDhS_ZjL2gE2FLrfOn:VT0^V-5
+mL,8M3/CP$6Ne!T9^CR)WgkPUfnjQ=EF]KFC]IO<3ROqo:PE"9B*3LYZ8>s/fL81\)(@-K45S;PJ'"uDC^+utHM7:9LFJml
+W[&Y_j*YJEn1EAp0"G^077go1S/N=K::Jp0.4pCkb%2]ESp&1'pRm\aR)pIX.L"TJZZfU-r at .s&JRK5*?Q+R]`U;\Y7]^d:
+'AWTWk:tQs]nT&8bQ?oE'+S:PH[oQkk@\5snUN,(L,aO2YM0'Int(oIl&7&6(^.;'V1MG(H9QX"4$-es#9L-:gtU_aW0,!X
+-_,\0oYJE:o<ZEWG7t&pT=a]j$Z?[tcW1G_X+CkeDHZ0)(2g45jHQr%dYUU:KpFgUNh<9MdLTGkY;l7J^YJq8rp\N\dsjGC
+rS,&Xm0DU,&+=cujCH.H(]a@/St3FVhoqQR<0*H`^!g!U"moLAHfEMMU+?_,j("'LEL6/-DAL]AFJ[BSZ5*%9hN9Rl>D>5Y
+]mk>'PF1Y1Y\?a\6659ubNuIJ!sNa6pYE&71'5naD`doeQV9LO1Rj]('mJJEVY^$PS")%AR].8S=g7gWpa*,Fk`Rbhp\``H
+E<gM%=U-QJ'!O0qEsjAN_E$]_03\;Fq.lRVEJmD#nXrrng,F64]g>>-YbkWEbq"0\<d(0741K*A(3+]PB+0I5)\e%ZXN-^_
+Zu=u!^QH@]9<LVAnY at A"=QHoUV&-:J9fkWEN7[G>PSY9If)3$/*Y9[#1krgOJ2=1C[ke<FlmoVLLct0c^NuiDcp9s>KeSoe
+A!t'nWe4#:,:>,USUW%#lOd!T*gc[4L+gu(7KtQUKFit*fQ$T,>"\/&pFs0V(i3]/!iG<_oCc;E5RO([<MmPcad#8D`J!_3
+*H"i$=ZYJJ8KO_A at C*Ki$?EGLXaeAWg^_orB:&P5r'FJdI@=iS3?'25;]PJ^aTR=$\*e+fphW>q&g\uSc"d-+J!#M*XV6i_
+G;.D.Cl8HEJr at NKcOf,5l^>XPHL]W at TGh'_7.VI(O4i]u:;&s+]=S1S%/>-NRHO6,,QVJR;mt%^HY^TsYtiC3WJ!@?5<c8N
+.j&"!hh$S\0`Tmh8/2h;<p]`9Co(W0h52b'2F. at 822j[eIjaLkaBumLZiP)GZ<3M0`@Y at Kos`*F:C,DCSk&\n1a[mn;782%
+86lbLN8YCSSAhp)jt)NDIg%6sQnXgh.u7K.<sc)Be>G,h at 0f)NgS>j-<E0kuX6TfWUXD6fV[#LHoC.uU:["@V2r':t0,$k:
+mSL`<T4=-;@BeB=bQ-[!q\WZtP_]TuE<463)k$2tFT]ufW!4^%jcm$'*DSV>X$H<WLg:f#+tYBt@##Ol3hSL&_Crpia=4nl
+[&I[:4c]U^-P.2$?rQOoe8<W1>6FNJ]T)<H5'P$bm6?0$$1ALu5+X;@&gkb<Pd)(0'ZFAXD-Y+F,B(^*Q:Q*-`>^0c1Oo<^
+e"&@7)r1)f_aK[6s50#VBKQ1 at 7pc!4=UVgL49r")HhW3V=dd6(Lp)7K.t%;TY:4q45r-2f- at 0J[+&=0J!b5BuF".anRRMf+
+U[p>\p*Z!ZHVXA2/^2)iG+(uUI.?uAmauk#\V8^9lclm%BLo*%Oht?Xo>Z/=WTQ-W^jh!82JB*>2rr"\2u2Yp\YjAi"mBs/
+(d<A"SUG:!FeKQ%j^,h1NCiUA`P075op%3I:K%+M`k2 at 1+)1b348gV&\<G\)O[Hb5F4 at C:c:4,.L""b4'*?&9:S\"/.aaIn
+rfKo(HUd4JPtrLk,B0b>1L^MfY;8_`#bPTOYl:eFm=M_NW'fh1G&lW,>"9JK2kCRnLc&5=(/*J7X!`!8 at s[1Z1_iO$pV6&k
+:H/12n?:>cc.fMWH&jii(o$17TkR6MCKYK%M"(/Xd_]h)A9'7PHkWpA_8c41nI-[`W+?2&:;+F[JePlPVF^[.=BCMae1=MJ
+`o8BrXI'$5K4SOT;K<U@^b>t^4VSM,!=MT46e$&_FJt^44NS=s';ehj`^kY\p-Pm[f8CkaOs/[i?0hh7;%W1ddR_pKO)Sbs
+.RbuKKD03$/uMAT_D1HJS$5)ehf[YFb?!f@[H#W!U#mnfm1_&bbUX&l%u2bjcOOuP9I$ZdZ!j&&Zr!LBl8WY.rR_MQ/)1[\
+$'1DgL>$sG)A'^_(F/7*Cqjj<\p7NL$oa$m/umdPbYNbK!l>iD--h'P_pWC(!t,.1nP=gBK;mdTJ"/'D15YBflI!3)nG",(
+n:DZi,$`pf.1>QB*d6!.:>LJV,8$%2_0<fKWBh4,fmhW2EBIrBKl;bHg?XNrhR\cn;=b9UdkJ[s6<7JVKq[.C<rJ=TBcm(o
+mEuNhrt/ia5LfIn]<P?ZHg)Qsfap>6g)D>\bVc?+fiP,^5EHr3m'r4q6S`D]36K(qq-NQ-?DK:54jF;1TWSpS.qZB4 at +W$=
+d&)N*4C)5/Rb at 82bA-e8MXIk6U/3`(ce)k,'G)CdWg,SA'+s(P%L6acIkhSP&T8150;PsK/Gf,FEM"#Q.V<JW]&a?/e[.'H
+eL8:FVF\^U\2/>\Eu_S\Hab(rY%K40XhQ9TrmUg+rZWu\p^H8^W+%9G,"-2adn=o/.3:N9rN&[)`^&AI]+$0bNG>*>c?nUJ
+5BYDs8:]EjfPW'dk4T/d:!BRt`__cWcaubA`P!1nMYOiD!RIm+4m-XWc-W]K+X#'+6dSXLr!qI?r4DiI"GC$-#Bu at bK%!nH
+\sm?.!``&1Fom/8"9&`b_q(J+o(cB>a+*HQoD0Nf3/r\:Y]0VTa*n&=@G^:I+utp1X*ih[4A%"rhMWm:Kl,auWV(SD@(;ll
+NU$noE=+A&])Gl3=GTU?5R7F8CFA?:A"K)Gk`E>=&/T$p4#\4B;r1(V#LFmqMqX#Kp\ueg!3/n=(oa!`V'Y6BKRVAc[QTdn
+:)Hd$9R#;<K+^a7h1stqbtF?9Q:"_#h-7Ym3g0aB'rtN+JhA&QNG2[**9D>,7nc=t504u]H,0]B_KMsU#"t1I_e:#?@\*N2
+[5\]51.NW]U#.YF+KrPE6B$6dNBsQi/*/Pmcsr^cl&4ZJe-Vai(('46kX?rdMCuFXd?:kte!haJ at U#up)A*0YD9g-GBr(%a
+5Pot9E`4diK3+NDKbD+>4Xj0p10tnR!39)PV(=2if]GO^I38B5+l'Lto@!(CC!UtN;)W?fESe83RKZ<LAENIL8s^*?@/;a.
+V16N/XP8pk]H&aIg*'Jb+noZ&3<>0R"+,g-9X"c?NrCoZHjWt%ZY4J`M$S585cN2!PJ9"<i8h=OFq<XHpC?:1$Peq')s8Tf
+Oc.7$47O!AJMdLq'=+(+F!gie.qcFU at L-[$PP''^n1W_)@]j\=L,?],TQkQf7?X0CKuUNZT3,`/)G:-neYI2e*B3X'=<"5&
+m2Ej-lB]Vu;S1n`kE9D;T@<aH7.P-6'?lroIs;`<K6J-!mGV!qY8#ObebEkR,P0MLh6H3I17uq%cX[(uAZZle'XPL[nY\PX
+G)t4C[, at 5W"7\%>\@N0VhOWj&4Y2-=5X[9s?/b55K:YMK7n+_.5A)4kTCUo[29_"JH=8KKT5kfPe`T1'F6AQ.`n3*-?T?I^
+jVqQ>>)JU\ItE2-3O$f<g0g+Q`iHWp'!X%n6k*(R$Y1)\B/1-R\RmVk-ghrgW%Is]\93Q-Y*'j[+asbm>Le4?Hg!?"S5)f$
+7NLuMFj%&HhWG/pbn$OL8?DdKKg.cPjFPP%.HP!$#B;T"XA9Pc/\@bI?fTk]kdBi<`15(s#&VAaCTnY[l)#!(li2>\a8QGO
+$ZFu?,Jt7EjIJ8Dh9,phCXutI<^Fp3W3#M]CY=Or.C/(6(^pgnC^7EBZU&7MK0Y0e]>8=YH.c[ZNF>*cac@*mUZ"Mf$LP7[
+7$k_$=XrsLd1jKue,FC%P6RMC0h^OsE,2frr&>*BZr_&1QM0d\j)=l;EaZV>(MLpo\9,]RDH)jAE[MHC:r=3,`u+l\SVZ3%
+,5a^dH?"c6"s68`DB+&#IV%DsK6T6@?bdIDaBLFET'a/d'`h:<Y/g<AG%VTcE;[l;L*_h&]ru(TJ69q"YJ`I42Gk8uinmqE
+(8tMmVPP;oL>>Z'lS8QYl4gsOQNC!!]\d:+%i at V8,8glP<\^1URO(8j*Dm([7^$hY_A[j(pE>lSLX"DOemk42h+k\*Au@&9
+F!Q`E4oUfRj<=Hh%pf"kB&Tr3Yc")`$jEi09X%<Zn,1,N,;:13nuu*GpPN-pY61oZ=kHY&djDa.o3tQ#[e)4+,Tn(UGCU+f
+VjKXpD48,V3Ld7P)6]g6g]B]Rp-mkccabuCCI^"kF\d*$W2Rn&&G;m=iA4[:/$I*tg9MBPq)cp5*l!'E'gHI.10Fca0#&4;
+FajA.\/jd9;m0"JeP6tZ!"7kk#(@?cZ+=q6lE-pfkM6^N/ukP##X156gU%\3AG"3(FQ'hkc6>>annNEu]FC?g8t9(^QT;J-
+$._C%;d`f[m17Tt=7%t]9C3>O6)=Gk>%]fiQiX0KV0$q*@)M7V,K3S$Q6%-.CV"_)EB&"o3inT[od/]Mf,Yu)]4GUXZl)^-
+d+Ho^Ot*3lQO($ZF3)VS]%<'TQo\>-TciW%LdoK?U^kC0+N1Rq@^,:)L<,2LneWVoVp1Y%0Qg85&V<tf*g3*C*(tVrcE1G>
+I at BliWR55`+$>Im9?8YhIt1k[*4:QCjKl3=c;YIC!.2rCA5A'_6L(l4?^uLQ at +QRul'X1<7Y4nkX6-dMXL<AfR!_ug=&)L?
+H"78![os0/-WOp3#)m(DDp&)["^-*6/k*7/mA`2sDCjp%jrU<i,PGqi;@FL+PSLS5YdhFkQ8/(a/E,X7])HrZD&@MSV02]]
+2e.PO@@u+os7E@!,U((+T:8$o3;q9>fGZHPfi<4@`piY9eNH<45YbhnIXdU:*se>!g-G6[^5Yk)R2ph>F(XS;KVYVWaE@?<
+#Si+`m$YggS4REs'-"dO&\<i&i,SW17qiS2)+em(l"7P`emKkL at W=B/pC))>`RYn?-keF^EEOKZqYIeb`"pY3MHJY[2<cNK
+`Q?tVBi_ggHpLh=9q[h3M^Xht2p#Is34!m7=I!V#qb;0/Z\VJ4-8MG2pfFq`<(0F at HPt-XGA?N:aAjNY"=W]V&>J;qk"M7<
+2usss9\0<)0WUm+3$p,Id1Rp6^[4+4XgE[4;A`lU`V\JDYpk:&M*&+rD$pA/mJ1i8^`kDU0F:>Fbh"@#_/DI'oHo;;;db,S
+fG2&IAh*+JncfWb&$-iPOq/D@'T&r=jIsZ0[_Cd:Ch!c*61ntGfWpDIBd67S0S]!L`uVSm/Vgn6iR^Hs\k#'K(,el4^4T"-
+<NXP[>9L5E$U25eI`D!uf7%?%cXFXf6T&eCBHGc9#"#BcPn";UM5,U#:W)+W(`6jq!e'@b4TT:TnsQJ.X(p9sjjpoNZ+C\/
+-.;V+N0bKXUj;>e$jP at q$<^<!^j1JF3oT,.R+=7HOE&u*qHa\l:[bTfC;KbG:eAXR$O.\]7_W13g;Qp<[p`"6Jkp@^9YR"D
+`NV0A87B)W@/c300YajaE=>*L>Gi\;Xe`)44N0%0,A9ogJm`i`*ar6J]gd#2"9K=TESbg/D^q_"3-:Od\b#9D.Yk<[iauGa
+Gi5-g%<()EGZ!%JmA;"@=;)iJV?"Uc,EH5pFW?%C?/acT&[tJ1?^MB6!4F(P%TWsT:lURF"lLB0f!7*e6]8IKat$*L)f$n`
+g]9iW2sF?oO\0+HgRb='0Neasm^R&]<ol1QB;fgReXh"NP[Nd$No.6"Z<0c2B?Ubs\Vl]l_OkFZ8!`qsn)h5i-*!n<=ruf,
+F5OYbQ"@W$L,i[V:U*%''9Xn!@I7P*)tlsT9O5f$n1]:Do&/$$@p'08650YtANtAd%/&lJo<88*@\_jm47$T^#c>20X"G;:
+fSWcndsp1;r=A4CZB(QFT=m6DrU_gQ<%BY_V+[VP*E at h7p?",(+?"85"C$$kD8lPl&i(uXp(gcb1sqldC#,Zq'M0;]X?E4'
+(E7T\iNY#fESGC`.kh(g7iY*7AV[d2e-`+JII^Z%IUoW3"B5dN&p<0ti@]**LS(-dd"S1_>FF`!UhGb)roM4^f[f`8:U6 at N
+PAqT'Q.f\om+:1!N-KS=-oSL,qH%s?E6K%L^mKbjA(LQSQhcTR588EHfTiDqbCC.,J;\mT&q$%>Ta4/!l]A0S>I%h2I1V*&
+%.iepk(j!+L+p?#@6ku*\ILc]Hl"r"Hj*c>/[JVX+DMc-M,Z5)D. at go3>CKaPO9;uj7!N;I?F6OQnKH16/\uW_3#F,p%VnP
+O;FQZ4 at s(MY[M%ndm at .IPmZnT'Z2UUIhME._8j^maRkm8X?fg+br[%,K&j%?m!3:L=XfBX0qWgC=/ULmXG`c_0LWjhU_X%H
+=\IcgP5Gk?c&a.c*^4;lMI1".5lhF.D0cXC4-`EB#3B(hjWD8c_MX&H,D$!9MFDg_`FVhAM'u2t#X99M_&Q?)o1F at Q?!Eo<
+(Ko2:\o7#LH_I+Ym!+'F%#i4UEeU0S(M<1I at EB,[E$.Rr$LWp[3#bg_TH"<\Od$"-IiVU_Z_;Wc?0^"S;b[qV_\.Lg7]4H5
+31'q:32#\Fl5LU%iuu)RX]'&=HOEIs_,8(&csa"c>pm9X#4u.o&Wmk(6jjn+9U&2(<11@*:Lj^.X-VhU1c(B'Q.;[NL89U`
+8)BSSY+M\6XCnLI&HPX at 5BI7^">gV;-'`h^A@>\S5$_N/:FjAF.co$W_GFZi=H;"ChCWW=UhEatb+Lus)TSSSE:]fd[lt-:
+<=UhC%H3!Li)fHl$5m3Us&p+WXC2S01)bYuQ[\G%B3^@aHKR<?Ml2B9ia^e^^eJ;H".1gK]R!26BWO[0ft,;A?&, at ko4!DJ
+Jqb)nLT+PR_Hlpt/<+/b\/*6N\?i>bpIB-5/'bl<J)jh$e`dlGR6L,#^V;`%?_5JUqs9 at h^;Khh2QCcdArLU'2coqSqfB5a
+@&`2Y;f at A<.tWRW.Nqr2^!(b>h&G%&L^D-DB\DKChL=UrN`C]T+U4>c@&/Ah\Eg\@PX3*+q:+o/0SCPX6jq3GG<?cr1O?e$
+WUILF]lBFo'"4\l,X6]3AmQGe$7-EUp^ksYh(2=CG</@I[dfb^`"'EoLVraq+M+3(,;4E(-duB=:@M^V2=`.?hQ\OcF3^Y=
+[.%WWT>IG]G5=.#O]OV.Yj2kF]M/8-?4eq9T:t`C/`n11io/IKo8>R/lbj;jc+!qiK^p!=YGB88S./6;YuEF,DPh8bb*IYh
+\<nH,]n#][=5E\]LQ*HE;p:\#?nf$hD2`iI"-6%9_C%K&B6qfYWl[hBKi-8mBm0(/ZE/@`Y9*D>)-`hU[;p)IfaG;\4Fr4&
+Lb77G.#o9=_c2]s2%H]WR$<piIo8D!@bd+^k*Bi;Oo_*(q2OV)gcoJI4UZ'SAOq$8r0c;8:f@?b&nkf*)D'LI&*anp&ouE2
+-86fL$a3M2*$;ZFJfKET3pWO/Z<L0":I!_9YY"EM2%t/`o;0PVQu0%!@U3rDb4D/Q0NtH!+p/CVNiYN?WWip`YCLSE)h)t^
+:E),?$FGOF&@T)7r;)`g!YkBe5[<Y1KY]&K[S83-#ns6"e5&3fJ&@_2 at h;Hq24J#J&\Jg4?jXUhAkX?7Ab=CNDha_6\H%hD
+lSAh2>2[DC-_/NX"*>!"/'^h*`^3M:P$g*#!/_$@&O9$P<!9[B"c?$s&0_FrBmpafI;cDHDH4_Kl;pI-LUak%XtJmCZt<PM
+F0G/q@"]*[$oj%JNu:FQ%_8rob3gWPBFs42->QL2r"`AU7;uY[VBE!X,cq+5UjNbE&^t(:MbVHprefdDS.&K12eUn^#(tZc
+/BVUU.%fWoMBm7Lnt#:W4=9ulA$`/74H-6LNA-_g9)Bg*JZ3Nh%Fmp;JsP4h$KP3#h8a0.ViPu7Gi).jNgEiLj/+#P>)p#R
+OaCncaS[:KEFg]KqNY1,gc.2Dnm,?d-`@;P4W6jtNPApt?n4Q.VCKA)^$l3_SpikOohLZ#^Ae)dYOCD=6f6#]kpWN$%64=Y
+gS^Zmg[pE%IW%#H2?!+Bh"5AhIHtV!&GjhZ.Wf at kKVM,k;acmui+b:O7LAJqi%m+l3>$o,U==1\j$iBNA-aB&d+R5>AP1-W
+6(%/iR-cV_))4-mpLE88OUL4eo1c=$0J<ZF%9V@/k5>3TB5&-5(;,<`a%qR6G>H,C.01W1K6aV,8_/K^G&Ci&@Dqto7uR[F
+#UNW`AR,t_6VlV0s%NI<?iBW<hA:1`C>C1B"f9a).oC*(l%YuqIb4<bB4$kE>!H/upgTH.d%FUl?E_AF=2.G1Fe6/:;je4r
+Tfj]1#,:_[.kP0e"EpVIIfIN0%kRBc0j;=X,O8&uqaE1d*!::_Jf0*r?jU at d$5$3:A:Ve3eZ at K'=8BW&M2n/B#/\GAHm_sD
+P\'oPP+qD[jl4fM_#L8:<'r?s(IoY?iV64^&n/11FH]+eh+U1mL^%eRCYi#KAXg"L6J2fWfi8Y).Y_C8gT>/t]_LO4^7Km\
+S6!+8c<'GRG(@klaF[B=V^Ug!],rUhLeS5s5I@<mnC]O*p*`)h-AbU<^YKF7<CP[oB;eh*o9/?E#OQI:m^nErN,52eYae&:
+fu)rh/D&<@+J1k_rYS?2Pnl^%dLRgf at e!CZaD:e9cm*9J]A:CP</?Q!(IpIrfP%)[]7E48&L-==/pD)%$kEkQ:\b0*C"X8`
+Bia at O2@&W4/??>QmlgZ_Ru]YsH<<?Y3Fc/.X<cqqH,5P>`G[J-9`]etb2dpTh=/"t9[1rk_DoNJdjM'2/sX=<KV_N_2QUoa
+4_9*i,J5.U`s9O:rc$qYmGPo'/S-TGk&"N:);[T%5Am!#>T"4OmfL90D2u+VeNSG9d]XBBFln>O:"*^u>;Y9E?Sd&F7po>#
+ at -.u09m6Rq.tG3IjY-E6=&,$!XW==89f)50[+AmLjpKD*#[&'6]KeS#I[?"RoGN.HCCG5JQsL3`W8<)=)/4u%h(QFYNEn#'
+7 at Gs?1ou9(LT_8rRJft.[c_otEkqs(]g1!1pl$c/[s[t>pBUb<gf`8-M&=!30"ZnhqWHZsrToBi0:t+MW:Bn63&gfkqjID4
+m\K*FO.l83=IO\V('thMIf'0DZeW=1?[Weu?SMH<LN;["/>gcog#H+uN<fl-V]?jZ$%'!l5Sb6Q3C\b%XI,93XnsedmTK at W
+F)N8jU1%'rf&u!p[pFM:M)AI[dkJS#G5_uX;('e.a)-uWZB!S7EZn>pK/kCH`0O]u<AA"=:cQ44DfF0Z?ecMK=B^R3I#Vn"
+?)LF)m.pMmU_`;RhMX`sq(>j]8U!:("#^k.,'\VQe#VGp"<P?JLdU9LQ1H at I_jOB9h&.,3D]71p&>QTlE43/IM-WgP!nC(m
+J]1<nqX1$*CYB)#nCNkqn>pK3jKiI78PeGT$56Dt`<Jm`Te1u8#W:jd&12E2Xa=]>QF&SDEm\)=Mm_TMKgE!e2QRB6!tD9U
+piW#4[$S9UPU0`ld(2F0'#h:]j=uk3<AWQ?mD8HOB+kCsge$WG>PDSWETJ&,e$q$9!4ER=^1ds3!]pi'CpkW$K+TV?iZo=[
+fD&;C$KIX"&e0akQ26!&kQKk=_FPf8N2s<]h7-LRS&jYN`%[G*[G3BeH3N;li)O:/;XflkW#,UO=he_7-_3S(4/(3u5'6?$
+cZI[DZkroB=RSV`'afJUAgN-Egh[i""R_0c\lqtenfl4o0K?:1cGIYj.SD=?iD,>e;9+u.l0%J23VHH#;"@sHLKD%]\k-'D
+$F\-9&L'@<ao)gM1#`f*Um'P!%A!oQ7(FIf^,X>UHMnP-_Xm,eG8LsQ_[k+;K#T>Mq6t>6LDSdmO921?X&p<-p8!\Ai\:jq
+=kHO]DJ!;_H4W7VK/65+aXVhik%l0W_6]^+a"98[mtK_"JlDB'dhW.$LP-OAVNb]<]e:X>h;i;0(3VZ()Lp-Rc%)s9_t+mB
+ZIH'gL'[f*ZV"<oDDi!,#V\f<#:^h%G_C$GK,@$:CWEEaCYD at i'GVC"365n#+q/E&!(e%6 at r2).QQ:QPN<['V###Y at W+F7o
+;>IITD,n\[W#KD&QKU6._YN["kRCXLYW3k^@>)Fj`eR[oiepjKD9dmV^Qn]l27_rRa%\dBo"Y&VgG2Mgqr]dH?k:$]Gj[5_
+TD]/35B,E8h34?-]*V at l5BSfaJmWpb(O9YPhtCoN3\L_V!6KhQ&jSBg*hf!hJ?f^%,d8$,roDCe_7O#Z872sXE5?si(3051
+'=u:h?(iodbrS&T\Qs^FC[_/$Df_`mPfqRl5VsZYHc,a#P at CbYkW9tBPqp.1gMd&V at +p`8ih\hf$i[M at h#R]a"h\8^inEp$
+Y.,!SL?S.h6e0bf1<!!@VnL>`KScnGbX^$aqFd#Jjsm3NRK(GfYMp at RN0p0XB,l>+E[P3h^S>3HQUIi9PSfBjdrpLd5"D];
+KU[kS!-8Fp_Gn=W(GIndp"%0t"#aVjE!$WMpR"Wd+X_;qgf_TZ:GZ*AMo_M838YZ%8(t$:[Q)horl#Q&"E(s8oq8uJNeU>l
+A at 7)32F<(+qjcRDYj=UeO^Z8JM]uiZp_um=bEH[<5kXocK8N6,#+&'%)Ji)<Dte8e"7R at e&0^I at 3mEt6%"K:ne%-n,8.Irn
+*="_;.>mT2fV!>'g.Dd'h(j]V=#n&E#iauj0r]KtRm+(VSF3"9?Xnkkf"MY%R`0/YItW=#^<fT72[]%D,G?feP'JCU5G3mP
+V8_['12>d-f!JF&V42F2bSQ at ZP9ikdo<%m.0"p":r<NH\aLmDMNsa".dHXde$soj75d#/b+MfOpaS'31kHYK$2sUC"_iY3Y
+,bQt`Mp!TiG?!8j"QoAE3\=H\!7S"BlXd(kf(CSS/8]d>cbb7%(Rpk"8[forYdbDC\Op;k_6@?Qjl,s10g_bFrCQ,IPoi=G
+.(6?466^[7:b!]UU-#EFN2j6o`\a1YL"s#*@sub1gZH?"VgRkfMgnKsa:bR69JCWfNgR/D(WLC*1's87!B'6VL/#q'e7P"G
+=BpD?';$#se?j;I.?^caOaU&CE'd\m8e6+TIT5g[FZp[AJVT.p%)W(k"`EeJA&"*OUShVO]dpF.f1)b$]>D-MQ./A%cL#lg
+qTHT#lg&??03]lMN!_</V\:^k2 at AacX(_2qhg>+.ZjjlXS\#s_iItKW0AWd-^k$^Y"uoRHrUc^Kj8\KWF!a<O:HtV:J:ICW
+\)lj]Ii<fj_=6N.\bl-`DHN1I3J))JceSKG#ZR768]-6:@.mt1E!8/3\"H(L/\CKq?H9&*+[N=a4&<GL>qEtC]\_m,9N:nd
+B,US%&?%8s%m&sKqh\Tc:h:`4klT+=I[EDLLXo*/9/lalRRKVPf!L8;U>5eL.S]i82*5E8@%dnXL,]9KAZ$^mH-3GO94QrV
+`_I]C+M"!2B$MaB+qF5=rPIr'Z30nT#!DLJeG.^b=Ad$%YVJOJ+krDVR9fk__Sei\"PfHS7MsSc6%\sE\@%_o@;-eMm4__d
+ at 6Ou11\(-F7 at cbU$3Il\,YL$L=LkNU.?9K%"]ojOYV<l&9ka?r0Y_BNCi7?alA4,*mW("):ub_AI0DW"*>u/Z*;+rmA8JM\
+WG?]VHB]0e8Kh&oJ%^V[,0XO?oZ10GVuZJbXGae3DD)_fjNlPp]^Rgq+*,\bG!J?GrN9(RW*tKXI&[b$$<]_2/qLWlp"pl%
+,"bgc!J:6ahCT=nH#$[*Op?9lP/^E/UsIj-[8)mH3?-$DQLD,'9Ga at 272JHt0>CSZ6- at Q5fO^s5\?GPDmkY<NTEe-T=B\I]
+0]Y$>)P8qr.^(r?PtM:f:`,)[3)!1I,I?C6",X;+$>S+%jdtq"pUo"UJ-96m/D2"Un2AT_X`U3P+FiPA-`q08<R3^o#n\NG
+$$KdJ>d80,h'k&\dHZNYZd"Z6 at Q_Go%;T'/TsF4P1flb)-/6!I6EGFR?,rIamAEI(c7Er+NiWo:=F at e1\/1s#e)Et1;;X74
+%Ol6 at hRHV1:0IH\+jg"&K3D>QZRA>&)\bRI at kZ%9a:&UpdMVUL50G0-XGO,[]Tmlq.@'.Y^3J!?V^6K4^m)Ff/"V+Do'"QP
+ZLc;##Dble%!nP9)W,q0NKERK$YH-VC=N]q0L37qrRkK8T(HtJX0uU82dQg61TA1>'ocp0:!^'uK\=6RdIZJ;m=$.HAUFkX
+%9BDfQD(EoaN]]VOa'Sb?c1h%1Oo+j*m+BGHT?7XGj_BBq-i\Ur.H^&leg%%H=u[7n'+SAp`[(dIXU1MfArfY1S<KnIsDaB
+`Qe`tQ+9V>K)`-rhfeiTi=#qTYp'0to"hNY!7p:TTE&>Ho;QOXK]S2+LS</5k@,M"hX[35k70R5B!oh\A^^%)[AH1I#)R<j
+bZ*BPoWX at b8U(3[6T]2_mD."7e?+2<(kZ+7//YX8^lH8KYV6oU.1B$O1Vg0g:KFV21I$40/eo*1=qBnp2&.(H#&6=hmMXlL
+A:Z(6Z\.jfY;tK#\Ea\.9s3*SSk[?odDpT<&\N+%jH:FCM;4.44PbCYVO_)9+4^^jJrNI8fA5p7+%0`#Af5lGDo5oPPgTgT
+N!Kjl'f63jDHc("jBBN2qC-.9e2Lanmj;3+1G_j=GC$uO,mo3cLiObDnOq'NO0nq?er)9DqDkX.,O'dE;*ANOSB;IQ59GC3
+c1:)-5f0`o%O$!h6PmLV(Ju^&*\]'''qoads#.$43>&4&5TPn>QsfiT=Tqn?a;0#=<Y%':SO.cb[%U0#Pt!7b>pfuG_>jcB
+F+W\K)2)Q4bA_)B+7)M=ZhrhQ,:Cs]?UeaG^4Q1r;1;9tC9c-KU'#Gae%;3!!a/C&\#i!SU+bAbF%q>T'2))9b_d7Bj\X("
+f!2o,W9L\8EC-\if"IT/3`2:03q0eJ66m>!!JtGIPJ6KfOnNRJ-7.-nkDlfPa%I09KtGraffc6>Gos3eq5'-n\m4IH-n[^L
+GGU\am,$s.U77?nV$_Fjm3lK8.L0Ia^;rSK_"A2k6OPLi'a\%ZE1M!6$s-51?aksplCpoBnsq+eYmGt;=YESgU`WbW,cR"R
+Qs-uFF"dXhbG_9h1sRJ5*?6e0=3VpmOpVoMSZc0!U\&Y^W`\gc*gQ`mXj9?KP7]>0%esgJ#YWc_It^?>17,a;PJ]b43j9S!
+/?IIer_$(OH%<%;dj9%6"L-rS<5IB5A187&On;@"Qed:N`=*<A=iW/1d"$WF=+lpu77Nr&-,*an4S>$)ViPCFVJ#o</V.R6
+N,P:N&V'Z':ZR0D4I/6aB23sdn@(V]jWI<Ck4n0Cn%N:QNg"0,6CE,)!2fm;kWL5:^me-u7^P3kfnl]J3bPof<VF9$`DB;'
+Oac^nN-WhIB?1aXoWS]N at 0Se.e#r>aTPaBt2,RiXL`mu\^hL!E4/^796UEKTI4,M/0_dG5!:!XcJLNOl>5&LT-.EMM-JsX'
+0_0Y6MPdpJHU4UjilFP]I_fYX:L236EiT at QBnjsQ(,/QLl(0U3Opl3epNRH2D00)`]a3qaUT/#9(I$_B1*o$B/lo at dM?0Xm
+LL\,<e[1+CcZd?'Dc"48=@M=r0e&cX5_p<Qb4fX^@Xb"SE at PFl!nTAuWV\6hB?WW(R5]g#ojQW;\Ea;*+%JaN*!ue5?^I1s
+U0VZtUk2B=rK5!_%;TpP$e?@)mmCZR7hYaMUO!p=+Ia8)OGseuclMU4YtAHZ1GC+IP>;TM!qG9=q at geh"Io,`T=W9Y#Q]1i
+C2DQ0q+7d.<JM(.3[s4XHpKp<CWGhC_@^:FdBEbnj9L)7n_n"3)7"/>2AB,Ljnts[aCn4"'2-ZG5DhG3.bJX?8(\faT7^k/
+qe9F(,F\fWZhIl!p.>mW/q=UPV8ZlGgR%I-6m_=X5:@)3eF*C[]l"]F[6XjpQ`YUC/BO($B\\Iie6i!Qi[A]+*&"f`gnk/W
+Kn7R05LslN]ajKeCVu<s/bTI7&D7mu\oo9r@%9]CXL^lg(E]UXl+Cd;.t;$`JfJW at 3iG84?n>`DUN!02r\2I4=UdH#bKto8
+TeS.X$?_(d5_i*T[4muibjH%T8N4Q4'[`<Ra-4IQ at u:RSEFu>F24kTQ%QI"@dJshf/Rk<rgYF?5fcSZ+m=6r98>(EcHK8YU
+L7(WnEdJX#Dhj9'$m)6765f2gik;3pm&VCsQR0FD5YX>(6ttPQ%F5/i=2PplQ"\C`kO--%Zb>CQ[h1?Ap at WA&n2:6l,Lkk*
+G>IYgn)b,8R%$9A2gsU)6in at 0SNbQ=&A`pA_<$1/-70#nrn!d5rqht"s6nj7]5&q_#I1jZ>0H%%9YYc8oQ0L$:Hp($&hYU%
+^RA^Q,q-G[, at QA&Fu3K8*min`h8_)Hq);f.mK*T`M`G>CM^Dn?PQ2MR@#q^hFp=<@_dCqh<0g<\j(Xt#Jro9+3W0q_C#X5S
+Oc83-(N<eje[L!u"W$r%0dUC/?.l^3G:N;$$$XT7&Mh>a#Xc#dj8pG0-R0=G5Ul.3K=s\%jh!9->k]W9kY;%0e#n2 at +dfH$
+-9E]BFN;$K,.AS"@HFAg#k*)1`fNq.^fTs!]SHaLU!Njd""^(pOkp/LA`FFdR"@=Q(0NMQ:H7qdXO-2PN4WUUp0B/B,e=E_
++]<&LThp:UE&$tCHLklN6t0+>Co+pKPB0!R>`=ifZ9>tki?J[(l;9_D$-,URP)eIE5(om17ol)61oV`JQd^E\\Yi^&,GoSE
+^s^8qZN2fg at _C[J].'U\G.gJcL,j7];;a9LA"U('.>!oO-:Q+d*M+U_"Ehm:&0aS, at BYuY8?1LB`u8p<D;IRn1>`re\$T%+
+CL`h:HAn]PY9;gf%;bEjWK:_G\#Ea8FlF5hW5'S6C$"R-=FXaBS+]9k_#fgLgh'1udPiU)GhSnh at 6R!)SG[)aeLt0WJ<^Bs
+R<FAXCYa2 at mmA_p-NXWqgSR`oS_5Ti at 7s^')`DF-b".-lXsl$>StO%YA#:)BO2&oCTiRF!7F/Yb3M$LD$3fOI.E6^*c!!>C
+>b]r[;dL(4<D_<!faCkeqeNc!q$a5kRI at .+`[>a-5mrrKBd,%Ag8p!DlQ.CAo,Ufo$t$*rkHbu/%&?2fi54dti!GBYY?:BQ
+Of8)Ya>c+qL'c#XMB+<>3E#Ag^llftT\+f9LEL?MG[JpSX0KH.2&(#>LcH'p"Rb[uB+b0i.l=?EC-V.QlW$6c)HXOh:[[!'
+Emqe;pnU^C55dh>oRV3MG70<3s3$V-!dN_9*)Q`)"9'Td!mg%D#1+"(X(:.!_?HQWY@@Xkhj+X;YpB$TUJ0uTT&''<\@8o[
+Z'_6E0bpPp'JnC%#S[iuo.AUM3)_`N?KY$pWGf(H%=Vp]k?)tF+"%"brNie=9^>;\5O+P']\4lC5,LlI[V'qW1&QjjpICm,
+[52#>*dat/[Md0ng$XEfZ:UH=l;k0>CO'mZP;+^A6a)0gc-J*OA<^B=J8AId/d4A@@%&R#l%h8J+,EqXAYuu*^j`n7,Jn/"
+21rc:ZcSS(h<&1M"?'%O\jJ)a2(H+uV=5DS`9*f:G5Q*eeLm%X]_Kq-O87)jnV%=36(=_B_STPgRi1W,,8+7aX$a`L`kM/0
+AO=q*[%[p1Q7XZB%"uD]-G+S";"^,00<Voi`0(QSPHba298E;EOp"gHIkaG!?LK?<+=pO,$6#H&6gJ&f$qb":-djJpcO6$4
+Q4I??U;a\?S%e_d]\]Pm1EYk+!%'a3L==lEVbV&/qa)OA+Cp`5N-GC1F8?ROO?;@,2>ZG\=bVl!G:O&F-RfHZqX#\E.AJd1
+MnLe)?;_9Zg9s_i,MVIG75cWC:+>3jWtVUEmF&61$`k26IF7e&eM,_!!NU#$hPa,DZm7j#P%B\E+L+sp^[,2JLSA>rZ'T0*
+%W'7NoRoTjph.QZ8\.8of[374EIPVPjF>mQ?%KfpE]u<uK+`j4r;l*`COn<852*TPC,Vq^=VW at Q?+9i.aKD<I/P0Scf"@+!
+Z``6^2/Sh$H!TRZM?lULHn/o5r".@:D(m]l;(3b;-Hc,3D-?Bea4FSjC<gX?8he65nbjqq'SEBt.B0MUSu1Q#HB&Wo2=4)G
+R^s%HT=[<<`t5L!#<"8cp!XKq9)E%A0UKUJY0m4.\a*;YDI/h0S%Eaj0:`T,rm98;0AN"Cq=`TpRrY;;@M[nJ""<s2M?!+D
+\c;SPma/'r`WTrZ]RTe2pVCHln\>O at m!bSKKH2!\/QR?I6WV]qR,"2.BOYCA\*f)DHdcS#3)i*W+41/e,>caukP_$a'm^tu
+V>7ED?qF\0p1`W4``SK4,9](K6WR*^'pSEKJ8mF*EiFCudt&OqpS'"Q6#9::>CeVL1]!YMK8.pXrGUN834u-eD5U[W8jhdL
+X_O]+Jq1^=DQLr4;P5kLMZo;4m%$UUXE/j9=<(q-X(=0U:M7r-gWNfoVN!JZTlK'``[jPJ!/ke;,>hL^f(+LqU]!tuB-Ju-
++SMe*B__/Sgld'E_Bdc'9hdZ*&Smc?2mi*eFu%42Hs+`T4($[fLa6J3cl/ZI,+T*e'NI(H!-M(&<0B]CEC*PMVFA(&\]??2
+V`9!'aLX,Qh2uccFd+9OL8YijG"JSValDY`4oRDG[UeEpGJj?5DgTlp?bkK*%=?P>qAhm+^lP//+ndp4F'&V8)&p>22n\0,
+g4+/@a)3A4npPaDVd=WjU]J2FkW<u_SS4"@U'Ph.)n%"<c]V,sTqhKo.l#aB&1+dm'JQ$'YZd(8SWViR1=To$RMGU"`S3h=
+.q_.d"/OC0+rgJh at 8KY4X5N,:lA!"\IELJ\8PF,<L3bUi4XgoZ#BpW_0b6jA<V35I,F2)p2cA(04X8/Y6]o$[$kiTBB1[o@
+:*Up!P)KmIie\p`\hi_pW<gs<oqZ_.k$;"ag)","fK!YQJ1E`B8_,I'ZF=6O+/KF0,R_fI/:pj!5*[9:8#Co=,SAZ[+8(2c
+`<!$hWoFpRlFP9rYsKNim=\8V&r)29]YGYQ%A_YbKc'7cn$4VYs8!o8!Km&O,=_*X`V>kjm>3A,;c*l9PST%flL3lI,&Zb4
+j1:0^=_RR98n65t[r'>PFT^J"=7=@-^O5JA$S=aM4ELGm$a"pKa]n#uj8Ce&rI5p44o]@7')oe0#S+fKbYXgT*HTm8p!ILh
+ZUAj(*ImL;'o'$h1#Wo'<+q:Q)OicQPi0TPY"XVTP]%9]pX,md%<&HP at 8UNf+"]\_hk/%0c`!]moQ"XsZN7Y>?D/cC2>fgr
+kfb#e9<O+'TLXLrMC4h%n[#9e#S[`4-9c/#`r'uXMR\+D0N;Il$"3fibGHX<%G/7'2Mn&0o[)+1jHs*!Vm>!OCoe#!JZgl?
+`[H^lI%pS+L#$FP0<Q0MFQIJ?nHMo^+:?dOL_MGGD/8?<[u7O.OKVJkE7\KHLmPo=85i3?RO3^cENM:([&0t4dsMri"6udd
++Q-Pl5_naQ,`?BH:4]5Hm:O%DcV6l%(9+B^C*r#)FOS$K'FTCj6LBGeha4*Zq\0.8SN)cdXrc-RO+1ECns>HsE54]EpueP[
+E?A^QA/*g\apC*$ho#nCi:k"cM8;^?[,OlC_o58>P`"dombjJ]^PQk`O9d;_YQeaG+'IghTnmuO>qfe^a?&HER8 at L(Pl9T-
+ek4\ZO8V-S+sk?YmF^ZOJ\K$e`QVp;?jMFaPEt=_Dt-k7Tp\(0'i(9,DE;Ot4$ForUN`;X4aRjKb\BCS9'r<h/Wje7OrB/8
+<g((,2,L*f,H%(.7i^n[O1H?I6i,:Z0MJcWq2G!p'./8Chmk"AVfWa`b[sba3lU=aKK[[HoA,SPgF8b=3gBT'1Tr%j?LnZD
+%VNui>o at R";ltDs/TH_o")"P_iDuu=^@3#hXM.SnK at q7(9:)mAOWc$(Aa1GElt\m4lgp[sFGJ0]"KVSE%'ASPZ[#CG.8.JE
+dfRnf<MH"gej_NWY884=c^-_m<lH8):&AAQ.J0_tD2"cfP#/WX\9-LNS\DLVoO"$_A_6)-P\=/;_>f,kjpli_hLGH;DYf\[
+q![\Nk`%99n`IOJhgBn1__%54K-^sG!0^3c]GG3X/5ikhXq]e$iCrZ\<NcJRqZA"gZBLT;a9H'/]58rQ=8eJ7_"BgF/VC=U
+(;mOU9u8H.M)Fk"L>\N-FtO7l_\*C5W$]L&X>c=jUie>YnJ"c,.(_I=!"l]gHd9<eaMU]Nc)CX$E0ssGY;KB09dQ\C)k[KL
+[<Tnb at FC*W:OBFpKK;^Q13u<W/,W^8*]VKARft6QU8D';b\^&nf*57`-HBG99fq<lpc/bDRn/+9L=M59Bj\A5.*8Y$)U&T]
+Jt(#/g!];@,0$6_b`Ltr4X'lnIu=el!@qA*<<A2M3_N5E!]_*f>d6(@MBP"d3.^C]i=oNk\XP#2^r^-P-nX]@GmH'4-a\)2
+2H5E7^[h,1B(`)Ds4\W&?N0$KQTboX729E6Ij4*X!.c6\J!g$k$'XCKa[l.jl%(N9OK!M\b3R!pgU*BYa/7,,^XIk7S"0$%
+SPZau9Gk\m=L!$`U`gB$bPS3dhN2HJ-2(XkSRedj8i0PJ,43oM/r)2;8?u]:Le.Gq_+/NX'#U=ME%5C8a:)cp!+[:$/lBkI
+NF$(d7hY-E&)#BuC8J:*SB634+I*G6&DPHmW05:BNOcp@%,GQQK.nHp6`m9b4PqnGmB["0^W>!>PbKJ3[Ip0e`U58.*FK3=
+B>2P,.ur!V9)IY&OkZ53g.cq#?q&bi5R;XIP9IrjLYr;6R\?iug8ToK!@WuTmZOHe(Er/h<7Ul2]r5&:=r`9(bju]2cJT\]
+i?6Q"WamY_ at EU.6'O'%>/7n_o*gfk:<+I"YFl(+6Ni&q[l&a>E;&<d6c5&:=R==G'YMDdsi#Q$BO+/Z=rToAj/imIOeURCo
+gY`9BZl$u#]]lI]CqTCXC at ap&%kG42<?Yp%$df4_,bSkPgDd-SSZSQhP1;kbW]-RHotU:?GA%)+RPqsljTfLd&kKHWo.@/(
+ZAJ=irl3PFN\<19&-R7+KsrQX^-[4CP7bL+Fi8IX/1iE at NfUD*@UE9*ZR''?j<EgL,h-A,)u[#-cUu$A.`=7%EU$EHW at JI6
+rT<m*#mo);Lkc\").?(2l`m)Nj>VNV*(s2,&W>Uf68nEfLpL+99rCs(5AUe(4X#LqTgW3jN/b3f"R<!(+cJ28]hA^dQB<Tf
+H_YsoH(&S8EN\^>_^9 at MWuN'+l&!!OdZSPqZs24kbpJ+Ah0(Pcbdi[aWgT)P$`Y_`'fDqf=P>^<o+8>CDVQQJ8I=sf\h+=3
+8Q]#SlLD(;^rBfFQNHi!dteX<T7Rum at Z>E'fIunJ:2dbZGPa\mUFXnZ%;,er(pfs=HU@'qn5B)!D)pk`=-J"sp:SdUgoYkr
+;=0?KCg]A`l$>[e"\-R\k3CK+[^Uuk6j;WRK-]_H#5sEd\4_A\ete378)7^oM%h/f63d#$;CfjmU(dfK0YB8&a$rC%iHLhT
+[CUHF>6?4$13#@*JqZ(1p'kf(7Q%QdXl=$f]=]R>EL\ar^!^pr8B!9]-tV3iF]6a).('Rkq.!M1j&a"NXk`$9L*,NLW2=nt
+m8.L]f,an1`TOIp2Y#j"%r21sGc_R8Jk7o&$7qV+?=4N=?&Z[WOdM[42Pomj`m<VCPma5!F$p^cJY6rbf[$Tq?(oaHO%IBG
+,&iW(!XP20b7'k+Gc[?0+q5O4T_r.BeM@\N"O<Hnk- at msV!!LpF8,(DI<SWXZ"nF0ccpJf+4Tpe1gMd>0L(Z^0FWp3LKgZs
+LA_hcVUoD^L`OXZe+(ImKY,Rds(4,O`4s][>\1YeafLE7qu0CJ3p/"XUg at ZLmrAo!Nbp/`[W)0GQ!N%2C85f+k08Sm'a$*d
+jG+Mu#Wq_uibnMG=tebNC=FaWh\El?r*jDgN7PFQg?4cmZ,XH.N+`YW:=^g#=.;(>>I&MnW<R1Eg0,iIL8pOSWTlnnTV,8s
+ht`9g4!1*rQB["S.IC^1-HRA8\<-b7oRp.]gY6Kpkop'5'+0qsjW+J3K+&0&*[;Eq%MKe9?\%llYDS>W1(,<7Q=RP73Lfd`
+$X#\Fr/7&@I at +GQ,!2Q5)gO>HBul3"nj"+t3#CUS%Ls/^jJnONFrfl*EG5@:V\r%D2K=k_(?(COA+ccAs1/\V2!gIp/^Fmo
+H3"rlH?SiuOCK47G9*-]qWUe:rZ!$Rml1S[Cio-(fLcP'5=7YKmXDaY,)Q^&?ml_CTi at 2Dd#m=?;Udh$4k.=]pi(D"hYu8+
+1c8F":qUFa5da%8.jmY<M+(ReHrm24b$dgh9cT<Sac`[4q*T[GC^0p_9,0cWi!1ObF+*eaq%SH4WF!Ls89$J9nJrF+4Nb<$
+F:E\4epJr)H6O;be>c';b$[=3]36*Zq=\Y2'f'6d:oRSMR*^FrN,W7M/sL&+`lNF6-qpL_A`RQj^k1+M^k[.eC3`#`doBAL
+3^gYEn[,LV*[4mr61tN"N*16A0lElt"2bF>>F[P5?PsDmMqLbG_M,-mpjI,#26Tt)E-?"[fd!_Df+BETQ`N5[*YAf00,ARX
+,Tc4=Z at -\mR-Ee_/lMG&&DHO(^5sBi2?-AK!jEgCN1.2B*;HV<T3c7^(^'0Hh;l!YYU\=G=M4n45g.efJ;nm!l.<ekT(SN?
+IUN/9hZ'S00S^b7p^%$gFj&Y$-!FIR3uR at V-A4juGi)/!.L"psHl"QRR_JVck-,O6$</MAA:ZSo3&<_&0PCtMV>#k`VgX49
+3+"#dJ**q=G/GGU4ircek+$,;c4&)TkeOgA%;)l<qNXagbC1cCGYNNMnd=g&[>c9>"=`R^!7c/I\sKh6[^9[Q&NC+[0CQ):
+SOc-f(rtYl$Q%ZckBICXT4K*P#4P(tP2=6:T()gb&56u'p5tss&Kj!rN_Ti'_Xt2.-cl?H?Lp`(!UrR:MHu[h_uuqEeiAPa
+XO&\7>g(eV*<A0saW3OYs()TRIL9tY#u0#$k.?X!'WXaspt'XR81sq^/"^2FQjDpPVlotUh#C.Y54\7CT1sb*fCN$-"mnO_
+TDZ/GJ*(ot,:sDSOXr(";84B%r=m_mF#K$GHP$<aXnS4C,Lh_+LX?Zcoi%)G%BG9cDHMOTl(mB%0-5J!$0\1J#42oh_spO!
+XZtD.&=k]U;u+^8:MCpK3s at r$\bL3BSNF\[O^`oIAQ$G6H(B9"=:`"2R$C^1"IdcBZ^79s(8a3GHCDO/:9.j%lp at b9C2*)&
+\VdS'5Mb*bQEG at oRH2]@!\pLBLe(WN1oO,cbKbhqs*u7&C;[d\X-&o\#4t=cg1GjEK;-G^T_'E+n3tWlK(*m:1WI2H&0(&-
+G;J#\1#R2mjO?RLH-C#t5V^8W;SRGq:<hO]4iqn&E27i3g(H)d+n=s051,WoJKpF:QLsSQH0ZRWY&AA9;^-U7E[$]Rjp?,]
+gFVOHnjBr$"(+8mr5)`O*]WZkL':<do)LT;c.dmj</4p?5fC66kNfgO$C0bQ_o7)'E`WjA1<<TAHk%6g"dT""")-4]6O)1p
+[0Q2Z"KPXo2m+IG<l($;]e&#kaT87&!_bp24!P5B&2Gh;C-*ElbeK19er(P=K>@kY]UNQu&N$X,kJ0PmF#?EUZj-%#2P92Q
+ZgT\a.TbQfgp!o-$_P0I;aaReA+eGN!ud3ZC:fefZo!Z8oS)IE at Nd#qjY7JXO(UPNKDg;c=2`!cl=!PuVmO*Pa%,j9aMPrE
+-YKrrKF=b589CRXGm,D;L-<!)8NoNG*:PAuS'=XF[]J>I4%3EnD'nfL]PRPh7+K*c.e-Q^:66pQ+->!JRruYP-KWIs#KX%.
+,\,Zk]0CTd%A]H$"^%q/MHV/^AGOWNHju"".0eG9Fd#=YLt/8Hr$sqmcF_\H7$r-4e1TMum&AIgIKDI=BDXuXqUR6R-[:+?
+_^iIs$9[FR9`;8Fe$Jc+,gFDG$K%-]cFRSk/&X;8\Hhp14[L!HHhph\0PnJIl4U[_l$/->MOUBJ+FaH^[paEt80aX,<`H:f
+'P3G](;oO&$cZY\I8I$7,"8<_9rFt%2hT4i(fu8:=O^:iC1dCq7"!NLf=[*9USc:%eQ^6GJEiF([BEHh/l8k?E^<ikKeXhO
+:_#'k-#Q.J6_$Bqo+=?g:J,,n9C<ueOY>p]_cj<A.]ocR^e).Sn,DM[eC92G:d''@n?SMlEXWtXSqRfQYVh.'9LP_(-9>QA
+bSc3V$K3'V.Npeells(58Im['M>()Ai_%<l<!*U]']#-sR!(f93:]?jjCguL>reNS+r:G>Rt6nPZFr5D_;HPs2CigK/m at 8*
+Y$WWX$C-b)9bOtQ4Srag3`V>8s5<I3K<\m,6LVGALR<agG)p[m at Fkh2g$n,7I=q2/9q*$^+EfB\Ve^*NlAXg!mMaXfKLT9o
+g,A-f4K*'nL1AQrbj<FifO&64,3]S5fk,c<`mE)j.QFPjp at thNlbYiU23/S:AS6$U%F at 3iAjsZ6%U.8V-!Z+j(7Ru#afdi"
+b52kZfrBU_?oc'Wi<40ANaOFn`)/%:.GMFJDr_1e*ocdTDFL^eam#,)I9:tCG9\SL1mj-5p`@g!YD at F)U/Hen&V at iPE$(gC
+2TB0AoQiTGYDMr+=Xr2=9j\ju8JX!?Hl%,HH8I0<TWtk)$%ao`o0on*rFkIC)9j[lOKE!C(#5o at +X@/u=G^E;@$/6Tr5Zca
+or&q^it!1BUlZ<5?MJ"9^ouYopMe7tkM[FH,Ad2Llf$7P75nBg,7_IJ$qYT\g8EIu]hD\I\c\h,a)s";p;Fukm:7tl at INoB
+coABeRPn)EO\Tjn8?/op]KrdOMc>8%DirgT[L%J'VJrkF$0-SGKGdR:V,')N(9/jq#t2tS[A8b(SA?&N_d&?BgETSjO\tst
+nKE>_l2sq\G2*)s@!/LbbF'8?KX]sa=t-t=_=HK at VIJN:@41 at N.1dZ-RGs!ZKJUmjpa3s1U:CmUc%t at NhTa1s$tt*k$PZk"
+bHQI[UERLnje<BZdBnU\DtPUer$-lDICN/EEo'2DFpDM/V<;ZfQcB+$cio%d;iBi#!A0\N+''8-iVFuu5,>@Xe/2+&!oF-n
+[:4kiZC<sI0)WWf'ZARjk"k3?R#uJ9TqcJ\8HlnX,P)WsggTnE`T_E2W=!9F8SDed<idB_9'kLiOq*9OK:#Yt*#9Yd#iX*@
+.C1^C#NkGM50";*+<3pu,#_hgroERD:uYs>>/m9 at RtV^-likdFfjtXu(gStU0Rg<-9Mc+D,=%;+7i[X6XtQb^",OGd^_K*1
+`Xi)5XF`,iq%RcUEjQX(MR5,F5q*55ebR"to`r(;4E'&hqRTa:;o*'Xi;eWr6 at 5Rd(=A)0G/O47F08XubMh9`=`@GSfiDk^
+](qTPSfadi)CO$&%!\/5=OXF9fWlEe/lBDp,)E4Vjq[5bHi7_?\+ERc_Ou_4I4t/s(^!G)3bML-:&<6*IIX#+0$3)GI.f`=
+i$>CPRKmpPRPkg+KFM#t0R1l4Ao/ZBe:C%G39?##_i.HQWK$%i?-ZH2l;9_D#mVa"MJp31=o.)GpIBbi=m!R4jH%]+U.$)Q
+/)%c0&9J.NGDHhj)OF,[c2]2*akQ<q=t?b1Z at f6jE9'lBB64kE2BLI28bOol:t'<f>]pfZ9H-4:E2&eX1Mk7In5^b#-#*K=
+,e<Z[n]/`LP4XEG's`Plb=H`MW&qP?bWO at aSfX2Tg)sB43]=VXg9 at G;$DRlP\rog%RXt9m_r1bHAU^d;#O5-aopNld^X(l0
+>'(\gBQ(7384Tt.0?ZA>D?iiP?"&*ACLeYALXq[_OV5JeVYt9$-aB*.4MU>n1,LaAckWY-Gu:FPkd;fpFg=u#'nMbRAA'No
+;k%b&XIr8jD7T%W`m*7P%[guYAPkHf:Yd;O6Wsb;c'Ih.mC*Es$tP"WbFn+5Zl/"Br9TSRd&imrPGj:2;fV_\2kPEXO80J"
+-Ut?=@jftRCFm$5+<r%NY@;[j2A./K8j/Y,5l;%/qS:VaJael)'/>scOb\fe-*tae>W="Lj;Z^>PbSlGk:IXdjtM_F]Fu0c
+6c!,B?TE?0O$[o-L$Xj39c.Rb<*NtA[Xq9)1Y6E^kp5S1E?0+9Qr:58gW+U]qS_;:j833'[#crMG+<13orfk9+3IQAUFWQ[
+a at CdlUX2@_1q+a/=Fa-T#p7>e\arEqmIaCm\?e at t_))8>m<Oel#ni]/eRI_eLpSG).0VQtF6'Z*0INrjZk(LE>p$b2\HA7d
+*1NkF/$NJm-jRZkVu74Pn=nA-4Kn2sHq632&=bu[3TtQS-ThB at b*GM>N,+),WhJD-046(J8W6Z1l;9_D]8fnKqR,3O&[[=O
+O`\oVrA54%pQjtX?hMjmgOBSqFEl+>0F$J.bGfc)p\4Xk<lDf!6hhE*po/32)M/Pj_S"Dp6Ng8+V\p&k1;P.1k&!p(B1)PT
+D5DD3oeF&b8Bj#pK/S5B3S21KKp86;ktnD?Xu5S`JE#Yg9J"3VHRV!*rKSp,Ms;s'4(6D]ee4:u5LH&nC!#o.h*eO4PQ=GZ
+-f8\e+p)0<-1-ZlXRa>01l6RJ&7$%SF:P,OMGIS.%%P`E'?ENu8g&HX]\\EK]bo]?+X'EIj'la*_!Hq*h1<P^<0.+;9as.:
+Wp6ID;j%"O9[esqd8f8;>)db44V. at I@aVc[E#?>$Po%,&G&4.KL^GfWI""^g"!TBrUD[9+8Tta.'XB2TfL>L0kA6gE:`:Pm
+OS*)Cfa,4IH-Qj<DYf=t8aJsAE&:.J(;r('94GaG66tQn)q>Q^hh;;WG5"dHTX)2VrY$s[%^'c8UB(KpX:@[+(j_,1O>ZD^
+o<cMFZGIeKD:/;+ZgD9O-D-Pr1i8N$]U0Q8J91&e"3)h)0RtfS+kA9*\I*$3\kmZ0m1WiR=^cU3VJT0L;+W_/:_%q5"57",
+:RR_FY4m[]oBsSo?j$%<5KI+Q'i/Z`:qC!0rq03)+5 at MM-u=1[Zr`iAAckR-/(JdNW?ek,hL#5RK_F at pCYCfEN(pD^j0ii.
+1a,S>R-lo1dE<clp"c8=#7d^U]P_1`?cSX3rC1mU1sFKp_SaFP@;'I.W)V1M&*q/0Hq/an0em4)j+:"lk7/kk#")g<L>0l5
+X)\?2n^'M1l\2%g0DskiX*Ra+lL at +.O;U=If<Jsn$Rl<H$7BD(pBsWsHKg at 2T(isrk+6\RmF[eF<#s29`ZNn*,%U$F(Yn`h
+6DWa\E5D$4Epn'J':d8J!Ct+%Md\3)aHsMFjl^9!nUg-#Ajt:TL'ED*Gl:6m)T'dh2FBgj9El-3e;D9(WNL!e4A'X,-OUga
+%Z64ABCtEHM:4?":CmfPlM+QW6sq7\V-/JF0Dft3DD+45/!9D\?^c at o<LHZ*c.gIf'IZ%4Za]PMqNW%Jb:\6=Egsb)$,pJ$
+bM<S-0Q=/6W<+\irUsTRbf at IUmF39SNel$>MoK8Qfm">P:`d4:YqSR'8!UY&"rQFp1""u7$e0Nt;O8dA8&-;4;:Y^;#h0Yj
+\V at lM:Vl+%-XVh&Nql4:B)BPp(7ek<OP"EDdi>HPcn at 0ODt>M%1sWau<$tFqnE2RB?eGrkonF2eQBYmXU=@3ZH11PfM`Ynu
+2r8fDh=!Au7RC!E-Eu=qQ"/+L(8_/qMG\7]&*@3kp+rm6Zf?Vb-/W at 2KkZ?k:r*RHaB$,G=:V"''?T`=g1(lC5\neq([:[0
+`FZ0 at A`gk*$Mgigj=c]a=EM&-rjq35p+_uAY'?F0WM#'KS#!=J-WTDOjh)E>?l%5=IS6ufH/16`Zks4HaBcZf,]LJUpCC?A
+ at CgOeo<?id.Sk#q8JNTAf1B1-lEA9nc+l"kQ&YK:,i="3)W"SXIEe5$L]K,Qo&]Y:`!,l,PO]Y__UZWl'hJJGs'TXOc+-T8
+3p&M?l*90rKa`p:(gWnO)C&j2K^74OcG(/n at Vl';s)j/u4fV$Fp`Fm&%k?:\dGge%rmn,cDg6-\[D.IV%l&3=k6$oTs4-np
+0>ICZ2n\gjCZ_aF$Ki5>E#1][>Me8P)U*rtf=XGTPHr2FREf=\K'[kGogp%\$N_)9#:9[L$YXgO0;ZA-W)ACK-an``<BJ#d
+[r_;1[lk64/&lBs6=3<(ElOM9j?hYO#XfG<R!Ie=Tm%pEL*NqLYaY!-h(hGOMBg!+D[Y+tBD.O,L/e>SDhNTn5+r!"k]0qN
+%9OV[/rBY^!E'\=DP(?B[#]#l at u`a6>Si/O#d]CdZun#:\sT$.!>+\"-\1!+U!2o(GkXN[\00Tdc=YYe6ce'8:iHo3Vu:$a
+q")Gbm@@Z[_(fl^6KQ;f"h`bt54f:"]5]T]RD-Khd*NDo0!>Tc]S_<91L8b[(.GHZC=VZQ^j,N[_PPss&[;Q\TjNg>e[3$Q
+gm^Xs8+`HjPG!$>>qc8O]2/4s/bI0n6aRA0k?,3PG"'jqG4n&]LAc>p*IPl'=2/"sqE4^]POK7`^G3#Y(nkr:8[j9FS7g7;
+d0RRO81LV+-m-6Op6`9tEY]^B0S\3>Ud'^G0cTdab[NOuOqJCg7E*BPBiBY7?6LC+C at s2:'+XKe8at^nP@'\9VY)b!$DuGk
+`F)r&;:EhEcb-cY1Mn2:6ImS7l%ql#1_lbFPq>HXf5,9>`k^9qK`+L)"LT6^]i[9fMbHUJ+DqOEY\"J*-6Lq-"g6G#MLl at s
+1>*eT#.HU*$F3(ML"oKd:0Vg)SflL'h"BQ`\TKli#pTTkdL=U!bF\XrgE@#T?a*Ljl;9_D=V'-a_Y7DarG0d0^[p(9h(Pk@
+p=G5+qBsqY-XQ9_k`MW9q&5cI<pDt@#lP.m$SMTK'(9fA,l*-=O7mC:SkVQRL8;Oq22gr1_9]M&n0qaE_#$4kqB:HlPnG74
++TQ.\61^k#ji;Zh@^rh/_8Mu.mLN0Ymsp+rGi)0hQVMO/d#)c7Fg!R^>o[8W\Tu5BeSC52&^he?Z^5MS+^T,I)<?!%r/.#4
+dqZolYT+?6;Sf)29!_.-`q:V:ZXcgX@<Ac2 at 6r]^*WB&OKUb>YK`TJ'jYi[B8 at k>mq<HH_>rk:!4aY#JgOEGt&2RmkDn30h
+3j+S;A?k_p/d:8ob.-O`ei_cl/5PCHpV@<7at&?Oc_5&JFZ/FYNfWr7bd!1,Y5".%"B;5C'XePeKG4!t(K8k"aMd)I$oL_a
+,R)J->Xr%4^>h at 1hMNP&&A_G?Ai1_,.*%g"d<A;9j';MpePA!i/@(1XSo[%TQ;uZ\$9-)2*4T/Kj(.WC&)&"!KetH">":dc
+*iN at j:A9D2=9D1r at rIT$UEF_2"#SS(;=pGs#GH=o\S:b(64.?Y`!U/0Wd3>H"s4/P#qt$Smb-ctc<@W$9)FIlbBM2nWMIR?
+_nou.`+.rK8L'nRRAp*'$QHc(0Z2Z[1oH03Er:oBR16]7O<+`qBp]$6Xr`O[-lMRK1Tt:c"""[^1eoQ\L%uN7],Yl2[Ui5c
+W^6pF`Pl&)4"7u+LcL.%/Fslj;q[TSj>%K`@0j=*]0:O.`S.L:eY at Hg:HK7%BS0B8HJADN]LP$]T5[&O;8t(&fY-s'kk*gs
+0D96I#]F_S/[%7CgUmD,Omr#oE$gG:aI,hS+q,*)^bU;NpNOg]?<Jalr9BX+H-Qj->q-lPZi)!lH/"'dN]I'l=eGLBN<+7F
+Z0]VW_I`W&K)6\O3 at _KuB)0jfYq'`-->f5NW:Y\\kX+iESAt-nI6>OkNRJk]?^+]U%WQD`Y*gr'PWPUO[A>%a!6U>pntdYF
+9b0qG:VXLd8fQih1PH23Dgt!r)De5'k)1J:dcQNEg,*1E6\37Ypk_SOF8\+S"W[*@eWD8WD3h)c?'l2g?]J.eXaGZ7)9AWn
+fXC>4haDZ9pOBHZBirVJH"euR:MY>hiSX[W>=Efb;p>V[Vl/pbQ59(;@H;-0BJ'_23ncJ#L=a(t)2*lf at 56JH\@n[Tg<A1]
+.i63[bQii+_ZF3\U_rt<M6tlKe0583G/ior_AtAH3M(M]Ur?ErYR?L8caP`s"bf?&fX1>-kMGu:dqcRA_O2i;HArIO)GE,2
+nu!s*XV&6B76<;Ed2ttWj'g"lbZ%_JIT%58K*h03#+ch(B]\7f.Rl`gCMG;s&#3Hjl:pW#%_G]jK"4KHY>gJ<q$\OM7t:.9
+^\4"d\kSCG*_WI&l]*Q97?%rVJk_JAm$_YG\f4uI6KK,Ab2Vj1nTic$0*<Q&,iWkCbi56N8u%k">tOu/G4_aAme[*\Uj?"$
+lLE2G5g3Osp)(`qO\Yg%+-=;.7[,[tfD9\2K'U,JRTJ3%4_r1bCk)5(?^Q*9m<P;go:U_#T"sKUY5^@a9]mI-$UFF]K2S
+nkVQX^f2Gq=\TjL%R"i=hnu'*IgeNp-\ifBr6iXE?p`J_#H.UC4ua3!_k"/G0K/7UB`*AI"="#%Y,r3>T>"j>,+ni)ZGi-,
+`:9,Y%MV*V-SIf/+;H^,.OGrORYHM]jM2,Sh)#%K\fUDKN#d!92s8"(YoA_,M_guWEV;^7&dJ8?Yu\AT.dFtNP&pj?\7l<a
+#>#HU1fYo!*`3]emgUbA0ZX=_dLrS<g84L%M7AqZOdYk<'rNXps'=gC5]C+NjJ30%H^!2,ekZ,l<'38BDG_/',5HuZm5;eA
+En>,RF4Mm6(+<c^^eMWNSI'e"d"e at Dbqj(i at 8]M,+i6s5X-@(Z;YHk?VVQ5)N2M,YqXU^%(W;WD1n[uRiA_O3D3jaC_+B!n
+!IPi#B()]>(SWS+FGI!;16Bp1G7cic>:.-nH(ZI!QP+:q#DB]^ql/^_ at Yso^0M^@,CYCn\lNJh.VSIlQf_1lN`fFH;ilOD`
+\0G7-P:EAV(G5H:E!q<"+:)W;AI/5jauq0qIEL0?5a+e[?9jj723h^W+I](+*94oK at B\q01)hIq'iCMUp at N$1>nMbj at 7.?K
+1Lh,=^8B/@J?Cef-d.X^7`Gt^-<AhjKS+2/;%>`-U*Hnk'tE0rOb:OEF(qmo,4rK$YR<h=S8mq8'c^==WlH4A&?Y7un<AuU
+id^iFe1"JnCjR5_NdbR*SddXWk/*6N)_Si$Eo at HM,4I7UG=Z?@3(LP^*$6as#\QZ5Z-8g%\-n%=Q[a=G])M'aT>D!ZLje^j
+of'UnE;_T&39(*QW>/3(pu=fN&uL:G&S?Rl:l&9I>S*i_,)RKG!/$N2VN at N,/t,4nKu"-$Ig5:932555G^6AmS.$QG4&/Hl
+]qc]IYsHR/rPZGgRdM#;bAL(;g<!dU&T#LKiae7[=FiNnD"p<6)JCa(.,[-#Vt0EL>oR\ZNI9ShS880EAk!3<C@>7`ftI'(
+HB^=(dbY<LI.JqnZYC_gH9)3L<;ALF@@m0]'UgS&FEO!4_*(tS<$K?)01>JHRP?H-^"+>O@=q<5Sa7apc at BuNgYTbn<JK=@
+'\ga2$e6>6OjWN>SpgRmH2$l6:9U/=%[09Z4U"(hepMN5&],.nk,E&73ZVTA82ae"g[h,NV5FIW,=#3sRWt^aYbG;R^R$9M
+X_=?'B:6"[rIr\WNL/KrK>^qHF2O^>i=oW]p']/kj4_h>r;tU3ZknLY4lb6]bEp4>NU,)TBJdTR<_t:t9KCg3Ai4G!>P"CO
+"-l_E*#9jI?a1[-.a&>.o5$=8Hq,"gEIN2q]<\_1O'n<hgq3M-+ft#]fmg:erSjLuh2ubM`5PRn#ohEGMp`6$LJZTl\Yo`l
+$cAIP(G=S7X#(T(XmBeikT#u[/SY6)B3u2Hl:CfdH;osjn\=>i=7f%]r&5[8R_+(+lDIc@?GGL<$bhTZ^OH_mdMJ65n_#5'
+J3C,G`JOq"(I]&EBi[=p#/e6jB46>$?2obG13A#5[[t+''`fWR3$;SuU_VlZg4-ubGDr&mkeN3_h(mB[;t(Ej=?@S+*%[p:
+F`qB,<A^1(U?F>\c)&D',;AJsk3DF8?$Lk;o!s-dOh3Xe:fggO2Sr(I!50:O1%.e-gEomL:K/sN@',B=nL*\'kDeA7[hjl%
+W+XK(N/DUp^%0 at r)RW3O'AFGgQM0k*SQg:l)=Ljbi>:pH[?JcNqc1$H/WffX?:sfbZi`-[[%`BIEuBsa"8nI1b&CYV'UW"-
+d`H\;&$qZ8X;4MJ;-HZ/J5)9fk^1Ug.K/%mYRKh,dV)m(lpnS3WD`=u%>$arpQ:I at B]7H9e:$la,.JSXq6uSaPIqPsT71qJ
+QU.$.IY6/R1aZd_$O-niB\WkBMcW@(!WS<(B9FXlY<59tJo:u`?$lONO[??2AWs;1o?V&TU5Hk9\'(f)03m)>?5%@D8AN)=
+$k'0J#"^-$F-unKX!>gb'-a.^#=Be_26(=pbEZJs:+PG1C-dD823Vf1Z&C=^;+!Y)-Ln6;S1AKa&cS,BY&SFna>0id'IGUa
+(,8c^#Y`V&hn7L7H;osjn]u<1(+<eQJ$U/!GcHX+PQHILs%N=HoRZu039rUtDeF;8\7T1E-@;!$@MD=">e=T1:PedM55YjY
+9m]641GCF3_S-cAYXWP5E'``.L3tp_JK>!"M3D0<0r/0?[=tI.CPRd0Zh&`kkK;IpGr2>.^&*no,8SQSe&Y_PniCO.JDVZa
+EaE]63!/G1L(;:/i9/'_i'K69o-+97YO%5:f4-<@1E041X8C<UkYt"Q\t:m5-^2IS,8inCK=<c)$3_Vq"fLh\/qWC4^^N#"
+^QP"L1b51_q(h._pt'>h<7=%8lO\LZC.MX(ZT*-^h`C5_YH3!>'17i=_tSZG2Q!Uq,o%#.##&"G<n$J4BI8l#H'H,bb`YTZ
+87)@dbr$19p)#L^ZC;l,dJae+;k39"qZ,KGec8?9VIH^VXPIFS;VI5<$E0:c3b1V$^,E+rUV[#ME8`mq<3qaQ9fV_N.1<;D
+$)^,8]]b)PqBoOB>CI at mk,ig:XMQ*B`=SR<pO2kgP4#OYrTHmI=BmO9N3(^QXSE3sBYOgNnh.,lUs(6QR?nOR'RH9gU#Cc0
+%8K[["h]\*(:&L!qke"U+/3"'W^l`\*rk"ck5GmF=r1e$1$>8jp;r4*qO1u)lFK;(ctV^>`uYoD*8:h1YE38P8WO$k39eWj
+0A62m^CCu0!#<.k6L5-2/dr`u_66K:NC(fBqd6[CR,)EKOP[*gAT5WL,CsV4L<0^K*P0[MC[2Ia=Mq$PFH%I-dMQ\).QYPK
+OR*"C<-A:_l\_4BabON97QKK(BjXiH_$/,.753M_N4j[-2=d;UIn]Ok\rS6I2p1Z4Kh@=Q3nmpHeK?Hp`V=`4mh\jhVA6ra
+?#lNY98u[QoM2D+G!O,m##0cqR&#*%[pBgA at Yosq'_Wu9=;fe^+IcrZlAmSn4sBDCI+8NA0\01J^Gg"1a$u?/EA9#i7CQV-
+%?0R'$q.LP!)#iu7-n/qejde2V^2$b0-5I6Ba'2qMBcQ^,X(49G#[AJNk98OSXR-lFNO8;_I1 at pML`gJAHAhSJ!:OtX=PK%
+7\>>T2j=JQLZ6m'M-hG_"tCc">G2mK5&7.an+sb]*Ys=d$=S`?mpL)9WB%KNKDI[oM0do%UHhM!/m[umNO8P][spf)&9X1A
+k at UR!ePR1Kh#&-upm!)kfBQ3rW^laW++Hhm%V1I##;.pZ!6]P<SI,IcYBl(j[apD_LPAa,VEFZL7cs;J1JXu]/G-I!$f+e5
+odcc_H`H^Ug4*_T"(LX:,!(_rq!qWb]*?tfSHN*,[J6bg0T;T?#<;u%%I(0?\4ga=1tQ1A^M),FdW7.u9P)u=Na0kkp.*1e
+T98'jC.+;gM#`.JlsfdZXPL41<H0H]AeF/H-V`A.5^#S'pq-djn4-q/1iMB'k_cl?;Ee[.I1oubPpU%,h-7=FW*@7r$WtIc
+$%br\$m.E&FJ:%0Bo17+A@>(PDO4&.g4n.<1D9jU+++^q\Ft[/=BB25XZ/qu!=-jIBPbK2-<UnbpU$"7'CnfFU#u=)P4t>u
+;aG)E9\mgWM*JOPQqt"QP>)<T&<"J$#&Dq2]`6l(+n^O8is at 7>4V#kZG+Xuh at 5`YDX`?cdL\8_Z<SQ0;QS?^\-iRXtMfFAu
+6VK:KS?3>^P;WL6LLC2(qD]t*@i/6R[![c!hH<MpE at Aj)7 at B^G'e!+WV(_m?^WFOP)1UWi=gT/EJbE^e90TbF<*btfZ6Mdi
+]:!-D73_AtHI>8?k19G=m=#(:60mY,*bh*EO6TS*WlI?m at F;dMgTRq/X_p-`Bj:o;AC(#LL<3J?pS7Vl,NKg*\XLE>T9>%"
+`RegYh_sMVfiG5r-l$r``jV at uIM_k>_r at WABG4>M2'VCp#-TDT"#9UC:SmE9Q at g(SZO/@nC$TD>+g:T\9NA:e36CQ?nIW!t
+Q2a at B\KlZE33\EGff1]lq5bHU`PI<_);7 at g#3ZG.b_B+8G(%^S6H7Q6 at U1nOcJEan6"_]9SrC3hdCO;oplft2fsdn3<+.%Q
+.dC^r1J"HOaS!Si_Uq;8J'O6nQUWR>D%D@,R-EK+]t^h_+p5Ump!1&lg0be^/`+jTm14Qc*M_\PTA/sF`<)!c5OK#BY@^YA
+a][(CQOdI(lmRFap5`D5'D\jh\-khJTUF,M7GmL$N5s\VI&/a**)G-/Nf(.9A<n";T[-a at V@Nl%ZAg<PYF'U`h\A&%N>8D4
+YK48L1b1cPWJ=k^>$*La3H&'6K0RC(XK*?Lp&J,W7WBW)"($G1_$K1JS_,^&#uhadf/Yc0_g'eu8:+p&V>"0lQ[V2O!YL=,
+r&`=2XWH#fH;orThBSrB/=cRoq>B;Lhp+JDbH&613 at 7dSBAT>7AmGH;OlZ?#T=5[<0rmo9Vm-!QHm`/u?HUKmf(F_>#H#ou
+%eHn"!8YVt34N6lRi\7)8.3`TqNX$q)1OWn/pOb\bqSh#P2K!#^J;p[ZrF]QI&0/7RSb)2K5`K+P?u=D@?M\s2>1N8KZlsk
+F6'LH3J1[1VVke%-+J'j7Gj#@6r8n8O8, at EluDW.@(]APqXoR-G.0;?bRV77]m7YrL*%`$cK0!D3mO-NT;P!PW9lHNSBgKm
+`g>*h9![dc-Z'tggiS;F7e$<K(fI*67%"&Vqc>)"a9oA\P-/\c]MCEPD at l`JHiFU>at?.5E.u;S,#[!5KJA3o;3NluFo3EM
+c%>!ooqc+`;(jS.S<7NP1BT1,qOWJ1B,BU+;+fk7'a0N^0JKe:Yiimk)10KI(G$go"fVFSV8 at Ta"!Jlt[9;eu-tk.cG<5FK
+jgu]l?jk,3T)^Z%&e[*?$<1ljZgWph,q?pc;8qV64:($;`FVi,2q!AsN7ET4(XS;mig.dVrI&.:l;9^E8+lYP*73r"q"'fB
+$Ii]4)K-bF/.'klQS<-oJb'`r4"1h"<BJ#FG>XmJ.W(q6T2]L`.[c)J$f%2Z17@"+\UWccp1u31VPhP9q4UV,qIrhH[HsV\
+b;0+PWKEZ.^\L7SB\W"b/'o;rVl)b:@C'^_3'qu-i]"'JD]p>=QKk0;;SV3#C#?e#eN0tjP3QB[cJJP>SElJ>N8k at rSZ_pi
+/Jd=ql2OLhdI6K3\7br]Ttp8(02$:`J%6-+^2Ujr'K0U!l9.6CIP.$(`$\Bf.%2jLC9V.1r\"Us*I:QC2CkqUKtRPI:\-8F
+#F`/?Yq)o`[%E5i0G'O8C$bK#q]iUJ43lQ>_LOEM$jbdLbr^_B^snX8]ULGWS&3VC'8Nn9mX,PO4 at p')2mX;?2Y14+.nmna
+nj:2IfMD+C:ja[>[CUm"FkDSgMg,OI2?i)DTn:CgEQp#$$CX5Z3#``6C*TgEe5Eq"2 at lffql6)RXrc\m9G/eQ`Ej)B3@>O9
+a at 9DaHc`Q at n5iXM.b,/iVf=;fVu8tP\oIk-Z.Na\fi5tf#i:r#H([c6`C>f6^hU]Ue?j4tZ@[T,P!?VFW^l`\*nB:XbQ3-6
+F at LJo=%td8K#LT%m=s.u?N-`<:n>BbU\uQ\rM3oNhWQL$nL-MMSG*%C_c;UponokcGGS`6#]:;6^5o]-9<PS!31].d0?Ah8
+aJPG6a+)W/GrT,%((dWO"@o')5f:._ at 91;0;!sul`ic7SVo\r_0D$JT>imt_h&AA4<&chGL=\j^K/5!g75=MJQI':JT:ZIZ
+B\a$/XC)*nomo6l%unJ6fdG\NGDPfFF;^=EZe38_WcrtRB/DgflDI4o8Z[mGC>R78Z[tr!=c6>o+/%S<Tl'I!9YFOFa=s6T
+jG#O>LhakL1ko)@**1F\p!:idrRCB#h%TuO8_2D>WJ;aWiR:ilVpWr(LHQ3>Lrji\GP:\L3GC!%4.CbO0u;hM:tSFsLV8qj
+.1W[giaHGL#2^:f7<+^6'LH;M%'3.e(t`te?&,qa<^[eIBc7R+"J4N"jf!k8$_#2$0"d03b&tl\=nXg*;_Vo;4)#0N!@B(q
+63V+5>HTqPh?I3*Ur&dIa(O5>(R?XENu]-21/;Z=R1%,L7?Rm,rpnY'O0JS_8+if%e`2^=5bp>GFq<KWMsmR5fs2RnPYP]:
+k3bp'<MUoD*?f(%(G8sB5^a%e3K#GbTD\Ph-ja1YB*)N3mH9`,VKOI"LYeYOjU$U=%>6cpqQR:1c.0J/DoY-FZrj'*Y"==\
+7M%VWFg#6d9-\N:$PnIr$Qo>$c,S'[=*S*DSL7b5S\\Tef`%bF/_"dg6SpuJ&A=crLgqNj3`a&uQ$Zj@^o;N=ltG]T<AIV(
+`c;'cm288na;Q$4<LO`N\8kh.kr.g)T!GX4l at pP4@Pg+U2m+Ii!.3]VbQ]DGAX4VP;1HF[Y_pbNOlJ/;NF?PWf"s8c==?5\
+Eqqkg9OB'k"q\XUNkAG0MR_TcSeqFd'Am5i]lfC9%%Q8DM`\?3pFSI`;cHsm)`(&$6.2MO92_4T8B?b>)5`OA/8*1WEY]]6
+RMiH0aI%JQe8Y!sl>`@#;ah(mJlVWf[!PE.^ju(/[#5-64GK(bN2SGf_/Hk^!'c&#f1hF(g:,)krf4KqV at PQiK#Kc6m:1SJ
+2hL at cFD4j-GX/[sjBYH*Al+U]chQ$D#Jm^H"kAt)+5;%jUO#n#lL?OrTNG^OoP-q3%pf"khu.=;=1?uU\nQ*Q,.O3*;<@AW
+k@\/o4Z9i,B+^]uXP'adndKDK(FbBmbRd&O?V]M)?3"?9GPa[[hpnF?_V#n7<caA0Bn'O[d`Cu0M;QLV/lon0-:\I]+UsR^
+c0u.g8$4gE19[)eI=#">cB']Kr47i]IYGZ-D'A39=\5A3$?D=J3N3,s*&12WTb+bk9)?.IDTD8MX*YdG8VPSnQo&ugh&q2s
+Lnh!":t2jB+ok]A[SirOEJ1jBbi,]%elScfHKS]N"F?Rq07/(Ph-6K&%8O_.)r:64$jL>8>BV>0h_B?S]eNSC</n=?W/M._
+rF7u$KsEW)+q`g$Odrp+h.G!AkF$rnb'l10b+CBj\hbk2S:)%24GO)9HGhYJChDDMr\1TjW[Z3n6]jF=D^eY)(n<?/n4X3-
+4]K;D<p+5MB6HBK^BikN[\"*@7!*N?b=c&f^.?MC at nse)5n?<f@><<,16][DN:*Z`^(T$nZRT-9rf.phh.!nk&+6ag;*CpL
+p%T>M5jBuUnBBPaQQY\q^gAkuhK%:4'4:bS]O3-"ZJR$_i>m9b[4=Y7*%8Ntgk:lrg<3)bAT</rO at Jno*QCZLejETHZOaug
+BY*1&^V0)bO0['bO1V]un%,6r^91[nA=f2g;R)qD at 1a5s;/AmfOuAM7dQ7aaKG&#B#tU12.bIhRJnp]Q&.=)aDLLDXIsM'L
+n%$b)T4\?6k.B7Br at 5DA^7K,Cair4H1A at dB&\=U`Gm&/8SBg9;W2AKOC,Nn(Mi\2\h')Qd5,S1GW:^3n(@&*4`4)QQ>T*f6
+>an7\,Zd$BV<SUQG:uEf_5R'2b%[pT^i[AgANYN=$Ifm%9hL])A7bDPq[j,lY4N%S#Kepjc\rOt9%dEH_%i1._!gF4"G/+t
+W8kG at 48fK;S,"IR3Jn9%/sG(L7HU[kiE)ir!822t.;kqs)+DIqLCc,qF+o!^'6;YIKT7aE.N!-gS%CJ4,)K==>*Bmu[me8i
+UobcBa2D?'9(XcA*I/^Q+=BEM@(j'VO.^ZQU+n@&)hAABGIZ'GHPJ_^D*9:U\_o4PeC,XAP*XQWU[uGT\SU8CN"qup[;5rr
+'['lBC7U*/cSIU-)5/.6bS(CbhGO/._u[e9OUjD7C,/-k2p?aX!fn4iBDr,R$jOUn!*`3im2c/Q)u^EIaHO$9qXM<YD#B79
+JG*heOAuir/TECpp>Q:6B;b:t')0S+?i0?8O&7o&5M`!^;@nV*Db5'Pr9Ga6 at -)Uh at sqDbcAPbkm,mKZcS#[E6-2VB at _@kn
+$XUX[[7&;'e<]]bRrY>3 at 0a0Mp$3G8g+>68+uu7FrNh?m;*po!RQ7XT_Jqg;;/HX3367/e/QH#,3"%lb`C_la<^Lt%),X+:
+qhua`YOD9Zoq3_gqV)?M'&ejQN:m9Y)-*-DEGYXtKHA!$"m!D>2odMP77]hX%[@q-A<L`j00-&[&n,P!DXPqO@[TOFkOQ#J
+A at Mo)'(Uo>o$!0aQ\WmVYCX&C"H(Up+^p%shc&bZoD!)er82us7K3pPLWF#9F2sUsJDb(#e7sl6hLgZ6B&!4H=64<i1c6E0
+ZVXj][8MT$78b$ISY=0UnE="S);il$p*&%)6Fil4Cl/uAT+=g+#fSc;_*F^N.'f)YnJ>=sgk;EMeXs at 43&9Rkc"&BQpZHAm
+6jA:[n=>=3ma9?9rEPQ&d'`HqqYad4qp/?a[3?r:o,oRN,HK![^HN1>r,kn$IQWI2BQ'jZGLjI&:"^a,#Od+F^&F7"`"kJu
+K6+(QLP9l2Xa$q0Pok&N@'Q$hag<:+*Am(JK4RU2V_t4R9^2pug[nMjHME">4;#Sk85u:[pGamcCRr99SuEHC_UBd>RRf5(
+fgT'Ni41\U=!H'XdYN)sj[G[m*-(o?$ShHC#+t=O?HMFYQ9;jd:>R:WX60MJ`Ug]*\?5$J6nK\(NYC at I$K<_<5bRe*c#W^?
+M77LnNb4pe66[nqW(pouoeCcu9,7.[CsF%=*0\M.eC3n- at FQ9?OQ"gge3>eJi0?R":i$.%O[VscF0Z4[#@piWA&_NaeHq<@
+66BH=5>9"S:'aUl3/(lQ=^Xso.[NOigV6Ib3&4mK,dN"`<qpX54Amt75.]r#CL8WCH4oj(UG;Y$*m)Jh.7K/.#pN+ZA<dAF
+Pq76DKQsmo*kB7D/mJdAAk!+%PfOmERf=L__-m%56f$:g"W7h5hm2?SD?#H\D23U]o=!+K.pep_dR4Nq-<'+pl]+Gk1<@(o
+1.$:Uk/mj1\0e+D,n7[PmD?Dqbo\hWCGLP.D_cAUHqt%eP=qLU&G=e/6M*GIpMhPsHHO<.O>;G27!/RGI0pIlb/l\/4gdih
+(Hi72O6?WSM=?YM(pXlErh)q)#eE&XN<tAOE"Xl2$lI2D5W"#S,J+RVhe!-`SM:[q98P8%ef:>-C:N3oL"tWkX56O3l'"-n
+R.X^mSVR\7qFZtWA9FYd%cR7Fn^A(^OVruISG"W6'p:19c6Iul+m>0"JSXOcq5nD?).XB;R at X<hgkq%c`7lTXc?dkjkY\?9
+$Y3gpS\%_o7Wl90%phSfcn/3Ga<HiSd]&*?0C^"j^g`.lh"@*d$2LTO&Nr9;:f;im5$]mg:\'HW\27XskAJH+&G3Y9b=B9b
+o%].rVM02V3#@tpDC8lA'NHbr4]\Z]'K(H`2%rU]#`AbnOn0']!aVL,N9"^pbCqV%)?2W"K>I'UJQ,Y`=gW'0).#&%1^^@[
+:[$t&YJ4'oNJ7$,:1'#`_mS_PSfd#s5,&?CO3U+W!,ka9"GdWNDT4366Ej/Ll\K`+nJ;d(O,"-q,9hr$Hd]nKY3S<'5/b*_
+'uuNL`6;d0bsNk?eq3IsA/u8?5d at 6K$BRaf<N$!JV^d8oX;+*A_To=qQGjnD0X24"nrg&9Q(V'@l?]aWaE>Ii]21aHWgRtd
+%,cbIl69M5i]PF"o(1uuk(V?-8+#&G<t'S79*'D8G&c"mHhA]FG9S43/HR!Q"#mbf7 at 7#DY.hruDRpuhhh]kld6F!r&$l_s
+>9d_[Qo(]GH4Ig_ at WBB4-S2\GVF5ue(SGCSCU-):/9Ado&_&"N&U!9MP2UWQa!LLM7;A%O8ZK$0eVoIDT.j=b3/&HZ\7.$,
+E at hfD>nT$Sb#R#<W)6\%g22-T'E\nNB[D,?Vk6f"P.;"WLfl7MWkn@#i$c!abf/6ULV;qJd0GO`;CHm*. at 5=63:d at N07]n>
+IAY([A?R'DT>Fti(qq)BNXECLK<9AZR(4F/#Fmlr-(?I#j:[S%Y4l'Gi*+Qlo#D>$M(4Vp\k85qC#SWDFC(ZPfVPiL1D==s
+pIEGa9CY&lq(%5>;]E=%F*b>64K9``n'MA5+)$'5K*[*,F\%3P35!J;$>!B at .8auj&BZ!-Mr3>ZUlW6u!360Y3T6Z11;S)m
+-:hX\k at t``AOuGd_*<.7a!b0F9sY%;-hL#7V8b8iN`-ZGR-pOo5LZ6l&-UtR at IS>2\Sea-Q#@Iim"@XOd*Y+fPkKWuaFHA]
+&[#-g+ERA/[m,FX;d/mV*u>B*Ar5SdYXpun+-iB`cuOK^RZYsX1O.9Ki._,K#:<0gbXuO5W1h;)11p9:;Ni(:Fc<K0^u)&/
+HB=%;!ek+]k^DTW9YL1'b[6HNKZ#C:Je9)?,uR^A%5:P=:T6pI8]jUe"c82Ibb[j0+Xkj>&HHN=5U*(f5..[RT1l;2$X+=f
+eV!fB(^pVdG8lo#*%W+HXT?5PY)=RLg]-n1>fAniBA!JS\5fihS-\'1>I4VZ<Zi^e8B=i4BHHPX`0)uRr(TV)!l[d_5$?5Z
+8IKVk!\K5q2l_AMq#\bunm!.uaPm1JKI_e'+X5>LRecX&O;=Qf3[K_mE.\HB`>k%4N[i]eLROh+N7o*^Z0_[+6/hYqPe2^@
+Jg-gIZkas7_W7FPGQHDZVhl.kcVJ>-n;bR"cs)UUXmLT00=WW;-_o^n`^=Kb8Z3oQ,0@`7ZM\X*-O$^`__qKG#>p&,Cu\.4
+&[5di.i:+L0bY at VO')NXb$8Q#NL&?b+g6f0-\`UhmMPE&?ELq,0f4':nm)iVE?apkXC+p:1%M#&i"j_jdHQA_TgE/s$O#L%
+"?>]K0aBqo+ghbq?g.p>2&\jiQ>(IBLB;(r*PQR:?;*m`E[-Mte6njt!8qbaUdaJ]_3.b(AL*t<&Q;;?K:6f2M?as2:Ub>J
+rr[ni@/.28rHNMQr/+cc8AHAST2I%9KbeoheiGH;[B]+]0+`k,#+sFgP$.ZfS3He3Q\'Bi<T+kpbuaA*fF?97jLC=N9KXL#
+1/\Q6R^^_gJD]s%c9;rfmPoem,ju83SITj'G4Q;m-dH!#h0q'\Zmn?;iiCS>VF-GVP#S(TE)9-*UGa]bKS0rLcZDe+o^gC6
+O!X4Dn^ui&iIhR.KdtV>#Y#C_#Y:^V6m[R5IEu.YV>Lei,OeuNbeC'mP-b5L)T>fFrhVtLhcVHA1e=TuE?`Z!+]dcifas`j
+NX5L#$t9/J.2@:Da`K7pj=QK=k1U718kL*jg8Y^"(W?V\VP=:TS:a\I@:7DhXq3`.nH?9<n:d"O9et%4n9YIM2&5\X$(!U_
+AI5X$UmP(*.aIPDO6ld[2dJInf2_I28fRs1j?Z=no<uF/:HiF:Rn1jrqBCl-`1IL*:=t7fd&#jr<:h.\=T0JsS:c7g%0hI$
+d/$#nHQ"h<D1i09a2X$=I"WXu:h=k!Gr\#=8l4N;nOfWN$-jo"c0b?-5Pma;/qgBNBZ`?\"mZo=mEJrHrV;\(WB&#SfO.rG
+I-,I.;2-Rh=.!#!(D;)9RJ?p6O+ips###=UJdOu^EF/@&bi41&4H3*`Im6,Y;MUQ!0<Q"N(n>aHE,N$qOe)$CcoJ';?MQ=m
+%OcI8!@s!1K!)Qt#[%;$9TABmEN\0':^'`<=Js2"`E\6SC_j)j3eXI3nMPpDe9N]-Drep&)&utU6]`0NAl;\('pJB*]0W+R
+!oJ6aJ:.8=AXjnZ#XUBMM#Our0CmsLl0@]8H!ADs?*YU.ZK3?b%0K?h8AbL<=5\P%f7;1p>kjB4Q-9DnbqTg?=P;K5n-i=Z
+brGd+-Oh^C at 5TbA1o00G'k/_N at 1t-2"9D(*d-5,DKPZ>Y:>p4!g-=q%Bageqb#sM*bhPD\m"2=fQs9g&iKW&Z<?KOoEceN=
+^;422(kAS#D^$N%5N<V%BIDk<n+ at V`PBTG:Q@(NF'h]D$c`Ki(?(Qik-tD(d(IXuoJ+-*q):MfXK0$N5Y^r<OLq\b%8./B)
+RPY1$8Ukmid39sp\*"t8iqK]>T6StOTGr_>GchQP(e:BK=@>^G$DaQH-V\SIM>FR1+OHf'BX-h<MRtGfm()Yr)=:">4c'28
+4EEM`*?ji2f`9]@TI(q1"iKLsX+#s1MOeJ_417\$Upje5!P?bk5P.Q)A.^:]bFq>@"3%48%hp8Q!-'&TKnub8(KV+Y-rus$
+jG"/#rBk@@d"[K-loD''2pp6>\</J$Ms@&Z1Ui]@3Cd>-_1`\5e.p!C7Bu5=VW]/3E,lL4rmL"LP(O$0TfhRR,K!M[+4CLY
+s5aR+aVRJj7D:cb.kl9R=qCDg7fR1?hZYrV]kI&H9?-A;NCn!.Rse]*S3PB.T_&qNM<bfP'G#Ui3U=EQqee))%#.]"A,[uT
+IGl:J<_a=`draf_%I_HOq at i8$:]PlFQOAndpCO4Ggf!YHb.[!D=U)]e*;>b`Z-TiZSo0Xr%aMeA`23<*b4V06i:ip?+>US-
+0X_U+-_e`;^t!`:5p.dS-QlFpOf9-_$96scp,'WkW\Fj;$&JI-IV>ZB2XSct]:_HT:<_+le[@=t+gXR_d!Q!`W#r?/5T:nH
+;W\M=@4KSnAY>hB;JJ(F_#fR/_;fW/cE%-'7TTb*`uKa6GA('p8#DUaCXN80/;.ZX,F3,00EOQSc$I6K[V=!.B51<D?_ZkB
+E>>KQ9'&l3;B at N+,!L52IYto`7oYour`kmRS:SL8Q4+g3+UGA],EBsV+rG`AnI]k^,ZeQ8V'/nPWYC.P[G9u+WS.l40)fUu
+'1mR:51.iq!@hOi.Yk-k]nT7Y2R+>8Q[m>hRdN(k2q/D8)mYoKV^^_GoKE/6i8%1YmJ#FE0Gk5u)X']jm`'H(*kS1I-6#S2
+?#5$f"etiAfkNt\*0)MTJ'L*.NgV=AXq%F^5U#-uU4a&CXOf.T?9c&rgsM2(Ho:+QOpK!#REH-bQ\g:#19)"Y9S#TaM.3,^
+(l:8?T'LAp2N0,>8bkE>O&iJX;Bp8Y,S_;Z`:%?h at t2H8b';q<715D&KjU?LTV[1TW7J1aFX&))e5%S"$6`Q9er4T/;@"GD
+2#JLj"I<n[cX at W7JI48*FBq%U?e'q(6OlXr(L`+-dGC[r:'HcM%OAa5\T7JjoI#%oLf(CMU at eM*_smbY5\o2@]$a;EZ6\P,
+%oi1JK;E7C7"IbZdbTD5R6V[0.!HF7=(lPfScea">pm]CLn=7.PT[mi=X4\M<6&%'8#]Dr<?NlFYm\3o#pNrf:Fpo'rKq[e
+CqRU:5kdl=Q&>C<#dZ"kqP)B!b8=N,E3QOP_-er6r\Y6a&kro+HDiTCecA`]#E!H'I]Hu5QeE-#d/Y=.EN92\nDc?cc/^2<
+jR`SOELk6'igZ]WNg5;":l^7=.-Y-57>XH[Wan28nHUJsUVd8pb1+CcPsE#0gd/.-<V2frmj]<]\WERCUN'aPkh$n(R6[+r
+We at I=gdb2D9oFB*(^MOl#IG%fd3;!_P3`Ib#"CHP["SPPIAD58itR,Vd^?fo9WABVSd/MgJWq1TGnAM>\ZG.1>GQ.udfc"3
+fTg^EIcO>PSmR0bQ3rC4iGDS5>r$:F`0k0p"RcSa_mn%3P3]#_&R+^G1doU;T-f'#VY<'Phn%npX?3_VEn:6d[O:LEH\ZJZ
+G/uh60RaS'.<3SW<%\rBP[@%_7>qK/>&Z>-6c\TPNfQO,UUdYf'ibS6Gi0f0&Zt:3*b49oN6#nY=aTi/qp,+g)@Qh&i>Vmp
+Vtrf1jQT_a2?58>@d,%k)Buta2rmTYr2quE[Tidmhpk^;o#t6[H]\^*)t=!K(kX6+#IoOD=N5&j2pGCIN7>l+GO3p<LP,^k
+2`lO,PA",tah_Y$e]/e5Tf0)B*Tt(aB[5]2bjIGa-ZeC6]`lSC*%J+>8hE[!Kn%&A#Sa<UT3O0ogeP)R6ls:pn6!V):/CWs
+ at fdEZ^VBQ_M=YkD:^&':U8oLhq\DgeDgJQD:KF5(`g"Ih7)>W6]Zb_aA5+B+<QI$j/Rf:!QZP5;eOW2@`BmNXdM^In%%i/9
+d%l&BCV1:%TnY&gQQDua'ls at DjsX5AreBBpe)&1:dIMgA)L,\B- at 5`]7:PE$h$@$O%cc',piDj&-3FW$-6Rj at R"Ajj%D-*l
+gP#70m at K6^d&uR:EiU>*-c?Xj5?"&crl]"0(^u.;&q1_NN2ArU94*=D-k%V7I-i at 5;Z]ZCaPlZ.cj^aD=C_$XJ9LVQ:U!#Y
+=O[5c at M2rW6Dg@K?`+3Ai>pE(ZuD%SR3-g,`\13YnC\FY5S/PoD6^.shOdTsb74>#&%935%L"[.2C;sVO;!W&Mbj9VSa;Le
+=`:F+a8Wo6KlRJ59)cnJ=KKf[RN``Ei7^E^:r<@E+YY(\q%Zg$pWjg_]cPHYHMPNf8?(&X8'in`N6^ZIU,<>ljcC;bh#shs
+FD2GgMh"Aq=ke.0D"q#=0u@`#rCu&FB[9g3AJg)6pi%ZQ"_nb)Ud=j3\<n[HC+44Nmr*I^#n+9_W:Ym\0o>)16*uDXT(aKV
+RN*o19o/)K>5FC-cZnU3YrdDRbsn'T>Z7?Jj[EW;&B8.LA-)0#OZc9cB!(R"5F$Q`Z\*ZP%0hI$n;W#*o[_/Dadp at k+sS9;
++c_Kk9f0KG\crThi[o"\)@;I<qHia3oOmkIXidCTL!<',(`OYb:]>V;L(bt1ULU,Ygs^?N_>NA/0Fk5/_/l>_'V;/NN@?oU
+2uCDG`?3<?K@^Xrb#qAec<kT+ObE)O_kugR,!dtWgdo6<Y6rWI^-89e!B#H(/F8"^"AB^:0r/gGkr)1&!\FBUe"gbTb3Zeq
+&MBM,ks.i9:_N9W\c at E=-2QR\[=k2'@e=d#0:==1IWo9;;edJDaL./k=egsODHEd"$o=EF(ZEJgRTY/[0rJF//BM-teGTuO
+$25\TS)jto$B[]<1/X%r6kHC0n>&L#5]n[qe"iB>3X:mPG-cCR0b]rcrZ3eOeAeI&D\@[qlifBoW<qMq%,1(sQ at RNeE_S!@
+29CW*`_SA9Z;qJ/AMb54#/dp#ajJ`=kFbZdfIpV6$>W1;g(/h4Y)L"eR7Jo\YaPSjCmN\V4noY_AlA`U at nr(Q^S.;NKo:fZ
+YFG8!$g"dR-4bK1jHOHE*/N](QbADo4ZXmgl]Y5"oN'TQWD2k=SZWPmn at 3"7Eu^>EOH'F0?DmBb2./2_nn9*eL_Z)f?:5_;
+Jkkl-8dYZSYT2(-nS$`RHKtnRn/kU,.d`*ARqik&1qB[d*Tld1%A=o3^QrdS8(XR=+f2>Nh5<=1+fGa0j2.uDO[42V/L$4=
+kZ_`^bO(!YYIO22'uig1Y6cW[0<Fk at k#*Vu--cm^e`;Eof,H-d]S=#_4Ae.9XEF[+I4D&e^L5`M=qq%Zhs09LSj=WQDKs`)
+S-.SU%'Zm1ON'a"^C[a/;Xjs-'"Ual*`?`+]]kQCH_3`N$$7,d<='hZ8p$cQrp;KY$jOV["]ch9L]/qu#=seZindue7OoIo
+GH=m$\FDA^,4\^LT8qUMo6cH9<@pUc4qUgb#<^-/.g.Uf,-<M)r.luda2L&-fV&?o+=2E/Eog#PeYb;jJKHYXPq8)'KAngi
+&?=)*KGVH:`=e9^Ik\HQoB4C!n0?S^E1&"`+661B.E,qPVgRkd3<!V"Is'N+0E\U^\OJoQ!?b!SKQDM)h8ma"0-.fKaE<t^
+_$?ZD#mH");(NkX#D+E5N8R1Z_NrFokuc#!8>O4_^nRJ:P,lYA7opfg09o^]M(T4h@,P'f"`l[-^CWjN1*`@8"t7l&Ne!Vm
+lc%J'(.%e8`+"Z4dWpY6jR6_Sb at Gp'EVDu-!KsM2pYkXU6FtUXIL[0uhBSI!lLdp#XWp1c\N2!WY/t&W3oS"B+k33LX08#e
+ia?+SK>CqLS3t)Q3 at aZ9_&DA7H at EDL743b1MNh0$WpcB8IEkE;&o\Kkl.='m;!]Q!aB?OrqOM@$J8N1lhk192,`"s2HH7H[
+X+5QJ3&*#LEcm at 71kHaJKL8Hj"E>UKf+AIC6ab!pm?Z6+*r"-<Bm37e@'70AlJCQKoFe:Zo-?cM)L^:Si:a$*hd66snL8'&
+V`+OWmJT-4hB<6T#(1;WPcMf=m.b'C1W&9K$^MbQI`Hn4XOiA9KF.ab9I)KW\P+4IC6f![B/CW<<c(08T?ATY"[T?==cHNW
+(.dAm:Qh+HlNKeNLTOC-kJWM at f.TrV6Y#\iZnLVgOuugW&6n4J/(EoNT_Q6epV[J-i$GiKo*AGTOuArgE<Na3[hg,"-;a2V
+5o;iZC(H-a;gPJQ at reH8C]$l/U2S#HZI`mhNXtiC1DgN)_`7jr1R?;#dOtk?8u5%O,UF-Vqet/.'&**n+rEM5[I.H-gaTRX
+oD6r(HS.Suo=,44Y5cG1c6MB^0AlBa`f6UAUGFsJ.mBi^+\roS'Kb at oR?HUI&bcrOW=hOoVUm++YM!d\Go'&%<4c.G!*huF
+A%WB]l:P>eTEt42Ou3N2&I"qX%jURg<7$FI4o>3_&sU2G,Y-oZ,gOTCs*6J]kS;f'r:D;M]'Tg0'/4(>^H!8CR,7<bZ5 at 7G
+N*OGf(SE^Cm)]HF+H0F>_j>YMOr$FQ59fC#28.&(,+.5qN*[*U,>VnbLUFW(`>eV,]"G6tdOXl]#kU^8QNCdR,I^IH*rC[3
+dQOE4][/6n%m<mp+-RL<XiTR<NKXLg2#EnCVs,&N!/kg6 at 5fgWC!^oVGg[@6E8stSQF_6g'tVFBJd_j9iB%8&:co&Ls881r
+GiH8/3XI[a1EH@[X]nT(If++V;Mk!Gmes1g#Umk,QK?CU^gd(mO=CT,C$!nt-V)JX"24^'F8o7Kq at iFFVj+qN\*J[0eXqqK
+J=(k/TVFZP8n.&">Jq_=;?J&tmZK=23Pf#G-J/;\<f\Y#*,r*7`sas/TB%KH^QUC9;G6?e7=>_VK*F&,k[$>'r9?H+Xa;60
+`;P>\Xoo`K><-Ts%J*q)#Fpj8M$EUT%"1lh,J/bE'bqnf:/mh!#l@;c07A!TB1>BVRt`er%O#oX<OY([7ji?`L=>YFFRfuO
+edJR:h1(+VMqjpaJb-)$V"Ts68ea^rJgbC<\-^+T=$IfZ)nCB at ds2.gAt\$\aPdpf)lQ^,^uOd?Qrs!le9/k1.9:T*X6q"P
+>/IqkDR06)8r$ZdH*FKA_-er6c8j7Tr@*4G\\s?Y`G>Oe;Ru5EcL"u=e!`7'"SO#<:[FM#**MqhH+WS-1RE9$qm'f)8TOif
+l0*-^*W'KW+224TT!h/'+BFaDUMGngCuT=P2q8A9oiT>n=%FYk25`r]J0=1RUpXG_DC900^i#EIM at Qp"?UaDYjf%KdUO,"C
+0`95p-uVaqT[TLcp-*>?hT1\CNo-[j2]S.HJ]h;fQT.c6)D^#4[<-)B&g4_\c?0K?,7[1K@\OR6%ZrrTr`7B`YmHt9?9\r1
+!0\&C,6Eo4#jn#jrr/5S2c'UEdt=GY3T__j>_cG^Be;=-&R at 2]&*_o)6pm[=5%6;FEJV+j!%iaJX$1\K8kE8uTF;#/#@XhO
+KF$?o?<GbW0mAIq-)#@=o+SIZfb27kRsHfI+'-H7<PqM!!l4epROh"47WUk5+8lM66sS5&\toLY_[Ha%_=4"I15cjpqsL8d
+$5tjP#5:#q/s-<#JJjR#Ouqt0&LI7*=hjk4Kf<o:+?L`^j\5o^b[5CtCAk(')c"c?qBu;lmG&M7DBM?"P.rJU&@*0_`t`Rr
+ at TB-nW@(*9>,-?=>TR6=)aZ#%]iCf[,K[blWIKI'ZpQt;a3uTZbkAs@'UNcZ]FYbm-jK'b::)^W"Vlc*S4(OG>5[T'\24\\
+'?ejUZ;s^MH^u]'&>.!#LICcT6_n"M$h[@Tak_[/7+(Ei:-YAOlg)W]-F3qHJketWn:IU'-5+Y!p>B at qmZ.SAr:,S at +],&e
+O]Yu_$Jcns6r65I`/lE1=i5Lff?b]&)1K;M]*$QG61A5jrljq!eln;,dL&m7.*2O.&:ie::U4%r/9q[n)ROADo#//3XHX?X
+bb\tP65^19KAjEI9pCPRi2EGmqj5Qs50(1'Uk/hThJ:qn&e)qsNel2P*U8LJaF15Tq6YCc8#V-b=[u._d<"Zu6ThmBrA+oj
+72i\C/A2EtPGCIJlmF_V18F*\XS0P:;';'AbK.ST?VJr[`F,"m9lJ!aAr[)26m:D\CW8bMM6qUAn?pUnB at peN!<"om_94Bm
+bWQP9rg,U:7>^n$IU7XGP.aJ'p4TUO:9foF(h*b]5G636>j7XN)RdR.]KU]Qj:S3"5?NYD#kFWSgha./-'o3. at 6LtJ`kY>G
+*oN)>E%I'9rt[>$kl*s4T6iBE<1l[__RJa)W))CQ^:7+_9c97cMY'@$8X)sTF:,*FaBV4.&'%K20p$]$3[o0N6?5f:Z4G(N
+qtZJiB7@>pK>CsjY!X/MTb&.H!Mq]^Du2lFJ;9coD^)^g(B+V>Ro6_CcX4iH*_X9J3SJ63fH&FUhBl#?c#+LLY3A#sDtBS*
+4.>.V2fF&I($5OWNom_Vn6.M<4.0:Bk,hX%b%e)"5[+3)A9^AX5^[N3 at 2?MHhXGD<-6uV@?P?qDq44VknVG.qQMrriCYtE>
+-p#Bd(2tlKXIH!HYR;Z[I&ckVdKL3*j+E0Z at q?C^LL?@J+=Tap$mTEe<0>]658p<n(2794p,,AhUX2/4hC!s7ZoSYVgI'3c
+D1L_/O\h#?B0Sr7UJqE,rX7)^]TVVW)4!8mgGM9ITh)93Ln]g(\<E?(3G[!CK*al0;F*pIno*jOTm*V7csSOE^>C'"nCP-6
+;:Bmim`%V]7@;eZOg<*ZmG#@fQQ+\SCQ?e_;o'uko&Z)/&228nqLD/;SmES`@B^u(*JiTc[3)PTs647$'3h.M0r;%%_[/`t
+`P!Qf27\S][X.mlnl8WWICB0Ds&(Y'N/I6cm3UiO#28?*(?J3.e:SV69"?'Rrbh"_Gj(hnW%EkBi4gm<)WUdJ"CFhfN!dcm
+/km0H]5ckD,#q%sAC#XSr,-U-dKu+S+B'"[k2l4]<.=Zo1=eauQTYq4/j+P&M,[%)T-+)'`h*qCS-t]`qAPS)6^:_KgG_%g
+.MSM\f:YA1h2r/V;V#hc$ULSFZ(Dpk5LOUV/[mBDF+au,KAk\fhXm^DAis##jqIQSgr$Qj^*(=Dr'qrb"\XpQM>j2YGJH?!
+*eaQs^hAAU56"CiDJB8V+IA,G7:lXb(V.3m94(UlSue3D:"],kCEA3V6QDQ*N2RWE"kfq1YRfIe7<&GKk1E"_;tc+l>u$D6
+1#oK@=q]chrr*dq]YB5\Nni:mkkQeFD]f&mMsX"GBkK//U^"2V_&3c]09OoGA:`5tOW."3dITJA6[E$I,A@!n'%&)\C37k>
+_W;m=F>V<KO?s=()\CPp&5TB&L\Z]>!/^n_&JI]N_3<@qD2k>qOh(C*4ro9l?ncth6-f.tXXD)YSC;bZrK/c$BftIk41Qmh
+>l9RIk9Hc[P7:@!maL`u at ln#p-RoQfXTVb=j!tV)QU5RKHO\+-;k&5`_\U`29%)TE:gYa*k?i5]rAqVj.(dFJ$%rQACJjQH
+gS!g7r`_p=PbTFBpd;=!s-\3nrE/Ut)`B0c&3a[sfFlSKM:5Cm@"b1UE[B"d9/s9p6g=dc*/J>EJJ8ZYfgG2B9RK=Ii$,bG
+^K^@06]7#@DFnd,JHb_!I3o/N_-m%e+uoP#VM>cN-\m";o:c)Y8'd.KJ+Fe\)]=4`j'i=&<jFD+EGJ#KMsV<p]c91taadME
+<KYq3nc?9<"VQOQ;`HT24s3eI,)LYeZ,o0QlAY,FQjXCL\=lIlkY]K3l%UuSh-VEs+]\L;Y2 at KD>%XH20aFKb8k%6cc3Ko*
+aDioiUEHdI$OES^!9jL7RYJ*]$OLDt7:[O9A*DPc(Q@&lUE7O7)!o^*(^pVdpD0;]^@\%Y/j+sSE`q4*Zi2n9T)F/Bkrk''
+&!k"g]mgV\LPif>b1#:ZCZl.l0%oo_e(d$C6gaIom0Wml1HG<]-%8(8o2LK8A,pn+bX,2nf?US,gJNh>jD`5ki+RTmiTXu1
+O>3E3a"MGuBU]!;+)r"u]n2paW;!>heL&g[i^X[bZsf,L9FbO<6&QTO2B\BK^1^LFbHfZ+T8(0i0Gsd at E;?<cK<=\R+X+>(
+Y5^n,h[+TS1B:CtAaREC(d$sWEIPs.+tO:Pjm:2D)\RK%9@$^#&mObq%:+f5&MY3nlbWALX6C5(!J-tDg'VL:no_j4itc"K
+ku<t0h_94SB1)ha-ScYi]J9F$\G8u#BnF#A_h+_n!DO6pY]Jb"0BN$qN$GuMl=3aChFu!q532Rb(qh2G!jWn7'n^oQ#(sa"
+0RTW<c>DG13S=C,Rm'?*@d?T>*V!N`)`m:bM!n;!+Aa?S5m&[CW4QPbheaHcE6hp)XktX&OQcc3m*iQX%7"c:g\s/27r&L'
+;kJ6jZPog!m4b9*I5+C1*W!.n`*,,H;rGk"^C<I5-ft"gjFQY,L^;P3;NOF1j*;T8UC1IXcHI)&msULuMKi4UX'c.mod=9l
+%e`a:$jM@#n1>b+F'824j0a:_.bB*+k]^bd7KB5B'QnnYQG(`qS%NY_lN&t.Ek:<"RfR0X,cnN\s%d at Z(Cgnq8>,IuDqQX^
+&29qO7K@[AM;)P0T<bo?:H)8#Mjp,ZMLFKY"N]qrM3(&?T:utVKgdHldJfBaS66*,6%HA3`OjH$N`..ecY2KFJsM)VeM%`6
+Aj at OiZkIa+PFK;bm#Stj0Gk426e2$/X4A at _ZbY:)jP*#"-WGA at bBl*pGVR4-V`<91EI'b%8f0jjq8tPW*q,T!^L-)[pV>pY
+_!%;.T!$^@ZobDPD3/[6!>c('laB.M)4bb[iq'cDQ5nL0kL4S5;?l4*Mq!fh/@0m].C`E*",Z>(&Fnd"[]&5I\UdCA6;YZD
+E6NeD#"(XA&c9DK-U&;@R%l0aI0'V*_-esECT-G_Rm=m2c]AE'WFb?J\Z+MPnt'>&+3s+2eHS"f&iop:@-Kh6LZ7O-C]I[k
+Qrc`oUE6U))\^kuJE0Jf;H,57`35U<!"<#'9bQV6(Jdi">u5dG);lo,kQVBPrh7I77WfmT$MGrl(_C`d]FNGG0uOq^4M:Y^
+g_e,1#H=PW"\XmH7)a&p"mUV$+N?\?)T2Y1r2=!ukE2Cl]T%W*1&\YeqkNBbmgaO<%0hI$@/)X2)$ar;D?%L<7m-Qo6>eG'
+pa"t14n8dPj",]3l#Q!cA`:sI$ns=J60eNG8nS,X8'?Db?H,M7#^p!clEd'*Z)sX!+=;dF?_)r>FUlesX9nT5I:M`QpA_W?
+:VPd2g-1o&=3ne`G_)Z0V$q1WURWU#/Q'0>3oXTKe0Mj.D]`80:^75hKn.m-(9C)GNTg6#XcKr0qa.BNS=)%7ge\)J+K]o_
+dD=PNj+H07K>CqL(sWGL!C5H7K53 at tgA2!K[e*0ts+qUUh#N+dUj:Vnq>^UKaNe:i0i;[:54?MgK%Zo6'(@FS?-!]BL.%Bl
+#K<lqr3%a)?`KnT2G)-(E%B+OI<.h$!/U5.d\eH\hr=MHqa9ti<MotW at PA4O%diqA3'a$<%QS;:m7.sXX\K4reQ<T;DV)hT
+f.)*,@>H09"kc)%ECEIp%kTt#fI]$!$jM at C>QGL at g\KH=!\NPO(gr%r.e15")SiE8p9Kcf,kdtBk<;VhUXo=-_!h!_qG8?>
+;7$I=[N0Phc3h at oJnPK_)4jqWnWno!!6R1o0 at 9cfr(@jFZ$eJZaL0?-^[T65e-;"<5-b3Fh^']o!sM"+(q2p1akHeQU#_ZS
+)\647AabE[T>,Wp%MT?@]L_5pH[[-4`$e7']R^9>_-eseZXEU at jm[XbPo2^_E.E(?M>4EH!Q9^@jGTPVBo%"#79o(@F7G&=
+c3RBWkcdJS-#kRN4djJ8BR)7sAKVdN\LM7C$Qs4:l1[g\HlGG-!*6U<5[4^_cUH`PbRt$`lM-Wu=En?V9Ejhb*-2!ikTl)H
+0>2r+qV/7s1(mDZ=>R#V0M`$h;#)56'm=R'm>8W\)"7_J$jM@#E,G`QQG!Kt"%/?!ZO[JW%MugN at 1:'hrWQG2O4_nha(0j!
+.1Ytho1MKJn=lD]TaDAa4BM%bgI_l=HPOje.b;iV$=J]3>/:S.1SDsg(a<\pBJDc[<[Po+5Z&^l&RZ!ur\_[0K&?aEN]9;1
+mPD98Z3e->M?%^l7e`=Y!cgP:!'k9Y)J=W>fd%3B^nE7`]R^9>_-esebEuQ.3`0PXXF\Ur+--<[c%(sZ*a`.?j-BIGqHa6r
+n=quacZ=Ju_24CDjm^<sf?e9+H_.dUl:kkj=fjto$)BW_#E!7e?d\sa"/$:"Ju8]0kS$Yh?,XI,'-:*;Dl\0l+U&q_2m_o@
+:WI9aX(/PT4/,BK'62fJXY?Pfj`3a&5Z8Vr.P/7;Q#qR_428q0q*NB.(V]n:)%6_%_/O:dVXJd(UOUB'g^N\?h6FVbVFMq@
+Ti,q_#iK.q15eYmEFN#c$>.RPci/Fnk##srTKeVI-:_EU1OsNL&clsH%@#j<gar5QMS;+d!>(.jLYulsaRqLWcl[R#$cW3+
+9;^XYGqZ-Y0 at rO/"aCe+XHY1d64c4H&f-pmLhcJ^nUuVg,iaI=e*hW9+f")`n!h.$0Gk5]5*G>[o'9A5\c;6=:XFHkCG4lf
+"T!t*Y^4Y/X-X_hW:O"E:"P at W3iKH6m,OiA?^6>@6r<"['WX$MgjP_crCFM,)uo4a-;^VicT;*/jKI;9fr/K_H2W"-fET^f
+!]2T']E37F/^]"*nddI&R84.XVRP!19doht^!2$F3c6<uJhra#1jV5")`5n*YjMLD_-etp>JLhmaZrXrE@/L>(4oNVLFOHG
+OOKs7[Ii[>@uafA\Is,1fPpDr;?id'IF[Vn$aWJY5TG&XI%blq$B1uc5["QK)aD"/iU]NVKP2P*!IK)Q5Vn`TTFBbq)n.#2
+OP2Cll[oc[4HFRGq81%Hm7Wl;$oS\,!=0&diJKoV3GJf2 at 0VA#?ncu3TF#qZ:<u]Cpl[oe"t4>7ns0hDfC,CC+aX[nFMqW?
+`Y0Gah0)?\&]k7;PQ^2I_?^ePGCb/n;?5XQ)c-[iW4%8A"Cs.XVE^>cs)XQ(+D$"Q6?F<rb"2sd]RT2@?.[AMnbRMaEKrio
+X9-L*8CrBX(=]>n5^Ud]RZPpgIc#4Anm at tdrl/>ib@!"@%#43iPTjh(I(ds>McA7rf,cGHo*J8AWptp2,s+nec!C7V=2/lV
+_(2`-7&V3!22grL='n2l-1pCe="l85+PD7$)i1R;fY:E,F"k==s-r"SjN>7MMao at DR;;k^-h.!BAJDF$A.R#nX.#-N3=NK]
+"O_E at AHr/,9)^$DQct2>3\;.U0Gk4QIp].8b_(.hI)D8n-g`(7cX1uTZKgI1*Cj]u*?nQ*\c1qqE3VEbIa(55MEO3g35Y6R
+dBaZ_p?I!<IH_WF5KUstA::TVqpO(,28==cr8A+H3B at 51<UHD`orN$l>]BPg'2)^0d1';8*dF8\!,<0p+lZEi+%AXO8@&g>
+]0Q.c=q_H$&f,3e!G_ughRO`?b3^/7p)"2BK>CrGRm3eFeR)!uliqM(M5H^#,FE8jrd35=b9lQ[GGd>m.XN1GKf,l,,6`<Q
+"b7@^pHuP7D$!.8>4hV_$j=dW$Y(Dom>jbSJ^>L:rh2F77gt(=AKCl*Kj1qZ+'JoN<@CI0IL8G@%#ArZYi')72dk#%;Ct4+
+Xrcr@%0hI$?na"MGonq]+*n#FQR.US]"?p,DUn2pmefD>ru8K68Z0rPF_X.2<Y3A[/B\W-TLU4)h"?apc<1B.!1#mrV;lbH
+d2m=ScG+61*KKN?DD`g*5ZoVY6GNp at TKq:?SX'CD5);!27/(4Yd"XM(D_BKCkqqV6 at NLKl)XMJR#(sa"0FRs at g%.[N%,Uq>
+lgd()>=.c=f1UKtAcYG[T,%b+'0Bj1q8Lk(6?bYBjci9_[?n;\Z3e/,Q)ghM]BY]q7/]KUgI,iVo%(i]&!.Rdm^.\_^ASAB
+57oq(+CG;5,s[6<$.6p>Kl4=.f';S.:=]cb.t?^TiGc.U!WpR/h8-8B?n`E+#/gHmG`;(uXokcEUTc>`66)!\5*&rkb@?l7
+geGLF/O]=t\pcHlb$@et_3!tA'Dl,kH-[esG1%Te(QI9HO5(8U&CcaA_6"nR5j#n:2f9p'iM+`SIPu3?InkIbJl,b"6AT$d
+3j^RPn#N"`##!eW:,2B$Z_</?_61dc0Gk3&_nQVukK/3DQ610sM9Z(\VFQB$h#YOA=aT#H%3Xm$eJJmS("Nb"T/Ud8XlHV_
+dkTT1*P^q<CH#NZAadTJ[f>QG/ORHg+<Jk`n>k<8\9u_BmT&>jKUd1ON8I4-H./BPl%8+*jRrQBg5!eW^j&.*RI!pa$k+/c
+K+*UQ0#D!M(^pVdrt]&Jr/ghualDQ$J at CP(I1N[ag at MN&7*g_=0,_6_$j0sUGk\suoN/Lb:0`;I]U)ObI?p2kqk(K:_Cg/r
+l=p-uR/A?sJ,Jk/H[[^B0j5[r7'qFMQP=HZ6@'S%"F>Y*^`"%/H2V8E848&GN589E?n`E+#/gIf8:poq#3;/8Vb^8e4AIfM
+cuD.N^3q+!knfE6n]P,Ys)%]rTt?p<n\FbFC>M^tml=QVV*Qmb)S4%J5eEbV#kB3ls8B<;bT"]._-)N;5Iu;"[#B$O/f;!]
+?Fb1UcH at R$*pajU#(sa"0RPr):S6GBRgTaupA1$E2c(c]eW&:5M7^lGTI47V>Wd07=Umjl7/+XjA6L*&^dA?g%cD)QMahWs
+QkKp>,ReooK>CqL(_#RkIPLNc.t at .=;@+a*=9Y!\lf)BZ!J]L:+!lVd)pfjt;Q$pS3B]U>p0h-sXGc[>DB*Ke#(sa"0Gr)X
++L<2*!)O_=pZ#+TY.A35-0'/T0PW-4!d'VP0PoIWMoY8D;M:<"\7Qu=$%qWq?n`E+#/bWk/.R1;^n4EU4*98<?VGn7=1:>D
+Y(Z/l/5t=QI>_VZ>WR>c?op.]$jM@#nD2*gC&:fsIJ35'HdF"!gR!0JIVCMRCcd9c?n`E+h^`6`Hm*G%!K.$s$jM@#?n`E+
+#(sa"0Gk3&K>CqL(^pV$_-er6$jM@#?n`E+#(sa"0Gsf`pcflmPi;~>
 U
 %%EndObject
 0 A
diff --git a/doc/examples/ex35/example_35.ps b/doc/examples/ex35/example_35.ps
index d95d7e2..3d8a950 100644
--- a/doc/examples/ex35/example_35.ps
+++ b/doc/examples/ex35/example_35.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
 %%HiResBoundingBox: 0 0 612 792             
-%%Title: GMT v5.3.4_r17755 [64-bit] Document from grdimage
+%%Title: GMT v5.4.2_r18363M [64-bit] Document from grdimage
 %%Creator: GMT5
-%%For: pwessel
+%%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Thu Mar 23 16:24:24 2017
+%%CreationDate: Thu Jun 15 10:59:37 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -5042,6 +5042,7 @@ PSL_path_pen 45 get cvx exec
 P S
 PSL_cliprestore
 U
+[] 0 B
 PSL_cliprestore
 %%EndObject
 0 A
@@ -39624,6 +39625,11 @@ FO
 -2 1 D
 P
 FO
+5280 8232 M
+6 -1 D
+-9 3 D
+P
+FO
 5369 8221 M
 4 0 D
 -5 0 D
@@ -40039,6 +40045,10 @@ P S
 5377 8214 M
 -2 1 D
 P S
+5280 8232 M
+6 -1 D
+-9 3 D
+P S
 5369 8221 M
 4 0 D
 -5 0 D
@@ -40113,27 +40123,27 @@ P S
 5349 8218 M
 -4 1 D
 P S
-5384 8217 M
--3 1 D
-1 0 D
+5118 8266 M
+6 0 D
+-2 0 D
 S
-5397 8213 M
--3 0 D
-P S
 5134 8267 M
 5 -1 D
 -2 1 D
 S
+5397 8213 M
+-3 0 D
+P S
+5384 8217 M
+-3 1 D
+1 0 D
+S
 5123 8266 M
 2 0 D
 P S
 5394 8214 M
 -4 0 D
 P S
-5118 8266 M
-6 0 D
--2 0 D
-S
 4957 8329 M
 -1 0 D
 9 -1 D
@@ -84245,70 +84255,58 @@ P S
 1 4 D
 0 -2 D
 S
-247 4530 M
--1 -16 D
-4 9 D
-6 5 D
--1 7 D
+255 4535 M
 -4 -8 D
+-4 3 D
+-2 -14 D
+10 9 D
+1 3 D
 P
 FO
-294 4593 M
-1 8 D
--2 -3 D
--1 -8 D
-P
-FO
-296 4601 M
-1 -4 D
-5 10 D
--5 -6 D
-P
-FO
-319 4683 M
-2 -3 D
+302 4607 M
+-3 -1 D
+-2 -7 D
+2 0 D
 P
 FO
-268 4556 M
-4 -2 D
+295 4601 M
+-2 -3 D
+-1 -8 D
 P
 FO
-356 4787 M
-4 4 D
+272 4557 M
+-4 -1 D
+4 -3 D
 P
 FO
-371 4835 M
-1 -3 D
+360 4792 M
+-4 -6 D
+3 1 D
 P
 FO
-247 4530 M
--1 -16 D
-4 9 D
-6 5 D
--1 7 D
+255 4535 M
 -4 -8 D
+-4 3 D
+-2 -14 D
+10 9 D
+1 3 D
 P S
-294 4593 M
-1 8 D
+302 4607 M
+-3 -1 D
+-2 -7 D
+2 0 D
+P S
+295 4601 M
 -2 -3 D
 -1 -8 D
 P S
-296 4601 M
-1 -4 D
-5 10 D
--5 -6 D
-P S
-319 4683 M
-2 -3 D
-P S
-268 4556 M
-4 -2 D
-P S
-356 4787 M
-4 4 D
+272 4557 M
+-4 -1 D
+4 -3 D
 P S
-371 4835 M
-1 -3 D
+360 4792 M
+-4 -6 D
+3 1 D
 P S
 1018 4220 M
 1 -3 D
@@ -97490,1162 +97488,149 @@ S
 -30 43 D
 S
 5550 8154 M
--8 3 D
--7 4 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--9 2 D
--8 3 D
--8 3 D
--8 2 D
--9 3 D
--8 3 D
--8 2 D
--9 3 D
--8 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--8 2 D
--9 2 D
--9 3 D
--9 2 D
--8 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 3 D
--9 2 D
--8 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--9 2 D
--9 2 D
--10 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--9 2 D
--9 2 D
--9 2 D
--10 1 D
--9 2 D
--9 2 D
--9 1 D
--10 2 D
--9 2 D
--9 1 D
--9 2 D
--10 1 D
--9 2 D
--9 1 D
--10 2 D
--9 1 D
--9 2 D
--10 1 D
--9 1 D
--10 2 D
--9 1 D
--10 1 D
--9 2 D
--9 1 D
--10 1 D
--9 1 D
--10 2 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--10 0 D
--9 1 D
--10 1 D
--10 1 D
--9 0 D
--10 1 D
--10 1 D
--10 0 D
--9 1 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 1 D
--10 0 D
--9 1 D
--10 0 D
--10 0 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 0 D
--10 1 D
--10 0 D
--9 0 D
--10 0 D
--10 0 D
--10 0 D
--10 0 D
-4195 8400 M
-1 0 D
--10 0 D
--10 0 D
--10 0 D
--10 0 D
--9 0 D
--10 0 D
--10 -1 D
--10 0 D
--10 0 D
--9 0 D
--10 0 D
--10 -1 D
--10 0 D
--9 0 D
--10 -1 D
--10 0 D
--10 0 D
--10 -1 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--10 -2 D
--9 -1 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -2 D
--9 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -2 D
--9 -1 D
--10 -2 D
--9 -2 D
--9 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--10 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--8 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -3 D
--9 -2 D
--9 -2 D
--8 -2 D
--9 -2 D
--9 -2 D
--9 -3 D
--8 -2 D
--9 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -2 D
--9 -3 D
--8 -2 D
--9 -3 D
--8 -2 D
--9 -3 D
--8 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--7 -4 D
--7 -3 D
--8 -3 D
--7 -3 D
--8 -4 D
--7 -3 D
--7 -3 D
--7 -3 D
--8 -4 D
--7 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--6 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--6 -4 D
--7 -4 D
--6 -3 D
--7 -4 D
--7 -4 D
--6 -3 D
--6 -4 D
--7 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--7 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--5 -5 D
--6 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--5 -4 D
+-92 37 D
+-96 34 D
+-134 41 D
+-122 31 D
+-71 17 D
+-128 25 D
+-140 22 D
+-105 13 D
+-154 15 D
+-126 7 D
+-147 4 D
+-147 -1 D
+-147 -7 D
+-125 -10 D
+-163 -18 D
+-159 -25 D
+-146 -29 D
+-132 -32 D
+-127 -37 D
+-82 -27 D
+-126 -47 D
+-38 -15 D
+-101 -46 D
+-89 -46 D
+-65 -37 D
+-12 -8 D
+-13 -7 D
+-71 -47 D
+-55 -40 D
+-71 -59 D
 -4 -5 D
--5 -4 D
--5 -4 D
--4 -4 D
--5 -5 D
--5 -4 D
--4 -4 D
--9 -9 D
--9 -9 D
--8 -9 D
--9 -9 D
--8 -9 D
--8 -8 D
--8 -9 D
--8 -9 D
--7 -9 D
--8 -10 D
--7 -9 D
--7 -9 D
--7 -9 D
--7 -9 D
--6 -9 D
--7 -10 D
--6 -9 D
--6 -9 D
--6 -10 D
--6 -9 D
--5 -9 D
--5 -10 D
--6 -9 D
--4 -10 D
--5 -9 D
--5 -10 D
--4 -9 D
--5 -10 D
--4 -10 D
--4 -9 D
--3 -10 D
--4 -9 D
--3 -10 D
--4 -10 D
--3 -9 D
--2 -10 D
--3 -10 D
--2 -10 D
--3 -9 D
--2 -10 D
--2 -10 D
--2 -10 D
--1 -9 D
--1 -10 D
--2 -10 D
--1 -10 D
--1 -10 D
-0 -9 D
--1 -10 D
-0 -10 D
-0 -10 D
-0 -10 D
-0 -9 D
-1 -10 D
-0 -10 D
-1 -10 D
-1 -10 D
-1 -9 D
-2 -10 D
-1 -10 D
-2 -10 D
-2 -9 D
-2 -10 D
-2 -10 D
-3 -10 D
-2 -9 D
-3 -10 D
-3 -10 D
-3 -9 D
-4 -10 D
-3 -10 D
-4 -9 D
-4 -10 D
-4 -9 D
-4 -10 D
-5 -10 D
-4 -9 D
-5 -10 D
-5 -9 D
-5 -10 D
-6 -9 D
-5 -9 D
-6 -10 D
-6 -9 D
-6 -9 D
-6 -10 D
-6 -9 D
-7 -9 D
-7 -9 D
+-28 -25 D
+-59 -62 D
+-51 -64 D
+-37 -56 D
+-16 -28 D
+-31 -67 D
+-17 -48 D
+-16 -69 D
+-6 -49 D
+-1 -58 D
+4 -49 D
+11 -59 D
+14 -48 D
+23 -58 D
+24 -48 D
+41 -65 D
+14 -18 D
 6 -10 D
-8 -9 D
-7 -9 D
-7 -9 D
-8 -9 D
-7 -9 D
-8 -9 D
-8 -9 D
-9 -9 D
-8 -9 D
-9 -9 D
-8 -8 D
-9 -9 D
+53 -63 D
+43 -44 D
 5 -4 D
 4 -5 D
-5 -4 D
-5 -4 D
+10 -8 D
 4 -5 D
-5 -4 D
-5 -4 D
-5 -5 D
-4 -4 D
-5 -4 D
-5 -4 D
-5 -5 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -5 D
-6 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-5 -5 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -3 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-7 -4 D
-6 -3 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-7 -3 D
-6 -4 D
-6 -4 D
-7 -4 D
-6 -3 D
-7 -4 D
-6 -4 D
-7 -3 D
-6 -4 D
-7 -4 D
-7 -3 D
-6 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-6 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -3 D
-7 -4 D
-8 -3 D
-7 -3 D
-7 -4 D
-7 -3 D
-8 -3 D
-7 -3 D
-7 -4 D
-8 -3 D
-7 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-7 -4 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-9 -2 D
-8 -3 D
-8 -3 D
-8 -2 D
-9 -3 D
-8 -3 D
-8 -2 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-9 -2 D
-10 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-9 -2 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -2 D
-9 -1 D
-10 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -1 D
-10 -2 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -2 D
-9 -1 D
-10 -1 D
-9 -2 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -2 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 0 D
-10 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 -1 D
-10 0 D
-9 -1 D
-10 0 D
-10 0 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 0 D
-10 -1 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 1 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 1 D
-10 0 D
-9 0 D
-10 1 D
-10 0 D
-10 0 D
-10 1 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-10 2 D
-9 1 D
-10 1 D
-9 2 D
-9 1 D
-10 2 D
-9 1 D
-9 2 D
-10 1 D
-9 2 D
-9 1 D
-9 2 D
-10 1 D
-9 2 D
-9 2 D
-9 1 D
-10 2 D
-9 2 D
-9 2 D
-9 1 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-10 2 D
-9 1 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-8 2 D
-9 2 D
-9 2 D
-9 2 D
-9 3 D
-9 2 D
-9 2 D
-8 2 D
-9 2 D
-9 2 D
-9 3 D
-8 2 D
-9 2 D
-9 2 D
-8 3 D
-9 2 D
-9 2 D
-8 3 D
-9 2 D
-8 2 D
-9 3 D
-8 2 D
-9 3 D
-8 2 D
-9 3 D
-8 2 D
-8 3 D
-9 2 D
-8 3 D
-8 3 D
-9 2 D
-8 3 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-7 4 D
-7 3 D
-8 3 D
-7 3 D
-8 4 D
-7 3 D
-7 3 D
-7 3 D
-8 4 D
-7 3 D
-7 3 D
-7 4 D
-7 3 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-6 4 D
-7 3 D
-7 4 D
-7 3 D
-6 4 D
-7 4 D
-6 3 D
-7 4 D
-7 4 D
-6 3 D
-6 4 D
-7 4 D
-6 3 D
-7 4 D
-6 4 D
-6 4 D
-6 4 D
-7 3 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 3 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-5 5 D
-6 4 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 5 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 5 D
-5 4 D
-5 4 D
+49 -42 D
+31 -25 D
+28 -20 D
+16 -13 D
+77 -51 D
+30 -19 D
+13 -7 D
+52 -30 D
+103 -52 D
+80 -36 D
+107 -43 D
+96 -34 D
+134 -41 D
+122 -31 D
+71 -17 D
+128 -25 D
+140 -22 D
+105 -13 D
+154 -15 D
+126 -7 D
+147 -4 D
+147 1 D
+147 7 D
+125 10 D
+163 18 D
+159 25 D
+146 29 D
+132 32 D
+127 37 D
+82 27 D
+126 47 D
+38 15 D
+101 46 D
+89 46 D
+65 37 D
+12 8 D
+13 7 D
+71 47 D
+55 40 D
+71 59 D
 4 5 D
-5 4 D
-5 4 D
-4 4 D
-5 5 D
-5 4 D
-4 4 D
-9 9 D
-9 9 D
-8 9 D
-9 9 D
-8 9 D
-8 8 D
-8 9 D
-8 9 D
-7 9 D
-8 10 D
-7 9 D
-7 9 D
-7 9 D
-7 9 D
-6 9 D
-7 10 D
-6 9 D
-6 9 D
-6 10 D
-6 9 D
-5 9 D
-5 10 D
-6 9 D
-4 10 D
-5 9 D
-5 10 D
-4 9 D
-5 10 D
-4 10 D
-4 9 D
-3 10 D
-4 9 D
-3 10 D
-4 10 D
-3 9 D
-2 10 D
-3 10 D
-2 10 D
-3 9 D
-2 10 D
-2 10 D
-2 10 D
-1 9 D
-1 10 D
-2 10 D
-1 10 D
-1 10 D
-0 9 D
-1 10 D
-0 10 D
-0 10 D
-0 10 D
-0 9 D
--1 10 D
-0 10 D
--1 10 D
--1 10 D
--1 9 D
--2 10 D
--1 10 D
--2 10 D
--2 9 D
--2 10 D
--2 10 D
--3 10 D
--2 9 D
--3 10 D
--3 10 D
--3 9 D
--4 10 D
--3 10 D
--4 9 D
--4 10 D
--4 9 D
--4 10 D
--5 10 D
--4 9 D
--5 10 D
--5 9 D
--5 10 D
--6 9 D
--5 9 D
--6 10 D
--6 9 D
--6 9 D
--6 10 D
--6 9 D
--7 9 D
--7 9 D
+28 25 D
+59 62 D
+51 64 D
+37 56 D
+16 28 D
+31 67 D
+17 48 D
+16 69 D
+6 49 D
+1 58 D
+-4 49 D
+-11 59 D
+-14 48 D
+-23 58 D
+-24 48 D
+-41 65 D
+-14 18 D
 -6 10 D
--8 9 D
--7 9 D
--7 9 D
--8 9 D
--7 9 D
--8 9 D
--8 9 D
--9 9 D
--8 9 D
--9 9 D
--8 8 D
--9 9 D
+-53 63 D
+-43 44 D
 -5 4 D
 -4 5 D
--5 4 D
--5 4 D
+-10 8 D
 -4 5 D
--5 4 D
--5 4 D
--5 5 D
--4 4 D
--5 4 D
--5 4 D
--5 5 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--5 5 D
--6 4 D
--5 4 D
--5 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--5 5 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--6 3 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--7 4 D
--6 3 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--7 3 D
--6 4 D
--6 4 D
--7 4 D
--6 3 D
--7 4 D
--6 4 D
--7 3 D
--6 4 D
--7 4 D
--7 3 D
--6 4 D
--7 3 D
--7 4 D
--7 3 D
--6 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 3 D
--7 4 D
--8 3 D
--7 3 D
--7 4 D
--7 3 D
--8 3 D
--7 3 D
--7 4 D
--8 3 D
--7 3 D
--8 3 D
--7 3 D
-S
+-49 42 D
+-31 25 D
+-28 20 D
+-16 13 D
+-77 51 D
+-30 19 D
+-13 7 D
+-52 30 D
+-103 52 D
+-80 36 D
+P S
 4200 7837 M
 0 0 D
 P S
 8 W
+25 W
+N 4200 4200 4200 0 360 arc S
 /PSL_H_y 400 PSL_font_encode 0 get 0 eq {Standard+_Encoding /Helvetica /Helvetica PSL_reencode PSL_font_encode 0 1 put} if
 200 F0
 (100\312) sh add def
 4200 8400 PSL_H_y add M
 400 F0
 (Distances from GSHHG crude coastlines) bc Z
-25 W
-N 4200 4200 4200 0 360 arc S
 %%EndObject
 %%PageTrailer
 U
diff --git a/doc/examples/ex39/example_39.ps b/doc/examples/ex39/example_39.ps
index e4d12d7..df3fdd6 100644
--- a/doc/examples/ex39/example_39.ps
+++ b/doc/examples/ex39/example_39.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
 %%HiResBoundingBox: 0 0 612 792             
-%%Title: GMT v5.4.0_r17581M [64-bit] Document from grdimage
+%%Title: GMT v5.4.2_r18319 [64-bit] Document from grdimage
 %%Creator: GMT5
-%%For: pwessel
+%%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Thu Feb 23 10:51:16 2017
+%%CreationDate: Sun Jun  4 10:49:28 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -663,7 +663,7 @@ O0
 3600 1320 TM
 
 % PostScript produced by:
-%@GMT: grdimage v1.nc -Ivint.nc -JG90/30/5i -P -K -Bg -Ct.cpt -X3i -Y1.1i
+%@GMT: grdimage v1.nc -I -JG90/30/5i -P -K -Bg -Ct.cpt -X3i -Y1.1i
 %@PROJ: ortho 0.00000000 360.00000000 -90.00000000 90.00000000 -6371007.181 6371007.181 -6371007.181 6371007.181 +unavailable +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_1
 0 setlinecap
@@ -3208,825 +3208,104 @@ S
 -9 12 D
 S
 1500 5250 M
-0 -10 D
-1 -10 D
-0 -9 D
-1 -10 D
-1 -10 D
-2 -10 D
-1 -9 D
-2 -10 D
-2 -10 D
-3 -10 D
-2 -9 D
-3 -10 D
-4 -10 D
-3 -9 D
-4 -10 D
-4 -10 D
-4 -9 D
-4 -10 D
-5 -9 D
-5 -10 D
-5 -9 D
-6 -10 D
-5 -9 D
-6 -9 D
-6 -10 D
-7 -9 D
-6 -9 D
-7 -9 D
-7 -9 D
-8 -9 D
-7 -9 D
-8 -9 D
-8 -9 D
-9 -9 D
-8 -9 D
-9 -9 D
-4 -4 D
-5 -5 D
-4 -4 D
-5 -4 D
-5 -4 D
+3 -49 D
+10 -49 D
+9 -29 D
+19 -48 D
+26 -47 D
+25 -37 D
+37 -45 D
+47 -49 D
+10 -8 D
 4 -5 D
-5 -4 D
-5 -4 D
-5 -5 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-6 -5 D
-5 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -3 D
-6 -4 D
-6 -4 D
-6 -4 D
-7 -4 D
-6 -3 D
-6 -4 D
-7 -4 D
-6 -3 D
-7 -4 D
-6 -4 D
-7 -3 D
-7 -4 D
-6 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -3 D
-7 -3 D
-8 -4 D
-7 -3 D
-7 -3 D
-8 -3 D
-7 -4 D
-8 -3 D
-7 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -3 D
-8 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -2 D
-9 -1 D
-10 -2 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 0 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 -1 D
-10 0 D
-10 0 D
-9 0 D
-10 -1 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 1 D
-9 0 D
-10 0 D
-10 0 D
-10 1 D
-10 0 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-9 1 D
-10 1 D
-10 0 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 2 D
-9 1 D
-10 2 D
-9 1 D
-9 2 D
-9 2 D
-10 1 D
-9 2 D
-9 2 D
-9 1 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-8 2 D
-9 3 D
-9 2 D
-8 2 D
-9 2 D
-9 3 D
-8 2 D
-9 2 D
-8 3 D
-9 2 D
-8 3 D
-9 2 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-7 3 D
-8 3 D
-7 4 D
-8 3 D
-7 3 D
-7 3 D
-8 4 D
-7 3 D
-7 3 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-6 3 D
-7 4 D
-7 3 D
-6 4 D
-7 4 D
-6 3 D
-7 4 D
-6 4 D
-6 3 D
-7 4 D
-6 4 D
-6 4 D
-6 4 D
-6 3 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-5 4 D
-6 5 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 5 D
-5 4 D
-5 4 D
+67 -54 D
+64 -44 D
+69 -41 D
+97 -48 D
+74 -32 D
+103 -38 D
+100 -31 D
+105 -26 D
+117 -25 D
+122 -19 D
+143 -16 D
+127 -8 D
+127 -2 D
+88 1 D
+127 7 D
+144 14 D
+122 18 D
+91 18 D
+98 22 D
+78 21 D
+99 32 D
+102 38 D
+87 39 D
+75 39 D
+51 30 D
+65 43 D
+48 37 D
+30 25 D
 4 5 D
-5 4 D
-5 4 D
-4 4 D
-5 5 D
-9 9 D
-8 8 D
-9 9 D
-8 9 D
-8 9 D
-8 9 D
-7 9 D
-7 9 D
-7 9 D
-7 10 D
-7 9 D
-6 9 D
-6 9 D
-6 10 D
-5 9 D
-6 10 D
-5 9 D
-4 10 D
-5 9 D
-4 10 D
-4 9 D
-4 10 D
-4 9 D
-3 10 D
-3 10 D
-3 9 D
-2 10 D
-3 10 D
-2 10 D
-2 9 D
-1 10 D
-1 10 D
-1 10 D
-1 10 D
-1 9 D
-0 10 D
-0 10 D
-0 10 D
--1 9 D
--1 10 D
--1 10 D
--1 10 D
--1 10 D
--2 9 D
--2 10 D
--3 10 D
--2 10 D
--3 9 D
--3 10 D
--3 10 D
--4 9 D
--4 10 D
--4 9 D
--4 10 D
--5 9 D
--4 10 D
--5 9 D
--6 10 D
--5 9 D
--6 10 D
--6 9 D
--6 9 D
--7 9 D
--7 10 D
--7 9 D
--7 9 D
--7 9 D
--8 9 D
--8 9 D
--8 9 D
--9 9 D
--8 8 D
--9 9 D
--5 5 D
--4 4 D
--5 4 D
+19 17 D
+34 35 D
+23 27 D
+34 46 D
+28 47 D
+25 57 D
+14 49 D
+5 29 D
+4 49 D
+-1 29 D
+-6 49 D
+-13 49 D
+-19 48 D
+-14 28 D
+-29 47 D
+-43 55 D
+-33 35 D
+-23 22 D
 -5 4 D
 -4 5 D
--5 4 D
--5 4 D
--5 5 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--6 5 D
--5 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 3 D
--6 4 D
--6 4 D
--6 4 D
--7 4 D
--6 3 D
--6 4 D
--7 4 D
--6 3 D
--7 4 D
--6 4 D
--7 3 D
--7 4 D
--6 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 3 D
--7 3 D
--8 4 D
--7 3 D
--7 3 D
--8 3 D
--7 4 D
--8 3 D
--7 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--8 2 D
--9 2 D
--9 3 D
--8 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--9 2 D
--9 2 D
--10 1 D
--9 2 D
--9 2 D
--9 1 D
--10 2 D
--9 1 D
--9 2 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--9 2 D
--10 1 D
--9 1 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 0 D
--10 1 D
--9 1 D
--10 1 D
--10 0 D
--9 1 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 1 D
--10 0 D
--10 0 D
--9 0 D
--10 1 D
--10 0 D
--10 0 D
--10 0 D
--9 0 D
--9 0 D
-2994 6000 M
-1 0 D
--10 0 D
--9 0 D
--10 0 D
--10 0 D
--10 0 D
--10 -1 D
--9 0 D
--10 0 D
--10 0 D
--10 -1 D
--10 0 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 0 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--8 -2 D
--9 -3 D
--9 -2 D
--8 -2 D
--9 -2 D
--9 -3 D
--8 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -4 D
--8 -3 D
--7 -3 D
--7 -3 D
--8 -4 D
--7 -3 D
--7 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--6 -3 D
--7 -4 D
--7 -3 D
--6 -4 D
--7 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--5 -4 D
--6 -5 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--5 -4 D
+-67 54 D
+-64 44 D
+-69 41 D
+-97 48 D
+-74 32 D
+-103 38 D
+-100 31 D
+-105 26 D
+-117 25 D
+-122 19 D
+-143 16 D
+-127 8 D
+-127 2 D
+-88 -1 D
+-127 -7 D
+-144 -14 D
+-122 -18 D
+-91 -18 D
+-98 -22 D
+-78 -21 D
+-99 -32 D
+-102 -38 D
+-87 -39 D
+-75 -39 D
+-51 -30 D
+-65 -43 D
+-48 -37 D
+-30 -25 D
 -4 -5 D
--5 -4 D
--5 -4 D
--4 -4 D
--5 -5 D
--9 -9 D
--8 -8 D
--9 -9 D
--8 -9 D
--8 -9 D
--8 -9 D
--7 -9 D
--7 -9 D
--7 -9 D
--7 -10 D
--7 -9 D
--6 -9 D
--6 -9 D
--6 -10 D
--5 -9 D
--6 -10 D
--5 -9 D
--4 -10 D
--5 -9 D
--4 -10 D
--4 -9 D
--4 -10 D
--4 -9 D
--3 -10 D
--3 -10 D
--3 -9 D
--2 -10 D
--3 -10 D
--2 -10 D
--2 -9 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -9 D
-0 -10 D
-0 -5 D
-S
+-19 -17 D
+-34 -35 D
+-23 -27 D
+-34 -46 D
+-28 -47 D
+-25 -57 D
+-14 -49 D
+-5 -29 D
+-4 -49 D
+P S
 3000 5598 M
 0 0 D
 P S
@@ -4140,7 +3419,7 @@ O0
 -1500 2280 TM
 
 % PostScript produced by:
-%@GMT: grdimage v2.nc -Ivint.nc -JG90/30/5i -O -K -Bg -Ct.cpt -X-1.25i -Y1.9i
+%@GMT: grdimage v2.nc -I -JG90/30/5i -O -K -Bg -Ct.cpt -X-1.25i -Y1.9i
 %@PROJ: ortho 0.00000000 360.00000000 -90.00000000 90.00000000 -6371007.181 6371007.181 -6371007.181 6371007.181 +unavailable +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_4
 0 setlinecap
@@ -6734,825 +6013,104 @@ S
 -9 12 D
 S
 1500 5250 M
-0 -10 D
-1 -10 D
-0 -9 D
-1 -10 D
-1 -10 D
-2 -10 D
-1 -9 D
-2 -10 D
-2 -10 D
-3 -10 D
-2 -9 D
-3 -10 D
-4 -10 D
-3 -9 D
-4 -10 D
-4 -10 D
-4 -9 D
-4 -10 D
-5 -9 D
-5 -10 D
-5 -9 D
-6 -10 D
-5 -9 D
-6 -9 D
-6 -10 D
-7 -9 D
-6 -9 D
-7 -9 D
-7 -9 D
-8 -9 D
-7 -9 D
-8 -9 D
-8 -9 D
-9 -9 D
-8 -9 D
-9 -9 D
-4 -4 D
-5 -5 D
-4 -4 D
-5 -4 D
-5 -4 D
+3 -49 D
+10 -49 D
+9 -29 D
+19 -48 D
+26 -47 D
+25 -37 D
+37 -45 D
+47 -49 D
+10 -8 D
 4 -5 D
-5 -4 D
-5 -4 D
-5 -5 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-6 -5 D
-5 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -3 D
-6 -4 D
-6 -4 D
-6 -4 D
-7 -4 D
-6 -3 D
-6 -4 D
-7 -4 D
-6 -3 D
-7 -4 D
-6 -4 D
-7 -3 D
-7 -4 D
-6 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -3 D
-7 -3 D
-8 -4 D
-7 -3 D
-7 -3 D
-8 -3 D
-7 -4 D
-8 -3 D
-7 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -3 D
-8 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -2 D
-9 -1 D
-10 -2 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 0 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 -1 D
-10 0 D
-10 0 D
-9 0 D
-10 -1 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 1 D
-9 0 D
-10 0 D
-10 0 D
-10 1 D
-10 0 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-9 1 D
-10 1 D
-10 0 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 2 D
-9 1 D
-10 2 D
-9 1 D
-9 2 D
-9 2 D
-10 1 D
-9 2 D
-9 2 D
-9 1 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-8 2 D
-9 3 D
-9 2 D
-8 2 D
-9 2 D
-9 3 D
-8 2 D
-9 2 D
-8 3 D
-9 2 D
-8 3 D
-9 2 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-7 3 D
-8 3 D
-7 4 D
-8 3 D
-7 3 D
-7 3 D
-8 4 D
-7 3 D
-7 3 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-6 3 D
-7 4 D
-7 3 D
-6 4 D
-7 4 D
-6 3 D
-7 4 D
-6 4 D
-6 3 D
-7 4 D
-6 4 D
-6 4 D
-6 4 D
-6 3 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-5 4 D
-6 5 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 5 D
-5 4 D
-5 4 D
+67 -54 D
+64 -44 D
+69 -41 D
+97 -48 D
+74 -32 D
+103 -38 D
+100 -31 D
+105 -26 D
+117 -25 D
+122 -19 D
+143 -16 D
+127 -8 D
+127 -2 D
+88 1 D
+127 7 D
+144 14 D
+122 18 D
+91 18 D
+98 22 D
+78 21 D
+99 32 D
+102 38 D
+87 39 D
+75 39 D
+51 30 D
+65 43 D
+48 37 D
+30 25 D
 4 5 D
-5 4 D
-5 4 D
-4 4 D
-5 5 D
-9 9 D
-8 8 D
-9 9 D
-8 9 D
-8 9 D
-8 9 D
-7 9 D
-7 9 D
-7 9 D
-7 10 D
-7 9 D
-6 9 D
-6 9 D
-6 10 D
-5 9 D
-6 10 D
-5 9 D
-4 10 D
-5 9 D
-4 10 D
-4 9 D
-4 10 D
-4 9 D
-3 10 D
-3 10 D
-3 9 D
-2 10 D
-3 10 D
-2 10 D
-2 9 D
-1 10 D
-1 10 D
-1 10 D
-1 10 D
-1 9 D
-0 10 D
-0 10 D
-0 10 D
--1 9 D
--1 10 D
--1 10 D
--1 10 D
--1 10 D
--2 9 D
--2 10 D
--3 10 D
--2 10 D
--3 9 D
--3 10 D
--3 10 D
--4 9 D
--4 10 D
--4 9 D
--4 10 D
--5 9 D
--4 10 D
--5 9 D
--6 10 D
--5 9 D
--6 10 D
--6 9 D
--6 9 D
--7 9 D
--7 10 D
--7 9 D
--7 9 D
--7 9 D
--8 9 D
--8 9 D
--8 9 D
--9 9 D
--8 8 D
--9 9 D
--5 5 D
--4 4 D
--5 4 D
+19 17 D
+34 35 D
+23 27 D
+34 46 D
+28 47 D
+25 57 D
+14 49 D
+5 29 D
+4 49 D
+-1 29 D
+-6 49 D
+-13 49 D
+-19 48 D
+-14 28 D
+-29 47 D
+-43 55 D
+-33 35 D
+-23 22 D
 -5 4 D
 -4 5 D
--5 4 D
--5 4 D
--5 5 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--6 5 D
--5 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 3 D
--6 4 D
--6 4 D
--6 4 D
--7 4 D
--6 3 D
--6 4 D
--7 4 D
--6 3 D
--7 4 D
--6 4 D
--7 3 D
--7 4 D
--6 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 3 D
--7 3 D
--8 4 D
--7 3 D
--7 3 D
--8 3 D
--7 4 D
--8 3 D
--7 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--8 2 D
--9 2 D
--9 3 D
--8 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--9 2 D
--9 2 D
--10 1 D
--9 2 D
--9 2 D
--9 1 D
--10 2 D
--9 1 D
--9 2 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--9 2 D
--10 1 D
--9 1 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 0 D
--10 1 D
--9 1 D
--10 1 D
--10 0 D
--9 1 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 1 D
--10 0 D
--10 0 D
--9 0 D
--10 1 D
--10 0 D
--10 0 D
--10 0 D
--9 0 D
--9 0 D
-2994 6000 M
-1 0 D
--10 0 D
--9 0 D
--10 0 D
--10 0 D
--10 0 D
--10 -1 D
--9 0 D
--10 0 D
--10 0 D
--10 -1 D
--10 0 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 0 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--8 -2 D
--9 -3 D
--9 -2 D
--8 -2 D
--9 -2 D
--9 -3 D
--8 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -4 D
--8 -3 D
--7 -3 D
--7 -3 D
--8 -4 D
--7 -3 D
--7 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--6 -3 D
--7 -4 D
--7 -3 D
--6 -4 D
--7 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--5 -4 D
--6 -5 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--5 -4 D
+-67 54 D
+-64 44 D
+-69 41 D
+-97 48 D
+-74 32 D
+-103 38 D
+-100 31 D
+-105 26 D
+-117 25 D
+-122 19 D
+-143 16 D
+-127 8 D
+-127 2 D
+-88 -1 D
+-127 -7 D
+-144 -14 D
+-122 -18 D
+-91 -18 D
+-98 -22 D
+-78 -21 D
+-99 -32 D
+-102 -38 D
+-87 -39 D
+-75 -39 D
+-51 -30 D
+-65 -43 D
+-48 -37 D
+-30 -25 D
 -4 -5 D
--5 -4 D
--5 -4 D
--4 -4 D
--5 -5 D
--9 -9 D
--8 -8 D
--9 -9 D
--8 -9 D
--8 -9 D
--8 -9 D
--7 -9 D
--7 -9 D
--7 -9 D
--7 -10 D
--7 -9 D
--6 -9 D
--6 -9 D
--6 -10 D
--5 -9 D
--6 -10 D
--5 -9 D
--4 -10 D
--5 -9 D
--4 -10 D
--4 -9 D
--4 -10 D
--4 -9 D
--3 -10 D
--3 -10 D
--3 -9 D
--2 -10 D
--3 -10 D
--2 -10 D
--2 -9 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -9 D
-0 -10 D
-0 -5 D
-S
+-19 -17 D
+-34 -35 D
+-23 -27 D
+-34 -46 D
+-28 -47 D
+-25 -57 D
+-14 -49 D
+-5 -29 D
+-4 -49 D
+P S
 3000 5598 M
 0 0 D
 P S
@@ -7582,7 +6140,7 @@ O0
 -1500 2280 TM
 
 % PostScript produced by:
-%@GMT: grdimage v3.nc -Ivint.nc -JG90/30/5i -O -K -Bg -Ct.cpt -X-1.25i -Y1.9i
+%@GMT: grdimage v3.nc -I -JG90/30/5i -O -K -Bg -Ct.cpt -X-1.25i -Y1.9i
 %@PROJ: ortho 0.00000000 360.00000000 -90.00000000 90.00000000 -6371007.181 6371007.181 -6371007.181 6371007.181 +unavailable +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_6
 0 setlinecap
@@ -10185,825 +8743,104 @@ S
 -9 12 D
 S
 1500 5250 M
-0 -10 D
-1 -10 D
-0 -9 D
-1 -10 D
-1 -10 D
-2 -10 D
-1 -9 D
-2 -10 D
-2 -10 D
-3 -10 D
-2 -9 D
-3 -10 D
-4 -10 D
-3 -9 D
-4 -10 D
-4 -10 D
-4 -9 D
-4 -10 D
-5 -9 D
-5 -10 D
-5 -9 D
-6 -10 D
-5 -9 D
-6 -9 D
-6 -10 D
-7 -9 D
-6 -9 D
-7 -9 D
-7 -9 D
-8 -9 D
-7 -9 D
-8 -9 D
-8 -9 D
-9 -9 D
-8 -9 D
-9 -9 D
-4 -4 D
-5 -5 D
-4 -4 D
-5 -4 D
-5 -4 D
+3 -49 D
+10 -49 D
+9 -29 D
+19 -48 D
+26 -47 D
+25 -37 D
+37 -45 D
+47 -49 D
+10 -8 D
 4 -5 D
-5 -4 D
-5 -4 D
-5 -5 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-6 -5 D
-5 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -3 D
-6 -4 D
-6 -4 D
-6 -4 D
-7 -4 D
-6 -3 D
-6 -4 D
-7 -4 D
-6 -3 D
-7 -4 D
-6 -4 D
-7 -3 D
-7 -4 D
-6 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -3 D
-7 -3 D
-8 -4 D
-7 -3 D
-7 -3 D
-8 -3 D
-7 -4 D
-8 -3 D
-7 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -3 D
-8 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -2 D
-9 -1 D
-10 -2 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 0 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 -1 D
-10 0 D
-10 0 D
-9 0 D
-10 -1 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 1 D
-9 0 D
-10 0 D
-10 0 D
-10 1 D
-10 0 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 0 D
-10 1 D
-10 0 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-9 1 D
-10 1 D
-10 0 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 2 D
-9 1 D
-10 2 D
-9 1 D
-9 2 D
-9 2 D
-10 1 D
-9 2 D
-9 2 D
-9 1 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-8 2 D
-9 3 D
-9 2 D
-8 2 D
-9 2 D
-9 3 D
-8 2 D
-9 2 D
-8 3 D
-9 2 D
-8 3 D
-9 2 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-9 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-7 3 D
-8 3 D
-7 4 D
-8 3 D
-7 3 D
-7 3 D
-8 4 D
-7 3 D
-7 3 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-6 3 D
-7 4 D
-7 3 D
-6 4 D
-7 4 D
-6 3 D
-7 4 D
-6 4 D
-6 3 D
-7 4 D
-6 4 D
-6 4 D
-6 4 D
-6 3 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-5 4 D
-6 5 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 4 D
-5 5 D
-5 4 D
-5 4 D
+67 -54 D
+64 -44 D
+69 -41 D
+97 -48 D
+74 -32 D
+103 -38 D
+100 -31 D
+105 -26 D
+117 -25 D
+122 -19 D
+143 -16 D
+127 -8 D
+127 -2 D
+88 1 D
+127 7 D
+144 14 D
+122 18 D
+91 18 D
+98 22 D
+78 21 D
+99 32 D
+102 38 D
+87 39 D
+75 39 D
+51 30 D
+65 43 D
+48 37 D
+30 25 D
 4 5 D
-5 4 D
-5 4 D
-4 4 D
-5 5 D
-9 9 D
-8 8 D
-9 9 D
-8 9 D
-8 9 D
-8 9 D
-7 9 D
-7 9 D
-7 9 D
-7 10 D
-7 9 D
-6 9 D
-6 9 D
-6 10 D
-5 9 D
-6 10 D
-5 9 D
-4 10 D
-5 9 D
-4 10 D
-4 9 D
-4 10 D
-4 9 D
-3 10 D
-3 10 D
-3 9 D
-2 10 D
-3 10 D
-2 10 D
-2 9 D
-1 10 D
-1 10 D
-1 10 D
-1 10 D
-1 9 D
-0 10 D
-0 10 D
-0 10 D
--1 9 D
--1 10 D
--1 10 D
--1 10 D
--1 10 D
--2 9 D
--2 10 D
--3 10 D
--2 10 D
--3 9 D
--3 10 D
--3 10 D
--4 9 D
--4 10 D
--4 9 D
--4 10 D
--5 9 D
--4 10 D
--5 9 D
--6 10 D
--5 9 D
--6 10 D
--6 9 D
--6 9 D
--7 9 D
--7 10 D
--7 9 D
--7 9 D
--7 9 D
--8 9 D
--8 9 D
--8 9 D
--9 9 D
--8 8 D
--9 9 D
--5 5 D
--4 4 D
--5 4 D
+19 17 D
+34 35 D
+23 27 D
+34 46 D
+28 47 D
+25 57 D
+14 49 D
+5 29 D
+4 49 D
+-1 29 D
+-6 49 D
+-13 49 D
+-19 48 D
+-14 28 D
+-29 47 D
+-43 55 D
+-33 35 D
+-23 22 D
 -5 4 D
 -4 5 D
--5 4 D
--5 4 D
--5 5 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--6 5 D
--5 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--6 3 D
--6 4 D
--6 4 D
--6 4 D
--7 4 D
--6 3 D
--6 4 D
--7 4 D
--6 3 D
--7 4 D
--6 4 D
--7 3 D
--7 4 D
--6 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 3 D
--7 3 D
--8 4 D
--7 3 D
--7 3 D
--8 3 D
--7 4 D
--8 3 D
--7 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--8 2 D
--9 2 D
--9 3 D
--8 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--9 2 D
--9 2 D
--10 1 D
--9 2 D
--9 2 D
--9 1 D
--10 2 D
--9 1 D
--9 2 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--9 2 D
--10 1 D
--9 1 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 0 D
--10 1 D
--9 1 D
--10 1 D
--10 0 D
--9 1 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 1 D
--10 0 D
--10 0 D
--9 0 D
--10 1 D
--10 0 D
--10 0 D
--10 0 D
--9 0 D
--9 0 D
-2994 6000 M
-1 0 D
--10 0 D
--9 0 D
--10 0 D
--10 0 D
--10 0 D
--10 -1 D
--9 0 D
--10 0 D
--10 0 D
--10 -1 D
--10 0 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 0 D
--10 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 0 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -1 D
--10 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--8 -2 D
--9 -3 D
--9 -2 D
--8 -2 D
--9 -2 D
--9 -3 D
--8 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--9 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -4 D
--8 -3 D
--7 -3 D
--7 -3 D
--8 -4 D
--7 -3 D
--7 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--6 -3 D
--7 -4 D
--7 -3 D
--6 -4 D
--7 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--5 -4 D
--6 -5 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--5 -4 D
+-67 54 D
+-64 44 D
+-69 41 D
+-97 48 D
+-74 32 D
+-103 38 D
+-100 31 D
+-105 26 D
+-117 25 D
+-122 19 D
+-143 16 D
+-127 8 D
+-127 2 D
+-88 -1 D
+-127 -7 D
+-144 -14 D
+-122 -18 D
+-91 -18 D
+-98 -22 D
+-78 -21 D
+-99 -32 D
+-102 -38 D
+-87 -39 D
+-75 -39 D
+-51 -30 D
+-65 -43 D
+-48 -37 D
+-30 -25 D
 -4 -5 D
--5 -4 D
--5 -4 D
--4 -4 D
--5 -5 D
--9 -9 D
--8 -8 D
--9 -9 D
--8 -9 D
--8 -9 D
--8 -9 D
--7 -9 D
--7 -9 D
--7 -9 D
--7 -10 D
--7 -9 D
--6 -9 D
--6 -9 D
--6 -10 D
--5 -9 D
--6 -10 D
--5 -9 D
--4 -10 D
--5 -9 D
--4 -10 D
--4 -9 D
--4 -10 D
--4 -9 D
--3 -10 D
--3 -10 D
--3 -9 D
--2 -10 D
--3 -10 D
--2 -10 D
--2 -9 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -9 D
-0 -10 D
-0 -5 D
-S
+-19 -17 D
+-34 -35 D
+-23 -27 D
+-34 -46 D
+-28 -47 D
+-25 -57 D
+-14 -49 D
+-5 -29 D
+-4 -49 D
+P S
 3000 5598 M
 0 0 D
 P S
diff --git a/doc/rst/conf.py.in b/doc/rst/conf.py.in
index 88b19df..652ce44 100644
--- a/doc/rst/conf.py.in
+++ b/doc/rst/conf.py.in
@@ -327,6 +327,7 @@ man_pages = [
 ('supplements/meca/pscoupe', 'pscoupe', 'Plot cross-sections of focal mechanisms', '', 1),
 ('supplements/meca/psmeca', 'psmeca', 'Plot focal mechanisms on maps', '', 1),
 ('supplements/meca/pspolar', 'pspolar', 'Plot polarities on the inferior focal half-sphere on maps', '', 1),
+('supplements/meca/pssac', 'pssac', 'Plot seismograms in SAC format on maps', '', 1),
 ('supplements/meca/psvelo', 'psvelo', 'Plot velocity vectors, crosses, and wedges on maps', '', 1),
 ('supplements/mgd77/mgd77convert', 'mgd77convert', 'Convert MGD77 data to other file formats', '', 1),
 ('supplements/mgd77/mgd77header', 'mgd77header', 'Create MGD77 headers from A77 files', '', 1),
diff --git a/doc/rst/source/GMT_API.rst b/doc/rst/source/GMT_API.rst
index fbe41bd..7c2b246 100644
--- a/doc/rst/source/GMT_API.rst
+++ b/doc/rst/source/GMT_API.rst
@@ -2861,7 +2861,7 @@ You may use GMT_Delete_Option_ to remove the ``current`` option from the linked
 
   ::
 
-    int GMT_Delete_Option (void *API, struct GMT_OPTION *current);
+    int GMT_Delete_Option (void *API, struct GMT_OPTION *current, struct GMT_OPTION **head);
 
 We return 1 if the option is not found in the list and set
 ``API->error`` accordingly. Note: Only the first occurrence of the
@@ -3194,11 +3194,11 @@ support for Fortran 77. This API is limited to help you inquire, read and write
 GMT grids directly from Fortran 77.
 To inquire about the range of information in a grid, use
 
-.. _GMT_F77_readgrdinfo:
+.. _gmt_f77_readgrdinfo:
 
   ::
 
-    int GMT_F77_readgrdinfo (unsigned int dim[], double limits[], double inc[],
+    int gmt_f77_readgrdinfo (unsigned int dim[], double limits[], double inc[],
     	                       char *title, char *remark, const char *file)
 
 where ``dim`` returns the grid width, height, and registration, ``limits`` returns the min and max values for x, y, and z
@@ -3209,11 +3209,11 @@ Note that you must declare your variables so that ``limits`` has at least 6 elem
 
 To actually read the grid, we use
 
-.. _GMT_F77_readgrd:
+.. _gmt_f77_readgrd:
 
   ::
 
-    int GMT_F77_readgrd (float *array, unsigned int dim[], double wesn[],
+    int gmt_f77_readgrd (float *array, unsigned int dim[], double wesn[],
     	                   double inc[], char *title, char *remark, const char *file)
 
 where ``array`` is the 1-D grid data array, ``dim`` returns the grid width, height, and registration,
@@ -3226,11 +3226,11 @@ the array from C-style row-major array order to Fortran column-major array order
 
 Finally, to write a grid to file you can use
 
-.. _GMT_F77_writegrd:
+.. _gmt_f77_writegrd:
 
   ::
 
-    int GMT_F77_writegrd_(float *array, unsigned int dim[], double wesn[], double inc[],
+    int gmt_f77_writegrd_(float *array, unsigned int dim[], double wesn[], double inc[],
     	                    const char *title, const char *remark, const char *file)
 
 where ``array`` is the 1-D grid data array, ``dim`` specifies the grid width, height, and registration,
diff --git a/doc/rst/source/GMT_Docs.rst b/doc/rst/source/GMT_Docs.rst
index 1c46dd9..6a0123d 100644
--- a/doc/rst/source/GMT_Docs.rst
+++ b/doc/rst/source/GMT_Docs.rst
@@ -569,7 +569,7 @@ as well. For specific enhancements, we have:
    **RMS**, **DENAN**, as well as the weighted statistical operators
    **LMSSCLW**, **MADW**, **MEANW**, **MEDIANW**, **MODEW**, **PQUANTW**,
    **STDW**, and **VARW**.  In addition it gains a new
-   **AREA** operator which computes the gridcell area (in km^2 if the
+   **AREA** operator which computes the gridcell area (in km\ :sup:`2` if the
    grid is geographic).  Finally, operators **MEAN**, **MEDIAN**, etc.,
    when working on a geographic grid, will weight the result using the
    **AREA** function for proper spherical statistics.
@@ -2103,37 +2103,37 @@ Introduction
 Most scientists are familiar with the sequence: *raw data* →
 *processing* → *final illustration*.
 In order to finalize papers for submission to scientific journals,
-prepare proposals, and create overheads and slides for various
+prepare proposals, and create illustrations for various
 presentations, many scientists spend large amounts of time and money to
-create camera-ready figures. This process can be tedious and is often
+create high-quality figures. This process can be tedious and is often
 done manually, since available commercial or in-house software usually
 can do only part of the job. To expedite this process we introduce the
-Generic Mapping Tools (GMT for short), which is a free [2]_, software
+Generic Mapping Tools (GMT for short), which is a free [2]_ software
 package that can be used to manipulate columns of tabular data,
 time-series, and gridded data sets, and display these data in a variety
-of forms ranging from simple *x*--*y* plots to maps and color,
+of forms ranging from simple *x*--*y* plots to maps and color-coded,
 perspective, and shaded-relief illustrations. GMT uses the
 *PostScript* page description language [*Adobe Systems Inc.*, 1990].
 With *PostScript*, multiple plot files can easily be superimposed to
-create arbitrarily complex images in gray tones or 24-bit true color.
+create arbitrarily complex images in gray tones or full color.
 Line drawings, bitmapped images, and text can be easily combined in one
 illustration. *PostScript* plot files are device-independent: The same
-file can be printed at 300 dots per inch (dpi) on an ordinary
-laserwriter or at 2470 dpi on a phototypesetter when ultimate quality is
-needed. GMT software is written as a set of UNIX tools [3]_ and is
+file can be printed at 300 dots per inch (dpi) on a cheap
+printer or converted to a high-resolution PNG image for online usage.
+GMT software is written as a set of UNIX tools [3]_ and is
 totally self-contained and fully documented. The system is offered free
-of charge and is distributed over the computer network (Internet)
-[*Wessel and Smith, 1991; 1995; 1998*].
+of charge and is distributed over the Internet
+[*Wessel and Smith, 1991; 1995; 1998*; *Wessel et al., 2013*].
 
 The original version 1.0 of GMT was released in the summer of 1988
 when the authors were graduate students at Lamont-Doherty Earth
 Observatory of Columbia University. During our tenure as graduate
-students, L-DEO changed its computing environment to a distributed
+students, LDEO changed its computing environment to a distributed
 network of UNIX workstations, and we wrote GMT to run in this
-environment. It became a success at L-DEO, and soon spread to numerous
+environment. It became a success at LDEO, and soon spread to numerous
 other institutions in the US, Canada, Europe, and Japan. The current
 version benefits from the many suggestions contributed by users of the
-earlier versions, and now includes more than 50 tools, more than 30
+earlier versions, and now includes more than 100 tools, more than 30
 projections, and many other new, more flexible features. GMT provides
 scientists with a variety of tools for data manipulation and display,
 including routines to sample, filter, compute spectral estimates, and
@@ -2150,8 +2150,8 @@ and 3-D perspective illustrations.
 
 GMT is written in the highly portable ANSI C programming language
 [*Kernighan and Ritchie*, 1988], is fully POSIX compliant [*Lewine*,
-1991], has no Year 2000 problems, and may be used with any hardware
-running some flavor of UNIX, possibly with minor modifications. In
+1991], and may be used with any hardware
+running some flavor of UNIX. In
 writing GMT, we have followed the modular design philosophy of UNIX:
 The *raw data* → *processing* → *final illustration* flow is broken
 down to a series of elementary steps; each
@@ -2169,24 +2169,6 @@ data extraction tool which will put out data in a form readable by
 GMT (discussed below). After writing the extractor, all other
 GMT modules will work as they are.
 
-GMT makes full use of the *PostScript* page description language, and
-can produce color illustrations if a color *PostScript* device is
-available. One does not necessarily have to have access to a
-top-of-the-line color printer to take advantage of the color
-capabilities offered by GMT: Several companies offer imaging services
-where the customer provides a *PostScript* plot file and gets color
-slides or hardcopies in return. Furthermore, general-purpose
-*PostScript* raster image processors (RIPs) are now becoming available,
-letting the user create raster images from *PostScript* and plot these
-bitmaps on raster devices like computer screens, dot-matrix printers,
-large format raster plotters, and film writers [4]_. Because the
-publication costs of color illustrations are high, GMT offers 90
-common bit and hachure patterns, including many geologic map symbol
-types, as well as complete graytone shading operations. Additional bit
-and hachure patterns may also be designed by the user. With these tools,
-it is possible to generate publication-ready monochrome originals on a
-common laserwriter.
-
 GMT is thoroughly documented and comes with a technical reference and
 cookbook which explains the purpose of the package and its many
 features, and provides numerous examples to help new users quickly
@@ -2205,18 +2187,18 @@ The processing and display routines within GMT are completely general
 and will handle any (*x,y*) or (*x,y,z*) data as input. For many
 purposes the (*x,y*) coordinates will be (longitude, latitude) but in
 most cases they could equally well be any other variables (e.g.,
-wavelength, power spectral density). Since the GMT\ plot tools will
+wavelength, power spectral density). Since the GMT plot tools will
 map these (*x,y*) coordinates to positions on a plot or map using a
 variety of transformations (linear, log-log, and several map
 projections), they can be used with any data that are given by two or
 three coordinates. In order to simplify and standardize input and
-output, GMT uses two file formats only. Arbitrary sequences of (*x,y*)
+output, by default GMT uses two file formats only. Arbitrary sequences of (*x,y*)
 or (*x,y,z*) data are read from multi-column ASCII tables, i.e., each
 file consists of several records, in which each coordinate is confined
 to a separate column [5]_. This format is straightforward and allows the
 user to perform almost any simple (or complicated) reformatting or
-processing task using standard UNIX utilities such as **cut**,
-**paste**, **grep**, **sed** and **awk**. Two-dimensional data
+processing task using GMT processing tools (and in a pinch standard UNIX utilities such as **cut**,
+**paste**, **grep**, **sed** and **awk**). Two-dimensional data
 that have been sampled on an equidistant grid are read and written by
 GMT in a binary grid file using the functions provided with the netCDF
 library (a free, public-domain software library available separately
@@ -2227,7 +2209,9 @@ binary data files from one computer system to another [6]_.
 GMT contains programs that will read ASCII (*x,y,z*) files and produce
 grid files. One such program, :doc:`surface`,
 includes new modifications to the gridding algorithm developed by *Smith
-and Wessel* [1990] using continuous splines in tension.
+and Wessel* [1990] using continuous splines in tension. Optionally, GMT
+can also read various binary and netCDF tables, as well as a variety of
+grid formats, especially if built with GDAL support.
 
 Most of the programs will produce some form of output, which falls into
 four categories. Several of the programs may produce more than one of
@@ -2256,14 +2240,8 @@ these types of output:
 
 GMT is available over the Internet at no charge. To obtain a copy,
 goto GMT home page http://gmt.soest.hawaii.edu/ and follow instructions.
-We also maintain two electronic
-mailing lists you may subscribe to in order to stay informed about bug
-fixes and upgrades.
-
-For those without net-access that need to obtain GMT: Geoware makes
-and distributes CD-R and DVD-R media with the GMT package, compatible
-supplements, and several Gb of useful Earth and ocean science data sets.
-For more information send e-mail to geoware at geoware-online.com.
+We also maintain user forums and a bug and feature tracking system on
+the same page.
 
 GMT has served a multitude of scientists very well, and their
 responses have prompted us to develop these programs even further. It is
@@ -3235,7 +3213,7 @@ annotations, ask for a 12-hour clock, and let time go from right to left:
 
    ::
 
-     gmt set FORMAT_CLOCK_MAP=-hham FONT_ANNOT_PRIMARY +9p
+     gmt set FORMAT_CLOCK_MAP=-hham FONT_ANNOT_PRIMARY +9p TIME_UNIT d
      gmt psbasemap -R0.2t/0.35t/0/1 -JX-5i/0.2i -Bpa15mf5m -Bsa1H -BS -P > GMT_-B_time4.ps
 
 .. _cartesian_axis4:
@@ -4599,15 +4577,15 @@ of gray-shades. You must specify the pattern as in Section `Specifying area fill
 some programs let you skip features whose *z*-slice in the CPT
 file has gray-shades set to -. As an example, consider
 
-+-----+----------+-------------+-------+
-| 30  | p16+r200 | 80          | \-    |
-+-----+----------+-------------+-------+
-| 80  | \-       | 100         | \-    |
-+-----+----------+-------------+-------+
-| 100 | 200/0/0  | 200/255/255 | 0     |
-+-----+----------+-------------+-------+
-| 200 | yellow   | 300         | green |
-+-----+----------+-------------+-------+
++-----+----------+------+-----------+
+| 30  | p16+r200 | 80   | \-        |
++-----+----------+------+-----------+
+| 80  | \-       | 100  | \-        |
++-----+----------+------+-----------+
+| 100 | 200/0/0  | 200  | 255/255/0 |
++-----+----------+------+-----------+
+| 200 | yellow   | 300  | green     |
++-----+----------+------+-----------+
 
 where slice 30 < z < 80 is painted with pattern # 16 at 200 dpi,
 slice 80 < z < 100 is skipped, slice 100 < z < 200 is
@@ -8694,10 +8672,10 @@ way:
    ::
 
      gs -q -dNOCACHE -dSAFER -dNOPAUSE -dBATCH -dNOPLATFONTS \
-        -sDEVICE=pswrite -sFONTPATH="/path/to/fontdir" \
+        -sDEVICE=ps2write -sFONTPATH="/path/to/fontdir" \
         -sOutputFile=mapWithOutlinedFonts.ps map.ps
 
-Note, that this only works with the *pswrite* device. If you need
+Note, that this only works with the *ps2write* device. If you need
 outlined fonts in PDF, create the PDF from the converted
 *PostScript* file. Also, :doc:`psconvert`
 cannot correctly crop Ghostscript converted *PostScript* files
@@ -9302,7 +9280,7 @@ Dampier. The edges of the map are all 9000 km true distance from the
 projection center. At this scale (and for global maps) the crude
 resolution data will usually be adequate to capture the main geographic
 features. To avoid cluttering the map with insignificant detail we only
-plot features (i.e., polygons) that exceed 500 km^2 in area.
+plot features (i.e., polygons) that exceed 500 km\ :sup:`2` in area.
 Smaller features would only occupy a few pixels on the plot and make the
 map look "dirty". We also add national borders to the plot. The crude
 database is heavily decimated and simplified by the DP-routine: The
@@ -9335,7 +9313,7 @@ We have now reduced the map area by zooming in on the map center. Now,
 the edges of the map are all 2000 km true distance from the projection
 center. At this scale we choose the low resolution data that faithfully
 reproduce the dominant geographic features in the region. We cut back on
-minor features less than 100 km^2 in area. We still add
+minor features less than 100 km\ :sup:`2` in area. We still add
 national borders to the plot. The low database is less decimated and
 simplified by the DP-routine: The total file size of the coastlines,
 rivers, and borders combined grows to 907 kbytes; it is the default
@@ -9362,7 +9340,7 @@ map are all 500 km true distance from the projection center. We abandon
 the low resolution data set as it would look too jagged at this scale
 and instead employ the intermediate resolution data that faithfully
 reproduce the dominant geographic features in the region. This time, we
-ignore features less than 20 km^2 in area. Although the script
+ignore features less than 20 km\ :sup:`2` in area. Although the script
 still asks for national borders none exist within our region. The
 intermediate database is moderately decimated and simplified by the
 DP-routine: The combined file size of the coastlines, rivers, and
@@ -9392,7 +9370,7 @@ The relentless zooming continues! Now, the edges of the map are all 100
 km true distance from the projection center. We step up to the high
 resolution data set as it is needed to accurately portray the detailed
 geographic features within the region. Because of the small scale we
-only ignore features less than 1 km^2 in area. The high
+only ignore features less than 1 km\ :sup:`2` in area. The high
 resolution database has undergone minor decimation and simplification by
 the DP-routine: The combined file size of the coastlines, rivers, and
 borders now swells to 12.3 Mbytes. The map and the final outline box are
@@ -10387,6 +10365,7 @@ so that the label is more readable. We choose the place the labels every
 are placed normal to the line:
 
     ::
+
      gmt pscoast -R50/160/-15/15 -JM5.3i -Gburlywood -Sazure -A500 -K -P > GMT_App_O_6.ps
      gmt grdcontour geoid.nc -J -O -K -B20f10 -BWSne -C10 -A20+d+f8p -Gl50/10S/160/10S -S10 \
      -T+l"-+" >> GMT_App_O_6.ps
@@ -10630,7 +10609,7 @@ OGC SFS specification). This specification provides for non-topological
 point, line and polygon (area) features, as well as multipoint,
 multiline and multipolygon features, and was written by
 `Brent Wood <http://www.niwa.co.nz/key-contacts/brent-wood/>`_
-based on input from Paul Wessel and others on the GMT list.
+based on input from Paul Wessel and others on the GMT team.
 
 The OGR/GMT format
 ------------------
diff --git a/doc/rst/source/GMT_Tutorial.rst b/doc/rst/source/GMT_Tutorial.rst
index 7903d27..e437b33 100644
--- a/doc/rst/source/GMT_Tutorial.rst
+++ b/doc/rst/source/GMT_Tutorial.rst
@@ -115,10 +115,12 @@ Tutorial setup
    consult the GMT Technical Reference and Cookbook for more
    detailed explanations.
 
-#. The tutorial uses some subsets of global gridded data
-   sets.  For your convenience these subsets are provided in
-   the tutorial directory.  If you install the global data sets
-   then you can extract your own subsets with the :doc:`grdcut` module.
+#. The tutorial data sets are distributed via the GMT cache server.
+   You will therefore find that all those files have @ prepended to
+   their names.  This will ensure the file is copied from the server
+   before being used, hence you do not need to download any of the
+   data manually.  The downside is that you need an Internet
+   connection to run the examples by cut and paste.
 
 #. For all but the simplest GMT jobs it is recommended that
    you place all the GMT (and UNIX) commands in a shell script
@@ -270,7 +272,7 @@ to another module.  This is achieved with *pipes*:
 
    ::
 
-    Someprogram | gmt module1 | gmt module1 > OutputFile (or | lp) 
+    Someprogram | gmt module1 | gmt module1 > OutputFile (or | lp)
 
 Standard error (*stderr*)
 ~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -290,7 +292,7 @@ separate files we use the following syntax:
 
    ::
 
-    gmt module > output.d 2> errors.log
+    gmt module > output.txt 2> errors.log
 
 File name expansion or "wild cards"
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -316,11 +318,11 @@ files using the UNIX wild card notation.
 
 Examples:
 
-#. gmt module data\_*.d operates on all files starting with
-   "data\_" and ending in ".d".
+#. gmt module data\_*.txt operates on all files starting with
+   "data\_" and ending in ".txt".
 
-#. gmt module line\_?.d works on all files starting with
-   "line\_" followed by any single character and ending in ".d".
+#. gmt module line\_?.txt works on all files starting with
+   "line\_" followed by any single character and ending in ".txt".
 
 #. gmt module section\_1[0-9]0.part\_[12] only processes data
    from sections 100 through 190, only using every 10th profile, and
@@ -379,9 +381,9 @@ no data set yet but we will
 imagine that the raw *x* data range from 3 to 9613 and that *y*
 ranges from 3.2 10^20 to 6.8 10^24.  One possibility is
 
-   :: 
+   ::
 
-    gmt psbasemap -R1/10000/1e20/1e25 -JX9il/6il -Bxa2+l"Wavelength (m)" -Bya1pf3+l"Power (W)" -BWS > GMT_tut_2.ps 
+    gmt psbasemap -R1/10000/1e20/1e25 -JX9il/6il -Bxa2+l"Wavelength (m)" -Bya1pf3+l"Power (W)" -BWS > GMT_tut_2.ps
 
 Make sure your plot looks like :ref:`our example 2 below <gmt_tut_2>`
 
@@ -445,7 +447,7 @@ example is from Latin America:
 
    ::
 
-    gmt pscoast -R-90/-70/0/20 -JM6i -P -Ba -Gchocolate > GMT_tut_3.ps 
+    gmt pscoast -R-90/-70/0/20 -JM6i -P -Ba -Gchocolate > GMT_tut_3.ps
 
 Your plot should look like :ref:`our example 3 below <gmt_tut_3>`
 
@@ -590,7 +592,7 @@ GMT map projections as well as how to select a data domain
 and boundary annotations.
 
   +-------------+----------------------------------------------------------------------+
-  | Program     |   Purpose                                                            | 
+  | Program     |   Purpose                                                            |
   +=============+======================================================================+
   |             |   **BASEMAPS**                                                       |
   +-------------+----------------------------------------------------------------------+
@@ -646,27 +648,27 @@ used modules in GMT.  In addition to the common command line switches
 it has numerous specific options, and expects different file formats
 depending on what action has been selected.  These circumstances make
 :doc:`psxy` harder to master than most GMT tools.  The table below
-shows a complete list of the options:
-
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | Option                                                      | Purpose                                                           | 
-  +=============================================================+===================================================================+
-  | **-A**                                                      | Suppress line interpolation along great circles                   |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-C**\ *cpt*                                               | Let symbol color be determined from *z*-values and the *cpt* file |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-E**\ [**x**\ \|\ **X**][**y**\ \|\ **Y**][*cap*][/*pen*] | Draw selected error bars with specified attributes                |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-G**\ *fill*                                              | Set color for symbol or fill for polygons                         |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-L**\ [*options*]                                         | Explicitly close polygons or create polygon (see :doc:`psxy`)     |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-N**\ [**c**\ \|\ **r**]                                  | Do Not clip symbols at map borders                                |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-S**\ [*symbol*][*size*]                                  | Select one of several symbols                                     |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
-  | **-W**\ *pen*                                               | Set *pen* for line or symbol outline                              |
-  +-------------------------------------------------------------+-------------------------------------------------------------------+
+shows a abbreviated list of the options:
+
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | Option                                                                     | Purpose                                                           |
+  +============================================================================+===================================================================+
+  | **-A**                                                                     | Suppress line interpolation along great circles                   |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-C**\ *cpt*                                                              | Let symbol color be determined from *z*-values and the *cpt* file |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-E**\ [**x**\ \|\ **X**][**y**\ \|\ **Y**][**+w**\ *cap*][**+p**\ *pen*] | Draw selected error bars with specified attributes                |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-G**\ *fill*                                                             | Set color for symbol or fill for polygons                         |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-L**\ [*options*]                                                        | Explicitly close polygons or create polygon (see :doc:`psxy`)     |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-N**\ [**c**\ \|\ **r**]                                                 | Do Not clip symbols at map borders                                |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-S**\ [*symbol*][*size*]                                                 | Select one of several symbols                                     |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-W**\ *pen*                                                              | Set *pen* for line or symbol outline                              |
+  +----------------------------------------------------------------------------+-------------------------------------------------------------------+
 
 The symbols can either be transparent (using **-W** only, not **-G**)
 or solid (**-G**, with optional outline using **-W**).  The **-S**
@@ -677,7 +679,7 @@ symbols may also be provided by the input data.  The main symbols available to
 us are shown in the table below:
 
 +-----------------------------------+-------------------------------------------------------------------------------------------+
-| Option                            | Symbol                                                                                    | 
+| Option                            | Symbol                                                                                    |
 +===================================+===========================================================================================+
 | **-S-**\ *size*                   | horizontal dash; *size* is length of dash                                                 |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
@@ -691,7 +693,7 @@ us are shown in the table below:
 +-----------------------------------+-------------------------------------------------------------------------------------------+
 | **-Sd**\ *size*                   | **d**\ iamond; *size* is its side                                                         |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
-| **-Se**                           | **e**\ llipse; *direction* (CCW from horizontal), *major*, and *minor* axes               |    
+| **-Se**                           | **e**\ llipse; *direction* (CCW from horizontal), *major*, and *minor* axes               |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
 |                                   | are read from the input file                                                              |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
@@ -707,7 +709,7 @@ us are shown in the table below:
 +-----------------------------------+-------------------------------------------------------------------------------------------+
 | **-Sk**\ *symbol*/*size*          | **k**\ ustom symbol; *size* is its side                                                   |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
-| **-Sl**\ *size*/*string*\         | **l**\ etter; *size* is fontsize.   *string* can be a letter or a text string             |
+| **-Sl**\ *size*\ **+t**\ *string* | **l**\ etter; *size* is fontsize. The *string* can be a letter or a text string           |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
 |                                   | Append **+f**\ *font* to set font and **+j**\ *just* for justification                    |
 +-----------------------------------+-------------------------------------------------------------------------------------------+
@@ -788,21 +790,21 @@ with the examples below.
 
 Examples:
 
-We will start off using the file data in your directory.
+We will start off using the file tut_data.txt in your directory.
 Using the GMT utility :doc:`gmtinfo` we find the extent of the
 data region:
 
    ::
 
-    gmt info data
+    gmt info @tut_data.txt
 
 which returns
 
    ::
 
-    data: N = 7   <1/5>   <1/5>
+    tut_data.txt: N = 7   <1/5>   <1/5>
 
-telling us that the file data has 7 records and gives the
+telling us that the file tut_data.txt has 7 records and gives the
 minimum and maximum values for the first two columns.  Given our
 knowledge of how to set up linear projections with **-R** and **-JX**,
 try the following:
@@ -818,7 +820,7 @@ To simply plot the data as a line we choose no symbol and specify a pen thicknes
 
    ::
 
-    gmt psxy data -R0/6/0/6 -Jx1i -P -Baf -Wthinner > GMT_tut_7.ps
+    gmt psxy @tut_data.txt -R0/6/0/6 -Jx1i -P -Baf -Wthinner > GMT_tut_7.ps
 
 Your plot should look like :ref:`our example 7 below <gmt_tut_7>`
 
@@ -845,10 +847,10 @@ Symbols, on the other hand, can be plotted one at the time so there
 is no limit to how many symbols one may plot.  Therefore, to connect
 symbols with a line we must use the overlay approach:
 
-   :: 
+   ::
 
-    gmt psxy data -R0/6/0/6 -Jx1i -Baf -P -K -Wthinner > GMT_tut_8.ps
-    gmt psxy data -R -J -O -W -Si0.2i >> GMT_tut_8.ps
+    gmt psxy @tut_data.txt -R0/6/0/6 -Jx1i -Baf -P -K -Wthinner > GMT_tut_8.ps
+    gmt psxy tut_data.txt -R -J -O -W -Si0.2i >> GMT_tut_8.ps
 
 Your plot should look like :ref:`our example 8 below <gmt_tut_8>`. The
 two-step procedure also makes it easy to plot the line over the symbols
@@ -866,10 +868,8 @@ Our final :doc:`psxy` example involves a more complicated scenario
 in which we want to plot the epicenters of several earthquakes over
 the background of a coastline basemap.  We want the symbols to have a
 size that reflects the magnitude of the earthquakes, and that their
-color should reflect the depth of the hypocenter.  You will find the
-two files quakes.ngdc and quakes.cpt in your
-directory.  The first few lines in the quakes.ngdc looks
-like this:
+color should reflect the depth of the hypocenter.  The first few
+lines in the tut_quakes.ngdc looks like this:
 
    ::
 
@@ -915,13 +915,15 @@ governs the color of a symbol whose *z* value falls in the range between
 then an intermediate color will be linearly interpolated given the *z*
 value.  Here, we have chosen constant color intervals.  You may wish
 to consult the :ref:`Color palette tables <CPT_section>` section in the Cookbook.
+This color table was generated as part of the script (below).
 
 We may now complete our example using the Mercator projection:
 
-   :: 
+   ::
 
+    gmt makecpt -Cred,green,blue -T0,70,300,10000 > quakes.cpt
     gmt pscoast -R130/150/35/50 -JM6i -B5 -P -Ggray -K > GMT_tut_9.ps
-    gmt psxy -R -J -O quakes.ngdc -Wfaint -i4,3,5,6s0.1 -h3 -Scc -Cquakes.cpt >> GMT_tut_9.ps
+    gmt psxy -R -J -O @tut_quakes.ngdc -Wfaint -i4,3,5,6s0.1 -h3 -Scc -Cquakes.cpt >> GMT_tut_9.ps
 
 where the **c** appended to the **-Sc** option ensures that symbols
 sizes are interpreted to be in cm.  Your plot should look like :ref:`our example 9 below <gmt_tut_9>`
@@ -950,7 +952,7 @@ in GMT this is done using :doc:`pstext`.  Apart from the common
 switches, there are 9 options that are particularly useful.
 
   +-------------------+----------------------------------------------------+
-  | Option            | Purpose                                            | 
+  | Option            | Purpose                                            |
   +===================+====================================================+
   | **-C**\ *dx*/*dy* | Spacing between text and the text box (see **-W**) |
   +-------------------+----------------------------------------------------+
@@ -992,25 +994,25 @@ fonts. The escape sequences that are recognized by GMT are given below:
   +----------------+--------------------------------------------------------------+
   | Code           |  Effect                                                      |
   +================+==============================================================+
-  | @\~	           | Turns symbol font on or off                                  | 
+  | @\~	           | Turns symbol font on or off                                  |
   +----------------+--------------------------------------------------------------+
-  | @+	           | Turns superscript on or off                                  | 
+  | @+	           | Turns superscript on or off                                  |
   +----------------+--------------------------------------------------------------+
-  | @-	           | Turns subscript on or off                                    | 
+  | @-	           | Turns subscript on or off                                    |
   +----------------+--------------------------------------------------------------+
-  | @\#	           | Turns small caps on or off                                   | 
+  | @\#	           | Turns small caps on or off                                   |
   +----------------+--------------------------------------------------------------+
-  | @\_	           | Turns underline on or off                                    | 
+  | @\_	           | Turns underline on or off                                    |
   +----------------+--------------------------------------------------------------+
-  | @\%\ *font*\ % | Switches to another font; @\%\% resets to previous font      | 
+  | @\%\ *font*\ % | Switches to another font; @\%\% resets to previous font      |
   +----------------+--------------------------------------------------------------+
-  | @:\ *size*:	   | Switches to another font size; @:: resets to previous size   | 
+  | @:\ *size*:	   | Switches to another font size; @:: resets to previous size   |
   +----------------+--------------------------------------------------------------+
   | @;\ *color*;   | Switches to another font color; @;; resets to previous color |
   +----------------+--------------------------------------------------------------+
-  | @!	           | Creates one composite character of the next two characters   | 
+  | @!	           | Creates one composite character of the next two characters   |
   +----------------+--------------------------------------------------------------+
-  | @@	           | Prints the @ sign itself                                     | 
+  | @@	           | Prints the @ sign itself                                     |
   +----------------+--------------------------------------------------------------+
 
 Note that these escape sequences (as well as octal codes) can be
@@ -1021,7 +1023,7 @@ set :ref:`PS_CHAR_ENCODING <PS_CHAR_ENCODING>` to ISOLatin1 in your :doc:`gmt.co
 
 We will demonstrate :doc:`pstext` with the following script:
 
-   :: 
+   ::
 
     gmt pstext -R0/7/0/5 -Jx1i -P -Ba -F+f30p,Times-Roman,DarkOrange+jBL << EOF > GMT_tut_10.ps
     1  1  It's P at al, not Pal!
@@ -1078,14 +1080,14 @@ Contouring gridded data sets
 
 GMT comes with several utilities that can create gridded data
 sets; we will discuss two such modules later this session.  First,
-we will assume that we already have gridded data sets.  
+we will assume that we already have gridded data sets.
 Among these data are ETOPO5, crustal ages, gravity and geoid,
 and DEM for the continental US.  Here, we will use :doc:`grdcut`
 to extract a GMT-ready grid that we will next use for contouring:
 
    ::
 
-    gmt grdcut etopo5m.nc -R-66/-60/30/35 -Gbermuda.nc -V
+    gmt grdcut earth_relief_05m.grd -R-66/-60/30/35 -Gtut_bathy.nc -V
 
 Here we use the file extension .nc instead of the generic .grd
 to indicate that this is a netCDF file. It is good form, but not essential,
@@ -1094,14 +1096,14 @@ other programs installed on your system to recognize these files and might
 give it an identifiable icon in your file browser.
 Learn about other programs that read netCDF files at the
 netCDF website (http://www.unidata.ucar.edu/software/netcdf/)
-You can find bermuda.nc also in the *tutorial* directory of your GMT
-installation.  Feel free to open it in any other program and compare results with GMT.
+You can also obtain tut_bathy.nc from the GMT cache server as we are doing below.
+Feel free to open it in any other program and compare results with GMT.
 
 We first use the GMT module :doc:`grdinfo` to see what's in this file:
 
-   :: 
+   ::
 
-    gmt grdinfo bermuda.nc
+    gmt grdinfo @tut_bathy.nc
 
 The file contains bathymetry for the Bermuda region and has depth
 values from -5475 to -89 meters.  We want to make a contour map of
@@ -1116,7 +1118,7 @@ spin on this situation by touting its flexibility.  Here are the most
 useful options:
 
   +----------------------------------------------------------------------+----------------------------------------------------------------------+
-  | Option                                                               |  Purpose                                                             | 
+  | Option                                                               |  Purpose                                                             |
   +======================================================================+======================================================================+
   | **-A**\ *annot\_int*                                                 | Annotation interval and attributes                                   |
   +----------------------------------------------------------------------+----------------------------------------------------------------------+
@@ -1138,7 +1140,7 @@ useful options:
   +----------------------------------------------------------------------+----------------------------------------------------------------------+
   | **-W**\ [**a**\ \|\ **c**\ ]\ *pen*                                  | Set contour and annotation pens                                      |
   +----------------------------------------------------------------------+----------------------------------------------------------------------+
-  | **-Z**\ *factor*\ [*offset*]                                         | Subtract *offset* and multiply data by *factor* prior to processing  |
+  | **-Z**\ [**+s** \*factor*\ ][**+o**\ *offset*]                       | Subtract *offset* and multiply data by *factor* prior to processing  |
   +----------------------------------------------------------------------+----------------------------------------------------------------------+
 
 We will first make a plain contour map using 1 km as annotation
@@ -1147,7 +1149,7 @@ Mercator plot and annotate the borders every 2º:
 
    ::
 
-    gmt grdcontour bermuda.nc -JM7i -C250 -A1000 -P -Ba > GMT_tut_11.ps
+    gmt grdcontour @tut_bathy.nc -JM7i -C250 -A1000 -P -Ba > GMT_tut_11.ps
 
 Your plot should look like :ref:`our example 11 below <gmt_tut_11>`
 
@@ -1220,7 +1222,7 @@ The GMT module :doc:`nearneighbor` implements a simple
 "nearest neighbor" averaging operation.  It is the preferred
 way to grid data when the data density is high.  :doc:`nearneighbor`
 is a local procedure which means it will only consider the control
-data that is close to the desired output grid node.  
+data that is close to the desired output grid node.
 Only data points inside a specified search radius will
 be used, and we may also impose the condition that each of the *n*
 sectors must have at least one data point in order to assign the nodal
@@ -1241,20 +1243,20 @@ The most important switches are listed below.
   | **-W**                    | Read relative weights from the 4th column of input data                          |
   +---------------------------+----------------------------------------------------------------------------------+
 
-We will grid the data in the file ship.xyz which contains
+We will grid the data in the file tut_ship.xyz which contains
 ship observations of bathymetry off Baja California.  You can find the
 file in the sub-directory for example 15.
 We desire to make a 5' by 5' grid.  Running gmt info on the file yields
 
    ::
 
-    ship.xyz: N = 82970     <245/254.705>   <20/29.99131>   <-7708/-9>
+    tut_ship.xyz: N = 82970     <245/254.705>   <20/29.99131>   <-7708/-9>
 
 so we choose the region accordingly, and get a view of the contour map using
 
    ::
 
-    gmt nearneighbor -R245/255/20/30 -I5m -S40k -Gship.nc -V ship.xyz
+    gmt nearneighbor -R245/255/20/30 -I5m -S40k -Gship.nc -V @tut_ship.xyz
     gmt grdcontour ship.nc -JM6i -P -Ba -C250 -A1000 > GMT_tut_12.ps
 
 
@@ -1301,7 +1303,7 @@ and we do not have the time to explain it all here, please see
 switches for this module are indicated below.
 
   +-------------------+-----------------------------------------------------------+
-  | Option            | Purpose                                                   | 
+  | Option            | Purpose                                                   |
   +===================+===========================================================+
   | **-A**\ *aspect*  | Sets aspect ratio for anisotropic grids.                  |
   +-------------------+-----------------------------------------------------------+
@@ -1326,7 +1328,7 @@ to the required **-R** and **-I** switches, these preprocessors
 all take the same options shown below:
 
   +----------------------------+--------------------------------------------------------------------+
-  | Option                     | Purpose                                                            | 
+  | Option                     | Purpose                                                            |
   +============================+====================================================================+
   | **-r**                     | Choose pixel node registration [Default is gridline]               |
   +----------------------------+--------------------------------------------------------------------+
@@ -1337,7 +1339,7 @@ With respect to our ship data we preprocess it using the median method:
 
    ::
 
-    gmt blockmedian -R245/255/20/30 -I5m -V ship.xyz > ship_5m.xyz
+    gmt blockmedian -R245/255/20/30 -I5m -V @tut_ship.xyz > ship_5m.xyz
 
 The output data can now be used with surface:
 
@@ -1425,7 +1427,7 @@ shown if you run the module with no arguments) and the equidistant
 *z*-values to go with it.  The main options are given below.
 
   +---------+----------------------------------------------+
-  | Option  | Purpose                                      | 
+  | Option  | Purpose                                      |
   +=========+==============================================+
   | **-C**  | Set the name of the master CPT to use        |
   +---------+----------------------------------------------+
@@ -1454,7 +1456,7 @@ and unit label (and optionally to set the annotation-, tick-,
 and grid-line intervals for the color bars.)
 
   +--------------------------------------------------------+------------------------------------------------+
-  | Option                                                 | Purpose                                        | 
+  | Option                                                 | Purpose                                        |
   +========================================================+================================================+
   | **-C**\ *cpt*                                          | The required CPT                               |
   +--------------------------------------------------------+------------------------------------------------+
@@ -1543,14 +1545,12 @@ Color images
 
 Once a CPT has been made it is relatively straightforward to generate
 a color image of a gridded data.  Here, we will extract a subset of the
-global 30" DEM (data id 9) from USGS:
+global 30" DEM called SRTM30+:
 
    ::
 
-    gmt grdcut globe30s.nc -R-108/-103/35/40 -Gus.nc
+    gmt grdcut earth_relief_30s.grd -R-108/-103/35/40 -Gtut_relief.nc
 
-You can find the grid us.nc also in the *tutorial* directory
-of your GMT installation.
 Using :doc:`grdinfo` we find that the data ranges from about 1000m to
 about 4300m so we make a CPT accordingly:
 
@@ -1563,7 +1563,7 @@ common command options (by default the **-R** is taken from the data set)
 and a CPT; the main other options are:
 
   +---------------------+-----------------------------------------------------------------------+
-  | Option              | Purpose                                                               | 
+  | Option              | Purpose                                                               |
   +=====================+=======================================================================+
   | **-E**\ *dpi*       | Sets the desired resolution of the image [Default is data resolution] |
   +---------------------+-----------------------------------------------------------------------+
@@ -1577,8 +1577,8 @@ the plot.  We try
 
    ::
 
-    gmt grdimage us.nc -JM6i -P -Ba -Ctopo.cpt -V -K > GMT_tut_15.ps
-    gmt psscale -DjTC+w5i/0.25i+h+o0/-1i -Rus.nc -J -Ctopo.cpt -I0.4 -By+lm -O >> GMT_tut_15.ps
+    gmt grdimage @tut_relief.nc -JM6i -P -Ba -Ctopo.cpt -V -K > GMT_tut_15.ps
+    gmt psscale -DjTC+w5i/0.25i+h+o0/-1i -Rtut_relief.nc -J -Ctopo.cpt -I0.4 -By+lm -O >> GMT_tut_15.ps
 
 Your plot should look like :ref:`our example 15 below <gmt_tut_15>`
 
@@ -1597,19 +1597,19 @@ hence we derive the required intensities from the gradients of the
 topography in the N90ºE direction using :doc:`grdgradient`.  Other than the
 required input and output filenames, the available options are
 
-  +-------------------------------------------------+-------------------------------------------------------------------+
-  | Option                                          | Purpose                                                           | 
-  +=================================================+===================================================================+
-  | **-A**\ *azimuth*                               | Azimuthal direction for gradients                                 |
-  +-------------------------------------------------+-------------------------------------------------------------------+
-  | **-fg**                                         | Indicates that this is a geographic grid                          |
-  +-------------------------------------------------+-------------------------------------------------------------------+
-  | **-N**\ [**t**\ \|\ **e**][*norm*\ [/*offset*]] | Normalize gradients by *norm/offset* [= 1/0 by default].          |
-  +-------------------------------------------------+-------------------------------------------------------------------+
-  |                                                 | Insert **t** to normalize by the inverse tangent transformation.  |
-  +-------------------------------------------------+-------------------------------------------------------------------+
-  |                                                 | Insert **e** to normalize by the cumulative Laplace distribution. |
-  +-------------------------------------------------+-------------------------------------------------------------------+
+  +------------------------------------------------------------------+-------------------------------------------------------------------+
+  | Option                                                           | Purpose                                                           |
+  +==================================================================+===================================================================+
+  | **-A**\ *azimuth*                                                | Azimuthal direction for gradients                                 |
+  +------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-fg**                                                          | Indicates that this is a geographic grid                          |
+  +------------------------------------------------------------------+-------------------------------------------------------------------+
+  | **-N**\ [**t**\ \|\ **e**][**+s**\ *norm*\ ][**+o**\ *offset*\ ] | Normalize gradients by *norm/offset* [= 1/0 by default].          |
+  +------------------------------------------------------------------+-------------------------------------------------------------------+
+  |                                                                  | Insert **t** to normalize by the inverse tangent transformation.  |
+  +------------------------------------------------------------------+-------------------------------------------------------------------+
+  |                                                                  | Insert **e** to normalize by the cumulative Laplace distribution. |
+  +------------------------------------------------------------------+-------------------------------------------------------------------+
 
 The :ref:`GMT inverse tangent transformation <gmt_atan>`  shows that raw slopes from bathymetry tend to be
 far from normally distributed (left).  By using the inverse tangent
@@ -1636,15 +1636,15 @@ we prefer to use the **-Ne** option; the value of
 
     ::
 
-     gmt grdgradient us.nc -Ne0.8 -A100 -fg -Gus_i.nc
+     gmt grdgradient @tut_relief.nc -Ne0.8 -A100 -fg -Gus_i.nc
 
 Given the CPT and the two gridded data sets we can
 create the shaded relief image:
 
    ::
 
-    gmt grdimage us.nc -Ius_i.nc -JM6i -P -Ba -Ctopo.cpt -K > GMT_tut_16.ps
-    gmt psscale -DjTC+w5i/0.25i+h+o0/-1i -Rus.nc -J -Ctopo.cpt -I0.4 -By+lm -O >> GMT_tut_16.ps
+    gmt grdimage @tut_relief.nc -Ius_i.nc -JM6i -P -Ba -Ctopo.cpt -K > GMT_tut_16.ps
+    gmt psscale -DjTC+w5i/0.25i+h+o0/-1i -Rtut_relief.nc -J -Ctopo.cpt -I0.4 -By+lm -O >> GMT_tut_16.ps
 
 Your plot should look like :ref:`our example 16 below <gmt_tut_16>`
 
@@ -1673,7 +1673,7 @@ slices (spanning latitude and longitude) of such grids without much effort.
 
 As an example we will download the Seasonal Analysed Mean Temperature from the
 World Ocean Atlas 1998 (http://www.cdc.noaa.gov/cdc/data.nodc.woa98.html).
-The file in question is named 
+The file in question is named
 otemp.anal1deg.nc (ftp://ftp.cdc.noaa.gov/Datasets/nodc.woa98/temperat/seasonal/otemp.anal1deg.nc).
 
 You can look at the information pertained in this file using the program ncdump and
@@ -1697,7 +1697,7 @@ use:
 
    ::
 
-    gmt grdimage -Rg -JW180/9i "otemp.anal1deg.nc?otemp[2,0]" -Cotemp.cpt -Bag > GMT_tut_17.ps
+    gmt grdimage -Rg -JW180/9i "@otemp.anal1deg.nc?otemp[2,0]" -Cotemp.cpt -Bag > GMT_tut_17.ps
 
 The addition "?otemp[2,0]" indicates which variable to retrieve from the netCDF
 file (otemp) and that we need the third time step and first level. The numbering of the
@@ -1748,7 +1748,7 @@ Regardless of plot type, some arguments must be specified; these are
 In addition, some options may be required:
 
   +-------------------------+-------------------------------------------------------------------------------------------------------------+
-  | Option                  | Purpose                                                                                                     | 
+  | Option                  | Purpose                                                                                                     |
   +=========================+=============================================================================================================+
   | **-C**\ *cpt*           | The *cpt* is required for color-coded surfaces and for contoured mesh plots                                 |
   +-------------------------+-------------------------------------------------------------------------------------------------------------+
@@ -1758,7 +1758,7 @@ In addition, some options may be required:
   +-------------------------+-------------------------------------------------------------------------------------------------------------+
   | **-Qm**                 | Selects mesh plot                                                                                           |
   +-------------------------+-------------------------------------------------------------------------------------------------------------+
-  | **-Qs**\ [**m**]        | Surface plot using polygons; append **m** to show mesh.  This option allows for **-W**                      |
+  | **-Qs**\ [**+m**]       | Surface plot using polygons; append **+m** to show mesh.  This option allows for **-W**                     |
   +-------------------------+-------------------------------------------------------------------------------------------------------------+
   | **-Qi**\ *dpi*\ [**g**] | Image by scan-line conversion.  Specify *dpi*; append **g** to force gray-shade image.  **-B** is disabled. |
   +-------------------------+-------------------------------------------------------------------------------------------------------------+
@@ -1774,13 +1774,13 @@ CPT:
 
    ::
 
-    gmt grd2cpt bermuda.nc -Cocean > bermuda.cpt
+    gmt grd2cpt @tut_bathy.nc -Cocean > bermuda.cpt
 
 A simple mesh plot can therefore be obtained with
 
    ::
 
-    gmt grdview bermuda.nc -JM5i -P -JZ2i -p135/30 -Ba -Cbermuda.cpt > GMT_tut_18.ps
+    gmt grdview @tut_bathy.nc -JM5i -P -JZ2i -p135/30 -Ba -Cbermuda.cpt > GMT_tut_18.ps
 
 Your plot should look like :ref:`our example 18 below <gmt_tut_18>`
 
@@ -1804,7 +1804,7 @@ from the southeast.  This is done using
 
    ::
 
-    gmt grdview us.nc -JM6i -p135/35 -Qi50 -Ius_i.nc -Ctopo.cpt -V -Ba -JZ0.5i > GMT_tut_19.ps
+    gmt grdview @tut_relief.nc -JM6i -p135/35 -Qi50 -Ius_i.nc -Ctopo.cpt -V -Ba -JZ0.5i > GMT_tut_19.ps
 
 
 Your plot should look like :ref:`our example 19 below <gmt_tut_19>`
@@ -1826,6 +1826,6 @@ Exercises:
 
 #. Choose another vantage point and scaling.
 
-#. Redo :doc:`grdgradient` with another illumination direction and replot.
+#. Redo :doc:`grdgradient` with another illumination direction and plot again.
 
 #. Select a higher *dpi*, e.g., 200.
diff --git a/doc/rst/source/explain_-V_full.rst_ b/doc/rst/source/explain_-V_full.rst_
index a903a86..308d412 100644
--- a/doc/rst/source/explain_-V_full.rst_
+++ b/doc/rst/source/explain_-V_full.rst_
@@ -2,7 +2,7 @@
 
 **-V**\ [*level*\ ]
     Select verbose mode, which will send progress reports to *stderr*.
-    Choose among 6 levels of verbosity; each level adds mode messages:
+    Choose among 6 levels of verbosity; each level adds more messages:
     **q** - Complete silence, not even fatal error messages are produced.
     **n** - Normal verbosity: produce only fatal error messages.
     **c** - Produce also compatibility warnings (same as when **-V** is omitted).
diff --git a/doc/rst/source/explain_-h_full.rst_ b/doc/rst/source/explain_-h_full.rst_
index 95cf930..a18b74f 100644
--- a/doc/rst/source/explain_-h_full.rst_
+++ b/doc/rst/source/explain_-h_full.rst_
@@ -1,9 +1,9 @@
 .. _-h_full:
 
 **-h**\ [**i**\ \|\ **o**][*n*][\ **+c**][\ **+d**][\ **+r**\ *remark*][\ **+t**\ *title*]
-    Input file(s) has header record(s). If used, the default number of
+    Primary input file(s) has header record(s). If used, the default number of
     header records is :ref:`IO_N_HEADER_RECS <IO_N_HEADER_RECS>` [1]. Use **-hi** if only
-    input data should have header records [Default will write out header
+    the primary input data should have header records [Default will write out header
     records if the input data have them]. Blank lines and lines starting
     with # are always skipped. For output you may request additional headers
     to be written via the option modifiers, and use **+d** to remove existing
diff --git a/doc/rst/source/explain_-icols_full.rst_ b/doc/rst/source/explain_-icols_full.rst_
index a0aa40d..f1478e3 100644
--- a/doc/rst/source/explain_-icols_full.rst_
+++ b/doc/rst/source/explain_-icols_full.rst_
@@ -1,7 +1,7 @@
 .. _-icols_full:
 
 **-i**\ *cols*\ [**+l**\ ][\ **+s**\ *scale*][\ **+o**\ *offset*][,\ *...*]
-    Select specific data columns for input, in arbitrary order. Columns
+    Select specific data columns for primary input, in arbitrary order. Columns
     not listed will be skipped. Give individual columns (or column ranges
     in the format *start*\ [:*inc* \]:*stop*, where *inc* defaults to 1 if
     not specified) separated by commas [Default reads all columns in order,
diff --git a/doc/rst/source/explain_-ocols_full.rst_ b/doc/rst/source/explain_-ocols_full.rst_
index 4623f83..2da45f6 100644
--- a/doc/rst/source/explain_-ocols_full.rst_
+++ b/doc/rst/source/explain_-ocols_full.rst_
@@ -1,7 +1,7 @@
 .. _-ocols_full:
 
 **-o**\ *cols*\ [,...]
-    Select specific data columns for output, in arbitrary order. Columns
+    Select specific data columns for primary output, in arbitrary order. Columns
     not listed will be skipped. Give columns (or column ranges
     in the format *start*\ [:*inc* \]:*stop*, where *inc* defaults to 1 if
     not specified) separated by commas.  Columns may be repeated.
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage.rst
index be82ac5..e1d95e3 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of cleavage
 -----------------------------------------
 
-. literalinclude:: geo-cleavage.def
+.. literalinclude:: geo-cleavage.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_hor.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_hor.rst
index 871ce4a..a139397 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_hor.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_hor.rst
@@ -3,4 +3,4 @@
 Horizontal cleavage
 -------------------
 
-. literalinclude:: geo-cleavage_hor.def
+.. literalinclude:: geo-cleavage_hor.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_vert.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_vert.rst
index 6530f65..b39bdc2 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_vert.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-cleavage_vert.rst
@@ -3,4 +3,4 @@
 Strike of vertical cleavage
 ---------------------------
 
-. literalinclude:: geo-cleavage_vert.def
+.. literalinclude:: geo-cleavage_vert.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-2.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-2.rst
index 6d1ff34..18ed344 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-2.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-2.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of foliation 2
 --------------------------------------------
 
-. literalinclude:: geo-foliation-2.def
+.. literalinclude:: geo-foliation-2.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-3.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-3.rst
index b998921..bb48976 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-3.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation-3.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of foliation 3
 --------------------------------------------
 
-. literalinclude:: geo-foliation-3.def
+.. literalinclude:: geo-foliation-3.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation.rst
index 444babc..f63721b 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of foliation
 ------------------------------------------
 
-. literalinclude:: geo-foliation.def
+.. literalinclude:: geo-foliation.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_hor.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_hor.rst
index 85ae1a3..3da99a9 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_hor.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_hor.rst
@@ -3,4 +3,4 @@
 Horizontal foliation
 --------------------
 
-. literalinclude:: geo-foliation_hor.def
+.. literalinclude:: geo-foliation_hor.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_vert.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_vert.rst
index 06338bd..a6a2c0c 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_vert.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-foliation_vert.rst
@@ -3,4 +3,4 @@
 Strike of vertical foliation
 ----------------------------
 
-. literalinclude:: geo-foliation_vert.def
+.. literalinclude:: geo-foliation_vert.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-joint.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-joint.rst
index ca5a826..4b30969 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-joint.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-joint.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of joints
 ---------------------------------------
 
-. literalinclude:: geo-joint.def
+.. literalinclude:: geo-joint.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-joint_hor.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-joint_hor.rst
index 6380c45..6564511 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-joint_hor.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-joint_hor.rst
@@ -3,4 +3,4 @@
 Horizontal joints
 -----------------
 
-. literalinclude:: geo-joint_hor.def
+.. literalinclude:: geo-joint_hor.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-joint_vert.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-joint_vert.rst
index 21561ff..05ad947 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-joint_vert.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-joint_vert.rst
@@ -3,4 +3,4 @@
 Strike of vertical joints
 -------------------------
 
-. literalinclude:: geo-joint_vert.def
+.. literalinclude:: geo-joint_vert.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-2.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-2.rst
index a76e5fd..324f29b 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-2.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-2.rst
@@ -3,4 +3,4 @@
 Trend and plunge of lineation 2
 -------------------------------
 
-. literalinclude:: geo-lineation-2.def
+.. literalinclude:: geo-lineation-2.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-3.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-3.rst
index c5df99a..77fa086 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-3.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation-3.rst
@@ -3,4 +3,4 @@
 Trend and plunge of lineation 3
 -------------------------------
 
-. literalinclude:: geo-lineation-3.def
+.. literalinclude:: geo-lineation-3.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation.rst
index 4f434e3..531e4a3 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation.rst
@@ -3,4 +3,4 @@
 Trend and plunge of lineation
 -----------------------------
 
-. literalinclude:: geo-lineation.def
+.. literalinclude:: geo-lineation.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_hor.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_hor.rst
index 64ea40b..28168a0 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_hor.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_hor.rst
@@ -3,4 +3,4 @@
 Horizontal lineation
 --------------------
 
-. literalinclude:: geo-lineation_hor.def
+.. literalinclude:: geo-lineation_hor.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_vert.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_vert.rst
index 06959e4..f6358f5 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_vert.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-lineation_vert.rst
@@ -3,4 +3,4 @@
 Vertical lineation
 ------------------
 
-. literalinclude:: geo-lineation_vert.def
+.. literalinclude:: geo-lineation_vert.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane.rst
index a58b985..56c7e50 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of beds
 -------------------------------------
 
-. literalinclude:: geo-plane.def
+.. literalinclude:: geo-plane.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_gentle.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_gentle.rst
index 7833d9a..e9a4687 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_gentle.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_gentle.rst
@@ -3,4 +3,4 @@
 Strike and dip direction of gently dipping beds
 -----------------------------------------------
 
-. literalinclude:: geo-plane_gentle.def
+.. literalinclude:: geo-plane_gentle.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_hor.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_hor.rst
index cacc5b7..405dbe9 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_hor.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_hor.rst
@@ -3,4 +3,4 @@
 Horizontal beds
 ---------------
 
-. literalinclude:: geo-plane_hor.def
+.. literalinclude:: geo-plane_hor.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_inv.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_inv.rst
index b5825d7..41aded4 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_inv.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_inv.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of overturned beds
 ------------------------------------------------
 
-. literalinclude:: geo-plane_inv.def
+.. literalinclude:: geo-plane_inv.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_medium.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_medium.rst
index 5723d72..40ad926 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_medium.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_medium.rst
@@ -3,4 +3,4 @@
 Strike and dip direction of moderately dipping beds
 ---------------------------------------------------
 
-. literalinclude:: geo-plane_medium.def
+.. literalinclude:: geo-plane_medium.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_rake.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_rake.rst
index b746fe8..83e37b8 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_rake.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_rake.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of bed with rake of lineation
 -----------------------------------------------------------
 
-. literalinclude:: geo-plane_rake.def
+.. literalinclude:: geo-plane_rake.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_steep.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_steep.rst
index db37b2a..ca03f02 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_steep.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_steep.rst
@@ -3,4 +3,4 @@
 Strike and dip direction of steeply dipping beds
 ------------------------------------------------
 
-. literalinclude:: geo-plane_steep.def
+.. literalinclude:: geo-plane_steep.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_und.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_und.rst
index 0fec912..8fa49bd 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_und.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_und.rst
@@ -3,4 +3,4 @@
 Strike, dip direction and dip of crenulated or undulated beds
 -------------------------------------------------------------
 
-. literalinclude:: geo-plane_und.def
+.. literalinclude:: geo-plane_und.def
diff --git a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_vert.rst b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_vert.rst
index c8ea244..d7a8866 100644
--- a/doc/rst/source/gallery/users_contrib_symbols/geo-plane_vert.rst
+++ b/doc/rst/source/gallery/users_contrib_symbols/geo-plane_vert.rst
@@ -3,4 +3,4 @@
 Strike of vertical beds
 -----------------------
 
-. literalinclude:: geo-plane_vert.def
+.. literalinclude:: geo-plane_vert.def
diff --git a/doc/rst/source/gmtlogo.rst b/doc/rst/source/gmtlogo.rst
index e5f8b2a..8c46ee5 100644
--- a/doc/rst/source/gmtlogo.rst
+++ b/doc/rst/source/gmtlogo.rst
@@ -74,7 +74,7 @@ Optional Arguments
     override this radius by appending another value. Finally, append
     **+s** to draw an offset background shaded region. Here, *dx*/*dy*
     indicates the shift relative to the foreground frame
-    [4\ **p**/-4\ **p**] and *shade* sets the fill style to use for shading [gray50O.
+    [4\ **p**/-4\ **p**] and *shade* sets the fill style to use for shading [gray50].
 
 .. _-O:
 
diff --git a/doc/rst/source/grdimage.rst b/doc/rst/source/grdimage.rst
index 04d7c77..9daddae 100644
--- a/doc/rst/source/grdimage.rst
+++ b/doc/rst/source/grdimage.rst
@@ -153,7 +153,7 @@ Optional Arguments
 **-I**\ [*intensfile*\ \|\ *intensity*\ \|\ *modifiers*]
     Gives the name of a grid file with intensities in the (-1,+1) range,
     or a constant intensity to apply everywhere; this simply affects the
-    ambient light.  If no argument is given then we derive an intensity
+    ambient light.  If just **+** is given then we derive an intensity
     grid from the input data grid *grd_z* via a call to :doc:`grdgradient`
     using the arguments **-A**\ -45 and **-Nt**\ 1 for that module. You can
     append **+a**\ *azimuth and **+n**\ *args* to override those values.  If you want
@@ -252,7 +252,7 @@ the maximum map dimension limited to be 6 inches, try
 
    ::
 
-    gmt grdimage stuff.nc -JX6i+ -I > quick.ps
+    gmt grdimage stuff.nc -JX6i+ -I+ > quick.ps
 
 To gray-shade the file hawaii_grav.nc with shades given in shades.cpt
 on a Lambert map at 1.5 cm/degree along the standard parallels 18 and
diff --git a/doc/rst/source/grdlandmask.rst b/doc/rst/source/grdlandmask.rst
index 1a5862b..805cb43 100644
--- a/doc/rst/source/grdlandmask.rst
+++ b/doc/rst/source/grdlandmask.rst
@@ -18,7 +18,8 @@ Synopsis
 |SYN_OPT-R|
 [ |-A|\ *min\_area*\ [/*min\_level*/*max\_level*][\ **+ag**\ \|\ **i**\ \|\ **s** \|\ **S**][\ **+r**\ \|\ **l**][\ **p**\ *percent*] ]
 [ |-D|\ *resolution*\ [**+**] ]
-[ |-N|\ *maskvalues*\ [**o**] ]
+[ |-N| ]
+[ |-N|\ *maskvalues* ]
 [ |-V|\ [*level*] ] [ **-r** ]
 [ |SYN_OPT-x| ]
 
@@ -74,11 +75,17 @@ Optional Arguments
     one resolution is not guaranteed to remain inside [or outside] when
     a different resolution is selected.
 
+.. _-E:
+
+**-E**
+    Indicate that nodes that fall exactly on a polygon boundary should be
+    considered to be outside the polygon [Default considers them to be inside].
+
 .. _-N:
 
-**-N**\ *maskvalues*\ [**o**]
+**-N**\ *maskvalues*
     Sets the values that will be assigned to nodes. Values can be any
-    number, including the textstring NaN. Append **o** to let nodes
+    number, including the textstring NaN. Also select **-E** to let nodes
     exactly on feature boundaries be considered outside [Default is
     inside]. Specify this information using 1 of 2 formats:
 
diff --git a/doc/rst/source/grdmask.rst b/doc/rst/source/grdmask.rst
index d184b04..0ef8a37 100644
--- a/doc/rst/source/grdmask.rst
+++ b/doc/rst/source/grdmask.rst
@@ -26,6 +26,7 @@ Synopsis
 [ |SYN_OPT-g| ]
 [ |SYN_OPT-h| ]
 [ |SYN_OPT-i| ]
+[ |SYN_OPT-n| ]
 [ **-r** ]
 [ |SYN_OPT-x| ]
 [ |SYN_OPT-:| ]
@@ -106,8 +107,10 @@ Optional Arguments
     to the nearest data point. Nodes within *radius* [0] from the
     nearest data point are considered inside; append a distance unit
     (see UNITS). If *radius* is given as **z** then we instead read
-    individual radii from the 3rd input column. If **-S** is not set
-    then we consider the input data to define closed polygon(s) instead.
+    individual radii from the 3rd input column.  Unless Cartesian data,
+    specify the unit of these radii by appending it after **-Sz**.
+    If **-S** is not set then we consider the input data to define
+    one or more closed polygon(s) instead.
  
 .. _-V:
 
@@ -134,6 +137,13 @@ Optional Arguments
 
 .. include:: explain_-icols.rst_
 
+**-n**\ [**b**\ \|\ **c**\ \|\ **l**\ \|\ **n**][**+a**\ ][\ **+b**\ *BC*][\ **+t**\ *threshold*]
+   Append **+b**\ *BC* to set any boundary conditions to be used,
+   adding **g** for geographic, **p** for periodic, or **n** for
+   natural boundary conditions. For the latter two you may append **x**
+   or **y** to specify just one direction, otherwise both are assumed.
+   [Default is geographic if grid is geographic]. 
+
 .. |Add_nodereg| unicode:: 0x20 .. just an invisible code
 .. include:: explain_nodereg.rst_
 
diff --git a/doc/rst/source/grdview.rst b/doc/rst/source/grdview.rst
index 6576900..6cd3f48 100644
--- a/doc/rst/source/grdview.rst
+++ b/doc/rst/source/grdview.rst
@@ -97,7 +97,7 @@ Optional Arguments
 **-I**\ [*intensfile*\ \|\ *intensity*\ \|\ *modifiers*]
     Gives the name of a grid file with intensities in the (-1,+1) range,
     or a constant intensity to apply everywhere; this simply affects the
-    ambient light.  If no argument is given then we derive an intensity
+    ambient light.  If just **+** is given then we derive an intensity
     grid from the input data grid *grd_z* via a call to :doc:`grdgradient`
     using the arguments **-A**\ -45 and **-Nt**\ 1 for that module. You can
     append **+a**\ *azimuth and **+n**\ *args* to override those values.  If you want
diff --git a/doc/rst/source/project.rst b/doc/rst/source/project.rst
index 3d055b5..5411889 100644
--- a/doc/rst/source/project.rst
+++ b/doc/rst/source/project.rst
@@ -242,7 +242,7 @@ azimuth 30 and covering a full 360, try:
 
    ::
 
-    gmt project -C10W/30N -A30 -G1 --L-180/180 > great_circle.txt
+    gmt project -C10W/30N -A30 -G1 -L-180/180 > great_circle.txt
 
 To generate points every 10km along a small circle of colatitude 60 from 10N,50W to 30N,10W:
 
diff --git a/doc/rst/source/psbasemap.rst b/doc/rst/source/psbasemap.rst
index a9ea506..49e8f1d 100644
--- a/doc/rst/source/psbasemap.rst
+++ b/doc/rst/source/psbasemap.rst
@@ -79,7 +79,7 @@ Optional Arguments
 
 .. _-D:
 
-**-D**\ [*unit*]\ *xmin/xmax/ymin/ymax*\ [**r**][**+s**\ *file*] \| **-D**\ [**g**\ \|\ **j**\ \|\ **J**\ \|\ **n**\ \|\ **x**]\ *refpoint*\ **+w**\ *width*\ [/*height*][**+j**\ *justify*][**+o**\ *dx*\ [/*dy*]][**+s**\ *file*][**+t**]
+**-D**\ [*unit*]\ *xmin/xmax/ymin/ymax*\ [**r**][**+s**\ *file*][**+t**] \| **-D**\ [**g**\ \|\ **j**\ \|\ **J**\ \|\ **n**\ \|\ **x**]\ *refpoint*\ **+w**\ *width*\ [/*height*][**+j**\ *justify*][**+o**\ *dx*\ [/*dy*]][**+s**\ *file*][**+t**]
     Draw a simple map insert box on the map.  Requires **-F**.  Specify the box in one of three ways:
     (a) Give *west/east/south/north* of geographic rectangle bounded by parallels
     and meridians; append **r** if the coordinates instead are the lower left and
@@ -99,7 +99,7 @@ Optional Arguments
     the direction implied by *justify* (or the direction implied by **-Dj** or **-DJ**).
     If you need access to the placement of the lower left corner of the map insert and
     its dimensions in the current map unit, use **+s**\ *file* to write this information
-    to *file*.  Alternatively, you could append **+t** to translate the plot origin to
+    to *file*.  Alternatively, you may append **+t** to translate the plot origin to
     the lower left corner of the map insert.
     Specify insert box attributes via the **-F** option [outline only].
 
diff --git a/doc/rst/source/psclip.rst b/doc/rst/source/psclip.rst
index 1aa961e..fbfd91c 100644
--- a/doc/rst/source/psclip.rst
+++ b/doc/rst/source/psclip.rst
@@ -177,12 +177,12 @@ Optional Arguments
 Examples
 --------
 
-To make an overlay PostScript file that will set up a complex clip
+To make an clipping PostScript file that will set up a complex clip
 area to which subsequent plotting will be confined, run:
 
    ::
 
-    gmt psclip my_region.xy -R0/40/0/40 -Jm0.3i -O -K > clip_mask_on.ps
+    gmt psclip my_region.xy -R0/40/0/40 -Jm0.3i -K > clip_mask_on.ps
 
 To deactivate the clipping in an existing plotfile, run:
 
diff --git a/doc/rst/source/psconvert.rst b/doc/rst/source/psconvert.rst
index bd9edae..fb8ab6c 100644
--- a/doc/rst/source/psconvert.rst
+++ b/doc/rst/source/psconvert.rst
@@ -242,6 +242,11 @@ Optional Arguments
     within a KML folder of the specified name. See the KML documentation
     for further explanation
     (http://code.google.com/apis/kml/documentation/).
+    Note: If any of your titles or names contain a plus symbol next to
+    a letter it can be confused with an option modifier. Escape such
+    plus signs by placing a backslash in front of it.  Alternatively,
+    enclose the string in double quotes and then the entire **-W**
+    argument in single-quotes (or vice versa).
 
     Further notes on the creation of georeferenced rasters.
     **psconvert** can create a georeferenced raster image with a world
diff --git a/doc/rst/source/pssolar.rst b/doc/rst/source/pssolar.rst
index 5649b6a..9145bcb 100644
--- a/doc/rst/source/pssolar.rst
+++ b/doc/rst/source/pssolar.rst
@@ -168,7 +168,7 @@ Plot the day-night and civil twilight
 
     gmt pscoast -Rd -W0.1p -JQ0/14c -Ba -BWSen -Dl -A1000 -P -K > terminator.ps
 
-    gmt pssolar -R -JX -W1p -Tdc -O >> terminator.ps
+    gmt pssolar -R -J -W1p -Tdc -O >> terminator.ps
 
 Set up a clip path overlay based on the day/night terminator: 
 
diff --git a/doc/rst/source/triangulate.rst b/doc/rst/source/triangulate.rst
index 28a7015..8363a8b 100644
--- a/doc/rst/source/triangulate.rst
+++ b/doc/rst/source/triangulate.rst
@@ -14,6 +14,7 @@ Synopsis
 .. include:: common_SYN_OPTs.rst_
 
 **triangulate** [ *table* ]
+[ |-C|\ *slpfile* ]
 [ |-D|\ **x**\ \|\ **y** ]
 [ |-E|\ *empty* ]
 [ |-G|\ *grdfile* ]
@@ -70,6 +71,16 @@ Optional Arguments
 .. |Add_intables| unicode:: 0x20 .. just an invisible code
 .. include:: explain_intables.rst_
 
+.. _-C:
+
+**-C**\ *slpfile*
+    Read a slope grid (in radians) and compute the propagated uncertainty in the
+	bathymetry using the CURVE algorithm [Zambo et al, 20xx].  Requires the **-G**
+	option to specify the output grid.  Note that the *slpgrid* sets the domain
+	for the output grid so **-R**, **-I**, [**-r**\ ] are not required.
+	Cannot be used in conjunction with **-D**, **-F**, **-M**, **-N**, **-Q**,
+	**-S** and **-T**.
+
 .. _-D:
 
 **-Dx**\ \|\ **y**
@@ -215,12 +226,20 @@ according to their ID, try
     gmt triangulate samples.xyz -M -Qn -R-100/-90/30/34 -JM15c | \
         gmt psxy -R-100/-90/30/34 -JM15c -W0.5p+cf -L -B1 -Ccolors.cpt -L > polygons.ps
 
-To grid the data using the natural nearest neighbor algorothm, try
+To grid the data using the natural nearest neighbor algorithm, try
 
    ::
 
     gmt triangulate samples.xyz -Gnnn.nc -Qn -R-100/-90/30/34 -I0.5
 
+Notes
+-----
+
+The uncertainty propagation for bathymetric grids requires both horizontal
+and vertical uncertainties and these are weighted given the local slope.
+See the references for more details.
+
+
 See Also
 --------
 
diff --git a/doc/scripts/GMT_App_K_1.ps b/doc/scripts/GMT_App_K_1.ps
index 4d7a04d..43e84d5 100644
--- a/doc/scripts/GMT_App_K_1.ps
+++ b/doc/scripts/GMT_App_K_1.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
-%%HiResBoundingBox: 0 0 612 792
-%%Title: GMT v5.1.2_r13646 [64-bit] Document from pscoast
+%%HiResBoundingBox: 0 0 612 792             
+%%Title: GMT v5.4.2_r18363M [64-bit] Document from pscoast
 %%Creator: GMT5
-%%For: pwessel
+%%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Sat Nov  1 20:18:13 2014
+%%CreationDate: Thu Jun 15 10:59:36 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -272,7 +272,6 @@ end
     PSL_heights psl_k PSL_height put
   } for
 } def
-%%%%%%%%%%%%%%%%%%% CURVED BASELINE TEXT PLACEMENT FUNCTIONS
 /PSL_curved_path_labels
 { /psl_bits exch def
   /PSL_placetext psl_bits 2 and 2 eq def
@@ -291,15 +290,15 @@ end
     /PSL_m PSL_label_n psl_kk get def
     /PSL_x PSL_path_x psl_k PSL_n getinterval def
     /PSL_y PSL_path_y psl_k PSL_n getinterval def
-    /PSL_node PSL_label_node psl_p PSL_m getinterval def
-    /PSL_angle PSL_label_angle psl_p PSL_m getinterval def
-    /PSL_str PSL_label_str psl_p PSL_m getinterval def
-    /PSL_fnt PSL_label_font psl_p PSL_m getinterval def
+    /PSL_node_tmp PSL_label_node psl_p PSL_m getinterval def
+    /PSL_angle_tmp PSL_label_angle psl_p PSL_m getinterval def
+    /PSL_str_tmp PSL_label_str psl_p PSL_m getinterval def
+    /PSL_fnt_tmp PSL_label_font psl_p PSL_m getinterval def
     PSL_curved_path_label
     /psl_k psl_k PSL_n add def
     /psl_p psl_p PSL_m add def
   } for
-  PSL_clippath {PSL_clip} if N
+  PSL_clippath {PSL_eoclip} if N
 } def
 /PSL_curved_path_label
 {
@@ -307,6 +306,7 @@ end
   /PSL_m1 PSL_m 1 sub def
   PSL_CT_calcstringwidth
   PSL_CT_calclinedist
+  PSL_CT_excludelabels
   PSL_CT_addcutpoints
   /PSL_nn1 PSL_nn 1 sub def
   /n 0 def
@@ -343,11 +343,11 @@ end
   /n 0 def /k k 1 add def
 } def
 /PSL_CT_calcstringwidth
-{ /PSL_width PSL_m array def
+{ /PSL_width_tmp PSL_m array def
   0 1 PSL_m1
   { /i exch def
-    PSL_fnt i get cvx exec
-    PSL_width i PSL_str i get stringwidth pop put
+    PSL_fnt_tmp i get cvx exec
+    PSL_width_tmp i PSL_str_tmp i get stringwidth pop put
   } for
 } def
 /PSL_CT_calclinedist
@@ -368,6 +368,33 @@ end
     PSL_dist i dist put
   } for
 } def
+/PSL_CT_excludelabels
+{ /k 0 def
+  /PSL_width PSL_m array def
+  /PSL_angle PSL_m array def
+  /PSL_node PSL_m array def
+  /PSL_str PSL_m array def
+  /PSL_fnt PSL_m array def
+  /lastdist PSL_dist PSL_n1 get def
+  0 1 PSL_m1
+  { /i exch def
+    /dist PSL_dist PSL_node_tmp i get get def
+    /halfwidth PSL_width_tmp i get 2 div PSL_gap_x add def
+    /L_dist dist halfwidth sub def
+    /R_dist dist halfwidth add def
+    L_dist 0 gt R_dist lastdist lt and
+    {
+      PSL_width k PSL_width_tmp i get put
+      PSL_node k PSL_node_tmp i get put
+      PSL_angle k PSL_angle_tmp i get put
+      PSL_str k PSL_str_tmp i get put
+      PSL_fnt k PSL_fnt_tmp i get put
+      /k k 1 add def
+    } if
+  } for
+  /PSL_m k def
+  /PSL_m1 PSL_m 1 sub def
+} def
 /PSL_CT_addcutpoints
 { /k 0 def
   /PSL_nc PSL_m 2 mul 1 add def
@@ -466,7 +493,7 @@ end
       /dx x x1 sub def
       /dy y y1 sub def
     } ifelse
-    dx 0.0 ne dy 0.0 ne and
+    dx 0.0 eq dy 0.0 eq and not
     { /angle dy dx atan 90 add def} if
     /sina angle sin def
     /cosa angle cos def
@@ -495,7 +522,6 @@ end
 {PSL_xp 0 get PSL_yp 0 get M
   1 1 j { /ii exch def PSL_xp ii get PSL_yp ii get L} for
 } def
-%%%%%%%%%%%%%%%%%%% DRAW BASELINE TEXT SEGMENT LINES
 /PSL_draw_path_lines
 {
   /PSL_n_paths1 PSL_n_paths 1 sub def
@@ -513,12 +539,14 @@ end
       /psl_kk psl_i psl_start add def
       PSL_path_x psl_kk get PSL_path_y psl_kk get L
     } for
+    /psl_xclose PSL_path_x psl_kk get PSL_path_x psl_start get sub def
+    /psl_yclose PSL_path_y psl_kk get PSL_path_y psl_start get sub def
+    psl_xclose 0 eq psl_yclose 0 eq and { P } if
     S
     /psl_start psl_start PSL_n add def
   } for
   U
 } def
-%%%%%%%%%%%%%%%%%%% STRAIGHT BASELINE TEXT PLACEMENT FUNCTIONS
 /PSL_straight_path_labels
 {
   /psl_bits exch def
@@ -557,7 +585,7 @@ end
       {PSL_ST_textbox_rect}
     ifelse
   } for
-  PSL_clip N
+  PSL_eoclip N
 } def
 /PSL_ST_prepare_text
 {
@@ -635,8 +663,8 @@ O0
 1200 1200 TM
 
 % PostScript produced by:
-%%GMT: pscoast -Rk-9000/9000/-9000/9000 -JE130.35/-0.2/3.5i -P -Dc -A500 -Gburlywood -Sazure -Wthinnest -N1/thinnest,- -B20g20 -BWSne -K
-%%PROJ: aeqd 7.34985032 253.35014968 -81.23885330 80.83885330 -9000000.000 9000000.000 -9000000.000 9000000.000 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.180918
+%@GMT: pscoast -Rk-9000/9000/-9000/9000 -JE130.35/-0.2/3.5i -P -Dc -A500 -Gburlywood -Sazure -Wthinnest -N1/thinnest,- -B20g20 -BWSne -K
+%@PROJ: aeqd 7.34985032 253.35014968 -81.23885330 80.83885330 -9000000.000 9000000.000 -9000000.000 9000000.000 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_1
 0 setlinecap
 0 setlinejoin
@@ -651,7 +679,7 @@ O0
 -14 -8 D
 -26 29 D
 -9 11 D
-125 0 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 13 19 15 -19 2 1390 4200 SP
@@ -697,7 +725,7 @@ S
 -37 -7 D
 -10 -24 D
 -17 -12 D
--12 7 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -11 -7 -10 5 11 6 3 1565 4150 SP
@@ -714,7 +742,7 @@ FO
 -31 -23 D
 18 -14 D
 19 -13 D
-10 -7 D
+P
 FO
 1605 4085 M
 -4 15 D
@@ -729,7 +757,7 @@ FO
 -10 -24 D
 -17 -12 D
 52 -30 D
-48 47 D
+P
 FO
 -11 -7 -10 5 11 6 3 1565 4150 SP
 -3 -9 1 1620 4111 SP
@@ -800,7 +828,7 @@ S
 -24 -27 D
 6 -30 D
 -36 -38 D
--7 3 D
+P
 FO
 -2 -3 9 1 -6 4 3 1821 4071 SP
 6 1 -5 -1 2 1779 4002 SP
@@ -814,7 +842,7 @@ FO
 -15 7 D
 -5 14 D
 -48 -47 D
-27 -13 D
+P
 FO
 1632 4005 M
 3 0 D
@@ -845,7 +873,7 @@ FO
 -24 -27 D
 6 -30 D
 -36 -38 D
-41 -17 D
+P
 FO
 2 3 5 7 5 8 24 -10 3 -8 5 1867 4200 SP
 {0.941 1 1 C} FS
@@ -928,7 +956,7 @@ S
 -29 -10 D
 -11 -14 D
 -9 2 D
-40 59 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 10 15 -15 -6 0 19 42 3 4 1881 4159 SP
@@ -985,7 +1013,7 @@ FO
 52 -13 D
 84 -15 D
 87 -10 D
-14 76 D
+P
 FO
 -5 -7 -2 -3 -1 0 13 18 4 1894 4182 SP
 10 15 -15 -6 0 19 42 3 4 1881 4159 SP
@@ -1086,7 +1114,7 @@ S
 33 155 D
 10 43 D
 120 0 D
-26 -125 D
+P
 FO
 -28 24 16 25 -17 -26 3 2030 3977 SP
 {0.871 0.722 0.529 C} FS
@@ -1118,7 +1146,7 @@ FO
 -29 4 D
 -14 -76 D
 54 -3 D
-7 0 D
+P
 FO
 -1 6 -1 6 9 -10 -6 -8 4 2201 3983 SP
 0 2 9 1 -8 -4 3 2200 3987 SP
@@ -1212,7 +1240,7 @@ P S
 -64 7 D
 6 -8 D
 -13 -6 D
--4 26 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -43 5 13 13 19 -4 3 2252 4062 SP
@@ -1249,7 +1277,7 @@ FO
 -1 0 D
 6 -37 D
 64 6 D
-21 3 D
+P
 FO
 2 -8 1 -8 -6 4 -3 -15 -40 13 15 14 13 -17 -16 21 33 4 9 2188 4051 SP
 -18 -13 -17 10 4 7 30 -2 4 2196 4013 SP
@@ -1308,8 +1336,7 @@ S
 -3 8 D
 21 27 D
 -20 -29 D
-2 -6 D
-S
+P S
 {0.941 1 1 C} FS
 2554 3999 M
 -11 0 D
@@ -1332,7 +1359,7 @@ S
 21 -22 D
 -24 -12 D
 -26 -11 D
--32 -13 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -1 1 1 2435 3962 SP
@@ -1368,7 +1395,7 @@ S
 -46 -37 D
 -45 -30 D
 -55 -30 D
--21 22 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -7 5 3 3 3 3 4 3 3 3 3 3 6 -8 -2 -18 -5 2 9 2783 4156 SP
@@ -1400,7 +1427,7 @@ S
 5 4 D
 24 30 D
 1 0 D
--53 0 D
+P
 FO
 {0.941 1 1 C} FS
 9 0 2 2 -11 -1 3 2823 4199 SP
@@ -1413,11 +1440,10 @@ FO
 15 -11 D
 -7 2 D
 S
-2823 4199 M
--11 -1 D
-2 2 D
 2823 4200 M
 0 -1 D
+-11 -1 D
+2 2 D
 S
 0 6 -15 0 -9 -6 3 960 4200 SP
 -9 6 7 -11 20 20 0 -15 16 30 -22 -3 -9 -20 7 878 4130 SP
@@ -1440,7 +1466,7 @@ S
 96 57 D
 57 31 D
 57 29 D
--613 0 D
+P
 FO
 {0.941 1 1 C} FS
 0 6 -15 0 -9 -6 3 960 4200 SP
@@ -1496,7 +1522,7 @@ P S
 -8 10 D
 -25 -10 D
 -12 12 D
-149 1 D
+P
 FO
 832 3910 M
 -14 -3 D
@@ -1517,7 +1543,7 @@ FO
 -7 -7 D
 9 -2 D
 -55 10 D
--9 -5 D
+P
 FO
 14 1 -1 10 16 -2 -6 9 14 25 -10 -13 -6 4 6 -9 -7 -10 -13 -1 -28 -28 20 14 12 1043 3950 SP
 42 3 16 -18 -70 -41 -32 4 32 -5 71 42 -16 18 -42 -3 22 26 9 1232 4080 SP
@@ -1579,7 +1605,7 @@ FO
 -65 -53 D
 27 -31 D
 28 -29 D
-8 -7 D
+P
 FO
 -3 3 -3 2 4 3 5 3 -1 -14 5 1389 4160 SP
 {0.941 1 1 C} FS
@@ -1602,7 +1628,7 @@ FO
 -7 -7 D
 9 -2 D
 -55 10 D
--9 -5 D
+P
 FO
 14 1 -1 10 16 -2 -6 9 14 25 -10 -13 -6 4 6 -9 -7 -10 -13 -1 -28 -28 20 14 12 1043 3950 SP
 42 3 16 -18 -70 -41 -32 4 32 -5 71 42 -16 18 -42 -3 22 26 9 1232 4080 SP
@@ -1678,16 +1704,15 @@ P S
 16 -18 D
 42 3 D
 P S
-1032 4116 M
-19 53 D
-20 19 D
-21 5 D
-1 7 D
 1094 4200 M
 -2 -7 D
 -21 -6 D
 -20 -18 D
 -19 -53 D
+19 53 D
+20 19 D
+21 5 D
+1 7 D
 S
 840 4019 M
 -9 -28 D
@@ -1738,7 +1763,7 @@ P S
 -14 -1 D
 -17 -22 D
 -11 6 D
-31 20 D
+P
 FO
 1505 4068 M
 -25 -17 D
@@ -1757,7 +1782,7 @@ FO
 56 24 D
 3 18 D
 29 22 D
-12 -7 D
+P
 FO
 1332 3778 M
 -4 11 D
@@ -1788,7 +1813,7 @@ FO
 32 -39 D
 -5 -33 D
 7 -7 D
--3 -4 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 10 2 1 1391 4010 SP
@@ -1880,7 +1905,7 @@ FO
 42 70 D
 49 75 D
 43 62 D
-25 33 D
+P
 FO
 -4 -3 -2 2 1 3 10 1 4 1388 4146 SP
 10 2 1 1391 4010 SP
@@ -1994,7 +2019,7 @@ P S
 9 23 D
 -8 13 D
 -12 -1 D
--36 -42 D
+P
 FO
 -12 -16 -1 -16 -25 -4 1 -7 34 14 5 1424 3608 SP
 -29 3 35 -11 -5 8 3 1621 3952 SP
@@ -2044,7 +2069,7 @@ FO
 -38 -64 D
 57 -18 D
 105 -29 D
-59 -14 D
+P
 FO
 {0.941 1 1 C} FS
 1519 3859 M
@@ -2069,7 +2094,7 @@ FO
 9 23 D
 -8 13 D
 -12 -1 D
--36 -42 D
+P
 FO
 -12 -16 -1 -16 -25 -4 1 -7 34 14 5 1424 3608 SP
 -29 3 35 -11 -5 8 3 1621 3952 SP
@@ -2177,7 +2202,7 @@ S
 117 -13 D
 136 -10 D
 29 220 D
-7 46 D
+P
 FO
 {0.941 1 1 C} FS
 -9 14 6 3 -2 11 -8 -26 -16 2 15 60 8 -1 -9 3 5 16 -12 -13 5 -16 -3 -5 -2 8 -10 -42 -1 -14 14 -2 16 1626 3605 SP
@@ -2222,8 +2247,7 @@ P S
 49 33 D
 28 -10 D
 19 -20 D
-29 12 D
-S
+P S
 1551 3488 M
 1 -12 D
 -15 -15 D
@@ -2268,7 +2292,7 @@ P S
 -10 -5 D
 6 -10 D
 -13 8 D
--4 -2 D
+P
 FO
 2271 3515 M
 -5 4 D
@@ -2282,7 +2306,7 @@ FO
 -10 9 D
 49 41 D
 26 32 D
-11 -89 D
+P
 FO
 5 2 -6 6 0 -1 5 -4 -5 -2 5 2275 3485 SP
 {0.871 0.722 0.529 C} FS
@@ -2336,7 +2360,7 @@ FO
 -16 -127 D
 100 -4 D
 112 -2 D
-106 3 D
+P
 FO
 -1 8 -1 7 0 8 -1 8 10 0 10 1 10 0 9 1 10 0 10 0 -4 -8 -6 3 3 -11 -31 -19 -17 -6 15 2279 3446 SP
 0 3 5 -4 -5 -2 3 2275 3485 SP
@@ -2349,7 +2373,7 @@ FO
 35 63 D
 -34 1 D
 -27 2 D
--29 -165 D
+P
 FO
 -2 -11 -2 -11 -1 -11 -2 -11 -2 -10 -1 -11 -2 -11 -54 -9 -22 7 -17 -13 -43 30 5 37 80 30 44 -5 20 10 15 1939 3674 SP
 -6 -12 -7 9 2 2234 3531 SP
@@ -2479,7 +2503,7 @@ S
 28 -81 D
 -148 -22 D
 -111 -11 D
--40 -3 D
+P
 FO
 0 4 -14 -4 10 -1 -1 -9 5 10 -6 -19 10 -10 0 1 -9 8 3 13 3 2 11 2278 3455 SP
 -11 -4 12 3 2 2274 3486 SP
@@ -2506,7 +2530,7 @@ FO
 10 -1 D
 -14 -4 D
 4 -39 D
-8 1 D
+P
 FO
 9 0 8 1 9 0 3 -29 16 -30 1 -28 -17 -10 12 -14 -8 -4 -20 75 -21 38 11 2359 3412 SP
 2622 3550 M
@@ -2520,7 +2544,7 @@ FO
 21 42 D
 -8 18 D
 27 8 D
--8 21 D
+P
 FO
 -2 5 -2 5 3 1 4 -8 0 -7 5 2541 3746 SP
 2454 3927 M
@@ -2559,7 +2583,7 @@ FO
 44 20 D
 -60 125 D
 -15 28 D
--8 17 D
+P
 FO
 1 -7 1 -8 -9 8 3 13 3 2 5 2278 3455 SP
 -10 -21 -2 10 2 2581 3446 SP
@@ -2649,8 +2673,7 @@ S
 S
 2296 3935 M
 8 -25 D
--8 25 D
-S
+P S
 {0.941 1 1 C} FS
 2630 3529 M
 -11 28 D
@@ -2693,7 +2716,7 @@ S
 -104 -27 D
 -119 -25 D
 -57 -10 D
--28 81 D
+P
 FO
 -4 10 -4 9 -4 10 -4 9 -14 -40 -22 -17 14 -38 -14 -9 13 -3 16 9 -12 22 13 3 19 35 2 -13 5 4 15 2548 3732 SP
 -2 6 -1 -13 5 2 3 2537 3757 SP
@@ -2709,7 +2732,7 @@ FO
 -6 -16 D
 -24 18 D
 62 17 D
-47 16 D
+P
 FO
 2659 4012 M
 -57 3 D
@@ -2718,7 +2741,7 @@ FO
 45 19 D
 37 17 D
 12 -11 D
-11 -12 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -15 -1 -1 9 2 2537 3979 SP
@@ -2792,7 +2815,7 @@ FO
 -45 51 D
 -30 33 D
 -5 4 D
--4 5 D
+P
 FO
 2 -7 3 -7 -8 21 3 2630 3529 SP
 -15 -1 -1 9 2 2537 3979 SP
@@ -2990,7 +3013,7 @@ S
 -38 52 D
 -9 11 D
 -22 29 D
--65 78 D
+P
 FO
 3 -2 -3 6 -14 9 1 30 13 -7 23 8 22 -10 -24 12 -17 -8 -17 6 -9 -24 19 -17 12 3016 3991 SP
 {0.871 0.722 0.529 C} FS
@@ -3064,7 +3087,7 @@ FO
 -17 16 D
 -23 19 D
 -34 30 D
--29 23 D
+P
 FO
 2743 3919 M
 -1 14 D
@@ -3094,7 +3117,7 @@ FO
 4 -5 D
 5 -4 D
 71 -79 D
-4 -5 D
+P
 FO
 -8 -17 10 -7 -10 -6 0 19 4 3158 3711 SP
 10 -10 -45 -8 2 13 3 2908 3930 SP
@@ -3292,7 +3315,7 @@ S
 -62 71 D
 -45 48 D
 -6 5 D
--25 27 D
+P
 FO
 3119 3903 M
 26 -3 D
@@ -3310,7 +3333,7 @@ FO
 -4 5 D
 -10 8 D
 -4 5 D
--14 12 D
+P
 FO
 -3 3 6 -5 39 -60 -39 60 4 3010 3996 SP
 {0.871 0.722 0.529 C} FS
@@ -3386,7 +3409,7 @@ FO
 -3 7 D
 -54 31 D
 -96 50 D
--277 0 D
+P
 FO
 5 -9 -18 -1 19 -12 -11 2 9 -11 -15 -5 -12 10 9 3 -9 3 -2 26 9 -12 0 7 12 3237 3909 SP
 13 -21 -10 11 2 3212 4044 SP
@@ -3567,7 +3590,7 @@ P S
 21 -19 D
 -3 17 D
 17 -20 D
--1 -4 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 44 0 43 -19 -13 -9 -14 15 17 -26 -30 32 -9 -7 -6 10 8 3576 4067 SP
@@ -3669,7 +3692,7 @@ FO
 21 -19 D
 -3 17 D
 17 -20 D
-5 13 D
+P
 FO
 44 0 43 -19 -13 -9 -14 15 17 -26 -30 32 -9 -7 -6 10 8 3576 4067 SP
 10 -11 3 6 28 -13 -42 0 0 10 -8 -8 -21 13 14 -1 8 3496 4109 SP
@@ -3868,11 +3891,9 @@ P S
 -1 -12 D
 -1 12 D
 P S
-3516 4198 M
-18 2 D
 3534 4200 M
 -18 -2 D
-S
+P S
 {0.871 0.722 0.529 C} FS
 2 11 9 -5 9 -5 2 -1 4 3732 4200 SP
 {0.941 1 1 C} FS
@@ -3904,7 +3925,7 @@ S
 -21 -37 D
 -46 -43 D
 0 327 D
-118 0 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -19 -15 -27 0 -4 4 30 36 20 12 5 0 4148 SP
@@ -3943,7 +3964,7 @@ FO
 87 62 D
 71 46 D
 80 47 D
--326 0 D
+P
 FO
 -19 -15 -27 0 -4 4 30 36 20 12 5 0 4148 SP
 {0.941 1 1 C} FS
@@ -4101,7 +4122,7 @@ P S
 -40 -36 D
 -22 -39 D
 -99 -82 D
-0 474 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -52 13 23 5 5 13 27 -2 4 51 3523 SP
@@ -4163,7 +4184,7 @@ FO
 22 30 D
 44 60 D
 59 73 D
-30 35 D
+P
 FO
 46 3916 M
 -20 -39 D
@@ -4259,7 +4280,7 @@ FO
 -61 -44 D
 -51 -40 D
 -67 -55 D
--33 -28 D
+P
 FO
 -52 13 23 5 5 13 27 -2 4 51 3523 SP
 -4 -15 -9 5 8 15 5 -4 4 87 3778 SP
@@ -4445,7 +4466,7 @@ P S
 29 34 D
 20 22 D
 6 5 D
-15 16 D
+P
 FO
 55 29 -56 -28 2 657 3828 SP
 710 3499 M
@@ -4461,7 +4482,7 @@ FO
 -21 -29 D
 -9 -11 D
 -16 -23 D
--13 -18 D
+P
 FO
 439 3478 M
 21 24 D
@@ -4507,7 +4528,7 @@ FO
 -45 13 D
 -29 57 D
 21 44 D
-19 9 D
+P
 FO
 -5 8 16 31 -12 34 -17 7 5 18 -5 -18 19 -15 10 -26 -16 -30 5 -10 10 230 3368 SP
 11 18 22 8 2 -8 21 17 4 -11 14 13 -16 7 -37 -19 -17 -10 -5 -15 10 618 3839 SP
@@ -4578,7 +4599,7 @@ FO
 -23 -40 D
 45 -26 D
 101 -50 D
-14 -6 D
+P
 FO
 {0.941 1 1 C} FS
 439 3478 M
@@ -4625,7 +4646,7 @@ FO
 -45 13 D
 -29 57 D
 21 44 D
-19 9 D
+P
 FO
 -5 8 16 31 -12 34 -17 7 5 18 -5 -18 19 -15 10 -26 -16 -30 5 -10 10 230 3368 SP
 11 18 22 8 2 -8 21 17 4 -11 14 13 -16 7 -37 -19 -17 -10 -5 -15 10 618 3839 SP
@@ -4772,7 +4793,7 @@ S
 -22 3 D
 33 47 D
 9 11 D
-17 23 D
+P
 FO
 1 28 -19 -27 -33 -11 -47 28 -21 -6 20 1 52 -31 23 6 8 1014 3477 SP
 39 -2 -22 14 -21 -7 4 -6 4 1029 3352 SP
@@ -4812,7 +4833,7 @@ FO
 -73 41 D
 -14 -17 D
 -59 -73 D
--9 -12 D
+P
 FO
 {0.941 1 1 C} FS
 1 28 -19 -27 -33 -11 -47 28 -21 -6 20 1 52 -31 23 6 8 1014 3477 SP
@@ -4896,7 +4917,7 @@ P S
 168 -20 D
 16 -1 D
 28 136 D
-11 45 D
+P
 FO
 {0.941 1 1 C} FS
 14 -14 -10 -2 3 -9 -23 -9 10 -13 -9 -5 13 0 -8 17 34 19 -15 19 10 1214 3455 SP
@@ -5045,7 +5066,7 @@ S
 -16 -79 D
 103 -10 D
 175 -12 D
-87 -5 D
+P
 FO
 {0.941 1 1 C} FS
 3 -15 -1 8 10 -2 -4 10 11 -4 -7 5 6 2 7 1815 2965 SP
@@ -5237,7 +5258,7 @@ P S
 8 -130 D
 -164 -3 D
 -229 1 D
--32 1 D
+P
 FO
 1 3 -4 6 -10 -4 7 -12 6 5 5 1859 2922 SP
 0 2 10 3 -6 5 9 16 65 35 26 0 -25 1 42 23 -32 -11 -25 -18 -49 -23 -18 -33 12 2224 3405 SP
@@ -5268,7 +5289,7 @@ FO
 -10 -4 D
 -4 6 D
 -2 -30 D
-46 -1 D
+P
 FO
 -1 3 3 3 -2 -9 3 2318 3023 SP
 2310 3133 M
@@ -5303,7 +5324,7 @@ FO
 12 -2 D
 1 13 D
 5 -1 D
--7 100 D
+P
 FO
 -1 7 0 7 6 2 -2 -18 -3 -5 5 2307 3168 SP
 -1 7 0 8 -1 7 6 -27 -3 -3 5 2302 3218 SP
@@ -5378,7 +5399,7 @@ FO
 57 73 D
 32 60 D
 -5 39 D
--59 -2 D
+P
 FO
 -1 -10 0 -9 -1 -10 -1 -9 -17 -8 -42 13 4 13 12 -4 28 10 2 12 13 -2 -3 6 7 7 13 1867 3036 SP
 4 14 12 -6 -13 -32 5 -17 7 4 -5 12 14 3 2 -14 -8 7 10 -13 -32 -13 -26 23 17 41 16 10 14 2107 2909 SP
@@ -5634,7 +5655,7 @@ P S
 -194 -16 D
 -186 -10 D
 -89 -3 D
--8 130 D
+P
 FO
 0 5 -2 -9 3 -1 3 2317 3033 SP
 0 5 -1 4 -1 -6 1 -8 2 0 5 2308 3147 SP
@@ -5662,7 +5683,7 @@ FO
 -22 -1 D
 4 -9 D
 -10 -7 D
-3 -30 D
+P
 FO
 2308 3147 M
 2 0 D
@@ -5683,7 +5704,7 @@ FO
 8 -14 D
 -18 9 D
 -6 -12 D
-1 -21 D
+P
 FO
 -10 1 19 22 -1 -9 3 2415 3258 SP
 -19 -4 33 31 2 2441 3272 SP
@@ -5778,7 +5799,7 @@ S
 64 -134 D
 43 -104 D
 34 -92 D
-33 -99 D
+P
 FO
 3703 3089 M
 -121 -36 D
@@ -5804,7 +5825,7 @@ FO
 63 -112 D
 39 -79 D
 27 -57 D
-10 -22 D
+P
 FO
 4118 3265 M
 -69 -37 D
@@ -5840,7 +5861,7 @@ FO
 64 -94 D
 50 -80 D
 9 -17 D
-10 -16 D
+P
 FO
 3716 4073 M
 45 -5 D
@@ -5897,7 +5918,7 @@ FO
 36 45 D
 32 48 D
 23 40 D
-25 53 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 11 -1 1 3722 4069 SP
@@ -5939,7 +5960,7 @@ FO
 -46 27 D
 -28 17 D
 -11 -46 D
--6 -18 D
+P
 FO
 -1 -4 -2 -4 -8 10 13 3 4 3729 4107 SP
 -3 -7 -3 -7 -3 -8 -69 9 21 24 19 -18 -4 20 45 -5 8 3716 4073 SP
@@ -6000,7 +6021,7 @@ S
 33 -30 D
 27 -25 D
 0 346 D
--446 0 D
+P
 FO
 {0.941 1 1 C} FS
 15 -14 -7 -1 34 -5 3 4120 4112 SP
@@ -6015,7 +6036,7 @@ P S
 28 49 D
 -60 36 D
 -9 6 D
-0 -170 D
+P
 FO
 {0.941 1 1 C} FS
 66 2466 M
@@ -6073,7 +6094,7 @@ FO
 -23 -116 D
 -15 -93 D
 -174 19 D
--57 7 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -32 4 16 6 2 158 2538 SP
@@ -6093,7 +6114,7 @@ FO
 28 68 D
 -63 21 D
 -63 23 D
--82 33 D
+P
 FO
 0 2617 M
 39 5 D
@@ -6134,7 +6155,7 @@ FO
 -10 -16 D
 -57 -108 D
 -2 -4 D
-0 -528 D
+P
 FO
 -32 4 16 6 2 158 2538 SP
 -28 -6 9 6 2 350 3017 SP
@@ -6242,7 +6263,7 @@ P S
 21 101 D
 29 114 D
 35 114 D
-21 60 D
+P
 FO
 37 14 15 17 2 43 35 49 -9 1 4 -6 -30 -44 -2 -43 -15 -16 -37 -14 10 674 2981 SP
 {0.871 0.722 0.529 C} FS
@@ -6288,7 +6309,7 @@ FO
 -4 -118 D
 38 -155 D
 5 -34 D
-76 -5 D
+P
 FO
 {0.941 1 1 C} FS
 37 14 15 17 2 43 35 49 -9 1 4 -6 -30 -44 -2 -43 -15 -16 -37 -14 10 674 2981 SP
@@ -6403,7 +6424,7 @@ P S
 1 -19 D
 -237 9 D
 -238 13 D
-8 68 D
+P
 FO
 -1 -7 0 -7 1 0 1 21 4 1325 2446 SP
 {0.871 0.722 0.529 C} FS
@@ -6496,7 +6517,7 @@ FO
 8 -5 D
 -13 -27 D
 1 -19 D
-1 0 D
+P
 FO
 2 16 5 -8 2 1139 2456 SP
 -2 -22 -1 7 2 1140 2439 SP
@@ -6688,7 +6709,7 @@ P S
 -4 3 D
 4 -3 D
 -2 -58 D
--29 0 D
+P
 FO
 -2 0 5 -5 -2 5 3 1482 2372 SP
 1325 2435 M
@@ -6703,7 +6724,7 @@ FO
 7 6 D
 30 -20 D
 -130 4 D
-4 58 D
+P
 FO
 -13 7 7 14 -13 12 -5 -10 13 -3 -2 -13 -10 -6 1 0 7 5 13 -6 10 1755 2891 SP
 -4 -3 1 1766 2891 SP
@@ -6738,7 +6759,7 @@ FO
 9 -28 D
 25 -8 D
 -27 7 D
-11 -15 D
+P
 FO
 -27 1 -9 16 8 -16 28 -1 6 -9 32 1 -32 -1 7 1636 2725 SP
 1 -8 12 10 2 1824 2873 SP
@@ -6841,7 +6862,7 @@ FO
 0 -18 D
 7 6 D
 30 -20 D
-31 -1 D
+P
 FO
 -12 -13 0 -12 -6 6 -1 -18 -5 24 22 13 6 1805 2366 SP
 -4 3 1 1836 2424 SP
@@ -6878,7 +6899,7 @@ FO
 9 -28 D
 25 -8 D
 -27 7 D
-11 -15 D
+P
 FO
 -27 1 -9 16 8 -16 28 -1 6 -9 32 1 -32 -1 7 1636 2725 SP
 1 -8 12 10 2 1824 2873 SP
@@ -7133,7 +7154,7 @@ P S
 10 -182 D
 9 -254 D
 2 -85 D
--368 -1 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2 -15 -17 5 -8 28 8 -2 -1 10 15 -26 6 1948 2391 SP
@@ -7169,7 +7190,7 @@ FO
 18 10 D
 -5 3 D
 -46 1 D
--5 -86 D
+P
 FO
 1838 2498 M
 1 -7 D
@@ -7202,7 +7223,7 @@ FO
 -43 5 D
 -7 -62 D
 -10 4 D
--1 -33 D
+P
 FO
 6 -6 1 1836 2424 SP
 2 -15 -17 5 -8 28 8 -2 -1 10 15 -26 6 1948 2391 SP
@@ -7362,17 +7383,8 @@ P S
 29 -175 D
 18 -145 D
 12 -125 D
-6 -95 D
+P
 FO
-{0.871 0.722 0.529 C} FS
--9 -4 6 10 3 -5 3 2463 2457 SP
--9 -4 6 10 3 -5 3 2463 2457 SP
-2463 2457 M
-3 -5 D
-6 10 D
--9 -4 D
-P S
-{0.941 1 1 C} FS
 3374 2399 M
 -203 -11 D
 -283 -11 D
@@ -7391,7 +7403,7 @@ P S
 26 -121 D
 19 -109 D
 18 -129 D
-4 -41 D
+P
 FO
 3885 2438 M
 -185 -17 D
@@ -7412,7 +7424,7 @@ FO
 32 -114 D
 23 -100 D
 18 -100 D
-11 -70 D
+P
 FO
 4200 2475 M
 -166 -21 D
@@ -7432,7 +7444,7 @@ FO
 12 -26 D
 9 -17 D
 3 -7 D
-0 -632 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 9 -7 -6 -6 -12 11 8 2 4 3852 2822 SP
@@ -7473,7 +7485,7 @@ P S
 -23 41 D
 53 31 D
 29 19 D
-0 -208 D
+P
 FO
 0 2329 M
 61 116 D
@@ -7489,7 +7501,7 @@ FO
 2 -8 D
 -211 -25 D
 -88 -13 D
-0 602 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -5 1 -9 1 -9 1 -8 1 -9 1 -8 2 -9 1 -9 1 5 21 61 116 10 0 2329 SP
@@ -7531,7 +7543,7 @@ S
 8 71 D
 121 -12 D
 172 -14 D
-121 -8 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1 11 1 11 1 11 1 11 0 11 5 -36 -2 7 -8 -36 8 806 2376 SP
@@ -7544,7 +7556,7 @@ FO
 24 7 D
 -7 6 D
 9 15 D
--76 5 D
+P
 FO
 711 2406 M
 5 -34 D
@@ -7600,7 +7612,7 @@ S
 -5 109 D
 -1 156 D
 4 95 D
-3 41 D
+P
 FO
 1 5 0 5 -2 -12 -9 4 10 -7 5 807 2391 SP
 -1 -8 0 -9 -1 -9 7 0 7 0 7 0 0 20 -16 0 -3 15 9 1319 2342 SP
@@ -7626,7 +7638,7 @@ FO
 27 -15 D
 8 -40 D
 23 -22 D
-0 93 D
+P
 FO
 0 9 1 10 0 9 0 9 1 9 32 -47 10 5 -13 -49 -6 1 -7 0 0 20 -16 0 -3 15 13 1319 2342 SP
 0 1 1 -1 2 1283 2378 SP
@@ -7641,7 +7653,7 @@ FO
 -10 43 D
 -26 41 D
 -6 -1 D
-0 -2 D
+P
 FO
 -8 -4 -14 14 1 12 12 -11 4 1245 2132 SP
 21 -11 -8 0 2 1209 2181 SP
@@ -7802,7 +7814,7 @@ P S
 -309 -8 D
 -26 -1 D
 -7 159 D
--1 98 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1702 2000 M
@@ -7863,7 +7875,7 @@ FO
 1 -8 D
 23 3 D
 2 -21 D
-10 4 D
+P
 FO
 48 -15 26 4 38 -9 -3 -11 34 -5 -15 -7 -6 -17 -58 9 -17 16 -38 2 -16 -14 -39 10 -17 24 -33 1 -4 25 15 -4 16 1679 1879 SP
 5 -18 16 -1 -5 -12 -19 -1 -6 22 -15 4 4 11 7 1487 2025 SP
@@ -7897,7 +7909,7 @@ FO
 15 0 D
 -1 -53 D
 14 0 D
--1 160 D
+P
 FO
 4 2 -4 -5 2 1832 2242 SP
 3 2 20 27 21 14 -42 -43 4 1803 2366 SP
@@ -7930,7 +7942,7 @@ FO
 -35 40 D
 -3 -13 D
 -24 29 D
-0 -93 D
+P
 FO
 1702 2000 M
 33 23 D
@@ -7990,7 +8002,7 @@ FO
 1 -8 D
 23 3 D
 2 -21 D
-10 4 D
+P
 FO
 48 -15 26 4 38 -9 -3 -11 34 -5 -15 -7 -6 -17 -58 9 -17 16 -38 2 -16 -14 -39 10 -17 24 -33 1 -4 25 15 -4 16 1679 1879 SP
 5 -18 16 -1 -5 -12 -19 -1 -6 22 -15 4 4 11 7 1487 2025 SP
@@ -8360,7 +8372,7 @@ S
 27 6 D
 -1 -52 D
 -286 2 D
--112 -1 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1962 2257 M
@@ -8391,7 +8403,7 @@ FO
 7 11 D
 15 -11 D
 -6 -26 D
-25 -14 D
+P
 FO
 21 -18 7 -33 -15 -31 -1 24 10 10 -29 -17 1 13 13 7 -19 16 26 -7 -2 20 11 2039 2097 SP
 -34 5 -13 23 24 -14 38 3 7 -10 7 13 -2 -12 7 2039 2025 SP
@@ -8473,7 +8485,7 @@ FO
 12 -9 D
 -5 -18 D
 27 6 D
-1 152 D
+P
 FO
 -7 0 0 7 14 3 6 -5 -6 -5 5 1937 2365 SP
 8 15 -6 -15 2 1925 2365 SP
@@ -8508,7 +8520,7 @@ FO
 -8 6 D
 -6 -7 D
 -2 -5 D
-1 -160 D
+P
 FO
 0 -2 -10 -10 -28 10 -24 -2 -11 -12 -4 7 35 15 42 -4 8 1834 1877 SP
 1962 2257 M
@@ -8539,7 +8551,7 @@ FO
 7 11 D
 15 -11 D
 -6 -26 D
-25 -14 D
+P
 FO
 21 -18 7 -33 -15 -31 -1 24 10 10 -29 -17 1 13 13 7 -19 16 26 -7 -2 20 11 2039 2097 SP
 -34 5 -13 23 24 -14 38 3 7 -10 7 13 -2 -12 7 2039 2025 SP
@@ -8907,7 +8919,7 @@ P S
 11 -4 D
 -1 -10 D
 -164 5 D
--66 2 D
+P
 FO
 2349 1896 M
 1 0 D
@@ -8928,7 +8940,7 @@ FO
 32 -9 D
 38 -50 D
 -196 2 D
-1 52 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 33 -19 -40 -1 -6 -14 0 14 -20 0 -21 -17 5 -17 -18 -2 -6 5 12 18 -4 11 28 15 12 2635 1946 SP
@@ -8980,7 +8992,7 @@ FO
 2 -10 D
 32 -9 D
 38 -50 D
-58 -2 D
+P
 FO
 -7 8 1 2631 1840 SP
 0 3 11 -4 -3 -7 -8 5 4 2862 1849 SP
@@ -9110,8 +9122,7 @@ P S
 P S
 2631 1840 M
 -7 8 D
-7 -8 D
-S
+P S
 {0.941 1 1 C} FS
 2862 1843 M
 21 -7 D
@@ -9131,7 +9142,7 @@ S
 -273 15 D
 -230 9 D
 -9 0 D
-1 10 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -19 36 9 -11 2 2888 1853 SP
@@ -9165,7 +9176,7 @@ S
 -1 -94 D
 -7 -117 D
 -11 -109 D
--4 -31 D
+P
 FO
 4200 1727 M
 -132 18 D
@@ -9179,7 +9190,7 @@ FO
 -7 62 D
 228 25 D
 87 12 D
-0 -748 D
+P
 FO
 0 1066 M
 45 -87 D
@@ -9187,7 +9198,7 @@ FO
 -12 -8 D
 -13 -7 D
 -48 -31 D
-0 182 D
+P
 FO
 0 1727 M
 123 17 D
@@ -9209,7 +9220,7 @@ FO
 -34 -19 D
 -41 74 D
 -32 62 D
-0 661 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 93 1141 M
@@ -9245,7 +9256,7 @@ FO
 0 -41 D
 6 -28 D
 59 -90 D
-28 -8 D
+P
 FO
 7 10 2 -18 2 310 1420 SP
 -8 14 17 -8 2 266 1373 SP
@@ -9282,7 +9293,7 @@ FO
 0 -41 D
 6 -28 D
 59 -90 D
-28 -8 D
+P
 FO
 7 10 2 -18 2 310 1420 SP
 -8 14 17 -8 2 266 1373 SP
@@ -9350,7 +9361,7 @@ P S
 18 -116 D
 26 -129 D
 27 -108 D
-37 -127 D
+P
 FO
 1389 1292 M
 -231 -28 D
@@ -9368,7 +9379,7 @@ FO
 16 -151 D
 17 -126 D
 23 -137 D
-4 -19 D
+P
 FO
 1832 1844 M
 2 -1 D
@@ -9397,7 +9408,7 @@ FO
 -11 145 D
 264 7 D
 176 3 D
-71 1 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -8 13 1 1687 1421 SP
@@ -9419,7 +9430,7 @@ FO
 5 -23 D
 118 5 D
 -10 162 D
--5 104 D
+P
 FO
 0 1 2 -1 2 1832 1844 SP
 -8 13 1 1687 1421 SP
@@ -9531,7 +9542,7 @@ S
 6 -22 D
 -30 -38 D
 -28 -7 D
--8 254 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 15 13 16 -21 -12 11 -5 -6 4 2117 1811 SP
@@ -9623,7 +9634,7 @@ FO
 154 1 D
 162 -4 D
 12 228 D
-3 96 D
+P
 FO
 -8 0 -8 0 13 7 14 2 -3 -9 5 1926 1845 SP
 -7 0 -7 0 -7 0 9 8 12 -7 5 1834 1843 SP
@@ -9791,7 +9802,7 @@ P S
 -27 -175 D
 -7 -38 D
 -57 6 D
--99 8 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -9 -19 8 28 1 -8 3 2647 1428 SP
@@ -9828,7 +9839,7 @@ FO
 -6 -156 D
 -9 -168 D
 117 -4 D
-195 -12 D
+P
 FO
 5 -5 1 2631 1840 SP
 -12 0 -12 0 -11 0 -12 1 -2 2 -23 4 18 12 12 -9 51 -8 2 -3 10 2544 1842 SP
@@ -9878,8 +9889,7 @@ S
 P S
 2631 1840 M
 5 -5 D
--5 5 D
-S
+P S
 2684 1802 M
 15 -7 D
 P S
@@ -9906,7 +9916,7 @@ P S
 248 -12 D
 114 -7 D
 -11 -97 D
--12 -83 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 8 -1 6 -13 -7 -2 3 3034 1660 SP
@@ -9957,8 +9967,7 @@ P S
 36 -2 D
 1 9 D
 -12 -6 D
-16 15 D
-S
+P S
 2911 1810 M
 10 -2 D
 -28 19 D
@@ -10014,7 +10023,7 @@ P S
 24 93 D
 21 94 D
 19 101 D
-5 27 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -16 6 10 -2 2 3565 1672 SP
@@ -10022,7 +10031,7 @@ FO
 -16 6 10 -2 2 3565 1672 SP
 16 -6 1 3542 1689 SP
 3350 1629 M
-S
+P S
 3565 1672 M
 10 -2 D
 -16 6 D
@@ -10051,7 +10060,7 @@ P S
 -11 -24 D
 -13 -25 D
 -35 -67 D
--28 -49 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 9 -13 1 4087 1462 SP
@@ -10068,7 +10077,7 @@ P S
 31 58 D
 17 33 D
 20 41 D
-0 -219 D
+P
 FO
 0 335 M
 52 -48 D
@@ -10081,7 +10090,7 @@ FO
 10 -5 D
 -1 -4 D
 -452 0 D
-0 335 D
+P
 FO
 0 884 M
 54 35 D
@@ -10112,7 +10121,7 @@ FO
 -25 22 D
 -42 37 D
 -19 18 D
-0 549 D
+P
 FO
 855 526 M
 -60 -38 D
@@ -10147,7 +10156,7 @@ FO
 14 -20 D
 20 -26 D
 26 -31 D
-32 -38 D
+P
 FO
 1175 671 M
 -93 -34 D
@@ -10174,7 +10183,7 @@ FO
 52 -108 D
 30 -57 D
 28 -50 D
-18 -31 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 21 -28 -11 11 -6 -8 -3 10 -15 -13 -5 10 15 4 -16 4 20 1 -1 9 10 988 606 SP
@@ -10214,7 +10223,7 @@ P S
 26 -99 D
 23 -80 D
 29 -92 D
-18 -55 D
+P
 FO
 1739 1318 M
 3 -13 D
@@ -10238,7 +10247,7 @@ FO
 -26 119 D
 -10 50 D
 183 16 D
-167 10 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1739 1318 M
@@ -10252,7 +10261,7 @@ FO
 42 33 D
 2 0 D
 -7 103 D
--118 -5 D
+P
 FO
 1739 1318 M
 3 -13 D
@@ -10302,7 +10311,7 @@ S
 -138 -5 D
 -6 -1 D
 -18 167 D
--22 251 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -35 2 26 5 2 2249 1169 SP
@@ -10340,7 +10349,7 @@ FO
 -130 3 D
 -162 1 D
 -178 -4 D
-7 -103 D
+P
 FO
 -35 2 26 5 2 2249 1169 SP
 1864 1220 M
@@ -10411,7 +10420,7 @@ P S
 -142 14 D
 -85 5 D
 24 245 D
-6 82 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1 -11 -8 5 14 -26 -2 -19 -38 18 -33 -11 0 38 2 -7 10 34 14 -15 11 23 16 -9 12 2425 969 SP
@@ -10442,7 +10451,7 @@ FO
 -179 11 D
 -133 5 D
 -13 -182 D
--1 -11 D
+P
 FO
 1 -11 -8 5 14 -26 -2 -19 -38 18 -33 -11 0 38 2 -7 10 34 14 -15 11 23 16 -9 12 2425 969 SP
 -6 13 7 -3 2 2479 1050 SP
@@ -10515,7 +10524,7 @@ P S
 -36 -76 D
 -13 -25 D
 -47 -88 D
--18 -31 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 3036 944 M
@@ -10551,7 +10560,7 @@ FO
 -19 -27 D
 -22 -9 D
 20 -23 D
--14 -29 D
+P
 FO
 2881 824 M
 19 7 D
@@ -10579,7 +10588,7 @@ FO
 -12 -23 D
 19 -3 D
 21 -19 D
-23 7 D
+P
 FO
 -13 -15 1 13 2 2834 809 SP
 {0.941 1 1 C} FS
@@ -10618,7 +10627,7 @@ FO
 -19 -27 D
 -22 -9 D
 20 -23 D
--14 -29 D
+P
 FO
 2881 824 M
 19 7 D
@@ -10646,7 +10655,7 @@ FO
 -12 -23 D
 19 -3 D
 21 -19 D
-23 7 D
+P
 FO
 -13 -15 1 13 2 2834 809 SP
 {0.941 1 1 C} FS
@@ -10745,7 +10754,7 @@ P S
 -44 -68 D
 -56 -79 D
 -80 -102 D
--16 -19 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -12 4 12 4 2 3163 818 SP
@@ -10787,7 +10796,7 @@ P S
 -7 -6 D
 -53 -54 D
 -69 -64 D
--50 -43 D
+P
 FO
 3745 16 M
 -8 36 D
@@ -10819,7 +10828,7 @@ FO
 -72 -51 D
 -91 -60 D
 -55 -33 D
--19 -11 D
+P
 FO
 3748 0 M
 -3 16 D
@@ -10831,7 +10840,7 @@ FO
 76 66 D
 46 43 D
 0 -355 D
--452 0 D
+P
 FO
 6 -4 1 4 2 452 0 SP
 459 0 M
@@ -10849,7 +10858,7 @@ FO
 90 -55 D
 92 -50 D
 60 -30 D
--621 0 D
+P
 FO
 1321 109 M
 -7 -6 D
@@ -10888,7 +10897,7 @@ FO
 83 -69 D
 53 -41 D
 54 -40 D
-41 -28 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1321 109 M
@@ -10908,7 +10917,7 @@ FO
 116 0 D
 35 44 D
 14 14 D
--79 51 D
+P
 FO
 1321 109 M
 -7 -6 D
@@ -10961,7 +10970,7 @@ S
 85 -102 D
 15 -16 D
 14 -17 D
-36 -38 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1515 217 M
@@ -10981,7 +10990,7 @@ FO
 31 16 D
 -7 8 D
 -8 7 D
--29 31 D
+P
 FO
 1515 217 M
 -8 -11 D
@@ -11026,7 +11035,7 @@ S
 43 -108 D
 39 -89 D
 28 -60 D
-29 -58 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1702 354 M
@@ -11051,7 +11060,7 @@ FO
 55 21 D
 80 24 D
 -24 42 D
--33 65 D
+P
 FO
 1702 354 M
 -26 -7 D
@@ -11095,7 +11104,7 @@ S
 7 0 D
 13 -107 D
 27 -190 D
-23 -142 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1967 363 M
@@ -11118,7 +11127,7 @@ FO
 90 20 D
 116 16 D
 16 1 D
--14 79 D
+P
 FO
 1967 363 M
 -30 -4 D
@@ -11156,7 +11165,7 @@ S
 59 -3 D
 -20 -168 D
 -18 -133 D
--20 -132 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2225 370 M
@@ -11174,7 +11183,7 @@ FO
 71 4 D
 80 1 D
 79 -4 D
-14 85 D
+P
 FO
 2225 370 M
 -68 22 D
@@ -11213,7 +11222,7 @@ S
 -39 -90 D
 -42 -90 D
 -33 -65 D
--24 -47 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2439 257 M
@@ -11233,7 +11242,7 @@ FO
 117 -14 D
 83 -17 D
 23 -6 D
-5 9 D
+P
 FO
 2439 257 M
 -1 4 D
@@ -11275,7 +11284,7 @@ S
 -6 -5 D
 -66 30 D
 -70 25 D
--58 17 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 8 9 1 2757 718 SP
@@ -11319,7 +11328,7 @@ S
 -91 -74 D
 -61 -46 D
 -83 -58 D
--43 -27 D
+P
 FO
 2849 0 M
 -35 44 D
@@ -11349,7 +11358,7 @@ FO
 -17 -9 D
 -66 -36 D
 -63 -31 D
--252 0 D
+P
 FO
 3101 0 M
 46 22 D
@@ -11366,7 +11375,7 @@ FO
 23 -69 D
 8 -36 D
 -29 -16 D
--615 0 D
+P
 FO
 1 -4 2 -12 9 5 10 5 10 6 5 3716 0 SP
 {0.871 0.722 0.529 C} FS
@@ -11375,7 +11384,7 @@ FO
 -7 5 D
 -18 -19 D
 -31 -39 D
-147 0 D
+P
 FO
 1750 0 M
 -86 72 D
@@ -11391,7 +11400,7 @@ FO
 -23 -22 D
 74 -44 D
 24 -14 D
-252 0 D
+P
 FO
 1914 0 M
 -40 58 D
@@ -11410,7 +11419,7 @@ FO
 5 -6 D
 57 -51 D
 74 -62 D
-164 0 D
+P
 FO
 2040 0 M
 -38 176 D
@@ -11423,7 +11432,7 @@ FO
 49 -80 D
 26 -40 D
 47 -69 D
-126 0 D
+P
 FO
 2156 0 M
 33 165 D
@@ -11433,7 +11442,7 @@ FO
 -55 -4 D
 33 -168 D
 26 -116 D
-116 0 D
+P
 FO
 2281 0 M
 29 42 D
@@ -11449,7 +11458,7 @@ FO
 -94 11 D
 -31 -168 D
 -24 -117 D
-125 0 D
+P
 FO
 {0.941 1 1 C} FS
 2445 2 M
@@ -11479,7 +11488,7 @@ FO
 -39 -40 D
 -57 -53 D
 -70 -62 D
--23 -18 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2445 2 M
@@ -11513,7 +11522,7 @@ FO
 -37 -57 D
 -21 -31 D
 162 0 D
-2 2 D
+P
 FO
 2445 2 M
 -69 54 D
@@ -11553,7 +11562,7 @@ S
 -28 -18 D
 -72 -42 D
 -6 -3 D
--243 0 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -2 -2 -2 2 2 2447 0 SP
@@ -11567,7 +11576,7 @@ S
 7 5 D
 30 -33 D
 23 -30 D
--159 0 D
+P
 FO
 [33 17] 0 B
 459 4143 M
@@ -11858,8 +11867,8 @@ S
 -24 -30 D
 -17 -1 D
 S
-290 4180 M
--15 12 D
+290 4179 M
+-15 13 D
 -31 -14 D
 -2 22 D
 S
@@ -12060,6 +12069,11 @@ S
 -8 19 D
 -43 -16 D
 S
+165 4008 M
+20 2 D
+-15 -36 D
+-17 -9 D
+S
 370 3538 M
 -19 1 D
 -17 -38 D
@@ -14512,6 +14526,13 @@ N 0 2867 M -83 0 D S
 N 4200 2867 M 83 0 D S
 N 0 4122 M -83 0 D S
 N 4200 4122 M 83 0 D S
+25 W
+2 setlinecap
+N 0 0 M 0 4200 D S
+N 4200 0 M 0 4200 D S
+N 0 0 M 4200 0 D S
+N 0 4200 M 4200 0 D S
+0 setlinecap
 459 -167 M PSL_font_encode 0 get 0 eq {ISOLatin1+_Encoding /Helvetica /Helvetica PSL_reencode PSL_font_encode 0 1 put} if
 200 F0
 (20�) tc Z
@@ -14526,13 +14547,6 @@ N 4200 4122 M 83 0 D S
 -167 2101 M (0�) mr Z
 -167 2867 M (20�) mr Z
 -167 4122 M (40�) mr Z
-25 W
-2 setlinecap
-N 0 0 M 0 4200 D S
-N 4200 0 M 0 4200 D S
-N 0 0 M 4200 0 D S
-N 0 4200 M 4200 0 D S
-0 setlinecap
 %%EndObject
 0 A
 FQ
@@ -14540,18 +14554,15 @@ O0
 0 0 TM
 
 % PostScript produced by:
-%%GMT: psbasemap -Rk-9000/9000/-9000/9000 -JE130.35/-0.2/3.5i -O -Dk4000+c130.35/-0.2+pthicker
-%%PROJ: aeqd 7.34985032 253.35014968 -81.23885330 80.83885330 -9000000.000 9000000.000 -9000000.000 9000000.000 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.180918
+%@GMT: psbasemap -Rk-9000/9000/-9000/9000 -JE130.35/-0.2/3.5i -O -Dg130.35/-0.2+w4000k+jCM -F+pthicker
+%@PROJ: aeqd 7.34985032 253.35014968 -81.23885330 80.83885330 -9000000.000 9000000.000 -9000000.000 9000000.000 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_2
 0 setlinecap
 0 setlinejoin
 3.32551 setmiterlimit
 25 W
-1633 1633 M
-934 0 D
-0 934 D
--934 0 D
-P S
+O1
+933 933 2100 2100 Sr
 %%EndObject
 %%PageTrailer
 U
diff --git a/doc/scripts/GMT_App_K_2.ps b/doc/scripts/GMT_App_K_2.ps
index 19b567d..2baf7e5 100644
--- a/doc/scripts/GMT_App_K_2.ps
+++ b/doc/scripts/GMT_App_K_2.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
-%%HiResBoundingBox: 0 0 612 792
-%%Title: GMT v5.0.0a (CVS Jun 23 2011 12:48:34) [64-bit] [C4] Document from GMT_pscoast
-%%Creator: GMT
-%%For: remko
+%%HiResBoundingBox: 0 0 612 792             
+%%Title: GMT v5.4.2_r18363M [64-bit] Document from pscoast
+%%Creator: GMT5
+%%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Thu Jun 23 12:52:04 2011
+%%CreationDate: Thu Jun 15 10:59:36 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -60,7 +60,7 @@
 /Si {M MS dup neg 0 exch G 60 R 1.732050808 mul dup 0 D 120 R 0 D MR FO}!
 /Sj {M MS R dup -2 div 2 index -2 div G dup 0 D exch 0 exch D neg 0 D MR FO}!
 /Sn {M MS dup 0 exch G -36 R 1.175570505 mul dup 0 D 3 {-72 R dup 0 D} repeat pop MR FO}!
-/Sp {N 3 -1 roll 0 360 arc F}!
+/Sp {N 3 -1 roll 0 360 arc fs N}!
 /SP {M {D} repeat FO}!
 /Sr {M dup -2 div 2 index -2 div G dup 0 D exch 0 exch D neg 0 D FO}!
 /SR {MS T /BoxR edef /BoxW edef /BoxH edef BoxR BoxW -2 div BoxH -2 div T BoxR 0 M
@@ -111,6 +111,11 @@
   countdictstack PSL_dict_count sub {end} repeat
   PSL_eps_state restore
 }!
+/PSL_transp {
+  /.setopacityalpha where {pop .setblendmode .setopacityalpha}{
+  /pdfmark where {pop [ /BM exch /CA exch dup /ca exch /SetTransparency pdfmark}
+  {pop pop} ifelse} ifelse
+}!
 /ISOLatin1+_Encoding [
 /.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef
 /.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef
@@ -188,6 +193,7 @@
 /PSL_pathtextdict 26 dict def
 /PSL_pathtext
   {PSL_pathtextdict begin
+    /ydepth exch def
     /textheight exch def
     /just exch def
     /offset exch def
@@ -195,7 +201,7 @@
     /pathdist 0 def
     /setdist offset def
     /charcount 0 def
-    /justy just 4 idiv textheight mul 2 div neg def
+    /justy just 4 idiv textheight mul 2 div neg ydepth sub def
     V flattenpath
 	{movetoproc} {linetoproc}
 	{curvetoproc} {closepathproc}
@@ -254,24 +260,54 @@ PSL_pathtextdict begin
     U /setdist setdist charwidth add def
   } def
 end
-/PSL_curved_text_labels
-{ /bits exch def
-  /PSL_clippath bits 1 and 1 eq def
-  /PSL_placetext bits 2 and 0 eq def
-  /PSL_strokeline bits 4 and 4 eq def
-  /PSL_firstcall bits 32 and 32 eq def
-  /PSL_lastcall bits 64 and 64 eq def
-  /PSL_fillbox bits 128 and 128 eq def
-  /PSL_drawbox bits 256 and 256 eq def
+/PSL_set_label_heights
+{
+  /PSL_n_labels_minus_1 PSL_n_labels 1 sub def
+  /PSL_heights PSL_n_labels array def
+  0 1 PSL_n_labels_minus_1
+  { /psl_k exch def
+    /psl_label PSL_label_str psl_k get def
+    PSL_label_font psl_k get cvx exec
+    psl_label sH /PSL_height edef
+    PSL_heights psl_k PSL_height put
+  } for
+} def
+/PSL_curved_path_labels
+{ /psl_bits exch def
+  /PSL_placetext psl_bits 2 and 2 eq def
+  /PSL_clippath psl_bits 4 and 4 eq def
+  /PSL_strokeline false def
+  /PSL_fillbox psl_bits 128 and 128 eq def
+  /PSL_drawbox psl_bits 256 and 256 eq def
+  /PSL_n_paths1 PSL_n_paths 1 sub def
+  /PSL_usebox PSL_fillbox PSL_drawbox or def
+  PSL_clippath {clipsave N clippath} if
+  /psl_k 0 def
+  /psl_p 0 def
+  0 1 PSL_n_paths1
+  { /psl_kk exch def
+    /PSL_n PSL_path_n  psl_kk get def
+    /PSL_m PSL_label_n psl_kk get def
+    /PSL_x PSL_path_x psl_k PSL_n getinterval def
+    /PSL_y PSL_path_y psl_k PSL_n getinterval def
+    /PSL_node_tmp PSL_label_node psl_p PSL_m getinterval def
+    /PSL_angle_tmp PSL_label_angle psl_p PSL_m getinterval def
+    /PSL_str_tmp PSL_label_str psl_p PSL_m getinterval def
+    /PSL_fnt_tmp PSL_label_font psl_p PSL_m getinterval def
+    PSL_curved_path_label
+    /psl_k psl_k PSL_n add def
+    /psl_p psl_p PSL_m add def
+  } for
+  PSL_clippath {PSL_eoclip} if N
+} def
+/PSL_curved_path_label
+{
   /PSL_n1 PSL_n 1 sub def
   /PSL_m1 PSL_m 1 sub def
-  /PSL_usebox PSL_fillbox PSL_drawbox or def
   PSL_CT_calcstringwidth
   PSL_CT_calclinedist
+  PSL_CT_excludelabels
   PSL_CT_addcutpoints
-  PSL_clippath PSL_firstcall and
-  {clipsave N clippath} if
-  PSL_setlinepen
   /PSL_nn1 PSL_nn 1 sub def
   /n 0 def
   /k 0 def
@@ -298,23 +334,20 @@ end
     } if
   } for
   n 0 eq {PSL_CT_drawline} if
-  PSL_lastcall
-  {PSL_clippath
-    {PSL_clip} if N
-  } if
 } def
 /PSL_CT_textline
-{PSL_placetext
-  {PSL_clippath
-    {PSL_CT_clippath} {PSL_CT_placelabel} ifelse
-  } if
-  /n 0 def /k k 1 add def PSL_setlinepen
+{ PSL_fnt k get cvx exec
+  /PSL_height PSL_heights k get def
+  PSL_placetext	{PSL_CT_placelabel} if
+  PSL_clippath {PSL_CT_clippath} if
+  /n 0 def /k k 1 add def
 } def
 /PSL_CT_calcstringwidth
-{ /PSL_width PSL_m array def
+{ /PSL_width_tmp PSL_m array def
   0 1 PSL_m1
   { /i exch def
-    PSL_width i PSL_str i get stringwidth pop put
+    PSL_fnt_tmp i get cvx exec
+    PSL_width_tmp i PSL_str_tmp i get stringwidth pop put
   } for
 } def
 /PSL_CT_calclinedist
@@ -335,6 +368,33 @@ end
     PSL_dist i dist put
   } for
 } def
+/PSL_CT_excludelabels
+{ /k 0 def
+  /PSL_width PSL_m array def
+  /PSL_angle PSL_m array def
+  /PSL_node PSL_m array def
+  /PSL_str PSL_m array def
+  /PSL_fnt PSL_m array def
+  /lastdist PSL_dist PSL_n1 get def
+  0 1 PSL_m1
+  { /i exch def
+    /dist PSL_dist PSL_node_tmp i get get def
+    /halfwidth PSL_width_tmp i get 2 div PSL_gap_x add def
+    /L_dist dist halfwidth sub def
+    /R_dist dist halfwidth add def
+    L_dist 0 gt R_dist lastdist lt and
+    {
+      PSL_width k PSL_width_tmp i get put
+      PSL_node k PSL_node_tmp i get put
+      PSL_angle k PSL_angle_tmp i get put
+      PSL_str k PSL_str_tmp i get put
+      PSL_fnt k PSL_fnt_tmp i get put
+      /k k 1 add def
+    } if
+  } for
+  /PSL_m k def
+  /PSL_m1 PSL_m 1 sub def
+} def
 /PSL_CT_addcutpoints
 { /k 0 def
   /PSL_nc PSL_m 2 mul 1 add def
@@ -398,14 +458,18 @@ end
 } def
 /PSL_CT_placelabel
 {
+  /PSL_just PSL_label_justify k get def
+  /PSL_height PSL_heights k get def
+  /psl_label PSL_str k get def
+  /psl_depth psl_label sd def
   PSL_usebox
   {PSL_CT_clippath
     PSL_fillbox
     {V PSL_setboxrgb fill U} if
     PSL_drawbox
-    {PSL_setboxpen S} if N
+    {V PSL_setboxpen S U} if N
   } if
-  PSL_settxtrgb PSL_CT_placeline PSL_str k get PSL_gap_x PSL_just PSL_height PSL_pathtext
+  PSL_CT_placeline psl_label PSL_gap_x PSL_just PSL_height psl_depth PSL_pathtext
 } def
 /PSL_CT_clippath
 {
@@ -429,7 +493,7 @@ end
       /dx x x1 sub def
       /dy y y1 sub def
     } ifelse
-    dx 0.0 ne dy 0.0 ne and
+    dx 0.0 eq dy 0.0 eq and not
     { /angle dy dx atan 90 add def} if
     /sina angle sin def
     /cosa angle cos def
@@ -450,7 +514,7 @@ end
 {
   /str 20 string def
   PSL_strokeline
-  {PSL_CT_placeline PSL_setlinepen S} if
+  {PSL_CT_placeline S} if
   /PSL_seg PSL_seg 1 add def
   /n 1 def
 } def
@@ -458,93 +522,121 @@ end
 {PSL_xp 0 get PSL_yp 0 get M
   1 1 j { /ii exch def PSL_xp ii get PSL_yp ii get L} for
 } def
-/PSL_straight_text_labels
+/PSL_draw_path_lines
 {
-  /bits exch def
-  /PSL_clippath bits 1 and 0 eq def
-  /PSL_rounded bits 16 and 16 eq def
-  /PSL_fillbox bits 128 and 128 eq def
-  /PSL_drawbox bits 256 and 256 eq def
-  /PSL_m1 PSL_m 1 sub def
-  /PSL_justx PSL_just 4 mod 1 sub 2 div neg def
-  /PSL_justy PSL_just 4 idiv PSL_height mul 2 div neg def
+  /PSL_n_paths1 PSL_n_paths 1 sub def
+  V
+  /psl_start 0 def
+  0 1 PSL_n_paths1
+  { /psl_k exch def
+    /PSL_n PSL_path_n psl_k get def
+    /PSL_n1 PSL_n 1 sub def
+    PSL_path_pen psl_k get cvx exec
+    N
+    PSL_path_x psl_start get PSL_path_y psl_start get M
+    1 1 PSL_n1
+    { /psl_i exch def
+      /psl_kk psl_i psl_start add def
+      PSL_path_x psl_kk get PSL_path_y psl_kk get L
+    } for
+    /psl_xclose PSL_path_x psl_kk get PSL_path_x psl_start get sub def
+    /psl_yclose PSL_path_y psl_kk get PSL_path_y psl_start get sub def
+    psl_xclose 0 eq psl_yclose 0 eq and { P } if
+    S
+    /psl_start psl_start PSL_n add def
+  } for
+  U
+} def
+/PSL_straight_path_labels
+{
+  /psl_bits exch def
+  /PSL_placetext psl_bits 2 and 2 eq def
+  /PSL_rounded psl_bits 32 and 32 eq def
+  /PSL_fillbox psl_bits 128 and 128 eq def
+  /PSL_drawbox psl_bits 256 and 256 eq def
+  /PSL_n_labels_minus_1 PSL_n_labels 1 sub def
   /PSL_usebox PSL_fillbox PSL_drawbox or def
-  PSL_clippath
-  {PSL_ST_clippath}
-  {PSL_usebox {PSL_ST_clippath} if
-    PSL_ST_placelabel
-  } ifelse
+  0 1 PSL_n_labels_minus_1
+  { /psl_k exch def
+    PSL_ST_prepare_text
+    PSL_usebox
+    {  PSL_rounded
+        {PSL_ST_textbox_round}
+        {PSL_ST_textbox_rect}
+      ifelse
+      PSL_fillbox {V PSL_setboxrgb fill U} if
+      PSL_drawbox {V PSL_setboxpen S U} if
+      N
+    } if
+    PSL_placetext {PSL_ST_place_label} if
+  } for
 } def
-/PSL_ST_placelabel
-{PSL_settxtrgb
-  0 1 PSL_m1
-  { /k exch def
-    /xp PSL_txt_x k get def
-    /yp PSL_txt_y k get def
-    V PSL_txt_x k get PSL_txt_y k get T
-    PSL_angle k get R
-    /BoxW PSL_str k get stringwidth pop def
-    BoxW PSL_justx mul PSL_justy M
-    PSL_str k get show
-    U
+/PSL_straight_path_clip
+{
+  /psl_bits exch def
+  /PSL_rounded psl_bits 32 and 32 eq def
+  /PSL_n_labels_minus_1 PSL_n_labels 1 sub def
+  N clipsave clippath
+  0 1 PSL_n_labels_minus_1
+  { /psl_k exch def
+    PSL_ST_prepare_text
+    PSL_rounded
+      {PSL_ST_textbox_round}
+      {PSL_ST_textbox_rect}
+    ifelse
   } for
+  PSL_eoclip N
 } def
-/PSL_ST_clippath
-{N
-  PSL_usebox not {clipsave clippath} if
-  PSL_rounded {PSL_ST_clippath_round} {PSL_ST_clippath_rect} ifelse
-  PSL_usebox
-  {PSL_fillbox
-    {V PSL_setboxrgb fill U} if
-    PSL_drawbox
-    {PSL_setboxpen S} if N
-  }
-  {PSL_clip
-  } ifelse
-  N
+/PSL_ST_prepare_text
+{
+  /psl_xp PSL_txt_x psl_k get def
+  /psl_yp PSL_txt_y psl_k get def
+  /psl_label PSL_label_str psl_k get def
+  PSL_label_font psl_k get cvx exec
+  /PSL_height PSL_heights psl_k get def
+  /psl_boxH PSL_height PSL_gap_y 2 mul add def
+  /PSL_just PSL_label_justify psl_k get def
+  /PSL_justx PSL_just 4 mod 1 sub 2 div neg def
+  /PSL_justy PSL_just 4 idiv 2 div neg def
+  /psl_SW psl_label stringwidth pop def
+  /psl_boxW psl_SW PSL_gap_x 2 mul add def
+  /psl_x0 psl_SW PSL_justx mul def
+  /psl_y0 PSL_justy PSL_height mul def
+  /psl_angle PSL_label_angle psl_k get def
 } def
-/PSL_ST_clippath_rect
+/PSL_ST_textbox_rect
 {
-  /BoxH PSL_height PSL_gap_y 2 mul add def
-  /DelY BoxH BoxH 0 3 array astore def
-  0 1 PSL_m1
-  { /k exch def
-    /xp PSL_txt_x k get def
-    /yp PSL_txt_y k get def
-    /MAT PSL_angle k get matrix R def
-    /BoxW PSL_str k get stringwidth pop PSL_gap_x 2 mul add def
-    /x0 0 BoxW PSL_justx mul add def
-    /y0 0 PSL_justy add PSL_gap_y sub def
-    /DelX 0 BoxW BoxW 3 array astore def
-    x0 y0 MAT transform
-    /dy exch def /dx exch def
-    xp dx add yp dy add M
-    0 1 2
-    {
-      /ii exch def
-      x0 DelX ii get add y0 DelY ii get add MAT transform
-      /dy exch def /dx exch def
-      xp dx add yp dy add L
-    } for P
-  } for
+  psl_xp psl_yp T psl_angle R psl_x0 psl_y0 T
+  PSL_gap_x neg PSL_gap_y neg M
+  0 psl_boxH D psl_boxW 0 D 0 psl_boxH neg D P
+  psl_x0 neg psl_y0 neg T psl_angle neg R psl_xp neg psl_yp neg T
 } def
-/PSL_ST_clippath_round
+/PSL_ST_textbox_round
 {
-  /PSL_justy2 PSL_just 4 idiv 2 div neg def
-  /BoxR PSL_gap_x PSL_gap_y lt {PSL_gap_x} {PSL_gap_y} ifelse def
-  /BoxH PSL_height PSL_gap_y 2 mul add def
-  /y0 PSL_height PSL_gap_y 2 mul add PSL_justy2 mul def
-  0 1 PSL_m1
-  { /k exch def
-    /xp PSL_txt_x k get def
-    /yp PSL_txt_y k get def
-    /BoxW PSL_str k get stringwidth pop PSL_gap_x 2 mul add def
-    /x0 BoxW PSL_justx mul def
-    xp yp T PSL_angle k get R x0 y0 T
-    BoxR 0 M
-    BoxW 0 BoxW BoxH BoxR arct BoxW BoxH 0 BoxH BoxR arct 0 BoxH 0 0 BoxR arct 0 0 BoxW 0 BoxR arct P
-    x0 neg y0 neg T PSL_angle k get neg R xp neg yp neg T
-  } for
+  /psl_BoxR PSL_gap_x PSL_gap_y lt {PSL_gap_x} {PSL_gap_y} ifelse def
+  /psl_xd PSL_gap_x psl_BoxR sub def
+  /psl_yd PSL_gap_y psl_BoxR sub def
+  /psl_xL PSL_gap_x neg def
+  /psl_yB PSL_gap_y neg def
+  /psl_yT psl_boxH psl_yB add def
+  /psl_H2 PSL_height psl_yd 2 mul add def
+  /psl_W2 psl_SW psl_xd 2 mul add def
+  /psl_xR psl_xL psl_boxW add def
+  /psl_x0 psl_SW PSL_justx mul def
+  psl_xp psl_yp T psl_angle R psl_x0 psl_y0 T
+  psl_xL psl_yd M
+  psl_xL psl_yT psl_xR psl_yT psl_BoxR arct psl_W2 0 D
+  psl_xR psl_yT psl_xR psl_yB psl_BoxR arct 0 psl_H2 neg D
+  psl_xR psl_yB psl_xL psl_yB psl_BoxR arct psl_W2 neg 0 D
+  psl_xL psl_yB psl_xL psl_yd psl_BoxR arct P
+  psl_x0 neg psl_y0 neg T psl_angle neg R psl_xp neg psl_yp neg T
+} def
+/PSL_ST_place_label
+{
+    V psl_xp psl_yp T psl_angle R
+    psl_SW PSL_justx mul psl_y0 M
+    psl_label dup sd neg 0 exch G show
+    U
 } def
 /PSL_nclip 0 def
 /PSL_clip {clip /PSL_nclip PSL_nclip 1 add def} def
@@ -571,9 +663,9 @@ O0
 1200 1200 TM
 
 % PostScript produced by:
-%%GMT:  pscoast -R111.741088/-17.870195/148.918266/17.491062r -JE130.35/-0.2/3.5i -P -Dl -A100 -Gburlywood -Sazure -Wthinnest -N1/thinnest,- \
-%%GMT:+ -B10g5WSne -K
-%%PROJ: aeqd 111.64108800 149.05891174 -18.28640701 17.88640695 -2000000.044 2000000.016 -1999999.962 1999999.954 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371008.771 +b=6371008.771415
+%@GMT: pscoast -Rk-2000/2000/-2000/2000 -JE130.35/-0.2/3.5i -P -Dl -A100 -Gburlywood -Sazure -Wthinnest -N1/thinnest,- -B10g5 -BWSne -K
+%@PROJ: aeqd 111.64108343 149.05891657 -18.28641185 17.88641185 -2000000.000 2000000.000 -2000000.000 2000000.000 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.180918 +units=m +no_defs
+%%BeginObject PSL_Layer_1
 0 setlinecap
 0 setlinejoin
 3.32551 setmiterlimit
@@ -652,7 +744,7 @@ O0
 -7 -15 D
 7 6 D
 -4 -201 D
--115 1 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 5 -5 -4 8 13 5 8 -10 -11 -15 -19 11 6 905 3363 SP
@@ -698,7 +790,7 @@ FO
 0 -19 D
 -5 12 D
 -13 -15 D
-41 -1 D
+P
 FO
 1 7 0 8 7 6 -7 -15 8 3 9 -22 -5 3 -2 -6 -11 9 9 909 3520 SP
 1 7 0 7 0 7 3 -1 8 -23 6 6 -4 -21 -14 11 8 910 3560 SP
@@ -714,7 +806,7 @@ FO
 10 -26 D
 -9 -9 D
 12 -18 D
-4 108 D
+P
 FO
 5 -5 -4 8 13 5 8 -10 -11 -15 -19 11 6 905 3363 SP
 5 14 14 -10 2 874 3469 SP
@@ -989,7 +1081,7 @@ P S
 6 175 D
 1130 0 D
 0 -909 D
--453 1 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1483 3441 M
@@ -1026,7 +1118,7 @@ FO
 -6 -16 D
 -21 -11 D
 21 -10 D
-0 -19 D
+P
 FO
 1135 3346 M
 25 23 D
@@ -1059,7 +1151,7 @@ FO
 -16 -32 D
 6 -12 D
 -8 -25 D
-10 -1 D
+P
 FO
 1414 3410 M
 -4 -9 D
@@ -1088,7 +1180,7 @@ FO
 -8 3 D
 1 -11 D
 -19 25 D
-10 -66 D
+P
 FO
 999 3648 M
 3 -32 D
@@ -1114,7 +1206,7 @@ FO
 17 0 D
 7 -23 D
 14 -4 D
-12 -23 D
+P
 FO
 1369 3504 M
 8 -9 D
@@ -1137,7 +1229,7 @@ FO
 -4 -6 D
 25 -4 D
 6 -11 D
-1 0 D
+P
 FO
 1 21 8 3 0 11 10 -6 8 9 19 -17 -13 -15 0 -31 -9 -5 -8 12 10 1405 3761 SP
 -2 5 -4 -5 11 -9 -10 -15 0 -19 -12 -8 -6 5 12 53 8 6 9 1139 3544 SP
@@ -1285,7 +1377,7 @@ FO
 -20 -4 D
 -8 16 D
 -9 4 D
--4 -108 D
+P
 FO
 0 -7 -1 -7 0 -7 -19 14 -6 -12 -13 19 0 9 8 -1 16 -4 4 8 11 -5 11 909 3532 SP
 -1 -7 0 -7 -8 13 9 9 4 908 3498 SP
@@ -1323,7 +1415,7 @@ FO
 -6 -16 D
 -21 -11 D
 21 -10 D
-0 -19 D
+P
 FO
 1135 3346 M
 25 23 D
@@ -1356,7 +1448,7 @@ FO
 -16 -32 D
 6 -12 D
 -8 -25 D
-10 -1 D
+P
 FO
 1414 3410 M
 -4 -9 D
@@ -1385,7 +1477,7 @@ FO
 -8 3 D
 1 -11 D
 -19 25 D
-10 -66 D
+P
 FO
 999 3648 M
 3 -32 D
@@ -1411,7 +1503,7 @@ FO
 17 0 D
 7 -23 D
 14 -4 D
-12 -23 D
+P
 FO
 1369 3504 M
 8 -9 D
@@ -1434,7 +1526,7 @@ FO
 -4 -6 D
 25 -4 D
 6 -11 D
-1 0 D
+P
 FO
 1 21 8 3 0 11 10 -6 8 9 19 -17 -13 -15 0 -31 -9 -5 -8 12 10 1405 3761 SP
 -2 5 -4 -5 11 -9 -10 -15 0 -19 -12 -8 -6 5 12 53 8 6 9 1139 3544 SP
@@ -1779,6 +1871,15 @@ S
 13 -17 D
 -1 -17 D
 P S
+909 3532 M
+11 -5 D
+4 8 D
+24 -5 D
+0 9 D
+-13 19 D
+-6 -12 D
+-19 14 D
+S
 1322 3293 M
 17 27 D
 30 18 D
@@ -1790,15 +1891,6 @@ P S
 -31 -68 D
 -39 -58 D
 S
-909 3532 M
-11 -5 D
-4 8 D
-24 -5 D
-0 9 D
--13 19 D
--6 -12 D
--19 14 D
-S
 1430 3293 M
 -1 4 D
 -17 5 D
@@ -1907,7 +1999,7 @@ P S
 0 909 D
 1131 0 D
 15 -492 D
-9 -412 D
+P
 FO
 4200 3310 M
 -438 -7 D
@@ -1917,32 +2009,31 @@ FO
 -16 524 D
 -1 30 D
 1009 0 D
-0 -890 D
+P
 FO
 {0.871 0.722 0.529 C} FS
--9 -21 -11 7 18 21 6 21 14 -24 5 3735 3709 SP
-6 -11 -6 -10 -4 12 3 3848 3895 SP
--13 -20 7 23 7 -3 3 3849 3909 SP
--9 -21 -11 7 18 21 6 21 14 -24 5 3735 3709 SP
-6 -11 -6 -10 -4 12 3 3848 3895 SP
--13 -20 7 23 7 -3 3 3849 3909 SP
-3735 3709 M
-14 -24 D
-6 21 D
-18 21 D
--11 7 D
+2 8 28 34 8 -23 -18 -4 -9 -21 5 3762 3734 SP
+10 6 -1 -14 -10 -8 3 3862 3929 SP
+6 -11 -6 -10 2 3844 3907 SP
+2 8 28 34 8 -23 -18 -4 -9 -21 5 3762 3734 SP
+10 6 -1 -14 -10 -8 3 3862 3929 SP
+6 -11 -6 -10 2 3844 3907 SP
+3762 3734 M
 -9 -21 D
+-18 -4 D
+8 -23 D
+28 34 D
+2 8 D
 P S
-3848 3895 M
--4 12 D
+3862 3929 M
+-10 -8 D
+-1 -14 D
+10 6 D
+P S
+3844 3907 M
 -6 -10 D
 6 -11 D
 P S
-3849 3909 M
-7 -3 D
-7 23 D
--13 -20 D
-P S
 {0.941 1 1 C} FS
 855 2123 M
 -2 3 D
@@ -2146,7 +2237,7 @@ P S
 -15 -1 D
 12 -15 D
 -3 -11 D
--20 0 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -4 -14 -12 -3 -2 21 10 11 4 551 3043 SP
@@ -2322,7 +2413,7 @@ FO
 -53 -19 D
 -27 -5 D
 0 -351 D
-601 0 D
+P
 FO
 4 0 -5 -3 -2 3 3 855 2123 SP
 0 10 0 10 0 10 0 10 0 10 6 0 5 0 6 0 -3 -11 12 -15 -15 -1 7 -15 -7 -15 -11 -3 14 892 2183 SP
@@ -2349,7 +2440,7 @@ FO
 6 -8 D
 -2 24 D
 30 8 D
--41 1 D
+P
 FO
 -4 -14 -12 -3 -2 21 10 11 4 551 3043 SP
 -1 -12 -25 -7 2 20 21 10 3 -10 5 555 2969 SP
@@ -2783,7 +2874,7 @@ S
 -4 14 D
 453 -1 D
 -1 -1168 D
--77 0 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1477 2808 M
@@ -2919,7 +3010,7 @@ FO
 10 -3 D
 1 -45 D
 31 -31 D
-78 -31 D
+P
 FO
 -14 -22 12 -14 -7 -24 -13 6 -7 26 14 13 4 19 7 1682 2590 SP
 -12 5 -2 13 -11 6 0 16 16 -3 2 -22 13 -8 7 1521 2553 SP
@@ -2999,7 +3090,7 @@ FO
 1 -23 D
 -6 -2 D
 0 -60 D
-8 0 D
+P
 FO
 1813 2123 M
 -1 3 D
@@ -3039,7 +3130,7 @@ FO
 11 -23 D
 13 -5 D
 -5 -37 D
-24 0 D
+P
 FO
 2 0 5 -5 -8 5 3 1982 2123 SP
 -3 0 -4 14 6 5 -11 3 6 7 13 -4 6 -7 -10 -18 8 1601 3292 SP
@@ -3059,7 +3150,7 @@ FO
 13 24 D
 -22 29 D
 12 53 D
--56 0 D
+P
 FO
 0 -7 -21 -13 -8 8 3 18 12 -13 3 10 6 -4 5 7 8 895 2725 SP
 1477 2808 M
@@ -3195,7 +3286,7 @@ FO
 10 -3 D
 1 -45 D
 31 -31 D
-78 -31 D
+P
 FO
 -14 -22 12 -14 -7 -24 -13 6 -7 26 14 13 4 19 7 1682 2590 SP
 -12 5 -2 13 -11 6 0 16 16 -3 2 -22 13 -8 7 1521 2553 SP
@@ -3609,7 +3700,7 @@ P S
 5 -287 D
 4 -337 D
 2 -312 D
-1 -237 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 5 34 6 3 9 -14 3 2578 2993 SP
@@ -3627,7 +3718,7 @@ P S
 -4 175 D
 604 7 D
 381 7 D
-0 -1187 D
+P
 FO
 0 1131 M
 49 -10 D
@@ -3784,8 +3875,8 @@ FO
 -13 -22 D
 6 -17 D
 -6 -12 D
--15 -39 D
-11 -32 D
+-14 -39 D
+10 -32 D
 8 7 D
 6 -13 D
 6 4 D
@@ -3811,7 +3902,7 @@ FO
 32 -26 D
 -429 -5 D
 -468 -9 D
-0 196 D
+P
 FO
 7 0 7 0 -11 13 -7 -1 -2 -12 5 875 2123 SP
 {0.871 0.722 0.529 C} FS
@@ -3866,7 +3957,7 @@ FO
 -11 -7 D
 0 -16 D
 32 -9 D
-0 -1 D
+P
 FO
 6 -35 -26 -23 -23 -3 -30 14 5 26 21 30 -11 9 16 4 -5 -10 7 0 5 14 1 -6 35 -6 7 7 20 -11 -1 -11 -18 2 17 438 1091 SP
 -21 -14 -31 12 -31 27 12 13 30 10 19 19 -5 11 13 1 -3 -21 28 -24 38 -7 18 -34 -66 7 13 320 1157 SP
@@ -3896,7 +3987,7 @@ FO
 23 -4 D
 32 -26 D
 7 0 D
--1 76 D
+P
 FO
 0 9 0 9 0 9 0 9 8 4 15 -15 -6 -37 -17 3 8 901 1131 SP
 875 2123 M
@@ -3933,8 +4024,8 @@ FO
 -13 -22 D
 6 -17 D
 -6 -12 D
--15 -39 D
-11 -32 D
+-14 -39 D
+10 -32 D
 8 7 D
 6 -13 D
 6 4 D
@@ -3945,7 +4036,7 @@ FO
 -2 185 D
 -2 308 D
 0 160 D
--17 0 D
+P
 FO
 0 1725 M
 22 -11 D
@@ -4038,7 +4129,7 @@ FO
 12 23 D
 -1 3 D
 -601 0 D
-0 -398 D
+P
 FO
 0 1131 M
 49 -10 D
@@ -4074,7 +4165,7 @@ FO
 -12 21 D
 -1 -8 D
 -31 0 D
-0 -172 D
+P
 FO
 555 1051 M
 16 1 D
@@ -4127,7 +4218,7 @@ FO
 -11 -7 D
 0 -16 D
 32 -9 D
-0 -1 D
+P
 FO
 6 -35 -26 -23 -23 -3 -30 14 5 26 21 30 -11 9 16 4 -5 -10 7 0 5 14 1 -6 35 -6 7 7 20 -11 -1 -11 -18 2 17 438 1091 SP
 -21 -14 -31 12 -31 27 12 13 30 10 19 19 -5 11 13 1 -3 -21 28 -24 38 -7 18 -34 -66 7 13 320 1157 SP
@@ -4354,8 +4445,8 @@ P S
 -13 -22 D
 6 -17 D
 -6 -12 D
--15 -39 D
-11 -32 D
+-14 -39 D
+10 -32 D
 8 7 D
 6 -13 D
 6 4 D
@@ -4734,7 +4825,7 @@ P S
 45 -4 D
 11 -18 D
 1 -761 D
--623 -2 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 1219 1538 M
@@ -4763,7 +4854,7 @@ FO
 -19 21 D
 4 7 D
 -25 -19 D
--9 -55 D
+P
 FO
 13 18 1 11 -8 4 6 18 9 0 -2 -21 8 17 10 -8 12 6 -5 -32 -9 -5 10 -28 -6 -11 -35 -15 -7 3 -4 38 7 4 17 1210 1538 SP
 14 -5 -7 -6 -18 -1 7 13 -6 2 -3 -10 -7 1 4 -9 -10 4 -11 -10 -16 9 34 19 9 20 6 -7 12 8 22 -7 16 1272 1125 SP
@@ -4818,7 +4909,7 @@ FO
 -16 3 D
 -10 13 D
 1 -76 D
-93 1 D
+P
 FO
 1437 954 M
 43 41 D
@@ -4844,7 +4935,7 @@ FO
 0 -26 D
 -9 -7 D
 -1 -10 D
-120 1 D
+P
 FO
 2059 1774 M
 -55 26 D
@@ -4875,7 +4966,7 @@ FO
 -1 20 D
 45 -4 D
 11 -18 D
-0 57 D
+P
 FO
 0 6 0 7 0 6 33 -15 -33 -11 5 2059 1915 SP
 -1 0 -27 24 30 -24 3 1979 2123 SP
@@ -4994,7 +5085,7 @@ FO
 5 9 D
 -8 0 D
 1 -444 D
-3 -209 D
+P
 FO
 901 1086 M
 16 8 D
@@ -5040,7 +5131,7 @@ FO
 -9 -16 D
 -4 7 D
 -9 -9 D
-0 -45 D
+P
 FO
 1219 1538 M
 -5 -20 D
@@ -5068,7 +5159,7 @@ FO
 -19 21 D
 4 7 D
 -25 -19 D
--9 -55 D
+P
 FO
 13 18 1 11 -8 4 6 18 9 0 -2 -21 8 17 10 -8 12 6 -5 -32 -9 -5 10 -28 -6 -11 -35 -15 -7 3 -4 38 7 4 17 1210 1538 SP
 14 -5 -7 -6 -18 -1 7 13 -6 2 -3 -10 -7 1 4 -9 -10 4 -11 -10 -16 9 34 19 9 20 6 -7 12 8 22 -7 16 1272 1125 SP
@@ -5999,7 +6090,7 @@ P S
 -4 -210 D
 -533 4 D
 -622 2 D
--1 761 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2559 1422 M
@@ -6047,7 +6138,7 @@ FO
 -4 -6 D
 24 -9 D
 -14 -13 D
-2 -12 D
+P
 FO
 2176 2083 M
 12 4 D
@@ -6080,7 +6171,7 @@ FO
 -5 4 D
 9 0 D
 12 -20 D
-24 -11 D
+P
 FO
 2191 1189 M
 11 -1 D
@@ -6101,7 +6192,7 @@ FO
 -8 -21 D
 9 -7 D
 -15 3 D
-3 -35 D
+P
 FO
 8 -7 9 -41 11 14 20 -19 -8 17 21 -29 -28 8 -6 -5 -12 10 -14 -4 -36 41 -23 4 27 14 18 -7 14 2759 1988 SP
 -22 -40 -11 -2 7 -3 -12 -26 -27 -29 -59 -18 -48 26 8 28 11 6 -3 19 28 12 25 24 58 4 13 2987 1140 SP
@@ -6385,7 +6476,7 @@ FO
 43 -3 D
 7 7 D
 5 414 D
-2 256 D
+P
 FO
 0 -7 0 -6 0 -7 -41 -13 -12 19 14 10 -16 11 21 -1 -1 0 21 6 14 -6 11 2059 1889 SP
 0 -9 0 -10 0 -9 0 -9 0 -10 -2 1 -37 -4 -30 21 -8 30 -20 6 -2 48 98 -44 1 -1 13 2059 1717 SP
@@ -6434,7 +6525,7 @@ FO
 -4 -6 D
 24 -9 D
 -14 -13 D
-2 -12 D
+P
 FO
 2176 2083 M
 12 4 D
@@ -6467,7 +6558,7 @@ FO
 -5 4 D
 9 0 D
 12 -20 D
-24 -11 D
+P
 FO
 2191 1189 M
 11 -1 D
@@ -6488,7 +6579,7 @@ FO
 -8 -21 D
 9 -7 D
 -15 3 D
-3 -35 D
+P
 FO
 8 -7 9 -41 11 14 20 -19 -8 17 21 -29 -28 8 -6 -5 -12 10 -14 -4 -36 41 -23 4 27 14 18 -7 14 2759 1988 SP
 -22 -40 -11 -2 7 -3 -12 -26 -27 -29 -59 -18 -48 26 8 28 11 6 -3 19 28 12 25 24 58 4 13 2987 1140 SP
@@ -7127,7 +7218,7 @@ P S
 -353 6 D
 -372 5 D
 -158 2 D
-4 210 D
+P
 FO
 0 3 -4 -10 4 4 3 3219 1180 SP
 4200 1473 M
@@ -7187,7 +7278,7 @@ FO
 -14 -2 D
 1 273 D
 973 0 D
-0 -650 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -5 8 14 -1 5 8 6 -12 -13 -4 6 -14 -9 -4 -55 1 -31 12 1 -12 -8 6 2 7 17 0 10 15 22 -1 15 4043 1862 SP
@@ -7345,7 +7436,7 @@ FO
 6 5 D
 39 -60 D
 102 -2 D
-0 143 D
+P
 FO
 4 -1 5 -22 -9 -11 3 4200 1473 SP
 -5 8 14 -1 5 8 6 -12 -13 -4 6 -14 -9 -4 -55 1 -31 12 1 -12 -8 6 2 7 17 0 10 15 22 -1 15 4043 1862 SP
@@ -7581,7 +7672,7 @@ P S
 15 -562 D
 14 -382 D
 -933 0 D
-0 935 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -3 0 0 3 0 3 0 -1 7 -5 5 897 949 SP
@@ -7905,7 +7996,7 @@ S
 -267 -1 D
 -11 295 D
 -11 374 D
--7 274 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 5 -17 -27 -9 -38 -34 -5 4 9 14 -9 3 1 8 18 7 3 10 26 4 10 1252 852 SP
@@ -7934,7 +8025,7 @@ FO
 -10 -9 D
 -7 4 D
 0 -27 D
--8 -13 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2060 544 M
@@ -8234,7 +8325,7 @@ FO
 0 -15 D
 -2 -1 D
 863 0 D
--1 544 D
+P
 FO
 1317 953 M
 0 -3 D
@@ -8246,7 +8337,7 @@ FO
 14 14 D
 40 4 D
 16 15 D
--120 -1 D
+P
 FO
 0 -3 -10 0 -11 0 -10 -1 -10 0 -10 0 -11 0 -10 0 -10 0 -11 0 -3 3 11 18 32 17 33 -9 20 -22 15 904 943 SP
 5 -17 -27 -9 -38 -34 -5 4 9 14 -9 3 1 8 18 7 3 10 26 4 10 1252 852 SP
@@ -8275,7 +8366,7 @@ FO
 -10 -9 D
 -7 4 D
 0 -27 D
--8 -13 D
+P
 FO
 2060 544 M
 -10 1 D
@@ -8847,7 +8938,7 @@ P S
 584 -5 D
 -8 -358 D
 -15 -494 D
--2 -50 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 2175 798 M
@@ -8877,7 +8968,7 @@ FO
 -5 -11 D
 -8 3 D
 1 -22 D
--5 18 D
+P
 FO
 2061 748 M
 68 -6 D
@@ -8901,7 +8992,7 @@ FO
 -5 -6 D
 -9 5 D
 1 -12 D
--7 -1 D
+P
 FO
 2794 486 M
 2 -15 D
@@ -8924,7 +9015,7 @@ FO
 -18 -4 D
 6 -12 D
 -25 -4 D
-1 -20 D
+P
 FO
 -19 -19 -27 -8 -19 15 14 4 4 -10 12 23 8 -5 8 12 19 -11 9 3097 173 SP
 -4 -11 -19 -2 -18 -21 -4 6 24 22 5 2719 720 SP
@@ -9134,7 +9225,7 @@ FO
 -27 -22 D
 1 -544 D
 1127 0 D
-2 48 D
+P
 FO
 2175 798 M
 -12 5 D
@@ -9163,7 +9254,7 @@ FO
 -5 -11 D
 -8 3 D
 1 -22 D
--5 18 D
+P
 FO
 2061 748 M
 68 -6 D
@@ -9187,7 +9278,7 @@ FO
 -5 -6 D
 -9 5 D
 1 -12 D
--7 -1 D
+P
 FO
 2794 486 M
 2 -15 D
@@ -9210,7 +9301,7 @@ FO
 -18 -4 D
 6 -12 D
 -25 -4 D
-1 -20 D
+P
 FO
 -19 -19 -27 -8 -19 15 14 4 4 -10 12 23 8 -5 8 12 19 -11 9 3097 173 SP
 -4 -11 -19 -2 -18 -21 -4 6 24 22 5 2719 720 SP
@@ -9672,7 +9763,7 @@ P S
 26 -14 D
 16 0 D
 0 -911 D
--328 0 D
+P
 FO
 {0.871 0.722 0.529 C} FS
 -11 -10 -8 13 11 8 8 -10 4 3457 866 SP
@@ -9785,7 +9876,7 @@ FO
 -63 -12 D
 -6 4 D
 -2 -48 D
-684 0 D
+P
 FO
 16 0 26 -14 -8 -9 29 17 15 -7 -4 -8 19 8 9 -13 -12 0 -13 0 -12 0 -12 1 -12 0 -12 0 -12 0 -12 1 -5 0 17 4200 935 SP
 -11 -10 -8 13 11 8 8 -10 4 3457 866 SP
@@ -9986,7 +10077,9 @@ S
 12 -4 D
 -5 -260 D
 S
+25 W
 [] 0 B
+4 W
 368 0 M
 -17 330 D
 -12 273 D
@@ -10033,12 +10126,12 @@ S
 1 2113 D
 S
 2624 0 M
-5 306 D
-6 458 D
-4 433 D
-2 332 D
-2 577 D
--1 615 D
+7 444 D
+5 414 D
+3 351 D
+2 308 D
+2 595 D
+-1 609 D
 -4 565 D
 -6 520 D
 -6 394 D
@@ -10070,16 +10163,16 @@ S
 -6 405 D
 -11 431 D
 -15 411 D
--18 387 D
--3 42 D
+-19 406 D
+-2 23 D
 S
 0 341 M
 372 10 D
 272 6 D
 336 6 D
 297 4 D
-329 3 D
-443 2 D
+323 3 D
+449 2 D
 519 -1 D
 501 -5 D
 525 -9 D
@@ -10131,29 +10224,36 @@ S
 S
 0 3904 M
 314 -8 D
-374 -8 D
-310 -5 D
-323 -4 D
-374 -3 D
-760 -1 D
+323 -7 D
+354 -6 D
+336 -4 D
+361 -3 D
+767 -1 D
 583 5 D
 563 9 D
 551 13 D
 48 2 D
 S
 8 W
-933 0 M 3 -83 D S
-930 4200 M 3 83 D S
-2061 0 M 0 -83 D S
-2060 4200 M 1 83 D S
-3188 0 M -3 -83 D S
-3191 4200 M -3 83 D S
-0 935 M -83 -1 D S
-4200 935 M 83 -1 D S
-0 2123 M -83 0 D S
-4200 2123 M 83 0 D S
-0 3310 M -83 1 D S
-4200 3310 M 83 1 D S
+N 933 0 M 3 -83 D S
+N 930 4200 M 3 83 D S
+N 2061 0 M 0 -83 D S
+N 2060 4200 M 1 83 D S
+N 3188 0 M -3 -83 D S
+N 3191 4200 M -3 83 D S
+N 0 935 M -83 -1 D S
+N 4200 935 M 83 -1 D S
+N 0 2123 M -83 0 D S
+N 4200 2123 M 83 0 D S
+N 0 3310 M -83 1 D S
+N 4200 3310 M 83 1 D S
+25 W
+2 setlinecap
+N 0 0 M 0 4200 D S
+N 4200 0 M 0 4200 D S
+N 0 0 M 4200 0 D S
+N 0 4200 M 4200 0 D S
+0 setlinecap
 939 -167 M PSL_font_encode 0 get 0 eq {ISOLatin1+_Encoding /Helvetica /Helvetica PSL_reencode PSL_font_encode 0 1 put} if
 200 F0
 V -87.8 R (120�) ml Z U
@@ -10162,31 +10262,23 @@ V -87.8 R (120
 -167 932 M V 1.13 R (-10�) mr Z U
 -167 2122 M V 0.0424 R (0�) mr Z U
 -167 3313 M V -1.04 R (10�) mr Z U
-25 W
-2 setlinecap
-0 0 M 0 4200 D S
-4200 0 M 0 4200 D S
-0 0 M 4200 0 D S
-0 4200 M 4200 0 D S
-0 setlinecap
+%%EndObject
 0 A
 FQ
 O0
 0 0 TM
 
 % PostScript produced by:
-%%GMT:  psxy -R111.741088/-17.870195/148.918266/17.491062r -JE130.35/-0.2/3.5i -O -Wthicker -L -A
-%%PROJ: aeqd 111.64108800 149.05891174 -18.28640701 17.88640695 -2000000.044 2000000.016 -1999999.962 1999999.954 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371008.771 +b=6371008.771415
+%@GMT: psbasemap -Rk-2000/2000/-2000/2000 -JE130.35/-0.2/3.5i -O -Dg130.35/-0.2+w1000k+jCM -F+pthicker
+%@PROJ: aeqd 111.64108343 149.05891657 -18.28641185 17.88641185 -2000000.000 2000000.000 -2000000.000 2000000.000 +proj=aeqd +lat_0=-0.2 +lon_0=130.35 +x_0=0 +y_0=0 +a=6371007.181 +b=6371007.180918 +units=m +no_defs
+%%BeginObject PSL_Layer_2
 0 setlinecap
 0 setlinejoin
 3.32551 setmiterlimit
 25 W
 O1
-1575 1575 M
-0 1050 D
-1050 0 D
-0 -1050 D
-P S
+1050 1050 2100 2100 Sr
+%%EndObject
 %%PageTrailer
 U
 showpage
diff --git a/doc/scripts/GMT_grinten.ps b/doc/scripts/GMT_grinten.ps
index 308ab8f..2e1c3f5 100644
--- a/doc/scripts/GMT_grinten.ps
+++ b/doc/scripts/GMT_grinten.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
-%%HiResBoundingBox: 0 0 612 792
-%%Title: GMT v5.1.2_r14051M [64-bit] Document from pscoast
+%%HiResBoundingBox: 0 0 612 792             
+%%Title: GMT v5.4.2_r18319 [64-bit] Document from pscoast
 %%Creator: GMT5
-%%For: pwessel
+%%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Tue Feb 10 09:59:04 2015
+%%CreationDate: Sun Jun  4 10:49:15 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -272,7 +272,6 @@ end
     PSL_heights psl_k PSL_height put
   } for
 } def
-%%%%%%%%%%%%%%%%%%% CURVED BASELINE TEXT PLACEMENT FUNCTIONS
 /PSL_curved_path_labels
 { /psl_bits exch def
   /PSL_placetext psl_bits 2 and 2 eq def
@@ -523,7 +522,6 @@ end
 {PSL_xp 0 get PSL_yp 0 get M
   1 1 j { /ii exch def PSL_xp ii get PSL_yp ii get L} for
 } def
-%%%%%%%%%%%%%%%%%%% DRAW BASELINE TEXT SEGMENT LINES
 /PSL_draw_path_lines
 {
   /PSL_n_paths1 PSL_n_paths 1 sub def
@@ -549,7 +547,6 @@ end
   } for
   U
 } def
-%%%%%%%%%%%%%%%%%%% STRAIGHT BASELINE TEXT PLACEMENT FUNCTIONS
 /PSL_straight_path_labels
 {
   /psl_bits exch def
@@ -666,8 +663,8 @@ O0
 1200 1200 TM
 
 % PostScript produced by:
-%%GMT: pscoast -Rg -JV4i -Bg -Dc -Glightgray -Scornsilk -A10000 -Wthinnest -P
-%%PROJ: vandg 0.00000000 360.00000000 -90.00000000 90.00000000 -20015109.356 20015109.356 -20015109.356 20015109.356 +proj=vandg +lon_0=180 +x_0=0 +y_0=0 +R_A +a=6371007.181 +b=6371007.180918
+%@GMT: pscoast -Rg -JV4i -Bg -Dc -Glightgray -Scornsilk -A10000 -Wthinnest -P
+%@PROJ: vandg 0.00000000 360.00000000 -90.00000000 90.00000000 -20015109.356 20015109.356 -20015109.356 20015109.356 +proj=vandg +lon_0=180 +x_0=0 +y_0=0 +R_A +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_1
 0 setlinecap
 0 setlinejoin
@@ -20668,94 +20665,89 @@ P S
 -109 20 D
 -40 6 D
 -340 24 D
--156 -5 D
--92 -8 D
--94 -11 D
--133 -23 D
--137 -32 D
--113 -33 D
+-103 -2 D
+-115 -8 D
+-85 -9 D
+-112 -17 D
+-72 -14 D
+-117 -27 D
+-115 -33 D
 -104 -36 D
--75 -29 D
--87 -37 D
--94 -45 D
--102 -55 D
--47 -27 D
--17 -11 D
--67 -42 D
--83 -57 D
--87 -66 D
--48 -39 D
--46 -39 D
--21 -19 D
--21 -19 D
--40 -37 D
--4 -5 D
--51 -50 D
--25 -27 D
--9 -8 D
--55 -61 D
--50 -59 D
--13 -17 D
--74 -96 D
--16 -24 D
--11 -15 D
--41 -61 D
--41 -65 D
--60 -105 D
--56 -111 D
--44 -99 D
--28 -70 D
--36 -101 D
--35 -114 D
--33 -134 D
--20 -106 D
--9 -58 D
--14 -110 D
--6 -80 D
--4 -95 D
--1 -102 D
-3 -80 D
-8 -107 D
-19 -151 D
-16 -86 D
-13 -64 D
-30 -116 D
-35 -115 D
-27 -77 D
-45 -112 D
-49 -106 D
-45 -86 D
-47 -84 D
+-62 -23 D
+-108 -46 D
+-88 -42 D
+-84 -44 D
+-66 -38 D
+-108 -69 D
+-95 -67 D
+-77 -60 D
+-58 -49 D
+-43 -38 D
+-69 -65 D
+-83 -85 D
+-82 -94 D
+-21 -25 D
+-19 -25 D
+-55 -72 D
+-48 -70 D
+-16 -22 D
+-14 -23 D
+-28 -43 D
+-68 -119 D
+-37 -73 D
+-31 -64 D
+-39 -91 D
+-35 -92 D
+-30 -87 D
+-25 -83 D
+-29 -115 D
+-17 -82 D
+-18 -109 D
+-14 -117 D
+-8 -121 D
+-2 -103 D
+1 -78 D
+8 -133 D
+11 -100 D
+17 -108 D
+28 -135 D
+23 -87 D
+31 -104 D
+35 -100 D
+38 -94 D
+42 -93 D
+46 -91 D
+54 -97 D
 50 -80 D
-35 -53 D
+19 -30 D
 11 -15 D
-57 -79 D
-52 -65 D
-42 -51 D
-88 -96 D
-69 -68 D
-4 -5 D
-30 -28 D
-11 -9 D
-26 -24 D
-17 -14 D
-16 -15 D
-66 -53 D
-73 -56 D
-58 -41 D
-71 -47 D
-70 -43 D
-48 -27 D
-100 -53 D
-70 -33 D
-93 -41 D
-99 -37 D
-118 -39 D
-128 -35 D
-113 -24 D
-101 -17 D
-85 -11 D
-262 -14 D
+26 -38 D
+34 -47 D
+50 -65 D
+41 -50 D
+37 -43 D
+39 -43 D
+47 -49 D
+61 -60 D
+51 -47 D
+21 -19 D
+23 -19 D
+84 -69 D
+97 -71 D
+30 -20 D
+15 -11 D
+83 -53 D
+94 -54 D
+80 -42 D
+76 -36 D
+32 -15 D
+137 -55 D
+142 -47 D
+111 -30 D
+86 -20 D
+109 -20 D
+40 -6 D
+340 -24 D
 P S
 %%EndObject
 %%PageTrailer
diff --git a/doc/scripts/GMT_tut_11.sh b/doc/scripts/GMT_tut_11.sh
index 5b54e41..4466067 100755
--- a/doc/scripts/GMT_tut_11.sh
+++ b/doc/scripts/GMT_tut_11.sh
@@ -1,4 +1,4 @@
 #!/bin/bash
-#	$Id: GMT_tut_11.sh 14538 2015-07-15 19:43:07Z pwessel $
+#	$Id: GMT_tut_11.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
-gmt grdcontour "${tut:-../tutorial}"/bermuda.nc -JM6i -C250 -A1000 -P -Ba > GMT_tut_11.ps
+gmt grdcontour @tut_bathy.nc -JM6i -C250 -A1000 -P -Ba > GMT_tut_11.ps
diff --git a/doc/scripts/GMT_tut_12.sh b/doc/scripts/GMT_tut_12.sh
index d09721d..24d35d2 100755
--- a/doc/scripts/GMT_tut_12.sh
+++ b/doc/scripts/GMT_tut_12.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-#	$Id: GMT_tut_12.sh 15178 2015-11-06 10:45:03Z fwobbe $
+#	$Id: GMT_tut_12.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
-gmt nearneighbor -R245/255/20/30 -I5m -S40k -Gship.nc "${tut:-../tutorial}"/ship.xyz
+gmt nearneighbor -R245/255/20/30 -I5m -S40k -Gship.nc @tut_ship.xyz
 gmt grdcontour ship.nc -JM6i -P -Ba -C250 -A1000 > GMT_tut_12.ps
diff --git a/doc/scripts/GMT_tut_13.sh b/doc/scripts/GMT_tut_13.sh
index a70290c..9660348 100755
--- a/doc/scripts/GMT_tut_13.sh
+++ b/doc/scripts/GMT_tut_13.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
-#	$Id: GMT_tut_13.sh 15178 2015-11-06 10:45:03Z fwobbe $
+#	$Id: GMT_tut_13.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
-gmt blockmedian -R245/255/20/30 -I5m -V "${tut:-../tutorial}"/ship.xyz > ship_5m.xyz
+gmt blockmedian -R245/255/20/30 -I5m -V @tut_ship.xyz > ship_5m.xyz
 gmt surface ship_5m.xyz -R245/255/20/30 -I5m -Gship.nc
 gmt psmask -R245/255/20/30 -I5m ship_5m.xyz -JM6i -Ba -P -K > GMT_tut_13.ps
 gmt grdcontour ship.nc -J -O -K -C250 -A1000 >> GMT_tut_13.ps
diff --git a/doc/scripts/GMT_tut_15.sh b/doc/scripts/GMT_tut_15.sh
index 934aba6..bab40bf 100755
--- a/doc/scripts/GMT_tut_15.sh
+++ b/doc/scripts/GMT_tut_15.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
-#	$Id: GMT_tut_15.sh 17806 2017-03-27 22:18:01Z pwessel $
+#	$Id: GMT_tut_15.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
 gmt makecpt -Crainbow -T1000/5000 > topo.cpt
-gmt grdimage "${tut:-../tutorial}"/us.nc -JM6i -P -Ba -BWSnE -Ctopo.cpt -K > GMT_tut_15.ps
-gmt psscale -DJTC -R"${tut:-../tutorial}"/us.nc -J -Ctopo.cpt -I0.4 -Bxa -By+lm -O >> GMT_tut_15.ps
+gmt grdimage @tut_relief.nc -JM6i -P -Ba -BWSnE -Ctopo.cpt -K > GMT_tut_15.ps
+gmt psscale -DJTC -Rtut_relief.nc -J -Ctopo.cpt -I0.4 -Bxa -By+lm -O >> GMT_tut_15.ps
diff --git a/doc/scripts/GMT_tut_16.sh b/doc/scripts/GMT_tut_16.sh
index b511bec..67ca60e 100755
--- a/doc/scripts/GMT_tut_16.sh
+++ b/doc/scripts/GMT_tut_16.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
-#	$Id: GMT_tut_16.sh 17806 2017-03-27 22:18:01Z pwessel $
+#	$Id: GMT_tut_16.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
 gmt makecpt -Crainbow -T1000/5000 > topo.cpt
-gmt grdgradient "${tut:-../tutorial}"/us.nc -Ne0.8 -A100 -fg -Gus_i.nc
-gmt grdimage "${tut:-../tutorial}"/us.nc -Ius_i.nc -JM6i -P -Ba -BWSnE -Ctopo.cpt -K > GMT_tut_16.ps
-gmt psscale -DJTC -R"${tut:-../tutorial}"/us.nc -J -Ctopo.cpt -I0.4 -Bxa -By+lm -O >> GMT_tut_16.ps
+gmt grdgradient @tut_relief.nc -Ne0.8 -A100 -fg -Gus_i.nc
+gmt grdimage tut_relief.nc -Ius_i.nc -JM6i -P -Ba -BWSnE -Ctopo.cpt -K > GMT_tut_16.ps
+gmt psscale -DJTC -Rtut_relief.nc -J -Ctopo.cpt -I0.4 -Bxa -By+lm -O >> GMT_tut_16.ps
diff --git a/doc/scripts/GMT_tut_17.sh b/doc/scripts/GMT_tut_17.sh
index a4ae5ea..6b5da50 100755
--- a/doc/scripts/GMT_tut_17.sh
+++ b/doc/scripts/GMT_tut_17.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-#	$Id: GMT_tut_17.sh 14538 2015-07-15 19:43:07Z pwessel $
+#	$Id: GMT_tut_17.sh 18240 2017-05-27 23:39:17Z pwessel $
 #
 gmt makecpt -Cno_green -T-2/30/2 > otemp.cpt
-gmt grdimage -Rg -JW180/9i "${tut:-../tutorial}/otemp.anal1deg.nc?otemp[2,0]" -Cotemp.cpt -Bag > GMT_tut_17.ps
+gmt grdimage -Rg -JW180/9i "@otemp.anal1deg.nc?otemp[2,0]" -Cotemp.cpt -Bag > GMT_tut_17.ps
diff --git a/doc/scripts/GMT_tut_18.sh b/doc/scripts/GMT_tut_18.sh
index a4e1cfd..b1df873 100755
--- a/doc/scripts/GMT_tut_18.sh
+++ b/doc/scripts/GMT_tut_18.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-#	$Id: GMT_tut_18.sh 14538 2015-07-15 19:43:07Z pwessel $
+#	$Id: GMT_tut_18.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
-gmt grd2cpt "${tut:-../tutorial}"/bermuda.nc -Cocean > bermuda.cpt
-gmt grdview "${tut:-../tutorial}"/bermuda.nc -JM5i -P -JZ2i -p135/30 -Ba -Cbermuda.cpt > GMT_tut_18.ps
+gmt grd2cpt @tut_bathy.nc -Cocean > bermuda.cpt
+gmt grdview tut_bathy.nc -JM5i -P -JZ2i -p135/30 -Ba -Cbermuda.cpt > GMT_tut_18.ps
diff --git a/doc/scripts/GMT_tut_19.sh b/doc/scripts/GMT_tut_19.sh
index 4d293e2..e00e328 100755
--- a/doc/scripts/GMT_tut_19.sh
+++ b/doc/scripts/GMT_tut_19.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
-#	$Id: GMT_tut_19.sh 16573 2016-06-19 02:42:45Z pwessel $
+#	$Id: GMT_tut_19.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
 gmt makecpt -Ctopo -T1000/5000 > t.cpt
-gmt grdgradient "${tut:-../tutorial}"/us.nc -Ne0.8 -A100 -fg -Gus_i.nc
-gmt grdview "${tut:-../tutorial}"/us.nc -JM6i -p135/35 -Qi50 -Ius_i.nc -Ct.cpt -Ba -JZ0.5i > GMT_tut_19.ps
+gmt grdgradient @tut_relief.nc -Ne0.8 -A100 -fg -Gus_i.nc
+gmt grdview tut_relief.nc -JM6i -p135/35 -Qi50 -Ius_i.nc -Ct.cpt -Ba -JZ0.5i > GMT_tut_19.ps
diff --git a/doc/scripts/GMT_tut_5.ps b/doc/scripts/GMT_tut_5.ps
index 7971f08..e3dbbdf 100644
--- a/doc/scripts/GMT_tut_5.ps
+++ b/doc/scripts/GMT_tut_5.ps
@@ -1,11 +1,11 @@
 %!PS-Adobe-3.0
 %%BoundingBox: 0 0 612 792
-%%HiResBoundingBox: 0 0 612 792
-%%Title: GMT v5.1.3_r14524 [64-bit] Document from pscoast
+%%HiResBoundingBox: 0 0 612 792             
+%%Title: GMT v5.4.2_r18319 [64-bit] Document from pscoast
 %%Creator: GMT5
-%%For: pwessel
+%%For: unknown
 %%DocumentNeededResources: font Helvetica
-%%CreationDate: Tue Jul 14 17:34:13 2015
+%%CreationDate: Sun Jun  4 10:49:14 2017
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
 %%Orientation: Portrait
@@ -272,7 +272,6 @@ end
     PSL_heights psl_k PSL_height put
   } for
 } def
-%%%%%%%%%%%%%%%%%%% CURVED BASELINE TEXT PLACEMENT FUNCTIONS
 /PSL_curved_path_labels
 { /psl_bits exch def
   /PSL_placetext psl_bits 2 and 2 eq def
@@ -523,7 +522,6 @@ end
 {PSL_xp 0 get PSL_yp 0 get M
   1 1 j { /ii exch def PSL_xp ii get PSL_yp ii get L} for
 } def
-%%%%%%%%%%%%%%%%%%% DRAW BASELINE TEXT SEGMENT LINES
 /PSL_draw_path_lines
 {
   /PSL_n_paths1 PSL_n_paths 1 sub def
@@ -549,7 +547,6 @@ end
   } for
   U
 } def
-%%%%%%%%%%%%%%%%%%% STRAIGHT BASELINE TEXT PLACEMENT FUNCTIONS
 /PSL_straight_path_labels
 {
   /psl_bits exch def
@@ -666,8 +663,8 @@ O0
 1200 1200 TM
 
 % PostScript produced by:
-%%GMT: pscoast -Rg -JG280/30/6i -Bag -Dc -A5000 -Gwhite -SDarkTurquoise -P
-%%PROJ: ortho 0.00000000 360.00000000 -90.00000000 90.00000000 -6371007.181 6371007.181 -6371007.181 6371007.181 +unavailable +a=6371007.181 +b=6371007.180918
+%@GMT: pscoast -Rg -JG280/30/6i -Bag -Dc -A5000 -Gwhite -SDarkTurquoise -P
+%@PROJ: ortho 0.00000000 360.00000000 -90.00000000 90.00000000 -6371007.181 6371007.181 -6371007.181 6371007.181 +unavailable +a=6371007.181 +b=6371007.180918 +units=m +no_defs
 %%BeginObject PSL_Layer_1
 0 setlinecap
 0 setlinejoin
@@ -12783,986 +12780,122 @@ S
 -56 40 D
 S
 5373 6144 M
-3 9 D
-3 10 D
-3 10 D
-3 9 D
-2 10 D
-2 10 D
-2 10 D
-2 9 D
-2 10 D
-1 10 D
-1 10 D
-1 10 D
-1 9 D
-1 10 D
-0 10 D
-0 10 D
-0 10 D
-0 9 D
--1 10 D
--1 10 D
--1 10 D
--1 9 D
--1 10 D
--2 10 D
--2 10 D
--2 10 D
--2 9 D
--2 10 D
--3 10 D
--3 9 D
--3 10 D
--3 10 D
--4 9 D
--3 10 D
--4 10 D
--4 9 D
--5 10 D
--4 9 D
--5 10 D
--5 9 D
--5 10 D
--6 9 D
--5 10 D
--6 9 D
--6 9 D
--6 10 D
--6 9 D
--7 9 D
--7 9 D
--7 9 D
--7 10 D
--7 9 D
--8 9 D
--8 9 D
--8 9 D
--8 8 D
--8 9 D
--9 9 D
--9 9 D
--8 9 D
--5 4 D
--5 4 D
+14 48 D
+9 49 D
+4 49 D
+-1 39 D
+-6 49 D
+-11 49 D
+-16 48 D
+-22 48 D
+-27 47 D
+-25 37 D
+-36 46 D
+-41 44 D
+-17 18 D
+-10 8 D
 -4 5 D
--5 4 D
--5 4 D
+-10 8 D
 -4 5 D
--5 4 D
--5 4 D
--5 4 D
--5 5 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--5 4 D
--6 5 D
--5 4 D
--5 4 D
--6 4 D
--5 4 D
--5 4 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--6 4 D
--6 4 D
--5 4 D
--6 4 D
--6 4 D
--6 4 D
--6 3 D
--7 4 D
--6 4 D
--6 4 D
--6 4 D
--6 3 D
--7 4 D
--6 4 D
--6 4 D
--7 3 D
--6 4 D
--7 4 D
--6 3 D
--7 4 D
--7 4 D
--6 3 D
--7 4 D
--7 3 D
--7 4 D
--6 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 4 D
--7 3 D
--7 3 D
--7 4 D
--7 3 D
--8 3 D
--7 4 D
--7 3 D
--7 3 D
--8 4 D
--7 3 D
--8 3 D
--7 3 D
--7 3 D
--8 4 D
--8 3 D
--7 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--7 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--8 3 D
--8 3 D
--8 2 D
--8 3 D
--8 3 D
--9 2 D
--8 3 D
--8 3 D
--8 2 D
--9 3 D
--8 2 D
--8 3 D
--9 3 D
--8 2 D
--9 2 D
--8 3 D
--9 2 D
--8 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--8 2 D
--9 3 D
--9 2 D
--9 2 D
--8 2 D
--9 2 D
--9 3 D
--9 2 D
--9 2 D
--8 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--10 2 D
--9 2 D
--9 2 D
--9 2 D
--9 1 D
--9 2 D
--9 2 D
--10 1 D
--9 2 D
--9 2 D
--10 1 D
--9 2 D
--9 1 D
--9 2 D
--10 1 D
--9 2 D
--10 1 D
--9 1 D
--9 2 D
--10 1 D
--9 1 D
--10 2 D
--9 1 D
--10 1 D
--9 1 D
--10 2 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--10 1 D
--9 1 D
--10 1 D
--10 0 D
--9 1 D
--10 1 D
--10 1 D
--9 0 D
--10 1 D
--10 1 D
--10 0 D
--9 1 D
--10 0 D
--10 1 D
--9 0 D
--10 1 D
--10 0 D
--10 1 D
--9 0 D
--10 1 D
--10 0 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 0 D
--10 0 D
--10 1 D
--9 0 D
--10 0 D
--10 0 D
--10 0 D
--10 0 D
-3595 7200 M
-1 0 D
--10 0 D
--10 0 D
--10 0 D
--10 0 D
--9 0 D
--10 -1 D
--10 0 D
--10 0 D
--10 0 D
--9 0 D
--10 -1 D
--10 0 D
--10 0 D
--9 -1 D
--10 0 D
--10 -1 D
--10 0 D
--9 -1 D
--10 0 D
--10 -1 D
--10 0 D
--9 -1 D
--10 0 D
--10 -1 D
--10 -1 D
--9 0 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 0 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -1 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -2 D
--9 -1 D
--10 -2 D
--9 -2 D
--9 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--10 -1 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--8 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -2 D
--9 -3 D
--8 -2 D
--9 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--9 -2 D
--8 -3 D
--9 -2 D
--8 -2 D
--9 -3 D
--8 -2 D
--9 -3 D
--8 -2 D
--9 -3 D
--8 -2 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -3 D
--9 -2 D
--8 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -2 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--8 -3 D
--7 -3 D
--8 -3 D
--7 -3 D
--8 -4 D
--7 -3 D
--7 -3 D
--8 -3 D
--7 -4 D
--7 -3 D
--8 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--7 -4 D
--7 -3 D
--6 -4 D
--7 -3 D
--7 -4 D
--6 -4 D
--7 -3 D
--6 -4 D
--7 -4 D
--6 -3 D
--7 -4 D
--6 -4 D
--7 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--7 -3 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--6 -3 D
--5 -4 D
--6 -4 D
--6 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--6 -4 D
--5 -5 D
--6 -4 D
--5 -4 D
--5 -4 D
--6 -4 D
--5 -4 D
--5 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--6 -4 D
--4 -4 D
--5 -4 D
--5 -5 D
--5 -4 D
--5 -4 D
--5 -5 D
--4 -4 D
--5 -4 D
--5 -5 D
--4 -4 D
--9 -9 D
--9 -8 D
--8 -9 D
--9 -9 D
--8 -9 D
--8 -9 D
--8 -9 D
--7 -9 D
--8 -9 D
--7 -9 D
--7 -9 D
--7 -9 D
--6 -10 D
--7 -9 D
--6 -9 D
--6 -10 D
--6 -9 D
--5 -9 D
--6 -10 D
--5 -9 D
--5 -10 D
--4 -9 D
--5 -10 D
--4 -9 D
--4 -10 D
--4 -9 D
--4 -10 D
--4 -10 D
--3 -9 D
--3 -10 D
--3 -10 D
--3 -9 D
--2 -10 D
--2 -10 D
--2 -10 D
--2 -9 D
--2 -10 D
--1 -10 D
--1 -10 D
--1 -10 D
--1 -9 D
--1 -10 D
-0 -10 D
-0 -10 D
-0 -10 D
-0 -9 D
-1 -10 D
-1 -10 D
-1 -10 D
-1 -9 D
-1 -10 D
-2 -10 D
-2 -10 D
-2 -10 D
-2 -9 D
-2 -10 D
-3 -10 D
-3 -9 D
-3 -10 D
-3 -10 D
-4 -9 D
-3 -10 D
-4 -10 D
-4 -9 D
-5 -10 D
-4 -9 D
-5 -10 D
-5 -9 D
-5 -10 D
-6 -9 D
-5 -10 D
-6 -9 D
-6 -9 D
-6 -10 D
-6 -9 D
-7 -9 D
-7 -9 D
-7 -9 D
-7 -10 D
-7 -9 D
-8 -9 D
-8 -9 D
-8 -9 D
-8 -8 D
-8 -9 D
-9 -9 D
-9 -9 D
-8 -9 D
-5 -4 D
-5 -4 D
+-77 62 D
+-75 52 D
+-56 34 D
+-94 50 D
+-94 43 D
+-68 28 D
+-95 35 D
+-99 31 D
+-112 30 D
+-116 27 D
+-138 25 D
+-142 19 D
+-145 14 D
+-165 8 D
+-147 1 D
+-118 -4 D
+-107 -7 D
+-163 -16 D
+-122 -18 D
+-138 -26 D
+-107 -25 D
+-94 -25 D
+-84 -26 D
+-88 -31 D
+-92 -36 D
+-73 -33 D
+-83 -42 D
+-58 -33 D
+-12 -8 D
+-13 -7 D
+-65 -43 D
+-22 -16 D
+-21 -17 D
+-46 -37 D
+-38 -35 D
+-18 -17 D
+-41 -45 D
+-36 -45 D
+-31 -47 D
+-21 -38 D
+-29 -67 D
+-14 -48 D
+-9 -49 D
+-4 -49 D
+1 -39 D
+6 -49 D
+11 -49 D
+16 -48 D
+22 -48 D
+27 -47 D
+25 -37 D
+36 -46 D
+41 -44 D
+17 -18 D
+10 -8 D
 4 -5 D
-5 -4 D
-5 -4 D
+10 -8 D
 4 -5 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -5 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-5 -4 D
-6 -5 D
-5 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-5 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -3 D
-7 -4 D
-6 -4 D
-6 -4 D
-6 -4 D
-6 -3 D
-7 -4 D
-6 -4 D
-6 -4 D
-7 -3 D
-6 -4 D
-7 -4 D
-6 -3 D
-7 -4 D
-7 -4 D
-6 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-6 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -4 D
-7 -3 D
-7 -3 D
-7 -4 D
-7 -3 D
-8 -3 D
-7 -4 D
-7 -3 D
-7 -3 D
-8 -4 D
-7 -3 D
-8 -3 D
-7 -3 D
-7 -3 D
-8 -4 D
-8 -3 D
-7 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-7 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -3 D
-8 -2 D
-8 -3 D
-8 -3 D
-9 -2 D
-8 -3 D
-8 -3 D
-8 -2 D
-9 -3 D
-8 -2 D
-8 -3 D
-9 -3 D
-8 -2 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-8 -2 D
-9 -3 D
-9 -2 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -3 D
-9 -2 D
-9 -2 D
-8 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-10 -2 D
-9 -2 D
-9 -2 D
-9 -2 D
-9 -1 D
-9 -2 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -2 D
-10 -1 D
-9 -2 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-9 -2 D
-10 -1 D
-9 -1 D
-10 -2 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -2 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 -1 D
-10 -1 D
-9 0 D
-10 -1 D
-10 -1 D
-10 0 D
-9 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 -1 D
-10 0 D
-10 -1 D
-9 0 D
-10 -1 D
-10 0 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 -1 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 0 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 1 D
-10 0 D
-10 0 D
-10 0 D
-9 0 D
-10 1 D
-10 0 D
-10 0 D
-9 1 D
-10 0 D
-10 1 D
-10 0 D
-9 1 D
-10 0 D
-10 1 D
-10 0 D
-9 1 D
-10 0 D
-10 1 D
-10 1 D
-9 0 D
-10 1 D
-10 1 D
-9 1 D
-10 0 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-10 1 D
-9 2 D
-10 1 D
-9 1 D
-9 2 D
-10 1 D
-9 2 D
-10 1 D
-9 2 D
-9 1 D
-9 2 D
-10 1 D
-9 2 D
-9 2 D
-9 1 D
-10 2 D
-9 2 D
-9 1 D
-9 2 D
-9 2 D
-9 2 D
-10 1 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-8 2 D
-9 2 D
-9 2 D
-9 2 D
-9 2 D
-9 3 D
-8 2 D
-9 2 D
-9 2 D
-8 3 D
-9 2 D
-9 2 D
-8 3 D
-9 2 D
-8 2 D
-9 3 D
-8 2 D
-9 3 D
-8 2 D
-9 3 D
-8 2 D
-8 3 D
-9 2 D
-8 3 D
-8 3 D
-9 2 D
-8 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 2 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-8 3 D
-7 3 D
-8 3 D
-7 3 D
-8 4 D
-7 3 D
-7 3 D
-8 3 D
-7 4 D
-7 3 D
-8 3 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-7 4 D
-7 3 D
-6 4 D
-7 3 D
-7 4 D
-6 4 D
-7 3 D
-6 4 D
-7 4 D
-6 3 D
-7 4 D
-6 4 D
-7 3 D
-6 4 D
-6 4 D
-6 4 D
-7 3 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 4 D
-6 3 D
-5 4 D
-6 4 D
-6 4 D
-6 4 D
-5 4 D
-6 4 D
-5 4 D
-6 4 D
-5 5 D
-6 4 D
-5 4 D
-5 4 D
-6 4 D
-5 4 D
-5 4 D
-5 4 D
-5 5 D
-5 4 D
-6 4 D
-4 4 D
-5 4 D
-5 5 D
-5 4 D
-5 4 D
-5 5 D
-4 4 D
-5 4 D
-5 5 D
-4 4 D
-9 9 D
-9 8 D
-8 9 D
-9 9 D
-8 9 D
-8 9 D
-8 9 D
-7 9 D
-8 9 D
-7 9 D
-7 9 D
-7 9 D
-6 10 D
-7 9 D
-6 9 D
-6 10 D
-6 9 D
-5 9 D
-6 10 D
-5 9 D
-5 10 D
-4 9 D
-5 10 D
-4 9 D
-4 10 D
-4 9 D
-4 10 D
-4 10 D
-S
+77 -62 D
+75 -52 D
+56 -34 D
+94 -50 D
+94 -43 D
+68 -28 D
+95 -35 D
+99 -31 D
+112 -30 D
+116 -27 D
+138 -25 D
+142 -19 D
+145 -14 D
+165 -8 D
+147 -1 D
+118 4 D
+107 7 D
+163 16 D
+122 18 D
+138 26 D
+107 25 D
+94 25 D
+84 26 D
+88 31 D
+92 36 D
+73 33 D
+83 42 D
+58 33 D
+12 8 D
+13 7 D
+65 43 D
+22 16 D
+21 17 D
+46 37 D
+38 35 D
+18 17 D
+41 45 D
+36 45 D
+31 47 D
+21 38 D
+P S
 4518 6531 M
 9 35 D
 4 25 D
diff --git a/doc/scripts/GMT_tut_7.sh b/doc/scripts/GMT_tut_7.sh
index ffe30b2..1831fd6 100755
--- a/doc/scripts/GMT_tut_7.sh
+++ b/doc/scripts/GMT_tut_7.sh
@@ -1,4 +1,4 @@
 #!/bin/bash
-#	$Id: GMT_tut_7.sh 14538 2015-07-15 19:43:07Z pwessel $
+#	$Id: GMT_tut_7.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
-gmt psxy "${tut:-../tutorial}"/data -R0/6/0/6 -Jx1i -P -Baf -Wthinner > GMT_tut_7.ps
+gmt psxy @tut_data.txt -R0/6/0/6 -Jx1i -P -Baf -Wthinner > GMT_tut_7.ps
diff --git a/doc/scripts/GMT_tut_8.sh b/doc/scripts/GMT_tut_8.sh
index 6f7e61b..ab6cb4d 100755
--- a/doc/scripts/GMT_tut_8.sh
+++ b/doc/scripts/GMT_tut_8.sh
@@ -1,5 +1,5 @@
 #!/bin/bash
-#	$Id: GMT_tut_8.sh 14538 2015-07-15 19:43:07Z pwessel $
+#	$Id: GMT_tut_8.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
-gmt psxy "${tut:-../tutorial}"/data -R0/6/0/6 -Jx1i -Baf -P -K -Wthinner > GMT_tut_8.ps
-gmt psxy "${tut:-../tutorial}"/data -R -J -O -W -Si0.2i >> GMT_tut_8.ps
+gmt psxy @tut_data.txt -R0/6/0/6 -Jx1i -Baf -P -K -Wthinner > GMT_tut_8.ps
+gmt psxy tut_data.txt -R -J -O -W -Si0.2i >> GMT_tut_8.ps
diff --git a/doc/scripts/GMT_tut_9.sh b/doc/scripts/GMT_tut_9.sh
index 5c09b55..45efd9c 100755
--- a/doc/scripts/GMT_tut_9.sh
+++ b/doc/scripts/GMT_tut_9.sh
@@ -1,5 +1,6 @@
 #!/bin/bash
-#	$Id: GMT_tut_9.sh 17436 2017-01-13 00:22:07Z pwessel $
+#	$Id: GMT_tut_9.sh 18314 2017-06-03 03:26:22Z pwessel $
 #
+gmt makecpt -Cred,green,blue -T0,100,300,10000 > quakes.cpt
 gmt pscoast -R130/150/35/50 -JM6i -B5 -P -Ggray -K > GMT_tut_9.ps
-gmt psxy -R -J -O "${tut:-../tutorial}"/quakes.ngdc -Wfaint -i4,3,5,6+s0.1 -h3 -Scc -C"${tut:-../tutorial}"/quakes.cpt >> GMT_tut_9.ps
+gmt psxy -R -J -O @tut_quakes.ngdc -Wfaint -i4,3,5,6+s0.1 -h3 -Scc -Cquakes.cpt >> GMT_tut_9.ps
diff --git a/share/tools/gmt5syntax.in b/share/tools/gmt5syntax.in
index 5119365..f4c13c9 100755
--- a/share/tools/gmt5syntax.in
+++ b/share/tools/gmt5syntax.in
@@ -2,7 +2,7 @@
 #! -*-perl-*-
 eval 'exec perl -x -wS $0 ${1+"$@"}'
   if 0;
-# $Id: gmt5syntax.in 17451 2017-01-16 21:36:06Z pwessel $
+# $Id: gmt5syntax.in 18254 2017-05-28 19:46:56Z pwessel $
 #
 #  Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo,
 #  J. Luis, and F. Wobbe
@@ -30,7 +30,7 @@ grdvector grdview grdvolume greenspline gshhg hotspotter img2grd kml2gmt
 makecpt mapproject mgd77convert mgd77info mgd77list mgd77magref mgd77manage
 mgd77path mgd77sniffer mgd77track minmax nearneighbor originator project
 psconvert psbasemap psclip pscoast pscontour pscoupe pshistogram psimage
-pslegend psmask psmeca pspolar psrose psscale pssegy pssegyz pstext psvelo
+pslegend psmask psmeca pspolar psrose pssac psscale pssegy pssegyz pstext psvelo
 pswiggle psxy psxyz rotconverter sample1d segy2grd spectrum1d sph2grd
 sphdistance sphinterpolate sphtriangulate splitxyz surface talwani2d talwani3d trend1d trend2d
 triangulate x2sys_binlist x2sys_cross x2sys_datalist x2sys_get x2sys_init
diff --git a/src/blockmean.c b/src/blockmean.c
index 7f86f41..dfabdc6 100644
--- a/src/blockmean.c
+++ b/src/blockmean.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: blockmean.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: blockmean.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -157,8 +157,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct BLOCKMEAN_CTRL *Ctrl, struct G
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);	/* If -R<grdfile> was given we may get incs unless -I was used */
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->E.mode && !Ctrl->W.weighted[GMT_IN], "Syntax error: The -Ep option requires weights (= 1/sigma^2) on input\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
diff --git a/src/blockmedian.c b/src/blockmedian.c
index 0375f13..9345e4e 100644
--- a/src/blockmedian.c
+++ b/src/blockmedian.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *    $Id: blockmedian.c 18171 2017-05-07 02:37:02Z pwessel $
+ *    $Id: blockmedian.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -150,8 +150,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct BLOCKMEDIAN_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);	/* If -R<grdfile> was given we may get incs unless -I was used */
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->T.quantile <= 0.0 || Ctrl->T.quantile >= 1.0,
 			"Syntax error: 0 < q < 1 for quantile in -T [0.5]\n");
diff --git a/src/blockmode.c b/src/blockmode.c
index bad325d..8866610 100644
--- a/src/blockmode.c
+++ b/src/blockmode.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *    $Id: blockmode.c 18171 2017-05-07 02:37:02Z pwessel $
+ *    $Id: blockmode.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -177,8 +177,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct BLOCKMODE_CTRL *Ctrl, struct G
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);	/* If -R<grdfile> was given we may get incs unless -I was used */
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->D.active && Ctrl->E.active, "Syntax error -D option: Cannot be combined with -E\n");
diff --git a/src/common_math.h b/src/common_math.h
index 9f5aae0..eef848c 100644
--- a/src/common_math.h
+++ b/src/common_math.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- * $Id: common_math.h 17451 2017-01-16 21:36:06Z pwessel $
+ * $Id: common_math.h 18342 2017-06-08 18:29:17Z pwessel $
  *
  * Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  * See LICENSE.TXT file for copying and redistribution conditions.
@@ -66,6 +66,12 @@ extern "C" {
 #	define int64_abs(x) ((int64_t)(((x) >= 0) ? (x) : -(x)))
 #endif
 
+#ifdef __CYGWIN__	/* See http://gmt.soest.hawaii.edu/boards/1/topics/5428 */
+#ifdef __x86_64
+#define lrint(x) ((long int)(int)lrint(x))
+#endif
+#endif
+
 	/* Limit casting to one place (here) for dropping lrint output to signed or unsigned ints */
 #define irint(x) ((int)lrint(x))
 #define urint(x) ((unsigned int)lrint(x))
diff --git a/src/common_sighandler.c b/src/common_sighandler.c
index d652d47..b72fdea 100644
--- a/src/common_sighandler.c
+++ b/src/common_sighandler.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: common_sighandler.c 17985 2017-04-18 14:37:51Z jluis $
+ *	$Id: common_sighandler.c 18448 2017-06-24 18:48:17Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -83,6 +83,8 @@ void backtrace_symbols_fd(void *const *buffer, int size, int fd) {
 #  define UC_IP(uc) ((void *) (uc)->uc_mcontext.arm_pc)
 # elif defined( __hppa__)
 #  define UC_IP(uc) ((void *) (uc)->uc_mcontext.sc_iaoq[0])
+# elif defined(__m68k__)
+#  define UC_IP(uc) ((void *) (uc)->uc_mcontext.gregs[R_PC])
 # elif defined(__s390__)
 #  define UC_IP(uc) ((void *) (uc)->uc_mcontext.psw.addr)
 # elif defined(__sparc__)
diff --git a/src/filter1d.c b/src/filter1d.c
index 10a8e84..1d5d831 100644
--- a/src/filter1d.c
+++ b/src/filter1d.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: filter1d.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: filter1d.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -907,11 +907,11 @@ int GMT_filter1d (void *V_API, int mode, void *args) {
 			if ((error = gmt_set_cols (GMT, GMT_IN, 1)) != 0) Return (error, "Error in gmt_set_cols");
 			save_col = GMT->current.io.col_type[GMT_IN][GMT_X];	/* Save col type in case it is a time column */
 			GMT->current.io.col_type[GMT_IN][GMT_X] = GMT_IS_FLOAT;	/* Always read the weights as floats */
-			gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -F files */
+			gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -F files */
 			if ((F.Fin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_NONE, GMT_READ_NORMAL, NULL, Ctrl->F.file, NULL)) == NULL) {
 				Return (API->error, "Error Reading input\n");
 			}
-			gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+			gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 			GMT->current.io.col_type[GMT_IN][GMT_X] = save_col;	/* Reset this col type to whatever it actually is */
 			GMT_Report (API, GMT_MSG_VERBOSE, "Read %" PRIu64 " filter weights from file %s.\n", F.Fin->n_records, Ctrl->F.file);
 			break;
diff --git a/src/gmt.c b/src/gmt.c
index 054b62e..4a13bee 100644
--- a/src/gmt.c
+++ b/src/gmt.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt.c 18188 2017-05-08 05:24:15Z pwessel $
+ *	$Id: gmt.c 18366 2017-06-12 01:57:16Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -107,20 +107,6 @@ int main (int argc, char *argv[]) {
 		}
 		return GMT_NOERROR;
 	}
-#ifdef TEST_MODERN
-	if (gmt_main && argc == 2 && !strcmp (argv[1], "begin")) {	/* Initiating a GMT Work Flow. */
-		gmt_manage_workflow (api_ctrl, GMT_BEGIN_WORKFLOW);
-		if (GMT_Destroy_Session (api_ctrl))	/* Destroy GMT session */
-			return GMT_RUNTIME_ERROR;
-		return GMT_NOERROR;
-	}
-	else if (gmt_main && argc == 2 && !strcmp (argv[1], "end")) {	/* Terminating a GMT Work Flow. */
-		gmt_manage_workflow (api_ctrl, GMT_END_WORKFLOW);
-		if (GMT_Destroy_Session (api_ctrl))	/* Destroy GMT session */
-			return GMT_RUNTIME_ERROR;
-		return GMT_NOERROR;
-	}
-#endif
 	if (gmt_main && argc > 1 && (!strcmp (argv[1], "gmtread") || !strcmp (argv[1], "read") || !strcmp (argv[1], "gmtwrite") || !strcmp (argv[1], "write"))) {
 		/* Cannot call [gmt]read or [gmt]write module from the command-line - only external APIs can do that. */
 		module = argv[1];	/* Name of module that does not exist, but will give reasonable message */
@@ -187,7 +173,10 @@ int main (int argc, char *argv[]) {
 
 			/* Show share directory */
 			else if (!strncmp (argv[arg_n], "--show-datadir", 11U)) {
-				fprintf (stdout, "%s\n", api_ctrl->GMT->session.DATADIR);
+				if (api_ctrl->GMT->session.DATADIR == NULL)
+					fprintf(stdout, "Not set\n");
+				else
+					fprintf(stdout, "%s\n", api_ctrl->GMT->session.DATADIR);
 				status = GMT_NOERROR;
 			}
 
@@ -236,10 +225,6 @@ int main (int argc, char *argv[]) {
 		fprintf (stderr, "usage: %s [options]\n", PROGRAM_NAME);
 		fprintf (stderr, "       %s <module name> [<module-options>]\n\n", PROGRAM_NAME);
 		fprintf (stderr, "Session management:\n");
-#ifdef TEST_MODERN
-		fprintf (stderr, "  gmt begin         Initiate a new GMT session.\n");
-		fprintf (stderr, "  gmt end           Terminate the current GMT session.\n\n");
-#endif
 		fprintf (stderr, "  gmt clear history | conf | cache | all\n");
 		fprintf (stderr, "                    Deletes gmt.history, gmt.conf, the user cache dir, or all of them\n\n");
 		fprintf (stderr, "options:\n");
diff --git a/src/gmt.h b/src/gmt.h
index c075831..b18852f 100644
--- a/src/gmt.h
+++ b/src/gmt.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt.h 17854 2017-04-03 19:44:56Z pwessel $
+ *	$Id: gmt.h 18391 2017-06-17 21:24:36Z pwessel $
  *
  *	Copyright (c) 1991-2017
  *	P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
@@ -142,7 +142,7 @@ EXTERN_MSC int    GMT_Destroy_Args                  (void *API, int argc, char *
 EXTERN_MSC int    GMT_Destroy_Cmd                   (void *API, char **cmd);
 EXTERN_MSC int    GMT_Update_Option                 (void *API, struct GMT_OPTION *current, const char *arg);
 EXTERN_MSC int    GMT_Free_Option                   (void *API, struct GMT_OPTION **current);
-EXTERN_MSC int    GMT_Delete_Option                 (void *API, struct GMT_OPTION *current);
+EXTERN_MSC int    GMT_Delete_Option                 (void *API, struct GMT_OPTION *current, struct GMT_OPTION **head);
 EXTERN_MSC int    GMT_Parse_Common                  (void *API, const char *given_options, struct GMT_OPTION *options);
 EXTERN_MSC char  *GMT_Duplicate_String              (void *API, const char* string);
 
@@ -159,9 +159,9 @@ EXTERN_MSC int          GMT_FFT_2D         (void *API, float *data, unsigned int
 
 /* 3 F77 basic grid i/o functions.  These give basic Fortran programs the ability to read and write any GMT-accessible grid */
 
-EXTERN_MSC int GMT_F77_readgrdinfo_ (unsigned int dim[], double wesn[], double inc[], char *title, char *remark, const char *file);
-EXTERN_MSC int GMT_F77_readgrd_	    (float *array, unsigned int dim[], double wesn[], double inc[], char *title, char *remark, const char *file);
-EXTERN_MSC int GMT_F77_writegrd_    (float *array, unsigned int dim[], double wesn[], double inc[], const char *title, const char *remark, const char *file);
+EXTERN_MSC int gmt_f77_readgrdinfo_ (unsigned int dim[], double wesn[], double inc[], char *title, char *remark, const char *file, int ltitle, int lremark, int lfile);
+EXTERN_MSC int gmt_f77_readgrd_	    (float *array, unsigned int dim[], double wesn[], double inc[], char *title, char *remark, const char *file, int ltitle, int lremark, int lfile);
+EXTERN_MSC int gmt_f77_writegrd_    (float *array, unsigned int dim[], double wesn[], double inc[], const char *title, const char *remark, const char *file, int ltitle, int lremark, int lfile);
 
 /* 2 for external API developers only */
 EXTERN_MSC struct GMT_RESOURCE *GMT_Encode_Options (void *API, const char *module, int n_in, struct GMT_OPTION **head, unsigned int *n);
diff --git a/src/gmt_api.c b/src/gmt_api.c
index 064da96..6874cfa 100644
--- a/src/gmt_api.c
+++ b/src/gmt_api.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_api.c 18186 2017-05-08 04:43:29Z pwessel $
+ *	$Id: gmt_api.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -111,9 +111,9 @@
  *
  * Finally, three low-level F77-callable functions for grid i/o are given:
  *
- * GMT_F77_readgrdinfo_	  : Read the header of a GMT grid
- * GMT_F77_readgrd_		  : Read a GMT grid from file
- * GMT_F77_writegrd_	  : Write a GMT grid to file
+ * gmt_f77_readgrdinfo_	  : Read the header of a GMT grid
+ * gmt_f77_readgrd_		  : Read a GMT grid from file
+ * gmt_f77_writegrd_	  : Write a GMT grid to file
  *
  * --------------------------------------------------------------------------------------------
  * Guru notes on memory management: Paul Wessel, June 2013.
@@ -592,10 +592,10 @@ GMT_LOCAL int api_get_ppid (struct GMTAPI_CTRL *API) {
 	/* Return the parent process ID [i.e., shell for command line use or gmt app for API] */
 	int ppid = -1;
 	gmt_M_unused(API);
-#if defined(WIN32) || defined(DEBUG_MODERN)
+#if defined(WIN32)
 	/* OK, the trouble is the following. On Win if the executables are run from within MSYS
-	   gmt_get_ppid returns different values for each call, and this completely breaks the idea
-	   using the PPID (parent PID) to create unique file names. 
+	   api_get_ppid returns different values for each call, and this completely breaks the idea
+	   using the PPID (parent PID) to create unique file names.
 	   So, given that we didn't yet find a way to make this work from within MSYS (and likely Cygwin)
 	   we are forcing PPID = 0 in all Windows variants. */
 	ppid = 0;
@@ -832,71 +832,118 @@ GMT_LOCAL void api_free_sharedlibs (struct GMTAPI_CTRL *API) {
  * this check by first calling gmt_download_file_if_not_found.
  */
 
+struct FtpFile {
+	const char *filename;
+	FILE *fp;
+};
+
+static size_t fwrite_callback (void *buffer, size_t size, size_t nmemb, void *stream) {
+	struct FtpFile *out = (struct FtpFile *)stream;
+	if (out && !out->fp) { /* open file for writing */
+		out->fp = fopen (out->filename, "wb");
+		if (!out->fp)
+			return -1; /* failure, can't open file to write */
+	}
+	return fwrite (buffer, size, nmemb, out->fp);
+}
+
 unsigned int gmt_download_file_if_not_found (struct GMT_CTRL *GMT, const char* file_name) {
 	/* Downloads a file if not found locally.  Returns the position in file_name of the
  	 * start of the actual file (e.g., if given an URL). */
 	unsigned int kind = 0, dir = 0, pos = 0;
 	int curl_err = 0;
 	CURL *Curl = NULL;
-	FILE *fp = NULL;
-	static char *ftp_dir[2] = {"/cache", ""};
+	static char *ftp_dir[2] = {"/cache", ""}, *name[2] = {"CACHE", "USER"};
 	char *user_dir[2] = {GMT->session.CACHEDIR, GMT->session.USERDIR};
-	char url[PATH_MAX] = {""}, local_path[PATH_MAX] = {""}, *c = NULL;
-	
+	char url[PATH_MAX] = {""}, local_path[PATH_MAX] = {""}, *c = NULL, *file = strdup (file_name);
+	struct FtpFile ftpfile = {NULL, NULL};
+
 	/* Because file_name may be <file>, @<file>, or URL/<file> we must find start of <file> */
-	if (gmt_M_file_is_cache (file_name)) pos = 1;	/* A leading '@' was found */
-	else if (gmt_M_file_is_url (file_name)) pos = gmtlib_get_pos_of_filename (file_name);	/* Start of file in URL (> 0) */
-	/* else pos == 0 */
-	
+	if (gmt_M_file_is_cache (file)) {	/* A leading '@' was found */
+		pos = 1;
+		if ((c = strchr (file, '?')))	/* Netcdf directive since URL was handled above */
+			c[0] = '\0';
+		else if ((c = strchr (file, '=')))	/* Grid attributes */
+			c[0] = '\0';
+	}
+	else if (gmt_M_file_is_url (file)) {	/* A remote file given via an URL */
+		pos = gmtlib_get_pos_of_filename (file);	/* Start of file in URL (> 0) */
+		if ((c = strchr (file, '?')) && !strchr (file, '='))	/* Must be a netCDF sliced URL file so chop off the layer/variable specifications */
+			c[0] = '\0';
+		else if ((c = strchr (file, '=')))	/* Grid attributes */
+			c[0] = '\0';
+	}
+	else if ((c = strchr (file, '?')))	/* Netcdf directive since URLs and caches were handled above */
+		c[0] = '\0';	/* and pos = 0 */
+
 	/* Return immediately if cannot be downloaded (for various reasons) */
-	if (!gmtlib_file_is_downloadable (GMT, file_name, &kind))
+	if (!gmtlib_file_is_downloadable (GMT, file, &kind)) {
+		gmt_M_str_free (file);
 		return (pos);
-	
+	}
+	dir = (kind == GMT_DATA_FILE) ? GMT_DATA_DIR : GMT_CACHE_DIR;	/* Only GMT datasets should go data dir; all else in cache */
+	if (user_dir[dir] == NULL) {
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "The GMT_%s directory is not defined - download file to current directory\n", name[dir]);
+		sprintf (local_path, "%s", &file[pos]);
+	}
 	/* Here we will try to download a file */
-	
+
   	if ((Curl = curl_easy_init ()) == NULL) {
-		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to initiate curl - cannot obtain %s\n", &file_name[pos]);
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to initiate curl - cannot obtain %s\n", &file[pos]);
+		gmt_M_str_free (file);
 		return 0;
 	}
-	curl_easy_setopt(Curl, CURLOPT_SSL_VERIFYPEER, FALSE);		/* Tell libcurl to not verify the peer */
-	dir = (kind == GMT_DATA_FILE) ? GMT_DATA_DIR : GMT_CACHE_DIR;	/* Only GMT datasets should go data dir; all else in cache */
-	sprintf (local_path, "%s/%s", user_dir[dir], &file_name[pos]);
-	if (kind == GMT_URL_CMD) {	/* Cannot have ?para=value etc in filename */
-		c = strchr (local_path, '?');
-		if (c) c[0] = '\0';	/* Chop off ?CGI parameters from local_path */
+	if (curl_easy_setopt (Curl, CURLOPT_SSL_VERIFYPEER, 0L)) {		/* Tell libcurl to not verify the peer */
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to set curl option to not verify the peer\n");
+		gmt_M_str_free (file);
+		return 0;
 	}
-	if ((fp = fopen (local_path, "wb")) == NULL) {
-		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to create file %s\n", local_path);
+	if (curl_easy_setopt (Curl, CURLOPT_FOLLOWLOCATION, 1L)) {		/* Tell libcurl to follow 30x redirects */
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to set curl option to follow redirects\n");
+		gmt_M_str_free (file);
 		return 0;
 	}
-	if (kind == GMT_URL_FILE || kind == GMT_URL_CMD)	/* General URL given */
-		sprintf (url, "%s", file_name);
+	if (user_dir[dir]) sprintf (local_path, "%s/%s", user_dir[dir], &file[pos]);
+	if (kind == GMT_URL_QUERY) {	/* Cannot have ?para=value etc in filename */
+		c = strchr (local_path, '?');
+		if (c) c[0] = '\0';	/* Chop off ?CGI parameters from local_path */
+	}
+	if (kind == GMT_URL_FILE || kind == GMT_URL_QUERY)	/* General URL given */
+		sprintf (url, "%s", file);
 	else			/* Use GMT ftp dir, possible from subfolder cache */
-		sprintf (url, "%s%s/%s", GMT_DATA_URL, ftp_dir[dir], &file_name[pos]);
+		sprintf (url, "%s%s/%s", GMT_DATA_URL, ftp_dir[dir], &file[pos]);
 
  	if (curl_easy_setopt (Curl, CURLOPT_URL, url)) {	/* Set the URL to copy */
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to set curl option to read from %s\n", url);
-		fclose (fp);
+		gmt_M_str_free (file);
 		return 0;
 	}
-	if (curl_easy_setopt (Curl, CURLOPT_WRITEDATA, fp)) {	/* Set output file */
+	ftpfile.filename = local_path;	/* Set pointer to local filename */
+	/* Define our callback to get called when there's data to be written */
+	if (curl_easy_setopt (Curl, CURLOPT_WRITEFUNCTION, fwrite_callback)) {
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to set curl output callback function\n");
+		gmt_M_str_free (file);
+		return 0;
+	}
+	/* Set a pointer to our struct to pass to the callback */
+	if (curl_easy_setopt (Curl, CURLOPT_WRITEDATA, &ftpfile)) {
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Failed to set curl option to write to %s\n", local_path);
-		fclose (fp);
+		gmt_M_str_free (file);
 		return 0;
 	}
 	GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "Downloading file %s ...\n", url);
 	if ((curl_err = curl_easy_perform (Curl))) {	/* Failed, give error message */
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Libcurl Error: %s\n", curl_easy_strerror (curl_err));
-		fclose (fp);
-		fp = NULL;
+		fclose (ftpfile.fp);
+		ftpfile.fp = NULL;
 		if (gmt_remove_file (GMT, local_path))
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Could not even remove file %s\n", local_path);
 	}
 	curl_easy_cleanup (Curl);
+	if (ftpfile.fp) /* close the local file */
+		fclose (ftpfile.fp);
 
-	if (fp) fclose (fp);
-	
-	if (kind == GMT_URL_CMD) {	/* Cannot have ?para=value etc in local filename */
+	if (kind == GMT_URL_QUERY) {	/* Cannot have ?para=value etc in local filename */
 		c = strchr (file_name, '?');
 		if (c) c[0] = '\0';	/* Chop off ?CGI parameters from local_path */
 	}
@@ -907,6 +954,7 @@ unsigned int gmt_download_file_if_not_found (struct GMT_CTRL *GMT, const char* f
 		else
 			GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "Download complete [Got %s].\n", gmt_memory_use (buf.st_size, 3));
 	}
+	gmt_M_str_free (file);
 
 	return (pos);
 }
@@ -1302,7 +1350,7 @@ GMT_LOCAL char **api_process_keys (void *API, const char *string, char type, str
 		}
 		else if (!strchr ("{}()-", s[k][K_DIR])) {	/* Key letter Z not in {|(|}|)|-: which means that option -Z, if given, changes the type of primary output to Y */
 			/* E.g, pscoast has >DM and this turns >X} to >D} only when -M is used.  Also, modifiers may be involved.
-			   e.g, gmtspatial : New key “”>TN+r” means if -N+r is given then set >T}.  Just giving -N will not trigger the change.
+			   e.g, gmtspatial : New key ">TN+r" means if -N+r is given then set >T}.  Just giving -N will not trigger the change.
 			   e.g., pscoast ">TE+w-rR" means if -E is given with modifier +w _and_ one of +r or +R is then set to >T}.
 			   If X is not - then we will find the other KEY with X and select that as the one to change; this could
 			   be used to change the primary INPUT type.  For instance, grdimage expects grid input (<G{+) but with
@@ -1407,7 +1455,7 @@ GMT_LOCAL unsigned int api_determine_dimension (struct GMTAPI_CTRL *API, char *t
 	/* Examine greenspline's -R option to learn the dimensionality of the domain (1, 2, or 3) */
 	unsigned int n_slashes = 0;
 	size_t k;
-	const size_t s_length = strlen(text); 
+	const size_t s_length = strlen(text);
 
 	/* First catch the simple -R? which means a grid is passed by the API, hence dimension is 2 */
 	if (text[0] == '?' && text[1] == '\0') return 2;	/* A marker means a grid only, so done */
@@ -1885,7 +1933,7 @@ GMT_LOCAL int api_open_grd (struct GMT_CTRL *GMT, char *file, struct GMT_GRID *G
 		gmt_M_err_trap (nc_open (G->header->name, cdf_mode[r_w], &R->fid));
 		R->edge[0] = 1;
 		R->edge[1] = G->header->n_columns;
-		R->start[0] = G->header->n_rows-1;
+		R->start[0] = G->header->row_order == k_nc_start_north ? 0 : G->header->n_rows-1;
 		R->start[1] = 0;
 	}
 	else {		/* Regular binary file with/w.o standard GMT header, or Sun rasterfile */
@@ -3508,7 +3556,7 @@ GMT_LOCAL struct GMT_DATASET *api_import_dataset (struct GMTAPI_CTRL *API, int o
 				n_columns = (GMT->common.i.active) ? GMT->common.i.n_cols : M_obj->n_columns;
 				D_obj->table[D_obj->n_tables] = gmt_M_memory (GMT, NULL, 1, struct GMT_DATATABLE);
 				D_obj->table[D_obj->n_tables]->segment = gmt_M_memory (GMT, NULL, s_alloc, struct GMT_DATASEGMENT *);
-				S = D_obj->table[D_obj->n_tables]->segment[0] = 
+				S = D_obj->table[D_obj->n_tables]->segment[0] =
 				    GMT_Alloc_Segment (API, GMT_IS_DATASET, M_obj->n_rows, n_columns, NULL, NULL);
 				GMT_2D_to_index = api_get_2d_to_index (API, M_obj->shape, GMT_GRID_IS_REAL);
 				api_get_val = api_select_get_function (API, M_obj->type);
@@ -5423,7 +5471,7 @@ GMT_LOCAL int api_colors2cpt (struct GMTAPI_CTRL *API, char **str, unsigned int
 	if (!(pch = strchr (*str, ','))) {	/* No comma so presumably a regular CPT name, but check for single color entry */
 		bool gray = true;
 		size_t k;
-		const size_t s_length = strlen(*str); 
+		const size_t s_length = strlen(*str);
 		 /* Since "gray" is both a master CPT and a shade we must let the CPT take precedence */
 		if (!strcmp (*str, "gray"))
 			return (0);
@@ -5837,7 +5885,7 @@ void *GMT_Create_Session (const char *session, unsigned int pad, unsigned int mo
 	}
 
 	/* Set temp directory used by GMT */
-	
+
 #ifdef WIN32
 	if ((dir = getenv ("TEMP")))	/* Standard Windows temp directory designation */
 		API->tmp_dir = strdup (dir);
@@ -6731,7 +6779,7 @@ void *GMT_Read_VirtualFile_ (char *string, int len) {
  /*! . */
 int GMT_Init_VirtualFile (void *V_API, unsigned int mode, const char *name) {
 	/* Reset a virtual file back to its original configuration so that it can be
-	 * repurposed for reading or writing again. 
+	 * repurposed for reading or writing again.
 	 */
 	int object_ID = GMT_NOTSET, item;
 	struct GMTAPI_DATA_OBJECT *S = NULL;
@@ -6788,7 +6836,7 @@ void *GMT_Read_Data (void *V_API, unsigned int family, unsigned int method, unsi
 	module_input = (family & GMT_VIA_MODULE_INPUT);	/* Are we reading a resource that should be considered a module input? */
 	family -= module_input;
 	API->module_input = (module_input) ? true : false;
-	if (infile && strpbrk (infile, "*?[]") && !api_file_with_netcdf_directive (API, infile)) {	/* Gave a wildcard filename */
+	if (!gmt_M_file_is_cache(infile) && !gmt_M_file_is_url(infile) && infile && strpbrk (infile, "*?[]") && !api_file_with_netcdf_directive (API, infile)) {	/* Gave a wildcard filename */
 		uint64_t n_files;
 		unsigned int k;
 		char **filelist = NULL;
@@ -7598,7 +7646,7 @@ int GMT_Put_Record (void *V_API, unsigned int mode, void *record) {
 						D_obj->n_columns = T_obj->n_columns = API->GMT->common.b.ncol[GMT_OUT];
 					else {
 						GMT_Report (API, GMT_MSG_DEBUG, "GMTAPI: Error: GMT_Put_Record does not know the number of columns\n");
-						return_error (API, GMT_N_COLS_NOT_SET); 
+						return_error (API, GMT_N_COLS_NOT_SET);
 					}
 				}
 				count = API->GMT->current.io.curr_pos[GMT_OUT];	/* Short hand to counters for table (not used as == 0), segment, row */
@@ -7895,15 +7943,15 @@ int GMT_Get_Row (void *V_API, int row_no, struct GMT_GRID *G, float *row) {
 	else if (fmt[0] == 'n') {	/* Get one NetCDF row, COARDS-compliant format */
 		if (row_no < 0) {	/* Special seek instruction */
 			R->row = abs (row_no);
-			R->start[0] = G->header->n_rows - 1 - R->row;
+			R->start[0] = G->header->row_order == k_nc_start_north ? R->row : G->header->n_rows - 1 - R->row;
 			return (GMT_NOERROR);
 		}
 		else if (!R->auto_advance) {
 			R->row = row_no;
-			R->start[0] = G->header->n_rows - 1 - R->row;
+			R->start[0] = G->header->row_order == k_nc_start_north ? R->row : G->header->n_rows - 1 - R->row;
 		}
 		gmt_M_err_trap (nc_get_vara_float (R->fid, G->header->z_id, R->start, R->edge, row));
-		if (R->auto_advance) R->start[0] --;	/* Advance to next row if auto */
+		if (R->auto_advance) R->start[0] -= G->header->row_order;	/* Advance to next row if auto */
 	}
 	else {			/* Get a native binary row */
 		size_t n_items;
@@ -7980,9 +8028,9 @@ int GMT_Put_Row (void *V_API, int rec_no, struct GMT_GRID *G, float *row) {
 			if (R->auto_advance) R->start[0] += R->edge[0];
 			break;
 		case 'n':
-			if (!R->auto_advance) R->start[0] = G->header->n_rows - 1 - rec_no;
+			if (!R->auto_advance) R->start[0] = G->header->row_order = k_nc_start_north ? rec_no : G->header->n_rows - 1 - rec_no;
 			gmt_M_err_trap (nc_put_vara_float (R->fid, G->header->z_id, R->start, R->edge, row));
-			if (R->auto_advance) R->start[0] --;
+			if (R->auto_advance) R->start[0] -= G->header->row_order;
 			break;
 		default:
 			if (!R->auto_advance && fseek (R->fp, (off_t)(GMT_GRID_HEADER_SIZE + rec_no * R->n_byte), SEEK_SET)) return (GMT_GRDIO_SEEK_FAILED);
@@ -9645,8 +9693,8 @@ struct GMT_RESOURCE *GMT_Encode_Options (void *V_API, const char *module_name, i
 	 *   the primary input and hence we read that as well.
 	 *
 	 *   A few modules will specify Z as some letter not in {|(|}|)|-, which means that normally these modules
-	 *   will produce whatever output is specified by the primary setting, but if the "-Z" option is given the primary
-	 *   output will be changed to the given type Y.  Also, modifiers may be involved. 	The full syntax for this is
+	 *   will expect/produce whatever input/output is specified by the primary setting, but if the "-Z" option is given the primary
+	 *   input/output will be changed to the given type Y.  Also, modifiers may be involved. The full syntax for this is
 	 *   XYZ+abc...-def...: We do the substitution of output type to Y only if
 	 *      1. -Z is given
 	 *      2. -Z contains ALL the modifiers +a, +b, +c, ...
@@ -9660,7 +9708,7 @@ struct GMT_RESOURCE *GMT_Encode_Options (void *V_API, const char *module_name, i
 	 *   3. grdcontour normally writes PostScript but grdcontour -D will instead export data to a file set by -D, so its key
 	 *      contains the entry "DDD": When -D is active then the PostScript key ">X}" morphs into "DD}" and
 	 *      thus allows for a data set export instead.
-	 *   4. gmtspatial : New key “”>TN+r” means if -N[...]+r is given then set >T}.  Just giving -N without the given
+	 *   4. gmtspatial : New key ">TN+r" means if -N[...]+r is given then set >T}.  Just giving -N without the given
 	 *      modifier +r will not trigger the change.
 	 *   5. pscoast ">TE+w-rR" means if -E given with modifier +w and one of +r or +R are then set to >T}.
 	 *
@@ -9697,7 +9745,8 @@ struct GMT_RESOURCE *GMT_Encode_Options (void *V_API, const char *module_name, i
 	strcpy (module, module_name);			/* This string can grow by 3 if need be */
 	/* 0. Get the keys for the module, possibly prepend "gmt" to module if required, or list modules and return NULL if unknown module */
 	if ((keys = api_get_moduleinfo (V_API, module)) == NULL) {	/* Gave an unknown module */
-		GMT_Call_Module (V_API, NULL, GMT_MODULE_PURPOSE, NULL);	/* List the available modules */
+		if (GMT_Call_Module (V_API, NULL, GMT_MODULE_PURPOSE, NULL))	/* List the available modules */
+			return_null (NULL, GMT_NOT_A_VALID_MODULE);
 		gmt_M_str_free (module);
 		return_null (NULL, GMT_NOT_A_VALID_MODULE);	/* Unknown module code */
 	}
@@ -9724,7 +9773,7 @@ struct GMT_RESOURCE *GMT_Encode_Options (void *V_API, const char *module_name, i
 				}
 			}
 		}
-		if (delete != *head) GMT_Delete_Option (API, delete);
+		GMT_Delete_Option (API, delete, head);
 	}
 	/* 1c. Check if this is the grdconvert module, which uses the syntax "infile outfile" without any option flags */
 	else if (!strncmp (module, "grdconvert", 10U) && (opt = GMT_Find_Option (API, GMT_OPT_INFILE, *head))) {
@@ -10392,7 +10441,9 @@ int GMT_Get_Values_ (char *arg, double par[], int len) {
 
 /* Here lies the very basic F77 support for grid read and write only. It is assumed that no grid padding is required */
 
-int GMT_F77_readgrdinfo_ (unsigned int dim[], double limit[], double inc[], char *title, char *remark, const char *name) {
+#define F_STRNCPY(dst,src,ldst,lsrc) { int l = MIN(ldst-1, lsrc); strncpy (dst, src, l); dst[l] = '\0'; }
+
+int gmt_f77_readgrdinfo_ (unsigned int dim[], double limit[], double inc[], char *title, char *remark, const char *name, int ltitle, int lremark, int lname) {
 	/* Note: When returning, dim[2] holds the registration (0 = gridline, 1 = pixel).
 	 * limit[4-5] holds zmin/zmax. limit must thus at least have a length of 6.
 	 */
@@ -10406,10 +10457,11 @@ int GMT_F77_readgrdinfo_ (unsigned int dim[], double limit[], double inc[], char
 		return GMT_ARG_IS_NULL;
 	}
 	if ((API = GMT_Create_Session (argv, 0U, 0U, NULL)) == NULL) return GMT_MEMORY_ERROR;
-	file = strdup (name);
+	file = strndup (name, lname);
 
 	/* Read the grid header */
 
+	gmt_M_memset (&header, 1, struct GMT_GRID_HEADER);	/* To convince Coverity that header->index_function has been initialized */
 	if (gmtlib_read_grd_info (API->GMT, file, &header)) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error opening file %s\n", file);
 		gmt_M_str_free (file);
@@ -10425,14 +10477,14 @@ int GMT_F77_readgrdinfo_ (unsigned int dim[], double limit[], double inc[], char
 	limit[ZLO] = header.z_min;
 	limit[ZHI] = header.z_max;
 	dim[GMT_Z] = header.registration;
-	if (title) strncpy (title, header.title, GMT_GRID_TITLE_LEN80);
-	if (remark) strncpy (remark, header.remark, GMT_GRID_REMARK_LEN160);
+	if (title) F_STRNCPY (title, header.title, ltitle, GMT_GRID_TITLE_LEN80);
+	if (remark) F_STRNCPY (remark, header.remark, lremark, GMT_GRID_REMARK_LEN160);
 
 	if (GMT_Destroy_Session (API) != GMT_NOERROR) return GMT_RUNTIME_ERROR;
 	return GMT_NOERROR;
 }
 
-int GMT_F77_readgrd_ (float *array, unsigned int dim[], double limit[], double inc[], char *title, char *remark, const char *name) {
+int gmt_f77_readgrd_ (float *array, unsigned int dim[], double limit[], double inc[], char *title, char *remark, const char *name, int ltitle, int lremark, int lname) {
 	/* Note: When called, dim[2] is 1 we allocate the array, otherwise we assume it has enough space
 	 * Also, if dim[3] == 1 then we transpose the array before writing.
 	 * When returning, dim[2] holds the registration (0 = gridline, 1 = pixel).
@@ -10450,10 +10502,10 @@ int GMT_F77_readgrd_ (float *array, unsigned int dim[], double limit[], double i
 		return GMT_ARG_IS_NULL;
 	}
 	if ((API = GMT_Create_Session (argv, 0U, 0U, NULL)) == NULL) return GMT_MEMORY_ERROR;
-	file = strdup (name);
+	file = strndup (name, lname);
 
 	/* Read the grid header */
-	memset (&header, 0, sizeof(struct GMT_GRID_HEADER));	/* To convince Coverity that header->index_function has been initialized */
+	gmt_M_memset (&header, 1, struct GMT_GRID_HEADER);	/* To convince Coverity that header->index_function has been initialized */
 	gmt_grd_init (API->GMT, &header, NULL, false);
 	if (gmtlib_read_grd_info (API->GMT, file, &header)) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error opening file %s\n", file);
@@ -10481,14 +10533,14 @@ int GMT_F77_readgrd_ (float *array, unsigned int dim[], double limit[], double i
 	limit[ZLO] = header.z_min;
 	limit[ZHI] = header.z_max;
 	dim[GMT_Z] = header.registration;
-	if (title) strncpy (title, header.title, GMT_GRID_TITLE_LEN80);
-	if (remark) strncpy (remark, header.remark, GMT_GRID_REMARK_LEN160);
+	if (title) F_STRNCPY (title, header.title, ltitle, GMT_GRID_TITLE_LEN80);
+	if (remark) F_STRNCPY (remark, header.remark, lremark, GMT_GRID_REMARK_LEN160);
 
 	if (GMT_Destroy_Session (API) != GMT_NOERROR) return GMT_RUNTIME_ERROR;
 	return GMT_NOERROR;
 }
 
-int GMT_F77_writegrd_ (float *array, unsigned int dim[], double limit[], double inc[], const char *title, const char *remark, const char *name) {
+int gmt_f77_writegrd_ (float *array, unsigned int dim[], double limit[], double inc[], const char *title, const char *remark, const char *name, int ltitle, int lremark, int lname) {
 	/* Note: When called, dim[2] holds the registration (0 = gridline, 1 = pixel).
 	 * Also, if dim[3] == 1 then we transpose the array before writing.  */
  	unsigned int no_pad[4] = {0, 0, 0, 0};
@@ -10505,9 +10557,9 @@ int GMT_F77_writegrd_ (float *array, unsigned int dim[], double limit[], double
 		return GMT_ARG_IS_NULL;
 	}
 	if ((API = GMT_Create_Session (argv, 0U, 0U, NULL)) == NULL) return GMT_MEMORY_ERROR;
-	file = strdup (name);
+	file = strndup (name, lname);
 
-	memset (&header, 0, sizeof(struct GMT_GRID_HEADER));	/* To convince Coverity that header->index_function has been initialized */
+	gmt_M_memset (&header, 1, struct GMT_GRID_HEADER);	/* To convince Coverity that header->index_function has been initialized */
 	gmt_grd_init (API->GMT, &header, NULL, false);
 	if (full_region (limit)) {	/* Here that means limit was not properly given */
 		GMT_Report (API, GMT_MSG_NORMAL, "Grid domain not specified for %s\n", file);
@@ -10529,8 +10581,8 @@ int GMT_F77_writegrd_ (float *array, unsigned int dim[], double limit[], double
 	header.n_columns = dim[GMT_X];	header.n_rows = dim[GMT_Y];
 	header.registration = dim[GMT_Z];
 	gmt_set_grddim (API->GMT, &header);
-	if (title) strncpy (header.title, title, GMT_GRID_TITLE_LEN80-1);
-	if (remark) strncpy (header.remark, remark, GMT_GRID_REMARK_LEN160-1);
+	if (title) F_STRNCPY (header.title, title, GMT_GRID_TITLE_LEN80, ltitle);
+	if (remark) F_STRNCPY (header.remark, remark, GMT_GRID_REMARK_LEN160, lremark);
 
 	if (dim[3] == 1) gmtlib_inplace_transpose (array, header.n_rows, header.n_columns);
 
@@ -10548,6 +10600,32 @@ int GMT_F77_writegrd_ (float *array, unsigned int dim[], double limit[], double
 	return GMT_NOERROR;
 }
 
+/* wrappers for several Fortran compilers */
+#define F77_ARG1 unsigned int dim[], double limit[], double inc[], char *title, char *remark, const char *name, int ltitle, int lremark, int lname
+#define F77_ARG2 dim, limit, inc, title, remark, name, ltitle, lremark, lname
+int gmt_f77_readgrdinfo__(F77_ARG1) { return gmt_f77_readgrdinfo_ (F77_ARG2); }
+int gmt_f77_readgrdinfo  (F77_ARG1) { return gmt_f77_readgrdinfo_ (F77_ARG2); }
+int GMT_F77_READGRDINFO_ (F77_ARG1) { return gmt_f77_readgrdinfo_ (F77_ARG2); }
+int GMT_F77_READGRDINFO  (F77_ARG1) { return gmt_f77_readgrdinfo_ (F77_ARG2); }
+#undef  F77_ARG1
+#undef  F77_ARG2
+
+#define F77_ARG1 float *array, unsigned int dim[], double limit[], double inc[], char *title, char *remark, const char *name, int ltitle, int lremark, int lname
+#define F77_ARG2 array, dim, limit, inc, title, remark, name, ltitle, lremark, lname
+int gmt_f77_readgrd__ (F77_ARG1) { return gmt_f77_readgrd_ (F77_ARG2); }
+int gmt_f77_readgrd   (F77_ARG1) { return gmt_f77_readgrd_ (F77_ARG2); }
+int GMT_F77_READGRD_  (F77_ARG1) { return gmt_f77_readgrd_ (F77_ARG2); }
+int GMT_F77_READGRD   (F77_ARG1) { return gmt_f77_readgrd_ (F77_ARG2); }
+#undef  F77_ARG1
+
+#define F77_ARG1 float *array, unsigned int dim[], double limit[], double inc[], const char *title, const char *remark, const char *name, int ltitle, int lremark, int lname
+int gmt_f77_writegrd__ (F77_ARG1) { return gmt_f77_writegrd_ (F77_ARG2); }
+int gmt_f77_writegrd   (F77_ARG1) { return gmt_f77_writegrd_ (F77_ARG2); }
+int GMT_F77_WRITEGRD_  (F77_ARG1) { return gmt_f77_writegrd_ (F77_ARG2); }
+int GMT_F77_WRITEGRD   (F77_ARG1) { return gmt_f77_writegrd_ (F77_ARG2); }
+#undef  F77_ARG1
+#undef  F77_ARG2
+
 char *GMT_Duplicate_String (void *API, const char* string) {
 	/* Duplicate a string. The interest of this function is to make the memory allocation
 	   inside the GMT lib so that GMT_Destroy_Data we can free it without any concerns of
diff --git a/src/gmt_calclock.c b/src/gmt_calclock.c
index 34069ca..fc1f89d 100644
--- a/src/gmt_calclock.c
+++ b/src/gmt_calclock.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_calclock.c 17451 2017-01-16 21:36:06Z pwessel $
+ *	$Id: gmt_calclock.c 18312 2017-06-02 17:21:39Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -276,7 +276,8 @@ int64_t gmt_rd_from_gymd (struct GMT_CTRL *GMT, int gy, int gm, int gd) {
 	int day_offset, yearm1;
 
 	if (gm < 1 || gm > 12 || gd < 1 || gd > 31) {
-		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Syntax error: gmt_rd_from_gymd given bad month or day.\n");
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Syntax error: gmt_rd_from_gymd given bad month (%d) or day (%d).\n", gm, gd);
+		return 0;
 	}
 
 	if (gm <= 2)
diff --git a/src/gmt_common.h b/src/gmt_common.h
index 250888c..5f1d0ed 100644
--- a/src/gmt_common.h
+++ b/src/gmt_common.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_common.h 18133 2017-05-05 04:30:51Z pwessel $
+ *	$Id: gmt_common.h 18304 2017-06-02 04:58:28Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -83,9 +83,9 @@ struct GMT_COMMON {
 		bool active;
 	} P;
 	struct R {	/* -Rw/e/s/n[/z_min/z_max][r] or -Rgridfile */
-		bool active[4];	/* 0 = -R, 1 = inc, 2 = -r, 3 = read grid */
+		bool active[4];	/* RSET = 0: -R, ISET = 1: inc, GSET = 2: -r, FSET = 3: read grid */
 		bool oblique;	/* true when -R...r was given (oblique map, probably), else false (map borders are meridians/parallels) */
-		uint32_t registration;	/* Registration mode of a grid given via -Rgrid; only consulted if active[FSET] == true */
+		uint32_t registration;	/* Registration mode of a grid given via -r or -Rgrid */
 		double wesn[6];		/* Boundaries of west, east, south, north, low-z and hi-z */
 		double wesn_orig[4];	/* Original Boundaries of west, east, south, north (oblique projection may reset wesn above) */
 		double inc[2];	/* For grid increments set via -Idx/dy or implicitly via -Ggrid */
@@ -186,8 +186,10 @@ struct GMT_COMMON {
 		bool truncate;	/* Defaults to false */
 		unsigned int interpolant;	/* Defaults to BCR_BICUBIC */
 		bool bc_set;	/* true if +b was parsed */
+		bool periodic[2];	/* For periodic non-geographic grids */
 		char BC[4];		/* For BC settings via +bg|n[x|y]|p[x|y] */
 		double threshold;	/* Defaults to 0.5 */
+		double range[2], half_range[2];	/* For periodic non-geographic grids */
 		char string[GMT_LEN64];	/* Copy of argument */
 	} n;
 	struct o {	/* -o<col>|<colrange>,... */
diff --git a/src/gmt_config.h.in b/src/gmt_config.h.in
index 339c407..4effbe4 100644
--- a/src/gmt_config.h.in
+++ b/src/gmt_config.h.in
@@ -1,5 +1,5 @@
 /*
- * $Id: gmt_config.h.in 17451 2017-01-16 21:36:06Z pwessel $
+ * $Id: gmt_config.h.in 18340 2017-06-08 02:50:06Z pwessel $
  *
  *  Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo,
  *  F. Wobbe, and J. Luis
@@ -30,6 +30,8 @@
  * HAVE_<func> is undefined or defined as 1 depending on
  * whether or not <func> is available on this system.
  *
+ * For adding more HAVE_**** checks, see ConfigureChecks.cmake.
+ *
  * Version: @GMT_VERSION_STRING@
  */
 
@@ -120,7 +122,7 @@
 #cmakedefine HAVE__PCLOSE
 #cmakedefine HAVE_POPEN
 #cmakedefine HAVE__POPEN
-#cmakedefine HAVE_POSIX_MEMALIGN
+#cmakedefine HAVE_POSIX_MEMALIGN 1
 #cmakedefine HAVE_QSORT_R_GLIBC
 #cmakedefine HAVE_SETLOCALE
 #cmakedefine HAVE__SETMODE
@@ -135,6 +137,7 @@
 #cmakedefine HAVE_STRICMP
 #cmakedefine HAVE_STRNICMP
 #cmakedefine HAVE_STRDUP
+#cmakedefine HAVE_STRNDUP
 #cmakedefine HAVE_STRSEP
 #cmakedefine HAVE_STRTOD
 #cmakedefine HAVE_STRTOF_
diff --git a/src/gmt_constants.h b/src/gmt_constants.h
index 19b6a9a..af7aa2b 100644
--- a/src/gmt_constants.h
+++ b/src/gmt_constants.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_constants.h 18171 2017-05-07 02:37:02Z pwessel $
+ *	$Id: gmt_constants.h 18304 2017-06-02 04:58:28Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -75,6 +75,9 @@
 
 #define GMT_PAD_DEFAULT	2U		/* Default is 2 rows and 2 cols for grid padding */
 
+#define GMT_ASCII_GS	29	/* ASCII code for group separator (temporarily replacing tabs) */
+#define GMT_ASCII_US	31	/* ASCII code for unit separator (temporarily replacing spaces in quoted text) */
+
 /*! Various allocation-length parameters */
 enum GMT_enum_length {
 	GMT_DIM_SIZE	= 4U,	/* Length of dim array used in Read|Creat Data */
@@ -351,6 +354,7 @@ enum GMT_enum_stairpath {GMT_STAIRS_OFF = 0,	/* Default: No stairclimbing */
 	GMT_STAIRS_X};	/* Move horizontally (parallel) to next point along x, then vertically along y */
 
 enum GMT_enum_cdist {GMT_CARTESIAN_DIST	 = 0,	/* Cartesian 2-D x,y data, r = hypot */
+	GMT_CARTESIAN_DIST_PERIODIC,		/* Cartesian 2-D x,y data,but with periodic BCs */
 	GMT_CARTESIAN_DIST2,		/* Cartesian 2-D x,y data, return r^2 to avoid hypot */
 	GMT_CARTESIAN_DIST_PROJ,	/* Project lon,lat to Cartesian 2-D x,y data, then get distance */
 	GMT_CARTESIAN_DIST_PROJ2,	/* Same as --"-- but return r^2 to avoid hypot */
@@ -378,7 +382,7 @@ enum GMT_enum_curl {GMT_REGULAR_FILE = 0,	/* Regular file the may or may not exi
 	GMT_CACHE_FILE = 1,	/* Temporary GMT test data file destined for the cache */
 	GMT_DATA_FILE  = 2,	/* Official GMT data file destined for the user's user dir */
 	GMT_URL_FILE   = 3,	/* Data given by an URL destined for the cache */
-	GMT_URL_CMD    = 4,	/* Data given by an URL CGI command destined for the cache */
+	GMT_URL_QUERY  = 4,	/* Data given by an URL CGI command destined for the cache */
 	GMT_CACHE_DIR  = 0,	/* Use the cache directory */
 	GMT_DATA_DIR   = 1};	/* Use the data directory */
 
diff --git a/src/gmt_dcw.c b/src/gmt_dcw.c
index 42c2afa..0b7e950 100644
--- a/src/gmt_dcw.c
+++ b/src/gmt_dcw.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_dcw.c 18024 2017-04-23 20:44:58Z pwessel $
+ *	$Id: gmt_dcw.c 18363 2017-06-12 01:30:50Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -241,6 +241,7 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 	struct GMT_DATASEGMENT *P = NULL, *S = NULL;
 	struct GMT_DCW_COUNTRY *GMT_DCW_country = NULL;
 	struct GMT_DCW_STATE *GMT_DCW_state = NULL;
+	struct GMT_QUAD *Q = NULL;
 
 	for (j = ks = 0; j < F->n_items; j++) {
 		if (!F->item[j]->codes || F->item[j]->codes[0] == '\0') continue;
@@ -255,6 +256,7 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 			return NULL;
 		}
 		wesn[XLO] = wesn[YLO] = +9999.0;	wesn[XHI] = wesn[YHI] = -9999.0;	/* Initialize so we can shrink it below */
+		Q = gmt_quad_init (GMT, 1);
 	}
 
 	if (dcw_load_lists (GMT, &GMT_DCW_country, &GMT_DCW_state, NULL, n_bodies)) return NULL;	/* Something went wrong */
@@ -276,7 +278,10 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 					order[n_items] = j;	/* So we know which color/pen to apply for this item */
 					n_items++;
 				}
-				GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "Continent code expanded from %s to %s [%d countries]\n", F->item[j]->codes, list, n_items);
+				if (n_items)
+					GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "Continent code expanded from %s to %s [%d countries]\n", F->item[j]->codes, list, n_items);
+				else
+					GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "Continent code =%s unrecognized\n", code);
 			}
 			else {	/* Just append this single one */
 				if (n_items) strcat (list, ",");
@@ -286,10 +291,20 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 			}
 		}
 	}
-	GMT_Report (GMT->parent, GMT_MSG_DEBUG, "Requested %d DCW items: %s\n", n_items, list);
+	if (n_items)
+		GMT_Report (GMT->parent, GMT_MSG_DEBUG, "Requested %d DCW items: %s\n", n_items, list);
+	else {
+		GMT_Report (GMT->parent, GMT_MSG_DEBUG, "No countries selected\n");
+		gmt_M_free (GMT, order);
+		gmt_M_free (GMT, Q);
+		gmt_M_free (GMT, GMT_DCW_country);
+		gmt_M_free (GMT, GMT_DCW_state);
+		return NULL;
+	}
 
 	if (!dcw_get_path (GMT, "dcw-gmt", ".nc", path)) {
 		gmt_M_free (GMT, order);
+		gmt_M_free (GMT, Q);
 		return NULL;
 	}
 
@@ -303,6 +318,8 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 		if ((D = GMT_Create_Data (GMT->parent, GMT_IS_DATASET, GMT_IS_POLY, 0, dim, NULL, NULL, 0, 0, NULL)) == NULL) {
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Unable to create empty dataset for DCW polygons\n");
 			gmt_free_segment (GMT, &P);
+			gmt_M_free (GMT, Q);
+			gmt_M_free (GMT, order);
 			return NULL;
 		}
 	}
@@ -311,6 +328,7 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Cannot open file %s!\n", path);
 		gmt_free_segment (GMT, &P);
 		gmt_M_free (GMT, order);
+		gmt_M_free (GMT, Q);
 		return NULL;
 	}
 
@@ -321,17 +339,20 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Cannot obtain attribute version\n");
 			gmt_free_segment (GMT, &P);
 			gmt_M_free (GMT, order);
+			gmt_M_free (GMT, Q);
 			return NULL;
 		}
 		if ((retval = nc_get_att_text (ncid, NC_GLOBAL, "title", title))) {
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Cannot obtain attribute title\n");
 			gmt_free_segment (GMT, &P);
+			gmt_M_free (GMT, Q);
 			gmt_M_free (GMT, order);
 			return NULL;
 		}
 		if ((retval = nc_get_att_text (ncid, NC_GLOBAL, "source", source))) {
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Cannot obtain attribute source\n");
 			gmt_free_segment (GMT, &P);
+			gmt_M_free (GMT, Q);
 			gmt_M_free (GMT, order);
 			return NULL;
 		}
@@ -409,6 +430,8 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 		if ((retval = nc_get_att_double (ncid, yvarid, "max", &north))) continue;
 		if ((retval = nc_get_att_double (ncid, yvarid, "scale", &yscl))) continue;
 		if (mode & GMT_DCW_REGION) {	/* Just update wesn */
+			gmt_quad_add (GMT, &Q[GMT_X], west);
+			gmt_quad_add (GMT, &Q[GMT_X], east);
 			if (west < wesn[XLO])  wesn[XLO] = west;
 			if (east > wesn[XHI])  wesn[XHI] = east;
 			if (south < wesn[YLO]) wesn[YLO] = south;
@@ -494,6 +517,10 @@ struct GMT_DATASET * gmt_DCW_operation (struct GMT_CTRL *GMT, struct GMT_DCW_SEL
 	gmt_M_free (GMT, GMT_DCW_state);
 
 	if (mode & GMT_DCW_REGION) {
+		j = gmt_quad_finalize (GMT, &Q[GMT_X]);
+		GMT->current.io.geo.range = Q[GMT_X].range[j];		/* Override this setting explicitly */
+		wesn[XLO] = Q[GMT_X].min[j];	wesn[XHI] = Q[GMT_X].max[j];
+		gmt_M_free (GMT, Q);
 		if (F->adjust) {
 			if (F->extend) {	/* Extend the region by increments */
 				wesn[XLO] -= F->inc[XLO];
diff --git a/src/gmt_defaults.h b/src/gmt_defaults.h
index 810bada..c30fc0f 100644
--- a/src/gmt_defaults.h
+++ b/src/gmt_defaults.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_defaults.h 18041 2017-04-26 23:09:48Z pwessel $
+ *	$Id: gmt_defaults.h 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -108,6 +108,7 @@ struct GMT_DEFAULTS {
 	unsigned int io_nc4_deflation_level;/* NetCDF deflation level on output [0] */
 	bool io_gridfile_shorthand;         /* Use shorthand suffix notation for embedded grid file formats [false] */
 	bool io_header[2];                  /* Input & Output data has header records [false, false] */
+	bool io_header_orig;                /* Copy of Input io_header */
 	bool io_nan_records;                /* Determines what NaNs in input records should mean (beyond skipping the record) */
 	bool io_lonlat_toggle[2];           /* true means read/write I/O as lat/lon instead of lon/lat [false,false] */
 	bool io_blankline[2];               /* true means blank lines should be treated as segment breaks [false,false] */
diff --git a/src/gmt_gdal_librarified.c b/src/gmt_gdal_librarified.c
index aeab4ce..c82f208 100644
--- a/src/gmt_gdal_librarified.c
+++ b/src/gmt_gdal_librarified.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_gdal_librarified.c 17451 2017-01-16 21:36:06Z pwessel $
+ *	$Id: gmt_gdal_librarified.c 18275 2017-05-30 00:23:34Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -16,9 +16,6 @@
  *	Contact info: gmt.soest.hawaii.edu
  *--------------------------------------------------------------------*/
 
-#define ASCII_GS	29	/* ASCII code for group separator (temporarily replacing tabs) */
-#define ASCII_US	31	/* ASCII code for unit separator (temporarily replacing spaces in quoted text) */
-
 GMT_LOCAL char **breakMe(struct GMT_CTRL *GMT, char *in) {
 	/* Breake a string "-aa -bb -cc dd" into tokens "-aa" "-bb" "-cc dd" */
 	/* Based on GMT_Create_Options() */
@@ -33,13 +30,13 @@ GMT_LOCAL char **breakMe(struct GMT_CTRL *GMT, char *in) {
 	 * space, and then replace all ASCII 31 with space at the end (we do the same for tab using ASCII 29 GS (group separator) */
 	for (k = 0, quoted = false; txt_in[k]; k++) {
 		if (txt_in[k] == '\"') quoted = !quoted;	/* Initially false, becomes true at start of quote, then false when exit quote */
-		else if (quoted && txt_in[k] == '\t') txt_in[k] = ASCII_GS;
-		else if (quoted && txt_in[k] == ' ')  txt_in[k] = ASCII_US;
+		else if (quoted && txt_in[k] == '\t') txt_in[k] = GMT_ASCII_GS;
+		else if (quoted && txt_in[k] == ' ')  txt_in[k] = GMT_ASCII_US;
 	}
 	while ((gmt_strtok (txt_in, " ", &pos, p))) {	/* Break up string into separate words, and strip off double quotes */
 		int i, o;
 		for (k = 0; p[k]; k++)
-			if (p[k] == ASCII_GS) p[k] = '\t'; else if (p[k] == ASCII_US) p[k] = ' ';	/* Replace spaces and tabs masked above */
+			if (p[k] == GMT_ASCII_GS) p[k] = '\t'; else if (p[k] == GMT_ASCII_US) p[k] = ' ';	/* Replace spaces and tabs masked above */
 		for (i = o = 0; p[i]; i++)
 			if (p[i] != '\"') p[o++] = p[i];	/* Ignore double quotes */
 		p[o] = '\0';
@@ -57,8 +54,8 @@ GMT_LOCAL char **breakMe(struct GMT_CTRL *GMT, char *in) {
 		}
 	}
 	for (k = 0; txt_in[k]; k++)	/* Restore input string to prestine condition */
-		if (txt_in[k] == ASCII_GS) txt_in[k] = '\t';
-		else if (txt_in[k] == ASCII_US) txt_in[k] = ' ';	/* Replace spaces and tabs masked above */
+		if (txt_in[k] == GMT_ASCII_GS) txt_in[k] = '\t';
+		else if (txt_in[k] == GMT_ASCII_US) txt_in[k] = ' ';	/* Replace spaces and tabs masked above */
 	args[n_args] = NULL;	/* Close the list with a NULL */
 	gmt_M_str_free (txt_in);
 	return args;
diff --git a/src/gmt_gdalread.c b/src/gmt_gdalread.c
index bf33224..112faf3 100644
--- a/src/gmt_gdalread.c
+++ b/src/gmt_gdalread.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_gdalread.c 17998 2017-04-18 21:37:11Z jluis $
+ *	$Id: gmt_gdalread.c 18325 2017-06-06 23:29:37Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -32,6 +32,18 @@
 
 /* Local functions */
 
+GMT_LOCAL GDALDatasetH gdal_open (struct GMT_CTRL *GMT, char *gdal_filename) {
+	char *file = NULL, path[PATH_MAX] = {""};
+	if (gmtlib_check_url_name (gdal_filename))	/* A vis*** URL, pass to GDAL as is */
+		//file = gdal_filename;
+		strcpy (path, gdal_filename);
+	else if ((file = gmt_getdatapath (GMT, gdal_filename, path, R_OK)) == NULL) {	/* Local file not found */
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Unable to find %s.\n", gdal_filename);
+		return (NULL);
+	}
+	return (GDALOpen (path, GA_ReadOnly));
+}
+
 GMT_LOCAL int gdal_decode_columns (struct GMT_CTRL *GMT, char *txt, int *whichBands, unsigned int n_col) {
 	unsigned int n = 0, i, start, stop, pos = 0;
 	char p[GMT_BUFSIZ];
@@ -337,7 +349,7 @@ GMT_LOCAL int populate_metadata (struct GMT_CTRL *GMT, struct GMT_GDALREAD_OUT_C
 	/* ------------------------------------------------------------------------- */
 	/* Open the file (if we can). */
 	/* ------------------------------------------------------------------------- */
-	hDataset = GDALOpen (gdal_filename, GA_ReadOnly);
+	hDataset = gdal_open (GMT, gdal_filename);
 	if (hDataset == NULL) {
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Unable to open %s.\n", gdal_filename);
 		GDALDestroyDriverManager();
@@ -662,7 +674,7 @@ int gmt_is_gdal_grid (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header) {
 	GDALDatasetH hDataset;
 
 	GDALAllRegister();
-	hDataset = GDALOpen(header->name, GA_ReadOnly);
+	hDataset = gdal_open (GMT, header->name);
 
 	if (hDataset == NULL)
 		return (GMT_GRDIO_BAD_VAL);
@@ -848,7 +860,7 @@ int gmt_gdalread (struct GMT_CTRL *GMT, char *gdal_filename, struct GMT_GDALREAD
 		return (GMT_NOERROR);
 	}
 
-	hDataset = GDALOpen(gdal_filename, GA_ReadOnly);
+	hDataset = gdal_open (GMT, gdal_filename);
 
 	if (hDataset == NULL) {
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "GDALOpen failed %s\n", CPLGetLastErrorMsg());
diff --git a/src/gmt_gdalwrite.c b/src/gmt_gdalwrite.c
index 8ffb1e6..7d08265 100644
--- a/src/gmt_gdalwrite.c
+++ b/src/gmt_gdalwrite.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_gdalwrite.c 17468 2017-01-23 01:58:14Z pwessel $
+ *	$Id: gmt_gdalwrite.c 18223 2017-05-17 20:44:05Z remko $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -416,7 +416,7 @@ int gmt_gdalwrite (struct GMT_CTRL *GMT, char *fname, struct GMT_GDALWRITE_CTRL
 	hOutDS = GDALCreateCopy(hDriverOut, fname, hDstDS, bStrict, papszOptions, pfnProgress, NULL);
 	if (hOutDS != NULL) GDALClose(hOutDS);
 
-	OGRFree(pszSRS_WKT);
+	CPLFree(pszSRS_WKT);
 	GDALClose(hDstDS);
 	GDALDestroyDriverManager();
 	gmt_M_free(GMT, outByte);
diff --git a/src/gmt_grdio.c b/src/gmt_grdio.c
index 2bb0a71..95aa4b9 100644
--- a/src/gmt_grdio.c
+++ b/src/gmt_grdio.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- * $Id: gmt_grdio.c 17998 2017-04-18 21:37:11Z jluis $
+ * $Id: gmt_grdio.c 18273 2017-05-29 22:35:19Z pwessel $
  *
  * Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  * See LICENSE.TXT file for copying and redistribution conditions.
@@ -624,7 +624,7 @@ GMT_LOCAL void grdio_pad_grd_off_sub (struct GMT_GRID *G, float *data) {
 GMT_LOCAL void grdio_pad_grd_on_sub (struct GMT_CTRL *GMT, struct GMT_GRID *G, struct GMT_GRID_HEADER *h_old, float *data) {
 	/* Use G for dimensions but operate on data array which points to either the real or imaginary section */
 	uint64_t ij_new, ij_old, row, col, start_last_new_row, end_last_old_row;
-	
+
 	/* See if the index of start of last new row exceeds index of last node in old grid */
 	start_last_new_row = gmt_M_get_nm (GMT, G->header->pad[YHI] + G->header->n_rows - 1, G->header->pad[XLO] + G->header->n_columns + G->header->pad[XHI]) + G->header->pad[XLO];
 	end_last_old_row   = gmt_M_get_nm (GMT, h_old->pad[YHI] + h_old->n_rows - 1, h_old->pad[XLO] + h_old->n_columns + h_old->pad[XHI]) + h_old->pad[XLO] + h_old->n_columns - 1;
@@ -641,7 +641,7 @@ GMT_LOCAL void grdio_pad_grd_on_sub (struct GMT_CTRL *GMT, struct GMT_GRID *G, s
 		ij_new = gmt_M_ijp (G->header, G->header->n_rows-1, G->header->n_columns-1); /* Index of this row's last column in new padded grid  */
 		ij_old = gmt_M_ijp (h_old, h_old->n_rows-1, h_old->n_columns-1);     /* Index of this row's last column in old padded grid */
 		GMT_Report (GMT->parent, GMT_MSG_DEBUG, "grdio_pad_grd_on_sub: last ij_new = %d, last ij_old = %d\n", (int)ij_new, (int)ij_old);
-		
+
 		if (ij_new > ij_old) {	/* Can go back to front */
 			GMT_Report (GMT->parent, GMT_MSG_DEBUG, "grdio_pad_grd_on_sub: Must loop from end to front\n");
 			for (row = G->header->n_rows; row > 0; row--) {
@@ -1473,9 +1473,9 @@ int gmt_grd_RI_verify (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *h, unsigned
 			break;
 	}
 	if (error) return ((mode == 0) ? GMT_GRDIO_RI_OLDBAD : GMT_GRDIO_RI_NEWBAD);
-	
+
 	/* Final polish for geo grids that are global to ensure clean -R settings for the cases -Rg and -Rd */
-	
+
 	if (gmt_M_x_is_lon (GMT, GMT_IN)) {
 		if (fabs (h->wesn[XLO]) < GMT_CONV12_LIMIT) h->wesn[XLO] = 0.0;
 		else if (fabs (180.0+h->wesn[XLO]) < GMT_CONV12_LIMIT) h->wesn[XLO] = -180.0;
@@ -2522,7 +2522,7 @@ int gmtgrdio_init_grdheader (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *heade
 	else {	/* Must infer dimension etc from wesn, inc, registration */
 		if (wesn == NULL) {	/* Must select -R setting */
 			if (!GMT->common.R.active[RSET]) {
-				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "No wesn given and no -R in effect.  Cannot initialize new grid\n");
+				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "No w/e/s/n given and no -R in effect.  Cannot initialize new grid\n");
 				GMT_exit (GMT, GMT_ARG_IS_NULL); return GMT_ARG_IS_NULL;
 			}
 		}
@@ -2530,7 +2530,7 @@ int gmtgrdio_init_grdheader (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *heade
 			gmt_M_memcpy (wesn_dup, wesn, 4, double);
 		if (inc == NULL) {	/* Must select -I setting */
 			if (!GMT->common.R.active[ISET]) {
-				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "No inc given and no -I in effect.  Cannot initialize new grid\n");
+				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "No increment given and no -I in effect.  Cannot initialize new grid\n");
 				GMT_exit (GMT, GMT_ARG_IS_NULL); return GMT_ARG_IS_NULL;
 			}
 		}
@@ -2822,14 +2822,13 @@ bool gmtlib_check_url_name (char *fname) {
 	/* File names starting as below should not be tested for existence or reading permissions as they
 	   are either meant to be accessed on the fly (http & ftp) or they are compressed. So, if any of
 	   the conditions holds true, returns true. All cases are read via GDAL support or other. */
-	if ( !strncmp(fname,"http:",5)        ||
-		!strncmp(fname,"https:",6)    ||
-		!strncmp(fname,"ftp:",4)      ||
-		!strncmp(fname,"/vsizip/",8)  ||
-		!strncmp(fname,"/vsigzip/",9) ||
-		!strncmp(fname,"/vsicurl/",9) ||
-		!strncmp(fname,"/vsimem/",8)  ||
-		!strncmp(fname,"/vsitar/",8) )
+	if (gmt_M_file_is_url (fname)) return (true);	/* Standard http[s], ftp URL */
+	/* Check for virtual file systems for GDAL */
+	if (!strncmp(fname,"/vsizip/", 8)  ||
+		!strncmp(fname,"/vsigzip/",9)  ||
+		!strncmp(fname,"/vsicurl/",9)  ||
+		!strncmp(fname,"/vsimem/", 8)  ||
+		!strncmp(fname,"/vsitar/", 8) )
 
 		return (true);
 	else
@@ -2841,7 +2840,7 @@ unsigned int gmtlib_expand_headerpad (struct GMT_CTRL *GMT, struct GMT_GRID_HEAD
 	/* When using subset with memory grids we cannot actually cut the grid but instead
 	 * must temporarily change the pad to match the desired inner region wesn.  This means
 	 * the pads will change and can be quite large. */
-	
+
 	gmt_M_memcpy (tmp_pad, h->pad, 4, unsigned int);	/* Initialize new pad to the original pad */
 	/* First determine which (and how many, k) of the 4 new boundaries are inside the original region and update the padding: */
 	if (new_wesn[XLO] > h->wesn[XLO]) k++, tmp_pad[XLO] += urint ((new_wesn[XLO] - h->wesn[XLO]) * h->r_inc[GMT_X]);
diff --git a/src/gmt_init.c b/src/gmt_init.c
index c00add6..a5a568f 100644
--- a/src/gmt_init.c
+++ b/src/gmt_init.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_init.c 18188 2017-05-08 05:24:15Z pwessel $
+ *	$Id: gmt_init.c 18453 2017-06-24 22:19:55Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -66,8 +66,8 @@
  *	gmt_parse_R_option
  *	gmt_parse_range
  *	gmt_parse_d_option
- *	gmt_disable_i_opt
- *	gmt_reenable_i_opt
+ *	gmt_disable_ih_opts
+ *	gmt_reenable_ih_opts
  *	gmt_parse_i_option
  *	gmt_parse_o_option
  *	gmt_parse_model
@@ -141,15 +141,15 @@ struct GMT5_params {
 
 static struct GMT5_params GMT5_keywords[]= {
 	{ 1, "COLOR Parameters"},
-	{ 0, "COLOR_BACKGROUND"},	
-	{ 0, "COLOR_FOREGROUND"},	
-	{ 0, "COLOR_NAN"},	
-	{ 0, "COLOR_MODEL"},	
-	{ 0, "COLOR_HSV_MIN_S"},     
-	{ 0, "COLOR_HSV_MAX_S"},     
-	{ 0, "COLOR_HSV_MIN_V"},     
-	{ 0, "COLOR_HSV_MAX_V"},     
-	{ 1, "DIR Parameters"},           
+	{ 0, "COLOR_BACKGROUND"},
+	{ 0, "COLOR_FOREGROUND"},
+	{ 0, "COLOR_NAN"},
+	{ 0, "COLOR_MODEL"},
+	{ 0, "COLOR_HSV_MIN_S"},
+	{ 0, "COLOR_HSV_MAX_S"},
+	{ 0, "COLOR_HSV_MIN_V"},
+	{ 0, "COLOR_HSV_MAX_V"},
+	{ 1, "DIR Parameters"},
 	{ 0, "DIR_CACHE"},
 	{ 0, "DIR_DATA"},
 	{ 0, "DIR_DCW"},
@@ -180,7 +180,7 @@ static struct GMT5_params GMT5_keywords[]= {
 	{ 0, "GMT_CUSTOM_LIBS"},
 	{ 0, "GMT_EXPORT_TYPE"},
 	{ 0, "GMT_EXTRAPOLATE_VAL"},
-	{ 0, "GMT_FFT"},	
+	{ 0, "GMT_FFT"},
 	{ 0, "GMT_HISTORY"},
 	{ 0, "GMT_INTERPOLANT"},
 	{ 0, "GMT_LANGUAGE"},
@@ -915,7 +915,7 @@ GMT_LOCAL int gmtinit_parse_b_option (struct GMT_CTRL *GMT, char *text) {
 	}
 	else if (id == GMT_IN)
 		strncpy (GMT->common.b.string, text, GMT_LEN256-1);
-	
+
 
 	gmtlib_set_bin_io (GMT);	/* Make sure we point to binary i/o functions after processing -b option */
 
@@ -1807,7 +1807,7 @@ GMT_LOCAL int gmtinit_parse_n_option (struct GMT_CTRL *GMT, char *item) {
 				gmt_strncpy (GMT->common.n.BC, &p[1], 4U);
 				for (j = 0; j < MIN (4,strlen (GMT->common.n.BC)); j++) {
 					switch (GMT->common.n.BC[j]) {
-						case 'g': case 'x': case 'y': break;
+						case 'g': case 'p': case 'x': case 'y': break;
 						default:
 							GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error -n: +b<BC> requires <BC> to be g or p[x|y], n[x|y]\n");
 							break;
@@ -1841,7 +1841,7 @@ GMT_LOCAL int gmtinit_parse_p_option (struct GMT_CTRL *GMT, char *item) {
 	char p[GMT_LEN256] = {""}, *c = NULL;
 
 	/* -p[x|y|z]<azim>[/<elev>[/<zlevel>]][+w<lon0>/<lat0>[/<z0>][+v<x0>/<y0>] */
-	
+
 	if (!GMT->common.J.active) {
 		gmt_set_missing_options (GMT, "J");	/* If mode is modern and -J exist in the history, and if an overlay we may add these from history automatically */
 		if (!GMT->common.J.active)
@@ -1853,7 +1853,7 @@ GMT_LOCAL int gmtinit_parse_p_option (struct GMT_CTRL *GMT, char *item) {
 		case 'z': GMT->current.proj.z_project.view_plane = GMT_Z + GMT_ZW; l++; break;
 		default: GMT->current.proj.z_project.view_plane  = GMT_Z + GMT_ZW; break;
 	}
-	
+
 	if ((c = gmt_first_modifier (GMT, item, "vw"))) c[0] = '\0';	/* Chop off modifiers so we can parse the info */
 
 	if ((k = sscanf (&item[l], "%lf/%lf/%lf", &az, &el, &z)) < 1) {
@@ -1896,7 +1896,7 @@ GMT_LOCAL int gmtinit_parse_p_option (struct GMT_CTRL *GMT, char *item) {
 		c[0] = '\0';	/* Chop off all modifiers so az/el/z can be determined */
 		if (!GMT->common.p.do_z_rotation) GMT->current.proj.z_project.fixed = true;
 	}
-	
+
 	if (k >= 2) {
 		GMT->current.proj.z_project.view_azimuth   = az;
 		GMT->current.proj.z_project.view_elevation = el;
@@ -2281,9 +2281,12 @@ GMT_LOCAL int gmtinit_get_history (struct GMT_CTRL *GMT) {
 		sprintf (hfile, "%s/%s", GMT->session.TMPDIR, GMT_HISTORY_FILE);
 	else if (!access (cwd, W_OK))		/* Current directory is writable */
 		sprintf (hfile, "%s", GMT_HISTORY_FILE);
-	else	/* Try home directory instead */
+	else if (GMT->session.HOMEDIR)	/* Try home directory instead */
 		sprintf (hfile, "%s/%s", GMT->session.HOMEDIR, GMT_HISTORY_FILE);
-
+	else {
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Warning: No writable directory found for gmt history - skipping it.\n");
+		return (GMT_NOERROR);
+	}
 	if ((fp = fopen (hfile, "r+")) == NULL) /* In order to place an exclusive lock, fp must be open for writing */
 		return (GMT_NOERROR);	/* OK to be unsuccessful in opening this file */
 
@@ -2365,9 +2368,12 @@ GMT_LOCAL int gmtinit_put_history (struct GMT_CTRL *GMT) {
 		sprintf (hfile, "%s/%s", GMT->session.TMPDIR, GMT_HISTORY_FILE);
 	else if (!access (cwd, W_OK))	/* Current directory is writable */
 		sprintf (hfile, "%s", GMT_HISTORY_FILE);
-	else	/* Try home directory instead */
+	else if (GMT->session.HOMEDIR)	/* Try home directory instead */
 		sprintf (hfile, "%s/%s", GMT->session.HOMEDIR, GMT_HISTORY_FILE);
-
+	else {
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Warning: Unable to determine a writeable directory - gmt history not updated.\n");
+		return (GMT_NOERROR);
+	}
 	if ((fp = fopen (hfile, "w")) == NULL) return (-1);	/* Not OK to be unsuccessful in creating this file */
 
 	/* When we get here the file is open */
@@ -2474,7 +2480,7 @@ GMT_LOCAL int gmtinit_set_env (struct GMT_CTRL *GMT) {
 		/* Use ${GMT_BINARY_DIR}/share to simplify debugging and running in GMT_BINARY_DIR */
 		GMT->session.USERDIR = strdup (GMT_USER_DIR_DEBUG);
 #endif
-	else {	/* Use default path for GMT_USERDIR (~/.gmt) */
+	else if (GMT->session.HOMEDIR) {	/* Use default path for GMT_USERDIR (~/.gmt) */
 		sprintf (path, "%s/%s", GMT->session.HOMEDIR, ".gmt");
 		GMT->session.USERDIR = strdup (path);
 		u = 1;
@@ -2517,7 +2523,7 @@ GMT_LOCAL int gmtinit_set_env (struct GMT_CTRL *GMT) {
 
 	gmt_dos_path_fix (GMT->session.USERDIR);
 	gmt_dos_path_fix (GMT->session.CACHEDIR);
-    if (GMT->session.USERDIR) GMT_Report (GMT->parent, GMT_MSG_DEBUG, "GMT->session.USERDIR = %s [%s]\n", GMT->session.USERDIR, how[u]);
+    if (GMT->session.USERDIR)  GMT_Report (GMT->parent, GMT_MSG_DEBUG, "GMT->session.USERDIR = %s [%s]\n",  GMT->session.USERDIR,  how[u]);
     if (GMT->session.CACHEDIR) GMT_Report (GMT->parent, GMT_MSG_DEBUG, "GMT->session.CACHEDIR = %s [%s]\n", GMT->session.CACHEDIR, how[c]);
 
 	if (gmt_M_compat_check (GMT, 4)) {
@@ -3362,7 +3368,9 @@ GMT_LOCAL int gmtinit_parse5_B_option (struct GMT_CTRL *GMT, char *in) {
 	}
 	no = (GMT->current.map.frame.primary) ? 0 : 1;
 	if (GMT->common.B.string[no][0]) {	/* Append this option */
-		strcat (GMT->common.B.string[no], " ");
+		char group_sep[2] = {" "};
+		group_sep[0] = GMT_ASCII_GS;
+		strcat (GMT->common.B.string[no], group_sep);
 		strncat (GMT->common.B.string[no], in, GMT_LEN256-1);
 	}
 	else
@@ -3409,7 +3417,7 @@ GMT_LOCAL int gmtinit_parse5_B_option (struct GMT_CTRL *GMT, char *in) {
 							error++;
 						}
 						else {
-							strcpy (GMT->current.map.frame.axis[no].label, &p[1]);
+							strncpy (GMT->current.map.frame.axis[no].label, &p[1], GMT_LEN256-1);
 							gmt_handle5_plussign (GMT, GMT->current.map.frame.axis[no].label, NULL, 1);	/* Recover any non-modifier plus signs */
 							gmtlib_enforce_rgb_triplets (GMT, GMT->current.map.frame.axis[no].label, GMT_LEN256);	/* If @; is used, make sure the color information passed on to ps_text is in r/b/g format */
 						}
@@ -3420,7 +3428,7 @@ GMT_LOCAL int gmtinit_parse5_B_option (struct GMT_CTRL *GMT, char *in) {
 							error++;
 						}
 						else {
-							strcpy (GMT->current.map.frame.axis[no].prefix, &p[1]);
+							strncpy (GMT->current.map.frame.axis[no].prefix, &p[1], GMT_LEN64-1);
 							gmt_handle5_plussign (GMT, GMT->current.map.frame.axis[no].prefix, NULL, 1);	/* Recover any non-modifier plus signs */
 							gmtlib_enforce_rgb_triplets (GMT, GMT->current.map.frame.axis[no].prefix, GMT_LEN256);	/* If @; is used, make sure the color information passed on to ps_text is in r/b/g format */
 						}
@@ -3431,7 +3439,7 @@ GMT_LOCAL int gmtinit_parse5_B_option (struct GMT_CTRL *GMT, char *in) {
 							error++;
 						}
 						else {
-							strcpy (GMT->current.map.frame.axis[no].unit, &p[1]);
+							strncpy (GMT->current.map.frame.axis[no].unit, &p[1], GMT_LEN64-1);
 							gmt_handle5_plussign (GMT, GMT->current.map.frame.axis[no].unit, NULL, 1);	/* Recover any non-modifier plus signs */
 							gmtlib_enforce_rgb_triplets (GMT, GMT->current.map.frame.axis[no].unit, GMT_LEN256);	/* If @; is used, make sure the color information passed on to ps_text is in r/b/g format */
 						}
@@ -3487,10 +3495,10 @@ GMT_LOCAL int gmtinit_parse5_B_option (struct GMT_CTRL *GMT, char *in) {
 }
 
 /*! . */
-GMT_LOCAL int gmtinit_parse_B_option (struct GMT_CTRL *GMT, char *in) {
+int gmtlib_parse_B_option (struct GMT_CTRL *GMT, char *in) {
 	int error = 0;
 	if (GMT->common.B.mode == 0) {
-		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Internal error: Calling gmtinit_parse_B_option before gmt_check_b_options somehow\n");
+		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Internal error: Calling gmtlib_parse_B_option before gmt_check_b_options somehow\n");
 		error = 1;
 	}
 	else if (GMT->common.B.mode == -1) {
@@ -3763,6 +3771,7 @@ GMT_LOCAL bool gmtinit_parse_J_option (struct GMT_CTRL *GMT, char *args) {
 				GMT->current.proj.pars[0] = GMT->session.u2u[GMT_M][GMT_INCH] / atof (&args_cp[2]);
 			else
 				GMT->current.proj.pars[0] = gmt_M_to_inch (GMT, args_cp);	/* x-scale */
+			GMT->current.proj.xyz_projection[GMT_X] = GMT_LINEAR;
 			if (l_pos[GMT_X] > 0)
 				GMT->current.proj.xyz_projection[GMT_X] = GMT_LOG10;
 			else if (p_pos[GMT_X] > 0) {
@@ -3793,6 +3802,7 @@ GMT_LOCAL bool gmtinit_parse_J_option (struct GMT_CTRL *GMT, char *args) {
 				else
 					GMT->current.proj.pars[1] = gmt_M_to_inch (GMT, args_cp);	/* y-scale */
 
+				GMT->current.proj.xyz_projection[GMT_Y] = GMT_LINEAR;
 				if (l_pos[GMT_Y] > 0)
 					GMT->current.proj.xyz_projection[GMT_Y] = GMT_LOG10;
 				else if (p_pos[GMT_Y] > 0) {
@@ -3849,6 +3859,7 @@ GMT_LOCAL bool gmtinit_parse_J_option (struct GMT_CTRL *GMT, char *args) {
 				args_cp[t_pos[GMT_Z]] = 0;
 			GMT->current.proj.z_pars[0] = gmt_M_to_inch (GMT, args_cp);	/* z-scale */
 
+			GMT->current.proj.xyz_projection[GMT_Z] = GMT_LINEAR;
 			if (l_pos[GMT_Z] > 0)
 				GMT->current.proj.xyz_projection[GMT_Z] = GMT_LOG10;
 			else if (p_pos[GMT_Z] > 0) {
@@ -4741,7 +4752,7 @@ void gmtinit_conf (struct GMT_CTRL *GMT) {
 	int i, error = 0;
 	double const pt = 1.0/72.0;	/* points to inch */
 	/* Initialize all the settings to standard SI settings */
-	
+
 		/* FORMAT group */
 
 	/* FORMAT_CLOCK_IN */
@@ -5048,7 +5059,7 @@ void gmtinit_conf (struct GMT_CTRL *GMT) {
 
 	if (error)
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Syntax error: Unrecognized value during gmtdefaults initialization.\n");
-	
+
 	if (!strncmp (GMT_DEF_UNITS, "US", 2U))
 		gmtinit_conf_US (GMT);	/* Override with US settings */
 }
@@ -5064,7 +5075,7 @@ void gmtinit_conf_US (struct GMT_CTRL *GMT) {
 	 * PS_MEDIA				a4			letter
 	 * TIME_WEEK_START		Monday		Sunday
 	 */
-	
+
 	/* PROJ_LENGTH_UNIT */
 	case_val = gmt_hash_lookup (GMT, "PROJ_LENGTH_UNIT", keys_hashnode, GMT_N_KEYS, GMT_N_KEYS);
 	if (case_val >= 0) GMT_keywords_updated[case_val] = true;
@@ -5105,7 +5116,7 @@ GMT_LOCAL int gmtinit_init_fonts (struct GMT_CTRL *GMT) {
 	gmt_M_memcpy (GMT->session.font, GMT_standard_fonts, GMT_N_STANDARD_FONTS, struct GMT_FONTSPEC);
 	GMT->session.n_fonts = n_GMT_fonts = i = GMT_N_STANDARD_FONTS;
 
-	/* Then any custom fonts: 
+	/* Then any custom fonts:
 	   To add additional fonts, create a file called PSL_custom_fonts.txt
 	   in GMT/share/postscriptlight and add your extra font information there.
 	   The fontheight below is the height of A for unit fontsize.
@@ -5335,7 +5346,7 @@ GMT_LOCAL struct GMT_CTRL *gmtinit_new_GMT_ctrl (struct GMTAPI_CTRL *API, const
 
 	/* MAP settings */
 
-	gmt_init_distaz (GMT, GMT_MAP_DIST_UNIT, GMT_GREATCIRCLE, GMT_MAP_DIST);	/* Default spherical distance calculations in m */
+	gmt_init_distaz (GMT, 'X', 0, GMT_MAP_DIST);	/* Default distance calculations are in user units */
 
 	GMT->current.map.n_lon_nodes = 360;
 	GMT->current.map.n_lat_nodes = 180;
@@ -5413,14 +5424,14 @@ void gmtlib_explain_options (struct GMT_CTRL *GMT, char *options) {
 	char u, *GMT_choice[2] = {"OFF", "ON"}, *V_code = "qncvld";
 	double s;
 	unsigned int k;
-	size_t s_length; 
+	size_t s_length;
 
 	if (!options) return;
 	if (GMT->common.synopsis.extended) return;	/* Only want to list module-specific options, i.e gave + instead of - */
 	u = GMT->session.unit_name[GMT->current.setting.proj_length_unit][0];
 	s = GMT->session.u2u[GMT_INCH][GMT->current.setting.proj_length_unit];	/* Convert from internal inch to users unit */
 
-	s_length = strlen(options); 
+	s_length = strlen(options);
 	for (k = 0; k < s_length; k++) {
 
 		switch (options[k]) {
@@ -5925,10 +5936,11 @@ void gmtlib_explain_options (struct GMT_CTRL *GMT, char *options) {
 			gmt_message (GMT, "\t   Append x|X or y|Y to identify data gaps in x or y coordinates,\n");
 			gmt_message (GMT, "\t   respectively, and append d|D for distance gaps.  Upper case X|Y|D\n");
 			gmt_message (GMT, "\t   means we first project the points (requires -J).  Append [+|-]<gap>[unit].\n");
-			gmt_message (GMT, "\t   Geographic data: choose from %s [Default is meter (%c)].\n", GMT_LEN_UNITS2_DISPLAY, GMT_MAP_DIST_UNIT);
-			gmt_message (GMT, "\t   For gaps based on mapped coordinates, choose unit from %s [%s].\n",
+			gmt_message (GMT, "\t   For geographic data: choose from %s [Default is meter (%c)].\n", GMT_LEN_UNITS2_DISPLAY, GMT_MAP_DIST_UNIT);
+			gmt_message (GMT, "\t   For gaps based on mapped coordinates: choose unit from %s [%s].\n",
 			             GMT_DIM_UNITS_DISPLAY, GMT->session.unit_name[GMT->current.setting.proj_length_unit]);
-			gmt_message (GMT, "\t   Note: For x|y with time data the unit is controlled by TIME_UNIT.\n");
+			gmt_message (GMT, "\t   For time data: the unit is controlled by TIME_UNIT.\n");
+			gmt_message (GMT, "\t   For generic data: the unit is as the data implies (user units).\n");
 			gmt_message (GMT, "\t   Repeat the -g option to specify multiple criteria, and add -ga\n");
 			gmt_message (GMT, "\t   to indicate that all criteria must be met [just one must be met].\n");
 			break;
@@ -5958,9 +5970,10 @@ void gmtlib_explain_options (struct GMT_CTRL *GMT, char *options) {
 			gmt_message (GMT, "\t   (b = B-spline, c = bicubic, l = bilinear, n = nearest-neighbor) [Default is bicubic].\n");
 			gmt_message (GMT, "\t   Append +a to switch off antialiasing (except for l) [Default: on].\n");
 			gmt_message (GMT, "\t   Append +b<BC> to change boundary conditions.  <BC> can be either:\n");
-			gmt_message (GMT, "\t     g for geographic boundary conditions, or one or both of\n");
-			gmt_message (GMT, "\t     x for periodic boundary conditions on x,\n");
-			gmt_message (GMT, "\t     y for periodic boundary conditions on y.\n");
+			gmt_message (GMT, "\t     g for geographic, p for periodic, and n for natural boundary conditions.\n");
+			gmt_message (GMT, "\t     For p and n you may optionally append x or y [default is both]:\n");
+			gmt_message (GMT, "\t       x for periodic boundary conditions on x,\n");
+			gmt_message (GMT, "\t       y for periodic boundary conditions on y.\n");
 			gmt_message (GMT, "\t   [Default: Natural conditions, unless grid is known to be geographic].\n");
 			gmt_message (GMT, "\t   Append +c to clip interpolated grid to input z-min/max [Default may exceed limits].\n");
 			gmt_message (GMT, "\t   Append +t<threshold> to change the minimum weight in vicinity of NaNs. A threshold of\n");
@@ -6893,7 +6906,7 @@ int gmt_parse_R_option (struct GMT_CTRL *GMT, char *item) {
 
 	strncpy (GMT->common.R.string, item, GMT_LEN256-1);	/* Verbatim copy */
 
-	if (strchr ("LCRlcr", item[0]) && strchr ("TMBtmb", item[1])) {	/* Extended -R option using coordinate codes and grid increments */
+	if (n_slash == 3 && ((strchr ("LCR", item[0]) && strchr ("TMB", item[1])) || (strchr ("LCR", item[1]) && strchr ("TMB", item[0])))) {	/* Extended -R option using coordinate codes and grid increments */
 		char X[2][GMT_LEN64] = {"", ""}, code[3] = {""};
 		double xdim, ydim, orig[2];
 		int n_columns, n_rows, just, part;
@@ -6987,9 +7000,7 @@ int gmt_parse_R_option (struct GMT_CTRL *GMT, char *item) {
 			}
 #endif
 			GMT->common.R.wesn[ZLO] = G->header->z_min;	GMT->common.R.wesn[ZHI] = G->header->z_max;
-			GMT->common.R.active[ISET] = true;
-			GMT->common.R.active[GSET] = true;
-			GMT->common.R.active[FSET] = true;
+			GMT->common.R.active[ISET] = GMT->common.R.active[GSET] = GMT->common.R.active[FSET] = true;
 			if (GMT_Destroy_Data (GMT->parent, &G) != GMT_OK)
 				return (GMT->parent->error);
 			return (GMT_NOERROR);
@@ -7189,16 +7200,19 @@ GMT_LOCAL unsigned int gmtinit_parse_e_option (struct GMT_CTRL *GMT, char *arg)
 	return (GMT_NOERROR);
 }
 
-/*! Routine will temporarily suspend any -i selection */
-void gmt_disable_i_opt (struct GMT_CTRL *GMT) {
-	/* Temporarily turn off any -i selections */
+/*! Routine will temporarily suspend any -i, -h selections for secondary inputs */
+void gmt_disable_ih_opts (struct GMT_CTRL *GMT) {
+	/* Temporarily turn off any -i, -h selections */
 	GMT->common.i.active = false;
+	GMT->current.setting.io_header_orig = GMT->current.setting.io_header[GMT_IN];
+	GMT->current.setting.io_header[GMT_IN] = false;
 }
 
-/*! Routine will re-enable any suspended -i selection */
-void gmt_reenable_i_opt (struct GMT_CTRL *GMT) {
-	/* Turn on again any -i selections */
+/*! Routine will re-enable any suspended -i, -h selections */
+void gmt_reenable_ih_opts (struct GMT_CTRL *GMT) {
+	/* Turn on again any -i, -h selections */
 	GMT->common.i.active = GMT->common.i.orig;
+	GMT->current.setting.io_header[GMT_IN] = GMT->current.setting.io_header_orig;
 }
 
 /*! Routine will decode the -i<col>|<colrange>[+l][+s<scale>][+o<offset>],... arguments */
@@ -7263,7 +7277,7 @@ int gmt_parse_i_option (struct GMT_CTRL *GMT, char *arg) {
 			if ((c = strchr (p, 'l'))) {	/* Look for log indicator */
 				c[0] = '\0';	/* Wipe out the 's' so that next scan terminates there */
 				convert |= 2;
-			}		
+			}
 		}
 
 		/* Now process column range */
@@ -10779,9 +10793,9 @@ GMT_LOCAL struct GMT_CTRL *gmt_begin_module_sub (struct GMTAPI_CTRL *API, const
 /*! Determine if the current module is a PostScript-producing module that writes PostScript */
 GMT_LOCAL bool gmtinit_is_PS_module (struct GMTAPI_CTRL *API, const char *name, const char *keys, struct GMT_OPTION *options) {
 	struct GMT_OPTION *opt = NULL;
-	
+
 	if (strstr (keys, ">X}") == NULL) return false;	/* Never produces PostScript */
-	
+
 	/* Must do more specific checking since some of the PS producers take options that turns them into other things... */
 	if (!strncmp (name, "psbasemap", 9U)) {	/* Check for -A option */
 		if ((opt = GMT_Find_Option (API, 'A', options))) return false;	/* -A writes dataset */
@@ -10874,7 +10888,7 @@ bool geo;
 			if (!exact) gmtinit_round_wesn (wesn, G->header->grdtype > 0);	/* Use grid w/e/s/n to round to nearest reasonable multiples */
 			if (GMT_Destroy_Data (API, &G) != GMT_NOERROR) return API->error;	/* Failure to destroy the temporary grid structure */
 			break;
-			
+
 		case GMT_IS_DATASET:
 		case GMT_IS_TEXTSET:
 			for (opt = *options; opt; opt = opt->next) {	/* Loop over all options */
@@ -10930,7 +10944,7 @@ bool geo;
 				    	fclose (fp);
 						return GMT_RUNTIME_ERROR;
 					}
-			    }		
+			    }
 			    fclose (fp);
 				free (content);
 				if ((tmp = GMT_Make_Option (API, GMT_OPT_INFILE, file)) == NULL || (head = GMT_Append_Option (API, tmp, head)) == NULL)
@@ -10949,7 +10963,7 @@ bool geo;
 			opt = GMT_Find_Option (API, 'f', head);	/* See if we have -f */
 			geo = (opt && (opt->arg[0] == 'g' || strchr (opt->arg, 'x')));	/* Geographic data (could still fail with some odd -f I guess) */
 			if (!geo && (opt = GMT_Find_Option (API, 'J', *options))) {	/* Passed -J but no geo via -fg */
-				if (strchr ("xXpP", opt->arg[0]) == NULL || (toupper (opt->arg[0]) == 'X' && opt->arg[strlen(opt->arg)-1] == 'd')) {	/* Geographic projection of some sort */ 
+				if (strchr ("xXpP", opt->arg[0]) == NULL || (toupper (opt->arg[0]) == 'X' && opt->arg[strlen(opt->arg)-1] == 'd')) {	/* Geographic projection of some sort */
 					if ((tmp = GMT_Make_Option (API, 'f', "g")) == NULL || (head = GMT_Append_Option (API, tmp, head)) == NULL)
 						return API->error;	/* Failure to make new option or append to list */
 				}
@@ -11065,7 +11079,7 @@ GMT_LOCAL struct GMT_OPTION * gmt_find_J_option (void *V_API, struct GMT_OPTION
 	gmt_M_unused(V_API);
 
 	if (head == NULL) return (NULL);	/* Hard to find something in a non-existent list */
-	
+
 	for (current = head; ptr == NULL && current; current = current->next) {	/* Linearly search for the specified option */
 		if (current->option == 'J' && !(current->arg[0] == 'z' || current->arg[0] == 'Z'))
 			ptr = current;
@@ -11101,13 +11115,13 @@ struct GMT_CTRL *gmt_init_module_OLD (struct GMTAPI_CTRL *API, const char *lib_n
 	 * Modules like grdview has "g" since they always have a grid domain to fall back on in the absence of -R.
 	 * Modules like psxy has "d" so we can make a quick map without specifying -R.
 	 */
-	
+
 	if (API->GMT->current.setting.run_mode == GMT_MODERN) {	/* Make sure options conform to this mode's harsh rules: */
 		unsigned int k, n_errors = 0;
 		struct GMT_OPTION *opt = NULL;
-	
+
 		API->GMT->current.ps.initialize = false;	/* Start from scratch */
-			
+
 		if (API->GMT->hidden.func_level == 0) {	/* The -R -J -O -K prohibition only applies to top-level module call */
 			/* 1. No -O -K are allowed */
 			if ((opt = GMT_Find_Option (API, 'O', *options))) {
@@ -11127,7 +11141,7 @@ struct GMT_CTRL *gmt_init_module_OLD (struct GMTAPI_CTRL *API, const char *lib_n
 				}
 				else if (!strncmp (opt->arg, "auto", 4U) || (opt->arg[0] == 'a' && opt->arg[1] == '\0'))	{	/* -Ra[uto] determines smart -R from data */
 					if (OK) {
-						if (GMT_Delete_Option (API, opt)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
+						if (GMT_Delete_Option (API, opt, options)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
 						n_errors += gmtinit_determine_R_option_from_data (API, required, false, options);
 					}
 					else {
@@ -11137,7 +11151,7 @@ struct GMT_CTRL *gmt_init_module_OLD (struct GMTAPI_CTRL *API, const char *lib_n
 				}
 				else if (!strncmp (opt->arg, "exact", 5U) || (opt->arg[0] == 'e' && opt->arg[1] == '\0'))	{	/* -Re[xact] determines exact -R from data */
 					if (OK) {
-						if (GMT_Delete_Option (API, opt)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
+						if (GMT_Delete_Option (API, opt, options)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
 						n_errors += gmtinit_determine_R_option_from_data (API, required, true, options);
 					}
 					else {
@@ -11154,7 +11168,7 @@ struct GMT_CTRL *gmt_init_module_OLD (struct GMTAPI_CTRL *API, const char *lib_n
 				API->error = GMT_OPTION_NOT_ALLOWED;
 				return NULL;
 			}
-	
+
 			API->GMT->current.ps.active = gmtinit_is_PS_module (API, mod_name, keys, *options);	/* true if module will produce PS */
 			if (API->GMT->current.ps.active)	/* true if module will produce PS */
 				(void)gmt_set_psfilename (API->GMT);	/* Sets API->GMT->current.ps.initialize=true if the expected (and hidden) PS plot file cannot be found */
@@ -11169,7 +11183,7 @@ struct GMT_CTRL *gmt_init_module_OLD (struct GMTAPI_CTRL *API, const char *lib_n
 			char code;
 			/* 3. Next we add blank -R or -J options if these are required but not provided on command line.
 		 	 *    However, we cannot do this at the start of a plot since the history may not be relevant. */
-		
+
 			for (k = 0; k < strlen (required); k++) {
 				if (strchr ("rj", required[k])) continue;	/* Premature to handle modules that may require -R -J depending on other things */
 				code = (required[k] == 'd' || required[k] == 'g') ? 'R' : required[k];
@@ -11183,7 +11197,7 @@ struct GMT_CTRL *gmt_init_module_OLD (struct GMTAPI_CTRL *API, const char *lib_n
 	}
 
 	/* Here we can call the rest of the initialization */
-	
+
 	return (gmt_begin_module_sub (API, lib_name, mod_name, Ccopy));
 }
 #endif
@@ -11213,16 +11227,16 @@ struct GMT_CTRL *gmt_init_module (struct GMTAPI_CTRL *API, const char *lib_name,
 	 * Modules like grdview has "g" since they always have a grid domain to fall back on in the absence of -R.
 	 * Modules like psxy has "d" so we can make a quick map without specifying -R.
 	 */
-	
+
 	if (API->GMT->current.setting.run_mode == GMT_MODERN) {	/* Make sure options conform to this mode's harsh rules: */
 		unsigned int n_errors = 0;
 		int id;
 		bool got_R = false, got_J = false;
 		struct GMT_OPTION *opt = NULL;
-	
+
 		API->GMT->current.ps.initialize = false;	/* Start from scratch */
 		API->GMT->current.ps.active = gmtinit_is_PS_module (API, mod_name, keys, *options);	/* true if module will produce PS */
-			
+
 		if (API->GMT->hidden.func_level == 0) {	/* The -R -J -O -K prohibition only applies to top-level module call */
 			/* 1. No -O allowed */
 			if ((opt = GMT_Find_Option (API, 'O', *options))) {
@@ -11242,7 +11256,7 @@ struct GMT_CTRL *gmt_init_module (struct GMTAPI_CTRL *API, const char *lib_name,
 				}
 				else if (!strncmp (opt->arg, "auto", 4U) || (opt->arg[0] == 'a' && opt->arg[1] == '\0'))	{	/* -Ra[uto] determines smart -R from data */
 					if (API->GMT->current.ps.active) {
-						if (GMT_Delete_Option (API, opt)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
+						if (GMT_Delete_Option (API, opt, options)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
 						n_errors += gmtinit_determine_R_option_from_data (API, required, false, options);
 					}
 					else {
@@ -11252,7 +11266,7 @@ struct GMT_CTRL *gmt_init_module (struct GMTAPI_CTRL *API, const char *lib_name,
 				}
 				else if (!strncmp (opt->arg, "exact", 5U) || (opt->arg[0] == 'e' && opt->arg[1] == '\0'))	{	/* -Re[xact] determines exact -R from data */
 					if (API->GMT->current.ps.active) {
-						if (GMT_Delete_Option (API, opt)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
+						if (GMT_Delete_Option (API, opt, options)) n_errors++;	/* Must remove old -R so next function can add a complete -R */
 						n_errors += gmtinit_determine_R_option_from_data (API, required, true, options);
 					}
 					else {
@@ -11274,11 +11288,11 @@ struct GMT_CTRL *gmt_init_module (struct GMTAPI_CTRL *API, const char *lib_name,
 				API->error = GMT_OPTION_NOT_ALLOWED;
 				return NULL;
 			}
-	
+
 			if (API->GMT->current.ps.active)	/* true if module will produce PS */
 				(void)gmt_set_psfilename (API->GMT);	/* Sets API->GMT->current.ps.initialize=true if the expected (and hidden) PS plot file cannot be found */
 		}
-		
+
 		if (got_R == false && (strchr (required, 'R') || strchr (required, 'g') || strchr (required, 'd'))) {	/* Need a region but no -R was set */
 			/* First consult the history */
 			id = gmtlib_get_option_id (0, "R");		/* The -R history item */
@@ -11310,7 +11324,7 @@ struct GMT_CTRL *gmt_init_module (struct GMTAPI_CTRL *API, const char *lib_name,
 	}
 
 	/* Here we can call the rest of the initialization */
-	
+
 	return (gmt_begin_module_sub (API, lib_name, mod_name, Ccopy));
 }
 
@@ -12626,9 +12640,9 @@ int gmt_parse_common_options (struct GMT_CTRL *GMT, char *list, char option, cha
 			}
 			if (!error) {
 				if (GMT->current.setting.run_mode == GMT_MODERN && item[0] == '\0')
-					error = gmtinit_parse_B_option (GMT, "af");	/* Default -B setting if just -B is given since -B is not a shorthand under modern mode */
+					error = gmtlib_parse_B_option (GMT, "af");	/* Default -B setting if just -B is given since -B is not a shorthand under modern mode */
 				else
-					error = gmtinit_parse_B_option (GMT, item);
+					error = gmtlib_parse_B_option (GMT, item);
 			}
 			break;
 
@@ -13012,9 +13026,9 @@ int gmt_set_missing_options (struct GMT_CTRL *GMT, char *options) {
 
 	if (GMT->current.setting.run_mode == GMT_CLASSIC) return GMT_NOERROR;	/* Do nothing */
 	if (GMT->current.ps.initialize) return GMT_NOERROR;	/* Cannot use history unless overlay */
-	
+
 	assert (options);	/* Should never be NULL */
-	
+
 	for (j = 0; options[j]; j++) {	/* Do this for all required options listed */
 		assert (strchr ("RJ", options[j]));	/* Only R and/or J should be present in options */
 		if (options[j] == 'R' && GMT->common.R.active[RSET]) continue;	/* Set already */
@@ -13040,7 +13054,7 @@ unsigned int gmt_add_R_if_modern_and_true (struct GMT_CTRL *GMT, const char *nee
 	if (strchr (needs, 'r') == NULL) return GMT_NOERROR;	/* -R is not a conditional option */
 	if (do_it)
 		return (gmt_set_missing_options (GMT, "R"));
-	return GMT_NOERROR;	
+	return GMT_NOERROR;
 }
 
 /*! Changes the 4 GMT default pad values to given isotropic pad */
@@ -13107,15 +13121,7 @@ struct GMT_CTRL *gmt_begin (struct GMTAPI_CTRL *API, const char *session, unsign
 		gmtinit_free_GMT_ctrl (GMT);	/* Deallocate control structure */
 		return NULL;
 	}
-	
-#ifdef TEST_MODERN
-	if (gmt_manage_workflow (API, GMT_USE_WORKFLOW)) {
-		GMT_Message (API, GMT_TIME_NONE, "Error: Could not initialize the GMT workflow - Aborting.\n");
-		gmtinit_free_GMT_ctrl (GMT);	/* Deallocate control structure */
-		return NULL;
-	}
-#endif
-	
+
 	GMT->PSL->init.unit = PSL_INCH;					/* We use inches internally in PSL */
 	PSL_beginsession (GMT->PSL, API->external, GMT->session.SHAREDIR, GMT->session.USERDIR);	/* Initializes the session and sets a few defaults */
 	/* Reset session defaults to the chosen GMT settings; these are fixed for the entire PSL session */
@@ -13136,7 +13142,7 @@ struct GMT_CTRL *gmt_begin (struct GMTAPI_CTRL *API, const char *session, unsign
 	gmt_getdefaults (GMT, NULL);	/* Override using local GMT default settings (if any) [and PSL if selected] */
 
 	if (API->runmode) GMT->current.setting.run_mode = GMT_MODERN;	/* Enforced at API Creation */
-	
+
 	/* There is no longer a -m option in GMT 5 so multi segments are now always true.
 	   However, in GMT_COMPAT mode the -mi and -mo options WILL turn off multi in the other direction. */
 	gmt_set_segmentheader (GMT, GMT_IN, true);
@@ -13180,7 +13186,7 @@ bool gmtlib_file_is_downloadable (struct GMT_CTRL *GMT, const char *file, unsign
 	/* Returns true if file is a known GMT-distributable file and download is enabled */
 	/* Return immediately if no auto-download is disabled */
 #ifdef DEBUG
-	static char *fkind[4] = {"Regular File", "Cache File", "URL File", "CGI Get Command"};
+	static char *fkind[5] = {"Regular File", "Cache File", "Data File", "URL File", "URL Query"};
 #endif
 	unsigned int pos = 0;	/* Start of actual filename in the file string */
 	*kind = GMT_REGULAR_FILE;	/* Default is a regular file */
@@ -13194,13 +13200,13 @@ bool gmtlib_file_is_downloadable (struct GMT_CTRL *GMT, const char *file, unsign
 		if (strchr (file, '?') == NULL)
 			*kind = GMT_URL_FILE;
 		else
-			*kind = GMT_URL_CMD;	/* These we will never check for access and must rerun each time */
+			*kind = GMT_URL_QUERY;	/* These we will never check for access and must rerun each time */
 		pos = gmtlib_get_pos_of_filename (file);	/* Find start of filename */
 	}
 #ifdef DEBUG
 	GMT_Report (GMT->parent, GMT_MSG_DEBUG, "File %s: Type is %s\n", file, fkind[*kind]);
 #endif
-	if (*kind != GMT_URL_CMD && !gmt_access (GMT, &file[pos], F_OK)) return false;	/* File exists already so no need to download */
+	if (*kind != GMT_URL_QUERY && !gmt_access (GMT, &file[pos], F_OK)) return false;	/* File exists already so no need to download */
 	/* Here the file does not yet exist locally, so we will try to download if it matches one of three criteria.
 	 * Otherwise, it is just a file that does not exist and will yield an error upstream */
 	if (!strncmp (file, GMT_DATA_PREFIX, strlen(GMT_DATA_PREFIX)) && strstr (file, ".grd"))	/* Useful data set distributed by GMT */
@@ -13308,7 +13314,9 @@ int gmtlib_report_func (struct GMT_CTRL *GMT, unsigned int level, const char *so
 }
 
 int gmt_remove_dir (struct GMTAPI_CTRL *API, char *dir, bool recreate) {
-	/* Delete all files in a directory, then the directory itself */
+	/* Delete all files in a directory, then the directory itself.
+	 * It is assumed that we created the directory so that there is only
+	 * onle level, i.e., there are no sub-directories inside the directory. */
 	unsigned int n_files, k;
 	int error = GMT_NOERROR;
 	char **filelist = NULL;
@@ -13344,71 +13352,84 @@ int gmt_remove_dir (struct GMTAPI_CTRL *API, char *dir, bool recreate) {
 	return error;
 }
 
-#ifdef TEST_MODERN
-/*! . */
-int gmt_manage_workflow (struct GMTAPI_CTRL *API, unsigned int mode) {
-	/* Manage the GMT workflow.  Mode can take the following values:
-	 *   GMT_BEGIN_WORKFLOW: Start a new GMT workflow.
-	 *   GMT_USE_WORKFLOW:	Continue using the work flow directory
-	 *   GMT_END_WORKFLOW:	Finalize the workflow.
+#if 0	/* Maybe use later - things seems to work OK for now with what we have */
+
+/*! Codes from gmt file types */
+enum GMT_enum_ftypes {
+	GMT_IS_URL = 1,
+	GMT_IS_QUERY = 2,
+	GMT_IS_CDF_ATTR = 4,
+	GMT_IS_GRD_ATTR = 8,
+	GMT_IS_GDAL_ATTR = 16,
+	GMT_IS_CACHE = 32,
+	GMT_IS_DATA = 64};
+
+unsigned int gmt_file_type (struct GMT_CTRL *GMT, const char *file, unsigned int pos[]) {
+	/* Determine what kind of file argument was given.  Return a code
+	 * that reflects a sum of several bit flags:
+	 * 1:	Gave an URL, 0 otherwise
+	 * 2:	Gave an URL that is a query, 0 otherwise
+	 * 4:	Specified a netCDF slice/layer attribute, 0 otherwise
+	 * 8:	Specified a GMT grid format =<id>[<modifiers>] attribute, 0 otherwise
+	 * 16:	GDAL file called via =gd[...]
+	 * 32:	Special earth_relief grid to be downloaded if not found
 	 */
+	unsigned int code = 0;
+	char *a = NULL, *c = NULL, *e = NULL, *p = NULL, *q = NULL, *s = NULL;
 	
-	/* Set workflow directory */
-	char dir[GMT_LEN256] = {""}, *type[2] = {"classic", "modern"};
-	char t_file[GMT_LEN256] = {""};
-	int err = 0, error = GMT_NOERROR;
-    struct stat S;
-	sprintf (dir, "%s/gmt5.%d", API->tmp_dir, API->PPID);
-	API->gwf_dir = strdup (dir);
-	err = stat (API->gwf_dir, &S);	/* Stat the gwf_dir path (which may not exist) */
-	switch (mode) {
-		case GMT_BEGIN_WORKFLOW:	/* Must create a new temporary directory */
-			GMT_Report (API, GMT_MSG_NORMAL, "Asked to create a workflow directory %s\n", API->gwf_dir);
-			/* We only get here when gmt begin is called */
-			if (err == 0 && !S_ISDIR (S.st_mode)) {	/* Already exists, but path is not a directory */
-				GMT_Report (API, GMT_MSG_NORMAL, "A file named %s already exist and prevents us creating a workflow directory by that name\n", API->gwf_dir);
-				error = GMT_RUNTIME_ERROR;
-			}
-			else if (err == 0 && S_ISDIR (S.st_mode))	/* Direcetory already exists, give warning */
-				GMT_Report (API, GMT_MSG_NORMAL, "Workflow directory %s already exist (remember to use gmt end to finish a workflow)\n", API->gwf_dir);
-		    else {	/* Create the new directory */
-				/* To avoid the weird CID 167015 that says:
-				toctou: Calling function mkdir that uses API->gwf_dir after a check function.
-				This can cause a time-of-check, time-of-use race condition.
-				we will use "dir" instead of "API->gwf_dir" below  */
-#ifndef _WIN32
-				if (mkdir (dir, (mode_t)0777))
-#else
-				if (mkdir (dir))
-#endif
-				{
-	                GMT_Report (API, GMT_MSG_NORMAL, "Unable to create GMT WorkFlow directory : %s\n", API->gwf_dir);
-					error = GMT_RUNTIME_ERROR;
-				}
-			}
-			if (gmtlib_getuserpath (API->GMT, "gmt.conf", t_file)) {	/* If there is a gmt.conf in ~ or ~/.gmt be sure to start clean */
-				gmtinit_conf (API->GMT);		/* Get the original system defaults */
-				sprintf (dir, "%s/gmt.conf", API->gwf_dir);	/* Reuse dir string for saving gmt.conf to this dir */
-				gmt_putdefaults (API->GMT, dir);
-			}
-			API->GMT->current.setting.run_mode = GMT_MODERN;	/* Enable modern mode */
-			break;
-		case GMT_USE_WORKFLOW:
-			/* We always get here except when gmt begin | end are called. */
-			/* If the workflow directory exists then we are in modern mode, else in classic */
-			API->GMT->current.setting.run_mode = (err == 0) ? GMT_MODERN : GMT_CLASSIC;
-			break;
-		case GMT_END_WORKFLOW:
-			/* We only get here when gmt end is called */
-			error = gmt_remove_dir (API, dir, false);
-			API->GMT->current.setting.run_mode = GMT_CLASSIC;	/* Disable modern mode */
-			break;
-		default:
-        	GMT_Report (API, GMT_MSG_NORMAL, "Illegal mode (%d) passed to gmt_manage_workflow\n", mode);
-			break;
+	pos[0] = pos[1] = 0;	/* Initialize */
+	if (file == NULL) return 0;	/* Nada */
+	a = strchr  (file, '&');	/* Address of the first ? or NULL */
+	e = strchr  (file, '=');	/* Address of the first = or NULL */
+	p = strrchr (file, '+');	/* Address of the last + or NULL */
+	q = strchr  (file, '?');	/* Address of the first ? or NULL */
+	s = strrchr (file, '/');	/* Address of the last / or NULL */
+	/* First distinguish between cache, urls, and special data files from the GMT server */
+	if (gmt_M_file_is_cache (file)) {	/* Special @<filename> syntax for GMT cache files */
+		code |= GMT_CACHE_FILE;
+		pos[0] = 1;	/* Must skip the first character to find the file name */
 	}
-	GMT_Report (API, GMT_MSG_DEBUG, "GMT now running in %s mode\n", type[API->GMT->current.setting.run_mode]);
-	return error;
+	else if (gmt_M_file_is_url (file))	/* Full URL given */
+		code |= GMT_IS_URL;
+	else if (!strncmp (file, GMT_DATA_PREFIX, strlen(GMT_DATA_PREFIX)) && strstr (file, ".grd"))	/* Useful data set distributed by GMT */
+		code |= GMT_IS_DATA;
+	
+	/* Now try to detect subtleries like netcdf slices and grid attributes */
+	
+	if ((c = strstr (file, "=gd"))) {
+		code |= GMT_IS_GDAL_ATTR;	/* Only GDAL references would have these characters */
+		pos[1] = (unsigned int) (c - file);
+	}
+	else if ((code & GMT_IS_URL) && q && (a || (e && e > s))) {	/* Only URL quieries have ampersands in them */
+		code |= GMT_IS_QUERY;
+		pos[1] = (unsigned int) (q - file);
+	}
+	else if (q) {	/* Question-mark is more complicated */
+		if (strchr (file, '[') || strchr (file, '('))	/* Assume netCDF slicing: file.nc?pressure[2,1] or file.nc?pressure(24,10) */
+			code |= GMT_IS_CDF_ATTR;
+		else if (s && s > q)	/* Assume netCDF variable selections: file.nc?time/lat/lon */
+			code |= GMT_IS_CDF_ATTR;
+		else if (e && (s == NULL || s > e))	/* Must be a GMT grid with old-style attributes: junk.grd=bf/0/1/32767 */
+			code |= GMT_IS_GRD_ATTR;
+		else if (e && p && p > e)	/* Must be a GMT grid with new-style attributes: junk.grd=bf+s<scale>+o<scale>+n<nan> */
+			code |= GMT_IS_GRD_ATTR;
+		else 	/* Assume netCDF variable selection: file.nc?slp */
+			code |= GMT_IS_CDF_ATTR;
+		pos[1] = (unsigned int) (q - file);
+	}
+	else if (e)	{
+		pos[1] = (unsigned int) (e - file);
+		if (s == NULL || s > e)	/* Must be a GMT grid with old-style attributes: junk.grd=bf/0/1/32767 */
+			code |= GMT_IS_GRD_ATTR;
+		else if (p && p > e)	/* Must be a GMT grid with new-style attributes: junk.grd=bf+s<scale>+o<scale>+n<nan> */
+			code |= GMT_IS_GRD_ATTR;
+		else if (strlen (e) == 3)	/* Must be a GMT grid with format only: junk.grd=bf */
+			code |= GMT_IS_GRD_ATTR;
+		else	/* Weird file with = in the name? */
+			pos[1] = 0;
+	}
+	GMT_Report (GMT->parent, GMT_MSG_LONG_VERBOSE, "gmt_file_type: File %s returning code = %u, with pos[0] = %u and pos[1] = %u\n", file, code, pos[0], pos[1]);
+	return code;
 }
 #endif
 
diff --git a/src/gmt_io.c b/src/gmt_io.c
index 59a86e6..c63dff3 100644
--- a/src/gmt_io.c
+++ b/src/gmt_io.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_io.c 18199 2017-05-09 10:09:30Z remko $
+ *	$Id: gmt_io.c 18273 2017-05-29 22:35:19Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -3746,6 +3746,7 @@ void gmt_set_geographic (struct GMT_CTRL *GMT, unsigned int dir) {
 	/* Eliminate lots of repeated statements to do this: */
 	GMT->current.io.col_type[dir][GMT_X] = GMT_IS_LON;
 	GMT->current.io.col_type[dir][GMT_Y] = GMT_IS_LAT;
+	if (dir == GMT_IN) gmt_init_distaz (GMT, GMT_MAP_DIST_UNIT, GMT_GREATCIRCLE, GMT_MAP_DIST);	/* Default spherical distance calculations are in meters */
 }
 
 /*! . */
@@ -4453,7 +4454,7 @@ char *gmt_getdatapath (struct GMT_CTRL *GMT, const char *stem, char *path, int m
 	/* If we got here and a full path is given, we give up ... unless it is one of those /vsi.../ files */
 	if (stem[0] == '/') {
 #ifdef HAVE_GDAL
-		if (gmtlib_check_url_name ((char *)stem), 99)
+		if (gmtlib_check_url_name ((char *)stem))
 			return ((char *)stem);			/* With GDAL all the /vsi-stuff is given existence credit */
 		else
 			return (NULL);
diff --git a/src/gmt_macros.h b/src/gmt_macros.h
index e8e9d1f..abb2ee8 100644
--- a/src/gmt_macros.h
+++ b/src/gmt_macros.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_macros.h 18041 2017-04-26 23:09:48Z pwessel $
+ *	$Id: gmt_macros.h 18328 2017-06-07 04:43:45Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -98,7 +98,7 @@
 #define gmt_M_float_swap(x, y) {float float_tmp; float_tmp = x, x = y, y = float_tmp;}
 
 /*! Macro to ensure proper value and sign of a change in longitude from lon1 to lon2 */
-#define gmt_M_set_delta_lon(lon1,lon2,delta) {delta = lon2 - lon1; if (fabs (delta) > 180.0) delta = copysign (360.0 - fabs (delta), -delta);}
+#define gmt_M_set_delta_lon(lon1,lon2,delta) {delta = fmod ((lon2) - (lon1), 360.0); if (fabs (delta) > 180.0) delta = copysign (360.0 - fabs (delta), -delta);}
 
 /*! Macro to simplify call to memcpy when duplicating values and memset when zeroing out */
 #define gmt_M_memcpy(to,from,n,type) memcpy(to, from, (n)*sizeof(type))
@@ -123,6 +123,15 @@
  * New: Either start with pattern 1-88 or a file which should have an extension */
 #define gmt_M_is_pattern(txt) ((txt[0] == 'p' || txt[0] == 'P') && (isdigit((int)txt[1]) || strchr(txt,'.')))
 
+/* Determine if this CPT slice requires a pattern */
+#define gmt_M_cptslice_is_pattern(P,index) ((index >= 0 && P->data[index].fill != NULL) || (index < 0 && P->bfn[index+3].fill != NULL))
+
+/* Determine if this CPT slice requires a pattern */
+#define gmt_M_get_cptslice_pattern(P,index) ((index >= 0) ? P->data[index].fill : P->bfn[index+3].fill)
+
+/* Determine if we should skip this CPT slice */
+#define gmt_M_skip_cptslice(P,index) ((index >= 0 && P->data[index].skip) || (index < 0 && P->bfn[index+3].skip))
+
 /*! Copy two RGB[T] arrays (a = b) */
 #define gmt_M_rgb_copy(a,b) memcpy (a, b, 4 * sizeof(double))
 
@@ -160,7 +169,7 @@
 
 /*! Determine if we have a special downloadable file */
 #define gmt_M_file_is_cache(file) (file && file[0] == '@' && strncmp (file, "@GMTAPI at -", 9U))
-#define gmt_M_file_is_url(file) (!strncmp (file, "http:", 5U) || !strncmp (file, "https:", 6U) || !strncmp (file, "ftp:", 4U))
+#define gmt_M_file_is_url(file) (file && (!strncmp (file, "http:", 5U) || !strncmp (file, "https:", 6U) || !strncmp (file, "ftp:", 4U)))
 
 
 #endif  /* _GMT_MACROS_H */
diff --git a/src/gmt_map.c b/src/gmt_map.c
index 979ac77..d02d899 100644
--- a/src/gmt_map.c
+++ b/src/gmt_map.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_map.c 18081 2017-04-30 20:32:34Z jluis $
+ *	$Id: gmt_map.c 18426 2017-06-21 23:39:43Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -235,6 +235,7 @@ EXTERN_MSC double gmt_right_sinusoidal (struct GMT_CTRL *GMT, double y);	/* For
 EXTERN_MSC double gmt_left_polyconic (struct GMT_CTRL *GMT, double y);	/* For polyconic maps	*/
 EXTERN_MSC double gmt_right_polyconic (struct GMT_CTRL *GMT, double y);	/* For polyconic maps	*/
 EXTERN_MSC double gmt_cartesian_dist (struct GMT_CTRL *GMT, double x0, double y0, double x1, double y1);
+EXTERN_MSC double gmt_cartesian_dist_periodic (struct GMT_CTRL *GMT, double x0, double y0, double x1, double y1);
 EXTERN_MSC double gmt_cartesian_dist_proj (struct GMT_CTRL *GMT, double lon1, double lat1, double lon2, double lat2);
 
 /*! CCW order of side in some tests */
@@ -365,6 +366,16 @@ GMT_LOCAL void map_set_polar (struct GMT_CTRL *GMT) {
 	}
 }
 
+GMT_LOCAL bool central_meridian_not_set (struct GMT_CTRL *GMT) {
+	/* Just to make it clearer to understand the code.  If NaN then we were never given a central meridian */
+	return (gmt_M_is_dnan (GMT->current.proj.pars[0]));
+}
+
+GMT_LOCAL void set_default_central_meridian (struct GMT_CTRL *GMT) {
+	GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);	/* Not set at all, set to middle lon */
+	GMT_Report (GMT->parent, GMT_MSG_LONG_VERBOSE, "Central meridian not given, default to %g\n", GMT->current.proj.pars[0]);
+}
+
 /*! . */
 GMT_LOCAL void map_cyl_validate_clon (struct GMT_CTRL *GMT, unsigned int mode) {
 	/* Make sure that for global (360-range) cylindrical projections, the central meridian is neither west nor east.
@@ -372,8 +383,8 @@ GMT_LOCAL void map_cyl_validate_clon (struct GMT_CTRL *GMT, unsigned int mode) {
 	 * mode == 0: <clon> should be reset based on w/e mid-point
 	 * mode == 1: -J<clon> is firm so w/e is centered on <c.lon>
 	 */
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0]))
-		GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);	/* Not set at all, set to middle lon */
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	else if (GMT->current.map.is_world && (GMT->current.proj.pars[0] == GMT->common.R.wesn[XLO] || GMT->current.proj.pars[0] == GMT->common.R.wesn[XHI])) {
 		/* Reset central meridian since cannot be 360 away from one of the boundaries since that gives xmin == xmax below */
 		if (mode == 1) {	/* Change -R to fit central meridian */
@@ -1115,9 +1126,7 @@ GMT_LOCAL int map_jump_x (struct GMT_CTRL *GMT, double x0, double y0, double x1,
 		double last_lon, this_lon, dummy, dlon;
 		gmt_xy_to_geo (GMT, &last_lon, &dummy, x0, y0);
 		gmt_xy_to_geo (GMT, &this_lon, &dummy, x1, y1);
-		dlon = this_lon - last_lon;
-		if (fabs (dlon) > 360.0) dlon += copysign (360.0, -dlon);
-
+		gmt_M_set_delta_lon (last_lon, this_lon, dlon);	/* Beware of jumps due to sign differences */
 		if (fabs (dlon) < 180.0) /* Not going the long way so we judge this to be no jump */
 			return (0);
 		/* Jump it is */
@@ -4114,7 +4123,8 @@ GMT_LOCAL bool map_init_mollweide (struct GMT_CTRL *GMT) {
 	GMT->current.proj.GMT_convert_latitudes = !gmt_M_is_spherical (GMT);
 	if (GMT->current.proj.GMT_convert_latitudes) gmtlib_scale_eqrad (GMT);
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4170,7 +4180,8 @@ GMT_LOCAL bool map_init_hammer (struct GMT_CTRL *GMT) {
 	GMT->current.proj.GMT_convert_latitudes = !gmt_M_is_spherical (GMT);
 	if (GMT->current.proj.GMT_convert_latitudes) gmtlib_scale_eqrad (GMT);
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4224,7 +4235,8 @@ GMT_LOCAL bool map_init_grinten (struct GMT_CTRL *GMT) {
 
 	map_set_spherical (GMT, true);
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4279,7 +4291,8 @@ GMT_LOCAL bool map_init_winkel (struct GMT_CTRL *GMT) {
 
 	map_set_spherical (GMT, true);	/* PW: Force spherical for now */
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4331,7 +4344,8 @@ GMT_LOCAL bool map_init_eckert4 (struct GMT_CTRL *GMT) {
 	GMT->current.proj.GMT_convert_latitudes = !gmt_M_is_spherical (GMT);
 	if (GMT->current.proj.GMT_convert_latitudes) gmtlib_scale_eqrad (GMT);
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4384,7 +4398,8 @@ GMT_LOCAL bool map_init_eckert6 (struct GMT_CTRL *GMT) {
 	GMT->current.proj.GMT_convert_latitudes = !gmt_M_is_spherical (GMT);
 	if (GMT->current.proj.GMT_convert_latitudes) gmtlib_scale_eqrad (GMT);
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4436,7 +4451,8 @@ GMT_LOCAL bool map_init_robinson (struct GMT_CTRL *GMT) {
 
 	map_set_spherical (GMT, true);	/* PW: Force spherical for now */
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->current.proj.units_pr_degree) GMT->current.proj.pars[1] /= GMT->current.proj.M_PR_DEG;
@@ -4489,7 +4505,8 @@ GMT_LOCAL bool map_init_sinusoidal (struct GMT_CTRL *GMT) {
 	GMT->current.proj.GMT_convert_latitudes = !gmt_M_is_spherical (GMT);
 	if (GMT->current.proj.GMT_convert_latitudes) gmtlib_scale_eqrad (GMT);
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if (GMT->current.proj.pars[0] < 0.0) GMT->current.proj.pars[0] += 360.0;
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->common.R.wesn[YLO] <= -90.0) GMT->current.proj.edge[0] = false;
@@ -4544,7 +4561,8 @@ GMT_LOCAL bool map_init_cassini (struct GMT_CTRL *GMT) {
 	bool too_big;
 	double xmin, xmax, ymin, ymax;
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	if ((GMT->current.proj.pars[0] - GMT->common.R.wesn[XLO]) > 90.0 || (GMT->common.R.wesn[XHI] - GMT->current.proj.pars[0]) > 90.0) {
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "ERROR: Max longitude extension away from central meridian is limited to +/- 90 degrees\n");
 		GMT_exit (GMT, GMT_PROJECTION_ERROR); return false;
@@ -4711,7 +4729,8 @@ GMT_LOCAL bool map_init_polyconic (struct GMT_CTRL *GMT) {
 
 	map_set_spherical (GMT, true);	/* PW: Force spherical for now */
 
-	if (gmt_M_is_dnan (GMT->current.proj.pars[0])) GMT->current.proj.pars[0] = 0.5 * (GMT->common.R.wesn[XLO] + GMT->common.R.wesn[XHI]);
+	if (central_meridian_not_set (GMT))
+		set_default_central_meridian (GMT);
 	GMT->current.map.is_world = gmt_M_360_range (GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
 	if (GMT->common.R.wesn[YLO] <= -90.0) GMT->current.proj.edge[0] = false;
 	if (GMT->common.R.wesn[YHI] >= 90.0) GMT->current.proj.edge[2] = false;
@@ -5925,6 +5944,11 @@ GMT_LOCAL void map_set_distaz (struct GMT_CTRL *GMT, unsigned int mode, unsigned
 	GMT->current.map.dist[type].scale = 1.0;	/* Default scale */
 
 	switch (mode) {	/* Set pointers to distance functions */
+		case GMT_CARTESIAN_DIST_PERIODIC:	/* Cartesian 2-D x,y data but with one or two periodic dimensions */
+			GMT->current.map.dist[type].func = &gmt_cartesian_dist_periodic;
+			GMT->current.map.azimuth_func = &map_az_backaz_cartesian;
+			GMT_Report (GMT->parent, GMT_MSG_LONG_VERBOSE, "%s distance calculation will be Cartesian [periodic]\n", type_name[type]);
+			break;
 		case GMT_CARTESIAN_DIST:	/* Cartesian 2-D x,y data */
 			GMT->current.map.dist[type].func = &gmt_cartesian_dist;
 			GMT->current.map.azimuth_func = &map_az_backaz_cartesian;
@@ -6268,6 +6292,8 @@ void gmt_auto_frame_interval (struct GMT_CTRL *GMT, unsigned int axis, unsigned
 	/* Finally set grid interval (if annotation set as well, use major, otherwise minor interval) */
 	T = &A->item[item+4];
 	if (T->active && T->interval == 0.0) T->interval = set_a ? d : f, T->generated = true;
+	
+	GMT_Report (GMT->parent, GMT_MSG_LONG_VERBOSE, "Auto-frame interval for axis %d item %d: d = %g  f = %g\n", axis, item, d, f);
 }
 
 /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -6733,6 +6759,15 @@ bool gmt_near_a_line (struct GMT_CTRL *GMT, double lon, double lat, uint64_t seg
 /* Specific functions that are accessed via pointer only */
 
 /*! . */
+double gmt_cartesian_dist_periodic (struct GMT_CTRL *GMT, double x0, double y0, double x1, double y1) {
+	/* Calculates the good-old straight line distance in users units */
+	double dx = x1 - x0, dy = y1 - y0;
+	if (GMT->common.n.periodic[GMT_X] && (dx = fabs (dx)) > GMT->common.n.half_range[GMT_X]) dx = GMT->common.n.range[GMT_X] - dx;
+	if (GMT->common.n.periodic[GMT_Y] && (dy = fabs (dy)) > GMT->common.n.half_range[GMT_Y]) dy = GMT->common.n.range[GMT_Y] - dy;
+	return (hypot (dx, dy));
+}
+
+/*! . */
 double gmt_cartesian_dist (struct GMT_CTRL *GMT, double x0, double y0, double x1, double y1) {
 	/* Calculates the good-old straight line distance in users units */
 	gmt_M_unused(GMT);
@@ -7204,13 +7239,29 @@ uint64_t gmtlib_latpath (struct GMT_CTRL *GMT, double lat, double lon1, double l
 	return (n);
 }
 
+GMT_LOCAL bool accept_the_jump (struct GMT_CTRL *GMT, double lon1, double lon0, double xx[], bool cartesian) {
+	/* Carefully examine if we really want to draw line from left to right boundary.
+	 * We want to avoid E-W wrapping lines for near-global areas where points simply move
+	 * from being > 180 degres from the map area to < -180 even though the points do not
+	 * really reflect motion across the area */
+	double dlon;
+	gmt_M_unused(GMT);
+	gmt_M_unused(xx);
+	if (!cartesian) return true;	/* No wrap issues if Cartesian x,y */
+	if (cartesian) return true;	/* No wrap issues if Cartesian x,y */
+	gmt_M_set_delta_lon (lon1, lon0, dlon);
+	//fprintf (stderr, "lon0 = %g lon1 = %g dlon = %g xx0 = %g xx1 = %g\n", lon0, lon1, dlon, xx[0], xx[1]);
+	if (fabs (dlon) > 1.0 && fabs (dlon) < 90.0) return true;
+	return false;
+}
+
 /*! . */
 uint64_t gmt_geo_to_xy_line (struct GMT_CTRL *GMT, double *lon, double *lat, uint64_t n) {
 	/* Traces the lon/lat array and returns x,y plus appropriate pen moves
 	 * Pen moves are caused by breakthroughs of the map boundary or when
 	 * a point has lon = NaN or lat = NaN (this means "pick up pen") */
 	uint64_t j, k, np, n_sections;
- 	bool inside;
+ 	bool last_inside = false, this_inside, jump, cartesian = !gmt_M_is_geographic (GMT, GMT_IN);
 	unsigned int sides[4];
 	unsigned int nx;
 	double xlon[4], xlat[4], xx[4], yy[4];
@@ -7223,35 +7274,41 @@ uint64_t gmt_geo_to_xy_line (struct GMT_CTRL *GMT, double *lon, double *lat, uin
 	if (!gmt_map_outside (GMT, lon[0], lat[0])) {
 		GMT->current.plot.x[0] = last_x;	GMT->current.plot.y[0] = last_y;
 		GMT->current.plot.pen[np++] = PSL_MOVE;
+		last_inside = true;
 	}
 	for (j = 1; j < n; j++) {
 		gmt_geo_to_xy (GMT, lon[j], lat[j], &this_x, &this_y);
-		inside = !gmt_map_outside (GMT, lon[j], lat[j]);
+		this_inside = !gmt_map_outside (GMT, lon[j], lat[j]);
 		if (gmt_M_is_dnan (lon[j]) || gmt_M_is_dnan (lat[j])) continue;	/* Skip NaN point now */
 		if (gmt_M_is_dnan (lon[j-1]) || gmt_M_is_dnan (lat[j-1])) {		/* Point after NaN needs a move */
 			GMT->current.plot.x[np] = this_x;	GMT->current.plot.y[np] = this_y;
 			GMT->current.plot.pen[np++] = PSL_MOVE;
 			if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
-			last_x = this_x;	last_y = this_y;
+			last_x = this_x;	last_y = this_y;	last_inside = this_inside;
 			continue;
 		}
-		if ((nx = map_crossing (GMT, lon[j-1], lat[j-1], lon[j], lat[j], xlon, xlat, xx, yy, sides))) { /* Nothing */ }
-		else if (GMT->current.map.is_world)
+		if ((nx = map_crossing (GMT, lon[j-1], lat[j-1], lon[j], lat[j], xlon, xlat, xx, yy, sides))) { /* Do nothing if we get crossings*/ }
+		else if (GMT->current.map.is_world)	/* Check global wrapping if 360 range */
 			nx = (*GMT->current.map.wrap_around_check) (GMT, dummy, last_x, last_y, this_x, this_y, xx, yy, sides);
 		if (nx == 1) {	/* inside-outside or outside-inside */
 			GMT->current.plot.x[np] = xx[0];	GMT->current.plot.y[np] = yy[0];
-			GMT->current.plot.pen[np++] = (inside) ? PSL_MOVE : PSL_DRAW;
+			GMT->current.plot.pen[np++] = (this_inside) ? PSL_MOVE : PSL_DRAW;
 			if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
 		}
 		else if (nx == 2) {	/* outside-inside-outside or (with wrapping) inside-outside-inside */
-			GMT->current.plot.x[np] = xx[0];	GMT->current.plot.y[np] = yy[0];
-			GMT->current.plot.pen[np++] = (inside) ? PSL_DRAW : PSL_MOVE;
-			if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
-			GMT->current.plot.x[np] = xx[1];	GMT->current.plot.y[np] = yy[1];
-			GMT->current.plot.pen[np++] = (inside) ? PSL_MOVE : PSL_DRAW;
-			if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
+			/* PW: I will be working on things here to solve the polygon wrap problem reported by Nicky */
+			jump = accept_the_jump (GMT, lon[j], lon[j-1], xx, cartesian);
+			if (jump) {
+			//if ((this_inside && last_inside) || cartesian || dy > 0.1) {	/* outside-inside-outside or (with wrapping) inside-outside-inside */
+				GMT->current.plot.x[np] = xx[0];	GMT->current.plot.y[np] = yy[0];
+				GMT->current.plot.pen[np++] = (this_inside) ? PSL_DRAW : PSL_MOVE;
+				if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
+				GMT->current.plot.x[np] = xx[1];	GMT->current.plot.y[np] = yy[1];
+				GMT->current.plot.pen[np++] = (this_inside) ? PSL_MOVE : PSL_DRAW;
+				if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
+			}
 		}
-		if (inside) {
+		if (this_inside) {
 			if ( np >= GMT->current.plot.n_alloc ) {
 				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "bad access: cannot access current.plot.x[%" PRIu64 "], np=%" PRIu64 ", GMT->current.plot.n=%" PRIu64 "\n", np, np, GMT->current.plot.n);
 			}
@@ -7261,7 +7318,7 @@ uint64_t gmt_geo_to_xy_line (struct GMT_CTRL *GMT, double *lon, double *lat, uin
 			}
 			if (np == GMT->current.plot.n_alloc) gmt_get_plot_array (GMT);
 		}
-		last_x = this_x;	last_y = this_y;
+		last_x = this_x;	last_y = this_y;	last_inside = this_inside;
 	}
 	if (np) GMT->current.plot.pen[0] = PSL_MOVE;	/* Sanity override: Gotta start off with new start point */
 
@@ -7848,8 +7905,8 @@ uint64_t gmt_map_clip_path (struct GMT_CTRL *GMT, double **x, double **y, bool *
 		}
 	}
 
-	work_x = gmt_M_memory (GMT, NULL, np, double);
-	work_y = gmt_M_memory (GMT, NULL, np, double);
+	work_x = gmt_M_memory (GMT, NULL, np+1, double);	/* Add one for manual closure */
+	work_y = gmt_M_memory (GMT, NULL, np+1, double);
 
 	if (GMT->common.R.oblique) {
 		work_x[0] = work_x[3] = GMT->current.proj.rect[XLO];	work_y[0] = work_y[1] = GMT->current.proj.rect[YLO];
@@ -8005,6 +8062,10 @@ uint64_t gmt_map_clip_path (struct GMT_CTRL *GMT, double **x, double **y, bool *
 		}
 	}
 
+	/* CLose the clipping polygon */
+	work_x[np] = work_x[0];
+	work_y[np] = work_y[0];
+	np++;
 	if (!(*donut)) np = gmt_compact_line (GMT, work_x, work_y, np, false, NULL);
 
 	*x = work_x;
@@ -8846,7 +8907,10 @@ unsigned int gmt_init_distaz (struct GMT_CTRL *GMT, char unit, unsigned int mode
 
 		case 'X':	/* Cartesian distances in user units */
 			proj_type = GMT_CARTESIAN;
-			map_set_distaz (GMT, GMT_CARTESIAN_DIST, type, "");
+			if (GMT->common.n.periodic[GMT_X] || GMT->common.n.periodic[GMT_Y])
+				map_set_distaz (GMT, GMT_CARTESIAN_DIST_PERIODIC, type, "");
+			else	
+				map_set_distaz (GMT, GMT_CARTESIAN_DIST, type, "");
 			break;
 		case 'C':	/* Cartesian distances (in PROJ_LENGTH_UNIT) after first projecting input coordinates with -J */
 			map_set_distaz (GMT, GMT_CARTESIAN_DIST_PROJ, type, "");
diff --git a/src/gmt_nc.c b/src/gmt_nc.c
index 590f5a1..b0c5c94 100644
--- a/src/gmt_nc.c
+++ b/src/gmt_nc.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_nc.c 18018 2017-04-22 00:35:39Z pwessel $
+ *	$Id: gmt_nc.c 18286 2017-05-30 06:54:11Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -170,6 +170,8 @@ GMT_LOCAL int gmtnc_io_nc_grid (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *he
 	int status = NC_NOERR;
 	unsigned width = dim[1], height = dim[0];
 	unsigned yx_dim[2];  /* because xy_dim is not row major! */
+	size_t width_t = (size_t)width;
+	size_t height_t = (size_t)height;
 	size_t chunksize[5]; /* chunksize of z */
 	size_t start[5] = {0,0,0,0,0}, count[5] = {1,1,1,1,1};
 	size_t n_contiguous_chunk_rows = 0;  /* that are processed at once, 0 = all */
@@ -212,8 +214,8 @@ GMT_LOCAL int gmtnc_io_nc_grid (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *he
 		remainder = start[yx_dim[0]] % chunksize[yx_dim[0]];
 		count[yx_dim[0]] -= remainder;
 
-		count[yx_dim[1]] = width;
-		while ( (start[yx_dim[0]] + count[yx_dim[0]]) <= height && status == NC_NOERR) {
+		count[yx_dim[1]] = width_t;
+		while ( (start[yx_dim[0]] + count[yx_dim[0]]) <= height_t && status == NC_NOERR) {
 #ifdef NC4_DEBUG
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "chunked row #%u start-y:%" PRIuS " height:%" PRIuS "\n",
 					++row_num, start[yx_dim[0]], count[yx_dim[0]]);
@@ -225,7 +227,7 @@ GMT_LOCAL int gmtnc_io_nc_grid (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *he
 				status = io_nc_vara_float (header->ncid, header->z_id, start, count, grid, io_mode);
 
 			/* advance grid location and set new origin */
-			grid += count[yx_dim[0]] * ((size_t)(stride == 0 ? width : stride));
+			grid += count[yx_dim[0]] * ((stride == 0 ? width_t : stride));
 			start[yx_dim[0]] += count[yx_dim[0]];
 			if (remainder) {
 				/* reset count to full chunk height */
@@ -233,9 +235,9 @@ GMT_LOCAL int gmtnc_io_nc_grid (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *he
 				remainder = 0;
 			}
 		}
-		if ( start[yx_dim[0]] != height && status == NC_NOERR ) {
+		if ( start[yx_dim[0]] != height_t && status == NC_NOERR ) {
 			/* get/put last chunked row */
-			count[yx_dim[0]] = height - start[yx_dim[0]] + origin[0];
+			count[yx_dim[0]] = height_t - start[yx_dim[0]] + origin[0];
 #ifdef NC4_DEBUG
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "chunked row #%u start-y:%" PRIuS " height:%" PRIuS "\n",
 					++row_num, start[yx_dim[0]], count[yx_dim[0]]);
@@ -248,8 +250,8 @@ GMT_LOCAL int gmtnc_io_nc_grid (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *he
 	}
 	else {
 		/* get/put whole grid contiguous */
-		count[yx_dim[0]] = height;
-		count[yx_dim[1]] = width;
+		count[yx_dim[0]] = height_t;
+		count[yx_dim[1]] = width_t;
 		if (stride)
 			status = io_nc_varm_float (header->ncid, header->z_id, start, count, NULL, imap, grid, io_mode);
 		else
@@ -367,7 +369,7 @@ GMT_LOCAL void gmtnc_set_optimal_chunksize (struct GMT_CTRL *GMT, struct GMT_GRI
 }
 
 GMT_LOCAL int gmtnc_grd_info (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, char job) {
-	int j, err;
+	int j, err, has_vector;
 	int old_fill_mode;
 	double dummy[2], *xy = NULL;
 	char dimname[GMT_GRID_UNIT_LEN80], coord[8];
@@ -532,7 +534,7 @@ GMT_LOCAL int gmtnc_grd_info (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *head
 
 		if (gm_id > 0) {
 			size_t len;
-			char *pch;
+			char *pch = NULL;
 			gmt_M_err_trap (nc_inq_attlen (ncid, gm_id, "spatial_ref", &len));	/* Get attrib length */
 			gmt_M_str_free (header->ProjRefWKT);   /* Make sure we didn't have a previously allocated one */
 			pch = gmt_M_memory (GMT, NULL, len+1, char);           /* and allocate the needed space */
@@ -546,15 +548,16 @@ GMT_LOCAL int gmtnc_grd_info (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *head
 
 		/* Get information about x variable */
 		gmtnc_get_units (GMT, ncid, ids[header->xy_dim[0]], header->x_units);
-		if (!(j = nc_get_var_double (ncid, ids[header->xy_dim[0]], xy)))
+		if ((has_vector = !nc_get_var_double (ncid, ids[header->xy_dim[0]], xy)))
 			gmtnc_check_step (GMT, header->n_columns, xy, header->x_units, header->name);
-		if (!nc_get_att_double (ncid, ids[header->xy_dim[0]], "actual_range", dummy)) {
+		if (!nc_get_att_double (ncid, ids[header->xy_dim[0]], "actual_range", dummy) ||
+			!nc_get_att_double (ncid, ids[header->xy_dim[0]], "valid_range", dummy)) {
 			/* If actual range differs from end-points of vector then we have a pixel grid */
 			header->wesn[XLO] = dummy[0], header->wesn[XHI] = dummy[1];
-			header->registration = (!j && 1.0 - (xy[header->n_columns-1] - xy[0]) / (dummy[1] - dummy[0]) > 0.5 / header->n_columns) ?
+			header->registration = (has_vector && fabs(dummy[1] - dummy[0]) / fabs(xy[header->n_columns-1] - xy[0]) - 1.0 > 0.5 / (header->n_columns - 1)) ?
 			                       GMT_GRID_PIXEL_REG : GMT_GRID_NODE_REG;
 		}
-		else if (!j) {	/* Got node vector, so default to gridline registration */
+		else if (has_vector) {	/* Got node vector, so default to gridline registration */
 			header->wesn[XLO] = xy[0], header->wesn[XHI] = xy[header->n_columns-1];
 			header->registration = GMT_GRID_NODE_REG;
 		}
@@ -567,20 +570,24 @@ GMT_LOCAL int gmtnc_grd_info (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *head
 
 		/* Get information about y variable */
 		gmtnc_get_units (GMT, ncid, ids[header->xy_dim[1]], header->y_units);
-		if (!(j = nc_get_var_double (ncid, ids[header->xy_dim[1]], xy)))
+		if ((has_vector = !nc_get_var_double (ncid, ids[header->xy_dim[1]], xy)))
 			gmtnc_check_step (GMT, header->n_rows, xy, header->y_units, header->name);
-		if (!nc_get_att_double (ncid, ids[header->xy_dim[1]], "actual_range", dummy))
+		if (!nc_get_att_double (ncid, ids[header->xy_dim[1]], "actual_range", dummy) ||
+			!nc_get_att_double (ncid, ids[header->xy_dim[1]], "valid_range", dummy))
 			header->wesn[YLO] = dummy[0], header->wesn[YHI] = dummy[1];
-		else if (!j)
+		else if (has_vector)
 			header->wesn[YLO] = xy[0], header->wesn[YHI] = xy[header->n_rows-1];
 		else
 			header->wesn[YLO] = 0.0, header->wesn[YHI] = (double) header->n_rows-1;
+
 		/* Check for reverse order of y-coordinate */
 		if (header->wesn[YLO] > header->wesn[YHI]) {
 			header->row_order = k_nc_start_north;
 			dummy[0] = header->wesn[YHI], dummy[1] = header->wesn[YLO];
 			header->wesn[YLO] = dummy[0], header->wesn[YHI] = dummy[1];
 		}
+		else if (has_vector && xy[0] > xy[header->n_rows-1])
+			header->row_order = k_nc_start_north;
 		else
 			header->row_order = k_nc_start_south;
 		header->inc[GMT_Y] = gmt_M_get_inc (GMT, header->wesn[YLO], header->wesn[YHI], header->n_rows, header->registration);
@@ -638,6 +645,7 @@ GMT_LOCAL int gmtnc_grd_info (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *head
 #ifdef NC4_DEBUG
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->wesn: %g %g %g %g\n",
 	            header->wesn[XLO], header->wesn[XHI], header->wesn[YLO], header->wesn[YHI]);
+	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->registration:%u\n", header->registration);
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->row_order: %s\n",
 	            header->row_order == k_nc_start_south ? "S->N" : "N->S");
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->n_columns: %3d   head->n_rows:%3d\n", header->n_columns, header->n_rows);
@@ -721,8 +729,7 @@ L100:
 
 		/* Define y variable */
 		gmtnc_put_units (ncid, ids[header->xy_dim[1]], header->y_units);
-		header->row_order = k_nc_start_south;
-		dummy[(1-header->row_order)/2] = header->wesn[YLO], dummy[(1+header->row_order)/2] = header->wesn[YHI];
+		dummy[0] = header->wesn[YLO], dummy[1] = header->wesn[YHI];
 		gmt_M_err_trap (nc_put_att_double (ncid, ids[header->xy_dim[1]], "actual_range", NC_DOUBLE, 2U, dummy));
 
 		/* When varname is given, and z_units is default, overrule z_units with varname */
@@ -778,6 +785,8 @@ L100:
 		xy = gmt_M_memory (GMT, NULL,  MAX (header->n_columns,header->n_rows), double);
 		for (col = 0; col < header->n_columns; col++) xy[col] = gmt_M_grd_col_to_x (GMT, col, header);
 		gmt_M_err_trap (nc_put_var_double (ncid, ids[header->xy_dim[0]], xy));
+
+		/* Depending on row_order, write y-coordinate array bottom-to-top or top-to-bottom */
 		if (header->row_order == k_nc_start_south) {
 			for (row = 0; row < header->n_rows; row++) xy[row] = (double) gmt_M_col_to_x (GMT, row, header->wesn[YLO], header->wesn[YHI], header->inc[GMT_Y], 0.5 * header->registration, header->n_rows);
 		}
@@ -796,7 +805,7 @@ L100:
 
 /* Shift columns in a grid to the right (n_shift < 0) or to the left (n_shift < 0) */
 GMT_LOCAL void gmtnc_right_shift_grid (void *gridp, const unsigned n_cols, const unsigned n_rows, int n_shift, size_t cell_size) {
-	char *tmp, *grid = (char*)gridp;
+	char *tmp = NULL, *grid = (char*)gridp;
 	size_t row, n_shift_abs = abs (n_shift), nm;
 	size_t n_cols_t = (size_t)n_cols, n_rows_t = (size_t)n_rows;
 
@@ -840,64 +849,67 @@ GMT_LOCAL void gmtnc_padding_copy (void *gridp, const unsigned n_cols, const uns
 	char *grid = (char*)gridp;
 	size_t row, cell, nm, nm2;
 	size_t n_cols_t = (size_t)n_cols, n_rows_t = (size_t)n_rows;
+	size_t pad_t[4];
 
 	assert (n_cols > n_pad[XLO] + n_pad[XHI] && n_rows > n_pad[YLO] + n_pad[YHI] &&
 		n_pad[XLO] + n_pad[XHI] + n_pad[YLO] + n_pad[YHI] > 0 && cell_size > 0);
 
+	for (row = 0; row < 4; row++) pad_t[row] = (size_t)n_pad[row];
+
 	if (periodic_cols) {
 		/* A periodic grid wraps around */
-		for (row = (size_t)n_pad[YHI]; (row + (size_t)n_pad[YLO]) < n_rows_t; ++row) {
+		for (row = pad_t[YHI]; (row + pad_t[YLO]) < n_rows_t; ++row) {
 			nm = row * n_cols_t;
 			/* Iterate over rows that contain data */
-			for (cell = 0; cell < (size_t)n_pad[XLO]; ++cell) {
-				/* Copy end of this row into first n_pad[XLO] columns:
+			for (cell = 0; cell < pad_t[XLO]; ++cell) {
+				/* Copy end of this row into first pad_t[XLO] columns:
 				 * X X 0 1 2 3 4 5 X X -> 4 5 0 1 2 3 4 5 X X */
 				memcpy (grid + (nm + cell) * cell_size,
-								grid + (nm + n_cols_t + cell - (size_t)n_pad[XLO] - (size_t)n_pad[XHI]) * cell_size,
+								grid + (nm + n_cols_t + cell - pad_t[XLO] - pad_t[XHI]) * cell_size,
 								cell_size);
 			}
-			for (cell = 0; cell < (size_t)n_pad[XHI]; ++cell) {
+			for (cell = 0; cell < pad_t[XHI]; ++cell) {
 				/* Copy start of this row into last n_pad[XHI] columns:
 				 * 4 5 0 1 2 3 4 5 X X -> 4 5 0 1 2 3 4 5 0 1 */
 				memcpy (grid + (nm + n_cols_t - cell - 1) * cell_size,
-								grid + (nm + (size_t)n_pad[XLO] + (size_t)n_pad[XHI] - cell - 1) * cell_size,
+								grid + (nm + pad_t[XLO] + pad_t[XHI] - cell - 1) * cell_size,
 								cell_size);
 			}
 		}
 	}
 	else { /* !periodic_cols */
-		for (row = (size_t)n_pad[YHI]; (row + (size_t)n_pad[YLO]) < n_rows_t; ++row) {
+		for (row = pad_t[YHI]; (row + pad_t[YLO]) < n_rows_t; ++row) {
 			nm = row * n_cols_t;
 			/* Iterate over rows that contain data */
-			for (cell = 0; cell < (size_t)n_pad[XLO]; ++cell) {
-				/* Duplicate first n_pad[XLO] columns in this row:
+			for (cell = 0; cell < pad_t[XLO]; ++cell) {
+				/* Duplicate first pad_t[XLO] columns in this row:
 				 * 4 5 0 1 2 3 4 5 X X -> 0 0 0 1 2 3 4 5 X X */
 				memcpy (grid + (nm + cell) * cell_size,
-								grid + (nm + (size_t)n_pad[XLO]) * cell_size,
+								grid + (nm + pad_t[XLO]) * cell_size,
 								cell_size);
 			}
-			for (cell = 0; cell < (size_t)n_pad[XHI]; ++cell) {
-				/* Duplicate last n_pad[XHI] columns in this row:
+			for (cell = 0; cell < pad_t[XHI]; ++cell) {
+				/* Duplicate last pad_t[XHI] columns in this row:
 				 * 0 0 0 1 2 3 4 5 X X -> 0 0 0 1 2 3 4 5 5 5 */
 				memcpy (grid + (nm + n_cols_t - cell - 1) * cell_size,
-								grid + (nm + n_cols_t - (size_t)n_pad[XHI] - 1) * cell_size,
+								grid + (nm + n_cols_t - pad_t[XHI] - 1) * cell_size,
 								cell_size);
 			}
 		}
 	}
 
-	for (cell = 0; cell < (size_t)n_pad[YHI]; ++cell) {
+	for (cell = 0; cell < pad_t[YHI]; ++cell) {
 		nm = cell * n_cols_t;
-		/* Duplicate n_pad[YHI] rows in the beginning */
-		memcpy(grid + nm * cell_size,
-					 grid + ((size_t)n_pad[YHI]) * n_cols_t * cell_size,
+		/* Duplicate pad_t[YHI] rows in the beginning */
+		memcpy (grid + nm * cell_size,
+					 grid + pad_t[YHI] * n_cols_t * cell_size,
 					 n_cols_t * cell_size);
 	}
-	nm2 = (n_rows_t - (size_t)n_pad[YLO] - 1) * n_cols_t;
-	for (cell = 0; cell < (size_t)n_pad[YLO]; ++cell) {
+	nm2 = (n_rows_t - pad_t[YLO] - 1) * n_cols_t;
+	for (cell = 0; cell < pad_t[YLO]; ++cell) {
 		nm = (n_rows_t - cell - 1) * n_cols_t;
-		/* Duplicate last n_pad[YLO] rows */
-		memcpy(grid + nm * cell_size,
+		/* Duplicate last pad_t[YLO] rows */
+		memcpy (grid + nm * cell_size,
 					 grid + nm2 * cell_size,
 					 n_cols_t * cell_size);
 	}
@@ -909,22 +921,25 @@ GMT_LOCAL void gmtnc_padding_zero (void *gridp, const unsigned n_cols, const uns
 	char *grid = (char*)gridp;
 	size_t row, nm;
 	size_t n_cols_t = (size_t)n_cols, n_rows_t = (size_t)n_rows;
+	size_t pad_t[4];
 
 	assert (n_cols > n_pad[XLO] + n_pad[XHI] && n_rows > n_pad[YLO] + n_pad[YHI] &&
 		n_pad[XLO] + n_pad[XHI] + n_pad[YLO] + n_pad[YHI] > 0 && cell_size > 0);
 
+	for (row = 0; row < 4; row++) pad_t[row] = (size_t)n_pad[row];
+
 	/* Iterate over rows that contain data */
-	for (row = (size_t)n_pad[YHI]; (row + n_pad[YLO]) < n_rows_t; ++row) {
+	for (row = pad_t[YHI]; (row + pad_t[YLO]) < n_rows_t; ++row) {
 		nm = row * n_cols_t;
 		/* Zero n cells at beginning of row */
-		memset (grid + nm * cell_size, 0, ((size_t)n_pad[XLO]) * cell_size);
+		memset (grid + nm * cell_size, 0, pad_t[XLO] * cell_size);
 		/* Zero n cells at end of row */
-		memset (grid + (nm + n_cols_t - (size_t)n_pad[XHI]) * cell_size, 0, ((size_t)n_pad[XHI]) * cell_size);
+		memset (grid + (nm + n_cols_t - pad_t[XHI]) * cell_size, 0, pad_t[XHI] * cell_size);
 	}
-	/* Zero n_pad[YHI] rows in the beginning */
-	memset (grid, 0, ((size_t)n_pad[YHI]) * n_cols_t * cell_size);
-	/* Zero last n_pad[YLO] rows */
-	memset(grid + (n_rows_t-(size_t)n_pad[YLO]) * n_cols_t * cell_size, 0, ((size_t)n_pad[YLO]) * n_cols_t * cell_size);
+	/* Zero pad_t[YHI] rows in the beginning */
+	memset (grid, 0, pad_t[YHI] * n_cols_t * cell_size);
+	/* Zero last pad_t[YLO] rows */
+	memset(grid + (n_rows_t-pad_t[YLO]) * n_cols_t * cell_size, 0, pad_t[YLO] * n_cols_t * cell_size);
 }
 
 /* Fill mode for grid padding */
@@ -1106,7 +1121,8 @@ GMT_LOCAL int gmtnc_grd_prep_io (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *h
 			}
 		}
 		else
-			assert (wesn[XLO] >= header->wesn[XLO] && wesn[XHI] <= header->wesn[XHI]);
+			assert ((wesn[XLO]+GMT_CONV8_LIMIT*header->inc[GMT_X]) >= header->wesn[XLO] && (wesn[XHI]-GMT_CONV8_LIMIT*header->inc[GMT_X]) <= header->wesn[XHI]);
+		//assert (wesn[XLO] >= header->wesn[XLO] && wesn[XHI] <= header->wesn[XHI]); /* Too harsh */
 
 		/* Get dimension of subregion */
 		*width  = urint ((wesn[XHI] - wesn[XLO]) * header->r_inc[GMT_X]) + is_gridline_reg;
@@ -1257,7 +1273,8 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 	int err;            /* netcdf errors */
 	int n_shift;
 	unsigned dim[2], dim2[2], origin[2], origin2[2]; /* dimension and origin {y,x} of subset to read from netcdf */
-	unsigned width = 0, height = 0, row;
+	unsigned width = 0, height = 0;
+	size_t width_t, height_t, row, stride_t;
 	uint64_t imag_offset;
 	float *pgrid = NULL;
 
@@ -1276,6 +1293,7 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 #ifdef NC4_DEBUG
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "      wesn: %g %g %g %g\n", wesn[XLO], wesn[XHI], wesn[YLO], wesn[YHI]);
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->wesn: %g %g %g %g\n", header->wesn[XLO], header->wesn[XHI], header->wesn[YLO], header->wesn[YHI]);
+	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->registration:%u\n", header->registration);
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->row_order: %s\n", header->row_order == k_nc_start_south ? "S->N" : "N->S");
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "width:    %3d     height:%3d\n", width, height);
 	GMT_Report (GMT->parent, GMT_MSG_NORMAL, "head->n_columns: %3d   head->n_rows:%3d\n", header->n_columns, header->n_rows);
@@ -1295,17 +1313,17 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 	gmtnc_setup_chunk_cache();
 	gmt_M_err_trap (nc_open (header->name, NC_NOWRITE, &header->ncid));
 
-	/* read grid */
+	/* Read grid */
 	if (dim2[1] == 0)
 		gmtnc_io_nc_grid (GMT, header, dim, origin, header->stride, k_get_netcdf, pgrid + header->data_offset);
 	else {
-		/* read grid in two parts */
+		/* Read grid in two parts */
 		unsigned int stride_or_width = header->stride != 0 ? header->stride : width;
 		gmtnc_io_nc_grid (GMT, header, dim, origin, stride_or_width, k_get_netcdf, pgrid + header->data_offset);
 		gmtnc_io_nc_grid (GMT, header, dim2, origin2, stride_or_width, k_get_netcdf, pgrid + header->data_offset + dim[1]);
 	}
 
-	/* if we need to shift grid */
+	/* If we need to shift grid */
 	if (n_shift) {
 #ifdef NC4_DEBUG
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "gmtnc_right_shift_grid: %d\n", n_shift);
@@ -1313,7 +1331,7 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 		gmtnc_right_shift_grid (pgrid, dim[1], dim[0], n_shift, sizeof(grid[0]));
 	}
 
-	/* if dim[1] + dim2[1] was < requested width: wrap-pad east border */
+	/* If dim[1] + dim2[1] was < requested width: wrap-pad east border */
 	if (gmt_M_grd_is_global(GMT, header) && width > dim[1] + dim2[1]) {
 		unsigned int fix_pad[4] = {0,0,0,0};
 		fix_pad[XHI] = width - dim[1] - dim2[1];
@@ -1322,13 +1340,16 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 	else
 		assert (width == dim[1] + dim2[1]);
 
-	/* get stats */
+	/* Get stats */
+	width_t = (size_t)width;
+	height_t = (size_t)height;
+	stride_t = (size_t)header->stride;
 	header->z_min = DBL_MAX;
 	header->z_max = -DBL_MAX;
 	adj_nan_value = !isnan (header->nan_value);
 	header->has_NaNs = GMT_GRID_NO_NANS;	/* We are about to check for NaNs and if none are found we retain 1, else 2 */
-	for (row = 0; row < height; ++row) {
-		float *p_data = pgrid + ((size_t)row) * ((size_t)(header->stride ? header->stride : width));
+	for (row = 0; row < height_t; ++row) {
+		float *p_data = pgrid + row * (header->stride ? stride_t : width_t);
 		unsigned col;
 		for (col = 0; col < width; col ++) {
 			if (adj_nan_value && p_data[col] == header->nan_value) {
@@ -1344,14 +1365,14 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 				header->has_NaNs = GMT_GRID_HAS_NANS;
 		}
 	}
-	/* check limits */
+	/* Check limits */
 	if (header->z_min > header->z_max) {
 		header->z_min = NAN;
 		header->z_max = NAN;
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Warning: No valid values in grid [%s]\n", header->name);
 	}
 	else {
-		/* report z-range of grid (with scale and offset applied): */
+		/* Report z-range of grid (with scale and offset applied): */
 		unsigned int level;
 #ifdef NC4_DEBUG
 		level = GMT_MSG_NORMAL;
@@ -1362,7 +1383,7 @@ int gmt_nc_read_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, float
 				"packed z-range: [%g,%g]\n", header->z_min, header->z_max);
 	}
 
-	/* flip grid upside down */
+	/* Flip grid upside down */
 	if (header->row_order == k_nc_start_south)
 		gmtlib_grd_flip_vertical (pgrid + header->data_offset, width, height, header->stride, sizeof(grid[0]));
 
@@ -1412,6 +1433,7 @@ int gmt_nc_write_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, floa
 	int first_col, last_col, first_row, last_row;
 	uint64_t imag_offset;
 	size_t n, nm;
+	size_t width_t, height_t;
 	double limit[2];      /* minmax of z variable */
 	float *pgrid = NULL;
 
@@ -1465,16 +1487,18 @@ int gmt_nc_write_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, floa
 	if (header->grdtype == GMT_GRID_GEOGRAPHIC_EXACT360_REPEAT)
 		gmtnc_grid_fix_repeat_col (GMT, pgrid, width, height, sizeof(grid[0]));
 
-	/* flip grid upside down */
+	/* Flip grid upside down */
 	if (header->row_order == k_nc_start_south)
 		gmtlib_grd_flip_vertical (pgrid, width, height, 0, sizeof(grid[0]));
 
-	/* get stats */
+	/* Get stats */
 	header->z_min = DBL_MAX;
 	header->z_max = -DBL_MAX;
 	adj_nan_value = !isnan (header->nan_value);
 	n = 0;
-	nm = ((size_t)width) * ((size_t)height);
+	width_t  = (size_t)width;
+	height_t = (size_t)height;
+	nm = width_t * height_t;
 	while (n < nm) {
 		if (adj_nan_value && isnan (pgrid[n]))
 			pgrid[n] = header->nan_value;
@@ -1487,7 +1511,7 @@ int gmt_nc_write_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, floa
 		n++;
 	}
 
-	/* write grid */
+	/* Write grid */
 	dim[0]    = height,    dim[1]    = width;
 	origin[0] = first_row, origin[1] = first_col;
 	status = gmtnc_io_nc_grid (GMT, header, dim, origin, 0, k_put_netcdf, pgrid);
@@ -1501,7 +1525,7 @@ int gmt_nc_write_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, floa
 		if (fabs(header->z_min) >= exp2_24 || fabs(header->z_max) >= exp2_24)
 			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Warning: The z-range, [%g,%g], might exceed the significand's precision of 24 bits; round-off errors may occur.\n", header->z_min, header->z_max);
 
-		/* report z-range of grid (with scale and offset applied): */
+		/* Report z-range of grid (with scale and offset applied): */
 #ifdef NC4_DEBUG
 		level = GMT_MSG_NORMAL;
 #else
@@ -1516,7 +1540,7 @@ int gmt_nc_write_grd (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *header, floa
 	}
 	else {
 		GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Warning: No valid values in grid [%s]\n", header->name);
-		limit[0] = limit[1] = NAN; /* set limit to NaN */
+		limit[0] = limit[1] = NAN; /* Set limit to NaN */
 	}
 	status = nc_put_att_double (header->ncid, header->z_id, "actual_range", NC_DOUBLE, 2, limit);
 	if (status != NC_NOERR)
diff --git a/src/gmt_notposix.c b/src/gmt_notposix.c
index 17ebab3..c8f4448 100644
--- a/src/gmt_notposix.c
+++ b/src/gmt_notposix.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *      $Id: gmt_notposix.c 17451 2017-01-16 21:36:06Z pwessel $
+ *      $Id: gmt_notposix.c 18340 2017-06-08 02:50:06Z pwessel $
  *
  *      Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -17,7 +17,7 @@
  *--------------------------------------------------------------------*/
 /*
  *      Replacement non-POSIX functions. We will use these if your installation does not
- *      have these non-POSIX implementations itself.
+ *      have these non-POSIX implementations in its libc.
  *
  * Author:      Walter H. F. Smith, P. Wessel, R. Scharroo
  * Date:        1-JAN-2010
@@ -25,27 +25,32 @@
  *
  * PUBLIC functions:
  *
- *      sincos: Sine and cosine
+ *      sincos:			Both sine and cosine
  *      j0:             Bessel function 1st kind order 0
  *      j1:             Bessel function 1st kind order 1
  *      jn:             Bessel function 1st kind order N
  *      y0:             Bessel function 2nd kind order 0
  *      y1:             Bessel function 2nd kind order 1
  *      yn:             Bessel function 2nd kind order N
- *      erf:    Error function
- *      erfc:   Complementary error function
- *      strdup: Save copy of a string
- *      strtod: Convert ASCII string to floating point
- *  hypot:      sqrt(x^2 + y^2)
- *      log1p:  log(x+1)
- *      atanh:  inverse hyperbolic tangent
+ *      erf:			Error function
+ *      erfc:			Complementary error function
+ *      strdup:			Save copy of a string
+ *      strndup:		Save copy of a string up to specified length
+ *      strtod:			Convert ASCII string to floating point
+ *		hypot:      	sqrt(x^2 + y^2)
+ *      log1p:  		log(x+1)
+ *      atanh:  		inverse hyperbolic tangent
  */
 
 #include "gmt_dev.h"
 #include "gmt_internals.h"
 
+/* Note: If any new ifndef HAVE_***** sections are added, remember
+ * to add a check for that macro in ConfigureChecks.cmake.
+ */
+
 /*
- * POSIX replacements
+ * POSIX replacements for missing functions
  */
 
 #ifndef HAVE_STRDUP
@@ -60,6 +65,21 @@ char *strdup (const char *s) {
 }
 #endif /* HAVE_STRDUP */
 
+#ifndef HAVE_STRNDUP
+char *strndup (const char *str, size_t chars) {
+	char *buffer;
+	size_t n;
+
+	buffer = (char *) malloc (chars + 1);
+	if (buffer) {
+		for (n = 0; ((n < chars) && (str[n] != 0)) ; n++) buffer[n] = str[n];
+		buffer[n] = 0;
+	}
+
+	return buffer;
+}
+#endif /* HAVE_STRNDUP */
+
 #ifndef HAVE_STRTOD
 double strtod (const char *s, char **ends) {
 /*      Given s, try to scan it to convert an ASCII string representation of a
@@ -581,7 +601,7 @@ double yn (int n, double x) {
 	for (j = 1; j < n; j++) {
 		byp = (double)j * tox * by - bym;
 		bym = by;
-		by = byp;
+		by  = byp;
 	}
 
 	return (by);
diff --git a/src/gmt_notposix.h b/src/gmt_notposix.h
index fa29397..d9950cd 100644
--- a/src/gmt_notposix.h
+++ b/src/gmt_notposix.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- * $Id: gmt_notposix.h 17937 2017-04-15 02:51:15Z pwessel $
+ * $Id: gmt_notposix.h 18459 2017-06-25 01:14:06Z pwessel $
  *
  * Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis, and F. Wobbe
  * See LICENSE.TXT file for copying and redistribution conditions.
@@ -37,7 +37,9 @@
 
 /* HAVE_<func> is undefined or defined as 1 depending on
  * whether or not <func> is available on this system.
- * The definitions are stored in gmt_config.h */
+ * The definitions are stored in gmt_config.h.
+ * For adding more HAVE_**** checks see ConfigureChecks.cmake.
+ */
 #include "gmt_config.h"
 
 /* Declaration modifiers for DLL support (MSC et al) */
@@ -564,6 +566,10 @@
 	EXTERN_MSC char *strdup(const char *s);
 #endif
 
+#ifndef HAVE_STRNDUP
+	EXTERN_MSC char *strndup(const char *s, size_t chars);
+#endif
+
 #ifndef HAVE_STRTOD
 	EXTERN_MSC double strtod(const char *nptr, char **endptr);
 #endif
diff --git a/src/gmt_parse.c b/src/gmt_parse.c
index a65ad27..b3d9d9b 100644
--- a/src/gmt_parse.c
+++ b/src/gmt_parse.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_parse.c 17911 2017-04-13 05:45:46Z pwessel $
+ *	$Id: gmt_parse.c 18391 2017-06-17 21:24:36Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -379,9 +379,6 @@ int GMT_List_Args (void *V_API, struct GMT_OPTION *head) {
 }
 #endif
 
-#define ASCII_GS	29	/* ASCII code for group separator (temporarily replacing tabs) */
-#define ASCII_US	31	/* ASCII code for unit separator (temporarily replacing spaces in quoted text) */
-
 /*! . */
 struct GMT_OPTION *GMT_Create_Options (void *V_API, int n_args_in, const void *in) {
 	/* This function will loop over the n_args_in supplied command line arguments (in) and
@@ -421,12 +418,12 @@ struct GMT_OPTION *GMT_Create_Options (void *V_API, int n_args_in, const void *i
 		 * space, and then replace all ASCII 31 with space at the end (we do the same for tab using ASCII 29 GS (group separator) */
 		for (k = 0, quoted = false; txt_in[k]; k++) {
 			if (txt_in[k] == '\"') quoted = !quoted;	/* Initially false, becomes true at start of quote, then false when exit quote */
-			else if (quoted && txt_in[k] == '\t') txt_in[k] = ASCII_GS;
-			else if (quoted && txt_in[k] == ' ')  txt_in[k] = ASCII_US;
+			else if (quoted && txt_in[k] == '\t') txt_in[k] = GMT_ASCII_GS;
+			else if (quoted && txt_in[k] == ' ')  txt_in[k] = GMT_ASCII_US;
 		}
 		while ((gmt_strtok (txt_in, " ", &pos, p))) {	/* Break up string into separate words, and strip off double quotes */
 			unsigned int i, o;
-			for (k = 0; p[k]; k++) if (p[k] == ASCII_GS) p[k] = '\t'; else if (p[k] == ASCII_US) p[k] = ' ';	/* Replace spaces and tabs masked above */
+			for (k = 0; p[k]; k++) if (p[k] == GMT_ASCII_GS) p[k] = '\t'; else if (p[k] == GMT_ASCII_US) p[k] = ' ';	/* Replace spaces and tabs masked above */
 			for (i = o = 0; p[i]; i++) if (p[i] != '\"') p[o++] = p[i];	/* Ignore double quotes */
 			p[o] = '\0';
 			new_args[new_n_args++] = strdup (p);
@@ -436,7 +433,7 @@ struct GMT_OPTION *GMT_Create_Options (void *V_API, int n_args_in, const void *i
 			}
 		}
 		for (k = 0; txt_in[k]; k++)	/* Restore input string to prestine condition */
-			if (txt_in[k] == ASCII_GS) txt_in[k] = '\t'; else if (txt_in[k] == ASCII_US) txt_in[k] = ' ';	/* Replace spaces and tabs masked above */
+			if (txt_in[k] == GMT_ASCII_GS) txt_in[k] = '\t'; else if (txt_in[k] == GMT_ASCII_US) txt_in[k] = ' ';	/* Replace spaces and tabs masked above */
 		args = new_args;
 		n_args = new_n_args;
 		gmt_M_str_free (txt_in);
@@ -814,7 +811,7 @@ struct GMT_OPTION *GMT_Append_Option (void *V_API, struct GMT_OPTION *new_opt, s
 }
 
 /*! . */
-int GMT_Delete_Option (void *V_API, struct GMT_OPTION *current) {
+int GMT_Delete_Option (void *V_API, struct GMT_OPTION *current, struct GMT_OPTION **head) {
 	/* Remove the specified entry from the linked list.  It is assumed that current
 	 * points to the correct option in the linked list. */
 	struct GMTAPI_CTRL *API = NULL;
@@ -823,9 +820,12 @@ int GMT_Delete_Option (void *V_API, struct GMT_OPTION *current) {
 	if (!current) return_error (V_API, GMT_OPTION_IS_NULL);		/* No option was passed */
 	API = parse_get_api_ptr (V_API);	/* Cast void pointer to a GMTAPI_CTRL pointer */
 
-	/* Remove the current option and bypass via the enx/prev pointers in the linked list */
-	if (current->previous) current->previous->next = current->next;
+	/* Remove the current option and bypass via the next/prev pointers in the linked list */
 	if (current->next) current->next->previous = current->previous;
+	if (current->previous)	/* Reset pointer from previous entry to current's next entry */
+		current->previous->next = current->next;
+	else	/* current == *head so there is no previous; must update head */
+		*head = current->next;
 	gmt_M_str_free (current->arg);	/* Option arguments were created by strdup, so we must use free */
 	gmt_M_free (API->GMT, current);		/* Option structure was created by gmt_M_memory, hence gmt_M_free */
 
diff --git a/src/gmt_plot.c b/src/gmt_plot.c
index accfb37..1da5241 100644
--- a/src/gmt_plot.c
+++ b/src/gmt_plot.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_plot.c 18055 2017-04-28 17:46:38Z pwessel $
+ *	$Id: gmt_plot.c 18428 2017-06-21 23:51:36Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -279,7 +279,8 @@ struct GMT_CIRCLE {	/* Helper variables needed to draw great or small circle hea
 
 /* Local functions */
 
-#ifndef DEBUG_MODERN
+#if 0
+/* This code has not been used. See gmt_api.c instead for api_get_ppid */
 GMT_LOCAL int gmt_get_ppid (struct GMT_CTRL *GMT) {
 	/* Return the parent process ID [i.e., shell for command line use or gmt app for API] */
 	int ppid = -1;
@@ -3169,22 +3170,29 @@ GMT_LOCAL uint64_t plot_geo_polarcap_segment_orig (struct GMT_CTRL *GMT, struct
 }
 #endif
 
+GMT_LOCAL bool at_pole (double *lat, uint64_t n) {
+	return (lat[0] == lat[n-1] && fabs (lat[0]) == 90.0);
+}
+
 GMT_LOCAL uint64_t plot_geo_polygon_segment (struct GMT_CTRL *GMT, struct GMT_DATASEGMENT *S, bool add_pole, bool first, const char *comment) {
 	/* Handles the laying down of polygons suitable for filling only; outlines are done separately later.
 	 * Polar caps need special treatment in that we must add a detour to the pole.
 	 * That detour will not be drawn, only used for fill. */
 
 	uint64_t n = S->n_rows, k;
-	double *plon = S->data[GMT_X], *plat = S->data[GMT_Y];
-
+	double *plon = S->data[GMT_X], *plat = S->data[GMT_Y], t_lat;
 	GMT_Report (GMT->parent, GMT_MSG_DEBUG, "Polar cap: %d\n", (int)add_pole);
+	bool ap = at_pole (plat, n);
+	if (ap) plon[n-1] = plon[0];
 	if (add_pole) {
 		if ((n = gmt_geo_polarcap_segment (GMT, S, &plon, &plat)) == 0) {	/* Not a global map */
 			/* Here we must detour to the N or S pole, then resample the path */
 			n = S->n_rows + 2;	/* Add new first and last point to connect to the pole */
 			plon = gmt_M_memory (GMT, NULL, n, double);
 			plat = gmt_M_memory (GMT, NULL, n, double);
-			plat[0] = plat[n-1] = S->pole * 90.0;
+			t_lat = S->pole * 90.0;	/* This is presumably the correct pole, but could fail if just touching the pole */
+			if (S->data[GMT_Y][0] * t_lat < 0.0) t_lat = -t_lat;	/* Well, I'll be damned... */
+			plat[0] = plat[n-1] = t_lat;
 			plon[0] = S->data[GMT_X][0];
 			plon[n-1] = S->data[GMT_X][S->n_rows-1];
 			gmt_M_memcpy (&plon[1], S->data[GMT_X], S->n_rows, double);
@@ -4465,7 +4473,12 @@ void gmt_map_clip_on (struct GMT_CTRL *GMT, double rgb[], unsigned int flag) {
 	 * inside the map area will be drawn on paper. map_setup
 	 * must have been called first.  If r >= 0, the map area will
 	 * first be painted in the r,g,b colors specified.  flag can
-	 * be 0-3, as described in PSL_beginclipping().
+	 * be 0-3, as described in PSL_beginclipping():
+	 * flag : 0 = continue adding pieces to the curent clipping path
+	 *        1 = start new clipping path (more must follows)
+	 *        2 = end clipping path (this is the last segment added)
+	 *        3 = this is the complete clipping path (start to end)
+	 * 	  Add 4 to select even-odd clipping [nonzero-winding rule].
 	 */
 
 	uint64_t np;
@@ -5618,14 +5631,16 @@ struct PSL_CTRL * gmt_plotinit (struct GMT_CTRL *GMT, struct GMT_OPTION *options
 
 	if (GMT->current.ps.map_logo_label[0] == 'c' && GMT->current.ps.map_logo_label[1] == 0) {
 		char txt[4] = {' ', '-', 'X', 0};
-		struct GMT_OPTION *opt;
+		struct GMT_OPTION *opt = NULL;
+		size_t len = strlen (GMT->init.module_name);
 		/* -Uc was given as shorthand for "plot current command line" */
 		strncpy (GMT->current.ps.map_logo_label, GMT->init.module_name, GMT_LEN256-1);
 		for (opt = options; opt; opt = opt->next) {
 			if (opt->option == GMT_OPT_INFILE || opt->option == GMT_OPT_OUTFILE) continue;	/* Skip file names */
 			txt[2] = opt->option;
-			strcat (GMT->current.ps.map_logo_label, txt);
-			strcat (GMT->current.ps.map_logo_label, opt->arg);
+			strncat (GMT->current.ps.map_logo_label, txt, GMT_LEN256-len);
+			len += 3;
+			strncat (GMT->current.ps.map_logo_label, opt->arg, GMT_LEN256-len);
 		}
 	}
 	if (GMT->current.setting.map_logo)
@@ -5723,12 +5738,16 @@ uint64_t gmt_geo_polarcap_segment (struct GMT_CTRL *GMT, struct GMT_DATASEGMENT
 	double *x_perim = NULL, *y_perim = NULL, *plon = NULL, *plat = NULL;
 	static char *pole = "S N";
 	int type;
+	bool ap;
 #if 0
 	FILE *fp;
 #endif
+	if (GMT->common.R.oblique) return 0;	/* Algorithm assumes meridian boundaries */
 	/* We want this code to be used for the misc. global projections but also global cylindrical or linear(if degrees) maps */
 	if (!(gmt_M_is_misc(GMT) || (GMT->current.map.is_world  && (gmt_M_is_cylindrical(GMT) || (gmt_M_is_linear(GMT) && gmt_M_is_geographic(GMT,GMT_IN)))))) return 0;	/* We are only concerned with the global misc projections here */
-
+	ap = at_pole (S->data[GMT_Y], S->n_rows);
+	//if (ap) return S->n_rows;
+	fprintf (stderr, "INSIDE\n");
 	/* Global projection need to handle pole path properly */
 	GMT_Report (GMT->parent, GMT_MSG_DEBUG, "Try to include %c pole in polar cap path\n", pole[S->pole+1]);
 	GMT_Report (GMT->parent, GMT_MSG_DEBUG, "West longitude = %g.  East longitude = %g\n", GMT->common.R.wesn[XLO], GMT->common.R.wesn[XHI]);
diff --git a/src/gmt_proj.c b/src/gmt_proj.c
index 90c520b..19e4d44 100644
--- a/src/gmt_proj.c
+++ b/src/gmt_proj.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_proj.c 18020 2017-04-22 06:59:54Z pwessel $
+ *	$Id: gmt_proj.c 18319 2017-06-04 00:57:38Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -1173,9 +1173,7 @@ void gmt_tm (struct GMT_CTRL *P, double lon, double lat, double *x, double *y) {
 		sincos (2.0 * lat, &s2, &c2);
 		tan_lat = s / c;
 		M = P->current.proj.EQ_RAD * (P->current.proj.t_c1 * lat + s2 * (P->current.proj.t_c2 + c2 * (P->current.proj.t_c3 + c2 * P->current.proj.t_c4)));
-		dlon = lon - P->current.proj.central_meridian;
-		if (fabs (dlon) > 360.0) dlon += copysign (360.0, -dlon);
-		if (fabs (dlon) > 180.0) dlon = copysign (360.0 - fabs (dlon), -dlon);
+		gmt_M_set_delta_lon (P->current.proj.central_meridian, lon, dlon);
 		N = P->current.proj.EQ_RAD / d_sqrt (1.0 - P->current.proj.ECC2 * s * s);
 		T = tan_lat * tan_lat;
 		T2 = T * T;
@@ -1231,10 +1229,7 @@ void gmt_tm_sph (struct GMT_CTRL *GMT, double lon, double lat, double *x, double
 	/* Convert lon/lat to TM x/y by spherical formula */
 	double dlon, b, clat, slat, clon, slon, xx, yy;
 
-	dlon = lon - GMT->current.proj.central_meridian;
-	if (fabs (dlon) > 360.0) dlon += copysign (360.0, -dlon);
-	if (fabs (dlon) > 180.0) dlon = copysign (360.0 - fabs (dlon), -dlon);
-
+	gmt_M_set_delta_lon (GMT->current.proj.central_meridian, lon, dlon);
 	if (fabs (lat) > 90.0) {
 		/* Invalid latitude.  Treat as in gmt_merc_sph(), but transversely:  */
 		*x = copysign (1.0e100, dlon);
diff --git a/src/gmt_prototypes.h b/src/gmt_prototypes.h
index 2850631..411e1d3 100644
--- a/src/gmt_prototypes.h
+++ b/src/gmt_prototypes.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_prototypes.h 18188 2017-05-08 05:24:15Z pwessel $
+ *	$Id: gmt_prototypes.h 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -103,8 +103,8 @@ EXTERN_MSC unsigned int gmt_setdefaults (struct GMT_CTRL *GMT, struct GMT_OPTION
 EXTERN_MSC int gmt_loaddefaults (struct GMT_CTRL *GMT, char *file);
 EXTERN_MSC int gmt_parse_symbol_option (struct GMT_CTRL *GMT, char *text, struct GMT_SYMBOL *p, unsigned int mode, bool cmd);
 EXTERN_MSC int gmt_message (struct GMT_CTRL *GMT, char *format, ...);
-EXTERN_MSC void gmt_disable_i_opt (struct GMT_CTRL *GMT);
-EXTERN_MSC void gmt_reenable_i_opt (struct GMT_CTRL *GMT);
+EXTERN_MSC void gmt_disable_ih_opts (struct GMT_CTRL *GMT);
+EXTERN_MSC void gmt_reenable_ih_opts (struct GMT_CTRL *GMT);
 #ifdef WIN32
 EXTERN_MSC void gmt_setmode (struct GMT_CTRL *GMT, int direction);
 #endif
@@ -275,6 +275,7 @@ EXTERN_MSC bool gmt_this_alloc_level (struct GMT_CTRL *GMT, unsigned int alloc_l
 
 /* gmt_support.c: */
 
+EXTERN_MSC char *gmt_assign_text (struct GMT_CTRL *GMT, char *p);
 EXTERN_MSC char *gmt_first_modifier (struct GMT_CTRL *GMT, char *string, const char *sep);
 EXTERN_MSC unsigned int gmt_getmodopt (struct GMT_CTRL *GMT, const char option, const char *string, const char *sep, unsigned int *pos, char *token, unsigned int *err);
 EXTERN_MSC void gmt_init_pen (struct GMT_CTRL *GMT, struct GMT_PEN *pen, double width);
diff --git a/src/gmt_support.c b/src/gmt_support.c
index 1ded4e2..49f76a7 100644
--- a/src/gmt_support.c
+++ b/src/gmt_support.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_support.c 18188 2017-05-08 05:24:15Z pwessel $
+ *	$Id: gmt_support.c 18319 2017-06-04 00:57:38Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -2932,11 +2932,9 @@ GMT_LOCAL int support_inonout_sphpol_count (double plon, double plat, const stru
 		if (gmt_same_longitude (plon, lon1)) {	/* Line goes through the 1st node */
 			/* Must check that the two neighboring points are on either side; otherwise it is just a tangent line */
 			ip = support_getprevpoint (plon, P->data[GMT_X], P->n_rows, i);	/* Index of previous point != plon */
-			dx1 = P->data[GMT_X][ip] - lon1;
-			if (fabs (dx1) > 180.0) dx1 += copysign (360.0, -dx1);	/* Allow for jumps across discontinuous 0 or 180 boundary */
+			gmt_M_set_delta_lon (lon1, P->data[GMT_X][ip], dx1);	/* Allow for jumps across discontinuous 0 or 180 boundary */
 			if (dx1 == 0.0) continue;	/* Points ip and i forms a meridian, we a tangent line */
-			dx2 = lon2 - lon1;
-			if (fabs (dx2) > 180.0) dx2 += copysign (360.0, -dx2);	/* Allow for jumps across discontinuous 0 or 180 boundary */
+			gmt_M_set_delta_lon (lon1, lon2, dx2);				/* Allow for jumps across discontinuous 0 or 180 boundary */
 			if (dx1*dx2 > 0.0) continue;	/* Both on same side since signs are the same */
 			cut = (P->data[GMT_Y][i] > plat) ? 0 : 1;	/* node is north (0) or south (1) of P */
 			count[cut]++;
@@ -10192,6 +10190,16 @@ int gmt_BC_init (struct GMT_CTRL *GMT, struct GMT_GRID_HEADER *h) {
 		if (h->nyp != 0) h->nyp = (h->registration == GMT_GRID_PIXEL_REG) ? h->n_rows : h->n_rows - 1;
 	}
 
+	if (h->BC[XLO] == GMT_BC_IS_PERIODIC && h->BC[XHI] == GMT_BC_IS_PERIODIC) {	/* Parameters needed for x-periodic, non-geographic grids */
+		GMT->common.n.periodic[GMT_X] = true;
+		GMT->common.n.range[GMT_X] = h->wesn[XHI] - h->wesn[XLO];
+		GMT->common.n.half_range[GMT_X] = 0.5 * GMT->common.n.range[GMT_X];
+	}
+	if (h->BC[YLO] == GMT_BC_IS_PERIODIC && h->BC[YHI] == GMT_BC_IS_PERIODIC) {	/* Parameters needed for y-periodic, non-geographic grids */
+		GMT->common.n.periodic[GMT_Y] = true;
+		GMT->common.n.range[GMT_Y] = h->wesn[YHI] - h->wesn[YLO];
+		GMT->common.n.half_range[GMT_Y] = 0.5 * GMT->common.n.range[GMT_Y];
+	}
 	for (i = 1, same = true; same && i < 4; i++) if (h->BC[i] != h->BC[i-1]) same = false;
 
 	if (same)
@@ -11879,6 +11887,21 @@ void gmt_testing (struct GMT_CTRL *GMT, char *string) {
 #endif
 
 /*! . */
+char *gmt_assign_text (struct GMT_CTRL *GMT, char *p) {
+	/* Deals with duplicating a string and skipping any enclosing quotes.
+	 * Note: p is expected to be the result from gmt_getmodopt, hence the p[1] stuff */
+	char *txt = NULL;
+	gmt_M_unused(GMT);
+	if (strchr ("\"\'", p[1]) && p[1] == p[strlen(p)-1]) { /* Eliminate quotes */
+		txt = strdup (&p[2]);
+		txt[strlen(txt)-1] = '\0';
+	}
+	else	/* Normal title */
+		txt = strdup (&p[1]);
+	return (txt);
+}
+
+/*! . */
 unsigned int gmt_getmodopt (struct GMT_CTRL *GMT, const char option, const char *string, const char *sep, unsigned int *pos, char *token, unsigned int *err) {
 	/* Breaks string into tokens separated by one of more modifier separator
 	 * characters (in sep) following a "+".  E.g., if you are looking for a
diff --git a/src/gmt_synopsis.h b/src/gmt_synopsis.h
index 4a22549..7f2c827 100644
--- a/src/gmt_synopsis.h
+++ b/src/gmt_synopsis.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_synopsis.h 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: gmt_synopsis.h 18304 2017-06-02 04:58:28Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -72,8 +72,8 @@
 #define GMT_TROSE_DIR	GMT_XYANCHOR "+w<width>[+f[<level>]]" GMT_JUSTIFY "[+l<w,e,s,n>]" GMT_OFFSET
 #define GMT_TROSE_MAG	GMT_XYANCHOR "+w<width>[+d[<dec>[/<dlabel>]]][+i<pen>]" GMT_JUSTIFY "[+l<w,e,s,n>][+p<pen>][+t<ints>]" GMT_OFFSET
 #define GMT_SCALE	GMT_XYANCHOR "+c[<slon>/]<slat>+w<length>[e|f|M|n|k|u][+a<align>][+f]" GMT_JUSTIFY "[+l[<label>]]" GMT_OFFSET "[+u]"
-#define GMT_INSERT_A	GMT_XYANCHOR "+w<width>[<unit>][/<height>[<unit>]]" GMT_JUSTIFY GMT_OFFSET "[+s<file>]"
-#define GMT_INSERT_B	"<xmin>/<xmax>/<ymin>/<ymax>[+r][+s<file>][+u<unit>]"
+#define GMT_INSERT_A	GMT_XYANCHOR "+w<width>[<unit>][/<height>[<unit>]]" GMT_JUSTIFY GMT_OFFSET "[+s<file>][+t]"
+#define GMT_INSERT_B	"<xmin>/<xmax>/<ymin>/<ymax>[+r][+s<file>][+t][+u<unit>]"
 
 /* Options for background panel, used in gmtlogo, psimage, pslegend and psscale */
 
diff --git a/src/gmt_vector.c b/src/gmt_vector.c
index 64c1762..ed85760 100644
--- a/src/gmt_vector.c
+++ b/src/gmt_vector.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmt_vector.c 17622 2017-03-06 00:07:57Z pwessel $
+ *	$Id: gmt_vector.c 18396 2017-06-19 21:05:48Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -1412,8 +1412,7 @@ uint64_t gmt_fix_up_path (struct GMT_CTRL *GMT, double **a_lon, double **a_lat,
 			boost = 1.0;
 
 		if (mode == GMT_STAIRS_Y) {	/* First follow meridian, then parallel */
-			dlon = lon[i]-lon[i-1];	/* Beware of jumps due to sign differences */
-			if (fabs (dlon) > 180.0) dlon += copysign (360.0, -dlon);	/* Never more than 180 to next point */
+			gmt_M_set_delta_lon (lon[i-1], lon[i], dlon);	/* Beware of jumps due to sign differences */
 			lon_i = lon[i-1] + dlon;	/* Use lon_i instead of lon[i] in the marching since this avoids any jumping */
 			theta = fabs (dlon) * cosd (lat[i-1]);
 			n_step = lrint (theta / step);
@@ -1446,8 +1445,7 @@ uint64_t gmt_fix_up_path (struct GMT_CTRL *GMT, double **a_lon, double **a_lat,
 				GMT->hidden.mem_coord[GMT_Y][n_new] = lat[i-1] * (1 - c) + lat[i] * c;
 				n_new++;
 			}
-			dlon = lon[i]-lon[i-1];	/* Beware of jumps due to sign differences */
-			if (fabs (dlon) > 180.0) dlon += copysign (360.0, -dlon);	/* Never more than  180 to next point */
+			gmt_M_set_delta_lon (lon[i-1], lon[i], dlon);	/* Beware of jumps due to sign differences */
 			lon_i = lon[i-1] + dlon;	/* Use lon_i instead of lon[i] in the marching since this avoids any jumping */
 			theta = fabs (dlon) * cosd(lat[i]);
 			n_step = lrint (theta / step);
@@ -1465,7 +1463,7 @@ uint64_t gmt_fix_up_path (struct GMT_CTRL *GMT, double **a_lon, double **a_lat,
 		else if ((theta = d_acosd (gmt_dot3v (GMT, a, b))) == 180.0) {	/* trouble, no unique great circle */
 			if (gmt_M_is_spherical (GMT) || ((lat[i] + lat[i-1]) == 0.0)) {
 				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error: Two points in input list are antipodal - great circle resampling is not unique!\n");
-				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error: Fix input data or use project -A to generate athe desired great circle by providing an azimuth.\n");
+				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error: Fix input data or use project -A to generate the desired great circle by providing an azimuth.\n");
 			}
 			else {
 				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error: Two points in input list are antipodal - great circle resampling is not unique!\n");
diff --git a/src/gmtconvert.c b/src/gmtconvert.c
index 78457ff..08ec98e 100644
--- a/src/gmtconvert.c
+++ b/src/gmtconvert.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtconvert.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: gmtconvert.c 18363 2017-06-12 01:30:50Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -400,6 +400,10 @@ int GMT_gmtconvert (void *V_API, int mode, void *args) {
 		Return (API->error);
 	}
 
+	if (D[GMT_IN]->n_records == 0) {
+		GMT_Report (API, GMT_MSG_NORMAL, "No data records provided\n");
+		Return (GMT_NOERROR);
+	}
 	if (GMT->common.a.active && D[GMT_IN]->n_tables > 1) {
 		GMT_Report (API, GMT_MSG_NORMAL, "The -a option requires a single table only.\n");
 		Return (GMT_RUNTIME_ERROR);
diff --git a/src/gmtinfo.c b/src/gmtinfo.c
index 4cad813..c6081ce 100644
--- a/src/gmtinfo.c
+++ b/src/gmtinfo.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *    $Id: gmtinfo.c 18134 2017-05-05 08:34:43Z pwessel $
+ *    $Id: gmtinfo.c 18269 2017-05-29 21:36:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
diff --git a/src/gmtlogo.c b/src/gmtlogo.c
index 4e4151e..8d28c97 100644
--- a/src/gmtlogo.c
+++ b/src/gmtlogo.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtlogo.c 18127 2017-05-05 01:28:08Z pwessel $
+ *	$Id: gmtlogo.c 18254 2017-05-28 19:46:56Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -165,14 +165,14 @@ static float gmt_letters[GMT_N_LETTERS][2] = {	/* The G, M, T polygons */
 /* Control structure for gmtlogo */
 
 struct GMTLOGO_CTRL {
-	struct D {	/* -D[g|j|n|x]<refpoint>+w<width>[+j<justify>][+o<off[GMT_X]>[/<dy>]] */
+	struct D {	/* -D[g|j|n|x]<refpoint>+w<width>[+j<justify>][+o<dx>[/<dy>]] */
 		bool active;
 		struct GMT_REFPOINT *refpoint;
 		double off[2];
 		double width;
 		int justify;
 	} D;
-	struct F {	/* -F[+c<clearance>][+g<fill>][+i[<off>/][<pen>]][+p[<pen>]][+r[<radius>]][+s[<off[GMT_X]>/<dy>/][<shade>]][+d] */
+	struct F {	/* -F[+c<clearance>][+g<fill>][+i[<off>/][<pen>]][+p[<pen>]][+r[<radius>]][+s[<dx>/<dy>/][<shade>]][+d] */
 		bool active;
 		struct GMT_MAP_PANEL *panel;
 	} F;
diff --git a/src/gmtmath.c b/src/gmtmath.c
index d3508fb..1f0f4b7 100644
--- a/src/gmtmath.c
+++ b/src/gmtmath.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtmath.c 18178 2017-05-07 23:38:12Z pwessel $
+ *	$Id: gmtmath.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -5060,12 +5060,12 @@ int GMT_gmtmath (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Syntax error: Cannot have data files when -A is specified\n");
 			Return (GMT_RUNTIME_ERROR);
 		}
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -A files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -A files */
 		if ((A_in = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_NONE, GMT_READ_NORMAL, NULL, Ctrl->A.file, NULL)) == NULL) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Error reading file %s\n", Ctrl->A.file);
 			Return (API->error);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		rhs = A_in->table[0];	/* Only one table */
 		if (Ctrl->A.w_mode) {	/* Need at least 3 columns */
 			if (rhs->n_columns < 3) {
@@ -5238,7 +5238,7 @@ int GMT_gmtmath (void *V_API, int mode, void *args) {
 
 		op = decode_gmt_argument (GMT, opt->arg, &value, &dimension, localhashnode);
 
-		if (op != GMTMATH_ARG_IS_FILE && !gmt_access (GMT, opt->arg, R_OK)) GMT_Message (API, GMT_TIME_NONE, "Warning: The number or operator %s may be confused with an existing file %s!\n", opt->arg, opt->arg);
+		if (op != GMTMATH_ARG_IS_FILE && !gmt_access (GMT, opt->arg, R_OK)) GMT_Message (API, GMT_TIME_NONE, "Warning: The number or operator %s may be confused with an existing file %s!  The file will be ignored.\n", opt->arg, opt->arg);
 
 		if (op < GMTMATH_ARG_IS_OPERATOR) {	/* File name or factor */
 
diff --git a/src/gmtread.c b/src/gmtread.c
index cb46301..8054cc6 100644
--- a/src/gmtread.c
+++ b/src/gmtread.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtread.c 17798 2017-03-27 04:50:17Z pwessel $
+ *	$Id: gmtread.c 18236 2017-05-23 22:50:38Z jluis $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -31,7 +31,7 @@
 #define THIS_MODULE_PURPOSE	"Read GMT objects into external API"
 #define THIS_MODULE_KEYS	"-T-,<?{,>?}"
 #define THIS_MODULE_NEEDS	""
-#define THIS_MODULE_OPTIONS "->RVf"
+#define THIS_MODULE_OPTIONS "->RVbf"
 
 /* Control structure for read */
 
@@ -138,9 +138,14 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GMTREAD_CTRL *Ctrl, struct GMT
 		}
 	}
 	
-	n_errors += gmt_M_check_condition (GMT, !(Ctrl->IO.active[GMT_IN] && Ctrl->IO.active[GMT_OUT]), "Syntax error: Must specify both input and output filenames\n");
-	n_errors += gmt_M_check_condition (GMT, Ctrl->IO.active[GMT_IN] && (!Ctrl->IO.file[GMT_IN] || !Ctrl->IO.file[GMT_IN][0]), "Syntax error: Must specify input filename\n");
-	n_errors += gmt_M_check_condition (GMT, Ctrl->IO.active[GMT_OUT] && (!Ctrl->IO.file[GMT_OUT] || !Ctrl->IO.file[GMT_OUT][0]), "Syntax error: Must specify output filename\n");
+	n_errors += gmt_M_check_condition (GMT, GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] == 0,
+	                                 "Syntax error: Must specify number of columns in binary input data (-bi)\n");
+	n_errors += gmt_M_check_condition (GMT, !(Ctrl->IO.active[GMT_IN] && Ctrl->IO.active[GMT_OUT]),
+	                                 "Syntax error: Must specify both input and output filenames\n");
+	n_errors += gmt_M_check_condition (GMT, Ctrl->IO.active[GMT_IN] && (!Ctrl->IO.file[GMT_IN] || !Ctrl->IO.file[GMT_IN][0]),
+	                                 "Syntax error: Must specify input filename\n");
+	n_errors += gmt_M_check_condition (GMT, Ctrl->IO.active[GMT_OUT] && (!Ctrl->IO.file[GMT_OUT] || !Ctrl->IO.file[GMT_OUT][0]),
+	                                 "Syntax error: Must specify output filename\n");
 	n_errors += gmt_M_check_condition (GMT, n_files != 2, "Syntax error: Must specify only two filenames (input and output)\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->T.active, "Syntax error -T option: Must specify a valid datatype\n");
 	
diff --git a/src/gmtselect.c b/src/gmtselect.c
index e446a81..853d022 100644
--- a/src/gmtselect.c
+++ b/src/gmtselect.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtselect.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: gmtselect.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -669,7 +669,7 @@ int GMT_gmtselect (void *V_API, int mode, void *args) {
 	else	/* Cartesian data */
 		gmt_init_distaz (GMT, 'R', 0, GMT_MAP_DIST);	/* Compute r-squared instead of r to avoid hypot  */
 	
-	gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+	gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 
 	if (Ctrl->C.active) { 	/* Initialize point structure used in test for proximity to points [use Ctrl->C.dist ]*/
 		if ((Cin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_IO_ASCII, NULL, Ctrl->C.file, NULL)) == NULL) {
@@ -773,7 +773,7 @@ int GMT_gmtselect (void *V_API, int mode, void *args) {
 		}
 	}
 	
-	gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+	gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 
 	/* Specify input and output expected columns */
 	if ((error = gmt_set_cols (GMT, GMT_IN,  0)) != 0) Return (error);
diff --git a/src/gmtspatial.c b/src/gmtspatial.c
index e18ea77..43e8483 100644
--- a/src/gmtspatial.c
+++ b/src/gmtspatial.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
-*    $Id: gmtspatial.c 18144 2017-05-06 03:36:15Z pwessel $
+*    $Id: gmtspatial.c 18404 2017-06-20 18:10:00Z pwessel $
 *
 *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
 *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -198,7 +198,6 @@ GMT_LOCAL unsigned int area_size (struct GMT_CTRL *GMT, double x[], double y[],
 		GMT->common.R.oblique = false;
 		GMT->common.J.active = true;
 		GMT->current.setting.map_line_step = 1.0e7;	/* To avoid nlon/nlat being huge */
-		gmt_set_geographic (GMT, GMT_IN);
 		GMT->current.proj.pars[0] = out[GMT_X];
 		GMT->current.proj.pars[1] = out[GMT_Y];
 		if (gmt_M_err_pass (GMT, gmt_map_setup (GMT, wesn), "")) {
@@ -1286,7 +1285,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 			gmt_parse_common_options (GMT, "f", 'f', "g"); /* Set -fg if -Q uses unit */
 		}
 		geo = gmt_M_is_geographic (GMT, GMT_IN);
-		if (gmt_M_is_geographic (GMT, GMT_IN)) gmt_init_distaz (GMT, Ctrl->Q.unit, Ctrl->Q.dmode, GMT_MAP_DIST);	/* Default is m using great-circle distances */
+		if (geo) gmt_init_distaz (GMT, Ctrl->Q.unit, Ctrl->Q.dmode, GMT_MAP_DIST);	/* Default is m using great-circle distances */
 
 		if (Ctrl->Q.header) {	/* Add line length or polygon area stuff to segment header */
 			qmode = Ctrl->Q.mode;	/* Don't know if line or polygon but passing GMT_IS_POLY would close any open polygon, which we want with +p */
@@ -1417,7 +1416,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 		
 		if (Ctrl->S.mode == POL_CLIP) {	/* Need to set up a separate table with the clip polygon */
 			if (Ctrl->T.file) {
-				gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+				gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 				if ((C = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POLY, GMT_READ_NORMAL, NULL, Ctrl->T.file, NULL)) == NULL) {
 					Return (API->error);
 				}
@@ -1425,7 +1424,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 					GMT_Report (API, GMT_MSG_NORMAL, "Input data have %d column(s) but at least 2 are needed\n", (int)C->n_columns);
 					Return (GMT_DIM_TOO_SMALL);
 				}
-				gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+				gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 			}
 			else {	/* Design a table based on -Rw/e/s/n */
 				uint64_t dim[GMT_DIM_SIZE] = {1, 1, 5, 2};
@@ -1620,7 +1619,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 		struct DUP_INFO **Info = NULL, *I = NULL;
 		
 		if (Ctrl->D.file) {	/* Get trial features via a file */
-			gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -D files */
+			gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -D files */
 			if ((C = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_LINE|GMT_IS_POLY, GMT_READ_NORMAL, NULL, Ctrl->D.file, NULL)) == NULL) {
 				Return (API->error);
 			}
@@ -1628,7 +1627,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Input data have %d column(s) but at least 2 are needed\n", (int)C->n_columns);
 				Return (GMT_DIM_TOO_SMALL);
 			}
-			gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+			gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 			from = Ctrl->D.file;
 		}
 		else {
@@ -1766,7 +1765,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 		struct GMT_DATATABLE *T = NULL;
 		struct GMT_DATASEGMENT *S = NULL, *S2 = NULL;
 		
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -CN files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -CN files */
 		if ((C = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POLY, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -1774,7 +1773,7 @@ int GMT_gmtspatial (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input data have %d column(s) but at least 2 are needed\n", (int)C->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		if (Ctrl->N.mode == 1) {	/* Just report on which polygon contains each feature */
 			if (GMT_Init_IO (API, GMT_IS_TEXTSET, GMT_IS_NONE, GMT_OUT, GMT_ADD_DEFAULT, 0, options) != GMT_NOERROR) {	/* Registers default output destination, unless already set */
 				Return (API->error);
diff --git a/src/grd2rgb.c b/src/grd2rgb.c
index 33e2944..4bcecb6 100644
--- a/src/grd2rgb.c
+++ b/src/grd2rgb.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grd2rgb.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grd2rgb.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -345,8 +345,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRD2RGB_CTRL *Ctrl, struct GMT
 
 	/* Check that the options selected are mutually consistent */
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	if (!Ctrl->C.active) {
 		n_errors += gmt_M_check_condition (GMT, !Ctrl->In.file, "Syntax error: Must specify input raster file\n");
 		n_errors += gmt_M_check_condition (GMT, GMT->common.R.active[ISET] && (GMT->common.R.inc[GMT_X] == 0.0 || GMT->common.R.inc[GMT_Y] == 0.0), "Syntax error: increments must be positive\n");
diff --git a/src/grdblend.c b/src/grdblend.c
index 8492c9d..d9ca951 100644
--- a/src/grdblend.c
+++ b/src/grdblend.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *    $Id: grdblend.c 18110 2017-05-03 01:29:16Z pwessel $
+ *    $Id: grdblend.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -152,9 +152,10 @@ GMT_LOCAL bool out_of_phase (struct GMT_GRID_HEADER *g, struct GMT_GRID_HEADER *
 	double a;
 	for (side = 0; side < 4; side++) {
 		way = side / 2;
-		a = fabs (fmod (g->wesn[side] - h->wesn[side], h->inc[way]));
+		a = fmod (fabs (((g->wesn[side] + g->xy_off * g->inc[way]) - (h->wesn[side] + h->xy_off * h->inc[way])) / h->inc[way]), 1.0);
+		if (a < GMT_CONV8_LIMIT) continue;
+		a = 1.0 - a;
 		if (a < GMT_CONV8_LIMIT) continue;
-		if (fabs (a - h->inc[way]) < GMT_CONV8_LIMIT) continue;
 		return true;
 	}
 	return false;
@@ -190,7 +191,7 @@ GMT_LOCAL int init_blend_job (struct GMT_CTRL *GMT, char **files, unsigned int n
 	unsigned int one_or_zero = !h->registration, n = 0, nr, do_sample;
 	struct GRDBLEND_INFO *B = NULL;
 	char *sense[2] = {"normal", "inverse"}, *V_level = "qntcvld", buffer[GMT_BUFSIZ] = {""};
-	char Targs[GMT_LEN256] = {""}, Iargs[GMT_LEN256] = {""}, Rargs[GMT_LEN256] = {""}, cmd[GMT_LEN256] = {""};
+	char Iargs[GMT_LEN256] = {""}, Rargs[GMT_LEN256] = {""}, cmd[GMT_LEN256] = {""};
 	struct BLEND_LIST {
 		char *file;
 		char *region;
@@ -280,19 +281,14 @@ GMT_LOCAL int init_blend_job (struct GMT_CTRL *GMT, char **files, unsigned int n
 
 		/* If input grids have different spacing or registration we must resample */
 
-		Targs[0] = Iargs[0] = Rargs[0] = '\0';
+		Iargs[0] = Rargs[0] = '\0';
 		do_sample = 0;
 		if (not_supported) {
 			GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "File %s not supported via row-by-row read - must reformat first\n", B[n].file);
 			do_sample |= 2;
 		}
-		if (h->registration != B[n].G->header->registration) {
-			strcpy (Targs, "-T");
-			GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "File %s has different registration than the output grid - must resample\n", B[n].file);
-			do_sample |= 1;
-		}
-		if (!(doubleAlmostEqualZero (B[n].G->header->inc[GMT_X], h->inc[GMT_X])
-					&& doubleAlmostEqualZero (B[n].G->header->inc[GMT_Y], h->inc[GMT_Y]))) {
+		if (fabs((B[n].G->header->inc[GMT_X] - h->inc[GMT_X]) / h->inc[GMT_X]) > 0.002 ||
+			fabs((B[n].G->header->inc[GMT_Y] - h->inc[GMT_Y]) / h->inc[GMT_Y]) > 0.002) {
 			sprintf (Iargs, "-I%.12g/%.12g", h->inc[GMT_X], h->inc[GMT_Y]);
 			GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "File %s has different increments (%.12g/%.12g) than the output grid (%.12g/%.12g) - must resample\n",
 				B[n].file, B[n].G->header->inc[GMT_X], B[n].G->header->inc[GMT_Y], h->inc[GMT_X], h->inc[GMT_Y]);
@@ -301,13 +297,13 @@ GMT_LOCAL int init_blend_job (struct GMT_CTRL *GMT, char **files, unsigned int n
 		if (out_of_phase (B[n].G->header, h)) {	/* Set explicit -R for resampling that is multiple of desired increments AND inside both original grid and desired grid */
 			double wesn[4];	/* Make sure wesn is equal to or larger than B[n].G->header->wesn so all points are included */
 			unsigned int k;
-			k = (unsigned int)floor ((MAX (h->wesn[XLO], B[n].G->header->wesn[XLO]) - h->wesn[XLO]) / h->inc[GMT_X] - h->xy_off);
+			k = (unsigned int)rint ((MAX (h->wesn[XLO], B[n].G->header->wesn[XLO]) - h->wesn[XLO]) / h->inc[GMT_X] - h->xy_off);
 			wesn[XLO] = gmt_M_grd_col_to_x (GMT, k, h);
-			k = (unsigned int)ceil  ((MIN (h->wesn[XHI], B[n].G->header->wesn[XHI]) - h->wesn[XLO]) / h->inc[GMT_X] - h->xy_off);
+			k = (unsigned int)rint  ((MIN (h->wesn[XHI], B[n].G->header->wesn[XHI]) - h->wesn[XLO]) / h->inc[GMT_X] - h->xy_off);
 			wesn[XHI] = gmt_M_grd_col_to_x (GMT, k, h);
-			k = h->n_rows - 1 - (unsigned int)floor ((MAX (h->wesn[YLO], B[n].G->header->wesn[YLO]) - h->wesn[YLO]) / h->inc[GMT_Y] - h->xy_off);
+			k = h->n_rows - 1 - (unsigned int)rint ((MAX (h->wesn[YLO], B[n].G->header->wesn[YLO]) - h->wesn[YLO]) / h->inc[GMT_Y] - h->xy_off);
 			wesn[YLO] = gmt_M_grd_row_to_y (GMT, k, h);
-			k = h->n_rows - 1 - (unsigned int)ceil  ((MIN (h->wesn[YHI], B[n].G->header->wesn[YHI]) - h->wesn[YLO]) / h->inc[GMT_Y] - h->xy_off);
+			k = h->n_rows - 1 - (unsigned int)rint  ((MIN (h->wesn[YHI], B[n].G->header->wesn[YHI]) - h->wesn[YLO]) / h->inc[GMT_Y] - h->xy_off);
 			wesn[YHI] = gmt_M_grd_row_to_y (GMT, k, h);
 			sprintf (Rargs, "-R%.12g/%.12g/%.12g/%.12g", wesn[XLO], wesn[XHI], wesn[YLO], wesn[YHI]);
 			GMT_Report (GMT->parent, GMT_MSG_VERBOSE, "File %s coordinates are phase-shifted w.r.t. the output grid - must resample\n", B[n].file);
@@ -329,7 +325,7 @@ GMT_LOCAL int init_blend_job (struct GMT_CTRL *GMT, char **files, unsigned int n
 					sprintf (buffer, "%s/grdblend_resampled_%d_%d.nc", GMT->parent->tmp_dir, (int)getpid(), n);
 				else	/* Must dump it in current directory */
 					sprintf (buffer, "grdblend_resampled_%d_%d.nc", (int)getpid(), n);
-				sprintf (cmd, "%s %s %s %s -G%s -V%c", B[n].file, Targs, Iargs, Rargs, buffer, V_level[GMT->current.setting.verbose]);
+				sprintf (cmd, "%s %s %s %s -G%s -V%c", B[n].file, h->registration ? "-r" : "", Iargs, Rargs, buffer, V_level[GMT->current.setting.verbose]);
 				if (GMT->common.n.active) {	/* User changed BC/method via -n */
 					strcat (cmd, " -n");
 					strcat (cmd, GMT->common.n.string);
@@ -602,8 +598,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDBLEND_CTRL *Ctrl, struct GM
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error -R option: Must specify region\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive dx, dy\n");
 
diff --git a/src/grdfilter.c b/src/grdfilter.c
index 40a7de4..1ed21df 100644
--- a/src/grdfilter.c
+++ b/src/grdfilter.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdfilter.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdfilter.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -770,8 +770,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDFILTER_CTRL *Ctrl, struct G
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.active, "Syntax error -G option: Must specify output file\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->In.file, "Syntax error: Must specify input file\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->D.active, "Syntax error -D option: Choose from p or 0-5\n");
diff --git a/src/grdfilter_mt.c b/src/grdfilter_mt.c
index 615041c..360988a 100644
--- a/src/grdfilter_mt.c
+++ b/src/grdfilter_mt.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdfilter_mt.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdfilter_mt.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -581,8 +581,6 @@ int GMT_grdfilter_parse (struct GMT_CTRL *GMT, struct GRDFILTER_CTRL *Ctrl, stru
 		}
 	}
 	
-	//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.active, "Syntax error -G option: Must specify output file\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->In.file, "Syntax error: Must specify input file\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->D.active, "Syntax error -D option: Choose from p or 0-5\n");
diff --git a/src/grdhisteq.c b/src/grdhisteq.c
index f9432ea..20ffb29 100644
--- a/src/grdhisteq.c
+++ b/src/grdhisteq.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdhisteq.c 18174 2017-05-07 05:33:44Z pwessel $
+ *	$Id: grdhisteq.c 18212 2017-05-09 23:16:30Z jluis $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -299,9 +299,9 @@ GMT_LOCAL int do_hist_equalization_geo (struct GMT_CTRL *GMT, struct GMT_GRID *G
 	qsort (pair, nxy, sizeof (struct GMT_OBSERVATION), gmtlib_compare_observation);
 	/* Compute normalized cumulative weights */
 	wsum = 1.0 / wsum;	/* Do avoid division later */
-	pair[0].weight *= wsum;
+	pair[0].weight *= (float)wsum;
 	for (i = 1; i < nxy; i++) {
-		pair[i].weight *= wsum;
+		pair[i].weight *= (float)wsum;
 		pair[i].weight += pair[i-1].weight;
 	}
 	
diff --git a/src/grdimage.c b/src/grdimage.c
index f287bc2..e7775b6 100644
--- a/src/grdimage.c
+++ b/src/grdimage.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdimage.c 18199 2017-05-09 10:09:30Z remko $
+ *	$Id: grdimage.c 18257 2017-05-28 21:57:30Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -184,7 +184,7 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	GMT_Message (API, GMT_TIME_NONE, "\t-I Apply directional illumination. Append name of intensity grid file.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   For a constant intensity (i.e., change the ambient light), append a value.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   To derive intensities from <grd_z> instead, append +a<azim> [-45] and +n<method> [t1].\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t   (see grdgradient for details).\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t   Use -I+ to accept the default values (see grdgradient for details).\n");
 	GMT_Option (API, "K");
 	GMT_Message (API, GMT_TIME_NONE, "\t-M Force monochrome image.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t-N Do not clip image at the map boundary.\n");
@@ -345,7 +345,7 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDIMAGE_CTRL *Ctrl, struct GM
 					}
 					c[0] = '\0';	/* Chop off all modifiers so range can be determined */
 				}
-				else if (!opt->arg[0])	/* No argument, so derive intensities from input grid using default settings */
+				else if (!opt->arg[0] || strstr (opt->arg, "+"))	/* No argument or just +, so derive intensities from input grid using default settings */
 					Ctrl->I.derive = true;
 				else if (!gmt_access (GMT, opt->arg, R_OK))	/* Got a file */
 					Ctrl->I.file = strdup (opt->arg);
@@ -492,7 +492,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 
 	double  dx, dy, x_side, y_side, x0 = 0.0, y0 = 0.0, rgb[4] = {0.0, 0.0, 0.0, 0.0};
 	double	img_wesn[4], img_inc[2] = {1.0, 1.0};    /* Image increments & min/max for writing images or external interfaces */
-	double *NaN_rgb = NULL, red[4] = {1.0, 0.0, 0.0, 0.0}, wesn[4];
+	double *NaN_rgb = NULL, red[4] = {1.0, 0.0, 0.0, 0.0}, wesn[4] = {0.0, 0.0, 0.0, 0.0};
 
 	struct GMT_GRID *Grid_orig[3] = {NULL, NULL, NULL}, *Grid_proj[3] = {NULL, NULL, NULL};
 	struct GMT_GRID *Intens_orig = NULL, *Intens_proj = NULL;
@@ -527,33 +527,13 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 
 	/*---------------------------- This is the grdimage main code ----------------------------*/
 
-	if (Ctrl->I.derive) {	/* Auto-create intensity grid from data grid */
-		char int_grd[GMT_LEN16] = {""};
-		GMT_Report (API, GMT_MSG_VERBOSE, "Derive intensity grid from data grid\n");
-		/* Create a virtual file to hold the intensity grid */
-		if (GMT_Open_VirtualFile (API, GMT_IS_GRID, GMT_IS_SURFACE, GMT_OUT, NULL, int_grd))
-			Return (API->error);
-		/* Prepare the grdgradient arguments using selected -A -N */
-		sprintf (cmd, "%s -G%s -A%s -N%s --GMT_HISTORY=false", Ctrl->In.file[0], int_grd, Ctrl->I.azimuth, Ctrl->I.method);
-		if (GMT->common.R.active[RSET] && !GMT->common.R.oblique) { strcat (cmd, " -R"); strcat (cmd, GMT->common.R.string); }
-		/* Call the grdgradient module */
-		GMT_Report (API, GMT_MSG_VERBOSE, "Calling grdgradient with args %s\n", cmd);
-		if (GMT->common.R.oblique) GMT->common.R.active[RSET] = false;	/* Must turn -R off temporarily */
-		if (GMT_Call_Module (API, "grdgradient", GMT_MODULE_CMD, cmd))
-			Return (API->error);
-		/* Obtain the data from the virtual file */
-		if ((Intens_orig = GMT_Read_VirtualFile (API, int_grd)) == NULL)
-			Return (API->error);
-		if (GMT->common.R.oblique) GMT->common.R.active[RSET] = true;	/* Reset -R */
-	}
-	
+	use_intensity_grid = (Ctrl->I.active && !Ctrl->I.constant);	/* We want to use an intensity grid */
 	n_grids = (Ctrl->In.do_rgb) ? 3 : 1;	/* Either reading 3 grids (r, g, b) or a z-data grid */
-	use_intensity_grid = (Ctrl->I.active && !Ctrl->I.constant);	/* We want to use the intensity grid */
 	if (Ctrl->A.file) {Ctrl->Out.file = Ctrl->A.file; Ctrl->A.file = NULL;}	/* Only use Out.file for writing */
 
 	/* Read the illumination grid header right away so we can use its region to set that of an image (if requested) */
-	if (use_intensity_grid && !Ctrl->I.derive) {	/* Illumination grid must be read */
-		GMT_Report (API, GMT_MSG_VERBOSE, "Allocates memory and read intensity file\n");
+	if (use_intensity_grid && !Ctrl->I.derive) {	/* Illumination grid present and can be read */
+		GMT_Report (API, GMT_MSG_VERBOSE, "Read intensity grid header from file %s\n", Ctrl->I.file);
 		if ((Intens_orig = GMT_Read_Data (API, GMT_IS_GRID, GMT_IS_FILE, GMT_IS_SURFACE, GMT_CONTAINER_ONLY, NULL, Ctrl->I.file, NULL)) == NULL) {	/* Get header only */
 			Return (API->error);
 		}
@@ -578,6 +558,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 			gmt_M_memcpy (GMT->common.R.wesn, Intens_orig->header->wesn, 4, double);
 		
 		/* Read in the the entire image that is to be mapped */
+		GMT_Report (API, GMT_MSG_VERBOSE, "Allocate memory and read image file %s\n", Ctrl->In.file[0]);
 		if ((I = GMT_Read_Data (API, GMT_IS_IMAGE, GMT_IS_FILE, GMT_IS_SURFACE, GMT_CONTAINER_AND_DATA, NULL, Ctrl->In.file[0], NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -606,10 +587,10 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 		header_work = I->header;	/* OK, that's what what we'll use to send to gmt_grd_setregion */
 	}
 
-	GMT_Report (API, GMT_MSG_VERBOSE, "Allocates memory and read data file\n");
 
 	if (!Ctrl->D.active) {	/* Read the headers of 1 or 3 grids */
 		for (k = 0; k < n_grids; k++) {
+			GMT_Report (API, GMT_MSG_VERBOSE, "Allocates memory and read data file %s\n", Ctrl->In.file[k]);
 			if ((Grid_orig[k] = GMT_Read_Data (API, GMT_IS_GRID, GMT_IS_FILE, GMT_IS_SURFACE, GMT_CONTAINER_ONLY, NULL, Ctrl->In.file[k], NULL)) == NULL) {	/* Get header only */
 				Return (API->error);
 			}
@@ -649,10 +630,10 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 
 	if (!gmt_grd_setregion (GMT, header_work, wesn, need_to_project * GMT->common.n.interpolant))
 		nothing_inside = true;
-	else if (use_intensity_grid && !gmt_grd_setregion (GMT, Intens_orig->header, wesn, need_to_project * GMT->common.n.interpolant))
+	else if (use_intensity_grid && !Ctrl->I.derive && !gmt_grd_setregion (GMT, Intens_orig->header, wesn, need_to_project * GMT->common.n.interpolant))
 		nothing_inside = true;
 
-	if (nothing_inside) {
+	if (nothing_inside) {	/* Create a blank plot (or image) */
 		GMT_Report (API, GMT_MSG_VERBOSE, "No grid or image inside plot domain\n");
 		/* No grid to plot; just do an empty map and bail */
 		/* MISSING: Action to take if -A is in effect.  Need to create an empty image and return/save it */
@@ -669,7 +650,26 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 		Return (GMT_NOERROR);
 	}
 
-	/* Here the grid/image is inside the plot domain */
+	/* Here the grid/image is inside the plot domain.  The same must be true of any
+	 * auto-derived intensities we may create below */
+
+	if (Ctrl->I.derive) {	/* Auto-create intensity grid from data grid using the now determined data region */
+		char int_grd[GMT_LEN16] = {""};
+		GMT_Report (API, GMT_MSG_VERBOSE, "Derive intensity grid from data grid\n");
+		/* Create a virtual file to hold the intensity grid */
+		if (GMT_Open_VirtualFile (API, GMT_IS_GRID, GMT_IS_SURFACE, GMT_OUT, NULL, int_grd))
+			Return (API->error);
+		/* Prepare the grdgradient arguments using selected -A -N and the data region in effect */
+		sprintf (cmd, "%s -G%s -A%s -N%s -R%.16g/%.16g/%.16g/%.16g --GMT_HISTORY=false",
+			Ctrl->In.file[0], int_grd, Ctrl->I.azimuth, Ctrl->I.method, wesn[XLO], wesn[XHI], wesn[YLO], wesn[YHI]);
+		/* Call the grdgradient module */
+		GMT_Report (API, GMT_MSG_VERBOSE, "Calling grdgradient with args %s\n", cmd);
+		if (GMT_Call_Module (API, "grdgradient", GMT_MODULE_CMD, cmd))
+			Return (API->error);
+		/* Obtain the data from the virtual file */
+		if ((Intens_orig = GMT_Read_VirtualFile (API, int_grd)) == NULL)
+			Return (API->error);
+	}
 	
 	if (n_grids) {	/* Get grid dimensions */
 		n_columns = gmt_M_get_n (GMT, wesn[XLO], wesn[XHI], Grid_orig[0]->header->inc[GMT_X], Grid_orig[0]->header->registration);
@@ -907,7 +907,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 			gmt_strncpy (mem_layout, "TRPa", 4);					/* Don't let it be empty (may it screw?) */
 		GMT_Set_Default (API, "API_IMAGE_LAYOUT", "TRPa");			/* This is the grdimage's mem layout */
 
-		if ((Out = GMT_Create_Data(API, GMT_IS_IMAGE, GMT_IS_SURFACE, GMT_CONTAINER_AND_DATA, dim, img_wesn, img_inc, 1, 0, NULL)) == NULL) {
+		if ((Out = GMT_Create_Data (API, GMT_IS_IMAGE, GMT_IS_SURFACE, GMT_CONTAINER_AND_DATA, dim, img_wesn, img_inc, 1, 0, NULL)) == NULL) {
 			if (Ctrl->Q.active) gmt_M_free (GMT, rgb_used);
 			Return(API->error);	/* Well, no luck with that allocation */
 		}
@@ -944,7 +944,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 		}
 	}
 
-	GMT_Report (API, GMT_MSG_VERBOSE, "Evaluate pixel colors\n");
+	GMT_Report (API, GMT_MSG_VERBOSE, "Evaluate image pixel colors\n");
 
 	/* Worry about linear projections with negative scales that may reverse the orientation of the image */
 	normal_x = !(GMT->current.proj.projection == GMT_LINEAR && !GMT->current.proj.xyz_pos[0] && !resampled);
@@ -988,13 +988,13 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 				else	/* Got a single grid and need to look up color via the CPT */
 					index = gmt_get_rgb_from_z (GMT, P, Grid_proj[0]->data[node], rgb);
 
-				if (Ctrl->I.active && index != GMT_NAN - 3) {	/* Need to deal with illumination */
+				if (Ctrl->I.active && index != (GMT_NAN - 3)) {	/* Need to deal with illumination */
 					if (use_intensity_grid) {	/* Intensity value comes from the grid */
 						if (!n_grids || Intens_proj->header->reset_pad)	/* Must recompute "node" with the gmt_M_ijp macro for the image */
 							node = gmt_M_ijp (Intens_proj->header, actual_row, 0) + (normal_x ? col : n_columns - col - 1);
 						gmt_illuminate (GMT, Intens_proj->data[node], rgb);
-					}	/* A constant intensity was given */
-					else
+					}
+					else	/* A constant intensity was given */
 						gmt_illuminate (GMT, Ctrl->I.value, rgb);
 				}
 
@@ -1004,7 +1004,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 					bitimage_8[byte++] = gmt_M_u255 (gmt_M_yiq (rgb));
 				else {	/* Here we do r/g/b 24-bit color */
 					for (k = 0; k < 3; k++) bitimage_24[byte++] = i_rgb[k] = gmt_M_u255 (rgb[k]);
-					if (Ctrl->Q.active && !Ctrl->A.return_image && index != GMT_NAN - 3) /* Keep track of all r/g/b combinations used except for NaN */
+					if (Ctrl->Q.active && !Ctrl->A.return_image && index != (GMT_NAN - 3)) /* Keep track of all r/g/b combinations used except for NaN */
 						rgb_used[(i_rgb[0]*256 + i_rgb[1])*256+i_rgb[2]] = true;
 				}
 			}
@@ -1046,12 +1046,12 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Failed to free Intens_proj\n");
 		}
 	}
-	
+
 	/* Get actual size of each pixel */
 	dx = gmt_M_get_inc (GMT, header_work->wesn[XLO], header_work->wesn[XHI], header_work->n_columns, header_work->registration);
 	dy = gmt_M_get_inc (GMT, header_work->wesn[YLO], header_work->wesn[YHI], header_work->n_rows, header_work->registration);
 
-	/* Set lower left position of image on map */
+	/* Set lower left position of image on map; this depends on grid registration */
 
 	x0 = header_work->wesn[XLO];	y0 = header_work->wesn[YLO];
 	if (grid_registration == GMT_GRID_NODE_REG) {	/* Grid registration, move 1/2 pixel down/left */
@@ -1063,7 +1063,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 	x_side = dx * header_work->n_columns;
 	y_side = dy * header_work->n_rows;
 
-	if (P && gray_only) /* Determine if the grayimage in fact is just black & white */
+	if (P && gray_only) /* Determine if the gray image in fact is just black & white */
 		for (kk = 0, P->is_bw = true; P->is_bw && kk < header_work->nm; kk++) 
 			if (!(bitimage_8[kk] == 0 || bitimage_8[kk] == 255)) P->is_bw = false;
 
@@ -1150,7 +1150,7 @@ int GMT_grdimage (void *V_API, int mode, void *args) {
 		gmt_plane_perspective (GMT, -1, 0.0);
 		gmt_plotend (GMT);
 
-		/* Here we are done producing PostScript or raster image and can free things we used */
+		/* Here we are done producing the PostScript or raster image and can free things we used */
 	
 		/* Free bitimage arrays. gmt_M_free will not complain if they have not been used (NULL) */
 		gmt_M_free (GMT, bitimage_8);
diff --git a/src/grdlandmask.c b/src/grdlandmask.c
index 338168d..c71d596 100644
--- a/src/grdlandmask.c
+++ b/src/grdlandmask.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdlandmask.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdlandmask.c 18426 2017-06-21 23:39:43Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -204,8 +204,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDLANDMASK_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.file, "Syntax error -G: Must specify an output file\n");
@@ -218,11 +216,11 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDLANDMASK_CTRL *Ctrl, struct
 #define Return(code) {Free_Ctrl (GMT, Ctrl); gmt_end_module (GMT, GMT_cpy); bailout (code);}
 
 int GMT_grdlandmask (void *V_API, int mode, void *args) {
-	bool temp_shift = false, wrap, used_polygons;
+	bool temp_shift = false, wrap, used_polygons, double_dip;
 	unsigned int base = 3, k, bin, np, side, np_new;
 	int row, row_min, row_max, ii, col, col_min, col_max, i, direction, err, ind, nx1, ny1, error = 0;
 	
-	uint64_t ij;
+	uint64_t ij, count[GRDLANDMASK_N_CLASSES];
 
 	char line[GMT_LEN256] = {""};
 	char *shore_resolution[5] = {"full", "high", "intermediate", "low", "crude"};
@@ -274,6 +272,7 @@ int GMT_grdlandmask (void *V_API, int mode, void *args) {
 
 	if (Ctrl->D.force) Ctrl->D.set = gmt_shore_adjust_res (GMT, Ctrl->D.set);
 	base = gmt_set_resolution (GMT, &Ctrl->D.set, 'D');
+	gmt_M_memset (count, GRDLANDMASK_N_CLASSES, uint64_t);		/* Counts of each level */
 	
 	if (Ctrl->N.mode) {
 		Ctrl->N.mask[3] = Ctrl->N.mask[1];
@@ -312,6 +311,7 @@ int GMT_grdlandmask (void *V_API, int mode, void *args) {
 	if (gmt_M_err_pass (GMT, gmt_map_setup (GMT, Grid->header->wesn), "")) Return (GMT_PROJECTION_ERROR);
 	GMT->current.map.parallel_straight = GMT->current.map.meridian_straight = 2;	/* No resampling along bin boundaries */
 	wrap = GMT->current.map.is_world = gmt_M_grd_is_global (GMT, Grid->header);
+	double_dip = (wrap && Grid->header->registration == GMT_GRID_NODE_REG);	/* Must duplicate the west nodes to east */
 	/* Using -Jx1d means output is Cartesian but we want to force geographic */
 	gmt_set_geographic (GMT, GMT_OUT);
 	/* All data nodes are thus initialized to 0 */
@@ -466,12 +466,15 @@ int GMT_grdlandmask (void *V_API, int mode, void *args) {
 #ifdef _OPENMP
 #pragma omp parallel for private(row,col,k,ij) shared(GMT,Grid,Ctrl)
 #endif
+	
 	gmt_M_grd_loop (GMT, Grid, row, col, ij) {	/* Turn levels into mask values */
 		k = urint (Grid->data[ij]);
 		Grid->data[ij] = Ctrl->N.mask[k];
+		count[k]++;
+		if (col == 0 && double_dip) count[k]++;	/* CoOunt these guys twice */
 	}
 
-	if (wrap && Grid->header->registration == GMT_GRID_NODE_REG) { /* Copy over values to the repeating right column */
+	if (double_dip) { /* Copy over values to the repeating right column */
 		unsigned int row_l;
 		for (row_l = 0, ij = gmt_M_ijp (Grid->header, row_l, 0); row_l < Grid->header->n_rows; row_l++, ij += Grid->header->mx) Grid->data[ij+nx1] = Grid->data[ij];
 	}
@@ -488,6 +491,10 @@ int GMT_grdlandmask (void *V_API, int mode, void *args) {
 		Return (API->error);
 	}
 
+	if (gmt_M_is_verbose (GMT, GMT_MSG_VERBOSE)) {
+		for (k = 0; k < GRDLANDMASK_N_CLASSES; k++)
+			if (count[k]) GMT_Report (API, GMT_MSG_VERBOSE, "Level %d contained %" PRIu64 " nodes\n", k, count[k]);
+	}
 	GMT_Report (API, GMT_MSG_VERBOSE, "Done!\n");
 
 	Return (GMT_NOERROR);
diff --git a/src/grdmask.c b/src/grdmask.c
index b313b86..17c5133 100644
--- a/src/grdmask.c
+++ b/src/grdmask.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdmask.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: grdmask.c 18432 2017-06-22 00:20:07Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -33,7 +33,7 @@
 #define THIS_MODULE_PURPOSE	"Create mask grid from polygons or point coverage"
 #define THIS_MODULE_KEYS	"<D{,GG}"
 #define THIS_MODULE_NEEDS	"R"
-#define THIS_MODULE_OPTIONS "-:RVabdefghirs" GMT_ADD_x_OPT GMT_OPT("FHMm")
+#define THIS_MODULE_OPTIONS "-:RVabdefghinrs" GMT_ADD_x_OPT GMT_OPT("FHMm")
 
 #define GRDMASK_N_CLASSES	3	/* outside, on edge, and inside */
 
@@ -82,9 +82,9 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	if (level == GMT_MODULE_PURPOSE) return (GMT_NOERROR);
 	GMT_Message (API, GMT_TIME_NONE, "usage: grdmask [<table>] -G<outgrid> %s\n", GMT_I_OPT);
 	GMT_Message (API, GMT_TIME_NONE, "\t%s [-A[m|p|x|y]] [-N[z|Z|p|P][<values>]]\n", GMT_Rgeo_OPT);
-	GMT_Message (API, GMT_TIME_NONE, "\t[-S%s] [%s] [%s]\n\t[%s] [%s] [%s] [%s] [%s]\n\t[%s] [%s]\n\t[%s] [%s]%s[%s]\n\n",
+	GMT_Message (API, GMT_TIME_NONE, "\t[-S%s] [%s] [%s]\n\t[%s] [%s] [%s] [%s] [%s]\n\t[%s] [%s] [%s]\n\t[%s] [%s]%s[%s]\n\n",
 		GMT_RADIUS_OPT, GMT_V_OPT, GMT_a_OPT, GMT_bi_OPT, GMT_di_OPT, GMT_e_OPT, GMT_f_OPT, GMT_g_OPT,
-		GMT_h_OPT, GMT_i_OPT, GMT_r_OPT, GMT_s_OPT, GMT_x_OPT, GMT_colon_OPT);
+		GMT_h_OPT, GMT_i_OPT, GMT_n_OPT, GMT_r_OPT, GMT_s_OPT, GMT_x_OPT, GMT_colon_OPT);
 
 	if (level == GMT_SYNOPSIS) return (GMT_MODULE_SYNOPSIS);
 
@@ -108,9 +108,19 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	gmt_dist_syntax (API->GMT, 'S', "Set search radius to identify inside points.");
 	GMT_Message (API, GMT_TIME_NONE, "\t   Mask nodes are set to <in> or <out> depending on whether they are\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   inside the circle of specified radius [0] from the nearest data point.\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t   Give radius as 'z' if individual radii are provided via the 3rd data column.\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t   Give radius as 'z' if individual radii are provided via the 3rd data column\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t   and append a fixed unit unless Cartesian.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   [Default is to assume <table> contains polygons and use inside/outside searching].\n");
-	GMT_Option (API, "V,a,bi2,di,e,f,g,h,i,r,s,x,:,.");
+	GMT_Option (API, "V,a,bi2,di,e,f,g,h,i");
+	if (gmt_M_showusage (API)) {
+		GMT_Message (API, GMT_TIME_NONE, "\t-n+b<BC> Set boundary conditions.  <BC> can be either:\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t   g for geographic, p for periodic, and n for natural boundary conditions.\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t   For p and n you may optionally append x or y [default is both]:\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t     x applies the boundary condition for x only\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t     y applies the boundary condition for y only\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t   [Default: Natural conditions, unless grid is geographic].\n");
+	}
+	GMT_Option (API, "r,s,x,:,.");
 	
 	return (GMT_MODULE_USAGE);
 }
@@ -208,8 +218,9 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDMASK_CTRL *Ctrl, struct GMT
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
+	if (Ctrl->S.mode && !gmt_M_is_geographic (GMT, GMT_IN))	/* Gave a geographic search radius but not -fg so do that automatically */
+		gmt_parse_common_options (GMT, "f", 'f', "g");
+		
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.file, "Syntax error -G: Must specify output file\n");
@@ -227,9 +238,10 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDMASK_CTRL *Ctrl, struct GMT
 
 int GMT_grdmask (void *V_API, int mode, void *args) {
 	bool periodic = false, periodic_grid = false, do_test = true;
-	unsigned int side = 0, known_side, *d_col = NULL, d_row = 0, col_0, row_0;
-	unsigned int tbl, gmode, n_pol = 0, max_d_col = 0, n_cols = 2;
-	int row, col, n_columns, n_rows, error = 0;
+	bool wrap_180, replicate_x, replicate_y;
+	unsigned int side = 0, known_side, *d_col = NULL, d_row = 0;
+	unsigned int tbl, gmode, n_pol = 0, max_d_col = 0, n_cols = 2, rowu, colu, x_wrap, y_wrap;
+	int row, col, row_end, col_end, ii, jj, n_columns, n_rows, error = 0, col_0, row_0;
 	
 	uint64_t ij, k, seg;
 	
@@ -301,6 +313,11 @@ int GMT_grdmask (void *V_API, int mode, void *args) {
 	}
 
 	n_columns = Grid->header->n_columns;	n_rows = Grid->header->n_rows;	/* Signed versions */
+	replicate_x = (Grid->header->nxp && Grid->header->registration == GMT_GRID_NODE_REG);	/* Gridline registration has duplicate column */
+	replicate_y = (Grid->header->nyp && Grid->header->registration == GMT_GRID_NODE_REG);	/* Gridline registration has duplicate row */
+	x_wrap = Grid->header->n_columns - 1;				/* Add to node index to go to right column */
+	y_wrap = (Grid->header->n_rows - 1) * Grid->header->n_columns;	/* Add to node index to go to bottom row */
+
 	if (Ctrl->S.active) {	/* Need distance calculations in correct units, and the d_row/d_col machinery */
 		gmt_init_distaz (GMT, Ctrl->S.unit, Ctrl->S.mode, GMT_MAP_DIST);
 		grd_x0 = gmt_grd_coord (GMT, Grid->header, GMT_X);
@@ -360,7 +377,7 @@ int GMT_grdmask (void *V_API, int mode, void *args) {
 
 	for (tbl = n_pol = 0; tbl < D->n_tables; tbl++) {
 		for (seg = 0; seg < D->table[tbl]->n_segments; seg++, n_pol++) {	/* For each segment in the table */
-			S = D->table[tbl]->segment[seg];		/* Current segment */
+			S = D->table[tbl]->segment[seg];		/* Current data segment */
 			if (Ctrl->S.active) {	/* Assign 'inside' to nodes within given distance of data constraints */
 				for (k = 0; k < S->n_rows; k++) {
 					if (gmt_M_y_is_outside (GMT, S->data[GMT_Y][k], Grid->header->wesn[YLO], Grid->header->wesn[YHI])) continue;	/* Outside y-range */
@@ -399,13 +416,15 @@ int GMT_grdmask (void *V_API, int mode, void *args) {
 
 					/* OK, not a pole and this point is within bounds, but may be exactly on the border */
 
-					col_0 = (unsigned int)gmt_M_grd_x_to_col (GMT, xtmp, Grid->header);
-					if (col_0 == Grid->header->n_columns) col_0--;	/* Was exactly on the xmax edge */
-					row_0 = (unsigned int)gmt_M_grd_y_to_row (GMT, S->data[GMT_Y][k], Grid->header);
-					if (row_0 == Grid->header->n_rows) row_0--;	/* Was exactly on the ymin edge */
+					row_0 = gmt_M_grd_y_to_row (GMT, S->data[GMT_Y][k], Grid->header);
+					if (row_0 == (int)Grid->header->n_rows) row_0--;	/* Was exactly on the ymin edge */
+					if (gmt_y_out_of_bounds (GMT, &row_0, Grid->header, &wrap_180)) continue;	/* Outside y-range.  This call must happen BEFORE gmt_x_out_of_bounds as it sets wrap_180 */
+					col_0 = gmt_M_grd_x_to_col (GMT, xtmp, Grid->header);
+					if (col_0 == (int)Grid->header->n_columns) col_0--;	/* Was exactly on the xmax edge */
+					if (gmt_x_out_of_bounds (GMT, &col_0, Grid->header, wrap_180)) continue;	/* Outside x-range,  This call must happen AFTER gmt_y_out_of_bounds which sets wrap_180 */ 
 					ij = gmt_M_ijp (Grid->header, row_0, col_0);
 					Grid->data[ij] = mask_val[GMT_INSIDE];	/* This is the nearest node */
-					if (Grid->header->registration == GMT_GRID_NODE_REG && (col_0 == 0 || col_0 == (Grid->header->n_columns-1)) && periodic_grid) {	/* Must duplicate the entry at periodic point */
+					if (Grid->header->registration == GMT_GRID_NODE_REG && (col_0 == 0 || col_0 == (int)(Grid->header->n_columns-1)) && periodic_grid) {	/* Must duplicate the entry at periodic point */
 						col = (col_0 == 0) ? Grid->header->n_columns-1 : 0;
 						ij = gmt_M_ijp (Grid->header, row_0, col);
 						Grid->data[ij] = mask_val[GMT_INSIDE];	/* This is also the nearest node */
@@ -418,22 +437,45 @@ int GMT_grdmask (void *V_API, int mode, void *args) {
 						last_radius = radius;
 					}
 					
+					row_end = row_0 + d_row;
 #ifdef _OPENMP
-#pragma omp parallel for private(row,col,ij,distance) shared(Grid,row_0,d_row,n_rows,col_0,d_col,n_columns,xtmp,S,grd_x0,grd_y0,radius,mask_val)
+#pragma omp parallel for private(row,col,rowu,colu,col_end,jj,ii,ij,wrap_180,distance) shared(Grid,row_0,d_row,col_0,d_col,row_end,xtmp,S,grd_x0,grd_y0,replicate_x,replicate_y,x_wrap,y_wrap,radius,mask_val)
 #endif
-					for (row = row_0 - d_row; row <= (int)(row_0 + d_row); row++) {
-						if (row < 0 || row >= n_rows) continue;
-						for (col = col_0 - d_col[row]; col <= (int)(col_0 + d_col[row]); col++) {
-							if (col < 0 || col >= n_columns) continue;
-							ij = gmt_M_ijp (Grid->header, row, col);
-							distance = gmt_distance (GMT, xtmp, S->data[GMT_Y][k], grd_x0[col], grd_y0[row]);
+					for (row = row_0 - d_row; row <= row_end; row++) {
+						jj = row;
+						if (gmt_y_out_of_bounds (GMT, &jj, Grid->header, &wrap_180)) continue;	/* Outside y-range.  This call must happen BEFORE gmt_x_out_of_bounds as it sets wrap_180 */
+						rowu = jj;
+						col_end = col_0 + d_col[jj];
+						for (col = col_0 - d_col[row]; col <= col_end; col++) {
+							ii = col;
+							if (gmt_x_out_of_bounds (GMT, &ii, Grid->header, wrap_180)) continue;	/* Outside x-range,  This call must happen AFTER gmt_y_out_of_bounds which sets wrap_180 */ 
+							colu = ii;
+							ij = gmt_M_ijp (Grid->header, rowu, colu);
+							distance = gmt_distance (GMT, xtmp, S->data[GMT_Y][k], grd_x0[colu], grd_y0[rowu]);
 							if (distance > radius) continue;	/* Clearly outside */
 							Grid->data[ij] = (doubleAlmostEqualZero (distance, radius)) ? mask_val[GMT_ONEDGE] : mask_val[GMT_INSIDE];	/* The onedge or inside value */
+							/* With periodic, gridline-registered grids there are duplicate rows and/or columns
+							   so we may have to assign the point to more than one node.  The next section deals
+							   with this situation.
+							*/
+
+							if (replicate_x) {	/* Must check if we have to replicate a column */
+								if (colu == 0) 	/* Must replicate left to right column */
+									Grid->data[ij+x_wrap] = Grid->data[ij];
+								else if (colu == Grid->header->nxp)	/* Must replicate right to left column */
+									Grid->data[ij-x_wrap] = Grid->data[ij];
+							}
+							if (replicate_y) {	/* Must check if we have to replicate a row */
+								if (rowu == 0)	/* Must replicate top to bottom row */
+									Grid->data[ij+y_wrap] = Grid->data[ij];
+								else if (rowu == Grid->header->nyp)	/* Must replicate bottom to top row */
+									Grid->data[ij-y_wrap] = Grid->data[ij];
+							}
 						}
 					}
 				}
 			}
-			else if (S->n_rows > 2) {	/* Assign 'inside' to nodes if they are inside any of the given polygons */
+			else if (S->n_rows > 2) {	/* Assign 'inside' to nodes if they are inside any of the given polygons (Need at least 3 vertices) */
 				if (gmt_M_polygon_is_hole (S)) continue;	/* Holes are handled within gmt_inonout */
 				if (Ctrl->N.mode == 1 || Ctrl->N.mode == 2) {	/* Look for z-values in the data headers */
 					if (S->ogr)	/* OGR data */
@@ -448,7 +490,7 @@ int GMT_grdmask (void *V_API, int mode, void *args) {
 				else if (Ctrl->N.mode)	/* 3 or 4; Increment running polygon ID */
 					z_value += 1.0;
 
-				for (row = 0; row < n_rows; row++) {
+				for (row = 0; row < n_rows; row++) {	/* Loop over grid rows */
 
 					yy = gmt_M_grd_row_to_y (GMT, row, Grid->header);
 					
@@ -477,7 +519,7 @@ int GMT_grdmask (void *V_API, int mode, void *args) {
 #ifdef _OPENMP
 #pragma omp parallel for private(col,xx,side,ij) shared(Grid,n_columns,do_test,known_side,yy,S,row,Ctrl,z_value,mask_val)
 #endif
-					for (col = 0; col < n_columns; col++) {
+					for (col = 0; col < n_columns; col++) {	/* Loop over grid columns */
 						xx = gmt_M_grd_col_to_x (GMT, col, Grid->header);
 						if (do_test) {	/* Must consider xx to determine if we are inside */
 							if ((side = gmt_inonout (GMT, xx, yy, S)) == GMT_OUTSIDE)
diff --git a/src/grdmath.c b/src/grdmath.c
index 3496636..15fbfaf 100644
--- a/src/grdmath.c
+++ b/src/grdmath.c
@@ -1,5 +1,5 @@
  /*--------------------------------------------------------------------
- *	$Id: grdmath.c 18176 2017-05-07 21:13:59Z pwessel $
+ *	$Id: grdmath.c 18391 2017-06-17 21:24:36Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -271,8 +271,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDMATH_CTRL *Ctrl, struct GMT
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	if (missing_equal) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Syntax error: Usage is <operations> = [outfile]\n");
 		n_errors++;
@@ -2748,7 +2746,7 @@ GMT_LOCAL void grd_MEDIANW (struct GMT_CTRL *GMT, struct GRDMATH_INFO *info, str
 		return;
 	}
 
-	wmed = gmt_grd_median (GMT, stack[prev]->G, stack[last]->G, true);
+	wmed = (float)gmt_grd_median (GMT, stack[prev]->G, stack[last]->G, true);
 	for (node = 0; node < info->size; node++) stack[prev]->G->data[node] = wmed;
 }
 
@@ -3204,12 +3202,12 @@ GMT_LOCAL void grd_PQUANT (struct GMT_CTRL *GMT, struct GRDMATH_INFO *info, stru
 		gmt_free_grid (GMT, &W, true);
 	}
 	else {
-		gmt_M_memcpy (pad, stack[last]->G->header->pad, 4U, unsigned int);	/* Save original pad */
-		gmt_grd_pad_off (GMT, stack[last]->G);				/* Undo pad if one existed so we can sort */
+		gmt_M_memcpy (pad, stack[prev]->G->header->pad, 4U, unsigned int);	/* Save original pad */
+		gmt_grd_pad_off (GMT, stack[prev]->G);				/* Undo pad if one existed so we can sort */
 		gmt_sort_array (GMT, stack[prev]->G->data, info->nm, GMT_FLOAT);
 		p = (float) gmt_quantile_f (GMT, stack[prev]->G->data, stack[last]->factor, info->nm);
-		gmt_M_memset (stack[last]->G->data, info->size, float);	/* Wipes everything */
-		gmt_grd_pad_on (GMT, stack[last]->G, pad);		/* Reinstate the original pad */
+		gmt_M_memset (stack[prev]->G->data, info->size, float);	/* Wipes everything */
+		gmt_grd_pad_on (GMT, stack[prev]->G, pad);		/* Reinstate the original pad */
 	}
 
 	for (node = 0; node < info->size; node++) stack[prev]->G->data[node] = p;
@@ -4693,7 +4691,7 @@ int GMT_grdmath (void *V_API, int mode, void *args) {
 				/* Bypass the current opt in the linked list */
 				opt->next->previous = opt->previous;
 				opt->previous->next = opt->next;
-				GMT_Delete_Option (API, opt);
+				GMT_Delete_Option (API, opt, &list);
 				opt = list;	/* GO back to start to avoid bad pointer */
 			}
 			else {	/* Standard output */
@@ -4866,7 +4864,7 @@ int GMT_grdmath (void *V_API, int mode, void *args) {
 			continue;
 		}
 
-		if (op != GRDMATH_ARG_IS_FILE && !gmt_access (GMT, opt->arg, R_OK)) GMT_Message (API, GMT_TIME_NONE, "Warning: The number or operator %s may be confused with an existing file %s!\n", opt->arg, opt->arg);
+		if (op != GRDMATH_ARG_IS_FILE && !gmt_access (GMT, opt->arg, R_OK)) GMT_Message (API, GMT_TIME_NONE, "Warning: The number or operator %s may be confused with an existing file %s!  The file will be ignored.\n", opt->arg, opt->arg);
 
 		if (op < GRDMATH_ARG_IS_OPERATOR) {	/* File name or factor */
 
diff --git a/src/grdproject.c b/src/grdproject.c
index f347f3a..4ca2ba0 100644
--- a/src/grdproject.c
+++ b/src/grdproject.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdproject.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdproject.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -198,8 +198,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDPROJECT_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->D.inc, &GMT->common.R.registration, &Ctrl->D.active);
-
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->In.file, "Syntax error: Must specify input file\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.file, "Syntax error -G option: Must specify output file\n");
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.J.active, "Syntax error: Must specify a map projection with the -J option\n");
diff --git a/src/grdraster.c b/src/grdraster.c
index 0df2671..64981ae 100644
--- a/src/grdraster.c
+++ b/src/grdraster.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdraster.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdraster.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -706,7 +706,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDRASTER_CTRL *Ctrl, struct G
 	}
 
 	/* Check that arguments were valid */
-	//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
 
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option.\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.active[ISET] && (GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0), "Syntax error -I option: Must specify positive increment(s)\n");
diff --git a/src/grdsample.c b/src/grdsample.c
index 2b3894e..9c2fcd3 100644
--- a/src/grdsample.c
+++ b/src/grdsample.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdsample.c 18117 2017-05-03 23:47:18Z pwessel $
+ *	$Id: grdsample.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -213,8 +213,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDSAMPLE_CTRL *Ctrl, struct G
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, (n_files != 1), "Syntax error: Must specify a single input grid file\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.file, "Syntax error -G: Must specify output file\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.active[GSET] && Ctrl->T.active && !GMT->common.R.active[FSET], 
diff --git a/src/grdvector.c b/src/grdvector.c
index f4d3848..9f0f80a 100644
--- a/src/grdvector.c
+++ b/src/grdvector.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdvector.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdvector.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -294,8 +294,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDVECTOR_CTRL *Ctrl, struct G
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.J.active, "Syntax error: Must specify a map projection with the -J option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.active[ISET] && (GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0),
 	                                 "Syntax error -I option: Must specify positive increments\n");
@@ -315,9 +313,9 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDVECTOR_CTRL *Ctrl, struct G
 #define Return(code) {Free_Ctrl (GMT, Ctrl); gmt_end_module (GMT, GMT_cpy); bailout (code);}
 
 int GMT_grdvector (void *V_API, int mode, void *args) {
-	unsigned int row, col, col_0, row_0, d_col, d_row, k, n_warn[3] = {0, 0, 0}, warn;
+	unsigned int justify, row, col, col_0, row_0, d_col, d_row, k, n_warn[3] = {0, 0, 0}, warn;
 	int error = 0;
-	bool justify, Geographic;
+	bool Geographic;
 	
 	uint64_t ij;
 
diff --git a/src/grdview.c b/src/grdview.c
index d31b7e5..6c3a941 100644
--- a/src/grdview.c
+++ b/src/grdview.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdview.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdview.c 18257 2017-05-28 21:57:30Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -358,7 +358,7 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	GMT_Message (API, GMT_TIME_NONE, "\t-I Apply directional illumination. Append name of intensity grid file.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   For a constant intensity (i.e., change the ambient light), append a value.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   To derive intensities from <grd_z> instead, append +a<azim> [-45] and +n<method> [t1].\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t   (see grdgradient for details).\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t   Use -I+ to accept the default values (see grdgradient for details).\n");
 	GMT_Option (API, "K");
 	GMT_Message (API, GMT_TIME_NONE, "\t-N Draw a horizontal plane at z = <level>. Append +g<fill> to paint\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   the facade between the plane and the data perimeter.\n");
@@ -474,7 +474,7 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDVIEW_CTRL *Ctrl, struct GMT
 					}
 					c[0] = '\0';	/* Chop off all modifiers so range can be determined */
 				}
-				else if (!opt->arg[0])	/* No argument, so derive intensities from input grid using default settings */
+				else if (!opt->arg[0] || strstr (opt->arg, "+"))	/* No argument or just +, so derive intensities from input grid using default settings */
 					Ctrl->I.derive = true;
 				else if (!gmt_access (GMT, opt->arg, R_OK))	/* Got a file */
 					Ctrl->I.file = strdup (opt->arg);
@@ -677,7 +677,7 @@ int GMT_grdview (void *V_API, int mode, void *args) {
 	float *saved_data_pointer = NULL;
 	
 	double cval, x_left, x_right, y_top, y_bottom, small = GMT_CONV4_LIMIT, z_ave;
-	double inc2[2], wesn[4], z_val, x_pixel_size, y_pixel_size;
+	double inc2[2], wesn[4] = {0.0, 0.0, 0.0, 0.0}, z_val, x_pixel_size, y_pixel_size;
 	double this_intensity = 0.0, next_up = 0.0, xmesh[4], ymesh[4], rgb[4];
 	double *x_imask = NULL, *y_imask = NULL, x_inc[4], y_inc[4], *x = NULL, *y = NULL;
 	double *z = NULL, *v = NULL, *xx = NULL, *yy = NULL, *xval = NULL, *yval = NULL;
@@ -728,28 +728,11 @@ int GMT_grdview (void *V_API, int mode, void *args) {
 	}
 	get_contours = (Ctrl->Q.mode == GRDVIEW_MESH && Ctrl->W.contour) || (Ctrl->Q.mode == GRDVIEW_SURF && P->n_colors > 1);
 
-	if (Ctrl->I.derive) {	/* Auto-create intensity grid from data grid */
-		char int_grd[GMT_LEN16] = {""}, l_args[GMT_LEN256] = {""};
-		GMT_Report (API, GMT_MSG_VERBOSE, "Derive intensity grid from data grid\n");
-		/* Create a virtual file to hold the intensity grid */
-		if (GMT_Open_VirtualFile (API, GMT_IS_GRID, GMT_IS_SURFACE, GMT_OUT, NULL, int_grd))
-			Return (API->error);
-		/* Prepare the grdgradient arguments using selected -A -N */
-		sprintf (l_args, "%s -G%s -A%s -N%s --GMT_HISTORY=false", Ctrl->In.file, int_grd, Ctrl->I.azimuth, Ctrl->I.method);
-		if (GMT->common.R.active[RSET] && !GMT->common.R.oblique) { strcat (l_args, " -R"); strcat (l_args, GMT->common.R.string); }
-		/* Call the grdgradient module */
-		GMT_Report (API, GMT_MSG_VERBOSE, "Calling grdgradient with args %s\n", l_args);
-		if (GMT->common.R.oblique) GMT->common.R.active[RSET] = false;	/* Must turn -R off temporarily */
-		if (GMT_Call_Module (API, "grdgradient", GMT_MODULE_CMD, l_args))
+	if (use_intensity_grid && !Ctrl->I.derive) {
+		GMT_Report (API, GMT_MSG_VERBOSE, "Read intensity grid header from file %s\n", Ctrl->I.file);
+		if ((Intens = GMT_Read_Data (API, GMT_IS_GRID, GMT_IS_FILE, GMT_IS_SURFACE, GMT_CONTAINER_ONLY, NULL, Ctrl->I.file, NULL)) == NULL) {	/* Get header only */
 			Return (API->error);
-		/* Obtain the data from the virtual file */
-		if ((Intens = GMT_Read_VirtualFile (API, int_grd)) == NULL)
-			Return (API->error);
-		if (GMT->common.R.oblique) GMT->common.R.active[RSET] = true;	/* Reset -R */
-		i_reg = gmt_change_grdreg (GMT, Intens->header, GMT_GRID_NODE_REG);	/* Ensure gridline registration */
-	}
-	else if (use_intensity_grid && (Intens = GMT_Read_Data (API, GMT_IS_GRID, GMT_IS_FILE, GMT_IS_SURFACE, GMT_CONTAINER_ONLY, NULL, Ctrl->I.file, NULL)) == NULL) {	/* Get header only */
-		Return (API->error);
+		}
 	}
 
 	if (Ctrl->G.active) {
@@ -776,7 +759,7 @@ int GMT_grdview (void *V_API, int mode, void *args) {
 
 	if (!gmt_grd_setregion (GMT, Topo->header, wesn, BCR_BILINEAR))
 		nothing_inside = true;
-	else if (use_intensity_grid && !gmt_grd_setregion (GMT, Intens->header, wesn, BCR_BILINEAR))
+	else if (use_intensity_grid && !Ctrl->I.derive && !gmt_grd_setregion (GMT, Intens->header, wesn, BCR_BILINEAR))
 		nothing_inside = true;
 
 	if (nothing_inside) {
@@ -791,6 +774,25 @@ int GMT_grdview (void *V_API, int mode, void *args) {
 		Return (GMT_NOERROR);
 	}
 
+	if (Ctrl->I.derive) {	/* Auto-create intensity grid from data grid */
+		char int_grd[GMT_LEN16] = {""}, cmd[GMT_LEN256] = {""};
+		GMT_Report (API, GMT_MSG_VERBOSE, "Derive intensity grid from data grid\n");
+		/* Create a virtual file to hold the intensity grid */
+		if (GMT_Open_VirtualFile (API, GMT_IS_GRID, GMT_IS_SURFACE, GMT_OUT, NULL, int_grd))
+			Return (API->error);
+		/* Prepare the grdgradient arguments using selected -A -N */
+		sprintf (cmd, "%s -G%s -A%s -N%s -R%.16g/%.16g/%.16g/%.16g --GMT_HISTORY=false",
+			Ctrl->In.file, int_grd, Ctrl->I.azimuth, Ctrl->I.method, wesn[XLO], wesn[XHI], wesn[YLO], wesn[YHI]);
+		/* Call the grdgradient module */
+		GMT_Report (API, GMT_MSG_VERBOSE, "Calling grdgradient with args %s\n", cmd);
+		if (GMT_Call_Module (API, "grdgradient", GMT_MODULE_CMD, cmd))
+			Return (API->error);
+		/* Obtain the data from the virtual file */
+		if ((Intens = GMT_Read_VirtualFile (API, int_grd)) == NULL)
+			Return (API->error);
+		i_reg = gmt_change_grdreg (GMT, Intens->header, GMT_GRID_NODE_REG);	/* Ensure gridline registration */
+	}
+
 	/* Read data */
 
 	GMT_Report (API, GMT_MSG_VERBOSE, "Processing shape grid\n");
diff --git a/src/greenspline.c b/src/greenspline.c
index b5887d2..c855acb 100644
--- a/src/greenspline.c
+++ b/src/greenspline.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: greenspline.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: greenspline.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -1628,7 +1628,7 @@ int GMT_greenspline (void *V_API, int mode, void *args) {
 		}
 		
 		if (GMT->common.b.active[GMT_IN]) GMT->common.b.ncol[GMT_IN]++;	/* Must assume it is just one extra column */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((Din = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_READ_NORMAL, NULL, Ctrl->A.file, NULL)) == NULL) {
 			for (p = 0; p < nm; p++) gmt_M_free (GMT, X[p]);
 			gmt_M_free (GMT, X);	gmt_M_free (GMT, obs);
@@ -1638,7 +1638,7 @@ int GMT_greenspline (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input data have %d column(s) but at least %u are needed\n", (int)Din->n_columns, n_A_cols);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		S = Din->table[0];	/* Can only be one table */
 		m = S->n_records;	/* Total number of gradient constraints */
 		nm += m;		/* New total of linear equations to solve */
@@ -1795,7 +1795,7 @@ int GMT_greenspline (void *V_API, int mode, void *args) {
 		Z.nz = 1;
 	}
 	else if (Ctrl->N.active) {	/* Read output locations from file */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((Nin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -1804,7 +1804,7 @@ int GMT_greenspline (void *V_API, int mode, void *args) {
 			            "Input file %s has %d column(s) but at least %u are needed\n", Ctrl->N.file, (int)Nin->n_columns, dimension);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		T = Nin->table[0];
 	}
 	else {	/* Fill in an equidistant output table or grid */
diff --git a/src/gshhg/gshhg.c b/src/gshhg/gshhg.c
index 6ae0226..5f34304 100644
--- a/src/gshhg/gshhg.c
+++ b/src/gshhg/gshhg.c
@@ -1,4 +1,4 @@
-/*	$Id: gshhg.c 18024 2017-04-23 20:44:58Z pwessel $
+/*	$Id: gshhg.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *	Copyright (c) 1996-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -258,7 +258,7 @@ int GMT_gshhg (void *V_API, int mode, void *args) {
 		if ((X = GMT_Create_Data (API, GMT_IS_TEXTSET, GMT_IS_NONE, 0, dim, NULL, NULL, 0, 0, NULL)) == NULL) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Unable to create a text set for GSHHG header features.\n");
 			gmt_fclose (GMT, fp);
-			return (API->error);
+			Return (API->error);
 		}
 	}
 	else {
@@ -266,7 +266,7 @@ int GMT_gshhg (void *V_API, int mode, void *args) {
 		if ((D = GMT_Create_Data (API, GMT_IS_DATASET, GMT_IS_POLY, 0, dim, NULL, NULL, 0, 0, NULL)) == NULL) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Unable to create a data set for GSHHG features.\n");
 			gmt_fclose (GMT, fp);
-			return (API->error);
+			Return (API->error);
 		}
 	}
 	sprintf (header, "# Data extracted from GSHHG file %s", Ctrl->In.file);
diff --git a/src/gshhg/gshhg.h b/src/gshhg/gshhg.h
index 5f22ec6..2e15e3c 100644
--- a/src/gshhg/gshhg.h
+++ b/src/gshhg/gshhg.h
@@ -1,4 +1,4 @@
-/*	$Id: gshhg.h 17451 2017-01-16 21:36:06Z pwessel $
+/*	$Id: gshhg.h 18382 2017-06-15 20:50:02Z pwessel $
  *
  * Include file defining structures used in the binary GSHHG files
  *
@@ -48,6 +48,7 @@
  *	1-JAN-2015.   PW: Data version is now 2.3.4. [no change to format]
  *	12-APR-2016.  PW: Data version is now 2.3.5. [no change to format]
  *	17-AUG-2016.  PW: Data version is now 2.3.6. [no change to format]
+ *	15-JUN-2017.  PW: Data version is now 2.3.7. [no change to format]
  *
  * The format of binary GSHHG files are simply sequential:
  * [ Item Header 0 ]
diff --git a/src/img/img2grd.c b/src/img/img2grd.c
index fd967ba..6bf54c5 100644
--- a/src/img/img2grd.c
+++ b/src/img/img2grd.c
@@ -1,4 +1,4 @@
-/* $Id: img2grd.c 18139 2017-05-05 19:47:59Z pwessel $
+/* $Id: img2grd.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  * Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  * See LICENSE.TXT file for copying and redistribution conditions.
@@ -453,12 +453,16 @@ int GMT_img2grd (void *V_API, int mode, void *args) {
 		switch (buf.st_size) {	/* Known sizes are 1 or 2 min at lat_max = ~72 or 80 */
 			case GMT_IMG_NLON_1M*GMT_IMG_NLAT_1M_80*GMT_IMG_ITEMSIZE:
 				if (lat == 0.0) lat = GMT_IMG_MAXLAT_80;
+				min = 1;
+				break;
 			case GMT_IMG_NLON_1M*GMT_IMG_NLAT_1M_72*GMT_IMG_ITEMSIZE:
 				if (lat == 0.0) lat = GMT_IMG_MAXLAT_72;
 				min = 1;
 				break;
 			case GMT_IMG_NLON_2M*GMT_IMG_NLAT_2M_80*GMT_IMG_ITEMSIZE:
 				if (lat == 0.0) lat = GMT_IMG_MAXLAT_80;
+				min = 2;
+				break;
 			case GMT_IMG_NLON_2M*GMT_IMG_NLAT_2M_72*GMT_IMG_ITEMSIZE:
 				if (lat == 0.0) lat = GMT_IMG_MAXLAT_72;
 				min = 2;
@@ -507,7 +511,7 @@ int GMT_img2grd (void *V_API, int mode, void *args) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Syntax error: Error in img coordinate specification [-I -W or -D].\n");
 		Return (GMT_RUNTIME_ERROR);
 	}
-	else if (Ctrl->N.value && (imgcoord.nx360%Ctrl->N.value != 0 || imgcoord.nyrow%Ctrl->N.value != 0) ) {
+	else if (Ctrl->N.active && (imgcoord.nx360%Ctrl->N.value != 0 || imgcoord.nyrow%Ctrl->N.value != 0) ) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Syntax error -N: Bad choice of navg.  Must divide %d and %d\n", imgcoord.nx360, imgcoord.nyrow);
 		Return (GMT_RUNTIME_ERROR);
 	}
diff --git a/src/makecpt.c b/src/makecpt.c
index be0fea4..8c5c900 100644
--- a/src/makecpt.c
+++ b/src/makecpt.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: makecpt.c 17897 2017-04-10 03:16:23Z pwessel $
+ *	$Id: makecpt.c 18447 2017-06-24 16:25:54Z jluis $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -470,7 +470,7 @@ int GMT_makecpt (void *V_API, int mode, void *args) {
 		Pout = gmt_sample_cpt (GMT, Pin, z, nz, Ctrl->Z.active, Ctrl->I.mode & GMT_CPT_C_REVERSE, Ctrl->Q.mode, Ctrl->W.active);
 	}
 
-	gmt_M_free (GMT, z);	/* It may also have been allocated inside gmtlib_log_array() */
+	if (!Ctrl->T.file) gmt_M_free (GMT, z);	/* It may also have been allocated inside gmtlib_log_array() */
 
 	if (Ctrl->A.active) gmt_cpt_transparency (GMT, Pout, Ctrl->A.value, Ctrl->A.mode);	/* Set transparency */
 
diff --git a/src/mapproject.c b/src/mapproject.c
index 3daaec4..95b2699 100644
--- a/src/mapproject.c
+++ b/src/mapproject.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
-*	$Id: mapproject.c 18134 2017-05-05 08:34:43Z pwessel $
+*	$Id: mapproject.c 18404 2017-06-20 18:10:00Z pwessel $
 *
 *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
 *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -898,7 +898,7 @@ int GMT_mapproject (void *V_API, int mode, void *args) {
 			Return (API->error);
 		}
 
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -L files */
 		if ((Lin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_LINE, GMT_READ_NORMAL, NULL, Ctrl->L.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -906,7 +906,7 @@ int GMT_mapproject (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input data have %d column(s) but at least 2 are needed\n", (int)Lin->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		gmt_set_segmentheader (GMT, GMT_OUT, false);	/* Since processing of -L file might have turned it on [should be determined below] */
 		xyline = Lin->table[0];			/* Can only be one table since we read a single file */
 		if (proj_type == GMT_GEO2CART) {	/* Must convert the line points first */
@@ -1228,16 +1228,16 @@ int GMT_mapproject (void *V_API, int mode, void *args) {
 							d = GMT->session.d_NaN;
 						else {
 							d = gmt_az_backaz (GMT, lon_prev, lat_prev, in[GMT_X], in[GMT_Y], Ctrl->A.reverse);
-							if (Ctrl->A.orient) {	/* Want orientations in -90/90 instead */
-								d = fmod (2.0 * d, 360.0) * 0.5;	/* Get orientation */
-								if (d > 90.0) d-= 180.0;
-							}
 						}
 						lon_prev = in[GMT_X];	/* Update previous point */
 						lat_prev = in[GMT_Y];
 					}
 					else	/* Azimuths with respect to a fixed point */
 						d = gmt_az_backaz (GMT, Ctrl->A.lon, Ctrl->A.lat, in[GMT_X], in[GMT_Y], Ctrl->A.reverse);
+					if (Ctrl->A.orient) {	/* Want orientations in -90/90 instead */
+						d = fmod (2.0 * d, 360.0) * 0.5;	/* Get orientation */
+						if (d > 90.0) d-= 180.0;
+					}
 					extra[MP_COL_AZ] = d;
 				}
 				if (Ctrl->Z.active) {	/* Time calculations */
diff --git a/src/meca/pssac.c b/src/meca/pssac.c
index 1362dff..f61e0d3 100644
--- a/src/meca/pssac.c
+++ b/src/meca/pssac.c
@@ -170,7 +170,7 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	GMT_Message (API, GMT_TIME_NONE, "\t   i: integral\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   q: square\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   r: remove mean value\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t   i|q|r can repeat multiple times. -Frii will convert accerate to displacement.\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t   i|q|r can repeat multiple times. -Frii will convert acceleration to displacement.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   The order of i|q|r controls the order of the data processing.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t-G Paint positive or negative portion of traces.\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   If only -G is used, default to fill the positive portion black.\n");
diff --git a/src/mgd77/mgd77.c b/src/mgd77/mgd77.c
index b931e4f..fa0acdf 100644
--- a/src/mgd77/mgd77.c
+++ b/src/mgd77/mgd77.c
@@ -1,5 +1,5 @@
 /*---------------------------------------------------------------------------
- *  $Id: mgd77.c 18057 2017-04-28 21:14:53Z jluis $
+ *  $Id: mgd77.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *  Copyright (c) 2005-2017 by P. Wessel
  *  See README file for copying and redistribution conditions.
@@ -4261,7 +4261,9 @@ GMT_LOCAL int compare_L (const void *p1, const void *p2) {
 }
 
 int MGD77_Path_Expand (struct GMT_CTRL *GMT, struct MGD77_CONTROL *F, struct GMT_OPTION *options, char ***list) {
-	/* Traverse the MGD77 directories in search of files matching the given arguments (or get all if none) */
+	/* Traverse the MGD77 directories in search of files matching the given arguments (or get all if none).
+	 * Returns -1 if unable to open a list file,
+	 * otherwise returns number of paths found */
 
 	int i;
 	unsigned int n = 0, n_dig, j, k;
@@ -4291,7 +4293,7 @@ int MGD77_Path_Expand (struct GMT_CTRL *GMT, struct MGD77_CONTROL *F, struct GMT
 	if (flist) {	/* Just read and return the list of files in the given file list; skip leading = in filename */
 		FILE *fp = NULL;
 		if ((fp = gmt_fopen (GMT, flist, "r")) == NULL) {
-			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Warning: Unable to open file list %s\n", flist);
+			GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error: Unable to open file list %s\n", flist);
 			return (-1);
 		}
 		while (gmt_fgets (GMT, line, GMT_BUFSIZ, fp)) {
diff --git a/src/mgd77/mgd77convert.c b/src/mgd77/mgd77convert.c
index 67eb86e..c144d69 100644
--- a/src/mgd77/mgd77convert.c
+++ b/src/mgd77/mgd77convert.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77convert.c 17811 2017-03-28 20:21:14Z pwessel $
+ *	$Id: mgd77convert.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2005-2017 by P. Wessel
  *    See README file for copying and redistribution conditions.
@@ -297,7 +297,7 @@ int GMT_mgd77convert (void *V_API, int mode, void *args) {
 	
 	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 
-	if (n_paths == 0) {
+	if (n_paths <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: No cruises given\n");
 		Return (GMT_RUNTIME_ERROR);
 	}
@@ -388,7 +388,7 @@ int GMT_mgd77convert (void *V_API, int mode, void *args) {
 	
 	GMT_Report (API, GMT_MSG_VERBOSE, "Converted %d MGD77 files\n", n_cruises);
 	
-	MGD77_Path_Free (GMT, n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	MGD77_end (GMT, &M);
 
 	Return (GMT_NOERROR);
diff --git a/src/mgd77/mgd77header.c b/src/mgd77/mgd77header.c
index 7524305..13fc59e 100644
--- a/src/mgd77/mgd77header.c
+++ b/src/mgd77/mgd77header.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77header.c 17835 2017-04-01 07:16:59Z pwessel $
+ *	$Id: mgd77header.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2004-2017 by P. Wessel and Michael Chandler
  *    See README file for copying and redistribution conditions.
@@ -223,7 +223,7 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 
 	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 
-	if (n_paths == 0) {
+	if (n_paths <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: No cruises given\n");
 		if (fp) gmt_fclose (GMT, fp);
 		Return (GMT_NO_INPUT);
@@ -274,11 +274,11 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 			tvalue[i] = (char *)D->values[i];
 		}
 
-        /* Set up tendeg identifier array */
-        for (tenx = 0; tenx < 36; tenx++) {
-        	for (teny = 0; teny < 18; teny++)
-            	tendeg[tenx][teny] = 0;
-        }
+		/* Set up tendeg identifier array */
+		for (tenx = 0; tenx < 36; tenx++) {
+			for (teny = 0; teny < 18; teny++)
+				tendeg[tenx][teny] = 0;
+		}
 
 		/* Start processing data */
 		for (rec = 0; rec < D->H.n_records; rec++) {		/* While able to read a data record */
@@ -295,7 +295,7 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 			last_lon  = this_lon;
 			last_lat  = this_lat;
 			lon_w = dvalue[x_col][rec];
-            this_lon = lon_w;
+			this_lon = lon_w;
 			this_lat  = dvalue[y_col][rec];
 			if (this_lon < 0.0) this_lon += 360.0;	/* Start off with everything in 0-360 range */
 			xmin1 = MIN (this_lon, xmin1);
@@ -318,17 +318,17 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 			ymin = MIN (this_lat, ymin);
 			ymax = MAX (this_lat, ymax);
 
-            /* Determine 10x10 degree boxes crossed */
-            teny = (int)(floor ((this_lat/10)+9));
-            if (this_lon > 180) tenx = (int)(ceil (((this_lon-360)/10)+18));
-            else tenx = (int)(floor (this_lon/10)+18);
+			/* Determine 10x10 degree boxes crossed */
+			teny = (int)(floor ((this_lat/10)+9));
+			if (this_lon > 180) tenx = (int)(ceil (((this_lon-360)/10)+18));
+			else tenx = (int)(floor (this_lon/10)+18);
 			if (!tendeg[tenx][teny]) {
 				tendeg[tenx][teny] = 1;
 #if 0
-                if (this_lon > 180)
-                	fprintf (stderr,"lon: %.5f lat: %.5f\ttendeg[%d][%d] = %d\n",this_lon-360,this_lat,tenx,teny,tendeg[tenx][teny]);
-                else
-                    fprintf (stderr,"lon: %.5f lat: %.5f\ttendeg[%d][%d] = %d\n",this_lon,this_lat,tenx,teny,tendeg[tenx][teny])
+ 			if (this_lon > 180)
+				fprintf (stderr,"lon: %.5f lat: %.5f\ttendeg[%d][%d] = %d\n",this_lon-360,this_lat,tenx,teny,tendeg[tenx][teny]);
+			else
+				fprintf (stderr,"lon: %.5f lat: %.5f\ttendeg[%d][%d] = %d\n",this_lon,this_lat,tenx,teny,tendeg[tenx][teny])
 #endif
 				nten++;
 			}
@@ -406,11 +406,11 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 		id = MGD77_Get_Header_Item (GMT, &M, name);
 		strncpy (MGD77_Header_Lookup[id].ptr[MGD77_M77_SET],value,MGD77_Header_Lookup[id].length);
 		value[0] = '\0';
-        i = 0;
+		i = 0;
 		for (tenx = 0; tenx < 36; tenx++) {
 			for (teny = 0; teny < 18; teny++) {
 				if (tendeg[tenx][teny]) {
-                    i++;
+					i++;
 					if (tenx >= 18) {
 						tquad = 3;
 						if (teny >= 9)
@@ -421,15 +421,15 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 							tquad = 7;
 					}
 					if (teny > 8) sprintf (value,"%s%.1d%01.0f%02.0f,",value,tquad,fabs(teny-9.0),fabs(tenx-18.0));
-                    else sprintf (value,"%s%.1d%01.0f%02.0f,",value,tquad,fabs(teny-8.0),fabs(tenx-18.0));
+					else sprintf (value,"%s%.1d%01.0f%02.0f,",value,tquad,fabs(teny-8.0),fabs(tenx-18.0));
 				}
 			}
-        }
-        sprintf (value, "%s9999", value); i++;
-        while (i < 30) { /* MGD77 format can store up to this many 10x10 identifiers */
-            sprintf (value,"%s,   0",value);
-            i++;
-        }
+		}
+		sprintf (value, "%s9999", value); i++;
+		while (i < 30) { /* MGD77 format can store up to this many 10x10 identifiers */
+ 			sprintf (value,"%s,   0",value);
+			i++;
+		}
 		sprintf (name,"Ten_Degree_Identifier");
 		id = MGD77_Get_Header_Item (GMT, &M, name);
 		strncpy (MGD77_Header_Lookup[id].ptr[MGD77_M77_SET],value,MGD77_Header_Lookup[id].length);
@@ -526,7 +526,7 @@ int GMT_mgd77header (void *V_API, int mode, void *args) {
 		MGD77_Free_Dataset (GMT, &D);
 	}
 
-	MGD77_Path_Free (GMT, (int)n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	MGD77_end (GMT, &M);
 	MGD77_end (GMT, &Out);
 	if (fp) gmt_fclose (GMT, fp);
diff --git a/src/mgd77/mgd77info.c b/src/mgd77/mgd77info.c
index 11d78f2..4171146 100644
--- a/src/mgd77/mgd77info.c
+++ b/src/mgd77/mgd77info.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77info.c 17798 2017-03-27 04:50:17Z pwessel $
+ *	$Id: mgd77info.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2004-2017 by P. Wessel
  *    See README file for copying and redistribution conditions.
@@ -319,7 +319,7 @@ int GMT_mgd77info (void *V_API, int mode, void *args) {
 
 	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 	
-	if (n_paths == 0) {
+	if (n_paths <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: No cruises given\n");
 		Return (GMT_NO_INPUT);
 	}
@@ -557,7 +557,7 @@ int GMT_mgd77info (void *V_API, int mode, void *args) {
 		MGD77_Free_Dataset (GMT, &D);
 	}
 		
-	MGD77_Path_Free (GMT, n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	MGD77_end (GMT, &M);
 	MGD77_end (GMT, &Out);
 
diff --git a/src/mgd77/mgd77list.c b/src/mgd77/mgd77list.c
index 21ea439..d0db2bd 100644
--- a/src/mgd77/mgd77list.c
+++ b/src/mgd77/mgd77list.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77list.c 17831 2017-03-31 22:28:43Z pwessel $
+ *	$Id: mgd77list.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2004-2017 by P. Wessel
  *    See README file for copying and redistribution conditions.
@@ -841,7 +841,7 @@ int GMT_mgd77list (void *V_API, int mode, void *args) {
 	
 	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 
-	if (n_paths == 0) {
+	if (n_paths <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: No cruises given\n");
 		Return (GMT_NO_INPUT);
 	}
@@ -1577,7 +1577,7 @@ int GMT_mgd77list (void *V_API, int mode, void *args) {
 	
 	GMT_Report (API, GMT_MSG_VERBOSE, "Returned %d output records from %d cruises\n", n_out, n_cruises);
 	
-	MGD77_Path_Free (GMT, n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	if (Ctrl->L.active) MGD77_Free_Correction (GMT, CORR, n_paths);
 	MGD77_end (GMT, &M);
 
diff --git a/src/mgd77/mgd77manage.c b/src/mgd77/mgd77manage.c
index e435c9f..4e2da2c 100644
--- a/src/mgd77/mgd77manage.c
+++ b/src/mgd77/mgd77manage.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77manage.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: mgd77manage.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2005-2017 by P. Wessel
  * mgd77manage is used to (1) remove data columns from mgd77+ files
@@ -563,14 +563,14 @@ int GMT_mgd77manage (void *V_API, int mode, void *args) {
 	
 	n_paths = MGD77_Path_Expand (GMT, &In, options, &list);	/* Get list of requested IDs */
 
-	if (n_paths == 0) {
+	if (n_paths <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: No cruises given\n");
 		Return (GMT_NO_INPUT);
 	}
 
 	if (got_table && n_paths != 1) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: With -Aa|d|D|n|t|T you can only select one cruise at the time.\n");
-		MGD77_Path_Free (GMT, n_paths, list);
+		MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 		Return (GMT_PARSE_ERROR);
 	}
 	MGD77_Set_Unit (GMT, Ctrl->N.code, &dist_scale, -1);	/* Gets scale which multiplies meters to chosen distance unit */
@@ -638,7 +638,7 @@ int GMT_mgd77manage (void *V_API, int mode, void *args) {
 		else {
 			if ((fp = gmt_fopen (GMT, Ctrl->A.file, GMT->current.io.r_mode)) == NULL) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Cannot open file %s\n", Ctrl->A.file);
-				MGD77_Path_Free (GMT, n_paths, list);
+				MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 				Return (GMT_ERROR_ON_FOPEN);
 			}
 		}
@@ -648,7 +648,7 @@ int GMT_mgd77manage (void *V_API, int mode, void *args) {
 				if (!gmt_fgets (GMT, line, GMT_BUFSIZ, fp)) {
 					GMT_Report (API, GMT_MSG_NORMAL, "Read error for headers\n");
 					if (fp != GMT->session.std[GMT_IN]) gmt_fclose (GMT, fp);
-					MGD77_Path_Free (GMT, n_paths, list);
+					MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 					Return (GMT_DATA_READ_ERROR);
 				}
 			}
@@ -692,7 +692,7 @@ int GMT_mgd77manage (void *V_API, int mode, void *args) {
 			if (GMT->current.io.status & GMT_IO_MISMATCH) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Mismatch between actual (%d) and expected (%d) fields near line %d\n",
 				            n_fields, n_expected_fields, n);
-				MGD77_Path_Free (GMT, n_paths, list);
+				MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 				MGD77_end (GMT, &In);
 				gmt_M_free (GMT, colvalue);
 				if (two_cols) gmt_M_free (GMT, coldnt);
@@ -1622,7 +1622,7 @@ int GMT_mgd77manage (void *V_API, int mode, void *args) {
 	else
 		GMT_Report (API, GMT_MSG_VERBOSE, "Sampled data for %d MGD77 files\n", n_changed);
 	
-	MGD77_Path_Free (GMT, n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	MGD77_end (GMT, &In);
 	gmt_set_pad (GMT, API->pad);	/* Reset to session default pad before output */
 
diff --git a/src/mgd77/mgd77path.c b/src/mgd77/mgd77path.c
index 5367cfa..161dc1c 100644
--- a/src/mgd77/mgd77path.c
+++ b/src/mgd77/mgd77path.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77path.c 17798 2017-03-27 04:50:17Z pwessel $
+ *	$Id: mgd77path.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2004-2017 by P. Wessel
  *    See README file for copying and redistribution conditions.
@@ -142,7 +142,7 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct MGD77PATH_CTRL *Ctrl, struct G
 #define Return(code) {Free_Ctrl (GMT, Ctrl); gmt_end_module (GMT, GMT_cpy); bailout (code);}
 
 int GMT_mgd77path (void *V_API, int mode, void *args) {
-	unsigned int i, n_cruises = 0, n_paths;
+	uint64_t n_cruises = 0, i, n_paths;
 	int error = 0;
 	
 	char path[GMT_BUFSIZ] = {""}, **list = NULL;
@@ -182,12 +182,13 @@ int GMT_mgd77path (void *V_API, int mode, void *args) {
 		Return (GMT_NOERROR);
 	}
 
-	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
+	error = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 
-	if (n_paths == 0) {
+	if (error <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "No cruises found\n");
 		Return (GMT_NO_INPUT);
 	}
+	n_paths = (uint64_t)error;
 	
 	for (i = 0; i < n_paths; i++) {		/* Process each ID */
  		if (MGD77_Get_Path (GMT, path, list[i], &M))
@@ -202,7 +203,7 @@ int GMT_mgd77path (void *V_API, int mode, void *args) {
 		}
 	}
 	
-	GMT_Report (API, GMT_MSG_VERBOSE, "Found %d cruises\n", n_cruises);
+	GMT_Report (API, GMT_MSG_VERBOSE, "Found %" PRIu64 " cruises\n", n_cruises);
 	
 	MGD77_Path_Free (GMT, n_paths, list);
 	MGD77_end (GMT, &M);
diff --git a/src/mgd77/mgd77sniffer.c b/src/mgd77/mgd77sniffer.c
index 47ed08e..d3a74ef 100644
--- a/src/mgd77/mgd77sniffer.c
+++ b/src/mgd77/mgd77sniffer.c
@@ -1,5 +1,5 @@
 /* -------------------------------------------------------------------
- *	$Id: mgd77sniffer.c 18171 2017-05-07 02:37:02Z pwessel $
+ *	$Id: mgd77sniffer.c 18435 2017-06-22 04:01:50Z pwessel $
  *      See LICENSE.TXT file for copying and redistribution conditions.
  *
  *    Copyright (c) 2004-2017 by P. Wessel and M. T. Chandler
@@ -927,6 +927,11 @@ int GMT_mgd77sniffer (void *V_API, int mode, void *args) {
 
 	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 
+	if (n_paths <= 0) {
+		GMT_Report (API, GMT_MSG_NORMAL, "No cruises found\n");
+		Return (GMT_NO_INPUT);
+	}
+
 	/* NAUTICAL CONVERSION FACTORS */
 	if (nautical) {
 		distance_factor = 1.0 / MGD77_METERS_PER_NM; /* meters to nm */
@@ -1121,7 +1126,7 @@ int GMT_mgd77sniffer (void *V_API, int mode, void *args) {
 			sprintf (outfile,"%s.e77",M.NGDC_id);
 			if ((fpout = fopen (outfile, "w")) == NULL) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Could not open E77 output file %s\n", outfile);
-				MGD77_Path_Free (GMT, n_paths, list);
+				MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 				Return (API->error);
 			}
 	 	}
@@ -1830,6 +1835,10 @@ int GMT_mgd77sniffer (void *V_API, int mode, void *args) {
 					old_anom[n] = D[i].number[MGD77_FAA];
 					n++;
 				}
+				if (n < 2) {
+					GMT_Report (API, GMT_MSG_VERBOSE, "Not enough points, skipping faa regression\n");
+					continue;
+				}
 				if (m == 0) GMT_Report (API, GMT_MSG_VERBOSE, "Comparing reported with recomputed (gobs - IGF80) faa using RLS regression\n");
 				else GMT_Report (API, GMT_MSG_VERBOSE, "Comparing reported with recomputed (gobs - IGF80 + eot) faa using RLS regression\n");
 				if (!decimateData && forced) {
@@ -3006,7 +3015,7 @@ int GMT_mgd77sniffer (void *V_API, int mode, void *args) {
 		gmt_M_free (GMT, iMaxDiff);
 	}
 
-	MGD77_Path_Free (GMT, n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	MGD77_end (GMT, &M);
 	MGD77_end (GMT, &Out);
 	Return (GMT_NOERROR);
diff --git a/src/mgd77/mgd77track.c b/src/mgd77/mgd77track.c
index 6be61a1..8aa640b 100644
--- a/src/mgd77/mgd77track.c
+++ b/src/mgd77/mgd77track.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: mgd77track.c 18024 2017-04-23 20:44:58Z pwessel $
+ *	$Id: mgd77track.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *    Copyright (c) 2004-2017 by P. Wessel
  *    See README file for copying and redistribution conditions.
@@ -623,7 +623,7 @@ int GMT_mgd77track (void *V_API, int mode, void *args) {
 	
 	n_paths = MGD77_Path_Expand (GMT, &M, options, &list);	/* Get list of requested IDs */
 
-	if (n_paths == 0) {
+	if (n_paths <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: No cruises given\n");
 		Return (GMT_NO_INPUT);
 	}
@@ -631,7 +631,7 @@ int GMT_mgd77track (void *V_API, int mode, void *args) {
 	use = (M.original) ? MGD77_ORIG : MGD77_REVISED;
 		
 	if (gmt_M_err_pass (GMT, gmt_map_setup (GMT, GMT->common.R.wesn), "")) {
-		MGD77_Path_Free (GMT, n_paths, list);
+		MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 		Return (GMT_PROJECTION_ERROR);
 	}
 	
@@ -794,10 +794,10 @@ int GMT_mgd77track (void *V_API, int mode, void *args) {
 					angle += 90.0;
 				else
 					angle -= 90.0;
-				if (annot_tick[ANNOT] & 1) {	/* Time mark */
-					gmtlib_gcal_from_dt (GMT, annot_time[ANNOT], &calendar);			/* Convert t to a complete calendar structure */
+				if (annot_tick[ANNOT] & 1) {	/* Time mark: Must subtack the annot_int_time since we already incremented it above */
+					gmtlib_gcal_from_dt (GMT, annot_time[ANNOT]-info[ANNOT]->annot_int_time, &calendar);	/* Convert t to a complete calendar structure */
 					gmt_format_calendar (GMT, the_date, the_clock, &GMT->current.plot.calclock.date, &GMT->current.plot.calclock.clock,
-					                     false, 1, annot_time[ANNOT]);
+					                     false, 1, annot_time[ANNOT]-info[ANNOT]->annot_int_time);
 					this_julian = calendar.day_y;
 					if (this_julian != last_julian) {
 						mrk = MGD77TRACK_MARK_NEWDAY;
@@ -880,7 +880,7 @@ int GMT_mgd77track (void *V_API, int mode, void *args) {
 	
 	GMT_Report (API, GMT_MSG_VERBOSE, "Plotted %d cruises\n", n_cruises);
 
-	MGD77_Path_Free (GMT, n_paths, list);
+	MGD77_Path_Free (GMT, (uint64_t)n_paths, list);
 	MGD77_end (GMT, &M);
 	
 	Return (GMT_NOERROR);
diff --git a/src/misc/dimfilter.c b/src/misc/dimfilter.c
index 39a2c62..9ac687e 100644
--- a/src/misc/dimfilter.c
+++ b/src/misc/dimfilter.c
@@ -1,5 +1,5 @@
 /*
- * $Id: dimfilter.c 18171 2017-05-07 02:37:02Z pwessel $
+ * $Id: dimfilter.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  * dimfilter.c  reads a grdfile and creates filtered grd file
  *
@@ -273,7 +273,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct DIMFILTER_CTRL *Ctrl, struct G
 
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->In.file, "Syntax error: Must specify input file\n");
 	if (!Ctrl->Q.active) {
-		//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
 		n_errors += gmt_M_check_condition (GMT, GMT->common.R.active[ISET] && (GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0), "Syntax error -I option: Must specify positive increment(s)\n");
 		n_errors += gmt_M_check_condition (GMT, !Ctrl->G.file, "Syntax error -G option: Must specify output file\n");
 		n_errors += gmt_M_check_condition (GMT, Ctrl->F.width <= 0.0, "Syntax error -F option: Correct syntax: -FX<width>, with X one of bcgmp, width is filter fullwidth\n");
diff --git a/src/nearneighbor.c b/src/nearneighbor.c
index 60ab022..a406cf8 100644
--- a/src/nearneighbor.c
+++ b/src/nearneighbor.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: nearneighbor.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: nearneighbor.c 18432 2017-06-22 00:20:07Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -149,9 +149,10 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	GMT_Option (API, "di,e,f,h,i");
 	if (gmt_M_showusage (API)) {
 		GMT_Message (API, GMT_TIME_NONE, "\t-n+b<BC> Set boundary conditions.  <BC> can be either:\n");
-		GMT_Message (API, GMT_TIME_NONE, "\t   g for geographic boundary conditions, or one or both of\n");
-		GMT_Message (API, GMT_TIME_NONE, "\t   x for periodic boundary conditions on x,\n");
-		GMT_Message (API, GMT_TIME_NONE, "\t   y for periodic boundary conditions on y.\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t   g for geographic, p for periodic, and n for natural boundary conditions.\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t   For p and n you may optionally append x or y [default is both]:\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t     x applies the boundary condition for x only\n");
+		GMT_Message (API, GMT_TIME_NONE, "\t     y applies the boundary condition for y only\n");
 		GMT_Message (API, GMT_TIME_NONE, "\t   [Default: Natural conditions, unless grid is geographic].\n");
 	}
 	GMT_Option (API, "r,s,:,.");
@@ -240,8 +241,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct NEARNEIGHBOR_CTRL *Ctrl, struc
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	if (Ctrl->N.active && Ctrl->N.mode) {	/* For Natural NN gridding we cannot have stray options */
@@ -426,13 +425,13 @@ int GMT_nearneighbor (void *V_API, int mode, void *args) {
 		for (row = row_0 - d_row; row <= row_end; row++) {
 
 			jj = row;
-			if (gmt_y_out_of_bounds (GMT, &jj, Grid->header, &wrap_180)) continue;	/* Outside y-range */
+			if (gmt_y_out_of_bounds (GMT, &jj, Grid->header, &wrap_180)) continue;	/* Outside y-range.  This call must happen BEFORE gmt_x_out_of_bounds as it sets wrap_180 */
 			rowu = jj;
 			col_end = col_0 + d_col[jj];
 			for (col = col_0 - d_col[jj]; col <= col_end; col++) {
 
 				ii = col;
-				if (gmt_x_out_of_bounds (GMT, &ii, Grid->header, wrap_180)) continue;	/* Outside x-range */ 
+				if (gmt_x_out_of_bounds (GMT, &ii, Grid->header, wrap_180)) continue;	/* Outside x-range,  This call must happen AFTER gmt_y_out_of_bounds which sets wrap_180 */  
 
 				/* Here, (ii,jj) [both are >= 0] is index of a node (kk) inside the grid */
 				colu = ii;
diff --git a/src/postscriptlight.c b/src/postscriptlight.c
index 666cd92..484d7eb 100644
--- a/src/postscriptlight.c
+++ b/src/postscriptlight.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: postscriptlight.c 18205 2017-05-09 21:01:41Z pwessel $
+ *	$Id: postscriptlight.c 18428 2017-06-21 23:51:36Z pwessel $
  *
  *	Copyright (c) 2009-2017 by P. Wessel and R. Scharroo
  *
@@ -131,6 +131,12 @@
 #	include <unistd.h>
 #endif
 
+#ifdef __CYGWIN__	/* See http://gmt.soest.hawaii.edu/boards/1/topics/5428 */
+#ifdef __x86_64
+#define lrint(x) ((long int)(int)lrint(x))
+#endif
+#endif
+
 /*
  * Windows headers
  */
@@ -367,6 +373,8 @@ static struct PSL_FONT PSL_standard_fonts[PSL_N_STANDARD_FONTS] = {
 #define PSL_SYMBOL_FONT		12
 #define PSL_CHUNK		2048
 
+#define PSL_CLOSE_INTERIOR	16
+
 /* Indices for use with PSL->current.sup_up[] */
 #define PSL_LC	0
 #define PSL_UC	1
@@ -1252,7 +1260,8 @@ static unsigned char *psl_deflate_encode (struct PSL_CTRL *PSL, size_t *nbytes,
 
 	/* Return number of output bytes and output buffer */
 	olen = olen - strm.avail_out; /* initial size - size left */
-	PSL_message (PSL, PSL_MSG_LONG_VERBOSE, "DEFLATE compressed %" PRIu64 " to %" PRIu64 " bytes (%.1f%% savings at compression level %d)\n", ilen, olen, 100.0f*(1.0f-(float)olen/ilen), level == Z_DEFAULT_COMPRESSION ? 6 : level);
+	PSL_message (PSL, PSL_MSG_LONG_VERBOSE, "DEFLATE compressed %" PRIuS " to %" PRIuS " bytes (%.1f%% savings at compression level %d)\n",
+		ilen, olen, 100.0f*(1.0f-(float)olen/ilen), level == Z_DEFAULT_COMPRESSION ? 6 : level);
 	*nbytes = olen;
 	return output;
 
@@ -3379,7 +3388,7 @@ static psl_indexed_image_t psl_makecolormap (struct PSL_CTRL *PSL, unsigned char
 		return (NULL);
 	}
 
-	PSL_message (PSL, PSL_MSG_VERBOSE, "Colormap of %" PRIu64 " colors created\n", colormap->ncolors);
+	PSL_message (PSL, PSL_MSG_VERBOSE, "Colormap of %" PRIuS " colors created\n", colormap->ncolors);
 	return (image);
 }
 
@@ -3694,18 +3703,21 @@ int PSL_beginclipping (struct PSL_CTRL *PSL, double *x, double *y, int n, double
 	 *        3 = this is the complete clipping path (start to end)
 	 * 	  Add 4 to omit use even-odd clipping [nonzero-winding rule].
 	 */
-
 	if (flag & 1) {	/* First segment in (possibly multi-segmented) clip-path */
 		PSL_comment (PSL, "Start of polygon clip path\n");
 		PSL_command (PSL, "clipsave\n");
 	}
 
-	if (n > 0) PSL_plotline (PSL, x, y, n, PSL_MOVE);	/* Must not close path since first point not given ! */
+	if (n > 0) {
+		int close_interior = 0;
+		if ((flag & 3) != 3) close_interior = PSL_CLOSE_INTERIOR;
+		PSL_plotline (PSL, x, y, n, PSL_MOVE | close_interior);	/* Must not close path since first point not given ! */
+	}
 
 	if (flag & 2) {	/* End path and [optionally] fill */
 		if (!PSL_eq(rgb[0],-1.0)) PSL_command (PSL, "V %s eofill U ", psl_putcolor (PSL, rgb));
 		PSL->current.nclip++;
-		PSL_command (PSL, (flag & 4) ? "PSL_eoclip\n" : "PSL_clip N\n");
+		PSL_command (PSL, (flag & 4) ? "PSL_eoclip N\n" : "PSL_clip N\n");
 		PSL_comment (PSL, "End of polygon clip path.  Polygon clipping is currently ON\n");
 	}
 	return (PSL_NO_ERROR);
@@ -3759,7 +3771,7 @@ int PSL_plotcolorimage (struct PSL_CTRL *PSL, double x, double y, double xsize,
 		nbits = psl_bitreduce (PSL, image->buffer, nx, ny, image->colormap->ncolors);
 
 		PSL_comment (PSL, "Start of indexed %s image [%d bit]\n", colorspace[id], nbits);
-		PSL_command (PSL, "V N %d %d T %d %d scale [/Indexed /Device%s %" PRIu64 " <\n", psl_ix(PSL, x), psl_iy(PSL, y), psl_iz (PSL, xsize), psl_iz (PSL, ysize), colorspace[id], image->colormap->ncolors - 1);
+		PSL_command (PSL, "V N %d %d T %d %d scale [/Indexed /Device%s %" PRIuS " <\n", psl_ix(PSL, x), psl_iy(PSL, y), psl_iz (PSL, xsize), psl_iz (PSL, ysize), colorspace[id], image->colormap->ncolors - 1);
 		psl_stream_dump (PSL, &image->colormap->colors[0][0], (int)image->colormap->ncolors, 1, 24, 0, PSL_HEX, 2);
 		PSL_command (PSL, ">] setcolorspace\n<< /ImageType %s /Decode [0 %d] ", type[it], (1<<nbits)-1);
 		psl_stream_dump (PSL, image->buffer, nx, ny, nbits, PSL->internal.compress, PSL_ASCII85, 0);
@@ -4098,7 +4110,7 @@ int PSL_plotline (struct PSL_CTRL *PSL, double *x, double *y, int n, int type) {
 	 * (but only if this segment runs start to finish)
 	 */
 
-	if (n > 1 && (type & PSL_MOVE) && (ix[0] == ix[n-1] && iy[0] == iy[n-1])) {n--; type |= PSL_CLOSE;}
+	if (n > 1 && (type & PSL_MOVE) && (ix[0] == ix[n-1] && iy[0] == iy[n-1]) && (type & PSL_CLOSE_INTERIOR) == 0) {n--; type |= PSL_CLOSE;}
 
 	if (type & PSL_MOVE) {
 		PSL_command (PSL, "%d %d M\n", ix[0], iy[0]);
diff --git a/src/postscriptlight.h b/src/postscriptlight.h
index cb20098..2c1806d 100644
--- a/src/postscriptlight.h
+++ b/src/postscriptlight.h
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: postscriptlight.h 18068 2017-04-29 21:40:52Z pwessel $
+ *	$Id: postscriptlight.h 18428 2017-06-21 23:51:36Z pwessel $
  *
  *	Copyright (c) 2009-2017 by P. Wessel and R. Scharroo
  *
@@ -140,6 +140,7 @@ enum PSL_enum_const {PSL_CM	= 0,
 	PSL_RLE			= 1,
 	PSL_LZW			= 2,
 	PSL_DEFLATE		= 3,
+	PSL_EO_CLIP		= 4,
 	PSL_NO			= 0,
 	PSL_YES			= 1,
 	PSL_FWD			= 0,
diff --git a/src/potential/gmtflexure.c b/src/potential/gmtflexure.c
index d45220f..9124289 100644
--- a/src/potential/gmtflexure.c
+++ b/src/potential/gmtflexure.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtflexure.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: gmtflexure.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -1297,7 +1297,7 @@ int GMT_gmtflexure (void *V_API, int mode, void *args) {
 		double scale = (Ctrl->M.active[1]) ? 1000.0 : 1.0;	/* Either got Te in km or m */
 		double d_min = DBL_MAX, d_max = 0.0;
 		GMT_Report (API, GMT_MSG_VERBOSE, "Processing input Te or Rigidity table data\n");
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((E = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_LINE, GMT_READ_NORMAL, NULL, Ctrl->E.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -1305,7 +1305,7 @@ int GMT_gmtflexure (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 2 are needed\n", Ctrl->E.file, (int)E->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		for (tbl = 0; tbl < E->n_tables; tbl++) {
 			for (seg = 0; seg < E->table[tbl]->n_segments; seg++) {
 				S = E->table[tbl]->segment[seg];	/* Current segment */
@@ -1365,7 +1365,7 @@ int GMT_gmtflexure (void *V_API, int mode, void *args) {
 	}
 
 	if (Ctrl->T.active && Ctrl->T.file)	{	/* Read pre-existing deflections */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((T = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_LINE, GMT_READ_NORMAL, NULL, Ctrl->T.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -1373,7 +1373,7 @@ int GMT_gmtflexure (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 2 are needed\n", Ctrl->T.file, (int)T->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		if (T->n_tables != E->n_tables || T->n_segments != E->n_segments || T->n_records != E->n_records) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Number of pre-existing deflection records is not correct!\n");
 			Return (API->error);
diff --git a/src/potential/gmtgravmag3d.c b/src/potential/gmtgravmag3d.c
index 47eb8d7..913840b 100644
--- a/src/potential/gmtgravmag3d.c
+++ b/src/potential/gmtgravmag3d.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtgravmag3d.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: gmtgravmag3d.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -459,12 +459,12 @@ int GMT_gmtgravmag3d (void *V_API, int mode, void *args) {
 	if (Ctrl->T.triangulate) { 	/* Read triangle file output from triangulate */
 		if ((retval = read_xyz (GMT, Ctrl, Ctrl->T.xyz_file, &lon_0, &lat_0)) < 0 ) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Cannot open file %s\n", Ctrl->T.xyz_file);
-			return (GMT_ERROR_ON_FOPEN);
+			Return (GMT_ERROR_ON_FOPEN);
 		}
 		/* read vertex file */
 		if ((retval = read_t (GMT, Ctrl->T.t_file)) < 0 ) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Cannot open file %s\n", Ctrl->T.t_file);
-			return (GMT_ERROR_ON_FOPEN);
+			Return (GMT_ERROR_ON_FOPEN);
 		}
 		ndata_t = retval;
 
@@ -476,7 +476,7 @@ int GMT_gmtgravmag3d (void *V_API, int mode, void *args) {
 	else if (Ctrl->T.stl) { 	/* Read STL file defining a closed volume */
 		if ( (retval = read_stl (GMT, Ctrl->T.stl_file, Ctrl->D.dir)) < 0 ) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Cannot open file %s\n", Ctrl->T.stl_file);
-			return (GMT_ERROR_ON_FOPEN);
+			Return (GMT_ERROR_ON_FOPEN);
 		}
 		ndata_s = retval;
 		/*n_swap = check_triang_cw (ndata_s, 1);*/
@@ -484,7 +484,7 @@ int GMT_gmtgravmag3d (void *V_API, int mode, void *args) {
 	else if (Ctrl->T.raw) { 	/* Read RAW file defining a closed volume */
 		if ( (retval = read_raw (GMT, Ctrl->T.raw_file, Ctrl->D.dir)) < 0 ) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Cannot open file %s\n", Ctrl->T.raw_file);
-			return (GMT_ERROR_ON_FOPEN);
+			Return (GMT_ERROR_ON_FOPEN);
 		}
 		ndata_r = retval;
 		/*n_swap = check_triang_cw (ndata_r, 1);*/
diff --git a/src/potential/gpsgridder.c b/src/potential/gpsgridder.c
index 8194311..98ed1ec 100644
--- a/src/potential/gpsgridder.c
+++ b/src/potential/gpsgridder.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gpsgridder.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: gpsgridder.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -719,7 +719,7 @@ int GMT_gpsgridder (void *V_API, int mode, void *args) {
 		}
 	}
 	else if (Ctrl->N.active) {	/* Read output locations from file */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((Nin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -727,7 +727,7 @@ int GMT_gpsgridder (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 2 are needed\n", Ctrl->N.file, (int)Nin->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		T = Nin->table[0];
 	}
 	else {	/* Fill in an equidistant output table or grid */
diff --git a/src/potential/grdredpol.c b/src/potential/grdredpol.c
index 6e8368d..606f78c 100644
--- a/src/potential/grdredpol.c
+++ b/src/potential/grdredpol.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdredpol.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdredpol.c 18334 2017-06-07 19:25:56Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -22,7 +22,7 @@
  * computes the continuous reduction to the pole (RTP) anomaly by calculating the
  * filter coefficients in the frequency, inverse FT and convolve in space domain.
  * For details on the method see, Luis, J.F and J.M. Miranda (2008), 
- * "Reevaluation of magnetic chrons in the North Atlantic between 35�N and 47�N: 
+ * "Reevaluation of magnetic chrons in the North Atlantic between 35N and 47N: 
  * Implications for the formation of the Azores Triple Junction and associated plateau, 
  * J. Geophys. Res., 113, B10105, doi:10.1029/2007JB005573 
  *
diff --git a/src/potential/grdseamount.c b/src/potential/grdseamount.c
index aaa61d8..11b0eef 100644
--- a/src/potential/grdseamount.c
+++ b/src/potential/grdseamount.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdseamount.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: grdseamount.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -311,7 +311,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDSEAMOUNT_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
 	n_errors += gmt_M_check_condition (GMT, Ctrl->C.mode == SHAPE_DISC && Ctrl->F.active, "Warning: Cannot specify -F for discs; ignored\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->A.active && (Ctrl->N.active || Ctrl->Z.active || Ctrl->L.active || Ctrl->T.active), "Syntax error -A option: Cannot use -L, -N, -T or -Z with -A\n");
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
diff --git a/src/potential/talwani2d.c b/src/potential/talwani2d.c
index c4492f2..2651fad 100644
--- a/src/potential/talwani2d.c
+++ b/src/potential/talwani2d.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: talwani2d.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: talwani2d.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -28,15 +28,15 @@
  * Based on methods by:
  *
  * Chapman, M. E. (1979), Techniques for interpretation of geoid
- *    anomalies, J. Geophys. Res., 84(B8), 3793–3801.
+ *    anomalies, J. Geophys. Res., 84(B8), 3793-3801.
  * Kim, S.-S., and P. Wessel, New analytic solutions for modeling
  *    vertical gravity gradient anomalies, Geochem. Geophys. Geosyst.,
  *    17, 2016, doi:10.1002/2016GC006263. [for VGG]
  * Rasmussen, R., and L. B. Pedersen (1979), End corrections in
- *   potential field modeling, Geophys. Prospect., 27, 749–760.
+ *   potential field modeling, Geophys. Prospect., 27, 749-760.
  * Talwani, M., J. L. Worzel, and M. Landisman (1959), Rapid gravity
  *    computations for two-dimensional bodies with application to
- *    the Mendocino submarine fracture zone, J. Geophys. Res., 64, 49–59.
+ *    the Mendocino submarine fracture zone, J. Geophys. Res., 64, 49-59.
  *
  * Accelerated with OpenMP; see -x.
  */
@@ -590,7 +590,7 @@ int GMT_talwani2d (void *V_API, int mode, void *args) {
 	}
 	else {	/* Got a dataset with output locations */
 		geometry = GMT_IS_PLP;	/* We don't really know */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((Out = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_PLP, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -598,7 +598,7 @@ int GMT_talwani2d (void *V_API, int mode, void *args) {
 			gmt_adjust_dataset (GMT, Out, 2U);
 			geometry = GMT_IS_LINE;	/* Since we are making from scratch */
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 	}
 
 	/* Specify input expected columns to be at least 2 */
diff --git a/src/potential/talwani3d.c b/src/potential/talwani3d.c
index 0d8984d..94f46b7 100644
--- a/src/potential/talwani3d.c
+++ b/src/potential/talwani3d.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: talwani3d.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: talwani3d.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -209,7 +209,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct TALWANI3D_CTRL *Ctrl, struct G
 		}
 	}
 	if (GMT->common.R.active[RSET]) {
-		//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);	/* If -R<grdfile> was given we may get incs unless -I was used */
 		n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[ISET],
 		                                 "Syntax error -R option: Must specify both -R and -I (and optionally -r)\n");
 	}
@@ -754,14 +753,14 @@ int GMT_talwani3d (void *V_API, int mode, void *args) {
 		if (gmt_M_is_geographic (GMT, GMT_IN)) lat = 0.5 * (G->header->wesn[YLO] + G->header->wesn[YHI]);
 	}
 	else {	/* Got a dataset with output locations via -N */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from the -N file */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from the -N file */
 		if ((D = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL)
 			Return (API->error);
 		if (D->n_columns < 2) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 2 are needed\n", Ctrl->N.file, (int)D->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		if (gmt_M_is_geographic (GMT, GMT_IN)) lat = 0.5 * (D->min[GMT_Y] + D->max[GMT_Y]);
 	}
 	
diff --git a/src/psbasemap.c b/src/psbasemap.c
index 225b036..9c3c154 100644
--- a/src/psbasemap.c
+++ b/src/psbasemap.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psbasemap.c 18055 2017-04-28 17:46:38Z pwessel $
+ *	$Id: psbasemap.c 18304 2017-06-02 04:58:28Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -85,7 +85,7 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	gmt_show_name_and_purpose (API, THIS_MODULE_LIB, THIS_MODULE_NAME, THIS_MODULE_PURPOSE);
 	if (level == GMT_MODULE_PURPOSE) return (GMT_NOERROR);
 	GMT_Message (API, GMT_TIME_NONE, "usage: psbasemap %s %s [%s]\n", GMT_J_OPT, GMT_Rgeoz_OPT, GMT_B_OPT);
-	GMT_Message (API, GMT_TIME_NONE, "\t[-A[<file>]] [-D%s |\n\t-D%s] [%s]\n", GMT_INSERT_A, GMT_INSERT_A, GMT_Jz_OPT);
+	GMT_Message (API, GMT_TIME_NONE, "\t[-A[<file>]] [-D%s |\n\t-D%s] [%s]\n", GMT_INSERT_A, GMT_INSERT_B, GMT_Jz_OPT);
 	GMT_Message (API, GMT_TIME_NONE, "\t[%s] [-K]\n", GMT_PANEL);
 	GMT_Message (API, GMT_TIME_NONE, "\t[-L%s]\n", GMT_SCALE);
 	GMT_Message (API, GMT_TIME_NONE, "\t[-O] [-P] [-Td%s]\n", GMT_TROSE_DIR);
diff --git a/src/psclip.c b/src/psclip.c
index da8e267..0c39e1b 100644
--- a/src/psclip.c
+++ b/src/psclip.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psclip.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: psclip.c 18428 2017-06-21 23:51:36Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -245,7 +245,7 @@ int GMT_psclip (void *V_API, int mode, void *args) {
 	gmt_map_basemap (GMT);
 
 	if (!Ctrl->C.active) {	/* Start new clip_path */
-		unsigned int tbl, first = (Ctrl->N.active) ? 0 : 1;
+		unsigned int tbl, first = (Ctrl->N.active) ? 0 : 1, eo_flag = 0;
 		bool duplicate;
 		uint64_t row, seg, n_new;
 		struct GMT_DATASET *D = NULL;
@@ -258,7 +258,10 @@ int GMT_psclip (void *V_API, int mode, void *args) {
 #endif
 
 		GMT_Report (API, GMT_MSG_VERBOSE, "Processing input table data\n");
-		if (Ctrl->N.active) gmt_map_clip_on (GMT, GMT->session.no_rgb, 1);	/* Must clip map */
+		if (Ctrl->N.active) {	/* Must clip map */
+			eo_flag = PSL_EO_CLIP;	/* Do odd/even clipping when we first lay down the map perimeter */
+			gmt_map_clip_on (GMT, GMT->session.no_rgb, 1 + eo_flag);
+		}
 		if (!Ctrl->T.active) {
 			if (GMT_Init_IO (API, GMT_IS_DATASET, GMT_IS_POLY, GMT_IN, GMT_ADD_DEFAULT, 0, options) != GMT_NOERROR) {
 				Return (API->error);	/* Register data input */
@@ -303,7 +306,7 @@ int GMT_psclip (void *V_API, int mode, void *args) {
 		}
 
 		/* Finalize the composite polygon clip path */
-		PSL_beginclipping (PSL, NULL, NULL, 0, GMT->session.no_rgb, 2 + first);
+		PSL_beginclipping (PSL, NULL, NULL, 0, GMT->session.no_rgb, 2 + first + eo_flag);
 	}
 
 	gmt_plane_perspective (GMT, -1, 0.0);
diff --git a/src/pscoast.c b/src/pscoast.c
index c700599..e54d3ec 100644
--- a/src/pscoast.c
+++ b/src/pscoast.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: pscoast.c 17831 2017-03-31 22:28:43Z pwessel $
+ *	$Id: pscoast.c 18244 2017-05-28 05:19:29Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -509,11 +509,16 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct PSCOAST_CTRL *Ctrl, struct GMT
 		if (GMT->common.R.active[RSET])
 			GMT_Report (API, GMT_MSG_VERBOSE, "Warning -E option: The -R option overrides the region found via -E.\n");
 		else {	/* Pick up region from chosen polygons */
+			unsigned int range = GMT->current.io.geo.range;	/* Old setting */
 			(void) gmt_DCW_operation (GMT, &Ctrl->E.info, GMT->common.R.wesn, GMT_DCW_REGION);
 			GMT->common.R.active[RSET] = true;
 			if (Ctrl->E.info.report || (!GMT->common.J.active && !Ctrl->M.active)) {	/* +w OR No plotting or no dumping means just return the -R string */
 				char record[GMT_BUFSIZ] = {"-R"}, text[GMT_LEN64] = {""};
 				size_t i, j;
+				if (GMT->common.R.wesn[XLO] < 0.0 && GMT->common.R.wesn[XHI] > 0.0)
+					GMT->current.io.geo.range = GMT_IS_M180_TO_P180_RANGE;
+				else
+					GMT->current.io.geo.range = GMT_IS_0_TO_P360_RANGE;
 				gmt_ascii_format_col (GMT, text, GMT->common.R.wesn[XLO], GMT_OUT, GMT_X);	strcat (record, text);	strcat (record, "/");
 				gmt_ascii_format_col (GMT, text, GMT->common.R.wesn[XHI], GMT_OUT, GMT_X);	strcat (record, text);	strcat (record, "/");
 				gmt_ascii_format_col (GMT, text, GMT->common.R.wesn[YLO], GMT_OUT, GMT_Y);	strcat (record, text);	strcat (record, "/");
@@ -537,8 +542,10 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct PSCOAST_CTRL *Ctrl, struct GMT
 				if (GMT_End_IO (API, GMT_OUT, 0) != GMT_NOERROR) {	/* Disables further data output */
 					return (API->error);
 				}
+				GMT->current.io.geo.range = range;	/* Reset to what it was */
 				return NOT_REALLY_AN_ERROR;	/* To return with "error" but then exit with 0 error */
 			}
+			GMT->current.io.geo.range = range;	/* Reset to what it was */
 		}
 	}
 
diff --git a/src/psconvert.c b/src/psconvert.c
index e54750c..724a006 100644
--- a/src/psconvert.c
+++ b/src/psconvert.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psconvert.c 18144 2017-05-06 03:36:15Z pwessel $
+ *	$Id: psconvert.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -349,15 +349,12 @@ GMT_LOCAL int parse_A_settings (struct GMT_CTRL *GMT, char *arg, struct PS2RASTE
 GMT_LOCAL int parse_GE_settings (struct GMT_CTRL *GMT, char *arg, struct PS2RASTER_CTRL *C) {
 	/* Syntax: -W[+g][+k][+t<doctitle>][+n<layername>][+a<altmode>][+l<lodmin>/<lodmax>] */
 
-	bool error = false;
-	unsigned int pos = 0;
-	char txt[GMT_LEN256] = {""}, p[GMT_LEN256] = {""};
+	unsigned int pos = 0, error = 0;
+	char p[GMT_LEN256] = {""};
 	gmt_M_unused(GMT);
 
 	C->W.active = true;
-	strncpy (txt, arg, GMT_LEN256-1);
-	gmt_handle5_plussign (GMT, txt, "agklnt", 0);	/* Hide any plus signs unless a recognized modifier */
-	while (!error && (gmt_strtok (txt, "+", &pos, p))) {
+	while (gmt_getmodopt (GMT, 'W', arg, "afgklnotu", &pos, p, &error) && error == 0) {	/* Looking for +a, etc */
 		switch (p[0]) {
 			case 'a':	/* Altitude setting */
 				switch (p[1]) {	/* Check which altitude mode we selected */
@@ -399,21 +396,20 @@ GMT_LOCAL int parse_GE_settings (struct GMT_CTRL *GMT, char *arg, struct PS2RAST
 				break;
 			case 'n':	/* Set KML document layer name */
 				gmt_M_str_free (C->W.overlayname);	/* Already set, free then reset */
-				C->W.overlayname = strdup (&p[1]);
-				gmt_handle5_plussign (GMT, C->W.overlayname, NULL, 1);	/* Recover any non-modifier plus signs */
+				C->W.overlayname = gmt_assign_text (GMT, p);
 				break;
 			case 'o':	/* Produce a KML overlay as a folder subset */
 				C->W.folder = true;
-				C->W.foldername = strdup (&p[1]);
+				gmt_M_str_free (C->W.foldername);	/* Already set, free then reset */
+				C->W.foldername = gmt_assign_text (GMT, p);
 				break;
 			case 't':	/* Set KML document title */
 				gmt_M_str_free (C->W.doctitle);	/* Already set, free then reset */
-				C->W.doctitle = strdup (&p[1]);
-				gmt_handle5_plussign (GMT, C->W.doctitle, NULL, 1);	/* Recover any non-modifier plus signs */
+				C->W.doctitle = gmt_assign_text (GMT, p);
 				break;
 			case 'u':	/* Specify a remote address for image */
 				gmt_M_str_free (C->W.URL);	/* Already set, free then reset */
-				C->W.URL = strdup (&p[1]);
+				C->W.URL = gmt_assign_text (GMT, p);
 				break;
 			default:
 				GMT_Report (C, GMT_MSG_NORMAL, "Syntax error -W+<opt>: Unrecognized option selection %c\n", p[1]);
@@ -463,8 +459,11 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	if (level == GMT_MODULE_PURPOSE) return (GMT_NOERROR);
 	GMT_Message (API, GMT_TIME_NONE, "usage: psconvert <psfile1> <psfile2> <...> -A[u][<margins>][-][+p[<pen>]][+g<fill>][+r][+s[m]|S<width[u]>[/<height>[u]]]\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t[-C<gs_command>] [-D<dir>] [-E<resolution>] [-F<out_name>] [-G<gs_path>] [-L<listfile>]\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t[-N] [-P] [-Q[g|t]1|2|4] [-S] [-Tb|e|E|f|F|g|G|j|m|s|t] [%s]\n", GMT_V_OPT);
-	GMT_Message (API, GMT_TIME_NONE, "\t[-W[+a<mode>[<alt]][+f<minfade>/<maxfade>][+g][+k][+l<lodmin>/<lodmax>][+n<name>][+o<folder>][+t<title>][+u<URL>]]\n\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t[-P] [-Q[g|t]1|2|4] [-S] [-Tb|e|E|f|F|g|G|j|m|s|t] [%s]\n", GMT_V_OPT);
+	GMT_Message (API, GMT_TIME_NONE, "\t[-W[+a<mode>[<alt]][+f<minfade>/<maxfade>][+g][+k][+l<lodmin>/<lodmax>][+n<name>][+o<folder>][+t<title>][+u<URL>]]\n");
+	if (API->GMT->current.setting.run_mode == GMT_CLASSIC)
+		GMT_Message (API, GMT_TIME_NONE, "\t[-Z]\n");
+	GMT_Message (API, GMT_TIME_NONE, "\n");
 
 	if (level == GMT_SYNOPSIS) return (GMT_MODULE_SYNOPSIS);
 
@@ -581,7 +580,9 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	GMT_Message (API, GMT_TIME_NONE, "\t   +t<doctitle> sets the document name [\"GMT KML Document\"].\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t   +u<URL> prepands this URL to the name of the image referenced in the\n");
 	GMT_Message (API, GMT_TIME_NONE, "\t     KML [local file].\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t-Z Remove input PostScript file(s) after successful conversion.\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t   Escape any +? modifier inside strings with \\.\n");
+	if (API->GMT->current.setting.run_mode == GMT_CLASSIC)
+		GMT_Message (API, GMT_TIME_NONE, "\t-Z Remove input PostScript file(s) after successful conversion.\n");
 
 	return (GMT_MODULE_USAGE);
 }
@@ -731,7 +732,12 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct PS2RASTER_CTRL *Ctrl, struct G
 				break;
 
 			case 'Z':
-				Ctrl->Z.active = true;
+				if (GMT->current.setting.run_mode == GMT_CLASSIC)
+					Ctrl->Z.active = true;
+				else {
+					GMT_Report (GMT->parent, GMT_MSG_NORMAL, "Error: The -Z option is not available in MODERN mode!\n");
+					n_errors++;
+				}
 				break;
 
 			default:	/* Report bad options */
@@ -1511,7 +1517,8 @@ int GMT_psconvert (void *V_API, int mode, void *args) {
 				unsigned int kk;
 				GMT_Report (API, GMT_MSG_NORMAL, "Unable to create a temporary file\n");
 				if (file_processing) {fclose (fp);	fp = NULL;}	/* Close original PS file */
-				if (delete) gmt_remove_file (GMT, ps_file);	/* Since we created a temporary file from the memdata */
+				if (delete && gmt_remove_file (GMT, ps_file))	/* Since we created a temporary file from the memdata */
+					Return (GMT_RUNTIME_ERROR);
 				if (!Ctrl->L.active)			/* Otherwise ps_names contents are the Garbageman territory */
 					for (kk = 0; kk < Ctrl->In.n_files; kk++) gmt_M_str_free (ps_names[kk]);
 				gmt_M_free (GMT, ps_names);
diff --git a/src/pshistogram.c b/src/pshistogram.c
index 0d62310..16f29fe 100644
--- a/src/pshistogram.c
+++ b/src/pshistogram.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: pshistogram.c 18189 2017-05-08 09:26:48Z pwessel $
+ *	$Id: pshistogram.c 18328 2017-06-07 04:43:45Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -301,7 +301,8 @@ GMT_LOCAL double plot_boxes (struct GMT_CTRL *GMT, struct PSL_CTRL *PSL, struct
 			}
 			else if (cpt) {
 				index = gmt_get_rgb_from_z (GMT, P, xval, rgb);
-				if ((index >= 0 && (f = P->data[index].fill) != NULL) || (index < 0 && (f = P->bfn[index+3].fill) != NULL))	/* Pattern */
+				f = gmt_M_get_cptslice_pattern (P,index);
+				if (f)	/* Pattern */
 					gmt_setfill (GMT, f, draw_outline);
 				else
 					PSL_setfill (PSL, rgb, draw_outline);
@@ -833,6 +834,7 @@ int GMT_pshistogram (void *V_API, int mode, void *args) {
 			if ((D = GMT_Create_Data (API, GMT_IS_DATASET, GMT_IS_NONE, 0, dim, NULL, NULL, 0, 0, NULL)) == NULL) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Unable to create a data set for histogram\n");
 				gmt_M_free (GMT, data);		gmt_M_free (GMT, F.boxh);
+				if (F.weights) gmt_M_free (GMT, weights);	
 				Return (API->error);
 			}
 			if ((error = gmt_set_cols (GMT, GMT_OUT, 2)) != GMT_NOERROR) {
@@ -935,6 +937,7 @@ int GMT_pshistogram (void *V_API, int mode, void *args) {
 		if (GMT->current.proj.pars[0] == 0.0 && GMT->current.proj.pars[1] == 0.0) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Need to provide both x- and y-scale.\n");
 			gmt_M_free (GMT, data);
+			if (F.weights) gmt_M_free (GMT, weights);	
 			Return (GMT_RUNTIME_ERROR);
 		}
 	}
@@ -971,6 +974,7 @@ int GMT_pshistogram (void *V_API, int mode, void *args) {
 	else {
 		if (gmt_M_err_pass (GMT, gmt_map_setup (GMT, F.wesn), "")) {
 			gmt_M_free (GMT, data);
+			if (F.weights) gmt_M_free (GMT, weights);	
 			Return (GMT_PROJECTION_ERROR);
 		}
 	}
diff --git a/src/psimage.c b/src/psimage.c
index e71a765..0fc146a 100644
--- a/src/psimage.c
+++ b/src/psimage.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psimage.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: psimage.c 18254 2017-05-28 19:46:56Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -39,7 +39,7 @@ struct PSIMAGE_CTRL {
 		bool active;
 		char *file;
 	} In;
-	struct PSIMG_D {	/* -D[g|j|n|x]<refpoint>+w[-]<width>[/<height>][+j<justify>][+n<n_columns>[/<n_rows>]][+o<off[GMT_X]>[/<dy>]][+r<dpi>] */
+	struct PSIMG_D {	/* -D[g|j|n|x]<refpoint>+w[-]<width>[/<height>][+j<justify>][+n<n_columns>[/<n_rows>]][+o<dx>[/<dy>]][+r<dpi>] */
 		bool active;
 		struct GMT_REFPOINT *refpoint;
 		double off[2];
@@ -168,7 +168,7 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct PSIMAGE_CTRL *Ctrl, struct GMT
 					p_fail = true;
 					n_errors++;
 				}
-				else {	/* args are now [+j<justify>][+o<off[GMT_X]>[/<dy>]][+n<n_columns>[/<n_rows>]][+r<dpi>] */
+				else {	/* args are now [+j<justify>][+o<dx>[/<dy>]][+n<n_columns>[/<n_rows>]][+r<dpi>] */
 					if (gmt_validate_modifiers (GMT, Ctrl->D.refpoint->args, 'D', "jnorw")) n_errors++;
 					/* Required modifier +w OR +r */
 					if (gmt_get_modifier (Ctrl->D.refpoint->args, 'w', string)) {
diff --git a/src/psmask.c b/src/psmask.c
index eae6cd0..d78cfa8 100644
--- a/src/psmask.c
+++ b/src/psmask.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psmask.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: psmask.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -563,8 +563,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct PSMASK_CTRL *Ctrl, struct GMT_
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	if (Ctrl->C.active) {
 		n_errors += gmt_M_check_condition (GMT, GMT->common.B.active[0] || GMT->common.B.active[1], "Syntax error: Cannot specify -B option in -C mode\n");
 	}
diff --git a/src/psscale.c b/src/psscale.c
index 6767dbf..1a30ba7 100644
--- a/src/psscale.c
+++ b/src/psscale.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psscale.c 17882 2017-04-06 04:24:34Z pwessel $
+ *	$Id: psscale.c 18420 2017-06-21 21:26:52Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -597,14 +597,14 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 	unsigned int Label_justify, form, cap, join, n_xpos, nx = 0, ny = 0, nm, barmem, k, justify;
 	int this_just, p_val;
 	bool reverse, all = true, use_image, center = false, const_width = true, do_annot, use_labels, cpt_auto_fmt = true;
-	bool B_set = GMT->current.map.frame.draw, skip_lines = Ctrl->S.active;
+	bool B_set = GMT->current.map.frame.draw, skip_lines = Ctrl->S.active, need_image;
 	char format[GMT_LEN256] = {""}, text[GMT_LEN256] = {""}, test[GMT_LEN256] = {""}, unit[GMT_LEN256] = {""}, label[GMT_LEN256] = {""};
 	static char *method[2] = {"polygons", "colorimage"};
 	unsigned char *bar = NULL, *tmp = NULL;
 	double off, annot_off, label_off = 0.0, len, len2, size, x0, x1, dx, xx, dir, y_base, y_annot, y_label, xd = 0.0, yd = 0.0, xt = 0.0;
 	double z = 0.0, xleft, xright, inc_i, inc_j, start_val, stop_val, nan_off = 0.0, rgb[4], rrggbb[4], prev_del_z, this_del_z = 0.0;
 	double length = Ctrl->D.dim[GMT_X], width = Ctrl->D.dim[GMT_Y], gap = Ctrl->L.spacing, t_len, max_intens[2], xp[4], yp[4];
-	double *xpos = NULL;
+	double *xpos = NULL, elength[2] = {0.0, 0.0};
 	struct GMT_FILL *f = NULL;
 	struct GMT_PLOT_AXIS *A = NULL;
 	struct GMT_MAP_PANEL *panel = Ctrl->F.panel;	/* Shorthand */
@@ -711,7 +711,12 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 		use_image = P->is_continuous;
 	else	/* Auto mode */
 		use_image = (!P->has_pattern && gap <= 0.0 && (Ctrl->L.active || const_width || P->is_continuous));
+	/* So if CPT has pattern AND continuous color sections then use_image is false but we still need to do an image later */
+	need_image = (P->has_pattern && P->is_continuous);
 	GMT_Report (GMT->parent, GMT_MSG_DEBUG, "Color bar will be plotted using %s\n", method[use_image]);
+	
+	if (Ctrl->D.emode & (reverse+1)) elength[XLO] =  Ctrl->D.elength;
+	if (Ctrl->D.emode & (2-reverse)) elength[XHI] =  Ctrl->D.elength;
 
 	if ((gap >= 0.0 || Ctrl->L.interval) && !P->is_continuous) {	/* Want to center annotations for discrete colortable, using lower z0 value */
 		center = (Ctrl->L.interval || gap >= 0.0);
@@ -724,8 +729,9 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 	}
 	if (gap < 0.0) gap = 0.0;
 
-	if (use_image || Ctrl->I.active) {	/* Make bitimage for colorbar using Ctrl->N.dpi */
-		bool resample;
+	if (use_image || Ctrl->I.active || need_image) {	/* Make bitimage for colorbar using Ctrl->N.dpi */
+		bool resample, skip;
+		int index;
 		if (Ctrl->N.mode == N_FAVOR_IMAGE) {	/* Honor the given image dpi */
 			nx = (!use_image && gap > 0.0) ? P->n_colors : urint (length * Ctrl->N.dpi);
 			ny = urint (width * Ctrl->N.dpi);
@@ -746,12 +752,13 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 
 		for (i = 0; i < nx; i++) {
 			z = (resample) ? get_z (P, (i+0.5) * inc_i, z_width, P->n_colors) : P->data[i].z_low;
-			gmt_get_rgb_from_z (GMT, P, z, rrggbb);
+			index = gmt_get_rgb_from_z (GMT, P, z, rrggbb);
+			skip = gmt_M_skip_cptslice (P, index);	/* Don't what intensity shading if slice is to be skipped */
 			ii = (reverse) ? nx - i - 1 : i;
 			for (j = 0; j < ny; j++) {
 				gmt_M_rgb_copy (rgb, rrggbb);
 				k = j * nx + ii;
-				if (Ctrl->I.active) gmt_illuminate (GMT, max_intens[1] - j * inc_j, rgb);
+				if (Ctrl->I.active && !skip) gmt_illuminate (GMT, max_intens[1] - j * inc_j, rgb);
 				if (P->is_gray)	/* All gray, pick red */
 					bar[k] = gmt_M_u255 (rgb[0]);
 				else if (Ctrl->M.active)	/* Convert to gray using the gmt_M_yiq transformation */
@@ -811,13 +818,20 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 			dim[YHI] += 0.5 * GMT->current.setting.map_frame_pen.width / PSL_POINTS_PER_INCH;
 			if (v_off > dim[YHI]) dim[YHI] = v_off;
 			if (flip & PSSCALE_FLIP_UNIT) {	/* The y-label is on the left */
-				dim[XLO] +=MAX (u_off, 0.5*off);	/* Half the x-label may extend outside */
+				dim[XLO] += MAX (u_off, 0.5*off);	/* Half the x-label may extend outside */
 				dim[XHI] += 0.5*off;
 			}
 			else {	/* The y-label is on the right */
 				dim[XLO] += 0.5*off;
 				dim[XHI] += MAX (u_off, 0.5*off);	/* Half the x-label may extend outside */
 			}
+			/* Adjust width if there are +e extensions */
+			dim[XLO] += elength[XLO];
+			dim[XHI] += elength[XHI];
+			/* Adjust if there is +n NaNmarker */
+			if (Ctrl->D.emode & 4)	/* Add NaN rectangle on left side */
+				dim[XLO] += 2.0 * Ctrl->D.elength + gap + fabs (GMT->current.setting.map_annot_offset[GMT_PRIMARY]) + 3.25 * GMT_LET_WIDTH * GMT->current.setting.font_annot[GMT_PRIMARY].size / PSL_POINTS_PER_INCH;
+			
 			x_center = 0.5 * length + 0.5 * (dim[XHI] - dim[XLO]); y_center = 0.5 * width + 0.5 * (dim[YHI] - dim[YLO]);
 			panel->width = length + dim[XHI] + dim[XLO];	panel->height = width + dim[YHI] + dim[YLO];
 		}
@@ -853,6 +867,12 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 				dim[YLO] += h_off;
 				dim[YHI] += MAX (v_off, h_off);
 			}
+			/* Adjust width if there are +e extensions */
+			dim[YLO] += elength[XLO];
+			dim[YHI] += elength[XHI];
+			/* Adjust if there is +n NaNmarker */
+			if (Ctrl->D.emode & 4)	/* Add NaN rectangle on left side */
+				dim[YLO] += 2.0 * Ctrl->D.elength + gap + fabs (GMT->current.setting.map_annot_offset[GMT_PRIMARY]) + 1.75 * GMT_LET_HEIGHT * GMT->current.setting.font_annot[GMT_PRIMARY].size / PSL_POINTS_PER_INCH;
 			y_center = 0.5 * length + 0.5 * (dim[YHI] - dim[YLO]); x_center = 0.5 * width + 0.5 * (dim[XHI] - dim[XLO]);
 			panel->width = width + dim[XHI] + dim[XLO];	panel->height = length + dim[YHI] + dim[YLO];
 		}
@@ -894,7 +914,6 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 		yd = 0.5 * w * (s - 1.0);
 		xt = yd * 2.0 * Ctrl->D.elength / width;	/* Shift of triangle peak x-pos to maintain original angle theta */
 	}
-
 	/* Set up array with x-coordinates for the CPT z_lows + final z_high */
 	n_xpos = P->n_colors + 1;
 	xpos = gmt_M_memory (GMT, NULL, n_xpos, double);
@@ -908,13 +927,32 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 
 	depth = (Ctrl->M.active || P->is_gray) ? 8 : 24;
 	if (Ctrl->D.horizontal) {
-		if (use_image)	/* Must plot as image */
+		if (use_image)	/* Must plot entire bar as image */
+			PSL_plotcolorimage (PSL, 0.0, 0.0, length, width, PSL_BL, bar, nx, ny, depth);
+		else if (need_image) {	/* Some parts require image, we overwrite where patterns are needed */
 			PSL_plotcolorimage (PSL, 0.0, 0.0, length, width, PSL_BL, bar, nx, ny, depth);
-		else {			/* Plot as rectangles */
 			x0 = x1 = 0.0;
 			for (i = 0; i < P->n_colors; i++) {
 				ii = (reverse) ? P->n_colors - i - 1 : i;
 				x1 += z_width[ii];
+				if (P->data[ii].skip || (f = P->data[ii].fill) == NULL) {	/* Do not paint this slice at all */
+					x0 = x1;
+					continue;
+				}
+				gmt_setfill (GMT, f, center);	/* Set fill and paint box */
+				PSL_plotbox (PSL, x0+gap, 0.0, x1-gap, width);
+				x0 = x1;
+			}
+		}
+		else {			/* Plot all slices as rectangles */
+			x0 = x1 = 0.0;
+			for (i = 0; i < P->n_colors; i++) {
+				ii = (reverse) ? P->n_colors - i - 1 : i;
+				x1 += z_width[ii];
+				if (P->data[ii].skip) {	/* Do not paint this slice at all */
+					x0 = x1;
+					continue;
+				}
 				if ((f = P->data[ii].fill) != NULL)	/* Using pattern fills */
 					gmt_setfill (GMT, f, center);
 				else if (Ctrl->I.active) {
@@ -1091,9 +1129,9 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 		if (unit[0]) {	/* Add unit label */
 			form = gmt_setfont (GMT, &GMT->current.setting.font_annot[GMT_PRIMARY]);
 			if (flip & PSSCALE_FLIP_UNIT)	/* The y-label is on the left */
-				PSL_plottext (PSL, xleft  - Ctrl->D.elength - GMT->current.setting.map_annot_offset[GMT_PRIMARY], 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, 0.0, PSL_MR, form);
+				PSL_plottext (PSL, xleft  - elength[XLO] - GMT->current.setting.map_annot_offset[GMT_PRIMARY], 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, 0.0, PSL_MR, form);
 			else
-				PSL_plottext (PSL, xright + Ctrl->D.elength + GMT->current.setting.map_annot_offset[GMT_PRIMARY], 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, 0.0, PSL_ML, form);
+				PSL_plottext (PSL, xright + elength[XHI] + GMT->current.setting.map_annot_offset[GMT_PRIMARY], 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, 0.0, PSL_ML, form);
 		}
 		if (P->is_wrapping) {	/* Add cyclic glyph */
 			if (flip & PSSCALE_FLIP_UNIT)	/* The y-label is on the left so place cyclic glyph on right */
@@ -1107,11 +1145,33 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 		PSL_setorigin (PSL, width, 0.0, 90.0, PSL_FWD);
 		if (use_image)	/* Must plot with image */
 			PSL_plotcolorimage (PSL, 0.0, 0.0, length, width, PSL_BL, bar, nx, ny, depth);
-		else {			/* Plot as rectangles */
+		else if (need_image) {	/* Sme parts require image, overwrite the rest */
+			PSL_plotcolorimage (PSL, 0.0, 0.0, length, width, PSL_BL, bar, nx, ny, depth);
 			x0 = x1 = 0.0;
 			for (i = 0; i < P->n_colors; i++) {
 				ii = (reverse) ? P->n_colors - i - 1 : i;
 				x1 += z_width[ii];
+				if (P->data[ii].skip || (f = P->data[ii].fill) == NULL) {	/* Do not paint this slice at all */
+					x0 = x1;
+					continue;
+				}
+				gmt_setfill (GMT, f, center);	/* Set fill and paint box */
+				/* Must undo rotation so patterns remain aligned with original setup */
+				PSL_setorigin (PSL, x0 + gap, 0.0, -90.0, PSL_FWD);
+				PSL_plotbox (PSL, -width, 0.0, 0.0, x1 - x0 - 2.0 * gap);
+				PSL_setorigin (PSL, -(x0 + gap), 0.0, 90.0, PSL_INV);
+				x0 = x1;
+			}
+		}
+		else {			/* Plot all slices as rectangles */
+			x0 = x1 = 0.0;
+			for (i = 0; i < P->n_colors; i++) {
+				ii = (reverse) ? P->n_colors - i - 1 : i;
+				x1 += z_width[ii];
+				if (P->data[ii].skip) {	/* Do not paint this slice at all */
+					x0 = x1;
+					continue;
+				}
 				if ((f = P->data[ii].fill) != NULL)	/* Using pattern fills */
 					gmt_setfill (GMT, f, center);
 				else if (Ctrl->I.active) {
@@ -1346,9 +1406,9 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 		if (unit[0]) {	/* Add unit label */
 			form = gmt_setfont (GMT, &GMT->current.setting.font_annot[GMT_PRIMARY]);
 			if (flip & PSSCALE_FLIP_UNIT)	/* The y-label is on the bottom */
-				PSL_plottext (PSL, xleft  - GMT->current.setting.map_annot_offset[GMT_PRIMARY] - Ctrl->D.elength, 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, -90.0, PSL_TC, form);
+				PSL_plottext (PSL, xleft  - GMT->current.setting.map_annot_offset[GMT_PRIMARY] - elength[XLO], 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, -90.0, PSL_TC, form);
 			else
-				PSL_plottext (PSL, xright + GMT->current.setting.map_annot_offset[GMT_PRIMARY] + Ctrl->D.elength, 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, -90.0, PSL_BC, form);
+				PSL_plottext (PSL, xright + GMT->current.setting.map_annot_offset[GMT_PRIMARY] + elength[XHI], 0.5 * width, GMT->current.setting.font_annot[GMT_PRIMARY].size, unit, -90.0, PSL_BC, form);
 		}
 		if (P->is_wrapping) {	/* Add cyclic glyph */
 			if (flip & PSSCALE_FLIP_UNIT)	/* The y-label is on the left so place cyclic glyph on right */
@@ -1369,6 +1429,8 @@ GMT_LOCAL void gmt_draw_colorbar (struct GMT_CTRL *GMT, struct PSSCALE_CTRL *Ctr
 #define bailout(code) {gmt_M_free_options (mode); return (code);}
 #define Return(code) {Free_Ctrl (GMT, Ctrl); gmt_end_module (GMT, GMT_cpy); bailout (code);}
 
+EXTERN_MSC int gmtlib_parse_B_option (struct GMT_CTRL *GMT, char *in);
+
 int GMT_psscale (void *V_API, int mode, void *args) {
 	/* High-level function that implements the psscale task */
 	int error = 0;
@@ -1489,6 +1551,19 @@ int GMT_psscale (void *V_API, int mode, void *args) {
 		wesn[XLO] = start_val;	wesn[XHI] = stop_val;	wesn[YHI] = Ctrl->D.dim[GMT_Y];
 		if (gmt_M_err_pass (GMT, gmt_map_setup (GMT, wesn), ""))
 			Return (GMT_PROJECTION_ERROR);
+		if (GMT->common.B.active[GMT_PRIMARY] || GMT->common.B.active[GMT_SECONDARY]) {	/* Must redo the -B parsing since projection has changed */
+			char p[GMT_LEN256] = {""}, group_sep[2] = {" "}, *tmp = NULL;
+			unsigned int pos = 0;
+			group_sep[0] = GMT_ASCII_GS;
+			GMT->current.map.frame.init = false;	/* To ensure we reset B parameters */
+			for (i = GMT_PRIMARY; i <= GMT_SECONDARY; i++) {
+				if (!GMT->common.B.active[i]) continue;
+				tmp = strdup (GMT->common.B.string[i]);
+				while (gmt_strtok (tmp, group_sep, &pos, p))
+					gmtlib_parse_B_option (GMT, p);
+				gmt_M_str_free (tmp);
+			}
+		}
 	}
 
 	if (Ctrl->Z.active) {
diff --git a/src/pssolar.c b/src/pssolar.c
index 7ec817b..f051421 100644
--- a/src/pssolar.c
+++ b/src/pssolar.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: pssolar.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: pssolar.c 18254 2017-05-28 19:46:56Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -119,7 +119,7 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 
 	gmt_show_name_and_purpose (API, THIS_MODULE_LIB, THIS_MODULE_NAME, THIS_MODULE_PURPOSE);
 	if (level == GMT_MODULE_PURPOSE) return (GMT_NOERROR);
-	GMT_Message (API, GMT_TIME_NONE, "usage: pssolar [%s] [-C] [-G<fill>] [-I[lon/lat][+d<date>][+z<TZ>]]", GMT_B_OPT);
+	GMT_Message (API, GMT_TIME_NONE, "usage: pssolar [%s] [-C] [-G<fill>] [-I[lon/lat][+d<date>][+z<TZ>]]\n", GMT_B_OPT);
 	GMT_Message (API, GMT_TIME_NONE, "[%s] [-K] [-M] [-N] [-O]\n", GMT_J_OPT);
 	GMT_Message (API, GMT_TIME_NONE, "\t[-P] [-T<dcna>[+d<date>][+z<TZ>]] [%s]\n", GMT_Rgeo_OPT);
 	GMT_Message (API, GMT_TIME_NONE, "\t[%s] [%s] [-W<pen>]\n\t[%s] [%s] [%s]\n\t[%s] [%s] [%s]\n\n", GMT_U_OPT, GMT_V_OPT,
diff --git a/src/psternary.c b/src/psternary.c
index ae139ff..ed2410e 100644
--- a/src/psternary.c
+++ b/src/psternary.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psternary.c 18144 2017-05-06 03:36:15Z pwessel $
+ *	$Id: psternary.c 18391 2017-06-17 21:24:36Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -121,7 +121,8 @@ GMT_LOCAL int usage (struct GMTAPI_CTRL *API, int level) {
 	GMT_Option (API, "O,P,R");
 	//GMT_Message (API, GMT_TIME_NONE, "\t-Q Selects contouring.  Optionally append <cut>.  If given, then we do not draw\n");
 	//GMT_Message (API, GMT_TIME_NONE, "\t   closed contours with less than <cut> points [Draw all contours].\n");
-	GMT_Message (API, GMT_TIME_NONE, "\t-S Select symbol type and symbol size (in %s).  See psxy for full list of symbols.\n");
+	GMT_Message (API, GMT_TIME_NONE, "\t-S Select symbol type and symbol size (in %s).  See psxy for full list of symbols.\n",
+		API->GMT->session.unit_name[API->GMT->current.setting.proj_length_unit]);
 	GMT_Option (API, "U,V");
 	gmt_pen_syntax (API->GMT, 'W', "Set pen attributes [Default pen is %s]:", 15);
 	GMT_Option (API, "X,bi2,di,e,f,g,h,i,p,t,:,.");
@@ -249,7 +250,7 @@ GMT_LOCAL unsigned int prep_options (struct GMTAPI_CTRL *API, struct GMT_OPTION
 		if ((boptions[GMT_Y] = GMT_Make_Option (API, 'B', string)) == NULL) return (GMT_PARSE_ERROR);
 		string[0] = 'c';	/* Finally -Bc */
 		if ((boptions[GMT_Z] = GMT_Make_Option (API, 'B', string)) == NULL) return (GMT_PARSE_ERROR);
-		GMT_Delete_Option (API, bopt);	/* Remove the single -B setting now that we added 3 separate */
+		GMT_Delete_Option (API, bopt, options);	/* Remove the single -B setting now that we added 3 separate */
 		return GMT_NOERROR;
 	}
 	else if (n_axis != 3) {
diff --git a/src/pswiggle.c b/src/pswiggle.c
index a490667..82c6013 100644
--- a/src/pswiggle.c
+++ b/src/pswiggle.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: pswiggle.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: pswiggle.c 18316 2017-06-03 04:57:26Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -462,12 +462,6 @@ int GMT_pswiggle (void *V_API, int mode, void *args) {
 
 	gmt_map_clip_on (GMT, GMT->session.no_rgb, 3);
 
-	/* Allocate memory */
-
-	xx  = gmt_M_memory (GMT, NULL, n_alloc, double);
-	yy  = gmt_M_memory (GMT, NULL, n_alloc, double);
-	zz  = gmt_M_memory (GMT, NULL, n_alloc, double);
-
 	if (GMT_Init_IO (API, GMT_IS_DATASET, GMT_IS_LINE, GMT_IN, GMT_ADD_DEFAULT, 0, options) != GMT_NOERROR) {	/* Register data input */
 		Return (API->error);
 	}
@@ -482,6 +476,12 @@ int GMT_pswiggle (void *V_API, int mode, void *args) {
 		Return (GMT_DIM_TOO_SMALL);
 	}
 
+	/* Allocate memory */
+
+	xx  = gmt_M_memory (GMT, NULL, n_alloc, double);
+	yy  = gmt_M_memory (GMT, NULL, n_alloc, double);
+	zz  = gmt_M_memory (GMT, NULL, n_alloc, double);
+
 	for (tbl = 0; tbl < D->n_tables; tbl++) {
 		T = D->table[tbl];
 		
diff --git a/src/psxy.c b/src/psxy.c
index aa9d4ef..204f145 100644
--- a/src/psxy.c
+++ b/src/psxy.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: psxy.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: psxy.c 18363 2017-06-12 01:30:50Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -1548,21 +1548,29 @@ int GMT_psxy (void *V_API, int mode, void *args) {
 			if ((Dtmp = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, 0, GMT_READ_NORMAL, NULL, NULL, NULL)) == NULL) {
 				Return (API->error);
 			}
-			S.method = SEGM_REFPOINT;	S.level = SEGM_RECORD;
-			D = gmt_segmentize_data (GMT, Dtmp, &S);	/* Segmentize the original data */
-			if (GMT_Destroy_Data (API, &Dtmp) != GMT_NOERROR) {	/* Be gone with the original */
-				Return (API->error);
+			if (Dtmp->n_records) {
+				S.method = SEGM_REFPOINT;	S.level = SEGM_RECORD;
+				D = gmt_segmentize_data (GMT, Dtmp, &S);	/* Segmentize the original data */
+				if (GMT_Destroy_Data (API, &Dtmp) != GMT_NOERROR) {	/* Be gone with the original */
+					Return (API->error);
+				}
 			}
+			else
+				D = Dtmp;	/* To avoid issues in the loop over no records */
 		}
 		else if (Ctrl->F.active) {
 			struct GMT_DATASET *Dtmp = NULL;	/* Pointer to GMT multisegment table(s) */
 			if ((Dtmp = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, 0, GMT_READ_NORMAL, NULL, NULL, NULL)) == NULL) {
 				Return (API->error);
 			}
-			D = gmt_segmentize_data (GMT, Dtmp, &(Ctrl->F.S));	/* Segmentize the data */
-			if (GMT_Destroy_Data (API, &Dtmp) != GMT_NOERROR) {	/* Be gone with the original */
-				Return (API->error);
+			if (Dtmp->n_records) {
+				D = gmt_segmentize_data (GMT, Dtmp, &(Ctrl->F.S));	/* Segmentize the data */
+				if (GMT_Destroy_Data (API, &Dtmp) != GMT_NOERROR) {	/* Be gone with the original */
+					Return (API->error);
+				}
 			}
+			else
+				D = Dtmp;	/* To avoid issues in the loop over no records */
 		}
 		else if ((D = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, 0, GMT_READ_NORMAL, NULL, NULL, NULL)) == NULL) {
 			Return (API->error);
diff --git a/src/sample1d.c b/src/sample1d.c
index 8785032..d141db6 100644
--- a/src/sample1d.c
+++ b/src/sample1d.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: sample1d.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: sample1d.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -339,11 +339,11 @@ int GMT_sample1d (void *V_API, int mode, void *args) {
 		struct GMT_DATASET *Cin = NULL;
 		gmt_init_io_columns (GMT, GMT_IN);	/* Reset any effects of -i */
 		
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((Cin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_NONE, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL) {
 			Return (API->error);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		T = Cin->table[0];	/* Since we only have one table here */
 		t_supplied_out = gmt_M_memory (GMT, NULL, Cin->table[0]->n_records, double);
 		for (seg = 0; seg < T->n_segments; seg++) {
diff --git a/src/segy/segy2grd.c b/src/segy/segy2grd.c
index 2ea54ac..a1eda32 100644
--- a/src/segy/segy2grd.c
+++ b/src/segy/segy2grd.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: segy2grd.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: segy2grd.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by T. Henstock
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -255,8 +255,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct SEGY2GRD_CTRL *Ctrl, struct GM
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.active || !Ctrl->G.file, "Syntax error -G: Must specify output file\n");
diff --git a/src/sph2grd.c b/src/sph2grd.c
index 3f5fd2e..ea13e5f 100644
--- a/src/sph2grd.c
+++ b/src/sph2grd.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *    $Id: sph2grd.c 18134 2017-05-05 08:34:43Z pwessel $
+ *    $Id: sph2grd.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -198,8 +198,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct SPH2GRD_CTRL *Ctrl, struct GMT
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, !Ctrl->G.file, "Syntax error: Must specify output grid file\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->D.active && !(Ctrl->D.mode == 'g' || Ctrl->D.mode == 'n'), "Syntax error -D option: Must append g or n\n");
diff --git a/src/sphdistance.c b/src/sphdistance.c
index 6762578..bbb762c 100644
--- a/src/sphdistance.c
+++ b/src/sphdistance.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: sphdistance.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: sphdistance.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *	Copyright (c) 2008-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -239,8 +239,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct SPHDISTANCE_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	if (GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] == 0) GMT->common.b.ncol[GMT_IN] = 3;
 	n_errors += gmt_M_check_condition (GMT, GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] < 3, "Syntax error: Binary input data (-bi) must have at least 3 columns\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
@@ -311,7 +309,7 @@ int GMT_sphdistance (void *V_API, int mode, void *args) {
 
 	if (Ctrl->Q.active) {	/* Expect a single file with Voronoi polygons */
 		GMT_Report (API, GMT_MSG_VERBOSE, "Read Volonoi polygons from %s ...", Ctrl->Q.file);
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -Q files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -Q files */
 		if ((Qin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POLY, GMT_READ_NORMAL, NULL, Ctrl->Q.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -319,7 +317,7 @@ int GMT_sphdistance (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 2 are needed\n", Ctrl->Q.file, (int)Qin->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		Table = Qin->table[0];	/* Only one table in a file */
 		GMT_Report (API, GMT_MSG_VERBOSE, "Found %" PRIu64 " segments\n", Table->n_segments);
 	 	lon = gmt_M_memory (GMT, NULL, Table->n_segments, double);
@@ -331,7 +329,7 @@ int GMT_sphdistance (void *V_API, int mode, void *args) {
 				Return (error);
 			}
 			GMT_Report (API, GMT_MSG_VERBOSE, "Read Nodes from %s ...", Ctrl->N.file);
-			gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -N files */
+			gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -N files */
 			if ((Nin = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_READ_NORMAL, NULL, Ctrl->N.file, NULL)) == NULL) {
 				Return (API->error);
 			}
@@ -339,7 +337,7 @@ int GMT_sphdistance (void *V_API, int mode, void *args) {
 				GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 2 are needed\n", Ctrl->N.file, (int)Nin->n_columns);
 				Return (GMT_DIM_TOO_SMALL);
 			}
-			gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+			gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 			NTable = Nin->table[0];	/* Only one table in a file with a single segment */
 			if (NTable->n_segments != 1) {
 				GMT_Report (API, GMT_MSG_NORMAL, "File %s can only have 1 segment!\n", Ctrl->N.file);
diff --git a/src/sphinterpolate.c b/src/sphinterpolate.c
index cad1bae..f0d2533 100644
--- a/src/sphinterpolate.c
+++ b/src/sphinterpolate.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: sphinterpolate.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: sphinterpolate.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 2008-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -192,8 +192,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct SPHINTERPOLATE_CTRL *Ctrl, str
 		}
 	}
 	
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	if (GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] == 0) GMT->common.b.ncol[GMT_IN] = 3;
 	n_errors += gmt_M_check_condition (GMT, GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] < 3, "Syntax error: Binary input data (-bi) must have at least 3 columns\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
diff --git a/src/spotter/backtracker.c b/src/spotter/backtracker.c
index 9c1f08c..0838c14 100644
--- a/src/spotter/backtracker.c
+++ b/src/spotter/backtracker.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: backtracker.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: backtracker.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *   Copyright (c) 1999-2017 by P. Wessel
  *
@@ -434,7 +434,7 @@ int GMT_backtracker (void *V_API, int mode, void *args) {
 	}
 
 	if (Ctrl->F.active) {	/* Get hotspot motion file */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((F = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POINT, GMT_READ_NORMAL, NULL, Ctrl->F.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -442,7 +442,7 @@ int GMT_backtracker (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input file %s has %d column(s) but at least 3 are needed\n", Ctrl->F.file, (int)F->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		H = F->table[0]->segment[0];	/* Only one table with one segment for histories */
 		for (row = 0; row < H->n_rows; row++) H->data[GMT_Y][row] = gmt_lat_swap (GMT, H->data[GMT_Y][row], GMT_LATSWAP_G2O);	/* Convert to geocentric */
 	}
diff --git a/src/spotter/gmtpmodeler.c b/src/spotter/gmtpmodeler.c
index 77f9a7b..36ad2fb 100644
--- a/src/spotter/gmtpmodeler.c
+++ b/src/spotter/gmtpmodeler.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: gmtpmodeler.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: gmtpmodeler.c 18404 2017-06-20 18:10:00Z pwessel $
  *
  *   Copyright (c) 1999-2017 by P. Wessel
  *
@@ -256,7 +256,7 @@ int GMT_gmtpmodeler (void *V_API, int mode, void *args) {
 	/*---------------------------- This is the gmtpmodeler main code ----------------------------*/
 
 	if (Ctrl->F.active) {	/* Read the user's clip polygon file */
-		gmt_disable_i_opt (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
+		gmt_disable_ih_opts (GMT);	/* Do not want any -i to affect the reading from -C,-F,-L files */
 		if ((D = GMT_Read_Data (API, GMT_IS_DATASET, GMT_IS_FILE, GMT_IS_POLY, GMT_READ_NORMAL, NULL, Ctrl->F.file, NULL)) == NULL) {
 			Return (API->error);
 		}
@@ -264,7 +264,7 @@ int GMT_gmtpmodeler (void *V_API, int mode, void *args) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Input data have %d column(s) but at least 2 are needed\n", (int)D->n_columns);
 			Return (GMT_DIM_TOO_SMALL);
 		}
-		gmt_reenable_i_opt (GMT);	/* Recover settings provided by user (if -i was used at all) */
+		gmt_reenable_ih_opts (GMT);	/* Recover settings provided by user (if -i was used at all) */
 		pol = D->table[0];	/* Since it is a single file */
 		GMT_Report (API, GMT_MSG_VERBOSE, "Restrict evalution to within polygons in file %s\n", Ctrl->F.file);
 	}
diff --git a/src/spotter/grdspotter.c b/src/spotter/grdspotter.c
index 3d5481b..e0e7943 100644
--- a/src/spotter/grdspotter.c
+++ b/src/spotter/grdspotter.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: grdspotter.c 18110 2017-05-03 01:29:16Z pwessel $
+ *	$Id: grdspotter.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *   Copyright (c) 1999-2017 by P. Wessel
  *
@@ -381,8 +381,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct GRDSPOTTER_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, !(Ctrl->G.active || Ctrl->G.file), "Syntax error -G: Must specify output file\n");
diff --git a/src/spotter/hotspotter.c b/src/spotter/hotspotter.c
index 153e387..d001e80 100644
--- a/src/spotter/hotspotter.c
+++ b/src/spotter/hotspotter.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: hotspotter.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: hotspotter.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *   Copyright (c) 1999-2017 by P. Wessel
  *
@@ -271,9 +271,7 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct HOTSPOTTER_CTRL *Ctrl, struct
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
-        if (GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] == 0) GMT->common.b.ncol[GMT_IN] = 5;
+	if (GMT->common.b.active[GMT_IN] && GMT->common.b.ncol[GMT_IN] == 0) GMT->common.b.ncol[GMT_IN] = 5;
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, !(Ctrl->G.active || Ctrl->G.file), "Syntax error option: Must specify output file\n");
diff --git a/src/spotter/rotconverter.c b/src/spotter/rotconverter.c
index e3020d3..fdb91b6 100644
--- a/src/spotter/rotconverter.c
+++ b/src/spotter/rotconverter.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: rotconverter.c 17819 2017-03-30 18:16:09Z pwessel $
+ *	$Id: rotconverter.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *   Copyright (c) 1999-2017 by P. Wessel
  *
@@ -425,6 +425,10 @@ int GMT_rotconverter (void *V_API, int mode, void *args) {
 		}
 	}
 
+	if (a == NULL) {
+		GMT_Report (API, GMT_MSG_NORMAL, "Error: No rotation resulting from operation\n");
+		Return (GMT_RUNTIME_ERROR);
+	}
 	n_out = 3 + ((Ctrl->F.mode) ? 1 - no_time : 2);
 	if (online_rot && n_out > 3) n_out--;
 	if (a[0].has_cov) n_out += 9;
diff --git a/src/ssrfpack.c b/src/ssrfpack.c
index aa670e8..af7156f 100644
--- a/src/ssrfpack.c
+++ b/src/ssrfpack.c
@@ -1,4 +1,4 @@
-/* $Id: ssrfpack.c 15817 2016-03-06 03:50:50Z pwessel $
+/* $Id: ssrfpack.c 18453 2017-06-24 22:19:55Z pwessel $
  * ssrfpack.c: Translated via f2c then massaged so that f2c include and lib
  * are not required to compile and link the sph supplement.
  *
@@ -1222,7 +1222,7 @@ if ((d1d2 == 0. && s1 != s2) || (s == 0. && s1 * s2 > 0.)) {
 	}
 
 /* Test for SIGMA = 0 sufficient.  The data satisfies convex- */
-/*   ity iff D1D2 .GE. 0, and D1D2 = 0 implies S1 = S = S2. */
+/*   ity if D1D2 .GE. 0, and D1D2 = 0 implies S1 = S = S2. */
 
 	sig = 0.;
 	if (d1d2 < 0.) {
@@ -1295,7 +1295,7 @@ if (fabs(dsig) <= rtol * sig || (f >= 0. && f <= ftol) || fabs(f) <= rtol)
 	goto L3;
 
 /* Convexity cannot be satisfied.  Monotonicity can be satis- */
-/*   fied iff S1*S .GE. 0 and S2*S .GE. 0 since S .NE. 0. */
+/*   fied if S1*S .GE. 0 and S2*S .GE. 0 since S .NE. 0. */
 
 L4:
 	if (s1 * s < 0. || s2 * s < 0.) {
@@ -1304,7 +1304,7 @@ L4:
 	t0 = s * 3. - s1 - s2;
 	d0 = t0 * t0 - s1 * s2;
 
-/* SIGMA = 0 is sufficient for monotonicity iff S*T0 .GE. 0 */
+/* SIGMA = 0 is sufficient for monotonicity if S*T0 .GE. 0 */
 /*   or D0 .LE. 0. */
 
 	if (d0 <= 0. || s * t0 >= 0.) {
@@ -1386,7 +1386,7 @@ L5:
 	    c1 = sig * scm * d2 - ssm * d1pd2;
 	    c2 = sig * ssinh * d2 - scm * d1pd2;
 
-/*   R is in (0,1) and well-defined iff HPP(T1)*HPP(T2) < 0. */
+/*   R is in (0,1) and well-defined if HPP(T1)*HPP(T2) < 0. */
 
 	    f = fmax;
 	    if (c1 * (sig * scm * d1 - ssm * d1pd2) >= 0.) {
diff --git a/src/stripack.c b/src/stripack.c
index 3f04d14..157657f 100644
--- a/src/stripack.c
+++ b/src/stripack.c
@@ -1,4 +1,4 @@
-/* $Id: stripack.c 15820 2016-03-06 21:41:31Z pwessel $
+/* $Id: stripack.c 18453 2017-06-24 22:19:55Z pwessel $
  * stripack.c: Translated via f2c then massaged so that f2c include and lib
  * are not required to compile and link the sph supplement.
  *
@@ -844,7 +844,7 @@ L4:
     d__2 = (d__1 = x[n0] * xp + y[n0] * yp + z__[n0] * zp, fabs(d__1));
     if (store_(&d__2) < 1. - eps * 4.) {
 
-/*   All points are collinear iff P Left NB->N0 for all */
+/*   All points are collinear if P Left NB->N0 for all */
 /*     neighbors NB of N0.  Search the neighbors of N0. */
 /*     Note:  N1 = NL and LP points to NL. */
 
@@ -1290,8 +1290,8 @@ GMT_LOCAL logical swptst_(integer *n1, integer *n2, integer *n3, integer *n4, do
     dz2 = z__[*n2] - z4;
     dz3 = z__[*n3] - z4;
 
-/* N4 lies above the plane of (N1,N2,N3) iff N3 lies above */
-/*   the plane of (N2,N1,N4) iff Det(N3-N4,N2-N4,N1-N4) = */
+/* N4 lies above the plane of (N1,N2,N3) if N3 lies above */
+/*   the plane of (N2,N1,N4) if Det(N3-N4,N2-N4,N1-N4) = */
 /*   (N3-N4,N2-N4 X N1-N4) > 0. */
 
     ret_val = dx3 * (dy2 * dz1 - dy1 * dz2) - dy3 * (dx2 * dz1 - dx1 * dz2) + 
@@ -1983,7 +1983,7 @@ GMT_LOCAL integer crlist_(integer *n, integer *ncol, doublereal *x, doublereal *
 /* NN =        Local copy of N */
 /* NT =        Number of pseudo-triangles:  NB-2 */
 /* SWP =       Logical variable set to true in each optimiza- */
-/*               tion loop (loop on pseudo-arcs) iff a swap */
+/*               tion loop (loop on pseudo-arcs) if a swap */
 /*               is performed */
 /* V1,V2,V3 =  Vertices of triangle KT = (N1,N2,N3) sent to */
 /*               Subroutine CIRCUM */
@@ -2457,7 +2457,7 @@ GMT_LOCAL logical left_(doublereal *x1, doublereal *y1, doublereal *z1, doublere
 
 /* *********************************************************** */
 
-/* LEFT = true iff <N0,N1 X N2> = det(N0,N1,N2) .GE. 0. */
+/* LEFT = true if <N0,N1 X N2> = det(N0,N1,N2) .GE. 0. */
 
     ret_val = *x0 * (*y1 * *z2 - *y2 * *z1) - *y0 * (*x1 * *z2 - *x2 * *z1) + 
 	    *z0 * (*x1 * *y2 - *x2 * *y1) >= 0.;
@@ -2555,7 +2555,7 @@ GMT_LOCAL integer trlist_(integer *n, integer *list, integer *lptr, integer *len
 
 /* Local parameters: */
 
-/* ARCS =     Logical variable with value true iff are */
+/* ARCS =     Logical variable with value true if are */
 /*              indexes are to be stored */
 /* I,J =      LTRI row indexes (1 to 3) associated with */
 /*              triangles KT and KN, respectively */
@@ -2592,7 +2592,7 @@ if (*n < 3 || (*nrow != 6 && *nrow != 9)) {
 /* Initialize parameters for loop on triangles KT = (N1,N2, */
 /*   N3), where N1 < N2 and N1 < N3. */
 
-/*   ARCS = true iff arc indexes are to be stored. */
+/*   ARCS = true if arc indexes are to be stored. */
 /*   KA,KT = Numbers of currently stored arcs and triangles. */
 /*   NM2 = Upper bound on candidates for N1. */
 
diff --git a/src/surface.c b/src/surface.c
index b056f84..ba404c3 100644
--- a/src/surface.c
+++ b/src/surface.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: surface.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: surface.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -1705,8 +1705,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct SURFACE_CTRL *Ctrl, struct GMT
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->N.value < 1, "Syntax error -N option: Max iterations must be nonzero\n");
diff --git a/src/surface_mt.c b/src/surface_mt.c
index 6524646..e26b3a7 100644
--- a/src/surface_mt.c
+++ b/src/surface_mt.c
@@ -2108,8 +2108,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct SURFACE_CTRL *Ctrl, struct GMT
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, NULL, &Ctrl->I.active);
-
 	n_errors += gmt_M_check_condition (GMT, !GMT->common.R.active[RSET], "Syntax error: Must specify -R option\n");
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0, "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->N.value < 1, "Syntax error -N option: Max iterations must be nonzero\n");
diff --git a/src/trend1d.c b/src/trend1d.c
index a1ef333..eb88e44 100644
--- a/src/trend1d.c
+++ b/src/trend1d.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: trend1d.c 18171 2017-05-07 02:37:02Z pwessel $
+ *	$Id: trend1d.c 18271 2017-05-29 22:16:55Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -425,7 +425,7 @@ GMT_LOCAL void solve_system_1d (struct GMT_CTRL *GMT, double *gtg, double *gtd,
 			model[i] = 0.0;
 			for (j = 0; j < n_model; j++) {
 				temp_inverse_ij = 0.0;
-				for (k = 0; k <  rank; k++) {
+				for (k = 0; k < rank; k++) {
 					temp_inverse_ij += (v[i + k*mp] * v[j + k*mp] / lambda[k]);
 				}
 				model[i] += (temp_inverse_ij * gtd[j]);
@@ -446,18 +446,19 @@ GMT_LOCAL void unscale_polynomial (struct GMT_CTRL *GMT, double c[], unsigned in
 		c[j] *= fac;
 		fac *= cnst;
 	}
+	if (n < 2) return;	/* To avoid n-2 becoming huge since unsigned */
 	cnst = 0.5 * (a + b);
 	for (j = 0; j <= n - 2; j++) {
 		for (k = n - 1; k > j; k--) c[k-1] -= cnst * c[k];
 	}
 }
 
-GMT_LOCAL void cheb_to_pol (struct GMT_CTRL *GMT, double c[], unsigned int n, double a, double b, unsigned int denorm) {
+GMT_LOCAL void cheb_to_pol (struct GMT_CTRL *GMT, double c[], unsigned int un, double a, double b, unsigned int denorm) {
 	/* Convert from Chebyshev coefficients used on a t =  [-1,+1] interval
 	 * to polynomial coefficients on the original x = [a b] interval.
 	 * Modified from Numerical Miracles, ...eh Recipes */
 
-	 unsigned int j, k;
+	 int j, k, n = (int)un;
 	 double sv, *d, *dd;
 
 	 d  = gmt_M_memory (GMT, NULL, n, double);
@@ -483,11 +484,11 @@ GMT_LOCAL void cheb_to_pol (struct GMT_CTRL *GMT, double c[], unsigned int n, do
 	/* Next step is to undo the scaling so we can use coefficients with the user's x */
 
 	if (denorm)
-		unscale_polynomial (GMT, d, n, a, b);
+		unscale_polynomial (GMT, d, un, a, b);
 
 	/* Return the new coefficients via c */
 
-	gmt_M_memcpy (c, d, n, double);
+	gmt_M_memcpy (c, d, un, double);
 
 	gmt_M_free (GMT, d);
 	gmt_M_free (GMT, dd);
diff --git a/src/triangulate.c b/src/triangulate.c
index cdbd156..9d85734 100644
--- a/src/triangulate.c
+++ b/src/triangulate.c
@@ -1,5 +1,5 @@
  /*--------------------------------------------------------------------
- *	$Id: triangulate.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: triangulate.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -265,8 +265,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct TRIANGULATE_CTRL *Ctrl, struct
 
 	n_errors += gmt_add_R_if_modern_and_true (GMT, THIS_MODULE_NEEDS, Ctrl->G.active || Ctrl->Q.active);
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
-
 	n_errors += gmt_check_binary_io (GMT, 2);
 	n_errors += gmt_M_check_condition (GMT, GMT->common.R.active[ISET] && (GMT->common.R.inc[GMT_X] <= 0.0 || GMT->common.R.inc[GMT_Y] <= 0.0), "Syntax error -I option: Must specify positive increment(s)\n");
 	n_errors += gmt_M_check_condition (GMT, Ctrl->G.active && !Ctrl->G.file, "Syntax error -G option: Must specify file name\n");
diff --git a/src/x2sys/x2sys.c b/src/x2sys/x2sys.c
index b41fde7..53d626c 100644
--- a/src/x2sys/x2sys.c
+++ b/src/x2sys/x2sys.c
@@ -1,5 +1,5 @@
 /*-----------------------------------------------------------------
- *	$Id: x2sys.c 18145 2017-05-06 04:40:01Z pwessel $
+ *	$Id: x2sys.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *      Copyright (c) 1999-2017 by P. Wessel
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -1889,7 +1889,9 @@ int x2sys_find_track (struct GMT_CTRL *GMT, char *name, char **list, unsigned in
 
 int x2sys_get_tracknames (struct GMT_CTRL *GMT, struct GMT_OPTION *options, char ***filelist, bool *cmdline) {
 	/* Return list of track names given on command line or via =list mechanism.
-	 * The names do not have the track extension. */
+	 * The names do not have the track extension.
+	 * Returns -1 if it cannot open the list,
+	 * otherwise returns number of tracks. */
 	unsigned int i, A, first;
 	size_t n_alloc, add_chunk;
 	char **file = NULL, *p = NULL;
@@ -1932,7 +1934,7 @@ int x2sys_get_tracknames (struct GMT_CTRL *GMT, struct GMT_OPTION *options, char
 			file[i][(size_t)(p-file[i])] = '\0';
 	}
 
-	return (A);
+	return ((int)A);
 }
 
 /* A very similar function (and with the same name -- but the '2') is also defined in MGD77list_func.c */
@@ -1994,7 +1996,7 @@ void x2sys_get_corrtable (struct GMT_CTRL *GMT, struct X2SYS_INFO *S, char *ctab
 	}
 	for (i = missing = 0; i < n_items; i++) {
 		if (MGD77_Match_List (GMT, item_names[i], n_cols, col_name) == MGD77_NOT_SET) {	/* Requested column not among data cols */
-			if ((ks = MGD77_Match_List (GMT, item_names[i], n_aux, aux_name)) == MGD77_NOT_SET) {
+			if (aux_name == NULL || (ks = MGD77_Match_List (GMT, item_names[i], n_aux, aux_name)) == MGD77_NOT_SET) {
 				GMT_Report (GMT->parent, GMT_MSG_NORMAL, "X2SYS Correction table (%s) requires a column (%s) not present in COE database or auxiliary columns\n", ctable, item_names[i]);
 				missing++;
 			}
diff --git a/src/x2sys/x2sys_binlist.c b/src/x2sys/x2sys_binlist.c
index 55ec68d..3a4b684 100644
--- a/src/x2sys/x2sys_binlist.c
+++ b/src/x2sys/x2sys_binlist.c
@@ -1,5 +1,5 @@
 /*-----------------------------------------------------------------
- *	$Id: x2sys_binlist.c 17798 2017-03-27 04:50:17Z pwessel $
+ *	$Id: x2sys_binlist.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *      Copyright (c) 1999-2017 by P. Wessel
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -176,8 +176,8 @@ GMT_LOCAL int comp_bincross (const void *p1, const void *p2) {
 int GMT_x2sys_binlist (void *V_API, int mode, void *args) {
 	char **trk_name = NULL, record[GMT_BUFSIZ] = {""}, text[GMT_LEN64] = {""};
 
-	uint64_t this_bin_index, index, last_bin_index, row, col;
-	unsigned int trk, curr_x_pt, prev_x_pt, n_tracks;
+	uint64_t this_bin_index, index, last_bin_index, row, col, trk, n_tracks;
+	unsigned int curr_x_pt, prev_x_pt;
 	int ii_notused, jj_notused, bcol, brow, start_col, end_col, jump_180, jump_360;
 	int this_bin_col;	/* This col node for bin */
 	int this_bin_row;	/* This row node for bin */
@@ -218,11 +218,12 @@ int GMT_x2sys_binlist (void *V_API, int mode, void *args) {
 
 	/*---------------------------- This is the x2sys_binlist main code ----------------------------*/
 
-	if ((n_tracks = x2sys_get_tracknames (GMT, options, &trk_name, &cmdline_files)) == 0) {
+	if ((error = x2sys_get_tracknames (GMT, options, &trk_name, &cmdline_files)) <= 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "No datafiles given!\n");
 		Return (GMT_RUNTIME_ERROR);		
 	}
-
+	n_tracks = (uint64_t)error;
+	
 	x2sys_err_fail (GMT, x2sys_set_system (GMT, Ctrl->T.TAG, &s, &B, &GMT->current.io), Ctrl->T.TAG);
 
 	if (Ctrl->E.active && !s->geographic) {
diff --git a/src/x2sys/x2sys_cross.c b/src/x2sys/x2sys_cross.c
index 76cce17..17bb67a 100644
--- a/src/x2sys/x2sys_cross.c
+++ b/src/x2sys/x2sys_cross.c
@@ -1,5 +1,5 @@
 /*-----------------------------------------------------------------
- *	$Id: x2sys_cross.c 18144 2017-05-06 03:36:15Z pwessel $
+ *	$Id: x2sys_cross.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *      Copyright (c) 1999-2017 by P. Wessel
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -368,10 +368,11 @@ int GMT_x2sys_cross (void *V_API, int mode, void *args) {
 		Return (GMT_RUNTIME_ERROR);
 	}
 	
-	if ((n_tracks = x2sys_get_tracknames (GMT, options, &trk_name, &cmdline_files)) == 0) {
+	if ((error = x2sys_get_tracknames (GMT, options, &trk_name, &cmdline_files)) == 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: Must give at least one data set!\n");
 		Return (GMT_RUNTIME_ERROR);		
 	}
+	n_tracks = (uint64_t)error;
 	
 	GMT->current.setting.interpolant = Ctrl->I.mode;
 	if (Ctrl->Q.active) {
@@ -534,21 +535,25 @@ int GMT_x2sys_cross (void *V_API, int mode, void *args) {
 	if ((error = gmt_set_cols (GMT, GMT_OUT, n_output)) != GMT_NOERROR) {
 		gmt_M_free (GMT, duplicate);
 		x2sys_free_list (GMT, trk_name, n_tracks);
+		if (fpC) fclose (fpC);
 		Return (error);
 	}
 	if (GMT_Init_IO (API, GMT_IS_DATASET, GMT_IS_POINT, GMT_OUT, GMT_ADD_DEFAULT, 0, options) != GMT_NOERROR) {	/* Registers default output destination, unless already set */
 		gmt_M_free (GMT, duplicate);
 		x2sys_free_list (GMT, trk_name, n_tracks);
+		if (fpC) fclose (fpC);
 		Return (API->error);
 	}
 	if (GMT_Begin_IO (API, GMT_IS_DATASET, GMT_OUT, GMT_HEADER_ON) != GMT_NOERROR) {	/* Enables data output and sets access mode */
 		gmt_M_free (GMT, duplicate);
 		x2sys_free_list (GMT, trk_name, n_tracks);
+		if (fpC) fclose (fpC);
 		Return (API->error);
 	}
 	if (GMT_Set_Geometry (API, GMT_OUT, GMT_IS_POINT) != GMT_NOERROR) {	/* Sets output geometry */
 		gmt_M_free (GMT, duplicate);
 		x2sys_free_list (GMT, trk_name, n_tracks);
+		if (fpC) fclose (fpC);
 		Return (API->error);
 	}
 
@@ -558,6 +563,7 @@ int GMT_x2sys_cross (void *V_API, int mode, void *args) {
 		if (s->x_col < 0 || s->y_col < 0) {
 			GMT_Report (API, GMT_MSG_NORMAL, "Error: x and/or y column not found for track %s!\n", trk_name[A]);
 			x2sys_free_list (GMT, trk_name, n_tracks);
+			if (fpC) fclose (fpC);
 			Return (GMT_RUNTIME_ERROR);
 		}
 
diff --git a/src/x2sys/x2sys_datalist.c b/src/x2sys/x2sys_datalist.c
index 90816e9..8393747 100644
--- a/src/x2sys/x2sys_datalist.c
+++ b/src/x2sys/x2sys_datalist.c
@@ -1,5 +1,5 @@
 /*-----------------------------------------------------------------
- *	$Id: x2sys_datalist.c 17831 2017-03-31 22:28:43Z pwessel $
+ *	$Id: x2sys_datalist.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *      Copyright (c) 1999-2017 by P. Wessel
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -228,8 +228,8 @@ int GMT_x2sys_datalist (void *V_API, int mode, void *args) {
 
 	int error = 0, this_col, xpos = -1, ypos = -1, tpos = -1;
 	bool cmdline_files, gmt_formatting = false, skip, *adj_col = NULL;
-	unsigned int ocol, bad, trk_no, n_tracks, n_data_col_out = 0, k, n_ignore = 0, o_mode;
-	uint64_t row;
+	unsigned int ocol, bad, n_data_col_out = 0, k, n_ignore = 0, o_mode;
+	uint64_t row, trk_no, n_tracks;
 
 	double **data = NULL, *out = NULL, correction = 0.0, aux_dvalue[N_GENERIC_AUX];
 	double ds = 0.0, cumulative_dist, dist_scale = 1.0, dt, vel_scale = 1.0, adj_amount;
@@ -269,10 +269,11 @@ int GMT_x2sys_datalist (void *V_API, int mode, void *args) {
 
 	/*---------------------------- This is the x2sys_datalist main code ----------------------------*/
 
-	if ((n_tracks = x2sys_get_tracknames (GMT, options, &trk_name, &cmdline_files)) == 0) {
+	if ((error = x2sys_get_tracknames (GMT, options, &trk_name, &cmdline_files)) == 0) {
 		GMT_Report (API, GMT_MSG_NORMAL, "No datafiles given!\n");
 		Return (GMT_RUNTIME_ERROR);		
 	}
+	n_tracks = (uint64_t)error;
 
 	if (Ctrl->I.active && (k = x2sys_read_list (GMT, Ctrl->I.file, &ignore, &n_ignore)) != X2SYS_NOERROR) {
 		GMT_Report (API, GMT_MSG_NORMAL, "Error: Ignore file %s cannot be read - aborting\n", Ctrl->I.file);
diff --git a/src/x2sys/x2sys_put.c b/src/x2sys/x2sys_put.c
index aaab438..7f686c4 100644
--- a/src/x2sys/x2sys_put.c
+++ b/src/x2sys/x2sys_put.c
@@ -1,5 +1,5 @@
 /*-----------------------------------------------------------------
- *	$Id: x2sys_put.c 17979 2017-04-17 22:48:33Z jluis $
+ *	$Id: x2sys_put.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *      Copyright (c) 1999-2017 by P. Wessel
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -329,11 +329,11 @@ int GMT_x2sys_put (void *V_API, int mode, void *args) {
 				i = sscanf (line, "%*s %*s %d %d", &index, &flag);
 				if (i != 2) {	/* Could not decode the index and the flag entries */
 					GMT_Report (API, GMT_MSG_NORMAL, "Error processing record for track %s [%s]\n", track, line);
-					GMT_exit (GMT, GMT_DATA_READ_ERROR); return GMT_DATA_READ_ERROR;
+					Return (GMT_DATA_READ_ERROR);
 				}
 				else if (flag > max_flag) {
 					GMT_Report (API, GMT_MSG_NORMAL, "data flag (%d) exceeds maximum (%d) for track %s!\n", flag, max_flag, track);
-					GMT_exit (GMT, GMT_DATA_READ_ERROR); return GMT_DATA_READ_ERROR;
+					Return (GMT_DATA_READ_ERROR);
 				}
 				if (B.base[index].n_tracks == 0) {	/* First track to cross this bin */
 					B.base[index].first_track = x2sys_bix_make_track (GMT, 0, 0);
@@ -396,7 +396,8 @@ int GMT_x2sys_put (void *V_API, int mode, void *args) {
 		fprintf (ftrack,"%s %d %d\n",this_info->trackname, this_info->track_id, this_info->flag);
 
 	fclose (ftrack);
-	chmod (track_file, (mode_t)S_RDONLY);
+	if (chmod (track_file, (mode_t)S_RDONLY))
+		GMT_Report (API, GMT_MSG_NORMAL, "Warning: Failed to change file %s to read-only!\n", track_file);
 
 	for (index = 0; index < B.nm_bin; index++) {
 		if (B.base[index].n_tracks == 0) continue;
@@ -425,7 +426,8 @@ int GMT_x2sys_put (void *V_API, int mode, void *args) {
 		}
 	}
 	fclose (fbin);
-	chmod (index_file, (mode_t)S_RDONLY);
+	if (chmod (index_file, (mode_t)S_RDONLY))
+		GMT_Report (API, GMT_MSG_NORMAL, "Warning: Failed to change file %s to read-only!\n", index_file);
 
 	GMT_Report (API, GMT_MSG_VERBOSE, "completed successfully\n");
 
diff --git a/src/x2sys/x2sys_report.c b/src/x2sys/x2sys_report.c
index 7e42e49..effcc57 100644
--- a/src/x2sys/x2sys_report.c
+++ b/src/x2sys/x2sys_report.c
@@ -1,5 +1,5 @@
 /*-----------------------------------------------------------------
- *	$Id: x2sys_report.c 18074 2017-04-30 04:54:09Z pwessel $
+ *	$Id: x2sys_report.c 18435 2017-06-22 04:01:50Z pwessel $
  *
  *      Copyright (c) 1999-2017 by P. Wessel
  *      See LICENSE.TXT file for copying and redistribution conditions.
@@ -236,6 +236,7 @@ int GMT_x2sys_report (void *V_API, int mode, void *args) {
 	bool external = true;	/* false if only internal xovers are needed */
 	uint64_t i, k, n, n_use, n_tracks;
 	uint64_t p, np, nx, Tnx = 0;
+	size_t len;
 	unsigned int coe_kind;
 	double sum, sum2, sum_w, Tsum, Tsum2, COE, sign, scale, corr[2] = {0.0, 0.0};
 	double Tmean, Tstdev, Trms;
@@ -366,14 +367,22 @@ int GMT_x2sys_report (void *V_API, int mode, void *args) {
 	sprintf (record, " Tag: %s %s", Ctrl->T.TAG, Ctrl->C.col);
 	GMT_Put_Record (API, GMT_WRITE_TABLE_HEADER, record);
 	sprintf (record, " Command: %s", THIS_MODULE_NAME);
-	if (!Ctrl->In.file) strcat (record, " [stdin]");
+	len = GMT_BUFSIZ - strlen (record) - 1;
+	if (!Ctrl->In.file) {
+		strncat (record, " [stdin]", len);
+		len -= 8;
+	}
 	for (opt = options; opt; opt = opt->next) {
-		strcat (record, " ");
-		if (opt->option == GMT_OPT_INFILE) 
-			strcat (record, opt->arg);
+		strncat (record, " ", len);
+		len--;
+		if (opt->option == GMT_OPT_INFILE) {
+			strncat (record, opt->arg, len);
+			len -= strlen (opt->arg);
+		}
 		else {
 			sprintf (word, "-%c%s", opt->option, opt->arg);
-			strcat (record, word);
+			strncat (record, word, len);
+			len -= strlen (word);
 		}
 	}
 	GMT_Put_Record (API, GMT_WRITE_TABLE_HEADER, record);
diff --git a/src/xyz2grd.c b/src/xyz2grd.c
index 0ad03fb..dec15c9 100644
--- a/src/xyz2grd.c
+++ b/src/xyz2grd.c
@@ -1,5 +1,5 @@
 /*--------------------------------------------------------------------
- *	$Id: xyz2grd.c 18134 2017-05-05 08:34:43Z pwessel $
+ *	$Id: xyz2grd.c 18282 2017-05-30 01:57:05Z pwessel $
  *
  *	Copyright (c) 1991-2017 by P. Wessel, W. H. F. Smith, R. Scharroo, J. Luis and F. Wobbe
  *	See LICENSE.TXT file for copying and redistribution conditions.
@@ -252,7 +252,6 @@ GMT_LOCAL int parse (struct GMT_CTRL *GMT, struct XYZ2GRD_CTRL *Ctrl, struct GMT
 		}
 	}
 
-	//gmt_check_lattice (GMT, Ctrl->I.inc, &GMT->common.R.registration, &Ctrl->I.active);
 	if (Ctrl->Z.active) {
 		if (Ctrl->S.active) Ctrl->Z.not_grid = true;	/* The row/col organization does not apply */
 		n_errors += gmt_parse_z_io (GMT, ptr_to_arg, &Ctrl->Z);

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



More information about the Pkg-grass-devel mailing list