[cpl-plugin-vimos] 09/17: Remove external sources for sextractor and psfex
Ole Streicher
olebole-guest at moszumanska.debian.org
Tue Dec 10 14:13:37 UTC 2013
This is an automated email from the git hooks/post-receive script.
olebole-guest pushed a commit to branch debian
in repository cpl-plugin-vimos.
commit 3afc02ab6c769d19ea80b240d5fb8b4984fa081b
Author: Ole Streicher <debian at liska.ath.cx>
Date: Tue Dec 10 14:15:06 2013 +0100
Remove external sources for sextractor and psfex
---
external/psfex/CHANGES | 38 -
external/psfex/HISTORY | 19 -
external/psfex/INSTALL | 8 -
external/psfex/Makefile.am | 46 -
external/psfex/Makefile.in | 733 -
external/psfex/README | 16 -
external/psfex/README.TOO | 12 -
external/psfex/acinclude.m4 | 99 -
external/psfex/aclocal.m4 | 1015 -
external/psfex/admin/config.guess | 1530 -
external/psfex/admin/config.sub | 1782 --
external/psfex/admin/install-sh | 527 -
external/psfex/admin/missing | 330 -
external/psfex/config/default.psfex | 24 -
external/psfex/config/sex.param | 9 -
external/psfex/configure | 5538 ----
external/psfex/configure.ac | 30 -
external/psfex/m4macros/eso.m4 | 902 -
external/psfex/source/Macrodefs. | 30 -
external/psfex/source/Macrodefs.aix | 11 -
external/psfex/source/Macrodefs.alpha | 11 -
external/psfex/source/Macrodefs.debug | 11 -
external/psfex/source/Macrodefs.gcc | 11 -
external/psfex/source/Macrodefs.hpux | 11 -
external/psfex/source/Macrodefs.insure | 11 -
external/psfex/source/Macrodefs.linux | 29 -
external/psfex/source/Macrodefs.linuxp2 | 11 -
external/psfex/source/Macrodefs.linuxpc | 11 -
external/psfex/source/Macrodefs.profile | 11 -
external/psfex/source/Macrodefs.purify | 11 -
external/psfex/source/Macrodefs.sgi | 11 -
external/psfex/source/Macrodefs.solaris | 11 -
external/psfex/source/Macrodefs.sunos | 11 -
external/psfex/source/Macrodefs.ultrix | 11 -
external/psfex/source/Makefile.am | 53 -
external/psfex/source/Makefile.in | 526 -
external/psfex/source/Makefile.orig | 23 -
external/psfex/source/basis.c | 83 -
external/psfex/source/check.c | 293 -
external/psfex/source/check.h | 25 -
external/psfex/source/define.h | 153 -
external/psfex/source/fft.c | 366 -
external/psfex/source/fft.h | 29 -
external/psfex/source/fitscat.c | 394 -
external/psfex/source/fitscat.h | 221 -
external/psfex/source/fitscat_defs.h | 138 -
external/psfex/source/fitsconv.c | 187 -
external/psfex/source/fitsfield.c | 240 -
external/psfex/source/fitshead.c | 723 -
external/psfex/source/fitshead.h | 171 -
external/psfex/source/fitskey.c | 951 -
external/psfex/source/fitsmisc.c | 102 -
external/psfex/source/fitsread.c | 260 -
external/psfex/source/fitstab.c | 616 -
external/psfex/source/fitsutil.c | 476 -
external/psfex/source/fitsutil.h | 49 -
external/psfex/source/fitswrite.c | 419 -
external/psfex/source/globals.h | 33 -
external/psfex/source/key.h | 43 -
external/psfex/source/main.c | 92 -
external/psfex/source/makeit.c | 133 -
external/psfex/source/misc.c | 143 -
external/psfex/source/pc.c | 532 -
external/psfex/source/poly.c | 343 -
external/psfex/source/poly.h | 47 -
external/psfex/source/prefs.c | 360 -
external/psfex/source/prefs.h | 86 -
external/psfex/source/psf.c | 991 -
external/psfex/source/psf.h | 90 -
external/psfex/source/random.c | 216 -
external/psfex/source/random.h | 33 -
external/psfex/source/sample.c | 792 -
external/psfex/source/sample.h | 75 -
external/psfex/source/types.h | 55 -
external/psfex/source/vignet.c | 311 -
external/psfex/source/vignet.h | 45 -
external/sextractor/CHANGES | 287 -
external/sextractor/HISTORY | 96 -
external/sextractor/INSTALL | 8 -
external/sextractor/Makefile.am | 46 -
external/sextractor/Makefile.in | 733 -
external/sextractor/README | 17 -
external/sextractor/README.TOO | 19 -
external/sextractor/acinclude.m4 | 95 -
external/sextractor/aclocal.m4 | 1015 -
external/sextractor/admin/config.guess | 1530 -
external/sextractor/admin/config.sub | 1782 --
external/sextractor/admin/install-sh | 527 -
external/sextractor/admin/missing | 330 -
external/sextractor/config/README | 29 -
external/sextractor/config/block_3x3.conv | 5 -
external/sextractor/config/default.conv | 5 -
external/sextractor/config/default.nnw | 28 -
external/sextractor/config/default.param | 124 -
external/sextractor/config/default.sex | 76 -
external/sextractor/config/gauss_1.5_3x3.conv | 5 -
external/sextractor/config/gauss_2.0_3x3.conv | 6 -
external/sextractor/config/gauss_2.0_5x5.conv | 7 -
external/sextractor/config/gauss_2.5_5x5.conv | 7 -
external/sextractor/config/gauss_3.0_5x5.conv | 7 -
external/sextractor/config/gauss_3.0_7x7.conv | 9 -
external/sextractor/config/gauss_4.0_7x7.conv | 9 -
external/sextractor/config/gauss_5.0_9x9.conv | 11 -
external/sextractor/config/mexhat_1.5_5x5.conv | 7 -
external/sextractor/config/mexhat_2.0_7x7.conv | 9 -
external/sextractor/config/mexhat_2.5_7x7.conv | 9 -
external/sextractor/config/mexhat_3.0_9x9.conv | 11 -
external/sextractor/config/mexhat_4.0_9x9.conv | 11 -
external/sextractor/config/mexhat_5.0_11x11.conv | 13 -
external/sextractor/config/tophat_1.5_3x3.conv | 5 -
external/sextractor/config/tophat_2.0_3x3.conv | 5 -
external/sextractor/config/tophat_2.5_3x3.conv | 5 -
external/sextractor/config/tophat_3.0_3x3.conv | 5 -
external/sextractor/config/tophat_4.0_5x5.conv | 7 -
external/sextractor/config/tophat_5.0_5x5.conv | 7 -
external/sextractor/configure | 5439 ----
external/sextractor/configure.ac | 31 -
external/sextractor/doc/README.DOC | 8 -
external/sextractor/doc/sex2_doc.ps | 32043 ---------------------
external/sextractor/m4macros/eso.m4 | 902 -
external/sextractor/source/Macrodefs. | 30 -
external/sextractor/source/Macrodefs.aix | 11 -
external/sextractor/source/Macrodefs.alpha | 11 -
external/sextractor/source/Macrodefs.debug | 11 -
external/sextractor/source/Macrodefs.gcc | 11 -
external/sextractor/source/Macrodefs.hpux | 11 -
external/sextractor/source/Macrodefs.insure | 11 -
external/sextractor/source/Macrodefs.linux | 29 -
external/sextractor/source/Macrodefs.linuxp2 | 11 -
external/sextractor/source/Macrodefs.linuxpc | 11 -
external/sextractor/source/Macrodefs.profile | 11 -
external/sextractor/source/Macrodefs.purify | 11 -
external/sextractor/source/Macrodefs.sgi | 11 -
external/sextractor/source/Macrodefs.solaris | 11 -
external/sextractor/source/Macrodefs.sunos | 11 -
external/sextractor/source/Macrodefs.ultrix | 11 -
external/sextractor/source/Makefile.am | 150 -
external/sextractor/source/Makefile.in | 755 -
external/sextractor/source/Makefile.orig | 157 -
external/sextractor/source/analyse.c | 657 -
external/sextractor/source/assoc.c | 362 -
external/sextractor/source/assoc.h | 41 -
external/sextractor/source/astrom.c | 633 -
external/sextractor/source/astrom.h | 63 -
external/sextractor/source/back.c | 1286 -
external/sextractor/source/back.h | 59 -
external/sextractor/source/bpro.c | 134 -
external/sextractor/source/bpro.h | 45 -
external/sextractor/source/catout.c | 479 -
external/sextractor/source/check.c | 454 -
external/sextractor/source/check.h | 41 -
external/sextractor/source/clean.c | 315 -
external/sextractor/source/clean.h | 36 -
external/sextractor/source/define.h | 211 -
external/sextractor/source/extract.c | 347 -
external/sextractor/source/extract.h | 50 -
external/sextractor/source/field.c | 174 -
external/sextractor/source/field.h | 27 -
external/sextractor/source/filter.c | 386 -
external/sextractor/source/filter.h | 47 -
external/sextractor/source/fitscat.c | 394 -
external/sextractor/source/fitscat.h | 222 -
external/sextractor/source/fitscat_defs.h | 138 -
external/sextractor/source/fitsconv.c | 187 -
external/sextractor/source/fitsfield.c | 240 -
external/sextractor/source/fitshead.c | 723 -
external/sextractor/source/fitshead.h | 171 -
external/sextractor/source/fitskey.c | 951 -
external/sextractor/source/fitsmisc.c | 102 -
external/sextractor/source/fitsread.c | 260 -
external/sextractor/source/fitstab.c | 616 -
external/sextractor/source/fitsutil.c | 476 -
external/sextractor/source/fitsutil.h | 49 -
external/sextractor/source/fitswrite.c | 419 -
external/sextractor/source/flag.c | 222 -
external/sextractor/source/flag.h | 25 -
external/sextractor/source/globals.h | 89 -
external/sextractor/source/graph.c | 154 -
external/sextractor/source/growth.c | 325 -
external/sextractor/source/growth.h | 36 -
external/sextractor/source/image.c | 638 -
external/sextractor/source/image.h | 42 -
external/sextractor/source/interpolate.c | 120 -
external/sextractor/source/interpolate.h | 24 -
external/sextractor/source/key.h | 42 -
external/sextractor/source/main.c | 100 -
external/sextractor/source/makeit.c | 366 -
external/sextractor/source/manobjlist.c | 108 -
external/sextractor/source/misc.c | 168 -
external/sextractor/source/neurro.c | 182 -
external/sextractor/source/neurro.h | 40 -
external/sextractor/source/param.h | 490 -
external/sextractor/source/pc.c | 470 -
external/sextractor/source/photom.c | 594 -
external/sextractor/source/photom.h | 38 -
external/sextractor/source/plist.c | 201 -
external/sextractor/source/plist.h | 49 -
external/sextractor/source/poly.c | 346 -
external/sextractor/source/poly.h | 47 -
external/sextractor/source/prefs.c | 508 -
external/sextractor/source/prefs.h | 177 -
external/sextractor/source/psf.c | 1159 -
external/sextractor/source/psf.h | 112 -
external/sextractor/source/readimage.c | 811 -
external/sextractor/source/refine.c | 334 -
external/sextractor/source/retina.c | 114 -
external/sextractor/source/retina.h | 35 -
external/sextractor/source/scan.c | 894 -
external/sextractor/source/sexchanges.log | 333 -
external/sextractor/source/sexhead.h | 111 -
external/sextractor/source/sexhead1.h | 131 -
external/sextractor/source/sexheadsc.h | 27 -
external/sextractor/source/som.c | 681 -
external/sextractor/source/som.h | 79 -
external/sextractor/source/types.h | 513 -
external/sextractor/source/wcs/Makefile.am | 44 -
external/sextractor/source/wcs/Makefile.in | 471 -
external/sextractor/source/wcs/Makefile.orig | 25 -
external/sextractor/source/wcs/README.SEX | 11 -
external/sextractor/source/wcs/cel.c | 567 -
external/sextractor/source/wcs/cel.h | 59 -
external/sextractor/source/wcs/lin.c | 423 -
external/sextractor/source/wcs/lin.h | 45 -
external/sextractor/source/wcs/proj.c | 3434 ---
external/sextractor/source/wcs/proj.h | 140 -
external/sextractor/source/wcs/sph.c | 222 -
external/sextractor/source/wcs/tcel.c | 313 -
external/sextractor/source/wcs/tlin.c | 123 -
external/sextractor/source/wcs/tpgc.c | 177 -
external/sextractor/source/wcs/wcs.c | 1083 -
external/sextractor/source/wcs/wcs.h | 80 -
external/sextractor/source/wcs/wcs_ori/Makefile | 254 -
external/sextractor/source/wcs/wcs_ori/README | 165 -
external/sextractor/source/wcs/wcs_ori/cel.c | 567 -
external/sextractor/source/wcs/wcs_ori/cel.h | 59 -
external/sextractor/source/wcs/wcs_ori/lin.c | 423 -
external/sextractor/source/wcs/wcs_ori/lin.h | 45 -
external/sextractor/source/wcs/wcs_ori/proj.c | 3434 ---
external/sextractor/source/wcs/wcs_ori/proj.h | 138 -
external/sextractor/source/wcs/wcs_ori/sph.c | 222 -
external/sextractor/source/wcs/wcs_ori/tcel.c | 313 -
external/sextractor/source/wcs/wcs_ori/tlin.c | 123 -
external/sextractor/source/wcs/wcs_ori/tpgc.c | 177 -
external/sextractor/source/wcs/wcs_ori/tproj1.c | 319 -
external/sextractor/source/wcs/wcs_ori/tproj2.c | 377 -
external/sextractor/source/wcs/wcs_ori/tsph.c | 133 -
external/sextractor/source/wcs/wcs_ori/twcs1.c | 317 -
external/sextractor/source/wcs/wcs_ori/twcs2.c | 764 -
external/sextractor/source/wcs/wcs_ori/wcs.c | 1081 -
external/sextractor/source/wcs/wcs_ori/wcs.h | 80 -
external/sextractor/source/wcs/wcs_ori/wcstrig.c | 183 -
external/sextractor/source/wcs/wcs_ori/wcstrig.h | 45 -
external/sextractor/source/wcs/wcstrig.c | 185 -
external/sextractor/source/wcs/wcstrig.h | 45 -
external/sextractor/source/weight.c | 121 -
external/sextractor/source/weight.h | 24 -
256 files changed, 108935 deletions(-)
diff --git a/external/psfex/CHANGES b/external/psfex/CHANGES
deleted file mode 100644
index 6bb3082..0000000
--- a/external/psfex/CHANGES
+++ /dev/null
@@ -1,38 +0,0 @@
-This is V1.8.1 (October 13 1999). New features include:
-- Optimized handling of oversampled data.
-- Enhanced PSF selection.
-
-/*- Previous notes for V1.6.0 (Mar 14 1999) */
-- Memory leaks removed from the LDACTools.
-- Bug fix in Constant PSF-mode.
-- RESIDUALS check-image now display absolute residuals
-- PSF_CHITHRESH config parameter replaced by PSF_NSUPER,
- which sets the default number of pixels to super-resolve
- (defaulted to 64).
-
-/*- Previous notes for V1.5.1 (Mar 8 1999) */
-- Bug fix in PSF Autoselection.
-- SNAPSHOTS check-image bug fixed.
-
-/*- Previous notes for V1.5.0 (Mar 7 1999) */
-- Automatic FWHM finder.
-- Object elongation taken into account.
-- Automatic sampling step.
-- Re-centering of PSF-candidates.
-- Chi2-filtering of PSF-candidates with odd shapes.
-- Optimization of solving routine.
-
-/*- Previous notes for V1.4 (Feb 20 1999) */
-- Solving optimized for sparse matrices.
-- Polynomial ``groups'' for parameters that are linked together.
-- Automatic downsizing of degrees of freedom when not enough PSF
- candidates are available.
-- Works with SExtractor 2.0.20 and later.
-
-/*- Previous notes for V1.3 (Dec 27 1998) */
-- PSF_MINSN config parameter setting the minimum S/N for PSF candidates.
-- PSF super-resolution for aliased pixels.
-
-Please report all bugs to bertin at iap.fr. Thanks!
-
- Emmanuel Bertin.
diff --git a/external/psfex/HISTORY b/external/psfex/HISTORY
deleted file mode 100644
index a6c78e3..0000000
--- a/external/psfex/HISTORY
+++ /dev/null
@@ -1,19 +0,0 @@
-October 99: 1.8
- - Optimized handling of oversampled data
-
-March 99: 1.5
- - Automatic candidate selection and filtering
- - Candidate recentering
- 1.6
- - New selection method of super-resolved pixels
-
-February 99: 1.4
- - Context Groups
- - Sparse matrices
-
-December 98: 1.3
- - First release.
- - PSF super-resolution added.
-
-June 98:
- - First running version.
diff --git a/external/psfex/INSTALL b/external/psfex/INSTALL
deleted file mode 100644
index 2020ac8..0000000
--- a/external/psfex/INSTALL
+++ /dev/null
@@ -1,8 +0,0 @@
-Installing PSFEx is really easy:
-- Go to the source/ subdirectory
-- Type ``make'' and see if your machine type is listed.
-- If this is the case, you can start the compilation with
- ``make SEXMACHINE=<machine_type>''
-- The compilation produces the PSFEx executable called ``psfex''.
- You may now copy it anywhere in your path and run it with
- configuration files like those in the config/ subdirectory.
diff --git a/external/psfex/Makefile.am b/external/psfex/Makefile.am
deleted file mode 100644
index 20f9674..0000000
--- a/external/psfex/Makefile.am
+++ /dev/null
@@ -1,46 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-## This file is part of the VIMOS Pipeline
-## Copyright (C) 2001-2004 European Southern Observatory
-
-## This program is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2 of the License, or
-## (at your option) any later version.
-
-## This program is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-
-## You should have received a copy of the GNU General Public License
-## along with this program; if not, write to the Free Software
-## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-
-ACLOCAL_AMFLAGS = -I m4macros
-
-DISTCLEANFILES = *~
-
-
-if MAINTAINER_MODE
-
-MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.h.in config.log \
- configure stamp-h.in
-
-endif
-
-
-COMPILE_FIRST =
-
-TOPSUBDIRS = source
-
-COMPILE_LAST =
-
-SUBDIRS = $(COMPILE_FIRST) $(TOPSUBDIRS) $(COMPILE_LAST)
-
-EXTRA_DIST = CHANGES HISTORY README.TOO config
-
-
-AM_MAKEFLAGS = SEXMACHINE=@SEXMACHINE@
diff --git a/external/psfex/Makefile.in b/external/psfex/Makefile.in
deleted file mode 100644
index 3a00904..0000000
--- a/external/psfex/Makefile.in
+++ /dev/null
@@ -1,733 +0,0 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
- esac; \
- test $$am__dry = yes; \
- }
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/admin/config.guess \
- $(top_srcdir)/admin/config.sub $(top_srcdir)/admin/install-sh \
- $(top_srcdir)/admin/missing $(top_srcdir)/configure INSTALL \
- admin/config.guess admin/config.sub admin/install-sh \
- admin/missing
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4macros/eso.m4 \
- $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-depcomp =
-am__depfiles_maybe =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
- distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- cscope distdir dist dist-all distcheck
-ETAGS = etags
-CTAGS = ctags
-CSCOPE = cscope
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- if test -d "$(distdir)"; then \
- find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -rf "$(distdir)" \
- || { sleep 5 && rm -rf "$(distdir)"; }; \
- else :; fi
-am__post_remove_distdir = $(am__remove_distdir)
-am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-DIST_TARGETS = dist-gzip
-distuninstallcheck_listfiles = find . -type f -print
-am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
- | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EXEEXT = @EXEEXT@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
-LIBM = @LIBM@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MKDIR_P = @MKDIR_P@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SEXMACHINE = @SEXMACHINE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-ACLOCAL_AMFLAGS = -I m4macros
-DISTCLEANFILES = *~
- at MAINTAINER_MODE_TRUE@MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.h.in config.log \
- at MAINTAINER_MODE_TRUE@ configure stamp-h.in
-
-COMPILE_FIRST =
-TOPSUBDIRS = source
-COMPILE_LAST =
-SUBDIRS = $(COMPILE_FIRST) $(TOPSUBDIRS) $(COMPILE_LAST)
-EXTRA_DIST = CHANGES HISTORY README.TOO config
-AM_MAKEFLAGS = SEXMACHINE=@SEXMACHINE@
-all: all-recursive
-
-.SUFFIXES:
-am--refresh: Makefile
- @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
- $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- echo ' $(SHELL) ./config.status'; \
- $(SHELL) ./config.status;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- $(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-$(am__aclocal_m4_deps):
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run 'make' without going through this Makefile.
-# To change the values of 'make' variables: instead of editing Makefiles,
-# (1) if the variable is set in 'config.status', edit 'config.status'
-# (which will cause the Makefiles to be regenerated when you run 'make');
-# (2) otherwise, pass the desired values on the 'make' command line.
-$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- for subdir in $$list; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- dot_seen=yes; \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
-cscopelist-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
- done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
- include_option=--etags-include; \
- empty_fix=.; \
- else \
- include_option=--include; \
- empty_fix=; \
- fi; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test ! -f $$subdir/TAGS || \
- set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
- fi; \
- done; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-cscope: cscope.files
- test ! -s cscope.files \
- || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
-
-clean-cscope:
- -rm -f cscope.files
-
-cscope.files: clean-cscope cscopelist-recursive cscopelist
-
-cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
- -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- test -d "$(distdir)" || mkdir "$(distdir)"
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- $(am__make_dryrun) \
- || test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- am__remove_distdir=: \
- am__skip_length_check=: \
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
- -test -n "$(am__skip_mode_fix)" \
- || find "$(distdir)" -type d ! -perm -755 \
- -exec chmod u+rwx,go+rx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r "$(distdir)"
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__post_remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
- $(am__post_remove_distdir)
-
-dist-lzip: distdir
- tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
- $(am__post_remove_distdir)
-
-dist-xz: distdir
- tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
- $(am__post_remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__post_remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__post_remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__post_remove_distdir)
-
-dist dist-all:
- $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
- $(am__post_remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lz*) \
- lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
- *.tar.xz*) \
- xz -dc $(distdir).tar.xz | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod u+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- test -d $(distdir)/_build || exit 0; \
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && am__cwd=`pwd` \
- && $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(AM_DISTCHECK_CONFIGURE_FLAGS) \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
- && cd "$$am__cwd" \
- || exit 1
- $(am__post_remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
-distuninstallcheck:
- @test -n '$(distuninstallcheck_dir)' || { \
- echo 'ERROR: trying to run $@ with an empty' \
- '$$(distuninstallcheck_dir)' >&2; \
- exit 1; \
- }; \
- $(am__cd) '$(distuninstallcheck_dir)' || { \
- echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
- exit 1; \
- }; \
- test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-recursive
-
-clean-am: clean-generic mostlyclean-am
-
-distclean: distclean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf $(top_srcdir)/autom4te.cache
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
- cscopelist-recursive ctags-recursive install-am install-strip \
- tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-cscope \
- clean-generic cscope cscopelist cscopelist-recursive ctags \
- ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-lzip \
- dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \
- distclean-generic distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
- tags-recursive uninstall uninstall-am
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/external/psfex/README b/external/psfex/README
deleted file mode 100644
index 46a372b..0000000
--- a/external/psfex/README
+++ /dev/null
@@ -1,16 +0,0 @@
-October 13, 1999
-
-This is V1.8.1 of PSFEx.
-PSFEx stands for ``PSF Extractor'': a software that makes
-PSF models to be used within the SExtractor program.
-
-In case of problems, questions or suggestions related to the software,
-please don't hesitate to send a mail to the official mailing list:
-sextractor at iap.fr
-You may consult questions and their answers on the Web at:
-http://terapix.iap.fr/sextractor/
-In any case you can still reach me at bertin at iap.fr. I cannot garantee
-that I will reply immediately, but I will try for sure to provide
-an answer.
-
- Emmanuel Bertin.
diff --git a/external/psfex/README.TOO b/external/psfex/README.TOO
deleted file mode 100644
index dad9b46..0000000
--- a/external/psfex/README.TOO
+++ /dev/null
@@ -1,12 +0,0 @@
-This software is Copyrighted (C) E.BERTIN 1998,1999
-It is freely distributable.
-If you make any change to this program, please indicate it clearly
-in the source and rename the executable to something else.
-
- ******************************************************************
- * This program is distributed in the hope that it will be useful,*
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
- ******************************************************************
-
- E. BERTIN (bertin at iap)
diff --git a/external/psfex/acinclude.m4 b/external/psfex/acinclude.m4
deleted file mode 100644
index c082b24..0000000
--- a/external/psfex/acinclude.m4
+++ /dev/null
@@ -1,99 +0,0 @@
-# PSFEX_PROG_CC
-#--------------
-# Check for a C compiler the psfex way.
-AC_DEFUN([PSFEX_PROG_CC],
-[
- AC_REQUIRE([AC_CANONICAL_TARGET])
- AC_REQUIRE([AC_PROG_CC])
-
- AC_ARG_WITH(machine,
- [ --with-machine=MACHINE configure psfex for building on MACHINE],
- psfex_host=$withval, psfex_host=auto)
-
- AC_MSG_CHECKING([for psfex target host configuration])
-
- AC_CACHE_VAL(psfex_cv_host,
- [
- if test x"$psfex_host" = xauto; then
- case "${target}" in
- *ibm-aix*) psfex_host_tag="ibm";;
- *dec-osf*) psfex_host_tag="alpha";;
- *dec-ultrix*) psfex_host_tag="ultrix";;
- *hp-hpux*) psfex_host_tag="hpux";;
- *solaris*) psfex_host_tag="solaris";;
- *sunos*) psfex_host_tag="sunos";;
- *sgi-irix*) psfex_host_tag="sgi";;
- *linux-gnu*) psfex_host_tag="linuxpc";;
- *darwin*) psfex_host_tag="linuxpc";;
- *)
- AC_MSG_ERROR([Unsupported host type $host])
- ;;
- esac
- else
- psfex_host_tag=$psfex_host
- fi
-
- psfex_cv_host="psfex_host_tag=$psfex_host_tag"
- ])
-
- eval "$psfex_cv_host"
- AC_MSG_RESULT($psfex_host_tag)
-
- #Check extra compiler flags and add them to CFLAGS
- case "${psfex_host_tag}" in
- ibm)
- CPPFLAGS="$CPPFLAGS -DIBM_AIX"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(O, [CFLAGS="$CFLAGS -O"])
- fi
- ;;
- alpha)
- CPPFLAGS="$CPPFLAGS -DDEC_ALPHA"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(O, [CFLAGS="$CFLAGS -O"])
- fi
- ;;
- ultrix)
- CPPFLAGS="$CPPFLAGS -DBSWAP"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(O, [CFLAGS="$CFLAGS -O"])
- fi
- ;;
- hpux)
- if test x"$GCC" != xyes; then
- CPPFLAGS="$CPPFLAGS -DHP_UX"
- fi
- ;;
- solaris)
- CPPFLAGS="$CPPFLAGS -DSUN_SOLARIS"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(fast, [CFLAGS="$CFLAGS -fast"])
- ESO_PROG_CC_FLAG(xO5, [CFLAGS="$CFLAGS -xO5"])
- fi
- ;;
- sunos)
- CPPFLAGS="$CPPFLAGS -DSUN_OS"
- ;;
- sgi)
- ;;
- linuxpc)
- CPPFLAGS="$CPPFLAGS -DPC_LINUX"
- if test x"$GCC" = xyes; then
- ESO_PROG_CC_FLAG(malign-double,
- [CFLAGS="$CFLAGS -malign-double"])
- ESO_PROG_CC_FLAG(finline-functions,
- [CFLAGS="$CFLAGS -finline-functions"])
- ESO_PROG_CC_FLAG(funroll-loops,
- [CFLAGS="$CFLAGS -funroll-loops"])
- fi
- ;;
- *)
- if test x"$psfex_host" != xauto; then
- AC_MSG_ERROR([Unsupported host type $psfex_host])
- fi
- ;;
- esac
-
- SEXMACHINE="$psfex_host_tag"
- AC_SUBST(SEXMACHINE)
-])
diff --git a/external/psfex/aclocal.m4 b/external/psfex/aclocal.m4
deleted file mode 100644
index ff0daef..0000000
--- a/external/psfex/aclocal.m4
+++ /dev/null
@@ -1,1015 +0,0 @@
-# generated automatically by aclocal 1.12.2 -*- Autoconf -*-
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
-[m4_warning([this file was generated for autoconf 2.69.
-You have another version of autoconf. It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-
-# Copyright (C) 2002-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.12'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.12.2], [],
- [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too. Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.12.2])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
-# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory. The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run. This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-# fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-# fails if $ac_aux_dir is absolute,
-# fails when called from a subdirectory in a VPATH build with
-# a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir. In an in-source build this is usually
-# harmless because $srcdir is '.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
-# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-# MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH. The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_CONDITIONAL -*- Autoconf -*-
-
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 10
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ([2.52])dnl
- m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
- [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
- AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 17
-
-# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery. Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
- [$1], [CXX], [depcc="$CXX" am_compiler_list=],
- [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
- [$1], [UPC], [depcc="$UPC" am_compiler_list=],
- [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
- [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named 'D' -- because '-MD' means "put the output
- # in D".
- rm -rf conftest.dir
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_$1_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
- fi
- am__universal=false
- m4_case([$1], [CC],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac],
- [CXX],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac])
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
- # Solaris 10 /bin/sh.
- echo '/* dummy */' > sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with '-c' and '-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle '-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs.
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # After this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested.
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok '-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_$1_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE([dependency-tracking], [dnl
-AS_HELP_STRING(
- [--enable-dependency-tracking],
- [do not reject slow dependency extractors])
-AS_HELP_STRING(
- [--disable-dependency-tracking],
- [speeds up one-time build])])
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
- am__nodep='_no'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-AC_SUBST([am__nodep])dnl
-_AM_SUBST_NOTMAKE([am__nodep])dnl
-])
-
-# Generate code to set up dependency tracking. -*- Autoconf -*-
-
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 6
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each '.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
- [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-
-# Do all the work for Automake. -*- Autoconf -*-
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 19
-
-# This macro actually does too much. Some checks are only needed if
-# your package does certain things. But this isn't really a big deal.
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out. PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition. After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names. We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[AC_DIAGNOSE([obsolete],
-[$0: two- and three-arguments forms are deprecated. For more info, see:
-http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_INIT_AUTOMAKE-invocation])
-m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(
- m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
- [ok:ok],,
- [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
- AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
-AM_MISSING_PROG([AUTOCONF], [autoconf])
-AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
-AM_MISSING_PROG([AUTOHEADER], [autoheader])
-AM_MISSING_PROG([MAKEINFO], [makeinfo])
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-# For better backward compatibility. To be removed once Automake 1.9.x
-# dies out for good. For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
-AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
- [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES([CC])],
- [m4_define([AC_PROG_CC],
- m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES([CXX])],
- [m4_define([AC_PROG_CXX],
- m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES([OBJC])],
- [m4_define([AC_PROG_OBJC],
- m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
-dnl Support for Objective C++ was only introduced in Autoconf 2.65,
-dnl but we still cater to Autoconf 2.62.
-m4_ifdef([AC_PROG_OBJCXX],
-[AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
- [_AM_DEPENDENCIES([OBJCXX])],
- [m4_define([AC_PROG_OBJCXX],
- m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The 'parallel-tests' driver may need to know about EXEEXT, so add the
-dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
- [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-
-dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated. The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-AC_SUBST([install_sh])])
-
-# Copyright (C) 2003-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot. For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
-# From Jim Meyering
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 7
-
-# AM_MAINTAINER_MODE([DEFAULT-MODE])
-# ----------------------------------
-# Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless 'enable' is passed literally.
-# For symmetry, 'disable' may be passed as well. Anyway, the user
-# can override the default with the --enable/--disable switch.
-AC_DEFUN([AM_MAINTAINER_MODE],
-[m4_case(m4_default([$1], [disable]),
- [enable], [m4_define([am_maintainer_other], [disable])],
- [disable], [m4_define([am_maintainer_other], [enable])],
- [m4_define([am_maintainer_other], [enable])
- m4_warn([syntax], [unexpected argument to AM@&t at _MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode's default is 'disable' unless 'enable' is passed
- AC_ARG_ENABLE([maintainer-mode],
- [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
- am_maintainer_other[ make rules and dependencies not useful
- (and sometimes confusing) to the casual installer])],
- [USE_MAINTAINER_MODE=$enableval],
- [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
- AC_MSG_RESULT([$USE_MAINTAINER_MODE])
- AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST([MAINT])dnl
-]
-)
-
-AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-
-# Check to see how 'make' treats includes. -*- Autoconf -*-
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 5
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 7
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- AC_MSG_WARN(['missing' script is too old or missing])
-fi
-])
-
-# Helper functions for option handling. -*- Autoconf -*-
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 6
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# --------------------
-# Set option NAME. Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Check to make sure that the build environment is sane. -*- Autoconf -*-
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 9
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[[\\\"\#\$\&\'\`$am_lf]]*)
- AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
- *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
- AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
-esac
-
-# Do 'set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- am_has_slept=no
- for am_try in 1 2; do
- echo "timestamp, slept: $am_has_slept" > conftest.file
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$[*]" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- if test "$[*]" != "X $srcdir/configure conftest.file" \
- && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
- alias in your environment])
- fi
- if test "$[2]" = conftest.file || test $am_try -eq 2; then
- break
- fi
- # Just in case.
- sleep 1
- am_has_slept=yes
- done
- test "$[2]" = conftest.file
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT([yes])
-# If we didn't sleep, we still need to ensure time stamps of config.status and
-# generated files are strictly newer.
-am_sleep_pid=
-if grep 'slept: no' conftest.file >/dev/null 2>&1; then
- ( sleep 1 ) &
- am_sleep_pid=$!
-fi
-AC_CONFIG_COMMANDS_PRE(
- [AC_MSG_CHECKING([that generated files are newer than configure])
- if test -n "$am_sleep_pid"; then
- # Hide warnings about reused PIDs.
- wait $am_sleep_pid 2>/dev/null
- fi
- AC_MSG_RESULT([done])])
-rm -f conftest.file
-])
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor 'install' (even GNU) is that you can't
-# specify the program used to strip binaries. This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in "make install-strip", and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using 'strip' when the user
-# run "make install-strip". However 'strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the 'STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
-if test "$cross_compiling" != no; then
- AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 3
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# --------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball. -*- Autoconf -*-
-
-# Copyright (C) 2004-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 3
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of 'v7', 'ustar', or 'pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-# tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-# $(am__untar) < result.tar
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility. Yes, it's still used
-# in the wild :-( We should find a proper way to deprecate it ...
-AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
- [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of '-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
-
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
-
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
- rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-]) # _AM_PROG_TAR
-
-m4_include([m4macros/eso.m4])
-m4_include([acinclude.m4])
diff --git a/external/psfex/admin/config.guess b/external/psfex/admin/config.guess
deleted file mode 100755
index c0adba9..0000000
--- a/external/psfex/admin/config.guess
+++ /dev/null
@@ -1,1530 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
-
-timestamp='2012-06-10'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner. Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
-#
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help" >&2
- exit 1 ;;
- * )
- break ;;
- esac
-done
-
-if test $# != 0; then
- echo "$me: too many arguments$help" >&2
- exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
- # compatibility and a consistent mechanism for selecting the
- # object file format.
- #
- # Note: NetBSD doesn't particularly care about the vendor
- # portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
- armeb) machine=armeb-unknown ;;
- arm*) machine=arm-unknown ;;
- sh3el) machine=shl-unknown ;;
- sh3eb) machine=sh-unknown ;;
- sh5el) machine=sh5le-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
- esac
- # The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ELF__
- then
- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
- # Return netbsd for either. FIX?
- os=netbsd
- else
- os=netbsdelf
- fi
- ;;
- *)
- os=netbsd
- ;;
- esac
- # The OS release
- # Debian GNU/NetBSD machines have a different userland, and
- # thus, need a distinct triplet. However, they do not need
- # kernel version information, so it can be replaced with a
- # suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
- Debian*)
- release='-gnu'
- ;;
- *)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- ;;
- esac
- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
- # contains redundant information, the shorter form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit ;;
- *:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
- exit ;;
- *:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit ;;
- *:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
- exit ;;
- macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- *:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- alpha:OSF1:*:*)
- case $UNAME_RELEASE in
- *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- ;;
- *5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
- ;;
- esac
- # According to Compaq, /usr/sbin/psrinfo has been available on
- # OSF/1 and Tru64 systems produced since 1995. I hope that
- # covers most systems running today. This code pipes the CPU
- # types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
- "EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
- "EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
- "LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
- "EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
- "EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
- "EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
- "EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
- "EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
- "EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
- "EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
- "EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
- "EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
- esac
- # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # A Tn.n version is a released field test version.
- # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
- exitcode=$?
- trap '' 0
- exit $exitcode ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit ;;
- Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
- exit ;;
- *:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
- exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
- exit ;;
- *:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
- *:OS400:*:*)
- echo powerpc-ibm-os400
- exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit ;;
- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- # akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit ;;
- DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit ;;
- DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
- case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
- s390x:SunOS:*:*)
- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux${UNAME_RELEASE}
- exit ;;
- i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval $set_cc_for_build
- SUN_ARCH="i386"
- # If there is a compiler, see if it is configured for 64-bit objects.
- # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
- # This test works for both compilers.
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- SUN_ARCH="x86_64"
- fi
- fi
- echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
- # it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
- UNAME_RELEASE=`uname -v`
- ;;
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit ;;
- sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- case "`/bin/arch`" in
- sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
- ;;
- sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
- exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
- exit ;;
- # The situation for MiNT is a little confusing. The machine name
- # can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
- # MiNT. But MiNT is downward compatible to TOS, so this should
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit ;;
- m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
- exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
- exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
- exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
- #if defined (host_mips) && defined (MIPSEB)
- #if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
- #endif
- #endif
- exit (-1);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos${UNAME_RELEASE}
- exit ;;
- Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit ;;
- Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
- then
- echo m88k-dg-dgux${UNAME_RELEASE}
- else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
- fi
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
- exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i*86:AIX:*:*)
- echo i386-ibm-aix
- exit ;;
- ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
- main()
- {
- if (!__power_pc())
- exit(1);
- puts("powerpc-ibm-aix3.2.5");
- exit(0);
- }
-EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
- then
- echo "$SYSTEM_NAME"
- else
- echo rs6000-ibm-aix3.2.5
- fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
- exit ;;
- *:AIX:*:[4567])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
- fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
- exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
- exit ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
- exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit ;;
- 9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
- 9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
- fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
-
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
-EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
- test -z "$HP_ARCH" && HP_ARCH=hppa
- fi ;;
- esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
- then
- eval $set_cc_for_build
-
- # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
- # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
- # generating 64-bit code. GNU and HP use different nomenclature:
- #
- # $ CC_FOR_BUILD=cc ./config.guess
- # => hppa2.0w-hp-hpux11.23
- # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
- # => hppa64-hp-hpux11.23
-
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep -q __LP64__
- then
- HP_ARCH="hppa2.0w"
- else
- HP_ARCH="hppa64"
- fi
- fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit ;;
- ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
- exit ;;
- 3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
- main ()
- {
- long cpu = sysconf (_SC_CPU_VERSION);
- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
- results, however. */
- if (CPU_IS_PA_RISC (cpu))
- {
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
- default: puts ("hppa-hitachi-hiuxwe2"); break;
- }
- }
- else if (CPU_IS_HP_MC68K (cpu))
- puts ("m68k-hitachi-hiuxwe2");
- else puts ("unknown-hitachi-hiuxwe2");
- exit (0);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
- exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
- exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit ;;
- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
- exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit ;;
- i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
- exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit ;;
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
- -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- *:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- 5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:FreeBSD:*:*)
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- case ${UNAME_PROCESSOR} in
- amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- esac
- exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit ;;
- *:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit ;;
- i*:MSYS*:*)
- echo ${UNAME_MACHINE}-pc-msys
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
- exit ;;
- i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
- exit ;;
- *:Interix*:*)
- case ${UNAME_MACHINE} in
- x86)
- echo i586-pc-interix${UNAME_RELEASE}
- exit ;;
- authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
- exit ;;
- IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
- exit ;;
- esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit ;;
- 8664:Windows_NT:*)
- echo x86_64-pc-mks
- exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
- exit ;;
- amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- *:GNU:*:*)
- # the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit ;;
- *:GNU/*:*:*)
- # other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit ;;
- aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- aarch64_be:Linux:*:*)
- UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit ;;
- arm*:Linux:*:*)
- eval $set_cc_for_build
- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_EABI__
- then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- else
- if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_PCS_VFP
- then
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
- else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
- fi
- fi
- exit ;;
- avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- cris:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
- exit ;;
- crisv32:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
- exit ;;
- frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- i*86:Linux:*:*)
- LIBC=gnu
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
- exit ;;
- ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
- ;;
- or32:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
- exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
- exit ;;
- parisc:Linux:*:* | hppa:Linux:*:*)
- # Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
- esac
- exit ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
- exit ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
- exit ;;
- s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
- exit ;;
- sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
- exit ;;
- x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
- # earlier versions are messed up and put the nodename in both
- # sysname and nodename.
- echo i386-sequent-sysv4
- exit ;;
- i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
- # I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit ;;
- i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
- exit ;;
- i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
- exit ;;
- i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
- exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
- exit ;;
- i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
- case `/bin/uname -X | grep "^Machine"` in
- *486*) UNAME_MACHINE=i486 ;;
- *Pentium) UNAME_MACHINE=i586 ;;
- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
- esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit ;;
- i*86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
- exit ;;
- pc:*:*:*)
- # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i586.
- # Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configury will decide that
- # this is a cross-build.
- echo i586-pc-msdosdjgpp
- exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
- exit ;;
- i860:*:4.*:*) # i860-SVR4
- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
- exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
- exit ;;
- mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit ;;
- M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit ;;
- M68*:*:R3V[5678]*:*)
- test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
- 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
- NCR*:*:4.2:* | MPRAS*:*:4.2:*)
- OS_REL='.3'
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
- exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
- else
- echo ns32k-sni-sysv
- fi
- exit ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel at ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes at openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit ;;
- *:*:*:FTX*)
- # From seanf at swdc.stratus.com.
- echo i860-stratus-sysv4
- exit ;;
- i*86:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
- exit ;;
- *:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo hppa1.1-stratus-vos
- exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
- exit ;;
- news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
- exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit ;;
- BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux${UNAME_RELEASE}
- exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- i386)
- eval $set_cc_for_build
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- UNAME_PROCESSOR="x86_64"
- fi
- fi ;;
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
- UNAME_PROCESSOR=i386
- UNAME_MACHINE=pc
- fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit ;;
- *:QNX:*:4*)
- echo i386-pc-qnx
- exit ;;
- NEO-?:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSR-?:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
- exit ;;
- *:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit ;;
- BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit ;;
- DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit ;;
- *:Plan9:*:*)
- # "uname -m" is not consistent, so use $cputype instead. 386
- # is converted to i386 for consistency with other x86
- # operating systems.
- if test "$cputype" = "386"; then
- UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
- fi
- echo ${UNAME_MACHINE}-unknown-plan9
- exit ;;
- *:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit ;;
- *:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit ;;
- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit ;;
- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit ;;
- *:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit ;;
- *:ITS:*:*)
- echo pdp10-unknown-its
- exit ;;
- SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
- exit ;;
- *:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit ;;
- *:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "${UNAME_MACHINE}" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
- esac ;;
- *:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
- i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
- exit ;;
- i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
- exit ;;
- i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
- exit ;;
- x86_64:VMkernel:*:*)
- echo ${UNAME_MACHINE}-unknown-esx
- exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
- exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/external/psfex/admin/config.sub b/external/psfex/admin/config.sub
deleted file mode 100755
index 6205f84..0000000
--- a/external/psfex/admin/config.sub
+++ /dev/null
@@ -1,1782 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
-
-timestamp='2012-04-18'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches at gnu.org>. Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo $1
- exit ;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- android-linux)
- os=-linux-android
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze)
- os=
- basic_machine=$1
- ;;
- -bluegene*)
- os=-cnk
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*178)
- os=-lynxos178
- ;;
- -lynx*5)
- os=-lynxos5
- ;;
- -lynx*)
- os=-lynxos
- ;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
- -psos*)
- os=-psos
- ;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | aarch64 | aarch64_be \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
- | be32 | be64 \
- | bfin \
- | c4x | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | epiphany \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | hexagon \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | le32 | le64 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nds32 | nds32le | nds32be \
- | nios | nios2 \
- | ns16k | ns32k \
- | open8 \
- | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle \
- | pyramid \
- | rl78 | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu \
- | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
- | we32k \
- | x86 | xc16x | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- c54x)
- basic_machine=tic54x-unknown
- ;;
- c55x)
- basic_machine=tic55x-unknown
- ;;
- c6x)
- basic_machine=tic6x-unknown
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
- ms1)
- basic_machine=mt-unknown
- ;;
-
- strongarm | thumb | xscale)
- basic_machine=arm-unknown
- ;;
- xgate)
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- xscaleeb)
- basic_machine=armeb-unknown
- ;;
-
- xscaleel)
- basic_machine=armel-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | aarch64-* | aarch64_be-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | be32-* | be64-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* \
- | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | hexagon-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | le32-* | le64-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nds32-* | nds32le-* | nds32be-* \
- | nios-* | nios2-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | open8-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
- | pyramid-* \
- | rl78-* | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
- | tahoe-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tile*-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
- | vax-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=-aros
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- bluegene*)
- basic_machine=powerpc-ibm
- os=-cnk
- ;;
- c54x-*)
- basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c55x-*)
- basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c6x-*)
- basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=-cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16 | cr16-*)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=-dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
- i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
- i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
- i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
- ;;
- *)
- os=-irix4
- ;;
- esac
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- microblaze)
- basic_machine=microblaze-xilinx
- ;;
- mingw32)
- basic_machine=i386-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- msys)
- basic_machine=i386-pc
- os=-msys
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- nacl)
- basic_machine=le32-unknown
- os=-nacl
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
- ;;
- -ns2*)
- os=-nextstep2
- ;;
- *)
- os=-nextstep3
- ;;
- esac
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- neo-tandem)
- basic_machine=neo-tandem
- ;;
- nse-tandem)
- basic_machine=nse-tandem
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc | ppcbe) basic_machine=powerpc-unknown
- ;;
- ppc-* | ppcbe-*)
- basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rdos)
- basic_machine=i386-pc
- os=-rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sde)
- basic_machine=mipsisa32-sde
- os=-elf
- ;;
- sei)
- basic_machine=mips-sei
- os=-seiux
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh5el)
- basic_machine=sh5le-unknown
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
- ;;
- strongarm-* | thumb-*)
- basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=-unicos
- ;;
- tile*)
- basic_machine=$basic_machine-unknown
- os=-linux-gnu
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- tpf)
- basic_machine=s390x-ibm
- os=-tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=-vms
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
- ;;
- w65*)
- basic_machine=w65-wdc
- os=-none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- xscale-* | xscalee[bl]-*)
- basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
- ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
- z80-*-coff)
- basic_machine=z80-unknown
- os=-sim
- ;;
- none)
- basic_machine=none-none
- os=-none
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- mmix)
- basic_machine=mmix-knuth
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -auroraux)
- os=-auroraux
- ;;
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- -solaris)
- os=-solaris2
- ;;
- -svr4*)
- os=-sysv4
- ;;
- -unixware*)
- os=-sysv4.2uw
- ;;
- -gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
- | -sym* | -kopensolaris* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* \
- | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-android* \
- | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=-nto$os
- ;;
- esac
- ;;
- -nto-qnx*)
- ;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
- -linux-dietlibc)
- os=-linux-dietlibc
- ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
- ;;
- -opened*)
- os=-openedition
- ;;
- -os400*)
- os=-os400
- ;;
- -wince*)
- os=-wince
- ;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
- -utek*)
- os=-bsd
- ;;
- -dynix*)
- os=-bsd
- ;;
- -acis*)
- os=-aos
- ;;
- -atheos*)
- os=-atheos
- ;;
- -syllable*)
- os=-syllable
- ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
- -nova*)
- os=-rtmk-nova
- ;;
- -ns2 )
- os=-nextstep2
- ;;
- -nsk*)
- os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- -sinix*)
- os=-sysv4
- ;;
- -tpf*)
- os=-tpf
- ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
- -svr4)
- os=-sysv4
- ;;
- -svr3)
- os=-sysv3
- ;;
- -sysvr4)
- os=-sysv4
- ;;
- # This must come after -sysvr4.
- -sysv*)
- ;;
- -ose*)
- os=-ose
- ;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
- ;;
- -aros*)
- os=-aros
- ;;
- -kaos*)
- os=-kaos
- ;;
- -zvmoe)
- os=-zvmoe
- ;;
- -dicos*)
- os=-dicos
- ;;
- -nacl*)
- ;;
- -none)
- ;;
- *)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- score-*)
- os=-elf
- ;;
- spu-*)
- os=-elf
- ;;
- *-acorn)
- os=-riscix1.2
- ;;
- arm*-rebel)
- os=-linux
- ;;
- arm*-semi)
- os=-aout
- ;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
- hexagon-*)
- os=-elf
- ;;
- tic54x-*)
- os=-coff
- ;;
- tic55x-*)
- os=-coff
- ;;
- tic6x-*)
- os=-coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=-tops20
- ;;
- pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
- os=-ultrix4.2
- ;;
- m68*-apollo)
- os=-domain
- ;;
- i386-sun)
- os=-sunos4.0.2
- ;;
- m68000-sun)
- os=-sunos3
- ;;
- m68*-cisco)
- os=-aout
- ;;
- mep-*)
- os=-elf
- ;;
- mips*-cisco)
- os=-elf
- ;;
- mips*-*)
- os=-elf
- ;;
- or32-*)
- os=-coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
- sparc-* | *-sun)
- os=-sunos4.1.1
- ;;
- *-be)
- os=-beos
- ;;
- *-haiku)
- os=-haiku
- ;;
- *-ibm)
- os=-aix
- ;;
- *-knuth)
- os=-mmixware
- ;;
- *-wec)
- os=-proelf
- ;;
- *-winbond)
- os=-proelf
- ;;
- *-oki)
- os=-proelf
- ;;
- *-hp)
- os=-hpux
- ;;
- *-hitachi)
- os=-hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
- ;;
- *-cbm)
- os=-amigaos
- ;;
- *-dg)
- os=-dgux
- ;;
- *-dolphin)
- os=-sysv3
- ;;
- m68k-ccur)
- os=-rtu
- ;;
- m88k-omron*)
- os=-luna
- ;;
- *-next )
- os=-nextstep
- ;;
- *-sequent)
- os=-ptx
- ;;
- *-crds)
- os=-unos
- ;;
- *-ns)
- os=-genix
- ;;
- i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
- ;;
- *-gould)
- os=-sysv
- ;;
- *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
- *-sgi)
- os=-irix
- ;;
- *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
- os=-coff
- ;;
- *-*bug)
- os=-coff
- ;;
- *-apple)
- os=-macos
- ;;
- *-atari*)
- os=-mint
- ;;
- *)
- os=-none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
- vendor=acorn
- ;;
- -sunos*)
- vendor=sun
- ;;
- -cnk*|-aix*)
- vendor=ibm
- ;;
- -beos*)
- vendor=be
- ;;
- -hpux*)
- vendor=hp
- ;;
- -mpeix*)
- vendor=hp
- ;;
- -hiux*)
- vendor=hitachi
- ;;
- -unos*)
- vendor=crds
- ;;
- -dgux*)
- vendor=dg
- ;;
- -luna*)
- vendor=omron
- ;;
- -genix*)
- vendor=ns
- ;;
- -mvs* | -opened*)
- vendor=ibm
- ;;
- -os400*)
- vendor=ibm
- ;;
- -ptx*)
- vendor=sequent
- ;;
- -tpf*)
- vendor=ibm
- ;;
- -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
- vendor=apple
- ;;
- -hms*)
- vendor=hitachi
- ;;
- -mpw* | -macos*)
- vendor=apple
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
- -vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/external/psfex/admin/install-sh b/external/psfex/admin/install-sh
deleted file mode 100755
index 377bb86..0000000
--- a/external/psfex/admin/install-sh
+++ /dev/null
@@ -1,527 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2011-11-20.07; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# 'make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-nl='
-'
-IFS=" "" $nl"
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit=${DOITPROG-}
-if test -z "$doit"; then
- doit_exec=exec
-else
- doit_exec=$doit
-fi
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_glob='?'
-initialize_posix_glob='
- test "$posix_glob" != "?" || {
- if (set -f) 2>/dev/null; then
- posix_glob=
- else
- posix_glob=:
- fi
- }
-'
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-no_target_directory=
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
- or: $0 [OPTION]... SRCFILES... DIRECTORY
- or: $0 [OPTION]... -t DIRECTORY SRCFILES...
- or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
- --help display this help and exit.
- --version display version info and exit.
-
- -c (ignored)
- -C install only if different (preserve the last data modification time)
- -d create directories instead of installing files.
- -g GROUP $chgrpprog installed files to GROUP.
- -m MODE $chmodprog installed files to MODE.
- -o USER $chownprog installed files to USER.
- -s $stripprog installed files.
- -t DIRECTORY install into DIRECTORY.
- -T report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
- CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
- RMPROG STRIPPROG
-"
-
-while test $# -ne 0; do
- case $1 in
- -c) ;;
-
- -C) copy_on_change=true;;
-
- -d) dir_arg=true;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift;;
-
- --help) echo "$usage"; exit $?;;
-
- -m) mode=$2
- case $mode in
- *' '* | *' '* | *'
-'* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
-
- -o) chowncmd="$chownprog $2"
- shift;;
-
- -s) stripcmd=$stripprog;;
-
- -t) dst_arg=$2
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- shift;;
-
- -T) no_target_directory=true;;
-
- --version) echo "$0 $scriptversion"; exit $?;;
-
- --) shift
- break;;
-
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
-
- *) break;;
- esac
- shift
-done
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
- # When -d is used, all remaining arguments are directories to create.
- # When -t is used, the destination is already specified.
- # Otherwise, the last argument is the destination. Remove it from $@.
- for arg
- do
- if test -n "$dst_arg"; then
- # $@ is not empty: it contains at least $arg.
- set fnord "$@" "$dst_arg"
- shift # fnord
- fi
- shift # arg
- dst_arg=$arg
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- done
-fi
-
-if test $# -eq 0; then
- if test -z "$dir_arg"; then
- echo "$0: no input file specified." >&2
- exit 1
- fi
- # It's OK to call 'install-sh -d' without argument.
- # This can happen when creating conditional directories.
- exit 0
-fi
-
-if test -z "$dir_arg"; then
- do_exit='(exit $ret); exit $ret'
- trap "ret=129; $do_exit" 1
- trap "ret=130; $do_exit" 2
- trap "ret=141; $do_exit" 13
- trap "ret=143; $do_exit" 15
-
- # Set umask so as not to create temps with too-generous modes.
- # However, 'strip' requires both read and write access to temps.
- case $mode in
- # Optimize common cases.
- *644) cp_umask=133;;
- *755) cp_umask=22;;
-
- *[0-7])
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw='% 200'
- fi
- cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
- *)
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw=,u+rw
- fi
- cp_umask=$mode$u_plus_rw;;
- esac
-fi
-
-for src
-do
- # Protect names problematic for 'test' and other utilities.
- case $src in
- -* | [=\(\)!]) src=./$src;;
- esac
-
- if test -n "$dir_arg"; then
- dst=$src
- dstdir=$dst
- test -d "$dstdir"
- dstdir_status=$?
- else
-
- # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
- # might cause directories to be created, which would be especially bad
- # if $src (and thus $dsttmp) contains '*'.
- if test ! -f "$src" && test ! -d "$src"; then
- echo "$0: $src does not exist." >&2
- exit 1
- fi
-
- if test -z "$dst_arg"; then
- echo "$0: no destination specified." >&2
- exit 1
- fi
- dst=$dst_arg
-
- # If destination is a directory, append the input filename; won't work
- # if double slashes aren't ignored.
- if test -d "$dst"; then
- if test -n "$no_target_directory"; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
- fi
- dstdir=$dst
- dst=$dstdir/`basename "$src"`
- dstdir_status=0
- else
- # Prefer dirname, but fall back on a substitute if dirname fails.
- dstdir=`
- (dirname "$dst") 2>/dev/null ||
- expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$dst" : 'X\(//\)[^/]' \| \
- X"$dst" : 'X\(//\)$' \| \
- X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
- echo X"$dst" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'
- `
-
- test -d "$dstdir"
- dstdir_status=$?
- fi
- fi
-
- obsolete_mkdir_used=false
-
- if test $dstdir_status != 0; then
- case $posix_mkdir in
- '')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
- # With -d, create the new directory with the user-specified mode.
- # Otherwise, rely on $mkdir_umask.
- if test -n "$dir_arg"; then
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- fi
-
- posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
- esac
-
- if
- $posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
- )
- then :
- else
-
- # The umask is ridiculous, or mkdir does not conform to POSIX,
- # or it failed possibly due to a race condition. Create the
- # directory the slow way, step by step, checking for races as we go.
-
- case $dstdir in
- /*) prefix='/';;
- [-=\(\)!]*) prefix='./';;
- *) prefix='';;
- esac
-
- eval "$initialize_posix_glob"
-
- oIFS=$IFS
- IFS=/
- $posix_glob set -f
- set fnord $dstdir
- shift
- $posix_glob set +f
- IFS=$oIFS
-
- prefixes=
-
- for d
- do
- test X"$d" = X && continue
-
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (umask=$mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
- # Don't fail if two instances are running concurrently.
- test -d "$prefix" || exit 1
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
- done
-
- if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
- fi
- fi
- fi
-
- if test -n "$dir_arg"; then
- { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
- { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
- test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
- else
-
- # Make a couple of temp file names in the proper directory.
- dsttmp=$dstdir/_inst.$$_
- rmtmp=$dstdir/_rm.$$_
-
- # Trap to clean up those temp files at exit.
- trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
- # Copy the file name to the temp name.
- (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
- # and set any options; do chmod last to preserve setuid bits.
- #
- # If any of these fail, we abort the whole thing. If we want to
- # ignore errors from any of these, just make sure not to ignore
- # errors from the above "$doit $cpprog $src $dsttmp" command.
- #
- { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
- { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
- { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
- # If -C, don't bother to copy if it wouldn't change the file.
- if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
-
- eval "$initialize_posix_glob" &&
- $posix_glob set -f &&
- set X $old && old=:$2:$4:$5:$6 &&
- set X $new && new=:$2:$4:$5:$6 &&
- $posix_glob set +f &&
-
- test "$old" = "$new" &&
- $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
- then
- rm -f "$dsttmp"
- else
- # Rename the file to the real destination.
- $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
- # The rename failed, perhaps because mv can't rename something else
- # to itself, or perhaps because mv is so ancient that it does not
- # support -f.
- {
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
- }
- fi || exit 1
-
- trap '' 0
- fi
-done
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/external/psfex/admin/missing b/external/psfex/admin/missing
deleted file mode 100755
index 9a55648..0000000
--- a/external/psfex/admin/missing
+++ /dev/null
@@ -1,330 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-
-scriptversion=2012-01-06.18; # UTC
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
- echo 1>&2 "Try '$0 --help' for more information"
- exit 1
-fi
-
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, 'missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
- configure_ac=configure.ac
-else
- configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
-case $1 in
---run)
- # Try to run requested program, and just exit if it succeeds.
- run=
- shift
- "$@" && exit 0
- # Exit code 63 means version mismatch. This often happens
- # when the user try to use an ancient version of a tool on
- # a file that requires a minimum version. In this case we
- # we should proceed has if the program had been absent, or
- # if --run hadn't been passed.
- if test $? = 63; then
- run=:
- msg="probably too old"
- fi
- ;;
-
- -h|--h|--he|--hel|--help)
- echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
- -h, --help display this help and exit
- -v, --version output version information and exit
- --run try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
- aclocal touch file 'aclocal.m4'
- autoconf touch file 'configure'
- autoheader touch file 'config.h.in'
- autom4te touch the output file, or create a stub one
- automake touch all 'Makefile.in' files
- bison create 'y.tab.[ch]', if possible, from existing .[ch]
- flex create 'lex.yy.c', if possible, from existing .c
- help2man touch the output file
- lex create 'lex.yy.c', if possible, from existing .c
- makeinfo touch the output file
- yacc create 'y.tab.[ch]', if possible, from existing .[ch]
-
-Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
-'g' are ignored when checking the name.
-
-Send bug reports to <bug-automake at gnu.org>."
- exit $?
- ;;
-
- -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
- echo "missing $scriptversion (GNU Automake)"
- exit $?
- ;;
-
- -*)
- echo 1>&2 "$0: Unknown '$1' option"
- echo 1>&2 "Try '$0 --help' for more information"
- exit 1
- ;;
-
-esac
-
-# normalize program name to check for.
-program=`echo "$1" | sed '
- s/^gnu-//; t
- s/^gnu//; t
- s/^g//; t'`
-
-# Now exit if we have it, but it failed. Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program). This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
- lex*|yacc*)
- # Not GNU programs, they don't have --version.
- ;;
-
- *)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
- # Could not run --version or --help. This is probably someone
- # running '$TOOL --version' or '$TOOL --help' to check whether
- # $TOOL exists and not knowing $TOOL uses missing.
- exit 1
- fi
- ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
- aclocal*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'acinclude.m4' or '${configure_ac}'. You might want
- to install the Automake and Perl packages. Grab them from
- any GNU archive site."
- touch aclocal.m4
- ;;
-
- autoconf*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified '${configure_ac}'. You might want to install the
- Autoconf and GNU m4 packages. Grab them from any GNU
- archive site."
- touch configure
- ;;
-
- autoheader*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'acconfig.h' or '${configure_ac}'. You might want
- to install the Autoconf and GNU m4 packages. Grab them
- from any GNU archive site."
- files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
- test -z "$files" && files="config.h"
- touch_files=
- for f in $files; do
- case $f in
- *:*) touch_files="$touch_files "`echo "$f" |
- sed -e 's/^[^:]*://' -e 's/:.*//'`;;
- *) touch_files="$touch_files $f.in";;
- esac
- done
- touch $touch_files
- ;;
-
- automake*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
- You might want to install the Automake and Perl packages.
- Grab them from any GNU archive site."
- find . -type f -name Makefile.am -print |
- sed 's/\.am$/.in/' |
- while read f; do touch "$f"; done
- ;;
-
- autom4te*)
- echo 1>&2 "\
-WARNING: '$1' is needed, but is $msg.
- You might have modified some files without having the
- proper tools for further handling them.
- You can get '$1' as part of Autoconf from any GNU
- archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo "#! /bin/sh"
- echo "# Created by GNU Automake missing as a replacement of"
- echo "# $ $@"
- echo "exit 0"
- chmod +x $file
- exit 1
- fi
- ;;
-
- bison*|yacc*)
- echo 1>&2 "\
-WARNING: '$1' $msg. You should only need it if
- you modified a '.y' file. You may need the Bison package
- in order for those modifications to take effect. You can get
- Bison from any GNU archive site."
- rm -f y.tab.c y.tab.h
- if test $# -ne 1; then
- eval LASTARG=\${$#}
- case $LASTARG in
- *.y)
- SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.c
- fi
- SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.h
- fi
- ;;
- esac
- fi
- if test ! -f y.tab.h; then
- echo >y.tab.h
- fi
- if test ! -f y.tab.c; then
- echo 'main() { return 0; }' >y.tab.c
- fi
- ;;
-
- lex*|flex*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a '.l' file. You may need the Flex package
- in order for those modifications to take effect. You can get
- Flex from any GNU archive site."
- rm -f lex.yy.c
- if test $# -ne 1; then
- eval LASTARG=\${$#}
- case $LASTARG in
- *.l)
- SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" lex.yy.c
- fi
- ;;
- esac
- fi
- if test ! -f lex.yy.c; then
- echo 'main() { return 0; }' >lex.yy.c
- fi
- ;;
-
- help2man*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a dependency of a manual page. You may need the
- Help2man package in order for those modifications to take
- effect. You can get Help2man from any GNU archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo ".ab help2man is required to generate this page"
- exit $?
- fi
- ;;
-
- makeinfo*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a '.texi' or '.texinfo' file, or any other file
- indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy 'make' (AIX,
- DU, IRIX). You might want to install the Texinfo package or
- the GNU make package. Grab either from any GNU archive site."
- # The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -z "$file"; then
- # ... or it is the one specified with @setfilename ...
- infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '
- /^@setfilename/{
- s/.* \([^ ]*\) *$/\1/
- p
- q
- }' $infile`
- # ... or it is derived from the source name (dir/f.texi becomes f.info)
- test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
- fi
- # If the file does not exist, the user really needs makeinfo;
- # let's fail without touching anything.
- test -f $file || exit 1
- touch $file
- ;;
-
- *)
- echo 1>&2 "\
-WARNING: '$1' is needed, and is $msg.
- You might have modified some files without having the
- proper tools for further handling them. Check the 'README' file,
- it often tells you about the needed prerequisites for installing
- this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing '$1' program."
- exit 1
- ;;
-esac
-
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/external/psfex/config/default.psfex b/external/psfex/config/default.psfex
deleted file mode 100644
index 08b0d4d..0000000
--- a/external/psfex/config/default.psfex
+++ /dev/null
@@ -1,24 +0,0 @@
-# PSFEx Configuration file
-# E. Bertin October 1999
-
-PSF_ACCURACY 0.01 # Accuracy to expect from the PSF "pixel" values
-PSF_NSUPER 64 # Max number of super-resolved pixels
-PSF_AUTOSELECT Y # Automatically select the FWHM
-PSF_FWHMRANGE 1.0,3.0 # Allowed FWHM range
-PSF_VARIABILITY 0.6 # Allowed PSF variability (1.0 = 100%)
-PSF_MINSN 500 # Minimum S/N for a source to be used
-PSF_MAXELONG 2.0 # Maximum A/B for a source to be used
-PSF_SAMPLING 0.0 # Sampling step in pixel units (0.0 = automatic)
-PSF_SIZE 25,25 # Size of sensitive area
-PSF_NAME default.psf # Name of the file containing the NN weights
-PSF_RECENTER Y # Allow recentering of PSF-candidates Y/N ?
-
-CONTEXT_KEYS X_IMAGE,Y_IMAGE,:CRVAL2
-CONTEXT_GROUPS 1,1,2
-GROUP_DEGREES 3,2
-
-CHECKIMAGE_TYPE PROTOTYPES,SAMPLES,RESIDUALS,RAWDATA,SNAPSHOTS # Type of check-image
-CHECKIMAGE_NAME proto.fits,samp.fits,resi.fits,raw.fits,snap.fits # File name of the check-image
-
-PC_INCLUDE N
-PC_NAME default.pc
diff --git a/external/psfex/config/sex.param b/external/psfex/config/sex.param
deleted file mode 100644
index edad745..0000000
--- a/external/psfex/config/sex.param
+++ /dev/null
@@ -1,9 +0,0 @@
-NUMBER
-X_IMAGE
-Y_IMAGE
-FLUX_RADIUS
-FLAGS
-FLUX_APER(1)
-FLUX_MAX
-ELONGATION
-VIGNET(35,35)
diff --git a/external/psfex/configure b/external/psfex/configure
deleted file mode 100755
index b7b9876..0000000
--- a/external/psfex/configure
+++ /dev/null
@@ -1,5538 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for psfex 1.8.1.
-#
-#
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
-#
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-as_myself=
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-# Use a proper internal environment variable to ensure we don't fall
- # into an infinite loop, continuously re-executing ourselves.
- if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
- _as_can_reexec=no; export _as_can_reexec;
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
- fi
- # We don't want this to propagate to other subprocesses.
- { _as_can_reexec=; unset _as_can_reexec;}
-if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-"
- as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
- exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1
-test -x / || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
- test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
- as_have_required=yes
-else
- as_have_required=no
-fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- as_found=:
- case $as_dir in #(
- /*)
- for as_base in sh bash ksh sh5; do
- # Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
- CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
- break 2
-fi
-fi
- done;;
- esac
- as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
- export CONFIG_SHELL
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-exit 255
-fi
-
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
- else
- $as_echo "$0: Please tell bug-autoconf at gnu.org about your system,
-$0: including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
- fi
- exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
- # already done that, so ensure we don't try to do so again and fall
- # in an infinite loop. This has already happened in practice.
- _as_can_reexec=no; export _as_can_reexec
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -pR'
- fi
-else
- as_ln_s='cp -pR'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='psfex'
-PACKAGE_TARNAME='psfex'
-PACKAGE_VERSION='1.8.1'
-PACKAGE_STRING='psfex 1.8.1'
-PACKAGE_BUGREPORT=''
-PACKAGE_URL=''
-
-ac_unique_file="Makefile.am"
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIBOBJS
-LIBM
-RANLIB
-AR
-SEXMACHINE
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-am__nodep
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-MAINT
-MAINTAINER_MODE_FALSE
-MAINTAINER_MODE_TRUE
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-target_os
-target_vendor
-target_cpu
-target
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_maintainer_mode
-enable_dependency_tracking
-with_machine
-'
- ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval $ac_prev=\$ac_option
- ac_prev=
- continue
- fi
-
- case $ac_option in
- *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *=) ac_optarg= ;;
- *) ac_optarg=yes ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_dashdash$ac_option in
- --)
- ac_dashdash=yes ;;
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=*)
- datadir=$ac_optarg ;;
-
- -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
- | --dataroo | --dataro | --datar)
- ac_prev=datarootdir ;;
- -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
- | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
- datarootdir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=no ;;
-
- -docdir | --docdir | --docdi | --doc | --do)
- ac_prev=docdir ;;
- -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
- docdir=$ac_optarg ;;
-
- -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
- ac_prev=dvidir ;;
- -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
- dvidir=$ac_optarg ;;
-
- -enable-* | --enable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=\$ac_optarg ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
- ac_prev=htmldir ;;
- -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
- | --ht=*)
- htmldir=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localedir | --localedir | --localedi | --localed | --locale)
- ac_prev=localedir ;;
- -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
- localedir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst | --locals)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
- ac_prev=pdfdir ;;
- -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
- pdfdir=$ac_optarg ;;
-
- -psdir | --psdir | --psdi | --psd | --ps)
- ac_prev=psdir ;;
- -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
- psdir=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=\$ac_optarg ;;
-
- -without-* | --without-*)
- ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=no ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- case $ac_envvar in #(
- '' | [0-9]* | *[!_$as_cr_alnum]* )
- as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
- esac
- eval $ac_envvar=\$ac_optarg
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
- case $enable_option_checking in
- no) ;;
- fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
- esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
-do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
- case $ac_val in
- */ )
- ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
- eval $ac_var=\$ac_val;;
- esac
- # Be sure to have absolute directory names.
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) continue;;
- NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
- esac
- as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_myself" : 'X\(//\)[^/]' \| \
- X"$as_myself" : 'X\(//\)$' \| \
- X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r "$srcdir/$ac_unique_file"; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
- test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
- pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
- srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
- eval ac_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_env_${ac_var}_value=\$${ac_var}
- eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures psfex 1.8.1 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking ...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/psfex]
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
-_ACEOF
-
- cat <<\_ACEOF
-
-Program names:
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-
-System types:
- --build=BUILD configure for building on BUILD [guessed]
- --host=HOST cross-compile to build programs to run on HOST [BUILD]
- --target=TARGET configure for building compilers for TARGET [HOST]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of psfex 1.8.1:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-option-checking ignore unrecognized --enable/--with options
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --enable-maintainer-mode
- enable make rules and dependencies not useful (and
- sometimes confusing) to the casual installer
- --enable-dependency-tracking
- do not reject slow dependency extractors
- --disable-dependency-tracking
- speeds up one-time build
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-machine=MACHINE configure psfex for building on MACHINE
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
- you have headers in a nonstandard directory <include dir>
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to the package provider.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" ||
- { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
- continue
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
- cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
- if test -f "$ac_srcdir/configure.gnu"; then
- echo &&
- $SHELL "$ac_srcdir/configure.gnu" --help=recursive
- elif test -f "$ac_srcdir/configure"; then
- echo &&
- $SHELL "$ac_srcdir/configure" --help=recursive
- else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi || ac_status=$?
- cd "$ac_pwd" || { ac_status=$?; break; }
- done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
- cat <<\_ACEOF
-psfex configure 1.8.1
-generated by GNU Autoconf 2.69
-
-Copyright (C) 2012 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-# ac_fn_c_try_compile LINENO
-# --------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_compile
-
-# ac_fn_c_try_link LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- test -x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_link
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by psfex $as_me 1.8.1, which was
-generated by GNU Autoconf 2.69. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
- done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
- 2)
- as_fn_append ac_configure_args1 " '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- as_fn_append ac_configure_args " '$ac_arg'"
- ;;
- esac
- done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
- echo
- # The following way of writing the cache mishandles newlines in values,
-(
- for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
- (set) 2>&1 |
- case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- sed -n \
- "s/'\''/'\''\\\\'\'''\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
- ;; #(
- *)
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-)
- echo
-
- $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
- echo
- cat confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core core.conftest.* &&
- rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in #((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
-elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
-else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special files
- # actually), so we avoid doing that. DJGPP emulates it as a regular file.
- if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . "$cache_file";;
- *) . "./$cache_file";;
- esac
- fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val=\$ac_cv_env_${ac_var}_value
- eval ac_new_val=\$ac_env_${ac_var}_value
- case $ac_old_set,$ac_new_set in
- set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- # differences in whitespace do not lead to failure.
- ac_old_val_w=`echo x $ac_old_val`
- ac_new_val_w=`echo x $ac_new_val`
- if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- ac_cache_corrupted=:
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
- eval $ac_var=\$ac_old_val
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) as_fn_append ac_configure_args " '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-ac_aux_dir=
-for ac_dir in admin "$srcdir"/admin; do
- if test -f "$ac_dir/install-sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f "$ac_dir/install.sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f "$ac_dir/shtool"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in admin \"$srcdir\"/admin" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
-
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
-$as_echo_n "checking target system type... " >&6; }
-if ${ac_cv_target+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$target_alias" = x; then
- ac_cv_target=$ac_cv_host
-else
- ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
-$as_echo "$ac_cv_target" >&6; }
-case $ac_cv_target in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
-esac
-target=$ac_cv_target
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_target
-shift
-target_cpu=$1
-target_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-target_os=$*
-IFS=$ac_save_IFS
-case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
-
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-test -n "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-am__api_version='1.12'
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
- ./ | .// | /[cC]/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- rm -rf conftest.one conftest.two conftest.dir
- echo one > conftest.one
- echo two > conftest.two
- mkdir conftest.dir
- if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
- test -s conftest.one && test -s conftest.two &&
- test -s conftest.dir/conftest.one &&
- test -s conftest.dir/conftest.two
- then
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- fi
- done
- done
- ;;
-esac
-
- done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- INSTALL=$ac_install_sh
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[\\\"\#\$\&\'\`$am_lf]*)
- as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
-esac
-case $srcdir in
- *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
-esac
-
-# Do 'set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- am_has_slept=no
- for am_try in 1 2; do
- echo "timestamp, slept: $am_has_slept" > conftest.file
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
- alias in your environment" "$LINENO" 5
- fi
- if test "$2" = conftest.file || test $am_try -eq 2; then
- break
- fi
- # Just in case.
- sleep 1
- am_has_slept=yes
- done
- test "$2" = conftest.file
- )
-then
- # Ok.
- :
-else
- as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-# If we didn't sleep, we still need to ensure time stamps of config.status and
-# generated files are strictly newer.
-am_sleep_pid=
-if grep 'slept: no' conftest.file >/dev/null 2>&1; then
- ( sleep 1 ) &
- am_sleep_pid=$!
-fi
-
-rm -f conftest.file
-
-test "$program_prefix" != NONE &&
- program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-
-# Installed binaries are usually stripped using 'strip' when the user
-# run "make install-strip". However 'strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the 'STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
- if ${ac_cv_path_mkdir+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in mkdir gmkdir; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
- 'mkdir (fileutils) '4.1*)
- ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
- break 3;;
- esac
- done
- done
- done
-IFS=$as_save_IFS
-
-fi
-
- test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
- MKDIR_P="$ac_cv_path_mkdir -p"
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for MKDIR_P within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- MKDIR_P="$ac_install_sh -d"
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-for ac_prog in gawk mawk nawk awk
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AWK"; then
- ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- SET_MAKE=
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- am__isrc=' -I$(srcdir)'
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE='psfex'
- VERSION='1.8.1'
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# For better backward compatibility. To be removed once Automake 1.9.x
-# dies out for good. For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
-mkdir_p='$(MKDIR_P)'
-
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility. Yes, it's still used
-# in the wild :-( We should find a proper way to deprecate it ...
-AMTAR='$${TAR-tar}'
-
-am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
-$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
- # Check whether --enable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then :
- enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
-$as_echo "$USE_MAINTAINER_MODE" >&6; }
- if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
-
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# Checks for programs.
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
- enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
- am__nodep='_no'
-fi
- if test "x$enable_dependency_tracking" != xno; then
- AMDEP_TRUE=
- AMDEP_FALSE='#'
-else
- AMDEP_TRUE='#'
- AMDEP_FALSE=
-fi
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl.exe
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl.exe
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CC" && break
-done
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- * ) ac_rmfiles="$ac_rmfiles $ac_file";;
- esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link_default") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile. We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
- then :; else
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- fi
- # We set ac_cv_exeext here because the later test for it is not
- # safe: cross compilers may not add the suffix if given an `-o'
- # argument, so we may need to know it at that point already.
- # Even if this section looks crufty: it has the advantage of
- # actually working.
- break;;
- * )
- break;;
- esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
- ac_file=''
-fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- break;;
- * ) break;;
- esac
-done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
- { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- if { ac_try='./conftest$ac_cv_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
- fi
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- for ac_file in conftest.o conftest.obj conftest.*; do
- test -f "$ac_file" || continue;
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GCC=yes
-else
- GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_c_werror_flag=$ac_c_werror_flag
- ac_c_werror_flag=yes
- ac_cv_prog_cc_g=no
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-else
- CFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- ac_c_werror_flag=$ac_save_c_werror_flag
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
- test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-depcc="$CC" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named 'D' -- because '-MD' means "put the output
- # in D".
- rm -rf conftest.dir
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CC_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
- # Solaris 10 /bin/sh.
- echo '/* dummy */' > sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with '-c' and '-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle '-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs.
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # After this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested.
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok '-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CC_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
- am__fastdepCC_TRUE=
- am__fastdepCC_FALSE='#'
-else
- am__fastdepCC_TRUE='#'
- am__fastdepCC_FALSE=
-fi
-
-
-
-
-
-
-
-# Check whether --with-machine was given.
-if test "${with_machine+set}" = set; then :
- withval=$with_machine; psfex_host=$withval
-else
- psfex_host=auto
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for psfex target host configuration" >&5
-$as_echo_n "checking for psfex target host configuration... " >&6; }
-
- if ${psfex_cv_host+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- if test x"$psfex_host" = xauto; then
- case "${target}" in
- *ibm-aix*) psfex_host_tag="ibm";;
- *dec-osf*) psfex_host_tag="alpha";;
- *dec-ultrix*) psfex_host_tag="ultrix";;
- *hp-hpux*) psfex_host_tag="hpux";;
- *solaris*) psfex_host_tag="solaris";;
- *sunos*) psfex_host_tag="sunos";;
- *sgi-irix*) psfex_host_tag="sgi";;
- *linux-gnu*) psfex_host_tag="linuxpc";;
- *darwin*) psfex_host_tag="linuxpc";;
- *)
- as_fn_error $? "Unsupported host type $host" "$LINENO" 5
- ;;
- esac
- else
- psfex_host_tag=$psfex_host
- fi
-
- psfex_cv_host="psfex_host_tag=$psfex_host_tag"
-
-fi
-
-
- eval "$psfex_cv_host"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $psfex_host_tag" >&5
-$as_echo "$psfex_host_tag" >&6; }
-
- #Check extra compiler flags and add them to CFLAGS
- case "${psfex_host_tag}" in
- ibm)
- CPPFLAGS="$CPPFLAGS -DIBM_AIX"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo O | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -O" >&5
-$as_echo_n "checking whether $CC supports -O... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -O -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -O -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O"
- else
- :
-
- fi
-
- fi
- ;;
- alpha)
- CPPFLAGS="$CPPFLAGS -DDEC_ALPHA"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo O | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -O" >&5
-$as_echo_n "checking whether $CC supports -O... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -O -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -O -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O"
- else
- :
-
- fi
-
- fi
- ;;
- ultrix)
- CPPFLAGS="$CPPFLAGS -DBSWAP"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo O | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -O" >&5
-$as_echo_n "checking whether $CC supports -O... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -O -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -O -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O"
- else
- :
-
- fi
-
- fi
- ;;
- hpux)
- if test x"$GCC" != xyes; then
- CPPFLAGS="$CPPFLAGS -DHP_UX"
- fi
- ;;
- solaris)
- CPPFLAGS="$CPPFLAGS -DSUN_SOLARIS"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo fast | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fast" >&5
-$as_echo_n "checking whether $CC supports -fast... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -fast -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -fast -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -fast"
- else
- :
-
- fi
-
-
-
-
- flag=`echo xO5 | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -xO5" >&5
-$as_echo_n "checking whether $CC supports -xO5... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -xO5 -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -xO5 -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -xO5"
- else
- :
-
- fi
-
- fi
- ;;
- sunos)
- CPPFLAGS="$CPPFLAGS -DSUN_OS"
- ;;
- sgi)
- ;;
- linuxpc)
- CPPFLAGS="$CPPFLAGS -DPC_LINUX"
- if test x"$GCC" = xyes; then
-
-
-
- flag=`echo malign-double | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -malign-double" >&5
-$as_echo_n "checking whether $CC supports -malign-double... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -malign-double -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -malign-double -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -malign-double"
- else
- :
-
- fi
-
-
-
-
- flag=`echo finline-functions | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -finline-functions" >&5
-$as_echo_n "checking whether $CC supports -finline-functions... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -finline-functions -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -finline-functions -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -finline-functions"
- else
- :
-
- fi
-
-
-
-
- flag=`echo funroll-loops | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -funroll-loops" >&5
-$as_echo_n "checking whether $CC supports -funroll-loops... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -funroll-loops -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -funroll-loops -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -funroll-loops"
- else
- :
-
- fi
-
- fi
- ;;
- *)
- if test x"$psfex_host" != xauto; then
- as_fn_error $? "Unsupported host type $psfex_host" "$LINENO" 5
- fi
- ;;
- esac
-
- SEXMACHINE="$psfex_host_tag"
-
-
-
-
-
-
- flag=`echo fno-builtin | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fno-builtin" >&5
-$as_echo_n "checking whether $CC supports -fno-builtin... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -fno-builtin -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -fno-builtin -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -fno-builtin"
- else
- :
-
- fi
-
-
-
- # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="NONE"
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
- if test x"$AR" = xNONE; then
- as_fn_error $? "Cannot find \'ar\'" "$LINENO" 5
- fi
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
- fi
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-
-# Checks for libraries.
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pow in -lm" >&5
-$as_echo_n "checking for pow in -lm... " >&6; }
-if ${ac_cv_lib_m_pow+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lm $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char pow ();
-int
-main ()
-{
-return pow ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_m_pow=yes
-else
- ac_cv_lib_m_pow=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_pow" >&5
-$as_echo "$ac_cv_lib_m_pow" >&6; }
-if test "x$ac_cv_lib_m_pow" = xyes; then :
- LIBM="-lm"
-fi
-
-
-
-ac_config_files="$ac_config_files Makefile source/Makefile"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
- for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
-
- (set) 2>&1 |
- case $as_nl`(ac_space=' '; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes: double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \.
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;; #(
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-) |
- sed '
- /^ac_cv_env_/b end
- t clear
- :clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
- if test -w "$cache_file"; then
- if test "x$cache_file" != "x/dev/null"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
- if test ! -f "$cache_file" || test -h "$cache_file"; then
- cat confcache >"$cache_file"
- else
- case $cache_file in #(
- */* | ?:*)
- mv -f confcache "$cache_file"$$ &&
- mv -f "$cache_file"$$ "$cache_file" ;; #(
- *)
- mv -f confcache "$cache_file" ;;
- esac
- fi
- fi
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then branch to the quote section. Otherwise,
-# look for a macro that doesn't take arguments.
-ac_script='
-:mline
-/\\$/{
- N
- s,\\\n,,
- b mline
-}
-t clear
-:clear
-s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g
-t quote
-s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g
-t quote
-b any
-:quote
-s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g
-s/\[/\\&/g
-s/\]/\\&/g
-s/\$/$$/g
-H
-:any
-${
- g
- s/^\n//
- s/\n/ /g
- p
-}
-'
-DEFS=`sed -n "$ac_script" confdefs.h`
-
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
- # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
- # will be set to the directory where LIBOBJS objects are built.
- as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
-$as_echo_n "checking that generated files are newer than configure... " >&6; }
- if test -n "$am_sleep_pid"; then
- # Hide warnings about reused PIDs.
- wait $am_sleep_pid 2>/dev/null
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
-$as_echo "done" >&6; }
- if test -n "$EXEEXT"; then
- am__EXEEXT_TRUE=
- am__EXEEXT_FALSE='#'
-else
- am__EXEEXT_TRUE='#'
- am__EXEEXT_FALSE=
-fi
-
-if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
- as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-as_myself=
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -pR'
- fi
-else
- as_ln_s='cp -pR'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by psfex $as_me 1.8.1, which was
-generated by GNU Autoconf 2.69. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration. Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
- -h, --help print this help, then exit
- -V, --version print version number and configuration settings, then exit
- --config print configuration, then exit
- -q, --quiet, --silent
- do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Configuration commands:
-$config_commands
-
-Report bugs to the package provider."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-psfex config.status 1.8.1
-configured by $0, generated by GNU Autoconf 2.69,
- with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2012 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=?*)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- --*=)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=
- ac_shift=:
- ;;
- *)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- esac
-
- case $ac_option in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
- --config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
- --debug | --debu | --deb | --de | --d | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- '') as_fn_error $? "missing file argument" ;;
- esac
- as_fn_append CONFIG_FILES " '$ac_optarg'"
- ac_need_defaults=false;;
- --he | --h | --help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
- *) as_fn_append ac_config_targets " $1"
- ac_need_defaults=false ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
- set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
- export CONFIG_SHELL
- exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
- $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
- case $ac_config_target in
- "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
- "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "source/Makefile") CONFIG_FILES="$CONFIG_FILES source/Makefile" ;;
-
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
- esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
- tmp= ac_tmp=
- trap 'exit_status=$?
- : "${ac_tmp:=$tmp}"
- { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
-' 0
- trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -d "$tmp"
-} ||
-{
- tmp=./conf$$-$RANDOM
- (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-ac_tmp=$tmp
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
- eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
- ac_cs_awk_cr='\\r'
-else
- ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
-_ACEOF
-
-
-{
- echo "cat >conf$$subs.awk <<_ACEOF" &&
- echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
- echo "_ACEOF"
-} >conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- . ./conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
- ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
- if test $ac_delim_n = $ac_delim_num; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
- N
- s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
- for (key in S) S_is_set[key] = 1
- FS = ""
-
-}
-{
- line = $ 0
- nfields = split(line, field, "@")
- substed = 0
- len = length(field[1])
- for (i = 2; i < nfields; i++) {
- key = field[i]
- keylen = length(key)
- if (S_is_set[key]) {
- value = S[key]
- line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
- len += length(value) + length(field[++i])
- substed = 1
- } else
- len += 1 + keylen
- }
-
- print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
- sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
- cat
-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
- || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
-h
-s///
-s/^/:/
-s/[ ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[ ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[ ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-
-eval set X " :F $CONFIG_FILES :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
- case $ac_tag in
- :[FHLC]) ac_mode=$ac_tag; continue;;
- esac
- case $ac_mode$ac_tag in
- :[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
- :[FH]-) ac_tag=-:-;;
- :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
- esac
- ac_save_IFS=$IFS
- IFS=:
- set x $ac_tag
- IFS=$ac_save_IFS
- shift
- ac_file=$1
- shift
-
- case $ac_mode in
- :L) ac_source=$1;;
- :[FH])
- ac_file_inputs=
- for ac_f
- do
- case $ac_f in
- -) ac_f="$ac_tmp/stdin";;
- *) # Look for the file first in the build tree, then in the source tree
- # (if the path is not absolute). The absolute path cannot be DOS-style,
- # because $ac_f cannot contain `:'.
- test -f "$ac_f" ||
- case $ac_f in
- [\\/$]*) false;;
- *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
- esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
- esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- as_fn_append ac_file_inputs " '$ac_f'"
- done
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
- `' by configure.'
- if test x"$ac_file" != x-; then
- configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
- fi
- # Neutralize special characters interpreted by sed in replacement strings.
- case $configure_input in #(
- *\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
- sed 's/[\\\\&|]/\\\\&/g'`;; #(
- *) ac_sed_conf_input=$configure_input;;
- esac
-
- case $ac_tag in
- *:-:* | *:-) cat >"$ac_tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
- esac
- ;;
- esac
-
- ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir="$ac_dir"; as_fn_mkdir_p
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
- case $ac_mode in
- :F)
- #
- # CONFIG_FILE
- #
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
- esac
- ac_MKDIR_P=$MKDIR_P
- case $MKDIR_P in
- [\\/$]* | ?:[\\/]* ) ;;
- */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
- esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
- p
- q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_datarootdir_hack='
- s&@datadir@&$datadir&g
- s&@docdir@&$docdir&g
- s&@infodir@&$infodir&g
- s&@localedir@&$localedir&g
- s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-s&@MKDIR_P@&$ac_MKDIR_P&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
- >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
- "$ac_tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&2;}
-
- rm -f "$ac_tmp/stdin"
- case $ac_file in
- -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
- *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
- esac \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
-
-
- :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
- esac
-
-
- case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
- ;;
-
- esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
- as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
diff --git a/external/psfex/configure.ac b/external/psfex/configure.ac
deleted file mode 100644
index 2672a9e..0000000
--- a/external/psfex/configure.ac
+++ /dev/null
@@ -1,30 +0,0 @@
-# Process this file with autoconf to produce a configure script.
-
-AC_INIT([psfex],[1.8.1])
-AC_PREREQ([2.59])
-
-AC_CONFIG_SRCDIR([Makefile.am])
-AC_CONFIG_AUX_DIR([admin])
-
-AC_CANONICAL_HOST
-AC_CANONICAL_TARGET
-
-AM_INIT_AUTOMAKE
-
-AM_MAINTAINER_MODE
-
-# Checks for programs.
-PSFEX_PROG_CC
-
-ESO_PROG_CC_FLAG(fno-builtin, [CFLAGS="$CFLAGS -fno-builtin"])
-
-ESO_PROG_AR
-AC_PROG_RANLIB
-
-# Checks for libraries.
-AC_CHECK_LIB(m, pow, [LIBM="-lm"])
-AC_SUBST(LIBM)
-
-AC_CONFIG_FILES(Makefile
- source/Makefile)
-AC_OUTPUT
diff --git a/external/psfex/m4macros/eso.m4 b/external/psfex/m4macros/eso.m4
deleted file mode 100644
index 81f84b1..0000000
--- a/external/psfex/m4macros/eso.m4
+++ /dev/null
@@ -1,902 +0,0 @@
-# ESO_PROG_CC_FLAG(FLAG, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#-----------------------------------------------------------------
-AC_DEFUN([ESO_PROG_CC_FLAG],
-[
- AC_REQUIRE([AC_PROG_CC])
-
- flag=`echo $1 | sed 'y%.=/+-%___p_%'`
- AC_CACHE_CHECK([whether $CC supports -$1],
- [eso_cv_prog_cc_$flag],
- [
- eval "eso_cv_prog_cc_$flag=no"
- AC_LANG_PUSH(C)
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -$1 -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -$1 -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- AC_LANG_POP(C)
- ])
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- $2
- else
- :
- $3
- fi
-])
-
-
-# ESO_ENABLE_DEBUG(debug=no)
-#---------------------------
-AC_DEFUN([ESO_ENABLE_DEBUG],
-[
- AC_REQUIRE([AC_PROG_CC])
-
- AC_ARG_ENABLE(debug,
- AC_HELP_STRING([--enable-debug],
- [creates debugging code [[default=$1]]]),
- eso_enable_debug=$enableval, eso_enable_debug=$1)
-
- AC_CACHE_CHECK([whether debugging code should be created],
- eso_cv_enable_debug,
- eso_cv_enable_debug=$eso_enable_debug)
-
- if test x"$eso_cv_enable_debug" = xyes; then
-
- eso_clean_CFLAGS="`echo $CFLAGS | sed -e 's/-O[[1-9]]//g' \
- -e 's/-O//g'`"
-
- if test x"$ac_cv_prog_cc_g" = xyes; then
- eso_clean_CFLAGS="`echo $eso_clean_CFLAGS | sed -e 's/-g//g'`"
- CFLAGS="-g"
- else
- CFLAGS=""
- fi
-
- ESO_PROG_CC_FLAG([Wall], [CFLAGS="$CFLAGS -Wall"])
- ESO_PROG_CC_FLAG([W], [CFLAGS="$CFLAGS -W"])
-
- CFLAGS="$CFLAGS $eso_clean_CFLAGS"
- ESO_DEBUG_FLAGS="-DESO_ENABLE_DEBUG"
- else
- CFLAGS="`echo $CFLAGS | sed -e 's/-g//g'`"
- ESO_DEBUG_FLAGS="-DNDEBUG"
- fi
-
- AC_SUBST(ESO_DEBUG_FLAGS)
-])
-
-
-# ESO_ENABLE_STRICT(strict=no)
-#-----------------------------
-AC_DEFUN([ESO_ENABLE_STRICT],
-[
- AC_REQUIRE([AC_PROG_CC])
-
- AC_ARG_ENABLE(strict,
- AC_HELP_STRING([--enable-strict],
- [compiles with strict compiler options (may not work!) [[default=$1]]]),
- eso_enable_strict=$enableval, eso_enable_strict=$1)
-
- AC_CACHE_CHECK([whether strict compiler options should be used],
- eso_cv_enable_strict,
- eso_cv_enable_strict=$eso_enable_strict)
-
-
- if test x"$eso_cv_enable_strict" = xyes; then
- ESO_PROG_CC_FLAG([ansi], [CFLAGS="$CFLAGS -ansi"])
- ESO_PROG_CC_FLAG([pedantic], [CFLAGS="$CFLAGS -pedantic"])
- fi
-])
-
-
-# ESO_CHECK_DOCTOOLS
-#-------------------
-AC_DEFUN([ESO_CHECK_DOCTOOLS],
-[
- AC_ARG_VAR([DOXYGEN], [doxygen command])
- AC_PATH_PROG([DOXYGEN], [doxygen])
-
- AC_ARG_VAR([LATEX], [latex command])
- AC_PATH_PROG([LATEX], [latex])
-
-
- if test -z "${DOXYGEN}"; then
- DOXYGEN=":"
- fi
-
- if test -z "${LATEX}"; then
- LATEX=":"
- fi
-
-])
-
-
-# ESO_PROG_AR
-#------------
-# Checks if ar is in the path
-AC_DEFUN([ESO_PROG_AR],
-[
- AC_CHECK_PROG(AR, ar, ar, NONE)
-
- if test x"$AR" = xNONE; then
- AC_MSG_ERROR([Cannot find \'ar\'])
- fi
-
-])
-
-
-# ESO_CHECK_EXTRA_LIBS
-#---------------------
-# Check for non-standard headers and libraries
-AC_DEFUN([ESO_CHECK_EXTRA_LIBS],
-[
-
- AC_ARG_WITH(extra-includes,
- AC_HELP_STRING([--with-extra-includes=DIR],
- [adds non standard include paths]),
- eso_with_extra_includes=$withval, eso_with_extra_includes=NONE)
-
- AC_ARG_WITH(extra-libs,
- AC_HELP_STRING([--with-extra-libs=DIR],
- [adds non standard library paths]),
- eso_with_extra_libs=$withval, eso_with_extra_libs=NONE)
-
- AC_MSG_CHECKING([for extra includes])
- AC_CACHE_VAL([eso_cv_with_extra_includes],
- [
- eso_cv_with_extra_includes=$eso_with_extra_includes
- ])
-
- if test x"$eso_cv_with_extra_includes" != xNONE; then
- eso_save_IFS=$IFS
- IFS=':'
-
- for dir in $eso_cv_with_extra_includes; do
- EXTRA_INCLUDES="$EXTRA_INCLUDES -I$dir"
- done
-
- IFS=$eso_save_IFS
- AC_MSG_RESULT(added)
- else
- AC_MSG_RESULT(no)
- fi
-
-
- AC_MSG_CHECKING([for extra libs])
- AC_CACHE_VAL([eso_cv_with_extra_libs],
- [
- eso_cv_with_extra_libs=$eso_with_extra_libs
- ])
-
- if test x"$eso_cv_with_extra_libs" != xNONE; then
- eso_save_IFS=$IFS
- IFS=':'
-
- for dir in $eso_cv_with_extra_libs; do
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L$dir"
- done
-
- IFS=$eso_save_IFS
- AC_MSG_RESULT(added)
- else
- AC_MSG_RESULT(no)
- fi
-
-])
-
-
-# ESO_CHECK_FUNC(FUNCTION, INCLUDES, SYMBOL)
-#-------------------------------------------
-# Checks whether a function is available and declared.
-AC_DEFUN([ESO_CHECK_FUNC],
-[
-
- AC_LANG_PUSH(C)
-
- eso_save_CFLAGS="$CFLAGS"
-
- if test x"$GCC" = xyes; then
- CFLAGS="$CFLAGS -pedantic-errors"
- fi
-
- AC_CHECK_FUNC($1)
- AC_CHECK_DECL($1, [], [], [$2])
-
- CFLAGS="$eso_save_CFLAGS"
-
- AC_LANG_POP(C)
-
- if test x"$ac_cv_have_decl_$1" = xyes &&
- test x"$ac_cv_func_$1" = xyes; then
- AC_DEFINE($3)
- fi
-
-])
-
-
-# ESO_FUNC_VSNPRINTF_C99
-#-----------------------
-# Check whether vsnprintf() has C99 semantics.
-AC_DEFUN([ESO_FUNC_VSNPRINTF_C99],
-[
-
- AH_TEMPLATE([HAVE_VSNPRINTF_C99],
- [Define if you have the C99 `vsnprintf' function.])
-
- AC_CACHE_CHECK([whether vsnprintf has C99 semantics],
- [eso_cv_func_vsnprintf_c99],
- [
- AC_LANG_PUSH(C)
-
- eso_cppflags_save="$CPPFLAGS"
- eso_cflags_save="$CFLAGS"
- eso_ldflags_save="$LDFLAGS"
- eso_libs_save="$LIBS"
-
- if test x$GCC = xyes; then
- CFLAGS="$CFLAGS -pedantic-errors"
- CPPFLAGS="$CPPFLAGS $CFLAGS"
- fi
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <stdarg.h>
-
-int
-doit(char * s, ...)
-{
- char buffer[32];
- va_list args;
- int q, r;
-
- va_start(args, s);
- q = vsnprintf(NULL, 0, s, args);
- r = vsnprintf(buffer, 5, s, args);
- va_end(args);
-
- if (q != 7 || r != 7)
- exit(1);
-
- exit(0);
-}
-
-int
-main(void)
-{
- doit("1234567");
- exit(1);
-}
- ],
- eso_cv_func_vsnprintf_c99=yes,
- eso_cv_func_vsnprintf_c99=no,
- eso_cv_func_vsnprintf_c99=no)
-
- CPPFLAGS="$eso_cppflags_save"
- CFLAGS="$eso_cflags_save"
- LDFLAGS="$eso_ldflags_save"
- LIBS="$eso_libs_save"
-
- AC_LANG_POP(C)
- ])
-
-# Note that the default is to be pessimistic in the case of cross compilation.
-# If you know that the target has a C99 vsnprintf(), you can get around this
-# by setting eso_func_vsnprintf_c99 to yes, as described in the Autoconf
-# manual.
-
- if test x$eso_cv_func_vsnprintf_c99 = xyes; then
- AC_DEFINE(HAVE_VSNPRINTF_C99)
- fi
-
-])
-
-
-# ESO_CHECK_PRINTF_FORMATS
-#-------------------------
-# Checks for printf() format peculiarities.
-AC_DEFUN([ESO_CHECK_PRINTF_FORMATS],
-[
-
- # Check if string format for NULL is `(null)'
-
- AH_TEMPLATE([HAVE_PRINTF_STR_FMT_NULL],
- [Define if printf outputs `(null)' when printing NULL using
- `%s'])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <string.h>
-
-int main()
-{
- char s[128];
-
- sprintf(s, "%s", NULL);
- return strncmp(s, "(null)", 6) ? 1 : 0;
-}
- ],
- eso_have_printf_str_format_null=yes,
- eso_have_printf_str_format_null=no,
- eso_have_printf_str_format_null=no
- )
-
- if test x$eso_have_printf_str_format_null = xyes; then
- AC_DEFINE(HAVE_PRINTF_STR_FMT_NULL)
- fi
-
-
- # Check if pointer format for NULL is `(nil)'
-
- AH_TEMPLATE([HAVE_PRINTF_PTR_FMT_NIL],
- [Define if printf outputs `(nil)' when printing NULL using
- `%p'])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <string.h>
-
-int main()
-{
- char s[128];
-
- sprintf(s, "%p", NULL);
- return strncmp(s, "(nil)", 5) ? 1 : 0;
-}
- ],
- eso_have_printf_ptr_format_nil=yes,
- eso_have_printf_ptr_format_nil=no,
- eso_have_printf_ptr_format_nil=no
- )
-
- if test x$eso_have_printf_ptr_format_nil = xyes; then
- AC_DEFINE(HAVE_PRINTF_PTR_FMT_NIL)
- fi
-
-
- # Check if output for `%p' is the same as `%#x'
-
- AH_TEMPLATE([HAVE_PRINTF_PTR_FMT_ALTERNATE],
- [Define if printf format `%p' produces the same output as
- `%#x' or `%#lx'])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <string.h>
-
-int main()
-{
- char s1[128], s2[128];
-
- sprintf(s1, "%p", s1);
- sprintf(s2, "%#x", s1);
- return strncmp(s1, s2, 3) ? 1 : 0;
-}
- ],
- eso_have_printf_ptr_format_alternate=yes,
- eso_have_printf_ptr_format_alternate=no,
- eso_have_printf_ptr_format_alternate=no
- )
-
- if test x$eso_have_printf_ptr_format_alternate = xyes; then
- AC_DEFINE(HAVE_PRINTF_PTR_FMT_ALTERNATE)
- fi
-
-
- # Check if pointers are treated as signed
-
- AH_TEMPLATE([HAVE_PRINTF_PTR_FMT_SIGNED],
- [Define if printf treats pointers as signed when using a sign
- flag])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-
-int main()
-{
- char s[128];
-
- sprintf(s, "%+p", s);
- return s[0] == '+' ? 0 : 1;
-}
- ],
- eso_have_printf_ptr_format_signed=yes,
- eso_have_printf_ptr_format_signed=no,
- eso_have_printf_ptr_format_signed=no
- )
-
- if test x$eso_have_printf_ptr_format_signed = xyes; then
- AC_DEFINE(HAVE_PRINTF_PTR_FMT_SIGNED)
- fi
-
-
- # Check if default precision for conversion specifier `g' is 1 (as
- # required by ISO C) or 6.
-
- AH_TEMPLATE([HAVE_PRINTF_FLT_FMT_G_STD],
- [Define if printf default precision for format `g' is 1
- (ISO C standard) or 6])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-
-int main()
-{
- char s1[128], s2[128];
- int n1, n2;
-
- sprintf(s1, "%g%n", 1.123456, &n1);
- sprintf(s2, "%.1g%n", 1.123456, &n2);
- return n1 > n2 ? 1 : 0;
-}
- ],
- eso_have_printf_flt_format_g_std=yes,
- eso_have_printf_flt_format_g_std=no,
- eso_have_printf_flt_format_g_std=no
- )
-
- if test x$eso_have_printf_flt_format_g_std = xyes; then
- AC_DEFINE(HAVE_PRINTF_FLT_FMT_G_STD)
- fi
-
-])
-
-
-# ESO_FUNC_VSNPRINTF
-#-------------------
-# Checks for vsnprintf and snprintf declaration and function.
-AC_DEFUN([ESO_FUNC_VSNPRINTF],
-[
-
- eso_compile_snprintf=no
-
- AH_TEMPLATE([HAVE_VSNPRINTF],
- [Define if you have the `vsnprintf' function])
- ESO_CHECK_FUNC(vsnprintf, [#include <stdio.h>], HAVE_VSNPRINTF)
-
- if test x$ac_cv_func_vsnprintf = xyes &&
- test x$ac_cv_have_decl_vsnprintf = xyes; then
-
- ESO_FUNC_VSNPRINTF_C99
-
- if test x$eso_cv_func_vsnprintf_c99 != xyes; then
- eso_compile_snprintf=yes
- fi
-
- else
- eso_compile_snprintf=yes
- fi
-
- if test x$eso_compile_snprintf = xyes; then
- if test -n "$LIBTOOL"; then
- SNPRINTF=snprintf.lo
- else
- SNPRINTF=snprintf.$ac_objext
- fi
- fi
-
- AC_SUBST(SNPRINTF)
-
- # The symbols defined by the following macro are only needed to setup the
- # vsnprintf() replacement. May be useless if the vsnprintf implementation
- # changes.
- ESO_CHECK_PRINTF_FORMATS
-
- AH_TEMPLATE([HAVE_SNPRINTF],
- [Define if you have the `snprintf' function])
- ESO_CHECK_FUNC(snprintf, [#include <stdio.h>], HAVE_SNPRINTF)
-
-])
-
-
-# ESO_FUNC_VASPRINTF
-#-------------------
-# Checks for vasprintf declaration and function.
-AC_DEFUN([ESO_FUNC_VASPRINTF],
-[
-
- AH_TEMPLATE([HAVE_VASPRINTF],
- [Define if you have the `vasprintf' function])
- ESO_CHECK_FUNC(vasprintf, [#include <stdio.h>], HAVE_VASPRINTF)
-
-])
-
-
-# ESO_FUNC_FPATHCONF
-#-------------------
-# Checks for fpathconf declaration and function.
-AC_DEFUN([ESO_FUNC_FPATHCONF],
-[
-
- AH_TEMPLATE([HAVE_FPATHCONF],
- [Define if you have the `fpathconf' function])
- ESO_CHECK_FUNC(fpathconf, [#include <unistd.h>], HAVE_FPATHCONF)
-
- # If we have fpathconf we should also have pathconf, but who knows.
- AH_TEMPLATE([HAVE_PATHCONF],
- [Define if you have the `pathconf' function])
- ESO_CHECK_FUNC(pathconf, [#include <unistd.h>], HAVE_PATHCONF)
-
-])
-
-
-# ESO_FUNC_SYSCONF
-#-----------------
-# Checks for sysconf declaration and function.
-AC_DEFUN([ESO_FUNC_SYSCONF],
-[
-
- AH_TEMPLATE([HAVE_SYSCONF],
- [Define if you have the `sysconf' function])
- ESO_CHECK_FUNC(sysconf, [#include <unistd.h>], HAVE_SYSCONF)
-
-])
-
-
-# ESO_FUNC_GETOPT
-#----------------
-# Checks for GNU getopt_long declaration and function.
-AC_DEFUN([ESO_FUNC_GETOPT],
-[
-
- AH_TEMPLATE([HAVE_GETOPT_LONG],
- [Define if you have the `getopt_long' function])
-
- ESO_CHECK_FUNC(getopt_long, [#include <getopt.h>], HAVE_GETOPT_LONG)
-
- if test x"$ac_cv_func_getopt_long" = xno ||
- test x"$eso_cv_have_decl_getopt_long" = xno; then
- if test -n "$LIBTOOL"; then
- GETOPT="getopt.lo getopt1.lo"
- else
- GETOPT="getopt.$ac_objext getopt1.$ac_objext"
- fi
- fi
-
- AC_SUBST(GETOPT)
-
-
-])
-
-
-# ESO_FUNC_GETPWUID
-#------------------
-# Checks for getpwuid declaration and function.
-AC_DEFUN([ESO_FUNC_GETPWUID],
-[
-
- AH_TEMPLATE([HAVE_GETPWUID],
- [Define if you have the `getpwuid' function])
-
- ESO_CHECK_FUNC(getpwuid, [#include <pwd.h>], HAVE_GETPWUID)
-
-])
-
-
-# ESO_FUNC_GETUID
-#----------------
-AC_DEFUN([ESO_FUNC_GETUID],
-[
-
- AH_TEMPLATE([HAVE_GETUID],
- [Define if you have the `getuid' function])
-
- ESO_CHECK_FUNC(getuid, [#include <unistd.h>], HAVE_GETUID)
-
-])
-
-
-# ESO_FUNC_LSTAT
-#---------------
-AC_DEFUN([ESO_FUNC_LSTAT],
-[
-
- AH_TEMPLATE([HAVE_LSTAT],
- [Define if you have the `lstat' function])
-
- ESO_CHECK_FUNC(lstat, [#include <sys/stat.h>], HAVE_LSTAT)
-
-])
-
-
-# ESO_FUNC_STRDUP
-#----------------
-AC_DEFUN([ESO_FUNC_STRDUP],
-[
-
- AH_TEMPLATE([HAVE_STRDUP],
- [Define if you have the `strdup' function])
-
- ESO_CHECK_FUNC(strdup, [#include <string.h>], HAVE_STRDUP)
-
- AH_BOTTOM([
-#ifndef HAVE_STRDUP
-# define strdup cx_strdup
-#endif
- ])
-])
-
-
-# ESO_FUNC_STPCPY
-#----------------
-AC_DEFUN([ESO_FUNC_STPCPY],
-[
-
- AH_TEMPLATE([HAVE_STPCPY],
- [Define if you have the `stpcpy' function])
-
- ESO_CHECK_FUNC(stpcpy, [#include <stpcpy.h>], HAVE_STPCPY)
-
-])
-
-
-# ESO_FUNC_SYMLINK
-#-----------------
-AC_DEFUN([ESO_FUNC_SYMLINK],
-[
-
- AH_TEMPLATE([HAVE_SYMLINK],
- [Define if you have the `symlink' function])
-
- ESO_CHECK_FUNC(symlink, [#include <unistd.h>], HAVE_SYMLINK)
-
-])
-
-
-# ESO_FUNC_WORDEXP
-#-----------------
-AC_DEFUN([ESO_FUNC_WORDEXP],
-[
-
- AH_TEMPLATE([HAVE_WORDEXP],
- [Define if you have the `wordexp' function])
-
- ESO_CHECK_FUNC(wordexp, [#include <wordexp.h>], HAVE_WORDEXP)
-
-])
-
-
-# ESO_FUNC_GETTIMEOFDAY
-#----------------------
-AC_DEFUN([ESO_FUNC_GETTIMEOFDAY],
-[
-
- AH_TEMPLATE([HAVE_GETTIMEOFDAY],
- [Define if you have the `gettimeofday' function])
-
- ESO_CHECK_FUNC(gettimeofday,
- [
- #include <unistd.h>
- #include <sys/time.h>
- ],
- HAVE_GETTIMEOFDAY)
-])
-
-
-# ESO_FUNC_VA_COPY(symbol)
-#-------------------------
-# Check for an implementation of va_copy(). The argument which must be
-# given is the preprocessor symbol that is defined to be either va_copy
-# or __va_copy depending on the available function, provided that an
-# implementation of va_copy is available at all.
-AC_DEFUN([ESO_FUNC_VA_COPY],
-[
-
- # Check for all three va_copy possibilities, so we get
- # all results in config.log for bug reports.
-
- # Check for availability of va_copy(). This is ISO C. Available with
- # gcc since version 3.0.
- AC_CACHE_CHECK([for an implementation of va_copy()], eso_cv_have_va_copy,
- [
- AC_RUN_IFELSE([
-#include <stdarg.h>
-
-void f(int i, ...)
-{
- va_list args1, args2;
- va_start (args1, i);
- va_copy (args2, args1);
-
- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
- exit (1);
-
- va_end (args1);
- va_end (args2);
-}
-
-int main() {
- f(0, 42);
- return 0;
-}
- ],
- eso_cv_have_va_copy=yes,
- eso_cv_have_va_copy=no,
- eso_cv_have_va_copy=no)
- ])
-
-
- # Check for availability of __va_copy(). Some compilers provide
- # this. Available with gcc since version 2.8.1.
- AC_CACHE_CHECK([for an implementation of __va_copy()],
- eso_cv_have__va_copy,
- [
- AC_RUN_IFELSE([
-#include <stdarg.h>
-
-void f(int i, ...)
-{
- va_list args1, args2;
-
- va_start (args1, i);
- __va_copy (args2, args1);
-
- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
- exit (1);
-
- va_end (args1);
- va_end (args2);
-}
-
-int main()
-{
- f(0, 42);
- return 0;
-}
- ],
- eso_cv_have__va_copy=yes,
- eso_cv_have__va_copy=no,
- eso_cv_have__va_copy=no)
-
- ])
-
- if test "x$eso_cv_have_va_copy" = "xyes"; then
- eso_func_va_copy=va_copy
- else
- if test "x$eso_cv_have__va_copy" = "xyes"; then
- eso_func_va_copy=__va_copy
- fi
- fi
-
- AH_TEMPLATE([HAVE_VA_COPY],
- [Define if you have an implementation of a `va_copy()' style
- function.])
- AH_TEMPLATE([$1], [A `va_copy()' style function])
-
- if test -n "x$eso_func_va_copy"; then
- AC_DEFINE_UNQUOTED([$1], $eso_func_va_copy)
- AC_DEFINE(HAVE_VA_COPY)
- fi
-
- # Check whether va_lists can be copied by value
- AC_CACHE_CHECK([whether va_lists can be copied by value],
- eso_cv_have_va_value_copy,
- [
- AC_RUN_IFELSE([
-#include <stdarg.h>
-
-void f(int i, ...)
-{
- va_list args1, args2;
- va_start (args1, i);
- args2 = args1;
-
- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
- exit (1);
-
- va_end (args1);
- va_end (args2);
-}
-
-int main()
-{
- f(0, 42);
- return 0;
-}
- ],
- eso_cv_have_va_value_copy=yes,
- eso_cv_have_va_val_copy=no,
- eso_cv_have_va_val_copy=no)
- ])
-
- AH_TEMPLATE([HAVE_VA_LIST_COPY_BY_VALUE],
- [Define if `va_lists' can be copied by value])
- if test "x$eso_cv_have_va_value_copy" = "xyes"; then
- AC_DEFINE(HAVE_VA_LIST_COPY_BY_VALUE)
- fi
-
-])
-
-
-# ESO_FUNC_REALLOC_SANITY
-#-------------------------
-# Check whether realloc(NULL,) works.
-AC_DEFUN([ESO_FUNC_REALLOC_SANITY],
-[
- AC_CACHE_CHECK([whether realloc(NULL,) works],
- eso_cv_have_sane_realloc,
- [
- AC_RUN_IFELSE([
-#include <stdlib.h>
-
-int main()
-{
- return realloc (0, sizeof (int)) == 0;
-}
- ],
- eso_cv_have_sane_realloc=yes,
- eso_cv_have_sane_realloc=no,
- eso_cv_have_sane_realloc=no)
- ])
-
- AH_TEMPLATE([HAVE_WORKING_REALLOC],
- [Define if realloc(NULL,) works])
-
- if test x$eso_cv_have_sane_realloc = xyes; then
- AC_DEFINE(HAVE_WORKING_REALLOC)
- fi
-
-])
-
-
-# ESO_FIND_FILE(file, directories, variable)
-#------------------------------------------
-# Search for file in directories. Set variable to the first location
-# where file was found, if file is not found at all variable is set to NO.
-AC_DEFUN([ESO_FIND_FILE],
-[
- $3=no
-
- for i in $2; do
- for j in $1; do
-
- echo "configure: __oline__: $i/$j" >&AC_FD_CC
-
- if test -r "$i/$j"; then
- echo "taking that" >&AC_FD_CC
- $3=$i
- break 2
- fi
- done
- done
-])
-
-
-# ESO_SET_LIBRARY_VERSION([CURRENT], [REVISION], [AGE])
-#------------------------------------------------------
-# Sets the libtool versioning symbols LT_CURRENT, LT_REVISION, LT_AGE.
-AC_DEFUN([ESO_SET_LIBRARY_VERSION],
-[
-
- if test -z "$1"; then
- LT_CURRENT=0
- else
- LT_CURRENT="$1"
- fi
-
- if test -z "$2"; then
- LT_REVISION=0
- else
- LT_REVISION="$2"
- fi
-
- if test -z "$3"; then
- LT_AGE=0
- else
- LT_AGE="$3"
- fi
-
- AC_SUBST(LT_CURRENT)
- AC_SUBST(LT_REVISION)
- AC_SUBST(LT_AGE)
-])
diff --git a/external/psfex/source/Macrodefs. b/external/psfex/source/Macrodefs.
deleted file mode 100644
index 3b4ef44..0000000
--- a/external/psfex/source/Macrodefs.
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# macro default definitions
-#
-# E.BERTIN 1999
-#
-SEXMACHINE=
-CD = cd
-CP = cp
-RM = rm -f
-
-default:
- @echo
- @echo "Please use: make SEXMACHINE=<machine_type>"
- @echo
- @echo "Where: <machine_type> = aix (for IBMs RS6000 running AIX)"
- @echo " alpha (for DEC-ALPHAs with Digital UNIX)"
- @echo " hpux (for HP/UX systems)"
- @echo " linuxpc (for PCs running LINUX, using gcc)"
- @echo " linuxp2 (for Pentium2 PCs running LINUX, using egcs)"
- @echo " sgi (for SGI platforms)"
- @echo " solaris (for SUN-Solaris machines)"
- @echo " sunos (for SUN-OS platforms)"
- @echo " ultrix (for DEC stations running ULTRIX)"
- @echo
- @echo "If your machine doesn't belong yet to the list above,"
- @echo "please drop me a mail (bertin at iap.fr)"
- @echo
- @echo "(Use make clean to remove products from a previous compilation)"
- @echo
-
diff --git a/external/psfex/source/Macrodefs.aix b/external/psfex/source/Macrodefs.aix
deleted file mode 100644
index 5e60d39..0000000
--- a/external/psfex/source/Macrodefs.aix
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the IBM/RS6000 AIX ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= ibm
-CC = cc # the C compiler
-COPTS = -O -DIBM_AIX # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.alpha b/external/psfex/source/Macrodefs.alpha
deleted file mode 100644
index b8b6b97..0000000
--- a/external/psfex/source/Macrodefs.alpha
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the DEC-Alpha ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= alpha
-CC = cc # the C compiler
-COPTS = -O -DDEC_ALPHA # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.debug b/external/psfex/source/Macrodefs.debug
deleted file mode 100644
index 90cc439..0000000
--- a/external/psfex/source/Macrodefs.debug
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the SUN/Solaris ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE = linux
-CC = egcs # the C compiler
-COPTS = -g -Wall -DPC_LINUX -DMALLOC_CHECK_=2 # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.gcc b/external/psfex/source/Macrodefs.gcc
deleted file mode 100644
index f26ea62..0000000
--- a/external/psfex/source/Macrodefs.gcc
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the gcc ANSI-C Compiler on other systems
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= gcc
-CC = gcc # the C compiler
-COPTS = -O # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.hpux b/external/psfex/source/Macrodefs.hpux
deleted file mode 100644
index 538df1f..0000000
--- a/external/psfex/source/Macrodefs.hpux
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the HP/UX ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= hpux
-CC = cc # the C compiler
-COPTS = -Aa +O3 -DHP_UX # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.insure b/external/psfex/source/Macrodefs.insure
deleted file mode 100644
index 129a24f..0000000
--- a/external/psfex/source/Macrodefs.insure
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the egcs ANSI-C Compiler on PC-LINUX systems (Pentium-Pro and above)
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= linux
-CC = insure # the C compiler
-COPTS = -DPC_LINUX -g -O3 -m486 -funroll-loops # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.linux b/external/psfex/source/Macrodefs.linux
deleted file mode 100644
index be6bd43..0000000
--- a/external/psfex/source/Macrodefs.linux
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# macro default definitions
-#
-# E.BERTIN 1999
-#
-SEXMACHINE=
-CD = cd
-CP = cp
-RM = rm -f
-
-default:
- @echo
- @echo "Please use: make SEXMACHINE=<machine_type>"
- @echo
- @echo "Where: <machine_type> = alpha (for DEC-ALPHAs with Digital UNIX)"
- @echo " ultrix (for DEC stations running ULTRIX)"
- @echo " hpux (for HP/UX systems)"
- @echo " aix (for IBMs RS6000 running AIX)"
- @echo " linuxpc (for PCs running LINUX, using gcc)"
- @echo " linuxp2 (for Pentium2 PCs running LINUX, using egcs)"
- @echo " solaris (for SUN-Solaris machines)"
- @echo " sunos (for SUN-OS platforms)"
- @echo
- @echo "If your machine doesn't belong yet to the list above,"
- @echo "please drop me a mail (bertin at iap.fr)"
- @echo
- @echo "(Use make clean to remove products from a previous compilation)"
- @echo
-
diff --git a/external/psfex/source/Macrodefs.linuxp2 b/external/psfex/source/Macrodefs.linuxp2
deleted file mode 100644
index 1eb7bf4..0000000
--- a/external/psfex/source/Macrodefs.linuxp2
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the egcs ANSI-C Compiler on PC-LINUX systems (Pentium-Pro and above)
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= linux
-CC = egcs # the C compiler
-COPTS = -DPC_LINUX -O3 -mcpu=pentiumpro -march=pentiumpro -funroll-loops # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.linuxpc b/external/psfex/source/Macrodefs.linuxpc
deleted file mode 100644
index a5288fc..0000000
--- a/external/psfex/source/Macrodefs.linuxpc
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the gcc ANSI-C Compiler on PC-LINUX systems
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= linux
-CC = gcc # the C compiler
-COPTS = -DPC_LINUX -O2 -malign-double -finline-functions -funroll-loops # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.profile b/external/psfex/source/Macrodefs.profile
deleted file mode 100644
index 5debd34..0000000
--- a/external/psfex/source/Macrodefs.profile
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the SUN/Solaris ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE=linuxpc
-CC = cc # the C compiler
-COPTS = -pg -O2 -malign-double -finline-functions -funroll-loops -DPC_LINUX # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.purify b/external/psfex/source/Macrodefs.purify
deleted file mode 100644
index 8f0f9ad..0000000
--- a/external/psfex/source/Macrodefs.purify
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for purify on Solaris
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= purify
-CC = cc # the C compiler
-COPTS = purify cc -fast -xO5 -DSUN_SOLARIS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.sgi b/external/psfex/source/Macrodefs.sgi
deleted file mode 100644
index 579e8f9..0000000
--- a/external/psfex/source/Macrodefs.sgi
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the cc compiler on SGI machines
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= sgi
-CC = cc # the C compiler
-COPTS = -O # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.solaris b/external/psfex/source/Macrodefs.solaris
deleted file mode 100644
index 2f54d4d..0000000
--- a/external/psfex/source/Macrodefs.solaris
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the SUN/Solaris ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= solaris
-CC = cc # the C compiler
-COPTS = -fast -xO5 -DSUN_SOLARIS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.sunos b/external/psfex/source/Macrodefs.sunos
deleted file mode 100644
index 14a2824..0000000
--- a/external/psfex/source/Macrodefs.sunos
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the GCC ANSI-C Compiler with SUN/OS
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= sunos
-CC = gcc # the C compiler
-COPTS = -O -DSUN_OS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Macrodefs.ultrix b/external/psfex/source/Macrodefs.ultrix
deleted file mode 100644
index dd447ea..0000000
--- a/external/psfex/source/Macrodefs.ultrix
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the DEC-Alpha ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= ultrix
-CC = cc # the C compiler
-COPTS = -O -DBSWAP # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/psfex/source/Makefile.am b/external/psfex/source/Makefile.am
deleted file mode 100644
index c92161d..0000000
--- a/external/psfex/source/Makefile.am
+++ /dev/null
@@ -1,53 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-## This file is part of the VIMOS Pipeline
-## Copyright (C) 2001-2004 European Southern Observatory
-
-## This program is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2 of the License, or
-## (at your option) any later version.
-
-## This program is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-
-## You should have received a copy of the GNU General Public License
-## along with this program; if not, write to the Free Software
-## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-
-DISTCLEANFILES = *~
-
-
-if MAINTAINER_MODE
-
-MAINTAINERCLEANFILES = Makefile.in
-
-endif
-
-
-EXTRA_DIST = Macrodefs. Macrodefs.aix Macrodefs.alpha Macrodefs.debug \
- Macrodefs.gcc Macrodefs.hpux Macrodefs.insure Macrodefs.linux \
- Macrodefs.linuxp2 Macrodefs.linuxpc Macrodefs.profile \
- Macrodefs.purify Macrodefs.sgi Macrodefs.solaris Macrodefs.sunos \
- Macrodefs.ultrix Makefile.orig
-
-
-bin_PROGRAMS = psfex
-
-noinst_HEADERS = check.h define.h fft.h fitscat.h fitscat_defs.h fitshead.h \
- fitsutil.h globals.h key.h poly.h prefs.h psf.h random.h sample.h \
- types.h vignet.h
-
-psfex_SOURCES = basis.c check.c fft.c fitscat.c fitsconv.c fitsfield.c \
- fitshead.c fitskey.c fitsmisc.c fitsread.c fitstab.c fitsutil.c \
- fitswrite.c main.c makeit.c misc.c pc.c poly.c prefs.c psf.c \
- random.c sample.c vignet.c
-
-psfex_LDADD = $(LIBM)
-
-
-COMPILE = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
diff --git a/external/psfex/source/Makefile.in b/external/psfex/source/Makefile.in
deleted file mode 100644
index 97d5437..0000000
--- a/external/psfex/source/Makefile.in
+++ /dev/null
@@ -1,526 +0,0 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-
-VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
- esac; \
- test $$am__dry = yes; \
- }
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-bin_PROGRAMS = psfex$(EXEEXT)
-subdir = source
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4macros/eso.m4 \
- $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__installdirs = "$(DESTDIR)$(bindir)"
-PROGRAMS = $(bin_PROGRAMS)
-am_psfex_OBJECTS = basis.$(OBJEXT) check.$(OBJEXT) fft.$(OBJEXT) \
- fitscat.$(OBJEXT) fitsconv.$(OBJEXT) fitsfield.$(OBJEXT) \
- fitshead.$(OBJEXT) fitskey.$(OBJEXT) fitsmisc.$(OBJEXT) \
- fitsread.$(OBJEXT) fitstab.$(OBJEXT) fitsutil.$(OBJEXT) \
- fitswrite.$(OBJEXT) main.$(OBJEXT) makeit.$(OBJEXT) \
- misc.$(OBJEXT) pc.$(OBJEXT) poly.$(OBJEXT) prefs.$(OBJEXT) \
- psf.$(OBJEXT) random.$(OBJEXT) sample.$(OBJEXT) \
- vignet.$(OBJEXT)
-psfex_OBJECTS = $(am_psfex_OBJECTS)
-am__DEPENDENCIES_1 =
-psfex_DEPENDENCIES = $(am__DEPENDENCIES_1)
-DEFAULT_INCLUDES = -I. at am__isrc@
-depcomp =
-am__depfiles_maybe =
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(psfex_SOURCES)
-DIST_SOURCES = $(psfex_SOURCES)
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EXEEXT = @EXEEXT@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
-LIBM = @LIBM@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MKDIR_P = @MKDIR_P@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SEXMACHINE = @SEXMACHINE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-DISTCLEANFILES = *~
- at MAINTAINER_MODE_TRUE@MAINTAINERCLEANFILES = Makefile.in
-EXTRA_DIST = Macrodefs. Macrodefs.aix Macrodefs.alpha Macrodefs.debug \
- Macrodefs.gcc Macrodefs.hpux Macrodefs.insure Macrodefs.linux \
- Macrodefs.linuxp2 Macrodefs.linuxpc Macrodefs.profile \
- Macrodefs.purify Macrodefs.sgi Macrodefs.solaris Macrodefs.sunos \
- Macrodefs.ultrix Makefile.orig
-
-noinst_HEADERS = check.h define.h fft.h fitscat.h fitscat_defs.h fitshead.h \
- fitsutil.h globals.h key.h poly.h prefs.h psf.h random.h sample.h \
- types.h vignet.h
-
-psfex_SOURCES = basis.c check.c fft.c fitscat.c fitsconv.c fitsfield.c \
- fitshead.c fitskey.c fitsmisc.c fitsread.c fitstab.c fitsutil.c \
- fitswrite.c main.c makeit.c misc.c pc.c poly.c prefs.c psf.c \
- random.c sample.c vignet.c
-
-psfex_LDADD = $(LIBM)
-COMPILE = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign source/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign source/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-binPROGRAMS: $(bin_PROGRAMS)
- @$(NORMAL_INSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- if test -n "$$list"; then \
- echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
- $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
- fi; \
- for p in $$list; do echo "$$p $$p"; done | \
- sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p; \
- then echo "$$p"; echo "$$p"; else :; fi; \
- done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
- -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
- sed 'N;N;N;s,\n, ,g' | \
- $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
- { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
- if ($$2 == $$4) files[d] = files[d] " " $$1; \
- else { print "f", $$3 "/" $$4, $$1; } } \
- END { for (d in files) print "f", d, files[d] }' | \
- while read type dir files; do \
- if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
- test -z "$$files" || { \
- echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
- $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
- } \
- ; done
-
-uninstall-binPROGRAMS:
- @$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- files=`for p in $$list; do echo "$$p"; done | \
- sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
- test -n "$$list" || exit 0; \
- echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(bindir)" && rm -f $$files
-
-clean-binPROGRAMS:
- -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
-psfex$(EXEEXT): $(psfex_OBJECTS) $(psfex_DEPENDENCIES) $(EXTRA_psfex_DEPENDENCIES)
- @rm -f psfex$(EXEEXT)
- $(LINK) $(psfex_OBJECTS) $(psfex_LDADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-.c.o:
- $(COMPILE) -c $<
-
-.c.obj:
- $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(PROGRAMS) $(HEADERS)
-installdirs:
- for dir in "$(DESTDIR)$(bindir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-am
-
-clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am: install-binPROGRAMS
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-binPROGRAMS
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
- clean-generic cscopelist ctags distclean distclean-compile \
- distclean-generic distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-binPROGRAMS \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-binPROGRAMS
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/external/psfex/source/Makefile.orig b/external/psfex/source/Makefile.orig
deleted file mode 100644
index 9a15fca..0000000
--- a/external/psfex/source/Makefile.orig
+++ /dev/null
@@ -1,23 +0,0 @@
-include Macrodefs.$(SEXMACHINE)
-DEST = ${HOME}/bin # where to put the executable
-LIBS = -lm
-FITSO = fitscat.o fitsconv.o fitsfield.o fitshead.o fitskey.o fitsmisc.o \
- fitsread.o fitstab.o fitsutil.o fitswrite.o
-FITSH = fitscat.h fitscat_defs.h poly.h psf.h
-OBJ = basis.o check.o fft.o main.o makeit.o misc.o poly.o prefs.o pc.o \
- psf.o random.o sample.o vignet.o
-H = define.h fft.h globals.h types.h prefs.h psf.h check.h vignet.h
-
-psfex: $(FITSO) $(OBJ)
- $(CC) $(FITSO) $(OBJ) -o psfex $(LIBS) $(COPTS)
- -cp psfex $(DEST)
-
-$(FITSO): $(FITSH)
-
-$(OBJ): $(H)
-
-.c.o:
- $(CC) $(COPTS) -c $*.c
-
-clean:
- $(RM) *.o psfex
diff --git a/external/psfex/source/basis.c b/external/psfex/source/basis.c
deleted file mode 100644
index 58cb537..0000000
--- a/external/psfex/source/basis.c
+++ /dev/null
@@ -1,83 +0,0 @@
- /*
- basis.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Basis functions for the PSF model.
-*
-* Last modify: 26/02/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "poly.h"
-
-/****** basis_alard ***********************************************************
-PROTO double *basis_alard(int w, int h, int deg, int ngauss, double fwhm,
- int *nbasis)
-PURPOSE Compute Alard & Lupton's (1998) image basis.
-INPUT Width of vignets,
- Height of vignets,
- Max. degree of polynom,
- Number of gaussians.
- Pointer to an int.
-OUTPUT 2D*ncoeff*n2 array. The number of basis images is returned in nbasis.
-NOTES Uses functions in poly.c.
-AUTHOR E. Bertin (IAP)
-VERSION 26/02/99
- ***/
-double *basis_alard(int w, int h, int deg, int ngauss, double fwhm,
- int *nbasis)
- {
- polystruct *poly;
- double x[2], *basis,*basist,*basist0, *pbasis,*pbasist,
- sigma,alpha,expo,dval;
- int c,g,n, ix,iy, hw,hh, ncoeff,npix;
-
-/* Prepare a POLYnom structure (function of x and y) */
- g = 0; /* Only 1 group, with label 0 */
- poly = poly_init(&g, 2, °, 1);
-
- pbasis = poly->basis;
- ncoeff = poly->ncoeff;
- npix = w*h;
- *nbasis = ncoeff*ngauss;
-/* Allocate memory to store the basis functions */
- QMALLOC(basis, double, npix**nbasis);
-
- alpha = 1/(2.0*(fwhm/2.35)*(fwhm/2.35));
- hw = w/2;
- hh = h/2;
-
- basist0 = basis;
- for (iy=-hh; iy<hh; iy++)
- for (ix=-hw; ix<hw; ix++)
- {
- basist = basist0++;
- poly_func(poly, x);
- for (n=0; n<ngauss; n++)
- {
- if ((expo=alpha/(n+1.0)*(ix*ix+iy*iy))<70.0)
- dval = exp(-expo);
- for (pbasist=pbasis, c=ncoeff; c--; basist+=npix)
- *basist = dval**(pbasist++);
- }
- }
-
- poly_end(poly);
-
- return basis;
- }
-
diff --git a/external/psfex/source/check.c b/external/psfex/source/check.c
deleted file mode 100644
index a3f0bc1..0000000
--- a/external/psfex/source/check.c
+++ /dev/null
@@ -1,293 +0,0 @@
- /*
- check.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Production of check-images for the PSF.
-*
-* Last modify: 14/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "sample.h"
-#include "poly.h"
-#include "psf.h"
-#include "check.h"
-
-
-/******************************* psf_writecheck ******************************/
-/*
-Write a FITS image for check.
-*/
-void psf_writecheck(psfstruct *psf, pcstruct *pc, setstruct *set,
- char *filename, checkenum checktype)
- {
- catstruct *cat;
- tabstruct *tab;
- samplestruct *sample;
- char *head;
- static double dpos[POLY_MAXDIM], *dpost;
- double *dpix0, *dpix, dstep,dstart;
- float *pix,*pix0, *fpix, val;
- int i,j,x,y, w,h,n, npc,nt, nw,nh, step;
-
-/* Create the new cat (well it is not a "cat", but simply a FITS table */
- cat = new_cat(1);
- init_cat(cat);
- tab = cat->tab;
- tab->naxis = 2; /* This is an image */
- QMALLOC(tab->naxisn, int, tab->naxis);
- fitsremove(tab->headbuf,"HISTORY ");
- fitsremove(tab->headbuf,"EXTEND ");
- head = tab->headbuf;
- switch(checktype)
- {
- case PSF_CHI:
-/*---- sqrt(chi2) map in PSF pixel-space */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- nw = (int)(sqrt((double)set->nsample*set->nvig)/set->vigsize[0]+1);
- nw = 1;
- nh = 1;
- w = psf->size[0];
- h = psf->size[1];
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- pix = pix0;
- fpix = psf->resi;
- for (i=w*h; i--;)
- *(pix++) = *(fpix++);
- break;
-
- case PSF_PROTO:
-/*---- PSF data for all components are arranged as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- npc = psf->size[2];
- nw = npc<10? npc:10;
- nh = (npc-1)/nw + 1;
- w = psf->size[0];
- h = psf->size[1];
- step = (nw-1)*w;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
-/*---- Normalize the components in the image corners: pos=(0.5,0.5,..) */
- for (dpost=dpos, i=psf->poly->ndim; i--;)
- *(dpost++) = 0.5;
- poly_func(psf->poly, dpos);
- dpost = psf->poly->basis;
- fpix = psf->comp;
- for (n=0; n<npc; n++)
- {
- val = *(dpost++);
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++)*val;
- }
- break;
-
- case PSF_RESIDUALS:
-/*---- Residual vectors for all samples are arranged as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- nw = (int)(sqrt((double)set->nsample*set->nvig)/set->vigsize[0]+1);
- nw = ((nw-1)/10+1)*10;
- nh = set->nsample/(nw+1) + 1;
- w = set->vigsize[0];
- h = set->vigdim>1? set->vigsize[1] : 1;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- step = (nw-1)*w;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- sample = set->sample;
- for (n=0; n<set->nsample; n++)
- {
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- fpix = (sample++)->vigresi;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++);
- }
- break;
-
- case PSF_RAWDATA:
-/*---- View original samples as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- nw = (int)(sqrt((double)set->nsample*set->nvig)/set->vigsize[0]+1);
- nw = ((nw-1)/10+1)*10;
- nh = set->nsample/(nw+1) + 1;
- w = set->vigsize[0];
- h = set->vigdim>1? set->vigsize[1] : 1;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- step = (nw-1)*w;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- sample = set->sample;
- for (n=0; n<set->nsample; n++)
- {
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- fpix = (sample++)->vig;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++);
- }
- break;
-
- case PSF_SAMPLES:
-/*---- View all training samples as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- nw = (int)(sqrt((double)set->nsample*set->nreti)/set->retisize[0]+1);
- nw = ((nw-1)/10+1)*10;
- nh = set->nsample/(nw+1) + 1;
- w = set->retisize[0];
- h = set->retidim>1? set->retisize[1] : 1;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- step = (nw-1)*w;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- sample = set->sample;
- for (n=0; n<set->nsample; n++)
- {
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- fpix = (sample++)->retina;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++);
- }
- break;
-
- case PSF_SNAPSHOTS:
-/*---- View reconstructed PSFs as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- npc = psf->poly->ndim;
- nw = PSF_SNAPWIDTH;
- for (nt=PSF_SNAPWIDTH*PSF_SNAPWIDTH, i=npc-2; (i--)>0;)
- nt *= PSF_SNAPWIDTH;
- nh = nt/nw;
- w = set->retisize[0];
- h = set->retidim>1? set->retisize[1] : 1;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- step = (nw-1)*w;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- dstep = 1.0/PSF_SNAPWIDTH;
- dstart = (1.0-dstep)/2.0;
- memset(dpos, 0, POLY_MAXDIM*sizeof(double));
- for (i=0; i<npc; i++)
- dpos[i] = -dstart;
- for (n=0; n<nt; n++)
- {
- psf_build(psf, dpos);
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- fpix = psf->loc;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++);
- for (i=0; i<npc; i++)
- if (dpos[i]<dstart-0.01)
- {
- dpos[i] += dstep;
- break;
- }
- else
- dpos[i] = -dstart;
- }
- break;
-
- case PSF_WEIGHTS:
-/*---- View all training sample weights as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- nw = (int)(sqrt((double)set->nsample*set->nreti)/set->retisize[0]+1);
- nw = ((nw-1)/10+1)*10;
- nh = set->nsample/(nw+1) + 1;
- w = set->retisize[0];
- h = set->retidim>1? set->retisize[1] : 1;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- step = (nw-1)*w;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- sample = set->sample;
- for (n=0; n<set->nsample; n++)
- {
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- fpix = (sample++)->retiweight;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++);
- }
- break;
-
- case PSF_PCPROTO:
-/*---- convolved PC data for all components are arranged as small vignets */
- tab->bitpix = BP_FLOAT;
- tab->bytepix = t_size[T_FLOAT];
- if (pc)
- {
- npc = pc->size[2]*pc->size[3];
- nw = pc->size[2];
- nh = pc->size[3];
- w = pc->size[0];
- h = pc->size[1];
- step = (nw-1)*w;
- tab->naxisn[0] = nw*w;
- tab->naxisn[1] = nh*h;
- tab->tabsize = tab->bytepix*tab->naxisn[0]*tab->naxisn[1];
- QCALLOC(pix0, float, tab->tabsize);
- tab->bodybuf = (char *)pix0;
- fpix = pc->comp;
- for (n=0; n<npc; n++)
- {
- pix = pix0 + ((n%nw) + (n/nw)*nw*h)*w;
- for (y=h; y--; pix += step)
- for (x=w; x--;)
- *(pix++) = *(fpix++);
- }
- }
- break;
- default:
- error(EXIT_FAILURE, "*Internal Error*: Yet unavailable CHECKIMAGE type",
- "");
- }
-
-/* Then, just save everything and free memory */
- save_cat(cat, filename);
- free_cat(cat, 1);
-
- return;
- }
-
diff --git a/external/psfex/source/check.h b/external/psfex/source/check.h
deleted file mode 100644
index 3765f7f..0000000
--- a/external/psfex/source/check.h
+++ /dev/null
@@ -1,25 +0,0 @@
- /*
- check.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include for producing check-images.
-*
-* Last modify: 04/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define PSF_SNAPWIDTH 7 /* Margin against overfitting */
-
-/*---------------------------------- protos --------------------------------*/
-extern void psf_writecheck(psfstruct *psf, pcstruct *pc,
- setstruct *set,
- char *filename, checkenum checktype);
-
diff --git a/external/psfex/source/define.h b/external/psfex/source/define.h
deleted file mode 100644
index 4360a0a..0000000
--- a/external/psfex/source/define.h
+++ /dev/null
@@ -1,153 +0,0 @@
- /*
- define.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: global definitions.
-*
-* Last modify: 13/10/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------ what, who, when and where ------------------------*/
-
-#define BANNER "PSFEx"
-#define VERSION "1.8.1 (October 13, 1999)"
-#define COPYRIGHT "Emmanuel BERTIN (bertin at iap.fr)"
-#define INSTITUTE "IAP"
-
-/*----------------------------- Internal constants --------------------------*/
-#define OUTPUT stderr /* where all msgs are sent */
-#define BIG 1e+30 /* a huge number */
-#define MAXCHAR 256 /* max. number of characters */
-#define MAXCHECK 16 /* max. # of CHECKimages */
-#define MAXCONTEXT 8 /* max. # of context keys */
-
-/*------------ Set defines according to machine's specificities -------------*/
-
-#ifdef DEC_ALPHA
-#define BSWAP
-#define INT64
-#define UNIX
-#endif
-
-#ifdef HP_UX
-#define UNIX
-#endif
-
-#ifdef PC_LINUX
-#define BSWAP
-#define UNIX
-#endif
-
-#ifdef SUN_ULTRASPARC
-#define INT64
-#define UNIX
-#endif
-
-#if 0
-#define NO_ENVVAR
-#endif
-
-/*---------------------------- return messages ------------------------------*/
-
-#define RETURN_OK 0
-#define RETURN_ERROR (-1)
-#define RETURN_FATAL_ERROR (-2)
-
-/*--------------------- in case of missing constants ------------------------*/
-
-#ifndef PI
-#define PI 3.1415926535898 /* never met before? */
-#endif
-
-#ifndef SEEK_SET
-#define SEEK_SET 0
-#endif
-#ifndef SEEK_CUR
-#define SEEK_CUR 1
-#endif
-
-#ifndef EXIT_SUCCESS
-#define EXIT_SUCCESS 0
-#endif
-#ifndef EXIT_FAILURE
-#define EXIT_FAILURE -1
-#endif
-
-/*------------------- a few definitions to read FITS parameters ------------*/
-
-#define FITSTOF(k, def) ((point = fitsnfind(buf, k, n))? \
- atof(strncpy(st, &point[10], 70)) \
- :(def))
-#define FITSTOI(k, def) ((point = fitsnfind(buf, k, n))? \
- atoi(strncpy(st, &point[10], 70)) \
- :(def))
-
-#define FITSTOS(k, str, def) \
- { if (fitsread(buf,k,str,H_STRING,T_STRING)!= RETURN_OK) \
- strcpy(str, (def)); \
- }
-
-/*------------------------------- Other Macros -----------------------------*/
-
-#define DEXP(x) exp(2.30258509299*(x)) /* 10^x */
-
-#define QFREAD(ptr, size, afile, fname) \
- if (fread(ptr, (size_t)(size), (size_t)1, afile)!=1) \
- error(EXIT_FAILURE, "*Error* while reading ", fname)
-
-#define QFWRITE(ptr, size, afile, fname) \
- if (fwrite(ptr, (size_t)(size), (size_t)1, afile)!=1) \
- error(EXIT_FAILURE, "*Error* while writing ", fname)
-
-#define QFSEEK(afile, offset, pos, fname) \
- if (fseek(afile, (offset), pos)) \
- error(EXIT_FAILURE,"*Error*: file positioning failed in ", \
- fname)
-
-#define QFTELL(pos, afile, fname) \
- if ((pos=ftell(afile))==-1) \
- error(EXIT_FAILURE,"*Error*: file position unknown in ", \
- fname)
-
-#define QCALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)calloc((size_t)(nel),sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QREALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)realloc(ptr, (size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMEMCPY(ptrin, ptrout, typ, nel) \
- {if (ptrin) \
- {if (!(ptrout = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptrout " (" #nel " elements) !"); \
- memcpy(ptrout, ptrin, (size_t)(nel)*sizeof(typ));};;}
-
-#define RINT(x) (int)(floor(x+0.5))
-
-#define PIX(x, y) field->strip[(((int)y)%field->stripheight) \
- *field->width +(int)x]
-
-#define NPRINTF if (prefs.verbose_type == NORM) fprintf
-
-#define NFPRINTF(w,x) {if (prefs.verbose_type == NORM) \
- fprintf(w, "\33[1M> %s\n\33[1A",x); \
- else if (prefs.verbose_type == FULL) \
- fprintf(w, "%s.\n", x);}
-
-#define FPRINTF if (prefs.verbose_type == FULL) fprintf
diff --git a/external/psfex/source/fft.c b/external/psfex/source/fft.c
deleted file mode 100644
index 77e7576..0000000
--- a/external/psfex/source/fft.c
+++ /dev/null
@@ -1,366 +0,0 @@
-/*
- fft.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Routines dealing with FFT.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "fft.h"
-
-#define SWAP(a,b) tempr=(a);(a)=(b);(b)=tempr
-
-/********************************** fourn ************************************/
-/*
-ndim-dimensional Fast Fourier Transform (from Numerical Recipes in C, p.468).
-The 1-dimensional 'data' array is replaced by its Fourier transform:
-storage in 'data': (Re[0][0],Im[0][0]); (Re[0][1],Im[0][1]);...
-The 1-dimensional 'nn' array contains the sizes in each dimension.
-isign = +1 for direct FFT, or -1 for inverse FFT.
-Note: float version.
-*/
-void fourn(float *data, unsigned int *nn, int ndim, int isign)
- {
- int idim;
- unsigned int i1,i2,i3,i2rev,ip1,ip2,ip3,ifp1,ifp2;
- unsigned int ibit,n,nprev,nrem,ntot;
- float tempi,tempr, *d3, *d3rev, *dk1,*dk2;
- double theta,wi,wpi,wpr,wr,wtemp;
-
-/* a small trick to begin arrays with nb 1 (a reminiscence of FORTRAN!) */
- data--;
-
- ntot=1;
- for (idim=0;idim<ndim;idim++)
- ntot *= nn[idim];
- nprev=1;
- for (idim=ndim;idim--;)
- {
- n=nn[idim];
- nrem=ntot/(n*nprev);
- ip1=nprev << 1;
- ip2=ip1*n;
- ip3=ip2*nrem;
- i2rev=1;
- for (i2=1;i2<=ip2;i2+=ip1)
- {
- if (i2 < i2rev)
- {
- for (i1=i2;i1<=i2+ip1-2;i1+=2)
- {
- for (i3=i1;i3<=ip3;i3+=ip2)
- {
- d3rev=i2rev+(d3=data+i3)-i2;
- SWAP(*d3,*d3rev);
- SWAP(*(d3+1),*(d3rev+1));
- }
- }
- }
- ibit=ip2 >> 1;
- while (ibit >= ip1 && i2rev > ibit)
- {
- i2rev -= ibit;
- ibit >>= 1;
- }
- i2rev += ibit;
- }
- ifp1=ip1;
- while (ifp1 < ip2)
- {
- ifp2=ifp1 << 1;
- theta=isign*6.28318530717959/(ifp2/ip1);
- wtemp=sin(0.5*theta);
- wpr = -2.0*wtemp*wtemp;
- wpi=sin(theta);
- wr=1.0;
- wi=0.0;
- for (i3=1;i3<=ifp1;i3+=ip1)
- {
- for (i1=i3;i1<=i3+ip1-2;i1+=2)
- {
- for (i2=i1;i2<=ip3;i2+=ifp2)
- {
- dk2=(dk1=data+i2)+ifp1;
- tempr=wr**dk2 - wi**(dk2+1);
- tempi=wr**(dk2+1) + wi**dk2;
- *(dk2++)=*dk1-tempr;
- *dk2=*(++dk1)-tempi;
- *(dk1--) += tempi;
- *dk1 += tempr;
- }
- }
- wr+=(wtemp=wr)*wpr-wi*wpi;
- wi+=wi*wpr+wtemp*wpi;
- }
- ifp1=ifp2;
- }
- nprev *= n;
- }
-
- return;
- }
-
-
-/********************************* autoconv **********************************/
-/*
-Optimized 2-dimensional FFT convolution, dedicated to 2D real data (images).
-Handles automatically padding to powers of 2 and does not modify input
-arrays.
-*/
-int autoconv(float *data, int iwidth, int iheight,
- float *mask, int width, int height,
- float *output, int owidth, int oheight)
- {
- static float *maskbuf, *databuf, *speqmask;
- static int mwidth, mheight;
- float *buf1,*buf2;
- int wmax,hmax, xoffset, hxoffset,hyoffset, hwidth, hheight,
- i,j;
-
-/* Free memory and exit if a NULL output pointer is given */
- if (!output)
- {
- free(maskbuf);
- maskbuf = NULL;
- free(speqmask);
- speqmask = NULL;
- free(databuf);
- databuf = NULL;
- return RETURN_OK;
- }
-
-
-/* Padding of the mask if a non-zero mask is provided */
- if (mask)
- {
-/*-- Search for the biggest image dimensions */
- wmax = width;
- hmax = height;
- if (wmax<iwidth)
- wmax = iwidth;
- if (wmax<owidth)
- wmax = owidth;
- if (hmax<iheight)
- hmax = iheight;
- if (hmax<oheight)
- hmax = oheight;
- mwidth = 2;
- for (i=wmax-1; i>>=1; mwidth<<=1);
- mheight = 2;
- for (i=hmax-1; i>>=1; mheight<<=1);
- free (maskbuf);
- free(speqmask);
- free(databuf);
- speqmask = NULL;
- QCALLOC(maskbuf, float, mwidth*mheight);
-/*-- Descrambling of the mask (PSF center put at 1,1) */
- hwidth = width/2;
- hheight = height/2;
- xoffset = mwidth - width;
- buf1 = mask+hwidth+width*hheight;
- buf2 = maskbuf;
- for (j=height-hheight; j--;)
- {
- for (i=width-hwidth; i--;)
- *(buf2++) = *(buf1++);
- buf1 -= width;
- buf2 += xoffset;
- for (i=hwidth; i--;)
- *(buf2++) = *(buf1++);
- buf1 += width;
- }
- buf1 = mask+hwidth;
- buf2 += mwidth*(mheight-height);
- for (j=hheight; j--;)
- {
- for (i=width-hwidth; i--;)
- *(buf2++) = *(buf1++);
- buf1 -= width;
- buf2 += xoffset;
- for (i=hwidth; i--;)
- *(buf2++) = *(buf1++);
- buf1 += width;
- }
- QMALLOC(databuf, float, mwidth*mheight);
- }
-
-/* Padding of the data */
- memset(databuf, 0, (size_t)(mwidth*mheight)*sizeof(float));
- xoffset = mwidth - iwidth;
- hxoffset = (xoffset+1)/2;
- hyoffset = (mheight-iheight+1)/2;
- buf1 = data;
- buf2 = databuf+hyoffset*mwidth+hxoffset;
- for (j=iheight; j--; buf2 += xoffset)
- for (i=iwidth; i--;)
- *(buf2++) = *(buf1++);
-
- speqmask = fastconv(databuf, maskbuf, speqmask, mwidth, mheight);
-
-/* ``Unpadding'' of the data */
- xoffset = mwidth - owidth;
- hxoffset = (xoffset+1)/2;
- hyoffset = (mheight-oheight+1)/2;
- buf1 = databuf+hyoffset*mwidth+hxoffset;
- buf2 = output;
- for (j=oheight; j--; buf1 += xoffset)
- for (i=owidth; i--;)
- *(buf2++) = *(buf1++);
-
-
- return RETURN_OK;
- }
-
-/********************************* fastconv **********************************/
-/*
-Optimized 2-dimensional FFT convolution, dedicated to 2D real data (images).
-Returns the Nyquist vertical frequency vector (for which memory is allocated).
-*/
-float *fastconv(float *image, float *mask, float *speqmask,
- int width, int height)
- {
- int i, nbfreq;
- float *speqimage, *imap, *maskp,
- real, imag, fac;
-
-/* Allocate temporary memory for storing Nyquist unfolded freq. components */
- QMALLOC(speqimage, float, 2*height);
- if (!speqmask)
- {
- QMALLOC(speqmask, float, 2*height);
-/*-- Forward FFT for mask */
- frt2d(mask, speqmask, width, height, 1);
- }
-/* Forward FFT for image */
- frt2d(image, speqimage, width, height, 1);
-/* Actual convolution (Fourier product) */
- nbfreq = width*height/2.0;
- fac = 1.0/nbfreq;
- imap = image;
- maskp = mask;
- for (i=0; i<nbfreq; i++, maskp+=2)
- {
- real = *imap**maskp-*(imap+1)**(maskp+1);
- imag = *imap**(maskp+1)+*(imap+1)**maskp;
- *(imap++) = fac*real;
- *(imap++) = fac*imag;
- }
-
- nbfreq = height;
- imap = speqimage;
- maskp = speqmask;
- for (i=0; i<nbfreq; i++, maskp+=2)
- {
- real = *imap**maskp-*(imap+1)**(maskp+1);
- imag = *imap**(maskp+1)+*(imap+1)**maskp;
- *(imap++) = fac*real;
- *(imap++) = fac*imag;
- }
-
-/* Reverse FFT */
- frt2d(image, speqimage, width, height, -1);
- free(speqimage);
-
- return speqmask;
- }
-
-/*********************************** frt2d ***********************************/
-/*
-Fast real 2D Fourier transform, based on FFT (inspired from Numerical Recipes
-in C, 2nd ed., p.528).
-*/
-void frt2d(float *data, float *speq, int width, int height, int isign)
- {
- unsigned int i2,i3,ii3,j2,j3, nn[2], uwidth, uheight;
- float *datai2,*datai21, *dataj2,*dataj21, *speqj2,*speqj21,
- c2,h1r,h1i,h2r,h2i;
- double theta, wi,wpi,wr,wpr,wtemp;
-
- uwidth = width;
- uheight = height;
- theta = isign*6.28318530717959/height;
- wtemp = sin(0.5*theta);
- wpr = -2.0*wtemp*wtemp;
- wpi = sin(theta);
- nn[0] = uheight;
- nn[1] = uwidth>>1;
- c2 = -0.5*isign;
- if (isign==1)
- {
- fourn(data, nn, 2, isign);
- datai2 = data;
- speqj2 = speq;
- for (i2=0; i2<uheight; i2++, datai2 += uwidth)
- {
- *(speqj2++) = *(datai2++);
- *(speqj2++) = *(datai2--);
- }
- }
- wr = 1.0;
- wi = 0.0;
- for (i3=0,ii3=0; i3<=(uwidth>>2); i3++,ii3+=2)
- {
- if (!i3)
- {
- datai2 = data;
- for (i2=0; i2<uheight; i2++, datai2+=uwidth)
- {
- datai21 = datai2 + 1;
- j2 = i2? ((uheight-i2-1)<<1)+2 : 0;
- speqj2 = speq+j2;
- speqj21 = speqj2+1;
- h1r = 0.5*(*datai2+*speqj2);
- h1i = 0.5*(*datai21-*speqj21);
- h2i = c2*(*datai2-*speqj2);
- h2r = -c2*(*datai21+*speqj21);
- *datai2 = h1r+h2r;
- *datai21 = h1i+h2i;
- *speqj2 = h1r-h2r;
- *speqj21 = h2i-h1i;
- }
- }
- else
- {
- datai2 = data+ii3;
- for (i2=0; i2<uheight; i2++, datai2+=uwidth)
- {
- datai21 = datai2 + 1;
- j2 = i2? uheight-i2 : 0;
- j3 = uwidth+2-((i3+1)<<1);
- dataj2 = data + j2*uwidth + j3;
- dataj21 = dataj2 + 1;
- h1r = 0.5*(*datai2+*dataj2);
- h1i = 0.5*(*datai21-*dataj21);
- h2i = c2*(*datai2-*dataj2);
- h2r = -c2*(*datai21+*dataj21);
- *datai2 = h1r+wr*h2r-wi*h2i;
- *datai21 = h1i+wr*h2i+wi*h2r;
- *dataj2 = h1r-wr*h2r+wi*h2i;
- *dataj21 = -h1i+wr*h2i+wi*h2r;
- }
- }
- wr = (wtemp=wr)*wpr-wi*wpi+wr;
- wi = wi*wpr+wtemp*wpi+wi;
- }
-
- if (isign == -1)
- fourn(data, nn, 2, isign);
-
- return;
- }
-
diff --git a/external/psfex/source/fft.h b/external/psfex/source/fft.h
deleted file mode 100644
index d3f2c55..0000000
--- a/external/psfex/source/fft.h
+++ /dev/null
@@ -1,29 +0,0 @@
- /*
- fft.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN, Institut d'Astrophysique de Paris.
-*
-* Contents: Include for psf.c.
-*
-* Last modify: 25/08/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*---------------------------- Internal constants ---------------------------*/
-
-/*--------------------------- structure definitions -------------------------*/
-
-/*---------------------------------- protos --------------------------------*/
-extern void fourn(float *, unsigned int *, int, int),
- frt2d(float *, float *, int, int, int);
-
-extern float *fastconv(float *, float *, float *, int, int);
-
-extern int autoconv(float *, int, int, float *, int, int,
- float *, int, int);
-
diff --git a/external/psfex/source/fitscat.c b/external/psfex/source/fitscat.c
deleted file mode 100644
index 846ed9d..0000000
--- a/external/psfex/source/fitscat.c
+++ /dev/null
@@ -1,394 +0,0 @@
-/*
- fitscat.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: low-level functions for handling LDAC FITS catalogs.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** about_cat **************************************************************
-PROTO int about_cat(catstruct *cat, FILE *stream)
-PURPOSE Print some info about a catalog.
-INPUT Catalog structure,
- output stream.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int about_cat(catstruct *cat, FILE *stream)
-
- {
- tabstruct *tab;
- int i;
-
- fprintf(stream,"\n");
-
-/*General info about the catalog itself*/
- fprintf(stream,
- "------------------Catalog information----------------\n");
- fprintf(stream,
- "Filename:..............%s\n", cat->filename);
- fprintf(stream,
- "Number of segments:....%d\n", cat->ntab);
- fprintf(stream,"\n");
-
-/*Now for each table*/
- tab = cat->tab;
- for (i=0; i<cat->ntab; i++)
- {
- fprintf(stream,
- "****** Table #%d\n", i+1);
- fprintf(stream,
- " Extension type:.........%s\n",
- tab->xtension[0]? tab->xtension: "(Primary HDU)");
- fprintf(stream,
- " Extension name:.........%s\n", tab->extname);
- if (tab->naxis)
- {
- fprintf(stream,
- " Number of dimensions:...%d\n", tab->naxis);
- fprintf(stream,
- " Number of elements:.....%d\n", tab->naxisn[1]);
- if (tab->tfields)
- fprintf(stream,
- " Number of data fields...%d\n", tab->tfields);
- fprintf(stream,
- " Body size:..............%d bytes\n", tab->tabsize);
- }
- fprintf(stream,"\n");
- while (!(tab=tab->nexttab)->nseg);
- }
-
- fprintf(stream,"\n");
-
- return RETURN_OK;
- }
-
-
-/****** addhistoryto_cat *******************************************************
-PROTO int addhistoryto_cat(catstruct *cat, char *str)
-PURPOSE Add a HISTORY line to a FITS catalog.
-INPUT A pointer to catalog structure, and the character string to insert.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-NOTES The pointer to the primary header might be reallocated if necessary.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int addhistoryto_cat(catstruct *cat, char *str)
-
- {
- static time_t thetime;
- static char str2[82];
- tabstruct *tab;
- int n, headpos;
-
- tab = cat->tab;
- n = tab->headnblock;
- headpos = fitsfind(tab->headbuf, "END ");
- if (headpos >= n*(FBSIZE/80) - 1)
- {
- QREALLOC(tab->headbuf, char, (n+1)*FBSIZE);
- memset(&tab->headbuf[n*FBSIZE], ' ', FBSIZE);
- tab->headnblock++;
- }
-
- if (time(&thetime)==-1)
- warning("No time available for history","");
-
- if (!strftime(str2, 16, "%d/%m/%y %H:%M", localtime(&thetime)))
- error(EXIT_FAILURE, "*Internal Error*: Time/date string too long in ",
- "addhistoryto_cat()");
- sprintf(str2, "%s %.65s", str2, str);
- fitsadd(tab->headbuf, "HISTORY ", str2);
-
- return RETURN_OK;
- }
-
-
-/****** close_cat **************************************************************
-PROTO int close_cat(catstruct *cat)
-PURPOSE Close a FITS catalog.
-INPUT catalog structure.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-NOTES the file structure member is set to NULL;
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int close_cat(catstruct *cat)
-
- {
-
- if (fclose(cat->file))
- {
- cat->file = NULL;
- return RETURN_ERROR;
- }
-
- cat->file = NULL;
-
- return RETURN_OK;
- }
-
-
-/****** free_cat ***************************************************************
-PROTO void free_cat(catstruct *cat, int ncat)
-PURPOSE Free all structures allocated for one or several FITS catalog.
-INPUT Pointer to a catalog structure,
- Number of catalogs.
-OUTPUT -.
-NOTES Unallocated pointers should have been put to NULL.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-void free_cat(catstruct *cat, int ncat)
-
- {
- catstruct *thecat;
- int i;
-
-/*--free memory allocated within each catalog */
- thecat = cat;
- for (i=ncat; i--;)
- {
- if (thecat->file)
- close_cat(thecat);
- remove_tabs(thecat++);
- }
-
- free(cat);
-
- return;
- }
-
-
-/****** inherit_cat ************************************************************
-PROTO int inherit_cat(catstruct *catin, catstruct *catout)
-PURPOSE Copy the primary table, and all other informations from one catalog
- to another, except those related to the associated file itself
- (filename, etc...),
-INPUT A pointer to both catalog structures.
-OUTPUT RETURN_OK if at least one table was copied, RETURN_ERROR otherwise.
-NOTES The output catalog should be ``cleaned'' before call.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-int inherit_cat(catstruct *catin, catstruct *catout)
-
- {
- tabstruct *tabin, *tabout, *prevtabout;
- int j;
-
- catout->ntab = 1;
- tabin = catin->tab;
-
-/*copy only one table: well it could be simpler, but let's stay general!*/
- prevtabout = NULL;
- for (j=tabin->nseg; j--;)
- {
- QCALLOC(tabout, tabstruct, 1);
- *tabout = *tabin;
- if (tabin->naxis)
- QMEMCPY(tabin->naxisn, tabout->naxisn, int, tabin->naxis);
- if (tabin->headbuf)
- QMEMCPY(tabin->headbuf, tabout->headbuf, char,
- tabin->headnblock*FBSIZE);
- if (tabin->bodybuf)
- QMEMCPY(tabin->bodybuf, tabout->bodybuf, char, tabin->tabsize);
- if (prevtabout)
- {
- tabout->prevtab = prevtabout;
- prevtabout->nexttab = tabout;
- }
- else
- {
- catout->tab = tabout;
- }
- prevtabout = tabout;
- tabin = tabin->nexttab;
- }
-
- if (prevtabout)
- {
- prevtabout->nexttab = catout->tab;
- catout->tab->prevtab = prevtabout;
- }
- else
- return RETURN_ERROR;
-
- return RETURN_OK;
- }
-
-/****** init_cat ***************************************************************
-PROTO int init_cat(catstruct *cat)
-PURPOSE Initialize a catalog, "cleaning" any content if present
- and adding the primary header "table".
-INPUT A pointer to the catalog structure.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-NOTES The output catalog should be ``cleaned'' before call.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 19/08/96
- ***/
-int init_cat(catstruct *cat)
-
- {
- static char bintabtemplate[][80] = {
-"SIMPLE = T / LETS STAY SIMPLE",
-"BITPIX = 8 / ",
-"NAXIS = 0 / ",
-"EXTEND = T / MORE STUFF MAY FOLLOW",
-"END "};
- tabstruct *tab;
- char *buf;
- int i;
-
-/* Initialize the primary header itself */
- QCALLOC(tab, tabstruct, 1);
- tab->naxis = 0;
- tab->bitpix = 8;
- tab->bytepix = 1;
- tab->pcount = 0;
- tab->gcount = 1;
- tab->seg = 1;
- tab->nseg = 1;
-/* Provide a new header*/
- QCALLOC(tab->headbuf, char, FBSIZE);
- memcpy(tab->headbuf, bintabtemplate, sizeof(bintabtemplate));
- for (buf = tab->headbuf, i=0; i<FBSIZE; i++, buf++)
- if (!*buf)
- *buf = ' ';
- tab->headnblock = 1;
-/* Clean catalog and add the table to it */
- remove_tabs(cat);
- cat->tab = tab->prevtab = tab->nexttab = tab;
- cat->ntab = 1;
- addhistoryto_cat(cat, "Catalog created");
-
- return RETURN_OK;
- }
-
-
-/****** map_cat ****************************************************************
-PROTO int map_cat(catstruct *cat)
-PURPOSE Explores the whole FITS file
- and gets information for each of the FITS tables it contains.
-INPUT catalog structure.
-OUTPUT RETURN_OK if at least one table was found, RETURN_ERROR otherwise.
-NOTES Memory space for the array of fits structures is reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int map_cat(catstruct *cat)
-
- {
- int ntab;
- tabstruct *tab, *prevtab;
-
-/*scan through the file until we reach the end*/
- prevtab = NULL;
- QCALLOC(tab, tabstruct, 1);
- tab->cat = cat;
- for (ntab=0; !get_head(tab); ntab++)
- {
- readbasic_head(tab);
- readbintabparam_head(tab);
- tab->bodypos = ftell(cat->file);
- tab->nseg = tab->seg = 1;
- if (tab->tabsize)
- QFSEEK(cat->file, PADTOTAL(tab->tabsize), SEEK_CUR, cat->filename);
- if (prevtab)
- {
- tab->prevtab = prevtab;
- prevtab->nexttab = tab;
- }
- else
- cat->tab = tab;
- prevtab = tab;
- QCALLOC(tab, tabstruct, 1);
- tab->cat = cat;
- }
-
- cat->ntab = ntab;
- free(tab);
- if (prevtab)
- {
- prevtab->nexttab = cat->tab;
- cat->tab->prevtab = prevtab;
- }
- else
- return RETURN_ERROR;
-
-/*rewind to the beginning*/
-/*
- QFSEEK(cat->file, 0, SEEK_SET, cat->filename);
-*/
-
- return RETURN_OK;
- }
-
-
-/****** new_cat ****************************************************************
-PROTO catstruct *new_cat(int ncat)
-PURPOSE Initialize a structure for a FITS catalog.
-INPUT Number of catalogs.
-OUTPUT A pointer to the catalog array.
-NOTES All fields are initialized to 0.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-catstruct *new_cat(int ncat)
-
- {
- catstruct *cat;
-
- QCALLOC(cat, catstruct, ncat);
-
- cat->access_type = WRITE_ONLY;
-
- return cat;
- }
-
-
-/****** open_cat ***************************************************************
-PROTO int open_cat(catstruct *cat, access_type at)
-PURPOSE Open a FITS catalog with name filename.
-INPUT catalog structure,
- access type (can be WRITE_ONLY or READ_ONLY).
-OUTPUT RETURN_OK if the cat is found, RETURN_ERROR otherwise.
-NOTES If the file was already opened by this catalog, nothing is done.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 22/08/96
- ***/
-int open_cat(catstruct *cat, access_type at)
-
- {
-
- if (cat->access_type == READ_ONLY && at == WRITE_ONLY)
- error(EXIT_FAILURE, "*Internal Error*: Trying to write to the "
- "READ_ONLY catalog ", cat->filename);
-
- if (!cat->file)
- {
- if ((cat->file = fopen(cat->filename, at==WRITE_ONLY?"wb":"rb")) == NULL)
- return RETURN_ERROR;
- cat->access_type = at;
- }
-
- return RETURN_OK;
- }
-
-
diff --git a/external/psfex/source/fitscat.h b/external/psfex/source/fitscat.h
deleted file mode 100644
index 31e6271..0000000
--- a/external/psfex/source/fitscat.h
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- fitscat.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Simplified versin of the LDACTools: main include file
-*
-* Last modify: 16/01/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#define MAXCHARS 256 /* max. number of characters */
-
-/*---------------------------- return messages ------------------------------*/
-
-#ifndef RETURN_OK
-#define RETURN_OK 0
-#endif
-#ifndef RETURN_ERROR
-#define RETURN_ERROR (-1)
-#endif
-#ifndef RETURN_FATAL_ERROR
-#define RETURN_FATAL_ERROR (-2)
-#endif
-
-/*--------------------------- FITS BitPix coding ----------------------------*/
-
-#define BP_BYTE 8
-#define BP_SHORT 16
-#define BP_LONG 32
-#define BP_FLOAT (-32)
-#define BP_DOUBLE (-64)
-
-/*-------------------------------- macros -----------------------------------*/
-
-/* size (in bytes) of one FITS block */
-
-#define FBSIZE 2880L
-
-/* FITS size after adding padding */
-
-#define PADTOTAL(x) (((x-1)/FBSIZE+1)*FBSIZE)
-
-/* extra size to add for padding */
-
-#define PADEXTRA(x) ((FBSIZE - (x%FBSIZE))% FBSIZE)
-
-/*--------------------------------- typedefs --------------------------------*/
-
-typedef enum {H_INT, H_FLOAT, H_EXPO, H_BOOL, H_STRING, H_COMMENT,
- H_HCOMMENT, H_KEY} h_type;
- /* type of FITS-header data */
-typedef enum {T_BYTE, T_SHORT, T_LONG, T_FLOAT, T_DOUBLE, T_STRING}
- t_type; /* Type of data */
-typedef enum {WRITE_ONLY, READ_ONLY}
- access_type; /* Type of access */
-typedef enum {ASCII, SKYCAT}
- output_type; /* Type of output */
-
-
-/*------------------------------- constants ---------------------------------*/
-
-static int t_size[] = {1, 2, 4, 4, 8, 1}; /* size in bytes per t_type */
-
-/*---------------------------------- key ------------------------------------*/
-
-typedef struct structkey
- {
- char name[80]; /* name */
- char comment[80]; /* a comment */
- void *ptr; /* pointer to the data */
- h_type htype; /* standard ``h_type'' (display) */
- t_type ttype; /* standard ``t_type'' (storage) */
- char printf[80]; /* printing format (C Convention) */
- char unit[80]; /* physical unit */
- int naxis; /* number of dimensions */
- int *naxisn; /* pointer to an array of dim. */
- int nobj; /* number of objects */
- int nbytes; /* number of bytes per element */
- int pos; /* position within file */
- struct structkey *prevkey; /* previous key within the chain */
- struct structkey *nextkey; /* next key within the chain */
- struct structtab *tab; /* (original) parent tab */
- } keystruct;
-
-/*------------------------------- catalog ---------------------------------*/
-
-typedef struct structcat
- {
- char filename[MAXCHARS]; /* file name */
- FILE *file; /* pointer to the file structure */
- struct structtab *tab; /* pointer to the first table */
- int ntab; /* number of tables included */
- access_type access_type; /* READ_ONLY or WRITE_ONLY */
- } catstruct;
-
-/*-------------------------------- table ----------------------------------*/
-
-typedef struct structtab
- {
- int bitpix; /* Bits per element */
- int bytepix; /* Bytes per element */
- int naxis; /* number of dimensions */
- int *naxisn; /* array of dimensions */
- int tfields; /* number of fields */
- int pcount, gcount; /* alignment of the data */
- int tabsize; /* total table size (bytes) */
- char xtension[82]; /* FITS extension type */
- char extname[82]; /* FITS extension name */
- char *headbuf; /* buffer containing the header */
- int headnblock; /* number of FITS blocks */
- char *bodybuf; /* buffer containing the body */
- int bodypos; /* position of the body in the file */
- struct structcat *cat; /* (original) parent catalog */
- struct structtab *prevtab, *nexttab; /* previous and next tab in chain */
- int seg; /* segment position */
- int nseg; /* number of tab segments */
- keystruct *key; /* pointer to keys */
- int nkey; /* number of keys */
- } tabstruct;
-
-
-/*------------------------------- functions ---------------------------------*/
-
-extern catstruct *new_cat(int ncat),
- *read_cat(char *filename),
- *read_cats(char **filenames, int ncat);
-
-extern tabstruct *init_readobj(tabstruct *tab),
- *name_to_tab(catstruct *cat, char *tabname, int seg),
- *new_tab(char *tabname),
- *pos_to_tab(catstruct *cat, int pos, int seg),
- *asc2bin_tab(catstruct *catin, char *tabinname,
- catstruct *catout, char *taboutname);
-
-extern keystruct *name_to_key(tabstruct *tab, char *keyname),
- *new_key(char *keyname),
- *pos_to_key(tabstruct *tab, int pos),
- *read_key(tabstruct *tab, char *keyname);
-
-extern void end_readobj(tabstruct *keytab, tabstruct *tab),
- end_writeobj(catstruct *cat, tabstruct *tab),
- error(int, char *, char *),
- fixexponent(char *s),
- free_cat(catstruct *cat, int ncat),
- free_key(keystruct *key),
- free_tab(tabstruct *tab),
- init_writeobj(catstruct *cat, tabstruct *tab),
- print_obj(FILE *stream, tabstruct *tab),
- read_keys(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, unsigned char *mask),
- read_basic(tabstruct *tab),
- readbasic_head(tabstruct *tab),
- save_cat(catstruct *cat, char *filename),
- save_tab(catstruct *cat, tabstruct *tab),
- show_keys(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, unsigned char *mask, FILE *stream,
- int strflag,int banflag, int leadflag,
- output_type o_type),
- swapbytes(void *, int, int),
- *ttypeconv(void *ptr, t_type ttypein, t_type ttypeout),
- warning(char *, char *);
-
-extern char *tdisptoprintf(char *tdisp),
- *printftotdisp(char *cprintf),
- *fitsnfind(char *fitsbuf, char *str, int nblock),
- **tabs_list(catstruct *cat, int *n),
- **keys_list(tabstruct *tab, int *n);
-
-extern int about_cat(catstruct *cat, FILE *stream),
- about_tab(catstruct *cat, char *tabname, FILE *stream),
- addhistoryto_cat(catstruct *cat, char *str),
- add_key(keystruct *key, tabstruct *tab, int pos),
- addkeyto_head(tabstruct *tab, keystruct *key),
- add_tab(tabstruct *tab, catstruct *cat, int pos),
- blank_keys(tabstruct *tab),
- close_cat(catstruct *cat),
- copy_key(tabstruct *tabin, char *keyname, tabstruct *tabout,
- int pos),
- copy_tab(catstruct *catin, char *tabname, int seg,
- catstruct *catout, int pos),
- copy_tabs(catstruct *catin, catstruct *catout),
- findkey(char *, char *, int),
- findnkey(char *, char *, int, int),
- fitsadd(char *fitsbuf, char *keyword, char *comment),
- fitsfind(char *fitsbuf, char *keyword),
- fitspick(char *fitsbuf, char *keyword, void *ptr,
- h_type *htype, t_type *ttype, char *comment),
- fitsread(char *fitsbuf, char *keyword, void *ptr,
- h_type htype, t_type ttype),
- fitsremove(char *fitsbuf, char *keyword),
- fitswrite(char *fitsbuf, char *keyword, void *ptr,
- h_type htype, t_type ttype),
- get_head(tabstruct *tab),
- inherit_cat(catstruct *catin, catstruct *catout),
- init_cat(catstruct *cat),
- map_cat(catstruct *cat),
- open_cat(catstruct *cat, access_type at),
- readbintabparam_head(tabstruct *tab),
- read_field(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, int field, tabstruct *ftab),
- read_obj(tabstruct *keytab, tabstruct *tab),
- read_obj_at(tabstruct *keytab, tabstruct *tab, long pos),
- remove_key(tabstruct *tab, char *keyname),
- remove_keys(tabstruct *tab),
- remove_tab(catstruct *cat, char *tabname, int seg),
- remove_tabs(catstruct *cat),
- tab_row_len(char *, char *),
- tformof(char *str, t_type ttype, int n),
- tsizeof(char *str),
- update_head(tabstruct *tab),
- update_tab(tabstruct *tab),
- write_obj(tabstruct *tab),
- wstrncmp(char *, char *, int);
-
-extern t_type ttypeof(char *str);
diff --git a/external/psfex/source/fitscat_defs.h b/external/psfex/source/fitscat_defs.h
deleted file mode 100644
index 028e0ce..0000000
--- a/external/psfex/source/fitscat_defs.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- fitscat_defs.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Simplified version of the LDACTools: internal defs
-*
-* Last modify: 23/01/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------ what, who, when and where ------------------------*/
-
-#define BANNER "LDACTools"
-#define VERSION "1.1 (Jan 23 97)"
-#define COPYRIGHT "Emmanuel BERTIN (bertin at iap.fr)"
-#define INSTITUTE "IAP/Leiden"
-
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define OUTPUT stderr /* where all msgs are sent */
-#define DATA_BUFSIZE (1024*1024)
-
-#ifndef PI
-#define PI 3.14159265359 /* never met before? */
-#endif
-
-/* NOTES:
-We must have: MAXCHARS >= 16
- DATA_BUFSIZE >= 2 although DATA_BUFSIZE >= 100000
- is better!!
-*/
-
-/*------------ Set defines according to machine's specificities -------------*/
-
-#ifdef DEC_ALPHA
-#define BSWAP
-#define INT64
-#endif
-
-#ifdef HP_UX
-#define _HPUX_SOURCE
-#endif
-
-#ifdef PC_LINUX
-#define BSWAP
-#endif
-
-#ifdef SUN_ULTRASPARC
-#define INT64
-#endif
-
-/*--------------------- in case of missing constants ------------------------*/
-
-#ifndef SEEK_SET
-#define SEEK_SET 0
-#endif
-#ifndef SEEK_CUR
-#define SEEK_CUR 1
-#endif
-
-#ifndef EXIT_SUCCESS
-#define EXIT_SUCCESS 0
-#endif
-#ifndef EXIT_FAILURE
-#define EXIT_FAILURE -1
-#endif
-
-/*--------------------------------- typedefs --------------------------------*/
-typedef unsigned char BYTE; /* a byte */
-typedef int LONG; /* for DEC-Alpha... */
-
-/*------------------------------- Other Macros -----------------------------*/
-
-#define QFREAD(ptr, size, file, fname) \
- {if (fread(ptr, (size_t)(size), (size_t)1, file)!=1) \
- error(EXIT_FAILURE, "*Error* while reading ", fname);;}
-
-#define QFWRITE(ptr, size, file, fname) \
- {if (fwrite(ptr, (size_t)(size), (size_t)1, file)!=1) \
- error(EXIT_FAILURE, "*Error* while writing ", fname);;}
-
-#define QFSEEK(file, offset, pos, fname) \
- {if (fseek(file, (long)(offset), pos)) \
- error(EXIT_FAILURE,"*Error*: File positioning failed in ", \
- fname);;}
-
-#define QFTELL(pos, file, fname) \
- {if ((pos=ftell(file))==-1) \
- error(EXIT_FAILURE,"*Error*: File position unknown in ", \
- fname);;}
-
-
-#define QFREE(x) {free(x); x = NULL;}
-
-#define QCALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)calloc((size_t)(nel),sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMEMCPY(ptrin, ptrout, typ, nel) \
- {if (!(ptrout = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptrout " (" #nel " elements) !"); \
- memcpy(ptrout, ptrin, (size_t)(nel)*sizeof(typ));}
-
-#define QREALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)realloc(ptr, (size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define RINT(x) (int)(floor(x+0.5))
-
-
-#define QPRINTF if (qflag) fprintf
-
-#define QFPRINTF(w,x) {if (qflag) \
- fprintf(w, "\33[1M> %s\n\33[1A",x);;}
-
-
-#define QGETKEY(tab, key, keyname, dest) \
- {if (!(key = name_to_key(tab, keyname))) \
- error(EXIT_FAILURE, "*Error*: No such parameter in catalog: ", \
- keyname); \
- dest = key->ptr;}
-
-#define MIN(a,b) (a<b?a:b)
diff --git a/external/psfex/source/fitsconv.c b/external/psfex/source/fitsconv.c
deleted file mode 100644
index 20d33c9..0000000
--- a/external/psfex/source/fitsconv.c
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- fitsconv.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: functions for converting LDAC FITS catalogs.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** asc2bin_tab ***********************************************************
-PROTO tabstruct *asc2bin_tab(catstruct *catin, char *tabinname,
- catstruct *catout, char *taboutname)
-PURPOSE Convert an ASCII table to a BINARY table
- which is then stored in a destination catalog.
-INPUT Pointer to the input catalog,
- Name of the input ASCII table,
- Pointer to the output catalog,
- Name of the output binary table.
-OUTPUT RETURN_OK if the ASCII table was transformed, and RETURN_ERROR
- otherwise.
-NOTES This function can be used to stick the binary translation of
- similar ASCII tables.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-tabstruct *asc2bin_tab(catstruct *catin, char *tabinname, catstruct *catout,
- char *taboutname)
-
- {
- catstruct *tabcat;
- keystruct *key;
- tabstruct *tabin,*tabout;
- static char comment[82], keyword[16], ptr[82];
- h_type htype;
- t_type ttype;
- char *buf, *lptr;
- int i;
-
-/*Convert the table name to a pointer*/
- if (!(tabin = name_to_tab(catin, tabinname, 0)))
- return NULL;
-
-/*Get the original catalog*/
- tabcat = tabin->cat;
-
-/*Create a new binary table*/
- tabout = new_tab(taboutname);
-
-/*Alloc. mem. for the whole ASCII table at once (should not be very large)*/
- QMALLOC(buf, char, tabin->tabsize);
-/*Now read all the elements from the original table*/
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, tabin->bodypos, SEEK_SET, tabcat->filename);
- QFREAD(buf, tabin->tabsize, tabcat->file, tabcat->filename);
- if (close_cat(tabcat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing", tabcat->filename);
- lptr = buf;
- for (i=tabin->tabsize/80; i-- && strncmp(lptr, "END ", 8);)
- {
-/*Interprete the next FITS line */
- if (fitspick(lptr, keyword, ptr, &htype, &ttype, comment) != RETURN_OK) {
- char line[81];
- int qflag=1;
- strncpy(line, lptr, 80);
- line[80] = '\0';
- QFPRINTF(OUTPUT, line);
- warning("*Warning*: incorrect FITS field will be ignored in ",
- tabcat->filename);
- }
- if (htype != H_COMMENT)
- {
-/*----Create a new key and fill it with the right parameters*/
- key = new_key(keyword);
- strcpy(key->comment, comment+strspn(comment, " "));
- key->htype = htype;
- key->ttype = ttype;
- key->nbytes = t_size[ttype];
-/*----!!Temporary (?) solution for STRINGS*/
- if (htype==H_STRING)
- {
- key->naxis = 1;
- QMALLOC(key->naxisn, int, 1);
- key->naxisn[0] = 32;
- key->nbytes *= key->naxisn[0];
- }
- key->nobj = 1;
-/*----Allocate memory and copy data in the same time*/
- QMEMCPY(ptr, key->ptr, char, key->nbytes);
- if (add_key(key, tabout, 0)==RETURN_ERROR)
- {
- sprintf(comment, "%s keyword found twice in ",
- keyword);
- warning(comment, tabcat->filename);
- }
- }
- lptr += 80;
- }
-
- free(buf);
-
- update_tab(tabout);
- return tabout;
- }
-
-
-/****** ttypeconv ************************************************************
-PROTO void *ttypeconv(void *ptr, t_type ttypein, t_type ttypeout)
-PURPOSE Convert data from one type to another.
-INPUT Pointer to element to convert,
- t_type of the element to convert,
- t_type of the converted element.
-OUTPUT Pointer to the converted element.
-NOTES ttypeconv does not yet handle arrays.
- A NULL vector is returned if the conversion was unsuccessful.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 15/01/98
- ***/
-
-void *ttypeconv(void *ptr, t_type ttypein, t_type ttypeout)
-
- {
- static union {char tbyte; short tshort; int tlong; float tfloat;
- double tdouble; char tstring;} ival, oval;
-
-#define OUTCONV(x, y) \
- switch(y) \
- { \
- case T_BYTE: \
- case T_STRING: \
- oval.tbyte = (char)x; \
- case T_SHORT: \
- oval.tshort = (short)x; \
- return (void *)&oval; \
- case T_LONG: \
- oval.tlong = (int)x; \
- return (void *)&oval; \
- case T_FLOAT: \
- oval.tfloat = (float)x; \
- return (void *)&oval; \
- case T_DOUBLE: \
- oval.tdouble = (double)x; \
- return (void *)&oval; \
- default: \
- return NULL; \
- }
-
- if (ttypein == ttypeout)
- return ptr;
-
- switch(ttypein)
- {
- case T_BYTE:
- case T_STRING:
- ival.tbyte = *(char *)ptr;
- OUTCONV(ival.tbyte, ttypeout);
- case T_SHORT:
- ival.tshort = *(short *)ptr;
- OUTCONV(ival.tshort, ttypeout);
- case T_LONG:
- ival.tlong = *(int *)ptr;
- OUTCONV(ival.tlong, ttypeout);
- case T_FLOAT:
- ival.tfloat = *(float *)ptr;
- OUTCONV(ival.tfloat, ttypeout);
- case T_DOUBLE:
- ival.tdouble = *(double *)ptr;
- OUTCONV(ival.tdouble, ttypeout);
- default:
- return NULL;
- }
-
- }
-
diff --git a/external/psfex/source/fitsfield.c b/external/psfex/source/fitsfield.c
deleted file mode 100644
index 4b0b78c..0000000
--- a/external/psfex/source/fitsfield.c
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- fitsfield.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Functions related to the management of fields.
-*
-* Last modify: 25/04/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** read_field *************************************************************
-PROTO int read_field(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, int field, tabstruct *ftab)
-PURPOSE Read several columns from a FITS binary table for only one field.
-INPUT pointer to the OBJECTS table,
- pointer to an array of char *,
- pointer to an array of keystruct * (memory must have been allocated),
- number of keys to read,
- the field to be read,
- pointer to the FIELDS table.
-OUTPUT The number of objects read.
-NOTES The array of pointers pointed by keys is filled with pointers
- to the relevant keys (a NULL means NO key with such name was found).
- A NULL keys pointer can be given (no info returned of course).
- A NULL keynames pointer means read ALL keys belonging to the table.
- A NULL FIELDS table pointer means sequential access to the OBJECTS
- table (much slower).
- Obviously, the FIELD_NUMBER key is required in the table to be read.
-AUTHOR E. Bertin (IAP & Leiden observatory)
- E.R. Deul (Leiden Observatory)
-VERSION 25/04/97
- 28/08/97 Extended read_field() warning message to print field nr
- ***/
-int read_field(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, int field, tabstruct *ftab)
-
- {
-#define DEFAULT_NUMBER 2048 /* default number of objects */
- /* to use when allocating memory */
- catstruct *cat;
- keystruct *key, *fkey, *fposkey, **ckeys;
- char *buf, *ptr, *fptr;
- int rfield, ok;
- int i,j,k,n, larray,narray,nfields, nb, kflag = 0, size;
-#ifdef BSWAP
- int esize;
-#endif
-
-/*!! It is not necessarily the original table */
- tab = tab->key->tab;
- cat = tab->cat;
-
-/* We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
-/* Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- nfields= tab->tfields;
- narray = tab->naxisn[1];
-
-/* Check if field is not too large*/
- if (ftab && (field>ftab->naxisn[1] || field<1))
- error(EXIT_FAILURE, "*Error*: field not found in ", cat->filename);
-
- if (!keynames)
- nkeys = tab->nkey;
-
-/* Allocate memory to store the list of keys to be read */
- if (!keys)
- {
- QMALLOC(keys, keystruct *, nkeys);
- kflag = 1;
- }
-
- if (!(fposkey = name_to_key(tab, "FIELD_POS"))) {
- if (!(fposkey = name_to_key(tab, "FIELD_NUMBER"))) {
- error(EXIT_FAILURE, "*Error*: No Field number in ", cat->filename);
- }
- }
-/* Get information from the FIELDS table if possible and if necessary*/
- fkey = name_to_key(ftab, "OBJECT_COUNT");
- if (fkey == NULL || fkey->ptr == NULL) {
- if ((key=read_key(ftab, "OBJECT_COUNT")) == NULL) {
- if ((key=read_key(ftab, "OBJECT_NUMBER")) == NULL) {
- error(EXIT_FAILURE,"*Error*: No OBJECT_COUNT in ", cat->filename);
- }
- }
- } else {
- key = fkey;
- }
-
- if (ftab)
- nb = narray = ((int *)key->ptr)[field-1];
- else
- nb = DEFAULT_NUMBER; /* Some value to start with */
-
-/*allocate memory for the arrays*/
- ckeys = keys;
- if (keynames)
- for (i=nkeys; i--;)
- {
- if ((key = name_to_key(tab, *(keynames++))))
- {
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- }
- else
- *(ckeys++) = NULL;
- }
- else
- {
- key = tab->key;
- for (i=nkeys; i--;)
- {
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- key = key->nextkey;
- }
- }
-
-/*allocate memory for the buffer where we put one line of data*/
- QMALLOC(buf, char, larray);
-
-/*Positioning to the first element*/
- open_cat(cat, READ_ONLY);
-
-/*Get information from the FIELDS table if possible*/
- if (ftab)
- {
- fkey = name_to_key(ftab, "OBJECT_POS");
- key = (fkey && fkey->ptr) ? fkey : read_key(ftab, "OBJECT_POS");
- QFSEEK(cat->file, tab->bodypos+((((int *)key->ptr)[field-1])-1)*larray,
- SEEK_SET, cat->filename)
- }
- else
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*read line by line*/
- n = 0;
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
-/*--Check that current line corresponds to the right field*/
- /*
- * Allow for short and long int FIELD_POS types
- */
- if (fposkey->ttype == T_LONG)
- {
- memcpy(&rfield,buf+fposkey->pos,sizeof(LONG));
-#ifdef BSWAP
- swapbytes(&rfield, sizeof(LONG), 1);
-#endif
- ok = (field == *((LONG *)&rfield));
- }
- else
- {
- memcpy(&rfield,buf+fposkey->pos,sizeof(short));
-#ifdef BSWAP
- swapbytes(&rfield, sizeof(short), 1);
-#endif
- ok = (field == *((short *)&rfield));
- }
-
- if (ok)
- {
-/*---- Check if there's still enough memory*/
- if (n>=nb)
- {
- nb *= 2; /* Geometric progression; can be put to a */
- /* milder progression if necessary */
- ckeys = keys;
- for (j=nkeys; j--;)
- if ((key = *(ckeys++)))
- QREALLOC(key->ptr, char, key->nbytes*nb);
- }
-
- ckeys = keys;
- for (k=nkeys; k--;)
- if ((key = *(ckeys++)))
- {
- fptr = buf+key->pos;
- ptr = (char *)key->ptr+n*(size=key->nbytes);
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(fptr, esize, size/esize);
-#endif
- for (j=size; j--;)
- *(ptr++) = *(fptr++);
- }
- n++;
- }
- }
-
-/* Finally, only keep what is needed*/
- ckeys = keys;
- if (!n)
- {
- char mess[80];
- sprintf(&mess[0],"No element read in field %d of ",field);
- warning(mess, cat->filename);
- ckeys = keys;
- for (i=nkeys; i--;)
- if ((key = *(ckeys++)))
- QFREE(key->ptr);
- }
- else {
- for (i=nkeys; i--;)
- if ((key = *(ckeys++)))
- QREALLOC(key->ptr, char, key->nbytes*n);
- }
- free(buf);
- if (kflag)
- free(keys);
-
- return n;
- }
-
diff --git a/external/psfex/source/fitshead.c b/external/psfex/source/fitshead.c
deleted file mode 100644
index 7b1e2ad..0000000
--- a/external/psfex/source/fitshead.c
+++ /dev/null
@@ -1,723 +0,0 @@
-/*
- fitshead.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: general functions for handling FITS file headers.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/******* get_head **************************************************************
-PROTO int get_head(tabstruct *tab)
-PURPOSE Read a FITS header.
-INPUT Table structure.
-OUTPUT RETURN_OK if a FITS header has been found and loaded, or RETURN_ERROR
- otherwise.
-NOTES The file must be opened, and the file pointer must be located at
- the beginning of a header.
- The headbuf pointer in the catstruct is reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-int get_head(tabstruct *tab)
-
- {
- catstruct *cat;
- int i;
- char *buf;
-
- buf = tab->headbuf;
- if (!(cat = tab->cat))
- error(EXIT_FAILURE, "*Internal Error*: Table has no parent catalog","!");
-
- QFREE(buf);
- QMALLOC(buf, char, FBSIZE);
-
-/*Read the first block and check that it is FITS */
- if (!fread(buf, FBSIZE, 1, cat->file))
- {
- QFREE(buf);
- return RETURN_ERROR;
- }
-
- if (strncmp(buf, "SIMPLE ", 8) && strncmp(buf, "XTENSION", 8))
- {
- QFREE(buf);
- return RETURN_ERROR;
- }
-
-/*Find the number of FITS blocks of the header while reading it */
- for (i=1; !fitsnfind(buf,"END ", i); i++)
- {
- QREALLOC(buf, char, FBSIZE*(i+1));
- QFREAD(&buf[FBSIZE*i], FBSIZE, cat->file, cat->filename);
- }
-
- tab->headnblock = i;
- tab->headbuf = buf;
-
- return RETURN_OK;
- }
-
-
-/****** read_fitsbasic *********************************************************
-PROTO void readbasic_head(tabstruct *tab)
-PURPOSE Read the current FITS header basic keywords.
-INPUT pointer to catstruct.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-void readbasic_head(tabstruct *tab)
-
- {
- catstruct *cat;
- char key[12];
- int i, tabsize;
-
- if (!(cat = tab->cat))
- error(EXIT_FAILURE, "*Internal Error*: Table has no parent catalog","!");
-
- if (fitsread(tab->headbuf, "BITPIX ", &tab->bitpix, H_INT, T_LONG)
- ==RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Corrupted FITS header in ", cat->filename);
-
- tab->bytepix = tab->bitpix>0?(tab->bitpix/8):(-tab->bitpix/8);
-
- if (fitsread(tab->headbuf, "NAXIS ", &tab->naxis, H_INT, T_LONG)
- ==RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Corrupted FITS header in ", cat->filename);
-
- tabsize = 0;
- if (tab->naxis>0)
- {
- QFREE(tab->naxisn);
- QMALLOC(tab->naxisn, int, tab->naxis);
-/*--get the size of the array*/
- tabsize = 1;
- for (i=0; i<tab->naxis && i<999; i++)
- {
- sprintf(key,"NAXIS%-3d", i+1);
- if (fitsread(tab->headbuf, key, &tab->naxisn[i], H_INT, T_LONG)
- ==RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: incoherent FITS header in ",
- cat->filename);
- tabsize *= tab->naxisn[i];
- }
- }
-
-/*random groups parameters (optional)*/
- tab->pcount = 0;
- fitsread(tab->headbuf, "PCOUNT ", &tab->pcount, H_INT, T_LONG);
- tab->gcount = 1;
- fitsread(tab->headbuf, "GCOUNT ", &tab->gcount, H_INT, T_LONG);
-
-/*number of fields (only for tables)*/
- tab->tfields = 0;
- fitsread(tab->headbuf, "TFIELDS ", &tab->tfields, H_INT, T_LONG);
-
-/*in case of a non-primary header*/
- tab->xtension[0] = (char)'\0';
- fitsread(tab->headbuf, "XTENSION", tab->xtension, H_STRING, T_STRING);
- tab->extname[0] = (char)'\0';
- fitsread(tab->headbuf, "EXTNAME ", tab->extname, H_STRING, T_STRING);
-
- tab->tabsize = tab->bytepix*tab->gcount*(tab->pcount+tabsize);
-
- return;
- }
-
-
-/******* readbintabparam_head **************************************************
-PROTO int readbintabparam_head(tabstruct *tab)
-PURPOSE Read the current FITS header parameters concerning the binary-table.
-INPUT pointer to tabstruct.
-OUTPUT RETURN_OK if a binary table was found and mapped, RETURN_ERROR
- otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 30/04/97
- ***/
-int readbintabparam_head(tabstruct *tab)
-
- {
- catstruct *cat;
- keystruct *key, *prevkey;
- static char strf[82], strk[12];
- char *str;
- static int naxisn[32];
- int i,j, larray, nfields,narray, pos;
-
- if (!(cat = tab->cat))
- error(EXIT_FAILURE, "*Internal Error*: Table has no parent catalog","!");
-
-/*We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- return RETURN_ERROR;
-
-/*Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- nfields= tab->nkey = tab->tfields;
- narray = tab->naxisn[1];
-
- prevkey = NULL;
-/*For each of the data fields...*/
- pos = 0;
- for (i=0; i<nfields; i++)
- {
-/*--manage the chaining of keys*/
- QCALLOC(key, keystruct, 1);
- if (prevkey)
- {
- prevkey->nextkey = key;
- key->prevkey = prevkey;
- }
- else
- tab->key = key;
- prevkey = key;
-
-/*--map binary-table fields*/
-
- sprintf(strk, "TTYPE%-3d", i+1);
- if (fitsread(tab->headbuf, strk, key->name, H_STRING, T_STRING)
- != RETURN_OK) {
- error(EXIT_FAILURE,
- "*Error*: Incorrect FITS binary-table header in ", cat->filename);
- }
- fitsread(tab->headbuf, strk, key->comment, H_HCOMMENT, T_STRING);
-
- sprintf(strk, "TUNIT%-3d", i+1);
- fitsread(tab->headbuf, strk, key->unit, H_STRING, T_STRING);
- sprintf(strk, "TDISP%-3d", i+1);
- fitsread(tab->headbuf, strk, key->printf, H_STRING, T_STRING);
- if (*key->printf)
- strcpy(key->printf,tdisptoprintf(key->printf));
-
- sprintf(strk, "TFORM%-3d", i+1);
- if (fitsread(tab->headbuf, strk, strf, H_STRING, T_STRING) != RETURN_OK) {
- error(EXIT_FAILURE,
- "*Error*: Incorrect FITS binary-table header in ", cat->filename);
- }
- key->pos = pos;
- pos += (key->nbytes = tsizeof(strf));
- key->ttype = ttypeof(strf);
- switch(key->ttype)
- {
- case T_BYTE:
- case T_SHORT:
- case T_LONG:
- key->htype = H_INT;
- break;
- case T_FLOAT:
- case T_DOUBLE:
- key->htype = H_EXPO;
- break;
- case T_STRING:
- key->htype = H_STRING;
- break;
- default:
- error(EXIT_FAILURE, "*Internal Error*: Unkwown T_TYPE for ", str);
- }
-
-/*--handle the special case of multimensional arrays*/
- if ((naxisn[0] = key->nbytes/t_size[key->ttype]) > 1)
- {
- sprintf(strk, "TDIM%-3d", i+1);
- if (fitsread(tab->headbuf, strk, strf, H_STRING, T_STRING) == RETURN_OK)
- {
- str = strf;
- for (j=0; (naxisn[j]=(int)strtol(str+1, &str, 10)); j++);
- key->naxis = j;
- }
- else
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- for (j=0; j<key->naxis; j++)
- key->naxisn[j] = naxisn[j];
- }
- else
- key->naxis = 0;
-
- key->nobj = narray;
- key->tab = tab;
- }
-
- if (pos != larray)
- error(EXIT_FAILURE,
- "*Error*: Malformed FITS binary-table header in ", cat->filename);
-
-/*make both ends of the chain meet*/
- prevkey->nextkey = tab->key;
- tab->key->prevkey = prevkey;
-
- return RETURN_OK;
- }
-
-
-/****** update_head ************************************************************
-PROTO int update_head(tabstruct *tab)
-PURPOSE Update a FITS header according to what's in the table.
-INPUT Table structure.
-OUTPUT RETURN_OK if tab is a binary table, or RETURN_ERROR otherwise.
-NOTES The headbuf pointer in the tabstruct might be reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 12/05/97
- ***/
-int update_head(tabstruct *tab)
-
- {
- keystruct *key;
- tabstruct *ctab;
- int i,j,n, endpos, naxis1;
- static char strk[82], str[82];
-
-/* If not a binary table, do only a few basic things */
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- {
- fitsadd(tab->headbuf, "BITPIX ", "BITS PER PIXEL");
- fitswrite(tab->headbuf, "BITPIX ", &tab->bitpix, H_INT, T_LONG);
- fitsadd(tab->headbuf,"NAXIS ", "NUMBER OF AXES");
- fitswrite(tab->headbuf, "NAXIS ", &tab->naxis, H_INT, T_LONG);
- for (i=0; i<tab->naxis; i++)
- {
- sprintf(strk, "NAXIS%-3d", i+1);
- if (fitsfind(tab->headbuf, strk) == RETURN_ERROR
- && (fitsfind(tab->headbuf, "END ")+1)*80 >= tab->headnblock*FBSIZE)
- {
- tab->headnblock++;
- QREALLOC(tab->headbuf, char, tab->headnblock*FBSIZE);
- memset(tab->headbuf + (tab->headnblock-1)*FBSIZE, ' ', FBSIZE);
- }
- fitsadd(tab->headbuf, strk, "NUMBER OF ELEMENTS ALONG THIS AXIS");
- fitswrite(tab->headbuf, strk, &tab->naxisn[i], H_INT, T_LONG);
- }
- return RETURN_ERROR;
- }
-
-/*First, remove all existing TTYPE, TFORM, etc...*/
- fitsremove(tab->headbuf, "TTYPE???");
- fitsremove(tab->headbuf, "TFORM???");
- fitsremove(tab->headbuf, "TUNIT???");
- fitsremove(tab->headbuf, "TZERO???");
- fitsremove(tab->headbuf, "TSCAL???");
- fitsremove(tab->headbuf, "TDIM???");
- fitsremove(tab->headbuf, "TDISP???");
-
-/*Update EXTNAME, the table name */
- if (*tab->extname)
- {
- fitsadd(tab->headbuf, "EXTNAME ", "TABLE NAME");
- fitswrite(tab->headbuf, "EXTNAME ", tab->extname, H_STRING, T_STRING);
- }
-
-/*Change NAXIS1 in order to take into account changes in width*/
- naxis1 = 0;
- key = tab->key;
- if (tab->nkey>1000) {
- for (i=0; i<MIN(999,tab->nkey); i++) {
- naxis1 += key->nbytes;
- key = key->nextkey;
- }
- fitswrite(tab->headbuf, "NAXIS1 ", &naxis1, H_INT, T_LONG);
- } else {
- fitswrite(tab->headbuf, "NAXIS1 ", &tab->naxisn[0], H_INT, T_LONG);
- }
-
-/*Change NAXIS1 in the number of fields */
- tab->tfields = MIN(999,tab->tfields);
- fitswrite(tab->headbuf, "TFIELDS ", &tab->tfields, H_INT, T_LONG);
-
-/*Changes in the number of elements (look for possible segments)*/
- for (ctab = tab, n = ctab->naxisn[1];
- (ctab=ctab->nexttab) && !ctab->nseg;)
- n += ctab->naxisn[1];
- fitswrite(tab->headbuf, "NAXIS2 ", &n, H_INT, T_LONG);
-
- key = tab->key;
- if (!key)
- return RETURN_ERROR;
-
- endpos = fitsfind(tab->headbuf, "END ");
- if (tab->nkey>1000)
- warning("Too many output keys, trashing the ones bejond 999", "");
- for (i=0; i<MIN(999,tab->nkey); i++)
- {
-/*--Check that the new parameters will fit in the allocated memory space*/
- endpos += 2;
- if (*key->unit)
- endpos++;
- if (*key->printf)
- endpos++;
- if (key->naxis>1)
- endpos++;
- if (endpos >= (n=tab->headnblock)*(FBSIZE/80))
- {
- QREALLOC(tab->headbuf, char, (n+1)*FBSIZE);
- memset(tab->headbuf + n*FBSIZE, ' ', FBSIZE);
- tab->headnblock++;
- }
- sprintf(strk, "TTYPE%-3d", i+1);
- fitsadd(tab->headbuf, strk, key->comment);
- fitswrite(tab->headbuf, strk, key->name, H_STRING, T_STRING);
- sprintf(strk, "TFORM%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- tformof(str, key->ttype, key->nbytes/t_size[key->ttype]);
- fitswrite(tab->headbuf, strk, str, H_STRING, T_STRING);
- if (key->naxis>1)
- {
- char *str2, *str2lim;
-
- sprintf(strk, "TDIM%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- sprintf(str, "(");
- str2 = str+1;
- str2lim = str+70; /* Prevent an excessively large string */
- for (n=0; n<key->naxis && str2<str2lim; n++)
- {
- sprintf(str2, n?", %d%n":"%d%n", key->naxisn[n],&j);
- str2 += j;
- }
- sprintf(str2, ")");
- fitswrite(tab->headbuf, strk, str, H_STRING, T_STRING);
- }
- if (*key->unit)
- {
- sprintf(strk, "TUNIT%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- fitswrite(tab->headbuf, strk, key->unit, H_STRING, T_STRING);
- }
- if (*key->printf)
- {
- sprintf(strk, "TDISP%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- fitswrite(tab->headbuf, strk, printftotdisp(key->printf),
- H_STRING, T_STRING);
- }
- key = key->nextkey;
- }
-
-/*Remove any memory allocated in excess (and correct headnblock by the way)*/
- if ((n = endpos/(FBSIZE/80)+1) < tab->headnblock)
- QREALLOC(tab->headbuf, char, (tab->headnblock = n)*FBSIZE);
-
-/*That may be enough for now; to be continued...*/
-
- return RETURN_OK;
- }
-
-
-/****** addkeyto_head **********************************************************
-PROTO int addkeyto_head(tabstruct *tab, keystruct *key)
-PURPOSE Add a keyword and its value to a table header.
-INPUT Table structure,
- Key containing the keyword and its value.
-OUTPUT Line position in the FITS header.
-NOTES The headbuf pointer in the tabstruct might be reallocated.
- Pre-existing keywords are overwritten (but not their comments).
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 05/02/97
- ***/
-int addkeyto_head(tabstruct *tab, keystruct *key)
-
- {
- int n;
-
- if (fitsfind(tab->headbuf, key->name) == RETURN_ERROR
- && (fitsfind(tab->headbuf, "END ")+1)*80 >= tab->headnblock*FBSIZE)
- {
- tab->headnblock++;
- QREALLOC(tab->headbuf, char, tab->headnblock*FBSIZE);
- memset(tab->headbuf + (tab->headnblock-1)*FBSIZE, ' ', FBSIZE);
- }
-
- n = fitsadd(tab->headbuf, key->name, key->comment);
- fitswrite(tab->headbuf, key->name, key->ptr, key->htype, key->ttype);
-
- return n;
- }
-
-
-/****** tformof ****************************************************************
-PROTO int tformof(char *str, t_type ttype, int n)
-PURPOSE Return the ``TFORM'' string corresponding to a t_type
- and the number of elements.
-INPUT a char pointer (to be filled with the T_FORM string),
- t_type,
- Number of elements.
-OUTPUT RETURN_OK if everything went as expected, or RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-int tformof(char *str, t_type ttype, int n)
-
- {
- char t;
-
- switch (ttype)
- {
- case T_BYTE: t = 'B';
- break;
- case T_SHORT: t = 'I';
- break;
- case T_LONG: t = 'J';
- break;
- case T_FLOAT: t = 'E';
- break;
- case T_DOUBLE: t = 'D';
- break;
- case T_STRING: t = 'A';
- break;
- default: return RETURN_ERROR;
- }
-
- sprintf(str, "%d%c", n, t);
-
- return RETURN_OK;
- }
-
-
-/****** tsizeof ****************************************************************
-PROTO int tsizeof(char *str)
-PURPOSE Return the size of a binary-table field from its ``TFORM''.
-INPUT TFORM string (see the FITS documentation).
-OUTPUT size in bytes, or RETURN_ERROR if the TFORM is unknown.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-int tsizeof(char *str)
-
- {
- int n;
- char *str2;
-
- str2 = str;
- if (!(n = strtol(str, &str2, 10)))
- n = 1;
-
- switch ((int)*str2)
- {
- case 'L': case 'B': case 'A': return n;
- case 'X': return (n-1)/8+1;
- case 'I': return 2*n;
- case 'J': case 'E': return 4*n;
- case 'C': case 'D': case 'P': return 8*n;
- case 'M': return 16*n;
- default: return RETURN_ERROR;
- }
-
- }
-
-
-/****** ttypeof ****************************************************************
-PROTO t_type ttypeof(char *str)
-PURPOSE Give the ``t_type'' of a binary-table field from its ``TFORM''.
-INPUT TFORM string (see the FITS documentation).
-OUTPUT size in bytes, or RETURN_ERROR if the TFORM is unknown.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-t_type ttypeof(char *str)
-
- {
- char *str2;
-
- str2 = str;
- strtol(str, &str2, 10);
- switch ((int)*str2)
- {
- case 'L': case 'B': case 'X': return T_BYTE;
- case 'I': return T_SHORT;
- case 'J': return T_LONG;
- case 'E': return T_FLOAT;
- case 'D': return T_DOUBLE;
- case 'A': return T_STRING;
- default: return RETURN_ERROR;
- }
-
- }
-
-
-/****** tdisptoprintf **********************************************************
-PROTO char *tdisptoprintf(char *tdisp)
-PURPOSE Convert the ``TDISP'' FITS format to the printf() format.
-INPUT TDISP format string (see the FITS documentation).
-OUTPUT printf() format string (see e.g. K&R).
-NOTES The present conversion does not handle binary or engineer notations.
- A NULL vector is returned if the conversion was unsuccessful.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/08/97
- ***/
-char *tdisptoprintf(char *tdisp)
-
- {
- static char str[16], control[4];
- int w,d, n;
-
- w = d = 0;
- n = 0;
- n=sscanf(tdisp,"%[ALIBOZFENSGD]%d.%d", control, &w, &d)-1;
- if (!w)
- {
- warning("Strange TDISP format: ", tdisp);
- return NULL;
- }
- switch ((int)*control)
- {
- case 'A':
- sprintf(str, "%%%dc",w);
- break;
- case 'L':
- sprintf(str, "%%%dd",w);
- break;
- case 'I':
- if (n>1)
- sprintf(str, "%%%d.%dd",w,d);
- else
- sprintf(str, "%%%dd",w);
- break;
- case 'B': case 'Z':
- if (n>1)
- sprintf(str, "%%%d.%dx",w,d);
- else
- sprintf(str, "%%%dx",w);
- break;
- case 'O':
- if (n>1)
- sprintf(str, "%%%d.%do",w,d);
- else
- sprintf(str, "%%%do",w);
- break;
- case 'F':
- if (n>1)
- sprintf(str, "%%%d.%df",w,d);
- else
- sprintf(str, "%%%df",w);
- break;
- case 'E': case 'D':
- if (n>1)
- sprintf(str, "%%%d.%dE",w,d);
- else
- sprintf(str, "%%%dE",w);
- break;
- case 'G':
- if (n>1)
- sprintf(str, "%%%d.%dG",w,d);
- else
- sprintf(str, "%%%dG",w);
- break;
- default:
- warning("Unknown TDISP format: ", tdisp);
- return NULL;
- }
-
- return str;
- }
-
-
-/****** printftotdisp **********************************************************
-PROTO char *printftotdisp(char *tdisp)
-PURPOSE Convert the printf() format to the ``TDISP'' FITS format.
-INPUT printf() format string (see e.g. K&R).
-OUTPUT TDISP format string (see the FITS documentation).
-NOTES The handling of C string formatting does not include the precision.
- NULL is returned in case of unsucessful conversion.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/08/97
- ***/
-char *printftotdisp(char *cprintf)
-
- {
- static char str[16], *control;
- int w,d,n;
-
- *str = 0;
- w = d = 0;
- if (!(control = strpbrk(cprintf, "cdueERfFgGoOxXs")))
- {
- warning("Unknown printf() format: ", cprintf);
- return NULL;
- }
-
- n = sscanf(cprintf,"%%%d.%d", &w, &d);
- w = abs(w);
- if (!n)
- {
- warning("Unconvertible printf() format: ", cprintf);
- return NULL;
- }
-
- switch ((int)*control)
- {
- case 'c':
- sprintf(str, "A%d",w);
- break;
- case 's':
- sprintf(str, "A%d",w);
- break;
- case 'd': case 'u':
- if (n>1)
- sprintf(str, "I%d.%d",w,d);
- else
- sprintf(str, "I%d",w);
- break;
- case 'o': case 'O':
- if (n>1)
- sprintf(str, "O%d.%d",w,d);
- else
- sprintf(str, "O%d",w);
- break;
- case 'x': case 'X':
- if (n>1)
- sprintf(str, "Z%d.%d",w,d);
- else
- sprintf(str, "Z%d",w);
- break;
- case 'f': case 'F':
- if (n>1)
- sprintf(str, "F%d.%d",w,d);
- else
- sprintf(str, "F%d",w);
- break;
- case 'e': case 'E':
- if (n>1)
- sprintf(str, "E%d.%d",w,d);
- else
- sprintf(str, "E%d",w);
- break;
- case 'g': case 'G':
- if (n>1)
- sprintf(str, "G%d.%d",w,d);
- else
- sprintf(str, "G%d",w);
- break;
- default:
- warning("Unknown printf() format: ", cprintf);
- return NULL;
- }
-
- return str;
- }
-
diff --git a/external/psfex/source/fitshead.h b/external/psfex/source/fitshead.h
deleted file mode 100644
index 6830401..0000000
--- a/external/psfex/source/fitshead.h
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- fitshead.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, DeNIS/LDAC.
-*
-* Contents: header structure and templates for catalog data.
-*
-* Last modify: 18/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-paramstruct extpar[] = {
- {"XDATE ", 0, sex.ext_date, "%-18s", H_STRING},
- {"XTIME ", 0, sex.ext_time, "%-18s", H_STRING},
- {"XELAPSED", T_DOUBLE, &sex.ext_elapsed, "%7.1f", H_FLOAT},
- {"XSOFTVER", 0, sex.soft_name, "%-18s", H_STRING},
-/*
- {"SEXSTRSY", T_LONG, &field.stripheight, "%5d", H_INT},
- {"SEXPIXS ", T_DOUBLE, &field.pixscale, "%-15G", H_EXPO},
-*/
- {"SEXSFWHM", T_DOUBLE, &prefs.seeing_fwhm, "%-13G", H_EXPO},
- {"SEXNNWF ", 0, sex.nnw_name, "%-18s", H_STRING},
- {"SEXGAIN ", T_DOUBLE, &prefs.gain, "%6.2f", H_EXPO},
-/*
- {"XDBKGLEV", T_FLOAT, &field.backmean, "%-13G", H_EXPO},
- {"XDBKGDEV", T_FLOAT, &field.backsig, "%-13G", H_EXPO},
- {"XDTHRESH", T_DOUBLE, &field.thresh, "%-15G", H_EXPO},
-*/
- {"SEXCONFF", 0, sex.prefs_name, "%-18s", H_STRING},
- {"SEXDETT ", 0, &prefs.detect_type, "%-18s", H_KEY},
- {"SEXTHLD ", T_DOUBLE, &prefs.threshold, "%-13G", H_EXPO},
- {"XMINAREA", T_LONG, &prefs.ext_minarea, "%5d", H_INT},
- {"SEXCONV ", T_LONG, &prefs.filter_flag, "%1s", H_BOOL},
- {"SEXCONVN", T_LONG, &prefs.convnorm_flag, "%1s", H_BOOL},
- {"SEXCONVF", 0, sex.filter_name, "%-18s", H_STRING},
- {"XNTHRESH", T_LONG, &prefs.deblend_nthresh, "%3d", H_INT},
- {"XMINCONT", T_DOUBLE, &prefs.deblend_mincont, "%8f", H_FLOAT},
- {"SEXCLN ", T_LONG, &prefs.clean_flag, "%1s", H_BOOL},
- {"SEXCLNPA", T_DOUBLE, &prefs.clean_param, "%5.2f", H_FLOAT},
- {"SEXCLNST", T_LONG, &prefs.clean_stacksize, "%6d", H_INT},
- {"XAPERTD ", T_LONG, &prefs.apert[0], "%7.1f", H_FLOAT},
- {"XAPERTD2", T_LONG, &prefs.apert[1], "%7.1f", H_FLOAT},
- {"SEXAPEK1", T_DOUBLE, &prefs.kron_fact, "%4.1f", H_FLOAT},
- {"SEXAPEK2", T_DOUBLE, &prefs.kron_nsig, "%4.1f", H_FLOAT},
- {"SEXAPEK3", T_DOUBLE, &prefs.kron_minsig, "%4.1f", H_FLOAT},
- {"XSATLEV ", T_DOUBLE, &prefs.satur_level, "%-13G", H_EXPO},
- {"XMAGZPT ", T_DOUBLE, &prefs.mag_zeropoint, "%8.4f", H_FLOAT},
- {"SEXMGGAM", T_DOUBLE, &prefs.mag_gamma, "%4.2f", H_FLOAT},
-/*
- {"XBKGNDSX", T_LONG, &field.backw, "%5d", H_INT},
- {"XBKGNDSY", T_LONG, &field.backh, "%5d", H_INT},
- {"SEXBKGFX", T_LONG, &field.nbackfx, "%3d", H_INT},
- {"SEXBKGFY", T_LONG, &field.nbackfy, "%3d", H_INT},
-*/
- {"SEXPBKGT", 0, &prefs.pback_type, "-18s", H_KEY},
- {"SEXPBKGS", T_LONG, &prefs.pback_size, "%3d", H_INT},
- {"SEXPIXSK", T_LONG, &prefs.mem_pixstack, "%8d", H_INT},
- {"SEXFBUFS", T_LONG, &prefs.mem_bufsize, "%5d", H_INT},
- {"SEXISAPR", T_DOUBLE, &prefs.scan_isoapratio, "%4.2f", H_FLOAT},
- {"SEXNDET ", T_LONG, &cat.ndetect, "%9d", H_INT},
- {"SEXNFIN ", T_LONG, &cat.ntotal, "%9d", H_INT},
- {"SEXNPARA", T_LONG, &cat.nparam, "%3d", H_INT},
- {""}
- };
-
-/*------------------------- start of primary header -------------------------*/
-char primhead[36][80] = {
- "SIMPLE = T / Well this is standard FITS",
- "BITPIX = 8 /",
- "NAXIS = 0 /",
- "EXTEND = T / Extension(s) may be present",
- "COMMENT This is an individual LDAC-SEx catalog",
- "END "};
-
-/*---------------- classical `ASCFIELD' binary table header -----------------*/
-char ascfieldhead[36][80] = {
- "XTENSION= 'BINTABLE' / This is a binary table",
- "BITPIX = 8 /",
- "NAXIS = 2 /",
- "NAXIS1 = 0 / Number of FIELD entries",
- "NAXIS2 = 1 / Only one big row",
- "PCOUNT = 0 /",
- "GCOUNT = 1 /",
- "TFIELDS = 1 /",
- "EXTNAME = 'ASCFIELD' / ASCII data for the current FIELD",
- "TTYPE1 = 'Field Header Card' / Label",
- "TFORM1 = '0A80' / Data format: ASCII",
- "END "};
-
-/*----------------- SEx contribution to the `ASCFIELD' table ----------------*/
-char extparmodel[][80] = {
- "XSOFTVER= 'SExtractor 1.1' / Software used for data reduction",
- "XDATE = '00/00/00' / Date at the end of extraction",
- "XTIME = '00:00:00' / Time at the end of extraction",
- "XELAPSED= 0.0 / Elapsed time (s) during extraction",
- "XMINAREA= 0 / Minimum area for extraction (pixels)",
- "XNTHRESH= 0 / Number of sub-thresholds",
- "XMINCONT= 0.0 / Contrast parameter for deblending",
- "XSATLEV = 0.0 / Saturation (ADU)",
- "XBKGNDSX= 0 / Background mesh width (pixels)",
- "XBKGNDSY= 0 / Background mesh height (pixels)",
- "SEXPIXS = 1 / Pixel scale used (arcsec)",
- "SEXSFWHM= 1.0 / Seeing FWHM used (arcsec)",
- "SEXNNWF = 'Default.nnw' / NNW filename for classification",
- "SEXGAIN = 0.0 / Gain (in e- per ADU)",
- "XDBKGLEV= 0.0 / Median background (ADU)",
- "XDBKGDEV= 0.0 / Median background rms (ADU)",
- "XDTHRESH= 0.0 / Threshold computed from background (ADU)",
- "SEXCONFF= 'Default.sex' / Configuration filename",
- "SEXDET = 'CCD' / Detection type",
- "SEXTHLDT= 'SIGMA' / Threshold type",
- "SEXTHLD = 0.0 / Basic threshold used for extraction (ADU)",
- "SEXCONV = F / Convolution flag",
- "SEXCONVN= F / Convolution normalisation flag",
- "SEXCONVF= 'Default.conv' / Convolution filename",
- "SEXCLN = F / Cleaning flag",
- "SEXCLNPA= 0.0 / Cleaning parameter",
- "SEXCLNST= 0 / Cleaning object stack-size (# of objects)",
- "XAPERTD = 0.0 / Fixed aperture diameter (pixels)",
- "XAPERTD2= 0.0 / Second fixed aperture diameter (pixels)",
- "SEXAPEK1= 0.0 / Kron parameter",
- "SEXAPEK2= 0.0 / Kron radius for analysis",
- "SEXAPEK3= 0.0 / Kron minimum radius",
- "XMAGZPT = 0.0 / Magnitude zero-point",
- "SEXMGGAM= 0.0 / Magnitude gamma",
- "SEXBKGFX= 0 / Background filter width",
- "SEXBKGFY= 0 / Background filter height",
- "SEXPBKGT= 'GLOBAL' / Background type",
- "SEXPBKGS= 0 / Local area thickness (pixels)",
- "SEXPIXSK= 0 / Pixel stack-size (pixels)",
- "SEXFBUFS= 0 / Frame-buffer size (scanlines)",
- "SEXISAPR= 0 / Iso/aper ratio",
- "SEXNDET = 0 / Number of detections",
- "SEXNFIN = 0 / Number of final extracted objects",
- "SEXNPARA= 0 / Number of parameters per object",
- "END "}; /* don't remove the END!!! */
-
-
-/*----------------------- `OBJECTS' binary table header ---------------------*/
-
-char objheadmodel[][80] = {
- "XTENSION= 'BINTABLE' / This is a binary table",
- "BITPIX = 8 /",
- "NAXIS = 2 /",
- "NAXIS1 = 0 /",
- "NAXIS2 = 0 / Number of catalog entries",
- "PCOUNT = 0 /",
- "GCOUNT = 1 /",
- "TFIELDS = 0 /",
- "EXTNAME = 'OBJECTS' / Object data",
- "END "};
-
-
-/*---------------- FITS keyword to exclude from IMAGE header ----------------*/
-
-char blacklist[][16] = {
-
- "SIMPLE ",
- "NAXIS ",
- "PCOUNT ",
- "GCOUNT ",
- "TFIELDS ",
- "END ",
- ""
- };
-
diff --git a/external/psfex/source/fitskey.c b/external/psfex/source/fitskey.c
deleted file mode 100644
index f68de58..0000000
--- a/external/psfex/source/fitskey.c
+++ /dev/null
@@ -1,951 +0,0 @@
-/*
- fitskey.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Functions related to the management of keys.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** add_key ****************************************************************
-PROTO int add_key(keystruct *key, tabstruct *tab, int pos)
-PURPOSE Copy a key from one table to another.
-INPUT Pointer to the key,
- Pointer to the table,
- Pointer to the destination table,
- Position (1= first, <=0 = at the end)
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES A preexisting key in the destination table yields a RETURN_ERROR.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 26/03/96
- ***/
-int add_key(keystruct *key, tabstruct *tab, int pos)
-
- {
-
-/*Check if a similar key doesn't already exist in the dest. cat */
- if (name_to_key(tab, key->name))
- return RETURN_ERROR;
-
-/*Update links (portion of code similar to that of copy_key below) */
- if ((key->nextkey = pos_to_key(tab, pos)))
- {
- (key->prevkey = key->nextkey->prevkey)->nextkey = key;
- key->nextkey->prevkey = key;
-/*--the first place has a special meaning*/
- if (pos==1)
- tab->key = key;
- }
- else
-/*There was no no key before*/
- tab->key = key->nextkey = key->prevkey = key;
-
- tab->nkey++;
-
- return RETURN_OK;
- }
-
-
-/****** blank_keys *************************************************************
-PROTO int blank_keys(tabstruct *tab)
-PURPOSE Put the array pointers from all keys in a table to NULL.
-INPUT Pointer to the table.
-OUTPUT RETURN_OK if keys were found, and RETURN_ERROR otherwise.
-Notes: -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int blank_keys(tabstruct *tab)
-
- {
- keystruct *key;
- int k;
-
- if (!(key = tab->key))
- return RETURN_ERROR;
-
- for (k=tab->nkey; k--;)
- {
- key->ptr = NULL;
- key = key->nextkey;
- }
-
- return RETURN_OK;
- }
-
-
-/****** copy_key ***************************************************************
-PROTO int copy_key(tabstruct *tabin, char *keyname, tabstruct *tabout, int pos)
-PURPOSE Copy a key from one table to another.
-INPUT Pointer to the original table,
- Name of the key,
- Pointer to the destination table,
- Position (1= first, <=0 = at the end)
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES A preexisting key in the destination table yields a RETURN_ERROR,
- the ptr member is NOT COPIED.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 19/08/96
- ***/
-int copy_key(tabstruct *tabin, char *keyname, tabstruct *tabout, int pos)
-
- {
- keystruct *keyin, *keyout;
-
-/*Convert the key name to a pointer*/
- if (!(keyin = name_to_key(tabin, keyname)))
- return RETURN_ERROR;
-
-/*Check if a similar key doesn't already exist in the dest. cat */
- if (name_to_key(tabout, keyname))
- return RETURN_ERROR;
-
- tabout->nkey++;
-
-/*First, allocate memory and copy data */
- QCALLOC(keyout, keystruct, 1);
- *keyout = *keyin;
- keyout->ptr = NULL;
- if (keyin->naxis)
- QMEMCPY(keyin->naxisn, keyout->naxisn, int, keyin->naxis);
-
-/*Then, update the links */
- if ((keyout->nextkey = pos_to_key(tabout, pos)))
- {
- (keyout->prevkey = keyout->nextkey->prevkey)->nextkey = keyout;
- keyout->nextkey->prevkey = keyout;
-/*--the first place has a special meaning*/
- if (pos==1)
- tabout->key = keyout;
- }
- else
-/*There was no no key before*/
- tabout->key = keyout->nextkey = keyout->prevkey = keyout;
-
- return RETURN_OK;
- }
-
-
-/****** free_key ***************************************************************
-PROTO void free_key(keystruct *key)
-PURPOSE Free memory associated to a key ptr.
-INPUT Pointer to the key.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 19/08/96
- ***/
-void free_key(keystruct *key)
-
- {
- free(key->naxisn);
- free(key->ptr);
- free(key);
-
- return;
- }
-
-
-/****** new_key ****************************************************************
-PROTO keystruct *new_key(char *keyname)
-PURPOSE Create a new key.
-INPUT Name of the key.
-OUTPUT A pointer to the new keystruct.
-NOTES This function is only provided as a counterpart to new_tab() and
- new_cat(): in order to be usable, other key parameters MUST be
- handled by the user.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 26/03/96
- ***/
-keystruct *new_key(char *keyname)
-
- {
- keystruct *key;
-
- QCALLOC(key, keystruct, 1);
- strcpy(key->name, keyname);
-
- return key;
- }
-
-
-/****** read_key ***************************************************************
-PROTO keystruct *read_key(tabstruct *tab, char *keyname)
-PURPOSE Read one simple column from a FITS binary table.
-INPUT pointer to the table,
- name of the key,
-OUTPUT A pointer to the relevant key, or NULL if the desired key is not
- found in the table.
-NOTES If key->ptr is not NULL, the function doesn't do anything.
-AUTHOR E. Bertin (IAP & Leiden observatory)
- E.R. Deul (Sterrewacht Leiden) (Added open_cat error checking)
-VERSION 13/03/99
- ***/
-keystruct *read_key(tabstruct *tab, char *keyname)
-
- {
- catstruct *cat;
- keystruct *key;
- char *buf, *ptr, *fptr,*fptr0;
- int i,j, larray,narray,size;
-#ifdef BSWAP
- int esize;
-#endif
-
- if (!(key = name_to_key(tab, keyname)))
- return NULL;
-
-/*If ptr is not NULL, there is already something loaded there: let's free mem */
- QFREE(key->ptr);
-
-/*!! It is not necessarily the original table */
- tab = key->tab;
- cat = tab->cat;
-
-/*We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
-/*Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- narray = tab->naxisn[1];
-
-/*Positioning to the first element*/
- if (open_cat(cat, READ_ONLY) == RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: opening catalog ",cat->filename);
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*allocate memory for the buffer where we put one line of data*/
- QMALLOC(buf, char, larray);
-
- fptr0 = buf+key->pos;
- size = key->nbytes;
-
-/*allocate memory for the array*/
- QMALLOC(ptr, char, size*narray);
- key->ptr = ptr;
-
-/*read line by line*/
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
- fptr = fptr0;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(fptr0, esize, size/esize);
-#endif
- for (j = size; j--;)
- *(ptr++) = *(fptr++);
- }
-
- free(buf);
- return key;
- }
-
-
-/****** read_keys **************************************************************
-PURPOSE Read several columns from a FITS binary table.
-INPUT pointer to the table,
- pointer to an array of char *,
- pointer to an array of keystruct * (memory must have been allocated),
- number of keys to read,
- an optional mask pointer.
-OUTPUT -.
-NOTES The array of pointers pointed by keys is filled with pointers
- to the relevant keys (a NULL means NO key with such name was found).
- A NULL keys pointer can be given (no info returned of course).
- A NULL keynames pointer means read ALL keys belonging to the table.
- A NULL mask pointer means NO selection for reading.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-void read_keys(tabstruct *tab, char **keynames, keystruct **keys, int nkeys,
- BYTE *mask)
-
- {
- catstruct *cat;
- keystruct *key, **ckeys;
- BYTE *mask2;
- char *buf, *ptr, *fptr;
- int i,j,k,n, larray,narray, nb, kflag = 0, size;
-#ifdef BSWAP
- int esize;
-#endif
-
-/*!! It is not necessarily the original table */
- tab = tab->key->tab;
- cat = tab->cat;
-
-/*We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
-/*Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- narray = tab->naxisn[1];
-
- nb = 0;
- if ((mask2 = mask))
- {
- for (i=narray; i--;)
- if (*(mask2++))
- nb++;
- }
-
- if (!keynames)
- nkeys = tab->nkey;
-
-/*Allocate memory to store the list of keys to be read */
- if (!keys)
- {
- QMALLOC(keys, keystruct *, nkeys);
- kflag = 1;
- }
-
-/*allocate memory for the arrays*/
- ckeys = keys;
- if (keynames)
- for (i=nkeys; i--;)
- {
- if ((key = name_to_key(tab, *(keynames++))))
- {
- QFREE(key->ptr);
- if (nb)
- key->nobj = nb;
- else
- nb=key->nobj;
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- }
- else
- *(ckeys++) = NULL;
- }
- else
- {
- key = tab->key;
- for (i=nkeys; i--;)
- {
- QFREE(key->ptr);
- if (nb)
- key->nobj = nb;
- else
- nb=key->nobj;
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- key = key->nextkey;
- }
- }
-
-/*allocate memory for the buffer where we put one line of data*/
- QMALLOC(buf, char, larray);
-
-/*Positioning to the first element*/
- open_cat(cat, READ_ONLY);
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*read line by line*/
- n = 0;
- mask2 = mask;
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
- if (!mask || *(mask2++))
- {
- ckeys = keys;
- for (j=nkeys; j--;)
- if (key = *(ckeys++))
- {
- fptr = buf+key->pos;
- ptr = (char *)key->ptr+n*(size=key->nbytes);
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(fptr, esize, size/esize);
-#endif
- for (k = size; k--;)
- *(ptr++) = *(fptr++);
- }
- n++;
- }
- }
-
- free(buf);
- if (kflag)
- free(keys);
-
- return;
- }
-
-/****** remove_key *************************************************************
-PROTO int remove_key(tabstruct *tab, char *keyname)
-PURPOSE Remove a key from a table.
-INPUT Pointer to the table,
- Name of the key.
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES If keyname = "", the last key from the list is removed.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/01/97
- ***/
-int remove_key(tabstruct *tab, char *keyname)
-
- {
- keystruct *key, *prevkey, *nextkey;
-
- if (!keyname || !tab->nkey || !tab->key)
- return RETURN_ERROR;
-
- if (keyname[0])
- {
-/*--Convert the key name to a pointer*/
- if (!(key = name_to_key(tab, keyname)))
- return RETURN_ERROR;
- }
- else
- key = tab->key->prevkey;
-
- prevkey = key->prevkey;
-/*Free memory*/
- nextkey = key->nextkey;
- if (tab->key==key)
- tab->key = nextkey;
- free_key(key);
-
- if (--tab->nkey)
- {
-/*--update the links of neighbours*/
- nextkey->prevkey = prevkey;
- prevkey->nextkey = nextkey;
- }
- else
- tab->key = NULL;
-
- return RETURN_OK;
- }
-
-
-/****** remove_keys ************************************************************
-PROTO int remove_keys(tabstruct *tab)
-PURPOSE Remove all keys from a table.
-INPUT Pointer to the table.
-OUTPUT RETURN_OK if keys were found, and RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-int remove_keys(tabstruct *tab)
-
- {
- int k;
-
- if (!tab->key)
- return RETURN_ERROR;
-
- for (k=tab->nkey; k--;)
- remove_key(tab, "");
-
- return RETURN_OK;
- }
-
-
-/****** name_to_key ************************************************************
-PROTO keystruct *name_to_key(tabstruct *tab, char *keyname)
-PURPOSE Name search of a key in a table.
-INPUT Pointer to the table,
- Key name.
-OUTPUT The key pointer if the name was matched, and NULL otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-keystruct *name_to_key(tabstruct *tab, char *keyname)
-
- {
- keystruct *key;
- int i;
-
- if (!(key=tab->key))
- return NULL;
-
- for (i=tab->nkey; strcmp(keyname, key->name) && i--; key=key->nextkey);
-
- return i<0? NULL:key;
- }
-
-/****** keys_list **************************************************************
-PROTO char **keys_list(catstruct *tab, int *n)
-PURPOSE List all keys in a table.
-INPUT Pointer to the table,
- Pointer to the number of names in that list.
-OUTPUT A list of all key names.
-NOTES -.
-AUTHOR E.R. Deul (Leiden observatory)
-VERSION ??/??/96
- ***/
-char **keys_list(tabstruct *tab, int *n)
-
- {
- keystruct *key;
- int i;
- char **names;
-
- QCALLOC(names, char *, tab->nkey);
- key = tab->key;
- for (i=0; i<tab->nkey; i++) {
- QCALLOC(names[i], char, MAXCHARS);
- strcpy(names[i],key->name);
- key = key->nextkey;
- }
- *n = tab->nkey;
- return names;
- }
-
-
-/****** pos_to_key *************************************************************
-PROTO keystruct *pos_to_key(tabstruct *tab, int pos)
-PURPOSE Position search of a key in a table.
-INPUT Pointer to the table,
- Position of the key.
-OUTPUT The key pointer if a key exists at the given position, and the
- pointer to the first key otherwise.
-NOTES pos = 0 or 1 means the first key.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-keystruct *pos_to_key(tabstruct *tab, int pos)
-
- {
- keystruct *key;
- int i;
-
- if (!(key=tab->key))
- return NULL;
-
- if ((pos--)==1)
- return tab->key;
-
- for (i=0; i!=pos && i<tab->nkey; i++, key=key->nextkey);
-
- return i<tab->nkey?key:tab->key;
- }
-
-
-/****** show_keys **************************************************************
-PROTO void show_keys(tabstruct *tab, char **keynames,
- keystruct **keys, int nkeys,
- BYTE *mask, FILE *stream,
- int strflag, int banflag, int leadflag,
- output_type o_type)
-PURPOSE Convert a binary table to an ASCII file.
-INPUT pointer to the table,
- pointer to an array of char *,
- pointer to an array of keystruct * (memory must have been allocated),
- number of keys to read,
- an optional mask pointer,
- a stream,
- a flag to indicate if arrays should be displayed (0=NO),
- a flag to indicate if a banner with keynames should be added (0=NO).
- a flag to indicate if a leading row number should be added (0=NO).
- the output type
-OUTPUT -.
-NOTES This is approximately the same code as for read_keys.
- The array of pointers pointed by keys is filled with pointers
- to the relevant keys (a NULL means NO key with such name was found).
- A NULL keys pointer can be given (no info returned of course).
- A NULL keynames pointer means read ALL keys belonging to the table.
- A NULL mask pointer means NO selection for reading.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-void show_keys(tabstruct *tab, char **keynames, keystruct **keys, int nkeys,
- BYTE *mask, FILE *stream,
- int strflag, int banflag, int leadflag, output_type o_type)
-
- {
- catstruct *cat;
- keystruct *key, **ckeys;
- BYTE *mask2;
- char *buf, *rfield, *ptr;
- int i,j,k,n,c, larray,narray, nb, kflag, maxnbytes, nelem,
- esize, *key_col;
- typedef struct structreq_keyname
- {
- char oldname[80]; /* Name of the original pipeline key */
- char newname[80]; /* Name of the skycat required key */
- } req_keynamestruct;
-
- req_keynamestruct objectmap[] =
- {
- {"SeqNr", "id"},
- {"Ra", "ra"},
- {"Dec", "dec"},
- {"MAG_ISO", "Mag"},
- {"", ""}
- };
- req_keynamestruct *map;
-
- char skycathead[] = "QueryResult\n\n"
- "# Config entry for original catalog server:\n"
- "serv_type: catalog\n"
- "long_name: ldactoskycat catalog\n"
- "short_name: ldactoaskycat\n"
- "symbol: id circle %4.1f\n"
- "search_cols: mag {Brightest (min)} {Faintest (max)}\n"
- "# End config entry\n\n";
-
- char *t, skycattail[] = "";
-
-
-/* !! It is not necessarily the original table */
- if (tab->key)
- tab = tab->key->tab;
- cat = tab->cat;
-
-/* We are expecting a 2D binary-table, and nothing else */
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: Not a binary table in ", cat->filename);
-
-/* Size and number of lines in the binary table */
- larray = tab->naxisn[0];
- narray = tab->naxisn[1];
-
- nb = 0;
- if ((mask2 = mask))
- {
- for (i=narray; i--;)
- if (*(mask2++))
- nb++;
- }
-
- if (!keynames)
- nkeys = tab->nkey;
- QCALLOC(key_col, int, nkeys);
- if (keynames) {
- for (i=0;i<nkeys;i++)
- if ((t=strchr(keynames[i], ')'))!=NULL) {
- *t='\0';
- t=strchr(keynames[i], '(');
- *t='\0';
- key_col[i] = atoi(++t);
- }
- }
-/* Allocate memory to store the list of keys to be read */
- kflag = 0;
- if (!keys)
- {
- QMALLOC(keys, keystruct *, nkeys);
- kflag = 1;
- }
-
- n=1;
- switch (o_type) {
- case ASCII:
- if (leadflag)
- fprintf(stream, "# %3d %-15.15s %.47s\n", n++,
- "(row_pos)", "running row");
- break;
- case SKYCAT:
- fprintf(stream, skycathead, 6.0);
- break;
- }
-
-/* Allocate memory for the arrays */
- maxnbytes = 0;
- ckeys = keys;
- if (keynames)
- for (i=nkeys; i--;)
- {
- if ((key = name_to_key(tab, *(keynames++))))
- {
- for (map=objectmap; map->oldname[0]&&o_type == SKYCAT; map++) {
- if (strcmp(key->name, map->oldname) == 0) {
- strcpy(key->name, map->newname);
- }
- }
- *(ckeys++) = key;
- switch (o_type) {
- case ASCII:
- if (banflag)
- {
- if (*key->unit)
- fprintf(stream, "# %3d %-19.19s %-47.47s [%s]\n",
- n, key->name,key->comment, key->unit);
- else
- fprintf(stream, "# %3d %-19.19s %.47s\n",
- n, key->name,key->comment);
- n += key->nbytes/t_size[key->ttype];
- }
- break;
- case SKYCAT:
- if (key->nbytes/t_size[key->ttype] > 1)
- for (j=0;j<key->nbytes/t_size[key->ttype];j++)
- fprintf(stream, "%s(%d)\t", key->name,j+1);
- else
- fprintf(stream, "%s\t", key->name);
- break;
- }
- if (key->nbytes>maxnbytes)
- maxnbytes = key->nbytes;
- }
- else
- *(ckeys++) = NULL;
- }
- else
- {
- key = tab->key;
- for (i=nkeys; i--; key = key->nextkey)
- if (strflag || key->naxis==0)
- {
- for (map=objectmap; map->oldname[0]&&o_type == SKYCAT; map++) {
- if (strcmp(key->name, map->oldname) == 0) {
- strcpy(key->name, map->newname);
- }
- }
- *(ckeys++) = key;
- switch (o_type) {
- case ASCII:
- if (banflag)
- {
- if (*key->unit)
- fprintf(stream, "# %3d %-19.19s %-47.47s [%s]\n",
- n, key->name,key->comment, key->unit);
- else
- fprintf(stream, "# %3d %-19.19s %.47s\n",
- n, key->name,key->comment);
- n += key->nbytes/t_size[key->ttype];
- }
- break;
- case SKYCAT:
- if (key->nbytes/t_size[key->ttype] > 1)
- for (j=0;j<key->nbytes/t_size[key->ttype];j++)
- fprintf(stream, "%s(%d)\t", key->name,j+1);
- else
- fprintf(stream, "%s\t", key->name);
- break;
- }
- if (key->nbytes>maxnbytes)
- maxnbytes = key->nbytes;
- }
- else
- {
- switch (o_type) {
- case ASCII:
- if (*key->unit)
- fprintf(stream, "# %-19.19s %-47.47s [%s]\n",
- key->name,key->comment, key->unit);
- else
- fprintf(stream, "# %-19.19s %.47s\n",
- key->name,key->comment);
- break;
- case SKYCAT:
- break;
- }
- *(ckeys++) = NULL;
- }
- }
- if (o_type == SKYCAT)
- fprintf(stream, "\n------------------\n");
-
-/* Allocate memory for the buffer where we put one line of data */
- QMALLOC(buf, char, larray);
-
-/* Allocate memory for the buffer where we put one element */
- QMALLOC(rfield, char, maxnbytes);
-
-/* Positioning to the first element */
- open_cat(cat, READ_ONLY);
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*read line by line*/
- n = 0;
- mask2 = mask;
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
- if (!mask || *(mask2++))
- {
- ckeys = keys;
- if (leadflag)
- {
- fprintf(stream, "%d", ++n);
- if (k)
- putc(' ', stream);
- }
- for (k=0; k<nkeys; k++)
- {
- if ((key = *(ckeys++)) && (strflag || key->naxis==0))
- {
- ptr = memcpy(rfield, buf+key->pos, key->nbytes);
- esize = t_size[key->ttype];
- nelem = key->nbytes/esize;
-#ifdef BSWAP
- swapbytes(ptr, esize, nelem);
-#endif
- switch(key->ttype)
- {
- case T_SHORT:
- for (j = 0; j<nelem; j++, ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%d",
- *(short *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case ASCII:
- putc(' ', stream);
- break;
- case SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_LONG:
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%d",
- *(int *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case ASCII:
- putc(' ', stream);
- break;
- case SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_FLOAT:
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%g",
- *(float *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case ASCII:
- putc(' ', stream);
- break;
- case SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_DOUBLE:
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%f",
- *(double *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case ASCII:
- putc(' ', stream);
- break;
- case SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_BYTE:
- if (key->htype==H_BOOL)
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- if (*(char *)ptr)
- fprintf(stream, "T");
- else
- fprintf(stream, "F");
- }
- }
- else
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%d",
- (int)*((unsigned char *)ptr));
- if (j) {
- switch (o_type) {
- case ASCII:
- putc(' ', stream);
- break;
- case SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_STRING:
- for (j = nelem; j-- && (c=(int)*ptr); ptr += esize)
- fprintf(stream, "%c", c);
- break;
-
- default:
- error(EXIT_FAILURE, "*FATAL ERROR*: Unknown FITS type in ",
- "show_keys()");
- break;
- }
- if (k < nkeys - 1) {
- switch (o_type) {
- case ASCII:
- putc(' ', stream);
- break;
- case SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- putc('\n', stream);
- }
- }
- free(key_col);
- free(buf);
- if (kflag)
- free(keys);
- if (o_type == SKYCAT)
- fprintf(stream, skycattail);
- return;
- }
-
diff --git a/external/psfex/source/fitsmisc.c b/external/psfex/source/fitsmisc.c
deleted file mode 100644
index f639ada..0000000
--- a/external/psfex/source/fitsmisc.c
+++ /dev/null
@@ -1,102 +0,0 @@
- /*
- fitsmisc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: miscellaneous functions.
-*
-* Last modify: 20/04/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** wstrncmp ***************************************************************
-PROTO int wstrncmp(char *cs, char *ct, int n)
-PURPOSE simple wildcard strcmp.
-INPUT character string 1,
- character string 2,
- maximum number of characters to be compared.
-OUTPUT comparison integer (same meaning as strcmp).
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int wstrncmp(char *cs, char *ct, int n)
-
- {
- int diff,i;
-
- i = n;
- diff = 0;
- do
- {
- diff = ((*cs=='?'&&*ct)||(*ct=='?'&&*cs))?0:*cs-*ct;
- } while (!diff && --i && *(cs++) && *(ct++));
-
- return diff;
- }
-
-
-/****** findkey ****************************************************************
-PROTO int findkey(char *str, char *key, int size)
-PURPOSE Find an item within a list of keywords.
-INPUT character string,
- an array of character strings containing the list of keywords,
- offset (in char) between each keyword.
-OUTPUT position in the list (0 = first) if keyword matched,
- RETURN_ERROR otherwise.
-NOTES the matching is case-sensitive.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int findkey(char *str, char *key, int size)
-
- {
- int i;
-
- for (i=0; key[0]; i++, key += size)
- if (!strcmp(str, key))
- return i;
-
- return RETURN_ERROR;
- }
-
-
-/********************************* findnkey **********************************
-PROTO int findnkey(char *str, char *key, int size, int nkey)
-PURPOSE Find an item within a list of nkey keywords.
-INPUT character string,
- an array of character strings containing the list of keywords,
- offset (in char) between each keyword.
- number of keywords.
-OUTPUT position in the list (0 = first) if keyword matched,
- RETURN_ERROR otherwise.
-NOTES the matching is case-sensitive.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int findnkey(char *str, char *key, int size, int nkey)
-
- {
- int i;
-
- for (i=0; i<nkey; i++, key += size)
- if (!strcmp(str, key))
- return i;
-
- return RETURN_ERROR;
- }
-
-
diff --git a/external/psfex/source/fitsread.c b/external/psfex/source/fitsread.c
deleted file mode 100644
index a65bf46..0000000
--- a/external/psfex/source/fitsread.c
+++ /dev/null
@@ -1,260 +0,0 @@
-/*
- fitsread.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: low-level functions for reading LDAC FITS catalogs.
-*
-* Last modify: 13/11/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-char *linein_buf, padbuf[FBSIZE];
-int linein_size, nlinein;
-
-/****** read_cat ***************************************************************
-PROTO catstruct read_cat(char *filename)
-PURPOSE ``Read'' a FITS catalog with name filename.
-INPUT Filename,
-OUTPUT catstruct pointer.
-NOTES Returns NULL if no file with name \<filename\> is found.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 22/08/96
- ***/
-catstruct *read_cat(char *filename)
-
- {
- catstruct *cat;
-
- if (!(cat = new_cat(1)))
- error (EXIT_FAILURE, "Not enough memory to read ", filename);
-
- strcpy(cat->filename, filename);
- if (open_cat(cat, READ_ONLY) != RETURN_OK)
- {
- free_cat(cat, 1);
- return NULL;
- }
-
- if (map_cat(cat) != RETURN_OK)
- error (EXIT_FAILURE, "Cannot map ", filename);
-
- return cat;
- }
-
-
-/****** read_cats **************************************************************
-PROTO read_cats(char **filenames, int ncat)
-PURPOSE ``Read'' several FITS catalogs.
-INPUT A pointer to pointers of char,
- The number of catalogs.
-OUTPUT catstruct pointer.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-catstruct *read_cats(char **filenames, int ncat)
-
- {
- catstruct *cat, *ccat;
- int i;
-
- if (!(cat = new_cat(ncat)))
- error (EXIT_FAILURE, "Not enough memory to read ", "catalogs");
-
- for (i=ncat, ccat = cat; i--; ccat++, filenames++)
- {
- strcpy(ccat->filename, *filenames);
- if (open_cat(ccat, READ_ONLY) != RETURN_OK)
- error (EXIT_FAILURE, "Cannot open ", *filenames);
- if (map_cat(ccat) != RETURN_OK)
- error (EXIT_FAILURE, "Cannot map ", *filenames);
- close_cat(ccat);
- }
-
- return cat;
- }
-
-
-/****** init_readobj **********************************************************
-PROTO tabstruct *init_readobj(tabstruct *tab)
-PURPOSE Prepare the reading of individual sources in a FITS table
-INPUT Table structure.
-OUTPUT Pointer to the table structure from which the data will be read.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 07/04/97
- ***/
-tabstruct *init_readobj(tabstruct *tab)
-
- {
- catstruct *tabcat;
- tabstruct *keytab;
- keystruct *key;
- int k;
-
-/* Scan keys to find the reference tab and other things*/
- keytab = NULL;
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (!key->ptr)
- {
- keytab = key->tab;
- tabcat = keytab->cat;
- QMALLOC(key->ptr, char, key->nbytes);
- }
- else
- key->pos = -1;
-
- if (!keytab)
- error(EXIT_FAILURE,"*Error*: no original table found among keys in table ",
- tab->extname);
-
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, keytab->bodypos, SEEK_SET, tabcat->filename);
-
-/* Allocate memory for the input buffer (or increase it if done already) */
- if (linein_buf)
- {
- if (linein_size < tab->naxisn[0])
- {
- QREALLOC(linein_buf, char, tab->naxisn[0]);
- linein_size = tab->naxisn[0];
- }
- }
- else
- {
- QMALLOC(linein_buf, char, tab->naxisn[0]);
- linein_size = tab->naxisn[0];
- }
-
- nlinein++;
-
- return keytab;
- }
-
-
-/****** read_obj **************************************************************
-PROTO int read_obj(tabstruct *keytab, tabstruct *tab)
-PURPOSE Read one individual source at the current position in a FITS table.
-INPUT Table which will be accessed from disk (provided by init_readobj()),
- Table containing the keys that will be read.
-OUTPUT The number of table lines that remain to be read.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 07/04/97
- ***/
-int read_obj(tabstruct *keytab, tabstruct *tab)
-
- {
- keystruct *key;
- char *pin, *pout;
- int b,k;
-#ifdef BSWAP
- int esize;
-#endif
-
- QFREAD(linein_buf,keytab->naxisn[0],keytab->cat->file,keytab->cat->filename);
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (key->pos>=0)
- {
- pin = linein_buf+key->pos;
- pout = key->ptr;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(pin, esize, key->nbytes/esize);
-#endif
- for (b=key->nbytes; b--;)
- *(pout++) = *(pin++);
- }
-
- return --keytab->naxisn[1];
- }
-
-
-/****** read_obj_at ***********************************************************
-PROTO int read_obj_at(tabstruct *keytab, tabstruct *tab, long pos)
-PURPOSE Get one source at a specific position in a FITS table.
-INPUT Table which will be accessed from disk (provided by init_readobj()),
- Table containing the keys that will be read.
- Position number in table.
-OUTPUT RETURN_OK if the object has been accessed, RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 23/06/97
- ***/
-int read_obj_at(tabstruct *keytab, tabstruct *tab, long pos)
-
- {
- keystruct *key;
- char *pin, *pout;
- size_t n;
- int b,k;
-#ifdef BSWAP
- int esize;
-#endif
-
- if ((n=keytab->naxisn[0]*pos) >= keytab->tabsize)
- return RETURN_ERROR;
- QFSEEK(keytab->cat->file,keytab->bodypos+n, SEEK_SET, keytab->cat->filename);
- QFREAD(linein_buf,keytab->naxisn[0],keytab->cat->file,keytab->cat->filename);
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (key->pos>=0)
- {
- pin = linein_buf+key->pos;
- pout = key->ptr;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(pin, esize, key->nbytes/esize);
-#endif
- for (b=key->nbytes; b--;)
- *(pout++) = *(pin++);
- }
-
- return RETURN_OK;
- }
-
-
-/****** end_readobj **********************************************************
-PROTO void end_readobj(tabstruct *keytab, tabstruct *tab)
-PURPOSE End the writing of individual sources in a FITS table
-INPUT Table which will be accessed from disk (provided by init_readobj()),
- Table containing the keys that have been read.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/11/97
- ***/
-void end_readobj(tabstruct *keytab, tabstruct *tab)
-
- {
-
- if (close_cat(keytab->cat) != RETURN_OK)
- error(EXIT_FAILURE,"*Error*: Problem while closing",keytab->cat->filename);
-
-/* Recover the original state of the original table */
- update_tab(keytab);
- if (!(--nlinein))
- {
- free(linein_buf);
- linein_buf = NULL;
- linein_size = 0;
- }
-
- return;
- }
-
diff --git a/external/psfex/source/fitstab.c b/external/psfex/source/fitstab.c
deleted file mode 100644
index ce45345..0000000
--- a/external/psfex/source/fitstab.c
+++ /dev/null
@@ -1,616 +0,0 @@
-/*
- fitstab.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: general functions for handling LDAC FITS catalogs.
-*
-* Last modify: 30/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** about_tab **************************************************************
-PROTO int about_tab(catstruct *cat, char *tabname, FILE *stream)
-PURPOSE Print information concerning a tab structure.
-INPUT Pointer to the input catalog,
- table name,
- an output stream.
-OUTPUT RETURN_OK if the table was found, RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E.R. Deul(Leiden observatory),
- E. Bertin (IAP & Leiden observatory): return value modified.
- E.R. Deul(Leiden observatory): output units
-VERSION 29/07/97
- ***/
-int about_tab(catstruct *cat, char *tabname, FILE *stream)
-{
- tabstruct *tab;
- keystruct *key;
- int i, j;
-
- if (tab = name_to_tab(cat, tabname, 0)) {
- fprintf(stream, "Table %s\n", tabname);
- for (i=0, key=tab->key; i<tab->nkey; i++,key=key->nextkey)
- {
- fprintf(stream,
- "****** Key #%d\n", i+1);
- fprintf(stream,
- " Key name:...............%s\n", key->name);
- fprintf(stream,
- " Key comment:............%s\n", key->comment);
- fprintf(stream,
- " Key type:...............");
- switch (key->ttype) {
- case T_BYTE: fprintf(stream,"Byte"); break;
- case T_SHORT: fprintf(stream,"Short Int"); break;
- case T_LONG: fprintf(stream,"Long Int"); break;
- case T_FLOAT: fprintf(stream,"Float"); break;
- case T_DOUBLE: fprintf(stream,"Double"); break;
- case T_STRING: fprintf(stream,"String"); break;
- }
- fprintf(stream,"\n");
- fprintf(stream,
- " Key dimension:..........%d ", key->naxis);
- if (key->naxis) fprintf(stream, "(");
- for (j=0;j<key->naxis;j++) {
- if (j>0) fprintf(stream, " ");
- fprintf(stream, "%d", key->naxisn[j]);
- }
- if (key->naxis) fprintf(stream, ")");
- fprintf(stream, "\n");
- if (key->unit[0] != '\0')
- fprintf(stream,
- " Key unit:...............%s\n", key->unit);
- }
- } else return RETURN_ERROR;
-
- return RETURN_OK;
-}
-
-/****** add_tab ****************************************************************
-PROTO int add_tab(tabstruct *tab, catstruct *cat, int pos)
-PURPOSE Add a table to a catalog.
-INPUT Pointer to the table,
- Pointer to the destination catalog,
- Position (1= first after the primary HDU, <=0 = at the end).
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES Only 1-segment tables are accepted. To copy multi-segment tables,
- use copy_tab() instead.
- If a table with the same name and basic attributes already exists in
- the destination catalog, then the new table is appended to it.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int add_tab(tabstruct *tab, catstruct *cat, int pos)
-
- {
- tabstruct *outtab, *prevtab;
- int i;
-
-/*Check if a similar table doesn't already exist in the dest. cat */
- if ((outtab = name_to_tab(cat, tab->extname, 0)))
- {
- if ((outtab->naxis != 2)
- || (outtab->bitpix!=8)
- || strcmp(outtab->xtension,tab->xtension)
- || (outtab->tfields != tab->tfields)
- || (outtab->naxisn[0] != tab->naxisn[0]))
- return RETURN_ERROR;
-
- prevtab = outtab;
- for (i=outtab->nseg-1; i--;)
- prevtab = prevtab->nexttab;
- tab->seg = prevtab->seg+1;
- tab->nseg = 0;
- outtab->nseg++;
- }
- else
- {
- prevtab = pos_to_tab(cat, pos, 0)->prevtab;
- cat->ntab++;
- }
-
- (tab->nexttab = (tab->prevtab = prevtab)->nexttab)->prevtab = tab;
- prevtab->nexttab = tab;
-
- return RETURN_OK;
- }
-
-
-/****** copy_tab ***************************************************************
-PROTO int copy_tab(catstruct *catin, char *tabname, int seg,
- catstruct *catout, int pos)
-PURPOSE Copy a table from one catalog to another.
-INPUT Pointer to the original catalog,
- Name of the table,
- Table segment (0 = all),
- Pointer to the destination catalog,
- Position (1= first after the primary HDU, <=0 = at the end)
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES If a table with the same name and basic attributes already exists in
- the destination catalog, then the original table is appended to it.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int copy_tab(catstruct *catin, char *tabname, int seg,
- catstruct *catout, int pos)
-
- {
- keystruct *key;
- tabstruct *outtab, *prevtab, *nexttab, *tabin,*tabout;
- int i,j, nseg;
-
-/*Convert the table name to a pointer*/
- if (!(tabin = name_to_tab(catin, tabname, seg)))
- return RETURN_ERROR;
-
- nseg = seg?1:tabin->nseg;
-
-/*Check if a similar table doesn't already exist in the dest. cat */
- if ((outtab = name_to_tab(catout, tabname, 0)))
- {
- if ((outtab->naxis != 2)
- || (outtab->bitpix!=8)
- || strcmp(outtab->xtension,tabin->xtension)
- || (outtab->tfields != tabin->tfields)
- || (outtab->naxisn[0] != tabin->naxisn[0]))
- return RETURN_ERROR;
- prevtab = outtab;
- for (i=0; i<outtab->nseg-1; i++)
- prevtab = prevtab->nexttab;
- nexttab = prevtab->nexttab;
- outtab->nseg += nseg;
- }
- else
- {
- prevtab = nexttab = NULL;
- catout->ntab++;
- }
-
-/*Now copy each segment of the original table*/
- for (i=nseg; i--;)
- {
-/*---First, allocate memory and copy data */
- QCALLOC(tabout, tabstruct, 1);
- *tabout = *tabin;
- if (tabin->naxis)
- QMEMCPY(tabin->naxisn, tabout->naxisn, int, tabin->naxis);
- if (tabin->headbuf)
- QMEMCPY(tabin->headbuf, tabout->headbuf, char, tabin->headnblock*FBSIZE);
- if (tabin->bodybuf)
- QMEMCPY(tabin->bodybuf, tabout->bodybuf, char, tabin->tabsize);
-
- key = tabin->key;
- tabout->key = NULL;
- tabout->nkey = 0;
- for (j=tabin->nkey; j--;)
- {
- copy_key(tabin, key->name, tabout, 0);
- key = key->nextkey;
- }
-
-/*---Then, update the links */
- if (prevtab)
- {
- prevtab->nexttab = tabout;
- tabout->prevtab = prevtab;
- tabout->seg = prevtab->seg+1;
- tabout->nseg = 0;
- }
- else
- {
- outtab = tabout;
- outtab->prevtab = NULL;
- tabout->seg = 1;
- }
- tabin = tabin->nexttab;
- prevtab = tabout;
- }
-
-/*place the new chain of table-segments within the catalog (tricky, isn't it?)*/
- if (!nexttab)
-/*--if the table is new */
- {
- nexttab = pos_to_tab(catout, pos, 0);
- outtab->prevtab = nexttab->prevtab;
- nexttab->prevtab->nexttab = outtab;
- }
-
- prevtab->nexttab = nexttab;
- nexttab->prevtab = prevtab;
-
- return RETURN_OK;
- }
-
-
-/****** copy_tabs **************************************************************
-PROTO int copy_tabs(catstruct *catin, catstruct *catout)
-PURPOSE Copy all tables from one catalog to another.
-INPUT Pointer to the original catalog,
- Pointer to the destination catalog,
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise
- (for instance if there were tabs that were not binary-tables, and
- therefore that were not copied).
-NOTES If a table with the same name and basic attributes already exists in
- the destination catalog, then the original table is appended to it.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int copy_tabs(catstruct *catin, catstruct *catout)
-
- {
- tabstruct *tab;
- int i, flag;
-
- if (!catin->tab)
- return RETURN_ERROR;
-
- tab = catin->tab->nexttab; /* skip the primary header */
- flag = RETURN_OK;
- for (i=catin->ntab-1; i--;)
- {
- flag |= copy_tab(catin, tab->extname, 0, catout, 0);
- while (!(tab=tab->nexttab)->nseg);
- }
-
- return flag;
- }
-
-/****** free_tab ***************************************************************
-PROTO void free_tab(tabstruct *tab)
-PURPOSE Free memory associated to a table pointer.
-INPUT Pointer to the table.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-void free_tab(tabstruct *tab)
-
- {
-
- free(tab->naxisn);
- free(tab->headbuf);
- free(tab->bodybuf);
- remove_keys(tab);
- free(tab);
-
- return;
- }
-
-
-/****** new_tab ****************************************************************
-PROTO tabstruct *new_tab(char *tabname)
-PURPOSE Create a new binary table.
-INPUT Name.
-OUTPUT A pointer to the new table.
-NOTES A defaut header is also created.
- No links are initialized.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-tabstruct *new_tab(char *tabname)
-
- {
- static char bintabtemplate[][80] = {
-"XTENSION= 'BINTABLE' / THIS IS A BINARY TABLE (FROM THE LDACTOOLS)",
-"BITPIX = 8 / ",
-"NAXIS = 2 / ",
-"NAXIS1 = 0 / BYTES PER ROW",
-"NAXIS2 = 0 / NUMBER OF ROWS",
-"PCOUNT = 0 / RANDOM PARAMETER COUNT",
-"GCOUNT = 1 / GROUP COUNT",
-"TFIELDS = 0 / FIELDS PER ROWS",
-"EXTNAME = 'WHOCARES' / TABLE NAME",
-"END "};
- tabstruct *tab;
- char *buf;
- int i;
-
- QCALLOC(tab, tabstruct, 1);
- strcpy(tab->xtension, "BINTABLE");
- strcpy(tab->extname, tabname);
- tab->naxis = 2;
- QCALLOC(tab->naxisn, int, tab->naxis);
- tab->bitpix = 8;
- tab->bytepix = 1;
- tab->pcount = 0;
- tab->gcount = 1;
- tab->seg = 1;
- tab->nseg = 1;
-/*Provide a new header*/
- QCALLOC(tab->headbuf, char, FBSIZE);
- memcpy(tab->headbuf, bintabtemplate, sizeof(bintabtemplate));
- for (buf = tab->headbuf, i=FBSIZE; i--; buf++)
- if (!*buf)
- *buf = ' ';
- tab->headnblock = 1;
-
- return tab;
- }
-
-
-/****** remove_tab *************************************************************
-PROTO int remove_tab(catstruct *cat, char *tabname, int seg)
-PURPOSE Remove a table from a catalog.
-INPUT Pointer to the catalog,
- Name of the table,
- Table segment (0 = all).
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES If tabname = "", the last table from the list is removed.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 30/11/98
- ***/
-int remove_tab(catstruct *cat, char *tabname, int seg)
-
- {
- tabstruct *tab, *prevtab, *nexttab;
- int i,nseg;
-
- if (!tabname || !cat->ntab || !cat->tab)
- return RETURN_ERROR;
-
- if (tabname[0])
- {
-/*--Convert the table name to a pointer*/
- if (!(tab = name_to_tab(cat, tabname, seg)))
- return RETURN_ERROR;
-/*--a small trick to simplify decisions afterwards*/
- if (seg && tab->nseg==1)
- seg = 0;
- }
- else
- {
- tab = cat->tab->prevtab;
- if (!seg)
- for (;!tab->nseg; tab = tab->prevtab);
- }
-
- prevtab = tab->prevtab;
- nseg = seg?1:tab->nseg;
-
-/*Free memory for each table segment*/
- for (i=nseg; i--;)
- {
- nexttab = tab->nexttab;
- if (cat->tab == tab)
- cat->tab = nexttab;
- free_tab(tab);
- tab = nexttab;
- }
-
- if (!seg)
- if (!--cat->ntab)
- {
- cat->tab = NULL;
- return RETURN_OK;
- }
-
-/*update the links of neighbours*/
- nexttab->prevtab = prevtab;
- prevtab->nexttab = nexttab;
-
- if (seg)
-/*--update status for each table segment*/
- {
- for (tab=prevtab;!tab->nseg; tab = tab->prevtab);
- for (nexttab=tab->nexttab,i=2;!nexttab->nseg;nexttab=nexttab->nexttab,i++);
- nexttab->seg = i;
- tab->nseg = i;
- tab->seg = 1;
- }
-
- return RETURN_OK;
- }
-
-
-/****** remove_tabs ************************************************************
-PROTO int remove_tabs(catstruct *cat)
-PURPOSE Remove all tables from a catalog.
-INPUT Pointer to the catalog.
-OUTPUT RETURN_OK if tabs were found, and RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/05/97
- ***/
-int remove_tabs(catstruct *cat)
-
- {
- int t;
-
- if (!cat->tab)
- return RETURN_ERROR;
-
- for (t=cat->ntab; t--;)
- remove_tab(cat, "",0);
-
- return RETURN_OK;
- }
-
-
-/****** update_tab *************************************************************
-PROTO int update_tab(tabstruct *tab)
-PURPOSE Update a table according to what's in the keys.
-INPUT Table structure.
-OUTPUT RETURN_OK if tab is a binary table, or RETURN_ERROR otherwise.
-NOTES The headbuf pointer in the catstruct might be reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/97
- ***/
-int update_tab(tabstruct *tab)
-
- {
- tabstruct *keytab;
- keystruct *key;
- int i,j, nobj, nbytes;
-
-/*Just pass if not a binary table*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || strncmp(tab->xtension, "BINTABLE", 8))
- return RETURN_ERROR;
-
-/*Well, not much to do if there are no keys!*/
- if (!(key = tab->key))
- return RETURN_OK;
-
- nobj = -1;
- keytab = NULL;
- nbytes = 0;
- for (i=tab->nkey; i--;)
- {
- if (keytab && !key->ptr && key->tab != keytab)
- error(EXIT_FAILURE, "*Error*: wrong reference table in ",
- key->name);
- if (nobj!=-1 && (nobj != key->nobj))
- error(EXIT_FAILURE, "*Error*: wrong number of elements in key ",
- key->name);
- keytab = key->tab;
- nobj = key->nobj;
-/*-- If the number of bytes per element is not set, recover it */
- if (!key->nbytes)
- {
- key->nbytes = t_size[key->ttype];
- for (j=key->naxis; j--;)
- key->nbytes *= key->naxisn[j];
- }
- nbytes += key->nbytes;
- key = key->nextkey;
- }
-
- tab->tabsize = nobj*nbytes;
- tab->naxisn[0] = nbytes;
- tab->naxisn[1] = nobj;
- tab->tfields = tab->nkey;
-
- return RETURN_OK;
- }
-
-
-/****** name_to_tab ************************************************************
-PROTO tabstruct *name_to_tab(catstruct *cat, char *tabname, int seg)
-PURPOSE Name search of a table in a catalog.
-INPUT Pointer to the catalog,
- Table name,
- Table segment (0 = first).
-OUTPUT The table pointer if the name was matched, and NULL otherwise.
-NOTES -
-VERSION 25/04/97
- ***/
-tabstruct *name_to_tab(catstruct *cat, char *tabname, int seg)
-
- {
- tabstruct *tab;
- int i;
-
- tab = cat->tab;
- for (i=cat->ntab; strcmp(tabname,tab->extname) && i--;)
- while (!(tab=tab->nexttab)->nseg);
-
- if (i<0)
- return NULL;
-
- if (seg)
- {
- for (;tab->seg!=seg && !tab->nexttab->nseg; tab=tab->nexttab);
- return tab->seg==seg?tab:NULL;
- }
-
- return tab;
- }
-
-
-/****** pos_to_tab *************************************************************
-PROTO tabstruct *pos_to_tab(catstruct *cat, int pos, int seg)
-PURPOSE Position search of a table in a catalog.
-INPUT Pointer to the catalog,
- Position of the table,
- Table segment (0 = first).
-OUTPUT The table pointer if the table exists at the given position, and the
- pointer to the primary ``table'' otherwise.
-NOTES pos = 1 means the first table after the primary one.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-tabstruct *pos_to_tab(catstruct *cat, int pos, int seg)
-
- {
- tabstruct *tab;
- int i;
-
- tab = cat->tab;
- for (i=0; i!=pos && i<cat->ntab; i++)
- while (!(tab=tab->nexttab)->nseg);
-
- if (seg)
- for (;tab->seg!=seg && !tab->nexttab->nseg; tab=tab->nexttab);
-
- return i<cat->ntab?tab:cat->tab;
- }
-
-/****** tabs_list **************************************************************
-PROTO char **tabs_list(catstruct *cat, int *n)
-PURPOSE List all tables in a catalog.
-INPUT Pointer to the catalog,
- Pointer to the number of names in that list.
-OUTPUT A list of all table names.
-NOTES -.
-AUTHOR E.R. Deul (Leiden observatory)
-VERSION ??/??/96
- ***/
-char **tabs_list(catstruct *cat, int *n)
-
- {
- tabstruct *tab;
- int i;
- char **names;
-
- tab = cat->tab;
- QCALLOC(names, char *, cat->ntab);
- for (i=0; i<cat->ntab; i++) {
- QCALLOC(names[i], char, MAXCHARS);
- strcpy(names[i],tab->extname);
- while (!(tab=tab->nexttab)->nseg);
- }
- *n = cat->ntab;
- return names;
- }
-
-/****** tabs_row_len ***********************************************************
-PROTO int tab_row_len(char *file, char *tabname)
-PURPOSE Return the row length in bytes of a given table in a given catalog.
-INPUT File pointer.
-OUTPUT Table size (bytes)
-NOTES -.
-AUTHOR E.R. Deul (Leiden observatory)
-VERSION ??/??/96
- ***/
-int tab_row_len(char *file, char *tabname)
-
-{
- catstruct *tcat;
- tabstruct *tab;
- int retcode = -1;
-
- if ((tcat = read_cat(file)) != NULL) {
- if ((tab = name_to_tab(tcat, tabname, 0)) != NULL) {
- retcode = tab->naxisn[0];
- free_tab(tab);
- }
- close_cat(tcat);
- free_cat(tcat,1);
- }
- return retcode;
-}
-
diff --git a/external/psfex/source/fitsutil.c b/external/psfex/source/fitsutil.c
deleted file mode 100644
index eb7013a..0000000
--- a/external/psfex/source/fitsutil.c
+++ /dev/null
@@ -1,476 +0,0 @@
-/*
- fitsutil.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: functions for handling FITS keywords.
-*
-* Last modify: 30/09/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** fitsadd ***************************************************************
-PROTO int fitsadd(char *fitsbuf, char *keyword, char *comment)
-PURPOSE Write a FITS keyword in a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be created,
- a comment to put beyond the slash, or next to a COMMENT or HISTORY.
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES For all keywords except commentary ones (like COMMENT, HISTORY or
- blank), it is checked that they do not exist already.
- Enough memory should be provided for the FITS header to contain one
- more line of 80 char.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int fitsadd(char *fitsbuf, char *keyword, char *comment)
-
- {
- static char histokeys[][12] = {"COMMENT ", "HISTORY ", " ", ""};
- char *key_ptr;
- static char str[82];
- int headpos, commentflag;
-
-
- commentflag = findkey(keyword, (char *)histokeys, 12)==RETURN_ERROR?0:1;
- if (commentflag || (headpos = fitsfind(fitsbuf, keyword)) < 0)
- {
- headpos = fitsfind(fitsbuf, "END ");
- key_ptr = fitsbuf+80*headpos;
- memcpy(key_ptr+80, key_ptr, 80);
-
- if (commentflag)
- sprintf(str, "%-8.8s%-72.72s",
- keyword, comment?comment:" ");
- else
- sprintf(str, "%-8.8s= / %-47.47s",
- keyword, comment?comment:" ");
-
- memcpy(key_ptr, str, 80);
- }
-
- return headpos;
- }
-
-
-/****** fitsfind **************************************************************
-PROTO int fitsfind(char *fitsbuf, char *keyword)
-PURPOSE Search for a FITS keyword in a FITS header.
-INPUT pointer to the FITS buffer,
- name of the keyword to search for.
-OUTPUT position in lines of 80 char (0=first) of the keyword if it was
- found, RETURN_ERROR otherwise.
-NOTES The buffer MUST contain the ``END '' keyword.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int fitsfind(char *fitsbuf, char *keyword)
-
- {
- char *ptr;
- int i, len;
-
- len = strlen(keyword);
- for (i=0; strncmp(ptr=&fitsbuf[80*i], "END ", 8); i++)
- if (!wstrncmp(ptr, keyword, len))
- return i;
- if (strncmp(keyword, "END ", 8))
- return RETURN_ERROR;
- else
- return i;
- }
-
-
-/****** fitsnfind *************************************************************
-PROTO char *fitsnfind(char *fitsbuf, char *str, int nblock)
-PURPOSE Search for a FITS keyword in a fits header of nblock blocks.
-INPUT pointer to the FITS buffer,
- name of the keyword to search for,
- number of FITS blocks (2880 bytes each).
-OUTPUT pointer at the keyword position if it was found, NULL otherwise.
-NOTES No need for an ``END '' keyword.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-char *fitsnfind(char *fitsbuf, char *str, int nblock)
- {
- int i;
-
- for (i=36*nblock;i--; fitsbuf+=80)
- if (!strncmp(fitsbuf, str, strlen(str)))
- return fitsbuf;
-
- return (char *)NULL;
- }
-
-
-/****** fitspick **************************************************************
-PROTO int fitspick(char *fitsline, char *keyword, void *ptr, h_type *htype,
- t_type *ttype, char *comment)
-
-PURPOSE Pick up FITS keyword,content,type and comment in a fits header line.
-INPUT pointer to the current line of FITS buffer,
- pointer to a char * (where to put the keyword),
- pointer to ``where to put the data'',
- pointer to ``where to put the h_type'',
- pointer to ``where to put the t_type'',
- pointer to a char * (where to put the comment).
-OUTPUT RETURN_OK if something was found, RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory),
- E.R. Deul
- E.R. Deul - Handling of NaN
-VERSION 15/09/97
- ***/
-int fitspick(char *fitsline, char *keyword, void *ptr, h_type *htype,
- t_type *ttype, char *comment)
-
- {
- char *fptr, *cptr;
- int i;
-
-/*First, get the keyword*/
- memcpy(keyword, fitsline, 8);
- keyword[8] = 0;
-
-/*Handle comments*/
- if ((int)fitsline[8] != '=')
- {
- if (strncmp(keyword, "COMMENT ", 8)
- && strncmp(keyword, "HISTORY ", 8)
- && strncmp(keyword, "HIERARCH", 8)
- && strncmp(keyword, " ", 8))
- return RETURN_ERROR;
- memcpy(comment, fitsline+8, 72);
- comment[72] = 0;
- *htype = H_COMMENT;
- *ttype = T_STRING;
- return RETURN_OK;
- }
-
-/*Handle character strings*/
- if ((int)fitsline[10] == '\'')
- {
- cptr = ptr;
- for (fptr = fitsline + (i=11); i<80 && *fptr!=(char)'\''; i++)
- *cptr++ = *fptr++;
- *cptr = 0;
- *htype = H_STRING;
- *ttype = T_STRING;
- }
-/*Handle booleans*/
- else if (fitsline[29] == (char)'T' || fitsline[29] == (char)'F')
- {
- *((BYTE *)ptr) = fitsline[29]==(char)'T'?1:0;
- *htype = H_BOOL;
- *ttype = T_BYTE;
- }
- else
- {
- for (fptr = fitsline + (i=10); i<30 && *(fptr++)!=(char)'.'; i++);
-/*Handle floats*/
- if (i<30
- || !strncmp(keyword, "CRVAL",5)
- || !strncmp(keyword, "2MULST",6)
- || !strncmp(keyword, "2MUUTIME",8)
- || !strncmp(keyword, "2MUAZIMU",8)
- || strncmp(fitsline+11, "NaN", 3) == 0)
- /* ^--- He!! temporary fix EB 20/03/96*/
- /* ^--- He!! temporary fix ED 24/12/96*/
- {
- if (strncmp(fitsline+11, "NaN", 3) == 0) {
- *((double *)ptr) = -1.e-100;
- } else {
- fixexponent(fitsline);
- *((double *)ptr) = atof(fitsline+10);
- }
- *htype = H_FLOAT;
- *ttype = T_DOUBLE;
- }
- else
-/*Handle ints*/
- {
- *((int *)ptr) = atoi(fitsline+10);
- *htype = H_INT;
- *ttype = T_LONG;
- }
- }
-
-/*Store comment if it is found*/
- for (fptr = fitsline + (i=30); i<80; i++)
- if (*(fptr++) == (char)'/')
- while (++i<80)
- *(comment++) = *(fptr++);
-
- *comment = 0;
-
- return RETURN_OK;
- }
-
-
-/****** fitsread **************************************************************
-PROTO int fitsread(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-PURPOSE Read a FITS keyword in a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be read,
- pointer where to put the read data,
- h_type of the data to be read (see fitscat.h),
- t_type of the data to be read (see fitscat.h).
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES The buffer MUST contain the ``END '' keyword.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 29/09/99
- ***/
-int fitsread(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-
- {
- int i,pos;
- static char s[4], str[82];
- char *st, *st2;
-
- if ((pos = fitsfind(fitsbuf, keyword)) < 0)
- return RETURN_ERROR;
-
- strncpy(str,fitsbuf+80*pos,80);
- str[80] = '\0';
-
- switch(htype)
- {
- case H_INT: if (ttype == T_SHORT)
- sscanf(str+10, " %hd", (short *)ptr);
- else
- sscanf(str+10, " %d", (LONG *)ptr);
- break;
-
- case H_FLOAT:
- case H_EXPO: fixexponent(str);
- if (ttype == T_DOUBLE)
- sscanf(str+10, " %lf", (double *)ptr);
- else
- sscanf(str+10, " %f", (float *)ptr);
- break;
-
- case H_BOOL: sscanf(str+10, "%1s", s);
- *(int *)ptr = ((int)s[0] == 'T') ? 1 : 0;
- break;
-
- case H_STRING: st = ptr;
- st2= str+10;
- for (i=70; i-- && *(st2++)!=(char)'\'';);
- while (i-->0)
- {
- if (*st2 == '\'' && *(++st2) != '\'')
- break;
- *(st++) = *(st2++);
- }
- do
- {
- *(st--) = (char)'\0';
- } while (st>(char *)ptr && (*st == (char)' '));
- break;
-
- case H_COMMENT: strcpy(ptr,str+9);
- break;
-
- case H_HCOMMENT: strcpy(ptr,str+33);
- break;
-
- default: error(EXIT_FAILURE,
- "*Internal Error*: Unknown FITS type in ",
- "fitsread()");
- break;
- }
-
- return RETURN_OK;
- }
-
-
-/****** fitsremove ************************************************************
-PROTO int fitsremove(char *fitsbuf, char *keyword)
-PURPOSE Remove one (or more) FITS keyword from a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be created.
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES '?' wildcard allowed;
- Don't remove the ``END'' keyword with this!!!
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/04/99
- ***/
-
-int fitsremove(char *fitsbuf, char *keyword)
-
- {
- char *cp1,*cp2;
- int endpos,pos, i,n;
-
- endpos = fitsfind(fitsbuf, "END ");
- for (n=0; (pos = fitsfind(fitsbuf, keyword))>=0; n++, endpos--)
- for (cp1=fitsbuf+80*(pos+1), cp2=fitsbuf+80*pos, i=80*(endpos - pos); i--;)
- *(cp2++) = *(cp1++);
-
- if (!n)
- return RETURN_ERROR;
-
- memset(fitsbuf+80*(endpos+1), ' ', 80*n);
-
- return RETURN_OK;
- }
-
-
-/****** fitswrite *************************************************************
-PROTO int fitswrite(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-PURPOSE Write a FITS keyword in a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be written,
- pointer where to retrieve the data,
- h_type of the data to be written (see fitscat.h),
- t_type of the data to be written (see fitscat.h).
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES The buffer MUST contain the ``END '' keyword.
- The keyword must already exist in the buffer (use fitsadd()).
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 29/09/99
- ***/
-int fitswrite(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-
- {
- int i, l, pos, posoff, flag;
- static char str[81],str2[81];
- char *cstr, *cstr1,*cstr2,
- c;
-
- if ((pos = fitsfind(fitsbuf, keyword)) < 0)
- return RETURN_ERROR;
- posoff = 10;
- fitsbuf += 80*pos;
- switch(htype)
- {
- case H_INT: sprintf(str, "%20d", (ttype==T_SHORT)?
- *(short *)ptr: *(int *)ptr);
- break;
-
- case H_FLOAT: sprintf(str, " %12.4f", (ttype==T_DOUBLE)?
- *(double *)ptr: *(float *)ptr);
- break;
-
- case H_EXPO: sprintf(str, " %16.9e", (ttype==T_DOUBLE)?
- *(double *)ptr: *(float *)ptr);
- break;
-
- case H_BOOL: if (*(int *)ptr)
- sprintf(str, " T");
- else
- sprintf(str, " F");
- break;
-
- case H_STRING: /* Handle the famous quote */
- cstr1 = (char *)ptr;
- cstr2 = str2;
- for (i=0; i<80; i++)
- if (!(c=*(cstr2++) = *(cstr1++)))
- break;
- else if (c == '\'')
- {
- *(cstr2++) = '\'';
- i++;
- }
- if (strlen(str2)<=18)
- {
- sprintf(str, "'%-18.18s ", str2);
- cstr = str+18;
- i = 10;
- }
- else
- {
- sprintf(str, "'%-68.68s ", str2);
- cstr = str+68;
- i = 60;
- }
- for (; i-- && *cstr==(char)' '; cstr--);
- *(++cstr) = (char)'\'';
- if (i>9)
- *(++cstr) = 0;
- break;
-
- case H_COMMENT: sprintf(str, "%-70s", (char *)ptr);
- posoff = 9;
- break;
-
- /* Special case of ``half-comments'' */
- case H_HCOMMENT: sprintf(str, " / %-47s", (char *)ptr);
- posoff = 30;
- break;
-
- default: error(EXIT_FAILURE,
- "*FATAL ERROR*: Unknown FITS type in ",
- "fitswrite()");
- break;
- }
-
-
-/* Now the tricky problem of (former) comments */
- flag=1;
- cstr = fitsbuf+10;
- for (i=71; --i; cstr++)
- {
- if (*cstr=='\'')
- flag ^= 1;
- else if (flag && *cstr=='/')
- break;
- }
- if (posoff==10 && i && (l=69-strlen(str))>0)
- {
- strncpy(str2, cstr, i);
- str2[i+1] = 0;
- strcat(str, " ");
- strncat(str, str2, l);
- }
-
- memset(fitsbuf+9, ' ', 71);
- fitsbuf += posoff;
-
-/* Finally copy the result to the right place (except the trailing zero) */
- for (cstr = str; *cstr; *(fitsbuf++) = *(cstr++));
-
- return RETURN_OK;
- }
-
-
-/****** fixexponent ***********************************************************
-PROTO void fixexponent(char *s)
-PURPOSE Replaces the FORTRAN 'D' exponent sign to 'E' in a FITS line.
-INPUT FITS line
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-void fixexponent(char *s)
-
- {
- int i;
-
- s += 9;
- for (i=71; (int)*s != '/' && i--; s++)
- if ((int)*s == 'D' || (int)*s == 'd')
- *s = (char)'E';
-
- return;
- }
-
-
diff --git a/external/psfex/source/fitsutil.h b/external/psfex/source/fitsutil.h
deleted file mode 100644
index 9e6ea1f..0000000
--- a/external/psfex/source/fitsutil.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- fitsutil.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Specific definitions for FITS functions
-*
-* Last modify: 21/12/95
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-
-/*--------------------------- FITS BitPix coding ----------------------------*/
-
-#define BP_BYTE 8
-#define BP_SHORT 16
-#define BP_LONG 32
-#define BP_FLOAT (-32)
-#define BP_DOUBLE (-64)
-
-/*--------------------------------- flags -----------------------------------*/
-
-/* access flag within a catalog */
-
-#define FROM_START 0 /* operation should start from the
- beginning of the file */
-#define FROM_HERE 1 /* operation should start from the
- current location within the file */
-
-/*-------------------------------- macros -----------------------------------*/
-
-/* size (in bytes) of one FITS block */
-
-#define FBSIZE 2880L
-
-/* FITS size after adding padding */
-
-#define PADTOTAL(x) (((x-1)/FBSIZE+1)*FBSIZE)
-
-/* extra size to add for padding */
-
-#define PADEXTRA(x) ((FBSIZE - (x%FBSIZE))% FBSIZE)
-
-
diff --git a/external/psfex/source/fitswrite.c b/external/psfex/source/fitswrite.c
deleted file mode 100644
index 518912d..0000000
--- a/external/psfex/source/fitswrite.c
+++ /dev/null
@@ -1,419 +0,0 @@
-/*
- fitswrite.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: low-level functions for writing LDAC FITS catalogs.
-*
-* Last modify: 13/11/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-char *lineout_buf, padbuf[FBSIZE];
-int lineout_size, nlineout;
-
-/****** save_cat ***************************************************************
-PROTO void save_cat(catstruct *cat, char *filename)
-PURPOSE Save a FITS catalog with name filename.
-INPUT catalog structure,
- filename.
-OUTPUT -.
-NOTES Any preexisting file with name filename is overwritten.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 07/04/97
- ***/
-void save_cat(catstruct *cat, char *filename)
-
- {
- tabstruct *tab;
- int i;
-
- strcpy(cat->filename, filename);
- if (open_cat(cat, WRITE_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: cannot open for writing ", filename);
-
- tab = cat->tab;
-/*Go through each segment in the right order to save data*/
- for (i=cat->ntab; i--;)
- {
- save_tab(cat, tab);
- while (!((tab=tab->nexttab)->nseg));
- }
-
- if (close_cat(cat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing", cat->filename);
-
- return;
- }
-
-
-/****** save_tab **************************************************************
-PROTO void save_tab(catstruct *cat, tabstruct *tab)
-PURPOSE Save a FITS catalog with name filename.
-INPUT catalog structure,
- filename.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-void save_tab(catstruct *cat, tabstruct *tab)
-
- {
- catstruct *tabcat;
- keystruct *key;
- tabstruct *keytab;
- int b,j,k,o, nbytes,nkey,nobj,spoonful,
- size,tabsize, tabflag, larrayin,larrayout;
- char *buf, *inbuf, *outbuf, *fptr,*ptr;
-#ifdef BSWAP
- int esize;
-#endif
-
-/* Make the table parameters reflect its content*/
- update_tab(tab);
-/* The header itself*/
- tabflag = update_head(tab)==RETURN_OK?1:0;
- QFWRITE(tab->headbuf, tab->headnblock*FBSIZE, cat->file, cat->filename);
- tab->bodypos = ftell(cat->file);
-/* Allocate memory for the output buffer */
- tabsize = 0;
- if (tabflag)
- {
-/*-- If segment is a binary table, save it row by row */
- QMALLOC(outbuf, char, (larrayout = tab->naxisn[0]));
- nkey = tab->nkey;
- tabsize = 0;
- for (j=tab->nseg; j--;)
- {
- update_tab(tab);
-/*---- Scan keys to find the reference tab and other things*/
- keytab = NULL;
- key = tab->key;
- for (k=nkey; k--; key = key->nextkey)
- if (!key->ptr)
- {
- keytab = key->tab;
- tabcat = keytab->cat;
- }
-/*---- If table contains some keys with no ptrs, we have to access a file */
- if (keytab)
- {
- QMALLOC(inbuf, char, (larrayin = keytab->naxisn[0]));
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, keytab->bodypos, SEEK_SET, tabcat->filename);
- }
- nobj = tab->naxisn[1];
- for (o=0; o<nobj; o++)
- {
- if (keytab)
- QFREAD(inbuf, larrayin, tabcat->file, tabcat->filename);
- fptr = outbuf;
- for (k=nkey; k--; key = key->nextkey)
- {
- nbytes = key->nbytes;
- ptr = key->ptr? (char *)key->ptr+nbytes*o:inbuf+key->pos;
- for (b=nbytes; b--;)
- *(fptr++) = *(ptr++);
-#ifdef BSWAP
- if (key->ptr)
- {
- esize = t_size[key->ttype];
- swapbytes(fptr-nbytes, esize, nbytes/esize);
- }
-#endif
- }
- QFWRITE(outbuf, larrayout, cat->file, cat->filename);
- }
- if (keytab)
- {
- free(inbuf);
- if (close_cat(tabcat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing",
- tabcat->filename);
- }
- tabsize += tab->tabsize;
- tab = tab->nexttab;
- }
- free(outbuf);
- }
- else
- {
-/*-- If segment is not a binary table, save it ``as it is'' */
-/*-- We use a limited-size buffer ``in case of'' */
- tabsize = size = tab->tabsize;
- if (tabsize)
- {
- if (tab->bodybuf)
- {
-/*------ A body is present in memory and needs to be written */
-#ifdef BSWAP
- swapbytes(tab->bodybuf, tab->bytepix, tabsize/tab->bytepix);
-#endif
- QFWRITE(tab->bodybuf, tabsize, cat->file, cat->filename);
-#ifdef BSWAP
- swapbytes(tab->bodybuf, tab->bytepix, tabsize/tab->bytepix);
-#endif
- }
- else
-/*------ The body should be copied from the source tab */
- {
- tabcat = tab->cat;
- spoonful = size<DATA_BUFSIZE?size:DATA_BUFSIZE;
- QMALLOC(buf, char, spoonful);
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, tab->bodypos, SEEK_SET, tabcat->filename);
- for (;size>0; size -= spoonful)
- {
- if (spoonful>size)
- spoonful = size;
- QFREAD(buf, spoonful, tabcat->file, tabcat->filename);
- QFWRITE(buf, spoonful, cat->file, cat->filename);
- }
- free(buf);
- if (close_cat(tabcat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing",
- tabcat->filename);
- }
- }
- }
-
-/* FITS padding*/
- size = PADEXTRA(tabsize);
- if (size)
- QFWRITE(padbuf, size, cat->file, cat->filename);
-
- return;
- }
-
-
-/****** init_writeobj *********************************************************
-PROTO void init_writeobj(catstruct *cat, tabstruct *tab)
-PURPOSE Prepare the writing of individual sources in a FITS table
-INPUT catalog structure,
- table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 23/01/97
- ***/
-void init_writeobj(catstruct *cat, tabstruct *tab)
-
- {
- keystruct *key;
- int k;
-
-/* Make the table parameters reflect its content*/
- update_tab(tab);
-/* The header itself */
- if (update_head(tab) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Not a binary table: ", tab->extname);
-
- QFWRITE(tab->headbuf, tab->headnblock*FBSIZE, cat->file, cat->filename);
-/* Store the current position */
- tab->bodypos = ftell(cat->file);
-
-/* Allocate memory for the output buffer (or increase it if done already) */
- if (lineout_buf)
- {
- if (lineout_size < tab->naxisn[0])
- {
- QREALLOC(lineout_buf, char, tab->naxisn[0]);
- lineout_size = tab->naxisn[0];
- }
- }
- else
- {
- QMALLOC(lineout_buf, char, tab->naxisn[0]);
- lineout_size = tab->naxisn[0];
- }
-
- nlineout++;
-
-/* Scan keys to check that memory has been allocated */
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (!key->ptr)
- error(EXIT_FAILURE, "*Error*: no memory allocated for ", key->name);
-
-/* No object written yet: initialize counter */
- tab->naxisn[1] = 0;
-
- return;
- }
-
-
-/****** write_obj *************************************************************
-PROTO int write_obj(tabstruct *tab)
-PURPOSE Write one individual source in a FITS table
-INPUT Destination catalog
- Table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 23/01/97
- ***/
-int write_obj(tabstruct *tab)
-
- {
- keystruct *key;
- char *pin, *pout;
- int b,k;
-#ifdef BSWAP
- int esize;
-#endif
-
- key = tab->key;
- pout = lineout_buf;
- for (k=tab->nkey; k--; key = key->nextkey)
- {
- pin = key->ptr;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(pin, esize, key->nbytes/esize);
-#endif
- for (b=key->nbytes; b--;)
- *(pout++) = *(pin++);
- }
-
- QFWRITE(lineout_buf, *tab->naxisn, tab->cat->file, tab->cat->filename);
-
- return ++tab->naxisn[1];
- }
-
-
-/****** end_writeobj **********************************************************
-PROTO void end_writeobj(catstruct *cat, tabstruct *tab)
-PURPOSE End the writing of individual sources in a FITS table
-INPUT catalog structure,
- table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/11/97
- ***/
-void end_writeobj(catstruct *cat, tabstruct *tab)
-
- {
- keystruct *key;
- int k, pos, size;
-
-/* Make the table parameters reflect its content*/
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- key->nobj = tab->naxisn[1];
- update_tab(tab);
-/* The header itself */
- if (update_head(tab) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Not a binary table: ", tab->extname);
-
-/*--FITS padding*/
- size = PADEXTRA(tab->tabsize);
- if (size)
- QFWRITE(padbuf, size, cat->file, cat->filename);
- pos = ftell(cat->file);
- QFSEEK(cat->file,tab->bodypos-FBSIZE*tab->headnblock,SEEK_SET,cat->filename);
- QFWRITE(tab->headbuf, FBSIZE*tab->headnblock, cat->file, cat->filename);
- QFSEEK(cat->file, pos, SEEK_SET, cat->filename);
-
- if (!(--nlineout))
- {
- free(lineout_buf);
- lineout_buf = NULL;
- lineout_size = 0;
- }
-
- return;
- }
-
-
-/****** print_obj *************************************************************
-PROTO void print_obj(FILE *stream, tabstruct *tab)
-PURPOSE Print one individual source to the output stream.
-INPUT Output stream
- Table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/06/97
- ***/
-void print_obj(FILE *stream, tabstruct *tab)
-
- {
- keystruct *key;
- char *ptr;
- int i,k, esize;
-
- if (!(key = tab->key))
- error(EXIT_FAILURE, "*Error*: no key to print in table ", tab->extname);
-
- for (k=tab->nkey; k--; key = key->nextkey)
- {
- esize = t_size[key->ttype];
- ptr = key->ptr;
- for (i = key->nbytes/esize; i--; ptr += esize)
- switch(key->ttype)
- {
- case T_SHORT:
- fprintf(stream, *key->printf?key->printf:"%d", *(short *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_LONG:
- fprintf(stream, *key->printf?key->printf:"%d", *(int *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_FLOAT:
- fprintf(stream, *key->printf?key->printf:"%g", *(float *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_DOUBLE:
- fprintf(stream, *key->printf?key->printf:"%f", *(double *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_BYTE:
- if (key->htype==H_BOOL)
- {
- if (*ptr)
- fprintf(stream, "T");
- else
- fprintf(stream, "F");
- }
- else
- fprintf(stream, key->printf?key->printf:"%d", (int)*ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_STRING:
- fprintf(stream, "%c", (int)*ptr);
- break;
- default:
- error(EXIT_FAILURE, "*FATAL ERROR*: Unknown FITS type in ",
- "show_keys()");
- }
- if (k)
- putc(' ', stream);
- }
-
- putc('\n', stream);
-
- return;
- }
-
diff --git a/external/psfex/source/globals.h b/external/psfex/source/globals.h
deleted file mode 100644
index 5b35e9a..0000000
--- a/external/psfex/source/globals.h
+++ /dev/null
@@ -1,33 +0,0 @@
- /*
- globals.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SOMfit
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: global declarations.
-*
-* Last modify: 01/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------- miscellaneous variables ---------------------------*/
-prefstruct prefs;
-
-/*------------------------------- functions ---------------------------------*/
-extern void error(int, char *, char *),
- makesom(char **, int),
- readprefs(char *filename, char **argkey,
- char **argval, int narg),
- swapbytes(void *, int, int),
- useprefs(void),
- warning(char *, char *);
-
-extern int copyvignet_center(float *, int, int, float *,
- int, int, float, float, float, float, float);
-
-
-extern float hmedian(float *ra, int n);
diff --git a/external/psfex/source/key.h b/external/psfex/source/key.h
deleted file mode 100644
index 8f107f8..0000000
--- a/external/psfex/source/key.h
+++ /dev/null
@@ -1,43 +0,0 @@
- /*
- key.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SOMfit
-*
-* Author: E.BERTIN (IAP, Leiden & ESO)
-*
-* Contents: Keyword structure.
-*
-* Last modify: 10/11/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants -------------------------------*/
-
-#define FIND_STRICT 0
-#define FIND_NOSTRICT 1
-
-/*--------------------------- structure definitions -------------------------*/
-/* Preference keyword */
-typedef struct
- {
- char name[16];
- enum {P_FLOAT, P_INT, P_STRING, P_BOOL, P_KEY, P_INTLIST, P_FLOATLIST,
- P_KEYLIST, P_STRINGLIST} type;
- void *ptr; /* Pointer to the keyword value */
- int imin, imax; /* Range for int's */
- double dmin, dmax; /* Range for doubles */
- char keylist[16][16]; /* List of keywords */
- int nlistmin; /* Minimum number of list members */
- int nlistmax; /* Maximum number of list members */
- int *nlistptr; /* Ptr to store the nb of read params*/
- int flag;
- } pkeystruct;
-
-/*---------------------------------- protos --------------------------------*/
-
-int cistrcmp(char *cs, char *ct, int mode),
- findkeys(char *str, char key[][16], int mode);
-
diff --git a/external/psfex/source/main.c b/external/psfex/source/main.c
deleted file mode 100644
index ec9b1dd..0000000
--- a/external/psfex/source/main.c
+++ /dev/null
@@ -1,92 +0,0 @@
- /*
- main.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: parsing and main loop.
-*
-* Last modify: 02/06/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-
-#define SYNTAX \
-"psfex input_Catalog(s) [-c <config_file>] [-<keyword> <value>]\n\n"
-
-/********************************** main ************************************/
-
-main(int argc, char *argv[])
- {
- int a,ab,na, narg;
- char **argkey, **argval;
-
- if (argc<2)
- {
- fprintf(OUTPUT, "\n %s Version %s\n", BANNER, VERSION);
- fprintf(OUTPUT, "\nFor information, please contact: %s\n", COPYRIGHT);
- error(EXIT_SUCCESS, "SYNTAX: ", SYNTAX);
- }
-
- QMALLOC(argkey, char *, argc);
- QMALLOC(argval, char *, argc);
-
-/* Default parameters */
- ab=na=0;
- narg = 0;
- strcpy(prefs.prefs_name, "default.psfex");
- prefs.verbose_type = NORM;
-
- for (a=1; a<argc; a++)
- {
- if (argv[a][0] == '-' && a<(argc-1))
- {
- if (strlen(argv[a])<3)
- switch((int)tolower((int)argv[a][1]))
- {
- case 'c':
- strcpy(prefs.prefs_name, argv[++a]);
- break;
- default:
- error(EXIT_SUCCESS,"SYNTAX: ", SYNTAX);
- }
- else
- {
- argkey[narg] = &argv[a][1];
- argval[narg++] = argv[++a];
- }
- }
- else
- {
- for(ab = a; (a<argc) && (*argv[a]!='-'); a++);
- na = (a--) - ab;
- }
- }
-
- if (!na)
- error(EXIT_SUCCESS,"SYNTAX: ", SYNTAX);
-
- readprefs(prefs.prefs_name, argkey, argval, narg);
- useprefs();
- free(argkey);
- free(argval);
-
-
- makeit(argv+ab, na);
-
- NFPRINTF(OUTPUT, "All done");
- NPRINTF(OUTPUT, "\n");
-
- exit(EXIT_SUCCESS);
- }
diff --git a/external/psfex/source/makeit.c b/external/psfex/source/makeit.c
deleted file mode 100644
index 384b153..0000000
--- a/external/psfex/source/makeit.c
+++ /dev/null
@@ -1,133 +0,0 @@
- /*
- makeit.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Learning and testing.
-*
-* Last modify: 13/10/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "sample.h"
-#include "psf.h"
-#include "vignet.h"
-#include "check.h"
-
-/********************************** makeit ***********************************/
-/*
-*/
-void makeit(char **incatnames, int ncat)
-
- {
- setstruct *set;
- psfstruct *psf;
- pcstruct *pc, *pcc, *pco;
- static char str[MAXCHAR];
- float psfstep;
- int i;
-
-/* Load all the samples */
- NFPRINTF(OUTPUT,"Loading samples...");
- set = load_samples(incatnames, ncat);
-
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "%d samples loaded\n", set->nsample);
-
- if (!set->nsample)
- error(EXIT_FAILURE, "*Error*: No appropriate source found!!","");
-
- psfstep = (float)(prefs.psf_step? prefs.psf_step
- : (set->fwhm/2.35)*(1.0-1.0/INTERPFAC));
-
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "PSF sampled each %.2f pixel%s (%s)\n",
- psfstep,
- psfstep>=2.0?"s":"",
- prefs.psf_step?"manual":"automatic");
-
-/* Init the PSF */
- NFPRINTF(OUTPUT,"Initializing PSF modules...");
- psf = psf_init(prefs.context_name, prefs.context_group, prefs.ncontext_name,
- prefs.group_deg, prefs.ngroup_deg,
- set->retisize[0], set->retisize[1],
- psfstep,
- set->nsample);
-
-/* Make the basic PSF-model (1st pass) */
- NFPRINTF(OUTPUT,"Modeling the PSF.");
- psf_make(psf, set);
-
-/* Remove bad PSF candidates */
- psf_clean(psf, set, 1);
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "%d samples accepted\n", set->nsample);
-
-/* Make the basic PSF-model (2nd pass) */
- NFPRINTF(OUTPUT,"Modeling the PSF.");
- psf_make(psf, set);
-
-/* Remove bad PSF candidates */
- psf_clean(psf, set, 1);
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "%d samples accepted\n", set->nsample);
-
-/* Refine the PSF-model */
- psf_refine(psf, set, prefs.nsuper);
-
-/* Just check the Chi2 */
- psf_clean(psf, set, 0);
- NFPRINTF(OUTPUT, "");
-
-/* Load the PCs */
- if (prefs.pc_flag)
- {
- NFPRINTF(OUTPUT,"Including principal components...");
- pc = pc_load(prefs.pc_name);
- pcc = pc_convolve(pc, psf);
- pco = pc_orthogon(pc, pcc, psf->pixstep);
- }
- else
- pc = pcc = pco = NULL;
-
-/* Save result */
- NFPRINTF(OUTPUT,"Saving the PSF description...");
-
- psf_save(psf, pco, pc, prefs.psf_name);
-
-/* Save "Check-images" */
- for (i=0; i<prefs.ncheck_type; i++)
- if (prefs.check_type[i])
- {
- sprintf(str, "Saving CHECK-image #%d...", i+1);
- NFPRINTF(OUTPUT, str);
- psf_writecheck(psf, pco, set, prefs.check_name[i], prefs.check_type[i]);
- }
-
-/* Free memory */
- end_set(set);
- psf_end(psf);
- if (prefs.pc_flag)
- {
- pc_end(pc);
- pc_end(pcc);
- pc_end(pco);
- }
-
- return;
- }
-
diff --git a/external/psfex/source/misc.c b/external/psfex/source/misc.c
deleted file mode 100644
index 0c5af29..0000000
--- a/external/psfex/source/misc.c
+++ /dev/null
@@ -1,143 +0,0 @@
- /*
- misc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: miscellaneous functions.
-*
-* Last modify: 01/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-
-
-/********************************* error ************************************/
-/*
-I hope it will never be used!
-*/
-void error(int num, char *msg1, char *msg2)
- {
- fprintf(stderr, "\n> %s%s\n\n",msg1,msg2);
- exit(num);
- }
-
-
-/******************************** hmedian ***********************************/
-/*
-Median using Heapsort algorithm (for float arrays) (based on Num.Rec algo.).
-Warning: changes the order of data!
-*/
-float hmedian(float *ra, int n)
-
- {
- int l, j, ir, i;
- float rra;
-
-
- if (n<2)
- return *ra;
- ra--;
- for (l = ((ir=n)>>1)+1;;)
- {
- if (l>1)
- rra = ra[--l];
- else
- {
- rra = ra[ir];
- ra[ir] = ra[1];
- if (--ir == 1)
- {
- ra[1] = rra;
- return n&1? ra[n/2+1] : (float)((ra[n/2]+ra[n/2+1])/2.0);
- }
- }
- for (j = (i=l)<<1; j <= ir;)
- {
- if (j < ir && ra[j] < ra[j+1])
- ++j;
- if (rra < ra[j])
- {
- ra[i] = ra[j];
- j += (i=j);
- }
- else
- j = ir + 1;
- }
- ra[i] = rra;
- }
-
-/* (the 'return' is inside the loop!!) */
- }
-
-
-/********************************* warning **********************************/
-/*
-Print a warning message on screen.
-*/
-void warning(char *msg1, char *msg2)
- {
- fprintf(OUTPUT, "\n> WARNING: %s%s\n\n",msg1,msg2);
- return;
- }
-
-
-/******************************* swapbytes **********************************/
-/*
-Swap bytes for doubles, longs and shorts (for DEC machines or PC for inst.).
-*/
-void swapbytes(void *ptr, int nb, int n)
- {
- char *cp;
- int j;
-
- cp = (char *)ptr;
-
- if (nb&4)
- {
- for (j=n; j--; cp+=4)
- {
- cp[0] ^= (cp[3]^=(cp[0]^=cp[3]));
- cp[1] ^= (cp[2]^=(cp[1]^=cp[2]));
- }
- return;
- }
-
- if (nb&2)
- {
- for (j=n; j--; cp+=2)
- cp[0] ^= (cp[1]^=(cp[0]^=cp[1]));
- return;
- }
-
- if (nb&1)
- return;
-
- if (nb&8)
- {
- for (j=n; j--; cp+=8)
- {
- cp[0] ^= (cp[7]^=(cp[0]^=cp[7]));
- cp[1] ^= (cp[6]^=(cp[1]^=cp[6]));
- cp[2] ^= (cp[5]^=(cp[2]^=cp[5]));
- cp[3] ^= (cp[4]^=(cp[3]^=cp[4]));
- }
- return;
- }
-
- error(EXIT_FAILURE, "*Internal Error*: Unknown size in ", "swapbytes()");
-
- return;
- }
-
diff --git a/external/psfex/source/pc.c b/external/psfex/source/pc.c
deleted file mode 100644
index 5726f12..0000000
--- a/external/psfex/source/pc.c
+++ /dev/null
@@ -1,532 +0,0 @@
- /*
- pc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Stuff related to Principal Component Analysis (PCA).
-*
-* Last modify: 01/09/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "fft.h"
-#include "sample.h"
-#include "poly.h"
-#include "psf.h"
-#include "vignet.h"
-
-/****** pc_end ***************************************************************
-PROTO void pc_end(pcstruct *pc)
-PURPOSE Free a PC structure and everything it contains.
-INPUT pcstruct pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 17/07/99
- ***/
-void pc_end(pcstruct *pc)
- {
- int i;
-
- free(pc->comp);
- free(pc->size);
- free(pc->mx2);
- free(pc->my2);
- free(pc->mxy);
- free(pc->flux);
- free(pc->bt);
- if (pc->code)
- {
- free(pc->code->pc);
- for (i=0; i<pc->code->nparam;i++)
- free(pc->code->param[i]);
- free(pc->code->param);
- free(pc->code);
- }
- free(pc);
-
- return;
- }
-
-
-/******************************** pc_convolve ********************************/
-/*
-Convolve the original PCs with the PSF components.
-*/
-pcstruct *pc_convolve(pcstruct *pc, psfstruct *psf)
- {
- pcstruct *pcc;
- codestruct *code;
- float *inputpsf,*inputpc,*output;
- int i,c,n, ncoeff, npc, npix1,npix2,npix3, ncode,nparam;
-/* Allocate memory for the convolved PC structure */
- QCALLOC(pcc, pcstruct, 1);
- pcc->dim = 2+1+1; /* 1 for the PSF components and 1 for the PCs */
- QMALLOC(pcc->size, int, pcc->dim);
-
- npc = pc->npc;
- ncoeff = psf->poly->ncoeff;
- pcc->npix = pcc->size[0] = psf->size[0];
- npix1 = (pcc->npix *= (pcc->size[1] = psf->size[1]));
- npix2 = (pcc->npix *= (pcc->size[2] = psf->size[2]));
- pcc->npix *= (pcc->size[3] = npc);
- pcc->npc = npc;
- QCALLOC(pcc->comp, float, pcc->npix);
- QMEMCPY(pc->mx2, pcc->mx2, double, npc);
- QMEMCPY(pc->my2, pcc->my2, double, npc);
- QMEMCPY(pc->mxy, pcc->mxy, double, npc);
- QMEMCPY(pc->flux, pcc->flux, double, npc);
- QMEMCPY(pc->bt, pcc->bt, double, npc);
- if (pc->code)
- {
- QMEMCPY(pc->code, pcc->code, codestruct, 1);
- code = pcc->code;
- ncode = code->ncode;
- nparam = code->nparam;
- QMEMCPY(pc->code->pc, code->pc, float, ncode*npc);
- QMALLOC(code->param, float *, nparam);
- for (i=0; i<nparam; i++)
- QMEMCPY(pc->code->param[i], code->param[i], float, ncode);
- }
-
- inputpsf = psf->comp;
- npix3 = pc->size[0]*pc->size[1];
- for (c=0; c<ncoeff; c++, inputpsf+=npix1)
- {
- output = pcc->comp+c*npix1;
- inputpc = pc->comp;
- for (n=0; n<npc; n++, inputpc+=npix3,output+=npix2)
- autoconv(inputpc, pc->size[0],pc->size[1],
- n?NULL:inputpsf, psf->size[0],psf->size[1],
- output, pcc->size[0],pcc->size[1]);
- }
-
-/* Free memory */
- autoconv(NULL,0,0,NULL,0,0,NULL,0,0);
-
- return pcc;
- }
-
-
-/******************************** pc_orthogon ********************************/
-/*
-Orthogonalize input PCs (using Gram-Schmidt).
-*/
-pcstruct *pc_orthogon(pcstruct *pc2, pcstruct *pc, float pixstep)
- {
- pcstruct *pco;
- codestruct *code;
- double *mat,*matt,*vec,*vect,
- val, norm;
- float *pix,*pixt, *opix,*opixt, *bopix,*bopixt, *ubopix,*ubopixt,
- *tpix,*tpixt, *bpix,*ubpix, *minicomp, *cpc, *cpc2,
- *flux,*dscale;
- int i,p,p2,p3,n, ncoeff, npc, npix,nbpix,nubpix, width,height,
- ncode, nparam;
-
-/* Allocate memory for the convolved PC structure */
- QCALLOC(pco, pcstruct, 1);
- *pco = *pc; /* the new PCs will have the same attributes */
- npc = pco->npc;
- QMEMCPY(pc->size, pco->size, int, pco->dim);
- QMEMCPY(pc->comp, pco->comp, float, pc->npix); /* Copy original pixels */
- QMEMCPY(pc->mx2, pco->mx2, double, npc);
- QMEMCPY(pc->my2, pco->my2, double, npc);
- QMEMCPY(pc->mxy, pco->mxy, double, npc);
- QMEMCPY(pc->flux, pco->flux, double, npc);
- QMEMCPY(pc->bt, pco->bt, double, npc);
- if (pc->code)
- {
- QMEMCPY(pc->code, pco->code, codestruct, 1);
- code = pco->code;
- ncode = code->ncode;
- nparam = code->nparam;
- QMEMCPY(pc->code->pc, code->pc, float, ncode*npc);
- QMALLOC(code->param, float *, nparam);
- for (i=0; i<nparam; i++)
- QMEMCPY(pc->code->param[i], code->param[i], float, ncode);
- }
- else
- ncode = 0;
- ncoeff = pco->dim>3?pco->size[2]:1;
- width = (int)(pco->size[0]*pixstep+0.4999);
- height = (int)(pco->size[1]*pixstep+0.4999);
- npix = width*height;
- nbpix = pco->size[0]*pco->size[1]*ncoeff;
- nubpix = pc2->size[0]*pc2->size[1];
-
- QMALLOC(minicomp, float, npix*ncoeff*npc);
- QMALLOC(tpix, float, npix*ncoeff);
- if (ncode)
- {
- QCALLOC(mat, double, npc*npc);
- QMALLOC(vec, double, npc);
- }
- opix = minicomp;
- bopix = pco->comp;
- ubopix = pc2->comp;
- for (p=0; p<npc; p++)
- {
-/*-- Resample the current PC */
- vignet_resample(bopix, pco->size[0], pco->size[1],
- opix, width, height, 0.5, 0.5, 1/pixstep, 1.0);
-/*-- Store the current vector before being overwritten */
- memcpy(tpix, opix, (size_t)(npix*ncoeff)*sizeof(float));
- pix=minicomp;
- bpix=pco->comp;
- ubpix = pc2->comp;
- if (ncode)
- mat[p*npc+p] = 1.0;
- for (p2=0; p2<p; p2++)
- {
- val = 0.0;
- tpixt=tpix;
- pixt=pix;
- for (n=npix; n--;)
- val += *(tpixt++)**(pixt++);
- opixt=opix;
- for (n=npix*ncoeff; n--;)
- *(opixt++) -= val**(pix++);
-/*---- Update the full-resolution, convolved PCs */
- bopixt=bopix;
- for (n=nbpix; n--;)
- *(bopixt++) -= val**(bpix++);
-/*---- Update the full-resolution, unconvolved PCs */
- ubopixt = ubopix;
- for (n=nubpix; n--;)
- *(ubopixt++) -= val**(ubpix++);
-/*---- Update the 2nd order moments */
- pc2->mx2[p] -= val*pc2->mx2[p2];
- pc2->my2[p] -= val*pc2->my2[p2];
- pc2->mxy[p] -= val*pc2->mxy[p2];
-/*---- Update the codebook transformation matrix, if available */
- if (ncode)
- for (p3=0;p3<npc;p3++)
- mat[p*npc+p3] -= val*mat[p2*npc+p3];
- }
-/*-- Normalize the previous vector */
- norm = 0.0;
- for (opixt=opix, n=npix; n--;)
- {
- val = *(opixt++);
- norm += val*val;
- }
- norm = sqrt(norm);
- for (n=npix*ncoeff; n--;)
- *(opix++) /= (float)norm;
-/*-- Update the full-resolution, convolved PCs */
- for (n=nbpix; n--;)
- *(bopix++) /= (float)norm;
-/*-- Update the full-resolution, unconvolved PCs */
- for (n=nubpix; n--;)
- *(ubopix++) /= (float)norm;
-/*---- Update the 2nd order moments */
- pc2->mx2[p] /= norm;
- pc2->my2[p] /= norm;
- pc2->mxy[p] /= norm;
-/*-- Update the codebook transformation matrix, if available */
- if (ncode)
- for (p2=0; p2<npc; p2++)
- mat[p*npc+p2] /= norm;
- }
-
- bopix = pco->comp;
- ubopix = pc2->comp;
-/* Normalize everything with respect to full-resolution convolved PCs */
- for (p=0; p<npc; p++)
- {
- norm = 0.0;
- bopixt = bopix;
- for (n=nbpix; n--;)
- {
- val = *(bopixt++);
- norm += val*val;
- }
- norm = sqrt(norm);
-/*-- Update the full-resolution, convolved PCs */
- for (n=nbpix; n--;)
- *(bopix++) /= (float)norm;
-/*-- Update the full-resolution, unconvolved PCs */
- for (n=nubpix; n--;)
- *(ubopix++) /= (float)norm;
-/*---- Update the 2nd order moments */
- pc2->mx2[p] /= norm;
- pc2->my2[p] /= norm;
- pc2->mxy[p] /= norm;
-/*-- Update the codebook transformation matrix, if available */
- if (ncode)
- for (p2=0; p2<npc; p2++)
- mat[p*npc+p2] /= norm;
- }
-
- if (ncode)
- {
-/*-- This may be subject to changes */
- flux = code->param[0];
- dscale = code->param[2];
-/*-- Invert the orthogonalization matrix */
- matinv(mat, npc);
-/*-- Derive the new flux components */
- cpc = code->pc;
- for (n=ncode; n--;)
- {
-/*---- convert the codebook vectors */
- vect = vec;
- norm = 0.0;
- for (p=0; p<npc; p++)
- {
- val = 0.0;
- cpc2 = cpc;
- for (p2=0; p2<npc; p2++)
- val += mat[p+p2*npc]**(cpc2++);
-/*---- Compute the norm in the same time */
- *(vect++) = val;
- norm += val*val;
- }
-/*---- Normalize while updating the codebook */
- norm = sqrt(norm);
- vect = vec;
- for (p=npc; p--;)
- *(cpc++) = (float)(*(vect++)/norm);
-/*---- Update parameters */
- *(flux++) /= (float)norm;
- *(dscale++) *= pixstep;
- }
- }
-
-
-/* Free memory */
- free(tpix);
- free(minicomp);
- if (ncode)
- {
- free(mat);
- free(vec);
- }
-
- return pco;
- }
-
-
-/********************************** pc_load **********************************/
-/*
-Load the PC data from a FITS file.
-*/
-pcstruct *pc_load(char *filename)
- {
- pcstruct *pc;
- catstruct *cat;
- tabstruct *tab;
- keystruct *key;
- codestruct *code;
- char *head, str[80], *ci;
- float *pc1,*pc2;
- int i,j, ncode, nparam, npc, pcoffset;
-
-/* Open the cat (well it is not a "cat", but simply a FITS file */
- if (!(cat = read_cat(filename)))
- error(EXIT_FAILURE, "*Error*: PC file not found: ", filename);
-
-/* OK, we now allocate memory for the PC structure itself */
- QCALLOC(pc, pcstruct, 1);
-
-/* Store a short copy of the PC filename */
- if (ci=strrchr(filename, '/'))
- strcpy(pc->name, ci+1);
- else
- strcpy(pc->name, filename);
-
- if (!(tab = name_to_tab(cat, "PC_DATA", 0)))
- error(EXIT_FAILURE, "*Error*: PC_DATA table not found in ",
- filename);
-
-/* Load important scalars (which are stored as FITS keywords) */
- head = tab->headbuf;
-
-/* Dimensionality of the PC mask */
- if (fitsread(head, "PCNAXIS", &pc->dim, H_INT, T_LONG) != RETURN_OK)
- goto headerror;
- if (pc->dim<2 || pc->dim>3)
- error(EXIT_FAILURE, "*Error*: wrong dimensionality for the PC "
- "mask in ", filename);
- QMALLOC(pc->size, int, pc->dim);
- for (i=0; i<pc->dim; i++)
- pc->size[i] = 1;
- pc->npix = 1;
- for (i=0; i<pc->dim; i++)
- {
- sprintf(str, "PCAXIS%1d ", i+1);
- if (fitsread(head, str, &pc->size[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
- pc->npix *= pc->size[i];
- }
-
- pc->npc = pc->size[pc->dim-1];
-
- ncode = 0;
- fitsread(head, "NCODE ", &ncode, H_INT, T_LONG);
- fitsread(head, "NCODEPAR", &nparam, H_INT, T_LONG);
-
-/* Load the PC mask data */
- key = read_key(tab, "PC_MASK");
- pc->comp = key->ptr;
-
- key = read_key(tab, "PC_MX2");
- pc->mx2 = key->ptr;
-
- key = read_key(tab, "PC_MY2");
- pc->my2 = key->ptr;
-
- key = read_key(tab, "PC_MXY");
- pc->mxy = key->ptr;
-
- key = read_key(tab, "PC_FLUX");
- pc->flux = key->ptr;
-
- key = read_key(tab, "PC_BRATIO");
- pc->bt = key->ptr;
-
- if (ncode)
- {
- QMALLOC(pc->code, codestruct, 1);
- code = pc->code;
- QMALLOC(code->param, float *, nparam);
- QMALLOC(code->parammod, int, nparam);
- code->ncode = ncode;
- code->nparam = nparam;
- key = read_key(tab, "CODE_PC");
- code->pc = (float *)key->ptr;
- for (i=0; i<nparam; i++)
- {
- sprintf(str, "CODE_P%d", i+1);
- key = read_key(tab, str);
- code->param[i] = (float *)key->ptr;
- sprintf(str, "CODE_M%d", i+1);
- fitsread(head, str, &code->parammod[i], H_INT, T_LONG);
- }
- }
-
-/* Prune unwanted PCs */
- if (pc->npc<prefs.pc_npc)
- {
- sprintf(str, "Only %d PC(s) available",pc->npc);
- warning(str, "");
- }
- else if (prefs.pc_npc>0 && pc->npc!=prefs.pc_npc)
- {
- pc->npix /= pc->size[pc->dim-1];
- pcoffset = pc->npc - prefs.pc_npc;
- npc = pc->size[pc->dim-1] = pc->npc = prefs.pc_npc;
- pc->npix *= pc->npc;
- if (ncode)
- {
- code = pc->code;
- pc1 = pc2 = code->pc;
- for (i=ncode; i--; pc2+=pcoffset)
- for (j=npc;j--;)
- *(pc1++) = *(pc2++);
- }
- }
-
-/* But don't touch my arrays!! */
- blank_keys(tab);
-
- free_cat(cat, 1);
-
- return pc;
-
-headerror:
- error(EXIT_FAILURE, "*Error*: Incorrect or obsolete PC data in ", filename);
- }
-
-
-/****** matinv ***************************************************************
-PROTO void matinv(double *mat, int nmat)
-PURPOSE Invert a matrix using Gauss-Jordan elimination..
-INPUT Pointer to the 2D array,
- Number of matrix elements.
-OUTPUT -.
-NOTES The matrix inversion is done ``in place''..
-AUTHOR E. Bertin (IAP)
-VERSION 17/07/99
- ***/
-void matinv(double *mat, int nmat)
- {
- double big,dum,pivinv,temp;
- int *indxc,*indxr,*ipiv,
- i,icol,irow,j,k,l,ll;
-
-#define SWAP(a,b) {temp=(a);(a)=(b);(b)=temp;}
-
-/* Allocate memory for the indices */
- QMALLOC(indxc, int, nmat);
- QMALLOC(indxr, int, nmat);
- QMALLOC(ipiv, int, nmat);
- for (j=0;j<nmat;j++)
- ipiv[j]=0;
- for (i=0;i<nmat;i++)
- {
- big=0.0;
- for (j=0;j<nmat;j++)
- if (ipiv[j] != 1)
- for (k=0;k<nmat;k++)
- if (!ipiv[k])
- {
- if (fabs(mat[j+nmat*k]) >= big)
- {
- big=fabs(mat[j+nmat*k]);
- irow=j;
- icol=k;
- }
- }
- else if (ipiv[k] > 1)
- error(EXIT_FAILURE,"*Error*: Singular Matrix in orthogonalization!"
- , "");
- ++(ipiv[icol]);
- if (irow != icol)
- for (l=0;l<nmat;l++)
- SWAP(mat[irow+nmat*l],mat[icol+nmat*l]);
- indxr[i]=irow;
- indxc[i]=icol;
- if (mat[icol+nmat*icol] == 0.0)
- error(EXIT_FAILURE, "*Error*: Singular Matrix in orthogonalization!","");
- pivinv = 1.0/mat[icol+nmat*icol];
- mat[icol+nmat*icol] = 1.0;
- for (l=0;l<nmat;l++)
- mat[icol+nmat*l] *= pivinv;
- for (ll=0;ll<nmat;ll++)
- if (ll != icol)
- {
- dum = mat[ll+nmat*icol];
- mat[ll+nmat*icol] = 0.0;
- for (l=0;l<nmat;l++)
- mat[ll+nmat*l] -= mat[icol+nmat*l]*dum;
- }
- }
-
- for (l=nmat;l--;)
- if (indxr[l] != indxc[l])
- for (k=0;k<nmat;k++)
- SWAP(mat[k+nmat*indxr[l]],mat[k+nmat*indxc[l]]);
-
- free(ipiv);
- free(indxr);
- free(indxc);
-
- return;
- }
-
diff --git a/external/psfex/source/poly.c b/external/psfex/source/poly.c
deleted file mode 100644
index d962056..0000000
--- a/external/psfex/source/poly.c
+++ /dev/null
@@ -1,343 +0,0 @@
- /*
- poly.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using Polynomials
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Polynomial fitting
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "poly.h"
-
-
-/****** poly_init ************************************************************
-PROTO polystruct *poly_init(int *group, int ndim, int *degree, int ngroup)
-PURPOSE Allocate and initialize a polynom structure.
-INPUT 1D array containing the group for each parameter,
- number of dimensions (parameters),
- 1D array with the polynomial degree for each group,
- number of groups.
-OUTPUT polystruct pointer.
-NOTES -.
-AUTHOR E. Bertin (IAP)
-VERSION 11/02/99
- ***/
-polystruct *poly_init(int *group, int ndim, int *degree, int ngroup)
- {
- polystruct *poly;
- char str[MAXCHAR];
- static int nd[POLY_MAXDIM];
- int *groupt,
- d,g,n,num,den;
-
- QCALLOC(poly, polystruct, 1);
- if ((poly->ndim=ndim) > POLY_MAXDIM)
- {
- sprintf(str, "The dimensionality of the polynom (%d) exceeds the maximum\n"
- "allowed one (%d)", ndim, POLY_MAXDIM);
- error(EXIT_FAILURE, "*Error*: ", str);
- }
-
- if (ndim)
- QMALLOC(poly->group, int, poly->ndim);
- for (groupt=poly->group, d=ndim; d--;)
- *(groupt++) = *(group++)-1;
-
- poly->ngroup = ngroup;
- if (ngroup)
- {
- group = poly->group; /* Forget the original *group */
-
- QMALLOC(poly->degree, int, poly->ngroup);
-
-/*-- Compute the number of context parameters for each group */
- memset(nd, 0, ngroup*sizeof(int));
- for (d=0; d<ndim; d++)
- {
- if ((g=group[d])>ngroup)
- error(EXIT_FAILURE, "*Error*: polynomial GROUP out of range", "");
- nd[g]++;
- }
- }
-
-/* Compute the total number of coefficients */
- poly->ncoeff = 1;
- for (g=0; g<ngroup; g++)
- {
- if ((d=poly->degree[g]=*(degree++))>POLY_MAXDEGREE)
- {
- sprintf(str, "The degree of the polynom (%d) exceeds the maximum\n"
- "allowed one (%d)", poly->degree[g], POLY_MAXDEGREE);
- error(EXIT_FAILURE, "*Error*: ", str);
- }
-
-/*-- There are (n+d)!/(n!d!) coeffs per group, that is Prod_(i<=d) (n+i)/i */
- for (num=den=1, n=nd[g]; d; num*=(n+d), den*=d--);
- poly->ncoeff *= num/den;
- }
-
- QMALLOC(poly->basis, double, poly->ncoeff);
- QCALLOC(poly->coeff, double, poly->ncoeff);
-
- return poly;
- }
-
-
-/****** poly_end *************************************************************
-PROTO void poly_end(polystruct *poly)
-PURPOSE Free a polynom structure and everything it contains.
-INPUT polystruct pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 28/01/99
- ***/
-void poly_end(polystruct *poly)
- {
- free(poly->coeff);
- free(poly->basis);
- free(poly->degree);
- free(poly->group);
- free(poly);
- }
-
-
-/****** poly_func ************************************************************
-PROTO double poly_func(polystruct *poly, double *pos)
-PURPOSE Evaluate a multidimensional polynom.
-INPUT polystruct pointer,
- pointer to the 1D array of input vector data.
-OUTPUT Polynom value.
-NOTES Values of the basis functions are updated in poly->basis.
-AUTHOR E. Bertin (IAP)
-VERSION 13/03/99
- ***/
-double poly_func(polystruct *poly, double *pos)
- {
- static double xpol[POLY_MAXDIM+1];
- double *post, *xpolt, *basis, *coeff, val, xval;
- static int expo[POLY_MAXDIM+1], gexpo[POLY_MAXDIM+1];
- int *expot, *degree,*degreet, *group,*groupt, *gexpot,
- d,g,t, ndim;
-
-/* Prepare the vectors and counters */
- ndim = poly->ndim;
- basis = poly->basis;
- coeff = poly->coeff;
-
-/* The constant term is handled separately */
- val = *(coeff++);
- *(basis++) = 1.0;
- if (!ndim || !pos)
- return val;
-
- group = poly->group;
- degree = poly->degree;
- for (xpolt=xpol, expot=expo, d=ndim; --d;)
- {
- *(++xpolt) = 1.0;
- *(++expot) = 0;
- }
- for (gexpot=gexpo, degreet=degree, g=poly->ngroup; g--;)
- *(gexpot++) = *(degreet++);
- if (gexpo[*group])
- gexpo[*group]--;
-
-/* The constant term is handled separately */
- *expo = 1;
- *xpol = *pos;
-
-/* Compute the rest of the polynom */
- for (t=poly->ncoeff; --t; )
- {
-/*-- xpol[0] contains the current product of the x^n's */
- val += (*(basis++)=*xpol)**(coeff++);
-/*-- A complex recursion between terms of the polynom speeds up computations */
- post = pos;
- groupt = group;
- expot = expo;
- xpolt = xpol;
- for (d=0; d<ndim; d++, groupt++)
- if (gexpo[*groupt]--)
- {
- ++*(expot++);
- xval = (*(xpolt--) *= *post);
- while (d--)
- *(xpolt--) = xval;
- break;
- }
- else
- {
- gexpo[*groupt] = *expot;
- *(expot++) = 0;
- *(xpolt++) = 1.0;
- post++;
- }
- }
-
- return val;
- }
-
-
-/****** poly_fit *************************************************************
-PROTO void poly_fit(polystruct *poly, double *x, double *y, double *w,
- int ndata, double *extbasis)
-PURPOSE Least-Square fit of a multidimensional polynom to weighted data.
-INPUT polystruct pointer,
- pointer to the (pseudo)2D array of inputs to basis functions,
- pointer to the 1D array of data values,
- pointer to the 1D array of data weights,
- number of data points,
- pointer to a (pseudo)2D array of computed basis function values.
-OUTPUT -
-NOTES If different from NULL, extbasis can be provided to store the
- values of the basis functions. If x==NULL and extbasis!=NULL, the
- precomputed basis functions stored in extbasis are used (which saves
- CPU).
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 13/03/99
- ***/
-void poly_fit(polystruct *poly, double *x, double *y, double *w, int ndata,
- double *extbasis)
- {
- double *alpha,*alphat, *beta,*betat, *basis,*basis1,*basis2, *coeff,
- *extbasist,
- val,wval,yval;
- int ncoeff, ndim, matsize,
- i,j,n;
-
- if (!x && !extbasis)
- error(EXIT_FAILURE, "*Internal Error*: One of x or extbasis should be "
- "different from NULL\nin ", "poly_func()");
- ncoeff = poly->ncoeff;
- ndim = poly->ndim;
- matsize = ncoeff*ncoeff;
- basis = poly->basis;
- extbasist = extbasis;
- QCALLOC(alpha, double, matsize);
- QCALLOC(beta, double, ncoeff);
-
-/* Build the covariance matrix */
- for (n=ndata; n--;)
- {
- if (x)
- {
-/*---- If x!=NULL, compute the basis functions */
- poly_func(poly, x);
- x+=ndim;
-/*---- If, in addition, extbasis is provided, then fill it */
- if (extbasis)
- for (basis1=basis,j=ncoeff; j--;)
- *(extbasist++) = *(basis1++);
- }
- else
-/*---- If x==NULL, then rely on pre-computed basis functions */
- for (basis1=basis,j=ncoeff; j--;)
- *(basis1++) = *(extbasist++);
-
- basis1 = basis;
- wval = *(w++);
- yval = *(y++);
- betat = beta;
- alphat = alpha;
- for (j=ncoeff; j--;)
- {
- val = *(basis1++)*wval;
- *(betat++) += val*yval;
- for (basis2=basis,i=ncoeff; i--;)
- *(alphat++) += val**(basis2++);
- }
- }
-
-/* Solve the system */
- cholsolve(alpha,beta,ncoeff);
-
- free(alpha);
-
-/* Now fill the coeff array with the result of the fit */
- betat = beta;
- coeff = poly->coeff;
- for (j=ncoeff; j--;)
- *(coeff++) = *(betat++);
-
- free(beta);
-
- return;
- }
-
-
-/****** cholsolve *************************************************************
-PROTO void cholsolve(double *a, double *b, int n)
-PURPOSE Solve a system of linear equations, using Cholesky decomposition.
-INPUT Pointer to the (pseudo 2D) matrix of coefficients,
- pointer to the 1D column vector,
- matrix size.
-OUTPUT -.
-NOTES Based on Numerical Recipes, 2nd ed. (Chap 2.9). The matrix of
- coefficients must be symmetric and positive definite.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 02/03/99
- ***/
-void cholsolve(double *a, double *b, int n)
- {
- double *ain,*ajn,*aink,*ajnk, *p, *x, sum;
- int i,j,k;
-
-/* Allocate memory to store the diagonal elements */
- QMALLOC(p, double, n);
-
-/* Cholesky decomposition */
- ain = a;
- for (i=0; i<n; i++, ain+=n)
- for (j=i, ajn=ain; j<n; j++, ajn+=n)
- {
- sum=*(ain+j);
- for (aink=ain, ajnk=ajn, k=i; k--;)
- sum -= *(aink++)**(ajnk++);
- if (i==j)
- {
- if (sum <= 0.0)
- error(EXIT_FAILURE, "*Error*: Non positive definite matrix in ",
- "cholsolve()");
- p[i] = sqrt(sum);
- }
- else
- *ajnk = sum/p[i];
- }
-
-/* Solve the system */
- x = b; /* Just to save memory: the solution replaces b */
- for (i=0; i<n; i++)
- {
- for (sum=b[i],k=i; k--;)
- sum -= a[i*n+k]*x[k];
- x[i] = sum/p[i];
- }
-
- for (i=n-1; i>=0; i--)
- {
- for (sum=x[i],k=i+1; k<n; k++)
- sum -= a[k*n+i]*x[k];
- x[i] = sum/p[i];
- }
-
- free(p);
-
- return;
- }
-
diff --git a/external/psfex/source/poly.h b/external/psfex/source/poly.h
deleted file mode 100644
index da59493..0000000
--- a/external/psfex/source/poly.h
+++ /dev/null
@@ -1,47 +0,0 @@
- /*
- poly.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using polynomial fits
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include for poly.c
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants -------------------------------*/
-
-#define POLY_MAXDIM 4 /* Max dimensionality of polynom */
-#define POLY_MAXDEGREE 10 /* Max degree of the polynom */
-
-/*---------------------------------- macros ---------------------------------*/
-
-/*--------------------------- structure definitions -------------------------*/
-
-typedef struct poly
- {
- double *basis; /* Current values of the basis functions */
- double *coeff; /* Polynom coefficients */
- int ncoeff; /* Number of coefficients */
- int *group; /* Groups */
- int ndim; /* dimensionality of the polynom */
- int *degree; /* Degree in each group */
- int ngroup; /* Number of different groups */
- } polystruct;
-
-/*---------------------------------- protos --------------------------------*/
-
-extern polystruct *poly_init(int *group,int ndim,int *degree,int ngroup);
-
-extern double poly_func(polystruct *poly, double *pos);
-
-extern void cholsolve(double *a, double *b, int n),
- poly_end(polystruct *poly),
- poly_fit(polystruct *poly, double *x, double *y,
- double *w, int ndata, double *extbasis);
-
diff --git a/external/psfex/source/prefs.c b/external/psfex/source/prefs.c
deleted file mode 100644
index e482928..0000000
--- a/external/psfex/source/prefs.c
+++ /dev/null
@@ -1,360 +0,0 @@
- /*
- prefs.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Functions to handle the configuration file.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "key.h"
-#include "prefs.h"
-
-
-/********************************* readprefs ********************************/
-/*
-Read a configuration file in ``standard'' format (see the SExtractor
-documentation)
-*/
-void readprefs(char *filename, char **argkey, char **argval, int narg)
-
- {
- FILE *infile;
- char *cp, str[MAXCHAR], *keyword, *value, **dp;
- int i, ival, nkey, warn, argi, flagc, flagd, flagz;
- double dval;
-#ifndef NO_ENVVAR
- static char value2[MAXCHAR],envname[MAXCHAR];
- char *dolpos;
-#endif
-
-
- if ((infile = fopen(filename,"r")) == NULL)
- error(EXIT_FAILURE,"*ERROR*: can't read ", filename);
-
-/*Build the keyword-list from pkeystruct-array */
-
- for (i=0; key[i].name[0]; i++)
- strcpy(keylist[i], key[i].name);
- keylist[i][0] = '\0';
-
-
-/*Scan the configuration file*/
-
- argi=0;
- flagc = 0;
- flagd = 1;
- dp = default_prefs;
- for (warn=0;;)
- {
- if (flagd)
- {
- if (**dp)
- strcpy(str, *(dp++));
- else
- flagd = 0;
- }
- if (!flagc && !flagd)
- if (!fgets(str, MAXCHAR, infile))
- flagc=1;
-
- if (flagc)
- {
- if (argi<narg)
- {
- sprintf(str, "%s %s", argkey[argi], argval[argi]);
- argi++;
- }
- else
- break;
- }
-
- keyword = strtok(str, notokstr);
- if (keyword && keyword[0]!=0 && keyword[0]!=(char)'#')
- {
- if (warn>=10)
- error(EXIT_FAILURE, "*Error*: No valid keyword found in ", filename);
- nkey = findkeys(keyword, keylist, FIND_STRICT);
- if (nkey!=RETURN_ERROR)
- {
- value = strtok((char *)NULL, notokstr);
-#ifndef NO_ENVVAR
-/*------ Expansion of environment variables (preceded by '$') */
- if (value && (dolpos=strchr(value, '$')))
- {
- int nc;
- char *valuet,*value2t, *envval;
-
- value2t = value2;
- valuet = value;
- while (dolpos)
- {
- while (valuet<dolpos)
- *(value2t++) = *(valuet++); /* verbatim copy before '$' */
- if (*(++valuet) == (char)'{')
- valuet++;
- strncpy(envname, valuet, nc=strcspn(valuet,"}/:\"\'\\"));
- *(envname+nc) = (char)'\0';
- if (*(valuet+=nc) == (char)'}')
- valuet++;
- if (!(envval=getenv(envname)))
- error(EXIT_FAILURE, "Environment variable not found: ",
- envname);
- while(*envval) /* Copy the ENV content */
- *(value2t++) = *(envval++);
- while(*valuet && *valuet!=(char)'$')/* Continue verbatim copy */
- *(value2t++) = *(valuet++);
- if (*valuet)
- dolpos = valuet;
- else
- {
- dolpos = NULL;
- *value2t = (char)'\0';
- }
- }
-
- value = value2;
- }
-#endif
- switch(key[nkey].type)
- {
- case P_FLOAT:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- dval = atof(value);
- if (dval>=key[nkey].dmin && dval<=key[nkey].dmax)
- *(double *)(key[nkey].ptr) = dval;
- else
- error(EXIT_FAILURE, keyword," keyword out of range");
- break;
-
- case P_INT:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- ival = atoi(value);
- if (ival>=key[nkey].imin && ival<=key[nkey].imax)
- *(int *)(key[nkey].ptr) = ival;
- else
- error(EXIT_FAILURE, keyword, " keyword out of range");
- break;
-
- case P_STRING:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," string is empty!");
- strcpy((char *)key[nkey].ptr, value);
- break;
-
- case P_BOOL:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- if (cp = strchr("yYnN", (int)value[0]))
- *(int *)(key[nkey].ptr) = (tolower((int)*cp)=='y')?1:0;
- else
- error(EXIT_FAILURE, keyword, " value must be Y or N");
- break;
-
- case P_KEY:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- if ((ival = findkeys(value, key[nkey].keylist,FIND_STRICT))
- != RETURN_ERROR)
- *(int *)(key[nkey].ptr) = ival;
- else
- error(EXIT_FAILURE, keyword, " set to an unknown keyword");
- break;
-
- case P_INTLIST:
- for (i=0; i<MAXLIST&&value&&value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- ival = strtol(value, NULL, 0);
- if (ival>=key[nkey].imin && ival<=key[nkey].imax)
- ((int *)key[nkey].ptr)[i] = ival;
- else
- error(EXIT_FAILURE, keyword, " keyword out of range");
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = i;
- break;
-
- case P_FLOATLIST:
- for (i=0; i<MAXLIST&&value&&value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- dval = atof(value);
- if (dval>=key[nkey].dmin && dval<=key[nkey].dmax)
- ((double *)key[nkey].ptr)[i] = dval;
- else
- error(EXIT_FAILURE, keyword, " keyword out of range");
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = i;
- break;
-
- case P_KEYLIST:
- for (i=0; i<MAXLIST && value && value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- if ((ival = findkeys(value, key[nkey].keylist, FIND_STRICT))
- != RETURN_ERROR)
- ((int *)(key[nkey].ptr))[i] = ival;
- else
- error(EXIT_FAILURE, keyword, " set to an unknown keyword");
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = i;
- break;
-
- case P_STRINGLIST:
- if (!value || value[0]==(char)'#')
- {
- value = "";
- flagz = 1;
- }
- else
- flagz = 0;
- for (i=0; i<MAXLIST && value && value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- free(((char **)key[nkey].ptr)[i]);
- QMALLOC(((char **)key[nkey].ptr)[i], char, MAXCHAR);
- strcpy(((char **)key[nkey].ptr)[i], value);
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = flagz?0:i;
- break;
-
- default:
- error(EXIT_FAILURE, "*Internal ERROR*: Type Unknown",
- " in readprefs()");
- break;
- }
- key[nkey].flag = 1;
- }
- else
- {
- warning(keyword, " keyword unknown");
- warn++;
- }
- }
- }
-
- for (i=0; key[i].name[0]; i++)
- if (!key[i].flag)
- error(EXIT_FAILURE, key[i].name, " configuration keyword missing");
- fclose(infile);
-
- return;
- }
-
-
-/******************************* cistrcmp ***********************************/
-/*
-case-insensitive strcmp.
-*/
-int cistrcmp(char *cs, char *ct, int mode)
-
- {
- int diff;
-
- if (mode)
- {
- while (*cs && *ct)
- if (diff=tolower((int)*(cs++))-tolower((int)*(ct++)))
- return diff;
- }
- else
- {
- while (*cs || *ct)
- if (diff=tolower((int)*(cs++))-tolower((int)*(ct++)))
- return diff;
- }
-
- return 0;
- }
-
-
-/********************************** findkeys **********************************/
-/*
-find an item within a list of keywords, SExtractor version.
-*/
-int findkeys(char *str, char keyw[][16], int mode)
-
- {
- int i;
-
- for (i=0; keyw[i][0]; i++)
- if (!cistrcmp(str, keyw[i], mode))
- return i;
-
- return RETURN_ERROR;
- }
-
-
-/********************************* useprefs **********************************/
-/*
-Update various structures according to the prefs.
-*/
-void useprefs()
-
- {
- int i, flag;
-
- if (prefs.nretisize<2)
- prefs.retisize[1] = prefs.retisize[0];
-
- if (!prefs.autoselect_flag && !prefs.psf_step)
- warning("PSF_AUTOSELECT set to N and PSF_SAMPLING set to 0.0:\n",
- " PSF_SAMPLING will default to 1 pixel");
-
-/*------------------------------- Contexts ---------------------------------*/
- if (prefs.ncontext_group != prefs.ncontext_name)
- error(EXIT_FAILURE, "*Error*: CONTEXT_GROUPS and CONTEXT_KEYS do not ",
- "match");
- for (i=0; i<prefs.ncontext_group; i++)
- if (prefs.context_group[i]>prefs.ngroup_deg)
- error(EXIT_FAILURE, "*Error*: CONTEXT_GROUPS out of range for ",
- prefs.context_name[i]);
-
-/*----------------------------- CHECK-images -------------------------------*/
- flag = 0;
- for (i=0; i<prefs.ncheck_type; i++)
- if (prefs.check_type[i] != PSF_NONE) /* at least 1 is not NONE */
- flag = 1;
-
- if (flag && prefs.ncheck_name!=prefs.ncheck_type)
- error(EXIT_FAILURE, "*Error*: CHECKIMAGE_NAME(s) and CHECKIMAGE_TYPE(s)",
- " are not in equal number");
-
- return;
- }
-
-
diff --git a/external/psfex/source/prefs.h b/external/psfex/source/prefs.h
deleted file mode 100644
index 0d842b8..0000000
--- a/external/psfex/source/prefs.h
+++ /dev/null
@@ -1,86 +0,0 @@
- /*
- prefs.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Keywords for the configuration file.
-*
-* Last modify: 25/08/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define MAXLIST 32 /* max. nb of list members */
-
-/* NOTES:
-One must have: MAXLIST >= 1 (preferably >= 16!)
-*/
-
-/*-------------------------------- initialization ---------------------------*/
-int idummy;
-
-pkeystruct key[] =
- {
- {"BADPIXEL_FILTER", P_BOOL, &prefs.badpix_flag},
- {"BADPIXEL_NMAX", P_INT, &prefs.badpix_nmax, 0,100000000},
- {"CHECKIMAGE_NAME", P_STRINGLIST, prefs.check_name, 0,0,0.0,0.0,
- {""}, 0, MAXCHECK, &prefs.ncheck_name},
- {"CHECKIMAGE_TYPE", P_KEYLIST, prefs.check_type, 0,0, 0.0,0.0,
- {"NONE", "CHI", "PROTOTYPES", "RESIDUALS", "RAWDATA", "SAMPLES",
- "SNAPSHOTS", "WEIGHTS", "PC_CONVOLVED"},
- 0, MAXCHECK, &prefs.ncheck_type},
- {"CONTEXT_KEYS", P_STRINGLIST, prefs.context_name, 0,0,0.0,0.0,
- {""}, 0, MAXCONTEXT, &prefs.ncontext_name},
- {"CONTEXT_GROUPS", P_INTLIST, prefs.context_group, 1,MAXCONTEXT,0.0,0.0,
- {""}, 0, MAXCONTEXT, &prefs.ncontext_group},
- {"GROUP_DEGREES", P_INTLIST, prefs.group_deg, 1,32,0.0,0.0,
- {""}, 0, MAXCONTEXT, &prefs.ngroup_deg},
- {"PC_INCLUDE", P_BOOL, &prefs.pc_flag},
- {"PC_NAME", P_STRING, prefs.pc_name},
- {"PC_NPC", P_INT, &prefs.pc_npc, 0,1000000},
- {"PSF_ACCURACY", P_FLOAT, &prefs.prof_accuracy, 0,0, 0.0,1.0},
- {"PSF_AUTOSELECT", P_BOOL, &prefs.autoselect_flag},
- {"PSF_NSUPER", P_INT, &prefs.nsuper,0,1000000000},
- {"PSF_FWHMRANGE", P_FLOATLIST, prefs.fwhmrange, 0,0, 0.0,1e3, {""},
- 2,2, &prefs.nfwhmrange},
- {"PSF_MAXELONG", P_FLOAT, &prefs.maxelong, 0,0, 1.0, BIG},
- {"PSF_MINSN", P_FLOAT, &prefs.minsn, 0,0, 1e-6,1e15},
- {"PSF_NAME", P_STRING, prefs.psf_name},
- {"PSF_RECENTER", P_BOOL, &prefs.recenter_flag},
- {"PSF_SAMPLING", P_FLOAT, &prefs.psf_step, 1,1024, 0.0,1.0e3},
- {"PSF_SIZE", P_INTLIST, prefs.retisize, 1,1024, 0.0,0.0, {""},
- 1,2, &prefs.nretisize},
- {"PSF_VARIABILITY", P_FLOAT, &prefs.maxvar, 0,0, 0.0, BIG},
- {"VERBOSE_TYPE", P_KEY, &prefs.verbose_type, 0,0, 0.0,0.0,
- {"QUIET","NORMAL","FULL",""}},
- {""}
- };
-
-char keylist[sizeof(key)/sizeof(pkeystruct)][16];
-static const char notokstr[] = {" \t=,;\n\r\""};
-
-char *(default_prefs[]) =
- {
- "BADPIXEL_FILTER N",
- "BADPIXEL_NMAX 0",
- "PC_INCLUDE N",
- "PC_NAME default.pc",
- "PC_NPC 0",
- "PSF_ACCURACY 1e-2",
- "PSF_AUTOSELECT Y",
- "PSF_FWHMRANGE 0.5,10.0",
- "PSF_MAXELONG 2.0",
- "PSF_MINSN 20",
- "PSF_NSUPER 64",
- "PSF_RECENTER N",
- "PSF_SAMPLING 0.0",
- "PSF_VARIABILITY 0.5",
- "VERBOSE_TYPE NORMAL",
- ""
- };
diff --git a/external/psfex/source/psf.c b/external/psfex/source/psf.c
deleted file mode 100644
index 8156eb0..0000000
--- a/external/psfex/source/psf.c
+++ /dev/null
@@ -1,991 +0,0 @@
- /*
- psf.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Stuff related to building the PSF.
-*
-* Last modify: 13/10/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "sample.h"
-#include "poly.h"
-#include "psf.h"
-#include "vignet.h"
-
-/********************************* psf_clean *********************************/
-/*
-Filter PSF candidates.
-*/
-#define EPS (1e-4) /* a small number */
-void psf_clean(psfstruct *psf, setstruct *set, int clean_flag)
- {
- samplestruct *sample;
- double chi2,chimean,chivar,chisig,chisig1,chival, locut,hicut;
- float *chi, *chit,*chit2,
- chimed, chi2max;
- int i, n, nsample;
-
-/* First compute residuals for each sample (chi^2) */
- NFPRINTF(OUTPUT,"Computing residuals...");
- psf_makeresi(psf, set, prefs.recenter_flag);
-
-/* Store the chi's (sqrt(chi2) pdf close to gaussian) */
- NFPRINTF(OUTPUT,"Computing Chi2 statistics...");
- nsample = set->nsample;
- QMALLOC(chi, float, nsample);
- chit = chi;
- for (sample=set->sample, n=nsample; n--; sample++)
- *(chit++) = (float)sqrt(sample->chi2);
-/* Produce k-sigma-clipped statistiscs */
- locut = -BIG;
- hicut = BIG;
- chisig = BIG;
- chisig1 = 1.0;
- for (i=clean_flag?100:1; i-- && chisig>=0.1 && fabs(chisig/chisig1-1.0)>EPS;)
- {
- chisig1 = chisig;
- chimed = hmedian(chi, nsample);
- chimean = chivar = 0.0;
- chit2 = chit = chi;
- for (n=nsample; n--;)
- {
- chival = *(chit++);
- if (chival>locut && chival<hicut)
- {
- chimean += (*(chit2++) = chival);
- chivar += chival*chival;
- }
- else
- nsample--;
- }
-
- chimean /= (double)nsample;
- chisig = sqrt((chivar-chimean*chimean*nsample)/(nsample-(nsample>1?1:0)));
- locut = chimed - 3.0*chisig;
- hicut = chimed + 3.0*chisig;
- }
-
- free(chi);
-
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "<Chi2/dof> = %.3f\n",chivar/(nsample-(nsample>1?1:0)));
-
-/* Clip outliers */
- if (clean_flag)
- {
- NFPRINTF(OUTPUT,"Filtering PSF-candidates...");
- chi2max = (float)hicut;
- chi2max *= chi2max;
- nsample=set->nsample;
- for (sample=set->sample, n=0; n<nsample;)
- if ((sample++)->chi2>chi2max)
- {
- sample=remove_sample(set, n);
- nsample--;
- }
- else
- n++;
- }
-
- return;
- }
-
-
-/****** psf_init *************************************************************
-PROTO psfstruct *psf_init(int *dim, int ndim)
-PURPOSE Allocate and initialize a PSF structure.
-INPUT 1D array of degrees of the polynom,
- array of char pointers to the context names,
- number of dimensions.
-OUTPUT psfstruct pointer.
-NOTES The maximum degrees and number of dimensions allowed are set in poly.h.
-AUTHOR E. Bertin (IAP)
-VERSION 04/03/99
- ***/
-psfstruct *psf_init(char **names, int *group, int ndim,
- int *dim, int ngroup,
- int wpsf, int hpsf, float psfstep, int nsample)
- {
- psfstruct *psf;
- static char str[MAXCHAR];
- char **names2, **names2t;
- int *group2, *dim2,
- d, ndim2,ngroup2, npix;
-
-/* Allocate memory for the PSF structure itself */
- QCALLOC(psf, psfstruct, 1);
- psf->dim = PSF_NMASKDIM; /* This is constant */
- QMALLOC(psf->size, int, psf->dim);
-
-/* The polynom */
- names2 = NULL;
- group2 = dim2 = NULL;
- if (ndim2=ndim)
- {
- QMEMCPY(names, names2, char *, ndim);
- QMEMCPY(group, group2, int, ndim);
- }
- if (ngroup2=ngroup)
- QMEMCPY(dim, dim2, int, ngroup);
- psf->poly = poly_init(group2, ndim2, dim2, ngroup2);
-
-/* Compute the maximum advised number of degrees of freedom */
- while ((int)(psf->poly->ncoeff/(psfstep*psfstep*PSF_FREEDFACTOR)+0.499)
- >nsample)
- {
- poly_end(psf->poly);
- if (ngroup2)
- {
-/*---- If still too many degrees of freedom, try to lower degrees */
- d=ngroup2%10;
- sprintf(str, "%d%s", ngroup2, d==1?"st":(d==2?"nd":(d==3?"rd":"th")));
- if (!(--dim2[ngroup2-1]))
- {
-/*---- If degree is 0, just remove all the group components */
- for (d=0; d<ndim2; d++)
- if (group2[d]==ngroup2 && d!=(--ndim2))
- {
- names2[d]=names2[ndim2];
- group2[d]=group2[ndim2];
- }
- ngroup2--;
- warning(str, " context group removed (not enough samples)");
- }
- else
- warning(str, " context group-degree lowered (not enough samples)");
- psf->poly = poly_init(group2, ndim2, dim2, ngroup2);
- }
- else
- error(EXIT_FAILURE, "*Error*: Not enough sources!!","");
- }
-
- psf->pixstep = psfstep;
- psf->npix = psf->size[0] = wpsf;
- psf->npix *= (psf->size[1] = hpsf);
- psf->npix *= (psf->size[2] = psf->poly->ncoeff);
- QMALLOC(psf->comp, float, psf->npix);
- npix = psf->size[0]*psf->size[1];
- QMALLOC(psf->loc, float, npix);
- QMALLOC(psf->resi, float, npix);
-
-/* Context arrays */
- if (ndim2)
- {
- QMALLOC(psf->contextoffset, double, ndim2);
- QMALLOC(psf->contextscale, double, ndim2);
- QMALLOC(psf->contextname, char *, ndim2);
- for (names2t=names2, d=0; d<ndim2; d++)
- {
- QMALLOC(psf->contextname[d], char, 80);
- strcpy(psf->contextname[d], *(names2t++));
- }
- }
-
-
-/* Free temporary arrays */
- if (ndim)
- {
- free(names2);
- free(group2);
- free(dim2);
- }
-
- return psf;
- }
-
-
-/****** psf_end **************************************************************
-PROTO void psf_end(psfstruct *psf)
-PURPOSE Free a PSF structure and everything it contains.
-INPUT psfstruct pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 04/07/98
- ***/
-void psf_end(psfstruct *psf)
- {
- int d, ndim;
-
- ndim = psf->poly->ndim;
- for (d=0; d<ndim; d++)
- free(psf->contextname[d]);
- free(psf->contextname);
- poly_end(psf->poly);
- free(psf->comp);
- free(psf->loc);
- free(psf->resi);
- free(psf->size);
- free(psf);
-
- return;
- }
-
-
-/******************************* psf_build **********************************/
-/*
-Build the local PSF (function of "coordinates").
-*/
-void psf_build(psfstruct *psf, double *pos)
- {
- double *basis;
- float *ppc, *pl, fac;
- int n,p, npix;
-
- npix = psf->size[0]*psf->size[1];
-/* Reset the Local PSF mask */
- memset(psf->loc, 0, npix*sizeof(float));
-
- poly_func(psf->poly, pos);
- basis = psf->poly->basis;
-
- ppc = psf->comp;
-/* Sum each component */
- for (n = (psf->dim>2?psf->size[2]:1); n--;)
- {
- pl = psf->loc;
- fac = (float)*(basis++);
- for (p=npix; p--;)
- *(pl++) += fac**(ppc++);
- }
-
- return;
- }
-
-
-/****************************** psf_makeresi *********************************/
-/*
-Compute PSF residuals (chi2).
-*/
-void psf_makeresi(psfstruct *psf, setstruct *set, int centflag)
- {
- samplestruct *sample;
- static double pos[MAXCONTEXT], amat[9], bmat[3];
- double *dresi, *dresit, *amatt,
- *cvigx,*cvigxt, *cvigy,*cvigyt,
- nm1, chi2, dx,dy, ddx,ddy, dval,dvalx,dvaly,dwval,
- radmin2,radmax2, hcw,hch, yb, mx2,my2,mxy;
- float *vigresi, *vig, *vigw, *fresi,*fresit,
- *cbasis,*cbasist, *cdata,*cdatat, *cvigw,*cvigwt,
- norm, fval, vigstep;
- int i,j,n,x,y, ndim,npix,nsample, cw,ch,ncpix, okflag;
-
- vigstep = 1/psf->pixstep;
- nsample = set->nsample;
- npix = set->vigsize[0]*set->vigsize[1];
- ndim = psf->poly->ndim;
- QCALLOC(dresi, double, npix);
-
- if (centflag)
- {
-/*-- Compute Centering sub-vignet size (containing most of the signal) */
- cw=ch=(int)(2*set->fwhm+1.0);
- if (cw>set->vigsize[0])
- cw=set->vigsize[0];
- if (ch>set->vigsize[1])
- ch=set->vigsize[1];
-/*-- Allocate memory for the sub-vignet */
- ncpix = cw*ch;
- QMALLOC(cdata, float, ncpix);
- QMALLOC(cbasis, float, ncpix);
- QMALLOC(cvigw, float, ncpix);
- QMALLOC(cvigx, double, ncpix);
- QMALLOC(cvigy, double, ncpix);
-/*-- Initialize gradient image */
- hcw = (double)(cw/2);
- hch = (double)(ch/2);
- cvigxt = cvigx;
- cvigyt = cvigy;
- for (y=0; y<ch; y++)
- {
- yb = y-hch;
- for (x=0; x<cw; x++)
- {
- *(cvigxt++) = x-hcw;
- *(cvigyt++) = yb;
- }
- }
- /*-- Set convergence boundaries */
- radmin2 = PSF_MINSHIFT*PSF_MINSHIFT;
- radmax2 = PSF_MAXSHIFT*PSF_MAXSHIFT;
- okflag = 0;
- }
-
-/* Compute the chi2 */
- for (sample=set->sample, n=nsample; n--; sample++)
- {
-/*-- Build the local PSF */
- for (i=0; i<ndim; i++)
- pos[i] = (sample->context[i]-set->contextoffset[i])
- /set->contextscale[i];
- psf_build(psf, pos);
-
-/*-- Delta-x and Delta-y in vignet-pixel units */
- dx = sample->dx;
- dy = sample->dy;
-
- if (centflag)
- {
-/*---- Copy the data into the sub-vignet */
- vignet_copy(sample->vig, set->vigsize[0], set->vigsize[1],
- cdata, cw,ch, 0,0, VIGNET_CPY);
-/*---- Weight the data */
- vignet_copy(sample->vigweight, set->vigsize[0], set->vigsize[1],
- cvigw, cw,ch, 0,0, VIGNET_CPY);
-
- for (cdatat=cdata, cvigwt=cvigw, i=ncpix; i--;)
- *(cdatat++) *= *(cvigwt++);
-
- for (j=0; j<PSF_NITER; j++)
- {
-/*------ Map the PSF model at the current position */
- vignet_resample(psf->loc, psf->size[0], psf->size[1],
- cbasis, cw,ch, -dx*vigstep, -dy*vigstep, vigstep, 1.0);
-
-/*------ Build the a and b matrices */
- memset(amat, 0, 9*sizeof(double));
- *bmat = bmat[1] = bmat[2] = mx2=my2=mxy = 0.0;
- for (cvigxt=cvigx,cvigyt=cvigy,cvigwt=cvigw,
- cbasist=cbasis,cdatat=cdata, i=ncpix; i--;)
- {
- dval = (double)*(cbasist++);
- *bmat += (dwval = dval*(double)*(cdatat++));
- bmat[1] += dwval*(dvalx = *(cvigxt++) - dx);
- bmat[2] += dwval*(dvaly = *(cvigyt++) - dy);
- mx2 += dval*dvalx*dvalx;
- my2 += dval*dvaly*dvaly;
- mxy += dval*dvalx*dvaly;
- amatt=amat;
- *(amatt++) += (dval *= dval*(double)*(cvigwt++));
- *(amatt++) += dval*dvalx;
- *(amatt++) += dval*dvaly;
- *(++amatt) += dval*dvalx*dvalx;
- *(++amatt) += dval*dvalx*dvaly;
- *(amatt+3) += dval*dvaly*dvaly;
- }
-
-/*------ Solve the system */
- cholsolve(amat,bmat, 3);
-
-/*------ Convert to a shift */
- dx += 0.5*(ddx = (bmat[1]*mx2 + bmat[2]*mxy) / bmat[0]);
- dy += 0.5*(ddy = (bmat[2]*my2 + bmat[1]*mxy) / bmat[0]);
-/*------ Exit if it converges or diverges */
- if (ddx*ddx+ddy*ddy < radmin2)
- {
- okflag = 1;
- break;
- }
- else if (dx*dx+dy*dy > radmax2)
- break;
- }
- if (okflag)
- {
- sample->dx = dx;
- sample->dy = dy;
- }
- }
-
-
-/*-- Map the PSF model at the current position */
- vignet_resample(psf->loc, psf->size[0], psf->size[1],
- sample->vigresi, set->vigsize[0], set->vigsize[1],
- -dx*vigstep, -dy*vigstep, vigstep, 1.0);
-/*-- Subtract the PSF model and compute Chi2 */
- norm = sample->norm;
- chi2 = 0.0;
- dresit = dresi;
- for (vigresi=sample->vigresi, vig=sample->vig, vigw=sample->vigweight,
- i=npix; i--; vigresi++)
- {
- *vigresi = fval = *(vig++)-*vigresi*norm;
- chi2 += (double)(fval *= fval**(vigw++));
- *(dresit++) += fval;
- }
-
- sample->chi2 = (nm1 = (double)(npix - 1)) > 0.0? chi2/nm1 : chi2;
- }
-
-/* Normalize and convert to floats the Residual array */
- QMALLOC(fresi, float, npix);
- nm1 = nsample > 1? (double)(nsample - 1): 1.0;
- for (dresit=dresi,fresit=fresi, i=npix; i--;)
- *(fresit++) = sqrt(*(dresit++)/nm1);
-
-/*-- Map the residuals to PSF coordinates */
- vignet_resample(fresi, set->vigsize[0], set->vigsize[1],
- psf->resi, psf->size[0], psf->size[1], 0.0,0.0, psf->pixstep, 1.0);
-
-/* Free memory */
- free(dresi);
- free(fresi);
- if (centflag)
- {
- free(cvigx);
- free(cvigy);
- free(cvigw);
- free(cbasis);
- free(cdata);
- }
-
- return;
- }
-
-
-/******************************* psf_refine **********************************/
-/*
-Refine PSF by resolving "aliased" pixels.
-*/
-void psf_refine(psfstruct *psf, setstruct *set, int npsf)
- {
- polystruct *poly;
- samplestruct *sample;
- static double pos[MAXCONTEXT];
- static char str[MAXCHAR];
- double *pix, *desmat,*desmatt,*desmatt2, *desmat0,*desmat02,
- *bmat,*bmatt, *basis,*basist, *basist2,
- *sigvig,*sigvigt, *alphamat,*alphamatt,
- *betamat,*betamatt, *coeffmat,*coeffmatt,
- dx,dy, dval, norm;
- float *vig,*vigt,*vigt2, *wvig, *diracpsf,*diracpsft,
- *diracvig,*diracvigt, *ppix,*ppixt,
- *psforder,*psfordert,
- psfthresh, vigstep, val;
- int *psfmask,*psfmaskt, *desindex,*desindext,*desindext2,
- *desindex0,*desindex02;
- int i,j,jo,k,l,c,n, npix,nvpix, ndata,ncoeff,nsample,
- ncontext, nunknown, matoffset, dindex;
-
-/* Exit if no pixel is to be "refined" */
- if (!npsf)
- return;
-
-/* First Select the brightest pixels */
- NFPRINTF(OUTPUT,"Selecting pixels...");
- npix = psf->size[0]*psf->size[1];
- if (npsf>npix)
- npsf=npix;
- QMEMCPY(psf->comp, psforder, float, npix);
- for (psfordert=psforder, i=npix; i--; psfordert++)
- *psfordert = fabs(*psfordert);
- hmedian(psforder, npix);
- psfthresh = psforder[npix-npsf];
- free(psforder);
-
-/* Mark pixels which have to be reexamined */
- QCALLOC(psfmask, int, npix);
- npsf = 0;
- for (psfmaskt=psfmask, ppix=psf->comp, i=npix; i--; psfmaskt++)
- if (fabs(*(ppix++))>=psfthresh)
- {
- npsf++;
- *psfmaskt = 1;
- }
-
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "%d PSF pixels retained for super-resolution\n", npsf);
-
- nvpix = set->vigsize[0]*set->vigsize[1];
- poly = psf->poly;
- ncontext = set->ncontext;
- ncoeff = poly->ncoeff;
- nsample = set->nsample;
- nunknown = ncoeff*npsf;
- vigstep = 1/psf->pixstep;
-/* Prepare a PSF mask that will contain Dirac peaks only... */
- QCALLOC(diracpsf, float, npix);
-/* ... and a vignet that will contain interpolating coefficients */
- QCALLOC(diracvig, float, nvpix);
-
- NFPRINTF(OUTPUT,"Processing samples...");
-/* Size of the compressed design matrix along the "data" axis */
- ndata = (1+(int)(INTERPW*psf->pixstep))*(1+(int)(INTERPH*psf->pixstep)) + 1;
- matoffset =nunknown-ncoeff; /* Offset between matrix coeffs */
-/* Set-up the (compressed) design matrix and data vector */
- QCALLOC(desmat, double, npsf*ndata);
- QCALLOC(desindex, int, npsf*ndata);
- QMALLOC(bmat, double, nvpix);
-/* ... a matrix containing the context coefficient submatrix... */
- QMALLOC(coeffmat, double, ncoeff*ncoeff);
-/* ... a vignet that will contain the current vignet residuals... */
- QMALLOC(vig, float, nvpix);
-/* ... a vignet that will contain the current 1/sigma map... */
- QMALLOC(sigvig, double, nvpix);
-/* ... and allocate some more for storing the normal equations */
- QCALLOC(alphamat, double, nunknown*nunknown);
- QCALLOC(betamat, double, nunknown);
-
-/* Go through each sample */
- for (sample=set->sample, n=0; n<nsample ; n++, sample++)
- {
- sprintf(str, "Processing sample #%d", n+1);
- NFPRINTF(OUTPUT, str);
-/*-- Delta-x and Delta-y in PSF-pixel units */
- dx = -sample->dx*vigstep;
- dy = -sample->dy*vigstep;
-
-/*-- Build the local PSF */
- for (i=0; i<ncontext; i++)
- pos[i] = (sample->context[i]-set->contextoffset[i])
- /set->contextscale[i];
- psf_build(psf, pos);
-
-/*-- Build the current context coefficient sub-matrix */
- basis = poly->basis;
- for (basist=basis, coeffmatt=coeffmat, l=ncoeff; l--;)
- for (dval=*(basist++), basist2=basis, i=ncoeff; i--;)
- *(coeffmatt++) = dval**(basist2++);
-
-/*-- Map the PSF model at the current position */
- vignet_resample(psf->loc, psf->size[0], psf->size[1],
- vig, set->vigsize[0], set->vigsize[1], dx, dy, vigstep, 1.0);
-/*-- Subtract the PSF model */
- norm = (double)sample->norm;
- for (vigt=vig, vigt2=sample->vig, i=nvpix; i--; vigt++)
- *vigt = (float)(*(vigt2++) - *vigt*norm);
-/*-- Precompute the 1/sigma-map for the current sample */
- for (sigvigt=sigvig, wvig=sample->vigweight, i=nvpix; i--;)
- *(sigvigt++) = sqrt(*(wvig++)) ;
-
-/*-- Go through each relevant PSF pixel */
- desmatt = desmat;
- desindext = desindex;
- for (psfmaskt=psfmask, diracpsft=diracpsf, i=npix; i--; diracpsft++)
- if (*(psfmaskt++))
- {
-/*------ Put a Dirac peak at the current PSF pixel */
- *diracpsft = (float)norm;
- vignet_resample(diracpsf, psf->size[0], psf->size[1],
- diracvig, set->vigsize[0],set->vigsize[1], dx,dy, vigstep,1.0);
-
-/*------ Retrieve coefficient for each relevant data pixel */
- for (diracvigt=diracvig, sigvigt=sigvig,
- desmatt2=desmatt, desindext2=desindext, j=jo=0; j++<nvpix;)
- if (fabs(dval = *(diracvigt++) * *(sigvigt++)) > (1/BIG))
- {
- *(desmatt2++) = dval;
- *(desindext2++) = (j-jo);
- jo = j;
- }
-
- *desindext2 = 0;
-
- desindext += ndata;
- desmatt += ndata;
-
-/*------ Set the current PSF pixel back to zero */
- *diracpsft = 0.0;
- }
-
-/*-- Fill the b matrix with data points */
- for (vigt=vig, sigvigt=sigvig, bmatt=bmat, j=nvpix; j--;)
- *(bmatt++) = *(vigt++) * *(sigvigt++);
-
-/*-- Compute the matrix of normal equations */
- betamatt = betamat;
- for (desmat0=desmat, desindex0=desindex, k=0; k<npsf;
- desmat0+=ndata, desindex0+=ndata, k++)
- {
- for (desmat02=desmat0, desindex02=desindex0, j=k; j<npsf;
- desmat02+=ndata, desindex02+=ndata, j++)
- {
- dval = 0.0;
- desmatt=desmat0;
- desmatt2=desmat02;
- desindext=desindex0;
- desindext2=desindex02;
- dindex=*desindext-*desindext2;
- while (*desindext && *desindext2)
- {
- while (*desindext && dindex<0)
- {
- dindex+=*(++desindext);
- desmatt++;
- }
- while (*desindext2 && dindex>0)
- {
- dindex-=*(++desindext2);
- desmatt2++;
- }
- while (*desindext && !dindex)
- {
- dval += *(desmatt++)**(desmatt2++);
- dindex = *(++desindext)-*(++desindext2);
- }
- }
- if (fabs(dval) > (1/BIG))
- {
- alphamatt = alphamat+(j+k*npsf*ncoeff)*ncoeff;
- for (coeffmatt=coeffmat, l=ncoeff; l--; alphamatt+=matoffset)
- for (i=ncoeff; i--;)
- *(alphamatt++) += dval**(coeffmatt++);
- }
- }
- dval = 0.0;
- desmatt=desmat0;
- desindext=desindex0;
- bmatt=bmat-1;
- while (*desindext)
- dval += *(desmatt++)**(bmatt+=*(desindext++));
- for (basist=basis,i=ncoeff; i--;)
- *(betamatt++) += dval**(basist++);
- }
- }
-
-/* Free some memory... */
- free(coeffmat);
- free(desmat);
- free(desindex);
- free(bmat);
- free(diracpsf);
- free(diracvig);
- free(vig);
- free(sigvig);
-
- NFPRINTF(OUTPUT,"Solving the system...");
- cholsolve(alphamat,betamat,nunknown);
-
- NFPRINTF(OUTPUT,"Updating the PSF...");
- for (ppix=psf->comp,betamatt=betamat, psfmaskt=psfmask, i=npix; i--; ppix++)
- if (*(psfmaskt++))
- for (ppixt=ppix, c=ncoeff; c--; ppixt+=npix)
- *ppixt += *(betamatt++);
-
-/* Free all */
- free(alphamat);
- free(betamat);
- free(psfmask);
-
- return;
- }
-
-
-/********************************* psf_make **********************************/
-/*
-Make the PSF.
-*/
-void psf_make(psfstruct *psf, setstruct *set)
- {
- polystruct *poly;
- samplestruct *sample;
- double *pstack,*wstack, *basis, *pix,*wpix, *coeff, *pos, *post;
- float *comp;
- int i,c,n, ncoeff,npix,nsample;
-
- poly = psf->poly;
-
-/* First copy the offset and scaling information from the set structure */
- for (i=0; i<psf->poly->ndim; i++)
- {
- psf->contextoffset[i] = set->contextoffset[i];
- psf->contextscale[i] = set->contextscale[i];
- }
-
- ncoeff = poly->ncoeff;
- npix = psf->size[0]*psf->size[1];
- nsample = set->nsample;
- QMALLOC(pstack, double, nsample);
- QMALLOC(wstack, double, nsample);
- QMALLOC(basis, double, poly->ncoeff*nsample);
- QMALLOC(pos, double, poly->ndim?(nsample*poly->ndim):1);
-
- for (sample=set->sample, post=pos, n=nsample; n--; sample++)
- {
- update_retina(set, sample, psf->pixstep);
- for (i=0; i<poly->ndim; i++)
- *(post++) = (sample->context[i]-set->contextoffset[i])
- /set->contextscale[i];
- }
-
-/* Make a polynomial fit to each pixel */
- for (i=0; i<npix; i++)
- {
-/*-- Stack ith pixel from each PSF candidate */
- for (sample=set->sample, pix=pstack,wpix=wstack, n=nsample; n--; sample++)
- {
- *(pix++) = (double)*(sample->retina+i);
- *(wpix++) = (double)*(sample->retiweight+i);
- }
-
-/*-- Polynomial fitting */
- poly_fit(poly, i?NULL:pos, pstack, wstack, nsample, basis);
-
-/*-- Store as a PSF component */
- for (coeff=poly->coeff, comp=psf->comp+i, c=ncoeff; c--; comp+=npix)
- *comp = *(coeff++);
- }
-
- free(pstack);
- free(wstack);
- free(basis);
- free(pos);
-
- return;
- }
-
-
-/********************************* psf_save **********************************/
-/*
-Save the PSF data as a FITS file.
-*/
-void psf_save(psfstruct *psf, pcstruct *pcc, pcstruct *pc, char *filename)
- {
- catstruct *cat;
- tabstruct *tab;
- keystruct *key;
- codestruct *code;
- float *w;
- char *head, str[80], str2[80];
- int i, npc, temp;
-
-/* Create the new cat (well it is not a "cat", but simply a FITS table */
- cat = new_cat(1);
- init_cat(cat);
- tab = new_tab("PSF_DATA");
- add_tab(tab, cat, 0);
-/* Let's allocate more than strictly necessary to be sure... */
- QREALLOC(tab->headbuf, char, (3+tab->headnblock)*FBSIZE);
- head = tab->headbuf;
-/* ... and blank the extra space */
- memset(head+FBSIZE*tab->headnblock, ' ', 3*FBSIZE);
-
- fitsadd(head, "POLNAXIS", "Number of context parameters");
- fitswrite(head, "POLNAXIS", &psf->poly->ndim, H_INT, T_LONG);
- for (i=0; i<psf->poly->ndim; i++)
- {
- sprintf(str, "POLGRP%1d", i+1);
- fitsadd(head, str, "Polynom group for this context parameter");
- temp = psf->poly->group[i]+1;
- fitswrite(head, str, &temp, H_INT, T_LONG);
- sprintf(str, "POLNAME%1d", i+1);
- fitsadd(head, str, "Name of this context parameter");
- fitswrite(head, str, psf->contextname[i], H_STRING, T_STRING);
- sprintf(str, "POLZERO%1d", i+1);
- fitsadd(head, str, "Offset value for this context parameter");
- fitswrite(head, str, &psf->contextoffset[i], H_EXPO, T_DOUBLE);
- sprintf(str, "POLSCAL%1d", i+1);
- fitsadd(head, str, "Scale value for this context parameter");
- fitswrite(head, str, &psf->contextscale[i], H_EXPO, T_DOUBLE);
- }
-
- fitsadd(head, "POLNGRP", "Number of context groups");
- fitswrite(head, "POLNGRP", &psf->poly->ngroup, H_INT, T_LONG);
- for (i=0; i<psf->poly->ngroup; i++)
- {
- sprintf(str, "POLDEG%1d", i+1);
- fitsadd(head, str, "Polynom degree for this context group");
- fitswrite(head, str, &psf->poly->degree[i], H_INT, T_LONG);
- }
-
-/* Add and write important scalars as FITS keywords */
- fitsadd(head, "PSF_SAMP", "Sampling step of the PSF data");
- fitswrite(head, "PSF_SAMP", &psf->pixstep, H_FLOAT, T_FLOAT);
- fitsadd(head, "PSFNAXIS", "Dimensionality of the PSF data");
- fitswrite(head, "PSFNAXIS", &psf->dim, H_INT, T_LONG);
- for (i=0; i<psf->dim; i++)
- {
- sprintf(str, "PSFAXIS%1d", i+1);
- fitsadd(head, str, "Number of element along this axis");
- fitswrite(head, str, &psf->size[i], H_INT, T_LONG);
- }
-
-/* Create and fill the arrays */
- key = new_key("PSF_MASK");
- key->naxis = psf->dim;
- QMALLOC(key->naxisn, int, key->naxis);
- for (i=0; i<psf->dim; i++)
- key->naxisn[i] = psf->size[i];
- strcat(key->comment, "Tabulated PSF data");
- key->htype = H_FLOAT;
- key->ttype = T_FLOAT;
- key->nbytes = psf->npix*t_size[T_FLOAT];
- key->nobj = 1;
- key->ptr = psf->comp;
- add_key(key, tab, 0);
-
-/* Find the useful FITS header size */
- tab->headnblock = fitsfind(head, "END ")/(FBSIZE/80)+1;
-
-/* Save the convolved PC components if available */
- if (pc)
- {
- tab = new_tab("PC_DATA");
- add_tab(tab, cat, 0);
-/*-- Let's allocate more than strictly necessary to be sure... */
- QREALLOC(tab->headbuf, char, (3+tab->headnblock)*FBSIZE);
- head = tab->headbuf;
-/*-- ... and blank the extra space */
- memset(head+FBSIZE*tab->headnblock, ' ', 3*FBSIZE);
-
-/*-- Add and write important scalars as FITS keywords */
- fitsadd(head, "PCNAXIS", "Dimensionality of the PC data");
- fitswrite(head, "PCNAXIS", &pcc->dim, H_INT, T_LONG);
- for (i=0; i<pcc->dim; i++)
- {
- sprintf(str, "PCAXIS%1d", i+1);
- fitsadd(head, str, "Number of element along this axis");
- fitswrite(head, str, &pcc->size[i], H_INT, T_LONG);
- }
-
-/*-- Create and fill the arrays */
- key = new_key("PC_CONVMASK");
- key->naxis = pcc->dim;
- QMALLOC(key->naxisn, int, key->naxis);
- for (i=0; i<pcc->dim; i++)
- key->naxisn[i] = pcc->size[i];
- strcat(key->comment, "Convolved data vector, pixel-by-pixel");
- key->htype = H_FLOAT;
- key->ttype = T_FLOAT;
- key->nbytes = pcc->npix*t_size[T_FLOAT];
- key->nobj = 1;
- key->ptr = pcc->comp;
- add_key(key, tab, 0);
-
- npc = pc->size[pc->dim-1];
- key = new_key("PC_MASK");
- key->naxis = pc->dim;
- QMALLOC(key->naxisn, int, key->naxis);
- for (i=0; i<pc->dim; i++)
- key->naxisn[i] = pc->size[i];
- strcat(key->comment, "Original data vector, pixel-by-pixel");
- key->htype = H_FLOAT;
- key->ttype = T_FLOAT;
- key->nbytes = pc->npix*t_size[T_FLOAT];
- key->nobj = 1;
- key->ptr = pc->comp;
- add_key(key, tab, 0);
-
- key = new_key("PC_MX2");
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- *key->naxisn = npc;
- strcat(key->comment, "Variance along x for each component");
- key->htype = H_EXPO;
- key->ttype = T_DOUBLE;
- key->nbytes = npc*t_size[T_DOUBLE];
- key->nobj = 1;
- key->ptr = pc->mx2;
- add_key(key, tab, 0);
-
- key = new_key("PC_MY2");
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- *key->naxisn = npc;
- strcat(key->comment, "Variance along y for each component");
- key->htype = H_EXPO;
- key->ttype = T_DOUBLE;
- key->nbytes = npc*t_size[T_DOUBLE];
- key->nobj = 1;
- key->ptr = pc->my2;
- add_key(key, tab, 0);
-
- key = new_key("PC_MXY");
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- *key->naxisn = npc;
- strcat(key->comment, "Covariance for each component");
- key->htype = H_EXPO;
- key->ttype = T_DOUBLE;
- key->nbytes = npc*t_size[T_DOUBLE];
- key->nobj = 1;
- key->ptr = pc->mxy;
- add_key(key, tab, 0);
-
- key = new_key("PC_FLUX");
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- *key->naxisn = npc;
- strcat(key->comment, "Flux in each component");
- key->htype = H_EXPO;
- key->ttype = T_DOUBLE;
- key->nbytes = npc*t_size[T_DOUBLE];
- key->nobj = 1;
- key->ptr = pc->flux;
- add_key(key, tab, 0);
-
- key = new_key("PC_BRATIO");
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- *key->naxisn = npc;
- strcat(key->comment, "B/T for each component");
- key->htype = H_EXPO;
- key->ttype = T_DOUBLE;
- key->nbytes = npc*t_size[T_DOUBLE];
- key->nobj = 1;
- key->ptr = pc->bt;
- add_key(key, tab, 0);
-
- if (pcc->code)
- {
- code = pcc->code;
- fitsadd(head, "NCODE", "Total number of Codebook vectors");
- fitswrite(head, "NCODE", &code->ncode, H_INT, T_LONG);
- fitsadd(head, "NCODEPAR", "Total number of Codebook vectors");
- fitswrite(head, "NCODEPAR", &code->nparam, H_INT, T_LONG);
- key = new_key("CODE_PC");
- key->naxis = 2;
- QMALLOC(key->naxisn, int, key->naxis);
- key->naxisn[0] = npc;
- key->naxisn[1] = code->ncode;
- strcat(key->comment, "Codebook vectors");
- key->htype = H_EXPO;
- key->ttype = T_FLOAT;
- key->nbytes = key->naxisn[0]*key->naxisn[1]*t_size[key->ttype];
- key->nobj = 1;
- key->ptr = code->pc;
- add_key(key, tab, 0);
- for (i=0; i<code->nparam; i++)
- {
- sprintf(str, "CODE_P%d", i+1);
- key = new_key(str);
- key->naxis = 2;
- QMALLOC(key->naxisn, int, key->naxis);
- key->naxisn[0] = 1;
- key->naxisn[1] = code->ncode;
- sprintf(str, "Codebook parameter #%d", i+1);
- strcat(key->comment, str);
- key->htype = H_EXPO;
- key->ttype = T_FLOAT;
- key->nbytes = key->naxisn[0]*key->naxisn[1]*t_size[key->ttype];
- key->nobj = 1;
- key->ptr = code->param[i];
- add_key(key, tab, 0);
- sprintf(str, "CODE_M%d", i+1);
- sprintf(str2, "Step modulus for Codebook parameter #%d", i+1);
- fitsadd(head, str, str2);
- fitswrite(head, str, &code->parammod[i], H_INT, T_LONG);
- }
- }
-
-/*-- Find the useful FITS header size */
- tab->headnblock = fitsfind(head, "END ")/(FBSIZE/80)+1;
- }
-
-/* Then, just save everything and free memory */
- save_cat(cat, filename);
-
-/* But don't touch my arrays!! */
- blank_keys(tab->prevtab);
- blank_keys(tab);
- free_cat(cat, 1);
-
- return;
- }
-
-
diff --git a/external/psfex/source/psf.h b/external/psfex/source/psf.h
deleted file mode 100644
index be53020..0000000
--- a/external/psfex/source/psf.h
+++ /dev/null
@@ -1,90 +0,0 @@
- /*
- psf.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include for psf.c.
-*
-* Last modify: 13/10/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define PSF_FREEDFACTOR 1.0 /* Margin against overfitting */
-#define PSF_NMASKDIM 3 /* Number of dimensions for PSF data */
-#define PSF_MAXSHIFT 3.0 /* Max shift from initial guess (pixels)*/
-#define PSF_MINSHIFT 1e-4 /* Min shift from previous guess (pixels)*/
-#define PSF_NITER 40 /* Maximum number of iterations in fit */
-
-/*--------------------------- structure definitions -------------------------*/
-
-typedef struct code
- {
- float *pc;
- float **param;
- int *parammod;
- int ncode;
- int nparam;
- } codestruct;
-
-typedef struct psf
- {
- int dim; /* Dimensionality of the tabulated data */
- int *size; /* PSF dimensions */
- int npix; /* Total number of involved PSF pixels */
- float *comp; /* Complete pix. data (principal components) */
- float *loc; /* Local PSF */
- float *resi; /* Map of residuals */
- char **contextname; /* Array of context key-names */
- double *contextoffset; /* Offset to apply to context data */
- double *contextscale; /* Scaling to apply to context data */
- struct poly *poly; /* Polynom describing the PSF variations */
- float pixstep; /* Mask oversampling (pixel). */
- } psfstruct;
-
-
-typedef struct pc
- {
- char name[MAXCHAR]; /* PC filename */
- int npc; /* Number of Principal Components */
- int dim; /* Dimensionality of the tabulated data */
- int *size; /* PC dimensions */
- int npix; /* Total number of involved PC pixels */
- float *comp; /* Complete pix. data (principal components) */
- double *mx2,*my2,*mxy; /* 2nd order moments for each component */
- double *flux; /* Flux of each component */
- double *bt; /* B/T for each component */
- codestruct *code;
- } pcstruct;
-
-
-
-/*---------------------------------- protos --------------------------------*/
-extern void psf_build(psfstruct *psf, double *pos),
- psf_clean(psfstruct *psf, setstruct *set, int clean_flag),
- psf_end(psfstruct *psf),
- psf_make(psfstruct *psf, setstruct *set),
- psf_makeresi(psfstruct *psf, setstruct *set, int centflag),
- psf_makemask(psfstruct *psf, setstruct *set, double chithresh),
- psf_refine(psfstruct *psf, setstruct *set, int npsf),
- psf_save(psfstruct *psf, pcstruct *pcc, pcstruct *pc,
- char *filename);
-
-extern psfstruct *psf_init(char **names, int *group, int ndim,
- int *dim, int ngroup,
- int wpsf, int hpsf, float psfstep,int nsample),
- *psf_load(char *filename);
-
-
-extern void matinv(double *mat, int nmat),
- pc_end(pcstruct *pc);
-
-extern pcstruct *pc_convolve(pcstruct *pc, psfstruct *psf),
- *pc_load(char *filename),
- *pc_orthogon(pcstruct *pc2, pcstruct *pc, float pixstep);
diff --git a/external/psfex/source/random.c b/external/psfex/source/random.c
deleted file mode 100644
index e7feb76..0000000
--- a/external/psfex/source/random.c
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- random.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SOMFit
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: functions returning random numbers.
-*
-* Last modify: 29/10/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-#include <time.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "random.h"
-
-
-/****** random_gauss ********************************************************
-PROTO double random_gauss(double sigma)
-PURPOSE Generate a random number with a (centered) Gaussian pdf.
-INPUT Standard deviation.
-OUTPUT Gauss-distributed random number.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-double random_gauss(double sigma)
- {
- double x,y,z, r;
-
- while((z=pow(x=random_double()-0.5,2.0) + pow(y=random_double()-0.5,2.0))
- > 0.25);
- while ((r=random_double()) <= 0.0);
-
- return sigma*sqrt(-2.0*log(r)/z)*x;
- }
-
-
-/****** random_int **********************************************************
-PROTO int random_int(void)
-PURPOSE Generate a random integer over (at least) the range [0,32757].
-INPUT -.
-OUTPUT Random integer number with uniform distribution.
-NOTES The actual upper bound of the range is implementation-dependent.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-int random_int(void)
- {
-#if defined HP_UX
- return (int)lrand48();
-#elif defined SUN_OS
- return (int)random();
-#elif defined DEC_ALPHA
- return (int)random();
-#else
- return (int)rand();
-#endif
- }
-
-
-/****** random_double ********************************************************
-PROTO double random_double(void)
-PURPOSE Generate a random number with uniform distribution over [0.0,1.0[
-INPUT -.
-OUTPUT Random double with uniform distribution.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-double random_double(void)
- {
-#if defined HP_UX
- return drand48();
-#elif defined SUN_OS
- return (double)random() / (0x7fffffffL+1.0);
-#elif defined DEC_ALPHA
- return (double)random() / (0x7fffffffL+1.0);
-#else
- return (double)rand() / RAND_MAX;
-#endif
- }
-
-
-/****** init_random **********************************************************
-PROTO void init_random(int seed)
-PURPOSE Initialize the random number generator.
-INPUT Seed.
-OUTPUT -.
-NOTES The seed is used to initialize the random sequence at a particular
- position, which is implementation-dependent. If seed = 0, then the
- actual seed is taken from the time() function (which varies each
- second).
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-void init_random(int seed)
- {
-#if defined HP_UX
- if (seed)
- srand48(seed);
- else
- srand48((long)time(NULL));
-#elif defined SUN_OS
- if (seed)
- srandom(seed);
- else
- srandom((int)time(NULL));
-#elif defined DEC_ALPHA
- if (seed)
- srandom(seed);
- else
- srandom((int)time(NULL));
-#else
- if (seed)
- srand((unsigned int)seed);
- else
- srand((unsigned int)time(NULL));
-#endif
-
- return;
- }
-
-
-/****i* gammln ***************************************************************
-PROTO double gammln(double xx)
-PURPOSE Returns the log of the Gamma function (from Num. Recipes in C, p.168).
-INPUT A double.
-OUTPUT Log of the Gamma function.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-double gammln(double xx)
-
- {
- double x,tmp,ser;
- static double cof[6]={76.18009173,-86.50532033,24.01409822,
- -1.231739516,0.120858003e-2,-0.536382e-5};
- int j;
-
- tmp=(x=xx-1.0)+5.5;
- tmp -= (x+0.5)*log(tmp);
- ser=1.0;
- for (j=0;j<6;j++)
- ser += cof[j]/(x+=1.0);
-
- return log(2.50662827465*ser)-tmp;
- }
-
-
-/****** random_poisson *******************************************************
-PROTO double random_double(double xm)
-PURPOSE Returns a random number with Poisson deviate (from Num. Recipes in C.,
- p.222) centered on xm.
-INPUT Mean of the Poisson distribution.
-OUTPUT A double containing the integer (!) variable with Poisson deviate.
-NOTES I am still searching for a faster algorithm!!
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-double random_poisson(double xm)
- {
- static double sq,alxm,g,oldm=(-1.0);
- double em,t,y;
- double gammln();
-
- if (xm < 12.0)
- {
- if (xm != oldm)
- {
- oldm=xm;
- g=exp(-xm);
- }
- em = -1.0;
- t=1.0;
- do
- {
- em += 1.0;
- t *= random_double();
- } while (t > g);
- }
- else
- {
- if (xm != oldm)
- {
- oldm=xm;
- sq=sqrt(2.0*xm);
- alxm=log(xm);
- g=xm*alxm-gammln(xm+1.0);
- }
- do
- {
- do
- {
- y=tan(PI*random_double());
- em=sq*y+xm;
- } while (em < 0.0);
- em=floor(em);
- t=0.9*(1.0+y*y)*exp(em*alxm-gammln(em+1.0)-g);
- } while (random_double() > t);
- }
-
- return em;
- }
-
diff --git a/external/psfex/source/random.h b/external/psfex/source/random.h
deleted file mode 100644
index 9e2fc79..0000000
--- a/external/psfex/source/random.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- random.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SOMFit
-*
-* Author: E.BERTIN, IAP, Leiden observatory & ESO
-*
-* Contents: Definitions related to the generation of random numbers
-*
-* Last modify: 29/10/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants -------------------------------*/
-
-#ifndef RAND_MAX
-#define RAND_MAX 0x7fffffffL /* default dynamic range of rand() */
-#endif
-
-/*-------------------------------- protos -----------------------------------*/
-
-double random_double(void),
- random_gauss(double sigma),
- random_poisson(double xm);
-
-int random_int(void);
-
-void init_random(int seed);
-
-
diff --git a/external/psfex/source/sample.c b/external/psfex/source/sample.c
deleted file mode 100644
index c807e30..0000000
--- a/external/psfex/source/sample.c
+++ /dev/null
@@ -1,792 +0,0 @@
- /*
- sample.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Read and filter input samples from catalogs.
-*
-* Last modify: 05/08/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "random.h"
-#include "sample.h"
-#include "vignet.h"
-
-/******************************** load_samples *******************************/
-/*
-Examine and load PSF candidates.
-*/
-setstruct *load_samples(char **filename, int ncat)
- {
- setstruct *set;
- catstruct *incat;
- tabstruct *tab;
- keystruct *fkey, *(key[4]);
- static char keynames[4][16]={"FLUX_RADIUS", "FLUX_MAX", "FLAGS",
- "ELONGATION"};
- static char str[MAXCHAR];
- char *head, *(pkeynames[4]);
- float *fwhm,*fwhmt,*fwhmt2, *hl, *fmax, *elong,
- backnoise, df,dfmin,fmin, minsn, maxelong, fwhmmin,
- fwhmmax, fval;
- short *flags;
- int i,j,n, nobj,nobjmax, imin, nw;
-
- minsn = (float)prefs.minsn;
- maxelong = (float)prefs.maxelong;
- fwhmmin = prefs.fwhmrange[0];
- fwhmmax = prefs.fwhmrange[1];
-
- if (prefs.autoselect_flag)
- {
-/*-- Allocate memory */
- nobj = 0;
- nobjmax = LSAMPLE_DEFSIZE;
- QMALLOC(fwhm, float, nobjmax);
- fwhmt=fwhm;
-
-/*-- Initialize string array */
- for (i=0; i<4; i++)
- pkeynames[i] = keynames[i];
-
-/*-- Try to estimate the most appropriate Half-light Radius range */
-/*-- Get the Half-light radii */
- nobj = 0;
- for (i=0; i<ncat; i++)
- {
- sprintf(str,"Examining Catalog #%d", i+1);
- NFPRINTF(OUTPUT, str);
-/*---- Read input catalog */
- if (!(incat = read_cat(filename[i])))
- error(EXIT_FAILURE, "*Error*: No such catalog: ", filename[i]);
-
-/*---- Get the background noise for this catalog */
- if ((tab = name_to_tab(incat, "LDAC_IMHEAD", 0))
- && (fkey=read_key(tab, "Field Header Card")))
- head = fkey->ptr;
- else if (!(head=incat->tab->headbuf))
- error(EXIT_FAILURE, "*Error*: I expected a FITS catalog format", "");
-
- if (fitsread(head,"SEXBKDEV",&backnoise,H_FLOAT,T_FLOAT) == RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Keyword not found:", "SEXBKDEV");
- if (backnoise<1/BIG)
- backnoise = 1.0;
-
-/*---- Now load the objects */
- if (!(tab = name_to_tab(incat, "LDAC_OBJECTS", 0))
- && !(tab = name_to_tab(incat, "OBJECTS", 0)))
- error(EXIT_FAILURE, "*Error*: OBJECTS table not found in catalog ",
- filename[i]);
- for (j=0; j<4; j++)
- if (!(key[j]=name_to_key(tab, keynames[j])))
- {
- sprintf(str, "%s not found in catalog %s", keynames[j], filename[i]);
- error(EXIT_FAILURE, "*Error*: ", str);
- }
-
- read_keys(tab, pkeynames, NULL, 4, NULL);
-
-/*---- Fill the FWHM array */
- hl = key[0]->ptr;
- fmax = key[1]->ptr;
- flags = key[2]->ptr;
- elong = key[3]->ptr;
- for (n=tab->naxisn[1]; n--; hl++, fmax++, flags++, elong++)
- {
- if (*fmax/backnoise>minsn
- && *flags<4
- && *elong<maxelong
- && (fval=2.0**hl)>=fwhmmin
- && fval<fwhmmax)
- {
- if (++nobj>nobjmax)
- {
- nobjmax += LSAMPLE_DEFSIZE;
- QREALLOC(fwhm, float, nobjmax);
- fwhmt=fwhm+nobj-1;
- }
- *(fwhmt++) = fval;
- }
- }
- free_cat(incat, 1);
- }
-
- if (!nobj)
- error(EXIT_FAILURE, "*Error*: No appropriate source found!!","");
-
-/*-- Sort FWHMs */
- hmedian(fwhm, nobj);
-
-/*-- Find the mode */
- nw = nobj/4;
- if (nw<4)
- nw = 1;
- dfmin = BIG;
- fmin = 0.0;
- imin = 0;
- fwhmt = fwhm;
- fwhmt2 = fwhm+nw;
- for (i=nobj-nw; i--; fwhmt++,fwhmt2++)
- {
- if ((df = *fwhmt2 - *fwhmt) < dfmin)
- {
- dfmin = df;
- fmin = (*fwhmt2 + *fwhmt)/2.0;
- imin++;
- }
- }
-
- free(fwhm);
-
- dfmin = (float)pow((double)prefs.maxvar+1.0, 0.3333333);
- fwhmmin = dfmin>0.0?fmin/dfmin:0.0;
- if (fwhmmin<prefs.fwhmrange[0])
- fwhmmin = prefs.fwhmrange[0];
- fwhmmax = fmin*dfmin*dfmin;
- if (fwhmmax>prefs.fwhmrange[1])
- fwhmmax = prefs.fwhmrange[1];
- }
- else
- fmin = 2.35/(1.0-1.0/INTERPFAC);
-
-
- NFPRINTF(OUTPUT, "");
- NPRINTF(OUTPUT, "Selected FWHM range: %.2f - %.2f pixels\n",
- fwhmmin, fwhmmax);
-
-/* Load the samples */
- set = NULL;
- for (i=0; i<ncat; i++)
- set = read_samples(set, filename[i], fwhmmin/2.0, fwhmmax/2.0);
-
- set->fwhm = fmin;
-
- return set;
- }
-
-
-/******************************** read_samples *******************************/
-/*
-*/
-setstruct *read_samples(setstruct *set, char *filename,
- float frmin, float frmax)
-
- {
- catstruct *incat;
- tabstruct *tab, *keytab;
- keystruct *key, *vigkey;
- samplestruct *sample;
- t_type contexttyp[MAXCONTEXT];
- void *context[MAXCONTEXT];
- static char str[MAXCHAR];
- char *head, **kstr;
- unsigned short *flags;
- double contextval[MAXCONTEXT], *cmin, *cmax, dval, sn;
- float *xm, *ym, *vignet,*vignett, *flux, *fluxmax, *fluxrad,
- *elong,
- backnoise, backnoise2, gain, minsn,maxelong;
- static int ncat;
- int i,j, n, nsample,nsamplemax,
- vigw, vigh, vigsize, imaw,imah, nobj,
- maxbad, maxbadflag;
-
-
- maxbad = prefs.badpix_nmax;
- maxbadflag = prefs.badpix_flag;
- maxelong = prefs.maxelong;
- minsn = prefs.minsn;
-
-/* If a NULL pointer is provided, we allocate a new set */
- if (!set)
- {
- set = init_set();
- nsample = nsamplemax = 0;
- ncat = 1;
- }
- else
- nsample = nsamplemax = set->nsample;
-
- if (set->ncontext)
- {
- QMALLOC(cmin, double, set->ncontext);
- QMALLOC(cmax, double, set->ncontext);
- for (i=0; i<set->ncontext; i++)
- {
- cmin[i] = ncat>1? set->contextoffset[i] - set->contextscale[i]/2.0 : BIG;
- cmax[i] = ncat>1? cmin[i] + set->contextscale[i] : -BIG;
- }
- }
-
-/*-- Read input catalog */
- if (!(incat = read_cat(filename)))
- error(EXIT_FAILURE, "*Error*: No such catalog: ", filename);
-
- if ((tab = name_to_tab(incat, "LDAC_IMHEAD", 0))
- && (key=read_key(tab, "Field Header Card")))
- head = key->ptr;
- else if (!(head=incat->tab->headbuf))
- error(EXIT_FAILURE, "*Error*: I expected a FITS catalog format", "");
-
- if (fitsread(head, "SEXBKDEV", &backnoise,H_FLOAT,T_FLOAT)== RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Keyword not found:", "SEXBKDEV");
- backnoise2 = backnoise*backnoise;
-
- if (fitsread(head, "SEXGAIN", &gain, H_FLOAT, T_FLOAT) == RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Keyword not found:", "SEXGAIN");
-
- if (fitsread(head, "SEXIMASX", &imaw, H_INT, T_LONG)== RETURN_ERROR
- && fitsread(head, "NAXIS1 ", &imaw, H_INT, T_LONG)== RETURN_ERROR)
- error(EXIT_FAILURE,"*Error*: Image X-size not found","");
-
- if (fitsread(head, "SEXIMASY", &imah, H_INT, T_LONG)== RETURN_ERROR
- && fitsread(head, "NAXIS2 ", &imah, H_INT, T_LONG)== RETURN_ERROR)
- error(EXIT_FAILURE,"*Error*: Image Y-size not found","");
-
- if (!(tab = name_to_tab(incat, "LDAC_OBJECTS", 0))
- && !(tab = name_to_tab(incat, "OBJECTS", 0)))
- error(EXIT_FAILURE, "*Error*: OBJECTS table not found in catalog ",
- filename);
-
-/* Init the single-row tab */
- keytab = init_readobj(tab);
-
- if (!(key = name_to_key(keytab, "X_IMAGE")))
- error(EXIT_FAILURE, "*Error*: X_IMAGE parameter not found in catalog ",
- filename);
- xm = (float *)key->ptr;
- if (!(key = name_to_key(keytab, "Y_IMAGE")))
- error(EXIT_FAILURE, "*Error*: Y_IMAGE parameter not found in catalog ",
- filename);
- ym = (float *)key->ptr;
-
- if (!(key = name_to_key(keytab, "FLUX_RADIUS")))
- error(EXIT_FAILURE, "*Error*: FLUX_RADIUS parameter not found in catalog ",
- filename);
- fluxrad = (float *)key->ptr;
-
- if (!(key = name_to_key(keytab, "FLUX_APER")))
- error(EXIT_FAILURE, "*Error*: FLUX_APER parameter not found in catalog ",
- filename);
- flux = (float *)key->ptr;
-
- if (!(key = name_to_key(keytab, "FLUX_MAX")))
- error(EXIT_FAILURE,"*Error*: FLUX_MAX parameter not found in catalog ",
- filename);
- fluxmax = (float *)key->ptr;
-
- if (!(key = name_to_key(keytab, "ELONGATION")))
- error(EXIT_FAILURE, "*Error*: ELONGATION parameter not found in catalog ",
- filename);
- elong = (float *)key->ptr;
-
- if (!(key = name_to_key(keytab, "FLAGS")))
- error(EXIT_FAILURE, "*Error*: FLAGS parameter not found in catalog ",
- filename);
- flags = (unsigned short *)key->ptr;
- nobj = key->nobj;
-
- if (!(key = name_to_key(keytab, "VIGNET")))
- error(EXIT_FAILURE,
- "*Error*: VIGNET parameter not found in catalog ", filename);
- vignet = (float *)key->ptr;
- if (key->naxis != 2)
- error(EXIT_FAILURE, "*Error*: VIGNET should be a 2D vector", "");
- vigkey = key;
- vigw = *(vigkey->naxisn);
- vigh = *(vigkey->naxisn+1);
- vigsize = vigw*vigh;
-
-/* Try to load the set of context keys */
- kstr = prefs.context_name;
- for (i=0; i<set->ncontext; i++, kstr++)
- if (**kstr==(char)':')
- {
- context[i] = &contextval[i];
- contexttyp[i] = T_DOUBLE;
- if (fitsread(head, *kstr+1, context[i], H_FLOAT,T_DOUBLE)==RETURN_ERROR)
- {
- sprintf(str, "*Error*: %s parameter not found in the header of ",
- *kstr+1);
- error(EXIT_FAILURE, str, filename);
- }
- }
- else
- {
- if (!(key = name_to_key(keytab, *kstr)))
- {
- sprintf(str, "*Error*: %s parameter not found in catalog ", *kstr);
- error(EXIT_FAILURE, str, filename);
- }
- context[i] = key->ptr;
- contexttyp[i] = key->ttype;
- strcpy(set->contextname[i], key->name);
- }
-
-/* Now examine each vector of the shipment */
- for (n=0; read_obj(keytab,tab); n++)
- {
- if (!(n%100))
- {
- sprintf(str,"Catalog #%d: Object #%d / %d samples stored",
- ncat,n,nsample);
- NFPRINTF(OUTPUT, str);
- }
- sn = (double)(backnoise>0.0? *fluxmax/backnoise : BIG);
-/*---- Apply some selection over flags, fluxes... */
- if (!*flags
- && sn>minsn
- && *fluxrad>frmin && *fluxrad<frmax
- && *elong<maxelong)
- {
-/*---- ... and check the integrity of the sample */
- j = 0;
- vignett = vignet;
- for (i=vigsize; i--; vignett++)
- if (*vignett <= -BIG)
- {
- *vignett = 0.0;
- j++;
- }
- if (maxbadflag && j > maxbad)
- continue;
-
-/*---- Allocate memory for the first shipment */
- if (!set->sample)
- {
-/*------ The retina cannot be larger than the input images! */
- if (prefs.retisize[0]*prefs.psf_step>(double)vigw
- || prefs.retisize[1]*prefs.psf_step>(double)vigh)
- error(EXIT_FAILURE, "*Error*: Vignets smaller than the retina in ",
- filename);
-
-/*------ Set up the set structure */
- set->vigsize[0] = vigw;
- set->vigsize[1] = vigh;
- set->nvig = vigw*vigh;
- nsample = 0;
- nsamplemax = LSAMPLE_DEFSIZE;
- malloc_samples(set, nsamplemax);
- }
- else
- {
- if (set->vigsize[0] != vigw || set->vigsize[1] != vigh)
- error(EXIT_FAILURE, "*Error*: Incompatible VIGNET size found in ",
- filename);
- }
-
-/*---- Increase storage space to receive new candidates if needed */
- if (nsample>=nsamplemax)
- {
- int nadd=(int)(1.62*nsamplemax);
- nsamplemax = nadd>nsamplemax?nadd:nsamplemax+1;
- realloc_samples(set, nsamplemax);
- }
-
- sample = set->sample + nsample;
-
-/*---- Copy the vignet to the training set */
- memcpy(sample->vig, vignet, vigsize*sizeof(float));
-
- sample->norm = *flux;
- sample->backnoise2 = backnoise2;
- sample->gain = gain;
-/*---- Use a first approximation of the center for feeding the retina */
- sample->x = *xm;
- sample->y = *ym;
- sample->dx = sample->x - (int)(sample->x+0.49999);
- sample->dy = sample->y - (int)(sample->y+0.49999);
- for (i=0; i<set->ncontext; i++)
- {
- dval = sample->context[i] =
- *(double *)ttypeconv(context[i], contexttyp[i], T_DOUBLE);
-/*------ Update min and max */
- if (dval<cmin[i])
- cmin[i] = dval;
- if (dval>cmax[i])
- cmax[i] = dval;
- }
- make_weights(set, sample);
- nsample++;
- }
- }
-
-/* Update the scaling */
- if (set->ncontext && nsample)
- {
- for (i=0; i<set->ncontext; i++)
- {
- set->contextscale[i] = cmax[i] - cmin[i];
- set->contextoffset[i] = (cmin[i] + cmax[i])/2.0;
- }
- free(cmin);
- free(cmax);
- }
- end_readobj(keytab,tab);
- free_cat(incat, 1);
-
- set->nsample = nsample;
-
-/* Don't waste memory! */
- if (nsample)
- realloc_samples(set, nsample);
-
-/* Increase the current catalog number */
- ncat++;
-
- return set;
- }
-
-
-/****** malloc_samples *******************************************************
-PROTO void malloc_samples(setstruct *set, int nsample)
-PURPOSE Allocate memory for a set of samples.
-INPUT set structure pointer,
- desired number of samples.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 02/03/99
-*/
-void malloc_samples(setstruct *set, int nsample)
-
- {
- samplestruct *sample;
- int n;
-
- QMALLOC(set->sample, samplestruct, nsample);
- sample = set->sample;
- for (n=nsample; n--; sample++)
- {
- QMALLOC(sample->vig, float, set->nvig);
- QMALLOC(sample->vigresi, float, set->nvig);
- QMALLOC(sample->vigweight, float, set->nvig);
- QMALLOC(sample->retina, float, set->nreti);
- QMALLOC(sample->retiweight, float, set->nreti);
- if (set->ncontext)
- QMALLOC(sample->context, double, set->ncontext);
- }
-
- set->nsamplemax = nsample;
-
- return;
- }
-
-
-/****** realloc_samples ******************************************************
-PROTO void realloc_samples(setstruct *set, int nsample)
-PURPOSE Re-allocate memory for a set of samples.
-INPUT set structure pointer,
- desired number of samples.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 02/03/99
-*/
-void realloc_samples(setstruct *set, int nsample)
-
- {
- samplestruct *sample;
- int n;
-
-/* If we want to reallocate 0 samples, better free the whole thing! */
- if (!nsample)
- free_samples(set);
-
-/* Two cases: either more samples are required, or the opposite! */
- if (nsample>set->nsamplemax)
- {
- QREALLOC(set->sample, samplestruct, nsample);
- sample = set->sample + set->nsamplemax;
- for (n = nsample - set->nsamplemax; n--; sample++)
- {
- QMALLOC(sample->vig, float, set->nvig);
- QMALLOC(sample->vigresi, float, set->nvig);
- QMALLOC(sample->vigweight, float, set->nvig);
- QMALLOC(sample->retina, float, set->nreti);
- QMALLOC(sample->retiweight, float, set->nreti);
- if (set->ncontext)
- QMALLOC(sample->context, double, set->ncontext);
- }
- }
- else if (nsample<set->nsamplemax)
- {
- sample = set->sample + nsample;
- for (n = set->nsamplemax - nsample; n--; sample++)
- {
- free(sample->vig);
- free(sample->vigresi);
- free(sample->vigweight);
- free(sample->retina);
- free(sample->retiweight);
- if (set->ncontext)
- free(sample->context);
- }
- QREALLOC(set->sample, samplestruct, nsample);
- }
-
- set->nsamplemax = nsample;
-
- return;
- }
-
-
-/****** free_samples *********************************************************
-PROTO void free_samples(setstruct *set, int nsample)
-PURPOSE free memory for a set of samples.
-INPUT set structure pointer,
- desired number of samples.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 02/03/99
-*/
-void free_samples(setstruct *set)
-
- {
- samplestruct *sample;
- int n;
-
- sample = set->sample;
- for (n = set->nsamplemax; n--; sample++)
- {
- free(sample->vig);
- free(sample->vigresi);
- free(sample->vigweight);
- free(sample->retina);
- free(sample->retiweight);
- if (set->ncontext)
- free(sample->context);
- }
-
- free(set->sample);
- set->sample = NULL;
- set->nsample = set->nsamplemax = 0;
-
- return;
- }
-
-
-/****** remove_sample ********************************************************
-PROTO samplestruct *remove_sample(setstruct *set, int isample)
-PURPOSE Remove an element from a set of samples.
-INPUT set structure pointer,
- sample number.
-OUTPUT The new pointer for the element that replaced the removed one.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 01/03/99
-*/
-samplestruct *remove_sample(setstruct *set, int isample)
-
- {
- static samplestruct exsample;
- samplestruct *sample;
- int nsample;
-
-/* If we want to reallocate 0 samples, better free the whole thing! */
- nsample = set->nsample-1;
- if (nsample>0)
- {
- sample = set->sample + isample;
- exsample = *(set->sample+nsample);
- *(set->sample+nsample) = *sample;
- *sample = exsample;
- }
- else
- nsample=0;
- realloc_samples(set, nsample);
- set->nsample = nsample;
-
- return set->sample+isample;
- }
-
-
-/****** init_set ************************************************************
-PROTO setstruct *init_set()
-PURPOSE Allocate and initialize a set structure.
-INPUT -.
-OUTPUT -.
-NOTES See prefs.h.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 04/07/98
-*/
-setstruct *init_set(void)
-
- {
- setstruct *set;
- int i;
-
- QCALLOC(set, setstruct, 1);
- set->nsample = set->nsamplemax = 0;
- set->vigdim = set->retidim = 2;
- QMALLOC(set->retisize, int, set->retidim);
- QMALLOC(set->vigsize, int, set->vigdim);
- set->retisize[0] = prefs.retisize[0];
- set->retisize[1] = prefs.retisize[1];
- set->nreti = set->retisize[0]*set->retisize[1];/* Temporary solution (?) */
- set->ncontext = prefs.ncontext_name;
- if (set->ncontext)
- {
- QMALLOC(set->contextoffset, double, set->ncontext);
- QMALLOC(set->contextscale, double, set->ncontext);
- QMALLOC(set->contextname, char *, set->ncontext);
- for (i=0; i<set->ncontext; i++)
- QMALLOC(set->contextname[i], char, 80);
- }
-
- return set;
- }
-
-
-/****** end_set *************************************************************
-PROTO void end_set(setstruct *set)
-PURPOSE free memory allocated by a complete set structure.
-INPUT set structure pointer,
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 13/03/99
-*/
-void end_set(setstruct *set)
-
- {
- int i;
-
- free_samples(set);
- free(set->vigsize);
- free(set->retisize);
- if (set->ncontext)
- {
- for (i=0; i<set->ncontext; i++)
- free(set->contextname[i]);
- free(set->contextname);
- free(set->contextoffset);
- free(set->contextscale);
- }
- free(set);
-
- return;
- }
-
-
-/****** mix_samples **********************************************************
-PROTO void mix_samples(setstruct *set, int nsample)
-PURPOSE Mix a set of samples, using random permutations.
-INPUT set structure pointer,
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/10/97
-*/
-void mix_samples(setstruct *set)
-
- {
- samplestruct *sample1, *sample2, deposit;
- int n;
-
- sample1 = set->sample;
- for (n = set->nsample; n--; sample1++)
- {
- sample2 = set->sample + (int)(random_double()*set->nsample);
- deposit = *sample1;
- *sample1 = *sample2;
- *sample2 = deposit;
- }
-
- return;
- }
-
-
-/****** make_weights *********************************************************
-PROTO void make_weights(setstruct *set, samplestruct *sample)
-PURPOSE Produce a weight-map for each sample vignet.
-INPUT set structure pointer,
- sample structure pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP,Leiden observatory & ESO)
-VERSION 12/12/98
-*/
-void make_weights(setstruct *set, samplestruct *sample)
-
- {
- float *vig, *vigweight,
- backnoise2, gain, noise2, profaccu2, pix;
- int i;
-
-/* Produce a weight-map */
- profaccu2 = prefs.prof_accuracy*prefs.prof_accuracy;
- gain = sample->gain;
- backnoise2 = sample->backnoise2;
- for (vig=sample->vig, vigweight=sample->vigweight, i=set->nvig; i--;)
- {
- pix = *(vig++);
- noise2 = backnoise2 + profaccu2*pix*pix;
- if (pix>0.0 && gain>0.0)
- noise2 += pix/gain;
- *(vigweight++) = 1.0/noise2;
- }
-
- return;
- }
-
-
-/****** update_retina ********************************************************
-PROTO void update_retina(setstruct *set, samplestruct *sample,
- float dx, float dy, float pixstep)
-PURPOSE Update the retina content, copying data from the vignet, normalizing
- it and producing a weight-map.
-INPUT set structure pointer,
- sample structure pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP,Leiden observatory & ESO)
-VERSION 05/08/99
-*/
-void update_retina(setstruct *set, samplestruct *sample, float pixstep)
-
- {
- float *retina, *retiweight,
- backnoise2, gain, norm, norm2, noise2, profaccu2, pix;
- int i;
-
- vignet_resample(sample->vig, set->vigsize[0], set->vigsize[1],
- sample->retina, set->retisize[0], set->retisize[1],
- sample->dx, sample->dy, pixstep, pixstep>1.0?pixstep:1.0);
-
-/* Normalize approximately the retina and produce a weight-map */
- norm = sample->norm;
- norm2 = norm*norm;
- profaccu2 = prefs.prof_accuracy*prefs.prof_accuracy*norm2;
- gain = sample->gain;
- backnoise2 = sample->backnoise2;
- retina = sample->retina;
- retiweight = sample->retiweight;
- for (i=set->nreti; i--;)
- {
- pix = (*(retina++) /= norm);
- noise2 = backnoise2 + profaccu2*pix*pix;
- if (pix>0.0 && gain>0.0)
- noise2 += pix/gain;
- *(retiweight++) = norm2/noise2;
- }
-
- return;
- }
-
-
diff --git a/external/psfex/source/sample.h b/external/psfex/source/sample.h
deleted file mode 100644
index a096217..0000000
--- a/external/psfex/source/sample.h
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- sample.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Type definitions related to samples
-*
-* Last modify: 07/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants -------------------------------*/
-
-#define LSAMPLE_DEFSIZE 1000 /* Sample stacksize at the beginning */
-
-/*--------------------------- structure definitions -------------------------*/
-
-typedef struct sample
- {
- float *vig; /* Vignette array */
- float *vigresi; /* Chi-map of the PSF-residuals */
- float *vigweight; /* Vignette-weight array */
- float *retina; /* Retina array */
- float *retiweight; /* Retina-weight array */
- float *pos; /* Extra parameters array */
- float norm; /* Normalisation */
- double x,y; /* x,y position estimate in frame */
- float dx,dy; /* x,y shift / vignet center */
- float backnoise2; /* Variance of the background noise */
- float gain; /* conversion factor (e-/ADU) */
- float chi2; /* Chi2 of the fit */
- double *context; /* Context vector */
- } samplestruct;
-
-typedef struct set
- {
- struct sample *sample; /* Array of samples */
- int nsample; /* Number of samples in stack */
- int nsamplemax; /* Max number of samples in stack */
- int *vigsize; /* Dimensions of vignette frames */
- int vigdim; /* Dimensionality of the vignette */
- int nvig; /* Number of pixels of the vignette */
- int retidim; /* Dimensionality of the retina */
- int nreti; /* Number of pixels of the retina */
- int *retisize; /* Dimensions of retina frames */
- int ncontext; /* Number of contexts */
- char **contextname; /* List of context keywords used */
- double *contextoffset; /* Offset to apply to context data */
- double *contextscale; /* Scaling to apply to context data */
- float fwhm; /* FWHM of the PSF core */
- } setstruct;
-
-/*-------------------------------- protos -----------------------------------*/
-
-samplestruct *remove_sample(setstruct *set, int isample);
-
-setstruct *init_set(void),
- *load_samples(char **filename, int ncat),
- *read_samples(setstruct *set, char *filename,
- float frmin, float frmax);
-
-void end_set(setstruct *set),
- free_samples(setstruct *set),
- malloc_samples(setstruct *set, int nsample),
- make_weights(setstruct *set, samplestruct *sample),
- mix_samples(setstruct *set),
- realloc_samples(setstruct *set, int nsample),
- update_retina(setstruct *set, samplestruct *sample,
- float pixstep);
-
diff --git a/external/psfex/source/types.h b/external/psfex/source/types.h
deleted file mode 100644
index 241d6dd..0000000
--- a/external/psfex/source/types.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- types.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN, (IAP, Leiden observatory & ESO)
-*
-* Contents: global type definitions.
-*
-* Last modify: 25/08/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-typedef float PIXTYPE;
-typedef enum {PSF_NONE, PSF_CHI, PSF_PROTO, PSF_RESIDUALS, PSF_RAWDATA,
- PSF_SAMPLES, PSF_SNAPSHOTS, PSF_WEIGHTS, PSF_PCPROTO}
- checkenum;
-
-/*------------------------------- preferences -------------------------------*/
-typedef struct
- {
- char prefs_name[MAXCHAR]; /* prefs filename */
- char psf_name[MAXCHAR]; /* PSF filename */
- int retisize[2], nretisize; /* Retina size */
- double minsn; /* Minimum S/N for patterns */
- double maxelong; /* Maximum A/B for patterns */
- double maxvar; /* Maximum FWHM variability */
- double fwhmrange[2]; /* Allowed FWHM range */
- int nfwhmrange; /* nb of params */
- double prof_accuracy; /* Required PSF accuracy */
- double psf_step; /* Oversampling (pixels) */
- int nsuper; /* nb of supersampled pixels */
- int autoselect_flag; /* Auto. select FWHMs ? */
- int recenter_flag; /* Recenter PSF-candidates? */
- checkenum check_type[MAXCHECK]; /* check-image types */
- int ncheck_type; /* nb of params */
- char *(check_name[MAXCHECK]); /* check-image names */
- int ncheck_name; /* nb of params */
- char *(context_name[MAXCONTEXT]); /* Names of context-keys */
- int ncontext_name; /* nb of params */
- int context_group[MAXCONTEXT]; /* Context group */
- int ncontext_group; /* nb of params */
- int group_deg[MAXCONTEXT]; /* Degree for each group */
- int ngroup_deg; /* nb of params */
- int badpix_flag; /* Filter bad pixels? */
- int badpix_nmax; /* Max number of bad pixels */
- int pc_flag; /* Include PCs? */
- char pc_name[MAXCHAR]; /* PC filename */
- int pc_npc; /* Max. number of PCs */
- enum {QUIET, NORM, FULL} verbose_type; /* How much it displays info */
- } prefstruct;
-
diff --git a/external/psfex/source/vignet.c b/external/psfex/source/vignet.c
deleted file mode 100644
index a350c61..0000000
--- a/external/psfex/source/vignet.c
+++ /dev/null
@@ -1,311 +0,0 @@
- /*
- vignet.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Function related to vignet manipulations.
-*
-* Last modify: 20/10/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "types.h"
-#include "globals.h"
-#include "vignet.h"
-
-/***************************** vignet_resample ******************************/
-/*
-Scale and shift a small image through sinc interpolation, with adjustable
-spatial wavelength cut-off.
-Image parts which lie outside boundaries are set to 0.
-*/
-int vignet_resample(float *pix1, int w1, int h1,
- float *pix2, int w2, int h2, double dx, double dy, float step2,
- float stepi)
- {
- static float *statpix2;
- double *mask,*maskt, xc1,xc2,yc1,yc2, xs1,ys1, x1,y1, x,y, dxm,dym,
- val, dstepi;
- float *pix12, *pixin,*pixin0, *pixout,*pixout0;
- int i,j,k,n,t, *start,*startt, *nmask,*nmaskt,
- ixs2,iys2, ix2,iy2, dix2,diy2, nx2,ny2, iys1a, ny1, hmw,hmh,
- ix,iy, ix1,iy1, interpw, interph;
-
- if (stepi <= 0.0)
- stepi = 1.0;
- dstepi = 1.0/stepi;
- xc1 = (double)(w1/2); /* Im1 center x-coord*/
- xc2 = (double)(w2/2); /* Im2 center x-coord*/
- xs1 = xc1 + dx - xc2*step2; /* Im1 start x-coord */
-
- if ((int)xs1 >= w1)
- return RETURN_ERROR;
- ixs2 = 0; /* Int part of Im2 start x-coord */
- if (xs1<0.0)
- {
- dix2 = (int)(1-xs1/step2);
-/*-- Simply leave here if the images do not overlap in x */
- if (dix2 >= w2)
- return RETURN_ERROR;
- ixs2 += dix2;
- xs1 += dix2*step2;
- }
- nx2 = (int)((w1-1-xs1)/step2+1);/* nb of interpolated Im2 pixels along x */
- if (nx2>(ix2=w2-ixs2))
- nx2 = ix2;
- if (nx2<=0)
- return RETURN_ERROR;
- yc1 = (double)(h1/2); /* Im1 center y-coord */
- yc2 = (double)(h2/2); /* Im2 center y-coord */
- ys1 = yc1 + dy - yc2*step2; /* Im1 start y-coord */
- if ((int)ys1 >= h1)
- return RETURN_ERROR;
- iys2 = 0; /* Int part of Im2 start y-coord */
- if (ys1<0.0)
- {
- diy2 = (int)(1-ys1/step2);
-/*-- Simply leave here if the images do not overlap in y */
- if (diy2 >= h2)
- return RETURN_ERROR;
- iys2 += diy2;
- ys1 += diy2*step2;
- }
- ny2 = (int)((h1-1-ys1)/step2+1);/* nb of interpolated Im2 pixels along y */
- if (ny2>(iy2=h2-iys2))
- ny2 = iy2;
- if (ny2<=0)
- return RETURN_ERROR;
-
-/* Set the yrange for the x-resampling with some margin for interpolation */
- iys1a = (int)ys1; /* Int part of Im1 start y-coord with margin */
- hmh = (int)((INTERPH/2)/dstepi) + 2; /* Interpolant start */
- interph = 2*hmh;
- hmw = (int)((INTERPW/2)/dstepi) + 2;
- interpw = 2*hmw;
- if (iys1a<0 || ((iys1a -= hmh)< 0))
- iys1a = 0;
- ny1 = (int)(ys1+ny2*step2)+interpw-hmh; /* Interpolated Im1 y size */
- if (ny1>h1) /* with margin */
- ny1 = h1;
-/* Express everything relative to the effective Im1 start (with margin) */
- ny1 -= iys1a;
- ys1 -= (double)iys1a;
-
-/* Allocate interpolant stuff for the x direction */
- QMALLOC(mask, double, nx2*interpw); /* Interpolation masks */
- QMALLOC(nmask, int, nx2); /* Interpolation mask sizes */
- QMALLOC(start, int, nx2); /* Int part of Im1 conv starts */
-/* Compute the local interpolant and data starting points in x */
- x1 = xs1;
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- for (j=nx2; j--; x1+=step2)
- {
- ix = (ix1=(int)x1) - hmw;
- dxm = (ix1 - x1 - hmw)*dstepi;/* starting point in the interp. func */
- if (ix < 0)
- {
- n = interpw+ix;
- dxm -= (double)ix*dstepi;
- ix = 0;
- }
- else
- n = interpw;
- if (n>(t=w1-ix))
- n=t;
- *(startt++) = ix;
- *(nmaskt++) = n;
- for (x=dxm, i=n; i--; x+=dstepi)
- *(maskt++) = INTERPF(x)*dstepi;
- }
-
- QCALLOC(pix12, float, nx2*ny1); /* Intermediary frame-buffer */
-
-/* Make the interpolation in x (this includes transposition) */
- pixin0 = pix1+iys1a*w1;
- pixout0 = pix12;
- for (k=ny1; k--; pixin0+=w1, pixout0++)
- {
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- pixout = pixout0;
- for (j=nx2; j--; pixout+=ny1)
- {
- pixin = pixin0+*(startt++);
- val = 0.0;
- for (i=*(nmaskt++); i--;)
- val += *(maskt++)*(double)*(pixin++);
- *pixout = (float)val;
- }
- }
-
-/* Reallocate interpolant stuff for the y direction */
- QREALLOC(mask, double, ny2*interph); /* Interpolation masks */
- QREALLOC(nmask, int, ny2); /* Interpolation mask sizes */
- QREALLOC(start, int, ny2); /* Int part of Im1 conv starts */
-
-/* Compute the local interpolant and data starting points in y */
- y1 = ys1;
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- for (j=ny2; j--; y1+=step2)
- {
- iy = (iy1=(int)y1) - hmh;
- dym = (iy1 - y1 - hmh)*dstepi;/* starting point in the interp. func */
- if (iy < 0)
- {
- n = interph+iy;
- dym -= (double)iy*dstepi;
- iy = 0;
- }
- else
- n = interph;
- if (n>(t=ny1-iy))
- n=t;
- *(startt++) = iy;
- *(nmaskt++) = n;
- for (y=dym, i=n; i--; y+=dstepi)
- *(maskt++) = INTERPF(y)*dstepi;
- }
-
-/* Initialize destination buffer to zero if pix2 != NULL */
- if (!pix2)
- pix2 = statpix2;
- else
- {
- memset(pix2, 0, (size_t)(w2*h2)*sizeof(float));
- statpix2 = pix2;
- }
-
-/* Make the interpolation in y and transpose once again */
- pixin0 = pix12;
- pixout0 = pix2+ixs2+iys2*w2;
- for (k=nx2; k--; pixin0+=ny1, pixout0++)
- {
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- pixout = pixout0;
- for (j=ny2; j--; pixout+=w2)
- {
- pixin = pixin0+*(startt++);
- val = 0.0;
- for (i=*(nmaskt++); i--;)
- val += *(maskt++)*(double)*(pixin++);
- *pixout = (float)val;
- }
- }
-
-/* Free memory */
- free(pix12);
- free(mask);
- free(nmask);
- free(start);
-
- return RETURN_OK;
- }
-
-
-/******************************** vignet_copy ********************************/
-/*
-Copy a small part of the image. Image parts which lie outside boundaries are
-set to 0.
-*/
-int vignet_copy(float *pix1, int w1, int h1,
- float *pix2, int w2, int h2, int idx, int idy, vigopenum vigop)
- {
- int x,y, xmin,ymin, nx,ny, off1,off2;
-
- if (vigop==VIGNET_CPY)
-/*-- First put the pix2 background to zero */
- memset(pix2, 0, (size_t)(w2*h2)*sizeof(float));
-
-/* Set the image boundaries */
- ymin = h2/2+idy-h1/2;
- if ((ny=h2-ymin)>h1)
- ny = h1;
- else if (ny<=0)
- return RETURN_ERROR;
- if (ymin<0)
- {
- pix1 -= ymin*w1;
- ny += ymin;
- }
- else
- pix2 += ymin*w2;
-
- xmin = w2/2+idx-w1/2;
- if ((nx=w2-xmin)>w1)
- nx = w1;
- else if (nx<=0)
- return RETURN_ERROR;
- if (xmin<0)
- {
- pix1 -= xmin;
- nx += xmin;
- }
- else
- pix2 += xmin;
-
-/* Offsets */
- off1 = w1-nx;
- off2 = w2-nx;
-/* Copy the right pixels to the destination */
- switch(vigop)
- {
- case VIGNET_CPY:
- for (y=ny; y--; pix1+=off1, pix2+=off2)
- for (x=nx; x--;)
- *(pix2++) = *(pix1++);
- break;
-
- case VIGNET_ADD:
- for (y=ny; y--; pix1+=off1, pix2+=off2)
- for (x=nx; x--;)
- *(pix2++) += *(pix1++);
- break;
-
- case VIGNET_SUB:
- for (y=ny; y--; pix1+=off1, pix2+=off2)
- for (x=nx; x--;)
- *(pix2++) -= *(pix1++);
- break;
-
- case VIGNET_MUL:
- for (y=ny; y--; pix1+=off1, pix2+=off2)
- for (x=nx; x--;)
- *(pix2++) *= *(pix1++);
- break;
-
- case VIGNET_DIV:
- for (y=ny; y--; pix1+=off1, pix2+=off2)
- for (x=nx; x--;)
- if (*pix1)
- *(pix2++) /= *(pix1++);
- else
- *(pix2++) = (*pix2>0.0)?BIG:-BIG;
-
- default:
- error(EXIT_FAILURE, "*Internal Error*: unknown operation in ",
- "vignet_copy()");
-
- break;
- }
-
- return RETURN_OK;
- }
-
-
diff --git a/external/psfex/source/vignet.h b/external/psfex/source/vignet.h
deleted file mode 100644
index 8e1feed..0000000
--- a/external/psfex/source/vignet.h
+++ /dev/null
@@ -1,45 +0,0 @@
- /*
- vignet.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: PSFEx
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include for psf.c.
-*
-* Last modify: 06/08/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define INTERPW 6 /* Interpolation function range (x) */
-#define INTERPH 6 /* Interpolation function range (y) */
-#define INTERPLIM 3.0 /* Interpolation limit */
-#define INTERPFAC 3.0 /* Interpolation envelope factor */
-
-#define INTERPF(x) (x==0.0?1.0 \
- :(x>INTERPLIM?0.0:(x<-INTERPLIM?0.0 \
- :sin(PI*x)*sin(PI/INTERPFAC*x)/(PI*PI/INTERPFAC*x*x))))
-/*
-#define INTERPF(x) (x==0.0?1.0 \
- :(x>INTERPLIM?0.0:(x<-INTERPLIM?0.0 \
- :sin(PI*x)*exp(-x*x/4.4)/(PI*x))))
-*/
- /* Lanczos approximation */
-
-/*--------------------------------- typedefs --------------------------------*/
-
-typedef enum {VIGNET_CPY, VIGNET_ADD, VIGNET_SUB, VIGNET_MUL, VIGNET_DIV}
- vigopenum;
-
-/*---------------------------------- protos --------------------------------*/
-extern int vignet_copy(float *pix1, int w1, int h1,
- float *pix2, int w2, int h2, int idx, int idy,
- vigopenum vigop),
- vignet_resample(float *pix1, int w1, int h1, float *pix2,
- int w2, int h2, double dx, double dy, float step2,
- float stepi);
diff --git a/external/sextractor/CHANGES b/external/sextractor/CHANGES
deleted file mode 100644
index 8ccc696..0000000
--- a/external/sextractor/CHANGES
+++ /dev/null
@@ -1,287 +0,0 @@
-This is V2.1.6 (February 11 2000). New features include:
-- crowding-flag bug introduced in V2.1.5 fixed.
-
-/*- Previous notes for V2.1.5 (February 8 2000) */
-- Small inaccuracy in crowding-flag positioning fixed.
-- Fixed division by zero in local background in MASK_TYPE
- CORRECT mode.
-- Risk of segmentation fault with huge weight maps fixed.
-
-/*- Previous notes for V2.1.4 (November 13 1999) */
-- Quote (') symbol now properly handled in FITS headers.
-- Removed display of debug information inadvertently left
- in the previous release.
-
-/*- Previous notes for V2.1.3 (September 14 1999) */
-- Bug in ASSOC on Linux systems fixed.
-- Background bug in WEIGHT_TYPE NONE,MAP_WEIGHT mode fixed.
-- THRESH_TYPE ABSOLUTE now works on weighted images.
-
-/*- Previous notes for V2.1.0 (May 24 1999) */
-- Better formatting of output flags.
-- New display.
-- Total robust handling of weight-maps during background-
- determination.
-- (tiny) differences between single and double-image results
- suppressed.
-- New (experimental) _PROFILE photometric parameters.
-- New WEIGHT_GAIN parameter (see doc).
-
-/*- Previous notes for V2.0.22 (April 9 1999) */
-- Many memory leaks fixed.
-- CLEANing bug with very faint sources fixed.
-- BACKGROUND_RMS check-images are now operational in
- single-image mode.
-- Documentation improved.
-
-/*- Previous notes for V2.0.21 (March 2 1999) */
-This is V2.0.21 (March 2 1999). New features include:
-- BACK_VALUE bug fixed.
-- XPEAK and YPEAK offset bugs fixed.
-
-/*- Previous notes for V2.0.20 (February 19 1999) */
-- ASSOC bug in 2 ASSOC_PARAMS mode fixed.
-- Variable thresholding is now taken into account when
- computing FWHM and CLASS_STAR if WEIGHT_TYPE != NONE
-
-/*- Previous notes for V2.0.19 (January 13 1999) */
-- SEGMENTATION numbering problem fixed.
-- New Makefile macro-definitions.
-
-/*- Previous notes for V2.0.18 (December 28 1998) */
-- lint warnings fixed.
-- new ASSOC_TYPE NEAREST option.
-- MAP_RMS measurement mode and FLAG_TYPE MAX bugs fixed.
-- new BACK_TYPE, BACK_VALUE and THRESH_TYPE parameters.
-- FLUX_RADIUS does no longer require FLUX_AUTO.
-- documentation slightly improved.
-
-/*- Previous notes for V2.0.15 (August 20 1998) */
-- ``Purify'' warnings and memory leaks fixed in several parts of the program.
-- BLANKing bug of CLEANed pixels fixed.
-
-/*- Previous notes for V2.0.14 (July 28 1998) */
-- Internal handling of CDELTx changed (once more!) to allow proper scaling on the
- MINIBACKGROUND images.
-
-/*- Previous notes for V2.0.13 (July 23 1998) */
-- 2 small (but fatal on some machines) bug fixes.
-- Comments (beginning with #) now allowed at every line in .param files.
-- Default parameters updated in the config files (reflecting the increase
- of processing power during the last years!!)
-
-/*- Previous notes for V2.0.11 (July 9 1998) */
-- Background filtering bug at image borders fixed.
-- CDx_x FITS WCS parameters are now given priority.
-
-/*- Previous notes for V2.0.10 (June 30 1998) */
-- Astrometry bug with CDx_x FITS parameters fixed.
-- Interpolation bug in VAR_ONLY mode fixed.
-
-/*- Previous notes for V2.0.8 (May 14 1998) */
-- BACKGROUND check-image bug fixed.
-- Old bug in filter normalization fixed.
-- Bug in the reading of FITS header astrometric info fixed.
-
-/*- Previous notes for V2.0.7 (May 3 1998) */
-- Bug with VAR_ONLY interpolations fixed.
-- Improve robustness toward incorrect FITS headers and empty images.
-- A few bugs corrected (most of them introduced in the previous release!!)
-
-/*- Previous notes for V2.0.5 (April 30 1998) */
-- Multiple FLAG_MAPs now supported: IMAFLAG_ISO and NIMAFLAG_ISO have become
- vectors.
-- Bug with FLAG_TYPEs MIN and MAX fixed.
-
-/*- Previous notes for V2.0.2 (April 15 1998) */
-- New banner
-- Bug fixes: background on empty images, CLEANing in double-image mode.
-
-/*- Previous notes for V2.0.0 (March 30 1998) */
-- Renaming of the software and update of the proto-documentation
-- New EXTRA_WARNINGS option to VERBOSE_TYPE config parameter.
-- The usual amount of bug-fixes.
-
-/*- Previous notes for V1.2b20b (March 24 1998) */
-- XPEAK_ and YPEAK_ catalog parameters, that give the position of the brightest
- pixel in an object.
-- THRESHOLD and MU_THRESHOLD are now set to the real extraction threshold.
-- New CLEANing procedure.
-- Many bugs corrected in the weighting/interpolation.
-- SEGMENTATION check-image bug fixed.
-
-/*- Previous notes for V1.2b18d (Feb 10 1998) */
-- (Crude) interpolation with weight images, controlled with the INTERP set of prefs.
-- BACKGROUND, MAP_VAR and MAP_RMS WEIGHT_TYPEs are now fully operational.
-- Improved handling of bad pixels in photometry.
-- First release of the first, very uncomplete "proto-doc" for the 2.0 version.
-
-/*- Previous notes for V1.2b16h (Dec 15 1998) */
-- Bug in end_writeobj(), bug in computing FLUXERR_ISOCOR, and bug with the pixel
- scales for non-WCS images fixed.
-- New FLAG_TYPE config parameter for compositing the flag-map values (IMAFLAGS_ISO):
- OR, AND, MIN, MAX et MOST (keeps only the most frequent, non-zero flag-map value).
-- New NIMAFLAGS_ISO catalog parameter, returning the number of selected flag-map pixels.
-- Maximum string length for pathes, filenames, etc. extended to 512 characters.
-- Handling of WCS CDxx_xx parameters (thanks to Doug Mink).
-- WCS information propagated to MINIBACK-like check-images.
-
-/*- Previous notes for V1.2b15 (November 4 1997) */
-- Handling of environment variables within the configuration files.
-- Selection of ASSOCiated data through ASSOCSELEC_TYPE: ALL means no filtering,
- MATCHED means keep only ASSOCiated data in the output catalog, -MATCHED is the
- opposite.
-
-/*- Previous notes for V1.2b14 (October 26 1997) */
-- Bug in the flagging cropped apertures fixed.
-- BLANK and SCAN_ISOAPRATIO config parameters removed.
-- New MASK_TYPE config parameter. Options are: NONE (no MASKing of the detections),
- BLANK (like BLANK Y in the previous versions), and CORRECT (photometric correction of
- overlaps between objects by replacing with the symetrical pixel values)
-
-/*- Previous notes for V1.2b13b (October 21 1997) */
-- Handling of uncalibrated WEIGHT images for images with variable S/N:
- WEIGHT_IMAGE is the name of the external WEIGHT-map (FITS image)
- WEIGHT_TYPE parameter specifies which type of map it is (currently, only NONE
- and MAP_WEIGHT are supported). The detection threshold and CLEANing are now adaptive;
- photometric error computations take the variable S/N into account, too.
-- DETECT_IMAGE parameter suppressed: in double-image mode, one should use instead
- of "sex <image>" "sex <detect_image>,<measure_image>"
-- Bugs in the deblending routine and absolute threshold modes fixed.
-
-/*- Previous notes for V1.2b10b (August 19 1997) */
-- BLANKing option which allows masking of neighbour detections and makes some measurements
-like MAG_AUTO or MAG_APER more robust towards contamination by other sources.
-- FLAG_IMAGE option and FLAGIMA_ISO parameter for forwarding external flag-map information
-to the output catalog.
-- Support for multiple CHECKIMAGEs.
-- New "-OBJECTS" CHECKIMAGE_TYPE: input image with both background and detections removed.
-- Support for optional config parameters (like FLAG_IMAGE or DETECT_IMAGE)
-- CLEAN_OBJSTACK has become MEMORY_OBJSTACK (reflects a deep change in the handling of
-detections within SExtractor).
-
-/*- Previous notes for V1.2b9b (June 8 1997) */
-*Two bugs where found in V1.2b9a:
-- X_IMAGE and Y_IMAGE where offset by 1 pixel if no WORLD info was requested
-in the .param file.
-- The DATE-OBS reading code was completely crippled. Thanks to B. Thomsen for the
-info.
-*New parameter:
-- VIGNET_SHIFT(,) is similar to VIGNET(,), except that it produces a sinc-resampled
-vignet with sub-pixel centering on object (beware of distorsions with undersampled
-images).
-*New ultrix Makefile option for DECstations running ULTRIX.
-
-/*- Previous notes for V1.2b9a (June 1 1997) */
-New features include:
-- support for WCS coordinates. This means that you can get the
-alpha and delta for objects detected on FITS images which comply with the WCS
-standard (see http://www.cv.nrao.edu/fits/documents/wcs/wcs.html). The astrometric
-mapping relies on Mark Calabretta's WCS library (V2.4 in C). SExtractor also
-handles precession in the FK5 system, as well as transformations from J2000 (FK5)
-to B1950 (FK4) coordinates. Shape parameters are transformed through a local,
-linear approximation of the astrometric mapping. I am not an astrometrist, I
-would therefore appreciate some feedback concerning these features. All
-informations concerning precession in the FK4 system are welcome, as SExtractor
-does only precess in the FK4 system presently. I would also gladly add support
-for DSS images if someone can provide me with a decent description of their
-astrometric parameters!
-- 2D positional error estimate through ERRA_xxx, ERRB_xxx and ERRTHETA_xxx. Note:
-these estimates are exact for unconvolved, white-noised images only.
-- Linear photometric parameters (FLUX_xxx and FLUXERR_xxx in addition to MAG_xxx
-and MAGER_xxx).
-- Better outputs: units and vectors in FITS, (limited) backward compatibility
-with the old V1.0 output format (CATALOG_TYPE FITS_1.0), new detailed ASCII
-output mode (CATALOG_TYPE ASCII_HEAD).
-- Handling of gigantic images (up to 2e9x2e9 pixels on 64bit machines).
-- Online decompression of compressed DeNIS images.
-- New "vignet" vector output: for instance VIGNET(8,5) in the .param file will
-write in the output catalog a small 8x5 pixels array around each detection center.
-- Many bugs corrected, among which: crash in the background mapping on
-very large images and incorrect THRESHOLD output for blended objets.
-
-The documentation is currently being written. In the meanwhile you may consult
-the param.h file in the source/ directory for a minimum description of each
-parameter.
-
-/*- Previous notes for V1.2b5 (Jan 1997) */
-Note that the CLASS_STAR, FWHM_IMAGE an FWHM_WORLD parameters haven't be tested
-in this version (they shall be replaced by better estimators in future
-versions). Many algorithms have been changed in this version. Therefore it is
-expected that most measurements should yield results (slightly) different than
-those obtained with earlier versions. In general accuracy and detection
-performances should have increased, especially at low S/N; however I would
-appreciate to have feedback from people involved in weak-lensing studies or
-astrometrical work for instance concerning the accuracy of X,Y,A,B and THETA
-parameters, which are now computed on FILTERED images.
-The FITS catalog output format is yet in a temporary state; it is recommended
-not to use it.
-The documentation has not been updated yet; the following lines describe changes
-made to the configuration files.
-
-In the "config/" sub-directory you will find some configuration files. They are
-basically the same as in the previous version except that:
-- in the *.conv files:
- There is now a "NORM" keyword next to the "CONV" keyword. It just says that
- the convolution mask must be normalized ("NONORM" for no normalization). In
- previous versions this feature was controlled through the "CONVOLVE_NORM"
- keyword in the .sex file. However, old *.conv files are still accepted by the
- new version, and are automatically normalized, while a warning message is
- printed.
-- in the default.sex file: many things have changed.
- *There is now a new "DETECT_IMAGE" parameter which requires a string as
- argument. If it set to "SAME", it means that the input image will be used for
- both detection and measurement, as in the old version. If you give it an
- image filename (provided that the dimensions of this image are the same as
- those of the input image), it will be used as a kind of ``detection
- template'': all sources will be detected and deblended on this image, and will
- serve as reference for the measurements done on the regular image.
- *The EXTRACT_MINAREA keyword has become DETECT_MINAREA (for aesthetic reasons),
- but keeps exactly the same function. Idem for CONVOLVE -> FILTER and
- CONVOLVE_NAME -> FILTER_NAME.
- *The old THRESHOLD parameter has been now split in two: DETECT_THRESH and
- ANALYSIS_THRESH.
- DETECT_THRESH is the threshold of detection, just as before.
- You may express it in units of sigma of the background noise, or in surface
- brightness units, associated to a magnitude Zero-Point of the detection frame.
- Ex: "DETECT_THRESH 3.0" will set the threshold at 3.0 sigma,
- "DETECT_THRESH 22.0,25.4" will set the threshold at 22 mag.arcsec-2 for
- a detection-image whose mag-ZP is 25.4 mag. (note: the "PIXEL_SCALE"
- should have been set to the right value).
- In this way, the THRESHOLD_TYPE parameter has been eliminated.
- ANALYSIS_THRESH is a threshold in the measurement-frame (it can be the same as
- the detection-frame). It is used only for estimators that need accurate
- informations about the object profile in the measurement frame: star/galaxy
- separation and FWHM. If you don't know what to do with it, just leave it to
- 3.0 (sigmas, you may also express it in mag.arcsec-2 like for DETECT_THRESH,
- but in this case the mag-ZP will refer to the measurement image).
- *BACK_XSIZE and BACK_YSIZE have been replaced by a single keyword,
- BACK_SIZE, which can accept up to 2 parameters (width and height of
- the background meshes). If only one number is given, width and height
- are simultaneously set to this value (useful because most of the time,
- people use square meshes!). The same happens for the BACK_FLTRXSIZE and
- BACK_FLTRYSIZE which have become BACK_FILTERSIZE. Similarly, the 3 Kron
- parameters PHOTOM_K... have been replaced by a common PHOT_AUTOPARAMS
- which requires 2 arguments, equivalent resp. to the former PHOTOM_KPAR
- and PHOTOM_KMINSIG. PHOTOM_KSIG is now set definitely to 6.0 in the
- code. This is because the new MAG_AUTO apertures are much more robust to
- crowding effects than before. Also, for aesthetic reasons,
- PHOTOM_APERTURE has become PHOT_APERTURES. There is an S at ApertureS,
- because the software can now photometer each source simultaneously
- through up to 4 apertures (see default.param). In default.param,
- MAG_APER is equivalent to MAG_APER1, and MAGERR_APER is equivalent to
- MAGERR_APER1.
- *CHECKIMAGE_TYPE now accepts a new type: MINIBACKGROUND. It produces in
- output a FITS image in which each physical pixel corresponds to one
- background mesh. This image is therefore roughly BACK_SIZE smaller than
- the input frame. The CONVOLVED option is now called FILTERED.
-- The MAG_AUTO magnitudes are computed in a slightly different way than
- before, leading to a gain of about 20% in photometric precision in most
- extragalactic fields, especially in clusters. Obviously MAG_BEST
- benefits from this.
-- The CLEAN_PARAM efficiency has increased, compared to previous versions.
- Smaller values (around 1.0) should now be used.
-
-Please report all bugs to sextractor at iap.fr or bertin at iap.fr. Thanks!
-
- Emmanuel Bertin.
diff --git a/external/sextractor/HISTORY b/external/sextractor/HISTORY
deleted file mode 100644
index 4cc6922..0000000
--- a/external/sextractor/HISTORY
+++ /dev/null
@@ -1,96 +0,0 @@
-May 99: 2.1
-
-April 98: 2.0
- - New documentation
-
-January 97 - March 98:1.2
- - Rewriting of an important part of the software, in order to
- prepare the future... Further optimization of many functions:
- V1.2 is 30 to 500% faster than V1.0.
- - (natural) bicubic spline interpolation added to the background-map
- processing.
- - Possibility to use another FITS frame for detecting objects,
- allowing pixel-to-pixel colour measurements.
- - New MAG_AUTO magnitudes, more robust towards contamination by
- neighbouring sources (MASKing option).
- - New .sex format.
- - New CHECKIMAGE_TYPEs: MINIBACKGROUND (produces small background maps),
- BACKGROUND_RMS (produces noise maps)
- MINIBACK_RMS (produces small noise maps)
- IDENTICAL (useful for converting data types)
- -OBJECTS (background and detections removed).
- - Multiple CHECKIMAGE output.
- - New astrometric parameters using the WCS library.
- - Handling of external flag-maps.
- - Handling of images with variable S/N and external noise- or weight-
- maps, with interpolation.
- - Real-time cross-identification with an ASCII catalog.
-
-May 96: 1.1 "DeNIS" version (not distributed officially)
- - Corrects 2 fatal bugs which sometimes appeared with DEC-Alphas
- - Incorporates a new extended FITS output format.
- - Added possibility to measure within multiple apertures.
-
-May 95: Passed 1.0a version: -> FIRST OFFICIAL RELEASE!!! <-
- - Now the NNW filename is correct in FITS catalog headers.
- - Corrected a convolution bug with large masks at the bottom of
- the frame. Added a better-than-nothing normalization of
- zero-sum masks.
- - Display of the FITS ID limited to 20 characters.
- - New default.nnw enhanced and with a larger seeing range.
- - FWHM parameters slightly tuned for undersampled profiles.
- - The ``sexcopy'' SExTool put in the previous archive wasn't the
- right one! Replaced.
- - 2 new SExtools released: sexreduce and sexin.
-
-Apr 95: FIRST 1.0 version:
- - Neural-network based star/galaxy classifier implemented. NNW-file
- for Moffat-like PSFs in the optical, generated from simulations.
- - User's manual updated.
- - FWHM_IMAGE, FWHM_IMAGE and ELONGATION parameters added.
- - many more typical convolution files included in the archive.
- - Comments (beginning with a `#') are now allowed within all the
- configuration files.
- - 2 SExTools released: sexcat and sexcopy.
- - Alpha VMS version added (thanks to R. Johnstone).
-
-Feb 95: 1.0 beta 5e version:
- - 2 bugs major corrected: background interpolation when very special
- convolution masks are used, and (fixed) aperture magnitude (improved
- to sub-pixel integration).
- - Possibility to change preference keywords from the command line.
-
-Dec 94: 1.0 beta 5 version:
- - Major update! Too many changes to mention.
- - Code optimized and much more stable now.
- - New executables for IBM RS6000 and AMIGA added.
- - "II" dropped: call me simply "SExtractor" now.
-
-Sep 94: 1.0 beta 4 version:
- - "clean" distribution with source and makefiles for DEC Alpha,
- HP/UX, and SUN workstations.
- - SATUR_LEVEL keyword added.
- - FLAGS parameter now reliable and written in decimal in ASCII cat.
- - KRON_RADIUS parameter now reliable.
- - MAG_ISO_ERR and MAG_APER_ERR now give trusty estimates.
- - BACKGROUND parameter now in "raw" units.
- - catalog index numbering starts now from 1.
- - 2 huge fatal bugs corrected in deblending and background estimation
- procedures.
-
-
-Jun 94: 1.0 beta 3 version: many bugs corrected thanks to enthousiastic
- testers! First public release.
-
-May 94: 1.0 beta 2 version: reads now all kinds of FITS data. C code
- completely rewritten in ANSI; image bitmaps are now stored in
- floating-point. Now controlled through configuration files.
- User's manual written.
-
-Feb 94: 1.0 beta 1 version of "Sextractor II", still limited to 16 bits FITS
- frames, but pipelined processing allows now frames with size up to
- 65534x65534 to be processable on most machines.
-
-Mar 93: final version of "Sextractor I": limited to 16 bits 2048x2048 max. FITS
- frames, specifically oriented toward Schmidt plate data processing.
- Has reduced more than 1.2e10 pixels within 10 months...
diff --git a/external/sextractor/INSTALL b/external/sextractor/INSTALL
deleted file mode 100644
index 6f984e5..0000000
--- a/external/sextractor/INSTALL
+++ /dev/null
@@ -1,8 +0,0 @@
-Installing SExtractor is really easy:
-- Go to the source/ subdirectory
-- Type ``make'' and see if your machine type is listed.
-- If this is the case, you can start the compilation with
- ``make SEXMACHINE=<machine_type>''
-- The compilation produces the SExtractor executable called ``sex''.
- You may now copy it anywhere in your path and run it with
- configuration files like those in the config/ subdirectory.
diff --git a/external/sextractor/Makefile.am b/external/sextractor/Makefile.am
deleted file mode 100644
index 973d76f..0000000
--- a/external/sextractor/Makefile.am
+++ /dev/null
@@ -1,46 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-## This file is part of the VIMOS Pipeline
-## Copyright (C) 2001-2004 European Southern Observatory
-
-## This program is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2 of the License, or
-## (at your option) any later version.
-
-## This program is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-
-## You should have received a copy of the GNU General Public License
-## along with this program; if not, write to the Free Software
-## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-
-ACLOCAL_AMFLAGS = -I m4macros
-
-DISTCLEANFILES = *~
-
-
-if MAINTAINER_MODE
-
-MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.h.in config.log \
- configure stamp-h.in
-
-endif
-
-
-COMPILE_FIRST =
-
-TOPSUBDIRS = source
-
-COMPILE_LAST =
-
-SUBDIRS = $(COMPILE_FIRST) $(TOPSUBDIRS) $(COMPILE_LAST)
-
-EXTRA_DIST = CHANGES HISTORY README.TOO config doc
-
-
-AM_MAKEFLAGS = SEXMACHINE=@SEXMACHINE@
diff --git a/external/sextractor/Makefile.in b/external/sextractor/Makefile.in
deleted file mode 100644
index f37b138..0000000
--- a/external/sextractor/Makefile.in
+++ /dev/null
@@ -1,733 +0,0 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
- esac; \
- test $$am__dry = yes; \
- }
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in $(top_srcdir)/admin/config.guess \
- $(top_srcdir)/admin/config.sub $(top_srcdir)/admin/install-sh \
- $(top_srcdir)/admin/missing $(top_srcdir)/configure INSTALL \
- admin/config.guess admin/config.sub admin/install-sh \
- admin/missing
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4macros/eso.m4 \
- $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-depcomp =
-am__depfiles_maybe =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
- distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- cscope distdir dist dist-all distcheck
-ETAGS = etags
-CTAGS = ctags
-CSCOPE = cscope
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
-am__remove_distdir = \
- if test -d "$(distdir)"; then \
- find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
- && rm -rf "$(distdir)" \
- || { sleep 5 && rm -rf "$(distdir)"; }; \
- else :; fi
-am__post_remove_distdir = $(am__remove_distdir)
-am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
-DIST_ARCHIVES = $(distdir).tar.gz
-GZIP_ENV = --best
-DIST_TARGETS = dist-gzip
-distuninstallcheck_listfiles = find . -type f -print
-am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
- | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
-distcleancheck_listfiles = find . -type f -print
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EXEEXT = @EXEEXT@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
-LIBM = @LIBM@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MKDIR_P = @MKDIR_P@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SEXMACHINE = @SEXMACHINE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-ACLOCAL_AMFLAGS = -I m4macros
-DISTCLEANFILES = *~
- at MAINTAINER_MODE_TRUE@MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.h.in config.log \
- at MAINTAINER_MODE_TRUE@ configure stamp-h.in
-
-COMPILE_FIRST =
-TOPSUBDIRS = source
-COMPILE_LAST =
-SUBDIRS = $(COMPILE_FIRST) $(TOPSUBDIRS) $(COMPILE_LAST)
-EXTRA_DIST = CHANGES HISTORY README.TOO config doc
-AM_MAKEFLAGS = SEXMACHINE=@SEXMACHINE@
-all: all-recursive
-
-.SUFFIXES:
-am--refresh: Makefile
- @:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
- $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- echo ' $(SHELL) ./config.status'; \
- $(SHELL) ./config.status;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- $(SHELL) ./config.status --recheck
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- $(am__cd) $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
-$(am__aclocal_m4_deps):
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run 'make' without going through this Makefile.
-# To change the values of 'make' variables: instead of editing Makefiles,
-# (1) if the variable is set in 'config.status', edit 'config.status'
-# (which will cause the Makefiles to be regenerated when you run 'make');
-# (2) otherwise, pass the desired values on the 'make' command line.
-$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- for subdir in $$list; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- dot_seen=yes; \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
-cscopelist-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
- done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
- include_option=--etags-include; \
- empty_fix=.; \
- else \
- include_option=--include; \
- empty_fix=; \
- fi; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test ! -f $$subdir/TAGS || \
- set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
- fi; \
- done; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-cscope: cscope.files
- test ! -s cscope.files \
- || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
-
-clean-cscope:
- -rm -f cscope.files
-
-cscope.files: clean-cscope cscopelist-recursive cscopelist
-
-cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
- -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
-
-distdir: $(DISTFILES)
- $(am__remove_distdir)
- test -d "$(distdir)" || mkdir "$(distdir)"
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- $(am__make_dryrun) \
- || test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- am__remove_distdir=: \
- am__skip_length_check=: \
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
- -test -n "$(am__skip_mode_fix)" \
- || find "$(distdir)" -type d ! -perm -755 \
- -exec chmod u+rwx,go+rx {} \; -o \
- ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
- ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
- || chmod -R a+r "$(distdir)"
-dist-gzip: distdir
- tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- $(am__post_remove_distdir)
-
-dist-bzip2: distdir
- tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
- $(am__post_remove_distdir)
-
-dist-lzip: distdir
- tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
- $(am__post_remove_distdir)
-
-dist-xz: distdir
- tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
- $(am__post_remove_distdir)
-
-dist-tarZ: distdir
- tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- $(am__post_remove_distdir)
-
-dist-shar: distdir
- shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- $(am__post_remove_distdir)
-
-dist-zip: distdir
- -rm -f $(distdir).zip
- zip -rq $(distdir).zip $(distdir)
- $(am__post_remove_distdir)
-
-dist dist-all:
- $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
- $(am__post_remove_distdir)
-
-# This target untars the dist file and tries a VPATH configuration. Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
- case '$(DIST_ARCHIVES)' in \
- *.tar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
- *.tar.bz2*) \
- bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- *.tar.lz*) \
- lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
- *.tar.xz*) \
- xz -dc $(distdir).tar.xz | $(am__untar) ;;\
- *.tar.Z*) \
- uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
- *.shar.gz*) \
- GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
- *.zip*) \
- unzip $(distdir).zip ;;\
- esac
- chmod -R a-w $(distdir); chmod u+w $(distdir)
- mkdir $(distdir)/_build
- mkdir $(distdir)/_inst
- chmod a-w $(distdir)
- test -d $(distdir)/_build || exit 0; \
- dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
- && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
- && am__cwd=`pwd` \
- && $(am__cd) $(distdir)/_build \
- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
- $(AM_DISTCHECK_CONFIGURE_FLAGS) \
- $(DISTCHECK_CONFIGURE_FLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) \
- && $(MAKE) $(AM_MAKEFLAGS) dvi \
- && $(MAKE) $(AM_MAKEFLAGS) check \
- && $(MAKE) $(AM_MAKEFLAGS) install \
- && $(MAKE) $(AM_MAKEFLAGS) installcheck \
- && $(MAKE) $(AM_MAKEFLAGS) uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
- distuninstallcheck \
- && chmod -R a-w "$$dc_install_base" \
- && ({ \
- (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
- && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
- distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
- } || { rm -rf "$$dc_destdir"; exit 1; }) \
- && rm -rf "$$dc_destdir" \
- && $(MAKE) $(AM_MAKEFLAGS) dist \
- && rm -rf $(DIST_ARCHIVES) \
- && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
- && cd "$$am__cwd" \
- || exit 1
- $(am__post_remove_distdir)
- @(echo "$(distdir) archives ready for distribution: "; \
- list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
- sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
-distuninstallcheck:
- @test -n '$(distuninstallcheck_dir)' || { \
- echo 'ERROR: trying to run $@ with an empty' \
- '$$(distuninstallcheck_dir)' >&2; \
- exit 1; \
- }; \
- $(am__cd) '$(distuninstallcheck_dir)' || { \
- echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
- exit 1; \
- }; \
- test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left after uninstall:" ; \
- if test -n "$(DESTDIR)"; then \
- echo " (check DESTDIR support)"; \
- fi ; \
- $(distuninstallcheck_listfiles) ; \
- exit 1; } >&2
-distcleancheck: distclean
- @if test '$(srcdir)' = . ; then \
- echo "ERROR: distcleancheck can only run from a VPATH build" ; \
- exit 1 ; \
- fi
- @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
- || { echo "ERROR: files left in build directory after distclean:" ; \
- $(distcleancheck_listfiles) ; \
- exit 1; } >&2
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-recursive
-
-clean-am: clean-generic mostlyclean-am
-
-distclean: distclean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
- -rm -rf $(top_srcdir)/autom4te.cache
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
- cscopelist-recursive ctags-recursive install-am install-strip \
- tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am am--refresh check check-am clean clean-cscope \
- clean-generic cscope cscopelist cscopelist-recursive ctags \
- ctags-recursive dist dist-all dist-bzip2 dist-gzip dist-lzip \
- dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \
- distclean-generic distclean-tags distcleancheck distdir \
- distuninstallcheck dvi dvi-am html html-am info info-am \
- install install-am install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-pdf install-pdf-am install-ps install-ps-am \
- install-strip installcheck installcheck-am installdirs \
- installdirs-am maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
- tags-recursive uninstall uninstall-am
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/external/sextractor/README b/external/sextractor/README
deleted file mode 100644
index e885ba4..0000000
--- a/external/sextractor/README
+++ /dev/null
@@ -1,17 +0,0 @@
-February 11, 2000
-
-This is V2.1.6 of SExtractor.
-SExtractor stands for ``Source Extractor'': a software for making
-catalog of sources from astronomical images.
-
-In case of problems, questions or suggestions related to the software,
-please don't hesitate to send a mail (preferably in english) to the
-official mailing list:
-sextractor at iap.fr
-These questions and answers to them are posted on the Web at:
-http://terapix.iap.fr/sextractor/
-In any case you can still reach me at bertin at iap.fr. I cannot garantee
-that I will reply immediately, but I will try for sure to provide
-an answer.
-
- Emmanuel Bertin.
diff --git a/external/sextractor/README.TOO b/external/sextractor/README.TOO
deleted file mode 100644
index d56aab5..0000000
--- a/external/sextractor/README.TOO
+++ /dev/null
@@ -1,19 +0,0 @@
-This software is Copyrighted (C) E.BERTIN 1994-2000
-It is freely distributable.
-If you make any change to this program, please indicate it clearly
-in the source and rename the executable to something else.
-
- ******************************************************************
- * This program is distributed in the hope that it will be useful,*
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
- ******************************************************************
-
-Presently, any reference to the software can be made as
-
-``BERTIN E. and ARNOUTS S., 1996, A&AS 117,393''
-
-If you get nice results with SExtractor, I would be pleased to hear it
-from you.
-
- E. BERTIN (bertin at iap)
diff --git a/external/sextractor/acinclude.m4 b/external/sextractor/acinclude.m4
deleted file mode 100644
index f6df113..0000000
--- a/external/sextractor/acinclude.m4
+++ /dev/null
@@ -1,95 +0,0 @@
-# SEXTRACTOR_PROG_CC
-#-------------------
-# Check for a C compiler the sextractor way.
-AC_DEFUN([SEXTRACTOR_PROG_CC],
-[
- AC_REQUIRE([AC_CANONICAL_TARGET])
- AC_REQUIRE([AC_PROG_CC])
-
- AC_ARG_WITH(machine,
- [ --with-machine=MACHINE configure sextractor for building on MACHINE],
- sextractor_host=$withval, sextractor_host=auto)
-
- AC_MSG_CHECKING([for sextractor target host configuration])
-
- AC_CACHE_VAL(sextractor_cv_host,
- [
- if test x"$sextractor_host" = xauto; then
- case "${target}" in
- *ibm-aix*) sextractor_host_tag="ibm";;
- *dec-osf*) sextractor_host_tag="alpha";;
- *dec-ultrix*) sextractor_host_tag="ultrix";;
- *hp-hpux*) sextractor_host_tag="hpux";;
- *solaris*) sextractor_host_tag="solaris";;
- *sunos*) sextractor_host_tag="sunos";;
- *sgi-irix*) sextractor_host_tag="sgi";;
- *linux-gnu*) sextractor_host_tag="linuxpc";;
- *darwin*) sextractor_host_tag="linuxpc";;
- *)
- AC_MSG_ERROR([Unsupported host type $host])
- ;;
- esac
- else
- sextractor_host_tag=$sextractor_host
- fi
-
- sextractor_cv_host="sextractor_host_tag=$sextractor_host_tag"
- ])
-
- eval "$sextractor_cv_host"
- AC_MSG_RESULT($sextractor_host_tag)
-
- #Check extra compiler flags and add them to CFLAGS
- case "${sextractor_host_tag}" in
- ibm)
- CPPFLAGS="$CPPFLAGS -DIBM_AIX"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(O, [CFLAGS="$CFLAGS -O"])
- fi
- ;;
- alpha)
- CPPFLAGS="$CPPFLAGS -DDEC_ALPHA"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(O, [CFLAGS="$CFLAGS -O"])
- fi
- ;;
- ultrix)
- CPPFLAGS="$CPPFLAGS -DBSWAP"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(O, [CFLAGS="$CFLAGS -O"])
- fi
- ;;
- hpux)
- if test x"$GCC" != xyes; then
- CPPFLAGS="$CPPFLAGS -DHP_UX"
- fi
- ;;
- solaris)
- CPPFLAGS="$CPPFLAGS -DSUN_SOLARIS"
- if test x"$GCC" != xyes; then
- ESO_PROG_CC_FLAG(fast, [CFLAGS="$CFLAGS -fast"])
- ESO_PROG_CC_FLAG(xO5, [CFLAGS="$CFLAGS -xO5"])
- fi
- ;;
- sunos)
- CPPFLAGS="$CPPFLAGS -DSUN_OS"
- ;;
- sgi)
- ;;
- linuxpc)
- CPPFLAGS="$CPPFLAGS -DPC_LINUX"
- if test x"$GCC" = xyes; then
- ESO_PROG_CC_FLAG(funroll-loops,
- [CFLAGS="$CFLAGS -O1 -funroll-loops"])
- fi
- ;;
- *)
- if test x"$sextractor_host" != xauto; then
- AC_MSG_ERROR([Unsupported host type $sextractor_host])
- fi
- ;;
- esac
-
- SEXMACHINE="$sextractor_host_tag"
- AC_SUBST(SEXMACHINE)
-])
diff --git a/external/sextractor/aclocal.m4 b/external/sextractor/aclocal.m4
deleted file mode 100644
index ff0daef..0000000
--- a/external/sextractor/aclocal.m4
+++ /dev/null
@@ -1,1015 +0,0 @@
-# generated automatically by aclocal 1.12.2 -*- Autoconf -*-
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
-[m4_warning([this file was generated for autoconf 2.69.
-You have another version of autoconf. It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-
-# Copyright (C) 2002-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.12'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.12.2], [],
- [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too. Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.12.2])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
- [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
-# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory. The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run. This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-# fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-# fails if $ac_aux_dir is absolute,
-# fails when called from a subdirectory in a VPATH build with
-# a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir. In an in-source build this is usually
-# harmless because $srcdir is '.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
-# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-# MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH. The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[dnl Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])dnl
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_CONDITIONAL -*- Autoconf -*-
-
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 10
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ([2.52])dnl
- m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
- [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
- $1_TRUE=
- $1_FALSE='#'
-else
- $1_TRUE='#'
- $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
- AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 17
-
-# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery. Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
- [$1], [CXX], [depcc="$CXX" am_compiler_list=],
- [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
- [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
- [$1], [UPC], [depcc="$UPC" am_compiler_list=],
- [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
- [depcc="$$1" am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
- [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named 'D' -- because '-MD' means "put the output
- # in D".
- rm -rf conftest.dir
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_$1_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
- fi
- am__universal=false
- m4_case([$1], [CC],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac],
- [CXX],
- [case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac])
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
- # Solaris 10 /bin/sh.
- echo '/* dummy */' > sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with '-c' and '-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle '-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs.
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # After this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested.
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok '-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_$1_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE([dependency-tracking], [dnl
-AS_HELP_STRING(
- [--enable-dependency-tracking],
- [do not reject slow dependency extractors])
-AS_HELP_STRING(
- [--disable-dependency-tracking],
- [speeds up one-time build])])
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
- am__nodep='_no'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-AC_SUBST([am__nodep])dnl
-_AM_SUBST_NOTMAKE([am__nodep])dnl
-])
-
-# Generate code to set up dependency tracking. -*- Autoconf -*-
-
-# Copyright (C) 1999-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 6
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`AS_DIRNAME("$mf")`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`AS_DIRNAME(["$file"])`
- AS_MKDIR_P([$dirpart/$fdir])
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled. FIXME. This creates each '.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
- [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
- [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
-
-# Do all the work for Automake. -*- Autoconf -*-
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 19
-
-# This macro actually does too much. Some checks are only needed if
-# your package does certain things. But this isn't really a big deal.
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out. PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition. After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
-dnl Autoconf wants to disallow AM_ names. We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[AC_DIAGNOSE([obsolete],
-[$0: two- and three-arguments forms are deprecated. For more info, see:
-http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_INIT_AUTOMAKE-invocation])
-m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(
- m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
- [ok:ok],,
- [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
- AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
-AM_MISSING_PROG([AUTOCONF], [autoconf])
-AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
-AM_MISSING_PROG([AUTOHEADER], [autoheader])
-AM_MISSING_PROG([MAKEINFO], [makeinfo])
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-# For better backward compatibility. To be removed once Automake 1.9.x
-# dies out for good. For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
-AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
- [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
- [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
- [_AM_DEPENDENCIES([CC])],
- [m4_define([AC_PROG_CC],
- m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
- [_AM_DEPENDENCIES([CXX])],
- [m4_define([AC_PROG_CXX],
- m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- [_AM_DEPENDENCIES([OBJC])],
- [m4_define([AC_PROG_OBJC],
- m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
-dnl Support for Objective C++ was only introduced in Autoconf 2.65,
-dnl but we still cater to Autoconf 2.62.
-m4_ifdef([AC_PROG_OBJCXX],
-[AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
- [_AM_DEPENDENCIES([OBJCXX])],
- [m4_define([AC_PROG_OBJCXX],
- m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])])dnl
-])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The 'parallel-tests' driver may need to know about EXEEXT, so add the
-dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
- [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-])
-
-dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated. The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_am_stamp_count=1
-for _am_header in $config_headers :; do
- case $_am_header in
- $_am_arg | $_am_arg:* )
- break ;;
- * )
- _am_stamp_count=`expr $_am_stamp_count + 1` ;;
- esac
-done
-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-AC_SUBST([install_sh])])
-
-# Copyright (C) 2003-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot. For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
-# From Jim Meyering
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 7
-
-# AM_MAINTAINER_MODE([DEFAULT-MODE])
-# ----------------------------------
-# Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless 'enable' is passed literally.
-# For symmetry, 'disable' may be passed as well. Anyway, the user
-# can override the default with the --enable/--disable switch.
-AC_DEFUN([AM_MAINTAINER_MODE],
-[m4_case(m4_default([$1], [disable]),
- [enable], [m4_define([am_maintainer_other], [disable])],
- [disable], [m4_define([am_maintainer_other], [enable])],
- [m4_define([am_maintainer_other], [enable])
- m4_warn([syntax], [unexpected argument to AM@&t at _MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
- dnl maintainer-mode's default is 'disable' unless 'enable' is passed
- AC_ARG_ENABLE([maintainer-mode],
- [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
- am_maintainer_other[ make rules and dependencies not useful
- (and sometimes confusing) to the casual installer])],
- [USE_MAINTAINER_MODE=$enableval],
- [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
- AC_MSG_RESULT([$USE_MAINTAINER_MODE])
- AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
- MAINT=$MAINTAINER_MODE_TRUE
- AC_SUBST([MAINT])dnl
-]
-)
-
-AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-
-# Check to see how 'make' treats includes. -*- Autoconf -*-
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 5
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
-
-# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-
-# Copyright (C) 1997-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 7
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- AC_MSG_WARN(['missing' script is too old or missing])
-fi
-])
-
-# Helper functions for option handling. -*- Autoconf -*-
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 6
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# --------------------
-# Set option NAME. Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Check to make sure that the build environment is sane. -*- Autoconf -*-
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 9
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[[\\\"\#\$\&\'\`$am_lf]]*)
- AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
- *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
- AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
-esac
-
-# Do 'set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- am_has_slept=no
- for am_try in 1 2; do
- echo "timestamp, slept: $am_has_slept" > conftest.file
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$[*]" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- if test "$[*]" != "X $srcdir/configure conftest.file" \
- && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
- alias in your environment])
- fi
- if test "$[2]" = conftest.file || test $am_try -eq 2; then
- break
- fi
- # Just in case.
- sleep 1
- am_has_slept=yes
- done
- test "$[2]" = conftest.file
- )
-then
- # Ok.
- :
-else
- AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT([yes])
-# If we didn't sleep, we still need to ensure time stamps of config.status and
-# generated files are strictly newer.
-am_sleep_pid=
-if grep 'slept: no' conftest.file >/dev/null 2>&1; then
- ( sleep 1 ) &
- am_sleep_pid=$!
-fi
-AC_CONFIG_COMMANDS_PRE(
- [AC_MSG_CHECKING([that generated files are newer than configure])
- if test -n "$am_sleep_pid"; then
- # Hide warnings about reused PIDs.
- wait $am_sleep_pid 2>/dev/null
- fi
- AC_MSG_RESULT([done])])
-rm -f conftest.file
-])
-
-# Copyright (C) 2001-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 2
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor 'install' (even GNU) is that you can't
-# specify the program used to strip binaries. This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in "make install-strip", and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using 'strip' when the user
-# run "make install-strip". However 'strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the 'STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
-if test "$cross_compiling" != no; then
- AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 3
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# --------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball. -*- Autoconf -*-
-
-# Copyright (C) 2004-2012 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 3
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of 'v7', 'ustar', or 'pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-# tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-# $(am__untar) < result.tar
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility. Yes, it's still used
-# in the wild :-( We should find a proper way to deprecate it ...
-AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
- [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
- [m4_case([$1], [ustar],, [pax],,
- [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of '-'.
-for _am_tool in $_am_tools
-do
- case $_am_tool in
- gnutar)
- for _am_tar in tar gnutar gtar;
- do
- AM_RUN_LOG([$_am_tar --version]) && break
- done
- am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
- am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
- am__untar="$_am_tar -xf -"
- ;;
- plaintar)
- # Must skip GNU tar: if it does not support --format= it doesn't create
- # ustar tarball either.
- (tar --version) >/dev/null 2>&1 && continue
- am__tar='tar chf - "$$tardir"'
- am__tar_='tar chf - "$tardir"'
- am__untar='tar xf -'
- ;;
- pax)
- am__tar='pax -L -x $1 -w "$$tardir"'
- am__tar_='pax -L -x $1 -w "$tardir"'
- am__untar='pax -r'
- ;;
- cpio)
- am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
- am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
- am__untar='cpio -i -H $1 -d'
- ;;
- none)
- am__tar=false
- am__tar_=false
- am__untar=false
- ;;
- esac
-
- # If the value was cached, stop now. We just wanted to have am__tar
- # and am__untar set.
- test -n "${am_cv_prog_tar_$1}" && break
-
- # tar/untar a dummy directory, and stop if the command works
- rm -rf conftest.dir
- mkdir conftest.dir
- echo GrepMe > conftest.dir/file
- AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
- rm -rf conftest.dir
- if test -s conftest.tar; then
- AM_RUN_LOG([$am__untar <conftest.tar])
- grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
- fi
-done
-rm -rf conftest.dir
-
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-]) # _AM_PROG_TAR
-
-m4_include([m4macros/eso.m4])
-m4_include([acinclude.m4])
diff --git a/external/sextractor/admin/config.guess b/external/sextractor/admin/config.guess
deleted file mode 100755
index c0adba9..0000000
--- a/external/sextractor/admin/config.guess
+++ /dev/null
@@ -1,1530 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
-
-timestamp='2012-06-10'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner. Please send patches (context
-# diff format) to <config-patches at gnu.org> and include a ChangeLog
-# entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
-#
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help" >&2
- exit 1 ;;
- * )
- break ;;
- esac
-done
-
-if test $# != 0; then
- echo "$me: too many arguments$help" >&2
- exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
- # compatibility and a consistent mechanism for selecting the
- # object file format.
- #
- # Note: NetBSD doesn't particularly care about the vendor
- # portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
- armeb) machine=armeb-unknown ;;
- arm*) machine=arm-unknown ;;
- sh3el) machine=shl-unknown ;;
- sh3eb) machine=sh-unknown ;;
- sh5el) machine=sh5le-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
- esac
- # The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ELF__
- then
- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
- # Return netbsd for either. FIX?
- os=netbsd
- else
- os=netbsdelf
- fi
- ;;
- *)
- os=netbsd
- ;;
- esac
- # The OS release
- # Debian GNU/NetBSD machines have a different userland, and
- # thus, need a distinct triplet. However, they do not need
- # kernel version information, so it can be replaced with a
- # suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
- Debian*)
- release='-gnu'
- ;;
- *)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- ;;
- esac
- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
- # contains redundant information, the shorter form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit ;;
- *:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
- exit ;;
- *:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit ;;
- *:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
- exit ;;
- macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- *:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- alpha:OSF1:*:*)
- case $UNAME_RELEASE in
- *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- ;;
- *5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
- ;;
- esac
- # According to Compaq, /usr/sbin/psrinfo has been available on
- # OSF/1 and Tru64 systems produced since 1995. I hope that
- # covers most systems running today. This code pipes the CPU
- # types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
- "EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
- "EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
- "LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
- "EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
- "EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
- "EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
- "EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
- "EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
- "EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
- "EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
- "EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
- "EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
- esac
- # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # A Tn.n version is a released field test version.
- # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
- exitcode=$?
- trap '' 0
- exit $exitcode ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit ;;
- Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
- exit ;;
- *:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
- exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
- exit ;;
- *:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
- *:OS400:*:*)
- echo powerpc-ibm-os400
- exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit ;;
- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- # akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit ;;
- DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit ;;
- DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
- case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
- s390x:SunOS:*:*)
- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux${UNAME_RELEASE}
- exit ;;
- i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval $set_cc_for_build
- SUN_ARCH="i386"
- # If there is a compiler, see if it is configured for 64-bit objects.
- # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
- # This test works for both compilers.
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- SUN_ARCH="x86_64"
- fi
- fi
- echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
- # it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
- UNAME_RELEASE=`uname -v`
- ;;
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit ;;
- sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- case "`/bin/arch`" in
- sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
- ;;
- sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
- exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
- exit ;;
- # The situation for MiNT is a little confusing. The machine name
- # can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
- # MiNT. But MiNT is downward compatible to TOS, so this should
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit ;;
- m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
- exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
- exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
- exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
- #if defined (host_mips) && defined (MIPSEB)
- #if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
- #endif
- #endif
- exit (-1);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos${UNAME_RELEASE}
- exit ;;
- Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit ;;
- Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
- then
- echo m88k-dg-dgux${UNAME_RELEASE}
- else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
- fi
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
- exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i*86:AIX:*:*)
- echo i386-ibm-aix
- exit ;;
- ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
- main()
- {
- if (!__power_pc())
- exit(1);
- puts("powerpc-ibm-aix3.2.5");
- exit(0);
- }
-EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
- then
- echo "$SYSTEM_NAME"
- else
- echo rs6000-ibm-aix3.2.5
- fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
- exit ;;
- *:AIX:*:[4567])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
- fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
- exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
- exit ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
- exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit ;;
- 9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
- 9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
- fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
-
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
-EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
- test -z "$HP_ARCH" && HP_ARCH=hppa
- fi ;;
- esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
- then
- eval $set_cc_for_build
-
- # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
- # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
- # generating 64-bit code. GNU and HP use different nomenclature:
- #
- # $ CC_FOR_BUILD=cc ./config.guess
- # => hppa2.0w-hp-hpux11.23
- # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
- # => hppa64-hp-hpux11.23
-
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep -q __LP64__
- then
- HP_ARCH="hppa2.0w"
- else
- HP_ARCH="hppa64"
- fi
- fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit ;;
- ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
- exit ;;
- 3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
- main ()
- {
- long cpu = sysconf (_SC_CPU_VERSION);
- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
- results, however. */
- if (CPU_IS_PA_RISC (cpu))
- {
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
- default: puts ("hppa-hitachi-hiuxwe2"); break;
- }
- }
- else if (CPU_IS_HP_MC68K (cpu))
- puts ("m68k-hitachi-hiuxwe2");
- else puts ("unknown-hitachi-hiuxwe2");
- exit (0);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
- exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
- exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit ;;
- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
- exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit ;;
- i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
- exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit ;;
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
- -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- *:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- 5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:FreeBSD:*:*)
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- case ${UNAME_PROCESSOR} in
- amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- esac
- exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit ;;
- *:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit ;;
- i*:MSYS*:*)
- echo ${UNAME_MACHINE}-pc-msys
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
- exit ;;
- i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
- exit ;;
- *:Interix*:*)
- case ${UNAME_MACHINE} in
- x86)
- echo i586-pc-interix${UNAME_RELEASE}
- exit ;;
- authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
- exit ;;
- IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
- exit ;;
- esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit ;;
- 8664:Windows_NT:*)
- echo x86_64-pc-mks
- exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
- exit ;;
- amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- *:GNU:*:*)
- # the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit ;;
- *:GNU/*:*:*)
- # other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit ;;
- aarch64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- aarch64_be:Linux:*:*)
- UNAME_MACHINE=aarch64_be
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit ;;
- arm*:Linux:*:*)
- eval $set_cc_for_build
- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_EABI__
- then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- else
- if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_PCS_VFP
- then
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
- else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
- fi
- fi
- exit ;;
- avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- cris:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
- exit ;;
- crisv32:Linux:*:*)
- echo ${UNAME_MACHINE}-axis-linux-gnu
- exit ;;
- frv:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- hexagon:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- i*86:Linux:*:*)
- LIBC=gnu
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
- exit ;;
- ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
- ;;
- or32:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
- exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
- exit ;;
- parisc:Linux:*:* | hppa:Linux:*:*)
- # Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
- esac
- exit ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
- exit ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
- exit ;;
- s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
- exit ;;
- sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- tile*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
- exit ;;
- x86_64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
- # earlier versions are messed up and put the nodename in both
- # sysname and nodename.
- echo i386-sequent-sysv4
- exit ;;
- i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
- # I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit ;;
- i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
- exit ;;
- i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
- exit ;;
- i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
- exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
- exit ;;
- i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
- case `/bin/uname -X | grep "^Machine"` in
- *486*) UNAME_MACHINE=i486 ;;
- *Pentium) UNAME_MACHINE=i586 ;;
- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
- esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit ;;
- i*86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
- exit ;;
- pc:*:*:*)
- # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i586.
- # Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configury will decide that
- # this is a cross-build.
- echo i586-pc-msdosdjgpp
- exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
- exit ;;
- i860:*:4.*:*) # i860-SVR4
- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
- exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
- exit ;;
- mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit ;;
- M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit ;;
- M68*:*:R3V[5678]*:*)
- test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
- 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
- NCR*:*:4.2:* | MPRAS*:*:4.2:*)
- OS_REL='.3'
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
- exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
- else
- echo ns32k-sni-sysv
- fi
- exit ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel at ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes at openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit ;;
- *:*:*:FTX*)
- # From seanf at swdc.stratus.com.
- echo i860-stratus-sysv4
- exit ;;
- i*86:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
- exit ;;
- *:VOS:*:*)
- # From Paul.Green at stratus.com.
- echo hppa1.1-stratus-vos
- exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
- exit ;;
- news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
- exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit ;;
- BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux${UNAME_RELEASE}
- exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- i386)
- eval $set_cc_for_build
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- UNAME_PROCESSOR="x86_64"
- fi
- fi ;;
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
- UNAME_PROCESSOR=i386
- UNAME_MACHINE=pc
- fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit ;;
- *:QNX:*:4*)
- echo i386-pc-qnx
- exit ;;
- NEO-?:NONSTOP_KERNEL:*:*)
- echo neo-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSE-*:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSR-?:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
- exit ;;
- *:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit ;;
- BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit ;;
- DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit ;;
- *:Plan9:*:*)
- # "uname -m" is not consistent, so use $cputype instead. 386
- # is converted to i386 for consistency with other x86
- # operating systems.
- if test "$cputype" = "386"; then
- UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
- fi
- echo ${UNAME_MACHINE}-unknown-plan9
- exit ;;
- *:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit ;;
- *:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit ;;
- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit ;;
- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit ;;
- *:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit ;;
- *:ITS:*:*)
- echo pdp10-unknown-its
- exit ;;
- SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
- exit ;;
- *:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit ;;
- *:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "${UNAME_MACHINE}" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
- esac ;;
- *:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
- i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
- exit ;;
- i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
- exit ;;
- i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
- exit ;;
- x86_64:VMkernel:*:*)
- echo ${UNAME_MACHINE}-unknown-esx
- exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
- exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches at gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/external/sextractor/admin/config.sub b/external/sextractor/admin/config.sub
deleted file mode 100755
index 6205f84..0000000
--- a/external/sextractor/admin/config.sub
+++ /dev/null
@@ -1,1782 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
-
-timestamp='2012-04-18'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches at gnu.org>. Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches at gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
-Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo $1
- exit ;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
- linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
- knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- android-linux)
- os=-linux-android
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze)
- os=
- basic_machine=$1
- ;;
- -bluegene*)
- os=-cnk
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*178)
- os=-lynxos178
- ;;
- -lynx*5)
- os=-lynxos5
- ;;
- -lynx*)
- os=-lynxos
- ;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
- -psos*)
- os=-psos
- ;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | aarch64 | aarch64_be \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
- | be32 | be64 \
- | bfin \
- | c4x | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | epiphany \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | hexagon \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | le32 | le64 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nds32 | nds32le | nds32be \
- | nios | nios2 \
- | ns16k | ns32k \
- | open8 \
- | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle \
- | pyramid \
- | rl78 | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu \
- | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
- | we32k \
- | x86 | xc16x | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- c54x)
- basic_machine=tic54x-unknown
- ;;
- c55x)
- basic_machine=tic55x-unknown
- ;;
- c6x)
- basic_machine=tic6x-unknown
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
- ms1)
- basic_machine=mt-unknown
- ;;
-
- strongarm | thumb | xscale)
- basic_machine=arm-unknown
- ;;
- xgate)
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- xscaleeb)
- basic_machine=armeb-unknown
- ;;
-
- xscaleel)
- basic_machine=armel-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | aarch64-* | aarch64_be-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | be32-* | be64-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* \
- | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | hexagon-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | le32-* | le64-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nds32-* | nds32le-* | nds32be-* \
- | nios-* | nios2-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | open8-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
- | pyramid-* \
- | rl78-* | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
- | tahoe-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
- | tile*-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
- | vax-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=-aros
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- bluegene*)
- basic_machine=powerpc-ibm
- os=-cnk
- ;;
- c54x-*)
- basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c55x-*)
- basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c6x-*)
- basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=-cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16 | cr16-*)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=-dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
- i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
- i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
- i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
- ;;
- *)
- os=-irix4
- ;;
- esac
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- microblaze)
- basic_machine=microblaze-xilinx
- ;;
- mingw32)
- basic_machine=i386-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- msys)
- basic_machine=i386-pc
- os=-msys
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- nacl)
- basic_machine=le32-unknown
- os=-nacl
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
- ;;
- -ns2*)
- os=-nextstep2
- ;;
- *)
- os=-nextstep3
- ;;
- esac
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- neo-tandem)
- basic_machine=neo-tandem
- ;;
- nse-tandem)
- basic_machine=nse-tandem
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc | ppcbe) basic_machine=powerpc-unknown
- ;;
- ppc-* | ppcbe-*)
- basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rdos)
- basic_machine=i386-pc
- os=-rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sde)
- basic_machine=mipsisa32-sde
- os=-elf
- ;;
- sei)
- basic_machine=mips-sei
- os=-seiux
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh5el)
- basic_machine=sh5le-unknown
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
- ;;
- strongarm-* | thumb-*)
- basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=-unicos
- ;;
- tile*)
- basic_machine=$basic_machine-unknown
- os=-linux-gnu
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- tpf)
- basic_machine=s390x-ibm
- os=-tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=-vms
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
- ;;
- w65*)
- basic_machine=w65-wdc
- os=-none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- xscale-* | xscalee[bl]-*)
- basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
- ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
- z80-*-coff)
- basic_machine=z80-unknown
- os=-sim
- ;;
- none)
- basic_machine=none-none
- os=-none
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- mmix)
- basic_machine=mmix-knuth
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -auroraux)
- os=-auroraux
- ;;
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- -solaris)
- os=-solaris2
- ;;
- -svr4*)
- os=-sysv4
- ;;
- -unixware*)
- os=-sysv4.2uw
- ;;
- -gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
- | -sym* | -kopensolaris* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* \
- | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-android* \
- | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=-nto$os
- ;;
- esac
- ;;
- -nto-qnx*)
- ;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
- -linux-dietlibc)
- os=-linux-dietlibc
- ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
- ;;
- -opened*)
- os=-openedition
- ;;
- -os400*)
- os=-os400
- ;;
- -wince*)
- os=-wince
- ;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
- -utek*)
- os=-bsd
- ;;
- -dynix*)
- os=-bsd
- ;;
- -acis*)
- os=-aos
- ;;
- -atheos*)
- os=-atheos
- ;;
- -syllable*)
- os=-syllable
- ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
- -nova*)
- os=-rtmk-nova
- ;;
- -ns2 )
- os=-nextstep2
- ;;
- -nsk*)
- os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- -sinix*)
- os=-sysv4
- ;;
- -tpf*)
- os=-tpf
- ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
- -svr4)
- os=-sysv4
- ;;
- -svr3)
- os=-sysv3
- ;;
- -sysvr4)
- os=-sysv4
- ;;
- # This must come after -sysvr4.
- -sysv*)
- ;;
- -ose*)
- os=-ose
- ;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
- ;;
- -aros*)
- os=-aros
- ;;
- -kaos*)
- os=-kaos
- ;;
- -zvmoe)
- os=-zvmoe
- ;;
- -dicos*)
- os=-dicos
- ;;
- -nacl*)
- ;;
- -none)
- ;;
- *)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- score-*)
- os=-elf
- ;;
- spu-*)
- os=-elf
- ;;
- *-acorn)
- os=-riscix1.2
- ;;
- arm*-rebel)
- os=-linux
- ;;
- arm*-semi)
- os=-aout
- ;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
- hexagon-*)
- os=-elf
- ;;
- tic54x-*)
- os=-coff
- ;;
- tic55x-*)
- os=-coff
- ;;
- tic6x-*)
- os=-coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=-tops20
- ;;
- pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
- os=-ultrix4.2
- ;;
- m68*-apollo)
- os=-domain
- ;;
- i386-sun)
- os=-sunos4.0.2
- ;;
- m68000-sun)
- os=-sunos3
- ;;
- m68*-cisco)
- os=-aout
- ;;
- mep-*)
- os=-elf
- ;;
- mips*-cisco)
- os=-elf
- ;;
- mips*-*)
- os=-elf
- ;;
- or32-*)
- os=-coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
- sparc-* | *-sun)
- os=-sunos4.1.1
- ;;
- *-be)
- os=-beos
- ;;
- *-haiku)
- os=-haiku
- ;;
- *-ibm)
- os=-aix
- ;;
- *-knuth)
- os=-mmixware
- ;;
- *-wec)
- os=-proelf
- ;;
- *-winbond)
- os=-proelf
- ;;
- *-oki)
- os=-proelf
- ;;
- *-hp)
- os=-hpux
- ;;
- *-hitachi)
- os=-hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
- ;;
- *-cbm)
- os=-amigaos
- ;;
- *-dg)
- os=-dgux
- ;;
- *-dolphin)
- os=-sysv3
- ;;
- m68k-ccur)
- os=-rtu
- ;;
- m88k-omron*)
- os=-luna
- ;;
- *-next )
- os=-nextstep
- ;;
- *-sequent)
- os=-ptx
- ;;
- *-crds)
- os=-unos
- ;;
- *-ns)
- os=-genix
- ;;
- i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
- ;;
- *-gould)
- os=-sysv
- ;;
- *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
- *-sgi)
- os=-irix
- ;;
- *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
- os=-coff
- ;;
- *-*bug)
- os=-coff
- ;;
- *-apple)
- os=-macos
- ;;
- *-atari*)
- os=-mint
- ;;
- *)
- os=-none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
- vendor=acorn
- ;;
- -sunos*)
- vendor=sun
- ;;
- -cnk*|-aix*)
- vendor=ibm
- ;;
- -beos*)
- vendor=be
- ;;
- -hpux*)
- vendor=hp
- ;;
- -mpeix*)
- vendor=hp
- ;;
- -hiux*)
- vendor=hitachi
- ;;
- -unos*)
- vendor=crds
- ;;
- -dgux*)
- vendor=dg
- ;;
- -luna*)
- vendor=omron
- ;;
- -genix*)
- vendor=ns
- ;;
- -mvs* | -opened*)
- vendor=ibm
- ;;
- -os400*)
- vendor=ibm
- ;;
- -ptx*)
- vendor=sequent
- ;;
- -tpf*)
- vendor=ibm
- ;;
- -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
- vendor=apple
- ;;
- -hms*)
- vendor=hitachi
- ;;
- -mpw* | -macos*)
- vendor=apple
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
- -vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
diff --git a/external/sextractor/admin/install-sh b/external/sextractor/admin/install-sh
deleted file mode 100755
index 377bb86..0000000
--- a/external/sextractor/admin/install-sh
+++ /dev/null
@@ -1,527 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2011-11-20.07; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# 'make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-nl='
-'
-IFS=" "" $nl"
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit=${DOITPROG-}
-if test -z "$doit"; then
- doit_exec=exec
-else
- doit_exec=$doit
-fi
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_glob='?'
-initialize_posix_glob='
- test "$posix_glob" != "?" || {
- if (set -f) 2>/dev/null; then
- posix_glob=
- else
- posix_glob=:
- fi
- }
-'
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-no_target_directory=
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
- or: $0 [OPTION]... SRCFILES... DIRECTORY
- or: $0 [OPTION]... -t DIRECTORY SRCFILES...
- or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
- --help display this help and exit.
- --version display version info and exit.
-
- -c (ignored)
- -C install only if different (preserve the last data modification time)
- -d create directories instead of installing files.
- -g GROUP $chgrpprog installed files to GROUP.
- -m MODE $chmodprog installed files to MODE.
- -o USER $chownprog installed files to USER.
- -s $stripprog installed files.
- -t DIRECTORY install into DIRECTORY.
- -T report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
- CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
- RMPROG STRIPPROG
-"
-
-while test $# -ne 0; do
- case $1 in
- -c) ;;
-
- -C) copy_on_change=true;;
-
- -d) dir_arg=true;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift;;
-
- --help) echo "$usage"; exit $?;;
-
- -m) mode=$2
- case $mode in
- *' '* | *' '* | *'
-'* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
-
- -o) chowncmd="$chownprog $2"
- shift;;
-
- -s) stripcmd=$stripprog;;
-
- -t) dst_arg=$2
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- shift;;
-
- -T) no_target_directory=true;;
-
- --version) echo "$0 $scriptversion"; exit $?;;
-
- --) shift
- break;;
-
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
-
- *) break;;
- esac
- shift
-done
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
- # When -d is used, all remaining arguments are directories to create.
- # When -t is used, the destination is already specified.
- # Otherwise, the last argument is the destination. Remove it from $@.
- for arg
- do
- if test -n "$dst_arg"; then
- # $@ is not empty: it contains at least $arg.
- set fnord "$@" "$dst_arg"
- shift # fnord
- fi
- shift # arg
- dst_arg=$arg
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- done
-fi
-
-if test $# -eq 0; then
- if test -z "$dir_arg"; then
- echo "$0: no input file specified." >&2
- exit 1
- fi
- # It's OK to call 'install-sh -d' without argument.
- # This can happen when creating conditional directories.
- exit 0
-fi
-
-if test -z "$dir_arg"; then
- do_exit='(exit $ret); exit $ret'
- trap "ret=129; $do_exit" 1
- trap "ret=130; $do_exit" 2
- trap "ret=141; $do_exit" 13
- trap "ret=143; $do_exit" 15
-
- # Set umask so as not to create temps with too-generous modes.
- # However, 'strip' requires both read and write access to temps.
- case $mode in
- # Optimize common cases.
- *644) cp_umask=133;;
- *755) cp_umask=22;;
-
- *[0-7])
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw='% 200'
- fi
- cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
- *)
- if test -z "$stripcmd"; then
- u_plus_rw=
- else
- u_plus_rw=,u+rw
- fi
- cp_umask=$mode$u_plus_rw;;
- esac
-fi
-
-for src
-do
- # Protect names problematic for 'test' and other utilities.
- case $src in
- -* | [=\(\)!]) src=./$src;;
- esac
-
- if test -n "$dir_arg"; then
- dst=$src
- dstdir=$dst
- test -d "$dstdir"
- dstdir_status=$?
- else
-
- # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
- # might cause directories to be created, which would be especially bad
- # if $src (and thus $dsttmp) contains '*'.
- if test ! -f "$src" && test ! -d "$src"; then
- echo "$0: $src does not exist." >&2
- exit 1
- fi
-
- if test -z "$dst_arg"; then
- echo "$0: no destination specified." >&2
- exit 1
- fi
- dst=$dst_arg
-
- # If destination is a directory, append the input filename; won't work
- # if double slashes aren't ignored.
- if test -d "$dst"; then
- if test -n "$no_target_directory"; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
- fi
- dstdir=$dst
- dst=$dstdir/`basename "$src"`
- dstdir_status=0
- else
- # Prefer dirname, but fall back on a substitute if dirname fails.
- dstdir=`
- (dirname "$dst") 2>/dev/null ||
- expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$dst" : 'X\(//\)[^/]' \| \
- X"$dst" : 'X\(//\)$' \| \
- X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
- echo X"$dst" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'
- `
-
- test -d "$dstdir"
- dstdir_status=$?
- fi
- fi
-
- obsolete_mkdir_used=false
-
- if test $dstdir_status != 0; then
- case $posix_mkdir in
- '')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
- # With -d, create the new directory with the user-specified mode.
- # Otherwise, rely on $mkdir_umask.
- if test -n "$dir_arg"; then
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- fi
-
- posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
- esac
-
- if
- $posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
- )
- then :
- else
-
- # The umask is ridiculous, or mkdir does not conform to POSIX,
- # or it failed possibly due to a race condition. Create the
- # directory the slow way, step by step, checking for races as we go.
-
- case $dstdir in
- /*) prefix='/';;
- [-=\(\)!]*) prefix='./';;
- *) prefix='';;
- esac
-
- eval "$initialize_posix_glob"
-
- oIFS=$IFS
- IFS=/
- $posix_glob set -f
- set fnord $dstdir
- shift
- $posix_glob set +f
- IFS=$oIFS
-
- prefixes=
-
- for d
- do
- test X"$d" = X && continue
-
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (umask=$mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
- # Don't fail if two instances are running concurrently.
- test -d "$prefix" || exit 1
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
- done
-
- if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
- fi
- fi
- fi
-
- if test -n "$dir_arg"; then
- { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
- { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
- test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
- else
-
- # Make a couple of temp file names in the proper directory.
- dsttmp=$dstdir/_inst.$$_
- rmtmp=$dstdir/_rm.$$_
-
- # Trap to clean up those temp files at exit.
- trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
- # Copy the file name to the temp name.
- (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
-
- # and set any options; do chmod last to preserve setuid bits.
- #
- # If any of these fail, we abort the whole thing. If we want to
- # ignore errors from any of these, just make sure not to ignore
- # errors from the above "$doit $cpprog $src $dsttmp" command.
- #
- { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
- { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
- { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
- { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
- # If -C, don't bother to copy if it wouldn't change the file.
- if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
-
- eval "$initialize_posix_glob" &&
- $posix_glob set -f &&
- set X $old && old=:$2:$4:$5:$6 &&
- set X $new && new=:$2:$4:$5:$6 &&
- $posix_glob set +f &&
-
- test "$old" = "$new" &&
- $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
- then
- rm -f "$dsttmp"
- else
- # Rename the file to the real destination.
- $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
- # The rename failed, perhaps because mv can't rename something else
- # to itself, or perhaps because mv is so ancient that it does not
- # support -f.
- {
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
- }
- fi || exit 1
-
- trap '' 0
- fi
-done
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/external/sextractor/admin/missing b/external/sextractor/admin/missing
deleted file mode 100755
index 9a55648..0000000
--- a/external/sextractor/admin/missing
+++ /dev/null
@@ -1,330 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-
-scriptversion=2012-01-06.18; # UTC
-
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
- echo 1>&2 "Try '$0 --help' for more information"
- exit 1
-fi
-
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, 'missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
- configure_ac=configure.ac
-else
- configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
-case $1 in
---run)
- # Try to run requested program, and just exit if it succeeds.
- run=
- shift
- "$@" && exit 0
- # Exit code 63 means version mismatch. This often happens
- # when the user try to use an ancient version of a tool on
- # a file that requires a minimum version. In this case we
- # we should proceed has if the program had been absent, or
- # if --run hadn't been passed.
- if test $? = 63; then
- run=:
- msg="probably too old"
- fi
- ;;
-
- -h|--h|--he|--hel|--help)
- echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
- -h, --help display this help and exit
- -v, --version output version information and exit
- --run try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
- aclocal touch file 'aclocal.m4'
- autoconf touch file 'configure'
- autoheader touch file 'config.h.in'
- autom4te touch the output file, or create a stub one
- automake touch all 'Makefile.in' files
- bison create 'y.tab.[ch]', if possible, from existing .[ch]
- flex create 'lex.yy.c', if possible, from existing .c
- help2man touch the output file
- lex create 'lex.yy.c', if possible, from existing .c
- makeinfo touch the output file
- yacc create 'y.tab.[ch]', if possible, from existing .[ch]
-
-Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
-'g' are ignored when checking the name.
-
-Send bug reports to <bug-automake at gnu.org>."
- exit $?
- ;;
-
- -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
- echo "missing $scriptversion (GNU Automake)"
- exit $?
- ;;
-
- -*)
- echo 1>&2 "$0: Unknown '$1' option"
- echo 1>&2 "Try '$0 --help' for more information"
- exit 1
- ;;
-
-esac
-
-# normalize program name to check for.
-program=`echo "$1" | sed '
- s/^gnu-//; t
- s/^gnu//; t
- s/^g//; t'`
-
-# Now exit if we have it, but it failed. Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program). This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
- lex*|yacc*)
- # Not GNU programs, they don't have --version.
- ;;
-
- *)
- if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
- # We have it, but it failed.
- exit 1
- elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
- # Could not run --version or --help. This is probably someone
- # running '$TOOL --version' or '$TOOL --help' to check whether
- # $TOOL exists and not knowing $TOOL uses missing.
- exit 1
- fi
- ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
- aclocal*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'acinclude.m4' or '${configure_ac}'. You might want
- to install the Automake and Perl packages. Grab them from
- any GNU archive site."
- touch aclocal.m4
- ;;
-
- autoconf*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified '${configure_ac}'. You might want to install the
- Autoconf and GNU m4 packages. Grab them from any GNU
- archive site."
- touch configure
- ;;
-
- autoheader*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'acconfig.h' or '${configure_ac}'. You might want
- to install the Autoconf and GNU m4 packages. Grab them
- from any GNU archive site."
- files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
- test -z "$files" && files="config.h"
- touch_files=
- for f in $files; do
- case $f in
- *:*) touch_files="$touch_files "`echo "$f" |
- sed -e 's/^[^:]*://' -e 's/:.*//'`;;
- *) touch_files="$touch_files $f.in";;
- esac
- done
- touch $touch_files
- ;;
-
- automake*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
- You might want to install the Automake and Perl packages.
- Grab them from any GNU archive site."
- find . -type f -name Makefile.am -print |
- sed 's/\.am$/.in/' |
- while read f; do touch "$f"; done
- ;;
-
- autom4te*)
- echo 1>&2 "\
-WARNING: '$1' is needed, but is $msg.
- You might have modified some files without having the
- proper tools for further handling them.
- You can get '$1' as part of Autoconf from any GNU
- archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo "#! /bin/sh"
- echo "# Created by GNU Automake missing as a replacement of"
- echo "# $ $@"
- echo "exit 0"
- chmod +x $file
- exit 1
- fi
- ;;
-
- bison*|yacc*)
- echo 1>&2 "\
-WARNING: '$1' $msg. You should only need it if
- you modified a '.y' file. You may need the Bison package
- in order for those modifications to take effect. You can get
- Bison from any GNU archive site."
- rm -f y.tab.c y.tab.h
- if test $# -ne 1; then
- eval LASTARG=\${$#}
- case $LASTARG in
- *.y)
- SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.c
- fi
- SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" y.tab.h
- fi
- ;;
- esac
- fi
- if test ! -f y.tab.h; then
- echo >y.tab.h
- fi
- if test ! -f y.tab.c; then
- echo 'main() { return 0; }' >y.tab.c
- fi
- ;;
-
- lex*|flex*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a '.l' file. You may need the Flex package
- in order for those modifications to take effect. You can get
- Flex from any GNU archive site."
- rm -f lex.yy.c
- if test $# -ne 1; then
- eval LASTARG=\${$#}
- case $LASTARG in
- *.l)
- SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- if test -f "$SRCFILE"; then
- cp "$SRCFILE" lex.yy.c
- fi
- ;;
- esac
- fi
- if test ! -f lex.yy.c; then
- echo 'main() { return 0; }' >lex.yy.c
- fi
- ;;
-
- help2man*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a dependency of a manual page. You may need the
- Help2man package in order for those modifications to take
- effect. You can get Help2man from any GNU archive site."
-
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -f "$file"; then
- touch $file
- else
- test -z "$file" || exec >$file
- echo ".ab help2man is required to generate this page"
- exit $?
- fi
- ;;
-
- makeinfo*)
- echo 1>&2 "\
-WARNING: '$1' is $msg. You should only need it if
- you modified a '.texi' or '.texinfo' file, or any other file
- indirectly affecting the aspect of the manual. The spurious
- call might also be the consequence of using a buggy 'make' (AIX,
- DU, IRIX). You might want to install the Texinfo package or
- the GNU make package. Grab either from any GNU archive site."
- # The file to touch is that specified with -o ...
- file=`echo "$*" | sed -n "$sed_output"`
- test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
- if test -z "$file"; then
- # ... or it is the one specified with @setfilename ...
- infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
- file=`sed -n '
- /^@setfilename/{
- s/.* \([^ ]*\) *$/\1/
- p
- q
- }' $infile`
- # ... or it is derived from the source name (dir/f.texi becomes f.info)
- test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
- fi
- # If the file does not exist, the user really needs makeinfo;
- # let's fail without touching anything.
- test -f $file || exit 1
- touch $file
- ;;
-
- *)
- echo 1>&2 "\
-WARNING: '$1' is needed, and is $msg.
- You might have modified some files without having the
- proper tools for further handling them. Check the 'README' file,
- it often tells you about the needed prerequisites for installing
- this package. You may also peek at any GNU archive site, in case
- some other package would contain this missing '$1' program."
- exit 1
- ;;
-esac
-
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/external/sextractor/config/README b/external/sextractor/config/README
deleted file mode 100644
index 7a8c593..0000000
--- a/external/sextractor/config/README
+++ /dev/null
@@ -1,29 +0,0 @@
-This directory contains several ASCII files related to SExtractor
-configuration:
-
-default.sex: an example of SExtractor .sex configuration file.
-default.param: a .param file, containing all parameters known by SExtractor.
- To prevent some parameters to figure in the output catalog,
- just erase or comment their names (by adding a # at the
- beginning of the line).
-default.nnw: a "Neural-Network-Weights" file for star/galaxy separation on
- images with Moffat-like PSFs.
-*.conv: several "classical" convolution masks for optimal detection:
- - default.conv a small pyramidal function (fast),
- - gauss*.conv a set of gaussian functions, for
- seeing FWHMs between 1.5 and 5 pixels
- (best for faint object detection),
- - tophat*.conv a set of "top-hat" functions. Use them
- to detect extended, low-surface
- brightness objects, with a very low
- THRESHOLD.
- - mexhat*.conv "wavelets", producing a passband-
- filtering of the image, tuned to
- seeing FWHMs between 1.5 and 5 pixels.
- Useful in very crowded star fields,
- or in the vicinity of a nebula.
- WARNING: may need a high THRESHOLD!!
- - block_3x3.conv a small "block" function (for rebinned
- images like those of the DeNIS survey).
-
- All these convolution files are normalized by default.
diff --git a/external/sextractor/config/block_3x3.conv b/external/sextractor/config/block_3x3.conv
deleted file mode 100644
index 3884ce2..0000000
--- a/external/sextractor/config/block_3x3.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a block-function PSF (ex: DeNIS PSF).
-1 1 1
-1 1 1
-1 1 1
diff --git a/external/sextractor/config/default.conv b/external/sextractor/config/default.conv
deleted file mode 100644
index 2590b9c..0000000
--- a/external/sextractor/config/default.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 ``all-ground'' convolution mask with FWHM = 2 pixels.
-1 2 1
-2 4 2
-1 2 1
diff --git a/external/sextractor/config/default.nnw b/external/sextractor/config/default.nnw
deleted file mode 100644
index 4b521bd..0000000
--- a/external/sextractor/config/default.nnw
+++ /dev/null
@@ -1,28 +0,0 @@
-NNW
-# Neural Network Weights for the SExtractor star/galaxy classifier (V1.3)
-# inputs: 9 for profile parameters + 1 for seeing.
-# outputs: ``Stellarity index'' (0.0 to 1.0)
-# Seeing FWHM range: from 0.025 to 5.5'' (images must have 1.5 < FWHM < 5 pixels)
-# Optimized for Moffat profiles with 2<= beta <= 4.
-
- 3 10 10 1
-
--1.56604e+00 -2.48265e+00 -1.44564e+00 -1.24675e+00 -9.44913e-01 -5.22453e-01 4.61342e-02 8.31957e-01 2.15505e+00 2.64769e-01
- 3.03477e+00 2.69561e+00 3.16188e+00 3.34497e+00 3.51885e+00 3.65570e+00 3.74856e+00 3.84541e+00 4.22811e+00 3.27734e+00
-
--3.22480e-01 -2.12804e+00 6.50750e-01 -1.11242e+00 -1.40683e+00 -1.55944e+00 -1.84558e+00 -1.18946e-01 5.52395e-01 -4.36564e-01 -5.30052e+00
- 4.62594e-01 -3.29127e+00 1.10950e+00 -6.01857e-01 1.29492e-01 1.42290e+00 2.90741e+00 2.44058e+00 -9.19118e-01 8.42851e-01 -4.69824e+00
--2.57424e+00 8.96469e-01 8.34775e-01 2.18845e+00 2.46526e+00 8.60878e-02 -6.88080e-01 -1.33623e-02 9.30403e-02 1.64942e+00 -1.01231e+00
- 4.81041e+00 1.53747e+00 -1.12216e+00 -3.16008e+00 -1.67404e+00 -1.75767e+00 -1.29310e+00 5.59549e-01 8.08468e-01 -1.01592e-02 -7.54052e+00
- 1.01933e+01 -2.09484e+01 -1.07426e+00 9.87912e-01 6.05210e-01 -6.04535e-02 -5.87826e-01 -7.94117e-01 -4.89190e-01 -8.12710e-02 -2.07067e+01
--5.31793e+00 7.94240e+00 -4.64165e+00 -4.37436e+00 -1.55417e+00 7.54368e-01 1.09608e+00 1.45967e+00 1.62946e+00 -1.01301e+00 1.13514e-01
- 2.20336e-01 1.70056e+00 -5.20105e-01 -4.28330e-01 1.57258e-03 -3.36502e-01 -8.18568e-02 -7.16163e+00 8.23195e+00 -1.71561e-02 -1.13749e+01
- 3.75075e+00 7.25399e+00 -1.75325e+00 -2.68814e+00 -3.71128e+00 -4.62933e+00 -2.13747e+00 -1.89186e-01 1.29122e+00 -7.49380e-01 6.71712e-01
--8.41923e-01 4.64997e+00 5.65808e-01 -3.08277e-01 -1.01687e+00 1.73127e-01 -8.92130e-01 1.89044e+00 -2.75543e-01 -7.72828e-01 5.36745e-01
--3.65598e+00 7.56997e+00 -3.76373e+00 -1.74542e+00 -1.37540e-01 -5.55400e-01 -1.59195e-01 1.27910e-01 1.91906e+00 1.42119e+00 -4.35502e+00
-
--1.70059e+00 -3.65695e+00 1.22367e+00 -5.74367e-01 -3.29571e+00 2.46316e+00 5.22353e+00 2.42038e+00 1.22919e+00 -9.22250e-01 -2.32028e+00
-
-
- 0.00000e+00
- 1.00000e+00
diff --git a/external/sextractor/config/default.param b/external/sextractor/config/default.param
deleted file mode 100644
index 3dbb7f6..0000000
--- a/external/sextractor/config/default.param
+++ /dev/null
@@ -1,124 +0,0 @@
-NUMBER
-
-#FLUX_ISO
-FLUXERR_ISO
-#MAG_ISO
-#MAGERR_ISO
-
-#FLUX_ISOCOR
-#FLUXERR_ISOCOR
-#MAG_ISOCOR
-#MAGERR_ISOCOR
-
-#FLUX_APER(1)
-#FLUXERR_APER(1)
-#MAG_APER(1)
-#MAGERR_APER(1)
-
-FLUX_AUTO
-FLUXERR_AUTO
-#MAG_AUTO
-#MAGERR_AUTO
-
-#FLUX_BEST
-#FLUXERR_BEST
-#MAG_BEST
-#MAGERR_BEST
-
-#KRON_RADIUS
-#BACKGROUND
-
-#THRESHOLD
-#MU_THRESHOLD
-#FLUX_MAX
-#MU_MAX
-#ISOAREA_IMAGE
-#ISOAREA_WORLD
-
-#XMIN_IMAGE
-#YMIN_IMAGE
-#XMAX_IMAGE
-#YMAX_IMAGE
-
-X_IMAGE
-Y_IMAGE
-#X_WORLD
-#Y_WORLD
-#ALPHA_SKY
-#DELTA_SKY
-#ALPHA_J2000
-#DELTA_J2000
-#ALPHA_B1950
-#DELTA_B1950
-
-#X2_IMAGE
-#Y2_IMAGE
-#XY_IMAGE
-#X2_WORLD
-#Y2_WORLD
-#XY_WORLD
-
-#CXX_IMAGE
-#CYY_IMAGE
-#CXY_IMAGE
-#CXX_WORLD
-#CYY_WORLD
-#CXY_WORLD
-
-#A_IMAGE
-#B_IMAGE
-#A_WORLD
-#B_WORLD
-
-#THETA_IMAGE
-#THETA_WORLD
-#THETA_SKY
-#THETA_J2000
-#THETA_B1950
-
-#ELONGATION
-#ELLIPTICITY
-
-#ERRX2_IMAGE
-#ERRY2_IMAGE
-#ERRXY_IMAGE
-#ERRX2_WORLD
-#ERRY2_WORLD
-#ERRXY_WORLD
-
-#ERRCXX_IMAGE
-#ERRCYY_IMAGE
-#ERRCXY_IMAGE
-#ERRCXX_WORLD
-#ERRCYY_WORLD
-#ERRCXY_WORLD
-
-#ERRA_IMAGE
-#ERRB_IMAGE
-#ERRA_WORLD
-#ERRB_WORLD
-
-#ERRTHETA_IMAGE
-#ERRTHETA_WORLD
-#ERRTHETA_SKY
-#ERRTHETA_J2000
-#ERRTHETA_B1950
-
-#FWHM_IMAGE
-#FWHM_WORLD
-
-#ISO0
-#ISO1
-#ISO2
-#ISO3
-#ISO4
-#ISO5
-#ISO6
-#ISO7
-
-FLAGS
-#IMAFLAGS_ISO(1)
-#NIMAFLAGS_ISO(1)
-
-#CLASS_STAR
-#VIGNET(5,5)
diff --git a/external/sextractor/config/default.sex b/external/sextractor/config/default.sex
deleted file mode 100644
index 64e901d..0000000
--- a/external/sextractor/config/default.sex
+++ /dev/null
@@ -1,76 +0,0 @@
-# Default configuration file for SExtractor V1.2b14 - > 2.0
-# EB 23/07/98
-# (*) indicates parameters which can be omitted from this config file.
-
-#-------------------------------- Catalog ------------------------------------
-
-CATALOG_NAME test.cat # name of the output catalog
-CATALOG_TYPE ASCII_HEAD # "NONE","ASCII_HEAD","ASCII","FITS_1.0"
- # or "FITS_LDAC"
-
-PARAMETERS_NAME default.param # name of the file containing catalog contents
-
-#------------------------------- Extraction ----------------------------------
-
-DETECT_TYPE CCD # "CCD" or "PHOTO" (*)
-FLAG_IMAGE flag.fits # filename for an input FLAG-image
-DETECT_MINAREA 5 # minimum number of pixels above threshold
-DETECT_THRESH 1.5 # <sigmas> or <threshold>,<ZP> in mag.arcsec-2
-ANALYSIS_THRESH 1.5 # <sigmas> or <threshold>,<ZP> in mag.arcsec-2
-
-FILTER Y # apply filter for detection ("Y" or "N")?
-FILTER_NAME default.conv # name of the file containing the filter
-
-DEBLEND_NTHRESH 32 # Number of deblending sub-thresholds
-DEBLEND_MINCONT 0.005 # Minimum contrast parameter for deblending
-
-CLEAN Y # Clean spurious detections? (Y or N)?
-CLEAN_PARAM 1.0 # Cleaning efficiency
-
-MASK_TYPE CORRECT # type of detection MASKing: can be one of
- # "NONE", "BLANK" or "CORRECT"
-
-#------------------------------ Photometry -----------------------------------
-
-PHOT_APERTURES 5 # MAG_APER aperture diameter(s) in pixels
-PHOT_AUTOPARAMS 2.5, 3.5 # MAG_AUTO parameters: <Kron_fact>,<min_radius>
-
-SATUR_LEVEL 50000.0 # level (in ADUs) at which arises saturation
-
-MAG_ZEROPOINT 0.0 # magnitude zero-point
-MAG_GAMMA 4.0 # gamma of emulsion (for photographic scans)
-GAIN 0.0 # detector gain in e-/ADU.
-PIXEL_SCALE 1.0 # size of pixel in arcsec (0=use FITS WCS info).
-
-#------------------------- Star/Galaxy Separation ----------------------------
-
-SEEING_FWHM 1.2 # stellar FWHM in arcsec
-STARNNW_NAME default.nnw # Neural-Network_Weight table filename
-
-#------------------------------ Background -----------------------------------
-
-BACK_SIZE 64 # Background mesh: <size> or <width>,<height>
-BACK_FILTERSIZE 3 # Background filter: <size> or <width>,<height>
-
-BACKPHOTO_TYPE GLOBAL # can be "GLOBAL" or "LOCAL" (*)
-BACKPHOTO_THICK 24 # thickness of the background LOCAL annulus (*)
-
-#------------------------------ Check Image ----------------------------------
-
-CHECKIMAGE_TYPE NONE # can be one of "NONE", "BACKGROUND",
- # "MINIBACKGROUND", "-BACKGROUND", "OBJECTS",
- # "-OBJECTS", "SEGMENTATION", "APERTURES",
- # or "FILTERED" (*)
-CHECKIMAGE_NAME check.fits # Filename for the check-image (*)
-
-#--------------------- Memory (change with caution!) -------------------------
-
-MEMORY_OBJSTACK 2000 # number of objects in stack
-MEMORY_PIXSTACK 100000 # number of pixels in stack
-MEMORY_BUFSIZE 1024 # number of lines in buffer
-
-#----------------------------- Miscellaneous ---------------------------------
-
-VERBOSE_TYPE NORMAL # can be "QUIET", "NORMAL" or "FULL" (*)
-
-#------------------------------- New Stuff -----------------------------------
diff --git a/external/sextractor/config/gauss_1.5_3x3.conv b/external/sextractor/config/gauss_1.5_3x3.conv
deleted file mode 100644
index 629f20e..0000000
--- a/external/sextractor/config/gauss_1.5_3x3.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a gaussian PSF with FWHM = 1.5 pixels.
-0.109853 0.300700 0.109853
-0.300700 0.823102 0.300700
-0.109853 0.300700 0.109853
diff --git a/external/sextractor/config/gauss_2.0_3x3.conv b/external/sextractor/config/gauss_2.0_3x3.conv
deleted file mode 100644
index f9d0ba3..0000000
--- a/external/sextractor/config/gauss_2.0_3x3.conv
+++ /dev/null
@@ -1,6 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a gaussian PSF with FWHM = 2.0 pixels.
-0.260856 0.483068 0.260856
-0.483068 0.894573 0.483068
-0.260856 0.483068 0.260856
-
diff --git a/external/sextractor/config/gauss_2.0_5x5.conv b/external/sextractor/config/gauss_2.0_5x5.conv
deleted file mode 100644
index 09e2c68..0000000
--- a/external/sextractor/config/gauss_2.0_5x5.conv
+++ /dev/null
@@ -1,7 +0,0 @@
-CONV NORM
-# 5x5 convolution mask of a gaussian PSF with FWHM = 2.0 pixels.
-0.006319 0.040599 0.075183 0.040599 0.006319
-0.040599 0.260856 0.483068 0.260856 0.040599
-0.075183 0.483068 0.894573 0.483068 0.075183
-0.040599 0.260856 0.483068 0.260856 0.040599
-0.006319 0.040599 0.075183 0.040599 0.006319
diff --git a/external/sextractor/config/gauss_2.5_5x5.conv b/external/sextractor/config/gauss_2.5_5x5.conv
deleted file mode 100644
index 1e79313..0000000
--- a/external/sextractor/config/gauss_2.5_5x5.conv
+++ /dev/null
@@ -1,7 +0,0 @@
-CONV NORM
-# 5x5 convolution mask of a gaussian PSF with FWHM = 2.5 pixels.
-0.034673 0.119131 0.179633 0.119131 0.034673
-0.119131 0.409323 0.617200 0.409323 0.119131
-0.179633 0.617200 0.930649 0.617200 0.179633
-0.119131 0.409323 0.617200 0.409323 0.119131
-0.034673 0.119131 0.179633 0.119131 0.034673
diff --git a/external/sextractor/config/gauss_3.0_5x5.conv b/external/sextractor/config/gauss_3.0_5x5.conv
deleted file mode 100644
index b70e9a2..0000000
--- a/external/sextractor/config/gauss_3.0_5x5.conv
+++ /dev/null
@@ -1,7 +0,0 @@
-CONV NORM
-# 5x5 convolution mask of a gaussian PSF with FWHM = 3.0 pixels.
-0.092163 0.221178 0.296069 0.221178 0.092163
-0.221178 0.530797 0.710525 0.530797 0.221178
-0.296069 0.710525 0.951108 0.710525 0.296069
-0.221178 0.530797 0.710525 0.530797 0.221178
-0.092163 0.221178 0.296069 0.221178 0.092163
diff --git a/external/sextractor/config/gauss_3.0_7x7.conv b/external/sextractor/config/gauss_3.0_7x7.conv
deleted file mode 100644
index 527acbb..0000000
--- a/external/sextractor/config/gauss_3.0_7x7.conv
+++ /dev/null
@@ -1,9 +0,0 @@
-CONV NORM
-# 7x7 convolution mask of a gaussian PSF with FWHM = 3.0 pixels.
-0.004963 0.021388 0.051328 0.068707 0.051328 0.021388 0.004963
-0.021388 0.092163 0.221178 0.296069 0.221178 0.092163 0.021388
-0.051328 0.221178 0.530797 0.710525 0.530797 0.221178 0.051328
-0.068707 0.296069 0.710525 0.951108 0.710525 0.296069 0.068707
-0.051328 0.221178 0.530797 0.710525 0.530797 0.221178 0.051328
-0.021388 0.092163 0.221178 0.296069 0.221178 0.092163 0.021388
-0.004963 0.021388 0.051328 0.068707 0.051328 0.021388 0.004963
diff --git a/external/sextractor/config/gauss_4.0_7x7.conv b/external/sextractor/config/gauss_4.0_7x7.conv
deleted file mode 100644
index 001efd0..0000000
--- a/external/sextractor/config/gauss_4.0_7x7.conv
+++ /dev/null
@@ -1,9 +0,0 @@
-CONV NORM
-# 7x7 convolution mask of a gaussian PSF with FWHM = 4.0 pixels.
-0.047454 0.109799 0.181612 0.214776 0.181612 0.109799 0.047454
-0.109799 0.254053 0.420215 0.496950 0.420215 0.254053 0.109799
-0.181612 0.420215 0.695055 0.821978 0.695055 0.420215 0.181612
-0.214776 0.496950 0.821978 0.972079 0.821978 0.496950 0.214776
-0.181612 0.420215 0.695055 0.821978 0.695055 0.420215 0.181612
-0.109799 0.254053 0.420215 0.496950 0.420215 0.254053 0.109799
-0.047454 0.109799 0.181612 0.214776 0.181612 0.109799 0.047454
diff --git a/external/sextractor/config/gauss_5.0_9x9.conv b/external/sextractor/config/gauss_5.0_9x9.conv
deleted file mode 100644
index 332f982..0000000
--- a/external/sextractor/config/gauss_5.0_9x9.conv
+++ /dev/null
@@ -1,11 +0,0 @@
-CONV NORM
-# 9x9 convolution mask of a gaussian PSF with FWHM = 5.0 pixels.
-0.030531 0.065238 0.112208 0.155356 0.173152 0.155356 0.112208 0.065238 0.030531
-0.065238 0.139399 0.239763 0.331961 0.369987 0.331961 0.239763 0.139399 0.065238
-0.112208 0.239763 0.412386 0.570963 0.636368 0.570963 0.412386 0.239763 0.112208
-0.155356 0.331961 0.570963 0.790520 0.881075 0.790520 0.570963 0.331961 0.155356
-0.173152 0.369987 0.636368 0.881075 0.982004 0.881075 0.636368 0.369987 0.173152
-0.155356 0.331961 0.570963 0.790520 0.881075 0.790520 0.570963 0.331961 0.155356
-0.112208 0.239763 0.412386 0.570963 0.636368 0.570963 0.412386 0.239763 0.112208
-0.065238 0.139399 0.239763 0.331961 0.369987 0.331961 0.239763 0.139399 0.065238
-0.030531 0.065238 0.112208 0.155356 0.173152 0.155356 0.112208 0.065238 0.030531
diff --git a/external/sextractor/config/mexhat_1.5_5x5.conv b/external/sextractor/config/mexhat_1.5_5x5.conv
deleted file mode 100644
index 2ff2753..0000000
--- a/external/sextractor/config/mexhat_1.5_5x5.conv
+++ /dev/null
@@ -1,7 +0,0 @@
-CONV NORM
-# 5x5 convolution mask of a mexican-hat for images with FWHM~1.5 pixels.
--0.000109 -0.002374 -0.006302 -0.002374 -0.000109
--0.002374 -0.032222 -0.025569 -0.032222 -0.002374
--0.006302 -0.025569 0.276021 -0.025569 -0.006302
--0.002374 -0.032222 -0.025569 -0.032222 -0.002374
--0.000109 -0.002374 -0.006302 -0.002374 -0.000109
diff --git a/external/sextractor/config/mexhat_2.0_7x7.conv b/external/sextractor/config/mexhat_2.0_7x7.conv
deleted file mode 100644
index 7aad03c..0000000
--- a/external/sextractor/config/mexhat_2.0_7x7.conv
+++ /dev/null
@@ -1,9 +0,0 @@
-CONV NORM
-# 7x7 convolution mask of a mexican-hat for images with FWHM~2.0 pixels.
--0.000006 -0.000132 -0.000849 -0.001569 -0.000849 -0.000132 -0.000006
--0.000132 -0.002989 -0.017229 -0.028788 -0.017229 -0.002989 -0.000132
--0.000849 -0.017229 -0.042689 0.023455 -0.042689 -0.017229 -0.000849
--0.001569 -0.028788 0.023455 0.356183 0.023455 -0.028788 -0.001569
--0.000849 -0.017229 -0.042689 0.023455 -0.042689 -0.017229 -0.000849
--0.000132 -0.002989 -0.017229 -0.028788 -0.017229 -0.002989 -0.000132
--0.000006 -0.000132 -0.000849 -0.001569 -0.000849 -0.000132 -0.000006
diff --git a/external/sextractor/config/mexhat_2.5_7x7.conv b/external/sextractor/config/mexhat_2.5_7x7.conv
deleted file mode 100644
index a16d8ec..0000000
--- a/external/sextractor/config/mexhat_2.5_7x7.conv
+++ /dev/null
@@ -1,9 +0,0 @@
-CONV NORM
-# 7x7 convolution mask of a mexican-hat for images with FWHM~2.5 pixels.
--0.000284 -0.002194 -0.007273 -0.010722 -0.007273 -0.002194 -0.000284
--0.002194 -0.015640 -0.041259 -0.050277 -0.041259 -0.015640 -0.002194
--0.007273 -0.041259 -0.016356 0.095837 -0.016356 -0.041259 -0.007273
--0.010722 -0.050277 0.095837 0.402756 0.095837 -0.050277 -0.010722
--0.007273 -0.041259 -0.016356 0.095837 -0.016356 -0.041259 -0.007273
--0.002194 -0.015640 -0.041259 -0.050277 -0.041259 -0.015640 -0.002194
--0.000284 -0.002194 -0.007273 -0.010722 -0.007273 -0.002194 -0.000284
diff --git a/external/sextractor/config/mexhat_3.0_9x9.conv b/external/sextractor/config/mexhat_3.0_9x9.conv
deleted file mode 100644
index dfb8dcf..0000000
--- a/external/sextractor/config/mexhat_3.0_9x9.conv
+++ /dev/null
@@ -1,11 +0,0 @@
-CONV NORM
-# 9x9 convolution mask of a mexican-hat for images with FWHM~3.0 pixels.
--0.000041 -0.000316 -0.001357 -0.003226 -0.004294 -0.003226 -0.001357 -0.000316 -0.000041
--0.000316 -0.002428 -0.010013 -0.022204 -0.028374 -0.022204 -0.010013 -0.002428 -0.000316
--0.001357 -0.010013 -0.035450 -0.054426 -0.050313 -0.054426 -0.035450 -0.010013 -0.001357
--0.003226 -0.022204 -0.054426 0.033057 0.164532 0.033057 -0.054426 -0.022204 -0.003226
--0.004294 -0.028374 -0.050313 0.164532 0.429860 0.164532 -0.050313 -0.028374 -0.004294
--0.003226 -0.022204 -0.054426 0.033057 0.164532 0.033057 -0.054426 -0.022204 -0.003226
--0.001357 -0.010013 -0.035450 -0.054426 -0.050313 -0.054426 -0.035450 -0.010013 -0.001357
--0.000316 -0.002428 -0.010013 -0.022204 -0.028374 -0.022204 -0.010013 -0.002428 -0.000316
--0.000041 -0.000316 -0.001357 -0.003226 -0.004294 -0.003226 -0.001357 -0.000316 -0.000041
diff --git a/external/sextractor/config/mexhat_4.0_9x9.conv b/external/sextractor/config/mexhat_4.0_9x9.conv
deleted file mode 100644
index 8f8424a..0000000
--- a/external/sextractor/config/mexhat_4.0_9x9.conv
+++ /dev/null
@@ -1,11 +0,0 @@
-CONV NORM
-# 9x9 convolution mask of a mexican-hat for images with FWHM~4.0 pixels.
--0.002250 -0.007092 -0.015640 -0.024467 -0.028187 -0.024467 -0.015640 -0.007092 -0.002250
--0.007092 -0.021141 -0.041403 -0.054742 -0.057388 -0.054742 -0.041403 -0.021141 -0.007092
--0.015640 -0.041403 -0.057494 -0.024939 0.008058 -0.024939 -0.057494 -0.041403 -0.015640
--0.024467 -0.054742 -0.024939 0.145167 0.271470 0.145167 -0.024939 -0.054742 -0.024467
--0.028187 -0.057388 0.008058 0.271470 0.459236 0.271470 0.008058 -0.057388 -0.028187
--0.024467 -0.054742 -0.024939 0.145167 0.271470 0.145167 -0.024939 -0.054742 -0.024467
--0.015640 -0.041403 -0.057494 -0.024939 0.008058 -0.024939 -0.057494 -0.041403 -0.015640
--0.007092 -0.021141 -0.041403 -0.054742 -0.057388 -0.054742 -0.041403 -0.021141 -0.007092
--0.002250 -0.007092 -0.015640 -0.024467 -0.028187 -0.024467 -0.015640 -0.007092 -0.002250
diff --git a/external/sextractor/config/mexhat_5.0_11x11.conv b/external/sextractor/config/mexhat_5.0_11x11.conv
deleted file mode 100644
index e0f2fbf..0000000
--- a/external/sextractor/config/mexhat_5.0_11x11.conv
+++ /dev/null
@@ -1,13 +0,0 @@
-CONV NORM
-# 11x11 convolution mask of a mexican-hat for images with FWHM~5.0 pixels.
--0.002172 -0.005657 -0.011702 -0.019279 -0.025644 -0.028106 -0.025644 -0.019279 -0.011702 -0.005657 -0.002172
--0.005657 -0.014328 -0.028098 -0.042680 -0.052065 -0.054833 -0.052065 -0.042680 -0.028098 -0.014328 -0.005657
--0.011702 -0.028098 -0.049016 -0.059439 -0.051288 -0.043047 -0.051288 -0.059439 -0.049016 -0.028098 -0.011702
--0.019279 -0.042680 -0.059439 -0.030431 0.047481 0.093729 0.047481 -0.030431 -0.059439 -0.042680 -0.019279
--0.025644 -0.052065 -0.051288 0.047481 0.235153 0.339248 0.235153 0.047481 -0.051288 -0.052065 -0.025644
--0.028106 -0.054833 -0.043047 0.093729 0.339248 0.473518 0.339248 0.093729 -0.043047 -0.054833 -0.028106
--0.025644 -0.052065 -0.051288 0.047481 0.235153 0.339248 0.235153 0.047481 -0.051288 -0.052065 -0.025644
--0.019279 -0.042680 -0.059439 -0.030431 0.047481 0.093729 0.047481 -0.030431 -0.059439 -0.042680 -0.019279
--0.011702 -0.028098 -0.049016 -0.059439 -0.051288 -0.043047 -0.051288 -0.059439 -0.049016 -0.028098 -0.011702
--0.005657 -0.014328 -0.028098 -0.042680 -0.052065 -0.054833 -0.052065 -0.042680 -0.028098 -0.014328 -0.005657
--0.002172 -0.005657 -0.011702 -0.019279 -0.025644 -0.028106 -0.025644 -0.019279 -0.011702 -0.005657 -0.002172
diff --git a/external/sextractor/config/tophat_1.5_3x3.conv b/external/sextractor/config/tophat_1.5_3x3.conv
deleted file mode 100644
index 95e30c7..0000000
--- a/external/sextractor/config/tophat_1.5_3x3.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a top-hat PSF with diameter = 1.5 pixels.
-0.000000 0.180000 0.000000
-0.180000 1.000000 0.180000
-0.000000 0.180000 0.000000
diff --git a/external/sextractor/config/tophat_2.0_3x3.conv b/external/sextractor/config/tophat_2.0_3x3.conv
deleted file mode 100644
index 6cd5e1a..0000000
--- a/external/sextractor/config/tophat_2.0_3x3.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a top-hat PSF with diameter = 2.0 pixels.
-0.080000 0.460000 0.080000
-0.460000 1.000000 0.460000
-0.080000 0.460000 0.080000
diff --git a/external/sextractor/config/tophat_2.5_3x3.conv b/external/sextractor/config/tophat_2.5_3x3.conv
deleted file mode 100644
index 0a7cda3..0000000
--- a/external/sextractor/config/tophat_2.5_3x3.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a top-hat PSF with diameter = 2.5 pixels.
-0.260000 0.700000 0.260000
-0.700000 1.000000 0.700000
-0.260000 0.700000 0.260000
diff --git a/external/sextractor/config/tophat_3.0_3x3.conv b/external/sextractor/config/tophat_3.0_3x3.conv
deleted file mode 100644
index 5f5050c..0000000
--- a/external/sextractor/config/tophat_3.0_3x3.conv
+++ /dev/null
@@ -1,5 +0,0 @@
-CONV NORM
-# 3x3 convolution mask of a top-hat PSF with diameter = 3.0 pixels.
-0.560000 0.980000 0.560000
-0.980000 1.000000 0.980000
-0.560000 0.980000 0.560000
diff --git a/external/sextractor/config/tophat_4.0_5x5.conv b/external/sextractor/config/tophat_4.0_5x5.conv
deleted file mode 100644
index c6d5868..0000000
--- a/external/sextractor/config/tophat_4.0_5x5.conv
+++ /dev/null
@@ -1,7 +0,0 @@
-CONV NORM
-# 5x5 convolution mask of a top-hat PSF with diameter = 4.0 pixels.
-0.000000 0.220000 0.480000 0.220000 0.000000
-0.220000 0.990000 1.000000 0.990000 0.220000
-0.480000 1.000000 1.000000 1.000000 0.480000
-0.220000 0.990000 1.000000 0.990000 0.220000
-0.000000 0.220000 0.480000 0.220000 0.000000
diff --git a/external/sextractor/config/tophat_5.0_5x5.conv b/external/sextractor/config/tophat_5.0_5x5.conv
deleted file mode 100644
index c474b1c..0000000
--- a/external/sextractor/config/tophat_5.0_5x5.conv
+++ /dev/null
@@ -1,7 +0,0 @@
-CONV NORM
-# 5x5 convolution mask of a top-hat PSF with diameter = 5.0 pixels.
-0.150000 0.770000 1.000000 0.770000 0.150000
-0.770000 1.000000 1.000000 1.000000 0.770000
-1.000000 1.000000 1.000000 1.000000 1.000000
-0.770000 1.000000 1.000000 1.000000 0.770000
-0.150000 0.770000 1.000000 0.770000 0.150000
diff --git a/external/sextractor/configure b/external/sextractor/configure
deleted file mode 100755
index e49780b..0000000
--- a/external/sextractor/configure
+++ /dev/null
@@ -1,5439 +0,0 @@
-#! /bin/sh
-# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for sextractor 2.1.6.
-#
-#
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
-#
-#
-# This configure script is free software; the Free Software Foundation
-# gives unlimited permission to copy, distribute and modify it.
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-as_myself=
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-# Use a proper internal environment variable to ensure we don't fall
- # into an infinite loop, continuously re-executing ourselves.
- if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
- _as_can_reexec=no; export _as_can_reexec;
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
- fi
- # We don't want this to propagate to other subprocesses.
- { _as_can_reexec=; unset _as_can_reexec;}
-if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '\${1+\"\$@\"}'='\"\$@\"'
- setopt NO_GLOB_SUBST
-else
- case \`(set -o) 2>/dev/null\` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-"
- as_required="as_fn_return () { (exit \$1); }
-as_fn_success () { as_fn_return 0; }
-as_fn_failure () { as_fn_return 1; }
-as_fn_ret_success () { return 0; }
-as_fn_ret_failure () { return 1; }
-
-exitcode=0
-as_fn_success || { exitcode=1; echo as_fn_success failed.; }
-as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
-as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
-as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
-
-else
- exitcode=1; echo positional parameters were not saved.
-fi
-test x\$exitcode = x0 || exit 1
-test -x / || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
- test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
- if (eval "$as_required") 2>/dev/null; then :
- as_have_required=yes
-else
- as_have_required=no
-fi
- if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
-
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_found=false
-for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- as_found=:
- case $as_dir in #(
- /*)
- for as_base in sh bash ksh sh5; do
- # Try only shells that exist, to save several forks.
- as_shell=$as_dir/$as_base
- if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
- CONFIG_SHELL=$as_shell as_have_required=yes
- if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
- break 2
-fi
-fi
- done;;
- esac
- as_found=false
-done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
- { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
- CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
-IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
- export CONFIG_SHELL
- # We cannot yet assume a decent shell, so we have to provide a
-# neutralization value for shells without unset; and this also
-# works around shells that cannot unset nonexistent variables.
-# Preserve -v and -x to the replacement shell.
-BASH_ENV=/dev/null
-ENV=/dev/null
-(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-case $- in # ((((
- *v*x* | *x*v* ) as_opts=-vx ;;
- *v* ) as_opts=-v ;;
- *x* ) as_opts=-x ;;
- * ) as_opts= ;;
-esac
-exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-# Admittedly, this is quite paranoid, since all the known shells bail
-# out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-exit 255
-fi
-
- if test x$as_have_required = xno; then :
- $as_echo "$0: This script requires a shell more modern than all"
- $as_echo "$0: the shells that I found on your system."
- if test x${ZSH_VERSION+set} = xset ; then
- $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
- $as_echo "$0: be upgraded to zsh 4.3.4 or later."
- else
- $as_echo "$0: Please tell bug-autoconf at gnu.org about your system,
-$0: including any error possibly output before this
-$0: message. Then install a modern shell, or manually run
-$0: the script under such a shell if you do have one."
- fi
- exit 1
-fi
-fi
-fi
-SHELL=${CONFIG_SHELL-/bin/sh}
-export SHELL
-# Unset more variables known to interfere with behavior of common tools.
-CLICOLOR_FORCE= GREP_OPTIONS=
-unset CLICOLOR_FORCE GREP_OPTIONS
-
-## --------------------- ##
-## M4sh Shell Functions. ##
-## --------------------- ##
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-
- as_lineno_1=$LINENO as_lineno_1a=$LINENO
- as_lineno_2=$LINENO as_lineno_2a=$LINENO
- eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
- test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
- # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
- sed -n '
- p
- /[$]LINENO/=
- ' <$as_myself |
- sed '
- s/[$]LINENO.*/&-/
- t lineno
- b
- :lineno
- N
- :loop
- s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
- t loop
- s/-\n.*//
- ' >$as_me.lineno &&
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
- # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
- # already done that, so ensure we don't try to do so again and fall
- # in an infinite loop. This has already happened in practice.
- _as_can_reexec=no; export _as_can_reexec
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
- . "./$as_me.lineno"
- # Exit status is that of the last command.
- exit
-}
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -pR'
- fi
-else
- as_ln_s='cp -pR'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-test -n "$DJDIR" || exec 7<&0 </dev/null
-exec 6>&1
-
-# Name of the host.
-# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
-# so uname gets run too.
-ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-
-#
-# Initializations.
-#
-ac_default_prefix=/usr/local
-ac_clean_files=
-ac_config_libobj_dir=.
-LIBOBJS=
-cross_compiling=no
-subdirs=
-MFLAGS=
-MAKEFLAGS=
-
-# Identity of this package.
-PACKAGE_NAME='sextractor'
-PACKAGE_TARNAME='sextractor'
-PACKAGE_VERSION='2.1.6'
-PACKAGE_STRING='sextractor 2.1.6'
-PACKAGE_BUGREPORT=''
-PACKAGE_URL=''
-
-ac_unique_file="Makefile.am"
-ac_subst_vars='am__EXEEXT_FALSE
-am__EXEEXT_TRUE
-LTLIBOBJS
-LIBOBJS
-LIBM
-RANLIB
-AR
-SEXMACHINE
-am__fastdepCC_FALSE
-am__fastdepCC_TRUE
-CCDEPMODE
-am__nodep
-AMDEPBACKSLASH
-AMDEP_FALSE
-AMDEP_TRUE
-am__quote
-am__include
-DEPDIR
-OBJEXT
-EXEEXT
-ac_ct_CC
-CPPFLAGS
-LDFLAGS
-CFLAGS
-CC
-MAINT
-MAINTAINER_MODE_FALSE
-MAINTAINER_MODE_TRUE
-am__untar
-am__tar
-AMTAR
-am__leading_dot
-SET_MAKE
-AWK
-mkdir_p
-MKDIR_P
-INSTALL_STRIP_PROGRAM
-STRIP
-install_sh
-MAKEINFO
-AUTOHEADER
-AUTOMAKE
-AUTOCONF
-ACLOCAL
-VERSION
-PACKAGE
-CYGPATH_W
-am__isrc
-INSTALL_DATA
-INSTALL_SCRIPT
-INSTALL_PROGRAM
-target_os
-target_vendor
-target_cpu
-target
-host_os
-host_vendor
-host_cpu
-host
-build_os
-build_vendor
-build_cpu
-build
-target_alias
-host_alias
-build_alias
-LIBS
-ECHO_T
-ECHO_N
-ECHO_C
-DEFS
-mandir
-localedir
-libdir
-psdir
-pdfdir
-dvidir
-htmldir
-infodir
-docdir
-oldincludedir
-includedir
-localstatedir
-sharedstatedir
-sysconfdir
-datadir
-datarootdir
-libexecdir
-sbindir
-bindir
-program_transform_name
-prefix
-exec_prefix
-PACKAGE_URL
-PACKAGE_BUGREPORT
-PACKAGE_STRING
-PACKAGE_VERSION
-PACKAGE_TARNAME
-PACKAGE_NAME
-PATH_SEPARATOR
-SHELL'
-ac_subst_files=''
-ac_user_opts='
-enable_option_checking
-enable_maintainer_mode
-enable_dependency_tracking
-with_machine
-'
- ac_precious_vars='build_alias
-host_alias
-target_alias
-CC
-CFLAGS
-LDFLAGS
-LIBS
-CPPFLAGS'
-
-
-# Initialize some variables set by options.
-ac_init_help=
-ac_init_version=false
-ac_unrecognized_opts=
-ac_unrecognized_sep=
-# The variables have the same names as the options, with
-# dashes changed to underlines.
-cache_file=/dev/null
-exec_prefix=NONE
-no_create=
-no_recursion=
-prefix=NONE
-program_prefix=NONE
-program_suffix=NONE
-program_transform_name=s,x,x,
-silent=
-site=
-srcdir=
-verbose=
-x_includes=NONE
-x_libraries=NONE
-
-# Installation directory options.
-# These are left unexpanded so users can "make install exec_prefix=/foo"
-# and all the variables that are supposed to be based on exec_prefix
-# by default will actually change.
-# Use braces instead of parens because sh, perl, etc. also accept them.
-# (The list follows the same order as the GNU Coding Standards.)
-bindir='${exec_prefix}/bin'
-sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
-datarootdir='${prefix}/share'
-datadir='${datarootdir}'
-sysconfdir='${prefix}/etc'
-sharedstatedir='${prefix}/com'
-localstatedir='${prefix}/var'
-includedir='${prefix}/include'
-oldincludedir='/usr/include'
-docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-infodir='${datarootdir}/info'
-htmldir='${docdir}'
-dvidir='${docdir}'
-pdfdir='${docdir}'
-psdir='${docdir}'
-libdir='${exec_prefix}/lib'
-localedir='${datarootdir}/locale'
-mandir='${datarootdir}/man'
-
-ac_prev=
-ac_dashdash=
-for ac_option
-do
- # If the previous option needs an argument, assign it.
- if test -n "$ac_prev"; then
- eval $ac_prev=\$ac_option
- ac_prev=
- continue
- fi
-
- case $ac_option in
- *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
- *=) ac_optarg= ;;
- *) ac_optarg=yes ;;
- esac
-
- # Accept the important Cygnus configure options, so we can diagnose typos.
-
- case $ac_dashdash$ac_option in
- --)
- ac_dashdash=yes ;;
-
- -bindir | --bindir | --bindi | --bind | --bin | --bi)
- ac_prev=bindir ;;
- -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
- bindir=$ac_optarg ;;
-
- -build | --build | --buil | --bui | --bu)
- ac_prev=build_alias ;;
- -build=* | --build=* | --buil=* | --bui=* | --bu=*)
- build_alias=$ac_optarg ;;
-
- -cache-file | --cache-file | --cache-fil | --cache-fi \
- | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
- ac_prev=cache_file ;;
- -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
- | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
- cache_file=$ac_optarg ;;
-
- --config-cache | -C)
- cache_file=config.cache ;;
-
- -datadir | --datadir | --datadi | --datad)
- ac_prev=datadir ;;
- -datadir=* | --datadir=* | --datadi=* | --datad=*)
- datadir=$ac_optarg ;;
-
- -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
- | --dataroo | --dataro | --datar)
- ac_prev=datarootdir ;;
- -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
- | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
- datarootdir=$ac_optarg ;;
-
- -disable-* | --disable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=no ;;
-
- -docdir | --docdir | --docdi | --doc | --do)
- ac_prev=docdir ;;
- -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
- docdir=$ac_optarg ;;
-
- -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
- ac_prev=dvidir ;;
- -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
- dvidir=$ac_optarg ;;
-
- -enable-* | --enable-*)
- ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid feature name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"enable_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval enable_$ac_useropt=\$ac_optarg ;;
-
- -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
- | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
- | --exec | --exe | --ex)
- ac_prev=exec_prefix ;;
- -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
- | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
- | --exec=* | --exe=* | --ex=*)
- exec_prefix=$ac_optarg ;;
-
- -gas | --gas | --ga | --g)
- # Obsolete; use --with-gas.
- with_gas=yes ;;
-
- -help | --help | --hel | --he | -h)
- ac_init_help=long ;;
- -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
- ac_init_help=recursive ;;
- -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
- ac_init_help=short ;;
-
- -host | --host | --hos | --ho)
- ac_prev=host_alias ;;
- -host=* | --host=* | --hos=* | --ho=*)
- host_alias=$ac_optarg ;;
-
- -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
- ac_prev=htmldir ;;
- -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
- | --ht=*)
- htmldir=$ac_optarg ;;
-
- -includedir | --includedir | --includedi | --included | --include \
- | --includ | --inclu | --incl | --inc)
- ac_prev=includedir ;;
- -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
- | --includ=* | --inclu=* | --incl=* | --inc=*)
- includedir=$ac_optarg ;;
-
- -infodir | --infodir | --infodi | --infod | --info | --inf)
- ac_prev=infodir ;;
- -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
- infodir=$ac_optarg ;;
-
- -libdir | --libdir | --libdi | --libd)
- ac_prev=libdir ;;
- -libdir=* | --libdir=* | --libdi=* | --libd=*)
- libdir=$ac_optarg ;;
-
- -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
- | --libexe | --libex | --libe)
- ac_prev=libexecdir ;;
- -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
- | --libexe=* | --libex=* | --libe=*)
- libexecdir=$ac_optarg ;;
-
- -localedir | --localedir | --localedi | --localed | --locale)
- ac_prev=localedir ;;
- -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
- localedir=$ac_optarg ;;
-
- -localstatedir | --localstatedir | --localstatedi | --localstated \
- | --localstate | --localstat | --localsta | --localst | --locals)
- ac_prev=localstatedir ;;
- -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
- | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
- localstatedir=$ac_optarg ;;
-
- -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
- ac_prev=mandir ;;
- -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
- mandir=$ac_optarg ;;
-
- -nfp | --nfp | --nf)
- # Obsolete; use --without-fp.
- with_fp=no ;;
-
- -no-create | --no-create | --no-creat | --no-crea | --no-cre \
- | --no-cr | --no-c | -n)
- no_create=yes ;;
-
- -no-recursion | --no-recursion | --no-recursio | --no-recursi \
- | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
- no_recursion=yes ;;
-
- -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
- | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
- | --oldin | --oldi | --old | --ol | --o)
- ac_prev=oldincludedir ;;
- -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
- | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
- | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
- oldincludedir=$ac_optarg ;;
-
- -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
- ac_prev=prefix ;;
- -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
- prefix=$ac_optarg ;;
-
- -program-prefix | --program-prefix | --program-prefi | --program-pref \
- | --program-pre | --program-pr | --program-p)
- ac_prev=program_prefix ;;
- -program-prefix=* | --program-prefix=* | --program-prefi=* \
- | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
- program_prefix=$ac_optarg ;;
-
- -program-suffix | --program-suffix | --program-suffi | --program-suff \
- | --program-suf | --program-su | --program-s)
- ac_prev=program_suffix ;;
- -program-suffix=* | --program-suffix=* | --program-suffi=* \
- | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
- program_suffix=$ac_optarg ;;
-
- -program-transform-name | --program-transform-name \
- | --program-transform-nam | --program-transform-na \
- | --program-transform-n | --program-transform- \
- | --program-transform | --program-transfor \
- | --program-transfo | --program-transf \
- | --program-trans | --program-tran \
- | --progr-tra | --program-tr | --program-t)
- ac_prev=program_transform_name ;;
- -program-transform-name=* | --program-transform-name=* \
- | --program-transform-nam=* | --program-transform-na=* \
- | --program-transform-n=* | --program-transform-=* \
- | --program-transform=* | --program-transfor=* \
- | --program-transfo=* | --program-transf=* \
- | --program-trans=* | --program-tran=* \
- | --progr-tra=* | --program-tr=* | --program-t=*)
- program_transform_name=$ac_optarg ;;
-
- -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
- ac_prev=pdfdir ;;
- -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
- pdfdir=$ac_optarg ;;
-
- -psdir | --psdir | --psdi | --psd | --ps)
- ac_prev=psdir ;;
- -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
- psdir=$ac_optarg ;;
-
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
- | --sbi=* | --sb=*)
- sbindir=$ac_optarg ;;
-
- -sharedstatedir | --sharedstatedir | --sharedstatedi \
- | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
- | --sharedst | --shareds | --shared | --share | --shar \
- | --sha | --sh)
- ac_prev=sharedstatedir ;;
- -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
- | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
- | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
- | --sha=* | --sh=*)
- sharedstatedir=$ac_optarg ;;
-
- -site | --site | --sit)
- ac_prev=site ;;
- -site=* | --site=* | --sit=*)
- site=$ac_optarg ;;
-
- -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
- ac_prev=srcdir ;;
- -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
- srcdir=$ac_optarg ;;
-
- -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
- | --syscon | --sysco | --sysc | --sys | --sy)
- ac_prev=sysconfdir ;;
- -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
- | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
- sysconfdir=$ac_optarg ;;
-
- -target | --target | --targe | --targ | --tar | --ta | --t)
- ac_prev=target_alias ;;
- -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
- target_alias=$ac_optarg ;;
-
- -v | -verbose | --verbose | --verbos | --verbo | --verb)
- verbose=yes ;;
-
- -version | --version | --versio | --versi | --vers | -V)
- ac_init_version=: ;;
-
- -with-* | --with-*)
- ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=\$ac_optarg ;;
-
- -without-* | --without-*)
- ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
- # Reject names that are not valid shell variable names.
- expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
- as_fn_error $? "invalid package name: $ac_useropt"
- ac_useropt_orig=$ac_useropt
- ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
- case $ac_user_opts in
- *"
-"with_$ac_useropt"
-"*) ;;
- *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
- ac_unrecognized_sep=', ';;
- esac
- eval with_$ac_useropt=no ;;
-
- --x)
- # Obsolete; use --with-x.
- with_x=yes ;;
-
- -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
- | --x-incl | --x-inc | --x-in | --x-i)
- ac_prev=x_includes ;;
- -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
- | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
- x_includes=$ac_optarg ;;
-
- -x-libraries | --x-libraries | --x-librarie | --x-librari \
- | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
- ac_prev=x_libraries ;;
- -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
- | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
- x_libraries=$ac_optarg ;;
-
- -*) as_fn_error $? "unrecognized option: \`$ac_option'
-Try \`$0 --help' for more information"
- ;;
-
- *=*)
- ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
- # Reject names that are not valid shell variable names.
- case $ac_envvar in #(
- '' | [0-9]* | *[!_$as_cr_alnum]* )
- as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
- esac
- eval $ac_envvar=\$ac_optarg
- export $ac_envvar ;;
-
- *)
- # FIXME: should be removed in autoconf 3.0.
- $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
- expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
- $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
- : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
- ;;
-
- esac
-done
-
-if test -n "$ac_prev"; then
- ac_option=--`echo $ac_prev | sed 's/_/-/g'`
- as_fn_error $? "missing argument to $ac_option"
-fi
-
-if test -n "$ac_unrecognized_opts"; then
- case $enable_option_checking in
- no) ;;
- fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
- *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
- esac
-fi
-
-# Check all directory arguments for consistency.
-for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
- libdir localedir mandir
-do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
- case $ac_val in
- */ )
- ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
- eval $ac_var=\$ac_val;;
- esac
- # Be sure to have absolute directory names.
- case $ac_val in
- [\\/$]* | ?:[\\/]* ) continue;;
- NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
- esac
- as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
-done
-
-# There might be people who depend on the old broken behavior: `$host'
-# used to hold the argument of --host etc.
-# FIXME: To remove some day.
-build=$build_alias
-host=$host_alias
-target=$target_alias
-
-# FIXME: To remove some day.
-if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-fi
-
-ac_tool_prefix=
-test -n "$host_alias" && ac_tool_prefix=$host_alias-
-
-test "$silent" = yes && exec 6>/dev/null
-
-
-ac_pwd=`pwd` && test -n "$ac_pwd" &&
-ac_ls_di=`ls -di .` &&
-ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
- as_fn_error $? "working directory cannot be determined"
-test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
- as_fn_error $? "pwd does not report name of working directory"
-
-
-# Find the source files, if location was not specified.
-if test -z "$srcdir"; then
- ac_srcdir_defaulted=yes
- # Try the directory containing this script, then the parent directory.
- ac_confdir=`$as_dirname -- "$as_myself" ||
-$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_myself" : 'X\(//\)[^/]' \| \
- X"$as_myself" : 'X\(//\)$' \| \
- X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- srcdir=$ac_confdir
- if test ! -r "$srcdir/$ac_unique_file"; then
- srcdir=..
- fi
-else
- ac_srcdir_defaulted=no
-fi
-if test ! -r "$srcdir/$ac_unique_file"; then
- test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
- as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
-fi
-ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
-ac_abs_confdir=`(
- cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
- pwd)`
-# When building in place, set srcdir=.
-if test "$ac_abs_confdir" = "$ac_pwd"; then
- srcdir=.
-fi
-# Remove unnecessary trailing slashes from srcdir.
-# Double slashes in file names in object file debugging info
-# mess up M-x gdb in Emacs.
-case $srcdir in
-*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
-esac
-for ac_var in $ac_precious_vars; do
- eval ac_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_env_${ac_var}_value=\$${ac_var}
- eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
- eval ac_cv_env_${ac_var}_value=\$${ac_var}
-done
-
-#
-# Report the --help message.
-#
-if test "$ac_init_help" = "long"; then
- # Omit some internal or obsolete options to make the list less imposing.
- # This message is too long to be a string in the A/UX 3.1 sh.
- cat <<_ACEOF
-\`configure' configures sextractor 2.1.6 to adapt to many kinds of systems.
-
-Usage: $0 [OPTION]... [VAR=VALUE]...
-
-To assign environment variables (e.g., CC, CFLAGS...), specify them as
-VAR=VALUE. See below for descriptions of some of the useful variables.
-
-Defaults for the options are specified in brackets.
-
-Configuration:
- -h, --help display this help and exit
- --help=short display options specific to this package
- --help=recursive display the short help of all the included packages
- -V, --version display version information and exit
- -q, --quiet, --silent do not print \`checking ...' messages
- --cache-file=FILE cache test results in FILE [disabled]
- -C, --config-cache alias for \`--cache-file=config.cache'
- -n, --no-create do not create output files
- --srcdir=DIR find the sources in DIR [configure dir or \`..']
-
-Installation directories:
- --prefix=PREFIX install architecture-independent files in PREFIX
- [$ac_default_prefix]
- --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
- [PREFIX]
-
-By default, \`make install' will install all the files in
-\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
-an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-for instance \`--prefix=\$HOME'.
-
-For better control, use the options below.
-
-Fine tuning of the installation directories:
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/sextractor]
- --htmldir=DIR html documentation [DOCDIR]
- --dvidir=DIR dvi documentation [DOCDIR]
- --pdfdir=DIR pdf documentation [DOCDIR]
- --psdir=DIR ps documentation [DOCDIR]
-_ACEOF
-
- cat <<\_ACEOF
-
-Program names:
- --program-prefix=PREFIX prepend PREFIX to installed program names
- --program-suffix=SUFFIX append SUFFIX to installed program names
- --program-transform-name=PROGRAM run sed PROGRAM on installed program names
-
-System types:
- --build=BUILD configure for building on BUILD [guessed]
- --host=HOST cross-compile to build programs to run on HOST [BUILD]
- --target=TARGET configure for building compilers for TARGET [HOST]
-_ACEOF
-fi
-
-if test -n "$ac_init_help"; then
- case $ac_init_help in
- short | recursive ) echo "Configuration of sextractor 2.1.6:";;
- esac
- cat <<\_ACEOF
-
-Optional Features:
- --disable-option-checking ignore unrecognized --enable/--with options
- --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
- --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
- --enable-maintainer-mode
- enable make rules and dependencies not useful (and
- sometimes confusing) to the casual installer
- --enable-dependency-tracking
- do not reject slow dependency extractors
- --disable-dependency-tracking
- speeds up one-time build
-
-Optional Packages:
- --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
- --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-machine=MACHINE configure sextractor for building on MACHINE
-
-Some influential environment variables:
- CC C compiler command
- CFLAGS C compiler flags
- LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
- nonstandard directory <lib dir>
- LIBS libraries to pass to the linker, e.g. -l<library>
- CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
- you have headers in a nonstandard directory <include dir>
-
-Use these variables to override the choices made by `configure' or to help
-it to find libraries and programs with nonstandard names/locations.
-
-Report bugs to the package provider.
-_ACEOF
-ac_status=$?
-fi
-
-if test "$ac_init_help" = "recursive"; then
- # If there are subdirs, report their specific --help.
- for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
- test -d "$ac_dir" ||
- { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
- continue
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
- cd "$ac_dir" || { ac_status=$?; continue; }
- # Check for guested configure.
- if test -f "$ac_srcdir/configure.gnu"; then
- echo &&
- $SHELL "$ac_srcdir/configure.gnu" --help=recursive
- elif test -f "$ac_srcdir/configure"; then
- echo &&
- $SHELL "$ac_srcdir/configure" --help=recursive
- else
- $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
- fi || ac_status=$?
- cd "$ac_pwd" || { ac_status=$?; break; }
- done
-fi
-
-test -n "$ac_init_help" && exit $ac_status
-if $ac_init_version; then
- cat <<\_ACEOF
-sextractor configure 2.1.6
-generated by GNU Autoconf 2.69
-
-Copyright (C) 2012 Free Software Foundation, Inc.
-This configure script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it.
-_ACEOF
- exit
-fi
-
-## ------------------------ ##
-## Autoconf initialization. ##
-## ------------------------ ##
-
-# ac_fn_c_try_compile LINENO
-# --------------------------
-# Try to compile conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_compile ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext
- if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_compile
-
-# ac_fn_c_try_link LINENO
-# -----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded.
-ac_fn_c_try_link ()
-{
- as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- rm -f conftest.$ac_objext conftest$ac_exeext
- if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- grep -v '^ *+' conftest.err >conftest.er1
- cat conftest.er1 >&5
- mv -f conftest.er1 conftest.err
- fi
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
- test -x conftest$ac_exeext
- }; then :
- ac_retval=0
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- ac_retval=1
-fi
- # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
- # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
- # interfere with the next link command; also delete a directory that is
- # left behind by Apple's compiler. We do this before executing the actions.
- rm -rf conftest.dSYM conftest_ipa8_conftest.oo
- eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
- as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_link
-cat >config.log <<_ACEOF
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-
-It was created by sextractor $as_me 2.1.6, which was
-generated by GNU Autoconf 2.69. Invocation command line was
-
- $ $0 $@
-
-_ACEOF
-exec 5>>config.log
-{
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
-
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
-
-/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
-/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
-/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
-
-_ASUNAME
-
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- $as_echo "PATH: $as_dir"
- done
-IFS=$as_save_IFS
-
-} >&5
-
-cat >&5 <<_ACEOF
-
-
-## ----------- ##
-## Core tests. ##
-## ----------- ##
-
-_ACEOF
-
-
-# Keep a trace of the command line.
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Strip out --silent because we don't want to record it for future runs.
-# Also quote any args containing shell meta-characters.
-# Make two passes to allow for proper duplicate-argument suppression.
-ac_configure_args=
-ac_configure_args0=
-ac_configure_args1=
-ac_must_keep_next=false
-for ac_pass in 1 2
-do
- for ac_arg
- do
- case $ac_arg in
- -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil)
- continue ;;
- *\'*)
- ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
- esac
- case $ac_pass in
- 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
- 2)
- as_fn_append ac_configure_args1 " '$ac_arg'"
- if test $ac_must_keep_next = true; then
- ac_must_keep_next=false # Got value, back to normal.
- else
- case $ac_arg in
- *=* | --config-cache | -C | -disable-* | --disable-* \
- | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
- | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
- | -with-* | --with-* | -without-* | --without-* | --x)
- case "$ac_configure_args0 " in
- "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
- esac
- ;;
- -* ) ac_must_keep_next=true ;;
- esac
- fi
- as_fn_append ac_configure_args " '$ac_arg'"
- ;;
- esac
- done
-done
-{ ac_configure_args0=; unset ac_configure_args0;}
-{ ac_configure_args1=; unset ac_configure_args1;}
-
-# When interrupted or exit'd, cleanup temporary files, and complete
-# config.log. We remove comments because anyway the quotes in there
-# would cause problems or look ugly.
-# WARNING: Use '\'' to represent an apostrophe within the trap.
-# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
-trap 'exit_status=$?
- # Save into config.log some information that might help in debugging.
- {
- echo
-
- $as_echo "## ---------------- ##
-## Cache variables. ##
-## ---------------- ##"
- echo
- # The following way of writing the cache mishandles newlines in values,
-(
- for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
- (set) 2>&1 |
- case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- sed -n \
- "s/'\''/'\''\\\\'\'''\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
- ;; #(
- *)
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-)
- echo
-
- $as_echo "## ----------------- ##
-## Output variables. ##
-## ----------------- ##"
- echo
- for ac_var in $ac_subst_vars
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
-
- if test -n "$ac_subst_files"; then
- $as_echo "## ------------------- ##
-## File substitutions. ##
-## ------------------- ##"
- echo
- for ac_var in $ac_subst_files
- do
- eval ac_val=\$$ac_var
- case $ac_val in
- *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
- esac
- $as_echo "$ac_var='\''$ac_val'\''"
- done | sort
- echo
- fi
-
- if test -s confdefs.h; then
- $as_echo "## ----------- ##
-## confdefs.h. ##
-## ----------- ##"
- echo
- cat confdefs.h
- echo
- fi
- test "$ac_signal" != 0 &&
- $as_echo "$as_me: caught signal $ac_signal"
- $as_echo "$as_me: exit $exit_status"
- } >&5
- rm -f core *.core core.conftest.* &&
- rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
- exit $exit_status
-' 0
-for ac_signal in 1 2 13 15; do
- trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
-done
-ac_signal=0
-
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -f -r conftest* confdefs.h
-
-$as_echo "/* confdefs.h */" > confdefs.h
-
-# Predefined preprocessor variables.
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
-
-
-# Let the site file select an alternate cache file if it wants to.
-# Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
-if test -n "$CONFIG_SITE"; then
- # We do not want a PATH search for config.site.
- case $CONFIG_SITE in #((
- -*) ac_site_file1=./$CONFIG_SITE;;
- */*) ac_site_file1=$CONFIG_SITE;;
- *) ac_site_file1=./$CONFIG_SITE;;
- esac
-elif test "x$prefix" != xNONE; then
- ac_site_file1=$prefix/share/config.site
- ac_site_file2=$prefix/etc/config.site
-else
- ac_site_file1=$ac_default_prefix/share/config.site
- ac_site_file2=$ac_default_prefix/etc/config.site
-fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
-do
- test "x$ac_site_file" = xNONE && continue
- if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
- sed 's/^/| /' "$ac_site_file" >&5
- . "$ac_site_file" \
- || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "failed to load site script $ac_site_file
-See \`config.log' for more details" "$LINENO" 5; }
- fi
-done
-
-if test -r "$cache_file"; then
- # Some versions of bash will fail to source /dev/null (special files
- # actually), so we avoid doing that. DJGPP emulates it as a regular file.
- if test /dev/null != "$cache_file" && test -f "$cache_file"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
- case $cache_file in
- [\\/]* | ?:[\\/]* ) . "$cache_file";;
- *) . "./$cache_file";;
- esac
- fi
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
- >$cache_file
-fi
-
-# Check that the precious variables saved in the cache have kept the same
-# value.
-ac_cache_corrupted=false
-for ac_var in $ac_precious_vars; do
- eval ac_old_set=\$ac_cv_env_${ac_var}_set
- eval ac_new_set=\$ac_env_${ac_var}_set
- eval ac_old_val=\$ac_cv_env_${ac_var}_value
- eval ac_new_val=\$ac_env_${ac_var}_value
- case $ac_old_set,$ac_new_set in
- set,)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,set)
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
- ac_cache_corrupted=: ;;
- ,);;
- *)
- if test "x$ac_old_val" != "x$ac_new_val"; then
- # differences in whitespace do not lead to failure.
- ac_old_val_w=`echo x $ac_old_val`
- ac_new_val_w=`echo x $ac_new_val`
- if test "$ac_old_val_w" != "$ac_new_val_w"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
- ac_cache_corrupted=:
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
- eval $ac_var=\$ac_old_val
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
-$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
-$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
- fi;;
- esac
- # Pass precious variables to config.status.
- if test "$ac_new_set" = set; then
- case $ac_new_val in
- *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
- *) ac_arg=$ac_var=$ac_new_val ;;
- esac
- case " $ac_configure_args " in
- *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
- *) as_fn_append ac_configure_args " '$ac_arg'" ;;
- esac
- fi
-done
-if $ac_cache_corrupted; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
- { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
- as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
-fi
-## -------------------- ##
-## Main body of script. ##
-## -------------------- ##
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-
-
-
-ac_aux_dir=
-for ac_dir in admin "$srcdir"/admin; do
- if test -f "$ac_dir/install-sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install-sh -c"
- break
- elif test -f "$ac_dir/install.sh"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/install.sh -c"
- break
- elif test -f "$ac_dir/shtool"; then
- ac_aux_dir=$ac_dir
- ac_install_sh="$ac_aux_dir/shtool install -c"
- break
- fi
-done
-if test -z "$ac_aux_dir"; then
- as_fn_error $? "cannot find install-sh, install.sh, or shtool in admin \"$srcdir\"/admin" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
-
-
-
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
- as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_build_alias=$build_alias
-test "x$ac_build_alias" = x &&
- ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
-test "x$ac_build_alias" = x &&
- as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
-case $ac_cv_build in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
-esac
-build=$ac_cv_build
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_build
-shift
-build_cpu=$1
-build_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-build_os=$*
-IFS=$ac_save_IFS
-case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$host_alias" = x; then
- ac_cv_host=$ac_cv_build
-else
- ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
-case $ac_cv_host in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
-esac
-host=$ac_cv_host
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_host
-shift
-host_cpu=$1
-host_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-host_os=$*
-IFS=$ac_save_IFS
-case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
-$as_echo_n "checking target system type... " >&6; }
-if ${ac_cv_target+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test "x$target_alias" = x; then
- ac_cv_target=$ac_cv_host
-else
- ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
- as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
-$as_echo "$ac_cv_target" >&6; }
-case $ac_cv_target in
-*-*-*) ;;
-*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
-esac
-target=$ac_cv_target
-ac_save_IFS=$IFS; IFS='-'
-set x $ac_cv_target
-shift
-target_cpu=$1
-target_vendor=$2
-shift; shift
-# Remember, the first character of IFS is used to create $*,
-# except with old shells:
-target_os=$*
-IFS=$ac_save_IFS
-case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
-
-
-# The aliases save the names the user supplied, while $host etc.
-# will get canonicalized.
-test -n "$target_alias" &&
- test "$program_prefix$program_suffix$program_transform_name" = \
- NONENONEs,x,x, &&
- program_prefix=${target_alias}-
-
-am__api_version='1.12'
-
-# Find a good install program. We prefer a C program (faster),
-# so one script is as good as another. But avoid the broken or
-# incompatible versions:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-# OS/2's system install, which has a completely different semantic
-# ./install, which can be erroneously created by make from ./install.sh.
-# Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
-if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
- ./ | .// | /[cC]/* | \
- /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
- ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
- /usr/ucb/* ) ;;
- *)
- # OSF1 and SCO ODT 3.0 have their own names for install.
- # Don't use installbsd from OSF since it installs stuff as root
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
- :
- elif test $ac_prog = install &&
- grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # program-specific install script used by HP pwplus--don't use.
- :
- else
- rm -rf conftest.one conftest.two conftest.dir
- echo one > conftest.one
- echo two > conftest.two
- mkdir conftest.dir
- if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
- test -s conftest.one && test -s conftest.two &&
- test -s conftest.dir/conftest.one &&
- test -s conftest.dir/conftest.two
- then
- ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
- break 3
- fi
- fi
- fi
- done
- done
- ;;
-esac
-
- done
-IFS=$as_save_IFS
-
-rm -rf conftest.one conftest.two conftest.dir
-
-fi
- if test "${ac_cv_path_install+set}" = set; then
- INSTALL=$ac_cv_path_install
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for INSTALL within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- INSTALL=$ac_install_sh
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
-
-# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
-# It thinks the first close brace ends the variable substitution.
-test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
-
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
-
-test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name. Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
- *[\\\"\#\$\&\'\`$am_lf]*)
- as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
-esac
-case $srcdir in
- *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
- as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
-esac
-
-# Do 'set' in a subshell so we don't clobber the current shell's
-# arguments. Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
- am_has_slept=no
- for am_try in 1 2; do
- echo "timestamp, slept: $am_has_slept" > conftest.file
- set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
- if test "$*" = "X"; then
- # -L didn't work.
- set X `ls -t "$srcdir/configure" conftest.file`
- fi
- if test "$*" != "X $srcdir/configure conftest.file" \
- && test "$*" != "X conftest.file $srcdir/configure"; then
-
- # If neither matched, then we have a broken ls. This can happen
- # if, for instance, CONFIG_SHELL is bash and it inherits a
- # broken ls alias from the environment. This has actually
- # happened. Such a system could not be considered "sane".
- as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
- alias in your environment" "$LINENO" 5
- fi
- if test "$2" = conftest.file || test $am_try -eq 2; then
- break
- fi
- # Just in case.
- sleep 1
- am_has_slept=yes
- done
- test "$2" = conftest.file
- )
-then
- # Ok.
- :
-else
- as_fn_error $? "newly created file is older than distributed files!
-Check your system clock" "$LINENO" 5
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-# If we didn't sleep, we still need to ensure time stamps of config.status and
-# generated files are strictly newer.
-am_sleep_pid=
-if grep 'slept: no' conftest.file >/dev/null 2>&1; then
- ( sleep 1 ) &
- am_sleep_pid=$!
-fi
-
-rm -f conftest.file
-
-test "$program_prefix" != NONE &&
- program_transform_name="s&^&$program_prefix&;$program_transform_name"
-# Use a double $ so make ignores it.
-test "$program_suffix" != NONE &&
- program_transform_name="s&\$&$program_suffix&;$program_transform_name"
-# Double any \ or $.
-# By default was `s,x,x', remove it if useless.
-ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
- am_missing_run="$MISSING --run "
-else
- am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
-fi
-
-if test x"${install_sh}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
- *)
- install_sh="\${SHELL} $am_aux_dir/install-sh"
- esac
-fi
-
-# Installed binaries are usually stripped using 'strip' when the user
-# run "make install-strip". However 'strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the 'STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
-set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$STRIP"; then
- ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-STRIP=$ac_cv_prog_STRIP
-if test -n "$STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_STRIP"; then
- ac_ct_STRIP=$STRIP
- # Extract the first word of "strip", so it can be a program name with args.
-set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_STRIP"; then
- ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
-if test -n "$ac_ct_STRIP"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_STRIP" = x; then
- STRIP=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- STRIP=$ac_ct_STRIP
- fi
-else
- STRIP="$ac_cv_prog_STRIP"
-fi
-
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
-if test -z "$MKDIR_P"; then
- if ${ac_cv_path_mkdir+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_prog in mkdir gmkdir; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
- 'mkdir (fileutils) '4.1*)
- ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
- break 3;;
- esac
- done
- done
- done
-IFS=$as_save_IFS
-
-fi
-
- test -d ./--version && rmdir ./--version
- if test "${ac_cv_path_mkdir+set}" = set; then
- MKDIR_P="$ac_cv_path_mkdir -p"
- else
- # As a last resort, use the slow shell script. Don't cache a
- # value for MKDIR_P within a source directory, because that will
- # break other packages using the cache if that directory is
- # removed, or if the value is a relative name.
- MKDIR_P="$ac_install_sh -d"
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
-
-for ac_prog in gawk mawk nawk awk
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AWK"; then
- ac_cv_prog_AWK="$AWK" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-AWK=$ac_cv_prog_AWK
-if test -n "$AWK"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$AWK" && break
-done
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
-set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat >conftest.make <<\_ACEOF
-SHELL = /bin/sh
-all:
- @echo '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
-case `${MAKE-make} -f conftest.make 2>/dev/null` in
- *@@@%%%=?*=@@@%%%*)
- eval ac_cv_prog_make_${ac_make}_set=yes;;
- *)
- eval ac_cv_prog_make_${ac_make}_set=no;;
-esac
-rm -f conftest.make
-fi
-if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- SET_MAKE=
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
- am__leading_dot=.
-else
- am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
- # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
- # is not polluted with repeated "-I."
- am__isrc=' -I$(srcdir)'
- # test to see if srcdir already configured
- if test -f $srcdir/config.status; then
- as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
- fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
- if (cygpath --version) >/dev/null 2>/dev/null; then
- CYGPATH_W='cygpath -w'
- else
- CYGPATH_W=echo
- fi
-fi
-
-
-# Define the identity of the package.
- PACKAGE='sextractor'
- VERSION='2.1.6'
-
-
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
-
-
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
-
-# Some tools Automake needs.
-
-ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
-
-
-AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
-
-
-AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
-
-
-AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
-
-
-MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
-
-# For better backward compatibility. To be removed once Automake 1.9.x
-# dies out for good. For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
-mkdir_p='$(MKDIR_P)'
-
-# We need awk for the "check" target. The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility. Yes, it's still used
-# in the wild :-( We should find a proper way to deprecate it ...
-AMTAR='$${TAR-tar}'
-
-am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
-
-
-
-
-
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
-$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
- # Check whether --enable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then :
- enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
-else
- USE_MAINTAINER_MODE=no
-fi
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
-$as_echo "$USE_MAINTAINER_MODE" >&6; }
- if test $USE_MAINTAINER_MODE = yes; then
- MAINTAINER_MODE_TRUE=
- MAINTAINER_MODE_FALSE='#'
-else
- MAINTAINER_MODE_TRUE='#'
- MAINTAINER_MODE_FALSE=
-fi
-
- MAINT=$MAINTAINER_MODE_TRUE
-
-
-
-# Checks for programs.
-DEPDIR="${am__leading_dot}deps"
-
-ac_config_commands="$ac_config_commands depfiles"
-
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
- @echo this is the am__doit target
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
- am__include=include
- am__quote=
- _am_result=GNU
- ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
- echo '.include "confinc"' > confmf
- case `$am_make -s -f confmf 2> /dev/null` in #(
- *the\ am__doit\ target*)
- am__include=.include
- am__quote="\""
- _am_result=BSD
- ;;
- esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
-
-# Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
- enableval=$enable_dependency_tracking;
-fi
-
-if test "x$enable_dependency_tracking" != xno; then
- am_depcomp="$ac_aux_dir/depcomp"
- AMDEPBACKSLASH='\'
- am__nodep='_no'
-fi
- if test "x$enable_dependency_tracking" != xno; then
- AMDEP_TRUE=
- AMDEP_FALSE='#'
-else
- AMDEP_TRUE='#'
- AMDEP_FALSE=
-fi
-
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_CC"; then
- ac_ct_CC=$CC
- # Extract the first word of "gcc", so it can be a program name with args.
-set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-else
- CC="$ac_cv_prog_CC"
-fi
-
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- fi
-fi
-if test -z "$CC"; then
- # Extract the first word of "cc", so it can be a program name with args.
-set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
- ac_prog_rejected=no
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
- fi
- ac_cv_prog_CC="cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-if test $ac_prog_rejected = yes; then
- # We found a bogon in the path, so make sure we never use it.
- set dummy $ac_cv_prog_CC
- shift
- if test $# != 0; then
- # We chose a different compiler from the bogus one.
- # However, it has the same basename, so the bogon will be chosen
- # first if we set CC to just the basename; use the full file name.
- shift
- ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
- fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$CC"; then
- if test -n "$ac_tool_prefix"; then
- for ac_prog in cl.exe
- do
- # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$CC"; then
- ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$CC" && break
- done
-fi
-if test -z "$CC"; then
- ac_ct_CC=$CC
- for ac_prog in cl.exe
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_CC"; then
- ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_CC=$ac_cv_prog_ac_ct_CC
-if test -n "$ac_ct_CC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$ac_ct_CC" && break
-done
-
- if test "x$ac_ct_CC" = x; then
- CC=""
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- CC=$ac_ct_CC
- fi
-fi
-
-fi
-
-
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "no acceptable C compiler found in \$PATH
-See \`config.log' for more details" "$LINENO" 5; }
-
-# Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
-set X $ac_compile
-ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
- { { ac_try="$ac_compiler $ac_option >&5"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compiler $ac_option >&5") 2>conftest.err
- ac_status=$?
- if test -s conftest.err; then
- sed '10a\
-... rest of stderr output deleted ...
- 10q' conftest.err >conftest.er1
- cat conftest.er1 >&5
- fi
- rm -f conftest.er1 conftest.err
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
-done
-
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
-# Try to create an executable without -o first, disregard a.out.
-# It will help us diagnose broken compilers, and finding out an intuition
-# of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-
-# The possible output files:
-ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
-
-ac_rmfiles=
-for ac_file in $ac_files
-do
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- * ) ac_rmfiles="$ac_rmfiles $ac_file";;
- esac
-done
-rm -f $ac_rmfiles
-
-if { { ac_try="$ac_link_default"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link_default") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
-# So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
-# in a Makefile. We should not override ac_cv_exeext if it was cached,
-# so that the user can short-circuit this test for compilers unknown to
-# Autoconf.
-for ac_file in $ac_files ''
-do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
- ;;
- [ab].out )
- # We found the default executable, but exeext='' is most
- # certainly right.
- break;;
- *.* )
- if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
- then :; else
- ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- fi
- # We set ac_cv_exeext here because the later test for it is not
- # safe: cross compilers may not add the suffix if given an `-o'
- # argument, so we may need to know it at that point already.
- # Even if this section looks crufty: it has the advantage of
- # actually working.
- break;;
- * )
- break;;
- esac
-done
-test "$ac_cv_exeext" = no && ac_cv_exeext=
-
-else
- ac_file=''
-fi
-if test -z "$ac_file"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error 77 "C compiler cannot create executables
-See \`config.log' for more details" "$LINENO" 5; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
-ac_exeext=$ac_cv_exeext
-
-rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
-if { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- # If both `conftest.exe' and `conftest' are `present' (well, observable)
-# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
-# work properly (i.e., refer to `conftest.exe'), while it won't with
-# `rm'.
-for ac_file in conftest.exe conftest conftest.*; do
- test -f "$ac_file" || continue
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
- *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
- break;;
- * ) break;;
- esac
-done
-else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
-
-rm -f conftest.$ac_ext
-EXEEXT=$ac_cv_exeext
-ac_exeext=$EXEEXT
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdio.h>
-int
-main ()
-{
-FILE *f = fopen ("conftest.out", "w");
- return ferror (f) || fclose (f) != 0;
-
- ;
- return 0;
-}
-_ACEOF
-ac_clean_files="$ac_clean_files conftest.out"
-# Check that the compiler produces executables we can run. If not, either
-# the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
-if test "$cross_compiling" != yes; then
- { { ac_try="$ac_link"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_link") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }
- if { ac_try='./conftest$ac_cv_exeext'
- { { case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_try") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; }; then
- cross_compiling=no
- else
- if test "$cross_compiling" = maybe; then
- cross_compiling=yes
- else
- { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details" "$LINENO" 5; }
- fi
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
-
-rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
-ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.o conftest.obj
-if { { ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
- (eval "$ac_compile") 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; then :
- for ac_file in conftest.o conftest.obj conftest.*; do
- test -f "$ac_file" || continue;
- case $ac_file in
- *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
- *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
- break;;
- esac
-done
-else
- $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot compute suffix of object files: cannot compile
-See \`config.log' for more details" "$LINENO" 5; }
-fi
-rm -f conftest.$ac_cv_objext conftest.$ac_ext
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
-OBJEXT=$ac_cv_objext
-ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-#ifndef __GNUC__
- choke me
-#endif
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_compiler_gnu=yes
-else
- ac_compiler_gnu=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-ac_cv_c_compiler_gnu=$ac_compiler_gnu
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
-if test $ac_compiler_gnu = yes; then
- GCC=yes
-else
- GCC=
-fi
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_save_c_werror_flag=$ac_c_werror_flag
- ac_c_werror_flag=yes
- ac_cv_prog_cc_g=no
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-else
- CFLAGS=""
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-else
- ac_c_werror_flag=$ac_save_c_werror_flag
- CFLAGS="-g"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_g=yes
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- ac_c_werror_flag=$ac_save_c_werror_flag
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
- CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
- if test "$GCC" = yes; then
- CFLAGS="-g -O2"
- else
- CFLAGS="-g"
- fi
-else
- if test "$GCC" = yes; then
- CFLAGS="-O2"
- else
- CFLAGS=
- fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
- char **p;
- int i;
-{
- return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
- char *s;
- va_list v;
- va_start (v,p);
- s = g (p, va_arg (v,int));
- va_end (v);
- return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
- function prototypes and stuff, but not '\xHH' hex character constants.
- These don't provoke an error unfortunately, instead are silently treated
- as 'x'. The following induces an error, until -std is added to get
- proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
- array size at least. It's necessary to write '\x00'==0 to get something
- that's true only with -std. */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
- inside strings and character constants. */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
-_ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
- -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
- CC="$ac_save_CC $ac_arg"
- if ac_fn_c_try_compile "$LINENO"; then :
- ac_cv_prog_cc_c89=$ac_arg
-fi
-rm -f core conftest.err conftest.$ac_objext
- test "x$ac_cv_prog_cc_c89" != "xno" && break
-done
-rm -f conftest.$ac_ext
-CC=$ac_save_CC
-
-fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
- x)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
- xno)
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
- *)
- CC="$CC $ac_cv_prog_cc_c89"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
-
-fi
-
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-depcc="$CC" am_compiler_list=
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
- # We make a subdir and do the tests there. Otherwise we can end up
- # making bogus files that we don't know about and never remove. For
- # instance it was reported that on HP-UX the gcc test will end up
- # making a dummy file named 'D' -- because '-MD' means "put the output
- # in D".
- rm -rf conftest.dir
- mkdir conftest.dir
- # Copy depcomp to subdir because otherwise we won't find it if we're
- # using a relative directory.
- cp "$am_depcomp" conftest.dir
- cd conftest.dir
- # We will build objects and dependencies in a subdirectory because
- # it helps to detect inapplicable dependency modes. For instance
- # both Tru64's cc and ICC support -MD to output dependencies as a
- # side effect of compilation, but ICC will put the dependencies in
- # the current directory while Tru64 will put them in the object
- # directory.
- mkdir sub
-
- am_cv_CC_dependencies_compiler_type=none
- if test "$am_compiler_list" = ""; then
- am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
- fi
- am__universal=false
- case " $depcc " in #(
- *\ -arch\ *\ -arch\ *) am__universal=true ;;
- esac
-
- for depmode in $am_compiler_list; do
- # Setup a source with many dependencies, because some compilers
- # like to wrap large dependency lists on column 80 (with \), and
- # we should not choose a depcomp mode which is confused by this.
- #
- # We need to recreate these files for each test, as the compiler may
- # overwrite some of them when testing with obscure command lines.
- # This happens at least with the AIX C compiler.
- : > sub/conftest.c
- for i in 1 2 3 4 5 6; do
- echo '#include "conftst'$i'.h"' >> sub/conftest.c
- # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
- # Solaris 10 /bin/sh.
- echo '/* dummy */' > sub/conftst$i.h
- done
- echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
- # We check with '-c' and '-o' for the sake of the "dashmstdout"
- # mode. It turns out that the SunPro C++ compiler does not properly
- # handle '-M -o', and we need to detect this. Also, some Intel
- # versions had trouble with output in subdirs.
- am__obj=sub/conftest.${OBJEXT-o}
- am__minus_obj="-o $am__obj"
- case $depmode in
- gcc)
- # This depmode causes a compiler race in universal mode.
- test "$am__universal" = false || continue
- ;;
- nosideeffect)
- # After this tag, mechanisms are not by side-effect, so they'll
- # only be used when explicitly requested.
- if test "x$enable_dependency_tracking" = xyes; then
- continue
- else
- break
- fi
- ;;
- msvc7 | msvc7msys | msvisualcpp | msvcmsys)
- # This compiler won't grok '-c -o', but also, the minuso test has
- # not run yet. These depmodes are late enough in the game, and
- # so weak that their functioning should not be impacted.
- am__obj=conftest.${OBJEXT-o}
- am__minus_obj=
- ;;
- none) break ;;
- esac
- if depmode=$depmode \
- source=sub/conftest.c object=$am__obj \
- depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
- $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
- >/dev/null 2>conftest.err &&
- grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
- grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
- grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
- ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
- # icc doesn't choke on unknown options, it will just issue warnings
- # or remarks (even with -Werror). So we grep stderr for any message
- # that says an option was ignored or not supported.
- # When given -MP, icc 7.0 and 7.1 complain thusly:
- # icc: Command line warning: ignoring option '-M'; no argument required
- # The diagnosis changed in icc 8.0:
- # icc: Command line remark: option '-MP' not supported
- if (grep 'ignoring option' conftest.err ||
- grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
- am_cv_CC_dependencies_compiler_type=$depmode
- break
- fi
- fi
- done
-
- cd ..
- rm -rf conftest.dir
-else
- am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
-CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
-
- if
- test "x$enable_dependency_tracking" != xno \
- && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
- am__fastdepCC_TRUE=
- am__fastdepCC_FALSE='#'
-else
- am__fastdepCC_TRUE='#'
- am__fastdepCC_FALSE=
-fi
-
-
-
-
-
-
-
-# Check whether --with-machine was given.
-if test "${with_machine+set}" = set; then :
- withval=$with_machine; sextractor_host=$withval
-else
- sextractor_host=auto
-fi
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sextractor target host configuration" >&5
-$as_echo_n "checking for sextractor target host configuration... " >&6; }
-
- if ${sextractor_cv_host+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- if test x"$sextractor_host" = xauto; then
- case "${target}" in
- *ibm-aix*) sextractor_host_tag="ibm";;
- *dec-osf*) sextractor_host_tag="alpha";;
- *dec-ultrix*) sextractor_host_tag="ultrix";;
- *hp-hpux*) sextractor_host_tag="hpux";;
- *solaris*) sextractor_host_tag="solaris";;
- *sunos*) sextractor_host_tag="sunos";;
- *sgi-irix*) sextractor_host_tag="sgi";;
- *linux-gnu*) sextractor_host_tag="linuxpc";;
- *darwin*) sextractor_host_tag="linuxpc";;
- *)
- as_fn_error $? "Unsupported host type $host" "$LINENO" 5
- ;;
- esac
- else
- sextractor_host_tag=$sextractor_host
- fi
-
- sextractor_cv_host="sextractor_host_tag=$sextractor_host_tag"
-
-fi
-
-
- eval "$sextractor_cv_host"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $sextractor_host_tag" >&5
-$as_echo "$sextractor_host_tag" >&6; }
-
- #Check extra compiler flags and add them to CFLAGS
- case "${sextractor_host_tag}" in
- ibm)
- CPPFLAGS="$CPPFLAGS -DIBM_AIX"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo O | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -O" >&5
-$as_echo_n "checking whether $CC supports -O... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -O -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -O -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O"
- else
- :
-
- fi
-
- fi
- ;;
- alpha)
- CPPFLAGS="$CPPFLAGS -DDEC_ALPHA"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo O | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -O" >&5
-$as_echo_n "checking whether $CC supports -O... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -O -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -O -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O"
- else
- :
-
- fi
-
- fi
- ;;
- ultrix)
- CPPFLAGS="$CPPFLAGS -DBSWAP"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo O | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -O" >&5
-$as_echo_n "checking whether $CC supports -O... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -O -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -O -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O"
- else
- :
-
- fi
-
- fi
- ;;
- hpux)
- if test x"$GCC" != xyes; then
- CPPFLAGS="$CPPFLAGS -DHP_UX"
- fi
- ;;
- solaris)
- CPPFLAGS="$CPPFLAGS -DSUN_SOLARIS"
- if test x"$GCC" != xyes; then
-
-
-
- flag=`echo fast | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fast" >&5
-$as_echo_n "checking whether $CC supports -fast... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -fast -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -fast -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -fast"
- else
- :
-
- fi
-
-
-
-
- flag=`echo xO5 | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -xO5" >&5
-$as_echo_n "checking whether $CC supports -xO5... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -xO5 -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -xO5 -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -xO5"
- else
- :
-
- fi
-
- fi
- ;;
- sunos)
- CPPFLAGS="$CPPFLAGS -DSUN_OS"
- ;;
- sgi)
- ;;
- linuxpc)
- CPPFLAGS="$CPPFLAGS -DPC_LINUX"
- if test x"$GCC" = xyes; then
-
-
-
- flag=`echo funroll-loops | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -funroll-loops" >&5
-$as_echo_n "checking whether $CC supports -funroll-loops... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -funroll-loops -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -funroll-loops -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -O1 -funroll-loops"
- else
- :
-
- fi
-
- fi
- ;;
- *)
- if test x"$sextractor_host" != xauto; then
- as_fn_error $? "Unsupported host type $sextractor_host" "$LINENO" 5
- fi
- ;;
- esac
-
- SEXMACHINE="$sextractor_host_tag"
-
-
-
-
-
-
- flag=`echo fno-builtin | sed 'y%.=/+-%___p_%'`
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fno-builtin" >&5
-$as_echo_n "checking whether $CC supports -fno-builtin... " >&6; }
-if eval \${eso_cv_prog_cc_$flag+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
- eval "eso_cv_prog_cc_$flag=no"
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -fno-builtin -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -fno-builtin -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-eval ac_res=\$eso_cv_prog_cc_$flag
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- CFLAGS="$CFLAGS -fno-builtin"
- else
- :
-
- fi
-
-
-
- # Extract the first word of "ar", so it can be a program name with args.
-set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$AR"; then
- ac_cv_prog_AR="$AR" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AR="ar"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="NONE"
-fi
-fi
-AR=$ac_cv_prog_AR
-if test -n "$AR"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-
- if test x"$AR" = xNONE; then
- as_fn_error $? "Cannot find \'ar\'" "$LINENO" 5
- fi
-
-
-if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
-set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$RANLIB"; then
- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-RANLIB=$ac_cv_prog_RANLIB
-if test -n "$RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_prog_RANLIB"; then
- ac_ct_RANLIB=$RANLIB
- # Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$ac_ct_RANLIB"; then
- ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
-if test -n "$ac_ct_RANLIB"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_ct_RANLIB" = x; then
- RANLIB=":"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- RANLIB=$ac_ct_RANLIB
- fi
-else
- RANLIB="$ac_cv_prog_RANLIB"
-fi
-
-
-# Checks for libraries.
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for pow in -lm" >&5
-$as_echo_n "checking for pow in -lm... " >&6; }
-if ${ac_cv_lib_m_pow+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- ac_check_lib_save_LIBS=$LIBS
-LIBS="-lm $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-/* Override any GCC internal prototype to avoid an error.
- Use char because int might match the return type of a GCC
- builtin and then its argument prototype would still apply. */
-#ifdef __cplusplus
-extern "C"
-#endif
-char pow ();
-int
-main ()
-{
-return pow ();
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_m_pow=yes
-else
- ac_cv_lib_m_pow=no
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_pow" >&5
-$as_echo "$ac_cv_lib_m_pow" >&6; }
-if test "x$ac_cv_lib_m_pow" = xyes; then :
- LIBM="-lm"
-fi
-
-
-
-ac_config_files="$ac_config_files Makefile source/Makefile source/wcs/Makefile"
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
-_ACEOF
-
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, we kill variables containing newlines.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(
- for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
- eval ac_val=\$$ac_var
- case $ac_val in #(
- *${as_nl}*)
- case $ac_var in #(
- *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
- esac
- case $ac_var in #(
- _ | IFS | as_nl) ;; #(
- BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
- *) { eval $ac_var=; unset $ac_var;} ;;
- esac ;;
- esac
- done
-
- (set) 2>&1 |
- case $as_nl`(ac_space=' '; set) 2>&1` in #(
- *${as_nl}ac_space=\ *)
- # `set' does not quote correctly, so add quotes: double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \.
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;; #(
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
- ;;
- esac |
- sort
-) |
- sed '
- /^ac_cv_env_/b end
- t clear
- :clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- :end' >>confcache
-if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
- if test -w "$cache_file"; then
- if test "x$cache_file" != "x/dev/null"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
- if test ! -f "$cache_file" || test -h "$cache_file"; then
- cat confcache >"$cache_file"
- else
- case $cache_file in #(
- */* | ?:*)
- mv -f confcache "$cache_file"$$ &&
- mv -f "$cache_file"$$ "$cache_file" ;; #(
- *)
- mv -f confcache "$cache_file" ;;
- esac
- fi
- fi
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
- fi
-fi
-rm -f confcache
-
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
-
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then branch to the quote section. Otherwise,
-# look for a macro that doesn't take arguments.
-ac_script='
-:mline
-/\\$/{
- N
- s,\\\n,,
- b mline
-}
-t clear
-:clear
-s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g
-t quote
-s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g
-t quote
-b any
-:quote
-s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g
-s/\[/\\&/g
-s/\]/\\&/g
-s/\$/$$/g
-H
-:any
-${
- g
- s/^\n//
- s/\n/ /g
- p
-}
-'
-DEFS=`sed -n "$ac_script" confdefs.h`
-
-
-ac_libobjs=
-ac_ltlibobjs=
-U=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
- ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
- # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
- # will be set to the directory where LIBOBJS objects are built.
- as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
- as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
-done
-LIBOBJS=$ac_libobjs
-
-LTLIBOBJS=$ac_ltlibobjs
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
-$as_echo_n "checking that generated files are newer than configure... " >&6; }
- if test -n "$am_sleep_pid"; then
- # Hide warnings about reused PIDs.
- wait $am_sleep_pid 2>/dev/null
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
-$as_echo "done" >&6; }
- if test -n "$EXEEXT"; then
- am__EXEEXT_TRUE=
- am__EXEEXT_FALSE='#'
-else
- am__EXEEXT_TRUE='#'
- am__EXEEXT_FALSE=
-fi
-
-if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
- as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
- as_fn_error $? "conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
- as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
-
-: "${CONFIG_STATUS=./config.status}"
-ac_write_fail=0
-ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
-as_write_fail=0
-cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
-#! $SHELL
-# Generated by $as_me.
-# Run this file to recreate the current configuration.
-# Compiler output produced by configure, useful for debugging
-# configure, is in config.log if it exists.
-
-debug=false
-ac_cs_recheck=false
-ac_cs_silent=false
-
-SHELL=\${CONFIG_SHELL-$SHELL}
-export SHELL
-_ASEOF
-cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
-## -------------------- ##
-## M4sh Initialization. ##
-## -------------------- ##
-
-# Be more Bourne compatible
-DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
- NULLCMD=:
- # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
- # is contrary to our usage. Disable this feature.
- alias -g '${1+"$@"}'='"$@"'
- setopt NO_GLOB_SUBST
-else
- case `(set -o) 2>/dev/null` in #(
- *posix*) :
- set -o posix ;; #(
- *) :
- ;;
-esac
-fi
-
-
-as_nl='
-'
-export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='print -r --'
- as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
- as_echo='printf %s\n'
- as_echo_n='printf %s'
-else
- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
- as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
- as_echo_n='/usr/ucb/echo -n'
- else
- as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
- as_echo_n_body='eval
- arg=$1;
- case $arg in #(
- *"$as_nl"*)
- expr "X$arg" : "X\\(.*\\)$as_nl";
- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
- esac;
- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
- '
- export as_echo_n_body
- as_echo_n='sh -c $as_echo_n_body as_echo'
- fi
- export as_echo_body
- as_echo='sh -c $as_echo_body as_echo'
-fi
-
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- PATH_SEPARATOR=:
- (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
- (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
- PATH_SEPARATOR=';'
- }
-fi
-
-
-# IFS
-# We need space, tab and new line, in precisely that order. Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
-IFS=" "" $as_nl"
-
-# Find who we are. Look in the path if we contain no directory separator.
-as_myself=
-case $0 in #((
- *[\\/]* ) as_myself=$0 ;;
- *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-# We did not find ourselves, most probably we were run as `sh COMMAND'
-# in which case we are not to be found in the path.
-if test "x$as_myself" = x; then
- as_myself=$0
-fi
-if test ! -f "$as_myself"; then
- $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
- exit 1
-fi
-
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there. '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
- && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-
-# as_fn_error STATUS ERROR [LINENO LOG_FD]
-# ----------------------------------------
-# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
-# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
-# script with STATUS, using 1 if that was 0.
-as_fn_error ()
-{
- as_status=$1; test $as_status -eq 0 && as_status=1
- if test "$4"; then
- as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
- $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
- fi
- $as_echo "$as_me: error: $2" >&2
- as_fn_exit $as_status
-} # as_fn_error
-
-
-# as_fn_set_status STATUS
-# -----------------------
-# Set $? to STATUS, without forking.
-as_fn_set_status ()
-{
- return $1
-} # as_fn_set_status
-
-# as_fn_exit STATUS
-# -----------------
-# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
-as_fn_exit ()
-{
- set +e
- as_fn_set_status $1
- exit $1
-} # as_fn_exit
-
-# as_fn_unset VAR
-# ---------------
-# Portably unset VAR.
-as_fn_unset ()
-{
- { eval $1=; unset $1;}
-}
-as_unset=as_fn_unset
-# as_fn_append VAR VALUE
-# ----------------------
-# Append the text in VALUE to the end of the definition contained in VAR. Take
-# advantage of any shell optimizations that allow amortized linear growth over
-# repeated appends, instead of the typical quadratic growth present in naive
-# implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
- eval 'as_fn_append ()
- {
- eval $1+=\$2
- }'
-else
- as_fn_append ()
- {
- eval $1=\$$1\$2
- }
-fi # as_fn_append
-
-# as_fn_arith ARG...
-# ------------------
-# Perform arithmetic evaluation on the ARGs, and store the result in the
-# global $as_val. Take advantage of shells that can avoid forks. The arguments
-# must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
- eval 'as_fn_arith ()
- {
- as_val=$(( $* ))
- }'
-else
- as_fn_arith ()
- {
- as_val=`expr "$@" || test $? -eq 1`
- }
-fi # as_fn_arith
-
-
-if expr a : '\(a\)' >/dev/null 2>&1 &&
- test "X`expr 00001 : '.*\(...\)'`" = X001; then
- as_expr=expr
-else
- as_expr=false
-fi
-
-if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
- as_basename=basename
-else
- as_basename=false
-fi
-
-if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
- as_dirname=dirname
-else
- as_dirname=false
-fi
-
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
- X"$0" : 'X\(//\)$' \| \
- X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
- sed '/^.*\/\([^/][^/]*\)\/*$/{
- s//\1/
- q
- }
- /^X\/\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\/\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
-
-# Avoid depending upon Character Ranges.
-as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-as_cr_digits='0123456789'
-as_cr_alnum=$as_cr_Letters$as_cr_digits
-
-ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in #(((((
--n*)
- case `echo 'xy\c'` in
- *c*) ECHO_T=' ';; # ECHO_T is single tab character.
- xy) ECHO_C='\c';;
- *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
- ECHO_T=' ';;
- esac;;
-*)
- ECHO_N='-n';;
-esac
-
-rm -f conf$$ conf$$.exe conf$$.file
-if test -d conf$$.dir; then
- rm -f conf$$.dir/conf$$.file
-else
- rm -f conf$$.dir
- mkdir conf$$.dir 2>/dev/null
-fi
-if (echo >conf$$.file) 2>/dev/null; then
- if ln -s conf$$.file conf$$ 2>/dev/null; then
- as_ln_s='ln -s'
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
- # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
- as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
- as_ln_s='cp -pR'
- fi
-else
- as_ln_s='cp -pR'
-fi
-rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-
-# as_fn_mkdir_p
-# -------------
-# Create "$as_dir" as a directory, including parents if necessary.
-as_fn_mkdir_p ()
-{
-
- case $as_dir in #(
- -*) as_dir=./$as_dir;;
- esac
- test -d "$as_dir" || eval $as_mkdir_p || {
- as_dirs=
- while :; do
- case $as_dir in #(
- *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
- *) as_qdir=$as_dir;;
- esac
- as_dirs="'$as_qdir' $as_dirs"
- as_dir=`$as_dirname -- "$as_dir" ||
-$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$as_dir" : 'X\(//\)[^/]' \| \
- X"$as_dir" : 'X\(//\)$' \| \
- X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- test -d "$as_dir" && break
- done
- test -z "$as_dirs" || eval "mkdir $as_dirs"
- } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
-
-
-} # as_fn_mkdir_p
-if mkdir -p . 2>/dev/null; then
- as_mkdir_p='mkdir -p "$as_dir"'
-else
- test -d ./-p && rmdir ./-p
- as_mkdir_p=false
-fi
-
-
-# as_fn_executable_p FILE
-# -----------------------
-# Test if FILE is an executable regular file.
-as_fn_executable_p ()
-{
- test -f "$1" && test -x "$1"
-} # as_fn_executable_p
-as_test_x='test -x'
-as_executable_p=as_fn_executable_p
-
-# Sed expression to map a string onto a valid CPP name.
-as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-exec 6>&1
-## ----------------------------------- ##
-## Main body of $CONFIG_STATUS script. ##
-## ----------------------------------- ##
-_ASEOF
-test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# Save the log message, to keep $0 and so on meaningful, and to
-# report actual input values of CONFIG_FILES etc. instead of their
-# values after options handling.
-ac_log="
-This file was extended by sextractor $as_me 2.1.6, which was
-generated by GNU Autoconf 2.69. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
- CONFIG_LINKS = $CONFIG_LINKS
- CONFIG_COMMANDS = $CONFIG_COMMANDS
- $ $0 $@
-
-on `(hostname || uname -n) 2>/dev/null | sed 1q`
-"
-
-_ACEOF
-
-case $ac_config_files in *"
-"*) set x $ac_config_files; shift; ac_config_files=$*;;
-esac
-
-
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-# Files that config.status was made for.
-config_files="$ac_config_files"
-config_commands="$ac_config_commands"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-ac_cs_usage="\
-\`$as_me' instantiates files and other configuration actions
-from templates according to the current configuration. Unless the files
-and actions are specified as TAGs, all are instantiated by default.
-
-Usage: $0 [OPTION]... [TAG]...
-
- -h, --help print this help, then exit
- -V, --version print version number and configuration settings, then exit
- --config print configuration, then exit
- -q, --quiet, --silent
- do not print progress messages
- -d, --debug don't remove temporary files
- --recheck update $as_me by reconfiguring in the same conditions
- --file=FILE[:TEMPLATE]
- instantiate the configuration file FILE
-
-Configuration files:
-$config_files
-
-Configuration commands:
-$config_commands
-
-Report bugs to the package provider."
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
-ac_cs_version="\\
-sextractor config.status 2.1.6
-configured by $0, generated by GNU Autoconf 2.69,
- with options \\"\$ac_cs_config\\"
-
-Copyright (C) 2012 Free Software Foundation, Inc.
-This config.status script is free software; the Free Software Foundation
-gives unlimited permission to copy, distribute and modify it."
-
-ac_pwd='$ac_pwd'
-srcdir='$srcdir'
-INSTALL='$INSTALL'
-MKDIR_P='$MKDIR_P'
-AWK='$AWK'
-test -n "\$AWK" || AWK=awk
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# The default lists apply if the user does not specify any file.
-ac_need_defaults=:
-while test $# != 0
-do
- case $1 in
- --*=?*)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
- ac_shift=:
- ;;
- --*=)
- ac_option=`expr "X$1" : 'X\([^=]*\)='`
- ac_optarg=
- ac_shift=:
- ;;
- *)
- ac_option=$1
- ac_optarg=$2
- ac_shift=shift
- ;;
- esac
-
- case $ac_option in
- # Handling of the options.
- -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
- ac_cs_recheck=: ;;
- --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
- $as_echo "$ac_cs_version"; exit ;;
- --config | --confi | --conf | --con | --co | --c )
- $as_echo "$ac_cs_config"; exit ;;
- --debug | --debu | --deb | --de | --d | -d )
- debug=: ;;
- --file | --fil | --fi | --f )
- $ac_shift
- case $ac_optarg in
- *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
- '') as_fn_error $? "missing file argument" ;;
- esac
- as_fn_append CONFIG_FILES " '$ac_optarg'"
- ac_need_defaults=false;;
- --he | --h | --help | --hel | -h )
- $as_echo "$ac_cs_usage"; exit ;;
- -q | -quiet | --quiet | --quie | --qui | --qu | --q \
- | -silent | --silent | --silen | --sile | --sil | --si | --s)
- ac_cs_silent=: ;;
-
- # This is an error.
- -*) as_fn_error $? "unrecognized option: \`$1'
-Try \`$0 --help' for more information." ;;
-
- *) as_fn_append ac_config_targets " $1"
- ac_need_defaults=false ;;
-
- esac
- shift
-done
-
-ac_configure_extra_args=
-
-if $ac_cs_silent; then
- exec 6>/dev/null
- ac_configure_extra_args="$ac_configure_extra_args --silent"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-if \$ac_cs_recheck; then
- set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
- export CONFIG_SHELL
- exec "\$@"
-fi
-
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-exec 5>>config.log
-{
- echo
- sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-## Running $as_me. ##
-_ASBOX
- $as_echo "$ac_log"
-} >&5
-
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-#
-# INIT-COMMANDS
-#
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
-
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-
-# Handling of arguments.
-for ac_config_target in $ac_config_targets
-do
- case $ac_config_target in
- "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
- "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
- "source/Makefile") CONFIG_FILES="$CONFIG_FILES source/Makefile" ;;
- "source/wcs/Makefile") CONFIG_FILES="$CONFIG_FILES source/wcs/Makefile" ;;
-
- *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
- esac
-done
-
-
-# If the user did not use the arguments to specify the items to instantiate,
-# then the envvar interface is used. Set only those that are not.
-# We use the long form for the default assignment because of an extremely
-# bizarre bug on SunOS 4.1.3.
-if $ac_need_defaults; then
- test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
- test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
-fi
-
-# Have a temporary directory for convenience. Make it in the build tree
-# simply because there is no reason against having it here, and in addition,
-# creating and moving files from /tmp can sometimes cause problems.
-# Hook for its removal unless debugging.
-# Note that there is a small window in which the directory will not be cleaned:
-# after its creation but before its name has been assigned to `$tmp'.
-$debug ||
-{
- tmp= ac_tmp=
- trap 'exit_status=$?
- : "${ac_tmp:=$tmp}"
- { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
-' 0
- trap 'as_fn_exit 1' 1 2 13 15
-}
-# Create a (secure) tmp directory for tmp files.
-
-{
- tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
- test -d "$tmp"
-} ||
-{
- tmp=./conf$$-$RANDOM
- (umask 077 && mkdir "$tmp")
-} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
-ac_tmp=$tmp
-
-# Set up the scripts for CONFIG_FILES section.
-# No need to generate them if there are no CONFIG_FILES.
-# This happens for instance with `./config.status config.h'.
-if test -n "$CONFIG_FILES"; then
-
-
-ac_cr=`echo X | tr X '\015'`
-# On cygwin, bash can eat \r inside `` if the user requested igncr.
-# But we know of no other shell where ac_cr would be empty at this
-# point, so we can use a bashism as a fallback.
-if test "x$ac_cr" = x; then
- eval ac_cr=\$\'\\r\'
-fi
-ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
-if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
- ac_cs_awk_cr='\\r'
-else
- ac_cs_awk_cr=$ac_cr
-fi
-
-echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
-_ACEOF
-
-
-{
- echo "cat >conf$$subs.awk <<_ACEOF" &&
- echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
- echo "_ACEOF"
-} >conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
-ac_delim='%!_!# '
-for ac_last_try in false false false false false :; do
- . ./conf$$subs.sh ||
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
-
- ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
- if test $ac_delim_n = $ac_delim_num; then
- break
- elif $ac_last_try; then
- as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
- else
- ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
- fi
-done
-rm -f conf$$subs.sh
-
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
-_ACEOF
-sed -n '
-h
-s/^/S["/; s/!.*/"]=/
-p
-g
-s/^[^!]*!//
-:repl
-t repl
-s/'"$ac_delim"'$//
-t delim
-:nl
-h
-s/\(.\{148\}\)..*/\1/
-t more1
-s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
-p
-n
-b repl
-:more1
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t nl
-:delim
-h
-s/\(.\{148\}\)..*/\1/
-t more2
-s/["\\]/\\&/g; s/^/"/; s/$/"/
-p
-b
-:more2
-s/["\\]/\\&/g; s/^/"/; s/$/"\\/
-p
-g
-s/.\{148\}//
-t delim
-' <conf$$subs.awk | sed '
-/^[^""]/{
- N
- s/\n//
-}
-' >>$CONFIG_STATUS || ac_write_fail=1
-rm -f conf$$subs.awk
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-_ACAWK
-cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
- for (key in S) S_is_set[key] = 1
- FS = ""
-
-}
-{
- line = $ 0
- nfields = split(line, field, "@")
- substed = 0
- len = length(field[1])
- for (i = 2; i < nfields; i++) {
- key = field[i]
- keylen = length(key)
- if (S_is_set[key]) {
- value = S[key]
- line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
- len += length(value) + length(field[++i])
- substed = 1
- } else
- len += 1 + keylen
- }
-
- print line
-}
-
-_ACAWK
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
- sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
-else
- cat
-fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
- || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
-_ACEOF
-
-# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
-# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
-h
-s///
-s/^/:/
-s/[ ]*$/:/
-s/:\$(srcdir):/:/g
-s/:\${srcdir}:/:/g
-s/:@srcdir@:/:/g
-s/^:*//
-s/:*$//
-x
-s/\(=[ ]*\).*/\1/
-G
-s/\n//
-s/^[^=]*=[ ]*$//
-}'
-fi
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-fi # test -n "$CONFIG_FILES"
-
-
-eval set X " :F $CONFIG_FILES :C $CONFIG_COMMANDS"
-shift
-for ac_tag
-do
- case $ac_tag in
- :[FHLC]) ac_mode=$ac_tag; continue;;
- esac
- case $ac_mode$ac_tag in
- :[FHL]*:*);;
- :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
- :[FH]-) ac_tag=-:-;;
- :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
- esac
- ac_save_IFS=$IFS
- IFS=:
- set x $ac_tag
- IFS=$ac_save_IFS
- shift
- ac_file=$1
- shift
-
- case $ac_mode in
- :L) ac_source=$1;;
- :[FH])
- ac_file_inputs=
- for ac_f
- do
- case $ac_f in
- -) ac_f="$ac_tmp/stdin";;
- *) # Look for the file first in the build tree, then in the source tree
- # (if the path is not absolute). The absolute path cannot be DOS-style,
- # because $ac_f cannot contain `:'.
- test -f "$ac_f" ||
- case $ac_f in
- [\\/$]*) false;;
- *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
- esac ||
- as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
- esac
- case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
- as_fn_append ac_file_inputs " '$ac_f'"
- done
-
- # Let's still pretend it is `configure' which instantiates (i.e., don't
- # use $as_me), people would be surprised to read:
- # /* config.h. Generated by config.status. */
- configure_input='Generated from '`
- $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
- `' by configure.'
- if test x"$ac_file" != x-; then
- configure_input="$ac_file. $configure_input"
- { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
- fi
- # Neutralize special characters interpreted by sed in replacement strings.
- case $configure_input in #(
- *\&* | *\|* | *\\* )
- ac_sed_conf_input=`$as_echo "$configure_input" |
- sed 's/[\\\\&|]/\\\\&/g'`;; #(
- *) ac_sed_conf_input=$configure_input;;
- esac
-
- case $ac_tag in
- *:-:* | *:-) cat >"$ac_tmp/stdin" \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
- esac
- ;;
- esac
-
- ac_dir=`$as_dirname -- "$ac_file" ||
-$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$ac_file" : 'X\(//\)[^/]' \| \
- X"$ac_file" : 'X\(//\)$' \| \
- X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir="$ac_dir"; as_fn_mkdir_p
- ac_builddir=.
-
-case "$ac_dir" in
-.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
-*)
- ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
- # A ".." for each directory in $ac_dir_suffix.
- ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
- case $ac_top_builddir_sub in
- "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
- *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
- esac ;;
-esac
-ac_abs_top_builddir=$ac_pwd
-ac_abs_builddir=$ac_pwd$ac_dir_suffix
-# for backward compatibility:
-ac_top_builddir=$ac_top_build_prefix
-
-case $srcdir in
- .) # We are building in place.
- ac_srcdir=.
- ac_top_srcdir=$ac_top_builddir_sub
- ac_abs_top_srcdir=$ac_pwd ;;
- [\\/]* | ?:[\\/]* ) # Absolute name.
- ac_srcdir=$srcdir$ac_dir_suffix;
- ac_top_srcdir=$srcdir
- ac_abs_top_srcdir=$srcdir ;;
- *) # Relative name.
- ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
- ac_top_srcdir=$ac_top_build_prefix$srcdir
- ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
-esac
-ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
-
-
- case $ac_mode in
- :F)
- #
- # CONFIG_FILE
- #
-
- case $INSTALL in
- [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
- *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
- esac
- ac_MKDIR_P=$MKDIR_P
- case $MKDIR_P in
- [\\/$]* | ?:[\\/]* ) ;;
- */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
- esac
-_ACEOF
-
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-# If the template does not know about datarootdir, expand it.
-# FIXME: This hack should be removed a few years after 2.60.
-ac_datarootdir_hack=; ac_datarootdir_seen=
-ac_sed_dataroot='
-/datarootdir/ {
- p
- q
-}
-/@datadir@/p
-/@docdir@/p
-/@infodir@/p
-/@localedir@/p
-/@mandir@/p'
-case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
-*datarootdir*) ac_datarootdir_seen=yes;;
-*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
-_ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- ac_datarootdir_hack='
- s&@datadir@&$datadir&g
- s&@docdir@&$docdir&g
- s&@infodir@&$infodir&g
- s&@localedir@&$localedir&g
- s&@mandir@&$mandir&g
- s&\\\${datarootdir}&$datarootdir&g' ;;
-esac
-_ACEOF
-
-# Neutralize VPATH when `$srcdir' = `.'.
-# Shell code in configure.ac might set extrasub.
-# FIXME: do we really want to maintain this feature?
-cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_sed_extra="$ac_vpsub
-$extrasub
-_ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
-:t
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s|@configure_input@|$ac_sed_conf_input|;t t
-s&@top_builddir@&$ac_top_builddir_sub&;t t
-s&@top_build_prefix@&$ac_top_build_prefix&;t t
-s&@srcdir@&$ac_srcdir&;t t
-s&@abs_srcdir@&$ac_abs_srcdir&;t t
-s&@top_srcdir@&$ac_top_srcdir&;t t
-s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
-s&@builddir@&$ac_builddir&;t t
-s&@abs_builddir@&$ac_abs_builddir&;t t
-s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
-s&@INSTALL@&$ac_INSTALL&;t t
-s&@MKDIR_P@&$ac_MKDIR_P&;t t
-$ac_datarootdir_hack
-"
-eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
- >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
-
-test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
- { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
- { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
- "$ac_tmp/out"`; test -z "$ac_out"; } &&
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
-which seems to be undefined. Please make sure it is defined" >&2;}
-
- rm -f "$ac_tmp/stdin"
- case $ac_file in
- -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
- *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
- esac \
- || as_fn_error $? "could not create $ac_file" "$LINENO" 5
- ;;
-
-
- :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
- ;;
- esac
-
-
- case $ac_file$ac_mode in
- "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
- # Autoconf 2.62 quotes --file arguments for eval, but not when files
- # are listed without --file. Let's play safe and only enable the eval
- # if we detect the quoting.
- case $CONFIG_FILES in
- *\'*) eval set x "$CONFIG_FILES" ;;
- *) set x $CONFIG_FILES ;;
- esac
- shift
- for mf
- do
- # Strip MF so we end up with the name of the file.
- mf=`echo "$mf" | sed -e 's/:.*$//'`
- # Check whether this is an Automake generated Makefile or not.
- # We used to match only the files named 'Makefile.in', but
- # some people rename them; so instead we look at the file content.
- # Grep'ing the first line is not enough: some people post-process
- # each Makefile.in and add a new line on top of each file to say so.
- # Grep'ing the whole file is not good either: AIX grep has a line
- # limit of 2048, but all sed's we know have understand at least 4000.
- if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
- dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$mf" : 'X\(//\)[^/]' \| \
- X"$mf" : 'X\(//\)$' \| \
- X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- else
- continue
- fi
- # Extract the definition of DEPDIR, am__include, and am__quote
- # from the Makefile without running 'make'.
- DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
- test -z "$DEPDIR" && continue
- am__include=`sed -n 's/^am__include = //p' < "$mf"`
- test -z "am__include" && continue
- am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
- # Find all dependency output files, they are included files with
- # $(DEPDIR) in their names. We invoke sed twice because it is the
- # simplest approach to changing $(DEPDIR) to its actual value in the
- # expansion.
- for file in `sed -n "
- s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
- sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
- # Make sure the directory exists.
- test -f "$dirpart/$file" && continue
- fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
- X"$file" : 'X\(//\)[^/]' \| \
- X"$file" : 'X\(//\)$' \| \
- X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
- s//\1/
- q
- }
- /^X\(\/\/\)[^/].*/{
- s//\1/
- q
- }
- /^X\(\/\/\)$/{
- s//\1/
- q
- }
- /^X\(\/\).*/{
- s//\1/
- q
- }
- s/.*/./; q'`
- as_dir=$dirpart/$fdir; as_fn_mkdir_p
- # echo "creating $dirpart/$file"
- echo '# dummy' > "$dirpart/$file"
- done
- done
-}
- ;;
-
- esac
-done # for ac_tag
-
-
-as_fn_exit 0
-_ACEOF
-ac_clean_files=$ac_clean_files_save
-
-test $ac_write_fail = 0 ||
- as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
-
-
-# configure is writing to config.log, and then calls config.status.
-# config.status does its own redirection, appending to config.log.
-# Unfortunately, on DOS this fails, as config.log is still kept open
-# by configure, so config.status won't be able to write to it; its
-# output is simply discarded. So we exec the FD to /dev/null,
-# effectively closing config.log, so it can be properly (re)opened and
-# appended to by config.status. When coming back to configure, we
-# need to make the FD available again.
-if test "$no_create" != yes; then
- ac_cs_success=:
- ac_config_status_args=
- test "$silent" = yes &&
- ac_config_status_args="$ac_config_status_args --quiet"
- exec 5>/dev/null
- $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
- exec 5>>config.log
- # Use ||, not &&, to avoid exiting from the if with $? = 1, which
- # would make configure fail if this is the last instruction.
- $ac_cs_success || as_fn_exit 1
-fi
-if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
-fi
-
diff --git a/external/sextractor/configure.ac b/external/sextractor/configure.ac
deleted file mode 100644
index 1b3b71c..0000000
--- a/external/sextractor/configure.ac
+++ /dev/null
@@ -1,31 +0,0 @@
-# Process this file with autoconf to produce a configure script.
-
-AC_INIT([sextractor],[2.1.6])
-AC_PREREQ([2.59])
-
-AC_CONFIG_SRCDIR([Makefile.am])
-AC_CONFIG_AUX_DIR([admin])
-
-AC_CANONICAL_HOST
-AC_CANONICAL_TARGET
-
-AM_INIT_AUTOMAKE
-
-AM_MAINTAINER_MODE
-
-# Checks for programs.
-SEXTRACTOR_PROG_CC
-
-ESO_PROG_CC_FLAG(fno-builtin, [CFLAGS="$CFLAGS -fno-builtin"])
-
-ESO_PROG_AR
-AC_PROG_RANLIB
-
-# Checks for libraries.
-AC_CHECK_LIB(m, pow, [LIBM="-lm"])
-AC_SUBST(LIBM)
-
-AC_CONFIG_FILES(Makefile
- source/Makefile
- source/wcs/Makefile)
-AC_OUTPUT
diff --git a/external/sextractor/doc/README.DOC b/external/sextractor/doc/README.DOC
deleted file mode 100644
index 3af0ff3..0000000
--- a/external/sextractor/doc/README.DOC
+++ /dev/null
@@ -1,8 +0,0 @@
-The present documentation of SExtractor2 is still very incomplete: this
-is rather a ``proto-documentation''. Chapters are missing. The english
-is so-so. At least I tried to remove any obsolete information from V1.0.
-I will progressively upgrade the documentation during the coming months.
-In the meanwhile, you may still retrieve some basic information from the
-old documentation included in V1.0 archive.
-
- Emmanuel Bertin.
diff --git a/external/sextractor/doc/sex2_doc.ps b/external/sextractor/doc/sex2_doc.ps
deleted file mode 100644
index 499fce3..0000000
--- a/external/sextractor/doc/sex2_doc.ps
+++ /dev/null
@@ -1,32043 +0,0 @@
-%!PS-Adobe-2.0
-%%Creator: dvips(k) 5.85 Copyright 1999 Radical Eye Software
-%%Title: sex2_doc.dvi
-%%Pages: 35
-%%PageOrder: Ascend
-%%BoundingBox: 0 0 596 842
-%%DocumentFonts: Times-Roman
-%%EndComments
-%DVIPSWebPage: (www.radicaleye.com)
-%DVIPSCommandLine: dvips sex2_doc -o
-%DVIPSParameters: dpi=600, compressed
-%DVIPSSource: TeX output 1999.09.14:2021
-%%BeginProcSet: texc.pro
-%!
-/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
-N}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72
-mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 0
-0 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{
-landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsize
-mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[
-matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall round
-exch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{
-statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]
-N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin
-/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array
-/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2
-array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat N
-df-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn A
-definefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get
-}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}
-B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr
-1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 3
-1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx
-0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cx
-sub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{
-rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gp
-gp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B
-/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{
-/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{
-A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copy
-get A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}
-ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cp
-fillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17
-{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 add
-chg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{
-1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}
-forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn
-/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put
-}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{
-bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get A
-mul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{
-SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{
-userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X
-1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4
-index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N
-/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{
-/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)
-(LaserWriter 16/600)]{A length product length le{A length product exch 0
-exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelse
-end{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemask
-grestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}
-imagemask grestore}}ifelse B/QV{gsave newpath transform round exch round
-exch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlineto
-fill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S p
-delta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}
-B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{
-p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 S
-rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
-
-%%EndProcSet
-%%BeginProcSet: 8r.enc
-% @@psencodingfile@{
-% author = "S. Rahtz, P. MacKay, Alan Jeffrey, B. Horn, K. Berry",
-% version = "0.6",
-% date = "1 July 1998",
-% filename = "8r.enc",
-% email = "tex-fonts@@tug.org",
-% docstring = "Encoding for TrueType or Type 1 fonts
-% to be used with TeX."
-% @}
-%
-% Idea is to have all the characters normally included in Type 1 fonts
-% available for typesetting. This is effectively the characters in Adobe
-% Standard Encoding + ISO Latin 1 + extra characters from Lucida.
-%
-% Character code assignments were made as follows:
-%
-% (1) the Windows ANSI characters are almost all in their Windows ANSI
-% positions, because some Windows users cannot easily reencode the
-% fonts, and it makes no difference on other systems. The only Windows
-% ANSI characters not available are those that make no sense for
-% typesetting -- rubout (127 decimal), nobreakspace (160), softhyphen
-% (173). quotesingle and grave are moved just because it's such an
-% irritation not having them in TeX positions.
-%
-% (2) Remaining characters are assigned arbitrarily to the lower part
-% of the range, avoiding 0, 10 and 13 in case we meet dumb software.
-%
-% (3) Y&Y Lucida Bright includes some extra text characters; in the
-% hopes that other PostScript fonts, perhaps created for public
-% consumption, will include them, they are included starting at 0x12.
-%
-% (4) Remaining positions left undefined are for use in (hopefully)
-% upward-compatible revisions, if someday more characters are generally
-% available.
-%
-% (5) hyphen appears twice for compatibility with both
-% ASCII and Windows.
-%
-/TeXBase1Encoding [
-% 0x00 (encoded characters from Adobe Standard not in Windows 3.1)
- /.notdef /dotaccent /fi /fl
- /fraction /hungarumlaut /Lslash /lslash
- /ogonek /ring /.notdef
- /breve /minus /.notdef
-% These are the only two remaining unencoded characters, so may as
-% well include them.
- /Zcaron /zcaron
-% 0x10
- /caron /dotlessi
-% (unusual TeX characters available in, e.g., Lucida Bright)
- /dotlessj /ff /ffi /ffl
- /.notdef /.notdef /.notdef /.notdef
- /.notdef /.notdef /.notdef /.notdef
- % very contentious; it's so painful not having quoteleft and quoteright
- % at 96 and 145 that we move the things normally found there to here.
- /grave /quotesingle
-% 0x20 (ASCII begins)
- /space /exclam /quotedbl /numbersign
- /dollar /percent /ampersand /quoteright
- /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
-% 0x30
- /zero /one /two /three /four /five /six /seven
- /eight /nine /colon /semicolon /less /equal /greater /question
-% 0x40
- /at /A /B /C /D /E /F /G /H /I /J /K /L /M /N /O
-% 0x50
- /P /Q /R /S /T /U /V /W
- /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
-% 0x60
- /quoteleft /a /b /c /d /e /f /g /h /i /j /k /l /m /n /o
-% 0x70
- /p /q /r /s /t /u /v /w
- /x /y /z /braceleft /bar /braceright /asciitilde
- /.notdef % rubout; ASCII ends
-% 0x80
- /.notdef /.notdef /quotesinglbase /florin
- /quotedblbase /ellipsis /dagger /daggerdbl
- /circumflex /perthousand /Scaron /guilsinglleft
- /OE /.notdef /.notdef /.notdef
-% 0x90
- /.notdef /.notdef /.notdef /quotedblleft
- /quotedblright /bullet /endash /emdash
- /tilde /trademark /scaron /guilsinglright
- /oe /.notdef /.notdef /Ydieresis
-% 0xA0
- /.notdef % nobreakspace
- /exclamdown /cent /sterling
- /currency /yen /brokenbar /section
- /dieresis /copyright /ordfeminine /guillemotleft
- /logicalnot
- /hyphen % Y&Y (also at 45); Windows' softhyphen
- /registered
- /macron
-% 0xD0
- /degree /plusminus /twosuperior /threesuperior
- /acute /mu /paragraph /periodcentered
- /cedilla /onesuperior /ordmasculine /guillemotright
- /onequarter /onehalf /threequarters /questiondown
-% 0xC0
- /Agrave /Aacute /Acircumflex /Atilde /Adieresis /Aring /AE /Ccedilla
- /Egrave /Eacute /Ecircumflex /Edieresis
- /Igrave /Iacute /Icircumflex /Idieresis
-% 0xD0
- /Eth /Ntilde /Ograve /Oacute
- /Ocircumflex /Otilde /Odieresis /multiply
- /Oslash /Ugrave /Uacute /Ucircumflex
- /Udieresis /Yacute /Thorn /germandbls
-% 0xE0
- /agrave /aacute /acircumflex /atilde
- /adieresis /aring /ae /ccedilla
- /egrave /eacute /ecircumflex /edieresis
- /igrave /iacute /icircumflex /idieresis
-% 0xF0
- /eth /ntilde /ograve /oacute
- /ocircumflex /otilde /odieresis /divide
- /oslash /ugrave /uacute /ucircumflex
- /udieresis /yacute /thorn /ydieresis
-] def
-
-%%EndProcSet
-%%BeginProcSet: special.pro
-%!
-TeXDict begin/SDict 200 dict N SDict begin/@SpecialDefaults{/hs 612 N
-/vs 792 N/ho 0 N/vo 0 N/hsc 1 N/vsc 1 N/ang 0 N/CLIP 0 N/rwiSeen false N
-/rhiSeen false N/letter{}N/note{}N/a4{}N/legal{}N}B/@scaleunit 100 N
-/@hscale{@scaleunit div/hsc X}B/@vscale{@scaleunit div/vsc X}B/@hsize{
-/hs X/CLIP 1 N}B/@vsize{/vs X/CLIP 1 N}B/@clip{/CLIP 2 N}B/@hoffset{/ho
-X}B/@voffset{/vo X}B/@angle{/ang X}B/@rwi{10 div/rwi X/rwiSeen true N}B
-/@rhi{10 div/rhi X/rhiSeen true N}B/@llx{/llx X}B/@lly{/lly X}B/@urx{
-/urx X}B/@ury{/ury X}B/magscale true def end/@MacSetUp{userdict/md known
-{userdict/md get type/dicttype eq{userdict begin md length 10 add md
-maxlength ge{/md md dup length 20 add dict copy def}if end md begin
-/letter{}N/note{}N/legal{}N/od{txpose 1 0 mtx defaultmatrix dtransform S
-atan/pa X newpath clippath mark{transform{itransform moveto}}{transform{
-itransform lineto}}{6 -2 roll transform 6 -2 roll transform 6 -2 roll
-transform{itransform 6 2 roll itransform 6 2 roll itransform 6 2 roll
-curveto}}{{closepath}}pathforall newpath counttomark array astore/gc xdf
-pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{PaintBlack}
-if}N/txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR pop 1
--1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
-get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip
-yflip not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub
-neg 0 TR}if yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{
-noflips{TR pop pop 270 rotate 1 -1 scale}if xflip yflip and{TR pop pop
-90 rotate 1 -1 scale ppr 3 get ppr 1 get neg sub neg ppr 2 get ppr 0 get
-neg sub neg TR}if xflip yflip not and{TR pop pop 90 rotate ppr 3 get ppr
-1 get neg sub neg 0 TR}if yflip xflip not and{TR pop pop 270 rotate ppr
-2 get ppr 0 get neg sub neg 0 S TR}if}ifelse scaleby96{ppr aload pop 4
--1 roll add 2 div 3 1 roll add 2 div 2 copy TR .96 dup scale neg S neg S
-TR}if}N/cp{pop pop showpage pm restore}N end}if}if}N/normalscale{
-Resolution 72 div VResolution 72 div neg scale magscale{DVImag dup scale
-}if 0 setgray}N/psfts{S 65781.76 div N}N/startTexFig{/psf$SavedState
-save N userdict maxlength dict begin/magscale true def normalscale
-currentpoint TR/psf$ury psfts/psf$urx psfts/psf$lly psfts/psf$llx psfts
-/psf$y psfts/psf$x psfts currentpoint/psf$cy X/psf$cx X/psf$sx psf$x
-psf$urx psf$llx sub div N/psf$sy psf$y psf$ury psf$lly sub div N psf$sx
-psf$sy scale psf$cx psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub
-TR/showpage{}N/erasepage{}N/copypage{}N/p 3 def @MacSetUp}N/doclip{
-psf$llx psf$lly psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2
-roll moveto 6 -1 roll S lineto S lineto S lineto closepath clip newpath
-moveto}N/endTexFig{end psf$SavedState restore}N/@beginspecial{SDict
-begin/SpecialSave save N gsave normalscale currentpoint TR
- at SpecialDefaults count/ocount X/dcount countdictstack N}N/@setspecial{
-CLIP 1 eq{newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto
-closepath clip}if ho vo TR hsc vsc scale ang rotate rwiSeen{rwi urx llx
-sub div rhiSeen{rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR
-}{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse
-CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury
-lineto closepath clip}if/showpage{}N/erasepage{}N/copypage{}N newpath}N
-/@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end}
-repeat grestore SpecialSave restore end}N/@defspecial{SDict begin}N
-/@fedspecial{end}B/li{lineto}B/rl{rlineto}B/rc{rcurveto}B/np{/SaveX
-currentpoint/SaveY X N 1 setlinecap newpath}N/st{stroke SaveX SaveY
-moveto}N/fil{fill SaveX SaveY moveto}N/ellipse{/endangle X/startangle X
-/yrad X/xrad X/savematrix matrix currentmatrix N TR xrad yrad scale 0 0
-1 startangle endangle arc savematrix setmatrix}N end
-
-%%EndProcSet
-TeXDict begin 39158280 55380996 1000 600 600 (sex2_doc.dvi)
- at start
-%DVIPSBitmapFont: Fa cmbxti10 10.95 2
-/Fa 2 102 df<EE01FF93B5FC5DA492380007FEA2160FA217FCA2161FA217F8A2163FA2
-17F0A2167FA2DA0FF813E0ECFFFE010390B5FC5B90261FFC1F13C090383FF00749487EEB
-FFC048496C1380481300485C5B000F16005B001F5CA248485CA2150F127F495CA2151F12
-FF495CA2033F133C177C4914F0A2157F17F8007F15E015FF6C6C48EBE1F05C261FF00F13
-E3260FF83FEBE7E06CB5389FFFC06C020F13806CD9FC0313003A003FE000FE304077BE36
->100 D<EC07FE91387FFF8049B512E0010714F049EB07F890383FF801D97FE013FC9038
-FFC000485B4890C7FC4814014914F8120F491303001FEC07F0ED1FE04848EBFFC001F9B5
-128090B612004814FC15C091C8FC13F0A25B12FFA2127FA31630167816FC003F1401ED03
-F86C6CEB0FF06C6CEB7FE03A07FE03FFC06CB612006C14FC6C6C13F0010F90C7FC262A77
-A830>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fb cmmi6 6 1
-/Fb 1 106 df<1338137CA2137813701300A7EA0780EA1FC0EA38E01230EA60F0EAC1E0
-A3EA03C0A3EA0780A2EA0F0013041306EA1E0CA21318121CEA1E70EA0FE0EA07800F237D
-A116>105 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fc cmmi9 9 2
-/Fc 2 122 df<90391F801F8090397FE07FE09039E0F0E0703A01C0F9C0F83903807D83
-3807007F000E1403000C15F0001C137E0018EC01C002FEC7FC00385B1210C7FC13015CA3
-1303A25C1640010714E016C0001C5B007E1401010F148000FE1403011FEB0700011B130E
-39F839F01C397070F878393FE07FE0390F801F8025227EA02C>120
-D<13F0D803FCEB01C0D8071EEB03E0D80E1F1307121C003813800030140F013F14C00070
-1300126049131FD8E07E14801240EA00FE49133F000115005BA25D0003147E5BA215FE5D
-5BA214015DEBF00314070001130F3900F83FF0EB3FFBEB0FC3EB00075DA20007130FD81F
-805B003F495AA24AC7FCEB007E003E137C00385B381803F0381E07C0D807FFC8FCEA01F8
-23317EA026>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fd cmtt12 12 5
-/Fd 5 88 df<003FB512F04814FCB7FC826C816C813A03F8007FF0ED1FF8ED07FC15036F
-7E8281EE7F80A2163F17C0161FA217E0160FA4EE07F0AD160F17E0A4161F17C0163FA217
-80167FEEFF00A24B5A15034B5AED1FF8ED7FF0003FB6FC4815C0B75A93C7FC6C14FC6C14
-F02C3D7EBC33>68 D<387FFFF8B57E80A25C6C5BD801FCC9FCB3B3A3EE03E0EE07F0A900
-7FB7FCB8FCA46C16E02C3D7DBC33>76 D<90381FFFF890B6FC000315C0000F15F0A24815
-F83A3FFC003FFC01E013074913034848EB01FEA290C8FCA500FE157FB3AC6C15FF6C15FE
-A46D1301A36C6CEB03FC01F0130F01FC133F6CB612F86C15F0A2000315C0C61500011F13
-F8283F7BBD33>79 D<007FB57EB612F815FE81826C812603F8007FED3FF0ED0FF815076F
-7E1501A26F7EA74B5AA215034B5A150FED3FF0EDFFE090B65A5E93C7FC5D8182D9F8007F
-153F6F7E150F821507AA173E177FA416F8030313FF267FFFC014FEB538E001FF17FC81EE
-7FF86C49EB3FF0C9EA0FC0303E7EBC33>82 D<D83FFCEC3FFC486CEC7FFEB591B5FCA26C
-48EC7FFE6C48EC3FFCD80FC0EC03F0A76D1407000716E0A86C6CEC0FC0A2EC07E0EC0FF0
-EC1FF8A3000116809039F83FFC1FEC3E7CA4EC7E7EA200001600A2EC7C3E01FC5CECFC3F
-A3ECF81F017C143EA590397DF00FBEA3013D14BC90393FE007FCA5ECC003011F5C6D486C
-5A303E7FBC33>87 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fe cmtt8 8 4
-/Fe 4 85 df<EB0FC0A2497EA4EB3CF0A5EB7CF8A3EB7878EBF87CA548487EA40003133F
-497EA290B5FCA2481480A3EBC00F000F14C0EB8007A3397FF03FF800FF14FCA3007F14F8
-1E2A7EA923>65 D<B612F015F8A4380F8000A515701500A21438147CA3EBFFFCA5EB807C
-A3143891C7FCA3151C153EA6B612FEA415FC1F297EA823>69 D<397FF00FFE39FFF81FFF
-A3397FF00FFE390F8001F0AC90B5FCA5EB8001AE397FF00FFE39FFF81FFFA3397FF00FFE
-20297FA823>72 D<007FB512F8B612FCA439F807C07CA50070143800001400B3A7EBFFFE
-487FA36C5B1E297EA823>84 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Ff cmbsy10 10.95 1
-/Ff 1 121 df<EB0FF8EB7FFF48B512C048803907FC0FF0390FF003F8001FEB00FC383F
-E0014848487E1407A2EAFF80A36E5A6E5A6E5A92C7FC6C7EA2123F7F6C7E120FEA07FC6C
-7EC66C7EEB3FF0EBFFFC000313FF484813C0390FF83FE0391FF00FF048486C7E6E7ED87F
-C07F6E7EEAFF80168080A57F127F4A1300EA3FE0001F495AEA0FF06C6C485A3903FE0FF8
-3901FFBFF06C6CB45A011F1380D907FEC7FC903800FF80EC3FE06E7EEC07F8816E7E1401
-81A26E1380EA0780487E487E487EA34A1300A213E06C48485A49485AD80FE05B3907F81F
-F06CB55A6C5C6C6C90C7FCEB0FF8215379BF30>120 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fg cmex10 10 19
-/Fg 19 119 df<1430147014E0EB01C01303EB0780EB0F00A2131E5BA25B13F85B12015B
-1203A2485AA3485AA3121F90C7FCA25AA3123EA2127EA6127C12FCB3A2127C127EA6123E
-A2123FA37EA27F120FA36C7EA36C7EA212017F12007F13787FA27F7FA2EB0780EB03C013
-01EB00E0147014301462738226>0 D<12C07E12707E123C7E7EA26C7E6C7EA26C7E7F12
-007F1378137CA27FA37FA31480130FA214C0A31307A214E0A6130314F0B3A214E01307A6
-14C0A2130FA31480A2131F1400A3133EA35BA2137813F85B12015B485AA2485A48C7FCA2
-121E5A12385A5A5A14627C8226>I<12F0B3B3B2043674811C>12
-D<151E153E157C15F8EC01F0EC03E01407EC0FC0EC1F8015005C147E5CA2495A495AA249
-5AA2495AA2495AA249C7FCA2137EA213FE5B12015BA212035BA21207A25B120FA35B121F
-A45B123FA548C8FCA912FEB3A8127FA96C7EA5121F7FA4120F7FA312077FA21203A27F12
-01A27F12007F137EA27FA26D7EA26D7EA26D7EA26D7EA26D7E6D7EA2147E80801580EC0F
-C0EC07E01403EC01F0EC00F8157C153E151E1F94718232>16 D<12F07E127C7E7E6C7E7F
-6C7E6C7E12017F6C7E137EA27F6D7EA26D7EA26D7EA26D7EA26D7EA26D7EA280147E147F
-80A21580141FA215C0A2140F15E0A3140715F0A4140315F8A5EC01FCA9EC00FEB3A8EC01
-FCA9EC03F8A515F01407A415E0140FA315C0141FA21580A2143F1500A25C147E14FE5CA2
-495AA2495AA2495AA2495AA2495AA249C7FC137EA25B485A5B1203485A485A5B48C8FC12
-3E5A5A5A1F947D8232>I<160F161F163E167C16F8ED01F0ED03E0ED07C0150FED1F8016
-00153E157E5D4A5A5D14034A5A5D140F4A5AA24AC7FC143E147E5CA2495AA2495AA2495A
-A2130F5CA2495AA2133F91C8FCA25B137E13FEA25B1201A25B1203A35B1207A35B120FA3
-5BA2121FA45B123FA690C9FC5AAA12FEB3AC127FAA7E7FA6121F7FA4120FA27FA312077F
-A312037FA312017FA212007FA2137E137F7FA280131FA26D7EA2801307A26D7EA26D7EA2
-6D7EA2147E143E143F6E7EA26E7E1407816E7E1401816E7E157E153E811680ED0FC01507
-ED03E0ED01F0ED00F8167C163E161F160F28C66E823D>I<12F07E127C7E7E6C7E6C7E6C
-7E7F6C7E1200137C137E7F6D7E130F806D7E1303806D7EA26D7E147C147E80A26E7EA26E
-7EA26E7EA2811403A26E7EA2811400A281157E157FA2811680A2151F16C0A3150F16E0A3
-150716F0A31503A216F8A4150116FCA6150016FEAA167FB3AC16FEAA16FC1501A616F815
-03A416F0A21507A316E0150FA316C0151FA31680153FA216005DA2157E15FE5DA214015D
-A24A5AA214075DA24A5AA24A5AA24AC7FCA2147E147C14FC495AA2495A5C1307495A5C13
-1F49C8FC137E137C5B1201485A5B485A485A48C9FC123E5A5A5A28C67E823D>I<EE01E0
-1603EE07C0EE0F80161F1700163E5E5E15015E4B5A15074B5A5E151F4BC7FC153E157E5D
-A24A5A14035D14075D140F5D141F5D143F92C8FC5C147E14FE5C1301A25C13035C1307A2
-5C130FA2495AA3495AA3137F91C9FCA25B5BA312015BA31203A25BA21207A35BA2120FA3
-5BA3121FA45BA2123FA75B127FAC90CAFC5AB3B3A27E7FAC123F7FA7121FA27FA4120FA3
-7FA31207A27FA31203A27FA21201A37F1200A37F7FA280133FA36D7EA36D7EA2130780A2
-130380130180A2130080147E147F8081141F81140F8114078114038114016E7EA2157E15
-3E153F6F7E150F826F7E15036F7E821500167C82821780160FEE07C0EE03E016012BF86C
-8242>32 D<12F07E127C7E123F7E6C7E6C7E6C7E7F12016C7E7F137E133E133F6D7E130F
-806D7EA26D7E80130180130080147E147F8081141F81140F81140781A2140381140181A2
-140081A2157FA36F7EA382151FA282150FA3821507A382A21503A282A31501A282A31500
-A382A482A21780A7163F17C0AC161F17E0B3B3A217C0163FAC1780167FA71700A25EA45E
-A31501A35EA21503A35EA21507A25EA3150F5EA3151F5EA2153F5EA34BC7FCA315FEA25D
-1401A25D14035D1407A25D140F5D141F5D143F92C8FC5C147E14FE5C13015C13035C495A
-A2495A5C131F49C9FC133E137E5B5B485A12035B485A485A48CAFC5A123E5A5A5A2BF87E
-8242>I<BB12FC86A3D87FC0C9001F7FF0007F6C6C17076C6C050113806C6CEF007F1A1F
-6C6CF00FC06C6C18076C6C1803F201E06C6D17006D6C1860013F19706E18306D7E6D6C18
-181B006D7E6D7E6D7EA26D7F6E7E6E7EA26E7E6E7E6E7EA26E7E6E7E80826F7E6F7EA26F
-7E6F7E6F5A5EA24B5A5E4BCBFC153E157E5D5D4A5A4A5A14075D4A5A4ACCFC143E147E14
-7C5C4948181801031930495A4A18704948186049CC12E0491801017EF003C0017C180749
-180F4848F01F800003197F49EF01FF4848050713004848173F48CA000FB5FC48BA5AA25A
-BB5AA24D537B7F58>80 D<167F923801FFC0923803C0F0923807803892380F007892381F
-01FC151E153EA2157E92387C0070170015FCA44A5AA81403A45DA41407A94A5AAA4A5AA9
-5DA4143FA492C8FCA7143E147EA4147C123800FE13FC5CA2495A5CEA7803387007C0383C
-0F80D80FFEC9FCEA03F82E5C7C7F27>82 D<BF12E08AA38A6C90CCFC0900806C6D19076C
-6D07007F6C6D1A1F1D076C6DF201FF6C6D747E6C6DF33F801E0F6C6D1B076D6CF303C06D
-6D1A01F600E06D7F6D6D1B706D1D30816D6D1B186D6D1B007F816E7E6E7FA26E7F6E7F6E
-7FA26E7F6E7F6E7FA26F7E6F7F6F7FA26F7F6F7F81836F7F6F7F167F83707F707F828470
-7F707FA2707F82715A60173F715A604D5A4DCDFC17FEA24C5A4C5A4C5A4C5A4C5A5F163F
-4CCEFC16FE4B5A4B5A4B5AA24B5A4B5A4B5A4BCFFC15FEA24A5A4A5A4A481B184A481B30
-4A5A4B1B70023F1C604ACF12E002FE1B014948F303C049481B074948F30F801E1F49481B
-7F4948F3FF0049481A0349CE120F01FEF37FFEF403FF48481A7F4848077FB55A48BEFC48
-655AA248655ABFFC666D747B7F78>88 D<F107C0F11FF0F17C3CF1F80E0601133EF1F07F
-953803E0FF1807A24E5A1A7E95381F803C1A00A24EC7FCA260A2187E18FEA3601701A34D
-5AA4170760A3170FA260A2171FA260A3173FA360177FA44DC8FCA55E5FA31603A35FA216
-07A35FA2160FA44C5AA5163F5FA4167F5FA416FF5FA45D94C9FCA45D5EA54B5AA54B5AA4
-5EA2151FA35EA2153FA35EA3157F5EA54BCAFCA45D1401A35DA31403A25DA21407A25DA3
-140F5DA44A5AA35D143FA392CBFC5CA2147E14FE5CA2383C01F8127E12FF495A5C130700
-FE5B387C0F80D8701FCCFCEA3C3EEA0FFCEA03F048B87B7F2E>90
-D<1B301B78A21BF8A21BF01A01A21BE01A03A21BC01A07A21B801A0FA21B0062A21A1E1A
-3EA21A3C1A7CA21A781AF8A262A21901A2621903A2621907A262190FA297C7FC61A2191E
-193EA2193C197CA2197819F8A2611801A2611803A261A21807A261180FA296C8FC60A218
-1E183EA2183C187C131001301678017016F813F860000116011203486C5E000F1603121D
-D838FE5E00701607126000C05FEA407F0000160FA26D6C92C9FC5FA2171E6D6C143EA217
-3C6D6C147CA2177817F86D7E5F16016D7E5F1603A26D6C5C1607A26D6C5C160FA294CAFC
-027F5BA2161EEC3F80163EA2163C91381FC07CA2167891380FE0F8A25E15E1EC07F15E15
-F3EC03FB5E15FFA26E5BA36E90CBFCA35D157EA2157C153C15384D96788353>113
-D<1B301B78A21BF8A21BF0A21A01A21BE0A21A03A21BC0A31A07A21B80A21A0FA21B00A2
-62A21A1EA21A3EA21A3CA21A7CA21A78A21AF8A262A31901A262A21903A262A21907A262
-A2190FA297C7FCA261A2191EA2193EA2193CA3197CA21978A219F8A261A21801A261A218
-03A261A21807A261A2180FA296C8FCA360A2181EA2183EA2183CA2187C13101878133001
-7016F8A201F85E120117011203486C5EA2120D001D16031219D830FE5E12700060160712
-C000405FEA007F170FA295C9FC6D7E5FA2171EA26D6C143EA2173CA2177C6D7E1778A36D
-6C14F8A25FA216016D7E5FA21603A26D6C5CA21607A26D6C5CA2160FA294CAFC147F5EA2
-161EEC3F80A2163EA2163CEC1FC0167CA21678A291380FE0F8A25EA2EC07F1A25EA215F3
-EC03FB5EA215FFA26E5BA48093CBFCA4157EA4157C153C15384DC8788353>I<1B301B78
-A31BF8A21BF0A31A01A21BE0A31A03A21BC0A31A07A21B80A41A0FA21B00A362A21A1EA3
-1A3EA21A3CA31A7CA21A78A31AF8A262A41901A262A31903A262A31907A262A3190FA297
-C7FCA461A2191EA3193EA2193CA3197CA21978A319F8A261A41801A261A31803A261A318
-07A261A3180FA296C8FCA460A2181EA3183EA2183CA3187C131018781330A2017016F8A2
-01F85EA212011701120360487EA2120D001D16031219D838FE5E123012700060160712E0
-00C05FEA407F1200170FA295C9FCA26D7E5FA2171EA36D7E173EA2173CA36D6C147CA217
-78A317F86D7E5FA316016D7E5FA416036D7E5FA31607A26D6C5CA3160FA294CAFC147FA2
-5EA2161EA2EC3F80A2163EA2163CEC1FC0A2167CA21678A2EC0FE016F8A25EA3EC07F1A2
-5EA315F3EC03FB5EA415FF805EA48093CBFCA5157EA5157C153CA215384DFA788353>I<
-18301878B11318A21338133C137C13FC7F1201A2487E7F120738063F80120E120C381C1F
-C01218123838300FE01260A212C06D7E1200A26D7EA36D7EA36D7EA3147FA36E7EA36E7E
-A36E7EA36E7EA36E7EA36E7EA36E7EA3157FA36F7EA36F7EA36F7EA36F7EA36F7EA36F7E
-A46F7EA3167FA3EE3F80A3EE1FC0A3EE0FE0A3EE07F0A3EE03F8A3EE01FCA3EE00FEA317
-7FA3EF3FF8A3171FA3170FA31707A31703A31701A31700A3187018603597778158>I<12
-6012F0B3B3B012600436468158>I<007FB512FEB7FCA215FE00F0C8FCB3B3AB12602034
-468358>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fh cmti9 9 30
-/Fh 30 122 df<DB1FF013C09238FFFC010203EBFF03913A0FF00F878091393F8003CF91
-39FE0001EF4948EB00FFD903F01500D90FE080495A49488091C8123E137E13FE485A4848
-153CA2485AA248481538A2485A94C7FC123F5BA3127F90CBFCA412FEA2EE03C0A25F127E
-160794C7FC5E160E007F151E6C5D5E6C6C147016F06C6C495A6C6CEB07C06C6C49C8FC6C
-6C133E6CB413FC90387FFFF0011F13C0D903FEC9FC323775B437>67
-D<0107B612C04915F017FC903A003F8001FEEE007FEF1F8092C7EA0FC0EF07E05CEF03F0
-147E170102FE15F8A25CA21301A25CA2130317035CA2130718F04A1407A2130F18E04A14
-0F18C0011F151F18805CEF3F00133F177E91C85AA2494A5A4C5A017E4A5A4C5A01FE4A5A
-047EC7FC49495A0001EC0FF8007FB612E0B7C8FC15F835337BB23A>I<0107B712F05B18
-E0903A003F80001F1707170392C7FC17015C18C0147EA214FEA24A130EA20101EC1E0304
-1C13804A91C7FC163C13035E9138F001F891B5FC5B5EECE0011500130F5E5C1707011F01
-015BEEC00E0280141E92C7121C133F173C91C812381778495DA2017E14014C5A01FE1407
-4C5A49141F00014AB45A007FB7FCB8FC94C7FC34337CB234>I<0107B712E05B18C0903A
-003F80003F170F170792C7FC17035C1880147EA214FEA25C161C0101EC3C07043813004A
-91C7FCA20103147816704A13F0150349B5FCA25EECE003130F6F5A14C0A2011F13035E14
-80A2013F90C9FCA291CAFCA25BA2137EA213FEA25B1201387FFFFCB5FCA233337CB232>
-I<010FB51280A216009038003FC05DA292C7FCA25CA2147EA214FEA25CA21301A25CA213
-03A25CA21307A25CA2130FA25CA2131FA25CA2133FA291C8FCA25BA2137EA213FEA25B12
-01B512F8A25C21337BB21E>73 D<913901FC018091380FFF03023F13C791387E07EF903A
-01F801FF0049487E4A7F495A4948133E131F91C7FC5B013E143CA3137E1638A293C7FC13
-7FA26D7E14E014FE90381FFFC06D13F86D7F01017F6D6C7E020F7F1400153F6F7E150FA4
-120EA2001E5D121CA2151F003C92C7FCA2003E143E5D127E007F5C6D485A9038C007E039
-F3F80FC000F0B5C8FC38E03FFC38C00FF029377AB42B>83 D<0003B812C05A1880903AF8
-00FC003F260FC001141F0180150F01005B001EEE07001403121C003C4A5BA20038010714
-0E127800705CA2020F141E00F0161CC74990C7FCA2141FA25DA2143FA292C9FCA25CA214
-7EA214FEA25CA21301A25CA21303A25CA21307A25C497E001FB512F05AA2323374B237>
-I<B53CC03FFFF003FFF8601480280FF00001FCC7EA7F806C484AEC3E00193CA219386115
-036115074E5A030F140361031D4AC7FCA2DB38FC130EA203705C15F06C6C01E05C140103
-C05CDA038014F060DA0700130160020E4A5AA24A4AC8FCA24A140E147802705C5C5FD9F1
-C014781770D9F3805CA201F7C7EA7FC0A201FE5DA26C4892C9FCA249147E5B167C5B1678
-491470453570B24D>87 D<B500E090381FFFE0A218C0D803FCC73803FC006C4815F06D15
-C04C5A000093C7FC6D140E5E017E143C017F5C5E6D5C6E485A4B5A011F13074BC8FCECC0
-1E151C010F5B6E5A15F0903807E1E0ECF3C05DD903F7C9FC14FEA26D5A5CA25C1303A35C
-1307A35C130FA35C131FA2133F380FFFFE5AA2333371B239>89 D<EB03F0EB0FF890383E
-1C6090387C0FF0EBF807EA01F0EA03E00007EB03E0EA0FC0A2381F800715C0EA3F00A214
-0F481480127EA2141F00FE14005A1506EC3F07EC3E0F150E147E007C141EECFE1CEB01FC
-D83C03133C393E07BE38391F0E1E783907FC0FF03901F003C0202278A027>97
-D<137EEA0FFE121F5B1200A35BA21201A25BA21203A25BA21207A2EBC3E0EBCFF8380FDC
-3EEBF81F497E01E01380EA1FC0138015C013005AA2123EA2007E131F1580127CA2143F00
-FC14005AA2147EA25CA2387801F85C495A6C485A495A6C48C7FCEA0FFCEA03F01A3578B3
-23>I<14FCEB07FF90381F078090383E03C0EBFC013801F8033803F0073807E00F13C012
-0F391F80070091C7FC48C8FCA35A127EA312FE5AA4007C14C0EC01E0A2EC03C06CEB0F80
-EC1F006C137C380F81F03803FFC0C648C7FC1B2278A023>I<ED0FC0EC03FFA21680EC00
-1FA31600A25DA2153EA2157EA2157CA215FCA2903803F0F8EB0FF8EB3E1DEB7C0F496C5A
-EA01F0EA03E000071303D80FC05BA2381F8007A2D83F005BA2140F5A007E5CA2141F12FE
-4891C7FC1506EC3F075DEC3E0E147E007C141EECFE1CEB01FCD83C03133C393E07BE3839
-1F0E1E783907FC0FF03901F003C0223578B327>I<EB03F8EB0FFEEB3E0F9038F8078038
-01F003EA03E0EA07C0120FEA1F801407D83F0013005C007E133EEB03F8387FFFE04848C7
-FC00FCC8FCA45AA4EC0180EC03C0A2007CEB0780EC1F00003C133E6C13F8380F03E03807
-FF80D801FCC7FC1A2277A023>I<143FECFF80903803E1E6903807C0FF90380F807FEB1F
-00133E017E133F49133EA24848137EA24848137CA215FC12074913F8A21401A2D80FC013
-F0A21403120715E01407140F141F3903E03FC00001137FEBF0FF38007FCF90381F0F8013
-00141FA21500A25C143E1238007E137E5C00FE5B48485A387803E0387C0F80D81FFFC7FC
-EA07F820317CA023>103 D<EB0FC0EA03FFA25CEA001FA391C8FCA25BA2133EA2137EA2
-137CA213FCA29038F83F80ECFFE03901FBE0F09038FF80F8EC007849137C485A5B5BA248
-4813FC5D5BA2000F13015D1380A2001F13035DEB0007EDC0C048ECC1E0020F13C0003E14
-81A2007E1483ED0380007C1407160000FC140E151E48EB07F80070EB01F023357BB327>
-I<EB0180EB07E0A2130FEB07C0EB038090C7FCABEA01F0EA03FCEA0F1E120E121C123C12
-38EA783E1270A2137EEAF07CEA60FCC65AA212015BA212035BA2000713C0EBC1E0000F13
-C01381A21383EB038013071400130E131EEA07F8EA01F013337AB118>I<EB0FC0EA01FF
-5A5CEA001FA391C7FCA25BA2133EA2137EA2137CA213FCA2491378EC01FE0001EB078FEC
-0E0F9038F01C3F143800031370ECE03E9038E1C01C9038E38000D807E7C7FC13EE5B13F8
-120F13FFEB9FC0EB83F0EA1F81EB80F81300150C48141E151C123EA2007E143C1538127C
-157800FCEB787015E048EB3FC00070EB0F8020357BB323>107 D<133FEA07FF5A13FEEA
-007EA3137CA213FCA213F8A21201A213F0A21203A213E0A21207A213C0A2120FA21380A2
-121FA21300A25AA2123EA2127EA2127C1318EAFC1C133CEAF838A21378137012F013F0EA
-F8E01279EA3FC0EA0F00103579B314>I<2703C003F8137F3C0FF00FFE01FFC03C1E783C
-1F07C1E03C1C7CF00F8F01F03B3C3DE0079E0026383FC001FC7FD97F805B007001005B5E
-137ED8F0FC90380FC00100E05FD860F8148012000001021F130360491400A200034A1307
-6049013E130FF081800007027EEC83C0051F138049017C1403A2000F02FC1407053E1300
-49495CEF1E0E001F01015D183C010049EB0FF0000E6D48EB03E03A227AA03F>I<3903C0
-07F0390FF01FFC391E787C1E391C7CF01F393C3DE00F26383FC01380EB7F8000781300EA
-707EA2D8F0FC131F00E01500EA60F8120000015C153E5BA20003147E157C4913FCEDF818
-0007153C0201133801C013F0A2000F1578EDE070018014F016E0001FECE1C015E390C7EA
-FF00000E143E26227AA02B>I<14FCEB07FF90381F07C090383E03E09038FC01F0EA01F8
-3903F000F8485A5B120F484813FCA248C7FCA214014814F8127EA2140300FE14F05AA2EC
-07E0A2007CEB0FC01580141FEC3F006C137E5C381F01F0380F83E03803FF80D800FCC7FC
-1E2278A027>I<011E137C90387F81FF9039F3C387C09039E3EF03E03901E1FE01D9C1FC
-13F0EBC3F8000313F0018314F814E0EA07871307000313C01200010F130316F01480A201
-1F130716E01400A249EB0FC0A2013EEB1F80A2017EEB3F00017F133E5D5D9038FF81F090
-38FDC3E09038F8FF80027EC7FC000190C8FCA25BA21203A25BA21207A25BB5FCA325307F
-A027>I<3903C00FC0390FF03FF0391E78F078391C7DE03C393C3FC0FC00381380EB7F00
-007814F8D8707E13701500EAF0FC12E0EA60F812001201A25BA21203A25BA21207A25BA2
-120FA25BA2121FA290C8FC120E1E227AA020>114 D<EB03F0EB1FFCEB3C1EEB780FEBF0
-07EA01E0140F0003131F13C0A2EBE00414007FEBFF8014E06C13F06C13F8EB7FFC1307EB
-00FE147E143E123800FC133CA3147C00F013784813F0EAF001387803E0383C0F80381FFE
-00EA03F818227AA01F>I<1303EB0F80A3131FA21400A25BA2133EA2137EA2137C387FFF
-F8A2B5FC3800F800A21201A25BA21203A25BA21207A25BA2120FA25B1460001F13F014E0
-1300130114C01303001E1380EB07005BEA0F1EEA07F8EA01E015307AAE19>I<EA01F0D8
-03FC1307D80F1E5B000E5C121C123C00385CD8783E133E1270A2017E137ED8F07C137CEA
-60FCC65A15FC00015C5BA2140100035C13E0166002031370EDE0F0D807C014E0A20003EB
-07E116C09038E00FC1EC1FC3000190383FE3809038F071E73A007FE0FF0090381F803C24
-227AA029>I<01F01338D803FC13FCEA0F1E120E121C123C0038147CEA783E0070143CA2
-137ED8F07C1338EA60FCC65A1578000114705BA215F0000314E05BA2EC01C0A2EBC00315
-8014071500EBE00EA26C6C5A3800F878EB7FE0EB1F801E227AA023>I<011F137C90387F
-C1FF3A01E1E787803A03C0F703C0903880FE0FEA07004813FC000E1580001E9038F80700
-001C91C7FC1301003C5B1218120013035CA31307A25C1506010F130F150E14800038141E
-D87C1F131C00FC143C1538013F5B39F07FC0E03970F3C3C0393FE1FF80260F807EC7FC22
-227CA023>120 D<13F0D803FC1307D80F1E130F000E141F121C123C0038143FD8783E13
-3E1270A2017E137ED8F07C137CEA60FCC65A15FC000114F85BA21401000314F013E0A214
-0315E0EA07C0A20003130715C0EBE00F141F0001133F9038F07F8038007FEFEB1F8FEB00
-1F1500A25C003E133E007E137E147C5C007C5BEA7001495A38380780D83C1FC7FCEA0FFC
-EA07F020317AA025>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fi cmmi8 8 13
-/Fi 13 122 df<147C49B4FC903803C78090380783C090381F03E0EB1E01133E017C13F0
-13F8A2EA01F0120313E01207A2EA0FC01403A2EA1F80A21407003F14E0130090B5FCA239
-7F000FC0127EA2141F1580127C00FC14005CA2147EA248137C14FC00785B495AA2387C03
-E0383C07C0495A001C90C7FCEA1E3EEA0FF8EA03E01C307DAE21>18
-D<123C127E12FFA4127E123C08087A8714>58 D<013FB6FC17C0903A00FE0007F0EE01F8
-4AEB00FC177E1301177F5CA21303177E4A14FEA20107EC01FC17F84AEB03F0EE07E0010F
-EC1FC0EE7F009138C003FC91B55A4914FE9139C0003F804AEB0FC017E0013F140717F091
-C7FC16035BA2017E1407A201FE15E0160F4915C0161F0001ED3F80EE7F004914FEED03F8
-0003EC0FF0B712C003FCC7FC302D7CAC35>66 D<0107B612F8A2903A0FFC0007F002E0EB
-0FE00280EB1FC049C71380011E143F011CEC7F004914FE4B5A0130495A0170495A016049
-5A4B5A4B5A90C748C7FCA215FE4A5A4A5A4A5A4A5A4A5A4A5A4AC8FC14FE5C1301494813
-06495A4948130E4948130C495A49C7121C01FE141848481438485A5E484814F048481301
-484813034848495A48C7127FB7FC5E2D2D7CAC30>90 D<EB01F8EB0FFE90383E0780EB7C
-01D801F813C03803F0073807E00FEA0FC001801380121F48C8FCA25A127EA312FE5AA515
-60007C14E0EC01C0EC03806CEB0F00001E131C380F81F83807FFE0C648C7FC1B1F7D9D1F
->99 D<EB03F8EB0FFE90383E0780EBF803D801F013C03803E001EA07C0000F1303D81F80
-13801407393F000F00141E387F01FCEBFFF091C7FC007EC8FC12FE5AA4127C156015E0EC
-01C06CEB0380EC0F006C131C380F81F83803FFE0C648C7FC1B1F7D9D21>101
-D<131FEA03FFA2EA003FA2133EA2137EA2137CA213FCA25BA21201143F9038F1FFC09038
-F3C1F03803FF0001FC7F5BA2485A5BA25B000F13015D1380A2001F13035D1300140748EC
-C04016C0003E130F1580007E148191381F0180007C1403ED070000FCEB0F06151E48EB07
-F80070EB01E0222F7DAD29>104 D<1307EB0F80EB1FC0A2EB0F80EB070090C7FCA9EA01
-E0EA07F8EA0E3CEA1C3E123812301270EA607EEAE07C12C013FC485A120012015B12035B
-A21207EBC04014C0120F13801381381F01801303EB0700EA0F06131EEA07F8EA01F0122E
-7EAC18>I<27078007F0137E3C1FE01FFC03FF803C18F0781F0783E03B3878E00F1E0126
-3079C001B87F26707F8013B00060010013F001FE14E000E015C0485A4914800081021F13
-0300015F491400A200034A13076049133E170F0007027EEC8080188149017C131F180100
-0F02FCEB3F03053E130049495C180E001F0101EC1E0C183C010049EB0FF0000E6D48EB03
-E0391F7E9D3E>109 D<3907C007E0391FE03FF83918F8783E393879E01E39307B801F38
-707F00126013FEEAE0FC12C05B00815C0001143E5BA20003147E157C5B15FC0007ECF808
-1618EBC00115F0000F1538913803E0300180147016E0001F010113C015E390C7EAFF0000
-0E143E251F7E9D2B>I<130E131FA25BA2133EA2137EA2137CA213FCA2B512F8A23801F8
-00A25BA21203A25BA21207A25BA2120FA25BA2001F1310143013001470146014E0381E01
-C0EB0380381F0700EA0F0EEA07FCEA01F0152B7EA919>116 D<013F137C9038FFC1FF3A
-01C1E383803A0380F703C0390700F60F000E13FE4813FC12180038EC0700003049C7FCA2
-EA200100005BA313035CA301075B5D14C000385CD87C0F130600FC140E011F130C011B13
-1C39F03BE038D8707113F0393FE0FFC0260F803FC7FC221F7E9D28>120
-D<EA01E0D807F8130ED80E3C131FD81C3E133F0038143E12301270D8607E137ED8E07C13
-7C12C013FC484813FC000014F812015B1401000314F013E0A21403000714E013C0A21407
-15C00003130FEBE01F143F3901F07F8038007FEFEB1F8FEB001F1500A2003E133EA2007E
-5B5C387C01F0387003E0383007C0383C0F80D80FFEC7FCEA03F0202C7E9D23>I
-E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fj cmsy8 8 4
-/Fj 4 84 df<B812C0A32A037A9137>0 D<130C131EA50060EB01800078130739FC0C0F
-C0007FEB3F80393F8C7F003807CCF83801FFE038007F80011EC7FCEB7F803801FFE03807
-CCF8383F8C7F397F0C3F8000FCEB0FC039781E078000601301000090C7FCA5130C1A1D7C
-9E23>3 D<91B512C01307131FD97F80C7FC01FCC8FCEA01F0EA03C0485A48C9FC120E12
-1E5A123812781270A212F05AA3B712C0A300E0C9FCA37E1270A212781238123C7E120E12
-0F6C7E6C7EEA01F0EA00FCEB7F80011FB512C013071300222B7AA52F>50
-D<ED1FF0913801FFFE0207EBFF80021F14C0EC3C039138F0007F4948131F4948130F1307
-5C010F1500160E011F91C7FC80A28080EB0FFC80903807FFC06D13F0010013FC6EB4FC02
-0F13C002037F02007FED3FF8150FD801C06D7ED807801303001FC71201123E481400A25E
-12FC6C5D15016C5D6D495A6C6C495A01F0011EC7FCD83FFE13FC6CB512F06C14C0000349
-C8FC38007FE02A2F7EAD2B>83 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fk cmmi10 10.95 36
-/Fk 36 122 df<EC0FF0EC7FFE903801F81F903907E007C049486C6C13E0D93F80EBF001
-90267F000114C001FE14F84848EB00FC484815030007178049147E000FEE0700485A5F48
-48150E171E171C007F163C49153817785F00FF5E90C8127F5F5F94C7FCA248157EA2127E
-007F15FE15016C4A7E92390F3F03806C6C131E6C6C9038781F070007D901E014003B03F0
-1F800F8E3B00FFFE0007FCD91FE0EB01F033297CA73A>11 D<EB03F8D90FFE140F90383F
-FF8090B56C131E4880486E131C2607FC1F143C270FE003F81338261F8000147890C7007C
-1370003E023C13F0003C023E13E048EC1E010070020E13C000F0EC0F034816801507C813
-07EE8700168FED038E169E169CA216BC16B8A216F85EA25EA35EA35EA31507A293C7FC5D
-A4151EA3153E153CA45DA31570A21560303C7FA72F>13 D<EC01C0EC0FFF023F13E00279
-13F0ECE03F903801C00FEC8007ED01E0010390C7FCA280130180A280A26D7E80A2147E14
-7F6E7EA26E7E81140FEC7FF0903801F7F8EB07C790381F83FCEB3E03EB7C0101F87F1201
-3803F000485AA24848137E485AA2123F90C7FCA25A127EA300FE147C5A15FCA25D1401A2
-5D007C13035DA26C495A4A5A6C91C7FC6C131E6C6C5A3803E0783800FFE0EB3F8024427C
-C028>I<15FCEC03FF91380F87C091383E03E0EC7C0102F813F01301903903F000F8495A
-010F14FC5C495A133F91C7FC4914FE13FEA212015B12034913011207A25B000F15FC1503
-121F5BA21507003F15F890B6FCA33A7FC0000FF05BA2151F16E048C7FCA2ED3FC0A24815
-80157F1600A215FEA24A5AA24A5A007E5C14075D4A5A003E5C141F4AC7FC6C137E5C380F
-81F03807C3E03801FF80D8007EC8FC27417DBF2B>18 D<131C013E141F017EEC7FC0ED01
-FFED07BF01FEEB1E3F033813804913709238E01E0000014948C7FCEC0780D9F80EC8FC5C
-00035B14F0EBF3C001FFC9FC4813F0ECFF8001E013F0EC07FC000FEB00FE157F496D7EA2
-001F141F17705BA2003F16F0033F13E090C71300A248ED01C0A2007EEC1F03178000FE91
-380F0700168E48EC07FC0038EC01F02C297CA734>20 D<EB01C0496C14E00107EC03F0A3
-010F1407A24A14E0A2011F140FA24A14C0A2013F141FA291C71380A249143FA2017E1500
-A201FE5CA249147EA2000115FE17074914FCA215010003160F923803F80EA20007020713
-1E030F131C6D131F033C1338486C1370903AFF81E07C70903AC7FF803FE0903AC1FE000F
-80D81FC0C9FCA25BA2123FA290CAFCA25AA2127EA212FEA25AA35A1270303C7EA737>22
-D<011FB612FE017F15FF48B8FC5A4816FE3B0FC03801C000EA1F00003E1403003C01785B
-4813705AECF0075AC712E0010191C7FCA25DEB03C0A313071480A2010F5BA2EB1F0082A2
-133EA2137E825B150F0001815B120315075BC648EB038030287DA634>25
-D<ED1FC0EDFFF0913803E07C91380F803E4A487E023E14804AEB0FC05C494814E0130349
-5A5C130F494814F0A2133F91C7FCEE1FE05B137EA201FE143F17C05BA20001ED7F80A249
-15005E00035D4B5AA24B5A486C495A4B5A6D5C01EEEB3F80D80FE7017EC7FC9038E3C1F8
-9038C1FFE0D9C07FC8FC001F90C9FCA25BA2123FA290CAFCA25AA2127EA212FEA25AA35A
-12702C3C7EA72F>I<020FB512FE027F14FF49B7FC1307011F15FE903A3FE03FE0009038
-7F000F01FE6D7E4848130348488048481301485A5B121F5B123F90C7FC5A127EA2150300
-FE5D5AA24B5AA2150F5E4B5AA2007C4AC7FC157E157C6C5C001E495A001FEB07E0390F80
-0F802603E07EC8FC3800FFF8EB3FC030287DA634>I<13FE2603FF80157026078FE015F0
-260F07F01401000E6D15E00103ED03C0000C6DEC0780D80001ED0F006E141E01005D5F02
-7F5C4C5A91383F80035F4C5A6E6C48C7FC161E5E6E6C5A5EEDE1E0913807E3C015F75E6E
-B4C8FC5D5D5D6E7EA2140314074A7EA2141EEC3C7F147814F049486C7EEB03C0EB078049
-486C7EA2131E496D7E5B498048481307485A48486D7E48C7FC48EDFC03001E0201EB0780
-4803FE1300486E6C5A48ED7F1E0060ED1FFCC9EA03F0343B7EA739>31
-D<0120ED01C00178ED07F001F8150F000117F85B485A5B0007160749150348C9EA01F0A2
-121E1700121C003C023814E0003814FCA200781601140100704A14C0A217034B148000F0
-130317074B14005F5D0207141E6F133E6C010F5C4A7E6C013F5C007E9038FFF8033B7F87
-FDFF0FF0D9FFF8EBFFE06C495C4A6C5B6C496C90C7FC00079038001FFCD801F8EB03F035
-297EA739>33 D<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A798919>58
-D<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A312011380120313005A
-120E5A1218123812300B1C798919>I<183818FC1703EF0FF8EF3FE0EFFF80933803FE00
-EE0FF8EE3FE0EEFF80DB03FEC7FCED0FF8ED3FE0EDFF80DA03FEC8FCEC0FF8EC3FE0ECFF
-80D903FEC9FCEB0FF8EB3FE0EBFF80D803FECAFCEA0FF8EA3FE0EA7F8000FECBFCA2EA7F
-80EA3FE0EA0FF8EA03FEC66C7EEB3FE0EB0FF8EB03FE903800FF80EC3FE0EC0FF8EC03FE
-913800FF80ED3FE0ED0FF8ED03FE923800FF80EE3FE0EE0FF8EE03FE933800FF80EF3FE0
-EF0FF8EF03FC17001838363678B147>I<ED0180ED03C01507A21680150FA216005DA215
-1E153EA2153C157CA2157815F8A25D1401A25D1403A25D1407A25D140FA24AC7FCA2141E
-143EA2143C147CA2147814F8A25C1301A25C1303A25C1307A25C130FA291C8FC5BA2131E
-133EA25BA2137813F8A25B1201A25B1203A25B1207A25B120FA290C9FC5AA2121E123EA2
-123C127CA2127812F8A25A1260225B7BC32D>I<126012F8B4FCEA7FC0EA1FF0EA07FCEA
-01FF38007FC0EB1FF0EB07FCEB01FF9038007FC0EC1FF0EC07FCEC01FF9138007FC0ED1F
-F0ED07FCED01FF9238007FC0EE1FF0EE07FCEE01FF9338007FC0EF1FF0EF07F8EF01FCA2
-EF07F8EF1FF0EF7FC0933801FF00EE07FCEE1FF0EE7FC04B48C7FCED07FCED1FF0ED7FC0
-4A48C8FCEC07FCEC1FF0EC7FC04948C9FCEB07FCEB1FF0EB7FC04848CAFCEA07FCEA1FF0
-EA7FC048CBFC12FC1270363678B147>I<15FF020713E091381F00F80278133E4A7F4948
-EB0F804948EB07C04948EB03E091C7FC496CEB01F002E014F8131F160017FCA25C0107C8
-12FE90C9FCA7EC03FCEC3FFF9138FE03C1903903F000E149481371D91F80133149C7123B
-017EEC1BFC5B0001151F4848140F484815F8A2485A121F17F0485A161F17E0127F5BEE3F
-C0A200FF168090C8127F1700A216FEA2484A5A5E007E1403007F4A5A5E6C4A5A6C6C495A
-4BC7FC6C6C13FE6C6C485A3903F80FF06CB512C06C6C90C8FCEB0FF82F437CC030>64
-D<49B612C05BA2D90001EB800093C7FC5DA314035DA314075DA3140F5DA3141F5DA3143F
-5DA3147F5DA314FF92C8FCA35B5CA313035CA313075CA3130F5CA3131F5CA2133FA25CEB
-FFE0B612E0A32A3E7DBD28>73 D<49B56C49B512F81BF0A290C76D9039000FFE004AEE03
-F0705D735A03DF150302037F038F5E82190791380787FC030793C7FC1503705C140F9126
-0E01FF140EA26F151E021E80021C017F141C83193C023C6D7E02381638161F7113781478
-02706D6C1370A2040714F002F0804A01035C8318010101EC01FF4A5E82188313034A9138
-7FC380A2EF3FC7010716E791C8001F90C8FC18F718FF4981010E5E1707A2131E011C6F5A
-A2013C1501137C01FE6F5AEA03FFB512FC187818704D3E7DBD49>78
-D<49B77E18F818FFD90001D900017F9438003FE04BEC0FF0727E727E14034B6E7EA30207
-825DA3020F4B5A5DA24E5A141F4B4A5A614E5A023F4B5A4B4A5A06FEC7FCEF03FC027FEC
-0FF04BEBFF8092B500FCC8FC5F9139FF8001FE92C7EA7F80EF1FC084496F7E4A1407A284
-13035CA2170F13075C60171F130F5CA3011F033F5B4AEE038018E0013F17071A004A021F
-5B496C160EB600E090380FF01E05075B716C5ACBEAFFE0F03F8041407DBD45>82
-D<027FB712F0A3DAFFFCC7EA3FE003E0EC7FC092C8EAFF8049484A13004A4A5A5C4A4A5A
-49484A5A4A4A5A4D5A49484A5A4D5A91C74890C7FC5B010E4A5A4C5A4C5A011E4A5A90C8
-485A4C5A4C5A4B90C8FCA24B5A4B5A4B5A4B5A4B5A4B5A4B5AA24A90C9FC4A5A4A5A4A5A
-4A4814704A4814F04A485C14FF5D4990C7120149485D49481403495A49485D4948140749
-5A4DC7FC49485C4890C8FC48485D4848157E484815FE484814034848EC0FFC16FF48B7FC
-B8FC5F3C3E7BBD3E>90 D<EC1F80ECFFE0903903F0707090390FC039F890381F801D9038
-3F000F017E5C5B00011407485A48485CA2485A001F140F5E485AA2151F007F5D5BA2153F
-00FF92C7FC90C7FCA25D92387E03805AA215FEEDFC07007E0101140014035E6C0107130E
-140E3A1F801C7C1C000F13783A07C1F03E383A01FFC01FF03A007F0007C029297DA730>
-97 D<EB1FC0EA0FFF5CA2EA003FA291C8FCA25BA2137EA213FEA25BA21201A25BA21203
-A25BEC3F800007EBFFE09038F3C1F849C67E01FE137E4848133E49133F5B491480001F14
-1F5B5BED3FC0123FA290C7FCA248147F1680127EA215FF00FE15005AA24A5AA25D140348
-5C1407007C5C4A5A5D003C495A003E49C7FC001E137E6C13F8380783F03803FFC0C648C8
-FC22407CBE27>I<EC07F0EC7FFE903801FC0F903907E0038090390FC001C0D93F8013E0
-90387F000701FE131F485A485A16C0485A000F15804990C7FC121F485AA3127F5BA312FF
-90C9FCA6007E1560007F15E01501ED03C06CEC07806DEB0F00001F141E6C6C137C3907E0
-01F03901F01FC06CB5C7FCEB1FF023297DA727>I<EE07F0ED03FF17E0A2ED000FA217C0
-A2161FA21780A2163FA21700A25EA2167EA216FEA25EEC1F80ECFFE1903803F07190390F
-C039F890381F801D90383F000F137E495C00011407485A485A5E485A001F140FA248485C
-A2151F127F495CA2153F12FF90C790C7FCA25DEE038048147EA215FE1607007ED901FC13
-0014035E6C0107130E140E3A1F801C7C1C000F13783A07C1F03E383A01FFC01FF03A007F
-0007C02C407DBE2F>I<EC1FE0ECFFFC903803F01E90380FC00F90393F800780D97E0013
-C0491303EA03F8120749130748481480121F49130F003FEC1F00153E397F8001FCEC1FF0
-90B51280B500F8C7FC90C9FCA45AA616C01501007E1403ED07806CEC0F00151E6C5C6C6C
-13F83907C003E03903E03F802600FFFEC7FCEB3FE022297CA72A>I<163EEEFFC0923803
-E1E0923807C0F0ED0F811687ED1F8F160F153FA217E092387E038093C7FCA45DA514015D
-A30103B512FCA390260003F0C7FCA314075DA4140F5DA5141F5DA4143F92C8FCA45C147E
-A414FE5CA413015CA4495AA35CEA1E07127F5C12FF495AA200FE90C9FCEAF81EEA703EEA
-7878EA1FF0EA07C02C537CBF2D>I<EC01F8EC0FFE91383F07879139FC03DF80903801F8
-01903903F000FFEB0FE04948EB7F005C133F49C7FC49147E5B000115FEA248485CA21501
-1207495CA21503120F495CA21507A25E5B0007140FA24B5A6D133F0003147F000114FF6D
-485B0000EB03DF90387E0F3FEB1FFCD907F090C7FC90C7FC5DA2157EA215FEA25D001C13
-01007F5C4813035D4A5A4A5A48495A00F8017EC8FC387E01FC381FFFE0000390C9FC293B
-7FA72B>I<EB01FC13FF5CA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA291
-C9FC15FE90397F07FFC091381F03E090397E3801F09138F000F8EBFFE04A7F5C91C7FC48
-5AA25BA2484813015E5BA2000714035E5B1507120F5E49130F5E121F031F1370491480A2
-003F023F13F0EE00E090C7FC160148023E13C01603007E1680EE070000FE5DED1F1E48EC
-0FF80038EC03E02C407CBE34>I<143C14FEA21301A314FCEB00701400AD137E3801FF80
-3803C7C0EA0703000F13E0120E121C13071238A2EA780F007013C0A2EAF01F1480120013
-3F14005B137EA213FE5BA212015B0003130E13F0A20007131EEBE01CA2143CEBC0381478
-147014E013C13803E3C03801FF00EA007C173E7EBC1F>I<EB01FC13FF5CA21303A25CA2
-1307A25CA2130FA25CA2131FA25CA2133FA291C9FC16FC49EB03FE92380F0780017EEB3C
-0FED703F01FE13E0913801C07F9038FC0380EC07000001010E14004A131C494890C7FC5C
-00035BEBF9C0495A01FFC9FC5A14F0EBE3FE9038E07F80000FEB1FC06E7EEBC00781001F
-1303160E1380A2003F151E0207131C010013E0A2485DA2007E01031378167000FE01015B
-15F1489038007F800038023EC7FC29407CBE2F>107 D<01F8EB0FF0D803FEEB3FFC3A07
-8F80F03E3A0F0F83C01F3B0E07C7800F80001CEBCF0002FE80003C5B00385B495A127800
-705BA200F049131F011F5D00005BA2163F013F92C7FC91C7FC5E167E5B017E14FE5EA201
-FE0101EB03804914F8A203031307000103F013005B170E16E000035E49153C17385F0007
-913801F1E0496DB45AD801C0023FC7FC31297EA737>110 D<EC1FC0ECFFF8903803E03C
-903807800E90381E0007168049130F49131F153FA201F81400A2151C6D90C7FC7FEBFFE0
-14FE90387FFFC06D7F6D13F86D7F13039038001FFE14031400157E000C143E123F487EA2
-48C7123CA25D12FC00F05C0070495A0078495A6C495A260F803EC7FC3803FFF838007FC0
-21297CA72B>115 D<147014FC1301A25CA21303A25CA21307A25CA2130FA25CA2007FB5
-12F0B6FC15E039001F8000133FA291C7FCA25BA2137EA213FEA25BA21201A25BA21203A2
-5BA21207EC01C013E01403000F1480A2EBC0071500140E141E5C000713385C3803E1E038
-01FF80D8003EC7FC1C3A7EB821>I<D901F8133FD907FEEBFFE0903A1E0F83C0F0903A38
-07C780F890397003CF0301E013FED801C0EBFC071203018013F8D8070015F0EE01C0000E
-4AC7FCA2001E1307A2C75BA2140F5DA3141F5DA3143F92380001C0A34A1303001E168000
-3F017E1307267F80FE14005ED8FF81141ED901DF131CD8FE035C3A7C078F80F03A3C0F07
-C1E03A1FFC03FF802707F0007EC7FC2D297EA734>120 D<137C48B4EC03802603C7C0EB
-0FC0EA0703000F7F000E151F001C168013071238163FD8780F150000705BA2D8F01F5C4A
-137E1200133F91C712FE5E5B137E150113FE495CA2150300015D5BA215075EA2150F151F
-00005D6D133F017C137F017E13FF90393F03DF8090380FFF1FEB01FC90C7123F93C7FCA2
-5DD80380137ED80FE013FE001F5C4A5AA24848485A4A5A6CC6485A001C495A001E49C8FC
-000E137C380781F03803FFC0C648C9FC2A3B7EA72D>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fl cmtt9 9 35
-/Fl 35 122 df<90383C03C090387E07E0A7EBFE0F01FC13C0A2007FB512FEB7FCA4003F
-14FE3901F81F80AC003FB512FEB7FCA46C14FE3903F03F00A200075BEBE07EA73803C03C
-202E7DAD27>35 D<007FB512F8B612FCA46C14F81E067C9927>45
-D<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A728927>I<1538157C15FCA2140115F8
-140315F0140715E0140F15C0141F1580143F1500A25C147E14FE5C13015C13035C13075C
-130F5CA2131F5C133F91C7FC5B137E13FE5B12015B12035BA212075B120F5B121F5B123F
-90C8FC5A127E12FE5AA25A12781E3A7CB327>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E
-00C7FCAC121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A20729F27>58
-D<EB03F0497EA2497EA4143CEB1F3EA5EB3F3FA3EB3E1FA2017E7FA4496C7EA548486C7E
-A390B5FCA24880A3EBF003A248486C7EA4000F803A7FFC0FFF8000FF15C06D5A497E007F
-1580222F7EAE27>65 D<387FFFFC14FFB612C06C80813907E00FF81407EC01FC6E7EA215
-7E157F811680151FA316C0150FABED1F80A3153F1600A25D15FEA24A5A4A5A140F007FB5
-5A5DB65A6C91C7FC14FC222E7FAD27>68 D<007FB61280B712C0A37E3907E0000FA6ED07
-8092C7FCA4EC07804A7EA390B5FCA5EBE00FA36E5A91C8FCA4ED03C0ED07E0A7007FB6FC
-B7FCA36C15C0232E7FAD27>I<903807F03890381FFC7C90387FFFFC90B5FC5A3803FC1F
-3807F00F380FE007EBC003001F13011380123F90C7FCA2127EA2157892C7FC5AA8EC1FFF
-4A1380A3007E6D1300EC00FCA36C1301A21380121FEBC003120FEBE0073807F00F3803FC
-1F6CB5FC7EEB7FFE90381FFC78D907F0C7FC21307DAE27>71 D<007FB512E0B612F0A36C
-14E039001F8000B3B2007FB512E0B612F0A36C14E01C2E7BAD27>73
-D<387FFFC080B5FC7E5CD803F0C8FCB3AAED0780ED0FC0A7007FB6FCA2B7FC7E1680222E
-7FAD27>76 D<D87FE0EB7FE0486CEBFFF0A26D5A007F15E0000F150001B813DFEBBC03A3
-EBBE07019E139FA3EB9F0FA2018F131FA2149FA2EB879EA4EB839C14FCA3EB81F8A2EB80
-F01400AAD87FF0EBFFE0486C4813F0A36C486C13E0242E7FAD27>I<EBFFFC0007EBFF80
-001F14E0A24814F0EBC00F397F8007F8EB0003007E1301A348EB00FCB3A76C1301007E14
-F8A3007F1303EB8007393FE01FF090B5FC6C14E0A200071480C6EBFC001E307CAE27>79
-D<387FFFF0B512FE6E7E816C803907E01FF014076E7E1401811400A514015D14034A5A14
-1F90B55A5D5DA281EBE01F6E7E14076E7EA816F0EDF1F8A4397FFE01FBB5EBFFF08016E0
-6C48EB7FC0C8EA1F00252F7FAD27>82 D<007FB61280B712C0A439FC03F00FA60078EC07
-80000091C7FCB3AB90B512C04880A36C5C222E7EAD27>84 D<3A7FFE01FFF8B54813FCA3
-6C486C13F83A07E0001F80B3AB6D133F00031500A26D5B0001147E6D13FE6C6C485A9038
-7F87F814FF6D5B010F13C06D5BD901FEC7FC262F80AD27>I<D87FE0EB7FE0486CEBFFF0
-A36C48EB7FE0001FC7EA0F80A76C6CEB1F00A614F0EB81F83907C3FC3EA4149CEBC79EA3
-0003143CA301E7137CEBEF9FA2140FA200011478A49038FE07F8A300005CA2EBFC039038
-7801E0242F7FAD27>87 D<3803FFC0000F13F04813FC4813FF811380EC1FC0381F000F00
-0480C71207A2EB0FFF137F0003B5FC120F5A383FFC07EA7FC0130012FE5AA46C130F007F
-131FEBC0FF6CB612806C15C07E000313F1C69038807F8022207C9F27>97
-D<EB0FFF017F13C048B512E04814F05A380FF807EA1FE0393FC003E0903880008048C8FC
-127EA212FE5AA67E127EA2007F14F0393F8001F813C0381FE003390FF80FF06CB5FC6C14
-E06C14C06C6C1300EB0FF81D207B9F27>99 D<EB0FF8EB3FFE90B51280000314C04814E0
-390FFC0FF0391FE003F8EBC001D83F8013FC48C7FC127E157E12FEB612FEA415FC00FCC8
-FC7E127E127F6C143C6D137E6C7E01F013FE390FFC07FC6CB5FC000114F86C14F0013F13
-C0903807FE001F207D9F27>101 D<EC1FF0ECFFF84913FC4913FE5BEB0FF014C0011F13
-7CEC8000A6007FB512F0B612F8A36C14F039001F8000B3A4003FB512C04814E0A36C14C0
-1F2E7EAD27>I<153F90391FC0FF80D97FF313C048B612E05A4814EF390FF07F873A1FC0
-1FC3C0EDC000EB800F48486C7EA66C6C485AEBC01FA2390FF07F8090B5C7FC5C485BEB7F
-F0EB1FC090C9FCA27F6CB5FC15E015F84814FE4880EB8001007EC7EA3F80007C140F00FC
-15C0481407A46C140F007C1580007F143F6C6CEB7F009038F807FF6CB55A000714F86C5C
-C614C0D90FFCC7FC23337EA027>I<EA7FE0487EA3127F1203A9147F9038F1FFC001F713
-F090B5FC8114C1EC01FCEBFE005B5BA25BB03A7FFF83FFE0B500C713F0A36C018313E024
-2E7FAD27>I<387FFF80B57EA37EEA000FB3B2007FB512F8B612FCA36C14F81E2E7CAD27>
-108 D<397F07C01F3AFF9FF07FC09039FFF9FFE091B57E7E3A0FFC7FF1F89038F03FC001
-E0138001C01300A3EB803EB03A7FF0FFC3FF486C01E3138001F913E701F813E36C4801C3
-13002920819F27>I<EB1FE0EB7FF83801FFFE487F481480390FF03FC0391FC00FE0393F
-8007F0EB00034814F8007E1301A248EB00FCA76C1301007E14F8A2007F1303393F8007F0
-A2391FE01FE0390FF03FC06CB512806C14006C5B38007FF8EB1FE01E207C9F27>111
-D<387FE0FFD8FFF313C090B512F0816C800003EB81FE49C67E49EB3F8049131F16C04913
-0FA216E01507A6150F16C07F151F6DEB3F80157F6DEBFF009038FF83FEECFFFC5D5D01F3
-13C0D9F0FEC7FC91C8FCAC387FFF80B57EA36C5B23317F9F27>I<397FFC03FC39FFFE0F
-FF023F13804A13C0007F90B5FC39007FFE1F14F89138F00F809138E002004AC7FC5CA291
-C8FCA2137EAD007FB57EB67EA36C5C22207E9F27>114 D<9038FFF3800007EBFFC0121F
-5A5AEB803F38FC000F5AA2EC07806C90C7FCEA7F8013FC383FFFF06C13FC000713FF0001
-1480D8000F13C09038003FE014070078EB03F000FC1301A27E14036CEB07E0EBE01F90B5
-12C01580150000FB13FC38707FF01C207B9F27>I<133C137EA8007FB512F0B612F8A36C
-14F0D8007EC7FCAE1518157EA415FE6D13FC1483ECFFF86D13F06D13E0010313C0010013
-001F297EA827>I<397FE01FF8486C487EA3007F131F00031300B21401A21403EBFC0F6C
-B612E016F07EEB3FFE90390FF87FE024207F9F27>I<3A7FFC0FFF80486C4813C0A36C48
-6C13803A07C000F800EBE00100035CA2EBF00300015CA2EBF80700005CA390387C0F80A3
-6D48C7FCA3EB3F3FEB1F3EA214FE6D5AA36D5AA26D5A22207E9F27>I<3A7FFE07FFE000
-FF15F06D5A497E007F15E03A0F80001F00A36D5B0007143EA414F0EBC1F83903E3FC7CA4
-EBE79EA200011478A301F713F8A2EBFF0F6C5CA3EBFE0790387C03E024207F9F27>I<39
-3FFC1FFF486C5A168016006C487E3901F807E06C6C485A4A5A017E90C7FC6D5AEB1F7E5C
-6D5A13076D5A5C80497E130F497E143EEB3E3FEB7E1F90387C0F8001F87F00016D7E3803
-F0033A7FFE1FFF80A2B54813C06C486C1380A222207E9F27>I<3A7FFC0FFF80486C4813
-C0A36C486C13803A07E000F800000313015D13F00001130301F85B1200A26D485A137CA2
-90387E0F80133EA2011F90C7FC5CA2130F149E14BE130714FC1303A25C1301A25CA21303
-5CA213075C1208EA3E0F007F5B131FD87E7FC8FCEA7FFE6C5A5B6C5AEA07C022317E9F27
->I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fm cmr9 9 53
-/Fm 53 123 df<91393FE00FE0903A01FFF83FF8903A07E01EF83C903A1F800FF07E903A
-3F001FE0FE017E133F4914C0485A1738484890381F8000ACB812C0A33B03F0001F8000B3
-A7486C497EB50083B5FCA32F357FB42D>11 D<EC1FE0ECFFFC903803F01E90390FC00780
-EB1F8090393F000FC0017E131F5BA2485AED0F8092C7FCA9ED0FC0B7FCA33901F8001F15
-0FB3A6486CEB1FE0267FFFC1B5FCA328357FB42B>I<EC1FF891B512C0903803F00F9038
-0FC01FEB1F80EB3F00137E5B150F485AACB7FCA33901F8000FB3A7486CEB1FE0267FFFE3
-B5FCA328357FB42B>I<DA1FE013FF9126FFFC0713E0903B03F01E1F80F0903B0FC0077E
-003CD91F805B90273F001FF8137E017E4A13FE495CA248485C030F147C95C7FCA9187EB9
-12FEA33B01F8000FC000187EB3A6486C496C13FF297FFFC1FFFE0F13F8A33D357FB440>
-I<123C127EB4FCA21380A2127F123D1201A412031300A25A1206120E120C121C5A5A1260
-09177AB315>39 D<14C01301EB0380EB0F00130E5B133C5B5BA2485A485AA212075B120F
-90C7FC5AA2121E123EA3123C127CA55AB0127CA5123C123EA3121E121FA27E7F12077F12
-03A26C7E6C7EA213787F131C7F130FEB0380EB01C01300124A79B71E>I<12C07E127012
-3C121C7E120F6C7E6C7EA26C7E6C7EA27F1378137C133C133EA2131E131FA37F1480A5EB
-07C0B0EB0F80A514005BA3131E133EA2133C137C137813F85BA2485A485AA2485A48C7FC
-120E5A123C12705A5A124A7CB71E>I<156015F0B3A4007FB812C0B912E0A26C17C0C800
-F0C8FCB3A4156033327CAB3C>43 D<123C127EB4FCA21380A2127F123D1201A412031300
-A25A1206120E120C121C5A5A126009177A8715>I<B512F0A514057F921A>I<123C127E12
-FFA4127E123C08087A8715>I<EB0FE0EB7FFCEBF83E3903E00F803907C007C0EB800300
-0F14E0391F0001F0A24814F8A2003E1300007E14FCA500FE14FEB2007E14FCA56CEB01F8
-A36C14F0A2390F8003E03907C007C0A23903E00F803900F83E00EB7FFCEB0FE01F347DB1
-26>48 D<13075B5B137FEA07FFB5FC13BFEAF83F1200B3B3A2497E007FB51280A319327A
-B126>I<EB3FC0EBFFF0000313FC380F80FF391E007F80001CEB3FC048EB1FE048130F15
-F00060130712FC6C14F87E1403A3007E1307123CC7FC15F0A2140F15E0EC1FC0A2EC3F80
-1500147E5C495A5C495A495A495A49C7FC133E133C4913185B485A48481330485A48C7FC
-001C1470001FB512F05A5AB612E0A31D327CB126>I<123C127E12FFA4127E123C1200B0
-123C127E12FFA4127E123C08207A9F15>58 D<123C127E12FFA4127E123C1200B0123C12
-7E12FE12FFA3127F123F1203A412071206A3120E120C121C1238123012701260082F7A9F
-15>I<B7FC16E016F83A03FC0003FE0001EC00FFEE7F80EE3FC0161F17E0160F17F0A617
-E0161F17C0EE3F80EE7F0016FEED03FC90B612F05E9039FC0007FCED00FEEE3F80EE1FC0
-EE0FE017F0160717F8160317FCA617F81607A2EE0FF0EE1FE0163FEE7FC00003913803FF
-00B75A16F816C02E337DB236>66 D<B812C0A3D803FCC7127F0001150FEE03E01601A216
-00A21760A403061330A41700150EA2151E157E90B512FEA39038FC007E151E150EA21506
-170CA3171892C7FCA41738A21770A217F01601160316070003157FB812E0A32E337DB234
->69 D<B81280A3D803FCC7FC0001151FEE07C01603A21601A21600A41760150CA31700A2
-151CA2153C15FC90B5FCA3EBFC00153C151CA2150CA592C8FCAB487EB512FEA32B337DB2
-32>I<B5D8FE03B512F8A3000190C73807FC006C486E5AB390B7FCA349C71203B3A3486C
-4A7EB5D8FE03B512F8A335337EB23A>72 D<B512FEA3000113006C5AB3B3A7487EB512FE
-A317337EB21C>I<D8FFFC923801FFF86D5DA20003EFFE00D801BFED06FCA3D99F80140C
-A2D98FC01418A3D987E01430A2D983F01460A3D981F814C0A3D980FCEB0180A2027EEB03
-00A36E1306A26E6C5AA36E6C5AA36E6C5AA26E6C5AA36E6C5AA3913800FD80A2037FC7FC
-A3486C133ED80FF04B7EB5011C90387FFFF8A33D337CB246>77 D<EC07FC91387FFFC090
-3901FC07F0903907E000FCD90F80133E013FC76C7E017E6E7E496E7E48486E7E48486E7E
-A248486E7E000F8249157E001F167FA24848ED3F80A2007F17C0A290C9121FA24817E0AB
-6C17C06D153FA3003F17806D157FA2001F17006D5D000F5E6C6C4A5AA26C6C4A5A00015E
-6C6C4A5A017E4A5A6D4A5AD91FC0017FC7FCD907E013FC903901FC07F09039007FFFC0DA
-07FCC8FC33377CB43C>79 D<90381FE00390387FFC0748B5FC3907F01FCF390F8003FF48
-C7FC003E80814880A200788000F880A46C80A27E92C7FC127F13C0EA3FF013FF6C13F06C
-13FF6C14C06C14F0C680013F7F01037F9038003FFF140302001380157F153FED1FC0150F
-12C0A21507A37EA26CEC0F80A26C15006C5C6C143E6C147E01C05B39F1FC03F800E0B512
-E0011F138026C003FEC7FC22377CB42B>83 D<007FB712FEA390398007F001D87C00EC00
-3E0078161E0070160EA20060160600E01607A3481603A6C71500B3AB4A7E011FB512FCA3
-30337DB237>I<B500F0903803FFF8A3D807FEC8EA7FC06C48ED1F000001161E6D151C00
-001618A26D15386D1530A26D6C5CA26E14E0011F5DA26D6C495AA28001074AC7FCA26D6C
-1306A28001015CA26E131C01001418806E5BA2ED8070023F1360A26E6C5AA215E1020F5B
-A2DA07F3C8FCA215FBEC03FEA36E5AA26E5AA31570A235357EB23A>86
-D<B5D8F007B539800FFFF0A3000390C7273FF000011300D801FC6E48EB007C1A386D140F
-00001930836D020715706D1860A26E496C14E0013F60A26ED919FC1301011F60A26ED930
-FE1303010F95C7FCA26ED9607F5B01071706A26E9039C03F800E0103170CA2913BFC0180
-1FC01C01011718A2913BFE03000FE03801001730A2DAFF06EB07F0027F5EA2038CEB03F8
-023F5EA203D8EB01FC021FEDFD80A203F0EB00FF020F93C8FCA24B800207157EA24B143E
-0203153CA24B141C020115184C357FB24F>I<EB7F803803FFF0380F80FC381C003E003F
-133F6D6C7E6E7EA26E7EEA1F00C7FCA4EB01FF131FEBFF873803FC07EA0FF0EA1FC0EA3F
-80127F13004815C05AA3140FA26C131F6C133B3A3F8071F180391FC1E1FF2607FFC01300
-3900FE003C22237DA126>97 D<EA03F012FFA312071203AEEC3F80ECFFE09038F3C0F890
-38F7007E01FE7F49EB1F8049EB0FC05BED07E016F0A2150316F8AA16F0150716E0A2ED0F
-C07F6DEB1F8001ECEB3F0001CF137C90388381F8903801FFE0C76CC7FC25357EB32B>I<
-EB07F8EB3FFF9038FC07C03901F000E03903E003F03807C007120FEA1F80123F90380003
-E04890C7FCA2127E12FEAA127FA26C14187F001F14386D1330000F14706C6C13E03903F0
-01C03900FC0F8090383FFE00EB07F01D237EA122>I<153FEC0FFFA3EC007F81AEEB07F0
-EB3FFCEBFC0F3901F003BF3907E001FF48487E48487F8148C7FCA25A127E12FEAA127E12
-7FA27E6C6C5BA26C6C5B6C6C4813803A03F007BFFC3900F81E3FEB3FFCD90FE013002635
-7DB32B>I<EB0FE0EB7FFCEBF83F3903F00F80D807E013C0390FC007E0381F800315F0EA
-3F0014014814F8127EA212FEA2B6FCA248C8FCA5127E127FA26C1418A26C6C1338000F14
-306D13706C6C13E03901F003C03900FC0F00EB3FFEEB07F01D237EA122>I<EB01FCEB07
-FF90381F078090383E0FC0EB7C1F13FCEA01F8A20003EB070049C7FCACB512F0A3D803F0
-C7FCB3A7487E387FFFE0A31A357FB417>I<151F90391FC07F809039FFF8E3C03901F07F
-C73907E03F033A0FC01F83809039800F8000001F80EB00074880A66C5CEB800F000F5CEB
-C01F6C6C48C7FCEBF07C380EFFF8380C1FC0001CC9FCA3121EA2121F380FFFFEECFFC06C
-14F06C14FC4880381F0001003EEB007F4880ED1F8048140FA56C141F007C15006C143E6C
-5C390FC001F83903F007E0C6B51280D91FFCC7FC22337EA126>I<EA03F012FFA3120712
-03AEEC1FC0EC7FF09038F1E0FC9038F3807C9038F7007E13FE497FA25BA25BB3486CEB7F
-80B538C7FFFCA326347EB32B>I<EA0780EA0FC0EA1FE0A4EA0FC0EA0780C7FCAAEA07E0
-12FFA3120F1207B3A6EA0FF0B5FCA310337EB215>I<EB03C0EB07E0EB0FF0A4EB07E0EB
-03C090C7FCAAEB03F013FFA313071303B3B01238127C00FE13E0130714C0130F007C1380
-38381F00EA1FFCEA07F0144384B217>I<EA03F012FFA312071203AF913803FFE0A36E13
-00EC00F8EC01E05D4A5A020FC7FC141C5C5C14F0EBF3F8EBF7FC13FEEBFC7EEBF87F496C
-7E141F6E7E8114076E7E8114016E7E81486CEBFF80B500C313F0A324347EB329>I<EA07
-E012FFA3120F1207B3B3A7EA0FF0B5FCA310347EB315>I<2703F01FE013FF00FF90267F
-F80313C0903BF1E07C0F03E0903BF3803E1C01F02807F7003F387FD803FE1470496D486C
-7EA2495CA2495CB3486C496C487EB53BC7FFFE3FFFF0A33C217EA041>I<3903F01FC000
-FFEB7FF09038F1E0FC9038F3807C3907F7007EEA03FE497FA25BA25BB3486CEB7F80B538
-C7FFFCA326217EA02B>I<EB07F0EB3FFE9038FC1F803901F007C03903C001E000078048
-486C7E48C7127CA248147E003E143E007E143FA300FE1580A8007E1500A36C147EA26C14
-7C6D13FC6C6C485A00075C3903F007E03900FC1F80D93FFEC7FCEB07F021237EA126>I<
-3903F03F8000FFEBFFE09038F3C0F89038F7007ED807FE7F6C48EB1F804914C049130F16
-E0ED07F0A3ED03F8A9150716F0A216E0150F16C06D131F6DEB3F80160001FF13FC9038F3
-81F89038F1FFE0D9F07FC7FC91C8FCAA487EB512C0A325307EA02B>I<903807F0039038
-3FFC07EBFC0F3901F8038F3807E001000F14DF48486CB4FC497F123F90C77E5AA25A5AA9
-127FA36C6C5B121F6D5B000F5B3907E003BF3903F0073F3800F81EEB3FF8EB0FE090C7FC
-AAED7F8091380FFFFCA326307DA029>I<3803E07C38FFE1FF9038E38F809038E71FC0EA
-07EEEA03ECA29038FC0F8049C7FCA35BB2487EB512E0A31A217FA01E>I<EBFF06000713
-CE381F00FE003C133E48131E140E5A1406A27EA200FE90C7FC6C7EEA7FFC383FFFC014F0
-000F7F6C7FC67FEB0FFF1300EC3F8000C0131F140F6C1307A37E15006C5B6C130E6C5B38
-F7807838E1FFE038C07F8019237EA11E>I<1330A51370A313F0A21201A212031207381F
-FFFEB5FCA23803F000AF1403A814073801F806A23800FC0EEB7E1CEB1FF8EB07E0182F7F
-AD1E>I<D803F0133F00FFEB0FFFA30007EB007F000380B35DA35D12016D481380000090
-3803BFFC90387E073FEB1FFED907F8130026227EA02B>I<B5EBFFF0A3D80FF0EB3F8000
-07EC1F000003140E150C6D131C00011418A26C6C5BA26D1370017E1360137F6D5BA29038
-1F8180A214C3010F90C7FCA2EB07E6A214FE6D5AA26D5AA36D5AA2146024217E9F29>I<
-B53A1FFF81FFF0A33C07F801FC003F8001F049EB1E0000030100141C816C6C017C1318A2
-6D017E1338000002FE1330A290267E01FF5B159F168090263F030F5BA216C0903A1F8607
-C180A202C613E390260FCC0390C7FCA2D907FC13F6ECF80116FE6D486C5AA36D481378A3
-6D48133034217F9F37>I<B53801FFF8A32603FE0013806C48EB7C0000001478017E1370
-017F5B90383F81C090381F8380D90FC3C7FCEB07E614FE6D5A6D5A6D7E80805B9038039F
-809038071FC09038060FE0EB0C0790381C03F0496C7E01707FEBF000000180000FECFF80
-26FFFC0313FCA326207F9F29>I<3A7FFF807FF8A33A07F8001FC00003EC0F800001EC07
-0015066C6C5BA26D131C017E1318A26D5BA2EC8070011F1360ECC0E0010F5BA2903807E1
-80A214F3010390C7FC14FBEB01FEA26D5AA31478A21430A25CA214E05CA2495A1278D8FC
-03C8FCA21306130EEA701CEA7838EA1FF0EA0FC025307F9F29>I<003FB512F0A2EB000F
-003C14E00038EB1FC00030EB3F800070137F1500006013FE495A13035CC6485A495AA249
-5A495A49C7FC153013FE485A12035B48481370485A001F14604913E0485A387F00034813
-0F90B5FCA21C207E9F22>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fn cmr6 6 10
-/Fn 10 58 df<13FF000313C0380781E0380F00F0001E137848133CA248131EA400F813
-1FAD0078131EA2007C133E003C133CA26C13786C13F0380781E03803FFC0C6130018227D
-A01E>48 D<13E01201120712FF12F91201B3A7487EB512C0A212217AA01E>I<EA01FC38
-07FF80381C0FC0383003E0386001F0EB00F812F86C13FCA2147C1278003013FCC7FC14F8
-A2EB01F0EB03E014C0EB0780EB0F00131E13385B5B3801C00CEA0380380600185A5A383F
-FFF85AB512F0A216217CA01E>I<13FF000313C0380F03E0381C00F014F8003E13FC147C
-A2001E13FC120CC712F8A2EB01F0EB03E0EB0FC03801FF00A2380003E0EB00F01478147C
-143E143F1230127812FCA2143E48137E0060137C003813F8381E03F0380FFFC000011300
-18227DA01E>I<14E01301A213031307A2130D131D13391331136113E113C1EA01811203
-EA07011206120C121C12181230127012E0B6FCA2380001E0A6EB03F0EB3FFFA218227DA1
-1E>I<00101330381E01F0381FFFE014C01480EBFE00EA1BF00018C7FCA513FE381BFF80
-381F03C0381C01E0381800F014F8C71278A2147CA21230127812F8A214784813F8006013
-F0387001E01238381E07803807FF00EA01F816227CA01E>I<EB0FC0EB7FF03801F03838
-03C0183807803C380F007C121E001C1338003C1300A2127C1278EB7FC038F9FFE038FB80
-F038FE0038143C48131EA248131FA41278A36C131EA2001C133C001E13386C1370380781
-E03801FFC038007F0018227DA01E>I<1230123C003FB5FCA24813FE14FC3860001C1438
-14704813E014C0EA0001EB0380EB07001306130E5BA25BA21378A35BA41201A76C5A1823
-7CA11E>I<137F3803FFC0380781E0380E00704813380018131C1238A3123C003F133838
-1FC078EBE0F0380FF9E03807FF80120114C0000713F0380F0FF8381C03FC383801FE3870
-007E141F48130F1407A314060070130E0078130C6C1338001F13F03807FFC0C613001822
-7DA01E>I<13FE3803FFC0380781E0380E0070481378003C133848133CA200F8131EA314
-1FA40078133FA26C137F121C380F01DF3807FF9F3803FE1EC7FCA2143E143C001C133800
-3E13781470003C13E0381801C0381C0780380FFE00EA03F818227DA01E>I
-E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fo cmr8 8 15
-/Fo 15 119 df<13031307130E131C1338137013F0EA01E013C01203EA0780A2EA0F00A2
-121EA35AA45AA512F8A25AAB7EA21278A57EA47EA37EA2EA0780A2EA03C0120113E0EA00
-F013701338131C130E1307130310437AB11B>40 D<12C07E12707E7E7E120FEA07801203
-13C0EA01E0A2EA00F0A21378A3133CA4131EA5131FA2130FAB131FA2131EA5133CA41378
-A313F0A2EA01E0A2EA03C013801207EA0F00120E5A5A5A5A5A10437CB11B>I<EB3FC0EB
-FFF03803E07C48487E48487E497E001EEB0780A2003E14C0A248EB03E0A500FC14F0B000
-7C14E0A3007E1307003E14C0A36CEB0F806C14006D5A3807C03E3803F0FC3800FFF0EB3F
-C01C2D7DAB23>48 D<130C133C137CEA03FC12FFEAFC7C1200B3B113FE387FFFFEA2172C
-7AAB23>I<EB7F803801FFF0380780FC380E003F48EB1F8048EB0FC05A0060EB07E012F0
-00FC14F07E1403A3007C1307C7FCA215E0140F15C0141F1580EC3F00147E147C5C495A49
-5A495A495A011EC7FC5B5B4913305B485A4848136048C7FC000E14E0001FB5FC5A4814C0
-B6FCA21C2C7DAB23>I<EB3FC03801FFF03807C0FC380E007E487FEC1F80003F14C0A2EB
-800F1300A2000C131FC7FC1580A2EC3F00143E5C5CEB03F0EBFFC014F0EB00FC143FEC1F
-8015C0140F15E0A2EC07F0A21238127C12FEA3EC0FE012F8006014C00070131F6C148000
-1EEB3F00380780FC3801FFF038007FC01C2D7DAB23>I<140EA2141E143EA2147E14FEA2
-EB01BE1303143E1306130E130C131813381330136013E013C0EA0180120313001206120E
-120C5A123812305A12E0B612FCA2C7EA3E00A9147F90381FFFFCA21E2D7EAC23>I<000C
-EB0180380FC01F90B512005C5C14F014C0D80C7EC7FC90C8FCA8EB1FC0EB7FF8380DE07C
-380F801F01001380000E130F000CEB07C0C713E0A2140315F0A4127812FCA448EB07E012
-E0006014C00070130F6C14806CEB1F006C133E380780F83801FFE038007F801C2D7DAB23
->I<EB03F8EB0FFE90383E0780EBF8013901F007C03803E00FEA07C0EA0F80A2391F0007
-8091C7FC123EA2127EA2127CEB0FC038FC3FF0EBF07C38FDC01EB4487E01001380EC07C0
-4814E0A214034814F0A4127CA3127EA2003E14E01407121E001F14C06CEB0F803907801F
-003803C03E6C6C5A38007FF0EB1FC01C2D7DAB23>I<1230123C003FB512F8A215F05A15
-E039700001C000601480140348EB0700140E140CC7121C5C143014705C495AA2495AA249
-C7FCA25B130E131EA2133EA3133C137CA413FCA913781D2E7CAC23>I<EB1FC0EBFFF038
-03E07C3807801E48487E001EEB0780A248EB03C0A4123E1407003F1480381FC00F01E013
-00EBF81E6C6C5A3807FFF86C13E0C6FCEB3FF8EBFFFC3803C7FFD807831380D81F0013C0
-001E133F48EB1FE0007C13070078EB03F012F84813011400A46C14E000781301007C14C0
-003C13036CEB0780390F800F003807E03C3801FFF038003FC01C2D7DAB23>I<EB3F80EB
-FFF03803E0783807C03E48487E48487E003E14801407007E14C0127C00FC14E01403A315
-F0A5007C1307127EA2003E130F7E6C131F3807803B3803E0F33800FFC390383F03E01300
-1407A215C0A2140F001E1480003F14005C143E143C003E5B001C5B380E03E03807FF80D8
-01FEC7FC1C2D7DAB23>I<13FF000713C0380F01F0381C00F8003F137C80A2143F001E7F
-C7FCA4EB07FF137F3801FE1FEA07F0EA1FC0EA3F80EA7F00127E00FE14065AA3143F7E00
-7E137F007FEBEF8C391F83C7FC390FFF03F83901FC01E01F207D9E23>97
-D<380781F838FF87FEEB8E3FEA0F9CEA07B813B0EBF01EEBE000A45BB0487EB5FCA2181E
-7E9D1C>114 D<3AFFFC01FFC0A23A0FE0007E000007147C15380003143015706C6C1360
-A26C6C5BA390387C0180A26D48C7FCA2EB3F07EB1F06A2EB0F8CA214DCEB07D8A2EB03F0
-A36D5AA26D5A221E7F9C25>118 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fp cmbx12 12 53
-/Fp 53 122 df<DB0FFFEB03FF4AB5D8C03F13C0020F02F1B512E0027F91B612F0902701
-FFF8039038FE1FF849018002F813FC010F4948EBF03F49484913E0495A4A15C0495AF11F
-F801FF16804A6DEC07E070EC018096C7FCABBA12F0A5C69026E000030180C7FCB3B0007F
-D9FFC1B67EA546467EC541>11 D<ED0FFF4AB512C0020F14F0027F80903A01FFF803FC49
-9038C000FE010FEB00034948497E49485B5C495A4C138001FF6E13005CA3705AEE01F893
-C8FCA74BB51280B9FCA5C69038E00003B3B0007FD9FFC1B6FCA538467EC53E>I<ED0FFF
-4AB5EAEF80020F14FF147F903901FFF807491380010F495A495A495A5C495A8213FF4A7F
-ADB9FCA5C69038E00003B3B0007FD9FFC1B6FCA538467EC53E>I<EC01E01403EC0FC0EC
-1F80EC3F00147E5C1301495A495A5C130F495A133F5C137F49C7FCA2485AA2485AA21207
-5BA2120F5BA2121FA25B123FA4485AA612FFA25BAE7FA2127FA66C7EA4121F7FA2120FA2
-7F1207A27F1203A26C7EA26C7EA26D7E133F80131F6D7E1307806D7E6D7E1300147E80EC
-1F80EC0FC0EC03E014011B6476CA2C>40 D<12F07E127E7E6C7E6C7E6C7E7F6C7E6C7E12
-007F137F80133F806D7EA26D7EA26D7EA2801303A2801301A280A27F1580A4EC7FC0A615
-E0A2143FAE147FA215C0A6ECFF80A415005BA25CA213035CA213075CA2495AA2495AA249
-5A5C137F91C7FC13FE5B1201485A485A5B485A485A48C8FC127E12F85A1B647ACA2C>I<
-B612F8A91D097F9A25>45 D<EA07C0EA1FF0EA3FF8EA7FFCEAFFFEA7EA7FFCEA3FF8EA1F
-F0EA07C00F0F788E1F>I<EC03C01407141F147FEB03FF133FB6FCA413C3EA0003B3B3AD
-B712FCA5264177C038>49 D<ECFFE0010F13FE013F6D7E90B612E0000315F82607FC0313
-FE3A0FE0007FFFD81F806D138048C7000F13C0488001C015E001F07F00FF6E13F07F17F8
-81A46C5A6C5A6C5AC9FC17F05DA217E05D17C04B13804B1300A2ED1FFC4B5A5E4B5A4B5A
-4A90C7FC4A5A4A5AEC0FF04A5AEC3F804AC7127814FE495A494814F8D907E014F0495A49
-5A49C8FC017C140149140348B7FC4816E05A5A5A5A5AB8FC17C0A42D417BC038>I<ECFF
-F0010713FF011F14C0017F14F049C66C7ED803F8EB3FFED807E06D7E81D80FF86D138013
-FE001F16C07FA66C5A6C4815806C485BC814005D5E4B5A4B5A4B5A4A5B020F1380902607
-FFFEC7FC15F815FF16C090C713F0ED3FFCED0FFEEEFF80816F13C017E0A26F13F0A217F8
-A3EA0FC0EA3FF0487EA2487EA217F0A25D17E06C5A494913C05BD83F80491380D81FF049
-1300D80FFEEBFFFE6CB612F800015D6C6C14C0011F49C7FC010113E02D427BC038>I<16
-3FA25E5E5D5DA25D5D5D5DA25D92B5FCEC01F7EC03E7140715C7EC0F87EC1F07143E147E
-147C14F8EB01F0EB03E0130714C0EB0F80EB1F00133E5BA25B485A485A485A120F5B48C7
-FC123E5A12FCB91280A5C8000F90C7FCAC027FB61280A531417DC038>I<0007150301E0
-143F01FFEB07FF91B6FC5E5E5E5E5E16804BC7FC5D15E092C8FC01C0C9FCAAEC3FF001C1
-B5FC01C714C001DF14F09039FFE03FFC9138000FFE01FC6D7E01F06D13804915C0497F6C
-4815E0C8FC6F13F0A317F8A4EA0F80EA3FE0487E12FF7FA317F05B5D6C4815E05B007EC7
-4813C0123E003F4A1380D81FC0491300D80FF0495AD807FEEBFFFC6CB612F0C65D013F14
-80010F01FCC7FC010113C02D427BC038>I<4AB47E021F13F0027F13FC49B6FC01079038
-807F8090390FFC001FD93FF014C04948137F4948EBFFE048495A5A1400485A120FA24848
-6D13C0EE7F80EE1E00003F92C7FCA25B127FA2EC07FC91381FFF8000FF017F13E091B512
-F89039F9F01FFC9039FBC007FE9039FF8003FF17804A6C13C05B6F13E0A24915F0A317F8
-5BA4127FA5123FA217F07F121FA2000F4A13E0A26C6C15C06D4913806C018014006C6D48
-5A6C9038E01FFC6DB55A011F5C010714C0010191C7FC9038003FF02D427BC038>I<121E
-121F13FC90B712FEA45A17FC17F817F017E017C0A2481680007EC8EA3F00007C157E5E00
-785D15014B5A00F84A5A484A5A5E151FC848C7FC157E5DA24A5A14035D14074A5AA2141F
-5D143FA2147F5D14FFA25BA35B92C8FCA35BA55BAA6D5A6D5A6D5A2F447AC238>I<EC7F
-F00103B5FC010F14C0013F14F090397F801FFC3A01FC0003FE48486D7E497F4848EC7F80
-163F484815C0A2001F151FA27FA27F7F01FE143F6D158002C0137F02F014006C01FC5B6E
-485A6C9038FF83FCEDE7F86CECFFE06C5D6C92C7FC6D14C06D80010F14F882013F8090B7
-FC48013F14802607FC0F14C0260FF80314E04848C6FC496D13F0003F141F48481307496D
-13F8150000FF157F90C8123F161F160FA21607A36D15F0127F160F6D15E06C6C141F6DEC
-3FC06C6CEC7F80D80FFE903801FF003A07FFC00FFE6C90B55AC615F0013F14C0010F91C7
-FC010013F02D427BC038>I<EC7FF0903807FFFE011F6D7E017F14E09039FFE03FF04890
-38800FF848496C7E48488048486D7E001F80003F1680A2484815C08117E0A212FF17F0A6
-17F8A45D127FA3003F5CA26C7E5D6C6C5B12076C6C133E6CEBC07C6CEBFFF8013F5B010F
-01C013F00101130090C8FCA217E05DA2EA03C0D80FF015C0487E486C491380A217004B5A
-150F5E49495A6C48495A01C0EBFFE0260FF0035B6CB65A6C4AC7FC6C14F86C6C13E0D907
-FEC8FC2D427BC038>I<EE1F80A24C7EA24C7EA34C7EA24B7FA34B7FA24B7FA34B7F169F
-031F80161F82033F80ED3E07037E80157C8203FC804B7E02018115F0820203814B137F02
-07815D173F020F814B7F021F8292C77EA24A82023E80027E82027FB7FCA291B87EA24983
-02F0C8FCA20103834A157F0107834A153FA249488284011F8491C97E4984133E017E82B6
-020FB612F0A54C457CC455>65 D<B9FC18F018FE727E19E026003FFCC700077F05017F71
-6C7E727E727EA2721380A37213C0A74E1380A24E1300A24E5A4E5A4E5A4D5B05075B94B5
-128091B700FCC7FC18F018FF19E002FCC7000113F8716C7EF01FFE727E7213801AC07213
-E0A27213F0A31AF8A71AF0A2601AE0604E13C0604E138095B5120005075BBA12F86119C0
-4EC7FC18E045447CC350>I<DCFFF01470031F01FF14F04AB6EAE0010207EDF803023FED
-FE0791B539E001FF0F4949C7EA3F9F010701F0EC0FFF4901C0804990C87E494881494881
-4948167F4849163F4849161F5A4A160F485B19074890CAFC19035A5BA2007F1801A34994
-C7FC12FFAE127F7F1AF0A2123FA27F6C18011AE06C7F19036C6D17C06E16077E6C6DEE0F
-806C6DEE1F006D6C5E6D6C167E6D6C6C5D6D6D4A5A6D01F0EC07F0010101FEEC1FE06D90
-3AFFF001FF80023F90B6C7FC020715FC020115F0DA001F1480030001F8C8FC44467AC451
->I<B9FC18F018FE727E19E026003FFEC7001F13F805017F9438003FFF060F7F727F727F
-727F84737E737EA2737EA2737EA21B80A2851BC0A51BE0AD1BC0A51B8061A21B00616219
-3F624F5A19FF624E5B06075B4E5B063F90C7FC4DB45A050F13F8BA5A19C04EC8FC18F095
-C9FC4B447CC356>I<BA12F8A485D8001F90C71201EF003F180F180318011800A2197E19
-3EA3191EA21778A285A405F890C7FCA316011603161F92B5FCA5ED001F160316011600A2
-F101E01778A2F103C0A494C7FC1907A21A80A2190FA2191FA2193FF17F0061601807181F
-4DB5FCBBFC61A443447DC34A>I<BA1280A419C026003FFEC7121F1701EF007F183F181F
-180F180719E01803A31801A3EE01E0F000F0A419001603A31607160F167F91B6FCA59138
-FE007F160F16071603A31601A693C9FCAFB712F0A53C447CC346>I<B712E0A5D8001F90
-C7FCB3B3B3A4B712E0A523447DC32A>73 D<923807FFC092B512FE0207ECFFC0021F15F0
-91267FFE0013FC902601FFF0EB1FFF01070180010313C04990C76C7FD91FFC6E6C7E4948
-6F7E49486F7E01FF8348496F7E48496F1380A248496F13C0A24890C96C13E0A24819F049
-82003F19F8A3007F19FC49177FA400FF19FEAD007F19FC6D17FFA3003F19F8A26D5E6C19
-F0A26E5D6C19E0A26C6D4B13C06C19806E5D6C6D4B13006C6D4B5A6D6C4B5A6D6C4B5A6D
-6C4A5B6D01C001075B6D01F0011F5B010101FE90B5C7FC6D90B65A023F15F8020715C002
-004AC8FC030713C047467AC454>79 D<B9FC18F018FE727E19E0D8001F90C7000F7F0501
-7F716C7E727E727E721380A21AC084A21AE0A91AC0A24E1380A21A00604E5A4E5A4D485A
-050F5B92B712C096C7FC18FC18C092CBFCB3A7B712E0A543447DC34D>I<923807FFC092
-B512FE0207ECFFC0021F15F091267FFE0013FC902601FFF0EB1FFF010701C0010713C049
-90C700017F49486E7F49486F7E49486F7E49486F7E48496F7E48496F1380A248496F13C0
-A24819E091C97E4819F0A248487013F8A3007F19FCA249177FA300FF19FEAD007F19FCA3
-6D17FF003F19F8A3001F19F06D5EA26C19E06E01FE5B6C912603FF8014C06C6D486D4813
-804B13E06C9028E01F83F00F13006C903BF01E00F81FFE90267FF83E90387C3FFC90263F
-FC3C6D485AD91FFE91381EFFF0D90FFF021F5B6D01FE5D010194C7FC6D6D6CB45A023F90
-B512F8020703E0130202006F1307030713C792C7EA07F8716C130F72131F9538FF80FF96
-B5FC7114FEA3831AFCA27213F81AF0847213E07213C0721300F001FC48587AC454>I<DA
-FFE0131C010701FE133C013F9038FF807C90B6EAE0FC4815F9489038801FFF3907FC0001
-4848EB007F4848143F4848140F491407007F15035B1601160012FF177CA27FA26D153C7F
-7F6D92C7FC6C7EEBFFE014FE6CEBFFF015FF6C15E016FC6C816C6F7E6C826C826C6C8101
-1F810107811300020F80140003077FED007F82040F1380828212F082A282A27EA218007E
-A26C5D6C5E6D14036D5D6D140701F84A5A01FFEC3FF002F8EBFFE0486CB65AD8FC1F92C7
-FCD8F80714FC48C614F0480107138031467AC43E>83 D<003FBA12E0A59026FE000FEB80
-03D87FE09338003FF049171F90C71607A2007E1803007C1801A300781800A400F819F848
-1978A5C81700B3B3A20107B8FCA545437CC24E>I<B600FE017FB691B512FEA526007FFC
-C8D83FFEC9EA7C006E82013F701778807415F86D705F6F7014016D705FA26F7014036D64
-814E6D14076D646F70140F6D041E94C7FCA26F023E6D5C6DDC3C7F151E81027F037C6D5C
-F0783F6F70147C023F4B6C1578A26F01016F13F86E4B6C5D16806E02036F485A4E7E04C0
-EEE0036E4A486C5DA2DCE00FEDF0076E4B6C5D16F06E4A6F48C8FC051E7F04F8705A6E4A
-027F131EA2DCFC7CEDFE3E037F0178023F133C04FE16FF033F01F85E4D8004FF17F86F49
-6E5BA36F496E5BA26F604D80A26F90C86C5BA36F486F90C9FCA26F48167EA30478163C6F
-457EC374>87 D<903801FFE0011F13FE017F6D7E48B612E03A03FE007FF84848EB1FFC6D
-6D7E486C6D7EA26F7FA36F7F6C5A6C5AEA00F090C7FCA40203B5FC91B6FC1307013F13F1
-9038FFFC01000313E0000F1380381FFE00485A5B127F5B12FF5BA35DA26D5B6C6C5B4B13
-F0D83FFE013EEBFFC03A1FFF80FC7F0007EBFFF86CECE01FC66CEB8007D90FFCC9FC322F
-7DAD36>97 D<EB7FC0B5FCA512037EB1ED0FF892B57E02C314E002CF14F89139DFC03FFC
-9139FF000FFE02FCEB03FF4A6D13804A15C04A6D13E05CEF7FF0A218F8173FA318FCAC18
-F8A2177F18F0A3EFFFE06E15C06E5B6E491380027C491300496C495A903AFC1FC07FFC49
-6CB512F0D9F00314C049C691C7FCC8EA1FF036467DC43E>I<EC3FFC49B512C0010F14F0
-013F14FC90397FF003FE9039FFC001FF0003495A48494813805B120F485AA2485A6F1300
-007F6E5AED00784991C7FCA212FFAC6C7EA3123F6DEC03C0A26C6C1407000F16806D140F
-6C6DEB1F006C6D133E6C01F05B3A007FFC03F86DB55A010F14C0010391C7FC9038003FF8
-2A2F7CAD32>I<EE03FEED07FFA5ED001F160FB1EC3FE0903803FFFC010FEBFF8F013F14
-CF9039FFF807FF48EBC00148903880007F4890C7123F4848141F49140F121F485AA3127F
-5BA212FFAC127FA37F123FA26C6C141FA26C6C143F0007157F6C6C91B5FC6CD9C00314FC
-6C9038F01FEF6DB5128F011FEBFE0F010713F89026007FC0EBF80036467CC43E>I<EC3F
-F80103B57E010F14E0013F8090397FF83FF89039FFC007FC48496C7E48496C7E48486D13
-80485A001FED7FC05B003FED3FE0A2127F5B17F0161F12FFA290B7FCA401F0C9FCA5127F
-A27FA2123F17F06C7E16016C6C15E06C6C14036C6DEB07C06C6DEB0F806C01F0EB3F0090
-397FFE01FE011FB55A010714F0010114C09026001FFEC7FC2C2F7DAD33>I<EDFF80020F
-13E0027F13F049B512F849EB8FFC90390FFE0FFE90381FFC1F14F8133FEB7FF0A2ED0FFC
-EBFFE0ED03F0ED00C01600ABB612F8A5C601E0C7FCB3B0007FEBFFE0A527467DC522>I<
-DAFFE0137E010F9039FE03FF80013FEBFF8F90B812C048D9C07F133F489038001FF84848
-EB0FFC4848903907FE1F80001F9238FF0F00496D90C7FCA2003F82A8001F93C7FCA26D5B
-000F5D6C6C495A6C6C495A6C9038C07FF04890B55A1680D8078F49C8FC018013E0000F90
-CAFCA47F7F7F90B612C016FC6CEDFF8017E06C826C16FC7E000382000F82D81FF0C77ED8
-3FC014074848020113808248C9FC177FA46D15FF007F17006D5C6C6C4A5A6C6C4A5AD80F
-FEEC3FF83B07FFC001FFF0000190B612C06C6C92C7FC010F14F8D9007F90C8FC32427DAC
-38>I<EB7FC0B5FCA512037EB1ED07FE92383FFF8092B512E002C114F89139C7F03FFC91
-38CF801F9139DF000FFE14DE14FC4A6D7E5CA25CA35CB3A7B60083B512FEA537457CC43E
->I<137C48B4FC4813804813C0A24813E0A56C13C0A26C13806C1300EA007C90C7FCAAEB
-7FC0EA7FFFA512037EB3AFB6FCA518467CC520>I<EB7FC0B5FCA512037EB293387FFFE0
-A593380FE0004C5A4CC7FC167E5EED03F8ED07E04B5A4B5A037FC8FC15FEECC1FCECC3FE
-14C7ECDFFF91B57E82A202F97F02E17F02C07FEC807F6F7E826F7E816F7F836F7F816F7F
-83707E163FB60003B512F8A535457DC43B>107 D<EB7FC0B5FCA512037EB3B3B3A3B612
-80A519457CC420>I<90277F8007FEEC0FFCB590263FFFC090387FFF8092B5D8F001B512
-E002816E4880913D87F01FFC0FE03FF8913D8FC00FFE1F801FFC0003D99F009026FF3E00
-7F6C019E6D013C130F02BC5D02F86D496D7EA24A5D4A5DA34A5DB3A7B60081B60003B512
-FEA5572D7CAC5E>I<90397F8007FEB590383FFF8092B512E0028114F8913987F03FFC91
-388F801F000390399F000FFE6C139E14BC02F86D7E5CA25CA35CB3A7B60083B512FEA537
-2D7CAC3E>I<EC1FFC49B512C0010714F0011F14FC90397FF80FFF9026FFC0017F48496C
-7F4848C7EA3FE000078248486E7E49140F001F82A2003F82491407007F82A400FF1780AA
-007F1700A46C6C4A5AA2001F5E6D141F000F5E6C6C4A5AA26C6C6CEBFFE06C6D485B2700
-7FF80F90C7FC6DB55A010F14F8010114C09026001FFCC8FC312F7DAD38>I<90397FC00F
-F8B590B57E02C314E002CF14F89139DFC03FFC9139FF001FFE000301FCEB07FF6C496D13
-804A15C04A6D13E05C7013F0A2EF7FF8A4EF3FFCACEF7FF8A318F017FFA24C13E06E15C0
-6E5B6E4913806E4913006E495A9139DFC07FFC02CFB512F002C314C002C091C7FCED1FF0
-92C9FCADB67EA536407DAC3E>I<DA3FE0131E902603FFFC133E010F01FF137E013F1480
-903AFFF80FE0FE489038E003F148EBC0014890388000FB4890C7127F49143F001F151F48
-5A160F5B127FA3485AAC6C7EA46C7EA26C6C141F163F6C6C147F6C15FF6C6D5A6C9038E0
-03EF6C9038F01FCF6DB5128F011FEBFE0F010313F89038007FC091C7FCAD0307B512FCA5
-36407CAC3B>I<90387F807FB53881FFE0028313F0028F13F8ED8FFC91389F1FFE000313
-BE6C13BC14F8A214F0ED0FFC9138E007F8ED01E092C7FCA35CB3A5B612E0A5272D7DAC2E
->I<90391FFC038090B51287000314FF120F381FF003383FC00049133F48C7121F127E00
-FE140FA215077EA27F01E090C7FC13FE387FFFF014FF6C14C015F06C14FC6C800003806C
-15806C7E010F14C0EB003F020313E0140000F0143FA26C141F150FA27EA26C15C06C141F
-A26DEB3F8001E0EB7F009038F803FE90B55A00FC5CD8F03F13E026E007FEC7FC232F7CAD
-2C>I<EB01E0A51303A41307A2130FA2131FA2133F137F13FF1203000F90B51280B7FCA4
-C601E0C7FCB3A3ED01E0A9150302F013C0137F150790393FF80F8090391FFC1F006DB5FC
-6D13FC01015B9038003FE023407EBE2C>I<D97FC049B4FCB50103B5FCA50003EC000F6C
-81B3A85EA25EA25E7E6E491380017FD901F713FE9138F807E76DB512C7010F1407010313
-FE9026007FF0EBFC00372E7CAC3E>I<B6903803FFFCA5000101E09038003E006C163C80
-017F5D8017F8013F5D6E1301011F5D6E1303010F5D6E13076D5DED800F6D92C7FC15C05E
-6DEBE01E163E6D143CEDF07C027F1378EDF8F8023F5B15FD021F5B15FF6E5BA36E5BA26E
-90C8FCA26E5AA26E5AA21578362C7EAB3B>I<B5D8FE1FB539801FFFF0A500019027C000
-3FE0C7EA7C007114786E17F86C6F6C5C6E1601017F6E6C5CA26E011F1403013F6F5C6E01
-3F1407011F6F5CA26E0179140F010F048090C7FC6E01F95C6D02F0EBC01E15806D902681
-E07F5B18E003C3157C6D9139C03FF07815E76DDA801F5B18F803FF14F96E9039000FFDE0
-18FF6E486D5BA36E486D5BA26E486D90C8FCA24B7F02075DA26E48147C4B143C4C2C7EAB
-51>I<B500FE90383FFFF0A5C601F0903803E0006D6C495A013F4A5A6D6C49C7FC6E5B6D
-6C137E6DEB807C6D6D5A6DEBC1F0EDE3E06DEBF7C06EB45A806E90C8FC5D6E7E6E7F6E7F
-A24A7F4A7F8291381F3FFCEC3E1F027C7F4A6C7E49486C7F01036D7F49487E02C0804948
-6C7F49C76C7E013E6E7E017E141FB500E090B512FCA5362C7EAB3B>I<B6903803FFFCA5
-000101E09038003E006C163C80017F5D8017F8013F5D6E1301011F5D6E1303010F5D6E13
-076D5DED800F6D92C7FC15C05E6DEBE01E163E6D143CEDF07C027F1378EDF8F8023F5B15
-FD021F5B15FF6E5BA36E5BA26E90C8FCA26E5AA26E5AA21578A215F85D14015D001F1303
-D83F805B387FC007D8FFE05B140F92C9FC5C143E495A387FC1F8EB07F06CB45A6C5B0007
-90CAFCEA01FC36407EAB3B>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fq cmsy10 10.95 21
-/Fq 21 121 df<007FB812F8B912FCA26C17F83604789847>0 D<0060166000F816F06C
-1501007E15036CED07E06C6CEC0FC06C6CEC1F806C6CEC3F006C6C147E6C6C5C6C6C495A
-017E495A6D495A6D6C485A6D6C485A6D6C48C7FC903803F07E6D6C5A903800FDF8EC7FF0
-6E5A6E5AA24A7E4A7EECFDF8903801F8FC903803F07E49487E49486C7E49486C7E49486C
-7E017E6D7E496D7E48486D7E4848147E4848804848EC1F804848EC0FC048C8EA07E0007E
-ED03F0481501481500006016602C2C73AC47>2 D<EB03C0A2805CA600F0140F00FC143F
-00FE147F00FF14FF393FC3C3FC390FE187F03903F18FC03900FDBF00EB3FFCEB0FF0EB03
-C0EB0FF0EB3FFCEBFDBF3903F18FC0390FE187F0393FC3C3FC39FF03C0FF00FE147F00FC
-143F00F0140F00001400A6805CA220277AA92D>I<1506150FB3A9007FB912E0BA12F0A2
-6C18E0C8000FC9FCB3A6007FB912E0BA12F0A26C18E03C3C7BBC47>6
-D<EB0FFCEB3FFF90B512C0000314F04880488048804880A2481580A3B712C0AA6C1580A3
-6C1500A26C5C6C5C6C5C6C5CC614C0013F90C7FCEB0FFC22227BA72D>15
-D<007FB912E0BA12F0A26C18E0CDFCAE007FB912E0BA12F0A26C18E0CDFCAE007FB912E0
-BA12F0A26C18E03C287BAA47>17 D<1818187CEF01FCEF07F8EF1FF0EF7FC0933801FF00
-EE07FCEE1FF0EE7FC04B48C7FCED07FCED1FF0ED7FC04A48C8FCEC07FCEC1FF0EC7FC049
-48C9FCEB07FCEB1FF0EB7FC04848CAFCEA07FCEA1FF0EA7FC048CBFC5AEA7F80EA3FE0EA
-0FF8EA03FEC66C7EEB3FE0EB0FF8EB03FE903800FF80EC3FE0EC0FF8EC03FE913800FF80
-ED3FE0ED0FF8ED03FE923800FF80EE3FE0EE0FF8EE03FE933800FF80EF3FE0EF0FF8EF03
-FC170018381800AE007FB812F8B912FCA26C17F8364878B947>20
-D<126012F812FEEA7F80EA3FE0EA0FF8EA03FEC66C7EEB3FE0EB0FF8EB03FE903800FF80
-EC3FE0EC0FF8EC03FE913800FF80ED3FE0ED0FF8ED03FE923800FF80EE3FE0EE0FF8EE03
-FE933800FF80EF3FE0EF0FF8EF03FC1701EF07F8EF1FF0EF7FC0933801FF00EE07FCEE1F
-F0EE7FC04B48C7FCED07FCED1FF0ED7FC04A48C8FCEC07FCEC1FF0EC7FC04948C9FCEB07
-FCEB1FF0EB7FC04848CAFCEA07FCEA1FF0EA7FC048CBFC12FC1270CCFCAE007FB812F8B9
-12FCA26C17F8364878B947>I<D91FE01620D97FF816703801FFFE486D7E48804814F090
-38E01FF8271F8007FC15F0273E0001FE15E0003CD9007F1401007CDA3FC013030078DA0F
-E014C00070DA07F8130700F0DA03FEEB1F8048913A01FF807F006F90B5FC043F5B705B04
-075B040113E000409238007F803C157BA047>24 D<D91FE01620D9FFFC16704813FF0007
-14C04814F048809026E01FFE15F0273F0003FFEC01E0007E010013C00078DA3FF01307DB
-0FFCEB0FC048913A07FF807F8048020190B5FC6F1500043F5B040F13F804035B00409238
-007F80CDFCA4D91FE01620D9FFFC16704813FF000714C04814F048809026E01FFE15F027
-3F0003FFEC01E0007E010013C00078DA3FF01307DB0FFCEB0FC048913A07FF807F804802
-0190B5FC6F1500043F5B040F13F804035B00409238007F803C287BAB47>I<19301978A2
-197C193CA2193E191EA2191F737EA2737E737EA2737E737E1A7C1A7EF21F80F20FC0F207
-F0007FBB12FCBDFCA26C1AFCCDEA07F0F20FC0F21F80F27E001A7C624F5A4F5AA24F5A4F
-5AA24FC7FC191EA2193E193CA2197C1978A2193050307BAE5B>33
-D<D90FF0ED07F0D93FFE151F90B56C147F486E903801F8002703E01FF0EB07E027078007
-F8EB0F8048486C6C49C7FC001E6D6C133E001C6D6C5B4891387F80786F6C5A4891381FC1
-E0ED0FE10060EDF3C0923807F78000E0EC03FF4893C8FC816F5A828283163F4C7E836C15
-FF0060EDF7F0923801E7F8ED03C30070EDC1FC003091380781FE00384AC67E00184A6D7E
-001C023E6D7E6C4A6D7E6C4A6D7E90268003F0EB07FC2703E00FC0903801FFF0C6B5C8FC
-D93FFC153FD90FF015073C297BA747>47 D<176017F01601A2EE03E0A2EE07C0A2EE0F80
-A2EE1F00A2163EA25EA25EA24B5AA24B5AA24B5AA24B5AA24BC7FCA2153EA25DA25DA24A
-5AA24A5AA24A5AA24A5AA24AC8FCA2143EA25CA25CA2495AA2495AA2495AA2495AA249C9
-FCA2133EA25BA25BA2485AA2485AA2485AA2485AA248CAFCA2123EA25AA25AA25A12602C
-5473C000>54 D<DA07FC1678DA3FFEED01F049B5150301076E1407011F18E0D93F81160F
-D9FC0017C0D801F0137F4848171F48481880484891C8123F121F48C71700003E60007E5C
-48187E00F018FE00C05CC85E1801A214014B4A5AA3614A481407A261180F4A5AA291B85A
-1303130F5B619026001FC0C7123FA34B4AC7FC143FA292C8FC4A5D60147E14FEA24A1401
-1301A24A5D1303A24A170C01070303147C1AF84A1601010FEF03F04A9238FE07E095B512
-C04948170091C85C013E6F13F001386F138046427EBD4D>72 D<F41F80F301FF1B07631B
-3F51130098B5FCED01C0DB07E04B5B030F95C7FC031F17F0F203C0705E1A0798C8FC8262
-1A0E153F70151E1A1CA2DB3BFE153C15390379163882037816781A7003707F047F15F015
-F0715CEDE03F1901020180041F5DA203C06D1303160F02035F03807F04071407020794C9
-FC83DB00035CA24A6E130E020E130171131E141E70141C021C1580057F133C023C15C002
-381638173F4AEDE078171F02F015F04A1670EF0FF8010117F04AEC07FCD81003705A0038
-491403D83C0716FFD87F0FC87E01FF6F5B485A187F5B725A6C48041ECAFC6C4893CBFC6C
-5AEA0780594C82C64B>78 D<EE0FFE93387FFFC00303B512F8030F14FC033F14FE4BC6FC
-DA01F8EB1FFFDA03E013034A487F4A5A4AC8FC4A15FE5C027E15FC02FE15F8EF01F018C0
-010192C7FC80A3816D7F8181EC7FFC6EB4FC6E13C06E13F06E13FC020113FF6E6C7F031F
-13E003077F03017F6F6C7E707E160F707E8201786E1380EA01F8D807F080EA0FC0484815
-7F123F90C9FC481700A2177E5A5F7F4C5A6D5D6D4A5A6C6C4A5A6D4A5AD83FFE023FC7FC
-6C6C6C13FC6C9038F00FF86C90B512E06C1580C64AC8FC013F13F0010790C9FC38427EBF
-37>83 D<153FEC03FFEC0FE0EC3F80EC7E00495A5C495AA2495AB3AA130F5C131F495A91
-C7FC13FEEA03F8EA7FE048C8FCEA7FE0EA03F8EA00FE133F806D7E130F801307B3AA6D7E
-A26D7E80EB007EEC3F80EC0FE0EC03FFEC003F205B7AC32D>102
-D<12FCEAFFC0EA07F0EA01FCEA007E6D7E131F6D7EA26D7EB3AA801303806D7E1300147F
-EC1FC0EC07FEEC00FFEC07FEEC1FC0EC7F0014FC1301495A5C13075CB3AA495AA2495A13
-3F017EC7FC485AEA07F0EAFFC000FCC8FC205B7AC32D>I<126012F0B3B3B3B3B1126004
-5B76C319>106 D<1A03F207801A0FA2F21F00A21A3EA262A262A24F5AA24F5AA24F5AA2
-4F5AA24FC7FCA2193EA261A261A24E5AA24E5AA24E5AA24E5AA24EC8FCA2183EA260A260
-A24D5A131C017C5E01FE15031201D807FF4B5A120E484C5A00787FD8E07F4BC9FC00C07F
-D8003F153E80011F5D80010F5D8001074A5A8001034A5AA26E495A13016E495A7F6F48CA
-FC147FEDC03E143F6F5A141F6F5A140FEDF1F015F9913807FBE015FF6E5BA26E5BA26E90
-CBFCA2157EA2153C1538495B7B834C>112 D<EB3F80EBFFF03803E078380F801E48487E
-80003EEB03805A15C0140F5AA3EC078091C7FCA37E127CA27E121E121F6C7EEA03C06C7E
-EA00F8133EEBFF803803E3E0380F80F0381F0078143E003E7F487F1580EC07C05A15E014
-03A57E127CEC07C07E121E001FEB0F80390F801F00EA03C03801E03E3800F8F8EB3FE0EB
-0F80EB03E0EB00F01478143E80801580EC07C0A215E01403A3123C127EA3EC07C0127812
-38EC0F806CEB1F00121E6C133E3803C0F83801FFE038003F801B537ABF28>120
-D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fr cmti10 10.95 47
-/Fr 47 122 df<933807FF80043F13E09338FE00F8DB01F0133EDB07E0130E4B48131F4C
-137F031F14FF4BC7FCA218FE157E1878180015FE5DA31401A25DA414030103B712F0A218
-E0903A0003F000070207140F4B14C0A3171F020F15805DA2173F1800141F5D5F177EA214
-3F92C712FE5FA34A1301027EECF81CA3160302FEECF03C4A1538A21878187013014A0101
-13F018E0933800F1C0EF7F804948EC1F0094C7FCA35C1307A2001E5B127F130F00FF5BA2
-49CAFC12FEEAF81EEA703CEA7878EA1FF0EA07C0385383BF33>12
-D<EE07FC93393FFF87F09338FC07C7923A03F001E7E0DB07C013F792390F8007FF031F49
-13C016005DA2037E1580EF039FEF001F183F4B1500A3600201157E5DA218FE6014035D01
-03B7FC60A2903A0007F000014B130360A31707020F5D5DA2170F60141F5D171F60A2143F
-92C7123F95C7FCA34A5C027EEC7E07A317FE02FE4A5A4A150EA2181E181C13014AEC7C3C
-1838EF3C70EF1FE04948EC07C094C8FCA3495AA3001E5BEA7F0FA200FF5BA249CBFC12FE
-EAF83EEA703CEA7878EA1FF0EA07C03C5383BF35>I<15FCEC07FF91261F038014F09126
-3E01C0EB01F84A6C6C13035C49481370494816F0010716014948150091268001F014E001
-1F01071401030F15C0D93F001503F00780495C017EEE0F00DB0780131E92C85A01FE5E49
-5EEF03E04D5A021F141FDAFFC0497ED9FBE1ECF8F0903AFFC0E001F00280903807C07802
-00EB0F80017E91381E0038D9FC0149133C0001DAC038131C01FE14783A03FF03807048EB
-8700D9E3FE13F0260FE0F8EBE38049C7EAEFC0001FED7FE0A2484815C0163F93380F003C
-007F92C7123890CAFCA21878187000FE17F060127E4D5A170360007F16076C4CC7FC171E
-6C6C151C5F6C6C15F06C6C4A5A6C6CEC07C06C6C021FC8FCD8007E147C90391FC007F001
-07B512809026007FF8C9FC3D4375C046>38 D<ED01801507ED0F00151C5D5D5D14014A5A
-4A5A4AC7FC141E143E5C14785C1301495AA2495A5C130F49C8FCA2133EA25BA213FC5B12
-015BA212035B1207A25B120FA25BA2121FA290C9FCA25AA2123EA2127EA2127CA65AAB12
-78A67EA47EA2120E120F7EA26C7EA26C7E6C7E1360215A73C325>40
-D<14031580A2EC01C0EC00E0A21570A215781538153CA3151EA4151FA2150FA7151FA915
-3FA2153EA3157EA2157CA215FCA215F8A21401A215F0A2140315E0A2140715C0A2EC0F80
-A2141F15005C143EA25CA25CA2495A5C1303495A5C130F49C7FC131E5B137C5B5B485A48
-5A485A48C8FC121E5A12705A5A205A7FC325>I<387FFFFCA3B5FCA21605799521>45
-D<15031507150F151F151E153E157EEC01FEEC03FC1407141FEB01FF90380FFBF8EB1FC3
-EB0E07130015F0A2140FA215E0A2141FA215C0A2143FA21580A2147FA21500A25CA25CA2
-1301A25CA21303A25CA21307A25CA2130FA25CA2131FA25CEB7FE0B612F0A215E0203D77
-BC2E>49 D<15FE913803FFC091380F01F091383C00F84A137C4A7F4948133F49487F4A14
-8049C7FC5BEB0E0C011E15C0EB1C0EEB3C06133813781370020E133FD9F00C148013E014
-1C0218137F00011600EBC0384A13FEEC600102E05B3A00E3C003F89039FF0007F0013C49
-5A90C7485A5E037FC7FC15FC4A5A4A5AEC0FC04AC8FC147E14F8EB03E0495A011FC9FC13
-3E49141801F0143C48481438485A1678485A48C85A120E001E4A5AD83FE0130301FF495A
-397C3FF01FD8780FB55AD8700391C7FCD8F0015B486C6C5A6E5AEC07C02A3F79BC2E>I<
-131EEB3F80137FEBFFC05AA214806C13005B133C90C7FCB3120FEA3FC0127FA212FFA35B
-6CC7FC123C122777A61C>58 D<171C173C177CA217FCA216011603A21607A24C7EA2161D
-A216391679167116E1A2ED01C1A2ED038115071601150EA2031C7FA24B7EA25D15F05D4A
-5AA24A5AA24AC7FC5C140E5C021FB6FC4A81A20270C7127FA25C13015C495AA249C8FCA2
-130E131E131C133C5B01F882487ED807FEEC01FFB500E0017FEBFF80A25C39417BC044>
-65 D<9339FF8001C0030F13E0033F9038F803809239FF807E07913A03FC001F0FDA0FF0
-EB071FDA1FC0ECBF00DA7F806DB4FC4AC77E495AD903F86E5A495A130F4948157E494815
-7C495A13FF91C9FC4848167812035B1207491670120FA2485A95C7FC485AA3127F5BA312
-FF5BA490CCFCA2170FA2170EA2171E171C173C173817786C16706D15F04C5A003F5E6D14
-03001F4B5A6D4AC8FC000F151E6C6C5C6C6C14F86C6C495A6C6CEB07C090397FC03F8090
-261FFFFEC9FC010713F0010013803A4272BF41>67 D<49B712C018F818FE903B0003FE00
-03FF9438007F804BEC1FC0F00FE0F007F014074BEC03F8F001FCA2140F4BEC00FEA3141F
-4B15FFA3143F5DA3027F5D5DA219FE14FF92C81203A34917FC4A1507A219F813034A150F
-19F0A20107EE1FE05CF03FC0A2010FEE7F804A16006060011F4B5A4A4A5A4D5AA2013F4B
-5A4AEC3FC04DC7FC017F15FEEE03FC4AEB0FF001FFEC7FE0B8128004FCC8FC16E0403E7B
-BD45>I<49B812F8A390260003FEC7121F18074B14031801F000F014075DA3140F5D19E0
-A2141F4B1338A2EF7801023F027013C04B91C7FCA217F0027F5CED80011603160F91B65A
-A3ED001F49EC07805CA3010392C8FC5CF003804C13070107020E14005C93C75A180E010F
-161E4A151C183CA2011F5E5C60A2013F15014A4A5A1707017F150F4D5A4A147F01FF9138
-07FF80B9FCA295C7FC3D3E7BBD3E>I<49B6FC5BA2D9000313005D5DA314075DA3140F5D
-A3141F5DA3143F5DA3147F5DA314FF92C7FCA35B5CA313035CA313075CA3130F5CA3131F
-5CA3133F5CA2137FA25C497EB67EA3283E7BBD23>73 D<4AB61280A2180091C713C0167F
-5FA216FF94C7FCA35D5EA315035EA315075EA3150F5EA3151F5EA3153F5EA3157FA25EA2
-15FFA293C8FCA25CA25DA2380F8003EA3FC0D87FE05BA21407D8FFC05B140F01805B4948
-5A12FC0070495A4A5A6C01FEC9FC383C01FC380F07F03807FFC0C648CAFC314079BD30>
-I<49B5933807FFFC496062D90003F0FC00505ADBBF805E1A771AEF1407033F923801CFE0
-A2F1039F020FEE071F020E606F6C140E1A3F021E161C021C04385BA2F1707F143C023804
-E090C7FCF001C0629126780FE0495A02705FF00700F00E0114F002E0031C5BA2F0380301
-0116704A6C6C5D18E019070103ED01C00280DA03805BA2943807000F13070200020E5C5F
-DB03F8141F495D010E4B5CA24D133F131E011CDAF9C05CEEFB80197F013C6DB4C7FC0138
-95C8FC5E01784A5C13F8486C4A5CD807FE4C7EB500F04948B512FE16E01500563E7BBD52
->77 D<902601FFFE020FB5FC496D5CA2D900016D010013C04AEE3F00193E70141C193CEC
-07BFDB3FE01438151F1978020F7FDA0E0F15708219F0EC1E07021C6D5CA203031401023C
-7FDA38015DA2701303EC7800027002805BA2047F130702F014C04A013F91C7FCA2715A01
-01141F4AECF00EA2040F131E010315F84A151C1607EFFC3C0107140391C7143817FE0401
-13784915FF010E16708218F0131E011C6F5AA2173F133C01385E171F137813F8486C6F5A
-EA07FEB500F01407A295C8FC483E7BBD44>I<EEFFC0030713F892383F80FE9238FC003F
-DA03F0EB0F804A486D7EDA1F80804AC76C7E027E6E7E4A81494814004948811307495A49
-48157F133F5C49C9FC4917805B1201485AA212075B000F17FFA25B121F190048485DA448
-484B5AA34D5AA25B4D5A12FF60171F60007F163F604D5AA24DC7FC5F003F15014C5A6D5D
-001F4B5A4C5A6C6C4A5A4C5A6C6C4AC8FC000315FC6C6C495A6C6CEB07E0017FEB1F8090
-261FC07EC9FC903807FFF801001380394273BF46>I<49B77E18F018FC903B0003FE0003
-FEEF00FF4BEC7F80F03FC00207151F19E05DA2020F16F0A25DA2141FF03FE05DA2023F16
-C0187F4B1580A2027FEDFF00604B495A4D5A02FF4A5A4D5A92C7EA3FC04CB4C7FC4990B5
-12FC17E04ACAFCA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA25CA2137FA2
-5C497EB67EA33C3E7BBD3E>I<49B612FCEFFF8018F0903B0003FE000FF8EF03FE4BEB00
-FF8419800207ED3FC05DA219E0140F5DA3021FED7FC05DA2F0FF80143F4B15004D5A6002
-7F4A5A4B495A4D5AEF3F8002FF02FEC7FC92380007F892B512E01780499038000FE04A6D
-7E707E707E0103814A130083A213075CA25E130F5C5F1603131F5CA3013F020714404A16
-E05F017F160119C04A01031303496C1680B6D8800113079438FE0F009338007E1ECAEA3F
-FCEF07F03B407BBD42>82 D<92391FE00380ED7FFC913A01FFFE0700913907F01F8F9139
-0FC007DF4AC66CB4FC023E6D5A4A130014FC495A4948147CA2495AA2010F15785CA3011F
-1570A46E91C7FCA2808014FE90380FFFE015FC6DEBFF8016E06D806D806D6C7F141F0203
-7FEC003FED07FF1501A281A282A212075A167E120EA2001E15FE5EA25E003E14015E003F
-14034B5A486C5C150F6D495A6D49C8FCD8F9F0137C39F8FE01F839F03FFFF0D8E00F13C0
-26C001FEC9FC314279BF33>I<48B9FCA25A903AFE001FF00101F89138E0007FD807E016
-3E49013F141E5B48C75BA2001E147FA2001C4B131C123C003814FFA2007892C7FC12704A
-153C00F01738485CC716001403A25DA21407A25DA2140FA25DA2141FA25DA2143FA25DA2
-147FA25DA214FFA292C9FCA25BA25CA21303A25CEB0FFE003FB67E5AA2383D71BC41>I<
-B500FE91387FFFE094B5FC19C00003018091380FFC0049C8EA07F000015F606095C7FC17
-0EA25F173C17386D5DA26C5E16015F4C5AA24CC8FC5E160E5E805E137F5E5EA24B5AA24B
-5A150793C9FCECC00EA2013F5B153C15385DA25D14C15DECC38014E302E7CAFCEB1FEF14
-EE14FCA25CA25CA25C5C130F5CA291CBFC130E3B406DBD44>86 D<277FFFFE01B500FC90
-B512E0B5FCA20003902680000790C7380FFC006C90C701FCEC07F049725A04035EA26350
-C7FCA20407150EA2040F5D1A3C041F153862163B6216734F5A6D14E303014B5A6C15C303
-034BC8FC1683DB0703140E191E030E151C61031C7F61ED380161157003F04A5A15E00201
-4B5A15C0DA03804AC9FC60DA0700140E60140E605C029C5D14B8D97FF85D5C715A5C4A5D
-A24A92CAFC5F91C7FC705A137E5F137C5F137801705D53406EBD5B>I<147E49B47E9039
-07C1C38090391F80EFC090383F00FF017E137F4914804848133F485AA248481400120F5B
-001F5C157E485AA215FE007F5C90C7FCA21401485C5AA21403EDF0385AA21407EDE07802
-0F1370127C021F13F0007E013F13E0003E137FECF3E1261F01E313C03A0F8781E3803A03
-FF00FF00D800FC133E252977A72E>97 D<EB1FC0EA0FFF5CA2EA003FA291C7FCA25BA213
-7EA213FEA25BA21201A25BA21203A25B147E3907F1FF809038F783E09038EF01F013FE39
-0FF800F8A24913FC49137C485A157E5B15FE123FA290C7FCA248130115FC127EA2140300
-FE14F85AA2EC07F0A215E048130F15C0141F15800078EB3F00127C147E003C5B383E01F8
-381E03E06C485A6CB4C7FCEA01F81F4076BE2A>I<EC1FC0ECFFF0903803F03C903807C0
-1E90381F800E90383F000F017E133F4913FF485A485A000714FE5B000F14FC48481300A2
-485AA3127F90C8FCA35A5AA6481403007E1407150F151E003E143C15786C14F0EC03E039
-0F800F803903E07E003801FFF838003FC0202977A72A>I<EE3F80ED1FFF1700A2ED007F
-A2167EA216FEA25EA21501A25EA21503A25EA21507A25E147E903801FF8F903807C1CF90
-391F80EFC090383F00FF017E137F5B48486D5A485AA2485A000F92C7FC5B001F5CA24848
-137EA215FE127F90C75AA214015A485CA2140316384814F0A21407167891380FE070127C
-021F13F0007E013F5B003E137FECF3E1261F01E35B3A0F8781E3802703FF00FFC7FCD800
-FC133E294077BE2E>I<EC3F80903801FFE0903807E0F890381F803CEB3E0001FC131E48
-5A485A12074848133E49133C121F4848137C15F8EC03F0397F000FE0ECFF809038FFFC00
-B512C048C8FCA45AA61506150E151E007C143C15786C14F0EC01E06CEB07C0390F801F00
-3807C0FC3801FFF038007F801F2976A72A>I<167C4BB4FC923807C78092380F83C0ED1F
-87161FED3F3FA2157EA21780EE0E004BC7FCA414015DA414035DA30103B512F8A3902600
-07E0C7FCA3140F5DA5141F5DA4143F92C8FCA45C147EA414FE5CA413015CA4495AA4495A
-A4495A121E127F5C12FF49C9FCA2EAFE1EEAF83C1270EA7878EA3FE0EA0F802A5383BF1C
->I<EC03F0EC0FFC91383E0E1C9138FC077E903901F003FE1303903807E001D90FC013FC
-EB1F80A2EB3F004914F8137E01FE1303A2484814F0A2150712034914E0A2150F12074914
-C0A2151FA216805B153F1203ED7F006D5BA200015B0000495A9038F80F7E90387C1EFEEB
-1FF8903807E0FC90C7FC1401A25DA21403A25D001C1307007F5C48130F5D4A5A4AC7FC48
-137E00F85B387C03F0381FFFC0D803FEC8FC273B7CA72A>I<EB01FC13FF5CA21303A25C
-A21307A25CA2130FA25CA2131FA25CA2133FA291C8FCEC03F890387F0FFE91383E0F80D9
-7E7813C0ECE007D9FFC013E014801400A2485A5BA25B0003140F16C05BA20007141F1680
-5BA2000F143F16005B5D001F147EEDFE074913FCA2003F0101130FEDF80E1300161E48EC
-F01CA2007E1538A200FE1570020013E048EC7FC00038EC1F0028407ABE2E>I<1478EB01
-FCA21303A314F8EB00E01400AD137C48B4FC38038F80EA0707000E13C0121E121CEA3C0F
-1238A2EA781F00701380A2EAF03F140012005B137E13FE5BA212015BA212035B14381207
-13E0000F1378EBC070A214F0EB80E0A2EB81C01383148038078700EA03FEEA00F8163E79
-BC1C>I<EB01FC13FF5CA21303A25CA21307A25CA2130FA25CA2131FA25CA2133FA291C8
-FCED03E049EB0FF8ED3C3C017EEB707CEDE1FC9038FE01C1EC03839038FC0703140E0001
-011C13F891383800E0494813001460000313E0EBF9C0EBF78001FEC8FC1207EBFFE0EBE7
-F8EBE0FE000F137F6E7EEBC01F81001F130F16701380A2003F15F0021F13E001001380A2
-48148116C0007EEB0F83168000FE14879138078F0048EB03FE0038EB00F826407ABE2A>
-107 D<EB07F0EA03FF14E0A2EA000FA214C0A2131FA21480A2133FA21400A25BA2137EA2
-13FEA25BA21201A25BA21203A25BA21207A25BA2120FA25BA2121FA25BA2123FA290C7FC
-A25A1307127EA2EAFE0F130E12FCA2131E131CA2EA7C381378EA3C70EA1FE0EA07801440
-79BE17>I<D801F0D93F80137F3D07FC01FFE003FFC03D0F3E07C1F80F83F03D0E1F0F00
-FC1E01F8001E011C90387C3800001C49D97E707F003C01F05C0038157F4A5C26783FC05C
-12704A91C7FC91C7127E00F003FE1301494A5CEA007EA20301140301FE5F495CA2030314
-07000160495C180F03075D0003051F13E0494A1480A2030FEC3F810007F001C0495CA203
-1F91383E0380120F494AEC0700A2033F150E001FEF1E1C4991C7EA0FF80007C7000EEC03
-E0432979A74A>I<D801F0EB3F803A07FC01FFE03A0F3E07C1F83A0E1F0F00FC001E011C
-137C001C49137E003C13F012385C38783FC012705C91C7FC00F015FE495CEA007EA21501
-01FE5C5BA2150300015D5B15075E0003020F13704914C0A2031F13F00007ED80E05B1681
-EE01C0120F49EC0380A2EE0700001FEC0F0E49EB07FC0007C7EA01F02C2979A733>I<EC
-1FC0ECFFF8903803F07C90380FC01FEB1F8090393F000F80017E14C0491307484814E048
-5A12075B000F15F0485AA2485AA2ED0FE0127F90C7FCA2151F4815C05AA2ED3F80A2ED7F
-00A248147E007C5C007E13015D4A5A003E495A6C495A4A5A260F803EC7FC3807C0FC3801
-FFF038003F80242977A72E>I<903903E001F890390FF807FE903A1E7C1E0F80903A1C3E
-3C07C0013C137801389038E003E0EB783F017001C013F0ED80019038F07F0001E015F814
-7E1603000113FEA2C75AA20101140717F05CA20103140F17E05CA20107EC1FC0A24A1480
-163F010F15005E167E5E131F4B5A6E485A4B5A90393FB80F80DA9C1FC7FCEC0FFCEC03E0
-49C9FCA2137EA213FEA25BA21201A25BA21203A2387FFFE0B5FCA22D3A80A72E>I<D801
-F013FC3A07FC07FF803A0F3E0F03C0260E1F1C13E0001EEB380F001C1370003CEBE01F12
-3814C0D8783F14C00070903880070092C7FC91C8FC12F05BEA007EA313FE5BA312015BA3
-12035BA312075BA3120F5BA3121F5B0007C9FC232979A726>114
-D<EC7F80903801FFE0903807C0F890381F003C013E131C013C131E017C133E49137E15FE
-A2000114FCA215706D13007FEBFFC014FC6C13FF15806D13C06D13E0010F13F01300140F
-14071403120C123F387F80011403D8FF0013E0A300FCEB07C000F0EB0F8012700078EB1F
-006C133C381F01F83807FFE0C690C7FC1F297AA725>I<EB01C0EB03F01307A25CA2130F
-A25CA2131FA25CA2133FA291C7FCA2007FB51280B6FC1500D8007EC7FC13FEA25BA21201
-A25BA21203A25BA21207A25BA2120FA25BA2121F141C1380A2003F133C1438EB00781470
-14F05C495AEA1F03495A6C48C7FCEA07FCEA01F0193A78B81E>I<137C48B4141C26038F
-80137EEA0707000E7F001E15FE121CD83C0F5C12381501EA781F007001805BA2D8F03F13
-03140000005D5B017E1307A201FE5C5B150F1201495CA2151F0003EDC1C0491481A2153F
-1683EE0380A2ED7F07000102FF13005C01F8EBDF0F00009038079F0E90397C0F0F1C9039
-1FFC07F8903907F001F02A2979A731>I<017CEB01C048B4EB07F038038F80EA0707000E
-01C013F8121E001C1403EA3C0F0038EC01F0A2D8781F130000705BA2EAF03F91C712E012
-005B017E130116C013FE5B1503000115805BA2ED07001203495B150EA25DA25D15780001
-14706D5B0000495A6D485AD97E0FC7FCEB1FFEEB03F0252979A72A>I<017C167048B491
-387001FC3A038F8001F8EA0707000E01C015FE001E1403001CEDF000EA3C0F0038177C15
-07D8781F4A133C00701380A2D8F03F130F020049133812005B017E011F14784C137013FE
-5B033F14F0000192C712E05BA2170100034A14C049137E17031880A2EF070015FE170E00
-010101141E01F86D131C0000D9039F5BD9FC076D5A903A3E0F07C1E0903A1FFC03FFC090
-2703F0007FC7FC372979A73C>I<903903F001F890390FFC07FE90393C1E0E0F9026780F
-1C138001F0EBB83FD801E013F89039C007F07FEA0380000714E0D9000F140048151C000E
-4AC7FCA2001E131FA2C75BA2143F92C8FCA35C147EA314FE4A131CA30101143C001E1538
-003F491378D87F811470018314F000FF5D9039077801C039FE0F7C033A7C0E3C07802778
-3C1E1EC7FC391FF80FFC3907E003F029297CA72A>I<137C48B4143826038F8013FCEA07
-07000E7F001E1401001C15F8EA3C0F12381503D8781F14F000701380A2D8F03F13070200
-13E012005B017E130F16C013FE5B151F1201491480A2153F000315005BA25D157EA315FE
-5D00011301EBF8030000130790387C1FF8EB3FF9EB07E1EB00035DA21407000E5CEA3F80
-007F495AA24A5AD8FF0090C7FC143E007C137E00705B387801F0383803E0381E0FC06CB4
-C8FCEA03F8263B79A72C>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fs cmtt10 10.95 75
-/Fs 75 125 df<903907C007C0A2496C487EA8011F131FA202C05BA3007FB7FCA2B81280
-A36C16006C5D3A007F807F80A2020090C7FCA9495BA2003F90B512FE4881B81280A36C16
-00A22701FC01FCC7FCA300031303A201F85BA76C486C5AA229387DB730>35
-D<1438147C14FCA4EB03FF011F13E090B512FC4880000780481580261FFEFD13C09039F0
-FC3FE0D83FC0131FD87F80EB0FF001001307007E15F800FE14035A1507A36CEC03F0A200
-7F91C7FC138013C0EA3FF0EA1FFE13FF6C13FF6C14E0000114F86C6C7F011F7F01037F01
-00148002FD13C09138FC7FE0151FED0FF015070018EC03F8127E1501B4FCA35AA26CEC03
-F07E01801307ED0FE0D83FC0131F01F0EB7FC0D81FFEB512806CB612006C5C6C5CC614F0
-013F13C0D907FEC7FCEB00FCA5147C143825477BBE30>I<141E147F14FF5BEB03FEEB07
-FCEB0FF0EB1FE0EB3FC0EB7F80EBFF00485A5B12035B485A120F5BA2485AA2123F5BA212
-7F90C7FCA412FEAD127FA47F123FA27F121FA26C7EA27F12076C7E7F12017F6C7EEB7F80
-EB3FC0EB1FE0EB0FF0EB07FCEB03FEEB01FF7F147F141E184771BE30>40
-D<127812FE7E7F6C7E6C7EEA0FF06C7E6C7E6C7E6C7EEB7F80133F14C0131FEB0FE014F0
-1307A2EB03F8A214FC1301A214FE1300A4147FAD14FEA4130114FCA2130314F8A2EB07F0
-A2130F14E0EB1FC0133F1480137FEBFF00485A485A485A485AEA3FE0485A485A90C7FC5A
-1278184778BE30>I<EA03E0EA0FF0EA1FF813FCEA3FFEA213FFA27EA27E1203EA007FA2
-137E13FEEA01FC1203EA07F8EA3FF0127FEAFFE0EA7F801300123C1019708B30>44
-D<007FB612F0A2B712F8A36C15F0A225077B9E30>I<120FEA3FC0EA7FE0A2EAFFF0A4EA
-7FE0A2EA3FC0EA0F000C0C6E8B30>I<16F01501ED03F8A21507A2ED0FF0A2ED1FE0A2ED
-3FC0A2ED7F80A2EDFF00A24A5AA25D1403A24A5AA24A5AA24A5AA24A5AA24A5AA24AC7FC
-A2495AA25C1303A2495AA2495AA2495AA2495AA2495AA249C8FCA2485AA25B1203A2485A
-A2485AA2485AA2485AA2485AA248C9FCA25AA2127CA225477BBE30>I<14FE903807FFC0
-497F013F13F8497F90B57E48EB83FF4848C6138049137F4848EB3FC04848EB1FE049130F
-001F15F0491307A24848EB03F8A290C712014815FCA400FEEC00FEAD6C14016C15FCA36D
-1303003F15F8A26D1307001F15F0A26D130F6C6CEB1FE0A26C6CEB3FC06C6CEB7F806D13
-FF2601FF8313006CEBFFFE6D5B6D5B010F13E06D5BD900FEC7FC273A7CB830>I<EB03C0
-497EA2130FA2131FA2133F137F13FF1203123FB5FCA213EF138FEA7E0F1200B3B0003FB5
-12F84814FCB612FEA26C14FC6C14F81F3977B830>I<EB07FC90383FFFC090B512F00003
-804814FE4880261FF80F1380263FE00113C09038C0007F4848EB3FE090C7121FED0FF048
-14075A6C15F81503A3127E1218C8FCA2150716F0150F16E0151F16C0153FED7F8015FF4A
-13005DEC07FC4A5A4A5A4A5A4A5A4A5A4990C7FC495A495AEB0FF0EB3FE0495A495A4890
-C8FC4848EB01F04848EB03F8485AEA1FE048B6FCB7FCA37E6C15F025397BB830>I<EB03
-FF013F13E090B512F84814FE4880481580260FFE0113C09038F0007F4848EB1FE0150F16
-F01507A26C5A6C5AC8FC150F16E0A2151FED3FC0157FEDFF8002071300903807FFFE495B
-5D8115FF6D1480D9000113C09138003FE0ED1FF0ED07F8150316FC150116FE1500A21218
-127EB4FCA2150116FC4814036C15F86C6C13076DEB1FF0D83FF0133F3A1FFE01FFE06CB6
-12C06C15806CECFE00C65C013F13F001031380273A7CB830>I<EC03FC4A7E140F141FA2
-143F147F157E14FEA2EB01FCEB03F8A2EB07F0A2EB0FE0EB1FC0A2EB3F80A2EB7F0013FE
-A2485A485AA2485AA2485A485AA2485AA248C7FC12FEB8FC1780A46C1600C8007EC7FCAA
-91387FFFFE91B6FCA46E5B29397DB830>I<000FB612804815C05AA316800180C8FCAEEB
-83FF019F13C090B512F015FC8181D9FE0313809039F0007FC049133F0180EB1FE06CC712
-0F000E15F0C81207A216F81503A31218127EA2B4FC150716F048140F6C15E06C141F6DEB
-3FC06D137F3A3FE001FF80261FFC0F13006CB55A6C5C6C5C6C14E06C6C1380D90FFCC7FC
-25397BB730>I<EC0FF8EC7FFF49B51280010714E0131F4914F090387FF80F9039FFC007
-F84813803803FE005B485A4848EB03F0ED01E0484890C7FC5B123F5BA2127FEB000C9038
-03FFE0010F13F8D8FF3F13FE48B6FCB7128016C09039FE007FE001F8EB1FF001E0130F49
-EB07F849EB03FCA290C7120116FE1500A37EA46C7E15016D14FC121F6D1303000FEC07F8
-6D130F6C6CEB1FF06DEB3FE03A03FF81FFC06C90B512806C15006D5B011F13F8010713E0
-01011380273A7CB830>I<127CB712FC16FEA416FC48C7EA0FF816F0ED1FE0007CEC3FC0
-C8EA7F80EDFF00A24A5A4A5A5D14075D140F5D4A5AA24A5AA24AC7FCA25C5C13015CA213
-035CA213075CA4495AA6131F5CA96D5A6DC8FC273A7CB830>I<49B4FC011F13F0017F13
-FC90B57E0003ECFF804815C048010113E03A1FF8003FF049131FD83FC0EB07F8A24848EB
-03FC90C71201A56D1303003F15F86D13076C6CEB0FF06C6CEB1FE0D807FCEB7FC03A03FF
-83FF806C90B512006C6C13FC011F13F0497F90B512FE48802607FE0013C0D80FF8EB3FE0
-D81FE0EB0FF04848EB07F8491303007F15FC90C712014815FE481400A66C14016C15FC6D
-1303003F15F86D1307D81FF0EB1FF06D133F3A0FFF01FFE06C90B512C06C1580C6ECFE00
-6D5B011F13F0010190C7FC273A7CB830>I<49B4FC010F13E0013F13F890B57E48804880
-48010113803A0FFC007FC0D81FF0EB3FE04848131F49EB0FF048481307A290C7EA03F85A
-4815FC1501A416FEA37E7E6D1303A26C6C13076C6C130F6D133FD80FFC13FF6CB6FC7E6C
-14FE6C14F9013FEBE1FC010F138190380060011400ED03F8A2150716F0150F000F15E048
-6C131F486CEB3FC0157FEDFF804A1300EC07FE391FF01FFC90B55A6C5C6C5C6C1480C649
-C7FCEB3FF0273A7CB830>I<120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F00C7
-FCAF120FEA3FC0EA7FE0A2EAFFF0A4EA7FE0A2EA3FC0EA0F000C276EA630>I<EA03C0EA
-0FF0EA1FF8A2EA3FFCA4EA1FF8A2EA0FF0EA03C0C7FCAFEA03C0EA0FF0121F13F8123F13
-FCA3121FA2120F12031200120113F8120313F01207EA1FE0123FEA7FC0EAFF80EA7F0012
-7E12380E3470A630>I<007FB7FCA2B81280A36C16006C5DCBFCA7003FB612FE4881B812
-80A36C1600A229157DA530>61 D<147F4A7EA2497FA4497F14F7A401077F14E3A3010F7F
-A314C1A2011F7FA490383F80FEA590387F007FA4498049133F90B6FCA34881A39038FC00
-1F00038149130FA4000781491307A2D87FFFEB7FFFB56CB51280A46C496C130029397DB8
-30>65 D<007FB512F0B612FE6F7E82826C813A03F8001FF815076F7E1501A26F7EA61501
-5EA24B5A1507ED1FF0ED7FE090B65A5E4BC7FC6F7E16E0829039F8000FF8ED03FC6F7E15
-00167FA3EE3F80A6167F1700A25E4B5A1503ED1FFC007FB6FCB75A5E16C05E6C02FCC7FC
-29387EB730>I<91387F803C903903FFF03E49EBFC7E011F13FE49EBFFFE5B9038FFE07F
-48EB801F3903FE000F484813075B48481303A2484813015B123F491300A2127F90C8FC16
-7C16005A5AAC7E7EA2167C6D14FE123FA27F121F6D13016C6C14FCA26C6CEB03F86D1307
-6C6CEB0FF03901FF801F6C9038E07FE06DB512C06D14806D1400010713FC6D13F0903800
-7FC0273A7CB830>I<003FB512E04814FCB67E6F7E6C816C813A03F8007FF0ED1FF8150F
-6F7E6F7E15016F7EA2EE7F80A2163F17C0161FA4EE0FE0AC161F17C0A3163F1780A2167F
-17005E4B5A15034B5A150F4B5AED7FF0003FB65A485DB75A93C7FC6C14FC6C14E02B387F
-B730>I<007FB7FCB81280A47ED803F8C7123FA8EE1F0093C7FCA4157C15FEA490B5FCA6
-EBF800A4157C92C8FCA5EE07C0EE0FE0A9007FB7FCB8FCA46C16C02B387EB730>I<003F
-B712804816C0B8FCA27E7ED801FCC7121FA8EE0F8093C7FCA5153E157FA490B6FCA69038
-FC007FA4153E92C8FCAE383FFFF8487FB5FCA27E6C5B2A387EB730>I<02FF13F00103EB
-C0F8010F13F1013F13FD4913FF90B6FC4813C1EC007F4848133F4848131F49130F485A49
-1307121F5B123F491303A2127F90C7FC6F5A92C8FC5A5AA892B5FC4A14805CA26C7F6C6D
-1400ED03F8A27F003F1407A27F121F6D130F120F7F6C6C131FA2D803FE133F6C6C137FEC
-C1FF6C90B5FC7F6D13FB010F13F30103EBC1F0010090C8FC293A7DB830>I<3B3FFF800F
-FFE0486D4813F0B56C4813F8A26C496C13F06C496C13E0D803F8C7EAFE00B290B6FCA601
-F8C7FCB3A23B3FFF800FFFE0486D4813F0B56C4813F8A26C496C13F06C496C13E02D387F
-B730>I<007FB6FCB71280A46C1500260007F0C7FCB3B3A8007FB6FCB71280A46C150021
-3879B730>I<49B512F04914F85BA27F6D14F090C7EAFE00B3B3123C127EB4FCA24A5A14
-03EB8007397FF01FF86CB55A5D6C5C00075C000149C7FC38003FF025397AB730>I<D83F
-FF90380FFF80486D4813C0B56C5AA26C497E6C496C1380D803F0903803F8004B5A4B5A15
-1F4B5A5E4BC7FC15FE14014A5A5D4A5A4A5A141F5D4A5A4AC8FC5C13F18101F37F13F790
-B57E14EFECC7F01483EC03F8140101FE7F496C7E5B157F497F82151F82150F826F7EA26F
-7E1501821500D83FFF903803FFC0486D4813E0B56C5AA26C497E6C496C13C02B387FB730
->I<383FFFF8487FB57EA26C5B6C5BD801FCC9FCB3B0EE0F80EE1FC0A9003FB7FC5AB8FC
-A27E6C16802A387EB730>I<D83FF8ECFFE0486C4913F0486C4913F8A2007F16F06C6C49
-13E00007160001EF14BFEC800FA39039E7C01F3FA4ECE03F01E3133EA2ECF07EA201E113
-7CA2ECF8FCA201E013F8A214FDEC7DF0A3147FEC3FE0A3EC1FC0A2EC070091C7FCADD83F
-FC903801FFE0486C4913F0B54913F8A26C486D13F06C486D13E02D387FB730>I<D83FFC
-90381FFF80486C4913C0B54913E0A26C6D6C13C06C6E13800003913801F800EBF7C0A3EB
-F3E0A314F013F1A214F8A213F014FCA2147C147EA2143E143FA2141FA21581A2140F15C1
-A2140715E1A2140315F1A21401A215F91400A3157DA3153FEA3FFF481380B5EAC01FA26C
-EB800F6C496C5A2B387EB730>I<90383FFFE048B512FC000714FF4815804815C04815E0
-EBF80001E0133FD87F80EB0FF0A290C71207A44815F8481403B3A96C1407A26C15F0A36D
-130FA26D131F6C6CEB3FE001F813FF90B6FC6C15C06C15806C1500000114FCD8003F13E0
-253A7BB830>I<007FB512F0B612FE6F7E16E0826C813903F8003FED0FFCED03FE15016F
-7EA2821780163FA6167F17005EA24B5A1503ED0FFCED3FF890B6FC5E5E16804BC7FC15F0
-01F8C9FCB0387FFFC0B57EA46C5B29387EB730>I<90383FFFE048B512FC000714FF4815
-804815C04815E0EBF80001E0133F4848EB1FF049130F90C71207A44815F8481403B3A814
-7E14FE6CEBFF076C15F0EC7F87A2EC3FC7018013CF9038C01FFFD83FE014E0EBF80F90B6
-FC6C15C06C15806C1500000114FCD8003F7FEB00016E7EA21680157F16C0153F16E0151F
-16F0150FED07E025467BB830>I<003FB57E4814F0B612FC15FF6C816C812603F8017F91
-38003FF0151F6F7E15071503821501A515035E1507150F4B5A153F4AB45A90B65A5E93C7
-FC5D8182D9F8007FED3FE0151F150F821507A817F8EEF1FCA53A3FFF8003FB4801C0EBFF
-F8B56C7E17F06C496C13E06C49EB7FC0C9EA1F002E397FB730>I<90390FF803C0D97FFF
-13E048B512C74814F74814FF5A381FF80F383FE001497E4848137F90C7123F5A48141FA2
-150FA37EED07C06C91C7FC7F7FEA3FF0EA1FFEEBFFF06C13FF6C14E0000114F86C80011F
-13FF01031480D9003F13C014019138007FE0151FED0FF0A2ED07F8A2007C140312FEA56C
-140716F07F6DEB0FE06D131F01F8EB3FC001FF13FF91B51280160000FD5CD8FC7F13F8D8
-F81F5BD878011380253A7BB830>I<003FB712C04816E0B8FCA43AFE003F800FA8007CED
-07C0C791C7FCB3B1011FB5FC4980A46D91C7FC2B387EB730>I<3B7FFFC007FFFCB56C48
-13FEA46C496C13FCD803F8C7EA3F80B3B16D147F00011600A36C6C14FE6D13016D5CEC80
-0390393FE00FF890391FF83FF06DB55A6D5C6D5C6D91C7FC9038007FFCEC1FF02F3980B7
-30>I<D87FFE90380FFFC0B54913E06E5AA24A7E6C486D13C0D807F0903801FC00A26D13
-0300035DA46C6C495AA46C6C495AA46D131F6D5CA3EC803F013F5CA46D6C48C7FCA49038
-0FE0FEA401075B14F1A301035BA314FB01015BA314FFA26D5BA46E5A6E5A2B397EB730>
-I<D83FFC903801FFE0486C4913F000FF16F8A2007F16F06C486D13E0D81FC09038001FC0
-000F1680A76D143F00071600A7000390380F803E9039F01FC07EEC3FE0A3EC7FF0A2147D
-0001157CA29039F8FDF8FCA314F8A300005D01F913FCA2ECF07CA201FD137DA2017D5CEC
-E03DA3017F133FA2ECC01FA2013F5CA2EC800F6D486C5A2D397FB730>I<3A3FFF01FFF8
-4801837F02C77FA202835B6C01015B3A01FC007F806D91C7FC00005C6D5BEB7F01EC81FC
-EB3F8314C3011F5B14E7010F5B14FF6D5BA26D5BA26D5BA26D90C8FCA4497FA2497FA281
-5B81EB0FE781EB1FC381EB3F8181EB7F0081497F49800001143F49800003141F49800007
-140FD87FFEEB7FFFB590B5128080A25C6C486D130029387DB730>I<D87FFF90381FFFC0
-B56C4813E0A46C496C13C0D803F8903803F8006D1307A26C6C495AA26C6C5C151F6D5CEC
-803F013F5CECC07F011F91C7FCA290380FE0FEA214F101075BA2903803FBF8A201015B14
-FF6D5BA26E5AA36E5AB1903803FFF8497F497FA26D5B6D5B2B387EB730>I<001FB612FC
-4815FE5AA490C7EA03FCED07F816F0150FED1FE016C0153FED7F80003E1500C85A4A5A5D
-14034A5A5D140F4A5A5D143F4A5A92C7FC5C495A5C1303495A5C130F495A5C133F495A91
-C8FC5B4848147C4914FE1203485A5B120F485A5B123F485A90B6FCB7FCA46C15FC27387C
-B730>I<007FB5FCB61280A4150048C8FCB3B3B3A5B6FC1580A46C140019476DBE30>I<00
-7FB5FCB61280A47EC7123FB3B3B3A5007FB5FCB6FCA46C140019477DBE30>93
-D<007FB612F0A2B712F8A36C15F0A225077B7D30>95 D<EB7FF80003B5FC4814C0488048
-8048809038E01FFC9038C003FE14016E7E6C487F6CC77FC8123FA491B5FC130F137F48B6
-FC12075A48EB803F383FF800EA7FE0138048C7FC5AA4157F7E6C6C13FFEBC003263FF01F
-EBFF8090B712C07E6C14EF000314876CD9FE01138026003FE0C8FC2A2A7BA830>97
-D<EA3FFC487E12FFA2127F123F1200AAEC03FE91381FFF80027F13E091B57E90B612FC82
-ECFE079138F001FF4A6C13804A137F4AEB3FC091C7121F17E049140FA217F01607A8160F
-A217E07F161F6EEB3FC0A26EEB7F806E13FFDAF00313009138FC0FFE91B55A5E495CD97E
-7F13C0D93C1F90C7FC90380003FC2C3980B730>I<ECFFE0010713FC011F7F017F7F90B6
-12804815C048EB807F3907FC003F485A485A49EB1F804848EB0F004990C7FC127F90C9FC
-A25A5AA87E7EA27F003FEC07C06DEB0FE06C7E6D131F6C6C14C0D807FE133F9039FFC0FF
-806C90B5FCC615006D5B011F13F801075B01011380232A7AA830>I<913801FFE04A7F5C
-A28080EC0007AAEB03FE90381FFF874913E790B6FC5A5A481303380FFC00D81FF0133F49
-131F485A150F4848130790C7FCA25AA25AA87E6C140FA27F003F141F6D133F6C7E6D137F
-390FF801FF2607FE07EBFFC06CB712E06C16F06C14F76D01C713E0011F010313C0D907FC
-C8FC2C397DB730>I<49B4FC010713E0011F13F8017F7F90B57E488048018113803A07FC
-007FC04848133FD81FE0EB1FE0150F484814F0491307127F90C7FCED03F85A5AB7FCA516
-F048C9FC7E7EA27F003FEC01F06DEB03F86C7E6C7E6D1307D807FEEB1FF03A03FFC07FE0
-6C90B5FC6C15C0013F14806DEBFE00010713F8010013C0252A7CA830>I<EDFF80020713
-E0021F13F05C4A13F891B5FC491387903803FE079138FC03F0903907F800C04A1300A800
-3FB612C04815E0B7FCA36C15C0260007F0C7FCB3A9003FB512FE4880B71280A26C15006C
-5C25397DB830>I<D903FC13FF90261FFF8713C04913DF90B712E05A5A2607FE07138F90
-3AF801FE07C048486C6CC7FCA2497F001F8149133FA56D137F000F92C7FC6D5BA26C6C48
-5AEBFE0790B55A5D485C15C001DF5BD9C3FCC8FC01C0C9FCA37F7F6CB512F015FF6C15C0
-4815F0488148813A3FE0001FFE0180130148C8127F007E8100FE168048151FA56C153F00
-7FED7F006D5C6C6C495A01F013076CB4EB7FFC6C90B55A6C5D000115C06C6C91C7FC011F
-13FC010113C02B3E7DA730>I<EA3FFC487E12FFA2127F123F1200AAEC01FE91380FFF80
-023F13E091B57E90B67EA29138FE07FCECF8039138E001FE14C0EC8000A291C7FCA25BB3
-A23B3FFFF81FFFF8486D4813FCB500FE14FEA26C01FC14FC6C496C13F82F3880B730>I<
-14E0EB03F8A2497EA36D5AA2EB00E091C8FCA9381FFFF8487F5AA27E7EEA0001B3A9003F
-B612C04815E0B7FCA27E6C15C023397AB830>I<EA7FF8487EA4127F1200AB0203B51280
-4A14C017E0A217C06E14809139001FE0004B5A4B5A4BC7FC4A5A4A5AEC0FF84A5A4A5A4A
-5A4A5A01FD7F90B57E8114F7ECE3F8ECC1FCEC81FEEC00FF497F496D7E6F7E826F7E1507
-6F7E6F7E3B7FFFF81FFFE0B56C4813F017F8A217F06C496C13E02D387FB730>107
-D<387FFFF8B57EA47EEA0001B3B3A8007FB612F0B712F8A46C15F025387BB730>I<02FC
-137E3B7FC3FF01FF80D8FFEF01877F90B500CF7F15DF92B57E6C010F13872607FE07EB03
-F801FC13FE9039F803FC01A201F013F8A301E013F0B3A23C7FFE0FFF07FF80B548018F13
-C0A46C486C01071380322881A730>I<EC01FE3A3FFC0FFF80267FFE3F13E000FF90B57E
-90B67E7E6C9038FE07FCC6EBF8039138E001FE14C0EC8000A291C7FCA25BB3A23B3FFFF8
-1FFFF8486D4813FCB500FE14FEA26C01FC14FC6C496C13F82F2880A730>I<49B4FC010F
-13E0013F13F8497F90B57E0003ECFF8014013A07FC007FC04848EB3FE0D81FE0EB0FF0A2
-4848EB07F8491303007F15FC90C71201A300FEEC00FEA86C14016C15FCA26D1303003F15
-F86D13076D130F6C6CEB1FF06C6CEB3FE06D137F3A07FF01FFC06C90B512806C15006C6C
-13FC6D5B010F13E0010190C7FC272A7CA830>I<EC03FE3A3FFC1FFF80267FFE7F13E000
-FF90B57E90B612FC6C816CEBFE07C69038F001FF4A6C13804A137F4AEB3FC091C7121F17
-E049140FA217F01607A8160FA217E07F161F6EEB3FC0A26EEB7F806E13FFDAF003130091
-38FC0FFE91B55A5E495C6E13C0021F90C7FCEC03FC91C9FCAD383FFFF8487FB57EA26C5B
-6C5B2C3C80A730>I<ED07F83A3FFF803FFF486DB51280B512C302CF14C06C13DF6C9038
-FFFC3FD8001F13E09238801F809238000F004A90C7FC5C5C5CA25CA45CAF003FB512FC48
-80B7FCA26C5C6C5C2A287EA730>114 D<90381FFC1E48B5129F000714FF5A5A5A387FF0
-07EB800100FEC7FC4880A46C143E007F91C7FC13E06CB4FC6C13FC6CEBFF806C14E00001
-14F86C6C7F01037F9038000FFF02001380007C147F00FEEC1FC0A2150F7EA27F151F6DEB
-3F806D137F9039FC03FF0090B6FC5D5D00FC14F0D8F83F13C026780FFEC7FC222A79A830
->I<EB0780497E131FA9003FB612E04815F0B7FCA36C15E026001FC0C7FCB216F8ED01FC
-A5ECE003010FEB07F814F09138FC1FF06DB512E06D14C016806D14009038007FFCEC1FF0
-26337EB130>I<D83FFCEB3FFC486C497E00FF14FFA2007F147F003F143F00001400B3A4
-1501A2150315076D130F903A7FC07FFFF891B612FC6D15FE7F6D4913FC6D9038F87FF801
-0001C0C7FC2F2880A630>I<3B3FFFC07FFF80486DB512C0B515E0A26C16C06C496C1380
-3B01F80003F000A26D130700005DA26D130F017E5CA2017F131F6D5CA2EC803F011F91C7
-FCA26E5A010F137EA2ECE0FE01075BA214F101035BA3903801FBF0A314FF6D5BA36E5A6E
-5A2B277EA630>I<3B3FFFC01FFFE0486D4813F0B515F8A26C16F06C496C13E0D807E0C7
-EA3F00A26D5C0003157EA56D14FE00015DEC0F80EC1FC0EC3FE0A33A00FC7FF1F8A2147D
-A2ECFDF9017C5C14F8A3017E13FBA290393FF07FE0A3ECE03FA2011F5C90390F800F802D
-277FA630>I<3A3FFF81FFFC4801C37FB580A26C5D6C01815BC648C66CC7FC137FEC80FE
-90383F81FC90381FC3F8EB0FE3ECE7F06DB45A6D5B7F6D5B92C8FC147E147F5C497F8190
-3803F7E0EB07E790380FE3F0ECC1F890381F81FC90383F80FE90387F007E017E137F01FE
-6D7E48486D7E267FFF80B5FCB500C1148014E3A214C16C0180140029277DA630>I<3B3F
-FFC07FFF80486DB512C0B515E0A26C16C06C496C13803B01FC0003F000A2000014076D5C
-137E150F017F5C7F151FD91F805BA214C0010F49C7FCA214E00107137EA2EB03F0157C15
-FCEB01F85DA2EB00F9ECFDF0147D147FA26E5AA36E5AA35DA2143F92C8FCA25C147EA200
-0F13FE486C5AEA3FC1EBC3F81387EB8FF0EBFFE06C5B5C6C90C9FC6C5AEA01F02B3C7EA6
-30>I<001FB612FC4815FE5AA316FC90C7EA0FF8ED1FF0ED3FE0ED7FC0EDFF80003E4913
-00C7485A4A5A4A5A4A5A4A5A4A5A4A5A4990C7FC495A495A495A495A495A495A4948133E
-4890C7127F485A485A485A485A485A48B7FCB8FCA46C15FE28277DA630>I<127CA212FE
-B3B3B3AD127CA207476CBE30>124 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Ft cmbx10 10.95 62
-/Ft 62 122 df<EDFFF8020F13FF027F8049B612E001079038C01FF090390FFE0007D91F
-F8497ED93FE0131F4948497E13FF5C5A91C7FCA2705A705AEE03C093C8FCA6EE03FCB8FC
-A50001903880001F160FB3AB007FD9FE03B512F0A534407EBF3A>12
-D<D80FC0EB1F80486CEB3FC0486CEB7FE0486CEBFFF0486C4813F8A301FE14FCA3007F7F
-003F147F001F143FD80FDEEB1FBCD8001EEB003CA2013E147C013C1478A2017C14F80178
-14F0A201F813014848EB03E0A24848EB07C04848EB0F804848EB1F00001F5C48C7127E00
-3E147C001C143826207DBE37>34 D<EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA313FEA3127F
-123F121FEA0FDEEA001EA2133E133CA2137C1378A213F8EA01F0A2EA03E0EA07C0EA0F80
-121FEA3F00121E120C0F2079BE1D>39 D<EC0780140F141FEC3E0014FE495A495A5C495A
-130F495A495AA249C7FC5B5B1201485AA212075BA2120F5B121FA3485AA4127F5BA512FF
-B0127FA57F123FA46C7EA3120F7F1207A27F1203A26C7E12007F7F6D7EA26D7E6D7E1307
-6D7E806D7E6D7E143EEC1F80140F1407195A77C329>I<127012F8127C7EEA3F806C7E6C
-7E12076C7E7F6C7E6C7EA2137F80133F806D7EA280130FA280130780A36D7EA4807FA515
-80B01500A55B5CA4495AA35C130F5CA2131F5CA2495A5C137F91C7FC13FEA2485A485A5B
-485A120F485A485A003EC8FC5A5A1270195A7AC329>I<EA0FC0EA1FE0EA3FF0EA7FF8EA
-FFFCA313FEA3127F123F121FEA0FDEEA001EA2133E133CA2137C1378A213F8EA01F0A2EA
-03E0EA07C0EA0F80121FEA3F00121E120C0F20798D1D>44 D<B612E0A91B097F9823>I<
-EA0FC0EA1FE0EA3FF0EA7FF8EAFFFCA6EA7FF8EA3FF0EA1FE0EA0FC00E0E798D1D>I<14
-0F143F5C495A130F48B5FCB6FCA313F7EAFE071200B3B3A8007FB612F0A5243C78BB34>
-49 D<903803FF80013F13F890B512FE00036E7E4881260FF80F7F261FC0037F4848C67F
-486C6D7E6D6D7E487E6D6D7EA26F1380A46C5A6C5A6C5A0007C7FCC8FC4B1300A25E153F
-5E4B5AA24B5A5E4A5B4A5B4A48C7FC5D4A5AEC1FE04A5A4A5A9139FF000F80EB01FC495A
-4948EB1F00495AEB1F8049C7FC017E5C5B48B7FC485D5A5A5A5A5AB7FC5EA4293C7BBB34
->I<903801FFE0010F13FE013F6D7E90B612E04801817F3A03FC007FF8D807F06D7E82D8
-0FFC131F6D80121F7FA56C5A5E6C48133FD801F05CC8FC4B5A5E4B5A4A5B020F5B902607
-FFFEC7FC15F815FEEDFFC0D9000113F06E6C7E6F7E6F7E6F7E1780A26F13C0A217E0EA0F
-C0487E487E487E487EA317C0A25D491580127F49491300D83FC0495A6C6C495A3A0FFE01
-FFF86CB65A6C5DC61580013F49C7FC010313E02B3D7CBB34>I<ED01F815031507A2150F
-151F153FA2157F15FF5C5CA25C5CEC1FBFEC3F3F143E147C14FCEB01F814F0EB03E01307
-EB0FC0EB1F801400133E137E5B485A5B485A1207485A5B48C7FC5A127E5AB812F8A5C838
-7FF800AA49B612F8A52D3C7DBB34>I<00071538D80FE0EB01F801FE133F90B6FC5E5E5E
-5E93C7FC5D15F85D15C04AC8FC0180C9FCA9ECFFC0018713FC019F13FF90B67E020113E0
-9039F8007FF0496D7E01C06D7E5B6CC77FC8120F82A31780A21207EA1FC0487E487E12FF
-7FA21700A25B4B5A6C5A01805C6CC7123F6D495AD81FE0495A260FFC075B6CB65A6C92C7
-FCC614FC013F13F0010790C8FC293D7BBB34>I<EC07FF023F13C049B512F001078049EB
-03FC90383FF80090397FE001FE9038FFC0034849487E48495AA2485A120FA2485A6F5A00
-3F6E5A6F5A92C8FC485AA21402EC3FFE00FF496C7E01F9B512E001FB809138E03FF89039
-FF800FFC4A6C7E825B6F13804915C0A317E05BA4127FA5123FA26D15C0121FA2000F4A13
-806D150012076C6C495A6C6D485A6C9038E07FF86DB55A6D5C6D1480010749C7FC010013
-F02B3D7CBB34>I<121F7F13F890B712F0A45A17E017C0178017005E5E5A007EC7EA01F8
-4B5A007C4A5A4B5A4B5A93C7FC485C157E5DC7485A4A5AA24A5A140F5D141F143F5D147F
-A214FF92C8FC5BA25BA3495AA3130FA5131FAA6D5A6D5A6D5A2C3F7ABD34>I<ECFFF001
-0713FE011F6D7E017F14E09039FFC07FF03A01FE001FF848486D7E48486D7E1503485A82
-81121FA27F7F7F6D5B02C05B14F06C6D485A9138FE0FF89138FF9FF06CECFFE06C5D5E6C
-92C7FC6C816D14E0011F80498090B67E48812607FE3F7F48486C1480381FF807D9F00114
-C048486C7E007F8049010F13E0150348487F81167FA2163FA36D15C0127FEE7F807F6C6C
-ECFF006C6C5B01FEEB07FE3A0FFFC03FFC6C90B55A000115E06C6C5C011F49C7FC010113
-F02B3D7CBB34>I<903801FFE0010F13FC013F13FF90B612C04801E07F489038003FF048
-486D7E000F6E7E485A6F7E123F48488081178012FFA217C0A517E0A4007F5CA4003F5C6C
-7E5D6C7E00075C3903FF80FB6C13FF6C6C13F36D13C3010F018313C090380008031400A2
-4B1380EA03F0487E486C1500487E4B5AA25E151F4B5A495C6C48EBFFE049485B2607FC0F
-5B6CB6C7FC6C14FC6C14F06D13C0D90FFEC8FC2B3D7CBB34>I<EA0FC0EA1FE0EA3FF0EA
-7FF8EAFFFCA6EA7FF8EA3FF0EA1FE0EA0FC0C7FCACEA0FC0EA1FE0EA3FF0EA7FF8EAFFFC
-A6EA7FF8EA3FF0EA1FE0EA0FC00E2879A71D>I<90381FFF8090B512F0000314FC000F14
-FF261FF8071380263FC00113C0018014E0486C7E486C14F07FA56C5A4A13E0EA3FC0260F
-000313C0C714804A13004A5A4A5A15F04A5A4A5A5D92C7FC14FE5C13015CA25CAA90C9FC
-A8EB03F0497E497E497E497EA66D5A6D5A6D5A6D5A24407ABF31>63
-D<16FCA24B7EA24B7EA34B7FA24B7FA34B7FA24B7FA34B7F157C03FC7FEDF87FA2020180
-EDF03F0203804B7E02078115C082020F814B7E021F811500824A81023E7F027E81027C7F
-A202FC814A147F49B77EA34982A2D907E0C7001F7F4A80010F835C83011F8391C87E4983
-133E83017E83017C81B500FC91B612FCA5463F7CBE4F>65 D<B812F8EFFF8018F018FC84
-26003FFCC7EA3FFF050F13807113C07113E08319F0A27113F8A719F05FA24D13E019C04D
-13804D1300EF3FFE933801FFF891B712E0188018F818FE02FCC7380FFF80050313C07113
-E07113F019F8F07FFCA2F03FFEA219FFA38460A419FE187FA2F0FFFC4D13F85F4D13F005
-3F13E0BA12C0190018FC18F095C7FC403E7DBD4A>I<922607FFC0130E92B500FC131E02
-0702FF133E023FEDC07E91B7EAE1FE01039138803FFB499039F80003FF4901C01300013F
-90C8127F4948151FD9FFF8150F48491507485B4A1503481701485B18004890CAFC197E5A
-5B193E127FA349170012FFAC127F7F193EA2123FA27F6C187E197C6C7F19FC6C6D16F86C
-6D150119F06C6D15036C6DED07E0D97FFEED0FC06D6CED3F80010F01C0ECFF006D01F8EB
-03FE6D9039FF801FFC010091B55A023F15E002071580020002FCC7FC030713C03F407ABE
-4C>I<B812F8EFFF8018F018FC18FF26003FFCC76C13C005077F05017F716C7E727E727E
-727E721380A27213C0A27213E0A21AF084A21AF8A41AFCA5197FA319FFA51AF8A41AF0A2
-601AE0A24E13C0A24E13804E1300604E5A4E5A4D485A050713E0057F5BBA5A4EC7FC18F8
-18C005F8C8FC463E7DBD50>I<BAFCA4198026003FFEC7123F1707170183183FA2181FF0
-0FC0A31807EE07C0A3F003E0A3160F95C7FC161F163F16FF91B6FCA54AC6FC163F161F04
-0F147CA2160719F8A593C71201A219F01803A21807A2180FF01FE0183F18FF1703173FBA
-FCA219C0A33E3D7DBC45>I<B912FEA48426003FFEC77E170F1703170084A284F01F80A3
-180FA2EE07C0A2F007C0A4040F90C7FCA2161F163F16FF91B6FCA54AC6FC163F161F160F
-A21607A693C9FCACB712E0A53A3D7DBC42>I<B7D8803FB612E0A526003FFEC8000FEB80
-00B3A491B9FCA54AC8120FB3A7B7D8803FB612E0A54B3E7DBD52>72
-D<B71280A526003FFEC7FCB3B3B0B71280A5213E7DBD28>I<B712E0A526003FFEC9FCB3
-AD183EA4187E187CA418FCA21701A2EF03F8A21707170F171F177FEE01FF160FB9FC18F0
-A4373E7DBD3F>76 D<B6051FB512C06F5EA26F5EA2D8003F97C7FC6F16F7A26E6CED01E7
-A26E6CED03C7A36E6CED0787A26E6CED0F07A26E6C151EA36E6D143CA26E6D1478A26E6D
-14F0A26F6CEB01E0A36F6CEB03C0A26F6CEB0780A26F6CEB0F00A36F6C131EA26F6D5AA2
-6F6D5AA26F6D5AA393387FF1E0A293383FFBC0A270B45AA37090C7FCA2705AA2705AB600
-C0031FB612C0A2705AA2705A5A3E7CBD63>I<B6037FB512E0A2818181D8003F6D913900
-1F800081A281816E7E6E7F6E7F80826E7F6E7F6E7F6E7F157F826F7F6F7F6F7F6F7F8183
-6F7F6F7F707E701380A27013C07013E07013F07013F87013FCA27013FEEF7FFF71139F71
-13DF8319FF8383838384A28484848484A284B600C080197F193F191FA24B3E7DBD52>I<
-ED3FFF0203B512F0021F14FE027F6E7E902701FFF80713E00107D9C00013F84990C7EA3F
-FCD93FFCEC0FFF49486E7F49486E7F48496E7F4A80488448496F7EA24890C96C7E4884A2
-49161F003F84A34848701380A400FF19C0AD007F19806D5EA3003F1900A26D5E6C60A26C
-6D4B5AA26C6D4B5A6C6D4A5BA26C6D4A5B6C6D4A5B6D6C4A5B6DB4023F90C7FC6D01C0EB
-FFFE0107D9F80713F8010190B612E06D5E021F4AC8FC020314F0DA003F90C9FC42407ABE
-4F>I<B812F017FF18C018F018FC26003FFCC77FEF1FFF7113807113C07113E0A27113F0
-A319F8A819F0A34D13E019C05F4D1380053F1300EFFFFE91B712F860188005FCC7FC4ACA
-FCB3A4B77EA53D3E7DBD47>I<B87E17FCEFFF8018F08428003FFC000113FE9338003FFF
-050F7F717F717FA2858385A761A25F61614D5B4D90C8FCEF3FFE4CB45A91B712F018C04D
-C9FC717E9126FC000F7F040113F0707F717EA2717EA2717EA685A6F207C019C0A271140F
-07E01380B76DEBF01F719038FC3F007190B5FC716C5B061F13F8CB000113E04A3F7DBD4E
->82 D<903A03FFC001C0011FEBF803017FEBFE0748B6128F4815DF48010013FFD80FF813
-0F48481303497F4848EB007F127F49143F161F12FF160FA27F1607A27F7F01FC91C7FCEB
-FF806C13F8ECFFC06C14FCEDFF806C15E016F86C816C816C816C16806C6C15C07F010715
-E0EB007F020714F0EC003F1503030013F8167F163F127800F8151FA2160FA27EA217F07E
-161F6C16E06D143F01E015C001F8EC7F8001FEEB01FF9026FFE00713004890B55A486C14
-F8D8F81F5CD8F00314C027E0003FFEC7FC2D407ABE3A>I<003FB912FCA5903BFE003FFE
-003FD87FF0EE0FFE01C0160349160190C71500197E127EA2007C183EA400FC183F48181F
-A5C81600B3AF010FB712F8A5403D7CBC49>I<B76C90B61280A526003FFEC9003EC7FCB3
-B3A4197E011F177C80A26D17FC616D6D14014E5A6D6D4A5A6D6D140F6D01F8EC3FC0DA7F
-FEECFF8091273FFFC00F90C8FC020F90B512FC02035D020015E0031F1480030101F8C9FC
-493F7DBD50>I<B600FC020FB512C0A5C66C48C9381F8000013F95C7FC80616D173E6F15
-7E6D177C6F15FC6D5F8118016D6D5D18036D5F6F14076D5F6F140F027F5E81181F023F93
-C8FC6F5C6E153E70137E6E157C8218FC6E6D5B17016E5DEEF0036E5DEEF8076E5D16FC17
-0F037F5CEEFE1F033F91C9FC705A6F133E17BE17FE6F5BA26F5BA26F5BA26F5BA36F5BA2
-705AA270CAFCA24A3F7EBD4F>I<B6D8FC03B600F090B512FEA5C601FCC7000301F0C8EA
-7E00017F6F177C856E6E17FC013F63856D6C037F4B5AA26F4A6C14036D634D7F6F18076D
-634D806F02EF150F6D636F01076E131F6D04C793C7FC050F806F02835D6D1A3E051F806F
-0201157E027F197C6F013F6E13FC023FDA3E005D057E806F017C017F13016E6105FC14FE
-7048013F13036E6104C1EDFF076E4A6D5C04C31687DCE3E06D138F6E6104E716CFDCF7C0
-6D13DF6E96C8FC04FF16FF6E4A6D5BA294C77E6F5FA24C80033F5FA26F486F5AA24C153F
-030F5FA24C151F03075FA26F486F5A673F7EBD6C>I<017014E001F8EB01F00001140348
-48EB07E04914C04848EB0F804848EB1F0048C7123EA2003E5C003C1478A2007C14F80078
-5CA200F81301485CA2D8F7E0EBEFC0D8FFF0EBFFE001F814F001FC14F801FE14FCA3007F
-7FA36C48EB7FF86C48EB3FF06C48EB1FE06C48EB0FC0262073BE37>92
-D<903807FFC0013F13F848B6FC48812607FE037F260FF8007F6DEB3FF0486C806F7EA36F
-7EA26C5A6C5AEA01E0C8FC153F91B5FC130F137F3901FFFE0F4813E0000F1380381FFE00
-485A5B485A12FF5BA4151F7F007F143F6D90387BFF806C6C01FB13FE391FFF07F36CEBFF
-E100031480C6EC003FD91FF890C7FC2F2B7DA933>97 D<13FFB5FCA512077EAFEDFFE002
-0713FC021FEBFF80027F80DAFF8113F09139FC003FF802F06D7E4A6D7E4A13074A807013
-80A218C082A318E0AA18C0A25E1880A218005E6E5C6E495A6E495A02FCEB7FF0903AFCFF
-01FFE0496CB55AD9F01F91C7FCD9E00713FCC7000113C033407DBE3A>I<EC7FF00107B5
-FC011F14C0017F14E09039FFF01FF0489038800FF848EB001F4848EB3FFC120F485AA248
-5AA2007FEC1FF849EB0FF0ED03C000FF91C7FCAB127F7FA3003F153E7F001F157E6C6C14
-7C6C6C14FC91388001F86C9038C003F0C69038F81FE06DB512C0011F14800107EBFE0090
-38007FF0272B7DA92E>I<EE07F8ED07FFA5ED003F161FAFEC7FF0903807FFFE011FEBFF
-9F017F14DF9039FFF01FFF48EBC00348EB00014848EB007F485A001F153F5B123FA2127F
-5BA212FFAA127FA37F123FA26C6C147F120F6D14FF6C6C01037F6C6D48EBFFE06CEBF03F
-6C6CB512BF6D143F010713FC010001E0EBE00033407DBE3A>I<ECFFF0010713FE011F6D
-7E017F809039FFE07FE0489038801FF048496C7E48486D7E48486D7E121F491301003F81
-A2485A6F1380A212FFA290B7FCA401F0C9FCA5127FA27F123FEE0F806C7E161F6C6C1500
-6C6C5C6C6D137E6C9038E001FC6C9038F80FF8013FB55A6D14C0010391C7FC9038007FF8
-292B7DA930>I<EC07FE91387FFF8049B512C0010714E090390FFE3FF0EB1FF090393FE0
-7FF8EB7FC013FF1480A2489038003FF0ED1FE0ED0FC092C7FCAAB612E0A500010180C7FC
-B3AC007FEBFF80A525407DBF20>I<903A03FF8007F0013F9038F83FF8499038FCFFFC48
-B712FE48018313F93A07FC007FC34848EB3FE1001FEDF1FC4990381FF0F81700003F81A7
-001F5DA26D133F000F5D6C6C495A3A03FF83FF8091B5C7FC4814FC01BF5BD80F03138090
-CAFCA2487EA27F13F06CB6FC16F016FC6C15FF17806C16C06C16E01207001F16F0393FE0
-00034848EB003F49EC1FF800FF150F90C81207A56C6CEC0FF06D141F003F16E001F0147F
-D81FFC903801FFC02707FF800F13006C90B55AC615F8013F14E0010101FCC7FC2F3D7DA8
-34>I<13FFB5FCA512077EAFED1FF8EDFFFE02036D7E4A80DA0FE07F91381F007F023C80
-5C4A6D7E5CA25CA35CB3A4B5D8FE0FB512E0A5333F7CBE3A>I<EA01F8487E487E487E48
-1380A66C13006C5A6C5A6C5AC8FCA913FFB5FCA512077EB3ABB512F8A515407CBF1D>I<
-13FFB5FCA512077EB092380FFFFEA5DB01FEC7FC4B5AED07F0ED1FE04B5A4B5A4BC8FCEC
-03FC4A5A4A5A141F4A7EECFFFCA2818102E77F02C37F148102007F826F7E6F7E151F6F7E
-826F7F6F7F816F7FB5D8FC07EBFFC0A5323F7DBE37>107 D<13FFB5FCA512077EB3B3AF
-B512FCA5163F7CBE1D>I<01FFD91FF8ECFFC0B590B5010713F80203DAC01F13FE4A6E48
-7FDA0FE09026F07F077F91261F003FEBF8010007013EDAF9F0806C0178ECFBC04A6DB448
-6C7FA24A92C7FC4A5CA34A5CB3A4B5D8FE07B5D8F03FEBFF80A551297CA858>I<01FFEB
-1FF8B5EBFFFE02036D7E4A80DA0FE07F91381F007F0007013C806C5B4A6D7E5CA25CA35C
-B3A4B5D8FE0FB512E0A533297CA83A>I<EC7FF0903803FFFE011FEBFFC0017F14F09039
-FFE03FF8489038800FFC3A03FE0003FE48486D7E000F168048486D13C0A2003F16E04914
-7F007F16F0A400FF16F8AA007F16F0A46C6CECFFE0A2001F16C06C6C491380A26C6C4913
-003A03FF800FFE6C9038E03FFC6C6CB512F0011F14C0010791C7FC9038007FF02D2B7DA9
-34>I<01FFEBFFE0B5000713FC021FEBFF80027F80DAFF8113F09139FC007FF8000701F0
-6D7E6C496D7E4A130F4A6D7E1880A27013C0A38218E0AA4C13C0A318805E18005E6E5C6E
-495A6E495A02FCEBFFF0DAFF035B92B55A029F91C7FC028713FC028113C00280C9FCACB5
-12FEA5333B7DA83A>I<3901FE01FE00FF903807FF804A13E04A13F0EC3F1F91387C3FF8
-000713F8000313F0EBFFE0A29138C01FF0ED0FE091388007C092C7FCA391C8FCB3A2B6FC
-A525297DA82B>114 D<90383FFC1E48B512BE000714FE5A381FF00F383F800148C7FC00
-7E147EA200FE143EA27E7F6D90C7FC13F8EBFFE06C13FF15C06C14F06C806C806C806C80
-C61580131F1300020713C014000078147F00F8143F151F7EA27E16806C143F6D140001E0
-13FF9038F803FE90B55A15F0D8F87F13C026E00FFEC7FC222B7DA929>I<EB07C0A5130F
-A4131FA3133F137FA213FF5A1207001FEBFFFEB6FCA40001EBC000B3151FA96CEBE03EA2
-017F137EECF8FC90383FFFF86D13F0010713E001001380203B7EB929>I<D9FF80EB0FF8
-B5EB0FFFA50007EC007F6C153FB3A5167FA316FF6C5C4B7F6C903AC007DFFFE09138F01F
-9F6DB5121F6D13FE010F13F8010101E0EBE000332A7CA83A>I<B500FC90383FFFC0A500
-0101C0903803E0006E1307A26C5E6E130F017F5D6E131F013F92C7FC6E5B011F143E6E13
-7E010F147C6E13FCA26D5C15816D5C15C36D5C15E76D5C15FF6E5BA36E90C8FCA26E5AA2
-6E5AA26E5AA26E5AA232287EA737>I<B53CFC3FFFFC03FFFEA50003D980009039C0000F
-806E161F6C037F15006E496C5B6C183E836E48157E017F177C6E486D13FC013F02EF5C83
-DAFC071401011F02C75CDAFE0FEBFE03010F02835C17FFDAFF1F14076D02015C03BF148F
-6DD9BE005C18CF03FE14DF6D49017F90C7FC18FF6D496D5AA36E486D5AA26E486D5AA36E
-486D5AA26E486D5A47287EA74C>I<B5D8FC03B51280A5C69026E0007FC7FC6E13FE6D6C
-5B6D6C485A6D6C485A010F13076D6C485AED9FC06DEBFF806D91C8FC6D5B6E5AA2143F6E
-7E140F814A7F4A7F4A7F02FE7F903801FC7F49486C7E02F07F49486C7E49486C7E011F7F
-49486C7FD97F008001FE6D7FB5D8C007EBFFC0A532287EA737>I<B500FC90383FFFC0A5
-000101C0903803E0006E1307A26C5E6E130F017F5D6E131F013F92C7FC6E5B011F143E6E
-137E010F147C6E13FCA26D5C15816D5C15C36D5C15E76D5C15FF6E5BA36E90C8FCA26E5A
-A26E5AA26E5AA26E5AA35D14075D000E130FD83F805B387FC01FD8FFE090C9FC5C143E14
-7E5CEBC1F8387FC3F0387E0FE06CB45A6C5B6C48CAFCEA03F8323B7EA737>I
-E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fu cmbx12 14.4 43
-/Fu 43 121 df<157815FC14031407141F14FF130F0007B5FCB6FCA2147F13F0EAF800C7
-FCB3B3B3A6007FB712FEA52F4E76CD43>49 D<EC3FFE0103B512E0010F14FC013F14FF90
-B712C048D9C07F7F2703FE000F13F8D807F801037FD80FE06D7F48486D7F48488001F016
-80486C6E13C07F486C6E13E07FA27013F0A56C5AA26C5AEA0FF0EA03C0C914E05EA218C0
-5E1880A24C13005F4C5A4B5B5F4B5B5F4B5B4B90C7FC4B5A5E4B5AED7FE04B5A4A5B4A48
-C8FC4A5A5D4A48EB01F04A5AEC3F804AC7FC02FEEC03E0495A495A495A495AD91F801407
-49C8FC013E150F017FB7FC90B812C05A5A5A5A5A5A5AB9FC1880A4344E79CD43>I<9138
-0FFFC091B512FC0107ECFF80011F15E090263FF8077F9026FF800113FC4848C76C7ED803
-F86E7E491680D807FC8048B416C080486D15E0A4805CA36C17C06C5B6C90C75AD801FC16
-80C9FC4C13005FA24C5A4B5B4B5B4B13C04B5BDBFFFEC7FC91B512F816E016FCEEFF80DA
-000713E0030113F89238007FFE707E7013807013C018E07013F0A218F8A27013FCA218FE
-A2EA03E0EA0FF8487E487E487EB57EA318FCA25E18F891C7FC6C17F0495C6C4816E001F0
-4A13C06C484A1380D80FF84A13006CB44A5A6CD9F0075BC690B612F06D5D011F15800103
-02FCC7FCD9001F1380374F7ACD43>I<177C17FEA2160116031607160FA2161F163F167F
-A216FF5D5DA25D5DED1FBFED3F3F153E157C15FCEC01F815F0EC03E01407EC0FC01580EC
-1F005C147E147C5C1301495A495A5C495A131F49C7FC133E5B13FC485A5B485A1207485A
-485A90C8FC123E127E5ABA12C0A5C96C48C7FCAF020FB712C0A53A4F7CCE43>I<D80380
-150ED807E0157E01FEEC03FED9FFF0137F91B65A5F5F5F5F5F94C7FC5E5E16F016C093C8
-FC15F801E190C9FC01E0CAFCABEC0FFF027F13F001E3B512FE01E76E7E9026FFF8077FDA
-C0017F49C713F8496E7E49143F4981496E7E6C481680C9FC18C08218E0A418F0A3EA0FE0
-487E487E487E487EA418E0A35B6C484A13C05B491680003EC85A003F17006C6C4A5A6D5D
-6C6C4A5AD807F8495BD803FE01075B2701FFC03F5B6C90B65A013F4AC7FC6D14F8010314
-C09026007FF8C8FC344F79CD43>I<ED0FFF92B512E0020780021F14FC91397FFE03FE90
-3A01FFF0007F4901C0EB3F804990C7121F4948EC7FC0494814FF49484913E049485B01FF
-5C485BA2485B5AA2486F13C04A6D1380486F1300177E94C7FC5AA291CAFC5AA215089138
-01FFF8020713FFB54814C04A14F04AC66C7E023C6D7E4A6D7E4A6D7E7013804A15C0A24A
-15E07013F05C18F8A491C714FCA37EA67EA46C17F880A27E18F06C5D18E06C6D15C07E6E
-4913806C6D15006D6C495A6D6CEB7FFC6DB448485A6D90B55A010315C0010092C7FC023F
-13FC020713C0364F7ACD43>I<121F7F7FEBFF8091B81280A45A1900606060A260606048
-5F0180C86CC7FC007EC95A4C5A007C4B5A5F4C5A160F4C5A484B5A4C5A94C8FC16FEC812
-014B5A5E4B5A150F4B5AA24B5AA24B5A15FFA24A90C9FCA25C5D1407A2140FA25D141FA2
-143FA4147F5DA314FFA55BAC6D5BA2EC3FC06E5A395279D043>I<913807FFC0027F13FC
-0103B67E010F15E090261FFC0113F8903A3FE0003FFCD97F80EB0FFE49C76C7E48488048
-486E1380000717C04980120F18E0177FA2121F7FA27F7F6E14FF02E015C014F802FE4913
-806C7FDBC00313009238F007FE6C02F85B9238FE1FF86C9138FFBFF06CEDFFE017806C4B
-C7FC6D806D81010F15E06D81010115FC010781011F81491680EBFFE748018115C048D900
-7F14E04848011F14F048487F48481303030014F8484880161F4848020713FC1601824848
-157F173FA2171FA2170FA218F8A27F007F17F06D151FA26C6CED3FE0001F17C06D157F6C
-6CEDFF806C6C6C010313006C01E0EB0FFE6C01FCEBFFFC6C6CB612F06D5D010F15800101
-02FCC7FCD9000F13C0364F7ACD43>I<91380FFF8091B512F8010314FE010F6E7E490103
-7F90267FF8007F4948EB3FF048496D7E484980486F7E484980824817805A91C714C05A70
-13E0A218F0B5FCA318F8A618FCA46C5DA37EA25E6C7F6C5DA26C5D6C7F6C6D137B6C6D13
-F390387FF803011FB512E36D14C30103028313F89039007FFE03EC00401500A218F05EA3
-D801F816E0487E486C16C0487E486D491380A218005E5F4C5A91C7FC6C484A5A494A5A49
-495B6C48495BD803FC010F5B9027FF807FFEC7FC6C90B55A6C6C14F06D14C0010F49C8FC
-010013F0364F7ACD43>I<91B5FC010F14F8017F14FF90B712C00003D9C00F7F2707FC00
-017FD80FE06D7F48486E7E48C87FD87FE06E7E7F7F486C1680A66C5A18006C485C6C5AC9
-485A5F4B5B4B5B4B5B4B5B4B90C7FC16FC4B5A4B5A16C04B5A93C8FC4A5A5D14035D5D14
-075DA25D140FA25DAB91CAFCAAEC1FC04A7EECFFF8497FA2497FA76D5BA26D5BEC3FE06E
-5A315479D340>63 D<171F4D7E4D7EA24D7EA34C7FA24C7FA34C7FA34C7FA24C7FA34C80
-83047F80167E8304FE804C7E03018116F8830303814C7E03078116E083030F814C7E031F
-81168083033F8293C77E4B82157E8403FE824B800201835D840203834B800207835D844A
-B87EA24A83A3DA3F80C88092C97E4A84A2027E8202FE844A82010185A24A820103854A82
-010785A24A82010F855C011F717FEBFFFCB600F8020FB712E0A55B547BD366>65
-D<932601FFFCEC01C0047FD9FFC013030307B600F81307033F03FE131F92B8EA803F0203
-DAE003EBC07F020F01FCC7383FF0FF023F01E0EC0FF94A01800203B5FC494848C9FC4901
-F8824949824949824949824949824990CA7E494883A2484983485B1B7F485B481A3FA248
-49181FA3485B1B0FA25AA298C7FC5CA2B5FCAE7EA280A2F307C07EA36C7FA21B0F6C6D19
-80A26C1A1F6C7F1C006C6D606C6D187EA26D6C606D6D4C5A6D6D16036D6D4C5A6D6D4C5A
-6D01FC4C5A6D6DEE7F806D6C6C6C4BC7FC6E01E0EC07FE020F01FEEC1FF80203903AFFE0
-01FFF0020091B612C0033F93C8FC030715FCDB007F14E0040101FCC9FC525479D261>67
-D<BA7E19FCF1FF801AF01AFCD8000701F0C7000F13FF060014C0071F7F070713F807017F
-737F747E747F747F86747F747F8886888688A2757EA31D8087A21DC0A51DE0A387A963A3
-1DC0A51D80A2631D00A3515AA2646264505B6264505B505B5090C7FCF2FFFE4F5B07075B
-071F5B96B512C0060F91C8FCBB5A1AF01AC007FCC9FC19805B527CD167>I<BC1280A5D8
-000701F8C7000114C0F0001F19071901851A7F1A3F1A1FA2F20FE0A21A07A31A03A318F8
-1BF01A01A497C7FC1701A317031707170F177F92B6FCA59238F8007F170F170717031701
-A317001B3EA31B7CA395C8FCA21BFCA21BF8A21A01A31A031BF01A071A0FA21A1F1A3FF2
-7FE0F101FF1907191F0603B5FCBCFCA21BC0A34F517CD058>I<BB12FEA5D8000701F8C7
-00077FF0007F191F190785858586861B80A21A1FA31A0FA41BC006F81307A497C7FCA317
-01A317031707170F177F92B6FCA59238F8007F170F170717031701A31700A795C9FCB3B8
-12F8A54A517CD055>I<B8D8C003B8FCA5D8000701F8C9001FEBE000B3AE92BAFCA503F8
-C9121FB3B1B8D8C003B8FCA560527CD169>72 D<B812C0A5D8000701F8C7FCB3B3B3B2B8
-12C0A52A527CD132>I<B600FC073FB512FE6F61A26F96B6FCA2D80007F5C00070EF01EF
-A202EF6DEF03CFA202E76DEF078FA202E36DEF0F0FA202E16D171EA302E06D173CA26F6C
-1778A26F6C17F0A26F6DED01E0A26F6DED03C0A36F6DED0780A26F6DED0F00A26F6D151E
-A26F6D5DA3706C5DA2706C5DA2706D495AA2706D495AA2706D495AA3706D49C7FCA2706D
-131EA2706D5BA2716C5BA3716C5BA271EB81E0A271EBC3C0A271EBE780A27101FFC8FCA3
-715BA2715BA2725AA2725AA2D93FFC6F5AB74DB712FEA2725AA2725A77527CD180>77
-D<93380FFFC00303B6FC031F15E092B712FC0203D9FC0013FF020F01C0010F13C0023F90
-C7000313F0DA7FFC02007F494848ED7FFE4901E0ED1FFF49496F7F49496F7F4990C96C7F
-49854948707F4948707FA24849717E48864A83481B804A83481BC0A2481BE04A83A2481B
-F0A348497113F8A5B51AFCAF6C1BF86E5FA46C1BF0A26E5F6C1BE0A36C6D4D13C0A26C6D
-4D1380A26C1B006C6D4D5A6E5E6C626D6C4C5B6D6D4B5B6D6D4B5B6D6D4B5B6D6D4B5B6D
-6D4B90C7FC6D6D4B5A6D01FF02035B023F01E0011F13F0020F01FC90B512C0020390B7C8
-FC020016FC031F15E0030392C9FCDB001F13E0565479D265>79 D<B912F0F0FF8019F819
-FF1AC0D8000701F0C714F0060F7F060113FE727F737F737F85737F87A2737FA387A863A2
-616363A24F5B4F5B4F90C8FC4F5A06035B060F13F095B512C092B8C9FC19F819E019F892
-26F0000313FE9439007FFF80727F727F727F727F727F8684A28684A787A71D1C75133EA3
-8575137E73157C7513FC731401B86C6D9038F803F807039038FE07F07390B512E0736C14
-C0080F1400CEEA7FFC5F537CD164>82 D<91260FFF80130791B500F85B010702FF5B011F
-EDC03F49EDF07F9026FFFC006D5A4801E0EB0FFD4801800101B5FC4848C87E4848814915
-0F001F824981123F4981007F82A28412FF84A27FA26D82A27F7F6D93C7FC14C06C13F014
-FF15F86CECFF8016FC6CEDFFC017F06C16FC6C16FF6C17C06C836C836D826D82010F8213
-03010082021F16801400030F15C0ED007F040714E01600173F050F13F08383A200788200
-F882A3187FA27EA219E07EA26CEFFFC0A27F6D4B13806D17006D5D01FC4B5A01FF4B5A02
-C04A5A02F8EC7FF0903B1FFFC003FFE0486C90B65AD8FC0393C7FC48C66C14FC48010F14
-F048D9007F90C8FC3C5479D24B>I<B800C00103B612FCA5D8000701F8CAEBF000F31F80
-B3B3B11B3FA26D97C7FC81637F1B7E6D6D17FE505A6E7E505A6E6D15076E4D5A6E6D4B5A
-6E6D4B5A6E01F84B5A6E6DDA03FFC8FC6E6CB46CEB0FFE6F9039F001FFF8030F90B65A03
-0316C0DB007F92C9FC040F14F8DC007F13805E537CD167>85 D<B700FC017FB600FE91B6
-12F0A5D8003F01C0C8001F01E0C9EBF8006F71EE0FC06D7161876F1C1F6D7196C7FC6F83
-73606D1E3E6F836D7160876F1CFC6D666F4B801F016D66704A806E525A88704A17076E05
-9F5F70021F80080F160F6E6570023F806EDC3E074CC8FC8870027E5F6EDC7C03163E7002
-FC804F6C167E6E1C7C700101814F6C16FC6E745B70010317016E4C6D5D060716C0058049
-6D14036F63DDC00F16E04F6D14076F07F05BDDE01F170F6F92C76C5D1DF8DDF03E6E141F
-6F98C9FCDDF87E16FC067C6E5C6FF1FE3EDDFCFC177E6F4A6E147C1DFFDDFFF06E14FC6F
-62A24E816F62A270496F5BA24E817061A295C97E7061A270487090CAFCA37048705AA24D
-1601040360A27048705A84537DD18B>87 D<EC7FFF0107B512F0013F14FE90B77E48D9E0
-0F7F2703FE000113F0486C6D7F6EEB3FFC48826E131F83707FA36C496D7FA26C90C7FC6C
-5AC9FCA6037FB5FC020FB6FC91B7FC01071487013FEBF0074913803901FFFC004813F048
-5B485B485B4890C7FC5A5BA2485AA45EA26D5C007F151D163D6C6C02797F6C6D01F113F8
-6C9026C003E1EBFFE06C9026F81FC014F06C90B5487EC6ED001F011F01FC010713E00101
-01E090C8FC3C387CB641>97 D<913801FFF8021FEBFF8091B612F0010315FC010F9038C0
-0FFE903A1FFE0001FFD97FFC491380D9FFF05B4817C048495B5C5A485BA2486F138091C7
-FC486F1300705A4892C8FC5BA312FFAD127F7FA27EA2EF03E06C7F17076C6D15C07E6E14
-0F6CEE1F806C6DEC3F006C6D147ED97FFE5C6D6CEB03F8010F9038E01FF0010390B55A01
-001580023F49C7FC020113E033387CB63C>99 D<4DB47E0407B5FCA5EE001F1707B3A491
-3801FFE0021F13FC91B6FC010315C7010F9038E03FE74990380007F7D97FFC0101B5FC49
-487F4849143F484980485B83485B5A91C8FC5AA3485AA412FFAC127FA36C7EA37EA26C7F
-5F6C6D5C7E6C6D5C6C6D49B5FC6D6C4914E0D93FFED90FEFEBFF80903A0FFFC07FCF6D90
-B5128F0101ECFE0FD9003F13F8020301C049C7FC41547CD24B>I<913803FFC0023F13FC
-49B6FC010715C04901817F903A3FFC007FF849486D7E49486D7E4849130F48496D7E4817
-8048497F18C0488191C7FC4817E0A248815B18F0A212FFA490B8FCA318E049CAFCA6127F
-A27F7EA218E06CEE01F06E14037E6C6DEC07E0A26C6DEC0FC06C6D141F6C6DEC3F806D6C
-ECFF00D91FFEEB03FE903A0FFFC03FF8010390B55A010015C0021F49C7FC020113F03438
-7CB63D>I<ED3FFC0203B5FC020F14C0023F14E09139FFF81FF0499038C03FF849EB807F
-49903800FFFC495A495AA2495AA2EE7FF8495AEE3FF0EE0FC093C7FCAEB712E0A526007F
-F8C8FCB3B3A7007FB512FEA52E547CD329>I<DA3FFF14FF0103B5D8F00713C0010FDAFC
-1F13E0013FECFF7F90267FFC0F9038FF9FF09026FFE001EBF83F48496C13E0484990387F
-F01F4890C7D83FF813E0489338FC0FC0F0078048486E6CC7FCA2003F82A9001F5EA26C6C
-4A5AA26C5E6C6D495A6C6D495A6C6D485BDAFC0F5B4890B6C8FCD803EF14FC01C314F026
-07C03F90C9FC91CBFCA2120FA37FA213F813FE90B7FC6C16F817FF18C06C836C836C836D
-828448B9FC12074848C700031480D81FF8EC003F4848150748486F13C083485A83A56D5D
-007F18806D5D003F18006C6C4B5AD80FFEED1FFC6C6C6CEC7FF86C01E049485A6C01FE01
-1F5B6C6CB71280010F03FCC7FC010115E0D9000F01FCC8FC3C4F7CB543>I<EB3FF0B5FC
-A51203C6FCB3A4EE1FFC93B512C0030314F0030F8092391FE07FFC92393F001FFE037C80
-03F07FDAF1E081ECF3C0DAF7807F8502FFC7FC5CA25CA45CB3ACB6D8F807B612C0A54253
-7BD24B>I<137F497E000313E0487FA2487FA76C5BA26C5BC613806DC7FC90C8FCADEB3F
-F0B5FCA512017EB3B3A6B612E0A51B547BD325>I<EB3FF0B5FCA512017EB3B3B3B1B612
-F0A51C537BD225>108 D<D93FF0D91FFCEDFFE0B591B500C0010713FE030302F0011F6D
-7E030F6E017F8092271FE07FFCD9FF037F922A3F001FFE01F8007F0003027C9126FF03E0
-80C602F06DD90780137FDAF1E0038FC77FDAF3C0159EDAF7806D01BC143F07FC8102FFC7
-5C4A5EA24A5EA44A5EB3ACB6D8F807B6D8C03FB512FEA567367BB570>I<D93FF0EB1FFC
-B591B512C0030314F0030F8092391FE07FFC92393F001FFE0003027C80C602F07FDAF1E0
-81ECF3C0DAF7807F8502FFC7FC5CA25CA45CB3ACB6D8F807B612C0A542367BB54B>I<91
-3801FFE0021F13FE91B612C0010315F0010F9038807FFC903A1FFC000FFED97FF86D6C7E
-49486D7F48496D7F48496D7F4A147F48834890C86C7EA24883A248486F7EA3007F1880A4
-00FF18C0AC007F1880A3003F18006D5DA26C5FA26C5F6E147F6C5F6C6D4A5A6C6D495B6C
-6D495B6D6C495BD93FFE011F90C7FC903A0FFF807FFC6D90B55A010015C0023F91C8FC02
-0113E03A387CB643>I<903A3FF001FFE0B5010F13FE033FEBFFC092B612F002F301017F
-913AF7F8007FFE0003D9FFE0EB1FFFC602806D7F92C76C7F4A824A6E7F4A6E7FA2717FA2
-85187F85A4721380AC1A0060A36118FFA2615F616E4A5BA26E4A5B6E4A5B6F495B6F4990
-C7FC03F0EBFFFC9126FBFE075B02F8B612E06F1480031F01FCC8FC030313C092CBFCB1B6
-12F8A5414D7BB54B>I<90397FE003FEB590380FFF80033F13E04B13F09238FE1FF89139
-E1F83FFC0003D9E3E013FEC6ECC07FECE78014EF150014EE02FEEB3FFC5CEE1FF8EE0FF0
-4A90C7FCA55CB3AAB612FCA52F367CB537>114 D<903903FFF00F013FEBFE1F90B7FC12
-0348EB003FD80FF81307D81FE0130148487F4980127F90C87EA24881A27FA27F01F091C7
-FC13FCEBFFC06C13FF15F86C14FF16C06C15F06C816C816C81C681013F1580010F15C013
-00020714E0EC003F030713F015010078EC007F00F8153F161F7E160FA27E17E07E6D141F
-17C07F6DEC3F8001F8EC7F0001FEEB01FE9039FFC00FFC6DB55AD8FC1F14E0D8F8071480
-48C601F8C7FC2C387CB635>I<143EA6147EA414FEA21301A313031307A2130F131F133F
-13FF5A000F90B6FCB8FCA426003FFEC8FCB3A9EE07C0AB011FEC0F8080A26DEC1F001580
-6DEBC03E6DEBF0FC6DEBFFF86D6C5B021F5B020313802A4D7ECB34>I<D93FF8913801FF
-C0B50207B5FCA50003ED001FC61607B3AE5FA35FA2017F5D173B177B6D6C14F3DC01E313
-F06D6CD907C3EBFFC0903A0FFFC03F836D90B51203010114FE6D6C13F8020701E091C7FC
-42377BB54B>I<B600F00107B5FCA5000101F8C8EA7FE06C6DED3F00A2017F163E6E157E
-013F167C6E15FC6D5E6F13016D5E8117036D5E6F13076D5E6F130F6D5E6F131F6D93C7FC
-815F6E6C133E177E023F147C6F13FC6E5C16816E5C16C3A26EEBE3E016E76E5C16FF6E5C
-A26E91C8FCA26F5AA36F5AA26F5AA26F5AA26F5A6F5A40367DB447>I<B6D8E07FB5D8C0
-03B512C0A5000101F0C701F0C7381FF8006E027FED07E06C715DA26E023F150F017F705D
-A26E181F013F4B6C92C7FC6E606D70143E94B5FC6F177E6D4A6E137C03C001F315FC6D71
-5B160303E001E114016D020702E05B03F013C06D71485A160F03F8D9807F13076D05F85B
-93381F003F03FC160F027F4902FC5BDBFE3E011F131F023F04FE90C8FC167EDBFF7C010F
-5B6E01FCECFF3E4C6D137E6E5FA24C7F6E5F4C7F6E5FA24C7F6E5F4C147FA26E5F93C812
-3F6F5EA2033E6FC9FC5A367DB461>I<007FB500F090387FFFFEA5C66C48C7000F90C7FC
-6D6CEC07F86D6D5C6D6D495A6D4B5A6F495A6D6D91C8FC6D6D137E6D6D5B91387FFE014C
-5A6E6C485A6EEB8FE06EEBCFC06EEBFF806E91C9FCA26E5B6E5B6F7E6F7EA26F7F834B7F
-4B7F92B5FCDA01FD7F03F87F4A486C7E4A486C7E020F7FDA1FC0804A486C7F4A486C7F02
-FE6D7F4A6D7F495A49486D7F01076F7E49486E7E49486E7FEBFFF0B500FE49B612C0A542
-357EB447>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fv cmr10 10.95 89
-/Fv 89 125 df<4AB4EB0FE0021F9038E03FFC913A7F00F8FC1ED901FC90383FF03FD907
-F090397FE07F80494801FF13FF4948485BD93F805C137F0200ED7F00EF003E01FE6D91C7
-FC82ADB97EA3C648C76CC8FCB3AE486C4A7E007FD9FC3FEBFF80A339407FBF35>11
-D<4AB4FC021F13C091387F01F0903901FC0078D907F0131C4948133E494813FF49485A13
-7F1400A213FE6F5A163893C7FCAA167FB8FCA33900FE00018182B3AC486CECFF80007FD9
-FC3F13FEA32F407FBF33>I<4AB47E021F13F791387F00FFEB01F8903807F001EB0FE0EB
-1FC0EB3F80137F14008101FE80AEB8FCA3C648C77EB3AE486CECFF80007FD9FC3F13FEA3
-2F407FBF33>I<4AB4ECFF80021FD9C00F13E0913B7F01F03F80F8903C01F80078FE003C
-D907F0D93FF8130E49484948131F49484948EB7F804948484913FF137F02005CA201FE92
-C7FC6FED7F0070141C96C7FCAAF13F80BBFCA3C648C76CC7FC197F193FB3AC486C4A6CEB
-7FC0007FD9FC3FD9FE1FB5FCA348407FBF4C>I<001E130F397F803FC000FF137F01C013
-E0A201E013F0A3007F133F391E600F3000001300A401E01370491360A3000114E04913C0
-0003130101001380481303000EEB070048130E0018130C0038131C003013181C1C7DBE2D
->34 D<4B6C130C4B6C131EA20307143EA24C133CA2030F147CA293C71278A24B14F8A203
-1E5CA2033E1301A2033C5CA3037C1303A203785CA203F81307A24B5CA20201140F007FBA
-FCBB1280A26C1900C72707C0003EC8FC4B133CA3020F147CA292C71278A24A14F8A2021E
-5CA3023E1301007FBAFCBB1280A26C1900C727F80007C0C8FC4A5CA20101140FA24A91C9
-FCA301035CA24A131EA20107143EA24A133CA2010F147CA291C71278A34914F8A2011E5C
-A2013E1301A2013C5CA201186D5A41517BBE4C>I<013F4C7ED9FFC04B7E2601E0E01507
-2607C070150F48486C4B5A023E4BC7FC48486C5D48D90FC0EB01FE003ED90EF0EB07FCDA
-0F3F133E007E903A070FFFF8F8007C0200EBC1F0EE000300FC6D6C495A604D5A171F95C8
-FC173E177E177C5F16015F007C4948485A1607007E5E003E49495A020E131F003F93C9FC
-6C49133E260F803C137E0238137C6C6C485B3901E0E0016CB448485AD93F0049133F90C7
-4848EBFFC0030F903801E0E093398007C0704B4848487E4B153C033E90381F001C4B497F
-03FC133E4B150F4A48017E7F0203147C5D4A4801FCEB0380140F5D4AC7FC5C143E5C14FC
-5C495A13034948027CEB07005C4948147E011F033E5B91C8140E013E153F017E6F5B017C
-92380F803C4917380001706C5A49923801E0E0496FB45A6C48043FC7FC41497BC34C>37
-D<EC0FC0EC3FF0ECF878903801F01CEB03E049487E130FEC800F011F7FA2EB3F00A5EC80
-0EA25DA25DA25D6D6C5AECC1C0A2ECC38002E7C7387FFFFCEB0FEE14FC4A020713C06D48
-913801FE006E5DEF00F06D7E4D5A496C5D010F1503D91DFF4A5A013893C7FC496C6C5B01
-E0150E48486C6C131E00036E131C2607801F143C000F6E5B001F6D6C1370263F000714F0
-6F485A48D903FE5B913801FF03486D495A0487C8FCED7FCFED3FFE6F4814386D6D5AA200
-7F6E6C14786D6D6C14704B6C14F06C6C496C6C13E0001F91393E3FC0016C6C903AFC1FF0
-03C03D07FC07F007FC1F800001B5D8C001B512006C6C90C7EA7FFCD90FF8EC0FF03E437C
-C047>I<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A3120113801203
-13005A120E5A1218123812300B1C79BE19>I<1430147014E0EB01C0EB03801307EB0F00
-131E133E133C5B13F85B12015B1203A2485AA2120F5BA2121F90C7FCA25AA3123E127EA6
-127C12FCB2127C127EA6123E123FA37EA27F120FA27F1207A26C7EA212017F12007F1378
-7F133E131E7FEB07801303EB01C0EB00E014701430145A77C323>I<12C07E12707E7E12
-1E7E6C7E7F12036C7E7F12007F1378137CA27FA2133F7FA21480130FA214C0A3130714E0
-A6130314F0B214E01307A614C0130FA31480A2131F1400A25B133EA25BA2137813F85B12
-015B485A12075B48C7FC121E121C5A5A5A5A145A7BC323>I<1506150FB3A9007FB912E0
-BA12F0A26C18E0C8000FC9FCB3A915063C3C7BB447>43 D<121EEA7F8012FF13C0A213E0
-A3127FEA1E601200A413E013C0A312011380120313005A120E5A1218123812300B1C7989
-19>I<B512FEA617067F961E>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A0A798919>
-I<ED0180ED03C01507A21680150FA216005DA2151E153EA2153C157CA2157815F8A25D14
-01A25D1403A25D1407A25D140FA24AC7FCA2141E143EA2143C147CA2147814F8A25C1301
-A25C1303A25C1307A25C130FA291C8FC5BA2131E133EA25BA2137813F8A25B1201A25B12
-03A25B1207A25B120FA290C9FC5AA2121E123EA2123C127CA2127812F8A25A1260225B7B
-C32D>I<EB01FE90380FFFC090383F03F090387C00F849137C48487F48487F4848EB0F80
-A2000F15C04848EB07E0A3003F15F0A290C712034815F8A64815FCB3A26C15F8A56C6CEB
-07F0A3001F15E0A36C6CEB0FC0A26C6CEB1F80000315006C6C133E6C6C5B017C5B90383F
-03F090380FFFC0D901FEC7FC263F7DBC2D>I<EB01C013031307131F137FEA07FFB5FC13
-9FEAF81F1200B3B3ACEB7FF0B612F8A31D3D78BC2D>I<EB07FC90383FFF8090B512E039
-03F01FF83907C007FC390F0001FE001E6D7E001C1580003CEC7FC05AED3FE01270B4FC6D
-EB1FF07FA56C5A6CC7FC120CC813E0153FA216C0157F168015FF16004A5A5D4A5A4A5A5D
-4A5A4A5A4AC7FC147E147C5C495A495A495A495A49C71270133E133C5B4914E0485A485A
-485A48C7120148B6FCA25A4815C0B7FCA3243D7CBC2D>I<EB07FC90383FFF809038F80F
-E03901E003F839078001FCD80F007F000E6D7E001E1580D81F80137F486C14C07FA27F5B
-A2121F6C5AC8138015FF1600A24A5AA24A5A5DEC07E04A5A023FC7FCEB1FFCECFF809038
-000FE0EC07F86E7E6E7E6E7E1680ED7FC0A216E0153FA216F0A2120C123F487E487EA316
-E0A249137F6CC713C01278EDFF807E6C4913006C495A3907C007FC3903F80FF0C6B55A01
-3F1380D907F8C7FC243F7CBC2D>I<150E151E153EA2157EA215FE1401A21403EC077E14
-06140E141CA214381470A214E0EB01C0A2EB0380EB0700A2130E5BA25B5BA25B5B120148
-5A90C7FC5A120E120C121C5AA25A5AB8FCA3C8EAFE00AC4A7E49B6FCA3283E7EBD2D>I<
-00061403D80780131F01F813FE90B5FC5D5D5D15C092C7FC14FCEB3FE090C9FCACEB01FE
-90380FFF8090383E03E090387001F8496C7E49137E497F90C713800006141FC813C0A216
-E0150FA316F0A3120C127F7F12FFA416E090C7121F12FC007015C012780038EC3F80123C
-6CEC7F00001F14FE6C6C485A6C6C485A3903F80FE0C6B55A013F90C7FCEB07F8243F7CBC
-2D>I<EC1FE0ECFFF8903803F03E90380FC00F90391F000780133E017EEB1FC049133F48
-48137F12035B12074848EB3F80ED1F00001F91C7FC5BA2123FA3485AA214FE903887FF80
-39FF8F07E090389C01F09038B800FC01B0137E13F0497F16804914C0A2ED1FE0A34914F0
-A5127FA6123F6D14E0A2121FED3FC0A26C6C1480A20007EC7F006C6C137E6C6C5B6C6C48
-5A90387E07F06DB45A010F1380D903FCC7FC243F7CBC2D>I<1238123C123F90B612FCA3
-16F85A16F016E00078C712010070EC03C0ED078016005D48141E151C153C5DC8127015F0
-4A5A5D14034A5A92C7FC5C141EA25CA2147C147814F8A213015C1303A31307A3130F5CA2
-131FA6133FAA6D5A0107C8FC26407BBD2D>I<EB03FC90381FFF8090387C07E09038F001
-F83901E0007C48487F48487F48C7FCED0F80121E16C0003E1407A4123FA26DEB0F807F6C
-6C131F6D140001FC133E6C6C5B9038FF80786C6D5A6CEBF3E06CEBFF806C91C7FC133F6D
-13C06D7F013F13F801787F48486C7E3903E01FFF48486C1380260F800313C048487E4890
-38007FE0003E143F007E141F007CEC0FF01507481403A31501A46C15E0007C1403A2007E
-15C06C14076CEC0F806DEB1F006C6C133ED807F05B3901FC03F86CB512E0011F1380D903
-FCC7FC243F7CBC2D>I<EB03FCEB1FFF90387E07C09038FC03F048486C7E48486C7E4848
-137C000F147E4848137F81003F15805B007F15C0A2151F12FF16E0A516F0A5127F153FA3
-6C7EA2001F147F120F6C6C13FF6D13DF000313013900F8039F90387E0F1FD91FFE13E0EB
-07F090C7FCA2ED3FC0A41680157FD80F801400487E486C13FEA24A5A5D49485AEB800739
-1E000FE0001F495A260FC07FC7FC3803FFFE6C13F838003FC0243F7CBC2D>I<121EEA7F
-80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121EEA7F80A2EAFFC0A4EA7F80A2EA1E000A2779
-A619>I<121EEA7F80A2EAFFC0A4EA7F80A2EA1E00C7FCB3121E127FEAFF80A213C0A412
-7F121E1200A412011380A3120313005A1206120E120C121C5A1230A20A3979A619>I<00
-7FB912E0BA12F0A26C18E0CDFCAE007FB912E0BA12F0A26C18E03C167BA147>61
-D<EB1FF890B5FC3903E01FC0390F0007F0001EEB03F848EB01FC4814FE140000FE14FF7E
-7FA46CC7FC123EC7EA01FEA2EC03FCEC07F815F0EC0FC0EC1F80EC3F00143E5C147814F8
-5C13015CA2495AA25CAB91C7FC90C8FCA8EB0780EB1FE0A2497EA46D5AA2EB078020407B
-BF2B>63 D<ED7FE0913807FFFE91391F801F809139780001E0D901E0EB0078D90780141E
-49C87E011E6F7E0138ED01C0496F7E4916700001177848488249D93F80131C28070001FF
-F07F48902607E07C130F000E90260FC01E7F001E90263F00071480001C49903803800300
-3C01FED901C013C0003849ECFE010101EC00FF267803F8027F13E000701700495AA200F0
-18F000E01870495AA96D7E12F01270A26D7E007818E0263801FC5C01005C003C7F001C01
-7F49EB01C0001E6DEB077F000E903B0FC01E3F8380000F903B07E07C1F87006C903A01FF
-F007FE3C0380003F8001F86D90CAFC6C7E120013707F011EEE03F06D160F6D6CED3FC0D9
-01E0913801FE00D90078EC1FF0913A1F8003FF800207B500F8C7FC9126007FFEC8FC3C41
-7BBF47>I<15074B7EA34B7EA34B7EA34B7EA34B7E15E7A2913801C7FC15C3A291380381
-FEA34AC67EA3020E6D7EA34A6D7EA34A6D7EA34A6D7EA34A6D7EA349486D7E91B6FCA249
-819138800001A249C87EA24982010E157FA2011E82011C153FA2013C820138151FA20178
-82170F13FC00034C7ED80FFF4B7EB500F0010FB512F8A33D417DC044>I<B712FCEEFF80
-17F00001903980000FF86C6CC7EA03FE707E701380EF7FC0EF3FE0A2EF1FF0A218F8A317
-0F171FA318F0A2EF3FE0177F18C0EFFF804C1300EE03FCEE0FF8EE7FE091B6C7FC17E091
-C7EA07FCEE01FE933800FF80EF7FC0EF3FE0EF1FF018F8170F18FC1707A218FEA718FC17
-0FA2EF1FF818F0173FEF7FE0EFFFC00403138048486C90380FFE00B85A17E094C7FC373E
-7DBD40>I<DB3FF01306912603FFFE130E020F9038FF801E913A3FF007E03E9139FF8000
-F8D903FEC7EA7C7ED907F8EC1EFE4948140FD93FE0140749481403495A91C81201484815
-0012034848167E5B000F173EA24848161EA2123F5B180E127FA349160012FFAC127F7F18
-0EA2123FA27F001F171E181C6C7EA20007173C6D16386C6C1678000117706C6C16F06EEC
-01E06D6C15C06D6C1403D90FF0EC07806D6CEC1F00D903FE143E902600FF8013F891393F
-F007F0020FB512C0020391C7FC9138003FF037427BBF42>I<B712FCEEFF8017E0000190
-39C0001FF86C6C48EB03FEEE00FF717E717EEF0FE084717E717E170184717EA21980187F
-19C0A3F03FE0A519F0AB19E0A5F07FC0A21980A218FF19004D5AA24D5A6017074D5A4D5A
-EF7FC04DC7FCEE03FE48486CEB1FF8B85A178004FCC8FC3C3E7DBD45>I<B912E0A30001
-9038C000016C6C48EB001FEF0FF01703A217011700A31870A41838161CA41800A2163CA2
-167C16FC150391B5FCA3EC80031500167C163CA2161CA21807A3180E93C7FCA4181E181C
-A2183CA2187CA218F8170117031707171F48486CEB01FFB912F0A3383E7DBD3E>I<B912
-80A300019038C000036C6C48EB007FEF1FC0170F1707A21703A31701A4EF00E0A21638A3
-1800A31678A216F81501150791B5FCA3EC8007150115001678A21638A693C8FCAF3801FF
-E0B612F0A3333E7DBD3B>I<DB3FE0130C912603FFFE131C021F9038FF803C913A7FF00F
-C07C9139FF0001F0D903FC90380078FC4948143DD91FE0141F4948140F4948140701FF15
-034890C8FC491501485A000716005B000F177C5B001F173CA2485AA2181C127FA25B95C7
-FC12FFAB041FB512F0127FA26D9139000FFE00EF03FC123FA27F121FA26C7EA212077F12
-036C7E7F6C7F6D6C14076D7E6D6C140FD907F8141ED903FEEC3C7C902600FF80EBF83C91
-3A7FF007F01C021FB5EAC00C020391C8FC9138003FF03C427BBF47>I<B6D8C01FB512F8
-A3000101E0C7383FFC0026007F80EC0FF0B3A691B7FCA30280C7120FB3A92601FFE0EC3F
-FCB6D8C01FB512F8A33D3E7DBD44>I<B612F0A3C6EBF000EB3FC0B3B3B2EBFFF0B612F0
-A31C3E7EBD21>I<011FB512FCA3D9000713006E5A1401B3B3A6123FEA7F80EAFFC0A44A
-5A1380D87F005B007C130700385C003C495A6C495A6C495A2603E07EC7FC3800FFF8EB3F
-C026407CBD2F>I<B600C090387FFFFCA3000101E0C7000F138026007F80913807FE0018
-F818E0604D5A4DC7FC173E5F5F4C5A4C5A4C5A4C5A4CC8FC163E5E5E4B5A4B5AED07804B
-7E151F4B7E4B7E15FF913881EFF8913883C7FCEC878791388F03FE91389E01FF14BCDAF8
-007F4A6D7E5C4A6D7E4A6D7EA2707E707EA2707E707EA2707F717E84173F717E717EA271
-7E848419802601FFE04A13C0B600C090B6FCA3403E7DBD47>I<B612F8A3000101E0C9FC
-38007F80B3B0EF0380A517071800A45FA35FA25F5F5F4C5A160748486C133FB8FCA3313E
-7DBD39>I<B500C093383FFFF0A300016D93387FF800D8007F18E0D977F016EFA3D973F8
-ED01CFA2D971FCED038FA3D970FEED070FA26E150E80A26E6C141CA36E6C1438A26E6C14
-70A36E6C14E0A26E6CEB01C0A36E6CEB0380A36E6CEB0700A2037F130EA36F6C5AA26F6C
-5AA36F6C5AA25FED07F0A2923803F9C0A36FB45AA26F90C7FCA213F8486C147ED807FFEF
-3FF8B500F8013C011FB512F0A34C3E7DBD53>I<B56C91B512F88080D8007F030713006E
-EC01FC6E6E5A1870EB77FCEB73FEA2EB71FF01707FA26E7E6E7EA26E7E6E7EA26E7E6E7E
-A26E7E6E7FA26F7E6F7EA26F7E6F7EA26F7E6F7EA26F7E6F1380A2EE7FC0EE3FE0A2EE1F
-F0EE0FF8A2EE07FCEE03FEA2EE01FF7013F0A2177F173FA2171F170FA2170701F8150348
-7ED807FF1501B500F81400A218703D3E7DBD44>I<ED7FE0913807FFFE91391FC03F8091
-397E0007E04948EB03F8D907F0EB00FE4948147F49486E7E49486E7E49C86C7E01FE6F7E
-00018349150300038348486F7EA248486F7EA2001F188049167F003F18C0A3007F18E049
-163FA300FF18F0AC007F18E06D167FA4003F18C0A26C6CEEFF80A36C6C4B1300A26C6C4B
-5A00035F6D150700015F6C6C4B5A6D5E6D6C4A5A6D6C4A5A6D6C4AC7FC6D6C14FED901FC
-EB03F8D9007FEB0FE091391FC03F80912607FFFEC8FC9138007FE03C427BBF47>I<B712
-F8EEFF8017E000019039C0003FF86C6C48EB07FCEE01FE707EEF7F80EF3FC018E0A2EF1F
-F0A218F8A818F0A2EF3FE0A218C0EF7F80EFFF004C5AEE07FCEE3FF091B612C04CC7FC02
-80C9FCB3A73801FFE0B612C0A3353E7DBD3E>I<ED7FE0913807FFFE91391FC03F809139
-7F000FE0D901FCEB03F8D907F0EB00FE4948147F49486E7E49486E7E49C86C7E49824848
-6F7E49150300038348486F7EA2000F834981001F1880A24848EE7FC0A3007F18E0A24916
-3FA200FF18F0AC007F18E0A26D167FA3003F18C0A26C6CEEFF80A3000F18006D5D0007DA
-0F805B6C6C90393FE003FCED70706C6C496C485A6C6C48486C485A017FD9800E5BD93F81
-9038061FC0D91FC19038073F80D90FE14AC7FCD907F1EB03FE902601FDC013F8903A007E
-E007E091271FF03FC013180207B5FC9139007FE1E0DB0001143883711378A2706C13F0EF
-FF0318FFA27113E0A37113C0711380711300715AEF01F83D527BBF47>I<B712C016FCEE
-FF800001D9C00013E06C6C48EB1FF0EE07FCEE01FE707E84717EA2717EA284A760177F60
-6017FF95C7FCEE01FCEE07F8EE1FE0EEFF8091B500FCC8FC16F091388001FCED003FEE1F
-C0707E707E83160383160183A383A484A4F0C004190EA28218E0057F131E2601FFE0161C
-B600C0EB3FF094381FF83805071370CA3801FFE09438003F803F407DBD43>I<D907FC13
-0C90391FFF801C017FEBF03C3901FC03F83A03F0007E7CD807C0EB1FFC4848130F001F14
-0748C71203003E1401007E1400A2007C157C12FCA2163CA36C151CA27EA26C6C14007F7F
-EA3FF8EBFF806C13F86CEBFF806C14F06C14FC6C14FF6C15C0013F14E0010714F0EB007F
-020713F89138007FFC150FED07FE15031501ED00FFA200E0157FA3163FA27EA3163E7E16
-7E6C157C6C15FC6C15F86D13016DEB03F06DEB07E0D8F9FCEB0FC03AF07F803F8090391F
-FFFE00D8E00713F839C0007FC028427BBF33>I<003FB91280A3903AF0007FE001018090
-393FC0003F48C7ED1FC0007E1707127C00781703A300701701A548EF00E0A5C81600B3B1
-4B7E4B7E0107B612FEA33B3D7DBC42>I<B600C090B512F8A3000101E0C7000713002600
-7F80EC01FC715A1870B3B3A4013F16F06E5DA21701011F5E80010F15036E4A5A010793C7
-FC6D6C5C6D6C141E6D6C5C027F14F86E6C485A91390FF00FE00203B51280020049C8FCED
-1FF03D407DBD44>I<B691380FFFFEA3000301E0020113E06C01809138007F806CEF3F00
-017F163E181C6E153C013F1638A26E1578011F1670A26D6C5DA26E140101075EA26E1403
-01035EA26D6C4AC7FCA2806D150EA26F131E027F141CA26F133C023F1438A26E6C5BA26F
-13F0020F5CA2EDF80102075CA26E6C485AA2EDFE07020191C8FCA26F5A6E130EA2ED7F9C
-A216DCED3FF8A36F5AA36F5AA26F5AA36F5A3F407EBD44>I<B500FE017FB5D88007B5FC
-A3000301C0010101E0C713F86C90C849EC3FE07148EC0F807E7215006E143F017F190E84
-A26D6C60A24D7E6D6C60A2EFE7F86D6C60A2933801C3FC6E18F001076104037F6E028114
-0101036104077F17006D6C4D5AA2040EEB7F806D6C4DC7FCA24CEB3FC0DA7F80160EA24C
-EB1FE003C0161E023F171C047814F0DBE070010F133C021F173804F014F84C1307DA0FF0
-5EA2DBF1C0EB03FCDA07F95EA2DBFB80EB01FEDA03FF6F5AA293C8FCA26E5FA24B157F02
-0094C8FCA24B81037C153EA20378151E0338151C58407EBD5D>I<007FB5D8C003B512E0
-A3C649C7EBFC00D93FF8EC3FE06D48EC1F806D6C92C7FC171E6D6C141C6D6C143C5F6D6C
-14706D6D13F04C5ADA7FC05B023F13036F485ADA1FF090C8FC020F5BEDF81E913807FC1C
-163C6E6C5A913801FF7016F06E5B6F5AA26F7E6F7EA28282153FED3BFEED71FF15F103E0
-7F913801C07F0203804B6C7EEC07004A6D7E020E6D7E5C023C6D7E02386D7E14784A6D7E
-4A6D7F130149486E7E4A6E7E130749C86C7E496F7E497ED9FFC04A7E00076DEC7FFFB500
-FC0103B512FEA33F3E7EBD44>I<B66C0103B51280A3000101F0C8EBF8006C6C48ED3FC0
-725A013F041EC7FC6D7E606D6C15386D6C1578606D6C5D6E14016D5E6D6D1303606E6C49
-C8FC6E6C5B170E6E6C131E171C6E6C5B6E6C137817706E6C13F06F5B6E13016EEB83C05F
-ED7FC7DB3FE7C9FC16EFED1FFE5E150F6F5AB3A4ED1FFC020FB512FCA3413E7FBD44>I<
-003FB712F8A391C7EA1FF013F801E0EC3FE00180EC7FC090C8FC003EEDFF80A2003C4A13
-00007C4A5A12784B5A4B5AA200704A5AA24B5A4B5AA2C8485A4A90C7FCA24A5A4A5AA24A
-5AA24A5A4A5AA24A5A4A5AA24990C8FCA2495A4948141CA2495A495AA2495A495A173C49
-5AA24890C8FC485A1778485A484815F8A24848140116034848140F4848143FED01FFB8FC
-A32E3E7BBD38>I<EAFFFCA4EAF000B3B3B3B3ABEAFFFCA40E5B77C319>I<486C13C00003
-130101001380481303000EEB070048130E0018130C0038131C0030131800701338006013
-30A300E01370481360A400CFEB678039FFC07FE001E013F0A3007F133FA2003F131F01C0
-13E0390F0007801C1C73BE2D>I<EAFFFCA4EA003CB3B3B3B3ABEAFFFCA40E5B7FC319>I<
-EA0180120313005A120E5A12181238123012701260A312E05AA412CFEAFFC013E0A3127F
-A2123F13C0EA0F000B1C7ABE19>96 D<EB0FF8EBFFFE3903F01F8039078007E0000F6D7E
-9038E001F8D81FF07F6E7EA3157F6C5AEA0380C8FCA4EC1FFF0103B5FC90381FF87FEB7F
-803801FC00EA07F8EA0FE0485A485AA248C7FCEE038012FEA315FFA3007F5BEC03BF3B3F
-80071F8700261FC00E13CF3A07F03C0FFE3A01FFF807FC3A003FC001F0292A7DA82D>I<
-EA01FC12FFA3120712031201B1EC03FC91381FFF8091387C07E09039FDE001F09039FFC0
-00FC4A137E91C77E49158049141F17C0EE0FE0A217F0A2160717F8AA17F0A2160FA217E0
-161F17C06D1580EE3F006D5C6E13FE9039F3C001F89039F1E003F09039E0780FC09026C0
-3FFFC7FCC7EA07F82D407EBE33>I<49B4FC010F13E090383F00F8017C131E4848131F48
-48137F0007ECFF80485A5B121FA24848EB7F00151C007F91C7FCA290C9FC5AAB6C7EA300
-3FEC01C07F001F140316806C6C13076C6C14000003140E6C6C131E6C6C137890383F01F0
-90380FFFC0D901FEC7FC222A7DA828>I<ED01FC15FFA3150715031501B114FF010713E1
-90381F80F990387E003D49131FD803F81307485A49130348481301121F123F5B127FA290
-C7FCA25AAA7E7FA2123FA26C7E000F14037F000714076C6C497E6C6C497ED8007C017913
-F890383F01F190380FFFC1903A01FE01FC002D407DBE33>I<EB01FE90380FFFC090383F
-03F09038FC01F848486C7E4848137E48487F000F158049131F001F15C04848130FA2127F
-16E090C7FCA25AA290B6FCA290C9FCA67EA27F123F16E06C7E1501000F15C06C6C13036D
-EB07806C6C1400C66C131E017E5B90381F80F8903807FFE0010090C7FC232A7EA828>I<
-EC1FC0EC7FF8903801F83C903807E07E90380FC0FFEB1FC1EB3F811401137FEC00FE01FE
-137C1500AEB6FCA3C648C7FCB3AE487E007F13FFA320407EBF1C>I<167C903903F801FF
-903A1FFF078F8090397E0FDE1F9038F803F83803F001A23B07E000FC0600000F6EC7FC49
-137E001F147FA8000F147E6D13FE00075C6C6C485AA23901F803E03903FE0FC026071FFF
-C8FCEB03F80006CAFC120EA3120FA27F7F6CB512E015FE6C6E7E6C15E06C810003813A0F
-C0001FFC48C7EA01FE003E140048157E825A82A46C5D007C153E007E157E6C5D6C6C495A
-6C6C495AD803F0EB0FC0D800FE017FC7FC90383FFFFC010313C0293D7EA82D>I<EA01FC
-12FFA3120712031201B1EC01FE913807FFC091381E07E091387803F09138E001F8D9FDC0
-7F148001FF6D7E91C7FCA25BA25BB3A6486C497EB5D8F87F13FCA32E3F7DBE33>I<EA01
-E0EA07F8A2487EA46C5AA2EA01E0C8FCACEA01FC127FA3120712031201B3AC487EB512F0
-A3143E7DBD1A>I<1478EB01FEA2EB03FFA4EB01FEA2EB00781400AC147FEB7FFFA31301
-7F147FB3B3A5123E127F38FF807E14FEA214FCEB81F8EA7F01387C03F0381E07C0380FFF
-803801FC00185185BD1C>I<EA01FC12FFA3120712031201B292B51280A392383FFC0016
-E0168093C7FC153C5D5D4A5AEC07C04A5A4AC8FC143E147F4A7E13FD9038FFDFC0EC9FE0
-140F496C7E01FC7F496C7E1401816E7E81826F7E151F826F7EA282486C14FEB539F07FFF
-E0A32B3F7EBE30>I<EA01FC12FFA3120712031201B3B3B1487EB512F8A3153F7DBE1A>I<
-2701F801FE14FF00FF902707FFC00313E0913B1E07E00F03F0913B7803F03C01F8000790
-3BE001F87000FC2603F9C06D487F000101805C01FBD900FF147F91C75B13FF4992C7FCA2
-495CB3A6486C496CECFF80B5D8F87FD9FC3F13FEA347287DA74C>I<3901F801FE00FF90
-3807FFC091381E07E091387803F000079038E001F82603F9C07F0001138001FB6D7E91C7
-FC13FF5BA25BB3A6486C497EB5D8F87F13FCA32E287DA733>I<14FF010713E090381F81
-F890387E007E01F8131F4848EB0F804848EB07C04848EB03E0000F15F04848EB01F8A200
-3F15FCA248C812FEA44815FFA96C15FEA36C6CEB01FCA3001F15F86C6CEB03F0A26C6CEB
-07E06C6CEB0FC06C6CEB1F80D8007EEB7E0090383F81FC90380FFFF0010090C7FC282A7E
-A82D>I<3901FC03FC00FF90381FFF8091387C0FE09039FDE003F03A03FFC001FC6C496C
-7E91C7127F49EC3F805BEE1FC017E0A2EE0FF0A3EE07F8AAEE0FF0A4EE1FE0A2EE3FC06D
-1580EE7F007F6E13FE9138C001F89039FDE007F09039FC780FC0DA3FFFC7FCEC07F891C9
-FCAD487EB512F8A32D3A7EA733>I<02FF131C0107EBC03C90381F80F090397F00387C01
-FC131CD803F8130E4848EB0FFC150748481303121F485A1501485AA448C7FCAA6C7EA36C
-7EA2001F14036C7E15076C6C130F6C7E6C6C133DD8007E137990383F81F190380FFFC190
-3801FE0190C7FCAD4B7E92B512F8A32D3A7DA730>I<3901F807E000FFEB1FF8EC787CEC
-E1FE3807F9C100031381EA01FB1401EC00FC01FF1330491300A35BB3A5487EB512FEA31F
-287EA724>I<90383FC0603901FFF8E03807C03F381F000F003E1307003C1303127C0078
-130112F81400A27E7E7E6D1300EA7FF8EBFFC06C13F86C13FE6C7F6C1480000114C0D800
-3F13E0010313F0EB001FEC0FF800E01303A214017E1400A27E15F07E14016C14E06CEB03
-C0903880078039F3E01F0038E0FFFC38C01FE01D2A7DA824>I<131CA6133CA4137CA213
-FCA2120112031207001FB512C0B6FCA2D801FCC7FCB3A215E0A912009038FE01C0A2EB7F
-03013F138090381F8700EB07FEEB01F81B397EB723>I<D801FC14FE00FF147FA3000714
-030003140100011400B3A51501A31503120015076DEB06FF017E010E13806D4913FC9038
-1FC078903807FFE00100903880FE002E297DA733>I<B539E00FFFE0A32707FE00031300
-6C48EB00FC5E00015D7F00005DA26D13016D5CA26D6C485AA2ECC007011F91C7FCA29038
-0FE00EA2ECF01E0107131CA26D6C5AA2ECFC7801011370A2ECFEF001005BA2EC7FC0A36E
-5AA26EC8FCA3140E2B287EA630>I<B53BC3FFFE03FFF8A3290FFE003FE00013C06C486D
-48EB3F806C4817006D010F141E00016F131C15076D163C00004A6C1338A2017F5E4B7E15
-1DD93F805DED3DFC1538D91FC04A5AED78FE9238707E03D90FE0017F5BEDE03F02F01407
-01070387C7FC9138F1C01F02F9148F010315CE9138FB800F02FF14DE6D15FCED00076D5D
-A24A1303027E5CA2027C1301023C5C023813003D287EA642>I<B539F01FFFE0A30003D9
-C00F1300C690388007F8D97F0013E002805BD93FC05B011F49C7FC90380FE00EECF01E6D
-6C5A01035B6D6C5A6E5AEB00FF6E5A6E5A81141F814A7E81147BECF1FC903801E1FEECC0
-FF01037F49486C7ED90F007F011E6D7E013E130F496D7E01FC80486C80000F4A7EB53980
-3FFFF8A32D277FA630>I<B539E00FFFE0A32707FE000313006C48EB01FC6F5A00015D7F
-00005DA2017F495AA2EC8003013F5CA26D6C48C7FCA26E5A010F130EA26D6C5AA2ECF83C
-01031338A26D6C5AA2ECFEF001005BA2EC7FC0A36E5AA36EC8FCA2140EA2141E141C143C
-1438A2147800181370127EB45BA2495AA248485AD87E07C9FCEA780EEA3C3CEA1FF8EA07
-E02B3A7EA630>I<001FB61280A2EBE0000180140049485A001E495A121C4A5A003C495A
-141F00385C4A5A147F5D4AC7FCC6485AA2495A495A130F5C495A90393FC00380A2EB7F80
-EBFF005A5B484813071207491400485A48485BA248485B4848137F00FF495A90B6FCA221
-277EA628>I<B812F0A22C0280982D>I<BE12C0A25A0280985B>I
-E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fw cmr12 12 22
-/Fw 22 122 df<EC03F0EC0FF8EC3E1EEC7C0E4A7E49487E130302E07F01071301A3EB0F
-C0A4150393CAFC14E05D1506150E5D1518010713386E5A156015E0ECF1C0DAFB800107B5
-12C06DB4C7FC5C4A9139007FFC000101EE1FE019806E6FC7FC0100160E497E495E496C6C
-1418010E1638496C6C1430011816709026381FE05C01705E496C6C1301D801C06D5C0003
-01071403D807806D91C8FC000F6D6C5B001F0101140E003F6E130C90C7EB801C48027F5B
-EEC0304891383FE070031F5B705AED0FF9923807FB806D6DB4C812C05E6F7E007F6E6D13
-016D6E6C14804C6C13036C6C496D1400001F912603CFF85B6C6C90260F07FC130E6C6C90
-263E01FE133C3D03FE01F800FF80F8C6B54890383FFFF0013F0180010713C0D907FCC890
-C7FC42497CC64C>38 D<121EEA7F8012FF13C0A213E0A3127FEA1E601200A413E013C0A3
-12011380120313005A1206120E5A5A5A12600B1D78C41B>I<16C04B7EA34B7EA34B7EA3
-4B7EA3ED19FEA3ED30FFA203707FED607FA203E07FEDC03FA2020180ED801FA2DA03007F
-160FA20206801607A24A6D7EA34A6D7EA34A6D7EA20270810260147FA202E08191B7FCA2
-49820280C7121FA249C87F170FA20106821707A2496F7EA3496F7EA3496F7EA201788313
-F8486C83D80FFF03037FB500E0027FEBFFC0A342477DC649>65 D<B612F0A3C6EBF0006D
-5A6D5AB3B3B3A4497E497EB612F0A31C447DC323>73 D<ED1FFC4AB512C0913907F007F0
-91391F8000FC027EC7123FD901F8EC0FC049486E7E49486E7E49486E7E49486E7E49C912
-7E017E8201FE834848707E4848707EA24848707EA2000F84491603001F84A24848707EA3
-007F84A24982A300FF1980AD6C6C4C1300A4003F606D1603A2001F60A26C6C4C5AA26C6C
-4C5AA20003606D161F6C6C4C5A000060017F4CC7FC6E5D013F5E6D6C4A5AD907E0EC03F0
-6D6C4A5AD901FCEC1FC0D9007E4AC8FCDA1F8013FC913907F007F00201B512C09126001F
-FCC9FC41487BC54C>79 D<B712FCEEFFC017F800019039C0000FFC6C6C48EB01FF933800
-7F80EF1FE0170FEF07F018F8EF03FCA218FE1701A218FFA718FEA2170318FCA2EF07F818
-F0EF0FE0EF1FC0EF7F80933801FE00EE0FFC91B612F017800280C9FCB3AA3801FFE0B612
-C0A338447CC342>I<EB07FC90383FFF809038F80FE03903C003F048C66C7E000E6D7ED8
-0FC0137E486C137F6D6D7EA36F7EA26C5AEA0380C8FCA4EC0FFF49B5FC90380FFE1FEB3F
-C0EBFF00EA03FC485A485A485A485A127F5B176048C7FCA3153FA36D137F007F14EF6D90
-38C7E0C0003F13013A1FE00783F13B07F81E03FF802701FFFC0113003A001FE0007C2B2E
-7CAC31>97 D<EA01FC12FFA3120712031201B3EC03FC91380FFF8091383C07E091387001
-F89039FDE0007E02807F01FFEC1F8091C713C049EC0FE049140717F0A2EE03F8A217FCA2
-160117FEAB17FC1603A217F8A2EE07F0A26DEC0FE017C06D141F01FBEC3F80D9F380EB7E
-00D9E1C05B9039E0F001F89039C03C07E09039801FFF80C7D803FCC7FC2F467DC436>I<
-167FED3FFFA315018182B3EC7F80903803FFF090380FC07C90383F000E017E1307496D5A
-D803F87F48487F5B000F81485AA2485AA2127FA290C8FC5AAB7E7FA2123FA26C7EA2000F
-5D7F6C6C5B00035C6C6C9038077F806C6C010E13C0013F011C13FE90380FC0F8903803FF
-E09026007F0013002F467DC436>100 D<EB01FE903807FFC090381F03F090387E00FC49
-137E48487F485A4848EB1F80000F15C049130F121F484814E01507A2007F15F090C7FCA2
-5AA390B6FCA290C9FCA67EA27FA2123F16306C7E1670000F15606D14E06C6C14C0000314
-016C6CEB03806C6CEB0700013E131E90381F80F8903803FFE0010090C7FC242E7DAC2B>
-I<EA01FC12FFA3120712031201B3EC01FE913807FFC091381E07F091383801F802707FEC
-E000D9FDC07F5C01FF147F91C7FCA25BA35BB3A8486CECFF80B5D8F83F13FEA32F457DC4
-36>104 D<EA01E0EA07F8A2487EA46C5AA2EA01E0C8FCADEA01FC12FFA3120712031201
-B3B0487EB512F8A315437DC21C>I<3901FC01FE00FF903807FFC091381E07F091383801
-F8000701707F0003EBE0002601FDC07F5C01FF147F91C7FCA25BA35BB3A8486CECFF80B5
-D8F83F13FEA32F2C7DAB36>110 D<EC7F80903803FFF090380FC0FC90383E001F496D7E
-496D7E48486D7E48486D7E48486D7E000F81A24848147E003F157FA290C87E481680A448
-16C0AA6C1680A26D147F003F1600A2001F157E6D14FE000F5D6D130100075D6C6C495A6C
-6C495A6C6C495A013E49C7FC90381FC0FE903807FFF89038007F802A2E7DAC31>I<3901
-FC03FC00FF90380FFF8091383C07E091387001F83A07FDE000FE00010180137F01FFEC3F
-8091C7EA1FC04915E049140F17F0160717F8160317FCA3EE01FEABEE03FCA3EE07F8A217
-F0160F6D15E0EE1FC06D143F17806EEB7E00D9FDC05B9039FCF003F891383C0FE091381F
-FF80DA03FCC7FC91C9FCAE487EB512F8A32F3F7DAB36>I<91387F8003903903FFE00790
-380FE07890393F801C0F90387E000E496D5AD803F8EB039F0007EC01BF4914FF48487F12
-1F5B003F81A2485AA348C8FCAB6C7EA3123F7F121F6D5C120F6D5B12076C6C5B6C6C497E
-6C6C130E013F131C90380FC0F8903803FFE09038007F0091C7FCAEEEFF80033F13FEA32F
-3F7DAB33>I<3903F803F000FFEB1FFCEC3C3EEC707F0007EBE0FF3803F9C000015B13FB
-EC007E153C01FF13005BA45BB3A748B4FCB512FEA3202C7DAB26>I<90383FE0183901FF
-FC383907E01F78390F0003F8001E1301481300007C1478127800F81438A21518A27EA27E
-6C6C13006C7E13FC383FFFE06C13FC6C13FF6C14C06C14E0C614F0011F13F81300EC0FFC
-140300C0EB01FE1400157E7E153EA27EA36C143C6C147C15786C14F86CEB01F039F38003
-E039F1F00F8039E07FFE0038C00FF01F2E7DAC26>I<1306A5130EA4131EA3133E137EA2
-13FE12011207001FB512F0B6FCA2C648C7FCB3A4150CAA017E131C017F1318A26D133890
-381F8030ECC070903807E0E0903801FFC09038007F001E3E7EBC26>I<D801FC147F00FF
-EC3FFFA300071401000380000181B3A85EA35DA212006D5B017E9038077F80017F010E13
-C06D011C13FE90380FC078903803FFF09026007F8013002F2D7DAB36>I<B539F001FFFC
-A3000790C7EA7FE06C48EC1F8000011600160E1200160C017F5CA280013F5CA26E137001
-1F146080010F5CA2ECF00101075CA26D6C48C7FCA26E5A01011306A26D6C5AA214FF6E5A
-A215B8EC3FB015F06E5AA36E5AA26E5AA36EC8FC2E2C7EAA33>I<B539F001FFFCA30007
-90C7EA7FE06C48EC1F8000011600160E0000150C6D141C6D1418A26E1338013F1430A26D
-6C5BA26E13E0010F5CA26D6C485AA2ECF803010391C7FCA2903801FC06A2ECFE0E010013
-0CA2EC7F18A215B8EC3FB0A2EC1FE0A36E5AA26E5AA36EC8FCA21406A35CA25CA2123C00
-7E5BB4FC5CA25CEAFE01387C0380D87007C9FCEA3C1EEA0FFCEA03F02E3F7EAA33>121
-D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fx cmr12 14.4 7
-/Fx 7 85 df<120FEA3FC0EA7FE0EAFFF0A6EA7FE0EA3FC0EA0F000C0C768B21>46
-D<B812FEEFFFC018F818FE26007FF8C73807FF806D4802017F011F6F6C7E727E727E727E
-727EA2727EA2721380A21AC0A384A360A21A80A2601A00A24E5A180F614E5A4E5AF0FFE0
-4D1380050790C7FCEF7FFC91B712E08418FE02F0C73801FF809438007FE0F01FF8727EF0
-03FE857213807213C0F17FE0A2F13FF0A21AF8191FA21AFCA81AF8193FA21AF0197FF1FF
-E0A24E13C04E1380604E1300F03FFC013FEEFFF8496C02075BBA12C096C7FC18FC18C046
-527AD153>66 D<BB1280A426007FFCC8123F6D48030313C0011F1600193F191F190F1907
-A21903A2F101E0A31900A6050E1470A41A00A3171EA3173E177E17FE160791B6FCA49138
-F800071600177E173E171EA3170EA31A0EA31A1C94C8FCA41A3C1A38A31A78A31AF0A219
-01A21903A21907F10FE0193F19FF013F1603496C153FBBFC1AC0A347527BD150>69
-D<B7FCA439007FFE006D5A6D5AB3B3B3B0497E497EB7FCA420527BD12A>73
-D<B500FC030FB512F8A28080D8003FDC007F13006D6DED0FF8735A011D6D6F5A011C6D6F
-5AA26E7E81143F6E7E81140F6E7E82806E7F82806F7E82153F6F7EA26F7E6F7EA26F7F83
-816F7F83167F707E83161F707E838270138018C0827013E0A2EF7FF0EF3FF8A2EF1FFC18
-FE170FEF07FF1981837113C119E183F07FF119F9183FF01FFD19FF8484A28484A284A219
-7F193F133E017F171F496C160F000713F0B66C15071903A219014D527BD158>78
-D<B812C017FEEFFFC018F026007FFCC713FC6D48EC0FFF011F03017F9438007FE0727E72
-7E727E180785727EA28684A286A762A26097C7FCA24E5A614E5A4E5A4E5AF0FFC04D90C8
-FCEF0FFEEFFFF891B712C04DC9FC839126F8000113C09338003FF0EF0FFC717EEF01FF85
-717F727EA2727EA2727EA985A81B0785180FA21B0F0607140E496C82496C6F141EB76EEB
-801C72EBC03C96387FE0F896381FFFF0CC000713E09638007F8050547BD156>82
-D<003FBB12C0A449C79038F0000701F06E48130001C0183F48C8EE0FE0007E1907007C19
-03A200781901A400701900A500F01AF0481A70A6C91700B3B3AC4C7E030313FC027FB712
-E0A44C517CD055>84 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fy cmr17 17.28 9
-/Fy 9 118 df<120FEA3FC0EA7FE0EAFFF0A213F8A313FC127FEA3FDCEA0F1C1200A713
-3C1338A31378A2137013F0A213E01201EA03C0A2EA078013005A121E5A5AA212300E2874
-E324>39 D<B7031FB512F0A4C691CAEBFE00D93FFCEF3FF86D48EF0FE0A2745AA2745AB3
-B3B3A71A07010F96C7FC80A30107601A0E6E171E13031A1C6D6C173C1A386D6D1678626E
-7E023F4C5A6F4B5A6E6C15076E6C4B5A6E6C4BC8FC6E6C153E6E6C15FC9126007FC0495A
-DB3FF0EB0FF0DB0FFEEB7FC00303B6C9FC030014FC043F13F004031380546479E163>85
-D<181EEF3FFEEE07FFA4EE000F1703A21701B3AAEDFF80020F13F8023F13FE9139FF803F
-81903A03FC0007C14948EB01E1D91FE0EB00F94948147D4948143D49C8121F4848150F49
-1507120348481503491501120F121F5BA2123F5B127FA45B12FFAD127F7FA3123FA27F12
-1FA26C6C1503A26C6C150712036D150F6C6C151F0000163D137F6D6CECF9FF6D6CEB01F1
-D90FF0D903C113C06D6CD90F81EBFF80D901FFEB7F019039007FFFFC021F13E002010100
-91C7FC41657CE349>100 D<EC03FE91381FFFE091B512F8903901FE03FE903A07F0007F
-8049486D7ED93FC06D7E49C76C7E496E7E49140348488148481401000782491400000F82
-83485A1880123F49153FA2007F17C0A35BA212FF90B8FCA30180CAFCA9127F7FA3123FA2
-7F121FEF01C06C7E17036C6C1680A26C6C15070001EE0F006D150E6C6C151E6D6C5C6D6C
-5C6D6C5CD907F0EB03E0D903FC495A902700FF803FC7FC91383FFFFC020F13F002011380
-32417CBF3A>I<F03F80DA03FC903801FFE091273FFFC00713F091B539F01FC1F8903B03
-FC03FC3E03903A07F000FE784948EB7FE04948EB3FC04948011FEB01F049C76C6CC7FC01
-FE6E7EA248486E7EA2000382A2491401000782AA00035E6D1403A200015EA26C6C4A5AA2
-017F4A5A6D6C495A6D6C495A496C49C8FCD937F013FE903973FC03FC0160B512F0D9E03F
-13C0DA03FCC9FC4848CBFCA57FA27FA27F6C7E13FF91B512FE6DECFFF06D15FE6D6F7E6D
-16E084013F16FC01FEC700017FD803F8EC001FD807E0ED03FF4848030013804848167F00
-3FEF3FC090CA121F127EF00FE012FE481707A66C170F007E18C0A2007F171F6C6CEE3F80
-6C6CEE7F00000F177ED807F04B5A6C6C4B5A6C6C4B5AD8007FED1FC0D93FE0ECFF80D90F
-FED90FFEC7FC0101B612F0D9003F1480020101F0C8FC3D5E7DBF42>103
-D<133C13FF487F487FA66C5B6C90C7FC133C90C8FCB3A2EB03C0EA07FF127FA41201EA00
-7FA2133FB3B3AC497E497EB612E0A41B5F7DDE23>105 D<9039078003F8D807FFEB0FFF
-B5013F13C092387C0FE0913881F01F9238E03FF00001EB838039007F8700148FEB3F8E02
-9CEB1FE0EE0FC00298EB030002B890C7FCA214B014F0A25CA55CB3B0497EEBFFF8B612FC
-A42C3F7CBE33>114 D<9139FFE00180010FEBFC03017FEBFF073A01FF001FCFD803F8EB
-03EFD807E0EB01FF48487F4848147F48C8123F003E151F007E150F127CA200FC1507A316
-037EA27E7F6C7E6D91C7FC13F8EA3FFE381FFFF06CEBFF806C14F86C14FF6C15C06C6C14
-F0011F80010714FED9007F7F02031480DA003F13C01503030013E0167F00E0ED1FF0160F
-17F86C15071603A36C1501A37EA26C16F016037E17E06D14076DEC0FC06D1580D8FDF014
-1FD8F8F8EC7F00013E14FC3AF01FC00FF80107B512E0D8E001148027C0003FF8C7FC2D41
-7DBF34>I<D903C0150FD807FFED1FFFB50203B5FCA40001ED0007D8007F1501A2013F81
-B3B25FA35FA35F011F15066E140E5F130F6E4A7F01075D6D6C494813E0D901FE4948EBFF
-C0903A00FFC01F8091393FFFFE00020F13F8020001C0EC800042407DBE49>117
-D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: Fz cmr17 20.74 3
-/Fz 3 52 df<150E151E153E157E15FE14031407141F14FF130790B5FCB6FC14E7140713
-F81300C7FCB3B3B3B3B24A7E4A7F49B512F8007FB812E0A5337272F14F>49
-D<ED7FF00207B57E023F14F091B612FC4915FF902707FE007F13C0D90FE0010F7FD91F80
-010113F849C87F017CED3FFE496F7E48486F138048486F13C04848817113E0484817F090
-CAFC48EF7FF8121E003EEF3FFC123CA2007CEF1FFE1278A2EA7FC0D8FFF0EE0FFF7F7F7F
-A76C5A6C5A6C5AD807C0EE1FFECBFCA3F03FFCA3F07FF8A219F018FF19E05F19C04D1380
-A24D130060170F4D5A604D5A4D5A604D5A4C90C7FC4C5A4C5A5F4C5A4C5A4C5A4C5A94C8
-FC16FE4B5A4B5A4B5A4B5A4B5A4B5A4BC9FC157E5D4A5A4A5A4A5A4A5A4A4815074AC9FC
-143E4A160E5C495A495A495A495A49CA121E011E171C5B5B49173C485A4848177C4848EE
-01FC48B912F8A25A5A5ABAFCA219F0A3407279F14F>I<ED1FFE4AB512E0020F14FC023F
-14FF9126FFE00713C0D903FEC713F0D907F0EC3FF8D91FC06E7E49C8EA07FE017E6F7E01
-7883496F7F48486F7F120349834848167F01F88313FE6D6C153F486D82A4805CA37E6C5B
-6C48C95BD80078167F90CAFCA261A218FF61A24D5B615F96C7FC4D5A60170F4D5AEF3FE0
-4D5A4D5A4C48C8FCEE07FCEE1FF092381FFFC091260FFFFEC9FCA2EEFFE091C7EA07FCEE
-00FFEF3FC0EF1FF0717EEF07FE717E717F717F85727E727EA285727EA2727EA31A80A284
-1AC0A3EA07E0EA1FF8487E487EB5FCA51A80605BA26C48180013F001C05E007CCA5B7E4E
-5A7E6D4C5A6C6C5F000717FF01F04B5B6C6C4B5B6C6C5F6CB4030F90C7FC6D6C4A5AD93F
-F04A5AD90FFCECFFF8902707FFE00713E0010190B612806D6C92C8FC020F14F8020314E0
-9126001FFEC9FC42757AF14F>I E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: FA cmmi12 20.74 2
-/FA 2 119 df<EA07F0487E487E487E487EB51280A76C13006C5A6C5A6C5A6C5A111171
-902F>58 D<DA1FE016F8DAFFFCED03FE496D4B7E01076D5D90270FF07F80168090271F80
-3FC05CD93F007F137C496D6C16C05B0001844848013F814983120749711380000F8490C7
-127F48197F121E003E14FF003C4B153F1B00007C5B00785DA25C00F84B153E00705BC791
-C9FCA24A173C5DA2021F177C4B1678A2143F4B16F862147F5D190102FF5F5D1903625B4B
-4B5AA2190F4995C7FC5D191EA2193E193C197C197819F892C95A6F14014E5A616D16074E
-5A96C8FC6F5C6D163E606E6C5C6E6CEB03F06E6C495A6E6CEB1FC06EB46CB45A6ED9FFFE
-C9FC02005C033F13F0030313804A4E7CCB52>118 D E
-%EndDVIPSBitmapFont
-%DVIPSBitmapFont: FB cmr17 24.88 8
-/FB 8 121 df[<BF12FEA58AD8001F0280C9120F010349CB123F6D4918071C006D871D1F
-891D03777FA2891E7F1E3FA21E1FA3787EA31E07A31E03A38BA21E01A7E003C0811E00A4
-9CC7FCA61A07A41A0FA21A1FA21A3F1A7FF101FF1907197F92B9FCA603FCC87E19071901
-F1007F1A3F1A1FA21A0FA21A07A41A03A4F703C0A4F70780A397CAFCA4F70F00A567A31F
-1E1F3EA41F7EA21F7C1FFCA31E01A21E031E07671E0F1E1F1E3F1E7F1EFF651D07535B49
-1B7F52B5FC496D181F011F6D6C0407B6FCC0FCA267A4>114 141
-117 268 130 69 D[<922601FFF01507031FEBFF8092B600F05C020315FC020F03FF5C02
-3F16C091B5D8000F01F05B4901F09038007FF84901C0DA0FFE5B010F90C8EA03FFD91FFC
-03006D5A4948EE3FC04948EE1FE14AEE0FF14948EE07FB484916014890CBB5FC5B484884
-86484884A248488486123F4984A2007F85A24984A212FF87A387A37F87A37FA2007F867F
-A27F7F003F97C7FC7F806C7F806C7F806C13FE806C14C06C14F8EDFF806C15F06D14FF6D
-15F06D15FF6D16F06D16FE6DEEFFE06D17F86D6C16FE021F707E020717E0020117F86E6C
-82030F82030082040F82040082051F81050181DD001F801801DE003F7F070F7F8507017F
-85741380867413C0867413E0A2867413F0A286A200F01A7F1CF8A21B3FA41B1F7EA57EA2
-1CF0A27E1B3F7E1CE07F1B7F6D1AC0A26D19FF1C806D606D1A006D606D616D18076E4D5A
-D9DFC04D5A6E60D98FF0173FD987FC4D5AD903FF4C485A010001C04B5B48D97FF04B90C7
-FCDA3FFEED1FFE4890260FFFC0ECFFF8020301FF01075B486D91B612C06E6C5E48020F4B
-C8FC030115F048DA003F14C0040001FCC9FC>85 147 118 271 106
-83 D<ED0FFF92B512F0020314FE020F6E7E91263FF00313E0913AFF80007FF8D901FCC7
-EA1FFCD903F0EC07FE49486E6C7E49486E7F49C97F013E707E017E163F017C8349707EA2
-4848707E13FF02C06F7E80486D6F7F80A3727FA46C5BA238007FC06D5A90CAFCA8053FB5
-FC040FB6FC4BB7FC031F1401037F1380913903FFF800020F13C0DA3FFEC7FCECFFF80103
-13E0495B011F90C8FC495A495A495A485B485B485BA2485B4890C9FCA248481A3CA2127F
-5BA3485A60A460A3606D160E007F171E606D716C1378003F17786C6C16F06E4A486C6C13
-F06C6DEC03C06C6D020790391FF801E06C6DDA1F00EBFC036C6D023E90390FFF9FC02600
-7FFED901FC6DEBFF8090281FFFE00FF06D1400010790B5486D5B010103806D13F8D9003F
-01FCC8EA1FC0020101C092C8FC565E78DB5F>97 D<EE1FFE4BB512E0030F14FC033F14FF
-9226FFF00113C00203903980001FF0DA0FFEC7EA03F8DA1FF8EC00FE4A48157FDAFFE0ED
-1F8049496F7E49496F7E4990C912034948707E4948707EA24948177C4948EE07FC01FF17
-1F4A163F484E7E484916FFA25A5C5AA291CAFC48725AA2F11FF04848715A96C8FCA2127F
-A35BA312FFAF127F7FA4123FA27FA27EA2806CF10780A26C6D170F1B007E6E5F6C191E80
-6C6D173E017F606E17786D6C17F8011F606D6C16016D6D4B5A6D6D4B5A6D6D4B5A6D6D4B
-C7FC6E6C153EDA1FFE15FC6E6C6C495A020301E0EB0FE0020001FCEB7FC0033FB6C8FC03
-0F14FC030114E09226001FFEC9FC495E7ADB54>99 D<EE0FFF93B512F0030714FE033FEC
-FFC09226FFF80113F002039039C0003FFC4A48C7EA07FEDA1FF8913801FF804A486E7FDA
-7FC0ED3FE04A486F7E4990C96C7E4948707E4948707E010F844948707F4948707FA24948
-717E4948717EA248864849717EA24890CB6C7EA24886A24984001F1B80A2003F1BC0A349
-84007F1BE0A500FF1BF0AF007F1BE0A36D60A2003F1BC0A4001F1B806D606C1B00A36C6D
-4D5AA26C626E173F6C626C6D4D5AA26D6C4D5A013F616D6C4C5B6E5E6D6C4C90C7FC6D6C
-4C5A6D606D01C0ED3FF86D6D4B5ADA3FF0EDFFC0DA1FFC02035BDA07FE4A48C8FC912603
-FFC0EB3FFC02009039F801FFF0033FB612C0030F92C9FC030114F8DB000F90CAFC545E7B
-DB5F>111 D<023FEC0FF00003B5EC7FFEB649B51280040714E093391FF00FF093383F80
-3F93397E007FF85EC6DA01F0EBFFFC011F5C6D13036D495A5E6D49C7FCF07FF8151EF01F
-E04BEC078095C7FC5DA2157015F0A25DA45DA65DB3B3AB815B497F013F13FCB812C0A63E
-5B7ADA49>114 D<15F0A91401A61403A41407A4140FA2141FA2143FA2147FA214FF5B5B
-5B5B5B137F90B9FC120FBAFCA4C7D87FF0C9FCB3B3AAF001E0B218036E6C15C0A418076E
-6C1580A2020FED0F008102075D6F141E6E6D5B6E6D137C6E6D5B6F6C485A92393FFC07E0
-6FB55A03075C030049C7FCEE1FF03B817DFE49>116 D<007FB600F04AB612FCA6D8003F
-02806E6C1480010791C96C01F8C7FC0101497013C06D4995C8FC027F18FC6E6C5F021F18
-E06E6C5F636E6D4BC9FC6E6D153E6E6D5DA26E6D5D6F6C4A5A6F6C4A5A19076F6C5D6F6C
-4A5A6F6D49CAFC193E6F7F6F6D5B6F6D5B71485A047F1303DC3FFC5B706C485A71485A70
-49CBFC70139F7013FE60705B82177F84173F717E717E4D7F5F4D7F05FD7F05F87F4C5A4C
-486C7E4C486C7E727EEE0F804C486C7E043E6D7F047E6D7F167C4C6D7F4B486D7F4B486E
-7EA24B486E7E4B486E7E4BC86C7E5D033E6F7F4B6F7F4B6F7F4A5A0203707F4B707E0207
-717E021F844A48161F027F717E02FF8501036D84010F4E7F017F6D4C13F80007B56C4C13
-FFB600FE0303B71280A661597FD864>120 D E
-%EndDVIPSBitmapFont
-end
-%%EndProlog
-%%BeginSetup
-%%Feature: *Resolution 600dpi
-TeXDict begin
-%%PaperSize: A4
-
-%%EndSetup
-%%Page: 1 1
-1 0 bop 1349 291 a FB(SExtractor)62 b @beginspecial 88
- at llx 638 @lly 103 @urx 650 @ury 141 @rwi @setspecial
-%%BeginDocument: draft.ps
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: ArtExpression1.03
-%%Title: draftps
-%%CreationDate: Fri Mar 31 20:56:36 1995
-%%DocumentProcSets: ArtExpressionDict1.0
-%%DocumentSuppliedProcSets: ArtExpression1.0
-%%DocumentFonts:
-%%ColorUsage: Color
-%%DocumentProcessColor: Cyan Magenta Yellow Black
-%%BoundingBox: 88 488 324 681
-%%EndComments
-%%BeginProcSet:ArtExpressionDict1.02
-%%
-/ArtExpressionDict 220 dict def
-ArtExpressionDict begin
-
-/bf{bind def}bind def
-/lf{load def}bf
-/ed{exch def}bf
-/3p{3 1 roll}bf
-
-
-%/NewCodes 256 array def
-%AmigaCodes aload length 2 idiv {NewEncoding 3p put}repeat
-
-%/RE { %key fontname on stack
-%{
-% findfont dup length dict begin
-% {
-% 1 index /FID ne
-% {def}{pop pop}ifelse
-% }forall
-% /Encoding NewCodes def
-% /customfont currentdict end
-% definefont def
-%}bf
-
-%/AmigaCodes [
-%0 /.notdef
-%1 /.notdef 2 /.notdef 3 /.notdef 4 /.notdef
-%5 /.notdef 6 /.notdef 7 /.notdef 8 /.notdef
-%9 /.notdef 10 /.notdef 11 /.notdef 12 /.notdef
-%13 /.notdef 14 /.notdef 15 /.notdef 16 /.notdef
-%17 /.notdef 18 /.notdef 19 /.notdef 20 /.notdef
-%21 /.notdef 22 /.notdef 23 /.notdef 24 /.notdef
-%25 /.notdef 26 /.notdef 27 /.notdef 28 /.notdef
-%29 /.notdef 30 /.notdef 31 /.notdef
-%32 /space 33 /exclam 34 /quotedbl 35 /numbersign
-%36 /dollar 37 /percent 38 /ampersand 39 /quoteright
-%40 /parenleft 41 /parenright 42 /asterisk 43 /plus
-%44 /comma 45 /hyphen 46 /period 47 /slash
-%48 /zero 49 /one 50 /two 51 /three
-%52 /four 53 /five 54 /six 55 /seven
-%56 /eight 57 /nine 58 /colon 59 /semicolon
-%60 /less 61 /equal 62 /greater 63 /question
-%64 /at 65 /A 66 /B 67 /C
-%68 /D 69 /E 70 /F 71 /G
-%72 /H 73 /I 74 /J 75 /K
-%76 /L 77 /M 78 /N 79 /O
-%80 /P 81 /Q 82 /R 83 /S
-%84 /T 85 /U 86 /V 87 /W
-%88 /X 89 /Y 90 /Z 91 /bracketleft
-%92 /backslash 93 /bracketright 94 /asciicircum 95 /underscore
-%96 /grave 97 /a 98 /b 99 /c
-%100 /d 101 /e 102 /f 103 /g
-%104 /h 105 /i 106 /j 107 /k
-%108 /l 109 /m 110 /n 111 /o
-%112 /p 113 /q 114 /r 115 /s
-%116 /t 117 /u 118 /v 119 /w
-%120 /x 121 /y 122 /z 123 /braceleft
-%124 /bar 125 /braceright 126 /asciitilde 127 /.notdef
-%128 /.notdef 129 /.notdef 130 /.notdef 131 /.notdef
-%132 /.notdef 133 /.notdef 134 /.notdef 135 /.notdef
-%136 /.notdef 137 /.notdef 138 /.notdef 139 /.notdef
-%140 /.notdef 141 /.notdef 142 /.notdef 143 /.notdef
-%144 /.notdef 145 /.notdef 146 /.notdef 147 /.notdef
-%148 /.notdef 149 /.notdef 150 /.notdef 151 /.notdef
-%152 /.notdef 153 /.notdef 154 /.notdef 155 /.notdef
-%156 /.notdef 157 /.notdef 158 /.notdef 159 /.notdef
-%160 /space 161 /exclamdown 162 /cent 163 /sterling
-%164 /currency 165 /yen 166 /bar 167 /section
-%168 /dieresis 169 /copyright 170 /ordfeminine 171 /guillemotleft
-%172 /logicalnot 173 /emdash 174 /registered 175 /macron
-%176 /ring 177 /plusminus 178 /twosuperior 179 /threesuperior
-%180 /acute 181 /mu 182 /paragraph 183 /bullet
-%184 /cedilla 185 /onesuperior 186 /ordmasculine 187 /guillemotright
-%188 /onequarter 189 /onehalf 190 /threequarters 191 /questiondown
-%192 /Agrave 193 /Aacute 194 /Acircumflex 195 /Atilde
-%196 /Adieresis 197 /Aring 198 /AE 199 /Ccedilla
-%200 /Egrave 201 /Eacute 202 /Ecircumflex 203 /Edieresis
-%204 /Igrave 205 /Iacute 206 /Icircumflex 207 /Idieresis
-%208 /Eth 209 /Ntilde 210 /Ograve 211 /Oacute
-%212 /Ocircumflex 213 /Otilde
-%214 /Odieresis 215 /multiply
-%216 /Oslash 217 /Ugrave 218 /Uacute 219 /Ucircumflex
-%220 /Udieresis 221 /Yacute 222 /Thorn 223 /germandbls
-%224 /agrave 225 /aacute 226 /acircumflex 227 /atilde
-%228 /adieresis 229 /aring
-%230 /ae 231 /ccedilla
-%232 /egrave 233 /eacute 234 /ecircumflex 235 /edieresis
-%236 /igrave 237 /iacute 238 /icircumflex 239 /idieresis
-%240 /eth 241 /ntilde 242 /ograve 243 /oacute
-%244 /ocircumflex 245 /otilde 246 /odieresis 247 /divide
-%248 /oslash 249 /ugrave 250 /uacute 251 /ucircumflex
-%252 /udieresis 253 /yacute 254 /thorn 255 /ydieresis
-%]def
-
-
-
-/sepcolor 3 def
-/PMODE 0 def
-
-/setlinecolor { pop pop }def
-/setfillcolor { pop pop }def
-/cvt{curveto}bf
-/lnt{lineto}bf
-/mvt{moveto}bf
-/cp{closepath}bf
-/rgb{setrgbcolor}bf
-
-% New for Dict1.3
-/sj {setlinejoin}bf
-/sc {setlinecap}bf
-/sw {setlinewidth}bf
-
-/definecmykcolor {
- PMODE 0 eq {systemdict /setcmykcolor where not
- {/setcmykcolor
- {1 sub 4 1 roll 3 {3 index add neg dup 0 lt{pop 0}if 3 1 roll}
- repeat setrgbcolor pop} bf}
- {pop}ifelse
- } if
- PMODE 1 eq {
- sepcolor 0 eq {/setcmykcolor {pop pop pop 1 exch sub setgray}bf} if % CYAN
- sepcolor 1 eq {/setcmykcolor {pop pop 1 exch sub setgray pop}bf} if % MAGENTA
- sepcolor 2 eq {/setcmykcolor {pop 1 exch sub setgray pop pop}bf} if % YELLOW
- sepcolor 3 eq {/setcmykcolor {1 exch sub setgray pop pop pop}bf} if % BLACK
- } if
- PMODE 2 eq {systemdict /setcmykcolor known not
- {/setcmykcolor
- {1 sub 4 1 roll 3 {3 index add neg dup 0 lt{pop 0}if 3 1 roll}
- repeat setrgbcolor pop} bf}
- if} if
-
-}def
-
-/cmyk{setcmykcolor}bf
-/slc{setlinecolor}bf
-/sfc{setfillcolor}bf
-/pcmyk {pop pop pop pop pop} bf
-
-/linepatterns[
- [] [1 15] [2 14] [4 12]
- [6 10] [8 8] [10 6] [12 4]
- [14 2] [1 7] [2 6] [4 2 1 2]
- [6 2] [4 4 1 7] [4 4 2 6] [6 2]
- [1 3] [4 4] [] []
-] def
-
-
-% decimal number on stack -> PostScript dash array
-/lpt
-{/i exch def linepatterns i get 0 setdash
-}def
-
-/beginobject{gsave translate newpath}bf
-/bob{gsave translate newpath}bf
-/endobject{grestore}bf
-/eob{grestore}bf
-
-/begingroup{gsave translate}bf
-/bgr{gsave translate}bf
-
-/endgroup{grestore}bf
-/egr{grestore}bf
-
-/beps{ /showpage {} def }bf
-/eeps{ }bf
-
-/targets {
- gsave translate
- newpath
- 4 { 0 0 moveto 2 0 rmoveto 12 0 rlineto 90 rotate
- .1 setlinewidth stroke}repeat
- 0 0 9 0 360 arc .1 setlinewidth stroke
- grestore
-}bf
-
-/regmark { % x y on stack
- gsave translate
- newpath
- 10 0 moveto 0 0 10 0 360 arc
- 1 setgray fill
- 8 0 moveto 0 0 8 0 360 arc
- -10 0 moveto 10 0 lineto 0 -10 moveto 0 10 lineto
- 0 setgray stroke
- 4 0 moveto 0 0 4 0 360 arc
- fill
- -4 0 moveto 4 0 lineto 0 -4 moveto 0 4 lineto
- 1 setgray stroke
- grestore
-}bf
-
-/grid {/yinc exch def /xinc exch def
- /ph exch def /pw exch def
- gsave
- .5 setgray .1 setlinewidth
- 0 xinc pw {/xpos exch def xpos 0 moveto xpos ph lineto}for stroke
- 0 yinc ph {/ypos exch def 0 ypos moveto pw ypos lineto}for stroke
- grestore
-}def
-
-/showborder{ /ph exch def /pw exch def
- gsave 0 0 moveto 0 ph rlineto pw 0 rlineto 0 ph neg rlineto closepath
- .5 setlinewidth stroke
- grestore
-}bf
-
-/docrop {0 0 moveto 0 -5 rmoveto 0 -30 rlineto
- 0 0 moveto -5 0 rmoveto -30 0 rlineto .1 setlinewidth stroke}def
-
-% Changed 1.02
-/cropmarks {/t exch def /r exch def /b exch def /l exch def
- gsave l b translate docrop grestore
- gsave l t translate -90 rotate docrop grestore
- gsave r t translate -180 rotate docrop grestore
- gsave r b translate -270 rotate docrop grestore
-}bf
-
-/rect {/y2 exch def /x2 exch def
- /y1 exch def /x1 exch def
- x1 y1 moveto x1 y2 lineto
- x2 y2 lineto x2 y1 lineto
- closepath
-}def
-/rrect{/r exch def
- /y2 exch def /x2 exch def
- /y1 exch def /x1 exch def
- x1 r add y1 moveto
- x1 y1 x1 y1 x1 y1 r add curveto
- x1 y2 r sub lineto
- x1 y2 x1 y2 x1 r add y2 curveto
- x2 r sub y2 lineto
- x2 y2 x2 y2 x2 y2 r sub curveto
- x2 y1 r add lineto
- x2 y1 x2 y1 x2 r sub y1 curveto
- closepath
-}def
-
-/inch {72 mul}def
-/domanualfeed {statusdict /manualfeed true put }bf
-/negative {statusdict /negativeprint known
- {statusdict /negativeprint true put}
- {{1 exch sub} settransfer}ifelse
- }bf
-
-/oshow{true charpath stroke}bf
-/ofshow{dup show grestore true charpath stroke}bf
-/setpage {10{pop}repeat}bf
-
-
-end
-%%EndProcSet
-%%EndProlog
-%%BeginSetup
-%%BeginColorTable:#colors:4
-%%/ColorTable [
-%%[ 0.67 0.67 0.67 ]
-%%[ 0.00 0.00 0.00 ]
-%%[ 1.00 1.00 1.00 ]
-%%[ 0.40 0.53 0.87 ]
-%% ] def
-%%EndColorTable
-%%BeginCMYKCustomColors
-%%CMYKCustomColor 0.000 0.000 0.000 1.000 Black
-%%CMYKCustomColor 0.000 0.000 0.000 0.000 White
-%%CMYKCustomColor 0.000 0.145 0.290 0.000 Apricot
-%%CMYKCustomColor 0.000 0.247 0.800 0.000 Goldenrod
-%%EndCMYKCustomColors:#UsedColors 4
-ArtExpressionDict begin
-/PW 8.5 inch def /PH 11 inch def
-/PMODE 0 def /sepcolor 0 def definecmykcolor
-%%EndSetup
-0 0 612 792 1 1 0 72.000000 2 10 setpage
-206.453 585.133 bgr
--84.781 23.570 bob
-/Times-Bold findfont [72.000 0 0 72.000 0 0] makefont setfont
-0 0 moveto
-331 rotate
- 3.000 sw
- 1 sj
- 1 sc
- 0.000 0.247 0.800 0.000 cmyk
-gsave
- 0.000 0.247 0.800 0.000 cmyk
-(Draft) ofshow
-eob
-0.000 0.008 bob
--104.023 16.492 mvt
--69.125 79.453 lnt
--66.945 83.391 -60.836 85.141 -56.898 82.961 cvt
-100.516 -4.266 lnt
-104.453 -6.445 106.203 -12.570 104.023 -16.508 cvt
-69.125 -79.469 lnt
-66.945 -83.406 60.836 -85.156 56.898 -82.977 cvt
--100.516 4.250 lnt
--104.453 6.430 -106.203 12.555 -104.023 16.492 cvt
- 3.000 sw
- 1 sj
- 1 sc
- 0.000 0.247 0.800 0.000 cmyk
-stroke
-eob
-egr
-showpage
-%%Trailer
-end
-
-%%EndDocument
- @endspecial 1681 473 a FA(v)6 b Fz(2)p FA(:)p Fz(1)p
-FA(:)p Fz(3)1541 656 y Fy(User's)43 b(guide)1587 956
-y Fx(E.)c(BER)-10 b(TIN)1367 1190 y Fw(Institut)33 b(d'Astroph)m
-(ysique)1376 1306 y(&)g(Observ)-5 b(atoire)32 b(de)h(P)m(aris)p
-90 1727 3600 4 v 90 5320 4 3594 v 118 5295 a @beginspecial
-37 @llx 160 @lly 559 @urx 682 @ury 4252 @rwi @setspecial
-%%BeginDocument: sexintroc.ps
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: /home/eis3b/EIS/ebertin/present/eso9711/sexintroc.ps
-%%Creator: XV Version 3.10 Rev: 12/16/94 - by John Bradley
-%%BoundingBox: 37 160 559 682
-%%Pages: 1
-%%DocumentFonts:
-%%EndComments
-%%EndProlog
-
-%%Page: 1 1
-
-% remember original state
-/origstate save def
-
-% build a temporary dictionary
-20 dict begin
-
-% define string to hold a scanline's worth of data
-/pix 1536 string def
-
-% define space for color conversions
-/grays 512 string def % space for gray scale line
-/npixls 0 def
-/rgbindx 0 def
-
-% lower left corner
-37 160 translate
-
-% size of image (on paper, in 1/72inch coords)
-522.21600 522.21600 scale
-
-% define 'colorimage' if it isn't defined
-% ('colortogray' and 'mergeprocs' come from xwd2ps
-% via xgrab)
-/colorimage where % do we know about 'colorimage'?
- { pop } % yes: pop off the 'dict' returned
- { % no: define one
- /colortogray { % define an RGB->I function
- /rgbdata exch store % call input 'rgbdata'
- rgbdata length 3 idiv
- /npixls exch store
- /rgbindx 0 store
- 0 1 npixls 1 sub {
- grays exch
- rgbdata rgbindx get 20 mul % Red
- rgbdata rgbindx 1 add get 32 mul % Green
- rgbdata rgbindx 2 add get 12 mul % Blue
- add add 64 idiv % I = .5G + .31R + .18B
- put
- /rgbindx rgbindx 3 add store
- } for
- grays 0 npixls getinterval
- } bind def
-
- % Utility procedure for colorimage operator.
- % This procedure takes two procedures off the
- % stack and merges them into a single procedure.
-
- /mergeprocs { % def
- dup length
- 3 -1 roll
- dup
- length
- dup
- 5 1 roll
- 3 -1 roll
- add
- array cvx
- dup
- 3 -1 roll
- 0 exch
- putinterval
- dup
- 4 2 roll
- putinterval
- } bind def
-
- /colorimage { % def
- pop pop % remove 'false 3' operands
- {colortogray} mergeprocs
- image
- } bind def
- } ifelse % end of 'false' case
-
-
-
-512 512 8 % dimensions of data
-[512 0 0 -512 0 512] % mapping matrix
-{currentfile pix readhexstring pop}
-false 3 colorimage
-
-2613002613002e1700160b001e0f00140a00140a00180c001e0f00321900201000180c00
-180c000c0600140a000c0600060300261300160b001e0f00281400201000180c000e0700
-060300281400160b000c06000603003219000e0700160b00301800160b00140a00180c00
-0e07000c0600180c00140a00160b001e0f000e07000c06002010000603000e07000e0700
-140a00160b000e0700281400160b00201000140a001e0f000e07000e0700160b001e0f00
-201000180c00180c002010002e1700180c000c06002010001e0f000603000402000e0700
-1e0f00160b001e0f00201000ffa040160b00201000060300201000301800180c00160b00
-3018002e1700180c000e07001e0f00201000201000301800281400261300261300281400
-1e0f001e0f000c0600160b002613000e07000e0700201000160b00261300160b00160b00
-0e0700140a002613002e1700160b002613000e07002010000e07002814000e0700201000
-301800160b002e17002010001e0f001e0f001e0f00180c000c06001e0f000603000e0700
-060300140a001e0f00261300160b001e0f00180c00060300140a00160b002e1700381c00
-201000261300160b00160b002613001e0f00160b00201000140a00020100180c00261300
-0e0700160b001e0f00160b001e0f00160b00020100160b000e0700160b00140a001e0f00
-140a000e07000603001e0f00180c002010000c0600140a00201000201000160b00201000
-020100160b001e0f00180c00180c000e07001e0f00140a000c0600281400281400201000
-140a000e0700140a003219001e0f00140a001e0f00140a000c0600180c000e0700180c00
-0402000603000c06002010001e0f00281400140a002814000c0600160b000e0700201000
-0e0700261300140a00201000060300281400201000140a00160b000e0700160b00201000
-180c002010000e07002e1700140a00160b00160b002814003018000e0700140a00201000
-160b00160b00160b000c0600201000281400160b000e0700160b00281400201000160b00
-2010000c06001e0f00160b00180c000c06000e0700140a000e0700140a001e0f000e0700
-1e0f00180c00160b00180c00201000180c00180c00180c00140a00140a00180c00201000
-2010001e0f00140a00140a002010000e07001e0f000e07002010002e17000c06000e0700
-0e07000e0700160b000e0700201000160b00160b00160b000e0700140a001e0f00140a00
-060300040200261300261300201000201000180c00160b00060300140a00180c00160b00
-180c004020000e07001e0f00160b00281400160b000e0700140a000603001e0f00201000
-201000160b00180c00201000140a000e0700201000281400160b00160b00180c000c0600
-0c06002010000c0600180c002814002010000e0700160b001e0f000c06000e07001e0f00
-0c06002613000402001e0f00301800160b00160b00201000281400060300160b00261300
-201000201000180c000c0600160b00160b001e0f002010001e0f00160b00160b00180c00
-180c00160b002010001e0f00201000160b00160b000e07000e0700201000180c00140a00
-0e0700261300160b000e0700160b00281400301800160b002e1700140a001e0f000c0600
-060300060300140a000e0700180c002010003018001e0f002613000c0600160b00160b00
-281400261300261300160b000e0700160b00160b002010001e0f00201000140a00201000
-140a00160b002010002010000c06000e0700281400261300201000180c00060300160b00
-0e0700281400261300201000160b00160b00201000180c000e0700160b00180c00060300
-160b000e0700140a00140a002613002814000c0600160b00160b001e0f001e0f00140a00
-160b00180c00160b00180c001e0f00160b00160b00160b00160b00180c000e0700060300
-2010002814002010001e0f000402002814000e07000e0700180c000c0600281400160b00
-2010001e0f00201000180c00160b001e0f00180c00140a00160b00160b00261300160b00
-201000160b00160b002814000c0600381c00180c002010002010001e0f001e0f00201000
-0c06000e0700180c00160b000e0700160b00140a00160b00
-281400140a00201000201000140a000e0700160b00180c00160b000e07002613001e0f00
-261300160b000c0600140a00160b00180c001e0f00201000160b00301800160b00040200
-0603002814001e0f000e0700201000140a000e0700180c00201000160b00160b00281400
-040200140a00201000201000160b00180c000e07002010000e0700020100180c00160b00
-201000140a00160b000e0700201000140a001e0f00261300180c00160b00160b00160b00
-060300160b00201000180c000e0700140a00201000180c00201000160b001e0f000c0600
-0e0700160b00180c00261300160b00ff9b362814001e0f00180c002010002e1700140a00
-2010000e0700381c001e0f002814002814003a1d002814002814002e1700180c00201000
-201000160b00201000180c00180c000e07000e07002e17000e0700ff9b36160b00140a00
-201000160b000e0700201000160b00160b000e0700180c002010001e0f00301800201000
-201000160b00180c000e0700160b00281400201000160b00160b00140a001e0f001e0f00
-0c0600160b002613000c0600180c00160b00201000201000201000160b00201000201000
-060300160b00160b00160b00160b00160b00160b00201000180c00201000281400201000
-160b00180c000603002010003a1d000e0700180c00160b00160b00201000160b003a1d00
-160b000c0600180c00140a003018003018001e0f00140a000e07000e0700180c00180c00
-201000060300180c000603002814000603000e07002e17000e07000c06000e0700060300
-1e0f002010002e17000e07000c0600201000140a002010000e07000e0700160b001e0f00
-060300261300160b00140a001e0f00180c000e0700281400201000180c00140a00281400
-201000160b00140a00180c00180c00180c00160b00201000140a00160b00160b00281400
-2010002e17002010000603002814001e0f00160b00160b00180c001e0f002613001e0f00
-060300160b00180c00160b00180c000e0700201000160b002814001e0f002613001e0f00
-160b00261300201000180c002e17001e0f00160b001e0f00281400201000140a00261300
-201000301800180c00381c000e07000201002010000c0600201000160b000e0700180c00
-160b002010002010001e0f000201000e0700140a001e0f003219001e0f002613001e0f00
-180c00180c002613002010002010000e07000e0700160b001e0f000e0700281400201000
-160b00180c000e07002613002613001e0f001e0f00140a000e0700160b000e07000c0600
-1e0f00160b000e0700160b002010002010000e07002010002814001e0f00201000160b00
-201000180c00201000201000180c00281400160b002010003018000e0700201000140a00
-1e0f002613002814000e0700160b00180c000e0700140a000603000e07001e0f000e0700
-2010001e0f00160b000e07002010000e07000e07001e0f000e07001e0f00040200060300
-0e0700160b00160b000e0700040200140a000c0600180c00201000201000201000040200
-160b002e1700201000201000160b00140a002010002613000e07000e0700201000160b00
-140a00160b000e07000603002010000e0700180c00301800201000201000160b00201000
-2010000e0700180c00160b00060300140a00140a00261300160b00060300281400160b00
-180c00201000180c000e07002010000c0600201000201000160b00180c00160b00180c00
-0c0600201000201000261300140a00281400140a000c0600180c00160b00201000160b00
-160b000c06000e0700140a00160b00160b00201000201000180c000c0600301800281400
-1e0f00180c00180c001e0f000c06002814002814002010000c0600201000060300180c00
-180c00160b000e0700160b00160b002010000e0700140a00261300140a002010000e0700
-0603000c06002814001e0f000e07000e07001e0f00160b000e0700160b00201000180c00
-180c000201000c06000e0700180c00140a001e0f00201000160b000e0700201000301800
-1e0f00160b002010000e07000c0600201000160b001e0f00180c000c0600201000180c00
-140a001e0f00180c000c0600160b00160b00160b001e0f00
-160b002e1700180c00281400060300301800160b000e0700281400160b001e0f000e0700
-180c002814001e0f001e0f002010003a1d002010003219000e07002613001e0f00201000
-0c06000e07001e0f00140a000c0600301800160b00180c000e0700160b00261300160b00
-0e07001e0f00160b00160b00160b00140a00060300020100180c000e0700281400261300
-060300201000281400201000180c000e0700160b00160b00180c00180c000e0700160b00
-1e0f000e07002e1700321900301800201000140a00261300160b00281400160b000e0700
-0c0600160b002814002814000e07001e0f00180c002010001e0f00160b00180c00160b00
-201000201000180c00381c00321900261300281400140a00301800281400160b00301800
-2010001e0f00180c00180c00201000140a001e0f00160b00060300ffad5a281400060300
-160b002010001e0f002613000e0700160b00160b002814001e0f001e0f002814000e0700
-4a2500201000261300060300160b00140a000e07002010000e0700261300060300301800
-160b000e0700160b00180c00140a000e0700201000160b00201000160b00160b00160b00
-160b00160b00140a00261300281400060300180c000603001e0f00160b001e0f000e0700
-1e0f002010002613000e0700160b00180c00140a00140a00281400160b000e07000e0700
-180c00180c00180c00140a002613000c0600140a00160b00201000160b00160b000e0700
-0c06001e0f002e17000c06001e0f001e0f002010000e07001e0f000e0700281400160b00
-140a00060300160b00160b001e0f00060300160b00180c00160b00201000201000261300
-180c000e0700140a002010001e0f00201000160b000e0700060300160b001e0f00281400
-201000160b00281400160b001e0f001e0f00201000180c000c06001e0f00160b000e0700
-180c000e07001e0f002613003018002010002e17000e0700281400180c002e1700140a00
-0e07001e0f00180c001e0f000e0700281400160b00201000160b00140a00160b00140a00
-160b00160b00180c000e07000e07001e0f00281400201000160b00201000160b00180c00
-160b00201000180c00261300160b002814000c0600160b00160b000e07000e0700180c00
-140a003018000e07001e0f00281400281400180c002010000e07000e0700160b001e0f00
-1e0f00201000160b002613000c0600160b00020100160b00281400060300261300180c00
-160b00281400160b00160b001e0f001e0f002613002613000e07000e0700201000160b00
-160b000e0700140a000402001e0f00140a00160b00160b00160b00180c001e0f00160b00
-160b00160b00261300160b002010000c06000603001e0f00020100281400180c00180c00
-1e0f000c0600140a001e0f00160b00160b002814000e07000e0700180c00140a00160b00
-180c00180c00160b000c06000c0600160b000c06000603000c06001e0f00180c000e0700
-180c000e07000e0700140a000e07000e0700160b00180c002010002010000e0700140a00
-140a00281400201000201000140a001e0f00160b00160b001e0f00140a000e0700180c00
-201000140a000e07001e0f00281400040200160b00281400201000301800140a00201000
-160b00261300160b000e0700160b00160b002e1700180c00160b002010002613000e0700
-1e0f002814000c06000e07002010001e0f00180c001e0f00140a00160b00160b001e0f00
-1e0f00060300180c00140a00281400180c00180c00261300201000160b00160b00140a00
-261300180c00160b00140a00201000180c00281400160b00201000160b00160b00201000
-201000201000201000160b002010000e0700281400160b00201000160b00201000180c00
-0c0600180c001e0f00140a00160b00180c00160b002613000e0700160b002010000e0700
-160b000e0700180c002814001e0f00160b00140a00160b00201000140a001e0f00020100
-160b00261300180c002613000e0700180c00060300281400201000140a00281400160b00
-180c000c0600180c00060300160b00180c00160b000e0700160b002010001e0f00140a00
-2010000e0700160b000c0600201000201000201000160b00
-2613000e07000e07002010000e0700160b002010001e0f00140a00140a00140a00160b00
-0603000e0700180c000603002e1700261300160b00281400020100281400140a00060300
-1e0f00160b00160b002010001e0f000c0600180c000603002814000e0700160b00180c00
-2010001e0f00180c00281400020100180c00261300160b000e0700281400160b002e1700
-180c00140a001e0f00281400160b002613002010000e07000c0600060300140a00201000
-160b001e0f002613002010001e0f002010000e0700201000160b00160b002010001e0f00
-180c000e07000e0700160b002010002010000201000c06000c0600180c00060300160b00
-160b00180c00201000180c00201000281400261300160b002010002e1700201000201000
-0e0700281400180c002010001e0f00160b000c0600140a00160b002010000e0700201000
-140a000e0700201000160b00140a002010001e0f00201000140a00281400281400180c00
-261300160b00201000201000180c000c0600180c000e0700140a000e0700201000180c00
-160b000c0600060300160b00160b00160b000e07001e0f00281400160b000e07001e0f00
-1e0f002010002010003a1d00180c00180c002e1700180c00160b001e0f00140a00180c00
-2010000e0700140a00180c001e0f00160b00160b001e0f000e07002814000603000e0700
-261300060300060300060300140a00261300160b000e0700180c000c0600060300201000
-201000160b000e0700140a00140a000e0700160b000e07000e07001e0f00201000140a00
-180c00201000180c00140a000e07001e0f001e0f00201000140a002010002613000e0700
-201000201000160b000c06000e0700140a002010003018000e0700160b00201000060300
-2613000e0700281400140a002010002010000e07002010000e07000e0700261300160b00
-160b001e0f00261300201000201000160b000e0700160b00160b000603001e0f000e0700
-0c06000e0700201000201000180c002e1700160b00140a00180c000e0700281400160b00
-160b00201000180c00140a00140a002814002814000e0700160b00140a00201000281400
-201000160b00160b00140a000c0600261300180c00160b00321900140a000c0600140a00
-381c000e0700140a00261300140a00040200201000180c00140a00160b00060300180c00
-180c002814000402000e0700201000160b00180c00281400140a00160b00160b00261300
-1e0f00261300301800160b001e0f001e0f001e0f001e0f000e07000e0700160b000e0700
-180c00180c00180c002010000e0700140a00140a000e0700201000201000180c000e0700
-1e0f00160b000e0700160b00180c00261300180c00160b00281400060300140a00201000
-0603002010002010003018000e0700201000201000160b001e0f000c0600180c001e0f00
-180c002010002814002814001e0f000e07000e07002010001e0f00140a000e0700201000
-2e1700160b000201001e0f000c06002613000e0700160b002e1700160b00201000060300
-0c06002e17002814000e0700160b002010002814001e0f00160b00180c00160b00060300
-140a001e0f002613002010000e0700ffa448ff9e3cff9d3aff9d3aff9830ffa54affa244
-ffa0400c0600301800281400180c00160b00140a000e07002613002613001e0f000e0700
-180c001e0f00180c00201000140a002613001e0f00201000140a00180c000e0700281400
-160b000c0600180c002613000c0600160b00160b00160b00140a000e07002010000e0700
-0e0700281400160b000c06000e0700281400160b00180c00180c00261300160b00180c00
-2e17001e0f00201000261300040200160b000e07000603000e0700160b00160b002e1700
-1e0f00140a00160b00140a000c06002010000e07000c06000603000e07001e0f00201000
-1e0f00201000060300180c000e07000e0700140a001e0f00160b00201000020100180c00
-1e0f000e0700201000180c00180c002814002010001e0f001e0f000e07002010001e0f00
-140a00180c00201000201000180c000603002010000e07000e07001e0f002e1700160b00
-180c00140a00160b00140a00201000160b00180c00201000
-180c00201000160b00201000180c00180c00180c00180c00160b000603002613001e0f00
-160b002613002814000402000e07002e1700201000201000160b00160b00160b000c0600
-1e0f000e07001e0f000c0600160b00160b000e07001e0f000e0700301800301800180c00
-201000180c00160b00160b00160b000e07001e0f00180c002613002010000603000e0700
-180c00160b00201000180c002814000e0700060300281400261300060300160b00160b00
-180c00261300140a00160b000c0600201000160b000e07000e07001e0f00180c00180c00
-140a00160b000c0600160b00140a000c0600160b00ffa54a2613000c06000e0700160b00
-180c001e0f000e0700140a00201000201000140a00301800201000060300140a00281400
-2814002010000201000e07000c06000e07002010000c06000603002613000e0700160b00
-140a00160b00140a000201002010000e0700140a00160b002814002814002814001e0f00
-3018002e17002814000c0600160b000e0700201000261300140a00140a00201000180c00
-201000281400160b00060300201000160b002010004422001e0f00261300180c00160b00
-140a002010001e0f00160b001e0f002010002010000c0600201000180c000e07000e0700
-180c00281400180c00160b00201000201000040200180c00160b00160b00180c000e0700
-0e0700060300160b00140a00160b00060300160b000e0700140a00060300180c00180c00
-1e0f000e0700160b00201000160b00160b00160b00180c000e0700060300180c000e0700
-180c00160b002010000603002814001e0f000e0700160b00160b000e0700180c00060300
-0c06000e0700160b00201000160b002814002613001e0f002814000c0600261300261300
-1e0f00160b000c06001e0f00301800261300160b00201000281400201000201000180c00
-160b00201000140a00381c00201000160b00160b000e0700281400261300160b00201000
-180c001e0f00180c002010001e0f00140a001e0f00180c000603000c0600160b001e0f00
-060300160b002e1700261300201000160b00180c00180c000e07001e0f00201000160b00
-180c002010000e07002010000e0700140a00281400160b00180c00160b00140a000e0700
-180c001e0f00140a000e07000e0700140a00160b00160b00160b000e0700261300140a00
-0201002814002010000e0700020100140a00140a00160b002010001e0f002814001e0f00
-160b00261300201000160b000e0700160b00201000140a00160b00140a00180c00261300
-201000180c00201000160b00160b00201000140a000e0700140a00201000201000180c00
-261300160b00060300140a00281400140a00201000140a00140a002e17001e0f001e0f00
-0e07000e07002010000c06000e0700160b00160b000402001e0f001e0f000201000e0700
-0e0700140a00160b00281400160b001e0f000c0600160b000e0700180c00201000201000
-2010000e0700060300201000160b000e07000e07002613000201000e0700281400160b00
-281400140a000e07000e07000e07003018000e0700140a00060300160b000c0600160b00
-201000180c00201000261300ffa040140a002010001e0f00140a001e0f00201000160b00
-201000ff9e3c160b00180c001e0f00180c00180c00160b00160b001e0f00160b000e0700
-2010002010001e0f00140a00180c001e0f000201000c06000e0700060300201000281400
-180c00180c00160b00160b00201000281400140a002010001e0f00140a002e1700160b00
-0e0700160b001e0f00180c000c0600160b00180c00140a00281400281400261300160b00
-160b002010000e0700261300180c000e0700180c00261300160b000c06000603000e0700
-0e07000e0700281400261300160b00140a000e07002814000e0700160b00201000201000
-160b00160b00321900160b00180c00160b00281400201000160b00160b00160b00180c00
-160b001e0f00160b000e0700140a00160b002010002e17000e07002e1700201000180c00
-160b00160b00140a00160b00160b000e07000e0700160b000e0700160b002814001e0f00
-201000160b000603002010000e0700140a00281400060300
-2010000603001e0f00020100160b00020100060300060300160b00160b00281400201000
-140a00160b000e07000e07000e0700160b00040200140a001e0f00281400160b000e0700
-0e07001e0f00201000201000160b00160b00180c00160b000e0700140a003018000e0700
-0e07001e0f00180c00160b00201000160b002613001e0f00180c001e0f00180c00160b00
-2010000e0700180c002e17001e0f00201000201000201000020100201000261300040200
-0e0700060300201000180c000603001e0f00060300180c00180c000e07002010000e0700
-ffa142ff9830ff9d3affa54affa64c201000321900180c00ff9e3cff9d3a140a001e0f00
-0e07001e0f00160b001e0f00201000160b000e0700160b00201000201000301800281400
-0e07001e0f001e0f000e0700160b00160b00140a00160b00160b00201000160b00160b00
-140a00201000140a000e07001e0f000e0700160b000e07002010003a1d00180c001e0f00
-2613002613000402001e0f000e0700281400201000180c00160b00180c00201000180c00
-160b00201000201000140a00201000201000180c00140a001e0f00160b00140a001e0f00
-2814002e1700180c00160b00160b00160b00160b001e0f002814000e0700160b00140a00
-160b00160b00180c002010002010000e0700261300160b002613002814002010000e0700
-1e0f001e0f00281400060300140a00301800160b00201000180c001e0f00201000060300
-160b00140a00301800180c000c06002010001e0f00160b00180c00281400281400060300
-261300201000140a00160b00160b00261300140a00160b00261300140a002010000e0700
-160b00160b001e0f00201000140a00281400261300060300180c00261300160b000c0600
-180c00180c001e0f00160b002814000e0700261300140a00160b001e0f00201000201000
-2e1700261300281400160b002010002613002613003a1d00160b00160b00201000301800
-2814000e0700160b00160b002010000c0600160b00180c00160b000e07000c0600180c00
-160b00160b00301800160b001e0f00160b000e0700180c002814002010002814000e0700
-180c000e0700140a00140a00160b002613000e0700261300060300180c002613001e0f00
-160b002010000e07000e07000e07000e07000e07001e0f00140a00160b002010000e0700
-180c00180c00160b00160b00160b00140a000603002010001e0f000e07000c06000e0700
-140a002e17000e07000603001e0f00160b000c0600201000180c00160b000201000c0600
-160b000c06001e0f000603001e0f00140a00180c00180c001e0f001e0f000e0700301800
-180c002010002010002814001e0f00201000160b00160b00180c00160b00261300201000
-201000160b00160b00281400140a00301800201000140a00201000160b001e0f000e0700
-160b002814002010002010000e07001e0f000e0700060300140a00201000261300160b00
-160b00160b002e17002e17002010001e0f00201000180c00160b001e0f00160b000c0600
-0e07000e0700201000160b00160b00180c000e07000e0700160b00201000180c00201000
-180c001e0f00201000ffa54a281400180c00160b00201000201000160b001e0f00201000
-201000281400fffcf8180c001e0f00160b000e07000e07002010000603001e0f001e0f00
-180c00281400040200180c002010001e0f00160b00201000180c001e0f00040200060300
-180c002613001e0f00140a002010002814001e0f00160b000e07001e0f00160b001e0f00
-2010000e0700160b00140a000e0700301800160b00140a00140a00180c00281400160b00
-201000201000281400261300140a00140a00160b00160b00180c000e07000603000e0700
-140a00201000201000160b00201000281400140a002613000c0600160b00140a00201000
-281400180c000e0700201000140a00140a00201000140a00140a001e0f000e07000e0700
-0c0600381c000603003018002613002613002613000603002814000e0700160b001e0f00
-0603000e07002613000c06000c0600160b00160b00201000140a001e0f002010002e1700
-160b002010000402000e07001e0f002010001e0f00140a00
-0e0700201000261300180c00201000140a00160b00180c00321900201000140a00160b00
-2814000e07001e0f00140a00301800160b002613003018002010002613001e0f00140a00
-301800160b002613000e0700180c001e0f002814002613003018000e07000e0700201000
-160b00140a003219002010000c06001e0f000603000e07000c0600321900201000160b00
-160b00201000160b00140a00180c00201000020100160b001e0f00180c00180c000e0700
-160b00160b00160b00160b00180c000c0600160b002010001e0f00160b00140a00261300
-1e0f00160b00281400160b00140a00ffa040ff9c38201000060300140a00281400160b00
-2814003018002814001e0f00140a002010002613002814001e0f00060300180c00261300
-140a002010000e0700201000180c00140a00180c00ff99321e0f002613001e0f00140a00
-180c002010001e0f00180c00180c00160b001e0f00281400180c00180c00301800160b00
-180c001e0f002814001e0f000e0700180c00140a00180c002613000e0700301800281400
-0e0700140a00160b00160b002814000603000e07000c06002814002814000e0700301800
-160b00160b00201000160b00160b000c0600160b00160b001e0f00160b00180c00160b00
-180c00180c000e07002010001e0f00160b00160b00160b00180c00301800301800160b00
-0c0600201000201000160b000e0700160b002010000e0700180c000c0600160b00180c00
-1e0f000e0700160b000e0700140a00180c002010001e0f00160b001e0f001e0f00060300
-020100160b00160b00060300180c001e0f000c0600160b000603001e0f00140a00201000
-140a000e07000e07000e0700140a001e0f001e0f001e0f00201000180c001e0f00160b00
-261300060300201000261300160b00261300180c00160b002e17000e0700281400281400
-201000201000160b00160b00160b00180c00180c003018000c06000c0600201000160b00
-160b001e0f000e07002814000e07002814000e0700281400201000160b00160b00180c00
-0e07001e0f00160b00180c00060300180c00201000180c00160b00160b00180c000e0700
-160b00160b001e0f00201000160b00160b00140a001e0f00160b00160b00180c00160b00
-0c0600160b002010001e0f00140a00201000140a000e07000e0700180c00140a000e0700
-0e0700180c00201000060300160b00140a00160b00261300180c001e0f00160b000e0700
-180c002010001e0f00281400160b000c0600060300201000160b002010000e07000e0700
-180c00140a001e0f001e0f000603000e0700180c00140a00160b00261300160b00301800
-0e0700160b000c06000e0700201000180c001e0f00160b001e0f00180c000c0600160b00
-180c000e0700160b00060300160b002814000e0700140a00160b000e07000603000e0700
-281400160b00160b000c06001e0f000e0700160b001e0f00201000160b00160b00261300
-2613002010001e0f00160b000e0700160b00140a000c0600160b00020100160b001e0f00
-160b00160b00180c000c0600160b000e0700020100060300261300020100160b00160b00
-0e0700201000ffa448160b00281400261300261300301800160b002e1700301800201000
-140a002e1700201000ff9b360e07002613000c0600261300140a00180c00160b00180c00
-1e0f000603000e07001e0f000603002613001e0f00281400201000261300201000201000
-160b00201000160b00140a00160b002814001e0f00160b00160b00261300201000201000
-160b00261300140a000c0600180c000e07001e0f00060300160b00281400160b00140a00
-0e07000e07000e0700301800160b00160b00140a00261300160b000e07002010000e0700
-0603002814000e0700160b00140a00160b002010002814001e0f00160b00140a00160b00
-2010002010001e0f00160b001e0f002010002010000603002010001e0f00160b00201000
-1e0f00140a00140a001e0f00261300180c001e0f001e0f000e0700261300160b00180c00
-160b00180c00060300140a00140a000e0700201000160b000e07001e0f00040200201000
-160b000e0700201000160b00180c00201000180c00201000
-2010002010000603003018001e0f00160b001e0f002010000e0700201000180c00180c00
-160b00180c00180c00160b00180c00160b002010000e0700140a00160b000e0700160b00
-180c00160b000e07001e0f00180c000603001e0f000c06002010002010000e0700201000
-261300180c00160b002613000c0600160b00201000160b00140a000c0600201000201000
-2010000e07000e07000603000e0700180c001e0f000e0700160b00201000060300281400
-1e0f00040200381c001e0f000603001e0f002010000e0700180c000c0600160b00ff952a
-2010002010001e0f001e0f001e0f00281400ff9c38180c000e0700201000140a000c0600
-ff9326140a00180c001e0f00201000180c00180c00160b002010001e0f000e0700281400
-160b00180c00160b00201000160b000e0700060300160b002010002010000603000c0600
-160b00160b00201000201000201000160b00140a002010002613001e0f00160b00140a00
-201000201000180c00201000140a001e0f000e07002010002010000e0700140a00160b00
-140a00180c00281400140a00160b00020100261300201000201000201000201000060300
-160b00180c000e0700201000180c001e0f000e07000e0700160b002010001e0f00180c00
-0402002814000c0600180c001e0f001e0f00160b002613003018003018001e0f00160b00
-160b001e0f00160b00201000160b00180c00180c002814000e07000e0700160b000c0600
-201000160b00160b00140a001e0f000e07001e0f003018002814000e0700160b00140a00
-3219000e0700180c00180c001e0f002010002613002814001e0f001e0f00180c00160b00
-160b00281400261300160b00301800140a00140a00160b00160b00040200060300281400
-0e0700160b00180c002814000e07002010001e0f00180c00281400060300160b00180c00
-301800261300381c002814002010000e07001e0f003018002814000e0700140a00201000
-160b000e0700160b00160b00180c00140a00201000160b000e0700180c00201000201000
-2010002010002010001e0f00160b000e07002010001e0f000e0700140a00140a00140a00
-1e0f002010000e0700180c00160b00160b001e0f000e07000c0600160b001e0f00180c00
-1e0f000e07000e0700201000281400160b001e0f00140a00160b000603000c0600160b00
-0e07000e0700201000180c00140a00261300160b00160b00160b00060300160b00060300
-301800140a00140a002010000e0700180c002010000e0700140a002814000e0700160b00
-201000140a000e0700140a00160b00160b00180c00160b000e07002010001e0f00140a00
-060300140a001e0f000603000c0600180c00261300180c000603000c0600140a000c0600
-060300140a00160b00140a00180c00180c001e0f00201000201000201000180c00180c00
-201000160b00180c00160b00160b002010001e0f00140a00180c002613002613000e0700
-0e07000e07000e0700201000160b00160b001e0f00160b00160b00180c000e0700201000
-2e1700201000160b00281400180c003219000e0700160b00060300201000140a00261300
-180c00ff9b36261300180c000e0700381c003a1d003219004221004a2500442200321900
-301800201000160b00180c00ffa142160b00301800160b000603000e0700281400201000
-2613000e07000603001e0f00140a00140a00201000201000261300140a00140a00180c00
-180c00180c00201000180c00180c001e0f000e0700180c00180c00160b001e0f00201000
-180c00160b002814000c06000c0600160b00140a00281400261300301800180c00160b00
-2613000c06001e0f00160b002010002010001e0f00140a000e07000e0700201000160b00
-0e07002010000e0700140a002613000c06002814000e07000c0600060300140a00160b00
-0c0600020100180c001e0f00160b001e0f00180c00160b000c0600160b00160b000e0700
-0e07003018000c0600180c00160b00201000261300160b000e07000e0700060300180c00
-160b000603000c0600261300160b00180c00160b000402002613000c0600020100160b00
-0e0700201000160b002010000e0700201000160b000e0700
-2613001e0f00281400160b00281400140a002814001e0f00301800261300180c00201000
-2814000c0600160b00180c00201000140a000e0700160b00180c002e17000e0700201000
-201000160b00160b00160b000e07001e0f00281400201000180c00160b00180c00281400
-180c00160b000e07000201000e07002010002010000c06000e07002814000e0700160b00
-2e1700160b00140a00180c00160b000e07000c0600160b002010000c06000e07000e0700
-281400160b00160b002e1700160b000e0700160b000603002814002010002e1700ff9d3a
-0e07002010003018002814001e0f00180c00201000ffa244201000201000140a00160b00
-0e0700ffa244160b00180c000e07003a1d000e0700180c00160b00160b00180c001e0f00
-0e0700160b00201000160b000e07001e0f000e0700261300060300160b001e0f00201000
-160b000402001e0f00261300160b001e0f00281400281400160b00160b00160b000e0700
-0e0700180c00140a002010000e0700201000201000040200160b00201000301800160b00
-160b00140a00201000160b00160b000c06000e07002010002010000e0700140a000e0700
-201000281400180c00180c00140a00140a00281400180c000e0700201000140a00160b00
-180c00160b00160b000e07000e0700160b000e07002613001e0f00180c00201000201000
-201000281400160b000e0700160b000c0600201000060300281400160b00140a00201000
-180c001e0f00261300160b00140a002010001e0f00040200160b001e0f000e0700201000
-261300201000201000201000180c000603000e07002e17000e0700160b00201000201000
-160b001e0f00201000160b00180c00160b00201000160b000e0700060300201000060300
-1e0f002e17000c06000c0600180c00180c00201000160b00281400160b000e0700201000
-261300201000160b00261300201000201000160b001e0f000c0600201000140a00160b00
-160b00281400140a00160b00201000160b001e0f00160b00160b00160b002814000e0700
-2010000603002613000c06001e0f00180c000e07000c0600140a002010000c0600160b00
-140a000e0700201000281400160b001e0f00140a000c06000e0700180c001e0f00180c00
-0e0700160b000e0700180c000c06002e1700160b00060300180c000e07002613000e0700
-160b00281400060300201000201000160b00140a002010001e0f00160b000e0700020100
-2613000603000e0700160b002010001e0f00140a00160b00160b001e0f00160b00201000
-1e0f002613000e07002010003018001e0f002010001e0f000e07002010002e1700281400
-140a00140a001e0f000c06001e0f00201000180c00140a00140a00ffa448ff9e3cff8f1e
-ff9d3affa142ff9e3cffa0400c0600201000140a004020000e07001e0f00160b00160b00
-180c00140a002e1700160b00160b00201000180c00160b002e17001e0f00301800201000
-0201000e0700140a00201000180c000e07002e17000e07001e0f000e0700140a00020100
-140a00301800180c00160b00180c00160b00261300160b00140a00281400140a00201000
-160b00ffa1420c06002010002010003018004422004a25004a2500422100542a003a1d00
-3018003018002010001e0f00ff9d3a180c00140a001e0f001e0f000e0700261300160b00
-160b00160b001e0f00180c000e0700160b00160b00160b00140a000e07000c0600281400
-0e07000c0600281400160b002010000e07000e07000c0600160b002613000e07001e0f00
-281400160b002814000e0700180c002010000c06000e0700281400160b00160b00201000
-1e0f000e0700160b003a1d00281400140a001e0f00160b00180c00140a000e07000e0700
-201000201000160b00201000160b002010000e07000e0700201000160b00060300160b00
-3018002010000e07001e0f00160b000603000e0700201000261300180c00201000201000
-0e0700140a00321900180c000e07002814001e0f002613000e0700160b002e1700201000
-0e0700140a00140a00160b00201000140a000c06000e0700160b002010001e0f00160b00
-160b00160b000e0700201000281400140a00160b00160b00
-2814001e0f00160b003a1d002814002613001e0f00281400281400160b00140a000c0600
-140a00201000140a00281400160b00261300160b001e0f00201000160b00160b000c0600
-1e0f00261300160b00160b00160b001e0f000e0700160b00160b000e07002010001e0f00
-201000140a00201000201000160b00201000160b000e0700160b000e0700160b000e0700
-0e0700160b000c06000e0700140a00160b00160b000e0700281400160b00201000321900
-201000160b00201000201000160b001e0f000c0600060300160b000e0700060300ff9830
-160b00261300261300402000281400301800160b00201000ff9932201000160b000e0700
-160b001e0f00ff8c18160b00201000140a002814002814001e0f00180c00201000060300
-160b000c0600201000160b00ffa64cffa2440c06002010002010002010000e0700201000
-180c00180c00180c00160b001e0f002613000603001e0f00140a001e0f00060300160b00
-0e0700201000160b00160b000e0700201000281400160b00201000140a00160b00261300
-160b00160b00160b00180c00180c000e0700140a002010000e07002010001e0f00381c00
-160b002010001e0f000e07002613002814001e0f001e0f001e0f00160b000e07001e0f00
-0603002010002613000e0700180c002e1700160b00140a00201000261300160b000e0700
-2814000e07001e0f00160b00140a002010000402000603000c0600160b00261300060300
-201000160b000e0700160b00140a001e0f00180c002613002814002613002814000e0700
-160b00140a00160b00140a00140a000603002010000c06001e0f001e0f00140a00180c00
-0c0600180c001e0f00140a002814000e07000e0700180c00180c00180c000e0700140a00
-140a00201000060300180c002010000c0600321900201000261300160b00261300160b00
-281400160b00160b002010001e0f000402002814000e07002010000c0600140a00261300
-180c00180c000402000e07001e0f00180c000e0700160b00160b002010002814000e0700
-160b002814003219002613001e0f002e1700160b002814001e0f000402000e0700160b00
-180c002010002010000e07001e0f002010002010002010002010000c0600140a00140a00
-180c00160b000e0700160b000e0700160b00160b000e07000c0600160b000e0700180c00
-261300180c002010000e0700281400180c00201000160b00180c000e07001e0f000e0700
-140a000e07000e0700201000301800160b000c0600201000160b002e1700201000201000
-201000201000160b00160b00060300160b001e0f00160b00140a00160b00201000160b00
-201000160b00261300140a00140a00160b000e0700ff9c38ffa244281400160b000e0700
-0603001e0f002e1700140a00ffa244ff9e3cff9d3a281400201000140a001e0f00160b00
-201000160b00201000201000201000020100201000160b00160b00160b000e0700261300
-261300261300201000160b000e0700301800160b00180c000c06001e0f00160b00140a00
-0402002e1700140a00020100160b00020100201000160b00140a002010000e0700281400
-201000ffa54a261300281400160b002814003a1d006432005c2e006c36005a2d005a2d00
-2e1700281400160b00281400ffa244140a00160b00180c00201000060300160b00281400
-140a000e0700261300201000201000160b00160b000e07001e0f00261300160b000e0700
-0c06002814002613000e0700261300160b000e07001e0f00160b002e17001e0f00201000
-140a00180c001e0f00160b00160b002010001e0f002010002814000c0600201000180c00
-1e0f00201000160b001e0f00060300060300160b002814002814000402000e0700140a00
-180c000e07001e0f002814002e1700160b00160b00060300060300160b000e0700140a00
-201000140a000c06000e0700160b000e07001e0f00180c00180c001e0f00160b001e0f00
-0e0700040200140a00040200201000201000160b002814002010002010000e0700180c00
-0603002814000e0700140a00160b001e0f00180c00180c000e07002010000e0700281400
-0603000e0700201000180c00140a00201000160b00160b00
-160b00160b000e0700160b00160b00160b00301800201000160b00160b00160b000e0700
-160b000c06001e0f001e0f00160b000e0700180c00281400201000201000261300281400
-180c000c06001e0f00201000140a00261300160b001e0f00160b000e07000e07000e0700
-180c00140a00160b004020001e0f00261300180c000603000c06000e0700020100140a00
-160b001e0f000e0700160b00160b000e07000c0600140a002613001e0f000e0700201000
-160b002814003219000e0700201000180c001e0f002010000e07001e0f00201000ffa040
-2010001e0f002613002010003a1d00261300160b00160b00ff9b360201001e0f00060300
-1e0f000c0600160b002613001e0f00060300ffa54affab560e07001e0f002613000e0700
-2010002814000e07001e0f00201000180c00201000160b00180c00201000160b00060300
-1e0f002010000e07001e0f00140a00160b001e0f000c06000e07001e0f000e0700180c00
-160b002814000603000e0700201000201000140a00160b00201000180c00261300060300
-160b001e0f00160b00201000180c00060300140a002e17001e0f000e0700180c000e0700
-0c0600160b00201000281400160b00180c00160b000e0700201000281400160b00040200
-140a000e0700261300140a00160b00281400281400180c001e0f00180c00261300281400
-0c0600261300180c00180c003018000e0700140a00160b00201000040200160b00160b00
-201000201000160b000e07000e0700201000201000281400140a00160b00160b00281400
-180c00160b000e0700160b00160b001e0f00020100140a00160b00160b00160b00160b00
-2613000e0700180c001e0f000201002010000c0600180c00160b00160b00201000140a00
-1e0f00261300140a000e0700160b002e17002613001e0f000e0700201000201000160b00
-0e07002e1700201000180c000603000e07002010001e0f00160b00140a00180c00261300
-180c00160b00160b000c06001e0f002613002010000c06002010002814000e0700201000
-301800201000160b00160b00180c001e0f00201000160b00140a001e0f00180c00160b00
-140a000e0700201000160b00180c001e0f00281400281400180c00140a00201000180c00
-160b00201000201000201000180c000e0700180c00201000160b00160b00160b00201000
-180c00160b002814002613001e0f000e0700201000261300160b00140a000c0600281400
-140a002010000e0700301800281400201000201000140a00201000201000160b001e0f00
-0e07001e0f002613002010000603002814002010002613000e07002010001e0f00301800
-1e0f00201000140a00160b00160b00201000ff9b36301800201000201000261300160b00
-261300140a00180c000e0700020100301800261300ff9e3cffa54a140a00160b00160b00
-281400201000160b000c06001e0f00040200281400140a00160b00261300201000160b00
-261300160b00201000140a00201000160b001e0f000e0700160b00201000160b00201000
-1e0f001e0f00040200180c00180c00140a002010000201001e0f000e0700060300140a00
-1e0f00ffa54a160b002e17003018002613004020005229006e3700763b005e2f004a2500
-3a1d003018002010002814000e0700ff9c381e0f00140a002613001e0f000e0700201000
-3018001e0f000e07002e1700160b003018001e0f00160b00261300160b00201000180c00
-261300140a00281400160b00281400140a00060300160b00201000180c00281400281400
-0402000c06001e0f000e07000603001e0f001e0f00180c002814000c0600201000201000
-0e0700381c00180c00281400201000160b000e0700160b00180c00160b000e07000e0700
-301800160b002613001e0f002010001e0f00160b00140a000e0700180c00201000261300
-180c000e07000e07002010002814000e0700261300160b00201000160b00261300160b00
-060300180c00060300201000140a000c0600201000180c00160b001e0f00160b00040200
-160b00180c00160b00321900201000160b000e0700160b001e0f001e0f000e0700160b00
-160b002010000e0700160b00180c00180c00140a001e0f00
-160b000e0700180c002010001e0f000e07001e0f001e0f00160b00201000140a00201000
-0e0700180c00180c00160b001e0f000e07000c0600140a00180c00180c002010000c0600
-140a00160b00201000160b000e07000e07001e0f000e0700201000160b00060300180c00
-261300180c00160b001e0f00201000160b000201000e07000c0600160b00201000201000
-1e0f00201000180c00140a00301800140a00160b001e0f00201000180c001e0f00160b00
-321900180c00180c000e0700201000281400060300281400140a00321900301800ff9c38
-1e0f00201000281400201000321900281400180c00281400ffa448140a001e0f00201000
-060300281400160b00160b00160b00201000160b00201000ffa448201000301800ff9d3a
-ffa54aff99320e0700160b00160b00180c001e0f00261300160b00261300180c00160b00
-281400201000020100160b00160b00281400160b00140a00160b002010000c0600040200
-160b002010000c0600160b00160b002010002814002814002613002613000e0700160b00
-201000160b001e0f002010000e07000e0700180c002010001e0f000e0700160b001e0f00
-1e0f001e0f00180c00180c00160b00140a000e07000c06000e0700160b00281400201000
-1e0f003018002e1700140a00160b00160b00281400301800180c00160b000c0600201000
-0e0700201000160b00201000180c000c0600180c001e0f000603000e07002010001e0f00
-1e0f00180c001e0f000e07002010000c0600160b00140a000e07001e0f00140a00281400
-140a002613002010002010000e07002010000e0700160b001e0f00180c00160b00261300
-0e07001e0f00160b001e0f00201000261300201000160b00160b000e07000c0600160b00
-2e1700180c00160b00140a00180c00180c00180c002613000e07000e0700180c00140a00
-1e0f00281400060300020100160b00160b00201000180c00160b00160b00160b00201000
-2010000e0700201000180c00201000261300201000180c00180c00160b00201000060300
-160b002814001e0f00160b000e0700160b001e0f00201000140a000402002814000e0700
-201000140a002613000e0700160b00160b00160b00160b002010002814001e0f00020100
-201000140a00160b00140a00281400160b000e0700201000140a00160b00261300160b00
-1e0f00201000160b00160b000e0700160b00140a00180c002e1700201000201000160b00
-180c001e0f000603000c0600261300281400180c00160b002010000e07002e17001e0f00
-140a00160b00281400060300140a00180c00201000301800180c000e07000e0700060300
-0e0700140a00160b00060300040200ff9e3c0e07002010001e0f00281400160b00201000
-201000180c00261300160b001e0f00201000140a00261300140a00ffa244180c00140a00
-160b00261300180c002010000e0700261300201000180c00180c00160b00180c00160b00
-180c00140a001e0f00060300160b00160b000e0700160b00160b00140a00160b001e0f00
-160b00160b00140a00180c000e0700160b000e0700160b002010000c0600201000321900
-140a00ffa040180c00201000160b00281400381c004422005c2e006432007038004c2600
-422100160b00201000261300ffa142261300201000140a00140a00261300180c00060300
-160b001e0f00160b000e0700201000180c00281400261300201000281400201000180c00
-140a00160b000c0600060300180c000e07003018002010002814002e1700201000020100
-140a00180c00060300160b00140a002814002010001e0f00201000201000201000180c00
-180c002814001e0f000e0700160b002010002010000c0600060300201000160b000e0700
-180c000e0700201000180c000e0700281400160b001e0f00261300160b000e0700160b00
-160b00140a000c0600160b000603002010000c06002010000c0600160b00180c00281400
-160b00201000160b000c0600140a001e0f000e0700281400140a000c0600140a00140a00
-180c00180c00140a003018000c0600140a00140a00201000160b002613000e07000e0700
-3018002814000e0700180c00140a002613000e0700281400
-3018002010000e07000c0600201000201000281400261300140a00140a00180c00140a00
-201000140a00060300261300180c000e07000e0700160b00160b00281400140a001e0f00
-0e0700160b00160b000e0700140a00160b000e0700060300160b00160b002010000e0700
-0603002814000e0700160b000e07000e0700160b00180c00160b001e0f00040200160b00
-180c00180c00160b001e0f00281400201000140a00160b00160b00201000160b001e0f00
-1e0f00180c00160b00160b00201000140a003018004020002613000c0600180c00ff9e3c
-0e0700281400301800180c003018004a2500261300180c00ffa244160b00160b00160b00
-160b001e0f00140a00201000160b000e0700160b002814002010001e0f001e0f00160b00
-180c002010000201000c06002010001e0f00301800160b000e0700140a000e0700020100
-201000201000160b000e0700160b001e0f00160b00180c00140a002e1700140a00180c00
-160b00160b001e0f00020100140a002613001e0f00160b000c0600180c003018002e1700
-0e0700160b000e0700020100160b00180c00180c000c0600020100201000180c00201000
-160b000e07000e0700160b00160b00281400201000180c00140a002814000e07001e0f00
-1e0f00160b00160b00180c001e0f00140a00201000160b001e0f00160b00160b00281400
-0e07001e0f00301800140a00140a00060300160b00201000160b001e0f00180c00160b00
-1e0f00180c00201000160b002814000c0600201000160b00201000281400180c00201000
-0e0700180c00180c002010000e0700140a000c0600301800201000160b000e0700180c00
-160b00160b00180c000c0600140a000e07000c06000c06001e0f00201000180c00180c00
-140a001e0f00301800261300140a002e1700140a001e0f00160b000c0600160b00281400
-2010002814000e0700160b001e0f00201000160b00180c00160b000c06000e0700201000
-1e0f00060300160b00160b001e0f00160b00180c000e07000c06002010002613001e0f00
-201000281400201000160b000603001e0f002010000603002010001e0f00140a00180c00
-201000160b002010002814000e0700201000140a00201000140a00160b00180c00281400
-180c00160b002e17001e0f00140a000e0700281400140a00261300180c00261300281400
-160b001e0f003018000c06001e0f001e0f00201000140a00201000261300140a00201000
-160b000e07001e0f000c0600201000301800201000301800180c00140a00180c00140a00
-180c000e07002010000e07000e0700261300140a001e0f00160b00160b00160b00140a00
-160b00140a00180c00140a00ff9e3c160b00281400160b00180c002010002814001e0f00
-160b002e1700140a00321900261300180c003018000e07002814000e0700ffa54a180c00
-160b00201000060300160b000e0700140a00160b00261300180c00140a00020100160b00
-140a00160b00160b000e0700180c000e0700201000160b001e0f00180c000e0700140a00
-201000201000160b002010000e0700201000160b00140a00060300180c001e0f000e0700
-0e0700ffa142060300180c002814002e1700381c003018005a2d00422100402000321900
-301800301800160b00201000ff9b36201000160b000e0700140a00160b00180c00140a00
-160b00281400160b00281400180c000c0600381c000e07001e0f002613000c0600140a00
-160b00201000160b00160b000c0600160b001e0f00201000160b000e07001e0f001e0f00
-160b00201000140a00140a000c06002814002814002010002e1700180c00160b00180c00
-2010001e0f00281400160b00201000180c000603001e0f00160b002613001e0f00140a00
-261300140a001e0f001e0f001e0f001e0f000e0700160b002010002010000e0700160b00
-0c06000e0700281400180c00180c001e0f000e0700160b00160b001e0f00140a000c0600
-201000020100160b00140a002010000e0700180c001e0f00160b002010000c0600180c00
-160b002613002010002010000201000e0700140a00020100281400180c00160b001e0f00
-1e0f001e0f002814001e0f002010000402000e0700140a00
-180c002814001e0f00160b00020100261300140a00160b00160b000e0700261300060300
-1e0f00180c000e07001e0f002010002010001e0f00160b00180c00201000160b00ff9e3c
-ff9e3cff9d3affa040ffa54affa244ff9e3cffa448ffa64c2e1700160b00201000060300
-140a001e0f002814002010000e07001e0f00140a00160b000e0700140a00180c00160b00
-180c00160b00180c00160b001e0f00201000160b00261300060300201000180c00160b00
-0e07002613002613000603000e0700160b00140a00160b00160b001e0f000e07001e0f00
-ffa54a160b00261300160b00160b001e0f00160b00140a00ffa142160b00160b00281400
-261300160b00140a00160b002010000603000e0700281400160b00201000160b00140a00
-180c00160b00160b001e0f00201000201000160b000e07000e07000e07000603003a1d00
-140a002814002814002613000e07000e07000c0600381c001e0f000e0700201000201000
-160b000e0700160b00261300140a00160b00180c000e0700281400180c00160b00180c00
-0e0700140a001e0f00140a00201000180c00201000060300140a00201000281400060300
-160b002814002010000c06000e0700281400180c002010002010001e0f00261300261300
-281400160b000c0600201000160b00180c000e07002613000e07000e07000e0700160b00
-201000060300160b00201000201000201000201000160b00020100160b00160b00180c00
-180c000e0700180c00060300201000201000201000160b00160b00160b00160b000e0700
-160b00160b00040200160b00160b001e0f002814000e07000c0600140a00261300160b00
-0e0700160b002010002613002613000c0600160b00060300160b00261300201000160b00
-2e1700201000180c00160b000e0700160b00201000160b00201000160b000e0700180c00
-180c00201000160b000e0700201000201000201000261300180c000c0600160b000e0700
-180c001e0f000e0700180c00160b00301800140a000603001e0f00180c00140a00040200
-160b00201000180c00060300201000160b00201000060300160b001e0f001e0f00201000
-180c00040200140a00140a000e07001e0f00060300160b00160b00160b00160b000e0700
-180c00180c001e0f000e0700261300201000180c003018000c0600201000160b00140a00
-0e07002814002613001e0f00160b00140a001e0f00160b000e07000e0700160b00160b00
-160b00180c00281400160b002613000e07001e0f00180c00160b00201000180c000e0700
-160b000603000603002010000e07000e07002010000e0700261300160b00160b000e0700
-0e0700180c000c0600ff9428060300140a00180c001e0f001e0f002e17001e0f00201000
-2e17002e17002814002613003018001e0f00160b00201000060300020100301800ffa448
-160b00160b000e07000402001e0f00060300201000180c002010001e0f00140a001e0f00
-2010002010002010000e0700201000201000140a00140a00201000160b000e0700261300
-1e0f00160b00160b00140a00140a00201000140a000e07002e1700201000160b00180c00
-201000160b00ffa244160b001e0f003018002010002010003018003219002814002e1700
-3018001e0f001e0f00281400ff9b36261300201000140a00281400160b002814000e0700
-1e0f00140a00160b001e0f00201000180c001e0f00140a00180c00180c00160b001e0f00
-1e0f000e0700201000201000261300180c000e07001e0f00160b00281400140a00261300
-2814000e0700160b00160b000c0600201000201000160b000c06000603000c0600180c00
-201000201000160b00160b002613000c06002010000e0700140a00180c00160b00160b00
-160b00160b002613002613000e07001e0f00180c001e0f00160b002e1700180c00201000
-281400160b00160b000e07000e07002814000e07000e0700160b002010001e0f00180c00
-0c0600201000261300140a00180c001e0f001e0f001e0f000e07002010002010001e0f00
-0e0700261300201000201000281400160b00140a00180c00160b00160b00140a00281400
-1e0f00281400160b00160b00201000140a00201000180c00
-160b001e0f00281400180c00060300020100160b000603000e0700160b00180c000e0700
-160b000e0700160b000e0700140a001e0f00060300180c00201000ffa54aff9932201000
-2814000e0700160b00140a00180c00160b002010001e0f00ff9b36ff9e3cffa64c1e0f00
-180c00201000201000160b00160b00201000160b000c0600160b00201000140a00261300
-160b000e07002010001e0f00160b00140a00160b000402002010002010002010000e0700
-2010001e0f00201000160b00140a000c06002010000e0700201000281400160b00201000
-160b00ffa54a301800160b00281400140a00201000140a00ff98302613001e0f00160b00
-2613001e0f00160b00140a00060300160b003a1d001e0f003219000e0700160b000e0700
-0e0700160b000e0700160b00160b00140a00180c00140a00160b00261300201000201000
-160b00180c00160b00180c00160b00201000201000140a00160b000e0700160b00160b00
-2010001e0f000e0700140a000e0700160b002613004422001e0f00180c002010000e0700
-160b00160b00201000180c000603001e0f000e0700160b00201000261300281400140a00
-201000160b000e0700160b00140a00140a00140a00281400160b00180c002613000e0700
-281400180c00301800160b00201000160b00160b000e07002010002613000e0700180c00
-160b00060300140a000e0700180c00160b002010000e0700180c000e0700160b00201000
-201000160b00160b00160b00160b002010000c0600160b00160b00160b00180c00201000
-160b00201000140a000c0600201000140a00201000160b002e17002814002814001e0f00
-180c000e0700160b000c0600180c000e0700140a00160b00261300160b000e0700160b00
-160b00281400281400201000160b000e0700180c00160b001e0f00301800160b00160b00
-180c00140a00160b002010002010002010001e0f00160b00160b001e0f00180c002e1700
-1e0f000e0700180c00140a001e0f00140a00180c000e0700160b00140a00160b00201000
-160b00160b002010000c06002010001e0f00160b000e07002010000e0700160b00140a00
-160b001e0f00140a000e07000e0700180c002814003a1d003018000e0700281400060300
-140a00020100140a001e0f00140a002010003a1d00201000160b00281400160b002e1700
-0c0600160b001e0f00160b00160b00160b00160b00180c00180c000e07002010001e0f00
-261300261300201000160b00160b000c06000e0700060300180c00180c00160b001e0f00
-2010002010000c0600180c002010002814001e0f001e0f000603002814000e07001e0f00
-0e0700160b001e0f00ffa4481e0f00281400160b00201000180c003018002814001e0f00
-261300180c00301800160b00201000281400180c00140a00160b00180c00281400160b00
-ffa244180c00180c000e0700140a000402002e1700160b00281400160b000e0700160b00
-0e0700160b003018001e0f002814000e0700201000160b002613002010000c0600180c00
-180c00160b000e07000c0600060300160b00160b000c0600261300160b00140a00180c00
-0e0700060300140a00ffa142160b002010002010003a1d00301800180c00140a00301800
-201000160b00160b00ff99323018000e07000c0600160b000e0700140a000e0700060300
-201000160b00040200160b001e0f002010000603000e07000e0700201000160b000e0700
-201000140a002010001e0f00281400140a00301800140a001e0f00140a000201001e0f00
-180c003018002010001e0f000e07001e0f00201000040200160b00060300281400180c00
-160b00301800160b002814000603001e0f001e0f00160b002e1700261300180c00160b00
-1e0f001e0f002010002010000e0700180c00160b00180c00180c00201000160b00201000
-2010002010002e17002010002010000e07000e07000e0700160b00160b001e0f00160b00
-180c000603002010000e0700180c00180c00140a00201000180c002010000e07000e0700
-0e07000e07000e0700160b00180c000e0700180c001e0f00180c00140a00180c000e0700
-2010002010000c06002010002814000e0700160b00160b00
-180c00060300201000160b002814000c06000e07000e07000e0700201000281400140a00
-2e1700060300140a00160b00261300261300261300261300ffa0402010001e0f000e0700
-060300180c00201000160b000e0700261300160b00160b00140a001e0f00140a00ff9e3c
-ffa244160b001e0f00180c00180c00060300160b000c0600160b00140a002e1700261300
-160b00160b000e0700201000201000160b00040200160b00160b004422000e0700160b00
-0e07000c06002010002010002010001e0f000c0600261300180c00261300160b00160b00
-1e0f00160b00ffa4482814000e0700060300160b000e07002010000e0700140a00180c00
-2613000c0600140a001e0f001e0f00180c00160b000e0700140a00140a00261300201000
-0e0700160b00160b00180c00160b000c0600160b00140a00140a000e0700201000160b00
-160b00160b00180c000e07000e0700180c000e0700160b00201000160b000e0700201000
-180c000c0600160b00160b00140a002010000e0700281400180c00180c001e0f00281400
-160b00160b00201000160b00160b00140a00261300180c000e0700180c00201000201000
-140a00160b00140a000c0600180c000c0600160b00160b00201000160b00160b00281400
-160b00020100160b001e0f000e0700160b000e0700160b002814002010001e0f00180c00
-160b00281400160b002e1700160b003018000e07002814001e0f00140a000e0700060300
-180c000e0700160b00160b00180c003a1d002010000e0700160b00160b000e0700180c00
-160b00201000160b00160b00201000180c000e0700140a00060300160b001e0f001e0f00
-281400261300180c00180c00140a000e0700160b000603002814002e1700180c00160b00
-0e0700201000180c000603000e0700160b00160b00180c000603001e0f00201000261300
-281400140a00301800261300160b00160b00201000160b00040200160b00160b00140a00
-0e0700140a00180c00160b00140a00160b00040200180c00160b00160b001e0f001e0f00
-1e0f002e17000402001e0f00140a001e0f00160b00160b00261300180c000603000e0700
-201000180c000603000603000e07001e0f002010000603000c0600180c000e0700160b00
-0e0700180c001e0f00160b00160b000e07000e0700201000261300140a00160b00180c00
-160b000e07001e0f002010000e07000c06001e0f00201000160b00160b00160b00281400
-180c00020100261300160b00160b00180c00201000301800281400140a00201000180c00
-2814000e07001e0f00180c00281400180c00201000060300160b00160b00160b00160b00
-160b001e0f00ff9b36180c00201000160b001e0f00261300301800301800301800321900
-4020002e17003018004221002814002814002010002814002613000c0600261300261300
-1e0f00ff98300e0700201000201000180c00140a00060300160b00160b00160b00281400
-0e07001e0f00201000140a00160b000603002613000603000e0700140a002010000e0700
-160b002010002010001e0f00201000140a00180c000c0600180c00201000160b00180c00
-2010002010000e0700160b00ff9c381e0f00160b00201000201000160b00160b00281400
-261300261300ffa244201000160b00180c00281400261300160b00201000201000201000
-180c00160b00281400160b00160b00060300160b00201000180c002010000e0700160b00
-261300301800160b00140a00180c001e0f00180c001e0f00020100281400160b00201000
-0e0700160b00201000160b00140a000e0700160b002010001e0f00140a002010000e0700
-0c0600140a00180c00180c00160b00180c00160b001e0f00060300201000180c00201000
-1e0f00201000020100201000201000261300140a000e0700201000140a00180c00140a00
-140a001e0f00140a00160b00140a00180c00060300180c00201000261300160b00261300
-140a00160b00160b00160b00180c001e0f00140a00160b002010001e0f00140a000e0700
-180c00201000140a00201000140a001e0f001e0f002010002010001e0f00180c000c0600
-2814000c06001e0f000603000402001e0f000e0700140a00
-180c002010000c0600160b00180c000e0700281400140a00160b002010002613000e0700
-140a002010001e0f001e0f00201000261300301800ffa0402613000e07001e0f00201000
-140a00140a001e0f00281400060300160b00180c00261300140a00201000160b000c0600
-301800ff9c38ffa040201000160b002010000e07001e0f000e0700160b00160b00201000
-201000160b00060300180c00160b00180c00160b00160b00160b00140a000c06000e0700
-160b00160b00261300281400140a002010001e0f001e0f003018000201002010001e0f00
-160b00180c002e1700ff9d3affa448ff9c38ffa64cffa74e160b00180c000e0700060300
-2e1700180c000e0700160b002010001e0f00160b001e0f001e0f00201000180c001e0f00
-180c00140a002010001e0f002010002010001e0f001e0f00160b00201000180c000c0600
-0e0700160b002814000e0700201000180c00201000180c00201000160b00020100140a00
-180c00180c00201000180c00160b00201000201000160b002814002814001e0f00201000
-1e0f00160b00140a00180c002e1700160b00160b000603002010002613001e0f00160b00
-160b002010000e0700180c00180c00140a00160b000e07000e07000e0700160b00201000
-201000381c00160b00160b000c06001e0f000e0700201000160b000603001e0f002e1700
-140a00160b000e0700160b000e0700180c001e0f00160b001e0f00180c00160b00201000
-0e0700060300160b00160b000c06001e0f00201000180c001e0f001e0f000e0700281400
-0e07002010000e07001e0f00160b002814001e0f001e0f001e0f002814001e0f001e0f00
-301800261300180c00180c001e0f000e07001e0f002010003018003219000e07000e0700
-201000180c00160b00160b00160b001e0f00140a00281400160b00140a00140a00281400
-160b00160b000e07000e07001e0f00201000160b000e07001e0f001e0f00040200160b00
-160b000e0700040200180c00201000160b00180c00180c00261300140a00140a00180c00
-1e0f00160b00060300201000201000160b00160b000e0700140a000e0700281400281400
-2814000e0700180c000e0700201000140a00160b00281400281400160b00160b001e0f00
-2010001e0f000e07000e07002613000e0700060300281400060300160b00180c00160b00
-201000140a001e0f00140a001e0f00160b00201000180c00180c00140a00160b000c0600
-0e07002814000c06000e07000e07000c06001e0f00160b00201000160b00180c00180c00
-160b00261300281400140a00261300180c00160b000e0700160b00140a003a1d001e0f00
-180c000e0700ffa0400e07001e0f00180c000c0600301800201000422100402000442200
-381c004a25004221004221003a1d002814003a1d00281400261300281400201000160b00
-160b00ff99321e0f001e0f00140a00140a00060300140a00160b001e0f00281400261300
-160b00180c00160b001e0f00160b00201000060300180c001e0f00140a00321900140a00
-201000140a002613000e0700261300180c00160b00140a00160b00201000201000180c00
-281400140a00180c00201000180c00ffa952ff9d3a2814002613002010001e0f00201000
-ff9b36ffa952201000261300160b001e0f00160b002613000e0700140a001e0f001e0f00
-160b00281400140a001e0f00160b00180c00180c002010000e0700160b00201000201000
-1e0f00140a00180c00201000160b000603002613000e0700160b000e07000e0700442200
-160b001e0f002814002613000e07002010000e07000e07000c0600180c002814000e0700
-261300140a00160b00180c00180c00180c00160b00140a00281400201000060300160b00
-281400160b00160b00201000160b00180c000c0600160b00040200160b000e0700160b00
-281400160b003018002613000e0700160b00160b00160b001e0f00160b00201000261300
-140a00160b00160b00040200201000060300160b000e0700160b001e0f00160b00180c00
-160b001e0f000e0700060300261300261300160b00201000020100160b002010001e0f00
-160b000201002814002010000e07002010001e0f00201000
-140a00160b00140a000e07002e1700140a000c06002010000e0700281400180c00261300
-2010000e0700020100180c000e0700160b00060300ff9932140a001e0f00140a00160b00
-160b001e0f00180c00160b00201000180c000e0700160b00160b00201000261300160b00
-422100160b00160b00ff9932180c00160b00180c001e0f00060300160b00140a000c0600
-160b00160b000c06001e0f000e0700160b00160b00180c00140a000e0700180c000e0700
-1e0f00180c00160b001e0f00301800020100140a00160b002814000e0700160b00201000
-0e0700261300160b00201000160b00160b00160b000e0700180c00160b00140a002e1700
-2010001e0f00180c00180c00160b00180c00160b00060300180c00261300180c00160b00
-160b002010002e17001e0f00281400160b00201000160b00201000160b00301800281400
-0603000e07000201001e0f000e0700160b003018000e07000c0600261300180c00261300
-160b00201000201000201000180c002010000201000c0600160b00281400160b00160b00
-1e0f000603000e0700160b00180c002010002010002010000603000e0700160b00060300
-1e0f00301800060300201000140a00180c000c0600180c00140a002e17000e0700261300
-180c00160b00201000160b000e07001e0f002010002e1700160b002010001e0f000e0700
-2010001e0f000e07000e0700140a00140a00180c00140a000e0700261300160b00160b00
-180c00201000281400160b000e0700140a002010001e0f00160b00160b00160b00160b00
-261300160b00281400201000180c001e0f00201000261300180c002814002814002e1700
-2010002e17000e07002010000e0700140a00140a00160b00140a003018001e0f00180c00
-140a000e0700201000201000261300261300180c001e0f00160b00201000160b00201000
-201000201000060300160b00180c00160b000e07001e0f002010002010000603000e0700
-160b000603001e0f00160b00160b002010002010001e0f00160b00160b00160b00160b00
-201000261300160b000e0700281400160b00160b00140a00180c001e0f00301800281400
-2613000e07002010001e0f00160b000c06000e0700180c00160b000e0700140a00281400
-261300180c00160b00060300040200140a000e07000e07000e0700201000160b00281400
-201000201000060300180c00160b00140a002010000e0700180c001e0f00261300180c00
-060300301800160b001e0f00140a000c0600281400160b00160b00140a00201000160b00
-0c0600160b000c0600140a00160b00180c000e0700201000140a001e0f000402000c0600
-140a002e1700ff9c382814002814002010002814002814003a1d00381c003a1d004a2500
-542a00542a004c26005e2f005a2d004422003018002814002814002613002814001e0f00
-140a00281400ff9d3a140a000c0600281400160b000e07000c0600261300140a00160b00
-0e0700140a000201002010001e0f000c0600140a00201000180c00201000201000060300
-201000201000281400281400140a002010001e0f001e0f00160b002010002814000e0700
-060300160b00160b001e0f00201000180c00040200ffa54aff9d3aff9e3cffa448ff9e3c
-180c000e07002010001e0f00140a00281400201000180c00140a00140a00140a00160b00
-1e0f002e1700160b00160b00160b001e0f00180c001e0f002814000e0700160b001e0f00
-160b000603002e1700160b00180c00180c00160b002613000e0700180c000e0700180c00
-0c06002e1700201000180c000e0700160b00201000160b00160b00140a00160b00140a00
-160b001e0f001e0f002010002010000e07000e0700160b00261300201000281400160b00
-180c001e0f00160b00160b002010000e07002010000e0700160b004020000603001e0f00
-201000160b00140a00201000160b00140a00201000160b002814002613002814002e1700
-1e0f00160b001e0f002010000c0600160b00180c002010000e07002613002e17002e1700
-160b00160b001e0f00160b002e1700140a00201000201000140a000c0600160b000e0700
-1e0f00381c00040200301800140a00160b000e0700160b00
-281400140a00160b00180c001e0f001e0f00180c000e0700261300040200281400201000
-060300140a000e0700140a00160b00160b00ffa4481e0f00140a00180c001e0f00281400
-060300261300261300201000261300281400201000201000261300180c00261300060300
-1e0f00281400160b00281400ff9e3c261300160b001e0f000e0700160b00180c000c0600
-0603002613001e0f00180c000e0700180c00140a000e0700140a00160b001e0f00261300
-160b00160b00140a001e0f000e0700281400160b002010002010000e07002e1700281400
-2010001e0f00180c000e0700201000180c002010002010002010000c06001e0f000e0700
-160b000e0700180c002010000e0700201000180c00160b00201000060300180c000c0600
-281400180c002814000e07002010000e07000603000e07000c06000e0700060300281400
-2010000e07002010000e07001e0f002814002010002010000e07002010001e0f00160b00
-201000180c000e0700140a00140a00201000140a00281400140a000c0600180c000e0700
-180c002e1700160b001e0f00020100201000060300140a002e17000e07000e0700140a00
-180c00160b00160b000603000c0600060300160b00160b001e0f00261300261300201000
-201000160b00160b00160b00180c003018001e0f00261300160b00160b002010000c0600
-1e0f00160b00301800180c000e0700160b00160b002814002814002010000e0700160b00
-0e07002e1700160b000c0600160b000c06000c0600160b000e0700160b002e17000e0700
-2814003018000c0600060300281400281400160b00160b00160b003018002814001e0f00
-3018002613000603002010000e0700160b00180c00201000160b000603000c0600160b00
-160b000e0700160b00201000160b001e0f000c06001e0f00261300201000201000060300
-0e0700060300160b00160b00180c00160b00201000180c00261300180c00201000301800
-201000201000160b00160b00201000180c00160b00160b002e17002613001e0f00160b00
-0e07001e0f00201000201000281400160b00160b000c0600160b002010000e0700180c00
-160b00261300140a000c0600160b002010000e07001e0f002010000603002010000e0700
-261300180c00160b002814000e0700160b002010001e0f001e0f00160b00160b00281400
-060300201000180c002814001e0f000c0600281400160b00201000140a00140a000e0700
-160b002814000e07002814000e07002814002814001e0f00261300160b00201000261300
-0603000c06002010002613002010000e0700160b00160b003219000201000c0600281400
-1e0f00140a00ffa1422010002814001e0f002010002814002e17003a1d00442200422100
-6432005e2f00643200763b006c36005a2d005a2d004a2500381c00201000160b00261300
-160b00201000ff9d3a1e0f00160b00140a00180c002613001e0f00060300160b00140a00
-0e07000e0700160b00180c000e07000e0700060300261300201000281400201000261300
-0e0700180c00160b00261300160b000603000e0700180c001e0f000603000e0700201000
-180c00060300201000160b002010000201000e07002814000e07000c0600281400301800
-0c06000c0600160b000e07002010002010000603000e07001e0f00160b001e0f001e0f00
-201000140a00140a00201000201000160b00140a000e0700261300261300160b000e0700
-201000180c00140a002010001e0f001e0f00160b00160b002613002814000e0700201000
-160b00160b00321900180c00201000140a00201000160b000c0600180c001e0f00201000
-2010001e0f00160b00140a00160b001e0f000e0700180c001e0f002814001e0f001e0f00
-0e0700201000160b00160b000e0700020100201000160b000e0700160b00201000180c00
-140a00180c00160b00201000201000160b00201000160b00160b00201000180c000c0600
-2613000c06002010000603001e0f001e0f00140a00201000140a00201000281400160b00
-2e1700281400160b00160b000c0600180c00140a000e0700060300020100020100160b00
-160b002613000e0700201000160b001e0f00160b00040200
-0c0600140a002814002010000e0700160b00160b002613002814001e0f002814000e0700
-140a00160b000e0700180c00160b000e0700ff9932160b002613002613000e0700201000
-301800180c002814002814002613002814001e0f001e0f00281400180c00281400281400
-2613000603002613000c0600060300ff9d3a1e0f00140a00160b000e07002613000e0700
-160b000e07000e0700160b00140a00180c00160b00160b00281400261300261300281400
-140a002613000e0700140a00180c00201000180c00160b00160b00140a00160b00201000
-2010002010001e0f00321900180c002010000e0700160b002613000e07001e0f00160b00
-140a000603001e0f00261300160b00201000180c001e0f002814002010000c0600201000
-2010002010000e0700020100281400060300140a00160b00140a00261300281400140a00
-1e0f00281400160b00160b00020100160b00261300040200261300140a00060300261300
-201000160b000e0700180c002010002010000c06001e0f002814001e0f001e0f00201000
-0e0700180c002010000e07000e07000e0700160b00160b002814000e07000e0700160b00
-2010000e07000e0700321900180c002010000e07000e0700180c00180c002814001e0f00
-2814002010002814002814002e17002010000e07002010001e0f00201000160b00160b00
-160b001e0f000e07002814000c06000c06000e0700180c00160b00160b000e07000e0700
-160b002e1700180c000e07000603001e0f002010000c06000e0700261300160b000e0700
-0e0700160b00281400160b00160b00201000060300160b001e0f00201000281400301800
-140a00261300160b00140a002010000c06000e0700140a000e07000c0600140a000e0700
-2613001e0f00140a000c06001e0f00201000201000201000261300160b00140a00180c00
-2010000e07000e07001e0f00140a002010002e17001e0f00160b00201000160b00261300
-2e17000e0700180c000603003219002010000e0700140a000e0700140a001e0f00180c00
-180c00160b001e0f00180c00160b000e07001e0f00160b000e07000e07000c06001e0f00
-0e0700281400160b00180c000603001e0f001e0f00160b001e0f001e0f00140a00201000
-301800281400140a00160b00180c00201000201000281400160b000e07002010000c0600
-060300140a001e0f00060300180c000e07001e0f00180c00180c00180c001e0f002e1700
-2010001e0f001e0f00160b00160b00160b00160b000e07000c06000e0700140a00261300
-0e07000e0700180c001e0f002010003a1d000e07000e0700301800160b00180c00281400
-0e0700160b00ff9c38201000140a00281400281400261300422100381c00442200542a00
-6e37006c3600763b006e3700763b005c2e005a2d004221004a2500201000281400180c00
-160b00201000ff9932160b00281400201000160b002010002010000e07000e0700160b00
-160b00201000201000281400160b001e0f00060300180c00180c00201000160b00160b00
-0c06001e0f002010001e0f00160b00160b002010002613000c06002010002814000e0700
-160b000603001e0f000e0700201000381c00180c002613001e0f00281400281400201000
-140a001e0f00060300201000140a002814001e0f000e07002010001e0f003018002e1700
-160b000c0600281400180c00180c00160b00160b00180c00160b00160b00180c00160b00
-180c00160b00261300160b00281400160b001e0f000e0700201000180c00281400261300
-1e0f001e0f00180c000c06002010001e0f00180c00160b002010000e07001e0f00201000
-0e0700160b00140a00140a001e0f00140a00160b000c0600160b00201000201000160b00
-160b000e07000603002814000e0700160b003018000e0700201000180c00140a00281400
-201000180c000e07001e0f001e0f00281400301800160b000603000e0700201000160b00
-2e1700180c00160b002814000e07000c06002613000e0700201000160b00160b00261300
-140a00140a00201000160b000201003018000e0700180c00160b00140a00201000261300
-140a00180c000e07000201001e0f00160b00140a00160b00
-0e0700180c00180c002010002010000e0700040200140a002613001e0f002010001e0f00
-160b002010001e0f00180c000e07001e0f00ffa2440e0700140a00160b00160b00281400
-140a000e07000603003018002010002814002814002814002e17002e17002010001e0f00
-0e0700281400180c00140a002613000c0600ffa54a180c002010003018001e0f00140a00
-180c00180c00180c00140a00140a002613002010002814000e0700140a002613001e0f00
-2e17000e0700180c00180c00201000180c001e0f00160b00160b00180c00201000261300
-160b00180c00160b001e0f00140a000201002814000c0600261300201000140a00201000
-180c00301800180c000201000e0700060300160b002e1700180c00301800180c00261300
-2613000c0600160b001e0f00160b00160b00160b000e07002010000c0600160b00160b00
-060300180c001e0f000603001e0f000e07000e07000c0600281400261300160b00201000
-140a00180c00160b00140a00261300160b00281400180c00201000160b000e0700201000
-160b00160b000e0700180c00140a001e0f00180c00180c000c06001e0f00160b000e0700
-060300180c002814001e0f00201000160b00180c00140a00160b000c06001e0f00201000
-3018002e1700281400281400160b00180c00160b00160b00180c00060300180c00180c00
-201000201000261300201000160b00160b00160b00060300160b00201000160b000e0700
-160b00060300180c002814003219000603002814000e0700140a002010002010000e0700
-0c06000603000e07002e1700060300160b001e0f00301800160b002010000c0600201000
-0c06002010002613001e0f00140a001e0f00160b001e0f00281400140a00180c000e0700
-160b002010000e0700140a00160b001e0f002613002613002010002010001e0f00160b00
-160b00160b00180c00140a000603002e1700201000140a001e0f002010001e0f00201000
-201000160b00261300261300140a00281400160b00140a00140a002814001e0f00261300
-281400160b00281400180c00160b00261300140a000e07000e07000603001e0f00160b00
-0c0600040200261300180c002010000e0700160b00140a000e0700180c001e0f002e1700
-2010001e0f00201000160b00160b00160b001e0f00160b00160b00281400160b000c0600
-140a00140a00261300140a00281400140a00160b001e0f00261300160b00160b00201000
-321900140a00160b00160b000c06002010002613000e0700160b00140a00261300160b00
-281400180c00160b00160b00201000140a00180c00201000301800180c00160b00160b00
-261300160b00ff9d3a160b001e0f003219002e1700281400321900321900402000422100
-5c2e00763b00783c00783c008040005c2e004422004c26003a1d00281400301800201000
-2010001e0f00201000ff9b360e07002814001e0f001e0f002814001e0f00180c000e0700
-060300180c00180c000e07002010000c0600160b000e0700180c000e0700140a001e0f00
-160b00180c001e0f000e07002010000e0700201000160b00201000140a00201000160b00
-1e0f00160b000e0700180c00160b00160b00160b00201000160b00201000160b00201000
-160b00160b002010000c0600160b003018000c0600201000180c001e0f00160b00201000
-261300201000180c002010001e0f00160b000e0700160b00140a000603000e0700160b00
-201000160b000e0700140a00160b00160b00281400160b000e0700281400261300180c00
-2814000e0700180c001e0f000e07000c06000e0700180c002e1700281400201000261300
-140a00020100180c002814001e0f00140a002613000603000603000603000e0700281400
-140a00301800160b00180c00160b001e0f000e0700180c001e0f00060300140a00180c00
-160b000c0600160b00140a00180c000c0600160b001e0f000c06002010000e07001e0f00
-2010002010000e07002010000c06000c0600060300180c000e0700180c000e07000e0700
-160b00281400201000160b00180c00261300020100160b000e0700140a002010002e1700
-160b001e0f00160b00160b00201000180c00160b00160b00
-140a00160b00140a001e0f002010002010002e1700160b000c06002e1700281400180c00
-180c00180c000e0700160b002814002010001e0f00ffa74e2e1700281400281400201000
-3018002613000603001e0f003018002814004020000e07003a1d00201000201000180c00
-0e0700160b00140a00201000201000060300201000ffa0401e0f001e0f000e0700140a00
-160b000e0700140a00140a00281400201000180c003a1d000e0700180c000e07000e0700
-261300140a00201000180c00281400140a00140a00180c00180c00140a000e0700261300
-0e07000201002613001e0f00281400201000160b000e0700160b00180c00160b00140a00
-160b001e0f002010000e07000603000e07002613000e0700160b002e1700160b00160b00
-160b002613000e07000e07001e0f000e07001e0f000603002e17002814000603001e0f00
-140a001e0f00040200180c00060300160b00160b00201000140a00201000160b00160b00
-140a00160b00180c002010000e07000e07001e0f00180c001e0f00160b00140a00160b00
-0e0700160b000e0700180c00180c00201000160b00201000140a00261300160b00160b00
-0402000e0700180c001e0f00160b00201000201000201000301800160b00281400180c00
-1e0f003018003018001e0f002814001e0f002010001e0f001e0f000e07001e0f00180c00
-160b000e0700201000160b00180c001e0f00180c00140a000c06002010000e0700140a00
-1e0f002814003018002010001e0f00201000160b000c0600261300140a00160b00180c00
-2010002010002010000e0700321900180c000603002814002613000e0700180c00160b00
-2e1700180c00140a002010000e07002010002010002010000e0700140a00180c000e0700
-0c06001e0f001e0f000e0700140a00160b00160b00060300160b00201000281400140a00
-201000201000201000201000180c00201000060300160b001e0f00201000281400160b00
-180c000603000e0700180c000e07000e0700060300140a00180c001e0f001e0f001e0f00
-140a00180c000e0700160b00160b000e0700160b00201000301800140a00180c000e0700
-2010002e1700060300281400140a002010000e07002010000e0700060300160b00281400
-1e0f00201000160b00160b00160b00201000160b002613001e0f00180c00160b00140a00
-2814001e0f00020100180c00140a002814002010002814000e0700160b00281400160b00
-201000180c00261300160b00321900201000160b00180c002613000e07001e0f00140a00
-060300261300201000201000422100160b000e07002010001e0f002010001e0f001e0f00
-2010000e0700ff99322e17000e0700160b00281400281400321900381c004c26005a2d00
-6432006c3600763b007e3f007e3f005e2f005c2e004a25003a1d003a1d00381c00201000
-180c000e0700140a00ffa040060300201000261300160b000c0600160b002814001e0f00
-0c06001e0f002814001e0f00180c00160b00180c00160b00160b001e0f002010001e0f00
-160b00201000201000140a00281400261300180c00160b002613002010000e07003a1d00
-0e0700180c000e0700160b00180c000c0600261300040200140a003018002814000c0600
-1e0f00281400140a00201000060300140a00261300180c002010002613002010001e0f00
-0e0700140a00160b000e0700140a00140a00160b00321900160b00201000201000321900
-140a002613002814002010000c0600060300160b00160b001e0f00160b00160b00180c00
-201000160b00160b00201000180c002e1700180c003018002010000e0700140a001e0f00
-0e07000e0700160b00160b00180c00201000201000160b002613000e07000c06000e0700
-2010002e1700281400160b000e07000e07002010000c0600201000140a00160b00180c00
-2613000e0700060300281400060300160b002010001e0f00140a002010000e0700281400
-140a00261300180c00180c002010000e0700060300180c000c06002010001e0f001e0f00
-1e0f002010000e0700160b00281400160b00160b00281400160b00180c00160b00201000
-281400040200261300160b00201000160b002814000c0600
-1e0f002814002010002814002010000e0700160b00201000160b00180c00140a00180c00
-1e0f00060300180c00140a00180c001e0f00060300ff9b36140a00160b00180c00160b00
-2010002010000e0700180c003018003018003018002010003018003018001e0f003a1d00
-201000261300160b00301800180c00160b00180c00ff9d3a0e07001e0f00201000201000
-2e17002e17000e0700261300201000180c00180c001e0f000e07000e07002010000e0700
-301800140a00160b00261300060300201000281400201000160b00160b00160b000e0700
-2010000e07000603000c0600201000261300201000160b00040200160b00281400281400
-2613001e0f00180c000e0700140a00160b00160b001e0f00180c00160b00180c00281400
-281400201000160b00060300201000160b00160b000e07002010003018000e0700160b00
-060300140a00180c000e07001e0f00180c000c06000e07000e07002814001e0f001e0f00
-0c06000c0600201000180c001e0f00180c000c0600281400201000180c001e0f00160b00
-0e0700140a000c0600140a00180c000c06000e07001e0f00160b00201000201000160b00
-0c0600140a00201000201000160b00140a001e0f00140a002010000e0700201000201000
-0e0700261300201000160b002010001e0f00140a00180c00201000281400160b00160b00
-160b003018000e0700180c00301800160b00160b00140a00160b000c06000e0700201000
-160b000c0600180c00140a000e0700201000160b000e0700201000180c00160b00301800
-1e0f001e0f000e07002814000c06000e0700160b000201000c0600140a002010000e0700
-160b00201000201000160b00180c001e0f00180c001e0f00160b000e07002010000e0700
-180c00201000201000160b001e0f00160b000e0700201000060300160b00160b00140a00
-1e0f001e0f00180c00140a00140a00281400180c00160b00261300201000160b000c0600
-2010001e0f00180c00201000160b00160b00301800020100180c00160b00180c000e0700
-2613000c0600060300160b00301800180c002613003a1d000e07002010001e0f001e0f00
-1e0f00160b00140a00201000180c000e07001e0f00140a002010000e07000e0700160b00
-2613000e0700160b00140a000e0700301800140a00160b00140a00180c00160b00281400
-1e0f001e0f00201000261300201000201000140a002e17002010001e0f001e0f001e0f00
-160b000e0700180c000c0600301800201000140a00140a00180c001e0f000603001e0f00
-140a00180c00201000160b00281400060300140a00040200160b000c0600160b00140a00
-160b00180c00ffa74e160b00160b000402002010002e17003a1d003018003219005c2e00
-5229005a2d00703800ffc0807e3f00ffc488542a00402000281400301800381c00201000
-2e1700201000180c00ffa952160b00160b00261300160b00201000301800140a001e0f00
-2010002010002613002010000e0700140a00160b00160b00160b00160b00180c00140a00
-140a001e0f00160b000e0700160b001e0f00180c000e07002e1700201000281400160b00
-201000180c000e0700160b001e0f00160b001e0f00160b000e0700160b00160b000e0700
-261300160b00140a00160b00201000160b00160b00160b001e0f00261300160b000e0700
-261300201000140a00201000281400040200261300281400201000201000180c000e0700
-1e0f001e0f00160b002010000e0700160b002814000e07000c0600201000180c00281400
-1e0f00201000180c000c06001e0f00281400160b001e0f00020100261300160b00160b00
-0e07000e0700201000180c00160b001e0f003018000e0700160b002010002010000e0700
-140a001e0f00140a002e1700201000180c00060300180c00281400160b00160b00201000
-140a00160b00180c000e0700140a001e0f000e0700140a00160b00160b00180c00201000
-201000180c00201000160b00201000160b000e0700160b002613001e0f00180c00281400
-140a001e0f002010000e0700160b00160b00180c000c0600201000160b00160b000e0700
-160b001e0f000c0600281400201000180c002814000e0700
-160b00201000160b00261300160b001e0f00160b00321900160b00140a001e0f000e0700
-2e17002010000c06000603001e0f000e07000c0600140a00ffa1420e0700201000261300
-160b00140a000e0700180c002814002613002e17003018003a1d002814001e0f00281400
-180c00060300180c00140a002613001e0f000603000e0700ffa1422010001e0f00321900
-180c000e07001e0f000e07001e0f00160b00180c002010001e0f000c06002613000c0600
-281400160b00201000160b002613002010002e1700060300201000160b00180c00180c00
-0e0700201000160b00160b000e07001e0f00160b000e0700160b000c0600160b00321900
-2010001e0f00160b000603000e0700160b00160b00160b00180c00180c00160b00281400
-201000180c002e17003018001e0f001e0f00160b00040200160b00160b00180c00281400
-160b002010000e07000e0700160b000e0700180c00160b000e07002010000e0700160b00
-2010001e0f00261300160b002613002010000e0700160b00180c00180c00180c00160b00
-180c000e0700180c00201000020100180c00201000201000140a002010000e0700201000
-0e0700261300180c001e0f000603002010002010000e07001e0f00281400140a00201000
-180c00201000160b00180c00201000140a00160b00180c00321900281400060300160b00
-180c00201000140a00160b00060300201000201000160b000c0600140a00160b00201000
-0e0700160b00180c002010000e07000603001e0f00201000160b000c0600160b00160b00
-160b00160b000e07001e0f00160b00281400160b002814000e0700201000160b000e0700
-0e07001e0f00160b001e0f002613002613000c0600261300201000180c001e0f000e0700
-160b00201000261300160b00180c00180c00201000140a00201000201000140a00180c00
-160b001e0f00160b00160b00160b00261300160b00180c002814000c0600261300020100
-2010000e0700261300040200140a00160b000e0700160b000e0700020100261300180c00
-0e0700140a00160b00201000201000160b00160b00160b00060300140a000e0700201000
-160b00180c00180c001e0f001e0f00160b00160b00261300201000160b001e0f00160b00
-1e0f00201000160b00160b00201000160b00201000301800180c002814000e0700180c00
-180c00160b00060300160b00201000180c00160b002010000201001e0f00201000160b00
-140a00201000160b000e0700160b00201000201000180c002010000e0700201000160b00
-160b000c0600160b000603001e0f00160b00160b000201001e0f001e0f00140a001e0f00
-2613000c0600160b00ff9e3c0e07001e0f00281400140a00381c00201000381c00402000
-3a1d005e2f00ffc0806432005a2d003a1d00ffbd7a381c00381c002e1700201000201000
-140a00160b00201000ffa54a2e1700261300261300160b00160b00281400160b00140a00
-160b000e0700160b002613000e07000e0700160b002613001e0f00180c00160b00201000
-201000281400060300201000180c001e0f00160b002814002613002814002613000e0700
-180c002613002010002010002814002010002613002010002814001e0f00201000180c00
-281400160b001e0f00180c000c06000e0700201000201000160b00201000261300160b00
-160b001e0f00180c00160b001e0f001e0f003018001e0f00180c00060300140a00180c00
-201000140a00201000261300180c000e0700160b00201000160b00160b00060300140a00
-3018000e0700140a00180c000c0600160b00261300160b002613001e0f000e07001e0f00
-261300180c00160b00201000301800180c00201000180c00201000261300261300160b00
-0e0700201000180c00140a00060300160b000e0700180c00160b00140a000c06001e0f00
-201000261300180c00160b001e0f001e0f00261300140a00261300261300060300160b00
-201000201000140a00180c001e0f00180c00180c00140a00261300180c00201000160b00
-160b00180c00140a002814002814002814002814000e0700301800180c00281400020100
-140a002010000e07001e0f00261300180c00060300160b00
-160b00180c002010000e0700160b000e07001e0f00180c000c0600180c000e0700140a00
-180c000e0700180c000e07001e0f00180c00060300201000ffa64c160b00040200160b00
-0c0600201000281400201000180c002010001e0f001e0f00261300261300201000201000
-160b002e17002814002814001e0f00160b00160b00060300ffa040160b002010000e0700
-281400140a00140a00160b00140a00201000160b00160b00281400160b00261300201000
-261300180c00180c00160b00201000160b00160b00160b00160b002814003219003a1d00
-140a001e0f00261300160b00160b00160b00180c000e0700140a00201000160b00281400
-140a00160b002010002010002814002e17000c0600160b002613002814000e0700201000
-301800160b000e0700201000140a002814001e0f002010002613000c06000e0700160b00
-140a001e0f00281400160b000e0700160b002010002010001e0f00201000180c00140a00
-0e0700201000020100160b00020100201000201000180c00160b002e1700301800281400
-180c00160b002010000e0700140a000e0700301800140a00140a00201000160b00140a00
-2010001e0f000e0700160b001e0f00201000180c001e0f00160b00180c00160b00160b00
-180c002814002613001e0f00160b001e0f00180c002010000e0700180c00160b00140a00
-160b00140a00160b00180c000e07003a1d00201000201000060300160b002e1700160b00
-0e07001e0f00201000201000160b003a1d00201000140a00201000140a002010001e0f00
-180c000e0700160b000603000603000e0700281400160b00160b00160b00160b00140a00
-0c0600040200180c001e0f00160b00201000261300160b002613001e0f00201000180c00
-0e0700160b002e1700060300201000201000160b00160b000e0700160b00140a000e0700
-0e07000e0700281400140a000e07000201002010003a1d00180c00160b001e0f00160b00
-060300261300160b002010002010000e07000e07001e0f00160b000e0700180c00160b00
-1e0f00140a001e0f000e07001e0f001e0f00201000160b00301800140a00160b000e0700
-160b00160b00281400261300160b00140a002814002010002e1700140a00160b00201000
-281400160b001e0f000e07000603000c0600140a00201000060300201000180c002e1700
-1e0f00201000180c00180c00160b002010000e07000e07000c0600160b00160b00040200
-040200160b00381c00160b00180c00281400140a000e0700261300180c00281400201000
-180c00160b002e17000e07000e07000603002814000e07000e0700160b001e0f00201000
-1e0f00180c00301800ff9e3c020100201000160b00281400281400301800321900321900
-422100542a004422004a25004a25004c2600542a004221002e1700201000201000261300
-1e0f001e0f00060300ff9e3c180c00140a00160b000e07000e07002010001e0f00040200
-0e0700301800201000180c002613002010000e07001e0f00180c001e0f000c0600160b00
-160b002010002e17002e1700160b00281400180c001e0f001e0f002010001e0f00261300
-0c0600160b002613002010000e0700160b00160b00160b00140a00180c001e0f00140a00
-201000201000140a002010000e0700180c00160b000e0700160b00140a00180c00201000
-381c003018000e07002010000603003219002010002613000201000e07002010000e0700
-281400060300180c002010001e0f00160b00301800140a002010001e0f000e0700160b00
-160b00140a00160b00201000201000040200201000160b00281400160b002010001e0f00
-160b00160b002010002010000e07001e0f000c06001e0f002010002814001e0f00321900
-140a000e07001e0f001e0f00160b00261300160b00301800060300160b00180c000e0700
-160b00160b00261300160b002613002814001e0f000c0600160b000e07000e07001e0f00
-0c06002010001e0f002010000e0700201000180c000402000e0700160b000e07000c0600
-2010002e17001e0f000e07002613001e0f00160b000e0700261300201000160b00060300
-160b00140a001e0f00140a00160b00180c001e0f00060300
-2010002e1700261300201000060300180c000e07000e07000e0700160b00281400201000
-2010000e0700180c001e0f00160b00020100180c00201000160b00ff9d3a0c06000e0700
-140a000e0700140a00281400180c001e0f00160b00140a00180c002814002e1700201000
-281400160b00140a00140a000e0700180c001e0f000e0700ff9c38140a002010001e0f00
-2814000e07000c0600160b002010000e0700180c002010000e0700140a001e0f000e0700
-2010000e0700301800261300180c00140a002010000e07000e0700160b00180c000e0700
-180c00160b00180c00160b00180c00180c00201000201000160b00140a00180c00261300
-180c000c0600261300180c001e0f002010000e07002010002613002814000e0700201000
-160b00140a001e0f00160b000e07001e0f00180c002010003a1d000c0600140a00160b00
-160b00160b002010000e0700301800160b002010001e0f000e07000e0700060300140a00
-281400261300281400180c00160b000e0700060300160b00201000140a000e07000c0600
-160b00201000180c00160b00281400160b000e07000201000c0600180c001e0f001e0f00
-160b00040200160b00060300160b00160b00201000180c00160b00201000180c00201000
-160b002010000c0600160b00180c00201000160b00160b00160b00201000060300201000
-0e0700160b001e0f00201000261300140a00160b00160b00020100201000160b00160b00
-1e0f00160b002010000e0700060300160b001e0f002814000e07002010002010001e0f00
-2613000e0700201000281400281400281400180c00201000140a00281400160b000e0700
-261300160b00160b00160b00180c00160b00160b00160b001e0f00140a00180c00261300
-0e0700180c000e0700180c00201000180c00140a00261300160b00160b00201000160b00
-140a002010002e1700140a002e1700160b00281400160b002010000c06000e0700160b00
-160b002e1700160b000c0600261300201000180c00160b001e0f000e0700180c00140a00
-1e0f00140a000e0700160b001e0f00261300201000160b000e07000e07001e0f00201000
-160b00160b00180c000e07001e0f00140a000e0700281400201000160b00201000160b00
-160b00160b002e1700301800160b001e0f00180c000c0600160b002010002814000e0700
-201000261300180c001e0f002e17002613000e0700160b00201000201000201000020100
-0c0600281400160b00160b00201000160b00180c00180c00140a001e0f002010000e0700
-0c06000c0600160b00160b00180c000603000e07000e0700281400160b00160b00160b00
-160b00160b000e07000e0700ffa040201000140a00140a00281400160b002e1700261300
-2e1700ffab564a25003a1d005a2d00381c00381c002e1700261300201000201000381c00
-1e0f00060300140a00ffa448180c00201000160b00140a00201000140a000201001e0f00
-0e07000e07000c06000e0700140a00160b000e0700160b00140a00160b001e0f00160b00
-1e0f000603000c06000603001e0f00160b00281400261300180c00281400140a00261300
-160b00160b001e0f000c0600160b00201000140a000c0600060300180c00201000160b00
-0e0700160b000e0700180c00281400140a002010003018000e07000e0700160b000c0600
-160b00201000180c002e1700422100060300160b00160b00160b00160b00180c00321900
-0e07001e0f00201000261300201000160b00201000301800160b00160b002e17001e0f00
-140a00160b00160b00160b00160b000e07001e0f00180c00140a00140a001e0f00140a00
-1e0f00281400160b00160b00160b00160b001e0f00160b001e0f00160b001e0f00201000
-2010001e0f002613001e0f000e07001e0f00281400160b00160b00201000281400180c00
-0603001e0f00180c00140a000e07002010000e07000e07000e07000c06000e0700160b00
-1e0f00140a000c0600180c000e07001e0f00060300160b003219000c06000e0700140a00
-1e0f001e0f00160b000e07002010000e0700160b001e0f00160b00ffa448201000281400
-0e07001e0f000e0700201000160b00261300180c00201000
-201000140a000e0700201000160b000e0700140a002010002814002814002613000c0600
-1e0f00180c00160b000c06000e07000e0700160b00060300281400160b00ff952aff9e3c
-1e0f00281400180c00160b00261300301800160b00201000140a003018002010000e0700
-0e07000e07002010001e0f00201000261300140a00180c00ffa4480c06000e07001e0f00
-160b002010002e17000c06000c06000c0600160b000e07000e0700160b00140a00160b00
-0c06001e0f002e17002010000e0700140a00160b000c06002010000e0700060300281400
-2e17002010000e07002e17000e0700180c00261300180c00160b000603002010001e0f00
-160b00261300261300180c00201000180c00060300140a000e0700160b002e1700201000
-160b00261300180c00180c002814003018001e0f00160b00261300201000321900201000
-180c00201000160b000603000e0700281400160b00201000160b00160b00160b000e0700
-2e17001e0f001e0f00160b00160b000c06001e0f00180c00201000140a00140a000e0700
-0e0700140a00180c00160b00261300261300160b001e0f00140a00140a000c06001e0f00
-160b002010000e07002814002814002814001e0f00201000160b00160b002613001e0f00
-160b00160b00201000020100160b000e0700140a00180c00160b00160b00160b00140a00
-2613002814001e0f000e0700201000140a00261300281400180c00201000160b00180c00
-160b001e0f001e0f00281400160b00140a000c06001e0f00160b000c06000c0600180c00
-160b00140a00180c00140a00160b00140a000c06002010000e0700180c00160b00180c00
-140a000e0700160b00180c001e0f00160b00180c000e07003a1d00160b00140a00140a00
-160b00180c00180c00160b003018002010000e0700201000160b00281400160b00201000
-140a000e0700140a000e0700160b000603001e0f00180c00140a00261300140a00160b00
-1e0f00140a00180c00180c002010001e0f00160b00261300201000040200160b000e0700
-0e07000c0600060300160b000e07002010001e0f000e0700180c000e0700140a00180c00
-1e0f002010000c0600140a00160b002010002010001e0f002e1700160b00140a000e0700
-261300160b00201000180c002e17001e0f00180c00201000160b00180c001e0f00160b00
-1e0f00201000160b00060300201000160b00180c001e0f00140a001e0f000e07001e0f00
-2010001e0f00201000160b00201000160b00160b000e07001e0f00180c001e0f00180c00
-140a00201000160b001e0f002010002814001e0f00180c000e0700180c002010000c0600
-261300180c00140a00140a00ff9c38180c000c06002613003018002e1700281400381c00
-301800301800422100301800301800381c00301800301800ffa64c180c00201000301800
-180c00201000ff9d3a281400201000201000180c000e07002010001e0f001e0f000c0600
-281400201000160b00160b000e0700180c00160b000e0700160b000e0700140a00160b00
-201000281400180c00140a001e0f000e0700201000201000180c00160b00160b00281400
-160b000e07000e07000e0700160b00160b00180c00180c00201000180c00180c000e0700
-160b002814002010001e0f00201000180c00301800140a00201000140a001e0f00261300
-0c06000c0600140a00160b000e0700160b001e0f00180c00160b000e0700160b00160b00
-201000160b00160b00160b000603003a1d00201000201000180c00180c002010001e0f00
-160b00160b00261300261300140a00140a00160b00281400180c002e1700180c00140a00
-301800261300160b00140a00160b00020100160b001e0f000e0700180c00180c001e0f00
-180c00160b00140a00160b00140a00160b00180c000e07001e0f00160b002e1700140a00
-0c0600140a00060300140a00160b000c0600160b000c0600180c00160b002814000c0600
-0c0600180c00160b00160b00180c00201000060300140a001e0f00201000160b00040200
-180c00180c000e07000c06001e0f002010000e07000c0600ffa040060300ffa244ffa244
-ffa0401e0f00140a000c06000e07002814002010000c0600
-160b00140a00180c000e0700160b00140a00160b00160b00160b00180c00160b001e0f00
-180c00160b00060300060300060300160b00180c000e0700201000201000201000140a00
-ff9d3a261300160b00201000281400160b00201000281400261300160b00160b00301800
-2814002010002814000e0700140a00140a00281400ff9e3c0c0600140a00180c00160b00
-180c001e0f00140a00180c002814000e0700160b00140a002613000e0700180c00261300
-2613002010002010001e0f00180c00201000140a00180c00160b00160b00261300180c00
-201000201000160b00180c004020000e07001e0f00160b00201000201000160b00201000
-281400321900020100301800201000060300160b001e0f00180c00140a00201000160b00
-180c00140a00261300160b000e07002010002010002010000603001e0f00201000140a00
-2814001e0f000e0700201000281400261300160b00180c000c06000e0700180c00261300
-180c00160b000603001e0f000e0700201000160b002613000603001e0f00140a00160b00
-201000160b000c0600140a00160b00160b000e0700160b00160b00180c002010001e0f00
-140a000e07000e07000e0700160b00201000201000160b00261300201000160b00160b00
-0e07000c0600160b000e0700180c002613000e07002e1700160b002814002e1700301800
-0c0600281400160b00060300140a00160b00201000201000160b002613001e0f002e1700
-201000261300201000180c00281400261300160b00180c00201000160b00180c00180c00
-1e0f000e0700201000180c00160b00261300180c00140a000e07000e07002010002e1700
-140a00180c00201000180c000e0700140a000201000e07000e0700160b00180c00201000
-160b002814001e0f000e07000e07000e07001e0f001e0f00180c000e0700160b001e0f00
-0e07001e0f001e0f00201000160b00180c00301800160b00140a00321900160b00201000
-160b002814000e0700160b00140a000e0700201000160b000603000603001e0f000c0600
-281400160b000e0700140a00160b000e0700180c00180c00281400201000160b00281400
-180c00201000180c00180c002010002010000e0700140a001e0f00160b00040200140a00
-201000160b00160b002814002e17002e17002010002814000e07000603001e0f001e0f00
-160b001e0f001e0f00201000140a000c0600201000160b00160b002010001e0f001e0f00
-180c00160b00261300180c000e07002613000e0700160b00201000180c00261300020100
-160b000e07002613002814000e07001e0f00140a00201000180c002814001e0f001e0f00
-201000281400180c00261300160b00ff9d3a2613001e0f000e0700180c00261300201000
-2613002e17002814003018001e0f00201000281400160b00261300180c002814001e0f00
-0c06002e1700ff9c38140a00160b000e07000e07001e0f00201000160b003a1d001e0f00
-160b000e07000e07000e07000c06002010000e07000c06000e07002e1700160b00180c00
-0c0600160b00160b00160b000c06000e0700140a00160b00180c00261300160b00201000
-160b000e07001e0f000e07000c0600301800140a00180c002613002010000603000e0700
-160b00180c001e0f000e0700160b002010000e07000e07002010000e0700160b001e0f00
-160b00160b000e0700160b000e0700281400180c00160b000e0700201000140a00201000
-180c001e0f00180c002010000e07001e0f001e0f001e0f00180c00422100060300160b00
-180c002814002010001e0f00160b00180c00140a001e0f000c0600140a00201000201000
-180c00281400201000180c001e0f00261300140a00160b002010000e07000e0700160b00
-0e0700180c00140a00201000160b00160b001e0f00160b00160b000e07000e0700140a00
-060300180c00201000180c00140a00160b002e17001e0f00160b00140a00160b000e0700
-140a00201000140a00160b00160b001e0f000e07001e0f00261300160b00160b00160b00
-140a00160b00160b00180c002010001e0f001e0f00ffa54a180c00201000321900180c00
-201000180c002010001e0f002814002010002613001e0f00
-2613000603000e0700201000180c000603000e0700180c000e0700180c00160b000e0700
-160b002814002010000e07001e0f000e0700201000281400201000160b00180c00160b00
-140a00ff9d3aff9e3c160b00201000160b00160b000e0700160b003018000e0700140a00
-0603002010002010000c06002010001e0f00ffa0402010000e07002010000e0700180c00
-160b00160b00140a00201000180c00160b000c06001e0f000e0700160b00180c00281400
-3018002e1700281400180c00140a002814000e07000e0700201000160b00140a00261300
-301800160b002010001e0f002010004221001e0f002010001e0f00160b00020100160b00
-0402000e0700160b002010001e0f00160b00040200160b00060300201000140a00201000
-160b002613002e1700180c000e07000603000e0700160b001e0f00180c00301800301800
-160b002e1700160b00201000140a00160b00160b00201000020100201000160b001e0f00
-1e0f000e0700180c00140a001e0f00180c000c0600060300160b000c0600201000160b00
-281400201000160b000e0700140a00140a002814000e07000e0700201000201000180c00
-0e0700140a00160b002010002814001e0f00140a00060300201000160b001e0f00201000
-060300140a00201000040200180c00160b00180c00201000180c00140a00180c00160b00
-140a00060300160b000e07002613002010000603002010002010002010001e0f000c0600
-180c00201000201000160b00180c00060300160b00301800160b00301800201000160b00
-2010001e0f000e07000e0700140a00160b000e07001e0f00140a002814000e07001e0f00
-020100160b000e07000e0700160b00160b00201000160b001e0f00160b000603000e0700
-160b000e0700301800201000140a00180c001e0f001e0f002814000e07002010000c0600
-0e0700180c002e1700180c00140a000e0700160b000603000e07002010000e0700261300
-281400201000160b002613001e0f000e0700281400140a00040200160b001e0f00140a00
-2e1700160b00140a000e07002814000e0700140a00140a002010001e0f00180c00140a00
-180c00160b001e0f00160b00140a00201000160b00020100180c00060300281400060300
-160b00180c00140a000e0700140a00201000060300180c00140a00301800160b00281400
-2010001e0f00160b00020100281400201000160b000e0700261300201000140a00201000
-0603000603000201000e0700160b000e0700160b00281400160b000e0700160b00160b00
-2010000e0700160b000402002010002010000603002010002814001e0f00160b00140a00
-201000160b00140a00160b00201000301800ff9830140a00261300180c00201000140a00
-ffa244281400140a003018002010002814002814000e0700160b001e0f00180c00140a00
-261300ffa448180c00281400160b000e0700180c00261300140a000e0700261300180c00
-0201001e0f00180c000e0700180c000e0700281400201000160b001e0f001e0f000e0700
-281400201000180c00160b000e0700160b002010002814000e0700160b00180c00160b00
-160b00180c00261300281400160b00140a00201000160b00201000201000201000261300
-2010000603000e07001e0f00160b00160b00140a000e0700160b00180c00140a00140a00
-180c000e07000e07002814002613002010001e0f00160b00281400160b00140a00160b00
-020100201000261300160b00201000201000140a002613003018000e0700180c00060300
-0e07000e0700160b00160b00180c002010000e0700261300281400180c00180c00180c00
-0e0700160b00180c00281400201000160b001e0f000e07000e0700140a00261300060300
-1e0f002e1700140a000c0600180c00180c00160b002010000e0700160b00180c00140a00
-140a00180c000e07000e07001e0f00140a00180c00201000281400180c00160b00201000
-2010002010000e0700301800160b000e0700140a000e07000e0700201000201000140a00
-180c000c06000c0600201000180c00140a00160b00ffa2441e0f00201000281400281400
-160b00160b00ffa4482814000e07000e07000e0700281400
-060300160b00180c00180c001e0f00140a00281400140a00160b00160b000e0700160b00
-0e07000c06000c0600180c00201000201000160b00160b00160b000e0700180c002e1700
-180c001e0f00261300ffa142ffa040ffa142140a000e07000e0700281400180c00301800
-140a00261300160b000e0700ffa448ffa74e180c000c06000e07001e0f00160b00201000
-180c00140a000c06000c0600201000160b001e0f000e0700060300201000201000140a00
-160b00180c00281400160b002613002010000e0700180c00261300180c00060300160b00
-160b002613000e0700060300301800201000140a00180c001e0f00160b00160b00140a00
-160b002814000e0700160b00201000180c00261300180c000e0700281400180c00281400
-1e0f00201000160b00180c000e0700160b00160b00160b000c0600160b00201000201000
-2010000e0700281400140a001e0f00140a002814000402001e0f00281400160b001e0f00
-140a000e07001e0f00201000160b00180c000402000e0700160b00261300201000160b00
-1e0f002010000e0700201000160b00160b00020100201000180c00160b00180c00140a00
-0e07001e0f000e0700201000160b00160b00201000160b002010000e07002010000e0700
-140a002814000c0600301800180c00180c00281400281400160b002010000c0600160b00
-0c0600261300281400160b00180c002814002010000e07002613001e0f00160b00261300
-0e07000e0700180c00180c001e0f002613001e0f00180c000e0700160b00201000180c00
-060300160b000c06000e0700180c00140a00180c00160b00281400140a00201000281400
-0e07001e0f00140a001e0f000603000e0700201000140a000e07000e0700180c00140a00
-160b00160b00201000261300160b00160b00160b000e07001e0f00201000281400180c00
-261300160b000e0700201000160b00180c002814000603002814002613001e0f00060300
-1e0f001e0f00160b00201000261300180c00140a00140a00160b00261300180c001e0f00
-180c00180c001e0f001e0f000e07000e0700060300201000160b002613000e0700201000
-140a00201000201000201000261300160b00160b00201000281400180c000e07000e0700
-201000160b002010002010000e07000e07000e07001e0f00160b00140a000e0700201000
-060300160b00160b002010001e0f00140a001e0f00140a000603001e0f000e0700180c00
-0c0600140a001e0f00180c00140a00261300180c001e0f00201000281400201000160b00
-2e17002613001e0f00160b001e0f00261300201000140a00201000160b00160b000e0700
-160b00201000160b00160b001e0f000e07000e0700ffa1421e0f000e0700201000ff9e3c
-2010002613002613002010002e1700281400301800160b00ffaa540e07000e07001e0f00
-201000ff9d3a281400140a001e0f000e07000c06001e0f00201000060300180c00180c00
-0c06001e0f00160b00040200281400160b00160b00160b00160b002613000c0600140a00
-2e17002613002e17000c0600180c00281400160b00201000140a00281400281400060300
-160b00060300160b00140a00301800160b00060300ff9d3aff9e3c201000160b00281400
-261300160b00160b002814001e0f002814000e0700180c00281400281400321900160b00
-160b00201000140a00160b001e0f001e0f00160b00201000160b00281400201000180c00
-201000281400160b002010002010000e0700160b002814000e0700201000160b00201000
-281400160b002814001e0f00180c00160b00160b000c0600160b000e0700160b000e0700
-160b00160b00160b00160b00140a003018000c0600140a000e0700140a000c0600160b00
-160b00160b00180c00180c00261300140a00180c00020100180c00160b002613001e0f00
-180c00281400261300160b002613000e07001e0f00281400180c00180c001e0f00160b00
-201000261300140a002814000e0700160b001e0f00160b00180c000e07001e0f000e0700
-1e0f00261300160b00160b00160b00281400281400ffa74e180c00160b00180c00301800
-301800201000160b00ffa244160b002010000e07000e0700
-160b000e0700180c00140a00281400180c00281400201000160b00160b000e07001e0f00
-0e0700201000180c000c0600160b000e0700140a00160b00160b002613000c0600140a00
-140a000e07000e0700060300140a00160b00ffa952ff9b36ffa54affa142ffa040ffa244
-ff9932ff9932ffa448ffa142140a00180c00261300160b00140a00160b00201000281400
-261300160b00160b00160b000e0700281400160b00160b00140a000e07000e0700160b00
-160b000e0700201000160b000e0700201000201000160b000e0700160b00301800160b00
-261300140a00201000160b002814000c0600140a00180c000e07001e0f00201000160b00
-180c00140a00160b000c06001e0f00140a00180c002814001e0f00180c00201000160b00
-2613002010002613001e0f000e0700160b00160b00180c00140a002814001e0f00201000
-160b00261300281400140a000e07001e0f00180c000e07000e0700160b00201000140a00
-1e0f00060300160b00140a00140a00281400201000160b00040200160b00261300140a00
-1e0f00140a00201000160b001e0f000c06000e07002010000e0700180c00160b00140a00
-160b00060300060300180c002e17001e0f00180c000e0700261300160b00201000060300
-2613000c0600201000180c00180c002010002010000e07001e0f00201000180c00201000
-0e0700160b00160b000e0700140a002010002010000e0700160b000e07000e0700201000
-2e1700201000160b00160b003018000c06000c06002e17000e0700140a00261300180c00
-0e07000e0700180c00160b00261300180c00160b00180c000e0700180c00281400201000
-1e0f000c0600180c00201000281400180c000e0700160b000e0700321900060300060300
-0e07000603002010001e0f00180c000603000e07000e0700160b00160b00201000180c00
-020100060300201000180c00180c00140a00201000201000020100140a000e0700201000
-2814000e07000e0700201000160b001e0f00180c00160b00160b000e07000e0700201000
-201000201000180c002010000e07000e0700180c00180c000e07002010002814001e0f00
-1e0f00140a00201000281400160b00160b00261300201000201000180c00060300201000
-1e0f00180c002010000e07001e0f00261300180c00140a00261300140a002814000e0700
-160b001e0f00301800140a00180c001e0f002613002e1700160b00201000160b00160b00
-0e0700140a00180c00180c000c06002010000c06001e0f000e07002613002010001e0f00
-1e0f000e07002613000e0700160b000c06001e0f00301800201000281400160b001e0f00
-160b00160b002010000e0700261300160b00160b00160b00ffa142201000201000140a00
-201000140a002e17002814002e1700261300201000301800ff9d3a201000140a001e0f00
-ffa142140a002613002613000e0700160b00140a00281400180c00040200201000201000
-180c00180c00180c00140a000e0700160b001e0f00160b00160b00160b000c0600201000
-180c00261300180c000e07000e0700020100160b00160b00140a000e0700160b00140a00
-160b00160b000603001e0f00160b00ff9c38ffa244301800201000ff9932180c001e0f00
-2010001e0f002010000e07000e0700201000201000140a00160b000402001e0f00140a00
-0c0600180c00180c00160b00180c00201000160b002010001e0f00261300140a00201000
-140a00261300281400140a00180c00140a000c06000603002613000c0600261300140a00
-160b00261300140a00201000180c001e0f00180c00281400201000140a00160b00160b00
-1e0f001e0f00281400160b00160b00140a00140a00140a000e0700381c00261300201000
-1e0f00301800140a000c06002e1700180c00160b00140a00201000201000160b001e0f00
-180c00160b000e0700160b002010000603000e07002010001e0f00140a00201000261300
-160b002613000c06000e0700160b00180c00160b002e1700140a00160b00160b00201000
-160b00281400140a00180c00160b00160b000e07001e0f00ffa952201000281400301800
-3219001e0f00301800ffa4481e0f002e1700180c001e0f00
-140a00180c00201000160b00160b001e0f002613001e0f001e0f00180c00180c00140a00
-180c00060300160b000e0700160b00140a00160b002010000e07000e0700160b00060300
-281400140a001e0f000e0700180c002613000e0700201000180c00281400261300180c00
-0e0700160b000c06002010000e07001e0f002613002010001e0f00160b001e0f00180c00
-1e0f002814002010000c0600281400140a00261300160b002814002613000c0600281400
-1e0f000603001e0f00201000060300180c000e0700140a002010002010001e0f00201000
-140a00201000160b00180c00060300261300201000180c00201000261300201000281400
-140a00160b00160b00160b00140a00261300160b000e0700301800160b00160b001e0f00
-0e07002010001e0f00160b001e0f00201000201000160b002010001e0f00160b00281400
-2010002613000e0700160b00160b000e0700180c00180c002814002010000603002e1700
-2613001e0f00140a00040200140a001e0f000603002814000c0600020100201000160b00
-020100140a002613002010001e0f00160b00160b00020100020100201000160b00180c00
-160b00201000160b00201000201000160b000e0700281400201000180c00201000060300
-160b00140a00201000160b00160b000e07002010002010001e0f00160b00160b000e0700
-261300201000281400261300160b000201000e0700160b000e0700180c00160b00160b00
-180c002e17002e1700160b001e0f00140a00160b00201000180c00160b00180c00060300
-140a000c0600160b00201000140a001e0f000c0600160b001e0f000c06001e0f000e0700
-1e0f000e0700201000180c00160b002010001e0f00140a002010000e0700160b00140a00
-160b00180c00180c000603003a1d000c06002010000c0600201000160b00180c00160b00
-160b00180c000e0700160b001e0f000e0700180c002e17000e0700160b000e0700160b00
-060300281400180c00140a00201000140a000e0700180c000c06001e0f001e0f000c0600
-2613000603002814001e0f000e0700140a00160b000e0700160b00281400301800261300
-0e0700060300201000180c00140a00160b000603000e0700201000160b00180c00160b00
-0e0700160b00140a00160b00160b00180c001e0f000c0600160b00140a002010000e0700
-0e0700140a00160b00140a00140a00281400201000160b002613001e0f001e0f00261300
-2e1700160b00281400201000160b001e0f001e0f00201000140a00180c00160b00281400
-160b002613002814000c06000e07000e07001e0f00160b001e0f00160b00140a00180c00
-160b00301800201000140a000e0700160b000e07002e1700160b00ffa040180c000e0700
-281400180c00201000201000261300201000281400160b00160b000e0700160b00ff9e3c
-160b001e0f000e07000e07002010001e0f00160b00281400160b001e0f00180c00281400
-2010000c06000e07000e0700160b002613000e0700160b00160b002010001e0f00261300
-0e0700201000180c00140a000e07000e0700060300140a00140a001e0f00201000160b00
-140a00180c00160b00ff9932ffa1422814000603000e0700160b00160b00ffa040201000
-160b00180c002010000e07002010000603000e0700201000160b001e0f00140a00261300
-180c00160b001e0f000e0700201000180c00020100180c003018002010002e17001e0f00
-1e0f002814000c06000e07000e07001e0f00281400281400201000160b001e0f00160b00
-1e0f001e0f00281400140a00160b001e0f00160b00160b00180c00160b000e07000e0700
-2613001e0f00180c000e07000c0600180c00140a00160b001e0f000603000e07001e0f00
-160b00180c002613001e0f00160b000603002814001e0f000e0700140a00160b000c0600
-1e0f00160b001e0f000e07002010000e0700261300160b00201000201000180c00201000
-0e0700201000201000261300160b001e0f000c06000c06001e0f000e0700281400140a00
-2010000c06002010000e0700201000201000140a00180c00201000ffa244160b00140a00
-180c00201000301800ff9b36140a00201000160b00160b00
-160b00180c001e0f000e07000e0700160b00140a00160b00160b00160b000e0700160b00
-1e0f00180c00201000180c00281400281400160b00140a00180c00140a00180c00160b00
-0e07000e07000e0700060300160b00160b002010001e0f000e0700140a00060300301800
-201000140a00201000201000060300261300261300160b00160b00140a00180c00180c00
-201000180c002814000e0700201000160b002010001e0f001e0f00281400281400180c00
-180c000e07000e0700281400160b000603001e0f00281400140a00140a00281400160b00
-201000160b00180c00140a00160b00201000201000160b00160b00180c00160b00160b00
-160b00180c001e0f00201000180c00281400140a00160b000e07000e0700160b00180c00
-1e0f00140a002e1700281400201000140a002e1700160b001e0f000e0700201000160b00
-261300160b00140a00180c000603000c0600180c00160b00261300160b00140a00160b00
-0e07001e0f001e0f002010000c06001e0f000e0700180c00160b00180c000e07000c0600
-0e0700201000180c00160b002010000c06002010002613000603002010002613001e0f00
-261300261300160b001e0f002010000e07001e0f00201000281400201000160b00180c00
-201000160b00201000140a00160b00201000160b002613000e0700201000060300201000
-1e0f002e17000e0700201000201000180c000c0600160b00301800201000180c00201000
-1e0f00261300201000201000060300140a00140a00160b00180c000e0700160b001e0f00
-160b000e07002010002814001e0f000603002010000e0700140a00201000160b00201000
-140a00201000140a00201000060300180c001e0f001e0f00040200160b00201000281400
-1e0f00140a00040200180c00140a00140a00261300160b001e0f00160b00201000060300
-160b000e0700261300060300180c002613002010001e0f002010000e0700160b00140a00
-180c00140a00180c002010000e07000e0700160b00261300160b000201002010002e1700
-180c00160b000c06000e07001e0f00140a00180c00281400060300201000180c001e0f00
-180c002010002010001e0f000e0700281400140a000c0600180c000e0700201000201000
-0e0700180c00201000180c00140a00140a00160b00160b001e0f00180c001e0f000e0700
-160b00301800201000160b00201000261300261300140a00160b00281400160b00140a00
-0e0700140a002814001e0f00160b002010000e0700160b00201000160b00281400261300
-140a00180c000c0600201000180c00160b00261300160b00261300201000261300040200
-0c0600020100160b000e07002010002010001e0f00020100180c00201000ff9e3cfffcf8
-ff9c382010002613003219003018002e1700160b00180c00261300ff9830ffa4480e0700
-201000261300180c001e0f00160b00160b000e07001e0f002010002010000e07000e0700
-180c00160b000e0700160b001e0f001e0f00140a002010000603002814002010000e0700
-0c0600140a000c0600201000180c00180c001e0f00140a002010002613002010000e0700
-201000160b000e07001e0f00160b00180c00201000261300180c00201000ffab56180c00
-1e0f001e0f001e0f00140a000e0700201000160b00201000281400160b00040200180c00
-160b00180c001e0f00201000140a00160b000e0700201000160b00261300201000180c00
-0e0700160b00201000040200201000160b00201000160b00160b001e0f000e0700160b00
-180c000e07001e0f00180c00160b000e07001e0f00160b00160b00140a00160b00201000
-1e0f00160b00281400160b00160b00140a00040200140a00160b00160b000e0700180c00
-0402000402000e0700201000201000201000201000160b00180c000c0600180c00201000
-1e0f001e0f001e0f00160b00140a00140a001e0f00281400301800180c002010002e1700
-140a00160b00281400261300180c00160b002e17001e0f00140a00160b00160b00281400
-0e0700160b000c0600180c00201000160b00201000160b00201000ff9d3affad5a2e1700
-201000281400180c00160b00ffa448160b00140a000e0700
-180c00160b00140a00160b000c0600160b000603000e07001e0f000e0700160b00160b00
-1e0f002010000e0700060300140a000e07002010000e07002613002e1700020100180c00
-0e0700140a00180c000e07001e0f000c06000603000e0700040200140a001e0f00140a00
-2010002010002e1700060300160b003018000603002613001e0f00160b000603001e0f00
-201000201000140a00160b00201000261300160b00201000160b000e0700201000060300
-160b001e0f00160b000e0700180c00060300060300160b00160b00180c00160b00180c00
-2613001e0f00180c000603002814000e07000e0700160b00160b00140a00201000261300
-2814000402002814000c0600201000281400201000160b00180c002010001e0f00281400
-2e17002010000e0700180c00160b001e0f002010000e0700140a00140a00160b000e0700
-2010001e0f00201000140a001e0f000e0700201000201000140a00060300261300160b00
-1e0f00301800281400160b00060300180c002010000e07002010002613000e0700281400
-160b000e0700160b002010000e0700201000180c00160b00140a000e07000e0700160b00
-160b00160b001e0f000e0700160b00201000201000160b00160b00020100160b00160b00
-0e07000603001e0f00160b002010002e17001e0f00180c00160b00281400140a00140a00
-201000140a002814002814002613000e07002814000e0700201000281400180c001e0f00
-1e0f002010001e0f00060300140a00281400160b001e0f00201000180c00160b000e0700
-160b00160b00160b00201000160b00201000201000180c00180c00160b001e0f00160b00
-160b001e0f00180c00180c00060300201000160b00160b000e07001e0f00261300140a00
-140a00160b000e07002010002e1700201000140a00201000160b00160b00160b00201000
-0e07002010000e0700160b002010002010001e0f00160b002010002814002010001e0f00
-060300180c00160b00281400201000140a000e0700160b00180c00201000140a00201000
-140a002814000201001e0f000603000e0700140a00160b00180c00160b00180c001e0f00
-160b00160b00140a00060300160b00201000160b00160b000e07002814000e0700060300
-160b00160b001e0f00180c001e0f00160b00201000140a001e0f002613000e0700261300
-160b00201000201000281400201000180c00140a00160b001e0f00160b00180c00201000
-301800180c00140a00180c00201000281400261300201000180c00180c00160b00201000
-2e1700140a00180c00160b00160b00160b00160b00160b000e0700160b000e0700201000
-160b000c0600201000180c00281400180c00160b00140a000e07000e0700201000ff9830
-281400ffa448ffa64cffa54affaa54ffa952ffa448ffa142fffcf8160b00160b00281400
-0c0600140a002010001e0f00160b000c06001e0f00060300261300020100201000180c00
-160b00180c000c06000c06000e0700160b00160b00180c000e07000201002010000e0700
-0c0600201000160b000603000e07002010002010000e07000e0700180c002010000e0700
-160b000e0700ff94282010002010003a1d004a2500281400180c00ffa1420e0700160b00
-0e0700140a000e07002613000603000e07000e0700060300160b000e0700040200180c00
-060300160b00140a00201000140a000e07000201000e0700160b000e0700160b00160b00
-160b00160b00201000201000180c00180c001e0f000c0600160b002e1700160b00281400
-060300201000160b000201001e0f00160b00201000261300160b00180c00160b00160b00
-060300040200160b00261300140a00140a002e1700201000160b00160b00160b00201000
-140a001e0f00281400180c00201000281400201000201000281400020100060300201000
-160b002010002e17000e07000c0600160b00140a000c06000c06002e1700180c00140a00
-160b00160b00201000140a000c0600160b00180c00060300140a002010001e0f00180c00
-261300180c001e0f003018001e0f00160b00281400160b00160b00180c001e0f00ffa448
-2010002e1700201000ffa142160b002010000c0600180c00
-0603000e0700261300160b001e0f001e0f001e0f00140a000e0700201000160b00201000
-1e0f000e0700180c00261300160b00060300140a002010002814002814000c0600261300
-261300201000060300160b00201000201000140a00140a00281400060300160b000c0600
-060300160b000e07002814000e07002814000e0700201000140a002814001e0f00160b00
-1e0f00020100060300381c00160b002010000e07000c0600201000201000160b00160b00
-0e0700040200140a00040200060300180c00160b00160b00261300140a00160b000e0700
-281400201000160b00180c00261300140a002010000c06000c0600160b00261300140a00
-281400160b001e0f00160b00261300140a00261300140a00160b00160b00201000160b00
-1e0f00140a002814001e0f001e0f00180c00160b00160b003018001e0f00180c00281400
-180c001e0f00140a000e0700201000140a00140a002814001e0f00201000201000261300
-160b00140a00160b00180c00140a00281400180c000c0600180c00201000160b00160b00
-281400180c00060300160b00201000060300180c002010001e0f000e07000e0700160b00
-301800180c00180c003018000e0700201000160b00180c00201000140a00160b00060300
-140a000e07002e1700281400140a000e0700140a00180c002010000c0600160b00201000
-140a00160b00201000140a001e0f000e07002814000e07001e0f00160b00281400180c00
-281400201000180c00160b00180c002e17000e0700160b00060300140a00160b000e0700
-180c00180c002010002010002010002010002814002e1700201000160b000e0700180c00
-180c00180c00160b00160b002010002e17000c0600261300140a00281400160b00201000
-060300281400261300180c000c0600140a000c0600140a00140a000e0700140a00180c00
-160b00180c000e07002010002010002010001e0f002010001e0f002010001e0f00140a00
-180c00201000201000201000201000140a00140a000e0700160b00060300160b00160b00
-180c002010001e0f00140a00020100180c00160b002613000e0700060300261300160b00
-160b00381c00180c001e0f00060300140a000e07000e0700201000160b00201000140a00
-0c0600160b00160b00261300140a000e07002010003018000c0600160b00261300201000
-2010001e0f000c06002010003a1d000e0700201000160b00140a00180c00180c00261300
-0e07001e0f00160b00180c00261300180c00160b00180c00180c002814002613000e0700
-140a00140a001e0f002010002814000c06002814002814001e0f002010000e07001e0f00
-261300180c00160b001e0f00020100160b00160b00160b00160b00160b00160b00281400
-1e0f00321900201000381c00301800301800201000180c00ff9428160b00160b000e0700
-2814000e0700180c000e07001e0f00160b00160b00160b000e0700140a00201000281400
-2814000603002010000e0700261300140a00140a000c0600201000281400180c00160b00
-160b00060300160b00160b00160b000c0600160b000e0700160b00201000160b00160b00
-160b00ffa244140a002010002010003018003a1d00160b000c0600ffb264201000281400
-0e07002010002814001e0f001e0f00160b002613001e0f002010001e0f00160b00281400
-2814000e07002010000e0700301800301800140a00140a001e0f00160b001e0f001e0f00
-180c00160b00140a00160b002010000e0700201000160b00160b000e0700180c00201000
-180c00160b003018000c06000e0700140a000c0600140a000c0600281400160b00160b00
-0e0700180c00201000160b000e07002010002e1700160b002e17000e0700180c00201000
-160b00160b000e0700180c00060300201000160b00160b00140a002010000e0700140a00
-160b001e0f000c0600180c001e0f00180c00160b000e0700160b00281400160b00180c00
-201000060300180c00201000160b00281400261300281400160b00201000281400160b00
-140a000e0700201000060300060300180c00160b002613000e07000e0700160b00060300
-ffaa54ffa040ff9b36160b00180c002010002814001e0f00
-0c06000e07000c0600201000160b00261300160b00160b001e0f001e0f000c0600180c00
-281400180c000e0700140a00201000160b00140a00160b00160b000e0700180c001e0f00
-160b00201000180c00160b00261300140a00201000281400160b00201000180c00201000
-160b00060300160b00180c00160b00160b003219001e0f00201000180c000c0600060300
-2010002613002613002010000e07002814001e0f002e1700201000160b001e0f00180c00
-060300160b000e07000c0600201000180c00160b002e1700180c000e0700160b00180c00
-0e0700160b00060300160b00180c00160b002010000e07001e0f001e0f00180c00201000
-281400180c001e0f00160b00160b003018002010001e0f00180c00180c000e0700201000
-140a002e17000e07000e0700180c00180c002613002010000402000e0700140a00160b00
-2814001e0f002e17001e0f00160b00140a00160b00160b00201000160b00180c00201000
-201000180c00160b00160b00201000180c00040200160b002010000e07000e0700180c00
-160b00160b00160b000e0700281400160b00160b00160b00180c00201000180c00201000
-2010000201001e0f000e0700140a000e07001e0f00160b00180c00140a00180c00201000
-1e0f002010000c0600160b002010001e0f00180c000e0700180c00281400201000180c00
-160b000e0700180c002e17000402000e0700160b00201000140a002814002e1700160b00
-1e0f000e07000201002613000c0600040200180c00201000201000140a00160b00140a00
-160b002010000e07000603000e07002613000e0700180c002814000e0700180c00140a00
-140a00060300261300180c001e0f000e0700060300060300201000140a00160b00160b00
-140a00201000201000160b00060300160b000e0700201000281400160b00261300261300
-140a000e0700180c00060300180c00201000160b002613001e0f00201000060300140a00
-2010001e0f00201000180c002010000e0700140a00140a00180c003a1d001e0f001e0f00
-160b00160b00160b00140a002814000e0700160b002010000c06002613001e0f000c0600
-1e0f000e0700180c00201000140a002814000e0700020100201000140a00180c00180c00
-0e0700160b00180c00160b00160b00201000160b00180c00201000180c00180c00180c00
-2010001e0f00180c00060300160b003018000e0700281400281400201000160b00160b00
-281400180c00281400020100060300160b00201000160b001e0f00261300160b00160b00
-201000180c00060300281400140a00160b000e07000e0700160b000c06001e0f00060300
-1e0f00140a00160b00160b00160b00281400160b00160b00281400140a00201000ffa74e
-160b00301800261300140a00321900160b00160b00140a00180c00140a002010001e0f00
-040200140a00140a00160b001e0f00180c00301800281400180c002010000c0600140a00
-0e0700201000281400140a001e0f002613000e07000e07000e0700140a000e0700040200
-1e0f00180c00140a00160b00201000160b002010000c0600201000381c00180c00160b00
-201000ffa4480e0700301800321900281400160b00201000ffa244160b002e17000e0700
-2613001e0f000e0700201000140a00180c000c0600140a002010000e0700201000160b00
-160b00201000160b00140a00180c001e0f00261300160b000e07003018002814001e0f00
-0e0700160b00201000160b00201000301800060300201000201000160b000e0700160b00
-2010001e0f001e0f00180c00201000261300180c00060300160b000e0700140a00201000
-2010001e0f00140a00160b000603001e0f00160b00060300140a000603001e0f00020100
-180c00281400180c00261300040200160b000e0700160b000c06002814002e1700160b00
-180c00180c000e07001e0f001e0f002010000c0600160b004221002010002e1700160b00
-0e07002010002010002613002010002814002814002e1700160b00160b002010000e0700
-160b00201000281400180c001e0f000e07002814002613000e0700140a00160b00201000
-261300160b00140a00180c00261300160b000c06001e0f00
-140a00160b00281400201000201000140a00160b002814000e0700160b00140a00060300
-1e0f001e0f002814001e0f00160b003018000e0700180c00160b001e0f001e0f00160b00
-140a001e0f00160b000e07001e0f000e0700140a00060300160b00261300201000261300
-201000180c000e07002814001e0f001e0f00160b00140a001e0f00180c00180c00261300
-201000060300261300160b00140a00201000160b000e0700160b000603002010001e0f00
-0c0600160b001e0f00160b000e07000c0600160b003018000e07002e1700160b00180c00
-180c000e0700160b00160b001e0f00180c002613002010001e0f000e0700060300160b00
-2814000e07002814000e07000e07002010001e0f002814002814000e07001e0f00180c00
-1e0f00160b00140a000e0700301800160b002814002010000e07000c06000e07001e0f00
-0e0700160b00261300060300261300261300180c002814001e0f000e0700180c000e0700
-160b00160b002814000e0700160b00261300140a00160b00180c000e0700201000140a00
-2010002010001e0f00160b001e0f00160b00201000020100140a00160b00261300160b00
-2814000e07001e0f00180c00140a000e07000c06001e0f00201000160b00201000160b00
-201000160b00160b000e0700160b00140a00201000160b00140a00160b002613001e0f00
-140a00140a000e0700060300201000180c000e07000e0700180c00160b002e1700201000
-160b000e0700180c00160b000e0700201000160b001e0f00201000140a00201000160b00
-2010000e0700160b00160b00160b00060300201000160b002814002010000e07000e0700
-160b001e0f000e07001e0f000e07000e0700060300160b00060300281400281400201000
-160b000201000e0700160b00201000160b00261300160b000603000603000c0600140a00
-180c00160b002814002e1700281400060300140a001e0f00160b00140a000e07000e0700
-261300201000180c000e0700261300201000160b00180c00140a00160b000e0700160b00
-180c00160b00201000201000160b00160b000c0600281400261300201000140a00201000
-160b00160b002010002814000c06002814000e0700140a001e0f000e0700422100201000
-201000140a00160b00160b001e0f00060300140a00160b000c06002010000e0700160b00
-201000160b00140a000e07001e0f00140a002e1700261300160b00160b000e0700201000
-0e0700160b002010001e0f00180c001e0f00180c00201000180c00060300201000281400
-2010000e0700060300160b000603000c06000e0700180c00201000160b000e0700160b00
-160b00201000140a00180c00140a00160b00201000201000201000201000160b00ff9e3c
-2010000e0700261300261300201000301800180c00160b000e07004221001e0f00281400
-160b00180c00180c00160b00261300160b00281400160b002010002e1700180c00160b00
-0e0700160b00160b001e0f00140a001e0f00261300060300261300160b00201000160b00
-140a002e17000e0700160b002e17001e0f00160b002010001e0f000e0700201000160b00
-ff9e3c2613000e07002e17002814001e0f00201000180c00180c00201000281400160b00
-261300201000160b000e0700180c00180c00281400201000281400180c00180c00160b00
-160b00140a001e0f00201000261300180c002e1700281400160b002010000e07000e0700
-0e07001e0f002010002e1700140a00160b00160b002814000c0600160b00160b000e0700
-201000140a001e0f00201000160b001e0f00160b00160b000e0700160b001e0f00201000
-201000140a000e0700160b001e0f00160b00180c00160b00180c00281400160b00160b00
-140a00201000160b001e0f002814002010001e0f00160b000e0700160b00040200180c00
-160b000e0700160b00180c00201000160b000e0700160b001e0f00160b00160b00301800
-0e0700160b00160b000e07002010001e0f00160b00281400140a00301800301800160b00
-201000201000180c00281400160b002010002010002010000e07000e0700160b00321900
-1e0f00160b000e07000e0700160b00180c00160b00201000
-0603002613002613000c0600160b00160b001e0f00140a002010000e0700140a000e0700
-0e0700160b00160b000603000e07000201001e0f00301800180c00160b000e0700160b00
-2010000e07000e07002814001e0f00060300180c000e07000e0700160b002e17000e0700
-0e07002010002010002010000e07001e0f000c0600180c002814001e0f00180c00160b00
-201000140a001e0f00180c00180c00180c00261300180c002613001e0f000e0700160b00
-2010002e17002613001e0f001e0f00140a000c0600160b000c06001e0f00201000261300
-0402002814002e1700201000201000180c00140a000e0700160b000e0700201000261300
-2010000c06000e0700160b00140a000e07000c0600180c00140a000e0700140a00201000
-1e0f00160b000e0700180c00201000180c00180c00201000180c00160b000e0700201000
-2e1700180c00201000160b000c06001e0f00201000201000180c000603000e0700060300
-160b00201000140a00160b00160b00060300140a001e0f00160b002010000e0700160b00
-2010000e07002010001e0f00140a00140a003018000e07000e07002613002010000e0700
-0603001e0f00180c002613000c0600160b002010000e07001e0f001e0f000e0700160b00
-180c000e0700201000180c00201000201000020100160b00201000020100140a00201000
-180c002613002010000e0700180c000c06000e07001e0f00160b00160b000e0700140a00
-1e0f000e0700180c00261300201000160b000c0600281400201000160b00180c00201000
-160b00140a00201000201000160b000603002010002613000e0700160b00140a000e0700
-201000180c000c0600160b00160b00160b00160b002613000e07000603000e0700201000
-2010000e07002613001e0f00201000180c002814000e07002010002814001e0f000e0700
-180c002814000402000e0700261300201000281400140a001e0f00140a00201000261300
-160b000e07000e0700160b00160b00201000140a00140a00180c00040200180c00201000
-160b001e0f00261300160b00160b00140a00160b00160b000c0600040200140a000c0600
-160b00140a002613002814002010001e0f00201000140a000e07002e1700201000160b00
-180c00160b002010000e0700281400160b00160b00140a00261300180c00201000180c00
-160b00160b00160b001e0f002010002814001e0f002814000e0700160b00160b00160b00
-1e0f00180c00160b00201000140a00180c00201000160b001e0f000c06000e0700160b00
-0603000e0700180c000c0600201000201000201000160b002010001e0f00201000160b00
-140a000c0600201000140a000e07000e07000e0700160b001e0f00160b000c0600160b00
-2613000e07002613002814002e17000603001e0f00160b00ffa244160b000e0700180c00
-0e0700261300261300201000020100140a00160b000603000e0700160b002010001e0f00
-2814000e0700201000160b002010000e07000e07001e0f00160b00140a00180c000c0600
-0e0700160b003018000e0700160b002613001e0f000e07001e0f00160b002010000c0600
-201000ffaa54301800180c00160b001e0f00ff9d3affa040201000160b000e0700180c00
-160b00140a00160b00180c00180c00180c00140a003a1d002010000e0700201000281400
-160b000603002010000e07003018000c0600160b00140a00201000201000180c00160b00
-381c000603000e0700140a002814001e0f00281400201000140a002010001e0f000c0600
-0603001e0f000e07002010002010002010000c0600180c000603000e0700180c00261300
-0e0700201000201000160b002010000e07001e0f00140a00140a001e0f00201000160b00
-0603002e1700140a002814001e0f00160b000e07000c0600180c00160b002613000e0700
-1e0f002010000e0700180c00180c002010000e07000e0700160b002e17001e0f00140a00
-060300201000281400160b00281400281400281400281400261300180c00160b00201000
-160b00281400160b00180c00281400160b001e0f002814000e0700160b003018001e0f00
-1e0f000e07000e07002010000e0700381c00180c000e0700
-1e0f00160b002010002010002814000e0700140a00160b00261300160b00160b00180c00
-0e0700160b001e0f000e0700160b00160b00180c002010000c0600201000140a00140a00
-140a00140a00201000160b000e0700201000201000160b00281400180c00060300201000
-140a00160b001e0f00140a00261300160b00180c00140a00160b000e07000e0700180c00
-0c06001e0f001e0f00140a00201000160b00201000160b000e0700160b00060300140a00
-281400140a001e0f000c06000e0700180c00180c00160b002814000e0700201000281400
-180c002814002e1700281400180c001e0f000e0700060300160b00160b00140a00140a00
-160b001e0f000e0700160b00281400180c00140a00160b000e0700180c00261300261300
-060300160b00140a00160b001e0f002010000c0600281400160b00201000180c002e1700
-180c00140a00160b00201000160b00160b000e0700160b00160b00160b00160b000e0700
-160b000c0600160b00140a000c06000e0700261300261300180c00180c00160b00281400
-160b00140a00180c000e0700261300281400160b00160b00160b00201000160b00180c00
-0e07002010001e0f002010001e0f00140a00160b00160b000402002814000e0700020100
-2814000e07000e07001e0f001e0f00160b00160b002613000c0600301800160b00060300
-160b001e0f00160b00180c000e0700201000160b00160b00180c00180c000e07001e0f00
-160b00201000160b00201000201000160b00140a00180c00140a000c0600261300060300
-1e0f00140a00261300160b00180c001e0f000603000e0700140a001e0f002814000e0700
-160b00140a00160b002e1700160b00160b001e0f000e0700261300201000160b00261300
-201000160b000603000e07000e0700160b002010000c0600140a00160b000e0700261300
-160b001e0f00160b002613002010001e0f000e0700160b000402002613002010001e0f00
-1e0f001e0f00060300060300201000281400301800160b002010001e0f001e0f00180c00
-160b00180c002010001e0f00180c00201000160b00160b00180c000c06000e0700201000
-180c00160b002e1700160b000e07001e0f00140a00160b002e1700160b00281400281400
-1e0f002010000402001e0f00201000160b00160b002814000e0700180c00281400160b00
-180c00160b00160b00180c00281400180c00160b000e0700060300180c002010000e0700
-140a001e0f00160b00160b000c06002010000e07002010001e0f00160b001e0f00160b00
-180c00160b000603000e07000e07000e0700160b00160b000e07002010002e1700060300
-140a00180c00201000160b002010000603002010000c0600201000201000160b00201000
-201000140a00160b00261300281400201000180c00160b00301800281400261300140a00
-180c000e07001e0f00160b00140a002814001e0f000e0700160b00160b00201000201000
-060300140a000e0700160b000c06001e0f00201000180c000e07002613000e0700180c00
-160b00160b00140a00160b001e0f00381c00201000180c00201000180c002814000e0700
-2e1700ffa54a0e0700140a00ff9c38ffa0402814001e0f00180c00160b00160b000e0700
-1e0f00160b00160b002010000c06000e0700301800201000140a00301800160b00281400
-1e0f00281400140a002814002613001e0f000e0700160b00180c00180c00160b00160b00
-261300140a00160b000c0600140a00160b002010000e0700160b000c0600180c00160b00
-140a00020100140a00201000160b00180c00160b00281400160b000201000c0600261300
-140a00060300160b000c06000e07000e07000603000e07001e0f00160b00160b000e0700
-201000201000140a001e0f000e0700281400180c002814000e07001e0f000e0700180c00
-2010000e0700060300180c00160b000c0600160b00160b001e0f00180c00201000261300
-1e0f002814000e0700180c00201000261300281400201000160b00301800281400180c00
-180c002010002613001e0f00180c00160b00261300140a002e1700160b001e0f00160b00
-180c00140a00140a002010001e0f002010000e0700201000
-160b000e0700160b00160b00160b000c06001e0f00160b002010002814000e0700060300
-160b00160b00140a00160b00140a00060300160b00160b001e0f000603000603002e1700
-201000140a002814001e0f00201000180c002e1700160b000e0700261300060300201000
-160b00281400140a00140a000e07000e07000e0700140a00201000160b00201000040200
-281400201000261300180c001e0f00180c00201000201000180c002613001e0f00160b00
-0603001e0f00180c002814002010001e0f00160b00140a00281400201000301800160b00
-201000160b00201000160b000402002010000e0700140a002613002010000e0700281400
-0e0700261300180c00261300160b00201000140a00140a002010001e0f00160b000c0600
-140a000e0700160b000c06000e0700160b00140a00140a00180c000e0700160b000c0600
-180c00160b000c0600180c00060300180c00160b002613002613000e0700140a000e0700
-3a1d002010000e0700201000020100180c00180c00201000160b00201000160b00201000
-0e07000e0700160b001e0f00201000160b001e0f00160b00160b00160b00160b00201000
-160b00180c00140a00281400160b002613002010002e1700140a001e0f000e0700201000
-140a002613002613002010000e07000e07002010001e0f000e0700160b000e0700201000
-160b002e1700140a00160b00281400281400261300180c002010000402000e0700160b00
-201000201000422100180c00180c000e0700160b000e0700140a00160b00140a00160b00
-1e0f002814001e0f00201000160b00020100140a000e07000e07001e0f00201000160b00
-160b00261300160b000e0700281400261300140a003018000e07001e0f00281400140a00
-160b00180c00180c00201000180c00140a000c0600201000160b001e0f000e0700201000
-201000160b00160b002010002010000e0700160b00201000160b00201000180c00140a00
-140a00160b002010002814000c06000e07000e0700140a00160b001e0f00180c00160b00
-1e0f00160b00201000160b00160b00160b00201000201000140a00160b00160b00180c00
-040200180c000c0600281400040200180c002613001e0f000201001e0f002613000e0700
-160b002814001e0f00160b00301800140a001e0f00261300180c00261300140a001e0f00
-180c00201000201000301800180c001e0f00140a000c0600281400160b00160b00160b00
-160b00201000180c00281400160b00160b000e07000c0600180c00180c000e0700160b00
-160b00201000160b00180c000c0600160b00180c002613000c0600140a00140a000c0600
-160b00261300180c00160b000e0700180c00160b00180c00140a00160b00160b00180c00
-ff8f1e160b002010002814001e0f00261300180c00261300160b00040200201000180c00
-160b00180c000e0700160b00201000160b000603000e0700281400180c00281400180c00
-160b00180c002814000e07000e07000e07000e07002010000e0700160b00160b00261300
-201000160b00160b00160b00180c002e1700281400140a000e0700160b00281400140a00
-201000140a00ffa142ffa142180c000c0600201000180c002814001e0f00261300201000
-160b00180c00281400201000160b00160b002814002814001e0f000c06001e0f00180c00
-160b001e0f00180c000e07002814001e0f001e0f00201000160b00201000201000140a00
-2814000e07001e0f00201000281400140a00281400140a00160b000e07000e07001e0f00
-180c00020100180c00281400160b001e0f00402000261300180c00160b00261300261300
-2010000c0600281400180c00180c001e0f002e17002010002010002010002010001e0f00
-180c00201000160b00201000201000160b000603002010002010000e0700140a00261300
-201000160b00160b002814000c06000603001e0f00201000201000160b00281400160b00
-2814000c06002010001e0f000e0700160b00281400201000180c00201000160b00201000
-2613002e1700281400140a00160b000e07001e0f00281400160b000e0700261300160b00
-0e07002010000603001e0f00160b00160b002010000e0700
-1e0f00140a002814000402000e07000e0700140a00160b00180c00160b00160b000e0700
-0e07000201000c06002010002010002e1700201000060300180c00180c00160b00020100
-160b00160b00180c00281400201000180c00160b00160b00160b00160b00301800201000
-0e07001e0f000e0700261300201000281400160b00160b00201000201000160b00201000
-180c00201000160b002613000603002814002010001e0f002010000e0700281400281400
-1e0f00180c002010000c0600160b000c06000e0700281400201000381c00140a00160b00
-0c0600160b00060300180c00201000180c00160b00180c00160b001e0f002010000e0700
-2613000c06000e07001e0f00201000261300060300160b00060300160b00281400140a00
-160b00201000160b00160b00201000201000201000060300281400180c00140a00201000
-140a00140a00281400060300140a00201000201000160b002814002010000402002e1700
-1e0f001e0f000c0600201000180c002010002010001e0f000603000c0600201000160b00
-180c00160b002814002010000e0700160b002010000e0700201000140a00201000201000
-1e0f00201000180c001e0f00060300160b00160b002814000e0700160b000e0700201000
-201000180c00040200201000140a00140a000603001e0f00281400140a00180c00160b00
-140a00201000160b00301800160b000e0700160b00140a000e0700160b00321900261300
-281400281400261300160b00201000140a00160b00140a00201000160b002814000e0700
-160b001e0f00020100160b00160b00301800201000060300180c00160b00321900201000
-2814000e0700261300180c000e0700180c00180c00160b00140a00160b00020100140a00
-2010001e0f000e07001e0f00060300140a00201000180c000e0700160b00160b001e0f00
-160b00140a00160b00160b00180c00160b00160b00060300160b001e0f000e0700160b00
-201000201000160b00201000180c00180c000e0700201000201000160b00180c000e0700
-2814002010001e0f00020100160b00060300140a00140a000e0700281400201000201000
-160b00180c002e1700140a003a1d00201000201000261300160b001e0f00160b000e0700
-160b000e07001e0f00201000201000160b000e0700140a001e0f00160b00160b00160b00
-160b000e07000e07000c0600140a001e0f00180c00201000160b002e17000e0700160b00
-0402001e0f000e0700180c00261300060300180c00201000180c000e0700180c000e0700
-0e0700140a000e07000e07002814002e17003018001e0f00140a001e0f00160b00160b00
-140a00201000180c000402000e07002e1700140a00160b00281400201000281400281400
-ff9d3a180c001e0f00180c002814000c0600180c00ffa448180c00160b000e0700180c00
-1e0f000603001e0f00140a00180c000e0700160b00160b00201000140a00261300180c00
-180c002613001e0f00060300160b00160b00160b00160b00201000201000381c00140a00
-281400180c000e0700140a00160b00140a00261300160b00261300160b002814000e0700
-0c0600201000180c000c06001e0f002e1700160b00180c00201000160b002e1700281400
-1e0f00261300160b00180c000e0700281400201000160b00140a00301800201000301800
-180c00160b001e0f00180c00180c00140a002814001e0f00201000160b00281400140a00
-140a00060300160b00281400160b00140a00160b000603000e07002814000e0700140a00
-3219002613002613002010000c06000e0700180c002613000e07001e0f00160b00261300
-281400281400201000160b002613000c0600180c00160b002010002010000201000e0700
-160b001e0f00160b00201000201000180c00160b00160b00201000281400140a00261300
-060300160b00160b002814002814000e07000e0700160b00201000201000180c00060300
-180c00140a00180c00281400160b00180c000e07002613002010002010000c06000e0700
-1e0f00301800160b00180c00281400160b001e0f002010002010000e0700180c00281400
-180c00180c00201000140a001e0f00160b00301800201000
-1e0f00160b00140a00180c00140a00160b00180c00180c00180c00201000261300160b00
-0e07001e0f00201000160b00160b00160b00160b00160b000e0700180c000e0700422100
-160b000e07001e0f000e0700180c000e0700201000160b000e07000e07000402001e0f00
-180c00261300160b002010000c06002e1700140a00180c00160b00140a00180c000e0700
-2613000e0700160b001e0f00160b002814000c0600201000160b00180c00180c000e0700
-1e0f00261300180c00160b00140a001e0f001e0f00140a000e07000c0600160b001e0f00
-301800140a00160b00180c000e0700281400180c00281400160b000c0600140a00140a00
-160b000e0700201000140a002814000402002814000e0700180c00140a00201000160b00
-140a00180c00160b00201000201000261300261300201000160b00180c000c0600201000
-2010002010000603000e07002010002010002e1700160b00180c00160b00160b00060300
-160b000603000402000402000e0700201000180c000e0700201000201000321900321900
-180c002814000603002613000603002613002e17002e17000603002010000603001e0f00
-0e0700140a00301800180c00201000160b00201000140a000e0700140a00321900201000
-2010002010000c06002010001e0f001e0f00180c00180c00160b00140a00160b00201000
-201000060300160b000c0600160b00060300160b000e0700180c003a1d002814000e0700
-020100180c002010000e0700180c00180c000e0700160b000e0700261300180c00201000
-180c00160b00180c00201000180c001e0f00180c00201000160b003018001e0f00060300
-2010000e0700160b00140a000e07000c06000e07002613000e07000e07000e0700201000
-201000140a001e0f002010002e1700201000140a002010001e0f00160b00160b00060300
-0e07002814001e0f00201000160b00140a00261300160b00140a00140a000e07000e0700
-1e0f00321900160b000e07000603001e0f00160b00160b00140a002613002010001e0f00
-0e0700140a00140a00160b000e07000e0700140a000e0700160b00160b002010000e0700
-140a00180c000e07002010003018002814002010002613000c06001e0f00160b00140a00
-160b00180c00140a00201000160b00160b002010001e0f002814001e0f00281400281400
-0e0700060300381c00180c00180c000e0700201000160b00281400140a000e0700160b00
-180c00160b00140a000c0600180c001e0f00201000201000160b002010001e0f001e0f00
-0e0700160b002010000e07000e07001e0f00160b00160b000c0600180c00060300160b00
-0e0700140a000e0700180c00160b00180c00160b00201000180c002814002e17000e0700
-160b002e1700160b00160b00160b001e0f00180c00160b00140a000201002010000e0700
-160b00140a00201000160b001e0f00160b00201000160b000e07004221001e0f00201000
-180c00201000140a00160b00160b000402001e0f00281400160b00160b001e0f00201000
-140a003a1d002010000e0700180c000e0700140a000c0600281400160b00261300201000
-160b00160b000e0700261300160b00140a00201000140a002010001e0f00201000201000
-180c001e0f000e0700160b00140a00160b002814000e0700201000160b000e0700281400
-2010000e07001e0f002010002010002613001e0f00160b00160b000e0700140a000e0700
-160b00281400160b00140a00180c001e0f00180c00160b002e1700160b00160b00020100
-281400160b004a2500140a002010000e0700140a002010000603000c06000e0700281400
-180c00281400261300180c001e0f001e0f000e0700201000281400160b00140a00201000
-0e07000e0700160b000e0700201000201000160b00160b00201000180c000603001e0f00
-0e0700160b001e0f00160b00180c000e07000c0600140a002010002613000c06001e0f00
-2814000e07000c06002814002010002814002010001e0f002010001e0f00301800180c00
-160b001e0f00201000140a00160b00160b00201000180c002e1700160b00140a00261300
-0e0700160b001e0f00180c002010001e0f00160b00201000
-160b00180c00140a00140a00160b002010001e0f000e0700160b00060300201000180c00
-0603001e0f00160b002010000e0700140a001e0f000e0700140a000e07000e0700180c00
-2010000c06002814002010000e07001e0f00140a00140a00140a00140a00160b00201000
-281400160b00180c001e0f002613002010000c0600261300160b002613002814002e1700
-160b00180c002010001e0f000e0700180c00180c00060300140a00160b00140a000e0700
-0e0700160b002010002010000c06000e07002010000e0700160b00140a003018001e0f00
-1e0f000e07002010001e0f00201000201000180c00321900261300180c00201000201000
-1e0f00180c00040200261300160b00180c00060300160b00160b00201000140a001e0f00
-0e0700160b000c06001e0f00160b002814000e07000c0600180c00140a00060300060300
-140a00201000140a00160b001e0f00060300201000160b00160b000e07001e0f00060300
-180c00180c00160b00160b00261300160b00060300160b00281400160b00160b00201000
-0e07002613002010001e0f00201000160b00180c00261300201000180c00281400402000
-2e1700281400160b00261300160b00201000261300180c000e0700180c000e07000e0700
-2814000e0700160b002010000e0700281400160b002010002613002010000c0600140a00
-160b001e0f00160b00160b00160b001e0f00201000201000160b00140a00180c00160b00
-2010001e0f00281400160b00160b002010000603000e0700180c00160b00180c00160b00
-2814001e0f002613000e0700180c00160b00060300201000140a00160b00160b001e0f00
-0e0700201000140a00160b001e0f00201000160b00201000160b00160b00040200160b00
-2613001e0f00060300201000180c00281400160b00020100140a00201000160b000e0700
-0e07000c06000e07001e0f003018001e0f00281400201000180c00160b00180c000c0600
-160b00160b00180c001e0f000402002613001e0f00201000281400160b000e07000e0700
-2010002010000c0600201000261300180c001e0f001e0f00201000160b00281400201000
-160b00180c001e0f00261300060300060300261300180c00180c000e0700180c00261300
-160b00160b002010002613000e0700261300281400160b001e0f00160b00201000140a00
-160b000c0600301800160b000e07000c0600160b002010002010002e1700160b001e0f00
-0c0600160b00180c00160b00201000160b002814000e0700140a00160b001e0f00040200
-0e07001e0f000c0600201000160b000603000603000e0700281400201000160b000c0600
-1e0f000e0700160b000e07001e0f002010000c06002613000e0700201000281400281400
-201000ff9b361e0f00201000140a00180c00201000201000201000201000160b000e0700
-180c00180c00160b002010000e0700140a00140a00160b00160b00140a00201000160b00
-140a000c0600281400180c000e07002e1700160b000603001e0f00180c00140a000e0700
-0e0700201000140a00201000140a00201000180c00160b00160b00140a00261300160b00
-381c00180c00140a002613000402000c0600160b00201000140a00261300261300160b00
-1e0f00201000180c00180c00201000201000160b002e1700261300180c00140a00201000
-201000201000160b000e0700281400201000201000201000160b001e0f00261300201000
-140a000e0700201000140a00160b003a1d00060300201000160b00201000201000140a00
-201000060300201000040200201000160b00140a00201000201000160b000e0700060300
-2613000c06002010001e0f00160b00160b000402000e07002814000603001e0f00160b00
-2613000e0700201000180c000e0700180c001e0f00160b00201000180c00160b00261300
-201000180c00180c00160b00040200160b000c06000e07000201002613002e1700160b00
-2010002010000c06000e07000e07001e0f000e0700201000180c00201000180c000e0700
-140a00180c00201000281400140a00180c002010002010001e0f00140a000c0600281400
-180c00160b000c0600160b000e07001e0f00201000140a00
-0e07001e0f00160b00040200160b001e0f000e07000e0700180c001e0f00160b00201000
-2010002010000e0700160b00160b00160b00180c001e0f000e07000e07000e0700140a00
-180c001e0f00261300160b00060300180c000e07001e0f00160b002010000e07001e0f00
-1e0f00281400160b000e07001e0f002613002e17000e07000e0700180c00140a00160b00
-140a00180c00201000281400180c00180c001e0f000e07003a1d00301800140a00160b00
-0e0700180c00160b000e0700281400201000160b000e07001e0f00201000160b00180c00
-0c0600140a002814000e07000e0700201000140a001e0f00160b001e0f00180c00301800
-180c00180c00140a00180c00180c00140a002010002814000e07001e0f00060300201000
-281400160b00140a002010002814000c06003219000e0700020100140a00060300281400
-160b00201000201000160b001e0f003018002814003018001e0f002010001e0f00060300
-0c06001e0f001e0f001e0f00422100140a00321900140a00140a00180c00160b00261300
-2814000e07000e0700140a000e07001e0f002613000e07002814002814000e0700201000
-2613001e0f00160b00160b002010002010000e0700160b00201000160b00201000201000
-261300160b00201000180c00160b000e0700180c000e07000e0700180c00160b001e0f00
-1e0f000e07002010002010002814001e0f00160b00201000201000160b00180c00160b00
-281400160b00140a00060300160b00261300180c00160b001e0f001e0f00201000160b00
-2010000603000e0700281400160b00160b000603001e0f00020100140a000c06001e0f00
-2814002010002010001e0f002010000e07001e0f000c06002010002010003219000e0700
-0c0600140a000c0600160b00261300160b002010000201002010000603000e0700261300
-201000261300160b00140a001e0f00180c00060300281400281400201000160b000e0700
-301800201000201000060300060300160b000e07002010001e0f002814000e0700160b00
-160b00261300160b00301800060300160b00140a002010000c06002010000c0600201000
-180c00201000160b002e17000e0700281400180c002814000c06003a1d00180c00180c00
-2010002010000e07000e0700160b00180c002010000e0700281400180c002010000c0600
-160b00160b00281400160b001e0f00180c001e0f00281400201000160b000e0700201000
-0e0700160b00160b00201000180c001e0f001e0f00281400160b002010001e0f00180c00
-0e07000603002814000e0700201000060300140a00060300180c00281400160b00160b00
-2613000e0700140a00180c00301800261300180c001e0f002814002814001e0f00281400
-281400201000281400281400140a002e1700160b00060300180c002010002010000c0600
-140a000c0600160b002814001e0f00180c00201000160b00140a000e07001e0f000e0700
-1e0f00201000201000261300160b00160b002814000e07002814002010002010000e0700
-0e0700140a00180c00201000160b00160b00281400201000180c00140a00180c000e0700
-0e07002010002613001e0f00180c000e0700180c00261300160b000c0600281400261300
-281400160b00281400160b00160b000e0700201000160b00140a00180c00140a00160b00
-160b002010000e07002010002010001e0f000402000e0700261300160b00180c00180c00
-2010001e0f00180c000e0700301800180c00160b00180c00201000140a00180c000e0700
-140a000c06000e0700261300201000140a000e0700160b00160b001e0f00201000160b00
-261300180c00160b000e0700201000160b000e0700281400261300180c002010002e1700
-2010000e0700160b001e0f00160b000e0700160b002010000e0700160b00160b00160b00
-180c00160b00201000180c00140a001e0f00261300261300180c00422100060300201000
-261300301800201000060300180c000e07001e0f001e0f000e0700180c00060300261300
-160b00020100140a00261300261300281400201000140a00060300160b00261300201000
-160b00261300140a00160b00201000160b00301800140a00
-1e0f00140a001e0f000e0700160b00201000160b002010000e0700140a00180c00180c00
-0e07001e0f00261300060300140a00060300180c00060300201000140a00160b00201000
-201000201000281400160b00160b001e0f00160b00160b002010000c06000e07000c0600
-140a001e0f00281400160b00140a001e0f00060300261300180c00180c00160b00261300
-1e0f00180c00180c000e0700140a00201000160b000e07001e0f001e0f002613001e0f00
-1e0f00140a00201000281400180c00160b000c06000e0700201000201000180c000c0600
-0e07001e0f001e0f002814001e0f000e0700201000201000060300160b000e07001e0f00
-0c0600160b00180c00160b00160b00201000160b00140a002010000e0700160b00180c00
-201000180c00160b00140a00261300201000160b00160b000e07000e07002613000e0700
-2e1700060300180c001e0f00180c002010002010001e0f000e0700201000321900301800
-201000140a00160b00140a00180c00261300180c002814000e07000201001e0f00140a00
-180c000e0700140a00201000160b002010001e0f00281400281400180c00301800180c00
-2814001e0f00201000160b000c0600160b00160b002e17002e1700160b002e17001e0f00
-1e0f002814000e0700140a00281400201000160b00160b002613002010002010000e0700
-0e0700160b002814001e0f002e17000c0600281400160b00201000281400180c001e0f00
-160b00201000201000140a002010000e0700160b000e0700140a00140a00180c00060300
-160b00140a00281400180c00160b001e0f001e0f001e0f00281400160b00261300140a00
-3a1d000e07001e0f001e0f002010002814000402002814002010002e17002010000e0700
-160b001e0f00261300160b00140a001e0f000402000e0700180c00160b00281400261300
-201000060300160b001e0f00140a00160b002814002010000e0700160b001e0f00281400
-0201002613000e0700180c000c0600180c002010001e0f000e0700160b003219000c0600
-0e0700281400160b00201000180c00160b00180c000e0700160b00281400060300160b00
-140a001e0f00261300180c00180c001e0f00180c001e0f00261300160b000e0700140a00
-140a00160b000e0700201000160b000e07000e0700180c00201000281400180c00160b00
-160b001e0f00180c00301800180c002010000e0700160b00180c000e0700180c00160b00
-0e0700160b002010002613002613001e0f00261300140a00140a001e0f00160b00040200
-160b000e07002010002613002010001e0f00201000160b00180c00160b001e0f00060300
-281400060300201000180c00180c00201000140a00201000281400201000281400201000
-140a00160b00160b00201000ffa142060300160b00180c001e0f00160b00140a000e0700
-0e0700180c00180c002814002e1700040200180c002e17001e0f000e0700140a000e0700
-2e1700140a00160b000c0600160b00160b000c06000e0700140a000201002613000e0700
-0e0700201000160b00201000140a00180c00160b001e0f000603002814002010000e0700
-201000180c00060300140a000e0700281400201000160b00160b00180c00160b00180c00
-180c000e07001e0f00180c000c06000e0700160b00160b00160b00160b00060300201000
-160b000c0600160b00201000160b00160b001e0f00140a002010001e0f001e0f00281400
-160b00180c003219001e0f000c0600160b00060300160b002010002814001e0f00140a00
-1e0f000e07000603001e0f00060300180c00180c000c06000e07000e07001e0f000c0600
-160b00140a00060300140a00201000281400160b002010001e0f00140a00160b00160b00
-2010000e0700180c002010000c06002010000c06001e0f001e0f00261300160b00201000
-180c000e0700160b00201000201000160b00140a001e0f002e1700201000140a00281400
-0c0600140a000e07002613000e07000e0700281400160b00180c00140a00140a000e0700
-261300060300140a002814002814001e0f001e0f003018001e0f00160b00261300201000
-281400180c00160b00160b001e0f00201000060300160b00
-201000180c00180c001e0f000c06000c06002010000e07000e0700160b00180c00140a00
-160b00180c00201000201000140a00160b000e07000603000e07000e0700261300160b00
-2010001e0f00180c00261300201000160b002613001e0f00140a00140a00180c00160b00
-160b00180c00201000180c00160b00160b00160b002010000e0700381c00180c00180c00
-180c00160b00160b000c0600160b00160b00140a00140a000e07002010000e0700180c00
-180c00160b000c06002010000c06003018000e07002010000e0700180c00201000140a00
-0e0700160b00160b00160b00261300201000201000180c00281400140a00180c00180c00
-2010002613000e07003a1d00261300160b00180c000e07000e0700140a001e0f00160b00
-180c00140a00160b002010002010000c06002814000e0700140a00160b00140a00301800
-201000140a002e17001e0f000e0700281400201000201000180c00140a00060300180c00
-201000160b00160b00140a00160b00180c00180c001e0f00201000160b001e0f00180c00
-281400321900180c00180c00160b002010000e0700160b00261300201000261300140a00
-0e07000603000e0700160b002010000e0700160b00180c00180c002010000e0700160b00
-160b00180c000e0700180c001e0f002010000e0700160b001e0f00201000201000180c00
-160b000c06001e0f000c0600281400180c002e1700160b001e0f00201000060300180c00
-180c00160b00201000160b00301800160b00140a002010000c0600160b00180c000c0600
-160b000e07002814002e17000e0700140a001e0f00281400180c00160b00261300140a00
-160b00180c000e0700201000160b000e0700160b000e07000e0700180c001e0f00261300
-0e0700180c00201000180c000e07000e0700160b001e0f001e0f00040200140a000e0700
-0e0700281400140a00201000180c000e07000603002613000e07003018000e07000e0700
-140a00160b000c0600160b00261300160b001e0f00160b00140a00160b00180c00201000
-180c001e0f00160b00180c00140a002010001e0f002010000e07000402000c06000e0700
-2010000e0700160b00160b001e0f00201000140a00020100160b000e0700281400180c00
-160b00160b00160b001e0f00160b000e07001e0f00201000281400140a00160b002e1700
-140a00180c00160b00140a000e07000e07002613002814000e0700301800160b00160b00
-160b00180c00160b002613000e07002010002010002010001e0f000e07000e07000e0700
-301800180c00160b001e0f00160b00160b000c0600201000160b00160b001e0f000e0700
-160b00261300160b00160b000e07002010002010002e1700160b00281400281400201000
-3a1d002e1700281400160b00160b00140a00160b00180c002010000c0600160b00201000
-160b00140a00140a00261300180c00160b002010000402000201000e0700321900201000
-201000160b000e0700160b00160b002814001e0f00140a00180c000e0700140a00140a00
-180c00140a002e1700160b000e07001e0f002814001e0f00281400160b00261300160b00
-0e0700281400060300160b00160b00180c001e0f00281400140a000c06000e0700180c00
-160b000c0600301800180c001e0f00201000180c002010002010001e0f000e0700160b00
-140a001e0f000e07001e0f000e0700060300180c00160b00160b00180c00201000261300
-261300201000140a000e0700180c00201000160b000c0600140a000201000e0700201000
-160b000e0700180c00180c000c06000e0700261300180c000603002e1700201000321900
-060300160b00160b001e0f00160b000e07000c0600201000140a002010001e0f00160b00
-2010001e0f00160b000e0700381c000e0700160b00180c00140a00281400180c00201000
-2010002010002010000e0700201000160b00140a00140a00140a000e0700261300180c00
-1e0f002814001e0f002010001e0f000e0700201000160b00160b003a1d002613001e0f00
-0e0700201000140a00140a00040200060300140a00140a00201000201000160b00281400
-160b000e07001e0f00140a002613001e0f001e0f001e0f00
-2010000e07001e0f00160b00160b001e0f00060300160b001e0f000e0700261300160b00
-160b00160b000c0600160b00140a00060300140a00180c00020100160b00201000180c00
-160b00160b002e1700060300160b000c0600160b002e17000e0700140a000603000e0700
-0e07001e0f00180c000e0700160b00201000201000180c002010002613002010002e1700
-281400180c00201000140a000e07000603000e07000e0700301800180c001e0f001e0f00
-1e0f003a1d000e07000c0600180c001e0f001e0f00281400160b002814001e0f001e0f00
-2010002814001e0f001e0f00160b00160b00281400160b00140a00261300160b001e0f00
-0e0700160b00160b002814001e0f00160b00160b000c06002010001e0f00160b00180c00
-2010001e0f001e0f00180c002010000e07000e0700201000140a001e0f00201000140a00
-160b00180c00201000261300160b002010002814000c0600160b001e0f00261300140a00
-2e1700180c00201000140a00060300180c000c0600140a00180c001e0f000c0600281400
-160b00160b00160b00201000180c00160b000e07001e0f00261300160b003219001e0f00
-281400140a00201000140a000e0700201000201000140a00160b00060300201000140a00
-1e0f00301800201000160b00180c001e0f00201000160b00140a00281400160b000e0700
-160b00160b003018000c0600160b002814002e17002613002613002010000e0700160b00
-0e0700160b00180c00160b00301800201000281400201000201000180c00160b000e0700
-2010000e07000e0700160b001e0f00180c001e0f000e0700201000180c00201000160b00
-0e0700140a00201000160b00160b000e0700180c00140a00261300201000160b000e0700
-2613002814002010002010000e07001e0f000e0700261300160b00140a00140a00201000
-261300020100140a00060300160b000e07000e07002613002814002010001e0f00180c00
-1e0f00281400160b00140a00160b001e0f001e0f002814001e0f00180c002010002e1700
-2814001e0f000c0600261300180c00060300261300201000160b00160b001e0f00160b00
-160b000e0700201000140a00160b00160b001e0f002010000e0700201000201000261300
-060300160b00201000160b001e0f00060300140a002010002e1700060300140a000e0700
-1e0f00201000301800180c00281400281400281400160b00160b00140a00201000020100
-1e0f00180c000e07002613002e1700140a001e0f00140a00160b00180c00180c00160b00
-160b00422100201000160b000c0600160b000402002010002613002010000e07000e0700
-160b00160b00160b00180c00160b002e17000e0700261300201000281400201000180c00
-180c00160b00180c00180c00160b00180c00201000261300160b00160b00160b00180c00
-281400180c00201000140a001e0f00160b002010002814001e0f00140a00180c001e0f00
-180c00201000201000261300180c000e0700180c00201000160b00261300160b00281400
-180c000e0700180c00180c00160b001e0f00060300160b001e0f00160b00160b00281400
-180c00201000180c000e07001e0f00140a00160b002010002010000c0600160b00160b00
-2010002814001e0f00201000160b002e1700140a001e0f00140a00201000180c00201000
-1e0f001e0f000e07003018000e07002010000c0600140a00201000180c00160b00261300
-160b00160b000e0700180c000e0700160b00261300160b00180c000e07001e0f00160b00
-0e07001e0f00140a001e0f00180c002814002010000e07001e0f000e07000e0700281400
-160b00180c00201000160b000e0700201000180c000e07000c06001e0f001e0f00160b00
-140a00261300201000140a00060300160b000201000e0700180c001e0f000c06000e0700
-0e0700160b001e0f00180c000e0700160b00160b002e17000e0700261300140a00160b00
-2e1700201000160b002010002e17000e0700180c003a1d001e0f000c0600201000201000
-201000180c00180c00201000140a00301800160b002814000e07002814000c0600140a00
-160b00160b00160b00140a002814001e0f00160b00301800
-1e0f000c06000e0700160b00140a00160b000e07000e07001e0f002613001e0f00160b00
-180c000e07002613002010000c0600201000261300140a002010001e0f00160b001e0f00
-180c00201000180c00140a001e0f000c0600160b00201000060300160b002010001e0f00
-140a00201000160b00140a00160b002010000e0700160b00160b001e0f00160b00160b00
-180c00160b002010001e0f000e0700060300140a00160b000e0700160b00140a00201000
-201000140a002010002e1700180c00140a000e07001e0f002e1700281400160b00261300
-201000201000160b00140a000e0700160b000e07000603002613000c0600261300040200
-0201000c0600160b001e0f00160b002e17002010000e0700180c00261300180c00160b00
-2814001e0f00160b001e0f00201000160b00160b00160b00281400060300160b00140a00
-201000180c00261300160b000e07001e0f00201000160b00180c00301800160b00281400
-281400160b001e0f00160b002814000c0600160b00281400140a00201000180c00180c00
-0e07000603000e0700281400180c00180c00160b002e17001e0f00140a00180c00180c00
-140a00160b00160b00160b00201000281400301800140a00201000180c00381c00160b00
-180c000e07002613002613000e0700180c00180c00140a002e17002010000e07000c0600
-0e07000e07000603001e0f00180c001e0f00140a000c0600180c00160b000e0700201000
-261300201000160b001e0f00261300160b00160b00140a000e0700160b00201000301800
-140a000e0700201000140a001e0f00201000180c001e0f00180c00140a00140a00160b00
-140a000c06003018001e0f00180c001e0f002613002613000e0700180c00140a00281400
-2e1700180c000e0700160b000e07000603002010001e0f00140a001e0f00180c00060300
-160b002010000c06002814000c0600160b00140a00160b00160b00140a00180c00201000
-0c06001e0f00160b00281400160b000c0600140a00160b00201000060300140a00180c00
-140a00261300180c002613002613000e07000603002010002e1700160b000e0700281400
-201000160b00180c00180c000e07000e0700160b00160b001e0f00201000301800140a00
-201000201000180c002010002010003018002e17001e0f002814001e0f002010001e0f00
-381c000e07001e0f002010001e0f00281400201000160b00160b001e0f00261300160b00
-180c00160b00180c00180c001e0f00140a000c06002814001e0f00180c000e0700140a00
-301800180c000e0700140a002010001e0f000201000e07001e0f002010002010000e0700
-180c000e0700201000201000060300ff9e3c180c00180c00180c00281400201000301800
-0e07002613002814000e07001e0f001e0f001e0f00160b00160b00160b00180c000e0700
-160b00140a000c0600201000140a00201000020100180c00201000201000140a00180c00
-0e07000c06000e0700261300261300201000160b000e07000e07002814000e07000e0700
-2814002e1700160b00160b00160b000e0700180c000c0600261300160b000c0600160b00
-2613001e0f00281400160b002e17000e0700140a00180c000e07000e07000c0600140a00
-140a001e0f00160b00160b000e0700281400160b002010000e0700180c00261300201000
-2010001e0f000c0600160b002e1700180c00160b00301800261300060300301800060300
-180c00160b002e17000201002010000c06000e0700160b00180c002010003219000c0600
-160b00180c002613000e0700160b00180c000e07000e0700160b000e0700201000201000
-060300140a00180c00281400261300180c002814000e0700020100160b00160b00201000
-201000160b000e07001e0f00201000201000040200160b00160b00160b00180c00201000
-160b00201000281400160b00160b00180c001e0f000e07000e0700160b000603001e0f00
-160b00140a00160b000c0600160b00160b001e0f002010000c0600160b00281400201000
-180c00160b00201000261300160b000e0700201000140a00160b00201000160b00160b00
-1e0f00160b00160b00140a00160b00160b001e0f00160b00
-0e0700261300180c000e0700140a002613000c06001e0f00160b00180c000c0600201000
-261300180c00261300140a00201000160b001e0f001e0f00201000140a00060300180c00
-140a00160b00160b000603001e0f000e0700140a00020100160b00160b000e07001e0f00
-180c00261300180c001e0f00261300201000160b00180c00160b00201000261300160b00
-2814002613000c06000e0700140a00160b00281400160b00160b002010000c06000e0700
-060300140a00160b00180c002010000402002e17001e0f00140a00201000201000201000
-201000160b00160b00160b002613000e0700180c000e0700281400201000160b00180c00
-1e0f00160b00160b00201000140a00140a000c06000e0700140a000e07000c0600261300
-201000180c00281400160b000e0700160b00180c00060300201000201000140a00281400
-160b002613002010003018001e0f001e0f000e0700160b00180c00140a00180c00180c00
-180c001e0f00140a000c06000e07002010000e07002814002814000e07002010001e0f00
-281400301800160b000e0700160b00201000201000140a000e0700160b00160b000e0700
-140a00140a000e0700060300160b00201000201000180c002814000e07001e0f00201000
-2010002e17001e0f00180c00281400281400160b002010000e0700140a00281400160b00
-1e0f00160b000e07002814001e0f002814000e0700160b00140a00140a00160b00160b00
-160b00281400160b001e0f00160b001e0f002010001e0f001e0f00140a001e0f002e1700
-0e0700160b000e0700180c000e0700201000160b00160b000e0700140a00201000281400
-180c00180c002010002814002010000e0700201000201000160b001e0f00060300201000
-2814002613002010001e0f000e0700201000180c00160b00201000180c00180c00160b00
-180c00160b00160b000e0700281400261300160b00160b00180c001e0f00180c00160b00
-140a00160b000c0600140a00160b00180c002814001e0f00281400160b001e0f00201000
-160b00201000201000140a002814001e0f000603000603001e0f00180c00160b00140a00
-0e0700281400201000180c00040200140a00160b000c0600160b002814000e0700140a00
-261300160b00180c00281400160b001e0f002010001e0f00201000140a00160b000e0700
-201000201000160b000e07000c0600140a001e0f00160b00321900180c00201000180c00
-1e0f00201000281400160b00381c00140a000c0600201000201000160b00201000160b00
-0c06002010002010001e0f00261300160b00281400160b000e07000e0700160b00180c00
-2e17000e0700ffa244ffa040ffa2440e0700ff9d3aff9e3cffa2441e0f001e0f000c0600
-281400160b002e1700140a00180c000c0600180c002010000c06000e07001e0f00180c00
-1e0f002814000e07002613000c0600020100160b00160b00180c000e07000e0700140a00
-2e1700140a000e07001e0f00140a002010000c0600160b00160b00020100160b00160b00
-180c00180c00160b00180c000603000e0700140a000e07000e07000e0700060300060300
-140a00160b002e17002814001e0f001e0f001e0f00201000301800160b00160b00140a00
-201000160b001e0f000402000e0700140a00201000301800160b00160b00160b00160b00
-060300180c000603001e0f00201000160b00201000060300140a000e0700160b00180c00
-201000020100160b00180c002010000c06001e0f00160b00281400160b001e0f002e1700
-180c00261300301800160b00201000261300140a000e0700160b00201000180c001e0f00
-060300180c00180c00160b00160b00140a00201000201000160b00160b00261300180c00
-0603001e0f00160b000603001e0f00180c00060300201000301800140a001e0f00060300
-2010000e07002814000402002613000603000e0700201000140a00201000160b00160b00
-040200261300160b00180c00261300180c002010000402002814002010000201000c0600
-2e1700160b00140a00160b002010001e0f00040200160b001e0f00180c00160b00261300
-201000201000201000160b001e0f00201000160b003a1d00
-0e07000e0700160b002613000e07002814001e0f00140a002010000c06000e07001e0f00
-160b001e0f00321900180c002814002010002e1700140a000e0700160b00140a000e0700
-0e0700201000160b00180c000e07002814002010003219000e0700180c00261300160b00
-2814000c0600201000160b00201000180c00160b00201000060300201000160b00261300
-0e07001e0f00281400201000180c00201000281400140a002613001e0f002e1700281400
-160b000e0700140a00160b002010002e1700281400180c001e0f00180c00160b00201000
-160b00160b00140a00180c00160b000c0600201000160b00261300140a00180c000e0700
-140a00160b000603000c0600060300180c00020100140a001e0f00160b001e0f00180c00
-201000201000060300180c000e0700160b00281400160b00180c000c0600140a000e0700
-281400180c00261300281400140a000e0700060300140a001e0f00201000040200160b00
-0e07000e07002613002010002010002010002613002814001e0f00160b003219000e0700
-180c00140a002010000e07001e0f002814002613001e0f00160b00140a00180c00281400
-1e0f00060300201000060300160b002010000603002814001e0f00180c000e0700160b00
-180c00180c00281400381c00160b00180c00160b000e0700140a00160b002e1700160b00
-2e17000e0700201000160b00180c00201000201000160b00201000301800060300261300
-160b001e0f000e0700160b00180c002010003a1d00140a00160b000e0700261300140a00
-160b000603000e0700160b00281400160b00180c001e0f00180c00060300140a00261300
-1e0f00201000180c00060300180c00160b00160b002814003018000e0700160b00140a00
-160b001e0f000c0600160b00261300261300160b00301800201000160b00201000201000
-160b00160b00281400160b00201000180c00160b00180c001e0f00180c00160b00040200
-1e0f000e0700140a00160b001e0f00180c00201000160b002814002814002010000c0600
-180c000e07001e0f00160b00201000160b00160b000e07000c0600160b002613000e0700
-180c00201000180c001e0f002814000c06001e0f00201000201000160b00180c00160b00
-2010000e0700261300160b00140a00160b00261300160b00201000201000060300201000
-020100160b00060300160b002010000e0700160b00140a00261300180c00201000201000
-160b000e0700180c000e0700201000160b00160b00301800180c000c0600140a00140a00
-261300301800020100160b00281400160b000e0700160b00160b00160b00160b00160b00
-140a00ff9d3a180c002010000e07002010002010001e0f00201000201000060300261300
-160b00140a00180c00140a002010003018000e07000e07001e0f00160b00281400160b00
-2010001e0f000e07000e07001e0f00160b00201000140a00180c00160b00160b000e0700
-160b000201002814001e0f00160b00140a000c0600261300060300140a00160b00160b00
-180c00160b002010000603001e0f001e0f000e07000e07000e07001e0f00160b00201000
-281400140a000c0600201000140a00261300160b00160b00140a000e0700160b00261300
-060300160b00160b000e0700160b00160b000603001e0f00160b002010002010000e0700
-140a00160b002010000c06002010002010001e0f00180c00160b00281400201000281400
-160b00060300160b00261300140a000603002010002010003a1d00160b000e07000c0600
-160b00261300261300180c00180c00180c002e1700160b00180c00160b00160b00301800
-160b002010001e0f00381c00180c000e07001e0f003018001e0f001e0f002010002e1700
-281400060300261300140a00140a000e0700140a00201000160b00160b002814001e0f00
-0e07000c0600160b00160b001e0f000e0700140a000c06000402000402000e0700180c00
-0e0700180c00281400201000180c00180c00140a001e0f002010002e1700140a00160b00
-160b000c0600160b00201000281400140a00160b001e0f002010001e0f001e0f00160b00
-2e1700140a00160b00160b000e0700140a00281400261300
-180c00180c00160b00281400060300160b000201000e07000e0700060300180c00180c00
-140a00281400160b002613001e0f00160b002613002010000e0700160b00180c00140a00
-160b00281400060300160b00160b001e0f00140a000c0600160b00160b001e0f000c0600
-0c0600160b00201000180c00160b000e0700261300160b00140a000e07002010000c0600
-180c001e0f001e0f00201000180c00160b000e0700281400201000160b00140a000e0700
-060300160b00160b00281400140a00201000160b00160b002e1700060300261300160b00
-1e0f000c06000e07000201001e0f000603000e0700281400140a001e0f00160b00201000
-160b00160b00180c00201000281400160b003018000e07001e0f001e0f003018000e0700
-1e0f000e0700281400180c00201000180c00140a00160b000e0700160b000e07002e1700
-1e0f002814002814001e0f00201000180c00201000281400201000060300201000201000
-040200180c000e0700201000180c00160b002010000e0700180c00201000160b000e0700
-2613000e0700160b00160b00321900160b000e0700160b00180c00201000160b00160b00
-140a00160b00160b00140a000603002814001e0f00180c00160b00160b00201000281400
-281400160b00180c000e0700180c00180c00160b00160b00201000201000180c00160b00
-160b00160b003018002814002613002010000201000e07002e1700160b00180c00201000
-180c00040200160b000e07000c0600201000201000140a001e0f00160b00281400060300
-281400180c002010002613000c06000e07001e0f00261300281400180c00281400201000
-0c0600060300180c00160b00160b002010000e07000e07002613000402001e0f001e0f00
-1e0f00160b00201000201000160b000e0700160b000c06001e0f00140a00261300301800
-1e0f00160b00160b000e0700180c002814000e07000c06001e0f00160b00140a001e0f00
-0e07002613002814000e0700261300140a00201000160b000e07000e0700140a00180c00
-2e1700180c00281400160b002010002613002613000e0700180c00020100281400180c00
-160b00201000160b00180c002010002010001e0f00281400140a00180c00140a001e0f00
-160b00160b00160b00160b00281400180c00160b001e0f00140a000603002010001e0f00
-201000140a000e0700201000201000201000201000281400201000201000140a00201000
-140a00160b00180c001e0f00160b002e17001e0f00140a000e07002010002613003a1d00
-201000442200160b000603000e07002e1700281400281400180c00160b00180c00160b00
-ffa142140a00201000180c002010000e0700160b00160b001e0f00160b00ffa64c180c00
-1e0f00140a00201000160b000e07001e0f002814002e17000c0600140a000e07000e0700
-2010001e0f00160b00180c00040200160b00140a00281400201000201000160b00160b00
-2010002613000e0700201000201000160b00180c001e0f000e07001e0f000e0700201000
-3018002010000e0700140a00160b002e17000402002814000e07000e07000e0700160b00
-261300140a00060300140a001e0f00160b00160b00201000160b00140a00321900301800
-261300160b00140a002010002010000c0600261300180c000e07001e0f00160b00160b00
-160b002010003018002e1700160b00160b002010001e0f00180c00140a00281400160b00
-0e07000e0700160b00140a002010001e0f000e0700201000160b00281400060300281400
-060300020100140a000e0700201000180c00160b001e0f001e0f000e0700261300140a00
-180c00281400160b003018000603000e0700201000160b000e07000c06000c0600180c00
-180c00180c00160b000e0700160b001e0f00160b00261300160b002e17002613000e0700
-140a001e0f000e0700160b002613000e07000e07000e0700180c000e0700160b00160b00
-201000160b00201000160b00160b00140a001e0f001e0f00060300160b001e0f000e0700
-160b000603000e07002e17001e0f00060300160b002613000e07002e1700261300180c00
-0e0700180c00160b002010001e0f000e0700140a00160b00
-020100140a000e0700160b00160b00201000160b000603000e07000e0700ffa54aff9c38
-ff9c38ffa54affa142ff9e3c160b00140a00281400160b00140a002613000e0700140a00
-1e0f000e0700140a00180c002814000603000e07000c06000201000e0700261300160b00
-160b002e1700201000140a00140a00160b002010002e1700160b000603000e0700160b00
-201000140a00160b002814000e0700140a00060300180c000e07002010001e0f00180c00
-060300160b00381c00201000140a001e0f00140a00261300160b001e0f000e0700281400
-0603000c06001e0f001e0f00160b00301800160b00140a00201000180c000603000e0700
-160b00160b002e1700040200201000180c000e0700160b000c0600281400201000160b00
-180c00180c001e0f000e07000c0600201000281400140a00261300201000160b000e0700
-0e07000c06002613002010000e0700060300140a00201000160b000e0700060300180c00
-160b001e0f00160b002010003219000e0700180c00180c000e0700180c00160b00261300
-0e07002814001e0f00160b00160b002814002e17000e07002010001e0f00201000201000
-160b00180c000c0600160b001e0f00180c00160b00160b00301800040200180c00201000
-140a001e0f00160b00180c00140a00180c00201000180c00160b00160b00201000201000
-180c00160b00160b000e0700201000160b00180c000603000e07001e0f001e0f001e0f00
-281400020100281400301800060300140a00261300180c00160b000e0700140a00180c00
-140a00140a00160b00201000060300140a000201000c06000e07000e07001e0f00160b00
-2814000c0600160b00140a001e0f00261300321900201000160b00060300201000180c00
-0201000e0700160b000e07001e0f000e0700140a00060300201000261300160b00201000
-160b00160b00160b00160b00160b000c06000e07001e0f00160b000e07002e17001e0f00
-0c06000c0600160b002814000c06001e0f00160b00281400140a001e0f001e0f00160b00
-160b00180c00180c000e07000e0700160b00160b000e0700160b00160b00180c00140a00
-1e0f00180c000c0600140a001e0f00060300201000160b000e0700160b001e0f00140a00
-160b00060300140a00140a00160b000e0700180c001e0f002e1700160b00160b001e0f00
-180c00180c002010000c06001e0f00180c001e0f000e0700201000140a00201000261300
-160b00160b00140a00140a00160b00281400201000160b00140a002010001e0f00201000
-1e0f001e0f002010002010000c06002613002814003a1d00201000261300160b00ffa040
-201000201000180c002010002010002814001e0f00201000140a000e0700ffa2441e0f00
-180c00140a00180c00201000160b001e0f00180c001e0f00160b001e0f00140a00281400
-180c002010002613001e0f000e0700160b000e0700140a001e0f00201000261300160b00
-2814000e0700160b000e0700160b00180c00160b00160b00160b00201000281400160b00
-180c000c0600180c00201000160b00261300201000140a001e0f002814002010000e0700
-301800160b00160b000e0700060300180c00201000140a00160b00180c00301800201000
-160b00180c001e0f000603000e07001e0f000c06002010000e0700160b001e0f002e1700
-0e07000e0700160b00321900160b000e07002010002814001e0f002010001e0f00201000
-201000160b001e0f00160b00160b00160b000e0700140a00201000140a001e0f00160b00
-160b00160b002010002613000c06000e0700180c003018002010002010000603001e0f00
-160b00180c002814002010000e0700180c00201000180c00201000201000140a00160b00
-0e0700201000160b00281400180c001e0f00140a00180c000e0700140a000e0700180c00
-0e0700160b00281400140a00261300140a00160b001e0f00160b002e1700201000160b00
-2814000c0600201000140a000e0700261300160b000e07002010000e0700180c00201000
-060300180c001e0f00160b00140a00140a002010000e0700160b00160b00160b00180c00
-201000180c00060300040200160b00180c000e07001e0f00
-0e07000c06000c0600180c00060300160b000e0700060300ffa448ffa54a301800180c00
-2010000c06001e0f00140a00ffa244ff9e3c2010002010000c0600180c000e0700160b00
-180c002814000201000e07000603000c06000e0700261300180c00281400140a001e0f00
-0c0600180c00201000201000281400160b00201000140a002010002e1700160b001e0f00
-180c00160b000e07001e0f001e0f001e0f00180c00160b002e1700140a001e0f00201000
-1e0f00281400180c00160b00160b00201000160b00201000180c00140a00140a00261300
-0c0600160b00160b000e0700160b002e17001e0f00160b001e0f002e17000e0700281400
-281400160b00020100160b000603001e0f00160b00180c00160b00140a00180c00160b00
-140a00160b00160b000e0700140a00140a000402000e07002e17000c06001e0f00201000
-1e0f00160b00160b00261300180c001e0f00160b000603001e0f002010000e0700140a00
-0603000e0700201000281400160b00160b00160b000e07002010001e0f00180c00180c00
-0e07000e07000e07001e0f000c06000c0600180c00180c00160b00261300140a00160b00
-160b002814001e0f002613000e07002010002010002010002814002010000e07000e0700
-0603001e0f00201000180c002010002613000e07000e0700160b00140a00201000160b00
-140a000c06001e0f00201000201000201000160b000e0700160b00201000261300281400
-140a00261300180c000e0700201000261300180c000e0700201000160b00180c00160b00
-160b00201000160b000c06000e0700140a00140a00281400060300140a00160b00040200
-2010000e0700140a00201000180c000c06000c0600140a00201000140a00201000281400
-2613000e0700160b00180c00180c002613002010000603001e0f000e0700160b00160b00
-0603000c0600180c002e1700160b000e0700060300160b00281400060300180c00160b00
-0c06000603002010000e0700201000180c00140a001e0f00160b00281400281400160b00
-160b000e0700160b00381c000e07000e0700160b002010002613000e0700180c000e0700
-3a1d00180c00160b001e0f00180c00160b00160b003018002613000e0700140a00140a00
-180c00160b00160b00201000160b00140a002010000e0700160b001e0f00180c00201000
-160b000e0700201000261300160b00140a00201000160b000e0700160b00180c000c0600
-060300180c00281400160b002e17000e0700160b00201000160b00180c00201000160b00
-180c000201001e0f00281400180c001e0f000e0700201000180c001e0f00281400ff9c38
-2613002010002010001e0f000e0700321900180c00281400160b00160b00160b00ff9d3a
-160b00180c001e0f000e07002e17001e0f002e17002613002613001e0f00281400261300
-2613001e0f00180c00281400201000201000160b00201000180c00060300140a000c0600
-0e07000e0700160b00160b001e0f000e0700180c00160b000e0700060300180c00281400
-180c00140a00140a00281400180c001e0f000e0700201000281400201000201000060300
-0c06002613000e0700160b000e07001e0f002010002010002814001e0f000e07002e1700
-180c000603002613000c0600160b002814001e0f00160b00180c00040200160b00201000
-140a00180c00160b001e0f00160b000e07000e07000603002010000e0700160b000e0700
-0e07002e1700160b000e0700160b000e07002010000e0700160b000e0700160b00281400
-2010000e07000e07000e07000e0700301800261300140a000e0700160b00261300160b00
-281400160b00201000160b00180c00180c000e0700160b00261300040200140a001e0f00
-0e0700140a00160b000603002e1700160b00040200301800140a000e0700160b00261300
-0c06000e07000e07002814001e0f00060300160b00160b00140a000c0600160b00060300
-160b00160b001e0f00180c00261300160b001e0f000c0600140a002010002010000c0600
-1e0f001e0f000e0700180c000e0700201000160b001e0f000603000e07000e0700180c00
-1e0f000c0600201000261300180c001e0f00140a00201000
-1e0f000c0600281400201000060300201000ff9e3cff9c38140a000e0700160b000e0700
-0e07001e0f000e07000e0700281400160b00ffa244ffa142201000160b00020100180c00
-160b00160b001e0f000c0600160b00180c00160b00160b000e07002e1700140a00261300
-0e0700281400180c00281400281400201000180c000c0600160b00180c000e0700201000
-180c001e0f00160b00261300160b00160b00201000160b002010000c0600160b000e0700
-140a00201000201000160b00261300180c00180c00160b00160b000e0700160b00281400
-1e0f00140a002010002e17000e0700160b001e0f00201000160b00160b00160b00160b00
-180c00180c00160b00160b00160b002e1700160b001e0f000e07002e1700281400180c00
-201000201000140a002814002010002010002e1700201000201000201000180c00160b00
-160b002814001e0f00160b002010001e0f00180c00140a000e0700140a000e0700261300
-0e07002010000e07001e0f00160b00060300160b00160b00160b001e0f000c06000e0700
-261300140a00160b00261300281400261300301800160b00160b000e0700201000180c00
-0e0700261300160b00201000261300020100281400160b000c0600020100201000180c00
-201000020100140a00180c00201000160b00160b00160b001e0f00140a002814000e0700
-180c00160b00180c001e0f00160b00201000281400180c000c0600201000201000180c00
-2e1700160b00201000201000180c001e0f000e07000e0700060300160b00201000201000
-160b00160b00201000160b00201000140a002e1700201000180c00160b00160b000e0700
-0c0600140a001e0f001e0f00180c00160b000e07002010002010001e0f00160b001e0f00
-281400140a000e0700180c001e0f00060300160b00281400201000160b00261300160b00
-1e0f00201000140a002010001e0f001e0f00180c000c06000e07002613002613001e0f00
-160b00301800140a00281400180c00140a00261300201000160b00160b00060300160b00
-140a000c0600201000180c002613001e0f001e0f00201000040200140a00060300140a00
-2613000e0700140a00160b002010000e07002010000e0700281400020100160b00060300
-2814002814002010003018000c06001e0f000e0700281400160b000e0700201000261300
-180c00160b00281400201000160b00160b00140a002010002010000c06001e0f00281400
-160b001e0f00201000160b00140a003018001e0f00201000160b00261300160b00160b00
-160b000e0700180c00180c00160b00160b000402001e0f00160b00160b00ff9932180c00
-160b001e0f001e0f002613001e0f002613002e1700160b000e07002010001e0f00ffa54a
-160b00160b00180c00180c00060300301800160b00201000060300140a00281400060300
-1e0f000c06000603002814003219000e0700180c000e0700060300160b000e0700040200
-140a000e0700201000201000160b00180c001e0f00261300180c00201000140a00160b00
-0c0600140a00201000160b001e0f00160b000c06001e0f003a1d00201000261300140a00
-2814002814002814002010002010000e0700140a001e0f002010001e0f00321900180c00
-140a00160b00201000160b00261300180c00201000160b003a1d00180c00180c00160b00
-140a000e0700140a00160b00140a000e07000e07001e0f001e0f002e1700160b00160b00
-160b00140a00281400160b00180c001e0f00201000180c00140a00201000140a000e0700
-0c06000603002010000603000e0700160b000e0700140a00180c00180c00140a000c0600
-140a00201000140a000201002010002010000e0700160b002814000e0700140a001e0f00
-160b00140a00060300261300201000140a00201000281400160b00160b001e0f00321900
-201000201000201000140a001e0f00160b00180c001e0f00180c001e0f00160b00160b00
-2010002814002814001e0f00160b000e0700160b00140a000e07002814002e1700160b00
-0e0700160b000e0700180c00060300160b00301800160b00160b00140a00261300201000
-1e0f002010000e07000e0700201000160b00261300261300
-281400180c00160b00201000201000ffa2441e0f002613002814000c0600201000180c00
-180c00180c00060300160b002613001e0f00180c00281400ff9d3a160b00201000201000
-0e0700140a00060300201000180c002613000c0600060300180c00160b00160b000e0700
-160b00140a00201000140a001e0f00160b000e0700140a00140a00180c001e0f000c0600
-180c001e0f000c06000e0700261300180c00261300160b00140a000e0700160b00201000
-0e0700160b002814002613001e0f00261300160b002e17000e0700160b000e07000e0700
-1e0f00180c001e0f00201000140a001e0f00160b000e07000c06002010000e0700060300
-2010001e0f00140a00201000160b00160b00160b00140a000e0700060300160b00201000
-2010002010000e07000e0700201000201000180c00160b000e07002814001e0f00201000
-180c00160b002010000e0700160b00180c00160b00160b000603000e07002613001e0f00
-1e0f002010000e0700301800180c000603001e0f000e07001e0f00160b00201000281400
-2e1700140a00160b00160b00180c000603000c0600281400201000180c00160b00140a00
-0e0700180c00180c00140a003a1d00180c000e07000e07002e1700201000160b000c0600
-2010000e07000e0700160b00201000140a00301800160b00160b00060300160b00160b00
-160b00180c00160b00180c00201000060300140a001e0f00160b00201000201000140a00
-160b00201000281400381c00140a002613001e0f000e07001e0f000e07000603000e0700
-140a000e0700140a001e0f002613002010001e0f000e0700160b00281400281400160b00
-160b00160b00160b000e07000603000e0700160b000c0600140a00160b00180c00201000
-160b00261300180c002e1700180c002814000e07001e0f000e0700160b00261300201000
-281400180c00261300160b00261300301800160b00160b002010000e0700140a00160b00
-160b00140a000e0700180c00201000140a00261300281400180c000e07002e1700160b00
-0e0700160b000e0700281400301800281400160b00160b000c06000e0700201000201000
-0e0700160b00201000060300160b00160b000e0700261300180c002010001e0f001e0f00
-0603001e0f002613002814001e0f00160b002e17001e0f00160b004221000e0700160b00
-140a000e0700160b00160b000c06001e0f000c0600160b000201000e07000e0700160b00
-2814000e0700160b000e0700180c00261300160b002010000c0600160b002010000c0600
-180c00160b002613000e0700160b00160b00160b002010001e0f00140a00ffa244281400
-1e0f000e07001e0f001e0f00402000301800201000180c001e0f00160b00281400ffa448
-1e0f00160b001e0f002814000e07000e0700201000201000160b000603001e0f00201000
-281400160b003219002e17000e0700180c00261300160b00201000180c000e0700060300
-180c001e0f002010000e0700140a00140a00160b00160b000e07001e0f00160b00201000
-1e0f002010000e0700140a000c0600160b00160b001e0f00180c00140a002e17000e0700
-0e0700160b002814002010000e0700201000201000060300160b000c0600180c00201000
-180c002814000e07000e0700281400160b000e0700160b000c06001e0f00201000040200
-160b000e0700180c002010001e0f00180c00180c00140a000402001e0f00160b000e0700
-160b00140a00160b00381c002613000e0700160b001e0f00160b002010002010001e0f00
-140a00060300160b00301800180c000c06000603000e0700160b00060300140a00201000
-180c000e0700160b000e0700201000201000201000160b00140a00281400180c00060300
-201000140a00140a00281400201000201000180c00180c002010000603000c0600201000
-140a000e0700060300160b00140a000e0700281400160b00201000201000160b00180c00
-261300201000160b00160b001e0f00261300301800160b000603002814001e0f00160b00
-180c00160b00201000160b00160b00201000160b000e0700160b000e0700160b00040200
-140a000e0700160b000e0700160b001e0f001e0f00201000
-140a00160b00140a00281400ffa448180c00281400140a002010000e0700140a00060300
-2e1700140a00180c00301800160b00160b00140a00281400201000ffa142160b00180c00
-2010002010000e0700160b000c0600160b002010002010000e07002010002e1700180c00
-281400140a00160b003018000c06002613002613000e0700160b00301800040200201000
-140a000e0700140a00180c00140a00060300201000140a00201000281400160b00261300
-301800281400201000201000301800261300301800160b00180c001e0f000e0700160b00
-060300140a00160b00140a00180c000e0700160b00060300180c000e07002010001e0f00
-2e1700201000060300201000180c000c0600201000201000261300180c00281400201000
-160b00160b00020100160b002010000e07000e0700160b00180c00160b00160b000c0600
-0c0600180c00180c000e0700060300160b001e0f000e0700160b00140a00160b00261300
-2010000603000c0600180c00180c00140a000e0700201000281400261300160b00180c00
-281400201000180c00140a000e0700060300321900281400201000180c003a1d00180c00
-1e0f00180c002814000c06000e07000603002e1700160b001e0f000e07000e0700201000
-160b00160b00160b00060300261300160b00160b00180c002010000e0700160b00160b00
-160b000e0700140a00201000160b000c06002010000e07002010001e0f00301800261300
-180c000e0700140a001e0f00281400140a001e0f00160b00060300140a001e0f000e0700
-1e0f00160b002814002e1700160b00160b000e07000e07000e0700180c00180c001e0f00
-3018002010001e0f00261300160b00160b000e0700140a002e1700201000180c00261300
-0c0600180c002010002010002010001e0f002e17000603000e07001e0f00160b00180c00
-1e0f00160b000e07001e0f001e0f000603000e07001e0f002010002010000e0700261300
-160b002010000e0700201000180c00140a001e0f000e0700201000261300261300160b00
-2613000e0700261300160b002613002e17001e0f00140a00140a00160b00261300301800
-160b00140a00201000140a00160b001e0f000e07001e0f00160b00160b00160b00160b00
-2010001e0f00060300180c00160b002010001e0f002e17001e0f00201000180c001e0f00
-160b00160b001e0f00201000160b002613001e0f002e17000c0600180c00180c001e0f00
-160b000e0700160b002814002613000e0700160b00281400160b00140a000e0700140a00
-0e0700201000160b00140a000c06000e0700140a000e07000c0600180c00ff99321e0f00
-160b002010002010001e0f00442200301800381c00261300321900160b00281400ff9932
-160b00201000201000201000261300060300180c000e0700180c001e0f00160b00201000
-201000140a00160b00140a00140a00180c00180c00180c000c0600140a00060300160b00
-1e0f00201000140a00160b00140a00160b000e0700160b000e0700180c00261300201000
-201000180c00ff9e3cffa448ff9e3cffa142ffa040140a00201000160b00180c00201000
-261300180c00321900160b002814000e07000e0700160b00140a00180c001e0f00261300
-281400180c00160b00160b00180c00180c00201000160b000e0700201000160b00140a00
-160b002613000603000e0700201000201000261300140a002010000e0700201000140a00
-1e0f00160b001e0f001e0f001e0f00160b001e0f002010000e07000e0700201000140a00
-160b00180c000e07000e0700180c002e1700281400160b002e17000e0700160b00180c00
-201000201000060300140a00160b00180c000e0700201000180c00180c00201000160b00
-160b00060300020100180c00160b000e0700261300201000180c00201000160b00160b00
-180c00160b000e0700201000281400160b001e0f00180c00140a00160b00201000201000
-180c00160b001e0f000603001e0f00160b00180c00160b002010001e0f00321900140a00
-3a1d002613000e07000201000e07002814000e07000e0700180c00140a001e0f000e0700
-180c00160b000603000e07000603001e0f00160b00180c00
-0e07001e0f00060300160b00ffa040160b00180c00160b002010001e0f00281400261300
-2814001e0f00201000201000261300160b00140a00201000201000ff9e3c1e0f000e0700
-1e0f00180c00201000160b000e07000e0700180c000e07000e07002613002e1700160b00
-180c002814002613001e0f000c06000e07000e0700160b00281400180c00261300140a00
-180c002010001e0f00160b002814000e07000c0600160b00160b00201000060300261300
-140a001e0f00160b002010002814003018000e0700281400180c002613000e0700140a00
-2010002010000e0700301800060300180c00180c00160b000e0700201000140a00201000
-2010000e0700060300180c00180c00180c00301800040200180c00060300281400301800
-180c00160b000e07002010000e0700381c00160b00160b00160b00281400180c00201000
-0c06000c06001e0f00160b00180c00160b00160b000e0700180c00261300201000180c00
-060300160b000e0700160b00180c000e07000e0700180c00201000180c00160b00201000
-1e0f000c0600201000160b00281400160b00180c00201000281400180c00160b00160b00
-140a00160b00140a00140a00140a001e0f00060300160b001e0f00160b00160b00160b00
-160b00160b002814001e0f001e0f00140a00040200040200180c001e0f00160b00281400
-180c00180c00180c00160b003a1d002814000e0700160b00201000201000180c00261300
-2814000c06001e0f00160b00180c00140a00160b00160b002010000e0700180c00060300
-140a000e07000e07002010002e1700040200020100060300180c00160b00160b00160b00
-2814002e17000c0600160b001e0f00140a00180c00160b00201000201000261300201000
-0e07002010000c06003018002010000e0700140a00180c00180c00160b001e0f00281400
-160b00160b000e0700060300160b00381c00160b00281400140a00201000160b001e0f00
-180c002e1700261300180c002010002e17000603001e0f002814000603000e0700140a00
-140a00261300201000201000160b00281400160b002613001e0f00160b00160b00180c00
-180c00160b001e0f00281400160b002e17002010001e0f00160b00261300281400180c00
-180c000e07000e07000e0700140a001e0f00180c00160b00160b00140a00160b000e0700
-201000160b00180c001e0f00180c002613000e0700281400180c00160b00160b00160b00
-2e1700201000201000180c00140a001e0f002010001e0f00160b001e0f00301800060300
-0e0700160b000e07001e0f002010000e0700160b00160b00160b00040200ff9932180c00
-160b00180c002814002010003219002814003018002814001e0f002613000e0700ff9e3c
-140a00160b001e0f00180c002010002010000e0700201000281400140a00140a00160b00
-180c00180c00281400160b002613001e0f001e0f00201000180c00160b00160b000e0700
-1e0f001e0f00201000160b00160b00140a00261300180c00201000040200160b00301800
-ff9b36ffa142180c00180c000e0700160b000c0600ffa54affa142160b00180c00321900
-160b00201000160b002010000e07002613002010000e07000e0700281400180c00201000
-261300020100281400160b00140a000e07001e0f000e0700140a00160b000e07000c0600
-160b000e07000e07000e07000603000e0700140a00160b002814001e0f001e0f00060300
-160b00160b00160b000603000e0700201000060300160b00160b00160b000c06000c0600
-301800201000160b000c06000e0700261300140a000e07001e0f000e07002814000e0700
-160b00160b00160b00261300301800160b002814000e07001e0f00160b00201000180c00
-0c0600140a002010002010002010001e0f00160b000e0700180c000e07000e07001e0f00
-0e0700261300261300160b00261300140a00201000201000201000060300160b001e0f00
-160b000c06002010000e0700201000281400160b00261300160b001e0f00201000160b00
-060300060300160b00180c000c06000c06000201000e07001e0f00281400201000160b00
-160b00180c001e0f00201000140a000e07001e0f00140a00
-0e0700160b00381c00ff94280c0600140a00160b00160b002e1700301800381c00281400
-2814002814002e1700201000261300301800180c002e17000c0600281400ffa040160b00
-0e07002010002814000e0700020100140a002010002814000e07000e0700180c000e0700
-201000140a001e0f002814002e17000c0600160b002010002613000e07001e0f002e1700
-160b00140a00140a00381c00060300160b00140a00281400180c00180c000c0600201000
-140a001e0f00160b002e17001e0f00201000201000201000140a001e0f001e0f000c0600
-2010001e0f00040200140a000603002613003018002010000603000e07000c0600140a00
-160b00160b00140a000c06000e0700201000261300180c00180c00160b002010000e0700
-2814002814002010002e17000e07000e0700180c00160b00180c00201000201000160b00
-201000180c00180c00140a00201000180c001e0f000e07000e07002010001e0f00160b00
-1e0f000e07002010000e0700160b00180c00180c00160b00180c00160b00261300201000
-060300201000180c00301800180c000e07000e07002e17001e0f00180c00160b000e0700
-2010001e0f000e0700140a000e07001e0f00140a00160b000e0700201000160b00201000
-0c0600160b001e0f000e07000e0700180c002e1700140a00281400201000140a00180c00
-140a00201000180c00180c00160b00140a00201000160b002010000e07001e0f00160b00
-201000180c00201000160b00160b00160b00140a00160b000e07000c0600160b00160b00
-201000180c00180c00160b00201000060300281400060300160b00160b001e0f00140a00
-2010001e0f000e07002010002010002010000e07000e07000603001e0f00201000060300
-261300060300201000160b00201000140a002e1700201000140a00180c00160b00261300
-180c00160b000e07000c0600140a00201000261300160b002010001e0f00140a000e0700
-160b00201000180c001e0f00140a00160b001e0f00201000201000201000201000160b00
-140a002e17001e0f00180c000e07000e07002613000e0700140a000603002814001e0f00
-201000160b001e0f000c0600140a00060300140a001e0f00180c00160b000c0600281400
-201000281400201000180c001e0f000e07001e0f00201000160b001e0f000e07000c0600
-140a00140a000e07001e0f00180c00180c000c0600180c002010002010000e0700201000
-160b00261300160b000e07000e0700201000040200160b000c06002010000e0700281400
-160b00140a00180c002010000e0700201000201000281400201000180c00ffa54a160b00
-160b00160b002814002010003018003018001e0f001e0f00201000261300160b00ffab56
-140a00160b000e0700261300160b00160b00180c00160b00201000180c00160b000e0700
-180c00140a002010000603000c0600140a00140a00160b00281400160b000c0600201000
-140a00180c002010002010001e0f00160b00140a000603000e0700140a00180c00ff9932
-0e0700160b00160b001e0f002613002010000603002010000e0700ff9e3c201000020100
-160b00160b002010000e0700160b00160b00201000160b001e0f00281400301800201000
-2010002814000c0600160b00180c00201000160b00140a000e0700160b00160b001e0f00
-180c00020100180c00140a00040200180c002e17001e0f000e0700160b00160b00180c00
-0e0700180c00201000160b00160b00180c002010001e0f00160b00201000140a00402000
-140a00281400160b00201000160b00180c000402002010001e0f00180c00160b00180c00
-060300160b000c06000e0700140a00140a00160b002e1700160b00201000140a002e1700
-2010002010000e07001e0f000e0700180c001e0f00281400160b000e07001e0f001e0f00
-160b00201000301800160b001e0f000e0700261300281400160b00140a002010000e0700
-160b00180c00160b00140a00060300160b000e07000e0700160b000e0700201000201000
-201000261300261300160b00160b00180c000603001e0f00160b00201000281400261300
-0603000e0700201000321900160b003018002010000e0700
-1e0f000e0700180c00ff9d3a160b00160b003a1d002010001e0f00381c003a1d00422100
-4221004a2500442200301800281400160b002613002e17002010000c0600ffa54a201000
-2e1700281400160b00160b00160b001e0f000c0600180c00180c00180c00140a001e0f00
-281400201000160b00201000160b002010000e0700180c002e17002814000e0700201000
-0e0700140a00180c00160b001e0f002010000e0700160b001e0f000603003018000c0600
-201000140a00160b00060300160b00201000201000140a002010000e0700040200261300
-160b000e0700160b00160b000e07000e0700140a000c06001e0f002613000c0600180c00
-060300160b000e0700201000160b00180c00261300180c002010001e0f00160b00180c00
-0e0700201000180c00180c00201000140a00281400180c00140a00160b00180c00201000
-281400160b000e0700160b000e0700180c00140a00180c00201000180c00140a00201000
-180c00160b00060300140a000c06000e0700201000160b001e0f00180c00140a00261300
-2814002e1700160b00261300140a000c0600160b001e0f000e0700160b00140a001e0f00
-281400160b00201000160b00060300160b002814001e0f00160b00160b00140a001e0f00
-2010001e0f00160b000c06003018001e0f000e0700180c002010002010001e0f000e0700
-140a002010002814000e07002613000c0600261300201000160b00060300140a00180c00
-2010000e0700180c001e0f00040200040200060300160b00140a00160b00140a00201000
-201000160b00160b00060300201000160b002814002010001e0f000e07000e07000e0700
-060300201000160b002010000e07000e07000e07000c0600281400180c00140a00201000
-0e07002814002010000c06001e0f00140a000c06002010000e0700140a00140a00140a00
-1e0f000603002814001e0f002613001e0f002e17002e1700160b000e07000e0700140a00
-201000160b00160b000e0700180c000e0700160b00160b000e0700040200060300160b00
-2010000c06002613000e0700160b00201000160b002010001e0f001e0f00281400201000
-2010000c0600140a00180c000e0700140a00160b00160b00180c00281400201000060300
-281400201000160b001e0f001e0f00180c00140a00201000160b00201000160b00160b00
-140a00140a00140a000402000e0700160b001e0f00160b000c0600281400180c00201000
-201000160b001e0f000c0600201000140a00201000140a00160b00140a00180c000e0700
-2e17001e0f00180c00180c00020100160b000c06000e07001e0f00060300ffa64c1e0f00
-201000180c002814003018002814001e0f002e1700301800160b00201000281400ffa244
-2814000e0700160b00160b00201000201000160b003018002613002010000c06000e0700
-2010000603001e0f001e0f002e17000e0700281400201000140a00160b00201000140a00
-2010000e0700201000160b000e07000e0700140a002010002010001e0f00ffa040180c00
-2e1700160b00140a00261300160b00060300201000140a00140a00160b00ffa244261300
-0402001e0f00201000160b001e0f00140a00160b00261300180c00060300160b00160b00
-1e0f002613000c0600060300160b00201000020100180c001e0f000e0700180c00201000
-180c000e07001e0f00180c00160b00281400060300201000281400140a00160b00281400
-180c00160b00160b00160b000c06002010000e0700201000160b001e0f002e1700060300
-160b00060300140a00160b002010000e0700140a00261300060300160b00160b00160b00
-180c00060300060300140a002010002010000e0700160b00160b001e0f00140a00160b00
-180c00201000140a001e0f002613000e0700180c002010001e0f00201000140a00201000
-1e0f00160b00060300201000261300180c000e0700201000180c00160b00160b00180c00
-020100201000140a00160b00160b000e0700140a00140a002010001e0f00140a00402000
-301800160b00180c00160b000e07000c0600060300140a000c06000e0700261300180c00
-0e0700201000201000140a001e0f001e0f00180c00180c00
-201000160b00ffa040160b00261300160b00180c002010001e0f002814004a2500522900
-542a00542a00542a004020003a1d002e17003018002613000e07000e07001e0f00ff9e3c
-0c0600281400261300160b000e07002010000e0700180c002e1700040200160b00261300
-160b00160b00060300180c001e0f000e07001e0f00160b000e0700160b00160b001e0f00
-160b002814002010001e0f00301800201000201000201000201000261300160b00160b00
-2010001e0f00160b00160b002e1700140a001e0f00160b002e17000e0700160b00140a00
-160b001e0f00201000261300160b00160b002e1700201000160b00160b001e0f001e0f00
-0e0700180c001e0f00180c00160b002814002010000603001e0f000e0700160b000e0700
-2010000e0700160b001e0f00201000180c00160b00281400160b00160b00201000160b00
-160b000e0700160b001e0f00201000160b00180c00140a002814001e0f00160b00261300
-0e0700140a00160b00060300160b00140a000e07000e0700140a000e07002814002e1700
-060300140a00160b00140a00201000140a00160b000c0600201000140a00201000160b00
-180c00180c00180c002010002010001e0f001e0f00160b00201000160b00140a000c0600
-0c0600281400140a002814001e0f001e0f002613000e07002010002613000e0700201000
-060300261300180c00140a000e07000c0600201000160b00160b00180c00201000201000
-140a002010001e0f001e0f00140a00201000160b00180c00180c000e0700160b000e0700
-140a000e07002613001e0f002010001e0f002010000201000c0600160b00160b00201000
-0e0700201000140a00180c002e17002e1700180c000e0700160b001e0f000e0700160b00
-1e0f000e07000e0700201000281400180c00180c00160b00160b00140a00140a001e0f00
-0e07000c0600180c00140a00060300160b00140a00160b001e0f001e0f00140a00020100
-0603001e0f00201000140a00160b00140a00040200201000261300180c002814000e0700
-180c002814001e0f00201000160b00160b00160b002e17000e07000c06002010000c0600
-2010000e0700180c000e0700160b002010000e07002010000e07000e0700140a00160b00
-180c00201000140a000e0700180c002010000e07002613000e0700140a002010000e0700
-261300201000160b00020100140a00180c001e0f00201000160b000402002814001e0f00
-180c00160b00180c00060300180c000e0700160b00160b000e07000c0600160b00201000
-201000201000160b00060300281400160b00140a000e0700140a000e0700160b00ffa54a
-140a00160b000c0600261300301800201000140a001e0f000c06000e07000e0700ff9e3c
-1e0f002613000c0600261300281400201000160b00160b002010002010000e0700180c00
-140a00180c00160b00160b00180c000e07002814000c06000e0700281400180c000e0700
-160b00180c001e0f00261300201000160b002010000e0700321900040200ffa952160b00
-140a002613002814002010002e17000e0700301800281400160b001e0f00160b00ffa952
-201000281400281400060300160b00140a001e0f002010002613002e17002010000e0700
-160b00160b00261300160b002814000e0700140a00201000180c00160b00160b00140a00
-0e0700160b00140a00160b00160b00160b000e07001e0f00160b00180c00160b001e0f00
-0e07002010000c06000c0600160b00140a002010000c0600160b002010000e0700201000
-160b00180c00180c00060300020100160b000e0700140a000e07000e07000e0700160b00
-0e07002613002e1700160b00201000160b00160b000e07000603001e0f000e07000e0700
-140a00180c00160b00180c00020100160b00261300261300201000180c00140a00160b00
-020100160b00160b001e0f00180c00140a00160b000c06000e07001e0f00140a00160b00
-0603000c0600281400160b00180c002010000e07000e07000c0600201000060300160b00
-0e0700201000281400140a000e0700180c002814000603000e0700160b000c0600140a00
-0e0700160b000e0700160b00140a002613000e0700180c00
-160b000e0700ff9932180c000c06003018003018002814002814004a25005229006c3600
-6633006e37005a2d004c2600402000301800281400160b001e0f00261300261300ffa040
-160b001e0f000e07000e0700160b000e07001e0f00160b002010000c0600160b000e0700
-160b00160b00140a000e0700180c000e0700060300160b002010001e0f00201000201000
-160b00160b00261300201000201000281400160b000c06000e07001e0f000e0700261300
-140a000e0700201000201000201000160b000e0700180c00201000160b00201000160b00
-2010000e0700201000060300160b00201000060300160b002613000e0700140a00140a00
-0e0700201000160b000c06002814001e0f00160b00140a00180c001e0f001e0f00201000
-160b000c0600160b00180c000c0600140a00201000201000140a000e0700060300201000
-180c00140a001e0f00140a00160b00201000261300201000060300180c00180c00281400
-2010000e0700060300160b00281400180c00160b00160b001e0f000603001e0f00160b00
-160b00201000201000160b00160b00180c004221000e0700201000261300261300160b00
-2814000603002e17002010000c0600160b00160b00160b00160b00160b00301800201000
-1e0f000e0700160b000603001e0f00201000321900281400160b00160b00160b00281400
-160b002613000e0700201000201000060300160b00261300201000140a00261300040200
-0e0700160b000e0700160b00201000261300140a001e0f00160b00301800201000281400
-140a001e0f00180c000c0600281400281400201000201000180c00160b00160b00140a00
-160b000e0700201000160b001e0f00180c00180c00281400281400060300201000060300
-160b00201000140a000e0700160b00160b00201000140a000e07002e1700020100180c00
-0e0700301800140a000e0700180c00140a001e0f00160b00140a00060300180c00160b00
-0e0700160b000603000e07000402001e0f00140a00180c002010002010002010000e0700
-2010002010002814003018000c0600160b000c0600180c001e0f000e0700160b00160b00
-180c000c0600140a00140a00281400160b00180c002814002814000e0700140a000e0700
-2e1700060300201000160b00160b00160b00060300180c00160b00201000060300020100
-040200060300140a00160b00281400160b00160b00140a000e0700160b00201000261300
-180c00160b002010000603001e0f00160b00201000140a000e0700020100180c00160b00
-1e0f00180c00160b000c06001e0f000402000603000e0700281400140a00140a00ff9932
-0c0600060300140a00160b00180c00281400261300281400180c00160b00ff9932261300
-160b002010002010002010002010000e0700140a002613001e0f00140a000e0700261300
-1e0f00140a00201000180c00281400140a002613000e0700140a000e07001e0f00160b00
-180c002814002010002010000e0700140a00160b00160b00301800ff9b36201000201000
-1e0f001e0f00281400261300201000281400301800140a001e0f00201000201000ffa244
-0402001e0f000e07000e07000c0600140a00201000160b00040200201000201000261300
-261300140a00201000160b002010002010001e0f00180c00160b00140a00160b000e0700
-201000160b001e0f00160b00201000160b00160b00160b000c06000e0700201000180c00
-180c00160b000e0700140a00201000180c00ff9d3aff9c38140a000e0700ffa448201000
-1e0f00140a00261300160b00160b00160b002613001e0f00160b00140a00160b00160b00
-140a00160b00160b000e07002010000e0700180c00180c002010002613000e07001e0f00
-2814000c0600160b00140a00201000281400060300140a00201000160b00160b00201000
-281400040200281400160b00160b00060300060300160b00140a00160b00201000180c00
-1e0f001e0f00140a00140a000e0700261300160b000e0700201000160b00160b00160b00
-0e0700201000201000201000281400201000160b00160b00160b00160b00160b00160b00
-4020001e0f002814000c0600261300201000281400060300
-1e0f001e0f00ff9d3a160b000e0700160b002010002814003219004a2500422100643200
-783c007e3f005c2e005c2e003a1d002814002010002e1700201000160b00180c00ff9e3c
-180c002010001e0f00180c00160b00160b00160b00281400261300180c00160b00140a00
-160b000c0600180c00160b000e07001e0f00180c00261300301800160b000e07000c0600
-2e1700140a00180c000c06002e17001e0f00281400160b002613001e0f000e0700160b00
-2814000e0700160b002613000e0700180c00180c00201000140a00160b00160b00140a00
-160b00140a00160b00140a00160b00140a00201000140a001e0f00060300160b001e0f00
-140a000e07000e07001e0f00160b001e0f00140a00160b001e0f002010000c06000c0600
-0c0600160b00160b002613002613000e07001e0f00160b002814002814000e0700160b00
-0e0700180c002e1700180c000c0600160b002010000e07000c0600160b00160b002e1700
-160b00160b00140a00060300160b00160b00281400160b002010001e0f00201000060300
-2e17000c06000e0700180c00160b00201000180c000e0700160b000e0700281400261300
-201000281400140a00140a00160b000c06000603000603001e0f00201000160b000e0700
-160b00201000201000160b00180c00160b00180c00422100301800281400140a00160b00
-0e07001e0f00180c00180c00160b00180c002814000402002814002e17001e0f00201000
-1e0f000e0700160b001e0f002010000e0700060300140a000e07002613000e0700160b00
-180c00160b001e0f00180c002e1700201000160b000e07002613001e0f00140a000c0600
-2e1700261300160b00140a00180c00140a00140a00180c00140a002010000e0700321900
-180c00180c00201000140a001e0f001e0f00201000201000140a00140a000c06001e0f00
-0c06000603000402000e0700160b00160b000e0700201000140a00140a00140a00201000
-0e0700201000201000140a00160b00180c00140a00160b000e07000e0700180c00201000
-160b001e0f001e0f002814002814001e0f001e0f00180c002e1700201000180c00140a00
-0e0700180c00060300160b000e07002613001e0f000e0700201000160b00160b00160b00
-0c06001e0f002010000e0700140a00160b00160b00160b00160b001e0f00160b000e0700
-2010002613001e0f00180c000603000e0700160b000e07001e0f00140a000e0700160b00
-180c001e0f000402000e0700160b000e07000201000c0600160b00160b00160b00201000
-0e0700201000160b00160b00140a000c0600160b001e0f00201000180c00160b000e0700
-ffa244160b001e0f002010003018002010002010002613001e0f00160b00ffa448160b00
-180c00281400201000140a000e07000e0700060300201000261300201000160b00180c00
-0e07002010000402002010002010000e07001e0f000e0700160b000e07001e0f00160b00
-2010001e0f00281400201000160b00060300261300281400160b00ffa040160b000c0600
-1e0f001e0f00160b00201000301800180c003018002814000c06001e0f00180c00261300
-ffa244160b000e0700180c00160b000402002010001e0f00201000160b00201000180c00
-2010000e0700180c00201000140a000e0700180c00160b000c06000e0700180c00301800
-0e07002613001e0f00281400201000060300160b001e0f00140a00180c00180c00160b00
-180c00020100201000180c00201000ff9c38060300160b000e0700180c00160b00ff9b36
-261300ffaa542010001e0f002814000e07000402001e0f00180c00180c002010000c0600
-2010002814000e0700160b00160b00140a00261300180c000e0700060300180c00281400
-160b000c06002010001e0f00180c00180c00160b00160b000e0700160b000e07001e0f00
-160b00180c00160b000c0600180c00261300281400160b000e0700140a002010000c0600
-0c0600261300160b00140a002613001e0f00281400140a000c06000e07001e0f000e0700
-201000180c00160b002010002613001e0f000e0700160b00140a002613002613001e0f00
-0e07002010001e0f00020100180c00020100160b00281400
-180c00261300ffa4481e0f00201000160b000e07002613002814003018003a1d005c2e00
-6c36006e37005c2e004a25002814002e17002814002814002e17001e0f00201000ff9e3c
-160b000e0700160b00140a00040200281400201000261300160b000c06001e0f00060300
-160b002613002010000e07002613000603000e0700060300301800160b00261300201000
-0201000c06000e0700201000180c001e0f000603000e07002010000e07001e0f00180c00
-160b00201000160b001e0f000e0700160b00201000160b002010002613002010000e0700
-0e07000c06001e0f000c0600160b00180c00180c002613001e0f002613002e1700160b00
-321900180c00140a000e0700160b001e0f002010001e0f00160b00040200160b00301800
-3a1d00140a00180c00201000180c000e0700160b000e0700281400281400281400201000
-180c00180c000c0600060300201000160b00160b002613003a1d00160b00180c00160b00
-160b00201000140a00060300140a002010000e07002613000e0700281400201000040200
-2010002814001e0f002814001e0f00160b000c0600201000140a00160b000e0700201000
-201000180c003018001e0f00180c00160b00160b002814002010000c0600140a00261300
-2010000e07002814002814000e0700261300160b00140a00201000140a00201000160b00
-140a002010000e07002010000c06003018001e0f00201000160b00261300281400281400
-261300201000160b00281400140a00180c000e07002613002010000e0700160b00060300
-261300201000201000160b00160b000e0700160b00180c000e0700140a000e07000c0600
-201000160b00180c001e0f00261300160b00160b00201000201000140a001e0f000e0700
-180c00180c000e07000c0600060300281400060300201000160b000c0600140a00140a00
-0c06000e07000c06000c0600140a00180c002613002e1700160b00140a00160b001e0f00
-0e0700140a00140a000e07000e07001e0f00180c00180c00140a000e0700180c00060300
-0e07000e0700160b000e0700281400140a00160b002613003219000e0700160b00160b00
-0e0700060300160b00201000140a00140a00160b00261300140a002010002010001e0f00
-0c0600201000180c00160b00160b002010000c06000e0700140a00160b00301800140a00
-261300140a000e0700160b00160b00140a00160b00160b002010000201000e0700160b00
-1e0f00160b001e0f00201000180c000e07002010002010000e0700020100140a000c0600
-1e0f001e0f00201000140a000e0700201000140a00140a00180c00160b000e0700201000
-ff9932ffa040060300201000140a00180c00140a000c0600140a00ffa040201000140a00
-060300281400140a001e0f002010001e0f000e0700201000160b000e0700160b00140a00
-1e0f000c06001e0f00160b00180c000e07000e0700060300261300160b001e0f00160b00
-0402000e0700201000180c00261300160b00160b00140a000e0700ff9932180c001e0f00
-201000160b00281400281400321900281400281400261300201000140a001e0f00060300
-ff9b360c0600201000140a000e07002010000c06000e0700160b000e07002010000e0700
-040200180c00060300160b00180c00201000160b000e0700020100160b00140a00020100
-0e0700201000160b000e07000e0700160b00160b00281400140a00020100160b00201000
-060300201000ffa0400c06000e0700160b000e07000e0700160b00060300180c00160b00
-0e07000e0700ff98302613000603002613000c0600281400160b00140a00180c00160b00
-201000160b00160b00201000160b00160b000e07001e0f00140a00160b002010001e0f00
-140a002010000e07000e0700160b00261300180c00201000261300281400180c00160b00
-160b00201000160b00180c00140a00160b00180c00160b001e0f00180c002e1700160b00
-0e0700060300140a000e0700201000040200160b000e0700140a00261300281400201000
-140a00180c001e0f001e0f00140a000e07000e0700180c000c0600180c000e07001e0f00
-160b00261300201000160b00140a00160b00140a000e0700
-2010000c0600ff9d3a1e0f000603001e0f00160b002010004221004a25003018005c2e00
-542a004c26007038004221002814001e0f00180c001e0f002613000e0700160b00ff9b36
-1e0f000c06000e0700140a00060300180c000e07001e0f00180c000e07000c0600140a00
-160b00160b00180c00140a002010001e0f000e0700261300160b00140a00160b00140a00
-0c0600180c00140a00160b00261300261300160b00180c000603000e0700160b000e0700
-140a00160b000e0700060300140a00201000180c00180c00261300140a001e0f00201000
-160b00140a001e0f00020100180c00160b00180c00140a00281400140a00201000201000
-0e07002814003018000402002010001e0f00160b000c06001e0f000e07000e07000c0600
-1e0f00060300140a00160b00140a00160b00201000160b00160b00180c00160b00140a00
-1e0f000e07000402002010002613000e07001e0f00180c00160b00140a000e0700201000
-160b00201000140a00201000180c000e07000e07000e07000e0700180c000e0700160b00
-0603002010000603001e0f00140a001e0f00261300201000160b00160b002e1700201000
-160b002010002010001e0f00281400160b00160b00180c00140a00160b002613001e0f00
-2010001e0f00180c00160b002010002e1700140a00160b00140a00060300160b000e0700
-160b00160b001e0f00201000160b003018000c06000e0700140a00160b00261300201000
-160b001e0f000e0700180c00301800160b00261300140a000e0700160b00180c001e0f00
-160b000e07002e17000603000c0600180c00140a00160b00140a001e0f000e0700180c00
-160b00281400160b001e0f00261300201000261300180c00160b00040200160b00140a00
-1e0f000c06000e07002613002814000e0700160b002010001e0f00180c000e0700321900
-2010002814000c0600201000140a00140a00140a000e0700201000160b00180c001e0f00
-0e07000e07001e0f00160b00261300140a000e0700180c00381c000e0700160b00201000
-261300281400180c002814000c0600261300160b00160b000e0700160b00180c00261300
-1e0f000c0600201000261300261300160b00180c00281400201000160b00160b000c0600
-2814001e0f00160b00201000281400140a00180c002e1700160b00180c00201000201000
-201000180c00201000180c00140a00201000180c00160b000e0700160b000e0700261300
-160b00060300160b00140a000e0700160b00160b001e0f000603002010002814000c0600
-140a002010002613000c0600140a001e0f000e0700201000160b001e0f00281400180c00
-201000281400ffa040ff9932160b00301800ff9932ff9c38ff9b362010002010001e0f00
-140a00160b000e0700160b00201000201000180c00201000160b00140a00060300201000
-160b00160b00180c00201000140a00281400140a00160b00140a000e0700140a00180c00
-160b00140a00160b001e0f000c06000e0700160b000c0600160b00ff9d3a0e0700160b00
-1e0f00201000180c002814003219003219002010002e1700180c00140a000e0700160b00
-ff9b360e07002010002010000c06002010000e07000e07000e0700180c00180c000e0700
-140a00060300060300160b00020100301800140a00160b00160b002010000e07000c0600
-160b00261300060300160b000c0600060300060300160b000c0600160b00180c00160b00
-140a00ff9d3a201000060300140a00160b00201000261300160b00060300160b00140a00
-160b00160b001e0f00160b00140a00140a00180c002010000e07001e0f001e0f00160b00
-040200140a000e07000e07000e07002613001e0f00160b00180c00140a002010002e1700
-040200160b001e0f000c0600160b000e0700140a002613001e0f00160b00160b00160b00
-0e0700180c00201000160b000e0700180c000e0700140a00180c00160b000e0700140a00
-2010002613001e0f00180c00160b002010000e07000e07000e0700140a00160b00160b00
-0e0700140a00180c00180c00201000140a00140a00140a00301800160b002010000c0600
-020100160b00180c000e07000e0700160b00160b00180c00
-0402000c0600ffa54a160b001e0f00180c002814002e17002e17002613003a1d00381c00
-4221004221003a1d002814003018002814003018000603001e0f000c0600ffa142160b00
-1e0f002613000e0700201000160b00060300180c00180c00140a000e07000e0700201000
-140a00160b00140a00160b00160b000e0700180c000e0700160b00261300201000140a00
-0e07001e0f00160b002613000e0700140a000e0700180c000c0600160b00160b00201000
-0c0600160b000e0700160b00261300160b000e0700160b000e0700160b00180c000e0700
-2010002e17002e1700180c00180c000e07000c06000402001e0f000e07002613001e0f00
-2814000e0700160b00160b00442200201000160b002010002010000e0700201000160b00
-140a00160b00201000160b00180c002814000c06002010002010003018000e0700060300
-180c002613002010000e0700261300160b000603001e0f00140a000e0700180c00140a00
-0e0700160b00261300281400201000201000160b002613002814000e0700180c00201000
-0e0700201000140a002010000603002010000c0600060300160b00160b00180c00180c00
-160b00160b000e0700261300160b00140a00160b00140a00160b001e0f000e0700140a00
-201000160b001e0f00160b00160b00261300281400140a00160b00180c00201000180c00
-180c00201000180c00060300180c00140a001e0f002010001e0f002613000e0700180c00
-160b00281400160b00160b00140a00180c002e17000c0600201000261300160b00160b00
-1e0f001e0f00140a002010001e0f00060300180c00261300160b00180c00201000201000
-261300180c002814002814001e0f00140a000e07000e07000603002e17001e0f00160b00
-0e0700281400140a001e0f00140a00160b000e0700201000180c001e0f00160b00180c00
-2613001e0f000e0700160b00060300140a002613000e07000e0700201000140a00060300
-140a000e0700160b00160b00402000160b001e0f001e0f00281400381c00160b001e0f00
-2e1700201000180c00180c001e0f00180c00180c00020100140a00281400160b00180c00
-1e0f00160b00201000261300261300281400160b00160b00201000201000281400180c00
-0e0700160b00140a00140a00201000261300261300160b00160b00140a000e07000e0700
-140a00160b00201000201000160b001e0f000603001e0f000c0600201000201000160b00
-160b00201000160b00201000201000281400201000140a00201000060300201000180c00
-301800160b00160b00160b00140a00160b00201000261300442200201000201000180c00
-160b00160b000c0600140a00ff9d3aff9b36140a002010000e0700160b002814001e0f00
-1e0f000603000e0700180c000c06000e0700160b00301800201000140a000e07000e0700
-180c00281400281400160b002613000e0700180c00160b00160b00180c000e0700201000
-1e0f00160b002010000c0600160b00201000160b00140a000c0600160b00ffa040180c00
-0c06000c0600201000201000261300201000321900201000180c001e0f00160b00201000
-ffa64c140a00180c001e0f001e0f00160b000e0700140a002613000c0600160b00160b00
-160b000603000402000e07000c06000e07000e07000e0700060300140a000201001e0f00
-140a00140a00140a00140a00160b00140a00060300140a000c06000e07000e0700160b00
-060300160b002613000c06000603001e0f00201000180c00160b00201000160b000e0700
-160b00180c00281400180c00180c00160b00160b002613000e0700140a00201000180c00
-160b00140a000e0700281400160b00201000261300140a000e07001e0f00261300140a00
-140a00140a000c06000c06000c06002814001e0f00160b00140a00160b00160b00381c00
-261300140a00160b00261300180c000e07000e0700160b00281400140a00180c001e0f00
-3018000201002814002010000e0700201000301800160b00180c000e0700201000201000
-040200160b00160b00140a00180c00180c00160b00201000160b000e0700140a000e0700
-2010003219001e0f00201000281400160b00180c000e0700
-0e07000e0700160b00ffa54a160b00160b00281400281400261300180c001e0f00402000
-3a1d00381c003a1d00281400281400281400201000160b001e0f00281400ffa244160b00
-201000201000180c00180c000c0600160b00140a00180c00281400201000180c001e0f00
-0e0700180c00140a001e0f003018000e07000e07002010000e0700160b00201000201000
-201000160b000e0700160b000e07002010001e0f000e07002613000e0700160b000e0700
-140a000e0700160b000c0600160b00301800160b000e0700160b001e0f000e0700201000
-140a00160b00060300201000201000201000140a00140a00140a001e0f00180c00180c00
-2010001e0f002613000e0700140a00160b00160b00160b00140a00201000160b00060300
-1e0f00160b001e0f00140a00160b00281400180c001e0f00261300180c000e07000e0700
-0e0700020100180c000e07000c06001e0f00140a00140a00201000160b000e0700140a00
-0e07000e0700160b00180c002010002814001e0f000e0700140a001e0f000e07000e0700
-0e0700160b00160b00180c00160b000603001e0f00180c002010002e17001e0f00060300
-1e0f000e0700160b002613000e0700140a000e07002010000e0700201000160b00160b00
-160b000e0700321900201000140a001e0f00160b000c0600180c00160b002010000e0700
-2613000e07000e0700040200180c00160b000e0700180c00180c00180c000e0700201000
-201000180c000e07002613001e0f00160b00201000180c00160b002613000e0700301800
-180c00160b002010001e0f000e0700261300160b002010001e0f00160b000c06000e0700
-201000140a001e0f00180c000e07000e07001e0f00060300180c00140a00201000180c00
-160b00140a00201000180c00160b000e0700140a002010002010001e0f00060300060300
-281400160b000603001e0f00140a00160b00281400281400261300160b002010001e0f00
-160b000c0600060300160b00140a00160b00160b00201000060300020100160b00160b00
-201000281400160b00160b001e0f001e0f00140a00140a00201000180c00140a00140a00
-180c00201000201000160b002814002613000e0700281400160b00261300160b001e0f00
-2010000e0700201000160b000c0600180c00160b00180c00201000201000201000060300
-0e0700140a000c0600160b000e0700201000160b00160b00180c001e0f00040200201000
-160b00160b000e0700140a00160b002814000603002814000e07000c0600201000160b00
-2613002613000603002613002e1700180c000e07000c0600060300281400060300060300
-160b001e0f002814001e0f000e0700160b00281400180c000e07001e0f00160b00180c00
-1e0f002814002613000e0700140a00140a00140a001e0f000201000e0700281400060300
-281400281400261300281400180c002814002814000e07001e0f000e07000c0600160b00
-201000160b00160b000e0700160b00160b00201000140a001e0f000c0600ffa54a2e1700
-160b001e0f002613002010002e1700180c00261300160b00281400180c00160b000e0700
-ffa448160b001e0f00160b00301800140a00140a00261300180c00281400060300140a00
-0e0700160b000e0700160b000e0700180c000402002010000603001e0f00180c00060300
-180c002010000e0700160b000603002010000603002613000e07000e07000c0600ff9e3c
-1e0f00160b00ffa142ff9c38ffa952ffa142ff9c38ffa54a281400160b00160b00261300
-160b00160b000e0700180c00160b00ffa448020100160b00201000160b00140a001e0f00
-0e0700261300060300180c000e0700160b00140a00180c000603000e07001e0f00140a00
-180c000e07000e07000c06000e07000603000e07001e0f001e0f000e0700180c00281400
-2e1700301800160b004221000603002814002e1700281400040200301800180c000e0700
-160b000c0600160b00261300301800180c00160b000603000e07000e0700140a00180c00
-201000160b000e07000e0700261300201000201000180c00160b00261300160b00160b00
-060300180c001e0f00160b00201000201000201000261300
-201000160b00140a00ffa74e1e0f000e0700160b00281400160b00381c00261300201000
-3219003018002814001e0f001e0f00160b002613000e07000c06001e0f00ffa64c0e0700
-0c06000e0700160b00180c000e0700160b001e0f00160b000e07000402000c0600160b00
-160b00140a00180c002e1700201000160b00201000160b000e0700261300160b00140a00
-1e0f00160b002613001e0f002010002010002010000c06000e0700160b00201000160b00
-160b00160b001e0f001e0f00180c00140a002613002010002010002e1700201000281400
-2814000e0700020100160b00160b002814001e0f000e0700160b00140a000e0700060300
-0e07002010002010001e0f00140a00160b002e1700140a00160b00060300140a002e1700
-0c0600160b000e0700160b001e0f00140a00201000180c00180c00180c00140a003a1d00
-0e0700160b000e0700160b000e0700160b00140a00201000140a00201000160b00140a00
-0603002e1700281400140a002613002010002010000c06002613001e0f00281400201000
-1e0f00180c00201000180c00201000140a00160b000e0700160b00180c00160b00160b00
-0c06000e07000e0700140a00201000201000160b00140a000c06000e07002010000e0700
-160b00020100201000261300160b00060300201000261300180c00180c00040200201000
-2613000e07001e0f00140a002613002010001e0f00201000201000160b000e0700160b00
-0e0700321900180c00180c00060300140a002010000e07000c0600180c00160b00201000
-2613003018000e07002010002010002613000c06000e0700180c00160b001e0f001e0f00
-1e0f00201000140a002814000c06001e0f000c06002010000e0700261300261300281400
-1e0f001e0f00180c00160b00140a000e0700201000301800160b000e0700201000261300
-160b000e0700160b00281400140a001e0f00160b00160b00261300180c001e0f00261300
-160b00281400160b000603000c0600140a002010000603000c0600160b00301800160b00
-060300180c00140a002e1700160b00160b002010001e0f00160b00140a00281400201000
-201000201000261300060300201000060300201000060300160b001e0f00160b00180c00
-160b00140a00180c00160b00160b000c06000e0700201000160b00160b00180c001e0f00
-160b000e07000e07002010000e0700160b00160b00160b002814000e0700160b00201000
-160b00301800020100201000140a000e0700160b00281400180c00281400020100060300
-1e0f00281400160b00160b002613001e0f00160b000e0700160b000c06000e0700060300
-060300180c00140a000e0700160b00160b00140a000e07002613000e0700180c001e0f00
-160b00160b00160b00140a00301800201000261300160b00201000201000160b000c0600
-0e0700201000201000201000140a00140a001e0f000c0600261300201000140a00281400
-1e0f00160b00180c002010000c06000e07002010000c0600180c000c0600160b00ffa54a
-0c0600201000140a002010002e1700201000140a00180c001e0f00281400160b00ff9b36
-0c06001e0f000603000e0700160b00201000160b000e07000e0700160b00281400140a00
-0e07001e0f00160b00160b000603000e07002814000c0600160b00140a000c0600160b00
-1e0f00160b000c06000e0700160b00160b00ff9932ff9d3aff9e3cff9d3affa952ffa64c
-ff9d3affa2442613002010002010000c0600281400281400ffa64cffa448ff9b36ffa040
-ff9c382613003a1d00180c001e0f00060300160b001e0f00160b00201000160b000e0700
-0201000c06000e0700060300201000160b00201000261300060300160b00140a00160b00
-180c000e0700201000140a00160b00160b00281400160b000c06000e0700160b001e0f00
-0402000e0700180c00201000261300301800160b00160b000603000e07000c0600201000
-0e07000603000c06001e0f001e0f002010001e0f00160b00201000140a001e0f00160b00
-0e0700140a002613001e0f000603002010002010000e0700201000040200180c00281400
-140a00180c00180c000c0600201000160b00180c00301800
-140a000e0700180c00ffa142160b00160b002e17001e0f002010001e0f00281400180c00
-2010002814002e17002814002814002010002010001e0f00160b00ff9c381e0f00201000
-0e07002e17000402001e0f00261300160b001e0f002010000e07001e0f000e0700201000
-0c06001e0f001e0f00180c00180c001e0f00160b00160b00140a000e07001e0f00140a00
-0e07000e0700201000160b000c0600261300140a000e07000201002814000e07001e0f00
-261300140a00160b00140a00160b00160b00201000140a001e0f00060300160b00160b00
-281400261300060300180c000e0700180c00160b00281400140a00160b002e1700201000
-0c0600160b000c06001e0f00160b00160b00140a00160b00160b00140a00201000160b00
-060300180c000e07000e07002010001e0f001e0f001e0f00160b001e0f00261300281400
-1e0f00180c00160b00160b00140a00180c00140a00140a00160b001e0f00160b00160b00
-140a002010000c06000c06000e07000c06000c0600180c00201000060300201000160b00
-180c00160b00140a00201000160b002e17000c0600261300180c002e17002814003a1d00
-140a000e0700201000160b00281400140a00160b00160b002814002814001e0f00160b00
-0201000603000e0700160b00180c000e0700140a001e0f002613000c06000e0700201000
-160b000e07000e07000e07002613000c0600160b00160b00201000281400160b00160b00
-2613000e0700160b00160b000c0600180c001e0f00180c00201000180c00281400180c00
-281400180c00160b00180c00160b002010000e07000c06000e0700160b000603000e0700
-020100160b00160b00180c000c0600160b002010001e0f001e0f00180c001e0f00201000
-1e0f00201000261300160b00201000060300180c001e0f00180c00201000160b00201000
-261300201000201000180c00160b00201000140a00060300140a00140a001e0f00160b00
-1e0f00180c001e0f000e0700160b00281400140a00281400160b00140a000e0700140a00
-140a000e0700180c00201000281400160b00140a00180c00160b00180c001e0f00201000
-3018002010000e07000c06002814001e0f00160b00261300180c00160b00180c001e0f00
-201000140a00201000160b00201000160b002e1700160b002010001e0f001e0f001e0f00
-160b00281400160b00140a000e07002010002010000e07000e07002e1700140a000e0700
-0e07000e0700160b00201000160b000c06002613000e0700140a00160b00160b00140a00
-160b000603001e0f00160b00140a000402000e0700201000160b00140a00060300201000
-160b00180c00160b002010001e0f00140a00180c00140a00281400160b00180c00160b00
-1e0f00140a002613000603001e0f00281400180c001e0f00180c00281400160b00201000
-0c06002613001e0f000e0700160b00140a00020100140a00261300160b00160b002e1700
-0402001e0f000e0700281400160b00140a002e17002010001e0f00261300180c00ffa54a
-180c00160b00201000140a00180c001e0f00201000180c00301800261300180c00ffa142
-060300201000140a000e07001e0f00140a00140a00180c00060300140a00140a000e0700
-160b00160b000e07001e0f000e07000603000c0600180c00160b000c06002010001e0f00
-160b00160b00ff9e3cffa448ff9d3aff9d3a060300140a00201000160b00301800140a00
-180c00160b00140a002010000e0700180c001e0f00281400281400281400140a00160b00
-160b00ffa244ffa142201000140a00180c00140a00201000281400140a000c0600140a00
-2613000c06001e0f00180c00180c002010000e07002e17001e0f000c0600261300201000
-160b00160b00201000140a00180c00160b001e0f002814001e0f00160b00180c00180c00
-0e07000e07000402001e0f001e0f00261300160b00201000160b00261300140a000e0700
-201000201000160b00180c00160b002e1700160b001e0f00261300140a000e0700180c00
-160b00180c00040200180c002814002613000e07002613002010000603002010001e0f00
-020100140a00160b000e07000e07002e17001e0f00140a00
-160b00160b00160b000e0700ffa1422010000e07001e0f00281400180c00160b00281400
-261300140a002010002814001e0f000e0700201000160b00ffa244140a00201000060300
-140a00180c00160b001e0f000603001e0f001e0f002010000e0700160b000201000e0700
-0c06000e07002613000402002010000e0700160b00160b00201000140a00201000160b00
-201000060300160b00040200180c00140a001e0f000603000e0700160b002010001e0f00
-0e07000c06000e07002010000c06002010002010002814002613002010000e0700180c00
-281400201000160b002010000e0700160b000c0600261300180c00180c001e0f00201000
-261300180c00160b000e07001e0f000e0700180c00201000180c00140a00301800160b00
-160b001e0f002010000e07000c06002010002010000e07001e0f000e0700140a00201000
-160b00201000140a00281400160b00160b000e07001e0f00180c00180c00160b00140a00
-2010002010001e0f001e0f00180c001e0f00160b00180c001e0f002010000c0600140a00
-1e0f00160b00140a00160b00160b002814002613002814000e0700140a00180c001e0f00
-1e0f00140a00180c00060300160b00160b002010001e0f002e1700180c00201000140a00
-160b002814000e07002e1700160b00201000160b00160b000e07002010002010001e0f00
-180c000e0700160b00261300140a00180c00160b000603001e0f002814001e0f00201000
-140a00160b00180c00180c002e17002e1700201000140a00060300180c000e0700160b00
-201000281400140a00180c00140a001e0f00201000140a002e17000e07000e07000c0600
-160b001e0f001e0f002010000e0700281400201000180c00180c002010000e0700201000
-1e0f00201000180c002613002010000c0600160b00381c002814002814002613000e0700
-201000020100281400160b000e07001e0f00180c00201000301800180c000e0700140a00
-160b002814001e0f00160b00160b00160b00160b002613002010000e0700281400140a00
-1e0f00160b00201000160b00140a00201000201000160b00160b00180c00160b000e0700
-180c002613001e0f002613000e0700160b00160b001e0f00160b00160b001e0f00201000
-0e0700160b00160b00160b00160b00321900201000180c000e07002613003018000e0700
-160b00160b00201000201000201000140a000c06000e0700160b00180c00201000160b00
-160b000e0700160b00180c00201000180c00160b001e0f000c0600160b00060300160b00
-301800160b00140a000603000e07000603002e1700180c00180c00160b00261300281400
-0e0700201000160b002613001e0f001e0f00140a00201000160b00201000140a002e1700
-160b00301800140a002814000e0700140a00160b001e0f00160b00160b001e0f00201000
-160b00140a000e0700160b002010000e07002010001e0f000e07001e0f00201000140a00
-160b00140a00180c001e0f000c0600180c00180c000e07000603000e07001e0f00180c00
-201000ff9932180c00201000140a00261300301800201000140a00180c00ff9e3c160b00
-180c000e0700160b00160b000e0700180c002010002814002e1700180c000603000c0600
-0201000e0700020100160b00180c00201000160b000e07000e07000e0700ffa64cffa244
-ffa142ffb66c180c000e0700180c001e0f002010000e0700060300ff9c38160b00040200
-201000180c00201000201000281400442200381c003a1d00301800160b002e17001e0f00
-201000201000160b00ffa142160b00261300140a000c0600180c00160b00060300180c00
-0e07000603000e0700301800201000160b000c0600180c00201000160b00160b00060300
-281400160b002613002613000c0600201000160b00160b00160b000603000e0700160b00
-020100180c00140a00201000201000180c002814000e07001e0f002e17000e0700201000
-201000060300060300201000060300301800160b00201000160b00140a00281400180c00
-2010000603000e0700140a00160b00160b00140a00160b00160b00160b00060300160b00
-160b00140a002010001e0f00180c001e0f000e07000e0700
-2613000e07000e0700140a00160b00ff9e3c201000201000180c00180c002e1700201000
-3018003018002010002010001e0f002010002e1700ffa1422010002010002010001e0f00
-180c00140a00180c00180c00160b000c06001e0f00180c00160b00261300160b00180c00
-0c0600040200160b00140a001e0f00281400201000180c002010000603000c06001e0f00
-2010002814002010000e07000e0700140a00180c00261300301800201000140a00160b00
-160b00160b000e07001e0f00201000160b00060300160b00160b00160b00301800261300
-0c06002613000e07001e0f000603002010001e0f00201000140a001e0f00160b00201000
-160b00160b00201000180c00201000140a00160b00140a00140a00140a00281400140a00
-180c00140a000e07004422002814000e07002814001e0f00140a00321900180c001e0f00
-160b00140a00201000281400140a00160b001e0f00140a00140a00140a00281400281400
-0e07000e0700140a00201000160b00180c00180c00180c00160b00160b00160b000e0700
-2814000c0600180c00180c00180c001e0f002814000e0700160b00180c00060300201000
-180c00160b00201000060300160b00140a00160b00160b00160b001e0f00281400160b00
-2e1700281400160b00140a00140a000e07002814002e1700201000060300160b00140a00
-1e0f000c0600160b00160b00140a00281400180c00180c00261300201000201000201000
-160b00160b00281400180c00160b00281400140a00180c000e0700160b00201000140a00
-201000160b00180c00160b00201000180c000e07000e0700140a00060300180c00201000
-160b00180c00160b00201000261300160b00201000180c001e0f002010001e0f00201000
-2e17000e0700160b00201000060300140a00140a000e0700160b00160b002010000e0700
-0c06001e0f00281400180c000e07000e0700160b00180c00261300180c00180c00140a00
-180c00160b00140a00160b00261300281400261300160b000c0600180c00160b001e0f00
-281400060300140a00160b002010002010001e0f00301800201000160b001e0f000e0700
-2010000e07001e0f000e07001e0f00281400201000140a00180c002010000e07001e0f00
-2814000e07000e0700180c00201000201000160b00160b00160b001e0f00201000180c00
-1e0f00140a00160b002613002010000e0700140a001e0f00180c00140a00261300201000
-1e0f00160b00160b002010002010001e0f00160b00160b00140a000e07001e0f00060300
-2010000e07001e0f00140a00140a002010000e07000e0700140a001e0f000e0700060300
-180c001e0f00160b000e0700180c002010000e0700160b001e0f00140a00140a00160b00
-1e0f003a1d001e0f002814001e0f00060300180c00201000301800160b00140a00160b00
-160b00180c000c0600160b00140a00160b000201002010002613001e0f00201000140a00
-140a002010001e0f00140a000e0700140a00140a00160b000e07002613000c0600201000
-2010000e0700ffa448ff9e3c160b00140a002613000c0600ffa244ff9c38140a001e0f00
-301800140a002010002613001e0f000c0600140a000e0700160b00160b002010000c0600
-160b002e17002010000c0600020100060300201000ffa142ff952aff99320603001e0f00
-160b000e0700180c00261300201000301800261300321900ffa64c281400201000201000
-180c003018002010002613003018002e1700301800402000301800201000301800201000
-160b001e0f00281400261300ff9932201000ff9b36140a000603000e07000603000e0700
-160b001e0f00180c000e0700180c000e0700140a001e0f001e0f00180c00201000160b00
-180c00140a00201000160b00160b00140a00160b00180c00060300160b000c0600281400
-1e0f002010002814002814001e0f000e07002814001e0f002814000603001e0f00160b00
-160b001e0f000e0700201000140a00160b00160b002010000603000e07002010001e0f00
-140a00301800201000140a00201000180c00281400180c00180c00160b00020100201000
-201000180c00180c000e0700180c00160b00140a00281400
-160b003a1d00261300160b00180c00281400ffa952ff9e3c2814001e0f000e0700201000
-160b00140a000e07001e0f000e0700ffa64cffa54a0e07001e0f00180c00281400140a00
-0e0700160b00020100060300180c00160b00201000180c00060300180c00281400381c00
-201000060300180c00281400060300180c00140a00180c00160b00201000261300201000
-1e0f00201000180c000e0700160b000e0700140a00160b000e0700160b001e0f001e0f00
-0e0700160b002010000c06000e0700180c00160b000e0700180c00020100281400281400
-0e07002010001e0f00160b00160b00160b00160b002814000c0600201000180c00060300
-0e07001e0f00180c000c0600160b001e0f00160b00180c00201000281400201000160b00
-281400180c00140a00140a00201000140a00160b002010001e0f00180c002010000e0700
-2010000e07003a1d002814002010000c0600160b00160b001e0f00180c00160b00160b00
-140a00180c00060300180c000e07000e07000e0700160b00201000261300160b00160b00
-281400160b00160b00180c00160b00281400060300180c00160b00160b000c0600261300
-160b000603000c0600180c00261300160b00160b004221001e0f001e0f00201000160b00
-040200140a00060300160b001e0f001e0f00140a000e0700261300160b000e0700201000
-261300160b002010002814000e0700180c000e0700060300040200301800160b00180c00
-160b001e0f00201000201000160b000e07001e0f00060300160b002613000e07000e0700
-160b00160b00160b000e0700160b00201000160b00160b00160b00140a00180c00160b00
-1e0f00160b00140a00201000201000160b00060300261300140a00301800281400160b00
-0e0700301800160b002010001e0f00160b001e0f00261300180c00140a00261300160b00
-140a00180c00201000160b00160b003018000c0600140a000e07000e0700160b00201000
-1e0f000e07000e07000e0700261300160b00201000160b00180c001e0f00160b00060300
-180c002010001e0f00201000160b00180c002010000c0600160b00160b000e0700180c00
-0e07002010002814002e17002814001e0f00140a00160b00180c000e07003018000c0600
-1e0f00160b00281400140a001e0f002010000c06002010001e0f00281400160b000e0700
-0e0700201000180c002e1700160b000e0700180c002010001e0f002814000e0700261300
-1e0f001e0f00180c00180c00180c002010000c0600160b00180c00160b000e0700140a00
-1e0f00160b002e1700140a001e0f002010002613001e0f00261300201000160b00160b00
-180c001e0f00180c00140a00201000160b00160b000c0600160b00140a001e0f00261300
-140a00180c002010000c0600160b002010002613000e0700201000281400160b00261300
-160b00160b00160b00160b00160b00261300180c00180c00160b001e0f00180c00180c00
-180c000e07000c0600140a001e0f00201000140a00201000160b00140a00180c00160b00
-0e07002010000e07000e0700ff9b36ff9d3affa448ffa0400e0700160b00140a00060300
-0603000c0600140a00180c00180c000e0700180c00160b003018000e0700261300201000
-2e17002010000e0700261300ff9830ffa040ffa0402e1700201000060300201000281400
-140a000e0700140a00160b002814000e0700301800261300ffa952160b00281400040200
-4020002613000c06003a1d002613004422003a1d004020003a1d002e1700261300160b00
-180c002010003018001e0f00140a00ffa448160b00ffa0401e0f000e07002814001e0f00
-2613001e0f000e07001e0f00180c00180c001e0f000e0700301800160b001e0f001e0f00
-201000160b00160b002010000e07001e0f002010000c06000e0700160b00160b001e0f00
-180c000e0700180c00180c00201000201000261300140a00140a00180c00180c000e0700
-201000180c001e0f00261300160b00201000180c00140a00160b00160b001e0f000e0700
-160b002814000e0700140a00160b000c0600140a00140a002613001e0f002814000e0700
-1e0f00160b00160b00140a00201000201000201000160b00
-2010001e0f00060300402000301800201000281400261300ffa142ffa448ffab56ff9932
-ffa040ff9932ff9d3affa040ffa1420e0700180c00201000281400180c000e0700160b00
-0e0700180c00180c00180c000e0700140a000e0700160b00140a00301800160b00140a00
-0c0600261300301800060300281400261300281400160b00201000261300201000060300
-140a000402000201000c0600040200020100140a00160b000e07000e0700040200201000
-180c00201000160b00060300281400201000321900301800140a002613000c0600301800
-180c00160b002010002814000e0700261300160b00160b000c06002010002010000e0700
-261300060300160b00180c00160b000e0700201000140a00201000160b00160b00180c00
-2010001e0f002010002613001e0f00140a00180c002010000e07000e0700180c00160b00
-180c00140a00180c00060300160b00402000180c00140a003018001e0f00160b00201000
-160b00201000160b00060300180c00281400281400160b002010002010000603000c0600
-1e0f00201000060300160b00140a00160b00160b00160b001e0f00180c00201000140a00
-261300201000160b00201000201000160b00201000160b002814002613001e0f00160b00
-201000140a00201000160b00261300180c00160b00140a001e0f002010003018000e0700
-2e1700060300140a00160b000e0700160b00160b00160b00261300180c00160b002e1700
-060300160b00180c002010002e1700201000140a001e0f00160b00160b000e07000e0700
-0201000c0600281400201000160b000e0700160b000e07000e0700160b00160b00160b00
-201000160b00160b00160b00140a000603000e0700201000160b00261300160b00281400
-2814000e0700140a00180c00160b00140a00201000160b00160b000e0700160b00160b00
-2010002e17002010002e1700060300140a00160b00201000160b00201000180c00160b00
-0e07000c0600060300160b00201000160b001e0f00160b001e0f001e0f000603000e0700
-0e07002010004020002010000e0700180c000e07001e0f00261300281400160b000e0700
-2814002010002010002e17000e07000e0700180c00201000180c00060300180c00180c00
-160b001e0f002010002814001e0f00140a000201000e0700060300160b002010000e0700
-180c00180c00140a00160b00060300160b00180c000e07000e0700140a000c0600180c00
-160b00160b00140a001e0f00160b000e07000c06000c0600160b001e0f001e0f000c0600
-060300140a000e07002010002010001e0f000c0600180c00160b000603003018000e0700
-201000160b00160b00201000301800140a00160b00140a003018001e0f002010000e0700
-1e0f002613000e0700160b00140a00160b002010000e0700160b00160b00281400180c00
-1e0f001e0f000e07000e07001e0f00180c00180c00201000140a00201000060300160b00
-140a00140a00180c00180c00140a001e0f002613000e07000e0700160b001e0f00301800
-0c06000e07000e0700201000180c000e0700180c00180c002010000e0700201000180c00
-160b00180c001e0f000e0700160b00140a000e0700160b00140a000e0700140a00040200
-0e0700ff952affa448ffa0400e0700060300160b00160b002814002010002010000e0700
-1e0f002e1700160b00180c00160b002e1700201000160b002814001e0f00301800261300
-2010002010003018002010004221002814003a1d003a1d004020004020003a1d00281400
-2e1700281400281400201000201000ffa142261300160b000e0700281400180c00201000
-160b002814002010001e0f002010002613000603001e0f00180c00160b00160b00201000
-160b000c0600160b000e07002010000e07002010000c06000e07001e0f00201000160b00
-160b00180c00201000160b00261300140a00160b00140a00160b00201000160b000e0700
-160b00160b00160b002010001e0f00281400261300140a002613002010000e0700160b00
-160b00281400140a00160b00160b00261300160b00160b00160b00140a00281400140a00
-301800160b00261300180c002010000e0700140a00140a00
-3018002814000e0700281400160b00160b001e0f001e0f002010002e1700140a001e0f00
-0c06002e1700160b00140a00180c00160b001e0f00160b00160b000e07000e0700281400
-2814000e0700201000160b00160b00060300140a00201000160b000603000201000e0700
-180c000e0700140a002010000e07001e0f001e0f002613003018002613001e0f00301800
-160b00201000281400180c00180c001e0f001e0f001e0f00180c00201000160b00160b00
-201000201000140a00180c00180c000e07002010002010002814000e0700160b00422100
-140a00160b00281400160b00140a00160b00281400160b000e0700201000140a00160b00
-1e0f001e0f000e07002814000c06002010000e07000c0600180c000e07001e0f00160b00
-180c00160b00160b00180c00201000160b00160b00160b002010001e0f000c0600281400
-160b00261300160b002010001e0f00281400261300160b00201000201000160b00060300
-0e0700140a000e0700140a00261300160b00201000020100201000160b000e0700261300
-2010000c06000c06000e07000e07002814000e0700140a002814000e0700160b000e0700
-1e0f00180c00180c000e0700201000261300201000180c00160b001e0f00160b001e0f00
-0e0700201000261300180c001e0f000e07002814002814002010000e0700261300060300
-1e0f00180c00060300160b00060300160b00140a00281400201000180c00160b00201000
-201000201000160b00160b00160b001e0f000e0700140a000201002010002814001e0f00
-140a00281400180c00160b00160b00160b001e0f00060300261300201000060300201000
-3219000603000e07002010000c0600281400160b00201000160b00140a00201000180c00
-2613002814002613000e0700180c00261300201000301800060300201000140a00180c00
-1e0f00020100160b001e0f00201000180c00180c00140a00160b00201000160b000e0700
-2010000e0700160b000402002010002010002613001e0f002010001e0f001e0f00281400
-0e07000e0700381c00301800160b00160b00140a00160b000c06000e07000c0600281400
-281400160b00160b001e0f002010001e0f000c0600140a00160b00160b00160b00281400
-281400180c001e0f00201000040200140a00160b00160b00160b001e0f00321900261300
-201000160b00060300201000160b000c06000e0700160b000e0700060300160b00160b00
-160b00160b00160b00160b001e0f000e0700160b00160b00201000261300160b00140a00
-140a000c0600160b00160b000e0700160b00301800160b00140a00160b000e07001e0f00
-201000201000180c00060300160b001e0f00301800140a00180c00201000301800201000
-040200201000160b00160b002010002010002613001e0f000e0700140a00160b00140a00
-160b00160b00160b000e07000e07000e0700281400160b001e0f00160b000e0700160b00
-201000281400160b000e0700261300160b00140a00180c00140a00160b00201000160b00
-160b000e0700160b00140a001e0f000e0700201000180c002814000e0700261300281400
-0c0600201000261300160b00180c000e07001e0f002010002613002010000e0700ffa040
-ffa244160b000c0600160b00281400160b002e17002e1700140a00160b00201000281400
-3018002814003018002814001e0f00201000160b003a1d003219001e0f002e17002e1700
-2814002e17001e0f002814003a1d002814004a2500381c00422100402000301800201000
-2010002010000e0700160b00301800ff9b36160b00180c00261300201000261300180c00
-160b00160b00160b003018000c06000e07000603002613001e0f001e0f002613000c0600
-261300180c00160b00201000160b00160b001e0f00201000180c000e07002010000e0700
-060300160b00160b001e0f002010003018000e0700180c00020100140a000e0700140a00
-2e1700180c001e0f00160b00261300160b00140a00160b003219000e07001e0f00201000
-180c00140a00201000281400160b00281400060300180c00140a00180c002e1700180c00
-160b00140a00281400160b00201000201000201000140a00
-2e1700201000140a00140a000c0600281400321900160b00060300180c003018001e0f00
-2010000c0600261300281400160b001e0f001e0f00180c00180c00201000261300201000
-2e1700180c000e07000e0700160b000e07001e0f00261300201000160b00261300160b00
-281400060300140a000e0700201000160b002010000e07000e0700160b00281400140a00
-1e0f000c0600160b00160b000e0700180c001e0f000e0700180c000c0600060300060300
-060300160b000e07000e07000c06001e0f00180c00281400160b00140a00160b00201000
-140a003018001e0f00160b001e0f00140a000603002010001e0f00140a000e0700060300
-0e0700160b00160b00180c00160b00281400180c00160b00140a00180c00040200180c00
-1e0f00201000201000020100140a002613000e07001e0f003219000e07003018000c0600
-180c00281400201000180c00140a002010000402002613002010001e0f00281400180c00
-2814003018000e0700160b00160b00281400140a00201000140a00160b00140a00160b00
-0603000c0600160b00201000201000160b00140a00160b00060300160b001e0f000c0600
-180c000e0700140a001e0f00140a001e0f00160b002010001e0f00261300180c00060300
-140a000e0700160b000e0700160b002010001e0f00261300160b00160b000e0700201000
-140a001e0f00160b001e0f001e0f00261300140a00160b00201000180c000e0700060300
-160b00160b000c0600140a00180c00301800160b001e0f00160b001e0f00180c00060300
-281400180c000402002010000c0600140a002010000603001e0f00160b00160b000e0700
-160b00160b000e07000e07000e0700160b00140a00140a001e0f00160b00281400201000
-1e0f00160b000e0700261300180c00060300180c002010001e0f00160b00201000140a00
-0c06003018002e1700201000160b000e0700140a00301800160b001e0f000201002e1700
-160b00201000160b00160b000e0700180c000c0600201000261300180c000603000e0700
-160b000e0700140a00160b000c0600201000160b001e0f000e07000e07000e07001e0f00
-180c00140a00201000281400180c000e0700160b00160b002010002010001e0f000e0700
-281400261300160b00261300160b00180c001e0f00160b00180c000c06000e07000e0700
-140a00040200160b00201000160b00180c000e07000c0600160b000402000e07001e0f00
-160b00140a00201000160b00201000140a000c0600160b00140a00201000281400180c00
-201000180c00020100180c00140a002010001e0f00160b00160b00201000261300180c00
-140a00160b000e0700140a00281400201000140a00160b00201000201000201000201000
-201000180c00160b00140a00261300281400201000060300160b002010000e0700140a00
-180c00160b000e07003018002613002010004221002814000e07001e0f00160b00180c00
-0201000c06002814000e07000e07000e07001e0f00160b00160b000e07001e0f000e0700
-160b00140a00180c00060300160b000c0600160b00140a000e07000201000e0700160b00
-0e07000e07000c0600180c00281400160b000e0700281400060300ffa54aff9e3c281400
-0e0700180c00180c00160b00180c00261300160b00261300281400281400281400160b00
-281400402000301800301800261300381c00402000ffb264422100321900261300422100
-281400381c003a1d003018003018004020003219003a1d00442200301800261300201000
-3018001e0f00261300201000281400ffa54a261300ffa0402010001e0f002010000e0700
-160b001e0f00180c001e0f000201002010000e0700201000261300160b001e0f00180c00
-201000201000020100160b000e0700160b00140a002814000e07000e07000e0700281400
-2010002613002010001e0f000e07000e0700160b000c0600180c000603001e0f00201000
-1e0f00160b00281400160b00140a00201000261300160b002010002010001e0f001e0f00
-140a00140a000e0700160b001e0f00201000201000160b00160b00201000140a00180c00
-160b001e0f000c0600180c00201000160b002814000e0700
-180c00201000160b002613000e07002010001e0f000c06001e0f00140a00140a00281400
-2e17000c06000e0700261300160b00180c000e0700180c000c0600180c000e07000e0700
-0e0700160b00281400180c000c0600160b00261300160b00201000201000060300140a00
-160b002613002814000402002814000201002010001e0f00140a000e0700160b00281400
-160b00180c00261300160b00261300140a00160b00160b001e0f000c0600201000160b00
-201000020100140a00160b00140a00201000180c002010000c0600160b00180c00301800
-1e0f002010003219001e0f00160b000e07002010002613000e0700160b00140a000e0700
-140a00261300160b002814001e0f00160b00060300281400160b00160b000e0700160b00
-160b00160b00160b00281400160b000e0700180c00160b001e0f00140a00180c000e0700
-140a00160b001e0f00060300201000160b001e0f002010001e0f00160b00160b00160b00
-0c06002814001e0f00060300301800160b00180c00180c00160b00180c00160b000c0600
-160b00281400180c002010000e0700160b00020100140a00140a000e0700160b00201000
-1e0f00261300160b00180c00180c00160b00201000160b00160b00261300160b00160b00
-160b00140a000402000e0700180c00160b000e0700180c00160b00140a00160b00160b00
-180c00402000160b00180c002e1700201000180c00201000402000160b00261300160b00
-180c00060300160b00140a000e0700160b000c0600201000160b002613000e07000e0700
-1e0f002613002814000e07000c0600160b002613000e0700160b00160b00040200261300
-0c0600261300201000160b002814000e07000e07002e17000603002010000e0700261300
-1e0f002814002613003219000e0700160b000e0700160b001e0f00140a00301800180c00
-180c00281400140a002010001e0f000c0600160b00160b00140a00140a00281400160b00
-180c000e07001e0f002010002613000603002613000e0700160b00160b002e1700140a00
-2e1700281400201000160b00140a000e07000603002e1700160b00140a00160b00160b00
-160b000e0700140a000603000e0700160b00201000140a00140a00160b00281400160b00
-160b000e0700180c000e0700160b00201000160b00140a000e07001e0f00140a00281400
-201000160b00040200160b00140a001e0f00281400201000060300261300160b00140a00
-0e0700201000160b00180c002010002613000c06002613001e0f00201000201000201000
-180c00140a00140a00160b00160b00201000160b00180c00201000160b00301800201000
-0e0700160b002010002010000e07001e0f000e07000c0600180c00281400160b00261300
-160b00140a000603001e0f00160b001e0f00160b00180c00180c00160b00261300180c00
-140a000c06000e0700180c000e07000c0600201000160b002814000e07000201000e0700
-180c000e0700180c00160b002e1700160b00140a000e07002613000e07001e0f00201000
-160b000e0700040200201000160b00160b002010000e07001e0f002e17000e0700261300
-2613002e1700040200160b002814001e0f000c0600ffa448ffa244281400281400301800
-180c00201000160b002010002e17002e17002814003a1d00261300281400301800301800
-3018004020003a1d004c26004a25003a1d00522900ffb1624020003219004a2500422100
-4221003a1d002814004221004a25004020004a2500402000542a002e1700422100281400
-281400160b000603003018001e0f00ff9d3a160b00ffa64c261300160b00160b00040200
-1e0f00160b00140a00180c002010001e0f000e0700060300180c00140a00180c00281400
-160b00180c00140a002010001e0f00060300201000281400281400160b00180c001e0f00
-180c00180c00201000180c00140a00201000160b00201000201000160b001e0f00180c00
-0e07000e0700201000201000160b00180c002e1700180c00160b00201000160b00160b00
-0e07001e0f00160b000e0700201000281400281400261300180c00180c00201000180c00
-160b00180c000603000e0700060300020100140a000e0700
-140a00180c002814000e0700160b000c0600160b000e0700201000060300281400201000
-2010000c06001e0f000c06000e07001e0f001e0f001e0f00160b00160b00201000201000
-180c00201000201000180c00180c000c0600160b00281400160b002613000e07000e0700
-180c00201000201000281400160b002010002814000e0700281400201000281400201000
-0e07002613002e17002613002e1700201000201000160b00140a000e07000e07000e0700
-0e07002613000e0700160b000603002010000e0700160b00201000180c00160b00160b00
-020100140a00060300201000201000140a001e0f00180c001e0f000e0700140a000e0700
-180c00140a001e0f002010000e0700180c00180c000402001e0f000e0700140a00160b00
-180c000e0700140a00160b00201000160b000c0600261300160b00180c000e0700281400
-1e0f00160b00160b001e0f00381c00201000180c00201000160b00160b00281400140a00
-160b002010001e0f00201000261300140a002814001e0f00140a00160b00201000160b00
-180c002814000e0700140a00140a000c0600180c00160b001e0f00180c000e07000e0700
-0e0700281400180c00160b00140a00201000180c00160b00201000180c00201000180c00
-201000160b00140a002010001e0f00140a00201000180c00201000261300281400301800
-2010000e07000e0700060300160b00160b00160b00281400201000160b000c06000e0700
-201000381c00040200180c000e0700160b00160b00160b00160b00281400140a00160b00
-261300160b00201000140a00201000160b00201000201000201000020100201000140a00
-201000180c00261300160b00301800140a000c06000c0600201000160b000e0700281400
-2814002010002e1700261300140a00180c002010002010002010000c06000e0700261300
-0c06001e0f000e0700201000160b00160b000e0700140a00140a00160b00201000180c00
-0603002613002613000e07001e0f00180c001e0f000e0700180c00160b00160b002e1700
-2010001e0f00160b000c0600160b00140a001e0f00180c00201000160b00160b001e0f00
-180c00201000261300201000140a000e0700201000160b000e07000e0700180c001e0f00
-2010000c0600180c00201000180c000e0700160b00261300160b00201000201000201000
-180c00180c002010002814000e07000e07000e07000e0700060300140a00140a001e0f00
-180c00140a00201000180c00201000060300301800140a00160b00160b00160b00180c00
-160b00160b00381c002010001e0f00180c002814000e07000e0700160b00140a00160b00
-2e17002010000e07003018002613000e0700281400140a001e0f00160b00140a00180c00
-0e0700281400060300261300180c00160b000c06002613000c0600321900180c000e0700
-281400261300261300160b00160b00060300040200201000060300160b00180c00201000
-060300140a00060300180c00040200140a00201000201000180c00201000160b001e0f00
-2814000e0700160b001e0f00201000140a00160b00140a000e0700060300140a001e0f00
-2814000e0700180c000e0700160b00ffa54aff9b361e0f00140a001e0f00201000261300
-2010002010002010002814002e1700301800422100301800381c004c26004422004c2600
-542a00542a00542a00542a004a2500422100542a004c26004a25004a25004c2600381c00
-3a1d004422003a1d004422003018004a25004a2500542a004a2500422100381c00201000
-2814002e17001e0f001e0f00321900ffa2441e0f00ff9d3a1e0f00160b002814000e0700
-140a00160b001e0f00281400281400201000180c000603001e0f000c0600180c00160b00
-160b002010000e07001e0f00261300060300160b000e0700201000201000140a00160b00
-160b00180c00180c001e0f000e07001e0f000e07001e0f00201000201000160b000e0700
-140a002010000e0700060300281400180c000c06002613000603002e1700261300180c00
-0e07000c0600160b002814001e0f00060300060300160b000c0600160b000e07000e0700
-0e07002010000e0700160b002814000c0600160b00160b00
-140a00160b00160b001e0f00201000180c00201000201000201000281400180c001e0f00
-160b000e0700140a00040200160b000603000e0700160b00180c001e0f00180c00261300
-160b000e0700160b002613000e07000c0600160b00060300140a000e0700160b00160b00
-0603003219002010000e07001e0f000e07000e07001e0f00160b00281400180c00180c00
-1e0f00321900160b00160b00140a003018000603000e0700160b00060300160b000c0600
-160b00180c000c0600180c000603000e0700201000261300281400180c000e0700261300
-201000060300160b00180c00140a000201001e0f00281400160b002814001e0f00160b00
-301800160b00060300160b00140a00180c00060300160b002010002010000e07000e0700
-201000160b000402002613001e0f00180c00281400180c002e17002613002010001e0f00
-140a00180c002010002010001e0f000c0600140a00160b00140a000c06000c06001e0f00
-160b00180c00160b000c0600180c00160b00140a00201000160b00160b00201000201000
-060300180c00261300140a00180c000603001e0f00261300201000160b00180c00201000
-160b000c0600180c002010002814000e0700160b00160b001e0f00201000261300160b00
-180c00281400281400180c002010000e07000e0700020100180c00180c00140a00180c00
-0c0600160b002814000201002613002010001e0f00160b00281400201000140a00201000
-140a00160b002814001e0f001e0f00180c001e0f00160b00180c002010000e0700160b00
-0e0700201000160b00160b00180c000e07002814000603000603000e0700140a00060300
-2010000e07000201000e0700201000180c00040200201000261300201000201000160b00
-2010002e17002814001e0f00180c00160b000c06003018002814000c0600261300160b00
-160b00180c00160b000e07002010000e07002814002010003018001e0f00160b001e0f00
-040200201000160b001e0f00180c000c06000c06000e07002010002010000e0700281400
-0e07002010000e07002010002613001e0f000c0600160b00160b002010000e0700180c00
-201000160b001e0f000e07000603001e0f00201000140a002613000e07002e1700201000
-1e0f001e0f00180c001e0f00160b002010002010002010001e0f001e0f00261300160b00
-1e0f000e0700201000180c00201000281400301800160b001e0f001e0f00140a00160b00
-160b00261300281400261300180c00281400180c00201000281400281400160b002e1700
-1e0f002613002010002613002e17002814001e0f00040200160b00040200160b00201000
-0c06002814002010000c0600180c00180c002010001e0f001e0f000e07000603002e1700
-0e07002010001e0f00281400160b000201002010000c0600261300160b00160b00180c00
-140a001e0f00180c002e1700140a000e07001e0f000e07002613000c0600160b000e0700
-180c00140a00140a001e0f00040200040200160b00281400201000160b000e07001e0f00
-060300160b000e07000e07000e0700160b00160b00201000140a001e0f00160b00140a00
-160b001e0f00060300ff9c38ffaa54180c00180c00180c00261300020100140a00381c00
-281400201000301800321900201000422100381c00402000321900422100542a006e3700
-5e2f00542a00643200864300542a005a2d004c26006432006c3600542a005a2d003a1d00
-4c26005229004020002010003018003219003a1d00321900321900301800422100422100
-201000261300201000140a00ffa54a2613002613002010001e0f002814000e0700160b00
-281400180c00201000160b00201000180c00040200060300180c00160b00160b000e0700
-160b001e0f00180c000e0700160b00180c00160b00140a00160b00160b00160b000c0600
-160b00140a00281400140a002010000402002010000e07002010000c0600261300301800
-160b001e0f002814001e0f00140a00301800180c00180c00301800160b000e0700160b00
-140a002010001e0f00140a000e0700180c000603000e0700060300261300060300261300
-1e0f000e0700160b00201000180c00180c00201000160b00
-140a00180c001e0f000e07000603002613002e1700140a00160b000603001e0f00160b00
-160b000c0600201000140a00160b000e0700140a00140a000e07001e0f00020100201000
-201000060300201000140a00180c00140a00140a000e07002010000e07000e07000e0700
-2010000c06000e0700201000180c002010001e0f00281400160b00180c002e1700180c00
-140a00261300261300201000281400180c00140a000603002010000c06001e0f00160b00
-0e0700040200201000160b00160b000603000e0700140a00201000160b000e0700201000
-1e0f000e0700180c00261300060300160b000e0700160b00180c00160b00160b00160b00
-201000261300140a00180c000e0700381c00301800201000201000201000201000201000
-160b001e0f000603002010003a1d00160b00201000180c00201000201000180c000c0600
-261300180c00160b002814001e0f001e0f00140a00140a000e07000e07002814000e0700
-2613000e0700160b00160b000603000e07001e0f001e0f00201000160b00261300261300
-140a000603000e0700201000180c002814000e07000e07002814000c06000e0700281400
-160b003a1d00180c00281400180c00261300160b002010002814001e0f00160b00201000
-2010002010000c06001e0f00261300160b001e0f00160b000e07002010003018000e0700
-160b00180c000c0600160b00160b000402000e0700201000160b00281400020100160b00
-2010002010002010001e0f00140a00201000201000140a00060300261300160b001e0f00
-140a00201000281400140a00140a000e0700160b00140a00180c00180c00160b00060300
-0e0700140a00140a00261300281400140a00180c00180c00201000201000201000301800
-1e0f000c0600261300201000140a00160b001e0f001e0f001e0f002010000e0700140a00
-281400201000160b001e0f00160b00140a00180c00201000160b00160b00201000020100
-0c0600140a002e1700281400160b001e0f002010002010000e07000e0700160b00201000
-201000160b000e0700160b00160b00160b00140a00160b00160b001e0f00040200261300
-0603000e0700180c00160b00060300060300180c000e07000e0700160b00201000261300
-1e0f00140a001e0f000c0600180c00301800160b00201000201000160b00201000020100
-2010002010001e0f002010002e1700160b000c06000e07000e0700180c000e0700301800
-201000160b000e07002010000603000e0700180c00160b000e0700180c000e0700140a00
-201000201000201000160b00160b00180c00180c001e0f00261300180c00160b000e0700
-0e07002010002010000603001e0f00261300160b00180c00321900201000201000160b00
-2613000e0700160b000e0700261300281400201000160b00160b000e0700140a00201000
-381c000c0600180c002613003018000e0700160b000e0700160b00180c00261300301800
-0e0700160b00160b00160b002814002613001e0f00180c000e07000e0700140a000e0700
-201000301800160b00180c00180c002613000e07000e07000e0700201000160b00180c00
-281400140a00ffa244160b00160b001e0f001e0f002814000e0700160b001e0f00201000
-160b00381c003018002814004221004221004c26004c2600542a006e3700804000804000
-783c00763b007038006432006e37006e3700763b005c2e005e2f006432003a1d004a2500
-4020005229003018004a2500381c004221005229003219002010003a1d00301800381c00
-3018002814002e1700ffa448140a00281400160b00201000281400140a001e0f00060300
-1e0f00201000201000060300140a00140a00140a00140a00140a00160b00160b00160b00
-160b00140a00040200160b000e0700160b00160b000e0700180c00140a00261300180c00
-0e0700180c00180c00281400180c00160b00180c00201000201000160b00160b000e0700
-201000140a00201000201000261300160b00180c002814001e0f00201000140a00281400
-180c000e0700180c00201000160b00160b00140a00160b000e07000e0700160b00160b00
-201000180c00160b002010000c06001e0f00281400201000
-160b00160b00160b001e0f000603001e0f00201000060300160b00180c001e0f00261300
-160b00261300201000180c002e1700060300180c00160b00040200140a00201000160b00
-261300060300140a002814000402001e0f00160b000c06000e0700160b00140a00060300
-201000160b00140a00020100201000180c00201000180c00160b00160b00321900160b00
-180c001e0f00180c00281400160b00180c002814001e0f000e0700160b00020100160b00
-160b000603000e0700160b000e07001e0f00160b002010000e07002010000402000c0600
-0e07000e0700201000201000160b00180c00160b00201000160b00020100201000201000
-160b00140a00160b002613000e0700180c000e07000e0700180c00261300140a00261300
-140a000e0700160b00301800140a001e0f00140a000e0700160b00180c00201000140a00
-0c0600301800201000160b00180c001e0f000e07002010002010000e0700180c00281400
-0603001e0f00140a001e0f000e0700140a00140a00180c00160b00201000160b00201000
-180c000c06001e0f00180c000c06001e0f00180c001e0f00160b00201000180c00160b00
-1e0f00201000160b00160b001e0f00180c00180c002010002814001e0f00160b00160b00
-160b00180c00180c00160b00261300160b00160b000e07002010000603001e0f001e0f00
-180c00160b002814002010000e0700180c000e07000e07000e0700140a00140a00160b00
-180c00201000180c00140a00140a00160b00140a000e07002814002010000e0700140a00
-160b00180c00160b00180c00201000160b00160b000e0700180c00160b00060300201000
-0e07001e0f000603002010000e07002010000c0600160b001e0f00140a00201000160b00
-2010002814002613000e0700201000140a002613000c0600160b000e0700201000160b00
-281400140a00160b00160b000c0600180c000e0700301800140a002814000e07000e0700
-0e0700160b00160b001e0f000e0700160b000e0700261300201000060300201000281400
-1e0f00180c000e0700160b00140a00160b00180c00160b00040200160b000e0700140a00
-180c002010000e07001e0f00201000201000201000281400160b00180c00180c002e1700
-1e0f000e0700201000160b001e0f002613000c0600281400201000180c00160b000c0600
-201000201000160b002010000603000e0700281400180c003a1d00140a00140a00281400
-160b00160b00140a00140a00160b00140a00261300180c00140a002010001e0f00140a00
-301800180c00160b001e0f002010000e0700160b00160b002613000e07002814000e0700
-201000160b00160b00201000160b000e07002e1700160b00140a00261300160b00201000
-2010002814000402000e0700ffa64cff952aff9e3cff9e3cff9c38ffa54a180c00160b00
-281400160b00261300180c001e0f00060300160b000c06000603000e07000e0700281400
-2010002613000e0700180c00140a00140a00160b00160b00140a000c0600180c00180c00
-0e07000603000e07002010000201000e0700201000261300180c001e0f000e0700160b00
-ffa142ff9d3a1e0f00160b00301800140a002613003018002010002613002e1700281400
-2814003a1d00542a004a25004422004a25006e37006e37008a45007e3f00984c00aa5500
-9c4e008844009c4e00763b00884400643200703800ffcd9a5c2e005229004a2500442200
-4020003219003219004020003219002e17003018003a1d00301800281400381c00281400
-3a1d003a1d001e0f00ffab56261300261300ffab56160b00201000180c00261300201000
-160b00180c002010001e0f00281400160b000e0700180c000e07001e0f00160b000e0700
-2010000e0700281400180c00180c00160b00160b00160b00160b001e0f001e0f00180c00
-0603000e0700160b00201000201000140a000e07000c0600201000201000301800180c00
-2010002814001e0f00301800281400160b00201000301800261300140a00261300180c00
-180c00060300160b00281400160b001e0f00140a00261300160b00160b002e17000e0700
-2010000e0700281400180c002613000c06000e0700140a00
-160b003018003a1d00160b00281400180c00140a002814000e0700060300201000180c00
-2010002e1700180c002010002010001e0f00281400140a00140a00201000160b00281400
-2010000c0600140a000e07002814000e0700160b00201000201000160b00160b00140a00
-180c002010000e07000402000603000c0600160b00040200261300201000281400180c00
-1e0f000e07000e0700301800160b00201000140a000c06001e0f001e0f00060300060300
-060300160b00160b000e07001e0f00020100160b00160b00180c00140a00180c00140a00
-0e0700180c00180c00160b00160b00160b00140a00160b002010000e0700160b00060300
-140a000e0700140a002814002613000c0600060300160b00160b00160b00180c00140a00
-140a00261300180c002010001e0f00140a00180c00140a00180c00201000160b001e0f00
-180c000e0700060300140a000e07000402001e0f00180c000e0700180c00201000060300
-0e07000e0700180c000e0700201000160b00140a000c06002010000e0700160b00261300
-160b00160b002010000c0600160b00180c002010000402000c0600140a000e07001e0f00
-2814000c06001e0f00180c00020100160b00160b001e0f002010002010002613001e0f00
-1e0f00201000160b000e07000e0700140a000e0700160b00160b00281400281400180c00
-180c001e0f001e0f00180c000e0700160b002613000e07000e07000e07002613000e0700
-0c06000e07001e0f001e0f00060300180c000e07000e0700140a002010000e0700160b00
-160b00160b002e1700160b00160b000e07000e0700160b00160b000c06002613000e0700
-1e0f000e07000e07001e0f002814000c0600160b000e07001e0f00281400261300160b00
-180c001e0f00180c00281400140a000e0700281400201000160b00160b000e0700301800
-201000201000180c001e0f00160b00301800160b001e0f002814001e0f002010000e0700
-160b00140a00160b00201000160b00180c00201000160b000e0700160b00180c00060300
-2613000e07002814001e0f00201000261300160b00160b001e0f00160b00261300140a00
-2e1700180c00281400160b00160b00140a00140a00261300140a00201000201000281400
-2010002010000e07002613002010000c0600261300160b00160b00160b001e0f000e0700
-1e0f00180c001e0f00140a00160b00160b000e0700160b00201000180c00140a00180c00
-0e07001e0f001e0f00160b00160b00160b00201000180c00281400160b00180c00140a00
-140a00261300140a000e0700281400160b001e0f003a1d00160b000c0600180c00160b00
-2010000e0700140a00180c000c06002814002814000e07002814003219002010001e0f00
-160b00261300ffa448ffaa54140a00261300140a00180c00160b00160b00ff9e3cffa448
-ff9d3a160b00180c00160b00201000281400201000160b00180c001e0f001e0f00261300
-1e0f00180c00180c00301800160b000e0700160b00160b003018001e0f00160b00160b00
-180c001e0f00201000201000160b00140a00160b002613000c0600160b00201000ffa448
-261300160b002010002e1700180c001e0f00381c002613003018003a1d00180c00381c00
-2814003219004422005c2e005e2f00703800804000984c00b25900b85c00a45200b25900
-b259009c4e008844008a4500763b006e3700763b00ffbc78643200542a003219004a2500
-4221004221002814003a1d00301800402000201000281400201000160b00281400201000
-2814002e1700ffa54a160b00281400ffa244201000201000281400140a001e0f00180c00
-140a00180c00160b00160b00160b00160b003018000e0700140a00180c000c06000e0700
-160b000e07000e07000c0600160b00180c00160b00140a00140a002e1700180c000e0700
-180c002010000c0600060300160b00060300180c000e0700180c00140a00160b00261300
-160b00160b00160b00180c00201000140a001e0f002e1700180c000e0700160b00060300
-3018000e0700160b00160b00160b00140a002010002613002e17001e0f00140a00040200
-180c00160b000603003a1d002814000e07002010000c0600
-140a000e07000c0600140a00060300020100160b001e0f00180c00281400160b002e1700
-281400201000201000160b00281400201000140a00160b00160b000603002e17000c0600
-0c0600301800180c000e0700160b000402000e0700281400281400160b00160b001e0f00
-180c00140a00160b002814000e07000e0700160b002613000402000e07001e0f00180c00
-2814002e17001e0f000c0600201000180c001e0f002e17001e0f000e0700140a000c0600
-020100201000201000180c00140a00160b00160b00180c000603000e0700180c000e0700
-0c06000e0700180c00160b000e07002010002814000c06000e0700160b000c0600140a00
-0603002613002814002010001e0f000e07001e0f00160b00180c00140a00201000060300
-1e0f00281400180c00180c000201001e0f000c06000e0700381c000e07002010000c0600
-160b00160b00180c000e07000e0700180c00201000201000160b00140a00201000140a00
-060300140a00160b000e07000e07000e0700160b00160b00201000160b00180c00281400
-180c00160b001e0f000e0700160b00201000160b002010002010000c0600281400381c00
-160b000e07000c06000c0600261300060300160b00160b00201000140a00160b00160b00
-180c001e0f00381c00160b00140a00201000160b001e0f00160b00140a001e0f001e0f00
-201000160b000201000e0700201000140a00140a00160b00301800160b00201000140a00
-201000201000180c002613002010000e0700160b001e0f00160b00201000160b00160b00
-201000160b00281400140a00180c00180c001e0f002e1700160b00160b00160b00281400
-180c000e07000e07001e0f000e07003018000c0600281400180c002010001e0f000c0600
-140a00201000201000140a000c0600160b000e0700180c002814002010001e0f00160b00
-0e0700201000180c001e0f00140a00060300140a000e07002010001e0f00040200060300
-180c002613000e07001e0f00140a001e0f000603002e1700140a00160b002e1700140a00
-201000261300160b000e0700180c001e0f002613000e07000c0600140a00180c00201000
-281400180c002010002010001e0f00180c000c0600160b00180c000c0600160b00261300
-201000160b00201000201000281400060300160b002e17002613000e07001e0f00140a00
-2010000e0700201000160b00160b00140a00140a00160b00060300140a001e0f00160b00
-140a00180c00180c00160b001e0f000e0700201000160b00160b000e0700180c000c0600
-0c0600201000160b00140a002010000c0600180c00180c00261300160b002814000e0700
-2e17002010000e0700281400140a00201000201000180c00140a002010000e0700140a00
-ffa448ff9e3c180c00160b00160b00160b002010003a1d00160b00201000201000160b00
-281400ffa2442010000e07000e0700140a00180c00040200160b001e0f000c06000e0700
-140a00160b00180c00201000201000180c00160b00140a00160b00160b000c06001e0f00
-180c00281400281400201000180c00201000140a00261300201000ff9428ff9122201000
-3018000e0700160b002010003018002613002613002814003a1d002e1700321900321900
-442200522900542a005e2f00864300904800aa5500c46200c86400de6f00e07000be5f00
-c66300ac56009e4f00763b006c36006432003a1d004a2500542a003018003a1d00422100
-321900381c001e0f003018003018003018002814002010002814002010001e0f00281400
-281400160b00281400201000140a002010000e0700201000201000201000201000160b00
-201000160b00060300201000180c000c0600140a00160b000c0600321900180c00060300
-0c0600160b002814001e0f000e07000e0700160b000e07002010000e0700201000180c00
-140a001e0f00160b00140a00180c00160b00281400201000301800201000201000201000
-201000201000140a002010001e0f00160b003018000e0700160b001e0f001e0f00160b00
-0e0700160b00160b000c0600402000180c00160b000e0700261300160b00140a00020100
-1e0f000c0600160b000603002613001e0f000e0700140a00
-0603002010000c06002814002010002e1700180c00261300201000281400180c00160b00
-1e0f00160b000201003a1d001e0f000c0600261300160b00201000160b002010001e0f00
-020100140a000e0700160b000e07000e07001e0f000e07002010000e07000c0600201000
-160b00160b000e07001e0f002010002814002010000e07002e17000e0700160b00140a00
-0e07000e0700180c00160b00160b00160b00140a00180c002010000c06000e0700201000
-060300140a00160b00060300201000180c001e0f000c0600040200281400140a00060300
-0e0700201000180c00160b001e0f002010000e0700160b00180c00140a001e0f00201000
-261300140a000e07001e0f00180c002010000e0700160b001e0f000e0700ffa54affa040
-ff9c381e0f002e1700ffa040ffa54aff9c38160b001e0f002814000c0600201000160b00
-1e0f00160b00060300201000160b002010000c0600160b00040200180c002010000e0700
-0e0700160b00160b00281400180c00261300201000180c00160b000603001e0f00140a00
-1e0f00281400201000201000140a002010000e0700060300180c00180c00160b00180c00
-2010001e0f00201000180c000c0600201000140a000c0600281400180c00180c00140a00
-281400160b000e0700140a00201000180c000e0700160b00180c00180c000e0700201000
-160b000e07002613000e0700160b000e0700160b00281400201000140a000e0700201000
-180c00160b000e0700180c001e0f00261300160b00160b000e0700201000201000160b00
-2010002010002010000e0700180c00201000201000160b00201000261300180c00281400
-160b00140a00180c00160b00180c000e0700201000180c00020100180c000c0600281400
-180c002814001e0f00180c00180c00201000060300160b000e0700160b00160b001e0f00
-140a001e0f00160b002e17002814002010001e0f00160b000e0700281400160b001e0f00
-261300160b000e0700140a000e0700180c00261300301800160b00140a00281400281400
-2e17000e07002010000e0700160b000e0700180c00160b002010000c0600160b00160b00
-160b002e17000e07000e0700160b002010000e0700160b00281400060300160b00060300
-0e07001e0f00180c001e0f00180c00040200201000ff9e3cff9e3cff9b36ffa64cffa142
-ffa040ffa244ffa54a1e0f00201000160b00160b001e0f002814000c06002613000e0700
-201000060300140a00140a001e0f000e0700201000160b002010001e0f00160b00180c00
-180c00201000281400160b00160b001e0f002613001e0f002010000e0700160b00160b00
-2613000e0700140a000c06000e0700201000201000160b00160b001e0f00201000ffa142
-160b00140a00160b00281400201000201000201000301800261300160b00180c000e0700
-180c00261300ffa244ffa040180c00160b00281400140a001e0f00160b000c0600201000
-201000140a000e0700160b00160b001e0f00180c000e0700140a00140a00180c00180c00
-140a00040200201000140a00180c00301800201000160b00ff9c38180c000c06000e0700
-1e0f00201000301800180c002e17002e17001e0f002010004221004221003a1d00381c00
-4c26005c2e006e37007038009e4f00b85c00c46200ea7500e47200f07800f67b00c66300
-b259009a4d00904800763b007038005229004a25004221004221004a2500381c003a1d00
-180c002e1700281400321900261300201000201000261300261300261300201000ffa74e
-ffa952261300261300281400160b00180c00160b00160b002010000e07000e0700281400
-2814001e0f000c06002010002814001e0f001e0f00040200020100201000180c00140a00
-1e0f00281400140a002613001e0f00140a000c06000e07002613000402000e0700160b00
-2814001e0f00201000140a00060300261300180c003018000e0700281400160b00140a00
-1e0f002814000e0700201000140a002010002010000e07002010000c06001e0f000e0700
-0e0700060300140a002e1700201000160b00261300180c000e0700201000180c00180c00
-2613000e0700160b00160b001e0f00281400160b000e0700
-160b000c0600140a000e0700160b002e17001e0f00180c00180c002010001e0f00160b00
-1e0f00201000261300160b00160b00160b002010001e0f00180c00201000201000060300
-2e1700201000140a00180c000e0700160b002010000e0700201000160b00281400140a00
-160b00140a00201000160b000e07000603000e07000e0700160b00160b00201000140a00
-160b000c06002814002010002010000e0700160b00160b000e0700160b000e0700060300
-0e0700160b00180c00180c001e0f000e0700140a002010002010001e0f00160b00201000
-040200180c001e0f00201000180c002010000603002010000e0700160b00160b00201000
-0e0700201000301800281400201000140a000c0600180c00180c00180c00160b000e0700
-160b00180c002814001e0f00281400180c001e0f00160b00ffa040ffa448160b001e0f00
-281400140a00180c00261300140a00160b001e0f000e07002613000e0700060300261300
-160b001e0f001e0f00160b002010001e0f00160b00160b000e07001e0f001e0f00160b00
-160b00281400201000180c00201000140a000e0700180c00160b002010001e0f00060300
-140a001e0f00140a00281400201000140a00160b00140a00201000160b00160b00281400
-1e0f000e07000e07000e07002613001e0f00160b000c06001e0f00140a00160b000e0700
-0c06000e0700180c000e0700281400201000180c000e0700201000301800201000160b00
-281400281400140a00140a00180c000e0700160b002010002e17000e0700160b00201000
-2010003018000e07002e1700261300140a00201000160b00180c001e0f00160b00160b00
-0e07002010001e0f003018002613000e07000e0700201000261300180c00160b001e0f00
-2010001e0f000e0700160b00180c000e0700140a00201000261300160b00261300160b00
-160b00160b001e0f002613000e07000e0700160b00261300160b00180c00160b00201000
-0c0600180c000603001e0f001e0f000e0700281400160b00281400160b00301800381c00
-422100201000160b001e0f00180c00180c00140a00160b00261300261300281400160b00
-160b001e0f00201000060300140a00281400201000160b00180c00201000160b00261300
-1e0f00160b001e0f00180c00261300201000ff9c38160b00201000201000160b00201000
-0603001e0f000e0700ff99322010001e0f003a1d00160b00160b000c06001e0f00261300
-0e07002613000e0700160b00160b00180c00180c00180c00201000281400160b00060300
-1e0f00201000160b00201000180c000e0700180c00180c00201000281400201000261300
-2613001e0f00201000180c00281400201000201000140a002613001e0f00ffa54a180c00
-180c00140a000e0700180c00261300281400301800180c00160b00261300140a000e0700
-0e07000e0700160b00261300ff9c38140a00160b000e0700261300060300180c00261300
-261300160b00060300201000040200201000180c00160b00301800180c00140a000e0700
-201000180c00281400160b00060300160b00180c00ff98302010002e17002e1700281400
-3018002010000c0600160b00301800281400381c00321900301800402000422100643200
-5e2f006e3700763b00864300a25100c46200c86400f47a00fe7f00e47200d06800b25900
-8844007e3f006e37006633005c2e00422100422100422100281400ffa54a4422003a1d00
-201000281400281400281400381c002814002e17002814001e0f00180c00ffa244160b00
-201000160b00160b00201000ff99321e0f00180c00180c000603000c06000e0700140a00
-261300160b000603000e07000c06000c06001e0f000e0700160b002010001e0f00160b00
-0e07000603002010002010001e0f000e07000c0600180c00160b00140a00180c00160b00
-160b00160b000e0700140a00140a00180c000c06000603000e0700140a00160b001e0f00
-140a00060300140a00160b00180c000e0700160b002613002010000e0700160b001e0f00
-0e0700160b002e17000e07002010001e0f00160b000e07002e1700140a00160b00201000
-1e0f00160b000e0700180c000e0700201000180c00160b00
-180c00281400160b000e0700201000140a000e0700160b000e0700301800140a00020100
-261300201000201000261300180c000e07002613000e07000603002010002613001e0f00
-281400281400160b00160b00160b000c06002010000c0600160b00160b00160b00140a00
-1e0f000e0700180c001e0f00180c001e0f00281400180c00201000180c00180c000e0700
-160b00140a002010000603000e0700180c002010002010001e0f000603000e0700160b00
-180c000e0700140a00020100160b00281400160b00160b00140a00201000160b000e0700
-160b000c0600140a002814000e07002010001e0f002814002010000e0700160b00140a00
-140a00180c00160b00160b002814003a1d00ff9b36ff99322010002814002613001e0f00
-201000180c00281400140a001e0f001e0f00180c00281400160b00201000140a00201000
-2814001e0f001e0f002613003018002613001e0f00140a00160b001e0f00160b00180c00
-160b00140a00201000201000180c000e0700201000140a00160b000e07000e07000e0700
-140a00140a000e0700160b000402000e07001e0f00140a00201000160b002613001e0f00
-0c0600160b000e0700261300160b00160b000e0700160b000e0700180c001e0f00261300
-0e0700060300180c002010002010000e07001e0f001e0f00160b00201000281400180c00
-160b001e0f001e0f001e0f000e07000c06002613000c06002010000c0600201000281400
-0c06000e0700140a00301800261300201000160b001e0f00140a00201000160b00160b00
-060300160b001e0f00160b001e0f000c06000e0700180c00140a00160b000e07001e0f00
-281400060300160b00180c001e0f002010002e17000c0600160b00140a00140a00201000
-201000201000160b00060300160b00160b00140a00201000140a00201000281400201000
-160b001e0f00140a001e0f00140a00020100160b00160b00180c00140a00160b001e0f00
-2613002613002010000c0600140a001e0f00140a00201000160b00040200160b00281400
-2814002010001e0f00160b000e07000e07000201000e0700160b00261300160b00281400
-160b000e0700180c002010002814001e0f001e0f00201000060300140a00201000160b00
-160b00160b000c06002e1700140a00ffa952281400160b000c0600201000160b001e0f00
-201000201000180c001e0f00ff9b36201000180c00180c003018000e07000e0700160b00
-0e0700281400201000140a00301800201000140a00160b00160b000c0600160b001e0f00
-1e0f00060300201000201000180c000e0700160b000e07002010000c06003018001e0f00
-140a00201000140a00180c00201000160b002010000e0700160b000e0700ffa4480e0700
-0e07001e0f00201000160b00281400160b00160b00160b003018001e0f00201000160b00
-1e0f00160b00160b001e0f00ffaa54160b00160b000c06000e0700201000160b00160b00
-1e0f00201000160b00201000180c00201000201000160b000e0700160b001e0f000c0600
-140a000e07000e07001e0f00261300180c00ffa244261300201000201000201000201000
-0e07000e07001e0f003a1d003018004020003a1d003a1d004221003a1d00643200542a00
-763b006c36007e3f00a45200ac5600c86400de6f00e07000b25900be5f00aa5500884400
-703800703800643200542a005c2e005229004020003a1d00321900ffae5c2010001e0f00
-301800261300261300201000180c003018002010003219000e0700ffa448261300160b00
-180c00140a001e0f00ff9e3c201000140a00140a00160b00160b00160b001e0f00020100
-160b000402001e0f00140a00160b000c0600140a00160b002010001e0f00201000201000
-180c002010002010001e0f002814003018002814002814002814001e0f00160b000c0600
-4020001e0f00261300201000160b00160b00180c00201000140a000e07000e07001e0f00
-201000261300201000160b000c0600281400201000180c00201000160b002010002e1700
-020100160b001e0f002010000e07000c0600160b000e07000603000e0700201000160b00
-261300180c00140a00160b000c0600160b00160b000e0700
-2010000e0700140a000e0700060300140a00261300160b002010001e0f00261300201000
-1e0f00160b00140a000e0700160b000e0700261300160b000c0600281400261300160b00
-160b001e0f000c0600160b000603001e0f002613002010000c06001e0f00140a00180c00
-040200160b00160b00160b00160b00180c000e0700060300160b00180c002814000c0600
-140a001e0f000c0600140a00180c00180c00301800140a00201000160b000603000e0700
-160b002010000e0700180c000e0700180c002010000603001e0f000e0700140a00281400
-201000160b00160b00160b00180c001e0f00160b002613000e0700160b00160b00140a00
-201000160b00261300160b00201000160b001e0f00201000180c00160b00201000281400
-201000160b002613002010001e0f00261300180c000c0600180c000e07002613000e0700
-ffa54affa0400c06001e0f00160b00140a000e0700261300180c00201000160b00180c00
-140a00160b00160b00180c001e0f00180c00180c00160b000c06000e07000c0600201000
-140a00160b001e0f00140a00160b00180c00160b00201000281400160b00180c00160b00
-160b001e0f00160b00140a00160b00060300160b00160b000c06000603001e0f000c0600
-2010002814001e0f00160b00180c00180c001e0f00160b00201000281400160b00261300
-301800160b00020100140a001e0f001e0f00140a00281400201000160b001e0f00281400
-2010000c0600160b000c0600261300140a00261300180c00160b00160b00201000201000
-2010000603002e1700140a00140a00140a00160b00281400201000160b00180c00180c00
-0c06002613000e0700160b00160b00281400180c00160b00140a00160b00160b00160b00
-281400160b002010000e0700140a00140a000e0700180c000e0700160b000c0600261300
-1e0f00160b000e0700160b002814000c0600201000180c000e0700180c000e07000e0700
-180c00160b00160b002010000402002814000e07000e0700201000160b001e0f00281400
-0e0700261300180c000e0700201000201000201000160b000e07001e0f000e0700040200
-180c00261300160b000e0700201000140a00140a001e0f00261300180c002010000e0700
-0c06000e0700140a00201000ffa2440e0700180c00261300160b00261300261300160b00
-201000140a00160b00160b000c0600ff99320e0700201000140a00201000020100261300
-160b002010000c06001e0f00060300180c000e0700201000160b00281400180c00160b00
-160b00281400261300201000160b00201000160b00201000060300281400140a000e0700
-201000160b00140a00160b00160b00160b00160b00201000180c00ff9e3c140a00261300
-281400180c00201000160b00201000381c002814001e0f00281400160b00281400180c00
-201000261300060300201000180c00ffa244140a00160b00180c00180c00281400160b00
-0e0700261300180c00060300060300201000160b000e0700160b00160b00160b00261300
-160b000e07000e0700180c00140a00ff9d3a0c0600160b001e0f00281400140a00201000
-261300281400261300180c00402000422100381c004a25004c26005229004a25006e3700
-6e37007e3f008844009c4e008a4500b85c00b25900ac5600a45200a452006e37007e3f00
-643200422100542a004c26004a25003a1d002e17004422002814002814001e0f00281400
-3018002010002010001e0f001e0f00201000160b00ffa142ffa2441e0f00281400020100
-2613002814001e0f00180c00180c00160b00060300160b00180c00160b00160b001e0f00
-1e0f000e0700160b00160b000e07001e0f00160b000c06001e0f001e0f000e0700160b00
-0c06000e0700180c000e07000e0700160b001e0f00180c001e0f000e07000c06000e0700
-140a00060300160b000603000e07002010000e0700201000140a000e0700201000160b00
-160b00140a00160b00160b00180c00261300281400180c00301800201000201000180c00
-180c00160b00140a000e0700201000160b00201000160b002010002e17002010000e0700
-160b00140a00201000060300160b00281400201000140a00
-160b00180c00180c002010000c0600160b001e0f00180c00160b00160b00201000160b00
-0e0700160b00180c00160b00180c00180c00261300060300060300201000160b000e0700
-180c00140a000201002613002e1700160b00201000140a000e07002613000c0600180c00
-0e0700140a00060300140a00160b000c06000e0700281400180c002814001e0f00140a00
-060300160b000e0700180c000e0700180c000603000e0700160b00060300ffa952ff9d3a
-fffcf8160b002814000603000e0700160b00160b001e0f00160b00261300201000281400
-160b000e07000e07000e07001e0f00160b00140a00160b00261300201000180c00060300
-0603001e0f00201000160b00ff9d3a160b00160b00180c002e17000e0700301800201000
-160b00160b00201000281400201000281400180c00261300140a001e0f00140a00160b00
-201000140a002e1700160b00261300281400180c00180c00180c00160b001e0f00160b00
-2814002010002010002613003018002814002010000e0700160b00160b00261300160b00
-160b002613002010001e0f00160b000c0600180c000e0700160b001e0f00060300180c00
-2e17000e0700140a001e0f002010000e07001e0f002010000e0700140a00160b00281400
-201000160b00281400060300180c000e0700140a000e0700140a00261300160b00180c00
-2010001e0f001e0f000603000c0600160b002010002010002010000e0700180c00160b00
-160b00201000180c00140a00180c002613000603002613001e0f00281400180c00060300
-281400301800160b00180c001e0f00160b00140a00160b00140a001e0f001e0f001e0f00
-060300160b001e0f001e0f002010000e07001e0f00160b002e1700140a002814001e0f00
-180c00201000160b00160b001e0f000e0700180c00180c00281400140a003018000e0700
-140a002613000c0600160b00201000201000281400180c000e0700160b000e07001e0f00
-160b002814000e07001e0f00201000140a000e0700201000160b003018001e0f000e0700
-281400040200201000140a00180c000e0700140a00301800180c00140a00201000201000
-281400201000201000281400201000160b002010002010001e0f00160b001e0f00261300
-201000201000201000ffa040140a000e07001e0f00140a003219002010002e1700381c00
-201000301800160b00160b00140a00ffa2442e1700140a00160b001e0f00140a00060300
-1e0f00140a000c06002613002814000e07000e0700261300180c000e07000c0600180c00
-1e0f00201000160b000e0700140a001e0f00201000201000160b001e0f00281400180c00
-2010000e07000e0700201000201000140a000e07000e07000e0700ffa448160b001e0f00
-201000160b002010001e0f002010003018000e0700261300301800281400180c00201000
-0c0600261300201000281400281400201000ff99321e0f00201000060300060300281400
-060300201000160b00160b00140a000c0600160b00301800140a002010000e0700040200
-160b00160b000e07000e0700ff9830160b001e0f00140a00160b000e07001e0f00201000
-1e0f00180c002814003a1d003219004422003a1d00422100522900542a00442200643200
-6633006e37007038007e3f009e4f008643007e3f008040008643007e3f00783c005e2f00
-4422004c26003a1d003a1d003018004221002e17002e1700301800301800201000ffa74e
-180c001e0f002010001e0f00201000160b00ff9d3a3219002814000e0700180c000e0700
-ff952a1e0f00180c001e0f000e0700201000180c00160b002010000e07000e0700201000
-1e0f000603000e07000e0700201000160b000e07000603000c06000e07002814000e0700
-180c00261300180c00160b002613002613002010001e0f002814001e0f00060300180c00
-2e1700201000160b000402002010002613000e07000c06002814001e0f00160b00201000
-060300201000201000201000160b002010002010002814000603001e0f00261300160b00
-160b00140a002010000c0600180c00180c00140a000e07000e0700281400140a000c0600
-160b00160b00201000201000261300180c00180c00201000
-0e07000c0600201000060300201000321900201000140a00140a00140a000e0700160b00
-160b00180c00140a00261300201000060300201000201000140a00140a00160b00140a00
-0e0700160b00201000180c00201000140a000e0700160b00160b002613001e0f00160b00
-160b00140a00140a00160b00160b002814000e0700180c00201000060300160b00060300
-381c00201000160b000603001e0f00160b001e0f00160b00ff9e3cffa142201000180c00
-281400ff9d3a2814002010001e0f00180c00160b00160b002613000e0700140a001e0f00
-0e07001e0f003018001e0f00261300261300160b002010000e0700201000160b00180c00
-1e0f000201000e0700ffa2440e07002010002010000603000e07002814001e0f00321900
-261300422100201000381c002e1700201000281400281400301800281400201000261300
-2814000e07000e07000e07001e0f001e0f00180c00160b00160b00160b00160b00060300
-160b000e0700160b00281400180c00180c00180c001e0f000603002613000603000e0700
-0e0700140a00160b00281400201000201000160b00180c00281400140a00201000160b00
-321900180c00160b00160b000e07002010001e0f002010001e0f00060300140a00160b00
-0e0700160b000e07000201000e07002010000e07002010000c06002010000e0700160b00
-0c0600160b000e07001e0f000603002010002e17002814001e0f00160b00060300160b00
-1e0f000e0700160b002010001e0f00140a00180c00261300201000160b00180c00201000
-0e0700160b000e07001e0f00301800180c00281400201000180c000e07000e07001e0f00
-2814000e0700160b00160b002010000e0700201000180c001e0f001e0f002613001e0f00
-2010001e0f00201000201000180c00201000160b00160b00160b002010002613002e1700
-1e0f00180c000e0700201000160b00160b000e0700060300180c00201000140a00261300
-1e0f001e0f002613002010002814000c06002010001e0f00140a002814001e0f00201000
-2010001e0f00140a00160b002613001e0f00180c00060300160b001e0f001e0f000e0700
-160b00060300180c002814002010000603002010000e0700160b000e0700180c001e0f00
-0e0700160b00160b00ff90201e0f000e0700160b002613002613003a1d00060300381c00
-2613003018001e0f00301800301800140a00ffa0400e07002613000c0600060300281400
-0e07000e0700281400180c00180c00160b002010000e07000e0700140a00160b00201000
-0e0700201000140a000e0700160b002010002e17000c06000e0700180c00160b00140a00
-201000201000201000160b000c06000603001e0f000e0700ff9d3a0c0600201000180c00
-180c00160b000e07001e0f00160b00201000321900381c004221002e1700160b00201000
-160b00180c00160b00160b00160b00140a00ffa54a2613000e0700281400160b00160b00
-160b00180c00180c00180c000e0700160b00060300160b000e07002613001e0f00180c00
-2010000e0700180c00281400ffa2440e0700281400201000281400160b001e0f00281400
-4020002814003018002e1700381c00422100321900422100422100542a005a2d00663300
-5c2e005c2e006c3600763b006e37006e3700763b005e2f005c2e005c2e00542a004a2500
-402000281400422100281400321900201000281400201000180c00160b002e17000e0700
-ffa244201000201000201000ffa244ff952a201000180c00180c00201000201000ff9b36
-0e07000603000201000e07000e0700160b000e07000e0700201000160b00160b000e0700
-160b00180c00140a000c0600160b00180c00140a002814000603001e0f001e0f00160b00
-1e0f00281400140a003018000e0700201000201000160b00140a00140a000e0700180c00
-140a00160b00180c00160b001e0f003018001e0f00160b00201000180c00060300160b00
-2613003018001e0f00160b003018001e0f00160b00160b00301800180c00160b00180c00
-060300201000160b00180c001e0f00060300140a002e17000e07001e0f00160b001e0f00
-1e0f001e0f000603000603001e0f001e0f00160b00201000
-281400160b00201000180c001e0f001e0f00201000060300281400201000201000201000
-1e0f001e0f00201000180c001e0f000603001e0f00140a00160b00180c002814002e1700
-281400201000160b00180c00160b002010001e0f00201000140a00140a00201000180c00
-0e0700180c002814001e0f00160b00160b002613002010000e07000603000e0700180c00
-140a002010000603002010002613000603000e0700261300261300201000261300301800
-261300ff99320e0700160b000c06000603000e0700060300180c000e0700060300160b00
-0e0700160b002010001e0f000c0600160b00281400140a000e07000e0700160b00140a00
-201000140a000e07000e0700060300201000201000180c00180c00301800321900301800
-3a1d003018004c26003a1d004221003a1d004020002814003a1d00261300201000180c00
-180c002e1700301800ffa142160b00160b000c0600180c002010000402002613003a1d00
-160b00160b00180c00060300140a001e0f00140a00160b000e07000e0700160b000e0700
-1e0f00160b00140a00160b003018001e0f000603000e0700160b00281400201000281400
-1e0f00201000201000180c001e0f00160b00180c000e0700060300060300140a00160b00
-281400160b00160b002613001e0f000e0700180c001e0f001e0f002613000e0700160b00
-160b00180c00180c00180c00160b00180c00140a00180c00060300160b00281400160b00
-0c06001e0f00160b00160b00201000201000160b00160b00201000140a00201000201000
-180c00201000140a00201000140a000c06002010002010000e0700201000180c00201000
-180c000c06002613002010002010001e0f000e0700261300201000180c001e0f000e0700
-160b000603002010002010001e0f00140a001e0f00261300140a00140a002010001e0f00
-1e0f00160b002e1700040200140a00160b000c0600261300180c000e07000c0600140a00
-0e0700140a00160b002814001e0f000e07000c06000e0700160b001e0f00140a00160b00
-160b001e0f00140a00160b002010002010003018000e0700201000180c00261300060300
-160b001e0f002010000e0700201000261300180c00180c00201000060300160b00040200
-020100301800060300ff9e3c140a00160b00160b002010002010002e17003018002e1700
-2e1700180c00201000160b00180c00261300ff9b360e0700180c001e0f00180c00201000
-180c00201000160b00201000140a00201000180c00180c000e0700160b00281400281400
-0e07000201001e0f002010000c0600201000160b002613002613003018001e0f000e0700
-2814001e0f00180c002814001e0f000e0700201000201000ff9c38201000201000160b00
-2613000201000603003219003a1d00301800381c00261300422100321900281400301800
-2613001e0f00180c00160b000e07001e0f00ffa040180c00160b00180c000e0700281400
-140a00140a00180c001e0f000e07000603002010000603000e0700201000180c00160b00
-2613002e1700201000ffa64c180c002010000e07001e0f00160b002010002814001e0f00
-2814002613002010002613003219003018005a2d004c2600381c004221004c26004c2600
-4a2500542a004221005c2e00542a006633004a2500542a004a25004a25004c26003a1d00
-381c003a1d002e1700422100201000201000261300160b001e0f00201000201000261300
-201000301800ffa54afffcf8ff9e3c0c06001e0f00ffa244ffa2441e0f00040200020100
-160b00180c00160b002010000e07000c06002010000e0700160b000e0700160b00180c00
-140a00201000020100160b000603002814002613001e0f001e0f000e07000e0700160b00
-2010001e0f00180c001e0f00201000160b000e0700160b000e07000e07000e07000e0700
-0603000201002010000c06002010001e0f002010002e17001e0f00140a00060300140a00
-2010002010002e17002e17003018002010001e0f00140a00261300180c00180c00140a00
-0e07002814000402002010000c0600160b00201000060300281400201000160b000e0700
-0e07002e17000e07001e0f001e0f00140a00160b00261300
-2e17000c06002010000e0700160b00281400201000281400140a000c0600180c002e1700
-160b00160b000603000c0600140a00180c00140a002010000e0700180c000c0600160b00
-2010000e0700160b00261300201000160b000e07000e07001e0f00160b001e0f00160b00
-140a00201000160b001e0f00180c001e0f00160b002613000c06001e0f00180c00140a00
-0e0700ff9c38180c00301800180c000c0600060300ffa142160b00201000281400180c00
-261300201000ffa142160b000e0700160b00160b000402000603000e0700180c00201000
-160b00140a00180c001e0f000e0700281400160b00201000180c000e0700201000160b00
-160b00180c00ffa74e140a002010002010002814002010002814003a1d004020005a2d00
-5c2e005c2e005c2e005229005229004221004a2500301800281400281400180c00201000
-040200261300160b00201000201000261300201000201000140a00160b00180c00180c00
-301800140a00140a00160b002613000e0700261300160b00180c00160b00160b00020100
-1e0f00160b00201000160b00060300160b002e1700160b00140a00060300060300160b00
-180c00180c001e0f00160b00160b000c0600160b00201000140a001e0f001e0f000e0700
-160b002814002010000e07000c0600201000140a00201000160b00060300160b00261300
-0e0700140a00201000160b00160b000603000e07001e0f001e0f00201000180c000e0700
-160b00281400160b00140a00180c000603001e0f00201000281400020100140a002e1700
-2e17000e07000e0700160b000e0700160b00160b00140a00160b001e0f000e0700160b00
-160b002814001e0f000e0700140a00140a002010002010001e0f00160b000e07001e0f00
-160b00180c001e0f002613002010002010002814000e0700261300201000180c000c0600
-2010004a25002e1700261300180c00180c00180c000e0700160b00180c000e0700281400
-160b000e0700180c00160b00140a00160b001e0f000c0600201000180c00160b00160b00
-281400140a00160b00281400180c00140a00160b002010002814000c0600281400160b00
-160b002010002010000c0600160b000e0700140a001e0f00180c001e0f00160b00180c00
-140a001e0f00180c00ffa0401e0f002010002010002613003a1d00281400261300281400
-2613002010001e0f00201000201000ff9b363219001e0f00180c002613002814000e0700
-201000160b000e07001e0f00201000201000140a00160b000e07000e07000e07000e0700
-3018002814000e07002010002010000e0700160b00261300160b00060300160b00160b00
-0e07002814002010000e0700281400281400201000160b00ff9d3a201000180c00160b00
-160b001e0f003a1d00180c003018002e17004020003a1d00422100442200180c00281400
-160b00201000180c00301800140a00160b000c0600ffa4482814002010001e0f00201000
-1e0f00160b002010000c0600201000160b00160b00140a002010002010000c0600201000
-180c00261300ff99320e0700160b00201000160b00060300160b00201000160b00261300
-160b00160b002e1700201000442200381c004221004c26003219003a1d003a1d00542a00
-4a25004422004a25004221004c2600402000542a003a1d00422100422100422100321900
-381c001e0f00201000201000180c002613002814000c06000e0700180c000e0700160b00
-ff952affa448160b002613000e07002010000c06000e07001e0f001e0f001e0f00140a00
-060300060300160b002010000e0700160b00160b00140a00020100060300060300140a00
-180c00160b00180c00160b000e07002814002010000201000e07001e0f002010001e0f00
-0201000e0700201000140a00180c00160b00261300160b00160b00201000201000281400
-2814002613000e0700160b00060300180c001e0f00201000201000160b00020100160b00
-1e0f001e0f00180c00180c002010002814000e0700201000160b00160b00201000201000
-2010000e07002010000e07000e07000e0700140a001e0f002010002e1700160b00180c00
-0e0700160b002010002e1700160b00160b00160b00180c00
-1e0f00160b00160b000e0700180c002814000e0700261300201000180c002613000e0700
-060300180c002010000c06000603000e07002010002e1700281400180c00140a00201000
-0e07001e0f002613002010002e17002010001e0f00261300160b00160b000c06000c0600
-2814002010000e07002e1700140a000e07000e0700160b00180c00140a002e1700ff9830
-ffa64c040200ffa448ff9b36281400281400ffa448201000160b002613003a1d002e1700
-301800ffa0402010000201000c06001e0f00160b002613002010002010002e1700140a00
-0c06002613000e0700261300201000201000160b00160b00201000060300160b00281400
-180c00ffa74e140a00261300281400201000201000180c00301800381c004a25004a2500
-763b006e3700783c007038008643007038005a2d003219003219002e1700301800281400
-180c00160b00201000160b00160b00060300201000180c002010002010002814000c0600
-160b00160b00060300281400180c00160b00201000160b000e07000e07002010001e0f00
-160b000e07001e0f00060300180c00180c00180c00160b00160b000c06000e0700261300
-060300160b00140a002010001e0f00160b00180c00281400180c00160b00201000201000
-3018000603002613001e0f00201000180c000603000e0700140a00160b00180c00160b00
-201000160b00180c000603000e0700160b00160b000e07000e07002010000e0700201000
-381c00180c00160b000e07001e0f00160b000e07002010000e07002e1700160b00281400
-180c002814002010000e07001e0f000e0700180c00160b002010000e07001e0f00201000
-0e07000c0600160b00180c002e1700180c000e0700160b000e0700140a000603001e0f00
-201000140a000e07000e0700281400201000281400160b00180c00160b00180c00201000
-201000301800060300180c000603000c0600180c00201000201000160b002010001e0f00
-0c0600201000160b000e0700180c002814000e07000e0700160b00140a001e0f00180c00
-160b00060300180c00160b00201000060300201000201000180c000c0600201000140a00
-160b00160b00160b003018000e0700261300160b001e0f00180c002613000603000c0600
-0e07000e0700261300ff9932201000201000180c00160b002e17002010001e0f00301800
-2e1700201000201000180c000c0600ffa1420e0700180c00160b00140a00160b00140a00
-0c0600160b00140a00060300160b00201000201000160b000e07000e07000e0700160b00
-201000140a00140a00140a00201000201000160b00160b001e0f001e0f000e0700160b00
-180c000e0700201000140a00180c00201000281400281400ff9b36201000160b00160b00
-2010002814002010002613003018002814004a2500442200402000402000301800201000
-301800281400261300040200201000160b000e0700ffa244140a00201000281400160b00
-040200160b000c0600140a00140a000c0600281400201000160b00180c00160b00201000
-201000201000ff9c38261300020100180c00201000140a00201000160b00201000180c00
-2010003018002e17003018003018002e17004221004221003a1d004221003a1d00442200
-3018003219004020004a25003018003a1d00261300201000281400281400281400301800
-201000281400201000201000281400180c00201000160b002010000e0700ffa142ff9b36
-1e0f00160b00201000160b00261300160b000c0600140a00180c00040200281400160b00
-160b00180c003018002010000c06000e07000e0700140a00281400180c00060300201000
-140a000e07001e0f00201000180c000c06001e0f000c06000e0700160b00160b000c0600
-040200180c00160b00160b002814000603002010000e0700160b00160b001e0f00201000
-160b00140a00160b000c0600140a00281400201000201000160b001e0f000e0700140a00
-160b00160b00281400160b002010000e07001e0f00281400180c000c06002e1700160b00
-160b00281400160b000e07001e0f001e0f00060300261300261300160b000603000e0700
-281400160b000e0700160b00160b001e0f000e0700201000
-201000060300160b000c06000e07000e07000c0600281400140a001e0f00160b000e0700
-201000060300160b00060300140a00160b00160b00060300281400160b00160b001e0f00
-1e0f00180c00140a00140a000e0700160b001e0f00160b002613001e0f000e0700261300
-140a00180c00261300180c001e0f00160b00140a00281400201000ffa54aff9932160b00
-201000180c000e0700201000ff9d3aff9b36ffa1421e0f002e1700201000281400301800
-2e1700ffa244261300060300180c00060300180c001e0f001e0f002e1700301800281400
-0e07002010002010002010000e07001e0f00201000180c00261300060300180c00180c00
-180c00201000180c001e0f000e07002613003219003018003018002814006e3700703800
-763b008a4500804000a45200a251009048007e3f005c2e004422003219002e1700281400
-2613002010002814000e0700ff9932180c001e0f00261300201000160b00160b00140a00
-060300160b001e0f002613001e0f00180c00160b000e0700160b00160b00160b001e0f00
-180c000603002010002613001e0f00060300140a000e0700180c00180c00160b00261300
-0201000e0700160b00180c002613002613000e0700261300140a00160b00180c000e0700
-201000201000140a00140a00160b00140a000c0600180c00060300140a00160b001e0f00
-160b00160b00180c00201000020100281400140a000e07000201002010001e0f000e0700
-281400180c000e0700160b00261300201000160b000e07000c06000402002010000c0600
-1e0f000e07002814001e0f00160b00160b00180c000e07000e07000e0700180c00160b00
-180c000e0700160b00160b00201000160b00040200140a00261300160b00180c002e1700
-140a00140a004a25001e0f002814000e0700261300180c002e17000e0700140a00301800
-140a001e0f00201000180c001e0f00180c000e07000c0600160b00160b00060300160b00
-0e07000603002010002010000e0700140a00201000140a00160b00180c00281400180c00
-0e0700201000180c00201000180c00160b001e0f00201000060300261300160b00140a00
-160b001e0f00160b000c06000e07001e0f00201000060300160b000e07001e0f002e1700
-0c0600201000201000261300ffa9520e0700160b00160b00140a00160b00140a00201000
-1e0f000e0700301800201000fffcf8160b001e0f00160b000c0600160b00160b00160b00
-160b00201000160b00160b00281400160b00140a00201000060300201000060300160b00
-160b00281400201000201000180c00160b00160b00180c00160b002814001e0f00160b00
-281400160b001e0f00060300180c00160b00140a002e1700ff9c382e1700140a00422100
-2814002814002010003018003a1d003018004a2500542a00542a004a25004a2500301800
-201000301800281400180c002010002613000e0700ffa142160b00140a000e07001e0f00
-140a002814003018000603000e0700160b00201000160b000e0700140a00261300402000
-0e0700160b00ffa142180c000e0700140a00180c000e07001e0f00180c000e0700160b00
-180c00201000301800201000301800301800381c002613003a1d00301800321900301800
-3018003018003018003a1d002e1700381c00301800301800301800281400160b00261300
-301800160b002e17002e17001e0f000e0700140a00160b00ffa040ff9b36060300060300
-0e0700180c000c06000e07000e07000e0700160b000e07000e0700160b000e07000c0600
-0e0700160b002010000e0700160b000402000c06000402000e0700180c002814000e0700
-160b00281400160b00261300160b00180c002814000603000e07000603000e0700160b00
-180c00201000140a00160b00140a00160b000603001e0f00160b00160b00160b00180c00
-160b001e0f00160b00160b002010000e07001e0f000e0700180c000603002814001e0f00
-2814001e0f00160b00160b000402000e0700281400281400201000281400201000201000
-180c00180c002010001e0f000603002010000e0700201000160b00140a00180c001e0f00
-0e07001e0f001e0f00160b00201000201000201000060300
-201000160b002e17002010000e0700160b00180c00160b00180c00140a000e0700140a00
-160b00381c002814000e0700201000140a001e0f000e07001e0f00160b00160b000c0600
-261300160b00201000160b001e0f00160b000e0700180c00160b001e0f00201000160b00
-1e0f00160b002010001e0f002010000e0700060300180c00261300ffa244140a000e0700
-201000060300140a00140a00281400fffcf82613002e1700281400402000201000160b00
-160b00ffa74e160b00140a00281400140a00281400201000261300160b000e0700281400
-180c00301800201000281400ffa64cffa244ffa040ff9932ffa142ff9d3affa142ff9932
-2e1700201000301800180c002814001e0f002010002814002814004020004a25006e3700
-984c00b25900a25100b65b009c4e00a45200763b006c3600542a003a1d00442200281400
-2814001e0f00160b000c0600160b00ff9b360e07002613000e07002e1700160b00160b00
-261300160b000e07000e07000603001e0f00180c00281400140a00160b00060300180c00
-0e0700180c00201000160b000c0600180c000603000402000402000e0700281400321900
-2010001e0f00160b00140a00180c00160b000e0700180c00201000281400201000261300
-160b001e0f000c0600160b000e0700201000160b000e07000e0700020100281400301800
-2010000e0700201000180c00160b00201000160b00160b000e07000e0700281400160b00
-0e07000e07000e0700261300140a002613000e07001e0f00160b002010002613001e0f00
-180c00261300180c00201000180c000c0600160b00201000140a00160b000e0700160b00
-261300201000160b00160b00160b00160b00160b00140a00160b00160b00140a00060300
-0e0700160b000c0600160b000e07002814001e0f000402002613002010001e0f00160b00
-261300160b000e0700160b000e0700180c00140a00140a00160b00201000140a00020100
-0603001e0f00422100140a000603000603000e0700261300160b00160b002e17000e0700
-1e0f001e0f00261300201000140a000c06001e0f00261300160b000e0700180c000e0700
-1e0f00301800301800180c00201000160b002010001e0f00160b002613000e07000e0700
-1e0f000e0700201000201000281400ffa2441e0f00160b00201000201000160b00060300
-281400201000160b00ffa448060300261300140a00201000160b000e0700160b00201000
-0e0700140a00040200140a00201000160b00160b00201000180c00160b00140a00201000
-160b000e0700160b000c0600180c000e0700281400160b000e0700140a00160b00160b00
-1e0f000e0700201000160b000c0600140a000c06001e0f00ff99320e0700160b00180c00
-201000180c000e07002e1700301800381c003a1d004a25004a25002814002e1700381c00
-2e1700281400201000160b00180c00160b000e0700ffa2442010000603000c0600160b00
-140a00201000160b00160b00180c00140a00160b001e0f00180c00160b00281400060300
-0e07001e0f00ff98300e0700180c000c0600201000140a00201000261300281400140a00
-201000180c002814002814002e17004a25002814002814003a1d00301800381c00301800
-2814002010002010003219003018002e17003a1d003018000e0700281400160b001e0f00
-201000281400060300160b00201000ff952affa142ff9932201000180c00201000020100
-0e0700180c00160b00160b00140a00160b00201000160b00180c000c0600140a00180c00
-180c00160b000603000402000e0700281400160b00160b000402002010000c06000c0600
-1e0f001e0f00180c000e0700201000261300180c001e0f00160b00140a001e0f00140a00
-0402000e07002010000e07000e0700180c000c06002010001e0f00160b00180c00180c00
-160b002010000e07000e0700160b000e0700140a00261300281400201000140a00160b00
-0e07000e07002010002814000603000c06002e1700281400160b00180c000e07000e0700
-160b001e0f000e0700140a000e0700180c000e07001e0f002613001e0f00060300160b00
-180c00160b000e07001e0f00201000180c00201000381c00
-160b00160b00160b00180c00060300140a001e0f00180c00180c00201000180c00140a00
-180c001e0f000e0700180c00160b002010001e0f002010002010001e0f002010001e0f00
-0e07001e0f00140a00180c00281400180c001e0f001e0f002814000e0700201000180c00
-160b00281400160b002e1700180c002e1700281400180c00ffa4481e0f001e0f00180c00
-1e0f00281400180c00301800261300ff9d3affa64c281400321900381c00281400201000
-1e0f00ffa1423219001e0f00180c000e0700160b000e0700261300301800180c000e0700
-1e0f00261300ffa64cffa448281400201000160b00160b00281400160b00281400201000
-ffa448fffcf8ffa040140a002010003018003219003a1d002010004221004a25005e2f00
-7e3f00904800984c00aa5500ac56009e4f00984c00663300542a00402000301800281400
-281400281400180c00140a002010001e0f000e0700180c00180c00060300180c00201000
-0e07000e0700180c001e0f001e0f002010000e07000e07000c0600160b00281400060300
-261300261300160b002010000e0700160b00261300160b000e0700160b00020100201000
-0e07001e0f000e0700060300160b002613002010001e0f003219000e0700160b000c0600
-0603000e0700140a003018000e0700160b00140a00160b00201000160b00281400160b00
-140a002010000e0700140a001e0f001e0f00180c002613001e0f00160b002010000c0600
-160b00160b000c0600261300160b002613000e0700020100160b002010002010001e0f00
-1e0f00201000140a002613001e0f00180c003018000e07002010000e0700160b000e0700
-0e0700180c00160b000e0700140a00160b000e0700160b002814000e0700140a00020100
-0e07002613002613000e0700160b00261300160b00201000160b000e0700160b00160b00
-0603002010000c0600140a002e1700160b00060300281400160b00180c000e0700201000
-180c00160b00201000160b00140a000e0700140a000c0600180c00180c00201000261300
-160b001e0f00201000160b00160b00160b000e0700160b00201000180c000e0700160b00
-281400060300160b00180c000e0700261300180c000e07000c0600160b00160b00140a00
-201000160b002010001e0f003a1d00180c00ff9d3affa54a180c00180c00201000201000
-0c0600ffa244ffa2442010002814002010002010002010000603002010001e0f00201000
-201000261300140a00160b00160b002814000e07000e0700020100060300281400201000
-0e0700180c00160b00201000201000201000160b00261300160b00060300180c00140a00
-0e0700160b000e0700160b00160b00140a00160b00140a00060300ffa244201000180c00
-180c002613002814002010002e17000e0700301800422100321900381c00160b00301800
-160b002814000e07000e07002010000603001e0f00ff9b360e0700180c00201000160b00
-020100160b001e0f00140a00160b00140a000c0600160b002e1700160b00261300160b00
-160b000e0700ffa1421e0f000c0600281400201000261300160b002010000e0700160b00
-2613003018002e1700160b00281400201000201000160b00201000201000261300301800
-281400160b002e1700281400281400281400281400261300261300180c00180c00261300
-1e0f00160b00201000ffa142ffab56160b00160b00140a000e0700140a00180c00140a00
-160b00140a00160b00281400040200160b00140a00160b00020100160b00160b00160b00
-060300060300160b00160b000e07002814000e07002010000e0700140a00160b00281400
-201000261300140a00180c00180c000e0700201000140a001e0f000e0700160b00160b00
-0e0700261300160b000e0700180c000603000603000603001e0f002814001e0f00140a00
-180c00180c00180c00160b001e0f00160b00180c00180c001e0f00160b00201000281400
-180c00201000140a002010000e07002010002010001e0f000c06001e0f001e0f00160b00
-281400160b00160b00281400160b00381c000e0700140a000e0700301800201000201000
-1e0f00160b00160b002613001e0f00160b00140a001e0f00
-160b002010003a1d00160b000e07000e0700201000180c00160b00160b00261300160b00
-201000140a00180c00281400140a002814000e0700160b00201000160b00201000140a00
-140a00261300381c00201000160b00140a000e07001e0f00160b00180c00140a00281400
-281400201000160b002010000e0700160b00060300ffa74e0e0700160b001e0f00281400
-201000201000060300160b001e0f00ffa142ffa4482010002e1700281400201000281400
-ff9b36140a000e0700261300201000281400261300160b002e1700160b002814001e0f00
-ffa64cffaa54301800281400160b00201000261300281400261300140a00160b00160b00
-261300ffab56140a00ffa74eff9d3affa64c261300160b002814003a1d005a2d00422100
-6c36006c36007e3f00984c00984c008a45008844006e3700542a00442200301800321900
-261300180c00160b001e0f001e0f00301800160b000e07001e0f00140a00160b00160b00
-2010000e07000e07002010002010002010002814002010000e0700180c00140a00201000
-160b000603000e0700201000060300180c002010000c0600160b00140a00261300160b00
-1e0f000e07001e0f00160b00160b000e0700281400140a00281400201000060300180c00
-2613000e0700060300281400140a00160b00140a00201000180c00140a002613000e0700
-180c000e0700201000160b00180c001e0f00180c00281400281400180c00281400160b00
-2010000c0600180c002010002010000e0700160b00160b000e07002010002010000c0600
-180c00201000160b00140a000c0600180c00180c00180c001e0f00281400140a00140a00
-0e0700160b00180c00261300160b00201000140a00180c000c0600140a001e0f00020100
-140a001e0f00160b00180c00140a00160b00201000140a000c06002010000e07000e0700
-160b00160b000e0700180c00160b002010002010000e0700160b00140a00201000180c00
-1e0f00160b002613000e0700160b000603000603000c0600180c001e0f00160b00180c00
-160b002010001e0f00140a00160b00180c001e0f001e0f002010002010002010000e0700
-281400160b00180c00180c00201000160b000c06000e0700160b00201000160b00201000
-201000060300201000140a00160b00160b00160b00140a00ffa040ff9e3cff9932ff9e3c
-ff9c38180c00201000180c00160b000402001e0f00180c00201000160b00160b000e0700
-2010000201000e0700281400160b00201000160b00160b00201000180c002010000e0700
-140a00180c00140a000c0600180c000e0700201000160b002814000e07000201000c0600
-0e0700140a000e0700160b00201000160b002613001e0f00160b00ff9d3a0c0600160b00
-281400381c00160b002010002e1700180c002e1700261300281400261300301800201000
-160b00201000261300281400180c000c0600301800ff9428201000180c00160b00261300
-0e0700201000180c00180c000603002814002010003018002010000e0700201000201000
-201000201000160b00ff9c381e0f002010001e0f00201000281400201000160b00180c00
-160b000e0700160b002010001e0f00381c00180c00201000281400201000261300281400
-2814001e0f002814002814002010002010002814000c0600140a000603002010000e0700
-ffa244ffa142ff9e3c2010000e07000e0700201000160b00140a00140a002613000e0700
-160b00160b00180c000e07000c0600160b000e07000c0600140a002613000e0700160b00
-140a000c0600281400180c00060300160b00040200180c00140a000201000e0700140a00
-3a1d00160b00160b002613000e0700160b00281400180c00060300281400160b000e0700
-160b00140a001e0f001e0f002010001e0f000e0700201000261300160b00140a00060300
-180c00060300180c00160b002e1700140a000e07002010000e07000e0700180c00140a00
-201000281400301800140a00261300160b00261300160b00281400160b000c0600180c00
-1e0f00201000180c00140a001e0f00180c00140a00201000160b00160b002814001e0f00
-160b00160b000e07001e0f000c0600261300140a00180c00
-2613002010001e0f00201000402000160b00201000180c001e0f000603001e0f00060300
-2010001e0f00180c00140a00180c00180c00281400180c002010002613001e0f00020100
-2613000e07000c0600201000160b00060300160b002010001e0f001e0f00180c00140a00
-180c00180c00160b00160b00201000160b00201000ff9c380e07001e0f00160b00201000
-201000281400160b00261300281400ffa1420e0700ffa142301800281400301800180c00
-ffa142160b00160b00201000201000180c00140a00281400180c00301800140a00ffa952
-281400201000180c002613002010002e17002e17002814002e1700140a00281400281400
-0c06002814002814002e1700160b003a1d00ffa74effb1622e17002814003018004a2500
-4c2600542a00542a006633006e3700663300663300542a004221003018002e17001e0f00
-160b00160b00140a002e1700ffa4481e0f00201000261300201000180c000c06001e0f00
-1e0f000e07000e07000e0700160b000e07001e0f002010000402001e0f00301800140a00
-201000160b00140a00180c00281400160b00201000281400201000281400160b00160b00
-180c000e07000e07001e0f00180c00201000160b00180c001e0f00140a000e0700160b00
-1e0f00160b00140a00140a00060300140a002814001e0f00201000160b00201000281400
-140a000e07001e0f00160b000e0700160b000e0700020100180c000c0600201000201000
-2010000e07002814001e0f000e0700160b00301800140a00180c00140a00180c00160b00
-201000180c001e0f000c06002010000e0700281400201000160b001e0f000c0600201000
-160b00060300160b00160b00060300180c00281400180c000e0700020100180c00180c00
-2010000e0700281400160b00201000180c001e0f00060300020100281400140a000e0700
-281400140a00281400180c00160b002010002010002e1700140a000603000e0700060300
-140a003219000c0600281400281400301800180c00301800140a000e0700160b00180c00
-180c00180c000e0700201000301800281400160b00160b002613001e0f00140a00261300
-321900201000201000140a000e07000e0700020100201000140a00281400160b000c0600
-1e0f00281400140a00140a00160b00301800180c00160b003018001e0f00180c00160b00
-160b000603001e0f00261300160b00160b00140a00180c002010002e1700160b00180c00
-160b002e17000603000e07000c0600160b00261300160b00160b00160b00160b00ff9932
-ff9e3cff9c38ff9d3affa142ff9c38ff952aff9b36ffa54affa244160b00180c001e0f00
-201000160b00160b00140a00281400201000160b00180c00160b00ffa244160b001e0f00
-160b00140a00160b00160b002010001e0f00281400261300281400201000261300281400
-160b00281400160b00160b00180c00180c00ff9d3a180c002010000e0700160b00140a00
-201000160b00201000160b00160b00180c000e0700201000160b002613000e07000c0600
-1e0f000e0700201000ff9c38ff9932180c00201000140a00201000281400160b00180c00
-160b002010000e07002010002e17002e17002613002e1700201000281400201000201000
-0e07002e1700281400160b00160b00201000160b00201000ff9d3affa142ff9e3cffa74e
-160b00160b002010001e0f000c0600160b00060300040200180c00160b00140a00020100
-160b00160b000e0700060300180c00140a000e0700160b00160b002010000c0600160b00
-261300180c000e07000e0700201000020100060300160b00060300060300060300281400
-180c00160b00140a00180c00160b002613000e0700261300140a000e0700281400160b00
-160b00180c00140a00180c00180c002814002010000603000e0700160b00160b00160b00
-160b00160b001e0f00060300140a002e1700160b00160b00281400160b001e0f00140a00
-0e0700180c002613002010002010002010000c06001e0f000e07000e0700261300201000
-2010001e0f000e07002613000e0700201000160b00180c00180c000603001e0f000e0700
-180c00180c00160b00180c001e0f00060300180c00160b00
-2e1700201000281400020100160b00160b000e0700180c002010000e07000e0700160b00
-201000160b00140a00160b00201000261300281400160b00180c002010001e0f00140a00
-1e0f000e07000e07000e0700140a000e07003018000603000e07002814000c0600201000
-160b00180c00160b00261300160b001e0f00ff9d3a160b001e0f00160b00261300201000
-1e0f00261300281400160b00140a00ffa244160b00ff9e3c2010001e0f00261300160b00
-160b00261300160b00180c002613001e0f00201000140a00180c00261300ffaa54301800
-3018002613003018003018003219002e17003018003219003018002814002814003a1d00
-301800301800261300301800281400281400201000160b00ffa54a2e17003a1d00381c00
-4221004422004a25004422005c2e004422004a2500402000422100301800180c00160b00
-281400160b00201000201000ff99321e0f00140a001e0f000e07001e0f000e0700160b00
-2010000603000e0700281400201000140a002010000e0700180c00180c00201000020100
-261300201000040200140a002010001e0f000e0700060300140a001e0f00140a00060300
-160b000e07001e0f001e0f00160b00180c00180c000e0700180c00301800160b00301800
-2010000e07002e1700160b00201000140a00180c00301800180c00180c00140a00160b00
-2613000c06000e0700180c000e07001e0f000603002010002613000c0600281400160b00
-160b002010001e0f000e07000e07000e07002010000603002010000e07000c0600180c00
-160b00180c000e07003a1d00020100160b00160b002814002814001e0f00180c000c0600
-040200261300140a00201000160b00140a00201000060300180c00180c00261300180c00
-160b000e0700281400301800060300201000140a00140a00180c00201000301800281400
-0e07001e0f00201000180c00180c000e0700160b002010000603000e0700180c00160b00
-2613000e0700140a00160b00201000160b00160b00180c000e07000e07000e0700160b00
-160b00261300180c001e0f00180c00281400160b001e0f000c0600180c00261300201000
-160b00140a00180c00261300180c00160b00140a002010000e07000e0700201000060300
-281400160b000c06002e1700160b00140a000e0700140a00180c000603000e07001e0f00
-2010002e1700160b000e07000e07000e0700201000140a00060300180c00140a00140a00
-160b000c0600201000201000321900160b00140a00201000180c00ff9b36ffa244160b00
-1e0f00281400281400180c002010001e0f002010000c0600180c00ff9b36ffa040261300
-180c000e0700201000180c000e07000e0700160b00381c002010001e0f00ff9e3c1e0f00
-1e0f00281400140a00201000160b002010001e0f00281400281400301800201000180c00
-180c00261300060300060300180c00261300ff99322010000c0600201000160b001e0f00
-0e0700060300160b00180c00160b00160b00201000160b002010002010000e0700180c00
-1e0f00140a00180c00140a00140a00ffa0400e07000e07002010001e0f00160b00201000
-201000140a00180c00180c000603001e0f001e0f001e0f00281400140a003018001e0f00
-2010000e0700261300180c00ffa244ff9d3aff9d3affa1421e0f000c0600180c00140a00
-140a00140a00160b00160b00160b00140a00160b00160b000201002613000e07000c0600
-0e0700160b000402000c06000603000201002010002010000e07000402000e07000e0700
-0e0700140a00261300060300180c000e07001e0f000c0600281400160b00020100060300
-2613000e07001e0f00180c00201000160b000e07000e0700180c000e0700180c001e0f00
-0c06002010000e0700180c000e0700160b00261300180c000e07000c0600140a00140a00
-201000160b00160b00180c00180c000e07001e0f00261300180c00160b00140a00140a00
-180c001e0f00201000180c002e17002010002010002814002e1700140a000e0700201000
-1e0f00020100160b002010001e0f001e0f00180c00160b00201000060300201000201000
-2814002814000e07001e0f00140a002010000e0700201000
-0e07000c0600201000201000140a000201002814001e0f002010000e0700201000160b00
-160b000c0600180c001e0f000e07000e0700140a00160b000e0700180c00140a00140a00
-2010000c0600201000180c00180c00140a00140a001e0f00281400060300281400060300
-180c002010001e0f00020100201000201000ffa952281400160b00201000281400301800
-2613003018001e0f00201000160b00ff9d3a281400ff9932140a00ffa54affab56201000
-140a00180c00160b00160b00281400160b00180c00160b001e0f001e0f00ffb162180c00
-3018002010002e17003219002613002814002814004020003219003018002e1700281400
-301800261300ffb1622e1700381c00201000301800201000180c00ffa74effa64c301800
-3018004020004020003a1d00281400422100381c002814003018002613002814000e0700
-180c00160b00180c00140a00160b001e0f00160b00160b002613002613000e0700160b00
-0e07002e1700281400201000160b00180c00160b00160b00180c00180c000c06001e0f00
-180c00140a00160b00201000180c00261300180c002010000e07001e0f000e0700060300
-2814000402002010003a1d00160b000e0700160b000402002010000e0700261300160b00
-0e07000e07001e0f000e0700180c00160b00180c00140a00180c002010002010000e0700
-180c00140a000603000e07001e0f001e0f000e07000603000c0600180c000e07000e0700
-1e0f00060300180c00180c002010002010000e07000e0700060300060300160b00201000
-160b00140a00180c00160b000c0600281400201000261300201000160b00180c00180c00
-201000160b001e0f002010002814001e0f00201000201000160b00140a00160b00140a00
-201000180c00180c000c06001e0f000e0700201000201000160b000e0700160b00060300
-261300180c00160b00160b002010001e0f00140a001e0f002814000c0600261300180c00
-2010000e0700160b002010001e0f000c06002010002010002814000e0700160b000e0700
-140a00160b002010001e0f000e0700201000160b001e0f000c0600160b00180c00281400
-281400160b00261300140a000402001e0f00160b001e0f001e0f000e0700281400201000
-0e07001e0f00160b000e07001e0f00160b002613000e07002814002010000c0600060300
-201000160b000c06001e0f000e07000603002010000c0600060300160b001e0f001e0f00
-160b00160b00160b00301800160b00201000160b00ffaa54ff99321e0f001e0f00261300
-1e0f002010002e1700281400140a00201000140a00281400140a00281400261300fffcf8
-2814001e0f001e0f00180c00160b00160b00180c000e07002e17002e17001e0f00ffa142
-160b001e0f001e0f00201000301800180c000e07001e0f003a1d002010001e0f00160b00
-140a00160b000e0700261300201000ffa54a2613002814000e07000e07002010000e0700
-0603000e0700160b000e07002e1700180c000e0700160b00160b002010000603002e1700
-0e0700201000160b000c06000e0700140a00ffa244ff9c38ffa142ff9c382e1700060300
-180c000e07002814001e0f000e07000e0700140a00301800261300281400ffa952ff9d3a
-ff9d3affa54affa142ffa0400e0700180c000e07000e07000201000e0700060300160b00
-140a00140a00160b00261300201000160b000603001e0f000c0600020100201000180c00
-0e07000201001e0f00201000160b00020100140a00140a00160b00160b00020100180c00
-180c00140a001e0f00020100060300160b00160b000c06001e0f00180c00180c001e0f00
-160b00160b00160b00140a00201000180c000e07000c06002613000e0700140a00140a00
-0e0700160b00160b00060300180c00201000281400160b000603000e07000402000e0700
-281400201000261300180c000e0700160b002010002010000e0700201000201000140a00
-201000160b00381c002814003018001e0f000e07002814000e0700180c00180c00160b00
-160b001e0f000e0700160b000c0600160b00160b00201000180c00301800261300180c00
-281400160b00180c00301800160b002613000603001e0f00
-0e07001e0f002613000c0600160b001e0f002010002613002613000e0700160b00040200
-0e0700201000180c00201000140a002010000e0700160b00180c00160b00180c00201000
-160b002613001e0f00140a000e07001e0f001e0f002010000e07001e0f00180c000e0700
-2613002010000e0700160b00160b00180c00ff9b36140a001e0f000e07000e0700180c00
-3a1d00201000160b002814001e0f000e0700201000fffcf8ff9b362010000e0700201000
-040200180c00201000281400160b000603002814001e0f00201000281400ffa448261300
-3018003a1d002010003219003a1d003a1d003a1d00542a002814003a1d004422003a1d00
-4422004221003a1d003a1d00381c002010002613001e0f00261300201000301800ffa54a
-3a1d003219003018002010002814002814002010002e1700381c002010002010000e0700
-160b00261300140a00ffa448140a001e0f00160b001e0f000e0700180c00180c000e0700
-160b000e0700180c00140a00140a000e0700160b001e0f001e0f00160b00301800201000
-140a00060300140a00201000261300201000201000160b002010000e07001e0f00160b00
-1e0f00261300160b00160b00160b002010002010001e0f000603001e0f002e17000e0700
-180c000e07000201001e0f00140a00160b00281400160b004221000e07002010000e0700
-0e0700140a00160b00160b002613002010000603000e0700060300180c00160b00160b00
-2613003018000c06001e0f002010002e17000c0600180c00261300201000060300301800
-0e0700060300201000281400140a002010000e0700160b00160b00160b001e0f00180c00
-261300160b001e0f00160b00160b002010001e0f000e0700160b00201000261300201000
-060300180c000603000c0600180c00201000160b000e07002010000201000e07002e1700
-2613000e0700160b00140a00180c001e0f00160b000e0700140a00160b00140a00180c00
-0e0700180c00321900060300261300160b00201000201000140a000603002010000c0600
-0e0700160b00060300160b00160b00261300180c00160b002613002010000e07001e0f00
-160b00060300160b00160b000e0700160b00160b00160b002010002613000e0700160b00
-160b00180c00261300201000140a001e0f001e0f00201000160b00281400160b00160b00
-0c0600201000180c00140a00140a002010002814001e0f00140a00201000160b000e0700
-180c00180c000c0600160b00160b00180c00ffa244261300261300301800180c00201000
-281400180c00180c00160b00261300201000180c00201000201000160b002010000e0700
-ff9932180c00180c00201000040200180c000603000c0600261300140a00201000ffa64c
-0c0600180c00160b001e0f00281400180c002010001e0f000603001e0f00160b00201000
-060300160b00180c00160b000e0700ff9e3c0e0700281400040200140a00160b00201000
-160b00281400140a00160b00160b00140a000c0600301800160b00160b000e07001e0f00
-140a00201000160b002010000603001e0f00140a00201000060300140a00ffa142ff9b36
-ffa74effa448ff9b36ffa142ffa040ff9d3aff9932ff9932ff9b36ffa142180c001e0f00
-0201000e07003018000c0600261300180c00201000160b00160b00140a001e0f00180c00
-0e0700140a00040200201000201000140a00160b00180c000e07001e0f00160b000c0600
-020100160b001e0f00160b000603000e0700140a00281400281400160b000e07000e0700
-160b000e0700160b00060300060300201000140a00020100020100140a000e0700140a00
-160b00160b00140a00020100140a00201000160b00201000060300261300160b00020100
-0e0700201000140a000c06001e0f001e0f00140a00281400180c00261300160b000e0700
-261300281400140a001e0f00160b000e0700201000160b00160b00140a00140a000e0700
-1e0f00160b000201002010001e0f00160b00160b00180c000c06001e0f00160b00160b00
-2814002010000e0700140a000c06002010002814001e0f00180c001e0f00261300140a00
-281400301800060300160b00160b00180c000e0700180c00
-180c00160b00201000281400140a002010002e1700261300180c001e0f00060300201000
-2010000402001e0f001e0f00321900140a002613002010002010002010000e0700201000
-281400140a00140a000e0700180c00261300160b001e0f00180c000e0700140a001e0f00
-160b002e1700180c002010001e0f002e1700ff99322814003018002010002010001e0f00
-301800281400402000180c00160b00261300160b00ff9d3a160b00180c000e07000e0700
-140a00160b00201000160b002010002010001e0f002814002e17000e0700ffa142281400
-2e1700381c00301800381c004a2500542a004422004a25005229005c2e004a2500542a00
-5a2d005229004221004020002814004221004a2500381c000c06003a1d00281400180c00
-ffa952ffaa542e17002814003018001e0f00160b00261300180c00201000160b00140a00
-160b002e1700ff9c38261300201000140a003a1d000e0700180c002010002010000e0700
-160b000e0700180c001e0f003a1d00160b00060300201000201000160b00140a00140a00
-201000160b00261300281400261300180c00301800201000160b00020100160b00180c00
-0e07000e07001e0f00261300261300140a002010002613000e0700180c000e0700160b00
-0e07002814002010002010000e0700180c001e0f002010001e0f00160b00201000140a00
-2814001e0f00160b00140a000c0600140a002814000e0700140a001e0f000e0700160b00
-020100381c00201000160b00160b00140a00160b00140a004221002010002814000c0600
-321900140a00160b00261300281400160b000e07000e0700281400180c00140a001e0f00
-180c00281400261300201000160b00180c00140a000e07002e1700201000040200140a00
-301800261300180c00140a00140a000c0600201000180c000201002613001e0f000c0600
-0e0700261300160b00201000140a00180c00160b00201000201000060300060300160b00
-2814002010000402001e0f00160b001e0f000e0700060300180c00060300180c001e0f00
-140a001e0f000c0600160b000c06000c0600160b00301800140a000603000e0700201000
-160b00060300160b00160b002613000603002814001e0f000e07001e0f000e0700301800
-0e07000e07000e0700160b00160b00160b00201000281400281400160b00261300140a00
-0e07000603000e0700281400201000281400180c000c06000603000e0700160b00201000
-2613002613002010001e0f001e0f00ff9c38160b002010001e0f00201000261300261300
-201000281400381c00301800281400261300261300201000201000140a00201000060300
-060300ffa448281400261300160b00160b002010000c06003a1d00201000160b00201000
-ffa448ff9b361e0f00140a00261300201000160b001e0f00140a000e07002010001e0f00
-201000160b00140a00140a00ff9932160b00160b00180c00160b00201000160b001e0f00
-0e07001e0f00201000201000201000180c00201000201000140a00160b00180c00060300
-0e0700160b001e0f000e0700160b000603000e0700180c00140a00160b00160b000c0600
-1e0f00160b00160b002814000e0700160b00160b00140a00321900180c00180c000c0600
-1e0f002010000e0700201000180c000e0700160b000c0600060300160b00140a000e0700
-0e07000e0700160b00160b000e0700160b00140a000e07000e0700201000160b00201000
-040200140a000e07000201000e0700160b00060300040200140a00140a000e0700060300
-0e07000402002010000e0700180c00060300140a000201000e0700060300180c001e0f00
-160b00201000140a00160b000e0700160b000e0700160b00160b00261300160b00140a00
-0e0700160b001e0f001e0f002010000e07002010000e0700180c00060300201000201000
-0e0700160b00160b00160b00201000201000261300160b00201000160b00160b00160b00
-160b002010002010000e07001e0f000e0700040200180c001e0f000e0700160b00060300
-0e0700160b00160b00140a00160b00140a00201000261300160b00160b00261300261300
-160b000e07002814001e0f00180c003a1d000e0700160b00
-0e07000c06001e0f00020100160b00140a00160b002010000e07002010000e0700281400
-0c0600180c00281400261300201000160b00281400160b001e0f00301800201000160b00
-0e0700160b00180c00201000160b00201000040200140a002010000e07000603002e1700
-140a003a1d002613003018002e1700261300ff9d3a0e07002613002814002e1700321900
-301800281400201000321900281400201000180c00ffaa54160b003018001e0f00140a00
-0e07000e07001e0f000e07002814000603001e0f00180c00201000ffaa541e0f00261300
-2814003a1d003018002814003a1d005229004422006432005e2f005e2f006c3600643200
-5a2d006633006432004a2500542a00ffae5c4422004221002e17003a1d003219003a1d00
-281400381c00ff9c38180c003a1d00321900180c00180c00160b001e0f00160b00201000
-201000140a00140a001e0f00281400261300160b00140a00201000180c00160b00201000
-160b00160b002e1700180c000e07000e0700261300160b001e0f000c0600060300160b00
-201000160b001e0f00140a001e0f00020100160b000e0700201000180c00160b000e0700
-201000160b002613001e0f00180c00040200160b000603002010000e0700201000201000
-0e0700020100180c00160b00261300201000160b000e07002e1700140a000e0700060300
-140a00060300201000020100201000201000160b00140a00140a00180c002814000e0700
-201000160b00180c001e0f00020100180c00180c00160b00522900201000020100140a00
-180c00201000160b00201000281400201000160b000e0700160b00261300160b000e0700
-160b00140a00160b00140a00140a00201000201000201000201000140a00201000281400
-281400060300261300140a00180c00160b00140a002814000603000603000e0700180c00
-140a002010000c06000c06001e0f000603000c06000e0700261300160b00201000180c00
-0402000e07002010002814000c06000e0700160b00160b00160b00140a00160b00261300
-0e0700140a00180c000e0700180c00160b000c06002e17002010000e07001e0f00160b00
-0e0700160b00301800180c001e0f00201000140a00160b00160b00201000140a00180c00
-160b00160b00160b00201000160b00281400180c00180c002e17001e0f00261300281400
-140a00160b00180c000e0700140a001e0f002613000e07001e0f00261300201000180c00
-2613001e0f00160b00180c00fffcf8281400160b00381c00180c00180c001e0f00301800
-201000281400381c00281400301800261300281400160b00060300160b00160b00261300
-1e0f00201000ff9c380c0600140a003018002e17000e07002814000e0700201000180c00
-261300060300ffa4480603002010001e0f00281400160b001e0f000e0700140a00140a00
-2613000e0700ffa244ff99320e0700301800140a00160b00160b000402000e0700180c00
-201000020100201000180c002010001e0f00160b00180c002010001e0f00160b000e0700
-160b002010002010002010000c06000e0700160b002814002814000e0700281400281400
-160b00060300180c00261300160b00201000180c002814003a1d00180c00160b00180c00
-060300160b00020100201000020100060300160b002010000c0600160b00160b00140a00
-201000201000160b00201000180c001e0f000e0700160b000c06002010000e07000e0700
-140a00180c000201000e07001e0f00140a001e0f00140a000e07000c06000c06000e0700
-0603002010000c0600160b00160b000e0700160b00160b00060300160b000e07000e0700
-0e0700201000180c00060300180c002814000e07001e0f002010001e0f002010000e0700
-060300020100160b000e0700140a002613002010001e0f00201000180c000e0700180c00
-2010000e0700140a002010000603000e0700201000160b001e0f00060300160b000e0700
-2010000e07000603002010000603000e0700160b000c0600160b00201000261300180c00
-180c00381c00201000160b00261300040200201000201000140a00160b001e0f00180c00
-1e0f00281400160b00160b00060300140a00180c00261300
-160b00180c002010001e0f00201000140a00201000140a000c0600160b000e0700261300
-0e0700180c00201000060300201000060300160b00180c00160b00261300160b00160b00
-2010001e0f00201000281400180c00140a002010002010002613002613000603000e0700
-060300140a00201000160b00140a00180c00ff99322613000e0700160b00180c00201000
-3018003018001e0f001e0f00281400180c00201000ff9428160b00160b00201000261300
-261300180c001e0f00261300281400160b00140a00140a00160b00281400ff9932180c00
-180c003a1d003a1d003a1d004221004221005a2d00542a006e3700763b00864300703800
-783c00864300763b00763b006e37005e2f00ffb8704a2500643200402000281400201000
-160b00201000201000ffa64c180c002e1700281400281400180c002010001e0f00ff9c38
-201000180c001e0f00140a00160b002010001e0f00020100140a00140a00180c00201000
-160b000c0600140a00281400160b00140a00140a00180c001e0f000e0700160b00261300
-160b000c0600160b00160b00060300140a00160b00160b000603002814002613000c0600
-2e1700261300180c00180c000603000e07002814002010000e0700201000140a000e0700
-2010002010002010000e0700140a00180c002010001e0f00201000201000180c00180c00
-140a00201000020100040200180c00201000261300180c00281400160b00180c00281400
-201000160b000e0700201000160b00201000201000140a00201000160b001e0f00261300
-261300180c002814001e0f00180c00201000281400180c003018000c0600160b00160b00
-1e0f002814000e0700160b002010000e07000c0600281400160b00160b00281400060300
-160b00301800201000160b002814000e0700140a00180c002010001e0f000e0700281400
-0e07001e0f00201000180c001e0f00160b002010000e07002010000e07002814000c0600
-180c002814000e07000e0700140a00381c00020100201000160b00060300180c00281400
-2e17002e17000603001e0f00201000160b002010000e0700160b00201000160b00140a00
-0201000c0600201000180c00140a002010001e0f000e07002e1700060300160b001e0f00
-2814000e0700040200160b00060300281400180c002814002010002613001e0f00201000
-2613000e07000c06000c0600160b00140a000e0700160b00180c00160b00180c000e0700
-060300180c00180c00ffa64c0e0700140a001e0f001e0f000e07002e1700060300201000
-281400321900301800281400301800321900201000201000281400301800261300201000
-180c00180c00ffa142180c000603000e0700180c00160b00160b001e0f00281400261300
-160b00201000140a00ffa244ffa244160b001e0f00160b00160b00180c00160b000c0600
-ff9e3cff9932261300140a00160b00160b001e0f002814002010000e0700160b00160b00
-201000201000140a00261300140a00160b00160b001e0f002814002010001e0f00261300
-2010001e0f00060300140a00180c00160b000c0600020100160b000c0600160b000e0700
-040200140a00160b00180c000e07002613000e0700180c00180c002010002010001e0f00
-180c000e07000e07001e0f000c06000603000e0700160b00180c00160b00060300140a00
-160b000c0600140a00160b00180c002814000e07000e0700160b002010000e07001e0f00
-0e0700060300160b000e0700140a00060300261300180c00060300160b00040200140a00
-020100180c001e0f00180c00180c000e07001e0f000c0600180c000c0600281400201000
-060300180c000c0600180c00160b00180c002814000e0700160b000e0700020100160b00
-0c0600140a000402001e0f00020100201000140a00160b000c0600281400180c000c0600
-040200180c00180c00180c00140a00281400140a000e0700180c001e0f001e0f000e0700
-2e1700140a00321900180c001e0f002613000e07000e0700160b002613001e0f000c0600
-180c00180c00180c00060300160b002010000e07000e0700160b00140a000e0700060300
-1e0f001e0f002010001e0f002814002814001e0f00201000
-1e0f00261300060300160b00160b001e0f002613002010001e0f00281400160b00160b00
-160b00160b00140a00160b000e07002e1700180c00180c002814001e0f001e0f00160b00
-281400160b00201000201000261300140a00201000160b001e0f003a1d000e07000e0700
-180c00140a00020100160b00180c00281400ffa1420e07001e0f003018002010001e0f00
-281400201000301800261300160b00281400261300ff9c38160b00201000160b000e0700
-0e07000e0700160b00160b00140a002e17001e0f00160b000c0600160b00ffa54a281400
-2e17003a1d003a1d003018005a2d004a25005a2d006e37007e3f00904800aa5500ac5600
-aa5500b25900b45a009a4d009a4d006e3700763b005c2e00ffc080ffbf7e3a1d00201000
-2e17002613003a1d00201000ffa64c0e0700180c00020100201000160b00ff9b36180c00
-180c00160b00160b00160b00160b00180c000e07000e07001e0f00261300180c00160b00
-180c000e0700180c002814002010000e07002613000e0700180c000c0600180c000e0700
-201000281400160b00201000201000160b002613002814000e07000e0700281400160b00
-160b00160b00140a00201000261300160b00160b000e0700180c000e07002613000e0700
-261300160b00160b00160b00140a00180c00060300160b00040200140a00160b00020100
-301800180c00261300160b00160b001e0f000e0700281400140a00140a00201000201000
-1e0f00201000160b000e0700201000140a002010001e0f000e0700160b00180c001e0f00
-281400201000160b00020100140a000e0700140a00180c00140a002814000e0700160b00
-180c002814002e17001e0f00301800301800201000180c002814000603001e0f00201000
-301800201000321900140a002814001e0f00140a000c0600180c00160b00180c00160b00
-180c000603000c0600160b002010002613001e0f00060300060300180c000e0700201000
-261300140a00040200160b000603001e0f001e0f00140a000e0700281400261300201000
-0e0700140a000e07001e0f002010002e1700160b00180c00060300201000201000201000
-0c06002814000e0700140a00160b00160b00140a001e0f00140a00140a001e0f00040200
-160b00180c00140a001e0f00201000281400281400180c00040200140a00140a00180c00
-180c00140a00160b00160b000e0700060300160b001e0f002814000e0700301800140a00
-281400180c00ffa54a3a1d000e07002e17001e0f00201000301800160b002e1700281400
-381c00381c00301800261300301800281400261300201000140a00160b00160b00160b00
-180c00160b00ffa0400e07000c06000e0700160b000e0700060300160b002613000e0700
-1e0f00281400281400160b00180c00ff9932ffa040ff9e3cffa54affa64cffa142ff9c38
-0e07002e1700180c00140a00140a000c06000e0700180c002010000c06000e0700060300
-0e07002010001e0f00040200180c00180c002613000402000e0700040200140a00160b00
-0e07001e0f000e0700140a002613000c06002613002010001e0f000e07000e0700160b00
-180c000201000e07002814001e0f001e0f001e0f002e17002613002010003a1d000e0700
-160b00160b001e0f00160b000c0600160b00180c00180c00160b00180c00281400281400
-160b00160b00160b000e0700040200201000060300140a000603001e0f000c0600281400
-140a000c0600140a00060300160b00140a00180c002010000e07000402000e0700160b00
-321900160b00180c001e0f00281400180c001e0f00060300201000ff9b36ffa54affa448
-ffa448ff9c38160b001e0f000c06001e0f00180c00201000160b00180c001e0f00281400
-201000160b00160b000c06000603000e07000e07000e0700281400381c00261300201000
-0603002814002814000e07001e0f00160b000201001e0f000e0700060300140a00281400
-160b00261300201000140a00160b002814001e0f00160b000c06000e07000e07000c0600
-0e0700180c001e0f00040200180c000e07000e0700180c00160b00160b002e1700201000
-201000160b001e0f00160b002613001e0f00201000160b00
-160b00060300140a001e0f002010001e0f00261300140a00160b000603000603000e0700
-180c00201000160b001e0f002010002010001e0f00261300180c00160b00201000281400
-160b00180c001e0f00180c00201000160b00180c00060300160b00180c00180c00160b00
-160b00160b002613000e07000e0700180c00ffa244160b00201000281400180c00281400
-2613002010002814000e07002010002010001e0f00ff9932160b002010001e0f00180c00
-0e07000603002010000e0700160b00201000281400281400140a00261300ffa54a261300
-1e0f00281400422100301800442200422100522900703800904800ac5600d06800de6f00
-f07800e87400e47200ec7600de6f00ec7600aa55008844005a2d004c2600ffb3663a1d00
-281400ffa142ffab562814001e0f00ffaa54ffa244ff9932261300160b000c0600201000
-160b00160b001e0f00201000180c00160b002010000e0700201000160b000e07000e0700
-201000201000160b00180c00281400160b000e0700160b00201000180c002e1700140a00
-180c001e0f001e0f000e07002814003018000c0600281400180c002e17002010001e0f00
-160b000c0600140a00140a001e0f00281400180c002814000201000e07000e0700201000
-040200160b00180c00201000140a000c06000e07002010000c06002010000e0700160b00
-201000321900180c001e0f002814002010002e1700180c00180c00040200160b00180c00
-201000301800180c001e0f00060300160b00301800201000281400160b00201000160b00
-2010002814000603000e07002613002010002613002613000c06001e0f00140a00180c00
-0e0700140a001e0f00160b002613002814000e0700180c00261300261300160b00281400
-381c00201000261300281400060300160b00261300180c00160b00201000160b000e0700
-0e0700281400180c002010003018002e17001e0f000c0600160b00201000160b00261300
-0e0700060300140a00180c00160b00060300301800201000180c000e0700261300060300
-2613002613000e0700180c00060300201000160b00160b00180c001e0f002010000c0600
-201000140a002010001e0f00160b002814002814001e0f002e17001e0f001e0f00261300
-160b000603001e0f00160b00201000160b00201000140a002010003219001e0f00160b00
-160b00160b00180c002613000e07000e0700261300301800160b00140a00160b00281400
-140a00180c00ff9c382613002010002613003219002814001e0f00381c002010002e1700
-3219002e17003a1d003a1d003a1d002e17004020003a1d00301800160b002e17001e0f00
-180c00201000ffa142160b00180c00140a001e0f002613002010001e0f00160b00140a00
-140a00201000261300180c001e0f000e0700160b00160b000e07001e0f001e0f00060300
-0e0700020100180c000e0700261300060300180c000e0700261300140a002010000e0700
-180c00180c000e07000603001e0f001e0f001e0f00140a00160b00140a00140a00180c00
-140a00160b000e07000c0600180c00180c00160b001e0f00160b00201000180c001e0f00
-1e0f00180c00160b000e0700160b00160b00180c001e0f00180c00180c000e0700201000
-020100160b002010000c06002814001e0f00261300160b000603000e0700261300160b00
-0e0700160b000603000e0700180c000e0700180c00160b00160b002010000e07000e0700
-2814000c06001e0f00160b00140a000c0600180c003018000e0700180c00201000261300
-0e07000e0700140a000c06001e0f00140a00140a00ffa64cffa142180c00140a00140a00
-180c000e0700ffa448ff9e3c2e17000c0600060300140a000e0700301800140a00160b00
-2010001e0f00180c00140a00160b000c0600140a001e0f00201000201000201000160b00
-140a00060300160b00060300281400140a00201000160b00160b002814000e0700160b00
-201000140a001e0f00160b00201000180c00140a000e0700201000180c00160b001e0f00
-160b000e07000e0700201000201000201000281400140a00140a000e0700160b00160b00
-2814001e0f001e0f00180c00180c002010001e0f001e0f00
-1e0f00180c000e0700180c00160b00180c000e07000e07002814000e07000e0700020100
-160b000603002814002010002613001e0f00281400160b00201000180c00201000201000
-201000140a00140a000201002814002010002010000e07000e07002e1700160b00281400
-180c00261300180c003018000e0700201000ffa448201000160b00180c00180c00201000
-140a001e0f00180c002010000e0700180c00ff9932201000160b00180c001e0f00160b00
-2814000e0700140a002010000603002010002010000e0700201000281400ffa040160b00
-3018003018002613003018004221004020004a25006e3700984c00b45a00c46200f67b00
-ff952affa54affad5affaa54ffa64cff952af27900b259008a45007e3f005c2e004a2500
-4221003219002814002613001e0f001e0f00ffa244201000160b00160b00201000261300
-1e0f00040200160b00140a00180c00180c000e0700160b00180c001e0f002613001e0f00
-201000201000020100281400201000140a00160b00281400201000180c002010000e0700
-321900160b00180c00201000060300180c00160b00180c00180c00160b000c0600160b00
-140a00180c000603002010001e0f00261300140a00261300201000160b00160b00180c00
-180c00140a00060300180c001e0f00060300201000020100261300201000160b00140a00
-281400140a00160b001e0f00180c00140a00201000301800160b000e0700160b00180c00
-160b00060300160b00160b00201000060300281400261300201000160b00261300261300
-160b00160b00180c001e0f00160b002814001e0f00160b00140a00160b00201000060300
-160b00201000140a00281400140a000c06000e0700180c001e0f000e07000c06000e0700
-160b00281400180c000c0600180c00140a000e0700201000160b00160b000e0700160b00
-0c0600180c001e0f00140a00180c001e0f002010000603000c06000e07000603001e0f00
-060300160b00140a001e0f000402001e0f000e07000e0700160b000e0700180c00281400
-160b000e0700201000180c00201000201000160b002814000e0700281400281400160b00
-020100160b00160b001e0f000e07000e0700140a00160b00201000281400140a00140a00
-281400180c001e0f00140a002613000e07001e0f00160b000e07000e07001e0f003a1d00
-2010001e0f00201000201000140a00160b00180c002010000e07001e0f003219000e0700
-160b00ffa2442613002814001e0f00261300261300160b00201000381c00281400301800
-3a1d003219004020002e17002010002e1700201000201000180c003018000e0700160b00
-140a00321900ff9932160b00160b00201000180c000e07000e07001e0f00140a00201000
-261300160b00160b00281400140a00301800180c00301800160b00201000301800201000
-1e0f00160b001e0f00160b000e07002e1700180c000e0700160b00160b00160b000c0600
-160b00160b001e0f002613001e0f001e0f000201001e0f000603000c0600180c00020100
-0603000e07000e07000e0700140a000e07000c06002e1700201000180c000e07000e0700
-1e0f00140a00140a000c06000c0600160b00261300060300160b002010002814000e0700
-2814000e07002613002e17000e07002010000e07001e0f00201000261300160b000c0600
-0e0700301800060300140a00160b000e0700140a00140a00180c00060300060300140a00
-0e07001e0f000e0700160b000c06002e17000c06000e0700140a00140a00160b00201000
-180c00160b001e0f000c0600140a000c0600ffaa54140a00020100160b000e0700201000
-3018001e0f00160b00160b00ff9d3aff9d3a2613000e0700160b00160b00020100160b00
-1e0f00140a00160b00201000180c00160b000c06000c0600201000261300201000180c00
-140a000e0700201000201000160b001e0f00281400201000160b00160b00160b00140a00
-3a1d000c06000e07000e07001e0f00160b000e07000e0700180c00180c00201000160b00
-160b001e0f00201000261300201000281400060300160b00180c00160b00140a00180c00
-180c00160b00201000160b00160b001e0f002613001e0f00
-1e0f000e07002010000c0600140a001e0f000603002010000e07000e0700160b00201000
-2613001e0f00160b00180c00140a00160b001e0f00140a00301800160b00201000160b00
-180c00180c00180c002814001e0f00160b00160b000e0700201000140a00180c00160b00
-160b001e0f00060300301800261300201000261300ffa040140a00160b001e0f00281400
-2613001e0f00201000140a00160b00261300ff9c38160b00160b00281400160b000c0600
-160b00140a002814001e0f00140a00160b001e0f001e0f00160b00160b00140a00ffa64c
-201000160b002e17002e17003018004221005c2e00643200864300a25100f67b00ff8b16
-ffa952ffc890ffe9d2fffcf8fffcf8fff3e6ffab56ff9830aa55009c4e005c2e005c2e00
-4c2600321900281400160b003a1d00160b00ffa54a2010001e0f000603001e0f00160b00
-201000060300180c00140a000e0700140a002010003018000e07000e07000603000c0600
-201000381c000e0700160b001e0f002010000c06000402001e0f00040200160b001e0f00
-140a00201000160b00261300140a00140a000e07002010002010001e0f00180c000e0700
-160b00160b00180c00201000201000180c002010001e0f000c06002010002613002e1700
-140a000e07002010002613000e0700060300160b00261300160b00160b00321900180c00
-2010000e0700201000140a00301800060300261300160b00160b001e0f000c0600201000
-140a00180c00281400160b00180c00160b00301800261300160b00180c00160b00201000
-2814002010002010000e0700201000281400201000180c000603001e0f000e0700201000
-180c00180c00201000160b00160b001e0f00261300160b00180c000e0700261300281400
-1e0f00140a00301800301800201000140a00180c000e0700160b00180c00060300160b00
-160b00160b00160b00180c00160b00201000060300140a000201002010000e0700140a00
-180c00160b00201000160b00160b000e07000e0700160b00140a00201000281400160b00
-0c0600160b00180c00160b00180c00160b000e07001e0f000e07001e0f001e0f00160b00
-201000180c00160b00140a00140a001e0f00160b00180c00160b00160b001e0f001e0f00
-1e0f00301800201000261300180c001e0f000e0700281400060300180c00180c00160b00
-160b00160b00201000040200201000180c00140a00180c00160b00201000140a00201000
-201000ff9b36160b002613002010002e1700180c00160b004a25002814003a1d00301800
-381c00542a003a1d002e17003018003018003a1d003018002814004020002814002e1700
-281400ffa040180c000e07000e07000e0700201000180c000e07001e0f002010000e0700
-180c001e0f001e0f00160b000e0700180c00160b00160b001e0f002814001e0f00140a00
-281400180c00140a00180c00160b00160b002814000e0700060300060300281400180c00
-201000180c00180c00140a000e0700281400160b002e1700020100281400140a00180c00
-140a00160b00201000281400160b00180c000e0700180c00160b00180c000e07001e0f00
-180c000e0700180c001e0f000e0700060300160b001e0f002010000c06000e07000e0700
-140a00180c000e0700160b000e07000402000e0700180c000e0700160b000c0600201000
-0e07002613000e0700180c00160b00140a001e0f00160b002010000e0700180c00060300
-0e0700160b00160b000c06000e07001e0f000e0700160b00060300140a000e07000c0600
-160b00160b00160b00160b000c0600ffa64c160b00140a00160b00201000201000422100
-321900160b002613003018002010001e0f00ffab56160b00281400180c000e0700160b00
-140a00201000160b00201000160b00160b000c06000c0600160b000e0700140a000e0700
-1e0f002e1700160b000e07000e0700201000180c000c0600160b002814000e07000c0600
-2010000c0600261300201000261300180c000e07001e0f00060300060300060300201000
-060300301800180c00140a00201000140a002613000c0600160b003018000e0700160b00
-0e0700160b000603002010001e0f00160b00201000060300
-160b002010000603000e0700140a000e0700180c00160b001e0f000e07000e0700140a00
-180c002e1700060300140a000e0700160b001e0f00281400140a00160b000e0700060300
-0e07000603002613000e07002814000c0600140a00201000201000160b001e0f00261300
-160b000e07002010002010002010000e0700160b00ffa54a140a00180c00160b00160b00
-2e1700160b000e0700140a002e1700ffa244180c002e17000c06001e0f00160b00201000
-2613000e07000e07000e0700140a000e07000c0600160b00261300281400160b00ff9932
-180c002613002814003018002814004422004a25005e2f00763b00984c00e07000ff8c18
-ffb870fff4e8fffcf8fffcf8fffcf8fffcf8fffcf8ffc488ec7600a251007e3f00542a00
-4c26004c26003219002814002e17003018001e0f00ff9e3c201000180c00201000180c00
-1e0f00160b000e0700140a00140a002010001e0f000c06001e0f00020100201000020100
-2814000e07000e07002010000c06001e0f00160b000e07000e07003018001e0f00160b00
-2010000e0700060300160b00160b00261300281400140a00160b00060300201000180c00
-0e07002010000603002814000c0600140a00060300180c00160b002613001e0f00140a00
-0e07002613000e0700160b000e0700060300261300160b002010001e0f001e0f000c0600
-0e0700201000281400261300160b000402000e07001e0f001e0f00281400160b00140a00
-160b002010002814002814000e07001e0f002010002613000e0700140a000c0600160b00
-020100160b00160b002010002010001e0f000e0700160b000201000e0700160b000e0700
-201000160b002010002010001e0f000603000c06000c0600180c00160b000e0700160b00
-301800281400201000140a000c0600281400201000160b00180c000e0700180c00180c00
-0e0700201000160b00180c00180c00180c000e0700180c000e0700160b00160b00060300
-0e0700140a002010000e0700201000261300160b00160b002010000e0700180c00201000
-160b002010002010002010001e0f000603000e0700140a00160b000201002613001e0f00
-201000160b00140a00180c000e0700140a00201000180c002010000e07002010000e0700
-1e0f00160b00060300201000180c00160b00160b001e0f00160b00160b00180c00160b00
-140a00261300281400160b00201000140a00281400201000160b000c0600160b000e0700
-160b00ff9e3c160b002613002010002814002814002e17003018002814003a1d00381c00
-542a005229002e1700261300321900160b00201000160b003a1d00281400160b00140a00
-281400ff9932180c001e0f00261300201000180c000e0700180c00160b00140a000e0700
-0e0700060300281400140a00160b00160b000e07002e1700160b00160b00140a00201000
-2010003219000e0700160b00160b00301800180c000e0700160b000e0700160b00060300
-0e0700060300160b00201000160b00180c000e0700160b002814000e0700201000160b00
-180c000e0700140a00261300180c00160b000e0700201000140a000e0700060300281400
-261300180c00160b00180c002010000e07000e0700140a002814001e0f002010001e0f00
-2010000e07001e0f000603002010002613000603001e0f001e0f000e0700160b00281400
-1e0f00180c00160b00060300160b000603000e07002e1700201000160b000e07000e0700
-1e0f002010002010002010000e07002010002613000e07000603002e1700201000201000
-160b001e0f00140a00160b00fffcf8180c000e0700261300160b000e0700060300301800
-3219002814001e0f002010000e0700160b00160b00fffcf8160b00281400160b00201000
-160b00160b00160b002010000e07000e0700060300180c00160b001e0f00140a00180c00
-2e17000e0700140a000e0700140a00160b00160b001e0f00160b001e0f00180c00261300
-2010000e0700201000281400160b001e0f00160b002010002814001e0f001e0f00201000
-160b00140a00201000140a000603002010000201000e0700180c004221003a1d00201000
-160b000e0700140a00160b00261300180c00281400301800
-0e0700140a00140a000c0600160b000c06000c0600180c000e07000e07000c0600140a00
-140a00180c002814000e07000e0700060300160b00201000140a00180c00180c00060300
-140a001e0f001e0f00180c00160b00301800180c00281400140a000603001e0f00201000
-180c00160b00180c000e0700160b001e0f00201000281400ffa244261300140a001e0f00
-060300301800160b00180c00ff9e3cfffcf8ff9932ff9c38ff9d3affa448160b00281400
-180c002010000e0700160b00180c000e07000201000603002814004020000e0700301800
-ff9b362010002814002e17002814003018003219005e2f006432007e3f00c46200ff8b16
-ffc182fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffe6ccffa040ca6500b65b007e3f00
-4c26004020003018003a1d00281400301800281400201000ffa74e301800201000180c00
-2814000c06000e0700381c00160b00201000160b000e0700140a00160b001e0f00060300
-1e0f00180c002613000c06002010000c0600160b00060300201000060300201000160b00
-180c000e07002010002e1700160b00160b00160b00281400180c000c0600060300281400
-140a00140a00060300180c000e07000603000201000e07000e0700261300160b00160b00
-140a00160b002010002814001e0f000e0700201000201000201000160b00160b00201000
-140a00180c00040200180c00180c000e07001e0f001e0f002010002e1700201000140a00
-1e0f000c0600140a00281400261300180c00160b00040200160b000e0700201000160b00
-2010002010003018001e0f00020100140a00281400281400160b00160b00040200281400
-140a00281400060300201000201000160b001e0f00140a00160b00160b00201000180c00
-180c00140a000c0600201000140a00160b00160b00180c00180c000e0700160b00160b00
-201000201000201000060300281400140a00140a002814000e0700160b00281400160b00
-160b00160b00281400060300160b00180c001e0f000e07000c0600180c00201000140a00
-0e0700201000160b001e0f00180c000603000c06002814002e1700160b00060300301800
-020100201000180c00160b000e07002010001e0f001e0f00160b00160b000e0700160b00
-140a00281400160b00201000201000261300140a00140a001e0f00281400321900281400
-160b002613000603002e1700160b001e0f001e0f00160b00180c00180c000e07001e0f00
-140a00ffa54a281400160b002010002010002010002613002e1700201000281400402000
-281400402000422100381c00160b00261300281400160b00301800281400160b00180c00
-ff9932160b00160b00281400160b000e07002613001e0f00281400261300140a00160b00
-0e07002613003219001e0f00140a000e07000c0600160b000c06002613002e17001e0f00
-2010002613001e0f000c06002814002010000e0700301800180c00201000180c00060300
-0e0700201000180c00281400160b00281400180c00160b00201000060300140a000e0700
-140a001e0f001e0f002010001e0f001e0f00160b00160b003018000e0700180c001e0f00
-160b002010000e0700140a002814002814001e0f00160b002010000e0700201000060300
-0e0700180c001e0f000e0700281400160b00160b000c0600020100180c000e0700201000
-201000180c002010000e07002010001e0f00140a000c0600160b00040200140a00180c00
-160b000e0700180c000e0700201000201000060300160b00160b000603001e0f00160b00
-180c00180c000c0600ff9d3a140a00060300180c000e07002814001e0f00180c00261300
-2814001e0f002010002010002010002e17002010002e1700ff9932261300160b00281400
-160b00160b001e0f00201000160b00180c002010001e0f00281400160b00261300201000
-261300160b00160b00160b00281400201000060300160b00140a00160b00180c00201000
-1e0f00160b00180c000e0700140a000603000e0700160b00261300180c001e0f00201000
-2010001e0f000e0700180c00201000160b002010001e0f002010000c06002613000c0600
-160b00160b00160b00160b00281400160b00201000261300
-201000060300140a00180c002010000e0700160b00160b000e0700160b002010000e0700
-040200160b00060300140a00261300180c00020100160b00201000160b00160b00160b00
-140a00160b00201000281400140a00160b000c06000c06002814001e0f000e0700140a00
-2613000e07001e0f00160b002010000c06001e0f00261300ffa1420e0700160b000c0600
-180c00140a00180c00ffa64cff9e3c0e0700160b001e0f00160b00261300ffa952201000
-2613002010001e0f00160b00281400160b00180c00160b000e07000e07000e0700160b00
-ff9c38201000281400160b002e1700301800381c004a25004c2600703800aa5500de6f00
-ffaa54fff4e8fffcf8fffcf8fffcf8fffcf8fffcf8fffaf4ffaf5ef27900b25900864300
-4a2500542a00381c00321900261300281400160b00160b00ffa142160b001e0f00160b00
-0e0700180c000e0700160b00140a00040200160b00020100180c00060300160b00201000
-160b00160b00180c000603000e07002613000e07001e0f000c0600180c000e07000e0700
-160b00180c001e0f00140a00060300201000140a00180c000e0700281400160b000e0700
-0e0700160b00060300160b00180c00060300180c00160b00160b001e0f00180c001e0f00
-0201000e0700160b002010000e0700281400180c00060300180c00160b00180c00201000
-1e0f000e0700140a000402001e0f001e0f001e0f00180c00140a00140a00160b00140a00
-201000180c00160b00140a00160b00160b00180c00180c002814002613000e0700201000
-201000160b00160b002010000e0700160b002010000e07000c06000e0700140a00281400
-0c0600160b00160b002010002010003018000e0700160b00201000201000140a00201000
-201000180c00261300160b001e0f00281400160b00281400140a00201000261300060300
-0e0700160b000e0700160b00201000180c000e0700160b00180c001e0f00160b00201000
-160b00060300261300140a00180c001e0f00160b00160b000e0700160b00201000201000
-0201001e0f00381c00201000160b002814002010001e0f00060300160b00180c00261300
-0e07000c06001e0f000e07002e1700281400160b00160b00180c00201000160b00201000
-1e0f001e0f001e0f00160b001e0f00160b00201000281400261300201000160b00301800
-281400180c00160b00160b000c06000e0700160b00180c00201000160b00201000281400
-0e0700ff9428180c002e1700180c002010002814000e07002814002010002814003a1d00
-3a1d00381c00301800301800402000201000180c00140a00140a00160b00160b00160b00
-ff9c38060300180c001e0f00201000060300140a003a1d000e0700160b00160b00180c00
-0e0700301800160b000402002010001e0f002010000e07000201000e0700160b00301800
-1e0f001e0f00402000160b000e07000e0700160b000e0700180c000e07000e0700060300
-020100160b00160b001e0f001e0f00180c002e1700160b001e0f00180c002010000e0700
-2613000c0600060300261300060300140a002613001e0f00160b000e07002814001e0f00
-160b001e0f00160b00201000160b002613002814000e0700180c00180c00201000140a00
-140a00180c00180c00140a001e0f001e0f000603000603002010002010002010000e0700
-180c00261300140a00160b00180c002814000e0700180c00180c00180c00180c00160b00
-0e0700180c000603002814000e07000e0700160b00180c00261300160b00160b00180c00
-160b00160b00ffa54aff9e3cff9e3c281400ffa54a321900140a00281400180c00180c00
-2814002814002613003018002e1700160b00281400160b00201000ffa142201000160b00
-201000160b000e0700180c001e0f000e07002814002e17002010000e0700160b00201000
-140a00201000261300160b002814002010001e0f003018001e0f002613000e0700160b00
-201000201000160b00281400140a000e0700160b00160b00140a001e0f00160b001e0f00
-2010000e0700060300201000180c00180c000e07001e0f00201000281400180c00160b00
-140a001e0f00140a00140a00160b00160b000e07003a1d00
-261300180c001e0f001e0f00140a00180c000e0700140a00201000201000140a00020100
-160b002814000c06001e0f001e0f00160b00281400180c00140a00201000160b001e0f00
-160b000c06002613000c06000e0700160b00140a00281400140a00160b00180c00201000
-0c06000c06000e0700160b001e0f00160b00201000201000281400ff9c38ff99321e0f00
-160b00261300fffcf8ff9b363018000e07002814002010001e0f00160b000e0700ff9b36
-160b000e0700160b00040200160b00160b00160b001e0f00201000060300160b00160b00
-140a00ffa64c201000281400201000381c002814004422004a25005c2e00864300ca6500
-ff8e1cffc78efffcf8fffcf8fffcf8fffcf8fffcf8ffebd6ffbb76ff8e1cc46200a25100
-5c2e00542a00301800140a00281400201000281400281400321900ff9d3a2613000e0700
-201000180c00281400140a001e0f001e0f002613000e0700180c00140a002010000e0700
-0e0700160b001e0f001e0f00160b002e1700160b000c0600160b00160b00160b000c0600
-0e0700160b00261300160b00140a002814000e0700140a000e07001e0f00160b00281400
-160b002010001e0f000e0700160b00160b001e0f000e0700201000140a00160b00201000
-2814000c0600060300040200201000160b00140a001e0f00160b000e0700160b00040200
-160b00281400160b000e0700281400160b00140a000e07000e07001e0f00180c00060300
-2010000e07000e0700160b000c06002814002010000e0700180c00180c00201000160b00
-140a00060300281400160b001e0f002613002613002e17000e0700140a00281400140a00
-160b002010000c06001e0f000e07001e0f000e0700160b000e07000e0700281400201000
-0c06002010001e0f000e0700140a000e0700261300281400160b00160b00160b00160b00
-020100201000160b00201000180c00140a001e0f00160b00201000060300180c00201000
-160b002814002814000e07001e0f00180c00160b001e0f00180c00160b00201000180c00
-140a00160b00180c00201000201000180c00160b00261300201000201000160b00180c00
-0e0700140a00180c002010002613001e0f00201000160b00180c00140a00160b00321900
-0e07002613000e07001e0f003018002010002010001e0f004221002e17001e0f00281400
-301800160b001e0f00201000060300160b00160b000e0700160b00160b002010000e0700
-1e0f00ff9e3c160b002e1700160b00201000261300381c002814003018001e0f000e0700
-2613001e0f002613002010001e0f003018002010000e07000e07000c0600140a00ffa244
-180c000c0600261300140a00201000020100160b00160b001e0f00160b00281400180c00
-140a00180c000c06000e07000e07000c0600201000160b001e0f00160b001e0f001e0f00
-1e0f00180c00160b00160b00160b00180c001e0f00040200180c000c0600140a00281400
-281400201000180c000c0600060300140a00020100180c00281400180c00040200281400
-201000201000160b00201000281400180c00160b00160b002814000e07000e0700160b00
-160b00201000160b00140a00140a002010002010002613002010000c06001e0f000e0700
-1e0f00160b00180c000603001e0f000e0700201000180c00180c00140a001e0f001e0f00
-3018000c0600281400201000201000301800140a00060300160b00160b00201000060300
-1e0f000e0700201000160b00201000201000160b00140a00180c000e07000e0700281400
-0e0700261300ff9e3c160b00281400201000201000281400ffa448180c00301800160b00
-3018002010001e0f00160b00180c00281400261300180c00180c001e0f00ff9932201000
-1e0f00160b000e0700140a000e0700201000020100160b00160b00261300201000180c00
-261300261300160b001e0f00281400160b000e0700140a00020100201000160b00140a00
-140a00140a000c06002010000e07002010000603001e0f002613000e0700140a001e0f00
-180c00201000140a00140a002010002814003018001e0f00180c001e0f000e0700140a00
-0603000e0700160b002010000c0600160b000e0700201000
-281400140a000c06002010000e07000e07000e0700180c00060300180c000c06001e0f00
-180c00261300261300281400140a000e0700020100281400201000140a00160b00261300
-2010001e0f002010002613000e07002010003018000c0600160b00060300160b00281400
-281400160b00261300140a000e07000e0700160b00160b000e0700201000160b00ff9c38
-ff9932ff9d3aff9d3a0e07002e17002814002010002010003219001e0f00140a00ffa142
-201000140a001e0f00261300160b001e0f000e0700160b00160b003018000e0700201000
-201000ffa64c160b000603002814002814002e17003a1d004a25005c2e00643200984c00
-d86c00ff9932ffc890fffcf8fffcf8fffcf8fffcf8ffd1a2ffa54aff860cbc5e00864300
-6e37006432004c26003a1d00301800281400281400201000160b00ffa244201000160b00
-160b002613002814001e0f00140a00201000160b00160b000e07000c0600160b001e0f00
-201000140a000c0600160b00160b000c06002010002010002010000e07002613000e0700
-160b000e0700201000180c00140a002010000c0600301800160b000e07002010001e0f00
-160b00160b00281400160b00180c00160b000e07001e0f00140a00261300201000060300
-160b00060300201000180c000c06001e0f00160b000e07000e0700261300140a00160b00
-1e0f00180c002613001e0f00160b000603000e0700201000201000201000160b00160b00
-180c000e0700160b00201000140a002010000e07001e0f00160b00180c00060300180c00
-301800160b001e0f00160b00140a00281400180c00160b000c06000e07001e0f00160b00
-0e0700261300321900160b000c06002010002010002613000c06002010002613000e0700
-140a001e0f000e0700140a00160b001e0f001e0f002814000c06001e0f00201000160b00
-0603002010000e0700180c00160b002010001e0f00160b00140a00060300140a00140a00
-2613000e0700160b00201000201000160b00160b000e07001e0f00160b002010000c0600
-0e0700180c00281400160b000e07000e07001e0f00180c00160b00180c00160b001e0f00
-060300140a000e07002814001e0f00180c00261300180c00261300301800180c00160b00
-2613002613001e0f00180c000e07002010002e17001e0f00201000201000201000301800
-281400201000281400160b00180c00261300301800160b00160b00201000180c001e0f00
-140a00140a00ff9c38160b00140a00180c00180c00261300160b00261300281400281400
-1e0f00201000381c00180c00160b00201000140a00160b00160b000e0700ff9c38201000
-2010002010002613000e0700180c000e07000e07002010002010002010000e0700140a00
-180c000e0700160b000e0700160b00201000160b001e0f00160b00201000261300261300
-2010002814002010002e1700180c00160b00160b002010000c0600261300140a00060300
-160b001e0f00160b00160b000e07000e0700180c001e0f00180c002613000e0700140a00
-0c0600140a002010002010001e0f00201000140a00160b001e0f000e07002613000e0700
-160b00160b00180c00140a00160b00160b00160b00201000180c00140a00140a00140a00
-160b002010001e0f00160b00140a00180c00180c00040200060300140a00180c001e0f00
-180c000e07001e0f00160b000e07000201000e0700140a001e0f00281400160b00060300
-180c001e0f002613000e0700140a001e0f000e0700160b000e07002010000e0700ff9b36
-140a00281400ffa2442010002613002814003018002e17001e0f003a1d003219002e1700
-301800281400281400281400281400281400381c00140a002010001e0f00261300ffa448
-160b00381c00281400160b000e07000e0700140a00160b000e07000e07000e0700201000
-201000160b00281400140a00160b000e07000c06000e0700140a00180c00140a000e0700
-0e07000e0700301800160b000e07001e0f002010000e07002010001e0f00281400160b00
-160b00201000160b00160b00160b00180c00160b000e0700160b000e07001e0f001e0f00
-160b00160b001e0f001e0f003018001e0f00180c00281400
-160b000e07002e1700160b00160b00140a00180c000c0600180c00060300261300201000
-2010001e0f00060300261300160b00180c00160b002010001e0f00180c00180c00201000
-281400160b00201000201000301800060300160b00160b00140a002010001e0f00180c00
-180c00180c00201000281400160b000e0700160b00160b000e0700140a002010000c0600
-0e0700ffa4482010002010002010002814002e1700381c00321900160b00160b00ffa54a
-160b00140a00180c00160b00180c00201000160b00140a000e0700201000201000140a00
-2010000e0700ffaf5e2814002010003018002010002814003a1d00422100542a006e3700
-9a4d00c66300ff9326ff9b36ffb870ffca94ffbf7effa74eff9830ff8c18be5f00924900
-904800542a005e2f004422003a1d00160b00201000301800281400ff9d3a201000160b00
-0c0600140a002613002010002814000201001e0f00160b00160b00180c001e0f001e0f00
-180c00160b00040200140a001e0f001e0f00060300261300180c00140a000e0700160b00
-1e0f00201000301800160b00140a000e0700160b001e0f00160b001e0f00160b00201000
-0e07001e0f00180c000e07002010000e0700201000201000201000180c00160b00201000
-160b00160b000c06000e0700301800160b00160b000e07001e0f001e0f00160b000c0600
-160b00160b00281400180c00201000281400160b00201000160b001e0f002010000c0600
-2814000e07000e0700160b00160b00160b000e0700060300201000201000321900201000
-160b00160b00180c002613001e0f000e0700160b00060300180c00020100180c00281400
-1e0f000c0600201000160b002010000e07002e17001e0f002010000e0700160b000e0700
-281400180c001e0f00180c00160b001e0f00201000060300160b000e0700160b00201000
-1e0f00180c000e0700201000160b001e0f000e07002010001e0f00060300180c00261300
-0e0700201000040200180c000402001e0f00201000160b00140a000e07000402000e0700
-0e07002613001e0f000e07000e0700140a002613000201001e0f000e07002010000c0600
-180c001e0f00261300201000180c00261300281400160b00160b00160b002e17000e0700
-160b00201000201000160b00180c000c0600140a00160b002613001e0f000e07001e0f00
-2613001e0f00160b00301800180c00201000281400160b001e0f00180c00180c00160b00
-0e0700261300ff9c38160b002e1700201000180c00180c000e0700160b00140a00060300
-160b002814002e17001e0f00201000261300160b00160b00ff9e3cffa1420c0600160b00
-4221000e0700301800261300201000140a002010000e07002814000e07000e0700261300
-1e0f00180c00180c000e0700160b002814000e0700160b002010002814002613001e0f00
-281400261300381c001e0f002010002e1700180c000e07000e07000e07000e0700160b00
-0201002814001e0f00261300201000160b00160b001e0f00160b00201000180c00160b00
-160b001e0f002e1700180c00201000160b000c0600261300140a00160b00140a000e0700
-160b001e0f002e1700160b001e0f000e0700261300160b00201000140a00140a00180c00
-0603002010002010000e0700201000160b00140a000c0600160b00160b00180c00160b00
-0e07002010002613000e07000e07000e0700201000160b00160b00160b002613000e0700
-160b00160b002010000c06002010002010002814000e0700281400180c00281400160b00
-261300301800ff952a1e0f00201000301800381c002613003018002e17003018003a1d00
-3a1d004221004a2500281400301800301800201000281400261300160b00281400ff9e3c
-261300140a00201000140a00140a00160b002010002814000c0600201000281400160b00
-0e0700201000201000160b00180c00281400261300160b00160b002010001e0f00281400
-140a00160b00201000321900201000160b00301800160b00160b00160b00261300180c00
-140a001e0f001e0f002010000c0600180c001e0f002613000c0600180c000e0700140a00
-0e0700381c00201000261300180c00160b00180c00261300
-0e07000c0600160b00160b00140a001e0f001e0f00140a00180c00201000201000281400
-2010000c06000e07000e07000c0600140a00160b002e1700201000140a00201000160b00
-140a00160b00160b000e0700160b00160b00180c00160b000e0700160b001e0f000e0700
-140a00060300160b000e0700180c000e07001e0f000e07001e0f000603000e0700180c00
-180c00140a00ffa4482010002613003018002814003a1d00301800281400160b00160b00
-ffa0400201001e0f00160b001e0f000e07002010002010002010001e0f00201000261300
-0201002814000e0700ff9e3c180c00140a00160b002010002814002814004a2500663300
-5c2e00864300b25900aa5500e87400fc7e00ff870eff8204ff850ae87400b45a00904800
-7038005c2e003219004c26003219003a1d004221003018003a1d00301800ffa142160b00
-160b000c0600160b00180c002010000e07002814000603000c0600160b00201000160b00
-2e1700201000160b000e07003018000e0700140a00180c00160b00140a002010001e0f00
-0e0700201000160b00180c002613001e0f00180c00180c00201000201000140a00160b00
-2010002010000c06000c0600301800160b00160b002010000e07000e0700180c00201000
-160b000c0600140a002613000e0700160b00160b00160b000e0700160b00281400180c00
-160b00281400160b00180c00201000160b00160b002010002814000e0700261300060300
-1e0f000e0700201000261300180c002613001e0f00160b00180c00180c001e0f00160b00
-180c001e0f000e0700201000160b002814002814000e07001e0f00140a00160b00261300
-060300261300160b000c06000e07000e07001e0f00321900201000281400160b00180c00
-1e0f00160b002010002010003018000603002010002814000e0700201000060300281400
-0e07000c0600160b00140a00180c000e0700160b00261300140a00160b000e07001e0f00
-1e0f00140a000e0700180c00040200160b00180c000e0700180c001e0f001e0f000e0700
-2010001e0f00160b000e07002010002010000e0700160b000c0600140a000e0700201000
-160b00060300140a00281400160b00160b00201000060300160b000c0600060300160b00
-160b000402002e1700160b000e07001e0f00160b00160b00160b00160b000603000e0700
-281400160b001e0f00201000201000140a00201000060300201000201000180c001e0f00
-020100201000201000ff9e3cffa54a2010001e0f002e17000603002010001e0f00160b00
-201000140a00261300201000160b000e0700261300ffa74e160b000e0700140a00060300
-160b00140a00140a00160b002613003018001e0f000402000c06000e07000603000e0700
-180c00140a001e0f000e0700281400040200180c000e07001e0f001e0f00160b00160b00
-261300261300261300160b00180c002613002010000e0700160b00060300261300140a00
-0c0600201000201000201000160b00160b000e07000201001e0f00160b001e0f00201000
-1e0f00160b002814002010001e0f00160b002814000e0700140a00281400060300281400
-201000160b002010000e07000c0600201000160b001e0f00261300160b000e0700020100
-2814002010000e0700261300321900140a001e0f00160b00160b00180c000c0600060300
-2814001e0f00201000160b00140a00060300160b00020100140a00261300140a00160b00
-160b002613000e07000e0700140a003018000e0700060300180c00180c00261300160b00
-201000281400ffad5a402000201000301800201000201000201000201000ffad5a301800
-3a1d004c26004a25002814004020002e1700160b001e0f00281400180c00160b00140a00
-ff99320603002010000e07000c0600140a001e0f00140a00180c00160b00140a001e0f00
-160b00160b002010000e0700180c00140a000e07000e07001e0f00160b000e0700160b00
-160b00201000160b000c0600160b00301800180c002613001e0f00301800160b001e0f00
-0e07000c0600201000201000180c00261300281400180c000e07000201001e0f00140a00
-1e0f00180c00140a002010000e0700180c00160b00160b00
-0402000c06001e0f00160b00140a00160b00160b00160b00160b00160b001e0f00180c00
-2010000e0700020100020100201000140a00160b002010000c0600180c000e0700201000
-0e07000e07002613000e0700281400160b00160b00160b001e0f003018001e0f00201000
-0e0700180c000603002e17000e0700261300140a00160b00160b00201000180c00020100
-0e0700160b00ffa0402010002814002010003219003a1d00261300180c00180c00ff9c38
-160b00060300160b002010000e0700140a00160b00060300201000180c00160b00160b00
-0e07000e07002010001e0f00ff9e3c160b00180c002e17002e1700261300321900381c00
-3a1d005e2f007e3f009249009e4f00b25900c46200b85c00b65b00984c00884400904800
-6e37006432005c2e00542a003a1d003a1d002e17001e0f00201000281400ffa040160b00
-2814002010000e0700060300180c00160b00160b00160b002e1700160b00201000140a00
-160b001e0f00160b00180c001e0f00140a00140a00180c000c0600160b00160b001e0f00
-281400180c001e0f002e1700180c000e07002010000e0700160b00201000160b00160b00
-281400180c00140a002010000e07000e0700160b00160b000402000e07002010000c0600
-201000180c000e0700281400201000201000201000160b001e0f00060300201000180c00
-180c000e0700180c00160b00201000180c00140a000c06000e07002010001e0f00140a00
-180c00140a00160b00140a000e0700140a002010000c06001e0f00180c00140a00201000
-261300180c00160b000e07001e0f001e0f000e07002010002e1700281400180c00160b00
-060300201000160b00160b000c0600060300180c00140a00140a001e0f002613001e0f00
-180c00160b00140a00180c000603001e0f00180c000c0600140a002010002613000e0700
-160b00261300160b002010000603000c0600201000160b001e0f001e0f00180c00160b00
-180c00180c00140a00180c00180c00160b00160b00140a00180c00160b00201000160b00
-160b000402000c0600160b00201000160b00140a00160b00201000180c00180c00281400
-201000180c00160b00180c001e0f00201000201000201000140a00201000160b00201000
-2010001e0f00140a000402002613000c06002814001e0f002010001e0f00261300060300
-281400160b00201000160b000e0700140a00180c00160b00140a001e0f00180c00201000
-180c000e07000e0700140a000c0600ffa54affa244160b00281400180c00201000160b00
-160b000e0700201000160b00ffa244ff9c38ff9e3c160b00160b000c0600201000180c00
-0603000e0700160b00060300140a00160b001e0f00261300180c002010001e0f00160b00
-2010000603000e0700201000140a00160b001e0f000e07000e0700160b00180c00140a00
-2e17003018001e0f001e0f00180c00180c00180c001e0f00140a001e0f001e0f000c0600
-180c002010000e07001e0f000c0600180c000e0700160b000e07000e0700180c00180c00
-160b000e07000e0700160b00281400180c00180c00060300160b002010001e0f00160b00
-1e0f000c0600060300201000060300140a000603001e0f00160b001e0f00201000160b00
-281400160b00160b002010000e07000e0700201000201000201000040200160b002e1700
-140a00140a00160b00160b00160b000c0600160b00301800140a00201000160b000c0600
-180c000e0700160b000e0700201000060300140a00160b00ffa64c2613000c0600281400
-2814003a1d00ffb4684a25001e0f00301800381c002e17003018002613003a1d003a1d00
-4a25005229004221004c26003a1d003a1d002010002010002814003a1d00180c00261300
-ffa0401e0f00060300160b00160b00160b002010002010001e0f00201000160b00180c00
-281400160b000e0700160b00140a000e07001e0f00160b00180c00160b00201000281400
-180c002814002010001e0f000e07002613003a1d00180c00160b001e0f00261300281400
-160b00140a00060300201000160b00160b002010002010002e1700201000160b00180c00
-1e0f000c06002010001e0f00160b000e0700281400160b00
-140a000c06000e0700261300140a000e0700180c002010000e07000e0700201000180c00
-160b00160b00180c00160b00201000160b000e07001e0f00140a00160b00160b000c0600
-060300201000020100180c00160b000e0700180c001e0f00281400281400140a00180c00
-301800140a00160b000e0700160b000e0700201000160b00201000180c00160b00160b00
-1e0f00140a00ffae5c140a000e07000603001e0f002010000e0700160b00160b00ffa142
-0e07000e0700201000160b000c06002814000c0600261300140a000e07000e07000e0700
-160b000c06000e07000c0600301800ff9e3c160b00160b00201000321900201000301800
-5e2f004221004a25006432008040008643008643007e3f007e3f00864300703800763b00
-5a2d00542a00542a00542a004a25004020003a1d002613001e0f00281400ffa74e201000
-2e17001e0f000e0700301800160b001e0f00261300301800201000160b001e0f00180c00
-140a000e0700160b00180c00160b00180c000e0700160b00160b00281400160b00160b00
-0e07000c0600301800060300160b000603000e07000e07002e17001e0f00201000201000
-060300180c00140a00140a00140a001e0f00201000201000281400160b000c0600160b00
-0e07000c06002613001e0f00180c000c0600160b00180c00060300201000261300160b00
-180c00140a00180c002814000c06000e0700160b00160b002814000e07000e07000e0700
-180c00160b00201000040200201000180c00180c00201000140a00321900180c00201000
-0e0700180c002010002010003018000e07000402002010000e07000e07000201001e0f00
-301800180c00140a001e0f001e0f00160b00060300160b000e0700140a00201000261300
-160b00160b002010002814002814002010000e0700020100160b00180c00180c00160b00
-160b00180c001e0f00180c00201000060300140a00020100180c000e0700140a00180c00
-0e07002010000e0700201000140a001e0f000e07000c0600160b000e07000c0600281400
-0c06002e17000402002814000e07002613000e0700160b001e0f00301800020100160b00
-0e07000e07002010000c0600160b000603001e0f00060300060300180c000e07000c0600
-0c0600301800160b000e0700261300160b002010002010000e0700321900281400160b00
-201000180c002010002010001e0f000e0700261300281400160b000e07002814001e0f00
-160b000603000c06000402000e07001e0f000c0600ffa244ffa040ff9932ff9830ff9b36
-ffa040ff9d3aff9b36ffa74e180c00201000160b00140a000e07001e0f00140a00060300
-201000160b00281400301800020100160b000e0700180c002e1700160b000402000e0700
-140a000e0700160b001e0f00180c00160b00060300201000201000160b00160b001e0f00
-201000180c00281400140a00160b00261300060300140a00180c00261300281400160b00
-140a000e07000c06000e07002814000402001e0f00140a00201000160b00160b00201000
-201000281400140a00201000281400160b000c06001e0f00201000261300160b00060300
-180c000e07001e0f00201000140a000e0700160b00160b00160b00140a001e0f000e0700
-0603001e0f000e0700201000160b001e0f00160b00160b00160b002010001e0f00180c00
-0c0600060300180c003219000c0600201000160b00180c00201000140a000603002e1700
-0c0600160b000e07002613002010000e07000e07000e0700ff9e3c2010002e1700261300
-301800402000ffab56321900261300301800281400281400301800ffb1622e1700422100
-4020005229004020004221004a25004a2500321900381c00281400180c002613000e0700
-180c00ff9d3a1e0f000e0700201000040200180c000e07002814000603000c06000c0600
-160b00140a00040200060300160b000e0700060300201000201000160b002814000e0700
-2010001e0f00140a000e07000e0700201000201000160b00180c000e07001e0f00160b00
-201000140a00140a001e0f002814000e07001e0f00180c002010000e0700201000160b00
-201000160b00140a000e07002010001e0f00160b000e0700
-0e0700140a00160b00160b00180c001e0f00160b00140a002010000e07002010000e0700
-2814001e0f00201000160b00281400201000201000301800040200160b001e0f002e1700
-201000140a000c06000e0700160b001e0f00281400321900180c002010000e0700261300
-180c001e0f00020100180c001e0f00160b000e07002613001e0f001e0f00180c00261300
-180c00201000180c00ffa64c0e07000c06002010003a1d001e0f000e0700ff952a160b00
-160b000c0600180c00140a000e07000e07001e0f00160b000c06000e0700180c001e0f00
-160b00160b000e0700160b000c0600140a00ff9d3a180c00201000201000201000442200
-2e1700542a004221004c2600542a005c2e005e2f005c2e00643200542a007038005c2e00
-5a2d004c26004020004221003a1d00442200301800281400281400040200ffa74e180c00
-281400261300281400140a00160b00160b00160b002010001e0f000e0700140a00160b00
-261300180c000c06002010002010001e0f000c0600160b00160b00301800180c00160b00
-2814001e0f00281400140a00180c00281400160b000e0700201000180c00261300160b00
-2613001e0f00160b000c06002e17002814002814002010001e0f000c0600160b00060300
-180c002010000c06000c06000c0600261300201000140a00160b000603000e0700180c00
-2e1700160b00060300160b00160b002814002010003018001e0f002010003018001e0f00
-160b00160b001e0f00180c00160b002613002010000e0700140a00160b00140a000c0600
-201000160b002613002010002613002010002010002613001e0f00140a002e1700180c00
-1e0f00261300060300160b00160b00160b000603000e0700140a00160b000e07000e0700
-0c0600140a00160b002010002e1700180c00140a00201000160b00281400140a00040200
-140a001e0f00180c00160b00180c00201000140a00201000261300160b002e1700261300
-0e07001e0f000603001e0f00180c001e0f000e0700160b000e0700160b00180c00180c00
-140a000e0700160b000e07002010000402002010001e0f00160b002010001e0f000e0700
-201000201000381c00201000281400261300140a00201000281400160b002010000e0700
-0e0700160b00160b00160b002010002010000e0700160b00180c00160b000c0600261300
-180c00201000160b00160b002010002e17000c06000e07000c0600201000180c000e0700
-0603000e0700160b00160b000402000e07002010003018000e0700201000180c001e0f00
-160b00160b002613000e0700160b00201000201000180c00281400201000201000201000
-0603000c0600140a000603002010001e0f00261300160b00180c00261300160b00201000
-0c0600201000261300160b000e07000e0700160b00160b000c0600180c000e0700160b00
-160b000e07001e0f00060300301800160b00180c001e0f00160b00160b00180c000e0700
-2010002613000e07000e0700160b00020100201000160b002010002010001e0f00160b00
-140a00281400281400160b002613001e0f00160b00201000180c00261300281400180c00
-180c00160b00060300201000180c00281400140a00301800281400201000201000180c00
-201000261300140a002e1700180c00140a00160b00281400180c002010002814000e0700
-160b001e0f00160b00160b000e07001e0f00180c000e07000c0600020100160b00160b00
-160b00140a00160b001e0f000c0600201000140a00160b00180c00180c002e17001e0f00
-1e0f00281400ffa448201000301800281400281400321900281400281400381c00381c00
-4422004c2600542a006633004221003018004221002814002814000e0700160b00281400
-201000ff9e3c2010000e0700180c000c0600140a000e0700160b00261300201000040200
-0c0600180c000e0700180c001e0f00301800201000160b001e0f00160b001e0f00201000
-261300180c001e0f001e0f00160b00160b00140a00180c00201000160b00261300180c00
-1e0f00160b001e0f00281400261300140a000e07002010001e0f00160b000e0700160b00
-0e07000603000e07001e0f00060300160b002010000e0700
-180c000e0700160b00160b00180c00160b000e07002613000c0600180c00261300201000
-180c00160b000e07000e07002010000e07002010002010002e17000e07001e0f00180c00
-060300160b00160b00180c002010000e0700160b002010002e17002814001e0f00160b00
-2010002613002010002010000e0700160b00261300160b00180c000e07000c0600261300
-1e0f00180c00160b00160b00ffa142ff9932180c00ffae5cffa448ff94280c0600180c00
-060300160b001e0f002010000201001e0f00140a00201000180c000c06000201000e0700
-1e0f000e0700140a000e07000603000201000c0600ffa54aff9932281400281400281400
-2613002613002e17003018003a1d004c26004020004c26005e2f00442200542a004a2500
-542a004221004a25003219002e1700422100201000201000281400160b00ff9e3c1e0f00
-140a001e0f001e0f00160b00281400261300160b00201000060300160b00201000201000
-180c002010000e07002010000e07002814002010000e07000e0700180c000e0700160b00
-180c00180c000e07002010002814000c0600160b00160b000e07000e0700201000281400
-0c06000c0600160b001e0f000e0700160b00180c00281400261300160b000c06001e0f00
-160b000c0600201000160b00261300060300201000160b00201000160b00160b00201000
-180c00160b00160b000603000603001e0f000603000e0700160b00160b00180c00160b00
-160b000e0700180c00180c00201000180c00140a00180c00160b00281400160b00261300
-1e0f00160b00201000201000180c000e07000e0700180c002814000c06001e0f00140a00
-140a00201000160b002010000e07000e07002010002e17002010002010000e07000e0700
-140a002010000c0600180c00180c000e0700060300140a00180c000603001e0f00060300
-160b000e0700160b002814000603000e0700201000160b001e0f00261300140a000e0700
-0e0700160b002010000c06003219001e0f000603002613000e07002e1700160b00060300
-160b00180c001e0f00281400160b00180c002010001e0f000e0700020100140a00140a00
-0c0600201000140a002e1700201000180c00180c000e0700180c00201000160b00140a00
-160b002e1700160b00160b00140a00140a000e07000e0700180c00281400160b00201000
-160b00140a000e07002010002e17000c0600201000201000180c000e0700180c00201000
-180c000603000e07000e07000e0700160b001e0f00160b000c0600201000140a00160b00
-1e0f00281400201000140a00140a00180c00140a00060300180c00140a00160b00060300
-160b00201000140a002010002e1700281400180c002010002010001e0f00281400180c00
-180c000e07002010001e0f000e07000e07000603000e0700180c002010001e0f00180c00
-201000201000301800060300281400281400160b00160b00201000140a00261300160b00
-160b00381c000e0700201000180c000e0700261300180c002613001e0f000e0700160b00
-140a002e1700160b00301800281400180c00160b00140a00140a00201000281400201000
-0201001e0f000603000603000e07000e0700201000160b00301800261300281400140a00
-201000140a00160b00201000160b00180c000e0700140a00160b002814001e0f001e0f00
-2814002e17000e07000201002613000402000e0700160b00060300160b001e0f00261300
-0e0700160b00140a000201001e0f00180c00160b000e0700201000ffa1422613001e0f00
-281400201000ffa4482613002e1700201000201000281400ffb76e3a1d002e1700402000
-5c2e00542a005e2f006e3700542a004a2500281400402000281400301800160b00281400
-0e0700ffa4482814001e0f00160b00160b00160b001e0f00160b002010001e0f00201000
-060300180c00180c00180c00160b00180c00160b00060300160b00060300160b00281400
-0c0600180c00201000261300180c002613000c0600140a000e0700261300160b00201000
-2010000e0700180c00140a000e07000e0700180c00140a001e0f00180c00201000180c00
-180c00140a00201000180c00160b00140a000e0700261300
-0c06000c0600160b000e07000e07002010000e07001e0f00160b001e0f00180c00301800
-2010002e1700140a00201000261300180c00180c00140a00281400160b00180c000e0700
-0e0700180c000e0700160b001e0f000e0700201000140a00281400281400281400201000
-3018000e07001e0f000e07000402000603000e07000201000402000603000e07000e0700
-2010000201002010001e0f00180c000c0600ffa4480603000e0700160b00140a00140a00
-0c0600140a000e0700160b000e07000201001e0f00160b000603000c0600140a00060300
-140a000603000c06002010002814002814002010000e0700160b00ffa54a1e0f002e1700
-160b002e17003018001e0f003a1d002e1700201000381c003018005229003a1d00402000
-3219003219003018003219002e17003a1d002e17001e0f00201000180c00ffa64c261300
-2010002010002010001e0f00180c002010000e0700160b002814001e0f00160b001e0f00
-0e0700261300201000160b00180c00160b00160b000e0700160b00140a000c06000e0700
-2010001e0f00160b00180c00160b00160b002010000e0700180c00140a000e07000e0700
-160b000e07000c0600140a000e07001e0f00180c00201000180c00261300281400201000
-1e0f002814000c06000e0700160b00180c00060300160b000c06000e07002010000e0700
-0e0700180c00201000281400060300140a00160b00180c00180c000e07002010000e0700
-201000140a00201000160b00201000160b001e0f00160b00140a00160b00281400281400
-201000140a000e07000e07000402002814000e07002010001e0f00160b000e0700160b00
-1e0f00201000160b00140a00160b002e17001e0f00060300140a00160b000603002e1700
-281400140a00060300180c00261300160b002613000c0600201000140a000e0700180c00
-0201000603000e07001e0f000e0700180c000e0700160b00140a000e07000e0700180c00
-0e0700180c00160b000e0700180c00160b00301800160b001e0f00140a00180c00261300
-2010000e0700180c00060300180c00160b00060300160b00160b000e0700160b00160b00
-160b000e07000e0700020100160b000c0600201000160b00060300060300201000180c00
-160b00160b00060300180c000e0700160b00261300160b00160b00160b000e07002e1700
-1e0f00140a00281400281400160b00160b00201000060300060300281400180c00060300
-0e07001e0f00201000261300160b00201000160b000c0600301800201000180c00180c00
-2010002613000603003018000e0700201000160b001e0f00201000160b00160b00140a00
-0c0600160b000e07002010002e17002613003018000e0700160b00201000281400180c00
-060300180c00180c000c0600160b001e0f001e0f00281400160b001e0f001e0f001e0f00
-0603000e07002010002010000c0600201000281400201000140a000e0700261300160b00
-060300180c000e07000603001e0f00180c000e0700160b003018000603000e0700160b00
-160b00261300160b00160b000e0700201000160b00140a000603000201000e0700180c00
-0c0600180c000603002010002e1700160b001e0f00180c00160b00180c00261300180c00
-201000140a000e0700140a00201000201000160b001e0f002814002010000e0700201000
-140a00160b002613000e0700301800281400160b00261300180c002613001e0f00180c00
-1e0f00180c00160b00160b001e0f00180c000c0600160b00180c001e0f00ffa4480c0600
-201000201000ff9b36160b001e0f001e0f00ffa1422010004020003a1d00321900542a00
-542a006e37006432006432005c2e003018005e2f00442200201000381c002e1700201000
-160b00180c00ff9c38140a000e07000e0700281400261300201000180c00160b00201000
-261300060300140a00301800060300201000180c00160b00140a00060300160b00261300
-201000281400140a003219000e0700180c001e0f00160b00201000201000281400180c00
-2814000e0700180c00301800261300060300201000160b000c06002010000c06001e0f00
-1e0f002010001e0f002613000e0700160b00140a00201000
-0e07001e0f00060300160b00160b00140a00261300160b00281400201000201000301800
-1e0f00160b000e0700281400281400180c00201000180c00180c00160b001e0f00140a00
-0c06001e0f000e07002814000e0700140a00180c00201000180c002010002814000e0700
-180c00160b00160b002e1700160b000c06001e0f00140a00160b00140a000c0600060300
-0e07000c0600160b002010001e0f00060300201000160b000603002010000e0700160b00
-0e0700180c000603002010000e07000201002010000e0700180c001e0f000e07001e0f00
-0e07000e07001e0f000e07000e07000e0700180c00160b00140a00160b00ff9e3cffab56
-2010002613002814002814003219003018003018002010003018002e1700321900381c00
-402000281400201000321900201000301800281400301800281400ffa54a261300261300
-0c0600281400160b00160b00160b00281400201000160b000e07000e0700180c00180c00
-060300160b00180c00160b00140a00160b00140a002613000e0700020100040200201000
-180c000e0700140a00140a002010000e07002814000c06000e0700180c002010001e0f00
-0e0700261300160b00140a00160b00201000201000160b00281400160b00060300160b00
-201000402000160b002010000e07000e07000c06000e0700201000160b00160b000e0700
-1e0f002010000603000e07002814000e0700180c000603000e07003a1d00180c00201000
-160b00160b00281400160b00281400140a000603000e0700301800160b00180c00160b00
-160b00160b00160b001e0f00201000140a00060300140a000e0700160b00281400160b00
-060300201000160b00180c00140a001e0f000e07000e0700281400201000201000201000
-140a003219000e0700261300160b003018000e07000e0700160b002814000e0700160b00
-1e0f00140a00201000160b00160b001e0f00140a001e0f00160b00201000160b00201000
-2010000e07001e0f00180c00160b00020100140a001e0f00040200261300140a00201000
-060300140a00060300160b000e0700261300201000261300140a00060300160b00140a00
-060300201000160b002010002010002010000603000603000e0700140a000e0700060300
-160b00140a00201000201000060300180c00201000160b00180c002814000e0700160b00
-140a00160b00201000060300160b001e0f00140a00160b002613000c0600140a00160b00
-0603001e0f00160b00140a000e0700040200140a00201000160b00180c00060300180c00
-160b00160b002010000e0700140a000e0700160b001e0f00201000020100301800180c00
-1e0f00140a000e0700140a002613002010002613002e1700180c00180c000e0700140a00
-160b00301800180c000c0600160b00160b00180c000e0700381c000e07000e0700060300
-0e07000e0700140a002613000603001e0f001e0f00180c00160b00060300160b003a1d00
-160b00180c00201000281400201000201000180c00201000060300180c00201000180c00
-060300160b00201000180c00160b00160b00160b00160b00180c00160b00140a002e1700
-201000301800160b001e0f001e0f00060300180c00160b000e0700160b00140a00201000
-261300160b001e0f00160b00180c001e0f00201000281400140a00180c00160b00160b00
-140a002814000c0600201000201000160b00180c00201000160b003219001e0f00160b00
-160b00201000160b00160b001e0f00160b00160b002010001e0f000e0700160b000e0700
-ffa74e160b00fffcf8281400ff9d3a160b001e0f00160b003018002e17004a2500522900
-4a2500663300783c00763b005c2e00522900442200321900381c00201000281400301800
-160b00140a00ffa142261300281400140a00160b00140a00060300281400180c00201000
-160b00160b002010000c0600201000160b000603001e0f00160b00201000160b00201000
-160b00160b00160b000e0700140a000e0700261300281400281400140a00160b00201000
-2814002814000e07000e07000e0700140a00160b00140a00140a00180c00160b00160b00
-2010002010002613000e07001e0f000e0700140a00160b00
-160b00180c00261300160b00201000180c00201000140a00180c003219001e0f00201000
-160b002613000e0700180c000e07003018000c0600180c000c0600160b000603000c0600
-201000201000180c002010000e0700060300060300160b001e0f002814000c0600160b00
-2010000e07002010000603000e0700140a00160b00281400140a00160b000201001e0f00
-3018000e07000e07000c06003018000603000603000603002010000e07000201000e0700
-160b002613000201002814000c0600140a000e07000c0600201000201000201000160b00
-0201002613000e07000e07000c06001e0f00140a00201000140a000603001e0f000e0700
-ffa448180c00060300281400281400160b003018002814002e1700201000201000301800
-281400281400281400160b002e1700301800261300160b00281400ffa54a1e0f00281400
-0e07002e17002814002010001e0f00140a002010000603000e0700140a00281400201000
-2e1700160b002010000e0700020100261300321900160b00201000160b00201000140a00
-020100281400261300201000201000281400140a00160b002010000e07000e0700160b00
-160b002010001e0f002010000c0600180c001e0f00201000281400180c00180c00180c00
-1e0f00180c000c06000e07003018001e0f00281400160b00281400201000201000160b00
-0e07002010002010002010000e0700160b00160b002010000e0700160b00180c00160b00
-201000020100060300180c00160b00060300160b000e07002010000e07002010000e0700
-281400180c001e0f000e0700140a001e0f004221000603000e0700140a001e0f00201000
-180c000e0700201000160b00160b000e0700140a000402000e07002010001e0f00201000
-0c06000e0700140a00281400140a00201000160b000e0700060300140a00180c00281400
-1e0f002010002e1700140a00180c00160b00140a001e0f000e07001e0f00201000180c00
-140a00160b000e0700020100261300160b00281400160b00160b001e0f00140a00140a00
-1e0f00140a00160b00160b00281400140a00140a00180c002010000e07001e0f000c0600
-180c000c06002814001e0f000e07001e0f00160b00201000281400160b000e0700180c00
-1e0f00140a00281400140a001e0f001e0f000e07000e07000e0700180c00160b001e0f00
-201000301800201000180c000603000e07000e0700201000201000160b00040200201000
-0e07002814001e0f00281400160b00201000180c00140a00281400180c00180c00160b00
-0e0700180c002010000603002010001e0f00180c000e0700261300140a00060300160b00
-0e0700160b000e07002010000e07002613002814002613000e0700261300160b00160b00
-261300180c00060300201000160b00180c000e0700140a00201000180c002010000e0700
-160b001e0f001e0f00160b00281400301800301800060300160b002010000e0700160b00
-2814001e0f00160b000e07002613000e07000e07000c06000e0700160b000e0700201000
-0c0600160b000e0700040200060300160b00180c00180c00160b00140a00261300201000
-160b00201000140a001e0f000201000e07001e0f001e0f00201000180c00180c000e0700
-201000160b00261300160b00160b00140a00201000180c001e0f002814000e0700160b00
-1e0f000e0700180c00160b00281400180c00160b00160b00261300140a00160b00140a00
-140a002010000e07002e1700281400301800180c000e0700140a00160b001e0f00140a00
-0e0700160b00ff9e3c2613002613001e0f00261300201000301800301800321900422100
-5229006633007e3f006c36004a2500422100422100381c00281400140a00140a002e1700
-160b00160b00ff9e3c160b003018001e0f00160b00160b00160b000e07000c0600261300
-180c00160b00180c00160b00140a002010001e0f00140a001e0f00160b00201000180c00
-1e0f00140a00180c001e0f00180c00160b00160b00180c000e07000e0700160b00140a00
-160b00301800140a00160b000e0700040200160b001e0f00301800180c00160b00201000
-0402001e0f00140a002814000e0700160b002613000e0700
-201000160b001e0f002613001e0f002010001e0f001e0f00261300281400160b00060300
-1e0f00140a00160b002010000201001e0f002e17002613000603002814000e0700140a00
-2010000e0700160b00160b00160b00160b00160b002814003a1d00201000261300140a00
-0e0700160b002e1700261300140a00160b00160b000e0700180c002010000c0600160b00
-0e0700180c000e07000201000603000e0700160b001e0f00160b00160b000e07000e0700
-261300180c000e07000603000e0700140a00160b000c0600140a000603000e0700180c00
-1e0f00261300060300160b000402000e07000c0600160b00180c000e0700160b00201000
-1e0f00ffa448ff9b36ff9e3c160b001e0f001e0f00140a00160b00301800301800201000
-281400261300201000281400301800160b00201000281400ffa1421e0f00201000201000
-140a003219002010001e0f00261300180c001e0f00060300261300160b002010001e0f00
-281400160b00201000140a00160b00160b00180c00160b000e07000e07000603000e0700
-060300160b00281400160b00160b00160b00201000201000140a000c0600261300140a00
-1e0f00180c002010001e0f00160b00160b001e0f002814002814000c06000e07002e1700
-160b00160b00160b003018001e0f00281400140a00060300180c00060300281400201000
-0603002010001e0f000c0600180c00201000160b00201000281400160b00281400160b00
-201000281400020100281400160b00261300180c00180c00201000160b001e0f00160b00
-201000060300180c00180c001e0f00261300261300201000281400140a00160b00201000
-140a00160b002e1700160b001e0f000e07000c0600201000160b00281400180c00160b00
-201000160b000c0600160b002010002010001e0f00140a00140a00060300281400321900
-180c002e17002814000e0700281400160b000603001e0f001e0f00301800160b00140a00
-060300160b00261300201000180c00160b000603003018001e0f000e0700261300160b00
-180c00160b001e0f000e07002010002613001e0f000e0700201000140a001e0f00201000
-140a000e0700160b001e0f00422100180c00180c00140a001e0f000e0700160b00281400
-2010002010000c06000e0700201000201000201000261300140a002010001e0f00201000
-0e0700180c00160b00160b000c06002010000c0600060300201000160b00060300201000
-160b002010000e0700140a00160b00180c00160b00201000160b000c06000603001e0f00
-180c000c06002814000c0600261300160b00180c00160b00060300281400140a000e0700
-160b001e0f001e0f001e0f00160b002010002613002e17001e0f00160b000e0700020100
-0603002613000e07000e07000e07002010002613000e07002010002814000e0700160b00
-281400180c00160b000e0700160b00160b002613000c0600180c000c0600180c00201000
-2613001e0f00261300180c00180c00140a000201002010000e07001e0f00281400160b00
-0c0600180c002010001e0f00201000201000180c001e0f00180c00140a00160b000e0700
-0e07000603000201002010000c06000e07001e0f002010002010000e0700180c00160b00
-201000261300060300180c00261300201000281400020100281400160b00180c00261300
-140a000c06002010003018000603000c0600160b000e07001e0f00180c00201000201000
-180c003018001e0f00201000020100140a00180c00140a00180c00160b000e0700261300
-261300160b00ff9e3c0603002814002613000e07002814002010003a1d003a1d00442200
-3a1d004c26006c3600542a006432004422004422004a25003a1d002e1700201000160b00
-201000201000ffa142261300160b00160b00140a002010001e0f000e0700140a00281400
-160b00201000160b00140a00281400160b00140a00180c002613000e0700160b000e0700
-140a002e17000e0700281400180c00140a00281400160b000603000e0700160b00180c00
-180c00180c00180c002010000e0700201000201000201000180c001e0f000e0700180c00
-1e0f00160b000e07000e07000e0700261300140a00160b00
-160b00160b002e1700160b00281400180c003a1d00201000201000201000180c00261300
-0e0700160b00180c00160b00281400160b00140a00201000281400140a000c0600160b00
-0e07000e07000e07000e0700160b000201000201000c0600160b000e0700160b00160b00
-140a00060300201000180c000201000e07000c0600281400180c000e0700160b00201000
-160b000e07001e0f00060300060300160b00160b00201000180c00201000060300040200
-0c06000c0600160b00160b002613000e0700140a00180c000c0600160b00160b000e0700
-0e07000c06002814000e07000c06000e0700160b00180c002e1700140a00160b00180c00
-160b00201000140a00160b00ff9d3aff99320e07002010002814002e17001e0f002e1700
-2814002814002010002814002814001e0f00ffa244ffa64c2613002010002010000e0700
-1e0f002010000e07001e0f000e0700160b00201000180c00180c00180c002e17001e0f00
-2010000e07000e0700140a000e0700140a00281400201000160b000e07000e0700201000
-281400160b00160b00160b001e0f000e0700160b00060300201000180c001e0f000e0700
-180c00160b00201000180c00140a00201000160b00201000180c00201000060300201000
-140a000e0700180c000e07001e0f00180c00281400180c001e0f00201000140a00140a00
-180c00160b00140a00160b00160b00160b000e07002e1700201000140a000e0700020100
-261300180c001e0f001e0f00160b00160b001e0f00160b00160b002010000e0700201000
-180c00281400261300060300140a00180c00160b00140a00160b000c06000e07001e0f00
-140a00180c00281400201000160b002010001e0f000c0600201000201000140a00402000
-261300160b000e0700160b000e07002010001e0f002814000e0700160b002010001e0f00
-180c002010003018000e0700180c00201000140a00180c00160b000e0700160b00180c00
-281400180c000c06000c0600160b001e0f00201000261300060300261300201000281400
-0c0600180c00160b000c0600140a00160b001e0f00140a00180c00160b003018000c0600
-1e0f00180c00201000180c000402000c0600160b002814001e0f000e0700160b00160b00
-140a001e0f00140a001e0f001e0f00281400040200140a00180c002814000e0700140a00
-160b002010002613000c0600261300180c002010000603001e0f00160b002613000c0600
-060300201000140a002814002613000e07000603001e0f00140a002814000e07000e0700
-0e07000c06002613000e0700160b000e0700422100140a001e0f001e0f00261300160b00
-180c00060300160b00160b00180c00180c002010002010002613002613000e0700301800
-160b001e0f00160b00140a000603000e07001e0f002010000c06000e07001e0f00160b00
-0e0700201000060300180c000603000c06000e0700180c00281400160b001e0f00201000
-0e0700060300160b001e0f002010000e0700140a00180c00160b00160b00160b00060300
-1e0f00140a00160b001e0f00201000060300160b00160b000c06002010001e0f00160b00
-0e07002814002010000e0700160b00180c00180c00160b000e0700201000160b001e0f00
-321900160b00180c00201000180c00180c001e0f000c0600040200060300301800201000
-160b00140a000e07002010000e07000c0600160b00160b00261300160b00160b000e0700
-281400140a000e0700201000160b002814002613001e0f000c06002010000e0700180c00
-160b001e0f001e0f00ff94281e0f00180c002e17002e17002e1700381c003018003a1d00
-4422004221005c2e006e3700542a00381c004c26003219002e1700281400201000261300
-180c00281400ff9e3c0603002814000c06000e0700060300140a001e0f00160b00160b00
-160b000c06000e07001e0f00060300160b000e0700160b000e07000c0600301800140a00
-261300140a00160b002814002613002010001e0f002010002e1700201000180c00180c00
-2010002010002e1700160b00140a002814001e0f00140a00140a00180c00160b00201000
-180c00180c00180c002814002010002010001e0f00281400
-160b000e07000e0700180c00160b001e0f00160b00140a00301800201000281400261300
-160b00201000140a00301800180c002010001e0f00201000140a000e07000e0700160b00
-0e07002010000e07002613000201002613000e07002010000e0700160b000c0600160b00
-180c000e0700160b002613002010002010001e0f000c06000e0700140a000e0700180c00
-160b00160b000603002e1700140a001e0f00201000160b000c0600281400060300160b00
-160b000603000c06000e07000c06001e0f000e07000e0700020100160b000e0700301800
-0e0700020100160b000402000603000c06000e0700060300160b001e0f000e0700160b00
-160b000c06000e07000e0700180c00060300ff9d3affa952ffa040ff9b36201000261300
-1e0f001e0f00301800ffa64cffa244ffa448160b00201000281400160b00201000201000
-281400160b001e0f00180c00180c00160b00160b00160b002010002613001e0f00160b00
-2814000e07002814000e0700140a002010001e0f002010002010001e0f00201000140a00
-0603002010002010000e0700201000020100180c00201000060300060300201000140a00
-0c0600160b00201000201000160b00160b00160b000e07001e0f000e07001e0f00160b00
-0c0600281400180c001e0f000e07000e07000e0700201000160b00160b000e0700160b00
-2010000603002010000e0700020100180c00140a001e0f00160b00160b002814000e0700
-160b00160b00180c00180c00160b00160b002010001e0f00201000180c00060300160b00
-2613001e0f00140a00201000160b00160b00160b00201000140a002010000e0700160b00
-1e0f002010000e0700160b00160b001e0f002010000e0700422100160b00180c00160b00
-0c0600281400160b00160b000e07002010001e0f00140a000e07000e0700140a00060300
-160b002010002010001e0f00201000261300201000140a00140a000c06000e0700261300
-040200040200201000301800201000160b000e07002010000e0700160b003018000e0700
-201000201000160b00180c000e0700140a001e0f00160b00160b00201000201000160b00
-140a002814000c06000e0700160b00160b00180c00160b00261300180c002613000c0600
-0201000e0700160b00160b000e0700180c000c0600180c002010000e0700160b001e0f00
-180c001e0f00180c00160b002613000e0700180c00180c00160b00160b00180c000e0700
-2010001e0f000e07000e07000e0700180c002814001e0f000e0700160b00160b000e0700
-160b00160b00201000160b00160b00160b002613000e07001e0f000e07000603002e1700
-261300160b002613002010002010002010002010002e17000e07002010000e0700180c00
-0603000c0600180c00160b00060300160b00180c00060300160b00140a00160b00060300
-160b00160b00160b00201000201000160b00261300140a00040200160b002e1700180c00
-201000140a00381c00201000140a00281400160b000e0700160b000e0700140a00281400
-180c002010000e0700180c00140a00201000281400180c000e0700201000140a00160b00
-160b00201000301800160b00201000180c002814002010002613001e0f00160b00201000
-0e07000e0700160b00160b002010000c0600140a00261300140a000e07001e0f00020100
-0e0700180c000e0700160b00180c00180c00180c00160b002010002814000c0600201000
-281400160b00160b00160b00180c00180c00160b00160b002814000e0700180c001e0f00
-0c0600301800281400ffa142201000201000160b00160b002e1700180c003a1d00301800
-4a25004020005229005229005a2d00321900442200281400201000160b00160b002e1700
-261300201000ffa74e201000281400140a00140a00060300160b00180c00140a00160b00
-180c00160b001e0f002010000e07000e07001e0f00180c00160b00201000160b00180c00
-0201002010002010001e0f000e0700321900180c000c06002010001e0f00201000201000
-060300140a00180c00140a00160b000e0700201000140a00180c000e07001e0f00140a00
-1e0f00201000261300201000180c002613002010000e0700
-0c06000402001e0f00160b00160b00261300180c00140a000e07001e0f00160b001e0f00
-160b00140a00160b00281400180c00160b00180c00160b00201000201000281400261300
-0c06001e0f00140a000e0700180c00201000180c00160b00160b00160b000603000e0700
-0603000e0700160b000603002010002010002613000c0600160b00160b001e0f00180c00
-381c000201000c0600180c00060300160b00160b00020100160b00140a000e0700040200
-0c06000603000e07000e0700160b00140a000c06000c0600060300040200160b00160b00
-160b000e0700020100160b002010000e07000603000e07000e07000e0700140a00140a00
-160b000e07000c0600180c00281400140a00160b00140a000e0700160b00ff9e3cff9d3a
-ffa448ff9b36ffa448140a00281400160b000e07000e0700261300140a00261300201000
-0e07000c06001e0f001e0f00160b00160b00160b00160b000e0700281400180c00281400
-281400140a00180c002010003219000603000603000e07000603001e0f00201000281400
-180c002814002e1700281400160b002010000603002010002010001e0f00180c00160b00
-160b001e0f00160b002814002e1700160b00040200180c002613001e0f00180c00201000
-160b00140a00180c00140a000e0700281400160b002e17001e0f00160b000e07000e0700
-160b00160b00160b000e07002613000c06000e0700281400261300160b00020100160b00
-180c00201000201000160b001e0f00201000180c00180c00160b002010000e07001e0f00
-0c0600160b000e0700281400140a00020100160b00160b002e17000e0700140a00180c00
-160b00160b002e1700160b00140a000e0700160b00160b00140a000e07002010001e0f00
-2010000e0700261300160b00160b00261300140a00140a00160b002814000e0700201000
-2613000c06000c0600160b00140a00201000281400160b00140a00140a000e0700201000
-160b00180c00160b00160b00060300040200140a001e0f000e0700060300201000180c00
-160b00160b00180c002814000c0600160b00160b00160b000e0700180c000e0700201000
-1e0f000c06000c0600201000140a00261300160b000e0700160b000e0700160b00140a00
-201000201000201000201000160b00201000140a000c0600301800160b00140a00201000
-140a00180c00160b00160b00180c001e0f00060300160b00261300160b00281400160b00
-201000160b00160b00140a000402001e0f00160b00261300160b00160b000e0700180c00
-0e0700140a00160b000e0700201000180c00140a00180c002613000e0700140a00140a00
-2010000e07002010001e0f000c06002010001e0f001e0f00201000180c00180c000c0600
-0e0700160b002613001e0f000e07000e0700160b00180c000c06002e17000c0600201000
-0c0600020100201000160b001e0f00201000160b00160b00140a001e0f002814000e0700
-160b00160b00281400180c00160b00140a00160b001e0f00180c000e0700201000140a00
-180c00160b00281400180c000e07000603002010000c0600040200040200160b00281400
-2010002814001e0f00261300160b000c0600180c00160b000e0700180c00140a001e0f00
-0c0600180c00261300180c00160b002e17002010000c0600381c00160b00180c001e0f00
-160b00180c001e0f002010000e0700180c00140a001e0f00180c000c06000e0700140a00
-0603000e0700140a000e0700160b000e0700160b00160b00160b00180c00180c00160b00
-1e0f000e0700301800160b00ff9b36160b00160b003a1d00201000301800281400321900
-542a003a1d004a25004a25005229002e17003018002010002814002e1700160b00281400
-2613000e0700ffa1420e07002010001e0f001e0f000e07001e0f002613000e07000e0700
-2814002010002010000e07001e0f00160b00140a00140a001e0f00160b000e0700160b00
-2010001e0f003018001e0f001e0f002814002613002e1700201000180c00160b001e0f00
-0402001e0f002613001e0f00160b00201000140a002e1700160b000e07000e0700201000
-201000160b002010000e07000e07000e07002814000c0600
-2010001e0f00180c000e07001e0f002010002010001e0f00201000020100160b00140a00
-261300160b001e0f00180c00160b00180c00201000160b00180c001e0f00180c00160b00
-0e0700160b001e0f000e0700160b002e17002010000c0600160b00140a00201000060300
-0603000603000c06000e0700201000261300160b00040200140a000e0700160b000e0700
-281400201000160b00160b00160b001e0f00160b001e0f00140a00160b002613000e0700
-160b00180c00180c00060300160b00160b001e0f00160b00140a00160b00140a000e0700
-140a00180c000c0600160b000e0700180c000e07000e0700160b000e07001e0f000c0600
-0603001e0f00140a00160b000e0700201000140a00281400140a00160b00140a00140a00
-160b002010002010000e07000201001e0f00140a00281400140a00160b000c0600160b00
-160b000e07002010001e0f000e0700180c001e0f00180c00180c00180c00160b00261300
-261300140a000e0700180c00020100160b00201000180c000e07001e0f001e0f00160b00
-180c002010000e07001e0f00160b001e0f00160b00160b001e0f00140a000c0600160b00
-160b00160b00180c002814000e07000e0700281400160b00020100060300160b00261300
-160b00160b001e0f000603000e0700160b001e0f000e07001e0f00180c000e07000e0700
-160b00160b00160b000e0700140a00180c002010000e07001e0f00281400060300281400
-2814000c06000e0700201000180c002e1700140a00160b001e0f002010000e07001e0f00
-201000060300201000180c002010001e0f00160b001e0f00140a000e07002010000e0700
-160b00160b000603000e0700201000180c003a1d001e0f000e0700281400160b00281400
-160b00140a000e0700201000160b00160b002814000e0700301800140a001e0f00140a00
-180c000e07002e17001e0f00140a00160b00201000180c000e0700140a00281400040200
-180c001e0f00281400060300201000180c001e0f001e0f000402000e0700160b00201000
-060300140a00201000180c00281400160b00301800160b00201000140a000e0700281400
-0e0700140a00180c001e0f00160b00160b00160b000e0700140a00201000160b00180c00
-1e0f00060300140a00160b000e0700180c000c06000e0700201000180c000c0600060300
-201000160b00140a002010000e0700160b00180c002010001e0f000e0700140a00160b00
-160b00201000180c002010000c06000402002010001e0f00160b00160b002e1700201000
-060300180c00060300201000060300160b001e0f00140a00160b00201000201000160b00
-281400201000261300160b000e07000e0700201000160b002010001e0f000e0700180c00
-2e1700060300160b00160b00160b00160b00160b002010002010000402000e0700201000
-140a000e07002814001e0f000e0700301800180c00180c002e17000e0700160b00160b00
-2010000603001e0f000c0600261300160b00180c00140a00180c000603002814001e0f00
-160b000c06000c0600180c000e07000e0700180c00160b00160b00180c00140a00140a00
-0e07002010002010000402001e0f00160b000e0700140a000e0700201000160b00201000
-1e0f00160b00180c00140a00140a00201000160b00140a002010001e0f00160b00261300
-0402001e0f001e0f00201000201000180c00160b00160b00060300160b001e0f00201000
-1e0f00160b002010002814000e0700060300180c00140a00060300180c00060300060300
-2010000e07000e0700201000ffae5c1e0f00140a001e0f00281400381c00281400281400
-301800301800422100381c004a25003219003018002e17003a1d002010001e0f00301800
-180c00281400ffa1422814002010000e0700201000160b00160b00180c000e0700201000
-0c0600180c001e0f00140a00261300140a00140a00281400261300261300160b00140a00
-140a00140a00261300201000140a00160b00281400160b002e17002814003018001e0f00
-020100201000140a00160b00160b001e0f00160b00180c003a1d002010000e07000e0700
-160b001e0f00261300140a00201000160b00160b001e0f00
-160b00301800060300201000160b00160b00160b00201000201000180c00160b001e0f00
-2e1700ffa64cffa74effa142ff9e3cff9932ff9b36ffa74e0e0700281400180c00301800
-2010000e0700040200140a000e07002814000c06002e1700160b00060300201000201000
-2010003018000e0700160b00160b000e0700160b00201000160b002613001e0f00160b00
-160b002613000e07000e0700180c001e0f00301800060300160b001e0f00160b00140a00
-140a00201000180c000e07002010000201000e0700140a00020100020100140a00060300
-160b001e0f000e0700140a000e07000e0700140a000402000201000e0700301800160b00
-0e0700160b00140a000603000c0600060300160b000e07002010001e0f000c0600180c00
-0e0700201000180c00261300160b00201000160b00160b001e0f00201000160b00160b00
-0603002010003018000c0600140a00160b00140a000e07002010000e0700160b000e0700
-160b000e0700261300140a000603001e0f002010000e0700140a001e0f002010003a1d00
-2010002010001e0f00160b00160b00160b002613000e0700201000140a001e0f00160b00
-160b00060300180c004422002010000e07001e0f002010002010002010001e0f001e0f00
-0e0700140a00140a000c06001e0f001e0f000c0600140a00160b00060300140a00160b00
-180c000e0700140a002010000201000e07002010001e0f00140a00160b001e0f00160b00
-1e0f00201000160b00160b00160b000e0700261300160b00160b00201000160b00160b00
-160b000e0700160b002010000c0600140a000e0700140a00201000261300261300261300
-2010002613000e07001e0f00201000160b00160b002010002010000c0600160b00261300
-1e0f00201000160b002814000e07000e0700201000160b001e0f00201000180c00160b00
-180c00160b00160b00060300140a002010000e0700180c00160b000603002010000c0600
-261300160b00160b00160b00160b00140a00201000281400261300140a002e1700160b00
-201000180c00160b000c0600201000140a002010000e0700281400160b00160b000e0700
-160b001e0f00140a00160b000c06000e0700160b00201000180c00201000180c00160b00
-261300140a000e07000603002010000e0700060300140a00180c00160b000e0700160b00
-160b00160b00281400160b002010002613000e07000e07000e0700180c00201000261300
-060300160b00160b00140a000c0600180c00060300180c000e0700140a00140a001e0f00
-0603002010000e0700160b000e07000e0700160b00180c00140a00160b00180c000e0700
-0e0700180c00160b001e0f00140a000e07002010000201000603000603002e1700160b00
-160b000c0600180c00160b000e07002010000c0600201000180c00180c001e0f00140a00
-1e0f000e0700180c00201000140a00060300201000180c000e0700160b000e07000e0700
-180c00201000160b00160b00201000140a00201000281400180c002010002814000e0700
-180c000e07000e07000e07000e07000c0600180c00060300060300160b00160b00160b00
-1e0f00160b00160b00201000140a00160b00201000160b000e07000e0700140a000c0600
-160b00160b00180c00180c002e1700180c000c0600201000201000201000040200201000
-2010002613001e0f001e0f000c0600261300160b001e0f001e0f002010000c0600180c00
-140a002010000e0700180c00160b000e0700180c00160b00281400160b000603000c0600
-2010003018002010000e0700201000ffa74e1e0f00160b00201000160b002e1700301800
-422100381c003018002814002e17004221003a1d00301800301800180c00301800140a00
-1e0f00160b00ffaa540c06000e07002814001e0f00160b00140a00201000160b00261300
-140a00160b00281400060300281400140a00160b00160b000e07000e0700301800160b00
-140a00180c00160b00160b00160b000e0700281400160b00301800140a002613002e1700
-1e0f00040200040200160b00201000180c000e07000c06000e07002814002010001e0f00
-261300160b00160b00140a000e07002814002814001e0f00
-160b00180c00140a002010000e07000603000e0700180c001e0f000e07001e0f00281400
-ff9c38180c002010002010002814002010002814000c0600ffa54affa448140a00160b00
-160b002010000e0700160b00160b000e0700140a002010000c06001e0f000c0600140a00
-1e0f00281400140a000c0600160b00060300160b00201000180c00160b002814000e0700
-020100140a00160b002e17000e0700281400201000180c00160b000603000603000e0700
-281400261300180c000c0600160b00160b00160b00160b00180c00060300060300060300
-140a000201002613001e0f000c06001e0f00160b00160b000e0700060300180c00160b00
-160b00261300060300180c000e07001e0f00180c00160b00160b000e0700140a000c0600
-160b00160b00180c00160b00140a002010001e0f001e0f000c0600180c002010000e0700
-160b00060300040200201000261300180c00160b001e0f001e0f000c0600281400060300
-180c00160b00140a001e0f00160b003018000e07001e0f002814000e0700160b00261300
-180c003018000e07001e0f000e0700201000160b00160b00201000180c002613000e0700
-2e1700140a00060300402000180c002010001e0f001e0f000c06000e0700140a001e0f00
-0e0700180c00160b00160b00180c00201000160b000c0600201000201000201000180c00
-2814002010002010000e07000e07002814001e0f00160b00180c001e0f00201000160b00
-261300160b00160b00160b00201000201000261300201000140a001e0f00160b00060300
-160b000e0700180c000e0700180c00180c00160b00261300160b000e0700180c000e0700
-040200060300180c000e0700160b00180c000e0700281400201000261300140a001e0f00
-281400160b000402001e0f00160b00201000261300140a002814001e0f00281400180c00
-201000201000281400160b00060300160b00140a00180c00160b00160b000e0700140a00
-0603001e0f000c0600180c002613000e0700201000201000201000201000201000160b00
-201000261300140a00160b000e07002010000e0700160b00160b00160b00180c00201000
-281400160b002010001e0f00201000160b00160b000e07000e07001e0f00301800201000
-160b00180c00201000160b00140a00160b00301800160b000e07000e0700180c001e0f00
-1e0f00060300060300301800020100160b00160b00281400261300201000160b00201000
-0e0700160b002814001e0f00201000160b001e0f001e0f001e0f00140a000e0700180c00
-1e0f00281400020100160b002814002814002010000e0700201000060300160b00180c00
-261300160b001e0f00201000160b002010002010001e0f00180c00040200180c000e0700
-180c00140a00180c00060300160b00180c000e0700180c00040200180c00321900140a00
-160b00180c000402000e0700060300160b00201000140a00160b000e0700180c000e0700
-180c001e0f00140a002010000e07002010000e07002010000c0600140a00201000160b00
-180c000603000e0700160b00201000180c000e07000e07000e0700140a000e07001e0f00
-140a00281400201000060300201000160b001e0f00160b000c0600040200180c00201000
-140a00160b002814000e0700281400160b000e07001e0f00160b000c0600201000140a00
-160b002613002e1700281400160b00201000180c00160b001e0f00201000160b00160b00
-3018002613002613000e0700201000160b00140a00060300140a002010000e07000e0700
-2613001e0f00160b00160b00201000140a00ff9830201000261300201000261300140a00
-160b002814002814001e0f00201000422100301800201000201000201000180c00140a00
-201000ffa64c2010003018001e0f002010001e0f00140a000e0700201000201000160b00
-2010000e0700281400180c00160b001e0f002010000e07000c0600281400140a00160b00
-0e0700160b002e1700160b001e0f002e1700201000160b000402002613002814000e0700
-201000301800160b000e07000c06000e0700301800160b002e17000c06000e0700201000
-160b000e0700180c00160b002010000c0600180c00281400
-0603002010000e0700160b00180c000e0700160b00160b00201000201000160b00ffa142
-201000261300201000261300160b002010002613002010000c0600160b00ffa040281400
-2010000e0700020100201000201000180c00140a000e07000c0600180c000e07000c0600
-020100281400140a00140a00160b00160b002010000e0700261300180c00ff9b36ffa448
-ffa448ff9e3cffa54affa142ffa64cffa64c2613000e0700201000160b000c0600060300
-0e0700180c002613000201002010000e07002e17001e0f000e07000e0700140a000e0700
-0e0700160b000e0700060300060300180c00160b00160b00040200160b00180c00180c00
-040200160b00180c00160b000c06000e07000c0600140a00060300261300140a00160b00
-160b00160b00160b002814002814001e0f00261300160b000e0700180c000e0700180c00
-180c00261300160b002010000c0600160b001e0f00160b000e0700160b00180c00140a00
-140a00301800140a00140a00180c002010003a1d002613001e0f00301800140a000e0700
-180c00160b00180c00301800160b00180c000e0700180c000e0700180c000603000e0700
-180c002010000e07003a1d000e07001e0f002010002814002e17000e0700281400140a00
-160b000e07000e07001e0f00160b002010000e0700040200180c000e0700201000281400
-160b000e0700180c00140a00201000180c000e0700160b000e0700160b00281400201000
-060300160b002010001e0f002010000c0600261300020100160b00160b00060300020100
-0c0600060300160b00201000140a00160b00201000180c00140a00201000160b00160b00
-1e0f001e0f00160b00201000160b002010002814000e0700422100160b000e0700140a00
-140a00140a00160b000e0700140a000603002010002010000e0700160b00201000040200
-160b00140a001e0f00201000160b00140a00180c00261300180c00160b000e0700261300
-0201001e0f002010002010002814000e0700160b00140a002814002814000e07001e0f00
-180c00140a000e0700160b00160b00160b002613000e0700060300140a001e0f00180c00
-201000281400160b00160b000c06002010002010001e0f00060300201000160b00301800
-160b00201000261300160b002814001e0f00180c000c06000c0600160b00060300140a00
-060300160b00140a00060300180c001e0f00201000180c000e0700140a00160b000e0700
-160b001e0f00160b000e0700261300160b00160b00140a00160b00160b00060300140a00
-160b00140a00160b000e07002814000e0700160b00160b000e0700160b000201001e0f00
-2010000e07002010001e0f000e0700201000160b00160b00160b00140a001e0f00180c00
-201000060300201000060300301800060300160b00140a000e07000e0700140a00160b00
-160b002814000e0700140a000603000e07000603000c06000e07002814000e0700180c00
-201000281400180c00140a00140a00180c00201000160b001e0f001e0f00201000180c00
-2e1700020100160b00040200160b001e0f00180c000e0700180c00160b00201000160b00
-160b001e0f001e0f00201000160b000c06000e0700201000020100180c00060300160b00
-301800160b00140a001e0f000e0700160b00180c00160b00140a00160b000e0700201000
-160b00060300201000261300160b00160b001e0f00201000140a00281400160b00261300
-160b000603002e17000e0700160b00422100180c00180c00140a00201000160b00160b00
-180c00180c00180c00180c00160b00140a00ffa142180c00140a00140a00160b00160b00
-160b002814000e0700281400140a00160b00281400180c003018001e0f00180c00201000
-180c00ff99320e0700201000180c00160b00140a002814002613001e0f000e0700201000
-201000140a001e0f00180c00160b00160b00140a001e0f00160b002613001e0f00160b00
-281400060300140a000c06000e0700060300160b00201000160b001e0f00261300160b00
-160b000e07000e07001e0f00020100180c000c06001e0f000e07002010000c0600261300
-180c000e07000c0600180c00180c00281400261300180c00
-261300140a00261300180c00261300201000201000281400160b001e0f00ffa54a261300
-2010002814001e0f002010002e1700281400281400261300160b002010000e0700ffa244
-160b00201000060300160b000603001e0f001e0f000e07001e0f00160b000e0700160b00
-2e1700160b00201000160b00160b00201000ff9e3cff9e3cff9326ffa040160b00160b00
-0c0600381c00261300160b00201000281400ff9d3affae5cff9b36ffa54a140a00160b00
-2010001e0f00160b00160b000603001e0f00281400160b001e0f00160b000e0700040200
-1e0f00160b000603000e0700060300140a000e0700180c000c06000e0700160b00020100
-0c0600180c00060300160b00020100201000020100180c00261300140a000c06000c0600
-180c00160b00160b00160b000603000c0600040200160b00060300160b00160b000e0700
-0e0700160b002814001e0f000e07002613000e07000c0600281400140a00140a00160b00
-140a000e0700160b00160b002010000c06000e07002814002814002814000e0700281400
-160b00180c001e0f00180c00301800160b000e0700160b001e0f001e0f00201000160b00
-160b00180c00160b00180c00160b00020100261300180c000c0600040200180c00180c00
-2010002010001e0f00060300180c000e0700160b000e0700160b00160b00180c00201000
-281400140a000e0700180c000c06001e0f00160b000c0600160b000e0700060300040200
-180c000603000e0700281400281400160b002613001e0f00160b00180c00201000140a00
-201000160b00180c002010000e0700160b00160b002010000c06000e07001e0f00160b00
-0e0700201000261300180c00160b000e07001e0f002010002010001e0f00261300281400
-140a00160b001e0f000e0700180c002010001e0f00160b000e0700160b00060300140a00
-2010002e17000c06001e0f00160b002613002814001e0f00160b002010002010000e0700
-0e0700201000160b00140a003018000e07000e0700140a00180c001e0f000e0700140a00
-201000261300160b000e0700281400140a00201000201000160b000e0700060300201000
-0e0700140a00180c00160b00180c000c0600160b000c06002613000e0700201000140a00
-1e0f00201000160b002010000e07002613002e17000e07001e0f00040200180c000e0700
-0e07002010001e0f00160b00160b00201000160b002010002814002010000e0700160b00
-140a00160b002010000603000603001e0f001e0f00201000140a002814001e0f00140a00
-0e0700160b001e0f00160b00160b000c0600160b000e07000e0700060300160b00201000
-140a00381c002e1700140a001e0f001e0f00160b00160b00160b002010001e0f00160b00
-1e0f00281400201000140a00160b00160b000603001e0f00201000060300180c00160b00
-0e0700201000261300180c00261300160b002814000e0700160b001e0f00201000261300
-1e0f000603002010002010001e0f000c06001e0f002613001e0f002613002e1700160b00
-140a00160b00201000160b00160b003018002e1700060300160b000e0700160b00180c00
-0e07001e0f00180c002010000e0700160b00160b00140a00180c001e0f00160b00281400
-261300160b00160b00201000140a00180c00160b00160b00281400201000160b00261300
-201000180c002814000e0700201000160b00160b00201000180c00140a002e1700140a00
-0402000e07000e07001e0f00160b00140a00201000201000140a001e0f001e0f00201000
-160b00281400180c00160b00201000180c00281400ff9d3a281400261300140a00201000
-3a1d00201000180c00201000160b002e1700180c00160b001e0f00160b00201000160b00
-ff9932160b001e0f00180c00160b00281400180c00160b001e0f00201000060300201000
-1e0f00201000281400160b00160b00020100140a000e0700180c00201000160b00160b00
-140a000e07002010001e0f00160b00060300060300281400140a000e0700160b00160b00
-2010001e0f00060300261300321900140a00160b002e17001e0f00261300201000160b00
-140a00140a00140a00160b002814002613000e07000e0700
-0c06000c06000e07000e07002010000e0700140a00180c00020100ff9932160b00201000
-180c002814002e17002814002e1700281400281400140a001e0f001e0f00201000ff9932
-2814000201001e0f00020100281400060300160b00140a00160b00160b00140a00261300
-160b002010000c0600180c00ff9c38ff9b361e0f00160b00160b00180c00281400201000
-060300160b00160b002814002e17000c0600321900201000201000160b00ffa040ffa040
-ffa54a2814002010000e0700160b00201000160b00140a00180c001e0f002010000e0700
-140a00160b00180c000603000e0700020100261300140a00020100060300160b00060300
-201000160b00140a000201000603002613000c06004221000c0600160b001e0f00060300
-301800160b00160b00160b002010002010000603000e0700201000160b00140a00040200
-1e0f002613001e0f000603001e0f000e0700160b000603000e07000e0700160b00201000
-1e0f00201000160b002010001e0f002010000e0700180c001e0f000e0700140a00160b00
-201000180c00180c00160b00201000140a00180c00160b00160b002814000e0700180c00
-180c002e1700160b00160b00140a00160b000e0700180c00180c00160b001e0f00281400
-201000060300140a00140a001e0f00160b00160b00180c00160b00160b00180c000c0600
-160b00140a002010000201001e0f00180c000402000e07002814002010002e1700060300
-0e0700201000160b00140a001e0f001e0f00160b00201000160b00160b002613000c0600
-160b000c06000e0700160b002613001e0f002814000e0700261300160b000c0600160b00
-1e0f00140a00160b000c0600140a002e1700261300201000160b00321900160b00160b00
-1e0f00160b00201000160b000e0700201000160b002814000e0700060300301800160b00
-160b001e0f00060300160b001e0f00160b001e0f001e0f003018001e0f000c0600201000
-0e0700180c000e0700160b002613000e0700201000160b00281400180c00140a00201000
-1e0f00160b002613002010001e0f00180c00160b00281400140a001e0f00160b00160b00
-1e0f00180c000e07000e07001e0f00140a000e0700160b00201000180c000e0700140a00
-160b000c06000603002814002010000e07002010002613001e0f00160b000e0700020100
-261300201000160b002613000e0700140a00060300281400180c000e0700281400140a00
-160b001e0f00020100160b00261300201000140a000201000c06000e0700140a001e0f00
-160b00201000180c000e07000c0600281400180c00160b00201000060300201000160b00
-2010002613001e0f00160b000e0700140a000201000e07001e0f00160b002814000e0700
-160b00060300180c00160b001e0f00040200160b00201000261300201000180c001e0f00
-0e07002010000e0700201000180c00020100160b00160b000e07002010002613000e0700
-2010000e07002010001e0f00160b001e0f002010000c0600180c002010002613001e0f00
-201000160b001e0f00180c00201000140a001e0f00261300160b00160b001e0f00201000
-160b000c0600160b00180c000c0600140a000603000c06000e0700160b00160b00261300
-201000060300160b00160b002613000e07001e0f00261300261300160b00160b00281400
-180c00160b000e0700301800160b002814000e07000e0700201000160b00020100060300
-0e0700160b001e0f00201000261300040200140a00261300140a00160b000e0700201000
-1e0f000e07001e0f00180c001e0f00281400140a00301800ffa54a1e0f00180c00020100
-0c06000e0700140a00201000201000060300160b00201000281400160b00261300301800
-ffa0401e0f00180c00140a000e07000e0700160b002814002010002010000e07001e0f00
-301800160b003018001e0f001e0f000e0700140a00160b002613001e0f00180c00160b00
-020100060300160b00140a00160b002010000e07000e0700160b00281400180c00160b00
-1e0f000e0700140a00140a00201000160b000e0700201000160b001e0f00160b00381c00
-261300261300160b000e0700281400140a00140a00160b00
-0c06000e0700160b00301800201000160b00160b00140a00201000ff9b363018001e0f00
-201000321900201000201000281400281400321900201000281400180c00201000160b00
-ff9b36201000060300060300140a000e0700160b00201000160b00060300180c00160b00
-180c00160b00ff9e3cff9d3a2010002010002010003018001e0f00301800281400281400
-201000281400180c003219002e17002e17001e0f00160b000e0700160b00201000201000
-140a00ffa54affa4482e17003219002e1700381c000c06000603000e07000603000e0700
-2010002010000e0700160b00140a00160b000603001e0f000e0700060300140a000e0700
-1e0f000e07000e0700160b000e07000e0700180c000603000e0700160b000603000e0700
-020100180c000c0600060300201000160b000e0700160b00201000281400261300160b00
-140a002613002814000e0700160b00160b00140a000603000c06002010000e0700140a00
-180c002e1700201000180c001e0f000e07002814002010001e0f000e0700201000140a00
-1e0f001e0f00201000201000281400201000180c000e0700160b00261300261300201000
-0e0700261300261300201000160b00381c00160b00180c00301800180c001e0f000c0600
-180c00140a00160b00160b00180c00160b00180c002010000c0600180c00160b000e0700
-0e07001e0f00160b00160b002010001e0f000e0700160b000603000e0700140a000c0600
-3018000c06002814002010002613002814000e0700160b000e0700180c00301800261300
-2613002814002613000e0700160b00180c00160b000e07000c06001e0f000c0600281400
-281400422100160b000e0700140a002010002010000e07003018001e0f00301800281400
-0e07000603002010002010001e0f00160b00261300261300160b001e0f00160b00301800
-201000160b00160b00180c001e0f00160b00140a00160b00160b00201000180c000e0700
-0603002010000c0600160b000c06002613001e0f002010000c0600160b00180c00160b00
-201000160b002010000e0700160b000402003018001e0f00180c00281400180c00020100
-2814002e17002010000e0700201000160b00160b001e0f001e0f00160b00281400160b00
-160b002010002010000e07001e0f001e0f003018001e0f00160b00160b00140a00160b00
-160b00160b00140a00160b00160b001e0f00261300140a00201000180c00160b00140a00
-180c00180c001e0f00180c000c06000e0700180c00160b000c0600160b002010000e0700
-0e07000e07000e0700261300201000160b000c06001e0f000e0700160b00160b00180c00
-160b003a1d002010000e0700180c00040200180c00180c00140a00060300160b00160b00
-261300160b00160b00160b00140a00160b00201000180c000e07002e17000c0600140a00
-180c00201000201000160b00160b000603002010000e0700140a00140a002010001e0f00
-2010000603002010000e0700140a002e1700201000281400281400180c00060300160b00
-160b00180c00160b000c0600180c00140a00140a00160b000201001e0f002010000c0600
-0e0700160b002814002010000e0700160b00060300160b00160b00201000281400281400
-1e0f00160b000e0700160b000c06001e0f002814002010002613000e07000e0700180c00
-160b00160b002010002613002010002010001e0f00160b002814001e0f00140a00201000
-160b00180c002010000e0700140a000e0700261300201000301800160b00160b00261300
-180c00301800201000140a002010001e0f000e07001e0f00201000ffa142ffa0400e0700
-160b00201000261300160b00281400140a00160b00281400180c00160b000e0700ffa040
-1e0f002010002010001e0f00180c000402000201002814001e0f001e0f000e0700301800
-261300140a002814000e0700160b00201000201000160b00201000281400140a000e0700
-281400160b00180c00160b002010002814002613002814000e07000e0700160b001e0f00
-180c000e07002010001e0f00281400140a001e0f00201000160b00160b00060300180c00
-160b00160b001e0f002010000e0700201000180c00160b00
-2613000e07000e0700160b00201000201000160b00180c00ffa1422010001e0f00201000
-2613001e0f003018003219002e1700422100281400381c00180c00180c00160b00281400
-ff9b361e0f00180c00281400160b00060300140a00060300180c00201000140a00160b00
-ff9c38ffa74e160b002010002010001e0f001e0f002e1700201000180c00201000281400
-180c002613002814003018002010002814002814002613002010002010002814003a1d00
-201000261300261300ffad5affaf5e160b00160b00201000180c000e07000e0700140a00
-1e0f00160b000e0700060300201000060300160b00060300201000040200060300180c00
-0603000603000e0700020100160b000201000e07000e0700140a000603002010000c0600
-160b00160b00140a000e0700160b00140a000603002010000e07000603000e07001e0f00
-160b00301800180c000603000c0600180c00160b001e0f00140a001e0f00160b00160b00
-2613000201000e0700201000180c00160b001e0f000e07002613002e1700201000201000
-2010000e07000e07002010002010000c0600160b00060300160b002814002814002e1700
-160b00160b001e0f002613000e07000e07000e07000e07001e0f00140a00060300201000
-0603001e0f00160b001e0f00201000160b002814002010000c0600180c002814001e0f00
-180c00180c00201000020100201000140a002613000e07001e0f001e0f00160b001e0f00
-201000201000140a00180c00060300281400160b00160b00201000160b00140a00201000
-281400201000180c00160b002010000e07001e0f000e07000e07002814000c06000c0600
-140a00160b00180c002010002814002e1700301800281400261300281400201000180c00
-160b00140a001e0f000603001e0f001e0f00160b00140a000e07001e0f002e17000c0600
-140a002613000603000e0700180c000e0700160b00201000201000160b001e0f001e0f00
-301800160b00160b00180c000c0600160b00160b001e0f002010002010002010000c0600
-2010001e0f000e0700180c000c06002814002010001e0f001e0f00180c000e07000e0700
-060300180c00180c00060300160b00140a00140a001e0f000c0600201000140a00060300
-0e0700261300180c00180c00160b000e0700160b002814000e0700180c00180c001e0f00
-140a00140a00140a000e0700160b00201000160b002613000e0700160b000e0700180c00
-1e0f001e0f002e1700160b00180c00140a002010000e0700160b00201000160b000e0700
-140a000603000e0700180c00160b00160b002010002814001e0f002010000402000e0700
-0c0600160b00060300160b00140a00160b00140a00201000180c00261300261300140a00
-160b00160b000e0700180c000e07002814000e0700281400201000160b000e07000e0700
-140a000c0600180c000e0700160b00201000160b00201000020100261300180c00160b00
-160b000201000e0700160b00180c000e0700160b002010001e0f00180c000e07000c0600
-1e0f00160b00140a000c0600140a00180c001e0f00201000160b00160b00201000180c00
-1e0f000e07002010001e0f001e0f000e0700201000140a00160b00160b00160b002e1700
-2010001e0f00180c00140a00160b00160b001e0f00160b00160b00261300180c00180c00
-0e0700160b00180c00160b001e0f00180c002010002814004a25002010002e1700180c00
-301800160b002814001e0f001e0f00160b000e0700160b002010001e0f00180c001e0f00
-160b002010000402003a1d002814002010002010000e0700160b00201000160b00ff9e3c
-180c002010002010002613002613000c06002613001e0f00160b00160b00ffa1421e0f00
-281400180c00160b00160b002814000e07001e0f00160b000c0600020100140a000e0700
-3219000c0600180c000603001e0f00201000140a000e0700180c00140a00140a00140a00
-160b002814003018000c0600140a00160b00261300261300201000160b001e0f00201000
-180c00201000180c003018000e0700321900140a00180c00160b002e17001e0f000c0600
-1e0f00160b000603001e0f000603002613001e0f00160b00
-201000160b00140a00160b00180c000e0700201000201000ffa142201000301800201000
-2010002814002e17003018004221003219004020004221003018002010002e1700160b00
-1e0f00ffa244281400140a002010000c06000603000c0600180c00060300140a00ff9b36
-180c00160b00060300180c00201000160b00160b001e0f002613003018000c0600281400
-3018001e0f00321900301800422100261300281400201000301800261300281400301800
-2e17002010002e1700301800301800ffa244180c00160b000e0700160b00281400020100
-2010001e0f001e0f00160b00020100020100160b000e0700060300020100140a00140a00
-0e0700060300060300020100060300201000160b00140a00180c00160b002613001e0f00
-0c0600140a00140a000e0700160b00140a00160b00180c000e0700140a000e0700160b00
-140a002613001e0f00140a001e0f002010002613000e07000e0700201000180c00140a00
-0e0700281400160b00020100160b000c0600281400180c002010001e0f002613000c0600
-160b00160b000c0600201000160b00040200140a00281400140a00160b000e0700201000
-160b001e0f00140a00060300180c000c06000e0700160b00281400261300261300201000
-180c00180c00160b002010000e0700160b00201000180c000e07001e0f00180c00160b00
-2814001e0f00160b00140a00160b00020100201000140a00060300201000160b00160b00
-160b000e07001e0f00060300160b00180c001e0f00160b00201000160b002814000e0700
-301800060300201000180c00140a00201000160b00160b00201000160b00140a00261300
-281400180c00201000160b000e0700201000160b001e0f00261300201000180c00140a00
-140a000201000603000c0600160b00180c00140a00140a00201000140a000e07001e0f00
-160b00180c00160b001e0f00180c001e0f00140a00160b000e0700281400160b00140a00
-160b000c0600201000160b00201000160b000e07003018000e07000603000e0700160b00
-0e07000e0700160b000e0700140a00140a00140a00160b000e07001e0f00160b000e0700
-2814001e0f001e0f001e0f00060300381c00140a00180c00160b00140a000e0700160b00
-201000140a000e07000c0600160b000603000e0700160b002010000e0700201000180c00
-160b00140a000603000c06000e0700160b00201000281400160b00140a00160b00160b00
-201000160b00140a000e0700160b00140a000e0700180c00160b000e0700140a00160b00
-201000140a00160b00160b00180c00180c00140a00140a00201000160b000e0700201000
-0603000e07001e0f001e0f00180c003a1d001e0f00160b002613000e07000c0600160b00
-2010002814000603002010000e07000e07000e07000e0700140a001e0f00180c001e0f00
-281400180c00160b00160b00281400160b00140a00180c001e0f00160b001e0f00281400
-0e0700140a00201000160b000e07002010000e07000c06000e07002010001e0f00140a00
-0e0700060300160b00160b00160b00160b00160b00180c00180c00060300281400160b00
-2010002010002814002010001e0f00180c00201000160b00060300160b00140a00040200
-2010001e0f00180c00160b00281400160b002814000e0700160b00281400160b00201000
-160b001e0f000e0700160b00201000160b00140a00160b00160b00160b00140a00160b00
-180c002e1700180c00060300180c000e0700160b00201000160b00160b00160b00201000
-160b000e07001e0f000201000e0700140a000e07000603002010000e0700160b00040200
-ffa448ff9c38ff9e3cffa952201000281400281400ffa952ffa040ffa040180c001e0f00
-1e0f00201000140a00201000140a00160b002010003018002814001e0f00261300201000
-201000201000281400160b00180c000e0700160b00140a00160b00180c00160b00160b00
-1e0f001e0f00060300160b000603001e0f00140a001e0f00281400261300160b00160b00
-160b00160b001e0f00140a000e07000e07002010002814000e0700201000180c001e0f00
-201000160b000e0700140a001e0f000c06000e0700201000
-140a00140a000e0700180c000e07000e0700160b00201000ff9c38180c00160b00281400
-2814004422002814004221004a25004020004422004a25004020002e1700201000281400
-261300ffa1420e07000e0700020100140a000e07000c06000c0600201000ffa54a201000
-3a1d00321900160b00261300381c00160b00301800301800301800301800201000281400
-2814002e17002010002010002e17002814002010002010002e17002e1700261300402000
-201000301800301800201000422100321900ffa74e2613002010002814000e0700140a00
-140a001e0f00180c000c0600140a00040200160b00261300140a00140a000201000e0700
-2010000603002613000e07000e0700140a00180c000e0700040200201000160b00201000
-180c000e07002010002010000e0700160b000c0600160b002010000e07002010001e0f00
-1e0f00261300201000201000180c001e0f00160b00180c00201000180c00201000261300
-2010000e0700301800160b000c0600201000160b00160b000e0700160b00281400180c00
-140a003219002613000e07002e1700180c00180c002010000603002010001e0f00160b00
-1e0f00180c00040200281400140a00261300201000140a000e0700160b00160b00160b00
-1e0f000e0700160b000e0700040200281400160b00060300180c00180c000c0600261300
-201000281400160b001e0f000603001e0f00180c00180c00140a00060300160b00201000
-180c001e0f00140a001e0f00160b00140a00140a00160b00180c002010003a1d00160b00
-140a00180c001e0f001e0f00261300180c000e07000c0600060300201000140a00180c00
-1e0f000e0700140a00160b002010002814000e0700201000160b001e0f00020100140a00
-160b00160b002814002010001e0f003219000c06002010001e0f00160b000e0700160b00
-0e07001e0f001e0f00201000160b000e0700180c00160b000e0700180c00160b00160b00
-0c0600281400180c00160b00180c00281400160b00201000201000201000281400180c00
-201000060300281400160b00261300201000180c00160b00160b00180c00180c00261300
-1e0f000c0600201000180c00060300160b000c0600140a00140a000c0600261300060300
-0e0700261300180c00140a001e0f00281400160b00160b00180c00201000261300160b00
-0c06000603002814000603001e0f002010000e0700160b001e0f00180c00160b00140a00
-0c06000e07002613000603001e0f002010000e0700261300160b00140a000e0700180c00
-180c00140a002010002613000e0700160b00160b000e0700180c000c0600140a001e0f00
-1e0f00140a000e07002613000e0700180c00160b00281400160b001e0f00201000160b00
-0e0700160b001e0f00201000160b00160b00201000201000180c00160b000e0700160b00
-0c0600020100180c00180c00160b00160b00160b00180c00180c00060300160b00140a00
-180c00180c00060300201000040200160b001e0f000e07000e0700140a00160b00140a00
-160b000402000e0700160b000e0700060300201000160b00180c000e0700201000201000
-140a00160b00140a00160b00160b002010000e07001e0f002e17000c0600160b00140a00
-2e1700160b002010002010002814002010002814001e0f00160b00160b002e17000c0600
-2613001e0f002613001e0f00020100180c00201000180c00180c00160b00180c00160b00
-2010001e0f002010002814001e0f00160b00381c000c0600261300201000201000281400
-2010000e07002814000603000c0600160b00201000060300201000201000201000160b00
-201000160b001e0f000e0700ffa244ff9c38ff9428160b000e07000e07002010002e1700
-2613000e07000201000e07002010002e17002613000e0700180c00261300180c00201000
-1e0f002814000e07001e0f00160b000e07002010002010001e0f000c0600281400261300
-0e07001e0f00201000201000281400281400160b001e0f000c0600160b00160b00201000
-281400180c00201000201000160b00060300160b000c0600160b00140a00160b000c0600
-180c002010001e0f00140a002e1700160b00180c00160b00
-201000201000201000180c000e0700160b00160b000e0700ffa4482010002010001e0f00
-3018002814003018004c26004221005c2e004422003a1d00301800180c00201000160b00
-261300ff9d3a180c000e0700160b000e0700160b00140a00140a00ff9d3a1e0f00201000
-160b00160b002613002814002e17004020003018002e17004422002814004020003a1d00
-301800422100381c002e1700381c002e17001e0f003a1d002e1700301800381c00301800
-381c002010003018003a1d003a1d00381c00301800ffa64c2814002e1700060300140a00
-160b00201000261300180c00201000180c00140a000603000e07000201000e0700040200
-0201000c06000603001e0f00060300160b000603001e0f00180c000c06000603001e0f00
-160b00060300160b001e0f00180c001e0f00180c00160b000603000e0700201000160b00
-0e0700020100201000160b00281400060300160b00180c000e0700140a00160b000e0700
-140a00140a00060300281400201000160b00040200180c002e1700301800261300321900
-140a00160b002010001e0f000e0700180c00140a00180c00140a00040200180c00180c00
-160b00201000140a000c0600180c000c0600201000160b000e0700160b000e0700201000
-0c06000e0700201000201000140a00160b00281400180c00160b00180c002010000e0700
-160b00301800060300160b00201000160b00060300060300180c000e07001e0f00180c00
-140a00321900140a00281400201000160b001e0f00160b00160b00301800180c00281400
-180c00160b00180c002814002814000e07001e0f002010000402002613000e0700160b00
-201000180c00140a00201000180c00060300160b00281400281400140a001e0f00201000
-261300140a00281400180c00160b001e0f00160b002613000e0700060300160b00160b00
-0e0700160b00180c00160b002010002010002010000e0700140a00160b00180c00160b00
-160b00201000180c00140a000e07001e0f00140a00160b001e0f000e0700160b000e0700
-060300040200140a00160b00201000160b00180c000e07001e0f00281400180c00301800
-2010000e0700160b001e0f00160b00180c002010000e07002010002814000c0600201000
-180c00020100201000281400301800160b002613001e0f000e07002613000e07000c0600
-1e0f00180c00281400160b00160b002010000e0700180c001e0f000e0700140a000c0600
-1e0f000e0700281400140a00180c00160b00180c00201000180c000e0700140a000e0700
-0e0700060300140a001e0f000603002613000e07001e0f00140a002613001e0f00060300
-1e0f000e07001e0f000e0700201000140a00140a000e07000c06000c0600180c00201000
-060300281400180c000603000201000e07000e0700160b00060300060300180c001e0f00
-160b000e07001e0f000402000c0600160b002613002010000e07001e0f00281400281400
-261300180c00140a00261300160b001e0f000e07001e0f00201000160b002e17000e0700
-160b00140a00180c001e0f00160b00160b00160b00140a000603002814002010001e0f00
-160b00180c00261300160b00160b00140a00140a001e0f000e0700060300140a00060300
-201000160b00180c00160b00261300261300281400060300140a00160b00201000160b00
-201000140a000e07000e07000c0600140a00160b00180c00140a00281400160b000e0700
-2010000e0700180c00140a000e07000e07001e0f000c06002e1700160b002010001e0f00
-201000160b000e07001e0f001e0f00180c00160b00140a00201000160b00180c00040200
-180c00201000201000160b002e1700180c00160b00201000140a00160b00160b00281400
-180c00201000180c002010000e07000603000e07000c06000e07002613000e0700180c00
-060300180c00160b001e0f00180c00180c00160b000c0600160b001e0f00160b00180c00
-281400180c00140a000e07002814002010003018001e0f00180c000e07000c06001e0f00
-160b00160b00201000060300201000180c002010002010002814000e07002814000e0700
-0e0700201000160b00201000060300201000201000160b00
-160b002010001e0f00060300140a000e07000e07001e0f00ff9b36180c00160b00281400
-281400201000301800381c004a25004c26004221003018003018002010002e1700180c00
-160b00ff99320e0700160b00140a00201000160b00180c00ffa244160b000e0700201000
-201000201000160b00180c002e17003219002814002e1700281400321900381c00422100
-4a25002010005229004422004422001e0f003018003a1d003219003219003018003a1d00
-3a1d003a1d00542a003018004a2500321900281400381c00ffa64c160b00281400160b00
-160b00160b001e0f00201000140a000e07000c0600160b000201000603001e0f000e0700
-0603002613000402000e0700180c000e07000c0600160b000c06000e0700160b00261300
-160b002e17003219002010000e0700160b001e0f00261300060300160b000e0700201000
-201000140a002010000c06003018002613000e0700060300201000140a00180c000e0700
-0e07000e07002613000c0600201000201000180c00160b00180c002613003018003a1d00
-281400160b00140a00281400040200180c00160b00201000281400180c000e0700201000
-180c002814001e0f00180c00160b002010000e0700060300140a00201000140a00281400
-201000180c00261300160b000c0600160b00201000281400160b00140a00281400180c00
-160b000e0700201000201000160b00201000281400201000160b00160b002814001e0f00
-201000201000160b001e0f00180c00160b000e0700160b002613001e0f00201000201000
-160b000e07002010001e0f00180c00281400180c00140a002814002814001e0f00160b00
-140a000e0700140a00180c00140a00180c002010001e0f002010000c0600160b00060300
-0c0600160b000c0600160b00160b00140a00060300201000180c00160b00180c000c0600
-0c06002613001e0f001e0f001e0f00201000160b000e07000e07000201000e0700060300
-1e0f000c0600180c001e0f00140a00140a00180c00201000180c00160b001e0f00301800
-0e07001e0f00160b001e0f00160b00140a00160b00180c00180c001e0f00180c00261300
-160b00160b002010001e0f000603000e0700140a00160b00160b00140a00160b002e1700
-160b001e0f000e0700140a00160b00140a000e0700160b002613001e0f002010001e0f00
-160b001e0f001e0f000c0600180c00140a00060300140a00060300201000160b00160b00
-0c0600201000160b002613000c06000e07000402001e0f00160b00261300160b00140a00
-0603001e0f002814002613002613000e0700180c000e07001e0f00160b00201000180c00
-060300160b000c0600140a00020100180c002814000e0700140a001e0f000e0700160b00
-1e0f00201000160b000c06000e0700281400020100020100180c00261300060300180c00
-2814002010000e0700160b002010002e1700201000140a00140a00160b000e0700180c00
-2613001e0f00160b00160b00201000140a000e0700180c000c0600261300281400040200
-180c00160b001e0f00201000201000180c001e0f001e0f002010000e07002010000e0700
-2010002010002613002613001e0f00140a001e0f001e0f002814000e07002e1700281400
-160b001e0f00201000180c00160b002010001e0f00160b00160b00180c00201000160b00
-201000160b00180c00160b00160b00201000281400160b002010000c06001e0f00160b00
-2010001e0f002010000c0600160b00261300261300201000201000281400201000160b00
-160b00201000180c002613002814001e0f00160b002613000402000c0600180c00201000
-160b000e0700180c00261300301800160b00160b000e07000c0600160b00261300160b00
-2613002613001e0f000e07000e07002613000e0700140a000e0700160b000c0600201000
-301800140a00201000180c002010001e0f000e07000e0700140a00140a00281400140a00
-060300060300160b00060300160b00160b000e07000e07000c0600160b00201000140a00
-2010003018002613002613002613000e0700261300160b001e0f00140a000e0700160b00
-301800281400180c00180c00180c001e0f00160b00180c00
-2613000e07000e0700180c00180c002010002e1700201000ff9d3a0c06001e0f00321900
-1e0f002e17002e17003219004a25004422004221004221002e1700402000402000180c00
-0e0700ff9d3a160b00160b000e0700160b00020100180c00ffa54a2e1700180c00201000
-140a003018002814002814002613003a1d002e17002e17004c2600542a00422100542a00
-4221004a25004221004c26004a25004221004a25004422004221004221003a1d00321900
-2814003a1d00301800201000281400160b001e0f00201000201000ff9e3c160b00180c00
-160b00180c000e0700140a00180c00160b001e0f00201000180c00020100140a000c0600
-2010000603002010000c06000603000c06000e07002010000e0700180c002010000e0700
-301800160b00020100140a00180c00140a00160b001e0f00261300160b00281400281400
-281400160b002010000e0700281400060300160b00160b00180c00160b002e1700160b00
-201000281400160b003018002010001e0f000e07002e17001e0f002010000e0700160b00
-160b00301800180c00160b00140a000603000e0700160b000603000e0700160b00160b00
-1e0f00201000180c00180c00160b00180c00140a00160b001e0f000e07000e07001e0f00
-2613000603001e0f001e0f002e1700140a000e0700201000140a00160b00160b001e0f00
-0c06000e07000e0700160b001e0f000e07000c06002010002010002613001e0f00201000
-160b00040200160b000e07000c06002010002010001e0f00060300160b00261300140a00
-201000201000140a000e0700160b00140a00160b00281400160b000e07001e0f000e0700
-2010000e07002010002613002010001e0f002e1700201000201000180c001e0f00140a00
-180c000e07001e0f00180c00160b00140a00160b000e0700020100180c00160b00140a00
-180c002010002010000e07000e0700060300160b00180c00160b00160b00160b000e0700
-0e0700201000060300281400201000301800201000180c000c0600140a000e0700201000
-201000140a00160b00180c00160b00261300140a00020100201000160b000e07000c0600
-2010001e0f00160b00180c000e0700160b00040200160b00201000160b000e0700201000
-160b00160b00180c00180c00281400140a002e1700140a00140a00180c001e0f00020100
-0e0700020100160b001e0f00140a001e0f00201000201000160b00160b00201000301800
-3018000e07002814000c0600160b001e0f00281400160b001e0f002613002010000e0700
-160b000c0600180c00160b00281400180c00060300140a00201000201000261300040200
-2010000e07002e1700140a00281400160b002010000e07000c06001e0f000e0700060300
-2010000e0700301800140a00180c000e07000e07000e0700281400160b000e07000e0700
-160b000c0600140a00160b00140a00180c000e0700060300140a00160b000e07001e0f00
-0e0700160b000e07002010000c0600201000160b000e07000e0700140a00160b00281400
-0e0700160b000e07001e0f002814000e07000c0600180c00201000160b002e1700160b00
-2010000e0700160b00180c00201000261300281400180c00180c00140a000e0700160b00
-0e0700160b00160b00160b00160b00160b001e0f002010000c06002010001e0f00201000
-160b00160b00281400281400261300160b000e07000e0700140a000e0700281400140a00
-201000160b00060300180c000603000603001e0f002e1700281400160b001e0f00201000
-160b00160b002814002010000e0700140a00180c00140a000c0600140a000e0700261300
-2010001e0f00160b00160b000e07001e0f00180c00180c000c0600160b002010000e0700
-0e07000e07000e07002010000c0600261300281400060300301800160b00261300140a00
-0e07001e0f00160b00201000140a000e0700180c000e07001e0f001e0f00180c000c0600
-160b001e0f00160b00160b001e0f00160b000e07000603002010000e07000e0700160b00
-160b000e0700160b000603000e0700180c00140a00180c00261300281400201000180c00
-201000160b00180c00180c000e07001e0f001e0f00180c00
-160b00040200201000180c00140a00180c00160b00281400321900ff9e3c180c002e1700
-160b002010004a25004221004020004221003a1d00281400301800201000281400020100
-201000ffa4482010000e0700060300140a00301800ff98302613001e0f00281400180c00
-0e07002814002e1700402000281400301800422100422100542a00402000542a005e2f00
-542a005c2e006432005c2e006633004c26005e2f007038005c2e004a25004422003a1d00
-4a25003a1d003018002814003219004020002010002613002814001e0f00ff9830160b00
-160b00160b00140a000c0600160b00281400020100140a00040200060300180c00060300
-160b00160b001e0f00140a000e0700160b00180c00160b00140a000e07000e0700180c00
-1e0f00140a000e07003219002010000e07001e0f000e07002010001e0f00201000060300
-0e07000c0600261300140a000c0600140a00160b002e17000e0700201000180c00281400
-160b002613003219001e0f00180c000e0700261300160b00060300140a000e0700160b00
-2814000c0600180c002010002613000e0700160b00180c00180c002613001e0f00140a00
-1e0f00180c000e07003219001e0f00160b00140a00281400160b00160b00281400160b00
-201000201000160b00160b001e0f00160b00160b00180c000c06000e0700160b00160b00
-180c00180c00160b000c0600160b00160b000e07000e0700160b00201000060300140a00
-0e0700160b00140a00160b00160b002010000e0700160b00160b000e07002e1700160b00
-0e07002010002814000e0700180c00281400160b00201000201000160b00160b000e0700
-160b00261300261300201000160b000603002e1700201000281400140a003a1d00160b00
-2010002e17001e0f000c0600180c00140a00201000281400180c00180c00281400140a00
-160b00160b00160b000e0700281400180c000e0700160b00160b00180c00180c00160b00
-060300160b00060300201000180c001e0f000e0700180c001e0f000e07001e0f00201000
-2814000e0700140a00180c00281400140a00140a00140a000e0700160b001e0f00160b00
-180c00180c00160b001e0f00160b00140a001e0f000e07001e0f000e0700180c00160b00
-0e0700261300281400180c00160b00140a000e07001e0f001e0f002010002814000c0600
-160b00140a00140a001e0f002613001e0f00180c00140a001e0f00160b00140a00261300
-3018000e07000e0700160b001e0f00261300180c00180c000e0700140a00180c00160b00
-160b00160b00160b00201000140a001e0f002814000e0700160b000e0700060300140a00
-0e0700201000180c000c06001e0f00140a00160b00140a00180c00281400020100201000
-060300060300180c003018003018000e0700160b00160b00180c001e0f002010001e0f00
-180c000c06000e07002814002613001e0f002814000c06000e0700140a000c06001e0f00
-261300180c00160b000c06000e07001e0f00160b001e0f003a1d00160b00140a00160b00
-140a001e0f00160b00281400160b00281400201000261300201000160b001e0f001e0f00
-180c00160b000201000c0600180c00180c00261300160b000c06001e0f000e0700201000
-201000201000140a000e07000e0700180c00201000160b000c0600281400180c00060300
-140a001e0f00201000180c00160b00160b00281400301800160b00140a000e0700160b00
-201000261300160b00060300180c00201000160b00140a00160b000e0700180c001e0f00
-0603001e0f000e0700281400160b00180c00201000261300160b00201000140a001e0f00
-2814003a1d002613001e0f00140a000e0700160b00180c001e0f000c0600201000140a00
-2e1700160b00180c00160b00160b00140a001e0f002613000e0700261300281400060300
-140a002814002010002010000e0700060300160b00160b001e0f00261300140a00281400
-1e0f00160b001e0f00140a000e0700160b00180c00180c00201000180c000e0700180c00
-1e0f00160b001e0f000603000e07000e0700140a00140a001e0f000e0700140a00160b00
-321900140a00160b00261300160b00201000160b00201000
-281400180c00160b000c0600261300140a001e0f00180c00201000ffaa54180c00160b00
-2613003018002e17002814002e1700301800321900281400381c002e1700201000201000
-160b00ff99321e0f000402000e07000c0600180c00ffa040140a00201000180c00201000
-2010003018003a1d002e17004c26003a1d00422100542a006633005e2f00643200643200
-763b006c36008643006e3700643200763b006633005c2e004020005a2d004a2500381c00
-3a1d003219004221003a1d003a1d002e1700301800422100201000281400201000ffa244
-0e0700160b00040200160b00180c000201001e0f00180c00160b00140a00140a000e0700
-0c06000e0700160b001e0f000e07001e0f000c06000e07000e0700201000180c000e0700
-0603000e0700140a000c06000e07002010002010002e1700140a00201000180c00160b00
-201000140a000e07000e0700201000160b00281400261300201000281400160b00281400
-140a00381c002613000e07000e07000c0600160b00160b00180c00160b00261300160b00
-180c002613001e0f00180c002010000c0600160b00180c000e07000e0700060300180c00
-160b000e0700060300140a000c06003018002010000e07001e0f00281400180c00060300
-2010001e0f002010002613000e0700261300180c000201000e0700261300281400160b00
-201000140a000c0600160b00140a001e0f001e0f00160b00160b00060300140a000e0700
-160b001e0f00301800140a001e0f00160b000c06000e07000c0600140a001e0f00180c00
-160b00160b001e0f000e0700301800160b00281400160b000e07001e0f001e0f00281400
-140a001e0f001e0f00160b002e1700180c000e0700160b00060300160b00201000160b00
-140a002010002010002010000e07000e0700160b000201002613001e0f00160b00060300
-0e0700140a000e07002010001e0f00160b00180c00160b001e0f000e07001e0f000e0700
-1e0f001e0f001e0f000e0700160b00020100201000201000160b001e0f00160b00140a00
-0e0700060300201000180c00140a00180c002e17000c06000c0600140a000e0700160b00
-2814002e17002e17000e07000c0600040200ff9e3cffa040ffa64cffa1420c0600160b00
-020100160b00201000160b000e07001e0f00160b000c0600140a00060300281400180c00
-140a000e0700140a00040200160b000603001e0f001e0f001e0f000c0600140a000e0700
-160b00160b00160b00160b000402001e0f002010002814000e07001e0f00201000201000
-2e1700160b00140a00140a002010000e0700060300160b00160b00261300201000180c00
-1e0f00060300160b000c06000603001e0f00060300160b00140a00160b000e0700160b00
-160b00180c002814000c06001e0f002613000e0700160b00201000160b00201000201000
-160b000e07002613000e07000e0700140a00180c00160b00160b00201000040200201000
-0e07000603001e0f00160b00281400201000261300261300160b00180c00160b000e0700
-0c06000e0700140a000e0700160b00180c000603000603001e0f00160b00201000180c00
-2613001e0f00140a00160b00180c00060300140a00281400160b00201000180c00160b00
-140a00180c00140a00180c002814000c06000402000e07000e0700140a00160b00201000
-201000020100261300160b000e07002010000e0700160b00201000160b002010000e0700
-1e0f000402002010002010002613000e0700060300180c00160b00160b000c0600160b00
-0201001e0f001e0f001e0f000603001e0f00160b001e0f00301800160b000c0600160b00
-0603001e0f001e0f001e0f00160b00281400201000160b001e0f00201000060300180c00
-0c06001e0f000e0700160b00160b000c0600261300261300160b00180c000e0700160b00
-140a00281400201000160b000e07002814002010001e0f00160b000e07000c0600201000
-0e0700140a000c0600160b00160b00180c00140a000e07001e0f000e0700140a000e0700
-180c001e0f00160b00160b001e0f00201000160b00060300301800281400160b002e1700
-201000160b002010000e0700180c002010003018000e0700
-180c00180c00201000180c00180c00281400160b000603001e0f00180c00ff9b36321900
-160b00301800281400261300281400281400201000140a002e17002e1700201000020100
-ffa040180c000e0700180c00180c000e0700ffaa540e0700261300201000301800321900
-301800381c00402000321900402000542a00542a00542a006432007e3f00783c008a4500
-864300984c00884400984c00984c00884400984c007e3f005c2e005c2e004c26005e2f00
-522900542a003219003a1d00381c003018002814002e17002613001e0f000e0700160b00
-ff9830160b000e07002010002814001e0f000e0700060300160b000e0700140a00160b00
-160b002613002814000e07002814000e07000c0600160b00160b00140a000c0600140a00
-201000180c000e07001e0f000e07000e0700281400140a00180c000e0700180c000e0700
-1e0f00160b000e0700281400201000261300140a00160b00301800201000060300140a00
-0e07000e07002814000e0700160b000603000e07000c0600201000281400201000281400
-201000160b00321900140a00140a00160b00180c001e0f00160b000e07001e0f000e0700
-0e0700020100201000160b00020100201000140a00140a00140a00281400180c00281400
-1e0f00180c002010000c0600201000160b003018002814001e0f002814002010001e0f00
-1e0f000e0700060300281400160b00140a00180c00160b00180c00201000201000180c00
-2010000e0700160b00160b002010000e07002613000e0700160b00140a00020100060300
-140a00140a002814002814002010002010001e0f002e1700201000201000281400160b00
-160b000e0700060300180c00381c000e0700180c00180c000c06002e17000e0700160b00
-0e07002010000c06000e0700140a00180c001e0f000603000c0600160b001e0f00201000
-2613000e0700160b00180c00201000201000261300160b000c06000c0600180c000e0700
-160b00160b00180c00201000160b002814002613002010000e0700160b00180c000c0600
-160b00180c003018000e0700140a00180c000e07002814000e0700180c00020100281400
-160b00160b00ffa448ffa244ffa142ff9c382010000c0600180c00201000ff9c38ffa448
-ffa142ff9e3cffa1422010000e0700281400201000160b00281400160b00160b00180c00
-180c001e0f00180c002814000e0700160b00140a000c0600281400140a001e0f00160b00
-0e07001e0f001e0f00180c001e0f00180c00201000140a000e07001e0f001e0f00201000
-0e0700180c000c0600160b00140a00160b000e0700281400160b000c06001e0f00180c00
-2010002010001e0f00201000160b00180c002814000402001e0f001e0f00201000060300
-0201000603000e07000e0700180c001e0f000e0700180c00180c00180c00160b00060300
-180c001e0f000e0700281400201000201000160b00281400301800180c00140a000c0600
-1e0f000e07000e07000e07001e0f00261300201000140a001e0f000e0700261300020100
-261300060300160b00180c00261300140a00160b00201000180c000e0700180c00201000
-180c001e0f000e07002814000e0700201000160b00160b00261300140a00140a00201000
-180c00201000140a001e0f00140a00180c00180c000e07000e0700180c00180c00281400
-0603000e0700140a00180c00160b00160b002010001e0f00180c000e0700060300281400
-2010002010000e07001e0f00201000160b00160b00180c00160b000c06000e07001e0f00
-180c00281400140a001e0f000e0700160b000e0700140a000e0700140a000c0600140a00
-160b000e0700201000261300160b00160b00201000180c001e0f00180c00180c000e0700
-180c00261300180c001e0f00261300180c002010000e07002010000e07002010002e1700
-0c06000e0700201000140a00180c000e0700201000261300180c000e0700301800140a00
-180c000e0700160b001e0f00281400160b00261300060300201000180c00160b00180c00
-140a002613000603002010001e0f00160b001e0f00180c00140a00160b00180c000e0700
-281400160b00160b002613002010002010000e0700160b00
-180c00160b000c0600140a000e07000e0700140a00281400160b00140a00ff9e3c180c00
-201000201000261300180c000e07002613003a1d00180c00180c00140a00160b000e0700
-ff9b36040200040200180c00060300160b00ff9428160b00201000301800381c00281400
-3018002e17003219004a25004422006e37006633006633007e3f00924900984c009e4f00
-c66300c66300be5f00a45200bc5e00a251008a4500aa55008a4500783c006432005c2e00
-6432005a2d004c26004c26003018002e1700321900201000201000261300201000140a00
-ffa244201000020100180c00160b000e0700201000201000160b00140a00201000060300
-0e07000e07000e07000c06000c0600180c00201000140a001e0f000e07001e0f001e0f00
-140a000c0600160b00180c00140a00160b000c06001e0f00160b00160b00160b00301800
-140a00160b00140a001e0f00160b002010002613003018000e0700180c000402000e0700
-180c00140a00160b00140a00060300140a001e0f002010000603000e07001e0f00201000
-180c003219000c0600180c000e0700140a002613001e0f001e0f00140a00160b000e0700
-160b00140a000e0700040200201000180c00180c002010000e0700201000160b00140a00
-0e07000e0700160b00160b001e0f00160b00160b00140a00180c001e0f00060300140a00
-1e0f00160b00180c000e0700201000180c000e0700140a000c06000c0600201000301800
-381c000c0600180c000e07003018000c0600201000261300201000160b00261300261300
-140a000c06002e1700301800160b00201000261300201000180c00261300201000160b00
-180c000e0700201000281400160b00140a00201000201000160b000c06000e0700160b00
-180c00160b001e0f00160b00140a00060300140a00180c002010000c0600140a00180c00
-180c000e07001e0f00160b00160b00140a001e0f001e0f00180c00060300180c00140a00
-160b00140a000e07000603000c06002010000c0600140a00140a000e0700180c000e0700
-281400160b00160b001e0f00160b00040200160b000e07000c06000c0600060300160b00
-ffa54aff9932180c00160b000e0700160b001e0f002010000e07002e1700201000020100
-160b00381c000e0700ffa64cffa040ffa54a180c00160b00140a002010000c0600180c00
-2e1700160b00281400160b002010000e0700201000180c00180c000e0700160b00160b00
-1e0f00180c001e0f000201000e0700180c000e07002010000e0700160b000e0700160b00
-180c00140a00201000160b000402000e0700201000180c00201000060300160b00180c00
-1e0f00140a002814002010001e0f00201000201000160b00261300140a002613000c0600
-0603000e0700160b002010000e07002613000e0700180c001e0f00140a001e0f00160b00
-160b00160b000c0600261300281400180c00040200160b002613000e0700281400281400
-0e0700201000261300180c00060300261300201000140a000e07000c06000e0700060300
-1e0f000e07002010001e0f00160b002010000c0600160b000e0700180c00160b001e0f00
-261300180c00160b002e17002814002010001e0f000e0700180c003018001e0f00140a00
-2010002814002010001e0f00160b00140a00160b00201000160b001e0f00160b00160b00
-0c0600201000180c001e0f001e0f00180c002613001e0f002814000e0700201000180c00
-1e0f00201000261300140a00140a000c06000c0600261300180c00180c000c0600140a00
-2613000e0700180c000603000e0700160b000e0700160b00060300160b00160b00140a00
-160b00160b00140a00160b000e0700160b00180c00160b00201000140a00160b000e0700
-2814000e0700140a00160b000c06000603000e0700180c00160b00140a00160b00160b00
-160b00040200160b000c0600180c002010001e0f000e0700281400140a00160b00040200
-160b00160b00201000160b00180c00160b001e0f00160b00140a00160b001e0f000e0700
-201000180c00201000180c000e0700140a00180c003018000e07000e0700140a000e0700
-2e1700281400180c002010002010002613000e0700201000
-3219001e0f002613000e07000c0600020100201000180c00160b00180c000e0700ffa448
-3018002010002010002010002814001e0f00160b00180c00180c000603000e0700ff952a
-2814000e07000e0700160b00201000ffa142160b00281400301800201000281400301800
-4422003219004a25004422005229005a2d00864300783c00904800aa5500a45200be5f00
-ea7500f27900ea7500f07800e47200c86400b85c00984c00884400984c00763b00783c00
-5c2e006c3600542a004422004020002814002814002814003018002814002010000e0700
-1e0f00ffa142160b00180c00201000060300040200140a000c0600020100140a00160b00
-140a002e1700180c00060300060300160b002010000402000c0600180c002e1700201000
-0c0600201000160b000e07001e0f00281400180c00281400160b002010002010000e0700
-140a00160b00140a00201000160b002010001e0f00180c002010001e0f00201000201000
-180c00140a000e07002814000e07002010001e0f00160b001e0f000e0700160b001e0f00
-180c00060300160b00160b001e0f000c06000e0700180c00060300180c00160b002e1700
-261300281400281400140a00160b00160b000e0700201000160b000e07000e07000e0700
-140a00160b00160b00180c00160b00201000140a00160b002010000c06001e0f00140a00
-180c00160b000e07001e0f00180c00140a00201000281400160b000603001e0f00201000
-2613000e07001e0f00180c00180c00140a002010000e0700140a00140a00261300140a00
-160b000603002010001e0f00160b00060300180c00281400160b00180c00261300201000
-2814002814002814001e0f002613002010001e0f002814000e07002e1700060300140a00
-160b002010000e0700160b002010001e0f00160b00281400160b00140a002010000e0700
-140a000e0700140a003018001e0f00180c00201000160b00160b00140a00140a00201000
-160b000603000c0600140a00140a00180c002010001e0f00140a00140a000c0600160b00
-0e07000c06002010002010002010002010002010000e0700140a001e0f00281400ff952a
-1e0f00281400201000180c00180c00160b00281400180c000e0700281400281400281400
-281400201000201000160b001e0f00140a00ffaa54ff9d3a1e0f00201000140a00180c00
-180c00180c00281400160b000603002010002010000e0700140a000c06000603001e0f00
-201000160b000e07001e0f001e0f00140a000c06001e0f000e0700160b00160b00201000
-201000140a002010001e0f00281400201000160b000e0700160b002010000c0600160b00
-160b002010000c0600160b002010001e0f00160b00160b00180c000603000e0700160b00
-160b000c0600160b00201000160b000e0700140a000e07000e0700301800020100201000
-160b00060300160b000e07002010001e0f00180c00180c002010002e1700160b00040200
-0e0700301800201000140a00160b00160b00160b00160b00140a000e0700201000281400
-160b00160b001e0f000e07000e0700160b000e0700180c000e07000e07001e0f00321900
-160b00281400060300180c00160b00140a00060300160b002814002010000c0600160b00
-160b00261300160b002613001e0f00180c002010000e0700160b00201000160b00140a00
-1e0f00160b000603001e0f00160b00160b00180c00281400160b00180c003018001e0f00
-160b001e0f00180c001e0f000e0700180c00140a000603002010001e0f00180c00140a00
-180c00201000281400160b00160b000e07000e07000e07002010001e0f00180c000e0700
-140a00180c003018002010001e0f000603000e07001e0f000e0700140a00160b001e0f00
-261300160b001e0f000c0600261300060300160b002814003219000e07000e07001e0f00
-0e0700180c000603000e0700180c000e07001e0f000e07000e07000603002010000e0700
-160b00160b00140a00140a000e0700201000281400201000140a002010002613001e0f00
-201000180c00201000140a00140a002613001e0f00180c00180c001e0f00201000160b00
-180c00160b00160b00160b000e0700160b00261300160b00
-160b001e0f00140a00160b000e0700261300180c000e0700201000160b00160b00160b00
-ff9c38ff9c38180c000e0700321900281400281400281400301800140a00ff9932180c00
-140a000e0700020100160b000e0700ff99320603000201002814003018001e0f00381c00
-402000402000381c004a25006c3600643200763b00864300984c00b25900d26900fe7f00
-ff8c18ff9428ff9428ff9932ff9020fe7f00e27100e874009a4d00984c007e3f00703800
-5c2e006c3600542a004a25004a2500301800281400281400201000321900201000140a00
-180c00ff9c38201000201000160b00201000160b00140a001e0f00040200160b00060300
-2010000c0600160b00160b000c06002010000402000e0700180c00261300281400160b00
-160b000e0700180c00160b001e0f000603000e0700160b00201000180c001e0f00180c00
-140a00281400160b00160b002814002010002010000e0700020100180c00060300180c00
-180c003219000e0700180c00160b00140a00140a001e0f001e0f000603002814001e0f00
-2010000e0700201000261300261300160b001e0f001e0f000e0700201000160b00201000
-160b00140a00321900140a00201000160b00160b00201000140a001e0f00140a00160b00
-0e07000603001e0f001e0f00201000020100160b00160b002010000e0700261300140a00
-1e0f00160b00281400160b00180c00160b00060300140a002010001e0f00201000201000
-2010002010000e0700201000201000140a000e0700160b002010000c06001e0f001e0f00
-180c000e07000e07000e0700160b00180c00140a001e0f000e0700160b001e0f00160b00
-0e07002010001e0f00140a00160b002e1700201000201000201000281400261300140a00
-2e1700160b001e0f00040200160b00160b00160b00140a00160b00201000140a00281400
-281400160b00301800020100201000160b001e0f00160b00140a00281400040200180c00
-160b001e0f000e07000e07001e0f00201000160b00060300160b00160b00180c000e0700
-160b001e0f00201000201000140a002613000e0700201000160b00ff9b36ffa244160b00
-281400201000140a00281400160b002814003219001e0f00201000060300281400201000
-281400201000201000180c00180c00281400180c00201000ff99321e0f00160b00201000
-281400160b002613001e0f00180c00060300201000160b00060300160b001e0f00261300
-0e07003a1d000e0700261300180c002010001e0f002010001e0f00281400060300301800
-1e0f000603000c06001e0f00160b00160b000e0700201000160b00160b00261300261300
-0402000c0600160b00261300060300261300180c000201000e07002010000e0700140a00
-0e07001e0f00140a000e0700140a000e0700180c00160b00180c00180c00261300020100
-0e07001e0f00160b00261300160b00140a000e0700140a00201000060300160b000e0700
-160b00160b000e07000e0700140a00160b00160b00301800180c00180c001e0f001e0f00
-160b00180c00160b000e0700281400160b000e07001e0f002010000e0700060300180c00
-140a00201000160b000c0600160b001e0f002814002010002e1700140a000e0700160b00
-0402000c06002814000603002010002613001e0f001e0f001e0f00160b001e0f00201000
-261300180c00140a003018001e0f00140a001e0f00160b00201000261300281400160b00
-2010001e0f00160b00160b003018000e0700160b00140a00180c000c06000e07000e0700
-2613000201000e0700140a00301800180c00201000201000020100180c00060300140a00
-0e0700180c00201000281400201000201000180c000603000e07000c0600140a00180c00
-1e0f00160b000e0700160b00180c000e0700180c003018002010000e0700160b000e0700
-1e0f002814002613000e07001e0f000e0700180c00180c000e0700160b00140a000e0700
-201000160b000603000c0600160b00040200201000160b00261300160b00180c00140a00
-0c06000e07002010001e0f000e07000e0700160b002010000e07001e0f00180c00160b00
-0c0600281400160b000e0700201000160b00201000261300
-2010000c0600060300261300160b001e0f001e0f000e0700020100281400140a001e0f00
-201000020100ff9b36ffab56ffa244180c00160b00ffa040ff9b36ff9e3c160b00060300
-160b000c0600180c00261300180c00ffa142261300140a002010002010002e1700301800
-422100422100442200422100763b006e37007e3f00904800b65b00d66b00fa7d00ff9830
-ffa952ffba74ffc182ffbf7effc386ffa040ff8c18e27100d86c00aa55009048007e3f00
-763b006633005e2f00422100442200402000442200321900301800180c00281400281400
-0e0700261300ffa0400e07000e0700160b00140a000e07000603000e0700020100180c00
-201000261300060300040200261300160b002613000e07000c06001e0f00180c000e0700
-1e0f00180c00160b000e0700201000140a002010002010002e1700180c000402000e0700
-2e1700160b000e07002814000e07001e0f00281400180c00140a00281400140a00140a00
-160b002e17000e0700180c00160b00201000201000321900140a00180c00180c00201000
-0e0700201000180c00261300201000201000180c00160b00160b002010000e07000e0700
-180c00180c002010000e0700140a00160b000e0700201000140a000c06000e0700261300
-160b00201000201000160b000e0700180c002814000603001e0f001e0f00140a00261300
-0c0600160b002613001e0f001e0f00180c000c0600140a00201000140a00180c000c0600
-201000160b002010000e07002613000e0700180c00160b001e0f00140a00201000281400
-160b00060300180c00180c00180c00140a000603000e0700160b00201000261300060300
-1e0f00160b00160b00160b00160b00201000261300160b00160b00140a00040200201000
-180c00180c00160b00160b002010000e07000e0700180c000e07000c06000c06000c0600
-201000160b00140a002010000c0600160b000e07001e0f00180c002814000e0700060300
-160b00201000180c00060300180c00160b001e0f00160b001e0f001e0f00201000160b00
-2010000603000e07002814000c0600160b002e17001e0f00140a002010001e0f00201000
-0e07002010002613002814003a1d00301800301800301800261300281400281400381c00
-2e17002814003018002613002613002814002010000e0700261300ff9932ffa54a201000
-140a000c0600160b000e0700160b000e07001e0f00140a00160b00140a00261300160b00
-160b001e0f00140a001e0f000e0700180c00180c00180c003a1d00140a00160b00140a00
-160b00160b002010002814001e0f002010001e0f000e07000e07000e0700160b00160b00
-1e0f001e0f002e1700261300201000140a002010000603002010000e07000e0700281400
-140a00180c00160b000e07002010000e07000c06002814000c06000e0700261300140a00
-201000160b002e1700060300160b00160b000e0700180c00160b00402000281400261300
-0e0700180c001e0f000e07000e0700160b00281400180c00160b00301800201000160b00
-160b001e0f00160b00201000020100201000201000160b00060300140a000e07000e0700
-160b000c06000e07001e0f00201000160b00140a000e07000e0700040200180c00180c00
-201000140a00140a00180c00140a002010000c0600160b00140a00180c00180c001e0f00
-160b003018000201000e07001e0f002814000e07001e0f002010001e0f00301800281400
-201000160b000e07000c06000e0700140a00201000201000201000281400140a00180c00
-2010000402002010000c0600180c00261300160b00180c00160b000e0700140a00261300
-060300160b000e0700160b00180c00180c00160b003a1d00160b00180c00160b00140a00
-261300201000180c00140a00160b00201000160b002010001e0f00180c00301800060300
-0e07000e0700140a000e0700140a002e1700160b000e0700160b00201000160b002e1700
-0e0700160b00201000261300160b000c0600201000160b002010001e0f001e0f00201000
-160b000c0600140a00160b000e07000c06001e0f00281400301800160b00201000060300
-2010000c0600160b00281400180c00160b000e0700201000
-3219002814000603002814002e17001e0f001e0f00281400201000140a000e0700140a00
-160b00140a00180c002010000c0600ffa74effa1423018000e07001e0f00160b00321900
-160b00160b00160b002010001e0f00ff9932281400180c00261300180c00321900301800
-422100542a00442200442200663300763b00904800b65b00ca6500e87400ff9122ffb366
-ffd0a0ffe2c4ffefdefff8f0ffe2c4ffcc98ffa74eff860ce87400b85c00b259009a4d00
-6c3600663300663300422100442200522900542a004221003a1d00301800261300201000
-160b00281400ffa74e281400261300160b00201000180c003a1d000e0700020100160b00
-160b00160b000c0600201000160b00160b00060300201000140a00140a00201000160b00
-0402000e0700281400281400160b000402002814000c0600160b000e0700160b00201000
-201000140a00060300180c00180c00160b00180c00140a00160b002010003018001e0f00
-0603000e0700180c002010002e1700140a00160b001e0f002010001e0f002814000e0700
-160b002010000c0600180c002814000c0600180c001e0f00180c00060300160b00201000
-0c06002010000402002e1700160b00140a00160b00180c00140a00180c00180c00140a00
-140a002613002814000201002010002814002010001e0f00160b00201000060300261300
-160b00261300201000160b00160b00160b000e07000402000e07001e0f00201000180c00
-1e0f00160b000e07000c0600201000060300201000160b00381c00180c001e0f000c0600
-2010000e0700140a00160b00160b00281400140a002010001e0f00160b00281400402000
-0e07000c0600160b00201000160b002010000603002010000e0700201000160b00201000
-140a002010000e0700201000281400160b000c0600201000160b00140a00160b00140a00
-0e0700160b00201000160b00140a000e0700160b00201000160b00160b002010001e0f00
-2613001e0f00160b00160b001e0f00281400160b00180c000e0700140a00180c000e0700
-140a001e0f002010000c06002814001e0f00180c00040200ffa448160b00140a00261300
-160b00381c001e0f00301800160b00321900160b00321900301800301800321900301800
-2e1700321900301800281400281400321900201000180c00180c00201000201000ffa64c
-201000160b00140a00160b00160b00261300160b002010000c0600160b00201000040200
-020100160b00160b000e07000c06000e0700140a00180c00060300160b00160b00140a00
-0c0600160b001e0f00160b00160b00140a00180c000e07000e0700140a00180c00301800
-160b00160b00160b00201000160b000603000e07000c06000e07000201000e07000e0700
-0e0700261300201000281400160b000e07001e0f00160b00160b00160b00060300201000
-2010000e0700180c00180c000c0600180c00180c002613000402000e0700160b00180c00
-201000160b00261300160b00140a00281400140a00160b00201000160b000c06001e0f00
-0e0700140a002010001e0f002010002010002814000c06001e0f00140a00140a000e0700
-160b00040200201000160b00201000261300160b00160b00180c000e07002814001e0f00
-1e0f000e07000c06001e0f00140a000402000e07001e0f000e07000c0600180c00201000
-180c00160b000e07001e0f001e0f001e0f00140a000e0700201000160b00180c00180c00
-160b00180c00160b001e0f00160b001e0f00160b001e0f00140a00160b00160b00060300
-2010002613000e0700160b001e0f000e0700140a00281400160b00281400140a00160b00
-140a00201000301800180c00180c00160b000e0700020100180c00140a00180c000c0600
-1e0f00160b00160b00060300160b002613002010001e0f000e07002613000e07000e0700
-281400261300261300060300140a002010000e07000e07000e07001e0f00020100201000
-160b002010002613002010001e0f001e0f00160b00160b00160b00060300160b00160b00
-060300201000160b000e0700140a000603000c0600201000160b00201000281400180c00
-2010002814001e0f00201000140a00140a00160b00160b00
-281400140a000e0700040200160b00060300160b002613000e07003a1d00160b000e0700
-160b00201000140a002010002814002010001e0f00180c00201000180c000e07000e0700
-0201000e07000c06000e0700140a00ff9932160b002814002613001e0f00381c00301800
-281400422100542a005c2e00703800864300a45200be5f00c46200ff8102ff9932ffc182
-ffe2c4fffcf8fffcf8fffcf8fffcf8fff3e6ffc386ffa448ff8b16ec7600aa55009a4d00
-984c00763b006432005c2e004c26005c2e003a1d00321900281400402000381c001e0f00
-281400301800ffa74e2010001e0f000c06000e07000e0700160b00140a00060300060300
-0c06000e0700201000060300140a000e0700020100160b00160b00180c00281400160b00
-160b002010002010000c0600160b00140a001e0f000402002e1700180c00160b00201000
-0e07000603000c0600201000160b00201000201000140a000c06000e0700201000160b00
-201000180c002e1700160b00160b002613000e07002010000e07000c0600140a00160b00
-281400201000040200261300160b00140a00180c00160b002010000e0700180c00160b00
-2010000e0700301800140a00201000160b000e07002010000603001e0f00180c000e0700
-160b00201000140a002e1700160b002613000e0700160b00140a003018001e0f000e0700
-160b00180c002010001e0f00140a000e07000402002010002010000e0700180c001e0f00
-2010001e0f00281400060300201000281400180c00160b002010001e0f00160b00020100
-281400020100201000160b00140a000603000e07000e0700201000160b00160b000c0600
-1e0f000e07001e0f002010000e0700180c00180c00160b00160b000603001e0f001e0f00
-261300160b000e0700060300180c00060300180c000e07001e0f000e0700140a00140a00
-0e07000402002010002010000603000e0700281400180c002010000e0700140a00060300
-0e07001e0f00160b000c0600261300160b00160b00140a000c06000c06000e0700201000
-0e0700140a00160b00160b00140a00180c00160b00ffa448281400160b001e0f00201000
-2814002613002814002010003018004020002814003a1d003018003a1d00381c003a1d00
-3018003219003a1d002e1700201000201000261300261300301800381c00160b00160b00
-ffa448140a002814002814000e0700281400160b00160b002613000e0700180c001e0f00
-060300281400180c00160b00160b00140a00160b00180c001e0f00140a00160b00201000
-140a000e07001e0f002814000c06002010001e0f001e0f00160b00140a00140a000e0700
-2010000e0700160b00160b00180c000c0600180c00160b00160b00160b00140a00201000
-140a00160b000e0700160b00180c000c06001e0f001e0f000603000c0600160b00160b00
-180c00261300140a002613002010002613000603000c0600160b00201000281400261300
-201000160b000c0600140a000c06001e0f00160b002010000c0600261300160b00140a00
-1e0f000c06002010001e0f002613002814000c06001e0f00160b00160b00180c00180c00
-201000160b002010002613002010000c0600201000160b000e0700180c00201000180c00
-160b001e0f00140a002814000201000e07002010000e0700160b001e0f000e0700201000
-140a002e17002010000e07000e0700180c00160b00140a00281400201000160b00281400
-1e0f00201000180c002613000c06000e07001e0f000e0700261300140a001e0f00180c00
-0e0700140a00180c00140a00140a000603002010000e0700180c00180c000c0600281400
-201000160b001e0f00060300180c000e0700060300160b00201000160b00261300160b00
-180c00180c00180c00160b000e07000c06002814000603000e0700140a000c06001e0f00
-0e0700180c002010000e07000e0700180c001e0f00160b00140a002010001e0f002e1700
-160b000e0700160b001e0f00140a000603002010001e0f00160b00160b002010000e0700
-160b000603002010000c0600160b00160b001e0f00180c00160b000e07000e0700281400
-180c001e0f00201000160b00140a00160b00201000140a00
-201000160b000402000c0600160b002613000c06000e0700160b000e07000603000c0600
-060300160b00160b00160b000c0600160b00180c00201000140a000e0700060300160b00
-020100060300261300160b00160b00ff952a140a00180c00281400381c00201000321900
-2e17003a1d00663300643200703800703800904800bc5e00c66300f67b00ff9d3affc890
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fff1e2ffbc78ff9932f67b00c66300ac5600
-924900783c00663300643200542a00542a00542a002814004a25003a1d00180c001e0f00
-281400201000ff9c381e0f002814000e07000e07002010001e0f000e0700160b00160b00
-1e0f00180c002613001e0f000402002613000e0700160b00040200160b001e0f00160b00
-0e0700201000160b000c06003018000c0600160b00160b000e07001e0f000e0700160b00
-2010002010000e07002814001e0f000c0600180c00160b00140a002613001e0f00301800
-0e0700201000201000201000201000160b002010002010000c0600201000201000160b00
-160b000c0600160b00201000060300160b002613002613002613000e07002010000e0700
-180c00180c00160b002010002814000e0700381c000e07001e0f000e0700160b000e0700
-160b003018002613002010000c0600281400160b00160b000c06001e0f00160b000e0700
-160b00160b000e0700201000160b000e0700160b002010001e0f00140a00180c00261300
-201000201000160b00180c002010001e0f000603000e0700160b001e0f001e0f000e0700
-1e0f002814002010001e0f000e0700040200180c002010002010001e0f002e1700261300
-140a00160b00160b000e07000e0700160b00180c00160b002613000e0700020100160b00
-160b00140a00281400140a00180c000e07002010000e0700160b00201000160b000c0600
-261300201000281400201000201000160b00160b000e0700160b002814000e0700201000
-140a00180c00160b00281400281400180c00140a000e0700180c000603000402000c0600
-160b00160b00180c000e07001e0f00160b00ff9d3a160b00201000160b00261300281400
-180c003a1d004c26003a1d003a1d004221003a1d004221004020004a25004c2600542a00
-402000381c003a1d00301800381c002814002814002010003a1d00281400180c00180c00
-201000ffa74e201000160b00180c001e0f00180c00160b00160b00140a001e0f00180c00
-0603002010002613002010000201002814001e0f00140a00261300261300160b000e0700
-1e0f00140a00140a001e0f002010002010000c0600160b001e0f00261300160b00261300
-160b001e0f000e0700180c000c06002010000e0700160b00180c00201000201000201000
-0e0700020100180c00160b00201000060300020100201000160b00180c000e0700160b00
-0e0700180c001e0f000e0700180c00160b00201000180c000e0700160b00201000160b00
-281400160b00180c000e0700160b00180c00160b002e17002010002010001e0f001e0f00
-1e0f00160b00281400020100160b00060300160b00160b000e07002613001e0f000e0700
-160b00301800180c00060300160b00261300160b00180c001e0f00140a00201000180c00
-0e07000e07001e0f00160b00060300140a00281400281400160b00160b000e0700180c00
-0603000603002010001e0f002010000e0700160b00160b00180c00201000201000160b00
-160b000c0600281400160b000201001e0f00140a001e0f002010000e0700201000160b00
-3219003219001e0f00140a00201000281400160b00140a00180c001e0f00180c00180c00
-060300160b00180c00160b001e0f00180c00160b00201000160b00381c00160b000c0600
-040200180c002010001e0f00140a00160b00281400140a000e0700180c00140a00160b00
-0c0600201000261300160b000e0700160b002010001e0f00180c002010000e07000c0600
-160b00160b001e0f00160b002613000e0700180c00160b001e0f00201000160b00160b00
-140a003018000e0700160b002613002e17000e0700160b000e0700160b00140a000e0700
-2010001e0f00180c002814001e0f000e0700160b000c0600
-201000160b002010000c0600160b000c06000e07000e07000c0600060300160b00180c00
-0e07004020002e17000e0700160b00160b00060300160b00160b000e07000e0700160b00
-0e0700140a000c06000e0700140a00ffa64c2e1700160b00261300180c00381c00201000
-281400442200542a005229006633007e3f00984c00b25900d26900ff8810ffb366ffce9c
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffe2c4ffaf5eff9020e47200aa5500
-9a4d007e3f006432005c2e005a2d004c2600402000442200442200301800301800201000
-2010002814001e0f00ffa040201000180c00140a00180c000c0600160b00180c000c0600
-0e0700160b00160b000603000e0700160b00160b000e0700160b00201000281400160b00
-201000160b00140a000e0700160b002e17000e0700160b00281400261300261300281400
-301800160b002613000603002010001e0f002010000e0700160b00160b00201000160b00
-321900160b00160b002010000e0700160b00261300160b00281400140a00160b000c0600
-0e0700160b00160b002010002e17001e0f00160b00180c00201000160b000e0700160b00
-160b002010000e0700160b00160b00160b00140a00140a000e07002010002010000e0700
-160b000e0700201000180c002613002613000e0700281400180c000e0700261300201000
-3018000c0600160b000e07000e07000c0600180c001e0f00160b00261300321900201000
-3018000c06001e0f000e07000c06000e0700180c00201000201000140a00140a00060300
-180c00301800160b00201000160b00180c00281400160b000e0700261300201000160b00
-160b00160b001e0f00261300020100180c00160b000e0700160b001e0f00160b001e0f00
-020100040200201000160b00180c00140a00301800160b00140a00160b000c0600140a00
-2010000e0700140a00180c000e07000e0700180c002e1700180c001e0f002010001e0f00
-201000180c000201002010002e1700140a000c0600160b00160b00160b001e0f00201000
-160b00140a00140a00261300060300201000ffa74e140a002613002814001e0f00201000
-4221002e17003018004020004a25004c2600442200542a005c2e004a2500422100522900
-5a2d00422100381c003a1d004020003a1d00281400201000321900140a00281400261300
-160b00160b00ff99322010000e0700160b000e0700160b00180c00160b00201000201000
-261300160b000e0700140a00060300281400140a00201000180c000e0700281400201000
-1e0f00180c00160b00180c00160b00281400281400140a00160b001e0f00160b00180c00
-180c000c0600160b000c0600140a001e0f00261300281400180c00160b001e0f00201000
-201000160b00201000140a00060300160b001e0f002010000c06000e0700160b00180c00
-140a00160b00180c00060300160b00160b00201000261300201000160b00160b000e0700
-1e0f00160b00140a00160b002010000e0700180c00160b000e0700160b000c0600060300
-140a00160b00180c00201000160b00160b002010001e0f00160b00201000160b00201000
-201000160b00180c00160b00160b00201000140a00180c00060300160b000c0600060300
-261300160b000e0700160b00160b00140a002010002613002613001e0f00281400201000
-0201001e0f002814001e0f00160b000e07001e0f00160b00160b002010001e0f00201000
-0e07001e0f00160b00160b000402000e0700140a00180c00160b00261300180c00201000
-261300180c00160b00281400140a002613002010001e0f00140a00160b000e0700140a00
-201000160b00160b000603000c06002814001e0f002010001e0f00180c00180c00160b00
-201000160b00261300160b001e0f00201000261300180c00060300140a00160b00281400
-281400160b00060300201000180c00160b00180c002010000e0700140a00140a001e0f00
-140a001e0f00140a00160b00040200180c000e07000e0700261300201000140a00160b00
-160b00160b00281400180c00180c00140a00180c002010000e0700140a00160b000e0700
-1e0f002e1700201000060300180c002613000603001e0f00
-0e0700140a00160b002613000e0700060300020100020100180c00180c00160b00180c00
-2814000e0700160b00160b00160b000603000c06000e0700160b00060300060300060300
-0e07000e0700201000160b00180c00ffa4480e0700201000281400281400180c00160b00
-2e17003a1d003a1d004c2600663300904800984c00b45a00e07000f67b00ffab56ffc386
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffeddaffb264ff8a14ce6700c46200
-9249008040005e2f005e2f006e3700542a004a25004422004221004a25003018002e1700
-3018001e0f00281400ff9c38281400140a00160b00140a000e0700140a00261300160b00
-201000160b00140a000201002010000e07001e0f001e0f00301800180c00180c00040200
-160b00140a000c0600261300261300261300201000140a002010001e0f00160b000e0700
-201000180c00381c000e0700281400281400160b00281400201000160b000e0700160b00
-1e0f00201000160b000e07002010000e07000e07002e1700180c00160b001e0f000e0700
-140a001e0f000e0700180c000e0700281400160b00201000140a00160b00160b00160b00
-1e0f00180c000c0600201000301800281400261300160b002613001e0f00160b00160b00
-2e1700281400201000140a00160b000e07002010000c0600180c000e0700180c00160b00
-140a001e0f00140a00160b00180c001e0f00160b00160b000e0700160b00160b000e0700
-140a00160b00160b000e0700140a00160b00261300180c00180c000603000e0700060300
-1e0f001e0f001e0f000e07000e07000e0700160b00160b002010001e0f001e0f00160b00
-160b00140a00160b00160b00140a001e0f00160b000e0700140a000e07001e0f000c0600
-201000160b000c06000201002010000e0700201000180c000e07000603001e0f00180c00
-160b00160b000c0600160b002010001e0f000e0700180c00201000160b00201000140a00
-140a000603001e0f00201000160b00140a00140a00201000180c00140a002010000c0600
-201000160b001e0f00180c000e0700ff9c380e0700201000201000261300281400261300
-3219003018004221006633005e2f007038005c2e006432005c2e006432006633005c2e00
-5229005c2e005e2f00522900442200422100381c003219002e17002010002814002e1700
-2e17002e1700201000ffa54a160b002010002010001e0f00140a00160b002e1700160b00
-2010000e07000e07002010000e0700160b000e07002010000e07002814002010000e0700
-1e0f00301800160b000e0700160b00140a00140a00060300140a00160b00201000160b00
-0c0600160b002814001e0f00160b00140a000c0600281400281400281400180c000e0700
-160b00060300281400201000180c00201000201000160b00140a000603002010000e0700
-1e0f00160b002010002613000c0600160b00160b000e0700180c000e0700160b00281400
-160b00180c00180c000e0700261300180c00160b000e07001e0f00160b00140a00281400
-180c00040200201000180c00160b000e0700160b00160b002814000e07000e0700060300
-1e0f002010002e1700140a000402000e0700060300160b00261300160b00140a00180c00
-2010000e07000e0700160b001e0f00160b00140a000c0600160b00160b00160b00201000
-1e0f00ff9b36ffa1420e0700160b000c0600180c001e0f002e1700020100140a00140a00
-160b00140a00160b00201000140a001e0f00140a00201000140a001e0f00160b000e0700
-140a001e0f00180c00160b00140a002814001e0f00160b00140a00201000281400140a00
-160b00180c000e07000e07000e07002010002010002814001e0f00160b00201000281400
-180c000e0700160b00160b00180c00281400160b00140a00140a000e0700201000140a00
-060300140a000c0600160b002010002613003018000603000e0700180c002814000e0700
-1e0f00140a00180c00261300160b00201000160b00281400201000160b00201000140a00
-060300160b000e07002613002010000e0700060300160b00140a000e07000e0700140a00
-140a002010002e1700201000140a00201000180c000e0700
-180c00180c00201000160b00201000140a00060300160b00020100060300160b000e0700
-040200140a000603002814000e07000c0600060300140a000e07000e0700160b000c0600
-160b00140a00020100060300201000ff9830140a00201000261300180c002814003a1d00
-2e17003a1d005229006432006e37006c3600864300b45a00e07000ea7500ffa142ffd0a0
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffd9b2ffa74eff860cff8306be5f00
-a251009048007e3f006432004422004422005c2e003219004422004221002e17003a1d00
-180c00140a00301800ff9c38201000281400281400201000160b00140a001e0f00020100
-140a00160b00180c00281400180c00160b00140a001e0f00160b001e0f00261300160b00
-281400160b00140a00180c002010002e17002814001e0f00301800180c00140a00281400
-201000281400201000261300201000261300140a000e0700160b00201000160b00160b00
-1e0f001e0f00201000160b002814000e0700140a000e0700201000201000160b00060300
-160b00160b00160b00160b00140a00160b001e0f001e0f00201000201000281400201000
-281400180c002613000603002e1700201000261300201000140a00261300180c00180c00
-2010000e0700140a00160b00261300180c00180c00201000140a000603002e1700281400
-0e07002010001e0f000e07000603000e07000e07002814002814000e07000c0600201000
-160b001e0f00201000180c00140a00160b00201000160b00201000160b00160b00201000
-140a002010003219001e0f00180c00180c000201002010000e0700160b00160b00180c00
-2010000e07000e0700180c002010000e0700261300201000201000180c000e07000c0600
-0201000c06001e0f002010000c0600160b00281400140a00140a000e0700201000201000
-2010000e0700180c00201000160b00140a000e07001e0f00381c00160b00180c00201000
-0e0700140a000e0700180c00160b00180c00160b00180c001e0f00140a00140a00201000
-160b001e0f00281400261300160b00ff9d3a160b002613002010003a1d002814004a2500
-4221003a1d004422005c2e00763b006c3600703800884400804000884400783c00703800
-8643006432006c3600522900542a00422100422100422100422100321900301800422100
-201000201000160b001e0f00ffa040140a00160b000e0700160b00201000281400060300
-0e07001e0f000c0600140a00201000140a001e0f00180c00160b00160b001e0f00160b00
-0603001e0f00160b00180c00160b00160b00140a00281400261300160b00060300201000
-ff9c38ff9c38ffa040ff9c381e0f00201000160b002613001e0f00180c00160b00160b00
-0e07003018002e17000e0700160b00201000160b00160b00160b00160b001e0f00201000
-201000140a00160b00140a00201000180c00160b000c06000c0600140a000e0700060300
-0c06000e07000e07002613002010000e0700160b000e0700140a000e0700180c00201000
-281400060300140a00180c00060300160b003018000c0600160b000e0700140a00160b00
-1e0f000e0700140a00160b00140a00140a002010002010000e0700160b000e0700201000
-0c06001e0f002814000e0700201000160b001e0f00160b002613001e0f00ffa142ffa142
-ffa244281400201000ff9d3aff9e3cffa0400e0700160b00201000140a00180c00261300
-2613000c0600301800140a00281400261300160b000e07000e07000c06000e0700040200
-261300201000160b000e0700160b00160b00040200160b00180c000e07000e0700180c00
-0c06000603002814002814000e0700140a00201000060300180c002010002e17000e0700
-140a00180c00201000180c00160b00180c002e1700160b00140a00180c000e0700180c00
-1e0f00140a000e07001e0f001e0f00201000281400160b000e0700140a00201000281400
-160b00261300180c000e0700160b00140a000c06002010000e0700140a00140a00201000
-180c00020100060300160b00160b001e0f002010002010003a1d00160b00301800261300
-1e0f002010002613002814001e0f00160b002010000e0700
-2814002613001e0f000e0700160b000e07003018000c06000e07001e0f000c0600180c00
-0e0700180c000e0700281400180c002010000201000e07000e0700060300020100060300
-0201000201000c0600160b00160b00ff9e3c0e07002e17000c06002613002e1700261300
-3a1d003018004c2600542a00542a006633009e4f00984c00c66300f47a00ff8f1effb870
-fff1e2fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffd0a0ffae5cff8306ec7600ca6500
-ac5600804000783c006e37005e2f006432004a25003a1d004a25004020002e1700201000
-2e1700281400201000ffa040140a002814002814002010001e0f002e1700160b000e0700
-0e07000e07000603002814000e0700160b00160b00180c001e0f00160b00301800180c00
-1e0f001e0f000e07000c0600180c002814002e1700140a00180c00160b002010001e0f00
-301800180c00160b00281400160b00261300160b00281400201000201000180c000e0700
-1e0f00180c00160b00180c00140a00261300060300160b00060300180c00180c00180c00
-201000180c00140a00140a00261300160b00160b002010000e07001e0f00160b00180c00
-0c0600160b00180c00140a00180c00160b003018000e0700201000140a00160b00160b00
-2010002010000c0600201000160b00140a00160b00020100201000281400180c00201000
-180c00160b002010000402000e0700160b001e0f000603002010001e0f000e0700140a00
-301800140a000603002613002010000e07002010000603000e0700281400160b001e0f00
-160b00201000160b002010002010002e1700301800160b00201000140a00180c000e0700
-160b000e07001e0f00180c000c06000201000e0700140a00180c001e0f00301800281400
-160b00160b002010001e0f002010000e0700160b00201000180c00201000201000261300
-140a00180c001e0f002010000e0700160b00160b00201000060300160b00201000180c00
-160b002010000e0700160b00160b002613000e07001e0f001e0f001e0f002814001e0f00
-180c000e07000e0700180c00160b00ff9c38180c00060300180c002613004221002e1700
-5c2e004a2500542a00783c007038007e3f008a45009c4e00aa5500a45200a45200984c00
-8844009048006633006432005e2f005c2e005a2d005c2e003a1d004221003219001e0f00
-2e17002613002e1700201000ffa2441e0f00180c00180c00201000160b000e0700201000
-180c00160b000e07000e07000e0700180c001e0f00140a002613001e0f001e0f001e0f00
-2010000e0700180c00281400140a00140a00281400160b00020100ffa54aff9d3affa952
-160b00140a001e0f00160b00ff952affa54a160b00180c00160b000e07002010000c0600
-0e07001e0f000c0600180c00201000180c002010000c0600160b00201000160b00201000
-0c0600201000201000180c00201000060300160b004221002613000e07001e0f001e0f00
-180c000c06002010000c0600140a001e0f000e07000e07002814000201001e0f00060300
-160b002010000c06000603002010000e07000603001e0f00160b00160b001e0f00201000
-060300160b00060300180c00160b000c0600160b00140a00160b00160b00160b001e0f00
-2814001e0f00160b001e0f001e0f00140a00160b001e0f00ffa040ffa0400c0600281400
-0c06002814001e0f00261300201000140a00ffa64c0e0700201000160b00160b000e0700
-1e0f00201000060300160b000c0600160b00160b00160b002e17000e0700160b000e0700
-0e07001e0f003a1d001e0f00160b00160b001e0f001e0f00281400180c002e1700201000
-1e0f000e07001e0f00160b00160b00160b00160b00160b000e0700140a00160b00160b00
-2e17002010000e0700160b00140a000e07001e0f00140a00140a001e0f00180c00201000
-160b002e1700261300140a00160b001e0f002814003018002010000e0700281400281400
-180c00140a00201000160b00140a00160b00160b00160b00060300160b00281400180c00
-0c0600160b00060300180c00160b000e07001e0f00160b000e0700160b00180c00160b00
-201000160b000e0700140a00160b00180c00201000201000
-160b001e0f00140a000201001e0f00160b00140a001e0f00160b000402000e07000e0700
-0603000e0700160b002e17002010000e07001e0f00201000160b000603001e0f00160b00
-180c000201001e0f000e07000e0700ff91221e0f00281400180c00201000201000281400
-3219002814004a25003a1d005a2d005e2f008844009c4e00c46200d86c00ff850aff9932
-ffc58affe4c8fffcf8fffcf8fffcf8fffcf8ffe6ccffc488ff9e3cff8a14e27100be5f00
-aa5500984c008643006432006e37004a25003a1d004422003a1d003a1d003018002e1700
-1e0f00201000261300ff9b36180c00160b002613002010001e0f00040200160b001e0f00
-0c0600140a00160b00140a00281400160b002e1700160b00261300140a00180c001e0f00
-160b002e1700140a00140a000e0700160b001e0f00201000160b002814002010002e1700
-2e1700160b000e07001e0f00201000160b001e0f00281400160b00180c00140a00201000
-180c000e0700140a00140a000e07001e0f00180c00140a000c06000e0700160b00160b00
-180c001e0f00281400201000140a00160b001e0f00140a002010002e17002613001e0f00
-1e0f00160b00201000160b00160b00201000201000180c00160b000e07000e0700160b00
-160b001e0f00160b000c06000e07000c0600180c000c0600201000160b000e0700160b00
-140a00201000160b00180c00140a00160b002814001e0f000c06000e0700201000201000
-160b002010000e0700160b00261300160b00160b00140a00160b000e07000e0700160b00
-0e0700160b000e0700160b003a1d002814001e0f002814002010002814001e0f00281400
-1e0f00160b00281400201000160b003018001e0f000e07001e0f000e07000e0700201000
-0c06001e0f001e0f00201000160b00060300160b00180c002010000e0700201000160b00
-180c00180c001e0f00160b00180c002613002010002814000e07001e0f00201000160b00
-160b000e0700060300281400201000281400160b000e0700180c00140a00160b00060300
-1e0f00140a00160b00261300ffa0402e17002613002010002814003219003a1d00321900
-422100542a00542a00763b00783c00804000924900aa55009e4f00a45200c86400c86400
-b259009a4d00984c008643009249005e2f006633004a25005229003a1d00442200301800
-2e17002613003018002613001e0f00ff9932160b00281400201000160b00261300201000
-0e07001e0f00160b00261300140a00140a002814000e07000402001e0f00140a000e0700
-160b00201000160b000603000603001e0f001e0f00160b00ffa0402814002e17001e0f00
-2e1700160b00281400060300160b00201000ffa040ff91222e1700160b00060300201000
-160b00201000180c00160b001e0f000e07000e0700180c000201000e0700281400180c00
-160b00281400281400180c00160b00281400160b002010001e0f002010000e07001e0f00
-2010000e0700180c000c06002010002613000402000c0600180c000c06000c06000c0600
-0e07000e0700281400201000160b000e0700180c00160b00261300160b00160b001e0f00
-281400160b00160b00201000180c000e0700201000180c000e0700140a00180c001e0f00
-0e0700201000160b001e0f001e0f00201000140a00ff9b36201000261300201000201000
-201000201000201000140a001e0f00160b000e0700ff9b36ff9d3a1e0f002010000e0700
-201000201000180c002814002010000c06001e0f00201000160b00281400160b00201000
-160b00160b000e0700160b000e0700180c000e0700140a002e1700301800180c000e0700
-201000040200180c00261300140a002010000603002010000e0700201000040200160b00
-201000261300180c00180c00180c001e0f00180c00160b00281400201000160b00160b00
-2814002814000c0600160b00261300ffa244ffa54aff9d3affa448160b00060300140a00
-0e0700160b00140a000e07000e0700261300160b00020100201000160b001e0f00160b00
-2613000c0600140a00040200140a00160b00060300160b00160b00160b00180c00160b00
-1e0f000e0700261300160b002e17000603002010000e0700
-180c00160b00160b002613001e0f00180c000c06000c06000e0700060300060300060300
-1e0f00140a00060300040200180c00160b000201000e07001e0f000e07000e0700201000
-0e07000201000c0600160b000e0700160b00ff9b36140a00301800140a00160b00381c00
-180c004a25004221005229005a2d006633008844007e3f00aa5500a25100e27100ff8810
-ffa244ffc080ffdebcffeddaffe7ceffdebcffc386ffae5cff9428ff850af67b00b25900
-864300984c00763b005c2e005c2e00542a00542a00402000402000422100442200301800
-2613003a1d00160b00ffaa540e0700261300180c00160b00321900180c00261300060300
-160b000e07000e0700160b00160b000e0700140a000e07002814002e1700201000201000
-1e0f00160b001e0f000e0700180c00160b00201000301800180c00160b00301800160b00
-160b00281400201000281400160b00381c00201000201000160b00201000201000201000
-160b00180c002e17001e0f000c0600180c002814001e0f00140a000e0700140a00040200
-0c0600281400060300140a000c06000c0600060300160b00160b00160b00201000160b00
-160b00180c000e0700160b00180c000e0700140a00180c00180c00160b00180c00201000
-160b00160b001e0f00261300160b00160b00201000201000140a000e0700160b00140a00
-0e07002010002010002010002814002613001e0f001e0f00140a00201000281400160b00
-1e0f000c06003219002010000e07000e0700160b00281400040200140a002010001e0f00
-160b00140a000e07003a1d00261300201000160b00160b000c0600160b00160b00301800
-0e07000603000e07002814000e07000e0700140a002010000603002e1700180c00040200
-0e0700140a000c0600060300160b000c06000c0600201000140a00180c00160b00160b00
-0e07000e07000e0700281400261300060300261300160b00160b000e0700160b001e0f00
-201000160b000e0700180c00160b000e07000603002814000e0700180c00201000201000
-060300160b00060300201000ffa54a180c00201000180c003018002814003018004c2600
-4a25005229005c2e006c36008643008643008a45009e4f00bc5e00d86c00e87400d06800
-e47200c86400b45a00b65b009249009249007038006432005c2e00422100301800301800
-3018002e1700261300261300281400281400ff9d3a2010002e1700160b00201000180c00
-0e07001e0f001e0f00261300140a00261300140a00020100180c00160b00160b00281400
-0e0700201000140a00201000180c002814001e0f00ffaa54180c00160b00281400201000
-160b001e0f00201000180c00261300140a00060300140a00ffa0402613000e0700261300
-3018002e1700201000140a000c0600180c002613003018002010001e0f00160b00201000
-180c00160b00140a00180c000e0700140a002010001e0f00160b00180c001e0f000e0700
-160b001e0f002010000e0700140a00180c002814000c06002613002010002e1700180c00
-140a000e0700201000201000140a00180c00160b00140a00160b00381c00301800201000
-180c00020100140a00180c001e0f00201000160b000e0700160b00160b00160b00160b00
-2010000c0600180c00160b00060300140a001e0f00ffa0400e0700160b002814002e1700
-301800201000160b000c06002e1700261300180c00201000ff9d3a140a00261300281400
-160b00160b000c0600060300160b002613000e0700140a00160b00180c000e0700180c00
-2010001e0f000e0700180c00180c00180c002010000e07001e0f00140a00281400201000
-180c000e07000c0600060300201000180c002010002613001e0f001e0f000c06000c0600
-201000201000160b000201000e07000e0700140a002010000c06000e0700201000201000
-180c000e07000e0700ffa244ffa244160b000e0700060300180c00ffa64cff9e3c140a00
-2814001e0f00201000201000180c000e07001e0f00060300160b00160b00160b00201000
-201000201000180c00201000140a00281400160b00140a002814000e07002814000e0700
-2010002814000e0700140a001e0f000c0600180c001e0f00
-160b00201000180c00140a00140a000c0600160b00160b000e07000e0700160b000e0700
-160b00160b00160b000c06000603000e07002010000603000e0700140a00060300060300
-140a000e0700160b00160b00140a000c0600ff9c38281400020100160b002814001e0f00
-0c0600381c003a1d004a25004422004a2500763b00783c00904800a25100d26900f47a00
-ff8102ff9428ffbb76ffb162ffb468ffaa54ff9e3cff8f1efa7d00de6f00be5f00b25900
-884400763b007e3f005c2e00542a005c2e004020003a1d00381c003018002613002e1700
-261300301800321900ff9c38201000160b00160b00180c00140a00140a001e0f00180c00
-0e0700160b00160b00201000140a00201000180c001e0f001e0f00140a00201000140a00
-160b002010000e07000e0700160b001e0f00180c002e17001e0f002613002613001e0f00
-0e0700281400160b001e0f00201000180c002613000e07000402002814002613002e1700
-160b00140a00180c00180c001e0f000c06000e07002010002e1700281400160b002e1700
-201000160b00140a001e0f00160b00160b000c0600160b00201000060300160b001e0f00
-160b001e0f00140a00201000160b00201000201000160b002010000c0600160b001e0f00
-140a001e0f00160b001e0f001e0f000e0700140a00261300281400180c000e0700140a00
-201000261300201000281400160b000e07002814002010001e0f00160b00160b00180c00
-0c0600261300180c000e07002613001e0f00180c00281400180c000c0600160b001e0f00
-281400160b002814000603002613000e07001e0f00281400140a00201000160b00140a00
-261300180c00160b00201000180c002e1700180c00160b00140a000e0700160b000c0600
-0e0700160b000e0700201000180c00160b002814000c06001e0f00261300060300140a00
-1e0f000e0700180c00180c00140a00160b00060300040200060300180c00160b00201000
-160b001e0f003018001e0f00160b000e0700160b000c0600160b000603001e0f001e0f00
-2010002814000e0700201000ffa54a1e0f00160b002814002e1700261300381c00422100
-3a1d005a2d00542a006e37007e3f00984c00b25900c66300d66b00ff8306ff8306ff850a
-ff8810ff8102d06800c462009a4d00b259008844005e2f008040005229004422004a2500
-2814003018001e0f00201000281400201000ffa64c201000201000201000160b00301800
-160b00201000201000140a002010001e0f001e0f00160b001e0f000e0700301800201000
-0c06000e0700180c000402001e0f00261300ff9e3c1e0f00180c002e1700301800201000
-160b00422100201000201000281400180c002010001e0f00ffa448140a00160b00160b00
-201000140a00140a000e0700201000040200160b001e0f00201000180c00160b00301800
-160b00040200180c00180c00140a00160b00160b00180c00140a00160b000e0700180c00
-160b002814001e0f00160b001e0f002010000c0600160b001e0f00301800160b00060300
-0e0700180c001e0f003018000e0700201000160b000e07001e0f00040200140a00201000
-1e0f00180c00201000160b00140a000e0700160b001e0f00180c002010000e0700180c00
-0c0600160b001e0f00160b00140a00321900ffa0401e0f00160b001e0f00180c002e1700
-261300201000281400381c00281400201000180c00160b000e0700ff9b36140a000e0700
-1e0f000e07000e0700180c00160b00160b00180c002814000e07000e07003018000e0700
-3018001e0f00180c000e0700180c00140a00160b00281400201000160b00281400180c00
-261300180c000c0600201000160b000e07002814000e0700201000140a002613000e0700
-261300281400160b00020100201000201000160b00301800281400180c00381c001e0f00
-180c00180c00ffa040140a002613001e0f00140a00160b000e07002010001e0f00ff9c38
-ff9c380e0700180c000e0700140a00180c00201000180c000201000402001e0f00261300
-0e07001e0f00160b00160b00180c00201000201000160b00180c00160b00160b00201000
-0c0600060300140a002010002613001e0f00140a00201000
-160b00160b00160b00201000160b00140a00160b00160b00160b00140a00180c00140a00
-160b000c0600180c000e0700140a000e07000e0700160b00180c00020100060300020100
-020100020100140a00160b00020100160b00ffa040040200160b003018001e0f00321900
-2010003018004c26004020005c2e006e37004a2500763b009249008a4500b65b00b85c00
-f47a00fe7f00ff8f1eff9326ff9c38ff952aff8204fa7d00ce6700c66300b25900984c00
-8844007e3f00643200783c004a25003a1d004020004422004221002814003a1d00301800
-3a1d000e0700ffa74e261300160b002010002e17002010000e0700140a00160b00020100
-180c00160b001e0f002010000c06001e0f000e0700180c00301800160b00281400201000
-180c002010002010001e0f00201000160b00140a002010002010000c0600201000201000
-201000160b00201000201000201000381c00160b00140a00140a00140a00160b00201000
-1e0f001e0f00261300160b00160b00381c00160b002814000e0700281400281400180c00
-1e0f00140a00201000160b00180c00160b000e0700201000160b00160b002010000e0700
-160b00180c001e0f00160b001e0f002010001e0f002010002814000c06002010001e0f00
-160b00160b000e0700201000301800160b001e0f00140a00160b00261300060300201000
-0603001e0f000e0700261300140a00160b00160b00261300160b00180c00180c002e1700
-140a000e07001e0f00281400160b00160b000e07000e07001e0f00160b000c06000e0700
-180c002e1700160b003018002613003018000e07000e0700281400201000160b00281400
-1e0f00160b00201000140a00180c00180c00160b001e0f00201000140a00281400180c00
-140a00160b00160b002814001e0f00201000140a001e0f000e0700180c00140a00201000
-201000160b00180c00160b00140a00180c00160b00020100020100020100160b00180c00
-1e0f001e0f00180c00160b00160b00140a000c0600160b00160b00060300160b000e0700
-201000180c00261300180c00ffa2442613002814002814002010003a1d00442200422100
-4c26007038005e2f00763b00703800904800ac5600c46200de6f00ff8810ff8c18ff9b36
-ff9d3aff952aff8204e47200de6f009a4d00b25900884400904800522900522900301800
-2e1700281400281400160b00381c00201000201000ffa2442814002010002010001e0f00
-201000201000140a000e07000e07000e07002010000c0600261300140a00160b000e0700
-140a00160b001e0f00201000261300ff9c38201000281400201000160b00281400301800
-281400281400281400381c003018000e0700261300201000140a00ffa2441e0f00180c00
-060300201000281400180c002613002010000c0600201000160b00201000180c00180c00
-180c000e0700140a000e07000e0700180c000e07000e0700180c002010001e0f001e0f00
-0e0700140a00060300140a00160b00201000160b00261300160b002e1700180c000e0700
-060300201000160b000e07000201001e0f000e07002613001e0f00060300140a00160b00
-2e1700201000261300160b00180c00201000160b000c06002814000e0700180c00160b00
-261300160b00160b000e0700201000060300ffa0401e0f002010000c0600281400301800
-2613004422003a1d00281400261300180c002e1700301800201000ffa54a261300160b00
-0e07001e0f002613000e0700160b00140a00180c001e0f00140a00281400261300140a00
-160b000e07000e0700160b00160b001e0f000e0700140a00160b001e0f00160b001e0f00
-140a00201000201000060300160b001e0f00160b00180c00180c001e0f00180c00160b00
-060300160b00160b00180c00160b000c0600160b000e0700180c00180c00160b00261300
-160b000e0700ffa040160b000e0700180c000e0700160b00160b00160b000c0600160b00
-281400ff9e3c2e1700140a00160b000e0700201000201000281400261300140a00140a00
-0e07002613000e0700180c002010002814001e0f00020100160b000e07002613000e0700
-2613001e0f000201000c0600180c00201000261300180c00
-140a001e0f00060300201000160b00140a00261300160b00160b00180c001e0f001e0f00
-060300020100281400160b000c0600160b00060300160b00160b000603000e0700040200
-160b00160b00140a000e0700020100281400160b00ff952a0e0700020100281400261300
-2e17002e17002613003a1d005229003018004422006e3700884400884400b25900aa5500
-ca6500b65b00d86c00e27100e47200f07800ec7600b85c00b65b00aa5500a25100924900
-6e37006c36005a2d004c2600542a004a25004221003018003018003a1d00321900281400
-3018001e0f00ffa64c160b000c0600381c00160b00281400201000180c00201000180c00
-1e0f00180c00160b000e07001e0f00281400180c001e0f000e0700180c00140a00140a00
-180c000e07002010000c06002814002814001e0f001e0f00180c00180c00402000160b00
-180c00180c00201000201000201000180c000e07002010002010001e0f00160b00140a00
-201000160b00180c00160b000c0600201000160b00160b00261300201000160b00201000
-281400321900180c00180c00160b00180c00201000140a00060300201000180c00160b00
-261300201000140a00261300180c00160b001e0f00180c001e0f00160b00201000201000
-160b00201000160b00140a001e0f00160b00180c000e07000e0700160b00201000201000
-160b00160b00281400281400060300160b00201000281400140a00160b00281400160b00
-180c001e0f00180c00160b00261300201000160b000c06000e07000e07000c0600201000
-140a001e0f00160b001e0f001e0f00201000180c00160b00140a001e0f00160b00180c00
-140a00160b00140a000e0700180c000e07000e0700180c00060300180c000e0700160b00
-160b000e07001e0f00160b000e0700060300160b00180c001e0f00160b00060300160b00
-201000160b00160b000603000e0700201000201000261300140a001e0f00180c000e0700
-160b000e07002010000e07000e07003018000e07002613000e0700281400160b001e0f00
-261300201000201000160b00ffa244281400180c002814001e0f001e0f003a1d00321900
-542a005c2e005c2e00904800763b00aa5500aa5500e87400ff870eff8e1cffb366ffbc78
-ffb264ffaa54ffab56ff8f1ee87400c66300b65b009c4e007e3f006633005e2f00522900
-321900381c002010003a1d00281400281400281400ffa2440e0700180c00201000160b00
-2814000603002010000c0600160b000c0600160b002010000e07000e07000e07001e0f00
-160b000e0700140a000c0600140a00ff9b360e0700201000140a003a1d00281400281400
-4221002e17003018002e1700301800160b00281400261300140a00ffa244160b00281400
-160b000e07002613001e0f00160b00140a00160b00160b00201000281400180c00160b00
-0e07000e0700160b00180c00160b001e0f00140a00060300160b001e0f001e0f00140a00
-0e07001e0f000e0700140a00201000180c00180c000402002613002010000e0700160b00
-201000160b00180c00281400160b001e0f00160b000e07000e0700160b000e0700201000
-201000060300381c002814001e0f00160b00321900140a00060300060300201000180c00
-0e0700140a000e07002613001e0f00160b00ffa54a0e0700261300140a00281400321900
-4c26004c26005c2e005229002814002e17001e0f00180c00160b00201000ff9c38201000
-140a002814002e17000e0700160b001e0f002010000c06002e17000e0700180c00060300
-281400201000160b00160b002010000e07002814000e0700140a00160b000c0600201000
-0e0700201000140a001e0f00140a001e0f00140a00160b00281400160b00060300201000
-281400261300160b00180c00140a001e0f00140a00140a001e0f000e0700060300140a00
-0e0700ff9932201000160b00160b00281400261300180c003a1d00180c000c0600160b00
-160b00201000ffa244060300180c00160b00160b000e07002010002613000402000e0700
-0e0700180c00140a000402001e0f001e0f000e0700381c000e0700261300201000180c00
-1e0f00160b000e0700180c002613001e0f001e0f00201000
-2010000e07000e07001e0f003219000e0700160b00160b00180c003018000e0700140a00
-0e07000201000c06000c06000e07000e07002010001e0f000e07000402000e0700160b00
-0603000c0600160b001e0f000e0700140a00160b00ff9e3c140a00201000180c00381c00
-281400321900281400381c004221003018004221005229005c2e00763b00783c009c4e00
-904800a25100c46200b25900be5f00b85c00a45200aa5500a25100924900924900783c00
-6e37005c2e005e2f004a25004a25003a1d00281400301800381c002010003a1d00301800
-321900321900ff9d3a301800180c002814001e0f002010001e0f001e0f001e0f000e0700
-2814002e17000c0600201000180c00160b00281400160b00160b00160b00281400261300
-1e0f00160b00140a00160b00281400140a000e0700281400201000160b00180c00160b00
-0e0700160b001e0f00201000261300201000160b002613000e0700160b00201000201000
-201000180c001e0f00201000160b00180c00160b00261300180c00160b00201000281400
-201000160b00140a00201000201000201000180c00180c00201000160b000201000c0600
-2010000603001e0f00201000160b001e0f00381c00301800261300160b001e0f00201000
-201000160b000603000c0600180c000e07001e0f001e0f000e0700160b000e07000e0700
-0e0700180c00281400201000201000180c00140a00201000140a000e0700140a00160b00
-160b00140a002010001e0f00140a000e07002010002814001e0f001e0f000e07001e0f00
-160b00160b002010000c0600160b00140a00201000301800140a00160b00040200201000
-201000140a001e0f001e0f002010001e0f00160b00261300261300160b000e07002e1700
-1e0f000603002814002613000e0700160b000603000e0700140a00140a00180c00060300
-180c00180c000e07002814000e0700180c00180c000c06000e0700160b00040200040200
-0603000e07000e0700180c00180c00180c00160b00180c00201000160b00160b00160b00
-1e0f00160b00160b00180c00ffa448261300180c00301800281400281400301800402000
-4a25004c2600763b006e37009a4d00aa5500d86c00f67b00ff9b36ffae5cffc080ffdab4
-ffd3a6ffbf7effcd9affae5cff9b36fe7f00c46200b25900a452007e3f006432005a2d00
-4c2600381c00381c004020002e1700160b002010001e0f00ff9e3c180c000e0700180c00
-0e07001e0f00180c00140a00160b001e0f00261300160b002814001e0f000e07000e0700
-0603000e0700160b001e0f00ff9d3a201000381c000603003a1d00301800321900422100
-4c26005e2f005c2e003a1d00301800301800281400261300301800201000ffa142301800
-160b00160b000e07000e0700381c00140a000c06000e0700160b00060300201000281400
-0e0700180c00180c00160b00201000160b000e07000603001e0f00201000140a00201000
-140a00140a00180c00180c002e1700160b00140a001e0f00201000201000060300160b00
-0e07000e0700160b00160b002814000e07000e07001e0f002814002e17001e0f00180c00
-180c00201000180c00140a001e0f00060300201000201000160b000e0700201000160b00
-160b00160b00180c00180c00160b00140a00ffa040160b001e0f00180c002e1700381c00
-643200703800763b006432006633003a1d002814001e0f00160b000e0700ffa448140a00
-281400160b002613000c06000e07000e07002010002010000603000c0600060300201000
-0c0600160b001e0f002010000e0700180c00140a001e0f00160b00281400020100201000
-160b00140a001e0f000c0600160b00160b001e0f00180c00160b00140a00140a00020100
-281400301800140a00201000160b00281400160b00201000160b00180c00201000201000
-1e0f00ffa448160b00160b001e0f000e07002010002e1700261300201000321900140a00
-2010000e0700ff9b362010000e07000e0700261300160b00160b00140a00180c001e0f00
-0e0700201000160b00201000160b000e07001e0f000c06000e0700180c00180c000e0700
-160b00180c000603000e07000e0700160b001e0f001e0f00
-020100160b000603000603000e07003018000e0700140a00160b00180c00160b00020100
-180c002613002010000e07000e07000e07000603000c06000e07000603000e07000e0700
-020100160b00060300180c00160b000402000e0700160b00ff9e3c0c06002814000e0700
-160b00261300381c002613003219004422005229005c2e006e37005c2e00763b00643200
-9048007e3f00984c009c4e00984c00904800984c008a4500864300663300763b005e2f00
-6432005229004a2500381c003a1d002e1700381c00321900321900201000281400301800
-301800281400ff9e3c160b00201000281400180c00160b003018001e0f00160b000e0700
-060300180c002e1700160b001e0f002613002814000e07001e0f001e0f001e0f00201000
-261300201000160b00160b00180c000e07002010000e07001e0f00160b00201000201000
-1e0f00140a00160b00201000140a000e07003219002010002e1700160b00180c00160b00
-1e0f001e0f00201000301800160b002613001e0f002814000603000e07000c06000e0700
-180c000e07001e0f002e17001e0f000e0700140a00281400160b00160b00261300160b00
-281400140a00160b00201000160b00180c001e0f00180c00281400140a001e0f00261300
-0603002010003018000e07002010000e0700160b00281400201000140a00140a001e0f00
-180c00301800160b00180c00160b00180c00060300180c00261300160b00261300281400
-281400140a000e0700180c00201000281400160b00160b001e0f001e0f000e0700281400
-0e0700261300180c00160b00180c000c06000c0600160b00201000180c00140a00201000
-0201000603001e0f00160b00160b00201000160b000c0600160b00201000180c000c0600
-180c00060300160b00160b00281400160b002010002613000e0700201000060300160b00
-160b00180c00281400060300140a000e07000c0600261300160b00201000201000160b00
-160b00140a000e0700180c00281400180c00160b00140a00281400281400201000160b00
-060300180c00160b00281400ff952a2e17001e0f001e0f00201000301800301800442200
-542a00542a004a25005e2f00984c00c66300f47a00ff8b16ffb162ffbd7affe7cefff1e2
-fffcf8fffcf8ffe4c8ffc890ffa244ff870efe7f00c46200aa55008643006e3700542a00
-422100402000261300301800201000180c00140a00281400ffa1420e0700201000281400
-1e0f001e0f002010000e0700180c002e17002010000e0700160b00160b00180c00160b00
-0e07002010000e07001e0f00ffa142180c001e0f002010002814002814004a2500542a00
-6e37008a4500804000542a004a25003018002e1700201000261300201000ffa74e160b00
-160b00160b00160b00201000180c00180c00301800160b00201000201000261300201000
-160b00160b00261300160b000e0700140a00261300160b00201000160b000c0600321900
-160b00140a000c0600261300160b000c0600261300201000201000140a00281400281400
-ffa142ff9932180c001e0f000e07001e0f002814002613001e0f001e0f00160b00201000
-1e0f00180c00160b00160b000e0700201000160b00160b00140a00160b00160b00261300
-160b000e07002010000e0700160b00160b00ffa952160b00160b002010003018003a1d00
-5229006432006c36006432004a25003a1d00180c00281400301800301800ff9c38180c00
-281400201000160b000e07002814003018000e07002613002010000e0700020100180c00
-2010001e0f00160b001e0f002814000e07000c0600301800060300180c000e07000e0700
-0e0700160b00160b00281400160b00180c000e0700160b00140a00180c001e0f00201000
-180c000e07001e0f000e0700160b00160b000e07000e07000e0700261300140a00180c00
-201000ffa142140a00201000160b003018002010002e17002e1700201000281400140a00
-201000201000160b00ffaa542010002010002010001e0f002010002010002010000e0700
-140a002010002613000c06000c0600261300160b00160b00020100160b00180c00281400
-140a00160b00261300201000060300160b00140a00140a00
-0e07000402000e07001e0f00160b000e07000e0700160b00160b000c06000c0600160b00
-301800160b00060300060300180c000e0700020100060300140a00160b002010000c0600
-0e07000e07000603000e0700261300060300160b00160b00201000ffa0400e0700281400
-2010002814002613001e0f002814004a2500542a00442200422100542a006e37005c2e00
-643200643200864300763b006e37007e3f00783c00663300783c005e2f004a25005a2d00
-4020004c26004a2500301800402000301800201000180c003219001e0f00281400261300
-261300ffa74e2613002e1700281400160b002814003018002010002e1700261300281400
-1e0f00180c000c0600020100201000140a00201000180c00160b00160b00140a00140a00
-160b002010002e1700201000160b00160b000603000e0700160b000e0700201000060300
-201000140a002010000c06000e07000e0700281400180c00201000201000180c00201000
-1e0f00160b001e0f000603002613000603002010000e0700140a00140a002010001e0f00
-201000180c002e1700140a00261300160b00180c00180c002010000e07000e07002e1700
-0e07000e07002010001e0f00281400160b00140a002613002010001e0f00160b00201000
-160b00060300140a00140a00160b00160b00160b00060300281400160b00201000180c00
-281400180c00180c002010002e17001e0f00140a00160b00201000060300201000261300
-2613001e0f00160b00160b00160b001e0f00160b00180c00180c00281400160b00160b00
-0e07000e07000c0600160b001e0f00160b00160b00140a00180c00180c000e0700201000
-1e0f000e0700160b00160b00160b00160b00160b002613001e0f001e0f00140a00160b00
-2010002010000e07002613000e07002613000e0700140a00140a00201000301800281400
-160b001e0f002010000e07000c0600160b000e07000e07002814000c0600160b00201000
-2010002010000c0600140a00160b002010001e0f00160b00201000160b00201000281400
-1e0f00160b00160b001e0f00ffa142140a00160b000e0700180c002613002e17002e1700
-3a1d004221005a2d006e37008a4500bc5e00f47a00ff9020ffc080ffe0c0fff3e6fffcf8
-fffcf8fffcf8fffcf8ffefdeffb366ff952aea7500d66b00b25900984c008844005e2f00
-5c2e005c2e00422100301800281400180c00160b001e0f00ff9e3c201000180c002e1700
-0e07000e0700160b000e07000e07000e07001e0f00160b00140a00180c00060300201000
-180c000e07000e0700201000ff9c38160b00261300140a002010003219005a2d00864300
-a45200b25900904800763b004a25003018001e0f00281400140a00201000ffa54a0e0700
-140a001e0f00160b00140a00261300180c00140a000c0600160b00160b00160b00201000
-281400140a000603000c06002010000201001e0f00180c00140a00160b00201000160b00
-160b00261300180c00180c00160b00180c00180c00160b00160b00321900ffa244ff9d3a
-281400201000ff9e3c2814002010002010000e07000c0600160b00140a00020100281400
-160b001e0f00201000180c00160b001e0f001e0f00180c000e0700140a00261300201000
-0e07002010003018000e07000e0700281400ffa54a1e0f00160b002613001e0f00321900
-5229005c2e00763b00542a00402000321900201000160b00160b00180c00ff9c38160b00
-0e0700180c00160b00201000140a000e0700160b00160b00160b00180c00180c00160b00
-0e0700201000160b000c0600060300140a002010002e17000e0700201000180c000e0700
-160b002010000201000603002613002814002814002814000c06000e07001e0f00060300
-261300180c001e0f00160b002010000c0600160b00180c00201000140a001e0f00140a00
-180c00ff99321e0f00281400180c002613003018001e0f00281400261300281400201000
-3018000e0700201000ff9932140a001e0f00201000281400140a00180c00201000160b00
-180c002010001e0f00201000160b001e0f002010000e07000e07000e07002010002e1700
-160b00281400160b000603000e07001e0f00160b00060300
-1e0f001e0f00160b000c06000603000e07000c06000e0700140a00060300180c001e0f00
-160b00160b000e0700180c000402000201001e0f000603000c06000201000e0700140a00
-0603000c0600020100020100160b000201000201000e07000e0700ffa142160b000e0700
-140a00180c003018003a1d003a1d002814003a1d00321900402000422100442200442200
-542a005c2e00542a006e3700542a005229005a2d00643200643200542a005c2e003a1d00
-5c2e00422100422100381c002e1700422100201000381c003018003018002814000e0700
-ffa64c201000281400160b00201000160b00160b00160b00261300180c00160b000e0700
-1e0f00201000060300140a00140a000e0700180c00321900160b000e0700060300160b00
-160b000e07002613002010000e07000e07001e0f000e07002010000e0700160b00160b00
-180c00201000201000160b001e0f00160b00140a00261300160b00201000201000160b00
-201000160b00180c00160b00180c000e07003018000e07001e0f00060300160b00140a00
-160b00261300140a000e0700201000402000160b00381c00160b00140a001e0f00201000
-160b00201000140a000e0700201000160b00261300180c000e0700160b00180c00140a00
-1e0f000c0600160b00160b00160b00160b002010001e0f00201000180c003a1d00060300
-160b00140a00180c00160b00160b00160b002814002814000e07001e0f000402001e0f00
-2010002613002010001e0f00160b00180c000c0600160b002010002613001e0f00180c00
-0e0700281400140a00180c00160b001e0f00160b00140a002010002010002e1700201000
-2814000e0700160b00140a000e07000c0600180c002010002010000402000e0700160b00
-0e07001e0f00180c00180c00180c00040200201000261300160b00281400281400040200
-160b00140a00160b00160b00140a000e07001e0f00160b00140a00160b000e07000e0700
-0e07000e07000603000c0600160b00201000140a00160b000e07001e0f000e07001e0f00
-160b000e0700261300201000261300ff9c381e0f002010001e0f002e17003018003a1d00
-3a1d00542a004422006e3700984c00b45a00ec7600ff9122ffb76effebd6fffcf8fffcf8
-fffcf8fffcf8fffcf8ffefdeffc182ffa448ff870ed66b00d068009c4e008643006e3700
-542a003a1d003018002e1700281400201000321900040200ff9932160b00160b00140a00
-140a00281400180c00180c00140a002814002814002613002613000e0700140a001e0f00
-201000180c00160b00201000ff9b361e0f001e0f002010002e1700381c005a2d007e3f00
-b25900b45a00aa55008643004a25002e1700402000281400160b00261300ffa4481e0f00
-261300180c000c06000e07001e0f00160b00160b000e07002010001e0f00201000281400
-140a00160b00160b00160b00160b002613000e0700201000160b00201000140a001e0f00
-381c00160b000c06000e07002010000e07000e0700180c00160b00ffa64c201000201000
-1e0f00160b00ffa0400e0700140a000e07000e07001e0f00180c00140a00281400201000
-160b000e0700160b00180c00160b00060300160b002010000603001e0f00180c00180c00
-160b00160b002010001e0f00281400201000ff9d3a1e0f00140a001e0f001e0f003a1d00
-3a1d00281400422100381c003018002010002e17002010000e0700201000ffa64c180c00
-0e07000e07000e07002010000e0700160b001e0f00261300160b001e0f00160b00140a00
-160b00140a001e0f00060300160b00201000201000201000261300060300160b00140a00
-140a00040200201000140a000e0700160b00201000261300180c00160b002010000e0700
-0e0700160b001e0f001e0f000e0700140a000e0700281400160b00180c00201000180c00
-180c00321900ff99320e07000e0700261300160b001e0f002814003219001e0f00301800
-2e1700160b00201000160b00ff9d3a0603002010000c0600180c00140a00160b00201000
-301800201000140a00160b00180c00422100160b001e0f000e0700180c00060300201000
-2010002010001e0f00160b00160b00160b00180c00201000
-0e0700140a000201000e07000c06000603000e07002010000e0700160b00060300160b00
-1e0f00060300140a000603000c0600140a00060300140a000e07000c0600060300020100
-040200140a000201000e0700160b00160b00060300060300201000140a00ffa040281400
-0e0700301800261300201000261300301800281400301800402000442200542a004c2600
-542a004422004c26004c26005e2f004a2500522900422100422100422100321900422100
-3a1d00422100381c003a1d002e17002613002814002010001e0f00281400201000201000
-ff9c380e0700281400261300261300160b000e0700201000201000180c00060300201000
-2010002613000e07000e0700040200160b00180c000e0700180c00140a000e07000e0700
-160b000e07001e0f000e0700180c000e0700160b00160b000e07002613000e0700261300
-1e0f00201000160b00160b000e07000e07000603002e17000e07002010000e07001e0f00
-160b002010000e0700160b002613002010000e0700160b002010002613002010002e1700
-140a00140a002613001e0f000e0700140a003018000e0700160b002010002010000e0700
-020100160b002010000e0700180c00160b001e0f00281400140a00140a001e0f00201000
-261300281400281400201000160b00160b002010001e0f001e0f00180c001e0f000e0700
-160b00160b00060300180c00140a00160b00261300201000160b000e0700180c00180c00
-2010002010001e0f00160b000c0600140a001e0f00160b00160b00180c00140a00281400
-0c0600160b00180c00160b00281400160b00201000180c00201000201000180c001e0f00
-160b00160b000e07000e07000e0700160b00060300180c00261300180c00180c00180c00
-140a002e1700160b002010000e07002010000c06000e07002010000c06000e07000e0700
-2814000603000e0700160b00180c00140a001e0f00160b00060300201000180c00160b00
-0e0700160b00261300160b002e17002613000e0700201000160b002814001e0f00140a00
-140a00281400160b000e0700201000ffa54a1e0f00160b001e0f00261300301800381c00
-422100542a004a25006432009c4e009c4e00de6f00ff8f1effa952ffe2c4fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8ffcc98ffa448ff8c18d06800d06800b25900904800804000
-4c26004c2600381c002814002814003018002010001e0f00180c00ffa64c0e07000e0700
-0e0700160b000e0700180c00281400160b00180c002010002613001e0f000e07000e0700
-160b001e0f00140a00160b00ff9c382010001e0f003018002e1700381c00522900663300
-924900984c008a45006633005a2d00301800261300180c00180c00160b00ff9e3c140a00
-201000140a00180c00160b00180c00140a002814000e0700160b002814002e1700381c00
-140a00160b00281400381c00160b00301800160b000e0700160b00201000281400060300
-0e0700180c00140a00160b001e0f00140a00301800281400fffcf8180c00301800281400
-281400180c00ffa448160b001e0f00201000180c00160b002010002010002814000e0700
-2814000e0700281400060300180c00180c001e0f00180c00160b00180c00180c000e0700
-160b000603001e0f00160b00160b002613001e0f00ff9c382e1700160b00140a00040200
-2814003018004221002e1700140a00160b001e0f00060300281400ff99322613001e0f00
-1e0f00140a000e07001e0f00140a002010000e0700201000160b00201000160b00160b00
-160b00160b00160b00060300140a00160b001e0f00160b00140a000c06000e0700201000
-180c000e07002010000c0600160b000c0600140a00160b00160b001e0f00140a00180c00
-140a00140a00201000160b00140a00140a00140a00160b002613002613000c06000c0600
-160b00201000ffa244160b001e0f00180c00180c003a1d003219001e0f00201000261300
-1e0f00160b001e0f000e0700ffa0401e0f000e07000603001e0f00140a00201000060300
-180c00201000381c00261300060300160b000c06002010002010002010000e07001e0f00
-180c00160b002010000e0700160b00201000040200140a00
-160b000e0700140a00180c00160b00160b00160b000c0600140a000e07000c06000c0600
-060300140a00020100160b000c0600160b00020100140a000e07000603000c0600160b00
-0e0700160b000e07000603002814000c0600160b000603000e07000e0700261300ffa244
-1e0f000e07001e0f00281400301800180c002613003018002e17003018002e1700402000
-4020004221004422004221004221004221004221003219003219004221003a1d004c2600
-3a1d002814003a1d003219003219004a2500180c003a1d00281400201000261300ffa040
-201000201000281400281400261300281400160b00180c000c06003018000e0700040200
-0e0700160b00180c00140a001e0f001e0f001e0f002814002814001e0f00160b00140a00
-180c00160b002010001e0f00160b00160b00160b00160b001e0f00160b00180c00281400
-160b00261300201000180c00160b002613000e0700180c00180c00160b001e0f00180c00
-160b00201000160b00160b00060300160b00201000201000160b002010002010001e0f00
-201000140a002e17000e07001e0f00020100160b00160b000c06001e0f00160b000e0700
-160b000603001e0f000e07000603001e0f003018000c0600140a00180c00160b00160b00
-2010001e0f001e0f000e07000201000e0700160b000c0600201000201000160b00160b00
-2e17000e0700180c002814000e0700201000180c00180c000e07000e0700261300160b00
-2010002010001e0f000e0700201000140a00160b00201000140a002613001e0f00201000
-281400160b000e07000e0700160b00160b00281400201000160b00201000160b00201000
-0603002814000e0700180c00281400201000201000160b00201000180c00160b00160b00
-160b00160b00140a002010001e0f00140a00140a002814000c0600160b001e0f000e0700
-1e0f00160b00261300180c002613001e0f00160b00160b001e0f00140a00160b000c0600
-0e0700140a00060300160b002e1700160b00160b00201000140a000603001e0f00261300
-060300261300261300140a00160b00ffad5a201000160b003a1d003018003a1d00301800
-3a1d004a25005a2d005e2f00703800a45200b85c00fe7f00ff9e3cffc58affefdefffcf8
-fffcf8fffcf8fffcf8fff4e8ffc488ffb162ff8c18ff870ed86c00b45a00984c00643200
-763b00542a003a1d003018002814001e0f00201000281400261300ff9e3c201000160b00
-060300160b00281400281400160b00160b00180c00180c00201000160b00281400180c00
-201000140a00160b000e0700ff9830ff9e3c201000180c00ffa040301800ffb870422100
-5c2e00763b006e37005a2d00381c003018002814001e0f000c0600140a00ff9e3c160b00
-2010002e17000e07000c06002010000c06000e07000e07002613001e0f00201000160b00
-201000160b001e0f002010000603002613002613002010001e0f00201000281400140a00
-381c001e0f00140a003018002010001e0f001e0f00ffa64c0e0700201000281400281400
-201000201000ff9b36281400160b000e0700201000160b000e0700140a000e0700201000
-2e17001e0f00201000140a00160b00140a00140a00140a002010000c0600201000180c00
-180c000e0700180c00140a002814000e0700140a00ffa9521e0f001e0f002814001e0f00
-321900160b002010002613002e1700180c002010000e0700160b00ff9e3c281400180c00
-040200140a000e0700060300281400201000160b00180c00201000281400180c00281400
-140a000e07001e0f001e0f00160b00160b000e0700140a000e0700020100180c00201000
-160b001e0f002e17002010000c0600180c000e0700180c00201000160b000e0700160b00
-0c0600060300140a001e0f00160b00201000180c002814001e0f00160b00261300160b00
-160b00060300301800ffa1422010000e0700201000180c00301800321900201000261300
-160b00281400281400201000ff9c38160b002010000e0700160b00140a003018000c0600
-1e0f00140a00180c002814002010000e0700140a00261300180c00140a00160b00201000
-060300201000281400201000160b003018000c0600160b00
-2814000e0700160b000e0700160b002814001e0f002010000c06000e0700060300060300
-180c00160b000e0700140a000e07000c0600140a00180c000c06000603000c0600060300
-0e07000402000e07000c06000201001e0f00160b002814000e07002814000c06001e0f00
-ffa54a140a00140a00160b00160b00160b00281400321900160b00301800281400301800
-381c003a1d004221003018004020003a1d00442200301800321900301800402000301800
-3018002814002e1700160b002010002010003018002814001e0f00261300ffa952160b00
-0e07002010001e0f00180c00180c00160b00160b002010001e0f00060300140a00160b00
-040200201000201000381c001e0f00160b001e0f00180c002010000e07001e0f000e0700
-0c06002814000e07002814001e0f00140a001e0f000e07002e1700160b00261300140a00
-140a00160b00160b00180c00201000281400201000160b00160b000c06001e0f00020100
-2010000e0700201000140a001e0f000603003018003018002010000603001e0f00281400
-160b00160b002010001e0f000e0700160b00140a00160b00281400140a00281400201000
-0e0700201000160b00140a002010001e0f001e0f001e0f00201000180c00160b00201000
-281400160b00160b000e0700020100160b000c0600160b00140a001e0f001e0f00281400
-1e0f00160b00201000160b000c0600160b00201000040200160b00160b002e1700140a00
-0603000e07000c0600160b00281400261300140a00281400201000281400160b00281400
-2010002010002814001e0f000603000603000e0700180c00180c002010001e0f000e0700
-0603000e0700160b00140a00160b000402000c06000c0600160b00160b001e0f000e0700
-0c0600201000160b002814002814000e07001e0f00180c00301800201000140a00060300
-201000140a00301800281400140a00160b000e0700261300201000140a00060300160b00
-160b000e0700180c002613000c0600261300160b002010000c0600201000201000160b00
-1e0f00160b00201000160b00201000ffaa54201000160b00201000301800281400402000
-4a25004c26004a25005a2d007e3f00904800aa5500e27100ff9b36ffb468ffd0a0fff3e6
-fffcf8fffcf8fff8f0ffd0a0ffb162ff9e3cff9326ff850ade6f00ac5600884400783c00
-5a2d004c2600442200442200281400180c00180c000e0700201000ff9e3c140a001e0f00
-160b00060300160b002010002613000e0700060300201000160b00261300180c00261300
-160b00261300ffa142281400ffa0401e0f00160b00160b00160b002e1700321900402000
-4020004a25004a2500542a00321900201000201000261300160b00ff9830201000201000
-201000160b000e07000e0700180c00160b001e0f000e0700321900180c002010000c0600
-2e17002010002814002613000e07000c06000c0600160b001e0f00140a00180c000e0700
-0c0600160b001e0f00261300261300060300ffa040180c00201000301800381c00261300
-3018001e0f00ffa54a140a002010001e0f00180c000e0700180c00180c00180c001e0f00
-1e0f00261300160b00140a00060300201000201000160b000e07002010000c0600160b00
-160b000e0700060300140a00180c000e07000e0700140a00ff9d3a281400180c00020100
-180c00201000201000140a00160b001e0f00140a00201000fffcf8201000180c00160b00
-261300201000160b002613000e07002010000e0700160b00140a002010002010000e0700
-1e0f00160b00180c00140a001e0f00160b00060300140a00140a00180c002010000c0600
-160b000c06000e0700060300060300140a00180c000e0700140a002e17000e0700160b00
-2814000e07001e0f00160b00160b000c0600180c00160b00160b00060300140a001e0f00
-201000160b00201000ffa64c180c000e07002613002010001e0f00160b00281400261300
-0e0700160b00201000201000ffa4482e1700160b00301800160b000e07001e0f00201000
-140a00201000140a001e0f001e0f00261300140a00160b00261300180c00160b002e1700
-2613002010001e0f002613000e0700180c00160b00180c00
-180c001e0f000c0600040200180c002010000402000e0700160b002010000e07000e0700
-140a00140a000e0700201000160b000603000402000201000603000c0600140a000e0700
-140a000e0700160b000c0600060300180c000e07000e07000c0600281400180c000e0700
-060300ff9932201000160b00160b001e0f002010002010002010003018002010003a1d00
-3018002613003a1d002814003219002e1700301800281400201000381c00281400301800
-3a1d00281400281400281400201000180c00201000160b00301800ffa448ffae5c201000
-180c001e0f000e0700160b00281400160b00160b002e17001e0f00140a000603000e0700
-281400160b00180c001e0f00060300160b00180c000603003018002e1700261300180c00
-0e07001e0f00140a002010000e07002613000201002010000e0700180c00201000160b00
-201000201000180c00160b002613000c0600201000160b00160b001e0f00261300140a00
-160b002e17002010001e0f001e0f000e07000e0700160b00281400201000160b001e0f00
-180c000e07000e0700261300201000281400201000160b00140a00160b002010001e0f00
-0e0700180c001e0f002010001e0f00160b002010002010000e07000e07001e0f001e0f00
-2010000e07000e0700201000261300160b00180c00301800020100261300140a00160b00
-0e0700261300180c00180c00180c000603001e0f001e0f000e0700281400160b00160b00
-1e0f00180c002010000e0700160b002814002010000c0600180c000e07000e0700180c00
-140a00180c000e07000e07000e0700160b00281400281400160b00180c00180c00281400
-261300261300140a000c0600160b002010000e0700201000140a001e0f002010001e0f00
-2010001e0f000603002010000c0600160b00160b002e1700140a000e07002010001e0f00
-160b001e0f000e07002010000c0600201000160b00140a000e07000201000c0600160b00
-2e1700160b000e07002613001e0f00060300201000160b00140a00301800140a00160b00
-201000180c00140a00060300180c00180c00ffa64c2e17002010001e0f00281400180c00
-4221003a1d004a2500542a00763b00884400a25100d26900fc7e00ffa54affb468ffc78e
-ffd7aeffcd9affd1a2ffbf7effa64cff9d3af67b00f67b00ca6500ac5600783c00783c00
-4c2600381c00381c002814001e0f00201000160b00261300160b00ffaa54201000201000
-160b00180c00281400160b00060300160b000c0600402000160b00160b00060300140a00
-160b00ffa74e160b00261300160b00ff952a2010002010002e1700381c002e1700261300
-ffa952301800301800281400261300160b00281400180c00201000ffa040180c00160b00
-2e1700180c000e0700180c000e07002010000e0700140a00180c00140a00180c00201000
-2613002814002814001e0f00180c000e0700261300261300160b00160b00180c000c0600
-0c06001e0f00160b001e0f001e0f00261300ffa040180c002613002010001e0f001e0f00
-160b00160b001e0f00201000160b00060300201000301800040200160b001e0f001e0f00
-201000180c00261300160b00160b00281400140a00140a00160b00201000160b00160b00
-140a00281400180c00160b002010001e0f00060300060300160b00ffa448ffab56201000
-180c000c0600160b001e0f00180c002010001e0f00ff9c381e0f00180c00160b00160b00
-160b00140a00180c001e0f00060300180c00140a000e07001e0f002814000e0700201000
-180c002010001e0f00160b000201000e0700201000180c00180c002010000402001e0f00
-180c00301800140a00201000160b000e0700160b000e0700301800160b001e0f000e0700
-060300160b000e0700201000180c000e0700261300160b00140a00180c002613001e0f00
-160b00160b00201000140a00ff9d3a0c0600281400160b002814000c0600140a001e0f00
-281400201000180c00ffa4480c0600160b001e0f00160b001e0f00160b001e0f00201000
-0603000c0600140a00160b00281400180c001e0f000e07002613002010002613001e0f00
-140a00140a00160b001e0f00140a00201000180c00160b00
-160b00281400160b00160b00060300040200060300281400180c00160b00180c00020100
-160b002814000603000c06000e0700140a000402000c06001e0f000603002010000c0600
-1e0f00180c000402000e07001e0f000c06000e07000603000e07000c0600160b00160b00
-0e0700140a00ff9932ffa54a2814000e07001e0f00261300201000301800180c00301800
-2814003018002e1700301800281400321900281400301800261300301800321900281400
-201000301800261300281400201000281400261300281400ffa54a3a1d00301800160b00
-160b001e0f00301800140a00160b00180c00180c001e0f001e0f00381c000e07001e0f00
-140a00160b00140a00180c00160b000e07000e0700160b00160b001e0f00201000261300
-180c002613002010001e0f00060300180c002e1700060300261300140a00160b00201000
-261300261300140a000e0700201000180c001e0f00160b00180c00160b000e07000e0700
-140a00160b002814002e1700201000180c00301800281400160b002814002010000e0700
-201000180c00140a000e0700201000160b00261300140a003018000e07000e0700160b00
-0c0600201000201000201000140a00261300201000160b00180c00140a00140a00140a00
-201000180c00261300160b00180c00180c003a1d000e0700160b003018000c06000e0700
-0e0700180c00140a00160b000e07001e0f00060300180c00180c00201000160b00180c00
-160b00160b00160b00180c00201000180c000e07001e0f00140a00160b00201000201000
-140a002814000201000e0700060300140a000e07001e0f001e0f00160b00201000060300
-1e0f00160b001e0f00140a00040200160b00160b000e0700140a00160b000e0700160b00
-180c00160b000e0700040200160b00180c001e0f000603000e07000e0700201000201000
-0e07001e0f00201000180c00201000160b000e07002613000e07002010000c0600281400
-0e0700160b000e0700160b00281400140a00160b002e1700160b001e0f00160b00160b00
-160b002613002613000e07000c0600180c00ffa74e281400281400160b00281400321900
-3018003219004c26004a2500422100643200864300aa5500ce6700ff8306ff9932ffa952
-ffaf5effbc78ffae5cffaa54ff9d3aff8c18f27900ce6700aa5500984c006e37006c3600
-4a25005e2f002e1700402000402000201000281400140a00281400ffa1420c0600160b00
-0603001e0f00180c00160b00281400160b00160b002010002010002010000e07001e0f00
-1e0f002814002010002814002e1700ffa54a160b00201000180c002010002e17002e1700
-2010001e0f003a1d00201000261300201000160b00140a00ff9c38160b000e0700281400
-0603002e1700160b000e0700201000140a00180c000e07000e07000e07002814000c0600
-0e0700201000281400160b00160b001e0f00160b001e0f00040200261300160b00201000
-2010000e0700160b003a1d00160b00201000ffa244281400160b00201000301800ff9e3c
-ff9e3c160b00160b002613000e07002010002e17000e0700180c00201000160b00060300
-381c00160b002e17001e0f00140a00180c000c0600160b000e07000e07000e0700180c00
-160b00201000140a000e0700160b00160b000e07001e0f00180c000e0700180c00ffa244
-ffa64c180c002613000e0700ffaa54ff9830ff9e3c2010000e0700201000201000160b00
-2814000e07000e0700261300160b00160b001e0f00180c00180c00160b001e0f00261300
-0e0700201000201000160b00140a00261300281400020100160b00060300160b00140a00
-140a00140a000e0700140a00301800060300060300160b00201000201000060300060300
-2010002814000603000603001e0f002010000e0700160b00301800160b00160b00160b00
-2010000603000e0700140a00160b00ffa74eff9b36261300160b00180c00201000281400
-3018001e0f00281400ff9e3c0e07000e0700140a00201000140a00180c00160b00020100
-1e0f00160b00140a000603000e0700160b00140a00201000140a00201000160b000e0700
-140a001e0f00140a00160b00160b00140a00160b000e0700
-160b000201000e07002010000c0600140a00160b00160b000e07000e0700140a00060300
-0c0600160b00160b00060300160b00160b000603001e0f000c0600160b000e0700160b00
-160b000201000e07000c06000603000c0600160b000402000e0700020100040200180c00
-0e0700180c00020100140a00ff9932160b000c0600201000201000160b001e0f001e0f00
-1e0f00160b002814003018002010002010002613002814002814002010001e0f002e1700
-2613003a1d000e07002814003219000c06001e0f00ffa142160b00281400160b00180c00
-1e0f00201000180c002010001e0f00301800160b00180c00160b00201000160b00180c00
-201000261300160b000e0700201000140a00140a002613002010001e0f001e0f001e0f00
-0e07000c0600160b000e0700180c000e0700160b00160b00160b000c0600160b00180c00
-1e0f00ffa244ff9c382010002010001e0f003018000e07002010001e0f00140a00160b00
-261300201000180c00261300160b00140a001e0f00281400060300160b000e0700160b00
-160b002010002010002010002010000e07000c0600160b000c0600201000201000160b00
-160b001e0f00140a00140a000c0600160b00160b00020100180c00180c001e0f00201000
-2010000e07001e0f00060300180c002010000e07000c0600160b00261300160b00301800
-140a00160b00201000261300180c002010000e0700060300140a001e0f000e07000e0700
-160b002010002814001e0f00160b00301800160b00160b00160b00140a00180c00180c00
-160b00201000160b00160b00160b000603000c0600201000140a000e0700060300201000
-0201002010000e07002010002613001e0f000e0700140a00160b001e0f00140a00060300
-160b00180c00201000160b00160b00180c00281400160b000e0700140a00160b00060300
-140a00180c001e0f00160b00160b00201000160b001e0f001e0f00201000201000140a00
-1e0f00060300160b000e07000201002814000e07000e0700261300160b002010000e0700
-060300140a002010000e0700281400160b001e0f00ffa54a180c001e0f00281400180c00
-2e17003219003018004a25005a2d006c3600783c00924900b25900e07000ff850aff9122
-ff9e3cff9932ffa448ff9830ff850afc7e00d86c00be5f009e4f008643008643006c3600
-5a2d004a2500301800321900281400281400321900160b00201000ffa74e1e0f00140a00
-0e0700140a00160b00180c00160b001e0f00160b00180c00160b002010001e0f00140a00
-160b00140a002010001e0f002010001e0f00ffa54a281400281400281400281400301800
-301800201000ff9e3c2010004020000c06000c0600281400ffa448160b00261300281400
-0603001e0f00281400160b000e0700160b001e0f00201000160b00201000201000201000
-160b00281400160b000402000e0700180c00040200160b00160b00180c00201000160b00
-160b000e0700281400180c002010000e0700180c00ff9b36ff9d3aff9428ff9e3c0e0700
-0e07000603002010001e0f002010002814000c0600281400201000201000180c00281400
-160b00140a00060300160b000e0700201000201000201000160b00180c00201000060300
-0e0700281400261300160b00160b002e1700201000140a00201000160b00160b00281400
-0c0600ffa040ff9e3cff9b36160b000e0700160b002010000e0700160b00180c00140a00
-180c00160b00140a00160b000e0700281400160b00261300180c00160b00160b00160b00
-060300140a002e17000e0700140a000e0700140a000603001e0f001e0f00140a00201000
-140a001e0f002010000402000e07002010002010000201000e0700201000261300201000
-201000180c00180c00160b002010000c06000e07002010002613000e07000c0600160b00
-180c00140a002e1700140a00160b000e0700160b00ffa952ffa0401e0f00201000140a00
-201000ff9932ff99320e07000e07000e07000603002814000603000402001e0f001e0f00
-2010000e0700160b00261300201000020100140a001e0f00160b00160b000603000e0700
-0e0700140a000c06000e07000e0700060300261300281400
-020100201000160b002010000e0700160b00201000140a00160b000e0700261300140a00
-180c00160b00140a00140a00201000140a000402000e0700160b000201000603000e0700
-0e07000e0700160b000e0700180c00180c00140a000201000e0700160b00140a000e0700
-0e0700060300160b00160b00020100ffa64cffa448160b001e0f002814001e0f002e1700
-261300281400160b00281400301800281400180c00381c003018002010004a2500180c00
-160b002010003018002e1700160b00ffa040ffa64c180c00201000281400160b00160b00
-201000201000201000261300281400281400281400201000201000261300180c00180c00
-3a1d00301800060300160b00180c00020100160b002814001e0f001e0f001e0f001e0f00
-1e0f00140a00160b00180c00160b001e0f00201000140a00140a00281400160b00ff9b36
-ff98301e0f00201000ff9b362010000e07000c06000e0700160b002e17000e0700180c00
-1e0f00160b00160b002010000e07001e0f000e07001e0f001e0f00160b000e07000c0600
-180c002613002613002814001e0f00140a000e07000e0700180c00160b00160b00140a00
-160b000e07000c0600261300201000060300180c00261300180c00180c000e0700060300
-201000160b00281400160b002010002613000e07001e0f00180c002010000603000e0700
-201000160b002814000e07000402000c0600201000140a00160b000e0700140a000e0700
-281400301800201000281400201000140a000e0700160b00281400201000140a00442200
-0e07001e0f002814000e07000c06000603001e0f002613001e0f00180c001e0f00160b00
-281400160b002010000e0700160b00201000160b00201000201000201000180c000e0700
-160b00201000160b00180c000603000e07002010001e0f000e07000e0700020100180c00
-0e07000e0700160b00180c00180c00160b00140a00160b00060300140a00060300180c00
-0e07001e0f00160b001e0f00140a00140a00261300160b000603000c0600180c000e0700
-160b00160b002613001e0f001e0f002613000e0700ffaa54201000180c001e0f00261300
-3018002e17003219004221005229005c2e00663300763b00864300b25900c86400f67b00
-ff8306ff8810ff8306fe7f00f47a00de6f00c66300a45200904800804000783c006e3700
-4c2600402000402000321900301800281400140a00201000201000ffa142201000160b00
-0e0700201000140a00261300160b000e0700281400160b00160b00160b00201000ffa040
-1e0f001e0f00180c001e0f00201000301800422100ffad5a281400180c000402001e0f00
-261300201000160b00160b00301800160b00281400ffa2442010000e07000c06001e0f00
-0e0700160b00160b00160b00180c00180c00201000160b00140a00160b002010000e0700
-180c00140a00060300160b00140a000c06000e07002010000c06001e0f00160b001e0f00
-160b00160b00160b00281400201000160b00201000160b002e17001e0f00160b00060300
-2010001e0f00140a002814002613002010000e0700160b00160b002814000e07000e0700
-180c00160b00201000160b00201000281400160b00160b00180c00160b00160b00201000
-180c00160b000e07000e0700180c00140a00140a00160b002613000c0600180c00201000
-2814000e0700160b001e0f00201000321900140a000e0700201000160b000e0700020100
-160b002e17001e0f00140a000e07000e07000e0700180c000603000c06001e0f001e0f00
-180c00060300140a002010000e0700180c001e0f00281400160b000e0700160b00160b00
-160b00160b00160b00180c00201000160b00281400140a002e1700140a00160b00180c00
-160b00160b00261300160b00160b00201000140a000402000e0700160b00160b00160b00
-1e0f00180c00140a002010000603000c06002010001e0f00281400ffad5aff9c38ffa142
-ffa0400e07002010001e0f00261300140a000c0600160b002010002613000e07001e0f00
-140a00140a00180c001e0f001e0f002e1700140a001e0f00160b002010001e0f00201000
-140a00160b002010000c06000c0600140a00201000201000
-0e0700201000201000201000160b002e1700160b001e0f00160b000e0700160b000e0700
-160b000201000e07000c0600020100160b000201000e0700180c000c0600140a00140a00
-2010000201002814000e0700040200140a000c06000e07000e07000201000c0600160b00
-160b00140a00160b00160b000e0700180c00060300ffa244ff9c38ff9e3c201000281400
-321900160b00180c002010002010001e0f002814002010002e1700180c00160b00281400
-301800180c00201000ffa74eff9e3c321900201000201000261300261300281400060300
-3a1d00140a00201000180c002814002010000e0700180c00160b00160b001e0f00140a00
-180c000c0600160b00201000301800160b00201000261300201000060300281400201000
-1e0f00160b000e0700201000261300140a002814000201000e0700ff9e3cff9932160b00
-160b000e07001e0f00201000ff9932ffa54a201000160b00160b002e1700201000020100
-160b000e07000e0700301800261300160b00160b002613001e0f00140a001e0f00201000
-0c0600160b00180c00201000140a00201000180c001e0f002010000c0600201000160b00
-2010000e0700180c00180c00160b002010002010001e0f00160b000e07002814000c0600
-160b00160b001e0f00201000160b00160b00140a00160b00160b00140a001e0f00160b00
-1e0f000e07002010002010000e0700201000201000180c002814000e07000e07001e0f00
-140a002814002010002814000e0700180c00261300020100140a001e0f00160b001e0f00
-180c00160b00201000140a00160b00261300180c00160b002613000e07002e1700160b00
-201000281400201000160b001e0f00160b00160b00180c000e07001e0f000e0700140a00
-2613001e0f000c0600160b000e0700180c000e07002e17002010001e0f00180c000e0700
-0e07000e0700180c00160b00201000160b00301800201000160b000e0700201000060300
-140a001e0f00160b00160b00140a001e0f00040200180c00180c00160b002010001e0f00
-201000201000180c00160b00160b00140a00201000140a00ff9b360e07002613001e0f00
-3018002814003018003018004422005e2f005c2e006e3700663300924900984c00be5f00
-d86c00e47200d06800de6f00ce6700b85c00ac56009c4e009249005c2e006432004c2600
-522900442200381c001e0f002814002e17002010002814000c0600ffa142261300261300
-201000160b002010000c0600160b00140a00160b00201000201000201000180c00140a00
-140a00140a002010002010003219001e0f002e17002e1700ffaa54180c00301800301800
-281400160b00140a002814000c0600ff9e3cff99321e0f001e0f000c0600180c00201000
-160b000e0700281400140a001e0f000c06000e0700160b001e0f002613001e0f000e0700
-2010002010000c06001e0f00261300160b00160b00160b002613000e0700140a00180c00
-0c06002814001e0f00201000180c00180c002010001e0f00140a00201000160b00140a00
-281400160b002613000c06000e0700160b00180c001e0f00180c001e0f00140a00140a00
-160b000e07000c06002010000e07002010000e07000e0700160b000603002814001e0f00
-160b00281400160b00160b00180c000e0700180c00140a001e0f00160b00301800140a00
-140a002e1700160b00301800381c002010002814002010002e1700180c00160b00140a00
-201000201000020100160b00160b00160b00201000180c00180c00261300160b00201000
-201000201000140a000e07001e0f001e0f00261300201000281400180c002010000c0600
-2814002010002010000e0700140a000603002814000c0600160b001e0f00201000281400
-180c002010002010000c0600281400160b002613001e0f001e0f00160b00140a000e0700
-201000160b00140a000e0700180c00160b001e0f000c06000e0700060300301800140a00
-0e0700160b00180c000e0700160b00040200160b00160b00180c00160b00201000160b00
-0e07000e0700180c00180c000e0700160b00140a00201000160b00201000160b00261300
-301800140a00060300281400180c00140a00301800140a00
-1e0f00140a00180c00180c00140a002010000603002010000e07000e07000c0600160b00
-160b00140a00160b00160b00281400160b000c0600160b00060300281400160b00020100
-020100261300020100160b000e0700140a00160b000402000201000603000e0700160b00
-0603000e07000201000c0600180c001e0f000e0700180c001e0f00160b00ff9b36ff9c38
-ff9e3cffa142140a00180c00261300281400281400261300261300160b00281400ff9e3c
-ffa54affa040ffa142160b000e0700180c00180c000e07000e0700281400160b00381c00
-160b001e0f00160b00140a00160b00160b00180c00160b001e0f001e0f00201000160b00
-160b00060300160b002814001e0f001e0f001e0f00261300201000160b002e1700201000
-160b000603000e07002814000e07002010000e0700160b00201000ff9e3c1e0f001e0f00
-160b001e0f00160b000e0700160b00ffa142281400140a00140a00261300160b000e0700
-301800140a00160b00160b00281400201000160b00160b000e0700201000140a00160b00
-301800140a00180c00160b002010002613001e0f00140a000e0700140a00060300160b00
-180c00140a002814000e07001e0f001e0f00060300201000261300281400160b00201000
-0e0700160b00301800180c00201000201000281400160b000e0700160b00180c000c0600
-140a00140a001e0f00140a001e0f00180c002010002010000e07000603002010000e0700
-261300201000180c000e07000e0700180c000c0600140a00160b000c0600060300402000
-201000180c00160b00281400180c00140a002010001e0f00281400201000201000201000
-2010002613001e0f001e0f00180c000e07000603001e0f00180c00140a00160b00180c00
-0e0700160b00281400281400201000160b00140a00180c000e0700160b00281400180c00
-160b000e0700160b002e1700201000160b000e0700140a000603000e0700180c00160b00
-1e0f00160b00281400201000180c000201001e0f00140a00160b00160b001e0f00201000
-0e07002010001e0f00160b001e0f00281400160b00281400ff9e3c160b00140a00301800
-2010003018002e17003018002814003219005c2e00422100643200663300864300904800
-9e4f00b85c009c4e00b45a00984c00a452008643008844005c2e005e2f004a25004a2500
-4a25002010002e17002814002e17002010003a1d00140a00ff9e3c2010002010001e0f00
-0603000c0600140a00140a00160b00180c00140a00160b001e0f000e07000e0700ff9b36
-0603001e0f003018002814002e17004020003a1d00402000301800ffa74effaa54ff9932
-ffa448ffa142fffcf8ff9d3affa142261300160b002613000603000e07002e1700201000
-180c00201000140a00261300060300160b002613002e1700180c00180c003018001e0f00
-060300281400140a000e0700160b00160b002814002e1700180c00060300201000140a00
-160b00281400180c00180c001e0f00180c00281400201000140a000e0700040200261300
-160b000e0700140a002814003018002010002010002010001e0f00160b002e1700140a00
-180c002010000e0700160b001e0f001e0f00160b000603000e0700201000160b00281400
-140a00140a00140a002613001e0f00180c00180c00261300160b000e07001e0f00160b00
-0e07001e0f00180c000c0600201000060300180c00281400140a002613001e0f00160b00
-201000281400201000281400060300160b00180c00160b002010001e0f00261300180c00
-0e07000e07001e0f00160b000e07000e0700140a002010000e07002010000e0700160b00
-0e0700281400060300201000160b00201000140a002613000e0700201000040200201000
-160b003018002613000e0700180c00180c000603000e0700201000060300160b001e0f00
-160b000e0700180c002010002010002613000e07000402002010001e0f00261300160b00
-0603002010000e0700160b001e0f00180c00140a00160b00160b00281400060300201000
-160b00060300180c00180c00060300140a002010002814000c0600140a00140a00281400
-160b00160b00261300160b000e07000e0700261300281400
-160b001e0f00160b00301800140a000e0700160b00201000201000140a00201000160b00
-140a000c06000c0600140a000201000e07001e0f000201000e0700160b00140a000e0700
-0e07000e07000e07000c06000e07000603000e07001e0f00160b00180c00281400060300
-160b000e0700060300160b00261300160b00160b00160b000e0700201000201000261300
-0c0600040200ffaa54ffa142ffa448ff9b36ffa74effa244ffaa54ffa448ffa448060300
-2814003018002010000e0700301800201000281400261300281400201000281400281400
-140a00160b000e0700180c000e0700160b000e07000e07000603000e0700201000160b00
-160b002814001e0f000e07000c06002010001e0f000e0700281400140a003018001e0f00
-180c002010002010000c06000c06000402001e0f000e0700ffa1420e0700060300261300
-1e0f00140a00281400180c00140a00180c00ff9d3a0e07001e0f000402002e1700201000
-0c0600160b00160b00201000201000140a00160b00160b00140a00160b00140a00160b00
-140a00160b00160b000e07001e0f00140a00180c00180c002010000e0700160b00160b00
-160b000e07002613000c06001e0f00140a000603001e0f00140a00281400140a00140a00
-160b000e0700261300180c001e0f002613002814001e0f00160b001e0f001e0f000e0700
-201000160b000e07001e0f00261300020100281400201000140a00160b00140a00060300
-140a00160b00281400201000160b00180c00140a000c0600160b00201000140a00160b00
-160b00160b00180c001e0f00140a002814000e0700060300201000180c00160b001e0f00
-180c001e0f00160b002e1700160b002010001e0f000e0700140a002010000e0700160b00
-140a000e0700140a00180c00160b00140a00160b002613000e0700180c00160b00160b00
-180c00160b00180c00180c00160b000e0700160b000c0600180c00180c00140a00140a00
-0e0700201000160b00160b000e0700140a002814000e0700261300140a00201000201000
-180c00160b00140a000c0600201000140a000e0700201000180c00ff9e3c201000321900
-201000381c001e0f00381c003018004221003a1d004221005a2d005c2e006c36006e3700
-9048008040007e3f008643008a45009048007038006e37005c2e006c36005a2d00442200
-381c00301800301800301800160b00301800160b00201000ff9e3c281400060300301800
-140a000603000e0700160b000e07002010000e0700201000160b00160b00140a001e0f00
-0e0700261300180c001e0f002814002e17002814004a25003219002e17002814001e0f00
-2010002e17000e07000e0700060300140a000e07002010001e0f002e17000e0700281400
-261300180c00060300201000140a002010000e07000e07002010000e0700140a000c0600
-2613001e0f000e07002010000e07000c06000c0600281400180c001e0f00160b00201000
-2010002010001e0f001e0f001e0f00180c000c06002010002010001e0f00180c00160b00
-261300160b00160b00140a002010000e07002010000e07002814001e0f00201000301800
-140a00140a002010002010003a1d000e0700381c00060300261300160b00140a00160b00
-1e0f002814002010001e0f00180c001e0f00160b001e0f00160b00140a00160b00201000
-0e0700160b00180c002e1700140a000e07000e0700160b00020100180c00160b00201000
-0c06000e07002613002814000603000603000e07000e0700201000160b00140a00281400
-180c00160b002010000603000c0600201000201000040200160b00201000140a00160b00
-060300160b001e0f00160b00180c00180c002613002814002010002010000e0700160b00
-180c002010001e0f002010000e07001e0f00321900261300160b002010001e0f00301800
-160b00281400160b000603002613000e0700160b000c0600201000201000160b00160b00
-2613001e0f00160b00180c00201000180c00140a00160b002814000402001e0f000e0700
-2010000c0600180c00160b002613002e1700160b00201000140a001e0f00160b000e0700
-180c00261300160b00160b00160b00180c001e0f00261300
-160b001e0f00060300160b00140a00060300160b00160b00201000160b00140a000e0700
-140a00160b00201000140a00060300160b00140a003018000e0700180c00201000040200
-0603000e0700160b000c0600040200040200180c00060300261300160b000e0700180c00
-3018000e0700140a000e0700201000060300140a00160b00160b000e07000c0600201000
-180c000e07002010001e0f002613002613001e0f00321900201000301800180c00321900
-020100180c00201000160b00201000301800140a001e0f00201000140a00140a00160b00
-1e0f00201000140a00180c000c0600180c00180c002814002613000c0600201000180c00
-0e07002010002613002814002e1700160b00160b002010000e0700180c00160b00160b00
-160b00140a00160b002010000c06000e0700281400ffa54a160b00140a002010000c0600
-060300140a000e07000e0700201000160b00261300ffa040201000140a000e0700160b00
-301800201000160b00261300201000160b00160b00160b00180c00160b00140a00140a00
-261300160b00301800160b00261300201000160b00281400160b000e0700281400261300
-160b00140a001e0f000e07002613001e0f002e1700160b000e0700180c00180c00201000
-281400140a00160b00180c000e07001e0f00160b00201000281400160b00160b00180c00
-1e0f002613000e0700140a000e07002010000c0600180c002010000e0700140a001e0f00
-0e0700180c001e0f00201000140a001e0f00060300140a000e07002010000e07000e0700
-180c00180c00281400180c00160b001e0f00180c00140a00160b002010000e07000e0700
-0e0700160b000e0700160b00140a002814000e0700060300060300180c00201000140a00
-0e0700201000140a000603000e07000e0700261300160b000e07000e0700281400281400
-0e07001e0f00160b000603000e0700140a00160b002e1700140a00160b000c0600301800
-160b002010000e0700160b001e0f001e0f002010000e0700201000180c00140a00160b00
-2010000e07002010000e0700160b00140a00160b00201000180c002e1700ffa040281400
-0e07002010000e07002613003018003018002613003018003a1d005c2e005e2f00542a00
-6e3700763b007e3f006e37006c3600783c006e37005c2e00542a004020004a25003a1d00
-301800381c002e17002e17003018002e1700281400281400ffa64c301800060300381c00
-180c001e0f00060300180c001e0f00201000160b000603000603000e0700160b00160b00
-160b002010000e07002e17003018002010002e17002010002814002814002613001e0f00
-160b001e0f00ff99322613001e0f00140a00261300160b00140a00201000201000160b00
-0c06000603002814001e0f000603000603000e07000c06001e0f001e0f00160b001e0f00
-0e07001e0f000e0700261300180c00160b002613002814003018000c0600160b00201000
-2010001e0f000e07002e1700201000201000201000180c00160b001e0f00180c00180c00
-0e07002613000e0700180c000e07002010000e07000e0700140a00160b00140a00180c00
-180c00160b00140a00180c000e07001e0f000e07001e0f002613000e07001e0f000e0700
-0e0700140a00160b00160b001e0f00140a00180c00160b00201000201000201000160b00
-0e07002e17000e0700020100281400160b000e0700261300180c00140a00160b00180c00
-201000180c000e0700180c00160b00160b00281400060300160b00160b00180c00301800
-160b00160b00160b000e0700160b001e0f002010000603001e0f000603001e0f000e0700
-1e0f000e07002814000c0600140a00160b001e0f001e0f000201001e0f00ffa142ff9c38
-ffab56ff9932ffa64cff9e3cffa54a2814001e0f000402000e07001e0f00180c00060300
-140a00060300180c00281400160b000c06000e0700160b00160b00180c00160b00160b00
-1e0f001e0f00160b00160b00201000160b001e0f001e0f00180c00160b00140a00201000
-1e0f00180c000e0700060300180c00201000160b00180c00160b00160b001e0f00201000
-1e0f00201000180c00160b001e0f00160b00060300180c00
-180c00201000140a00160b001e0f001e0f00160b000e07000c06000e07000c0600140a00
-160b00160b00160b00201000140a000e0700201000060300160b000e07000e0700020100
-160b00160b00160b000603000e07000e0700140a000201000e07000c0600160b000e0700
-140a00160b000e07000c0600140a002010001e0f000c06000e07000c06000e0700261300
-180c002814002010002010001e0f00201000060300201000261300180c002e1700160b00
-160b00160b00201000160b002e1700160b00261300160b00281400180c000e0700301800
-160b00140a00180c000402000402002010002010001e0f00160b000e0700201000180c00
-281400281400160b002814000e07000e0700180c002613002814002010000e0700140a00
-180c003018002010002010002010000c06000c0600ffa64c0e0700201000160b001e0f00
-2814002e17000e0700201000180c00201000201000ff9e3c1e0f00180c00060300201000
-201000140a00160b002010000c06000c06003219002010000e0700281400140a001e0f00
-0402001e0f001e0f001e0f00040200180c000e07002010001e0f00180c001e0f00160b00
-2010001e0f000e07000e07001e0f002010001e0f00201000180c00201000180c00160b00
-281400201000201000160b001e0f00060300281400180c001e0f000c06001e0f000e0700
-2613002814002814000e0700180c001e0f00140a00040200201000140a00160b00261300
-281400160b00281400160b00160b00160b002010000e0700180c00140a000e0700140a00
-2814000e0700261300201000201000261300201000180c00201000160b001e0f00281400
-0603001e0f002010002814000e07002010000e07000e07000e07000e0700160b00140a00
-1e0f00160b000e07002814002613000e07003018001e0f002010001e0f00160b00160b00
-140a00160b00160b00060300201000180c000e07001e0f000603000201001e0f00201000
-201000160b000e07002814001e0f00140a000603001e0f000e0700201000160b00180c00
-201000160b00180c00180c000e0700160b00261300180c00140a00261300201000ffa952
-2814003219002010002010002e17003219002814004221002e1700381c004a25004c2600
-4221004c26005a2d004a25006432004221004a25004a2500422100422100301800301800
-160b00180c002010002010002e1700281400281400ffa54a201000281400160b00261300
-180c001e0f000e07000e0700160b002010000e0700140a00160b00201000160b00ff9932
-2010000c0600180c00160b002814002e17003018002814002814002010002010002e1700
-201000160b00ffa952281400160b00160b001e0f000c0600160b00160b00060300201000
-160b001e0f00180c000e0700281400160b000603000c0600180c00180c000c0600201000
-160b000e0700281400160b000e0700180c00201000140a00261300180c00160b00160b00
-201000160b002613002613001e0f002e1700180c000e0700261300160b00160b00180c00
-160b00201000281400180c00160b00160b002010000c0600201000160b00160b00180c00
-201000180c00140a00140a000e0700160b00160b000e0700160b002e17001e0f00160b00
-160b00160b00160b002010000c06001e0f00160b00160b00160b002010000c0600160b00
-160b000e07000e0700140a00301800160b00201000180c00180c002613000e0700180c00
-1e0f000c06002e1700160b002010000e0700201000180c002010001e0f00160b001e0f00
-160b00160b00160b00060300160b000c0600201000140a000e0700140a00281400160b00
-140a001e0f00020100160b000201000e0700160b00160b00160b00ffa2444020000e0700
-1e0f00160b00281400261300160b00ff9d3a201000281400160b000c0600201000281400
-1e0f00160b00160b00160b000e07002613001e0f000e0700140a00060300201000201000
-0e0700160b00201000201000281400140a00140a00201000201000201000281400180c00
-020100201000160b00201000160b00201000180c001e0f00160b00281400140a00281400
-140a000e0700160b001e0f00180c00261300301800160b00
-140a00160b000e0700201000160b001e0f00020100301800160b00160b000603000c0600
-0603000603000c0600180c000402002613002613000e0700180c00060300160b00060300
-140a00060300201000180c00160b000c0600140a000c0600140a00140a00180c00160b00
-0e0700160b00160b00140a00140a000e0700040200060300180c00060300060300140a00
-140a00140a00180c001e0f00020100160b000e0700201000160b002814001e0f00160b00
-2010002010002814000e0700160b00180c00281400160b00160b00160b00201000180c00
-281400261300281400281400180c00160b00160b00201000160b00160b00180c00140a00
-160b00060300140a000e07002613002010001e0f00261300060300140a000e0700281400
-1e0f001e0f000e07001e0f002814000e0700160b00ff9c383a1d00180c00160b00201000
-160b002613002010002010002613002814001e0f00201000ffa54a180c00060300060300
-0e07001e0f00201000180c000e0700281400160b00160b00180c00281400261300201000
-2613000c0600201000160b001e0f002010000e07001e0f00160b000e07000603000e0700
-160b002613000c06000e0700160b000c0600140a00201000180c001e0f000603001e0f00
-140a00160b00180c002010001e0f00140a00060300160b001e0f00060300281400060300
-261300201000140a00281400160b00160b00160b00060300201000201000140a001e0f00
-160b00160b002814003a1d00140a00281400201000180c000c06000e0700160b00180c00
-140a00140a000201000603002010002e17001e0f000e07001e0f000e0700140a00060300
-140a00160b00140a000c0600160b002e17003018001e0f00160b00160b00060300140a00
-1e0f00140a00140a002010000c0600201000160b00160b00060300201000060300140a00
-160b00180c00140a00261300180c00140a00201000060300180c00180c00160b00160b00
-180c000c06000e0700140a00160b00160b001e0f00180c00140a00160b00180c00140a00
-2814003018000e0700160b002010000e0700160b00160b00180c002010001e0f002e1700
-fffcf8160b002010002e17001e0f001e0f00301800321900301800281400381c003a1d00
-3a1d004221004c26004422004a2500542a00321900422100402000281400321900321900
-301800201000160b00281400160b00281400201000ffa142160b002010000e07000e0700
-060300160b00160b00180c001e0f00160b001e0f00160b000e0700160b00140a000e0700
-261300201000281400180c00160b00160b002010003018002010000c06002814001e0f00
-1e0f000e0700140a000e0700060300140a00180c000e07001e0f00201000140a00060300
-2613001e0f000e07000e0700060300060300140a001e0f00201000160b000402001e0f00
-180c000e07001e0f00201000140a000e0700140a00140a00281400281400261300180c00
-160b00160b002010002010001e0f00180c00160b000603002814000c0600180c00160b00
-2010000e0700140a000e07001e0f001e0f00281400180c00180c00140a00180c00060300
-140a00160b000e0700160b00281400020100160b00201000160b002010002010001e0f00
-201000180c00160b000e0700180c00180c00201000201000160b00180c00422100261300
-160b00160b002e17000e07001e0f001e0f001e0f000e0700160b000e0700140a00160b00
-140a000603002814000e07000e0700060300140a00140a000c06002010000603000e0700
-201000160b001e0f00140a00160b001e0f001e0f00160b000c06001e0f00140a00180c00
-2814002814000603001e0f00160b000e07000e0700ff9e3cffa54a180c00180c00180c00
-201000140a00180c00201000201000160b00ffa0402e17002010000e0700201000060300
-2010000e0700160b002010001e0f00281400060300180c00160b001e0f001e0f00201000
-160b00140a00160b00060300160b000e0700201000201000140a00180c000e0700140a00
-281400060300180c000e0700140a00261300160b000201000e0700201000261300160b00
-160b000c0600160b001e0f00180c00160b002814000e0700
-160b00201000140a000e0700180c002010000c0600140a00020100261300160b001e0f00
-0c0600140a00160b000c0600160b00180c000603001e0f00060300160b000c0600160b00
-0c0600160b00060300160b002010001e0f00160b00180c00140a00201000140a00160b00
-0c06002010000c06000e0700160b000c0600201000180c00180c000e07000e0700060300
-0e0700160b00160b00201000160b000e07000c0600160b00281400201000140a00261300
-180c00160b002010002814000c06000e0700160b002010000c0600160b00201000160b00
-2814000e07002814000201000e07001e0f00160b00180c00020100281400160b00261300
-201000201000160b00160b00160b000e07000603000e0700180c002010000c06000c0600
-140a00140a00180c00201000160b00321900ffa142281400160b002010002e1700160b00
-180c004221000e07000e0700160b000e0700201000140a00ffa244160b002613001e0f00
-0e0700140a00160b00140a002010002010000c06000e0700201000201000140a00180c00
-0e0700140a00160b00160b00160b001e0f002613000402002010000603000e07001e0f00
-060300160b002814000e0700160b00160b001e0f00201000160b00160b000e0700160b00
-140a00160b00180c00160b000e0700281400160b002814002010002010001e0f000e0700
-201000140a00160b000603000e0700140a00201000140a002010000e0700160b00201000
-2613000e07002613001e0f001e0f00180c001e0f00160b000603000603001e0f00201000
-160b00180c00180c00160b00180c00201000160b001e0f00201000261300140a00140a00
-140a00261300160b00180c000e07000e07001e0f00160b00140a00160b00160b000e0700
-2010004a25000c0600160b000e07000e07000603001e0f00160b00180c00201000160b00
-180c000e0700140a000e0700160b00180c00160b00201000201000060300180c00140a00
-0c0600060300060300180c001e0f00160b000e07000e07001e0f00261300140a000c0600
-201000140a000c0600180c000e07002010001e0f00160b002814000e0700281400140a00
-201000ffa448422100301800180c001e0f004221002613002e17002814003a1d00281400
-4221003018002e17003018003018004020004a25003018003219002613002010001e0f00
-301800261300160b00160b00201000180c001e0f00ff9e3c2e17000603002010000e0700
-0e0700201000140a00160b001e0f00281400140a00140a000603000603000e0700301800
-020100ffa142180c002010001e0f00160b00201000201000180c00140a00140a00160b00
-140a00ff9d3a201000281400160b001e0f000e0700201000140a00180c00180c00180c00
-0e07000e07000e07000201000e0700201000160b00180c00180c00140a00180c00201000
-281400160b00281400060300140a000402000603000c06001e0f000c06000e07000e0700
-0e07000e07000e07000e07002e1700140a00160b001e0f00180c00140a00060300201000
-1e0f00381c002010002010002e1700060300160b000e07000e0700160b00281400201000
-0402002e1700261300201000180c00201000060300261300201000140a001e0f00180c00
-180c00160b00160b00180c00160b00160b001e0f001e0f00180c00140a000e0700140a00
-180c002010000e0700160b002010003018001e0f002e17000e0700201000060300201000
-1e0f00301800160b00140a00180c000e07002613000c06000c0600281400060300201000
-0e07000c06002010000603000e07000e07000e0700180c00140a00140a00180c00060300
-0e07000e07000c06000e07000e07001e0f00ff9e3c0603001e0f003018002010001e0f00
-301800281400201000201000201000140a00261300ffa0402010002010000603000c0600
-2010000e07001e0f00180c002814001e0f002814000c0600180c00281400281400201000
-301800281400020100160b00201000160b00160b002613000603000e07000c06001e0f00
-180c00180c002010000e07002010001e0f001e0f00180c00180c002010000e0700201000
-0e0700261300180c00160b000c06000e0700201000160b00
-2010002010000603001e0f00160b00180c00160b000e0700180c00140a00160b00160b00
-160b00201000160b001e0f00201000160b00160b00140a00140a00160b000603000e0700
-201000180c000603000e07001e0f001e0f00160b00160b00201000180c00160b000e0700
-160b00140a000e07000201000e07001e0f00140a000e0700140a000e07000e0700261300
-160b00160b00201000140a00060300180c00180c001e0f00160b000c06000e07000e0700
-201000160b00180c002010000c0600160b002010002613000e07000e0700201000301800
-261300160b001e0f002814000c0600201000160b000e0700160b00160b00160b00180c00
-060300201000160b00160b000e07000e0700180c001e0f002814000e0700201000201000
-0e07000e0700180c002613000e07001e0f00ff9d3a160b00180c000e07000e0700281400
-3018002814001e0f00281400261300261300281400301800ffa4482010003018000e0700
-201000160b000e0700160b00301800261300160b002613002010000e07000e0700060300
-2010000e0700160b00160b001e0f000e0700201000201000281400160b003018001e0f00
-140a000e07002e1700140a002814000e0700160b001e0f001e0f00180c000c0600281400
-201000160b000e0700140a002e17001e0f000c0600261300160b00060300140a000c0600
-201000140a00180c00140a002010003a1d00201000160b001e0f000201000e07000e0700
-180c00140a00160b000e0700201000160b00140a00160b00160b002010000e0700160b00
-060300140a000201001e0f00160b00160b00160b00281400180c000e0700201000281400
-140a001e0f00201000160b001e0f00160b00201000160b00160b00140a00140a000e0700
-201000201000160b00180c00160b00261300160b002010000e07000e0700201000261300
-0402002010000e0700140a000e0700201000160b00060300281400040200020100140a00
-1e0f00160b00140a00180c00060300060300160b000603000e07000e07001e0f00160b00
-1e0f00201000160b00140a00160b00060300281400201000281400140a00201000201000
-1e0f00160b00ff9932261300140a002010002010001e0f00201000301800301800201000
-160b002814002e1700301800321900301800261300381c003a1d002e1700160b00160b00
-140a00301800140a00140a00281400201000ffa040060300140a00281400261300160b00
-160b00160b00160b000e07000c0600281400261300140a00160b000e07000e0700201000
-0e0700180c000e0700160b00140a00160b00160b00160b001e0f00201000160b00201000
-160b00180c000e07002613000c06000e07002010002814003018000e07001e0f000e0700
-0e0700201000201000160b00160b00140a001e0f00140a001e0f00281400201000261300
-2613000c0600201000180c00160b00140a00180c000e0700261300160b00180c00160b00
-0e0700281400160b00160b00160b00261300160b00160b00140a001e0f00160b00140a00
-160b000e0700301800180c00201000261300180c002010003a1d001e0f000e0700160b00
-0e0700160b00281400140a00140a001e0f00160b00201000160b00180c00140a00261300
-140a00180c000e0700261300140a000201000e0700180c00180c002613000e0700281400
-2814001e0f001e0f00160b002010002010000402002814002e1700201000160b00160b00
-0e07000e0700180c000e0700140a00180c002613000e0700020100160b000e0700160b00
-0e0700180c00160b001e0f00140a001e0f00140a00160b00140a00180c00160b00281400
-160b002613002010000e0700140a00ffa142060300160b00281400201000180c00160b00
-201000160b003a1d00060300321900261300180c00160b00ffa448201000060300180c00
-0e0700160b000201000e07000e07001e0f000e07000e07000e0700201000160b00140a00
-180c00060300160b00140a000e0700160b00281400201000160b001e0f00180c000e0700
-160b001e0f002010000e0700140a00160b001e0f00180c001e0f000e0700160b00160b00
-2010001e0f00160b00140a00140a00160b00180c00140a00
-0402000e0700261300160b00201000160b000e0700060300160b00180c00160b00060300
-2010000e0700160b000e0700140a00020100160b001e0f00160b00160b00261300040200
-0603001e0f000c06001e0f00160b00160b000e0700160b00180c00160b00160b00261300
-0201000603001e0f00261300160b00180c00160b000603002010000402000c0600160b00
-1e0f000c0600201000281400160b00160b00060300160b00160b00201000180c00201000
-140a000c06000e0700160b00281400160b002010002613002010000e0700281400160b00
-2814002613001e0f003018000e07002010001e0f000c0600180c00180c00140a00261300
-160b00201000160b000c0600160b002010002613000c06000e0700281400140a00160b00
-160b000c06000e0700180c000e0700160b00ffa244180c00201000281400281400281400
-2814002e1700201000301800160b00201000281400160b00ffa448160b00160b00281400
-020100201000261300160b00261300201000160b001e0f000e07001e0f000e0700140a00
-0e07000e0700160b00201000160b000e0700160b000e0700180c00160b00160b00160b00
-180c00160b000603001e0f00160b00160b00160b000c0600281400160b00140a00180c00
-2e17000e07001e0f000e0700160b00201000060300261300160b00160b00201000201000
-0c0600201000180c002010000e0700160b001e0f002e17001e0f00140a002613000e0700
-381c00160b00201000140a00180c00160b000e0700160b002010002814002814000e0700
-160b00140a001e0f000c0600201000160b00160b00140a00201000281400180c000e0700
-2613001e0f000e07001e0f00180c000e07000e0700180c00140a000603001e0f00201000
-0603002e17001e0f000e0700201000140a00160b00201000261300160b00160b00180c00
-180c000e0700160b002010002010000e0700201000140a00160b00160b000e07001e0f00
-160b000c0600261300160b001e0f00040200160b00140a003018000e0700180c00140a00
-060300261300422100140a00140a00140a00281400140a001e0f00201000160b002e1700
-2010000e0700281400ff9e3c160b00281400201000140a00261300160b00160b00301800
-2e17002e1700160b003018002010002010002e1700160b002814003a1d003018001e0f00
-0e0700201000160b00040200261300ff9c38060300281400261300180c000e0700281400
-0e07001e0f00281400261300160b00160b00180c001e0f00180c00140a001e0f00040200
-0e0700201000261300ffa040040200160b00201000201000201000180c00201000ff9428
-180c00060300201000140a000e0700160b00201000160b00160b00201000160b00201000
-0e0700201000261300140a00201000180c00201000261300180c000e07000e07000e0700
-0e07001e0f000c06000c0600201000201000060300160b00160b000c0600180c00160b00
-0c06000e07000e07002010000c0600140a000e0700281400261300201000020100281400
-160b002e17002010002010000e0700140a00281400261300160b00140a000e0700160b00
-2e17001e0f00180c00160b000e07001e0f002814000e07002e1700160b00281400201000
-180c00160b00060300201000201000201000160b00160b001e0f00140a00201000201000
-0603000e07001e0f00160b000603001e0f00160b000e07000e0700180c00281400261300
-1e0f00160b00180c00140a00140a00160b000e0700201000160b000603002e1700060300
-201000180c00201000180c002613002010001e0f00180c000e07000e07000e07001e0f00
-0c0600180c00160b00301800ff9e3c201000140a000e0700201000201000321900201000
-2814002613002814002814000e07003018002010000e0700ffa448180c00201000160b00
-2010000c0600180c00261300140a00160b00160b00160b00201000180c00160b000e0700
-301800160b00201000201000180c00160b000e0700180c000e07000201002010000e0700
-2010001e0f00261300201000201000160b001e0f002010000e0700201000160b00140a00
-160b00201000140a00180c002e1700281400301800201000
-140a002613001e0f00160b00140a00160b000e07000e0700180c001e0f00261300160b00
-201000281400140a000e07000402000603002010001e0f003018001e0f000c06000e0700
-0e0700160b000402000e0700160b00060300060300160b000e07000c0600160b00180c00
-140a00160b00160b00160b000c0600201000180c002010000c0600201000060300140a00
-201000060300140a00160b00160b000e0700160b002010002010002e1700060300201000
-1e0f00201000281400180c000c0600160b00180c002010000e07001e0f00140a00201000
-2814001e0f00140a000e07000e0700201000160b00140a000e0700180c00160b001e0f00
-180c002010000e0700180c00261300160b00180c00281400040200160b00060300180c00
-1e0f00140a000c0600140a00281400140a00ff9d3a201000180c00180c00201000281400
-281400381c003018002814003219001e0f001e0f00201000ff9932160b00201000180c00
-160b000e0700201000160b00201000160b00180c001e0f00180c00140a00180c00201000
-2814000e07002010001e0f002814000e07001e0f00261300140a00281400201000180c00
-180c00201000201000261300140a002010001e0f00180c00160b002010000e07000e0700
-160b000e07000e0700180c001e0f002814002010002010001e0f00160b001e0f001e0f00
-281400160b00160b00140a00201000160b00180c00180c00321900201000040200180c00
-180c002613000e0700160b00281400180c00060300160b00160b00201000160b00040200
-1e0f002010000e0700160b002814001e0f001e0f000e0700140a00140a00201000160b00
-261300160b00180c00281400140a00180c00180c001e0f002613000603000e0700201000
-160b001e0f00160b000c0600201000140a000e0700140a001e0f001e0f00180c000e0700
-180c00261300160b002010002814000e0700060300140a00261300261300160b001e0f00
-201000060300160b001e0f00201000140a00261300180c001e0f00160b00160b00201000
-0e0700261300140a000e0700180c00060300140a00180c00160b000e0700301800160b00
-1e0f001e0f00261300201000ffa54aff9e3c201000281400140a001e0f00281400140a00
-160b00180c00180c00180c002e1700281400201000160b001e0f00180c001e0f00281400
-261300140a000c0600060300ffa244160b00180c001e0f001e0f00281400201000261300
-2814000603002814000e07000e07000e0700140a00160b00381c000c0600281400160b00
-160b00281400160b00281400160b00ff9d3aff9932160b00ff9c381e0f00201000160b00
-060300140a00160b001e0f002e17001e0f00180c00201000180c000c06001e0f001e0f00
-0c0600140a00180c00160b001e0f00281400160b000e07001e0f000e07002e1700281400
-2613000603001e0f002010000c0600261300180c001e0f00180c00160b000e0700160b00
-2814001e0f00281400140a00160b002e1700160b000c0600281400020100160b000e0700
-140a00140a00201000201000160b00261300160b00201000060300201000261300201000
-1e0f00201000180c00281400201000140a00281400140a000c0600160b00180c00160b00
-140a000603002010001e0f00140a000c06000e0700381c00180c002613000e0700180c00
-140a001e0f00160b00160b000c0600140a00160b00201000261300060300180c00060300
-180c00140a001e0f00160b00201000140a00140a000e0700160b002613000e0700201000
-160b00160b002010000603000e0700180c000c06000e07000e0700160b00160b00201000
-201000180c00060300ffa244160b00201000160b000e0700321900201000201000301800
-261300301800261300140a000c06002814000e0700180c00ffa040180c00140a002e1700
-180c00160b00160b00201000180c00160b000e0700140a00201000060300261300140a00
-2814002613002814001e0f00160b002814002613002814002010002010000603000e0700
-0e0700160b001e0f002e17001e0f00180c002010001e0f001e0f000e0700160b00160b00
-140a00261300201000160b00261300201000160b000e0700
-0e07002010000e0700201000281400160b002010002613002010000c0600140a000e0700
-160b00180c001e0f00160b002814001e0f004a25000e0700160b00140a002010000e0700
-0e0700160b00201000201000160b001e0f00261300180c00160b00281400201000180c00
-201000160b000e0700201000040200140a00180c002010000e07002814000e0700281400
-1e0f000603000e07000e0700201000160b000603000603000e07001e0f000c0600140a00
-1e0f00140a002010002010000e07001e0f00160b00160b001e0f00160b00281400160b00
-2010000e07000e0700140a00160b001e0f000603000e07000e0700140a00180c00140a00
-2010001e0f00201000180c00160b00180c002814001e0f00201000160b001e0f000e0700
-0e0700321900160b002010000c0600160b00ff99322010002010001e0f00201000281400
-3018004221002814003a1d002814000e0700180c00201000ff9d3a2010002814000e0700
-1e0f001e0f00201000180c002010000e07002010000c06000e07002010001e0f00140a00
-040200160b001e0f00160b00261300060300180c000c06002010000e0700180c000c0600
-281400180c00160b00140a00160b001e0f002010000e07001e0f00160b00160b00140a00
-201000201000140a001e0f001e0f001e0f00160b00201000201000180c00180c00160b00
-1e0f00180c000603002010000e0700160b000603001e0f000e0700261300180c00160b00
-201000160b00201000201000160b001e0f00160b002814000e0700180c002010000e0700
-0e0700201000160b002613000e0700301800201000180c002814000c0600201000201000
-180c000c0600281400160b002613001e0f00160b00040200261300160b00160b001e0f00
-180c000c06002010000e07000c0600261300201000140a00160b00140a00201000160b00
-2814002010000c06000c0600160b00140a001e0f000603000c0600160b00180c00140a00
-140a00381c00160b00160b002010000e0700160b00140a00140a001e0f000e0700281400
-0c0600160b00180c00160b00201000160b000c0600160b000c0600160b00160b00160b00
-0e0700261300180c00201000180c000e0700ffa244ffa448160b00261300281400160b00
-201000180c00180c00281400301800301800160b00201000060300160b002010001e0f00
-140a00261300281400ffa64c0603000e0700160b000e07000e07000201002e1700180c00
-060300180c000c06003018000e07000603000e0700160b00160b00180c00281400201000
-0e0700160b00180c00160b00180c00160b000e07001e0f00201000160b00160b00140a00
-1e0f00201000160b002010000e0700160b00160b00201000160b000e0700180c00040200
-0e07001e0f002e1700180c00060300201000201000020100140a00160b00160b00160b00
-160b000e0700040200180c00180c00180c00160b002613001e0f00180c00140a00160b00
-0c06001e0f002010000c06000e0700160b00140a00160b00180c00201000201000422100
-0e0700160b000e07002814002613000e07000e07001e0f00160b000e0700160b00261300
-301800180c00201000160b000e07001e0f00160b00140a002010002010001e0f00201000
-1e0f001e0f00261300281400281400180c001e0f00180c00140a00160b001e0f00180c00
-0e0700201000180c000e0700281400140a000e0700201000281400160b00201000160b00
-160b00201000140a00160b00140a00020100160b002613000e07000e0700180c00160b00
-1e0f00060300140a000e07000c06000e0700160b000603000c06000c0600160b00160b00
-140a000e0700ff9c38201000160b00261300160b001e0f002613002e1700261300301800
-301800301800301800180c00201000281400180c00201000140a00ffa244160b00160b00
-1e0f00060300201000140a000e0700261300160b001e0f00140a00201000180c00060300
-2010000e07000e0700140a00201000180c00180c00160b00281400180c002613000c0600
-2613001e0f002010000c06002e1700140a000c06002814000c06002010000c0600160b00
-2814001e0f00160b00160b00140a00160b00201000261300
-140a001e0f000c0600160b00060300140a00201000261300140a00201000180c00201000
-0c0600180c00201000160b00160b00140a00160b00160b00140a00301800281400160b00
-201000160b00160b001e0f00281400140a00180c00060300160b000e07000e07001e0f00
-0e07000e0700281400160b001e0f001e0f00180c000603001e0f00160b00201000301800
-0e0700020100140a000e0700160b000e0700060300160b00020100140a00180c000c0600
-0e07001e0f001e0f00201000140a001e0f000e0700180c002010000e07002e1700160b00
-261300301800160b001e0f00301800201000261300180c00201000261300160b00281400
-0c0600201000261300160b00140a002e17000e0700160b000e0700140a002613001e0f00
-0e07002010000c0600201000160b00140a00ff9e3c0e07000e07001e0f00422100261300
-3018002010003a1d002613002814001e0f00180c00180c00ff952a201000281400301800
-261300140a001e0f001e0f001e0f001e0f002010000e07001e0f00140a00261300261300
-201000060300180c001e0f00381c00201000201000201000160b001e0f000c0600180c00
-2613002010002e17000e0700201000180c000e0700201000140a00140a00140a000c0600
-160b00160b00160b00180c00201000140a000e0700140a001e0f002814001e0f00160b00
-140a001e0f001e0f00160b00160b00180c001e0f00180c00180c002613000c0600201000
-160b00160b002010001e0f000c06001e0f002e1700180c002010002814000603000e0700
-180c00281400180c001e0f00301800261300160b001e0f00140a00281400160b00160b00
-160b002814000e0700140a00160b00201000160b000e0700201000201000281400201000
-ffa142ff9932ffa040ffa244ff9830ffa244ffa448ff9c38ffa1421e0f00160b00321900
-2010002814001e0f000e07002010000603002010001e0f00201000020100140a000e0700
-301800140a000c06002814000e07000e07000603000e0700060300261300160b000c0600
-0e0700140a000e0700201000180c001e0f002e17002613000c06000c0600160b00140a00
-0e07001e0f002010002814002613002814001e0f00281400ff9d3affa040140a00281400
-2814002613001e0f00160b00201000160b00201000261300201000180c000e0700201000
-ff9d3affa244ffa1420e0700140a00160b00201000180c001e0f00140a000e0700160b00
-201000180c00060300180c00160b000c0600201000201000140a000e0700180c001e0f00
-0c06000e07002010000e0700160b000c06002814000e0700160b00301800160b00140a00
-0e0700180c000e07000c0600140a00160b00201000160b00140a00140a00201000160b00
-2e17000e0700180c000e07001e0f00160b000c0600281400060300201000140a001e0f00
-180c00140a000c0600160b00160b00180c000c0600201000140a004221000c06000e0700
-160b002010002e17000e07000e0700180c00180c000e07000603000c06000603000e0700
-0603002010000e07002010001e0f002814001e0f00160b003a1d000e0700261300261300
-0e0700180c00160b002010000e07002010001e0f002814001e0f001e0f00261300281400
-301800160b001e0f00180c001e0f00201000140a000e07002010000e07000e0700301800
-2613000c06002010000c06002010000603001e0f000e0700160b000e0700180c001e0f00
-201000201000160b002010000e07000c06002814000e0700261300160b00160b000e0700
-301800180c00160b000402002613000e07000e07002010000e07000e0700160b00201000
-281400ffa2442814002814000c0600201000261300281400281400321900542a00281400
-3018002e17003018003a1d002e1700301800281400180c00201000ffa2442613001e0f00
-0c06001e0f001e0f00180c00160b00180c002010002010001e0f002010000603000e0700
-2010000e0700160b00180c00160b00160b00160b00201000160b001e0f00281400201000
-201000160b00140a00261300281400160b000e0700160b00201000201000140a00160b00
-1e0f00201000180c00160b002613000e07000e07000e0700
-180c00180c00180c00201000160b000c06000e07001e0f00160b001e0f00060300261300
-180c00140a00180c00140a001e0f00281400060300040200301800140a00201000140a00
-2010002010000c0600160b00160b002613000e07000e0700160b001e0f00180c001e0f00
-2010001e0f000e0700160b00160b000e07000e0700201000160b00160b00160b00140a00
-160b000e0700160b003219000e07000e0700140a002613001e0f00140a001e0f000e0700
-140a00160b00201000140a00160b00160b00160b00301800160b000e07000e0700160b00
-160b002010000e0700140a00140a000201000e0700201000140a00140a00201000160b00
-0e07001e0f000c0600281400201000180c00160b00180c002e17000e0700201000060300
-0e07002010001e0f002814001e0f000c0600ff9b36281400160b000e0700201000301800
-3219003a1d00321900301800261300201000180c001e0f00140a00ffaa54160b00201000
-2814001e0f000c06002010000e0700201000160b000e0700160b000e07000e0700160b00
-0e07002613000e0700180c00160b00160b00160b00201000160b00201000160b000e0700
-3018002613000e07002e1700201000140a00160b00201000160b00201000261300201000
-160b00160b00160b00140a000e07001e0f00201000201000422100180c00201000180c00
-281400201000201000140a000e0700180c00201000201000180c002e17001e0f00160b00
-160b000e07002010002010002e1700180c00160b000603001e0f00160b002e17000c0600
-0e0700160b002814002e1700160b00160b000e07000e07001e0f002010000e0700140a00
-1e0f00160b00160b000603001e0f003018000e0700160b00160b002e1700201000ff9e3c
-060300261300281400381c003018002814001e0f002613000c0600ff9e3cffa448060300
-180c002010000e07000c06001e0f000e07002613000e0700160b00180c00180c00160b00
-140a002010001e0f000603000c06000603000c0600261300180c002010000c06001e0f00
-201000140a00160b00060300140a000201000e0700201000201000180c002e1700201000
-160b000e0700180c00201000180c00160b001e0f00261300301800261300ff9d3affa142
-ffa9522010002e1700180c00180c00160b002814002814000c0600ff9932ffa040ffa448
-040200201000180c000603000e0700281400060300180c00160b000e07000e0700180c00
-160b000e07001e0f002613000c06000c0600180c000e07000e0700140a00140a001e0f00
-0e0700140a000e07000e0700201000201000201000160b000c0600160b00301800201000
-040200261300180c00160b000c0600160b00180c001e0f00201000140a000c0600261300
-160b002010002814001e0f00180c00201000160b001e0f002010000e07000e0700160b00
-0603000e07000e07002010003219002010001e0f002010002010002010001e0f00180c00
-140a00160b002e1700201000160b002814000e0700160b00160b00281400160b00160b00
-0c06001e0f00201000201000160b000e0700201000160b00281400180c002010000e0700
-0e07000603000e07000c0600160b000e07000e07002814001e0f00160b00281400060300
-2010002e1700040200060300201000261300060300160b003a1d00160b001e0f00201000
-180c001e0f00140a00261300160b002010000e0700201000180c00180c00140a00140a00
-201000201000160b002814000e07000603001e0f002010000c0600261300140a001e0f00
-160b000603001e0f002e1700160b001e0f000e0700180c00180c000e0700160b001e0f00
-140a00ff9e3c261300160b002814002814001e0f002613002613003a1d00301800301800
-301800160b00301800201000180c00301800281400180c001e0f00ffa142140a00281400
-201000201000140a001e0f00180c00201000140a00140a000e0700160b00140a00180c00
-2613001e0f00201000140a00281400201000160b000e0700160b001e0f00261300201000
-281400180c00160b000e0700140a002010001e0f00160b001e0f00160b00261300040200
-2613002010000e07002010002613000e0700160b000e0700
-261300160b000e07002010000e0700160b00060300160b000e0700160b00180c000c0600
-0e0700160b00160b000e07000603002613002613000e0700160b00160b00180c000e0700
-180c00160b00040200201000180c001e0f002814002010002e1700201000201000201000
-2613000e0700160b00060300180c00201000020100140a001e0f002613001e0f00281400
-281400201000160b000c0600281400060300281400160b00281400180c001e0f001e0f00
-180c00180c001e0f00160b001e0f00261300201000060300160b00321900261300160b00
-381c00060300201000160b000c0600180c001e0f00160b00160b002613002010000e0700
-160b00180c000402001e0f001e0f000e0700160b000c06000e0700140a000c0600140a00
-140a00180c00180c00160b002010000e0700ff9e3c160b00160b00140a001e0f00201000
-321900301800301800281400201000160b00201000060300ff9932160b00160b000e0700
-140a00201000140a000c06002010000e0700201000160b00201000281400160b001e0f00
-201000180c00140a00281400261300160b00201000060300160b00180c00020100201000
-201000160b00060300160b00201000281400140a00160b00160b00160b00140a001e0f00
-0402001e0f002814000c0600140a000603001e0f00160b00020100140a00180c00160b00
-2010002613001e0f00140a00020100281400060300140a00201000140a00180c000e0700
-261300160b00281400140a002e1700201000180c002010002814001e0f00201000160b00
-160b001e0f00160b003a1d000e0700140a00140a002814001e0f00281400180c00160b00
-140a00201000140a00180c000e07001e0f00160b002010000e0700201000ff9d3a160b00
-261300281400201000281400180c00180c002010002e1700201000160b00281400ff9d3a
-160b00201000160b000e0700201000180c000603000201000e07000e0700160b000e0700
-160b000e07000c0600180c00201000180c00140a000402000201000e0700140a00140a00
-0c0600261300201000201000160b001e0f002814002e1700201000140a002613000e0700
-0e0700201000160b000c06000e07002e1700160b00201000281400180c00160b00201000
-301800ffa54aff9e3cff9c38ffa64cff9830ff9d3affa142ff93260c0600180c00261300
-140a00060300160b000e07002010000e0700140a002010002613000e0700160b001e0f00
-160b00140a000402000c0600060300140a001e0f001e0f00160b00180c00160b00140a00
-1e0f000c06000e0700140a00180c00201000160b000c0600261300140a002010000c0600
-2010000e0700201000140a001e0f00160b000603000e07002010001e0f000e0700140a00
-140a001e0f001e0f000c06000603001e0f000c06000e07000c06001e0f000e0700060300
-201000140a00160b00140a000e07000e0700160b00261300160b000e07000e0700180c00
-0e0700160b00160b00160b00140a00180c000e07001e0f00060300160b00261300180c00
-160b000e0700140a000e0700160b00040200261300180c002613000c0600281400261300
-201000301800321900180c000e07002814002010002613000e0700160b00261300140a00
-261300201000180c00160b001e0f00140a00301800201000140a001e0f00261300201000
-261300160b00160b00180c000e0700281400201000201000160b00140a000e07000c0600
-160b000e0700140a00201000180c00180c00281400180c001e0f00020100180c00180c00
-0c0600140a00060300160b00160b000e0700160b00040200160b000e0700160b00160b00
-ff9428201000201000160b002814002814002e17002814003a1d002e1700321900422100
-3a1d000e07004221003018001e0f003018003018002613001e0f00ffa448160b00060300
-2010001e0f001e0f00180c001e0f00160b000e07002e1700160b002010000c06000e0700
-160b00160b000e07002010001e0f001e0f00281400020100180c000c06001e0f001e0f00
-201000201000160b00140a00140a001e0f002010002010002613000c0600201000140a00
-180c00261300201000160b002613001e0f001e0f00160b00
-0e0700160b00160b00140a00140a00281400180c00201000180c000c0600201000140a00
-180c000e07000e0700201000201000060300140a000201001e0f001e0f000e07001e0f00
-2613000e0700180c00140a001e0f00201000301800160b001e0f00180c00261300180c00
-0603000e07000e07002010000e07000603000e0700180c00160b00140a00180c00140a00
-160b002613000402000e0700201000160b000e0700160b000e07000c0600160b000e0700
-180c00140a001e0f00160b000e0700160b00160b001e0f00140a00180c00140a00140a00
-2613001e0f00160b00261300160b000e0700160b000e0700160b00140a00201000160b00
-180c00060300140a00201000140a00160b00160b00160b00201000180c00160b00201000
-160b000c0600160b001e0f002814000e0700ff9c380e07000e07000e0700301800301800
-5229002010002613002010001e0f001e0f000e0700201000ff9c38160b000e0700160b00
-160b00180c00140a00180c00160b00180c00160b002613000603001e0f00180c00060300
-201000180c000603001e0f002613000e07000e07000402001e0f00160b00180c001e0f00
-2613002010002814002010002814000e0700160b000603002010000e07000e0700160b00
-2e17002010001e0f002814001e0f000e07000e0700160b000e0700140a00261300180c00
-1e0f00160b00140a00180c00180c000e0700160b002814002010000e07002010001e0f00
-0e0700201000281400180c000e0700180c00160b00140a002814001e0f00281400160b00
-0e07001e0f000e0700060300140a00180c002e17001e0f00180c000e0700140a00180c00
-1e0f000e0700020100281400160b002e1700281400160b00201000ffa54a180c00201000
-2010002814002e17003219004a25003219003018002010003018001e0f002e1700201000
-ffa74e201000201000160b001e0f001e0f00140a00180c002613000e07000c0600281400
-2010000e0700261300160b00201000160b00160b002010000c0600201000140a00180c00
-040200160b001e0f00040200201000060300201000060300140a002010000e07001e0f00
-180c001e0f00261300160b00281400201000201000160b000e07001e0f00040200160b00
-2010002e1700201000160b00201000140a000c0600281400281400180c00180c001e0f00
-160b00261300201000160b00140a00020100140a00160b000c0600160b00160b001e0f00
-0402001e0f001e0f00201000160b00140a000e0700160b00160b00281400160b00160b00
-1e0f000603001e0f000c0600180c00160b00281400140a00160b002e1700140a00281400
-281400201000160b00180c00261300060300180c000201000c0600140a00180c00160b00
-140a001e0f00140a000c0600060300160b00201000180c000e07000603000c06000e0700
-140a000603000c0600281400160b00201000160b00160b00140a001e0f00261300020100
-180c000e07000e07000603001e0f00180c001e0f00201000140a002e1700060300160b00
-0201001e0f002814000c06001e0f002010002814001e0f00201000140a00160b00201000
-160b00201000160b001e0f00261300160b00160b00261300201000160b00201000ff9830
-ff9d3a201000140a002e17002613000e0700160b00201000140a00160b00160b00060300
-201000140a000e0700160b003018001e0f002814001e0f000e0700140a000c06000e0700
-0c0600160b00201000160b00180c000c0600160b000c06001e0f00160b00160b00160b00
-180c000c0600020100060300140a00140a000e07000c06001e0f00140a000e0700ffa142
-201000180c001e0f00201000201000201000180c002814003219004a25004a2500261300
-301800381c003a1d001e0f00381c002010001e0f00180c00060300ffa74e1e0f00160b00
-201000160b000c0600160b00060300201000060300180c000e0700180c00140a00201000
-261300160b000e07000e0700281400160b00281400201000ff9d3affa448ff9932ffa040
-ff9e3c160b00261300180c00201000160b00180c000e07002814003018000e0700180c00
-180c000603001e0f002010000e07002e1700140a001e0f00
-2010001e0f002010003018000c0600281400060300140a00160b00160b002613001e0f00
-281400201000160b00020100160b001e0f002e1700060300301800060300040200160b00
-0e0700180c00160b00160b000e0700160b00180c000e07001e0f00160b00160b00160b00
-160b001e0f00160b000e07000e07001e0f00201000180c00180c002613001e0f00060300
-160b000603002613002010000e0700060300180c000e0700180c00180c00140a000e0700
-2e17000c06002e1700201000140a000e07002010000201001e0f00140a00160b001e0f00
-160b000e0700201000140a00160b00180c00060300160b00201000160b00160b00020100
-060300140a00160b00201000160b001e0f00040200160b002814000e07002010000e0700
-160b00160b000e0700160b00140a000c0600ffa448140a00261300060300301800160b00
-2010003219002613002814003018000e0700140a00261300ffa040180c00160b00160b00
-0c0600160b00180c001e0f00140a00180c002814000603001e0f002e1700160b000e0700
-160b00020100160b00160b00201000201000160b00160b001e0f00160b00261300140a00
-160b001e0f000e0700201000160b00160b000e0700180c00160b00140a000e0700140a00
-160b00160b002010000e07000e07002814002010000603000e0700140a000e07001e0f00
-261300160b00201000281400160b00160b00321900140a00160b00060300160b000e0700
-0c0600160b00160b000e07001e0f001e0f00201000160b00160b00261300140a00201000
-140a000e0700180c00160b00160b002613000e0700160b00140a001e0f00201000060300
-2e1700160b00140a00180c00261300301800160b00160b00ff9c38180c00140a00281400
-381c003018004020004422004020004221005229004221002613002e1700281400201000
-ffa74e2010002613003018002010001e0f00160b000e0700160b00160b00281400201000
-180c000e0700201000180c002e17000e0700301800201000201000180c00201000201000
-0e0700160b00060300261300160b000e0700180c00281400160b001e0f00160b00160b00
-1e0f00180c00201000140a00060300180c00261300180c00180c000c0600160b001e0f00
-201000160b000e07002613001e0f00201000040200180c00020100180c00281400180c00
-0e07000603002814001e0f00160b00201000140a00281400140a001e0f000603001e0f00
-0e07000e0700140a00180c000e07000c06002010000e0700020100ff9830ff9d3affa040
-ff9c38ff9c38ffa244ff9d3a2814002010000603002814001e0f00180c001e0f000e0700
-180c000e07000e07001e0f002010000201001e0f00160b00301800140a000e07000e0700
-180c00201000160b002010000e0700201000180c001e0f00160b001e0f000e0700140a00
-1e0f00180c00281400201000261300140a00140a00140a00180c00180c001e0f000c0600
-2613001e0f00160b001e0f002010000e0700160b000c06002010000c06000e0700281400
-160b00140a000e07000c06002010001e0f00160b000c06002010002e17000e0700060300
-261300201000180c002010000c0600160b00ff9c38ff9e3cff9932ffa64cffa64c201000
-160b00ff9e3cffa040ffaa54ff9e3cffa64c301800140a00160b00261300201000201000
-1e0f00140a002010002010000c06002613000c0600060300160b001e0f00201000140a00
-180c00261300180c00160b00281400160b001e0f001e0f002814000c0600180c00180c00
-0c0600281400201000180c00160b00180c000e07001e0f00281400160b00201000ffa040
-2814002e1700180c001e0f00201000301800301800321900381c003a1d00422100321900
-4a25004221003a1d00261300281400140a001e0f00301800201000ff9c38301800040200
-160b000e0700060300140a000e07001e0f001e0f00020100180c00201000140a000e0700
-0e0700160b00160b001e0f00201000ff952affa142ffa040180c00281400160b000e0700
-1e0f00ff9428ff9830ff9c381e0f001e0f00160b001e0f00180c00201000160b00201000
-1e0f00180c00160b00281400201000180c00160b00201000
-0e07002010001e0f00160b00160b002613000e0700160b00160b000c0600261300060300
-0e0700201000180c00160b00160b000e0700140a000e0700201000160b000e0700160b00
-1e0f000e0700180c00201000180c00160b002e17002010000e0700160b001e0f00140a00
-160b00180c000c0600040200160b00180c001e0f002010000e0700160b00201000281400
-160b000e0700261300020100180c00160b000603000c06000e07002814002814001e0f00
-180c002613000c06002814001e0f00160b00160b00140a00180c00160b00160b001e0f00
-140a003018002814000c0600160b00180c00060300140a00180c002613000603000e0700
-160b00160b00160b00180c00281400180c00140a00160b00160b001e0f00261300160b00
-2814002010002613000e07000e0700281400ff9b36160b000c0600180c00140a00301800
-1e0f002e1700140a002613003a1d00140a00261300160b00ff9d3a140a00160b00160b00
-140a00281400140a000e07001e0f00180c00180c00180c002010000c0600201000281400
-201000160b00140a00180c001e0f00201000261300261300201000160b002010000e0700
-180c001e0f000c06002814002010002e1700201000160b00160b00160b000c0600020100
-180c00140a00261300140a00180c000e0700020100381c00020100180c00201000140a00
-160b00281400281400201000060300160b00201000160b000c06002e1700301800180c00
-180c001e0f00201000160b00140a00160b002010002010001e0f00160b00201000160b00
-0e0700160b00160b00140a00140a00140a001e0f001e0f002010000e0700140a00160b00
-201000160b00261300180c00160b00281400160b00160b00ffa1421e0f002e17003a1d00
-301800402000542a006e37007e3f00763b006e37005c2e003a1d00180c003018002e1700
-140a00ffa448201000160b00180c00160b00060300201000201000201000160b001e0f00
-1e0f001e0f00140a00140a00201000180c002814000e07002814000e0700060300160b00
-160b00140a00140a00140a00160b003018000e0700261300160b00180c00020100140a00
-180c000e07002010002613000e0700140a00140a00060300160b00140a00160b00180c00
-0c0600180c00201000180c000e0700060300140a00180c00180c00140a00201000060300
-040200201000160b00140a00160b00160b00140a000603001e0f000e07002814000c0600
-160b00160b001e0f000e0700261300180c00160b00160b00ff9d3a0201000603000e0700
-160b002010001e0f00201000ffa244180c00180c00281400180c002010000e0700060300
-160b00140a00180c00160b001e0f00261300160b00180c000e07000e07000e0700180c00
-201000160b00160b000603000e0700160b000e0700180c00180c001e0f00160b000e0700
-160b00261300160b00201000140a000c0600281400160b00160b00160b00140a000e0700
-0e0700261300160b000e0700160b000c06000603000402000e0700140a00160b00160b00
-140a002814000e07003018002e1700281400160b00180c00180c000c0600261300201000
-2613001e0f00160b00160b00ffa244ff9b362814002814002613002e1700261300160b00
-402000281400281400281400301800281400ffa54affa74e261300160b00160b00201000
-160b00201000201000180c00201000201000180c000e0700160b00180c00180c00060300
-160b00160b00060300160b00160b00160b001e0f00261300180c00160b00040200040200
-0e0700140a000e0700160b00140a00201000180c002010000603000e0700ffa448201000
-020100201000140a002814002e17002814003018002010004221005229005a2d00643200
-442200381c003a1d003018002814001e0f00281400160b00160b00ffa448140a00060300
-2e17002e17000c0600180c00281400180c00160b00160b000c0600140a00180c00160b00
-140a00180c002010000e0700ffa1420e0700281400160b00160b001e0f00160b001e0f00
-1e0f00281400201000201000fffcf8180c00140a000e0700381c002010000c0600160b00
-140a002010002010000e07000c0600160b000e0700160b00
-0c06002814001e0f00160b000e0700180c00140a00261300160b000e07001e0f00261300
-180c00060300140a002010001e0f002814002010001e0f00160b00060300160b00281400
-0e07002010000603002010002010000c06001e0f00160b000e07001e0f00201000180c00
-0c0600160b001e0f00160b00140a00140a002e17001e0f00160b00160b000e0700140a00
-0603001e0f000e0700201000140a00160b002814001e0f00281400040200281400201000
-060300160b001e0f00180c00160b000e07000e0700160b000e0700140a000603000e0700
-0c0600160b00140a002010000603000e07001e0f00201000180c000e07000e07000e0700
-180c00180c000e07003018000e0700040200140a000e0700261300060300140a000c0600
-160b000e0700140a00160b00140a00180c00ffa1422010002814000e0700281400201000
-3018003a1d00201000261300301800301800160b00180c00ffa74e1e0f00160b00180c00
-160b003018000c0600201000281400180c00160b00140a002010000e0700180c00201000
-160b00140a001e0f001e0f00160b00301800281400201000180c00140a002e1700180c00
-1e0f00160b00160b00281400180c002814000e0700180c001e0f000603002814000e0700
-1e0f00201000160b00261300140a00140a00160b00160b000e0700140a002e17000c0600
-160b00301800201000160b001e0f00180c00160b00261300281400140a000e0700140a00
-160b000c0600201000160b000e07000e07002010001e0f00140a001e0f00160b001e0f00
-0e07001e0f001e0f00180c00140a00060300060300140a000603002e1700201000020100
-160b002814002814000e0700201000180c00201000ffa9522814001e0f002e1700201000
-4221005a2d007e3f00c86400de6f00ca65009e4f00783c005a2d00281400402000160b00
-160b00ffa54a1e0f00160b00301800160b00180c000e0700140a001e0f00261300160b00
-180c002010000e07000e07000e0700180c00140a00140a001e0f00060300160b00060300
-160b00261300140a00261300180c00180c002010000c06002613000e0700140a00201000
-2814002010000e0700160b00160b001e0f00160b002613002814003018000c06000c0600
-0e0700180c00160b002613000c0600281400160b001e0f00160b002613000e0700140a00
-160b00180c00140a001e0f00201000140a000e0700140a00201000140a001e0f000c0600
-201000160b00160b003018000e07000603000e0700ffa64c160b001e0f00160b001e0f00
-201000281400180c00160b00160b00180c00ff9c38160b00201000201000180c000e0700
-180c000e0700201000180c00180c00281400201000281400060300160b003018000e0700
-160b000c06000e0700140a000e07000c0600160b00140a00160b000e0700160b00140a00
-0e07002010001e0f00160b000e07003a1d00020100180c00160b000e0700140a00261300
-160b00060300180c000e07001e0f00160b00160b00140a00160b000c0600180c000e0700
-140a001e0f00140a00140a00180c000e0700140a000603002814002010002010001e0f00
-1e0f002010002e1700ff9c38160b001e0f00180c00160b003018003a1d00201000261300
-321900281400281400301800381c002e17002010001e0f00ffa142ff9d3a0c0600140a00
-2010000e07001e0f001e0f00261300160b000c06000c06001e0f001e0f000e0700201000
-201000160b001e0f00160b001e0f00180c00060300160b000e0700261300060300160b00
-160b00160b000e0700160b00140a00261300201000060300160b00180c00ffa74e1e0f00
-261300140a002010003018002814003018003a1d00542a003a1d005e2f004c2600542a00
-542a003a1d003219004a2500301800301800281400281400160b00ff9c38160b00140a00
-1e0f00261300160b00140a001e0f000c06000e07000e0700160b00160b00140a00180c00
-301800301800ff9e3cff9c38201000160b001e0f00180c000e07000e07002010000e0700
-261300160b00281400301800160b00ffa0402010000c06002010002010000e0700160b00
-2010000e07000e07002010001e0f00180c000e0700060300
-160b00180c00160b00180c00160b000e0700160b002814000c06000e0700281400201000
-201000180c002010000e0700160b00160b001e0f00201000060300140a001e0f00160b00
-020100060300140a00281400160b00261300201000201000160b001e0f001e0f00160b00
-160b000e0700201000140a00160b002613000e0700160b002010000e0700321900180c00
-0e0700180c00140a00020100201000140a001e0f00180c00140a000e0700160b00261300
-0603000c0600180c000e07000e07001e0f00201000160b00160b00180c00060300281400
-0e0700160b000e0700160b00180c00281400281400160b001e0f000c06000e0700140a00
-060300281400281400140a00160b00140a00201000160b00201000321900180c001e0f00
-201000201000160b00281400201000261300ff9e3c201000160b002613001e0f00201000
-2010002e1700201000140a00281400160b002010000e0700ff9932160b000e07000e0700
-140a000e0700180c00201000180c00160b00180c00160b00160b00160b00160b000e0700
-140a001e0f00140a002010001e0f001e0f00160b00180c00180c00261300020100180c00
-0e07000c0600261300180c002613002010002814001e0f002613002613000603000c0600
-180c00180c00261300160b000e0700201000140a00160b000e0700180c00160b000c0600
-0e0700160b000c0600160b00140a00160b002010002613002e17001e0f000e0700160b00
-0e07000603000201002613000e0700201000160b001e0f00140a00160b000e0700281400
-0c06001e0f00180c00140a000e07000e07000e07000e0700180c00060300040200140a00
-160b00261300301800160b00060300201000180c00ff9e3c301800201000201000381c00
-542a008a4500e27100ff9932ffc080ffcc98ff9932904800643200422100301800140a00
-281400ffa4481e0f00160b00281400201000160b00201000180c00160b00160b00261300
-0e07000c06000c0600301800261300281400180c000603001e0f002613000e07000e0700
-160b002010002010001e0f00040200140a00160b000c0600201000261300140a00140a00
-160b000c0600201000201000201000160b00160b00160b00160b00140a00180c000e0700
-160b00060300140a00140a00201000160b002814002814000603001e0f00140a00201000
-140a000e0700060300201000160b00160b000c06001e0f001e0f002010001e0f00160b00
-0e0700160b001e0f000e07002010000e0700ffa54a2010003219001e0f00180c00201000
-301800281400180c00160b00201000281400160b00ffa244201000160b00201000180c00
-160b00160b002010002613000e0700140a002e1700261300140a00160b002814000e0700
-2010003018002e1700201000140a00201000201000140a002010000e07000e0700201000
-1e0f00060300180c00140a00140a001e0f00160b001e0f00060300261300201000160b00
-160b00180c002010001e0f00180c00060300201000060300180c000c0600160b000e0700
-0e07000e07001e0f00180c00180c00140a00160b00160b00201000281400201000160b00
-180c00ff9e3cff9e3c2613000e07000e0700201000180c00201000281400281400321900
-381c00321900201000261300140a002e1700180c00160b002613001e0f00ffab56ffa244
-2814000e07001e0f00020100160b00140a002814001e0f00201000261300160b00180c00
-1e0f00140a000e07002010001e0f00281400140a00201000160b000e07000e07001e0f00
-0603000c06000e0700180c00180c00040200180c00201000180c00ff9e3c140a00180c00
-2814002814002010002e17002010003018004020004221004c26005c2e005c2e006c3600
-542a004a25003a1d00381c00301800261300201000180c00381c00ff9e3c2e1700160b00
-160b001e0f000c06002613000402000c0600160b000e0700140a000e0700180c00140a00
-180c00ff9e3c160b00281400160b00201000160b00160b000e0700180c00160b00140a00
-2010000e0700180c001e0f00180c00160b00ff99320603000e0700160b00060300201000
-1e0f00140a000e07002010001e0f000e0700261300060300
-1e0f002010000c06002010000e0700140a00140a00160b00140a000e07000e0700201000
-160b002613001e0f00160b00140a00201000160b00160b002010000603002010000c0600
-0e0700281400160b001e0f00040200140a00160b00160b001e0f00160b00140a00201000
-0e07001e0f00060300140a00140a00201000201000381c00180c001e0f00281400040200
-140a00160b00140a00140a00140a00261300160b001e0f00201000180c000e07000e0700
-140a00301800160b00201000261300160b000e0700160b001e0f00160b00140a00201000
-060300180c00140a00160b00060300180c000603000e07000201000e0700180c00201000
-201000140a00201000180c00160b00261300140a00160b000e0700201000160b00261300
-140a00201000160b00160b001e0f00160b00201000ffa952160b00160b00160b00301800
-160b00160b00160b00261300140a00201000020100ff99320e0700160b000e0700160b00
-281400160b00201000140a001e0f000e07002010002814001e0f001e0f00180c00160b00
-160b000e07000e07000e0700201000160b001e0f000e07000e07000e0700160b00301800
-060300160b00160b002010002010001e0f001e0f00060300281400281400160b000e0700
-1e0f00140a00140a00180c00140a00160b00180c00160b00180c00040200201000160b00
-180c00160b00201000201000160b000e0700160b002e1700140a00160b00160b00201000
-281400201000180c00160b00160b00160b002613002814000e0700160b000c0600201000
-160b00160b00160b001e0f001e0f000e0700160b000e0700140a00160b00281400160b00
-0c0600201000180c001e0f00261300201000180c00ff9e3c160b00301800422100542a00
-5c2e00904800ff8b16ffd0a0fffcf8fffcf8ffaf5ee07000783c005c2e003018001e0f00
-2e1700301800ffa4481e0f000e0700201000160b00160b00201000160b00201000060300
-2814000c0600160b00020100281400160b00281400180c000e07002814000603000e0700
-140a002010002613000c0600160b00160b00201000060300180c00160b00180c00140a00
-2010001e0f00160b001e0f00160b00281400160b00160b001e0f00140a00160b00201000
-1e0f00261300140a002814000e0700261300160b00160b00160b00060300180c00201000
-160b00180c000e07000c0600201000160b000e0700180c001e0f000201000c0600261300
-2010002010002010001e0f000c0600ff9d3a2613001e0f002814002613002e1700402000
-3a1d00281400321900281400160b00281400140a00ff952a160b00201000281400140a00
-160b002010002613000603000c06001e0f002010000603000402000603001e0f000e0700
-160b000c0600201000180c00301800160b00160b00160b00201000180c000c0600140a00
-261300140a00160b00201000040200160b00140a00160b00160b00060300281400281400
-1e0f000e07000e07000c0600160b00160b00201000160b00020100020100140a00160b00
-0e0700201000160b00060300060300180c00160b00160b00160b00160b00301800160b00
-ffa0404a2500160b000e07002010002010002613002613002e17002e17003a1d003a1d00
-3219002e1700281400301800381c00160b00160b002010001e0f00381c004221000e0700
-ffaa541e0f002010001e0f002613001e0f000c06002e1700140a00060300160b001e0f00
-180c00180c000e07002010000e07001e0f00261300160b002010001e0f00160b00180c00
-160b000603000201000c0600160b00160b00201000140a00201000ff9428201000201000
-180c003018003018003a1d00321900542a005c2e005c2e006e37006c36005c2e00643200
-5c2e004a25004a25002613003018002814002e1700160b00281400ffa74e180c00060300
-201000160b00140a002613000e07000e07000e0700160b00180c00160b00140a00140a00
-ff952a140a00140a000e0700180c002613001e0f001e0f00160b000c06002e17002e1700
-160b000c06000e07000e0700140a00060300201000ffa448281400180c00281400201000
-2814000e0700281400201000160b002010002814001e0f00
-0e0700160b00201000160b000c06002010000201001e0f000c0600140a00060300281400
-2814002010000201002814003018000e0700201000160b00180c000e0700261300160b00
-0c0600201000201000201000180c00160b00160b00201000060300160b001e0f00201000
-201000180c000e07002010001e0f003018002e1700180c00281400201000180c000e0700
-060300180c00040200160b000201000e07001e0f00180c002e17001e0f000e07000c0600
-1e0f00160b00201000281400180c00201000140a00261300160b00160b002010001e0f00
-180c002010001e0f000e0700180c00201000160b002010000e07000e0700140a00160b00
-0e0700160b00140a00180c001e0f000e07002010000e0700160b00180c00160b00160b00
-180c00160b000c0600201000060300160b00321900ffa54a160b002613002010001e0f00
-2613002010003018000c0600160b00160b001e0f00ff952a2010001e0f001e0f00160b00
-0e07003a1d001e0f00160b00160b00180c000e07001e0f002613000c0600160b00160b00
-180c002010002010000603002613000e07002814002010000603001e0f002010000e0700
-261300180c00180c00020100180c00201000281400140a00060300160b000e0700261300
-0c06000e07000c0600160b00060300160b00160b00201000160b000e07002814000e0700
-201000201000140a000e07001e0f00160b00180c00140a00160b002e17000c06001e0f00
-2814002010002010002613000e0700160b00020100281400180c00201000060300201000
-1e0f00180c00160b00160b00160b00180c000603002613000e07000e0700201000160b00
-180c002613000c0600160b00301800160b00281400ff9c38261300261300201000442200
-7038009c4e00ff8f1effd3a6fffcf8fffcf8ffad5ad86c00783c00402000381c003a1d00
-201000201000ffa040301800201000201000160b00160b00160b001e0f001e0f00160b00
-160b000e0700201000301800180c002613000e0700160b00160b00140a00140a00140a00
-180c000e0700140a00160b000e07000c0600160b00180c000e0700180c00201000180c00
-2613000e0700180c00160b00180c000c06001e0f002814000e07000e0700201000201000
-060300160b00160b00180c00140a00160b00201000160b000e0700180c00160b00261300
-140a002e1700180c001e0f00160b000e0700160b00140a00281400180c000c0600201000
-0c0600160b00180c000e07000e0700ffa1420e07000e0700180c003018004a2500542a00
-422100522900402000201000402000201000301800160b00ff9d3a140a003018000e0700
-0603002814000e0700140a000e07001e0f00140a000e07000e0700140a00160b00180c00
-201000180c001e0f003018002814000603001e0f001e0f001e0f00160b00160b00261300
-040200140a00140a00180c00201000180c00060300020100160b00160b00201000020100
-1e0f00140a00140a00140a00060300140a00160b00140a00160b00180c001e0f00160b00
-201000261300160b00160b001e0f00281400261300201000160b00381c00261300ffa142
-2e1700140a000e0700160b002814003018003219001e0f00321900261300301800281400
-2e17004221003219002814002e1700160b003018002010000e07002010003a1d00281400
-281400ff9e3c180c00160b002613000e07002010001e0f00020100261300180c00140a00
-140a00180c00160b000e0700180c00160b00160b00201000140a002010000e0700201000
-0e0700140a000e0700140a00180c00160b00180c00160b00ff9d3a180c000e0700281400
-2814002613002814002814005e2f004c26005c2e00783c008844005c2e006633005a2d00
-5a2d004422003a1d00422100301800381c00160b002e1700201000ffa4480e0700060300
-0e07000e0700060300201000180c00160b00160b002613000e0700140a001e0f00ffa040
-2814000e0700180c000e07002010000e0700201000180c00381c002814000e07001e0f00
-0e07001e0f00301800201000160b00160b000e0700ff99320e0700201000140a00140a00
-1e0f000e0700381c002e17002814000c06000e0700160b00
-180c000603002010000e0700160b00160b002010000201002e17000e07000402001e0f00
-321900180c00160b00040200281400301800180c00160b002010001e0f003018000e0700
-160b00201000180c000e0700160b000c06002010000201000e0700160b001e0f00140a00
-180c00160b00201000160b00140a001e0f000603001e0f001e0f00060300140a00160b00
-1e0f001e0f00160b001e0f001e0f00281400140a000e07002613001e0f00160b00160b00
-160b00060300140a00020100160b00180c001e0f00160b00180c000e0700201000301800
-140a00160b002010000e0700281400160b002010001e0f002010000e0700301800060300
-2010002613001e0f00201000261300160b000e0700160b002010001e0f00040200160b00
-1e0f00140a00201000160b000c0600180c000603000e0700ffa54a0c0600160b00160b00
-160b000603000c0600180c00160b00261300ff9d3a1e0f002814001e0f000e0700160b00
-0603001e0f00160b001e0f00060300180c00160b001e0f001e0f002010000603001e0f00
-180c00140a002010000603000e0700160b002e17002010000e0700201000160b000e0700
-1e0f00281400160b000e0700160b002e17000e0700160b00140a00160b00180c00281400
-160b000c0600201000140a00180c000e0700160b00160b000e0700160b000c0600140a00
-160b00160b00160b00201000040200180c002010002e17000e0700201000160b00381c00
-281400201000201000201000160b000e0700140a00201000261300140a00261300140a00
-180c000e07002814001e0f001e0f00281400180c00160b002010001e0f00201000261300
-160b00160b002010002613000e0700201000201000ffa1423219001e0f003018003a1d00
-542a00864300f07800ffb66cffdab4ffc890ff8e1cc462005c2e004a25001e0f00301800
-201000ffa2441e0f00180c00160b00160b00281400160b001e0f001e0f00160b00060300
-0603001e0f001e0f00201000180c000e0700160b00140a00140a00160b00140a00060300
-0e0700261300160b000c0600201000140a00140a00261300180c00160b000e07000c0600
-0e0700261300201000140a002e17000603000e0700261300140a00060300160b00201000
-180c000e0700140a00140a00160b002613000e07000e0700140a00160b00160b00160b00
-0e0700261300140a002613000e07000e07000e0700160b001e0f00160b001e0f00160b00
-060300160b00261300160b00140a00ff9e3c160b002613003a1d00301800381c006e3700
-402000402000542a003a1d003a1d00301800180c00201000ff9b36140a000e07000e0700
-301800160b001e0f00160b00281400201000160b00160b00180c00160b000e07001e0f00
-180c00201000160b00281400160b000c0600201000160b00160b00160b00160b00060300
-3018001e0f002010001e0f00160b00140a00140a00180c000e07002010002e1700160b00
-140a002010000c06001e0f001e0f000e07001e0f001e0f00160b000e07000e07000e0700
-1e0f00180c00140a00160b00160b00160b00160b002010000c0600180c00381c000e0700
-0e0700180c003018003018000c0600201000201000201000160b004221001e0f00321900
-3a1d003a1d002e17002e1700301800281400281400201000201000301800201000281400
-1e0f00402000ff9e3c2814000c0600180c00160b00160b00201000140a00201000201000
-1e0f00180c00160b00281400060300180c000e0700160b000c0600180c00140a000e0700
-0c06000e07000e0700180c00160b00160b002010001e0f00ffa244140a00180c00281400
-3018002814004221004a2500522900643200703800804000763b00763b00763b00703800
-5229004a25003a1d003a1d003a1d002010000e0700201000160b00ffa1420e0700201000
-201000261300180c00160b002010000201002e17002010001e0f000e0700160b00ff9d3a
-160b00160b002613001e0f000e0700160b002814003018002010002e1700381c00281400
-2814002814002613001e0f002010001e0f00201000ff9e3c160b002010001e0f00140a00
-140a000e0700060300180c00201000140a00160b00160b00
-201000180c001e0f00281400261300160b00160b00140a00201000261300180c00180c00
-1e0f002814001e0f000e07000e0700140a000e07002e1700140a000e0700180c00201000
-1e0f00180c00060300201000160b00261300140a00261300160b000e0700201000140a00
-160b00201000180c00201000140a000e07002010000c06002814000c06001e0f000e0700
-201000180c000e07002613000e0700180c001e0f002010001e0f001e0f00140a00261300
-0e07000e07000e0700261300201000301800160b00160b00201000261300201000201000
-0e07000e0700160b00201000160b00180c00281400201000140a00160b00160b00261300
-0e07001e0f00301800160b00261300201000160b002010000c06002814001e0f000c0600
-0e0700140a000c0600160b00160b001e0f00160b00281400ffa54a140a00160b00160b00
-180c00160b00201000160b00180c00160b00ff9c381e0f001e0f00180c001e0f00160b00
-180c002814000e07001e0f00060300140a00160b00160b002613000e0700180c000c0600
-160b000603002613002010002010001e0f00160b002e1700160b002613001e0f00201000
-201000261300160b00140a00201000160b00160b00261300160b00201000160b00180c00
-2010000603002814000e07000c0600160b00201000201000201000140a000603001e0f00
-160b00180c00201000281400140a00180c00160b00160b001e0f000c06000e07001e0f00
-1e0f00160b00201000140a00160b00160b001e0f00160b00180c002613000e07000e0700
-160b000e0700160b00160b002010002814001e0f000c0600201000180c00301800180c00
-261300160b00180c00140a00261300160b00180c00ff9b36160b00160b00281400281400
-4a25007e3f009a4d00c46200fa7d00ff850ac86400804000542a00381c003a1d00160b00
-2e1700ffa74e160b001e0f002010002010002814001e0f00180c00160b000c0600180c00
-1e0f00381c00160b00180c00140a00160b000603000c0600160b002010000c0600020100
-180c00140a00160b001e0f00160b00140a00140a002613000e0700180c00201000060300
-160b00281400140a00160b00180c002010000e0700160b00201000160b000c06000e0700
-160b00180c000c06001e0f001e0f00140a00140a002010000c0600160b00160b00060300
-060300160b00140a000e0700180c002010000e07000e07001e0f00160b001e0f000e0700
-0e07000e0700201000140a00ffa54a160b00180c002010002010003018004221005a2d00
-783c007038004422003a1d004a2500160b002e1700160b00ff9e3c2613001e0f00060300
-0c0600140a000c0600180c00160b00201000140a00140a00140a00180c00020100201000
-261300060300180c00201000140a00301800160b000e0700160b002010000e0700281400
-140a00160b00180c000201000201002e17000e0700060300020100180c00160b00201000
-2814000e0700160b00020100160b002814000e0700281400160b00160b00160b00160b00
-2814000c0600160b00140a00160b00301800160b00160b00160b000e0700ffb366201000
-1e0f00160b003a1d00381c00160b001e0f00201000381c003219004a2500381c00381c00
-3018002613003a1d00381c003a1d00201000381c002814002613002010002613001e0f00
-201000140a00281400ffa448301800160b00060300160b00201000140a000c0600201000
-1e0f000c06000402000e0700180c000c06000201002613001e0f00140a00160b001e0f00
-160b00160b00160b00201000180c00140a00160b00ff9932060300060300140a00261300
-2814003018003219003a1d00542a00763b00984c009c4e009249009249008643006e3700
-6432004c26003a1d002613002010002814002010001e0f00060300ff9d3a281400160b00
-281400160b00160b002010000e07002e17000e0700180c001e0f00160b00ff9c38281400
-0e07001e0f00281400402000201000281400201000381c003a1d00321900381c00321900
-160b00301800180c00180c00140a00180c00140a00ffa4480e0700180c00201000201000
-201000180c000c06002e1700160b002010002e1700140a00
-1e0f000e0700160b000e0700160b00180c001e0f001e0f00201000261300201000201000
-2010002814001e0f00160b00160b000e07002010002814000e07000e0700180c00160b00
-180c00201000160b001e0f001e0f00160b00180c00201000160b00180c00201000301800
-140a00180c00201000201000140a000e07002010000c06003018000e07001e0f001e0f00
-0201000e07002010002613000e07001e0f000c0600160b000c0600160b000e0700160b00
-2814001e0f00140a00160b00180c00180c00160b00160b002613000e07000e0700201000
-140a000e0700180c00140a002814001e0f003018000e0700160b00180c000e07000e0700
-2010000e0700201000160b00180c00160b000c06001e0f000e07000c06000e07000c0600
-2010002814002010000e0700160b000e0700160b00281400201000ff99320e0700180c00
-060300201000201000160b000c0600ff9d3a281400180c00160b00201000160b00201000
-1e0f00201000261300160b00160b000c06002814002010002010000e0700160b00160b00
-2010002010002010000e0700160b000e07002814000603002613002010000e07001e0f00
-1e0f000e0700020100301800160b000e07003a1d001e0f000e07002814000e0700140a00
-0402002010002010000e0700160b00160b00140a00180c00261300261300201000281400
-0c0600160b00160b00140a00160b002010000c06002010000c06000e0700060300140a00
-0e0700180c000e0700281400281400180c000e07000e07001e0f00140a00040200201000
-0e0700140a00180c002010000e07002010000c0600281400201000180c000e0700140a00
-1e0f002814002814002010002e17001e0f001e0f00ff9932281400140a00201000281400
-4221004c26006c36008a4500924900864300783c006c36004c2600321900301800180c00
-201000ff9d3a0e0700180c001e0f00160b001e0f000e0700160b000e0700160b000c0600
-180c00140a00140a00160b00180c00160b00160b000e0700140a00060300160b00160b00
-060300261300140a001e0f00261300160b00160b00160b00180c00160b00140a00160b00
-180c00261300160b00060300140a00261300201000160b00261300060300060300140a00
-0e0700160b00180c002010001e0f001e0f00201000180c000e0700201000180c00140a00
-160b001e0f00180c001e0f001e0f00160b000e0700060300160b00180c00180c00201000
-2010001e0f000e07001e0f00ffa0400e0700201000281400381c004020005c2e006c3600
-804000884400763b004020002814002814002e1700201000ffa040140a00180c00140a00
-180c00180c000e07000e07002613002010000e0700140a00281400180c000e0700261300
-180c00140a002814000603002613002e17002010002e17002613002814001e0f00201000
-160b00160b000603001e0f00140a001e0f00180c00060300140a000c0600201000060300
-2010000e0700160b00160b000e07000c06000e0700140a00301800060300060300060300
-160b002613000e07000e0700060300160b00160b00261300160b00ffa1422010003a1d00
-2010002010003219002613002814002e17003018003a1d00402000422100301800402000
-4422002814002814004020002814002010004020003a1d00301800201000140a00201000
-281400140a002613000e0700ff9b36060300140a00140a00160b00140a00160b00060300
-160b001e0f00060300060300180c00301800160b000e07001e0f000e07000e07000e0700
-0c0600201000160b00180c00160b000e07000e0700ff9b36281400160b00301800281400
-160b00422100522900542a007e3f00904800b25900b45a00b45a00984c008a45006c3600
-6c36004a25004422003219003a1d00281400180c000e0700140a00ffa2440c0600180c00
-180c002010001e0f00160b000e0700140a00140a00281400201000261300ffa448261300
-160b00140a00281400140a002010001e0f002814003219004221002814003219002e1700
-201000281400201000160b001e0f00160b000e0700ff9c38301800160b002010001e0f00
-2010002613000e07000c06002613002010000c0600180c00
-160b00180c00180c00201000140a00160b000e07001e0f00160b002010001e0f00060300
-281400140a000e0700180c00180c000c0600301800160b00201000201000281400140a00
-1e0f00140a002613000e0700201000160b00160b002010000e07003018002010000e0700
-160b00281400180c00140a00261300281400060300060300180c00160b000c06001e0f00
-160b00281400180c00160b001e0f00140a000e0700140a00281400160b001e0f00281400
-140a000e0700060300160b00140a00201000020100180c00160b00140a00201000140a00
-180c00201000201000160b00160b00261300160b00180c00060300140a000e0700201000
-180c001e0f000e0700201000160b00201000160b00160b00180c00160b00160b001e0f00
-160b00060300060300040200201000140a000c0600020100040200140a00ff9932180c00
-160b000e07000603001e0f00ff9c38301800301800160b00201000201000160b002e1700
-3a1d00160b002010000e0700160b00140a001e0f00180c00140a001e0f001e0f000c0600
-2010000e07000e07000402000e07000e0700160b00281400281400281400201000160b00
-160b002010002613002814000c0600160b000e07000e07000e0700180c00201000201000
-180c00160b00140a000e0700160b00140a00140a00180c00140a003018000c0600201000
-281400140a00160b002814000e0700180c002613001e0f002010000c0600281400060300
-2613000e07002613003219002613000e0700180c00180c00180c00040200261300201000
-160b00140a002e17002010002010002613002010001e0f00160b002010002e1700201000
-160b001e0f002010002010002010001e0f00160b00281400ffab56180c00381c003a1d00
-2010003a1d004a25005c2e00542a005229006432004221004020002e1700160b00201000
-ffa4481e0f00140a00160b00160b001e0f00180c00160b000e07000c0600160b00160b00
-140a00060300180c000e0700140a00160b000e07000e0700140a00160b002010001e0f00
-0e07000c06001e0f000e07001e0f00281400201000201000160b00201000160b00180c00
-0402002e1700201000140a000e0700180c00160b00201000160b00160b000e0700180c00
-180c001e0f000e0700180c00160b001e0f000e0700201000160b00140a000e0700160b00
-0c0600140a00160b001e0f00281400381c00201000160b00160b001e0f000e0700160b00
-2613000e0700180c00060300ffa040261300160b00160b00281400542a005229005a2d00
-7038005e2f005c2e003a1d002010002613001e0f00261300ffaa54160b002010000e0700
-0e0700261300261300201000261300160b00201000160b00160b001e0f00301800201000
-2613002010002010000e0700201000160b00160b001e0f00180c002e17000e0700060300
-201000160b00160b002010002e1700140a00180c002613000e0700060300160b00180c00
-1e0f00201000160b002613002010000e07002010000c0600140a000e0700140a000e0700
-301800201000160b00261300160b00180c000c0600281400ff9e3c160b002010000e0700
-180c001e0f002814002e1700281400321900301800402000381c004422004221003a1d00
-3219003018004a25003219002010003a1d00422100160b002e1700422100281400180c00
-2e1700321900301800301800281400ffa54a201000140a00201000020100160b000e0700
-2613000c06002814000c0600201000201000160b00140a00140a00180c00140a000e0700
-140a00160b00160b00160b00160b00160b001e0f00ffa142160b00201000261300402000
-3219004a25004a25005e2f006e3700a25100d26900ce6700b85c00984c007e3f00703800
-4221005c2e003a1d004020001e0f00381c002010000e0700ffa54a0e0700060300201000
-301800201000160b00180c00140a00020100180c00160b00160b000e0700ffad5a0c0600
-2814001e0f00281400180c002010002814004221003a1d00422100321900442200321900
-281400201000180c00321900301800140a00281400ffa64c160b00201000160b001e0f00
-060300281400160b00160b00060300160b00140a00160b00
-160b00281400160b00160b00160b00160b00180c00160b00180c00160b000c0600060300
-160b00160b000201000c0600180c00160b000e07000e0700160b002010002010000e0700
-140a00160b00180c00201000160b00180c000e0700160b002814000603000e0700160b00
-261300201000160b00180c00180c00201000160b00180c000e0700180c000e0700060300
-180c00160b001e0f00180c003018002814001e0f001e0f00201000180c00060300140a00
-0e0700180c00140a000e07000c0600140a003018002613001e0f00201000160b00281400
-261300281400160b00201000160b002814001e0f00261300160b00180c002010000e0700
-0603000603002814001e0f00060300180c00140a000e07001e0f002010002814000e0700
-140a000e07001e0f00160b00201000261300180c00160b00020100281400281400ffa244
-ff9c38ffa040ff9c38ffa142180c00140a000c0600180c00160b000e07000e0700201000
-160b00160b00201000160b00140a000e0700281400201000160b00160b00160b001e0f00
-160b00180c00060300180c002010002814002010000e07001e0f000e07000e0700201000
-261300160b000c06000e07002010000e0700140a00281400140a001e0f00160b00201000
-0e07000603002010001e0f00060300180c000c06001e0f000e0700201000180c00160b00
-160b00140a001e0f00180c003219000e0700060300281400160b00160b00160b00140a00
-160b000e0700160b00201000160b00160b00160b00301800160b00160b002e1700140a00
-281400160b000c0600201000201000201000281400301800261300140a001e0f00201000
-1e0f000603002010000e0700160b000e0700140a001e0f00180c00ffa952180c001e0f00
-321900281400442200301800381c004a25004020003a1d00301800201000201000201000
-ffa952060300180c00140a00160b000e0700140a00060300180c00180c001e0f001e0f00
-0e07000c0600140a00180c00160b00180c00160b00160b00040200160b00201000281400
-281400180c00160b002010000c0600180c00160b000c06001e0f000e07000e0700201000
-1e0f001e0f00160b00201000281400160b00201000180c000c06002010000e0700160b00
-180c001e0f00140a00160b00180c000e07000e07000603002010001e0f00180c00060300
-0c0600160b00060300261300160b00180c00060300180c002010000e0700160b000c0600
-0e0700060300040200140a00160b00ff9d3a0e07002613002e1700201000422100422100
-4a25004c26004020002010002e1700261300201000281400ff9b36180c002613000e0700
-140a001e0f00160b002613001e0f00160b000c06000e0700060300060300160b001e0f00
-0e07001e0f003018002613001e0f00180c001e0f00160b002613001e0f001e0f00180c00
-180c00160b002814000e0700160b000c06002010001e0f002613001e0f000e07000e0700
-0c0600160b00140a00160b00180c00180c00261300140a001e0f00180c00140a00201000
-1e0f00201000261300281400180c00281400180c000e0700ff9b362010001e0f00301800
-140a00281400301800301800301800281400381c002814004a2500381c00522900422100
-4a25004a25004221002814004a2500402000422100422100201000402000321900301800
-180c002010000e0700201000261300ffa448140a001e0f00321900140a002010001e0f00
-180c002613000e0700281400160b000e07001e0f002814000e07000603000e07000e0700
-3219002613000e0700160b00201000201000ff9c38160b00160b00160b00281400281400
-321900261300643200703800904800b25900ea7500ea7500c86400a452009249006e3700
-542a003a1d00201000261300402000281400281400281400ffa54a2010001e0f00201000
-160b000201000e0700160b00160b00160b000201001e0f00261300160b00ff9932140a00
-201000281400301800180c00180c003018003a1d002814002e17003219002010002e1700
-180c00301800180c00140a002613000e0700160b00ff9d3a180c00160b00160b00180c00
-0e0700201000201000180c000402000e0700180c00160b00
-060300180c00180c00180c00160b00261300160b000e07000c0600160b00160b00281400
-0e07002010002814000c06000e0700201000201000140a00160b00201000160b00281400
-0e0700180c001e0f000c06001e0f00281400201000180c003018000e07002814001e0f00
-2010002010000e0700160b00160b00201000160b002010001e0f001e0f00180c001e0f00
-1e0f00140a00160b001e0f00180c00180c00140a001e0f00180c002814000e07000e0700
-201000160b000e07002613001e0f000e07002613002010000e0700201000261300160b00
-160b000e07002814000e0700ffab56ffa448ffa448ffa142ffa244ff9b36ffa040ffa448
-160b000e0700281400281400160b00201000201000201000201000160b00281400261300
-0c06000e07000e0700160b000e0700281400160b002613000c06000e07000e07000e0700
-2814000e0700201000160b00180c00160b00201000381c00160b00201000201000160b00
-0603002010002010000201001e0f00180c00160b001e0f000c0600160b00201000160b00
-180c00160b000e07002e17000c0600160b00140a001e0f00160b000e0700140a000e0700
-281400160b00140a00160b000e0700180c001e0f001e0f002010000201000c06000e0700
-180c00160b00261300160b001e0f00140a00201000160b00160b002e1700160b001e0f00
-180c000e0700160b002010000e0700160b00140a00140a001e0f00140a00201000301800
-1e0f00160b000e07002e17000c0600160b00201000201000160b00160b002010000e0700
-201000160b001e0f00201000201000201000201000180c00281400160b000e0700160b00
-261300201000160b00160b00281400201000261300180c001e0f00ff9932281400261300
-1e0f00281400160b004221002613003a1d002010001e0f000e0700281400160b00ffa64c
-0e0700160b001e0f001e0f00180c00281400261300160b000c06001e0f000603000e0700
-261300140a002814002814000603001e0f002814002010001e0f00201000060300160b00
-1e0f00140a00140a001e0f001e0f00261300160b00180c00201000160b00160b00160b00
-201000160b001e0f000e0700160b000603001e0f00180c00160b00140a000e0700160b00
-0e0700140a00201000160b002814000e0700281400060300180c00140a00140a00180c00
-1e0f00281400160b001e0f002010001e0f000e0700160b00180c002010000e07000e0700
-060300201000180c00201000201000ffab560c0600180c002814004a25004221003a1d00
-4422005229004422003219002613001e0f002814000e0700ffa1420e0700201000180c00
-201000180c002010002814000e07000e07001e0f00180c00160b00160b00160b00160b00
-2010002814001e0f00180c00060300301800160b001e0f002010001e0f002010000e0700
-201000160b00020100140a002010002e1700180c00180c000e0700180c00140a00160b00
-2814000e0700281400160b002010002010001e0f00160b00140a000603002814000e0700
-160b001e0f00201000261300140a00160b00201000ffa64c0e07002814002e17001e0f00
-2814002814002814003219004020003a1d004a25004a25005229004a25004c26005a2d00
-3219003a1d00542a004221003a1d004a25003a1d00381c003018002613002e1700281400
-301800201000201000281400261300040200ff9932160b002010000e07000e07000e0700
-0e07002010001e0f00160b000603000603000e0700160b00140a002613001e0f001e0f00
-160b00140a000e0700301800201000140a00ff9e3c1e0f00160b00301800201000201000
-261300422100643200864300b25900d66b00fa7d00f47a00ce6700aa55008a4500663300
-5a2d00442200301800281400140a00060300180c001e0f00ffa142261300180c00201000
-180c00160b001e0f000c06000e0700160b000e0700020100281400ffa54a160b00160b00
-1e0f001e0f00381c00140a002010002814001e0f00261300381c002e1700301800261300
-281400281400160b00281400180c000c0600ffa244160b00160b002010000e07000e0700
-160b000e07000603001e0f00261300160b00261300160b00
-160b00160b002814000e07001e0f00201000160b001e0f00160b00060300301800201000
-160b001e0f000e0700201000301800160b00140a000e07001e0f000e0700261300140a00
-1e0f00201000180c00140a00180c001e0f00180c00201000160b00160b000e0700201000
-180c002613000e07002010002e1700060300180c00160b002010000e07001e0f00060300
-140a002010001e0f00201000180c00201000180c00160b00281400160b00201000180c00
-2010001e0f00160b00160b002814002010000c0600261300160b001e0f00301800180c00
-261300ffa142ffa244ffaa540e07000e0700201000020100140a00321900180c00201000
-ffa64cffa040201000180c00180c00160b000603000e07001e0f00160b00060300201000
-140a002814001e0f000c06000e0700160b000c0600180c002010002814003018000e0700
-160b00160b000e07000e0700140a00180c00180c00160b00261300060300180c00201000
-201000180c002010001e0f000e0700160b00201000060300201000160b00301800301800
-160b00140a00201000180c000402002e1700060300201000160b00201000160b00281400
-160b002613000e0700261300060300140a000e0700140a00180c000c0600201000180c00
-2e17002010002010001e0f00281400160b000e0700160b001e0f00201000201000180c00
-2e1700160b00180c00160b00160b00201000201000180c000e0700140a000e0700140a00
-2e17001e0f00140a00201000281400321900160b00180c002010000603000e0700201000
-160b00180c000e0700160b00140a00160b002613002010000e07000e0700281400281400
-201000160b002010000e0700140a00160b000c0600201000160b001e0f001e0f00ffa040
-180c002010003219002e1700381c001e0f002e1700261300160b00160b00ff9932140a00
-281400180c002814000603000e07002010000c06001e0f00160b00140a00180c00180c00
-201000160b000c0600180c00180c000603000e0700180c000e0700201000140a000e0700
-160b002613000e07001e0f00160b002010001e0f00060300160b00140a00160b002e1700
-180c001e0f00201000201000160b00060300201000201000160b00160b00201000201000
-160b00060300140a00160b00180c001e0f000e0700060300160b00160b00301800040200
-140a000e0700160b00140a00060300201000160b00160b000e0700160b00160b00160b00
-160b00160b00160b000603000c0600ffa142281400201000281400160b00201000321900
-2613002814002814002010002010001e0f001e0f00ff952a160b000e07000e07000c0600
-180c002010000e0700160b00180c00140a00201000020100180c00140a000603000e0700
-140a000201000603002010001e0f000e0700180c000c0600281400180c000e0700201000
-2010000c06001e0f00160b000c0600180c00160b000e0700180c00201000020100160b00
-1e0f00160b001e0f00201000160b000c06002613000c0600160b00160b00140a00201000
-2613000c06002010002613002613000e07001e0f00ffa244201000281400281400180c00
-2814003a1d003219002e17004221003a1d003a1d00422100542a004a25005c2e00542a00
-4422005c2e004221004221004a25003219004422004422003a1d004221001e0f00281400
-381c00301800281400180c000e0700201000ffa142180c00160b00180c000e07000e0700
-180c00160b000603001e0f00140a000e07000201000603000c0600160b00140a00160b00
-0e0700140a00020100160b00201000201000ffa64c140a002010003219002e1700381c00
-2e17004c26006e37009e4f00be5f00d86c00ff8102f67b00c663009c4e007e3f006c3600
-5a2d00422100321900180c002e17000e0700281400201000ff9932160b000c06000e0700
-160b000c06002814003018002613000e07001e0f00180c00201000140a00ff9d3a160b00
-2010001e0f00261300140a00201000281400201000281400281400261300180c00281400
-201000180c002613002814000e0700261300ffa952201000160b002e17000e07002e1700
-1e0f00160b001e0f00060300180c00160b00261300180c00
-180c00140a00180c00180c001e0f002010000e07000e07002e1700160b00160b00140a00
-180c00301800321900180c00160b00180c001e0f00180c00160b000c0600201000301800
-0c06001e0f00060300160b00160b002e1700201000040200160b00160b000e0700160b00
-281400201000160b00140a000e07000e07001e0f00160b002010000c0600180c00060300
-140a00060300201000180c00160b000e0700140a00160b000603002010000c0600180c00
-201000160b00201000140a00160b000e0700201000160b00160b00180c001e0f001e0f00
-ffa448281400261300201000180c002814001e0f002814003219003a1d00281400281400
-321900281400ff9d3a2010002010001e0f001e0f00040200160b00261300201000060300
-0e07001e0f00261300160b000e0700160b00281400180c00180c000e07002010000e0700
-140a000c0600160b00261300281400160b00261300160b00160b00160b000e0700160b00
-1e0f00160b000603003018000e0700140a00160b00201000160b000e0700201000160b00
-0e07000c06002010000e0700060300180c001e0f00281400201000160b002814001e0f00
-201000180c002e1700160b002010000c0600140a000e0700160b001e0f001e0f001e0f00
-160b00180c000e0700160b000e07001e0f002613001e0f000e07003a1d00160b00201000
-180c00180c00160b000603000e07000e0700180c000e0700281400160b00160b001e0f00
-0e0700281400160b000e0700180c00140a002010002010000e0700160b000c0600261300
-0c0600060300201000180c000c0600281400060300201000140a00160b00201000160b00
-140a001e0f001e0f00160b00160b00160b00140a00160b002010000e0700060300261300
-ff9e3cffa040160b002e1700301800060300261300160b00ff9b36ff99322010000e0700
-180c00140a002010000e0700201000140a000c06000c0600160b000e0700201000261300
-160b00180c000e0700160b00381c00160b000402000e0700160b000c06002010000e0700
-140a00160b00140a000e07000e0700180c003018000c0600180c00281400060300140a00
-1e0f00180c00201000160b00140a00140a00180c00201000180c002010001e0f000e0700
-0603000e0700180c000c06000e0700160b000e07000603002010000e0700160b00160b00
-201000160b000e07000603000e0700140a000c06000e0700160b00180c000e0700140a00
-2010000e0700261300180c000e0700201000ffa2440e07000e0700201000201000180c00
-261300180c002814002814002814002613001e0f00ffa54a160b00281400160b001e0f00
-0c06001e0f00180c00160b00160b00180c000c0600180c00160b002613002814000e0700
-140a00040200201000281400281400281400180c00160b00201000160b001e0f00160b00
-2e1700180c00301800201000160b00281400201000201000180c00020100160b002e1700
-140a00140a00160b00160b00140a00040200160b001e0f002e1700180c00160b00281400
-0e07000e0700261300180c00140a00201000160b00ff99322e17000e0700281400321900
-3a1d00381c002e1700381c00402000542a005c2e005c2e004a25005e2f005c2e00663300
-522900663300643200643200643200522900422100402000542a003a1d00301800301800
-301800261300301800301800281400180c001e0f00ff9c38160b00180c000e07001e0f00
-140a00160b000e0700201000160b00160b002e17002010000c0600180c00140a00180c00
-180c00160b00160b00060300140a00201000ff9830281400201000180c00301800301800
-4221006432008a4500884400c86400d86c00fa7d00e47200be5f00984c007038005a2d00
-422100422100301800261300201000261300301800ffa142160b00160b000c0600140a00
-2e17000402002814000c0600180c00140a00160b000e07000e0700160b00ff9d3a0e0700
-140a00160b00180c00160b001e0f00261300160b002e17002010002613001e0f000e0700
-180c00180c000e0700160b00160b00ffa142160b002010002814002010002010000e0700
-1e0f000e0700140a002010001e0f002e17000e07000e0700
-201000201000160b002613000e0700261300060300160b00160b00160b00060300140a00
-060300281400140a001e0f00201000180c001e0f00180c00140a00160b00201000160b00
-1e0f00281400140a00160b00160b00201000160b00140a00201000281400180c00180c00
-180c00261300180c000c0600160b002814002613002010001e0f001e0f002010000c0600
-180c00140a00160b000603000e0700201000160b00201000180c00201000180c00160b00
-140a002e1700160b00160b001e0f000e07002010001e0f001e0f00140a00ff9e3cffa244
-201000160b002010002e1700180c002010002010002e1700281400261300180c00281400
-2e1700160b00140a00ff9b36180c00201000180c00201000180c000e0700060300180c00
-160b001e0f00140a00160b00160b000c06002010002010000c06001e0f001e0f00180c00
-180c002613000c06001e0f00201000160b00201000160b00160b002010002010000c0600
-180c00281400180c00140a001e0f00140a002814001e0f002e1700160b00160b000e0700
-2010000e0700140a000e0700140a001e0f000e07001e0f000e07000e07000c0600301800
-0c0600160b00201000201000160b000e0700180c00140a001e0f00160b00160b00140a00
-160b00180c00261300180c002010000e0700180c000e0700201000180c00281400180c00
-160b002010000e0700281400140a00060300160b001e0f00301800180c00160b00140a00
-201000201000201000180c001e0f00060300281400201000281400201000160b00201000
-180c000e0700261300160b00180c001e0f00160b002010000e0700261300180c000e0700
-160b00160b000c0600160b00160b000e07002010002010001e0f00140a001e0f00180c00
-1e0f003a1d00ffa54aff9b36ffa040ff9932ffa54affa54a201000140a002613001e0f00
-201000281400261300281400201000201000180c00180c00180c000c06000c0600201000
-180c001e0f000e0700160b00160b00060300180c00140a00140a000e0700180c000e0700
-0e0700140a001e0f001e0f00261300060300281400060300140a002010000c0600201000
-180c00201000160b00201000201000160b000e07002814000e0700140a003018001e0f00
-201000180c00140a001e0f00140a00180c000c06002010000c0600160b00201000201000
-2010000e0700160b001e0f000e07000603002613003018000c06001e0f00201000140a00
-1e0f000c06002613002814001e0f00140a00180c00ffa54a2e1700201000140a000e0700
-201000261300281400201000261300ff9e3c2814001e0f00160b00160b000e0700060300
-1e0f002010000c0600201000160b00140a000e07000e0700060300201000180c00160b00
-1e0f001e0f00180c00160b001e0f002613001e0f000e07000e0700160b00201000140a00
-2010002613001e0f000e07000e07003a1d001e0f00140a000e07000c0600201000160b00
-0e0700201000180c000e07000e0700060300160b00180c00160b001e0f00180c00180c00
-281400160b00180c00261300201000180c00ffa244160b00201000201000201000261300
-4a2500301800422100422100522900542a005c2e00643200643200663300763b00703800
-8040007e3f00763b006e3700643200542a00442200542a004020004a25004a2500381c00
-301800201000201000160b002814001e0f00301800ff9b36160b00180c00201000140a00
-0e0700160b000603000c0600160b00160b001e0f00140a000e07000e0700160b00160b00
-160b000e07000e07000e07000c0600ffa040201000040200180c002010002814003a1d00
-5229004c26007e3f009c4e00b85c00d86c00e07000c66300aa55008a4500643200402000
-321900180c00281400281400281400060300060300ffa2442814000e07000e0700160b00
-160b00180c000402002010001e0f00180c000e0700281400201000180c00ffa448180c00
-2010000e07001e0f001e0f00160b003018002010002814000e0700160b00281400201000
-160b00201000281400281400ffa0402010000c0600060300201000281400160b00160b00
-160b001e0f00160b00140a002010001e0f000603000e0700
-0e0700160b00180c00060300180c00140a00140a00180c000e0700040200160b00160b00
-180c000e0700301800160b002814000e07002e17002010002613000e0700140a00140a00
-160b00201000281400160b00201000261300281400201000281400201000160b00281400
-281400060300281400140a00160b00140a00160b00180c00160b001e0f00160b00160b00
-140a002010001e0f00201000180c002e17000e0700140a000e07002e17001e0f000e0700
-160b00060300180c00140a00140a002814002814002613002010001e0f00201000201000
-2010002e17001e0f003018001e0f00281400301800281400281400301800261300160b00
-3018002814001e0f00261300ffa448140a00060300160b00140a00160b00140a00201000
-281400180c002613000e0700201000140a002010002010000e0700201000060300160b00
-160b00040200201000180c000e0700160b00180c002010002010002010000c06000e0700
-2010000e07000603000c0600201000140a00281400160b002613000e0700160b00160b00
-140a00201000201000160b00281400180c00201000040200281400160b00201000160b00
-160b00140a00180c001e0f00201000160b00180c002613000e07001e0f00281400040200
-0e0700160b00180c000603000e0700060300140a00281400261300201000160b00261300
-201000160b00140a000e07000e0700180c000e0700201000160b00160b000c0600160b00
-281400160b000c06000e07001e0f00160b00160b003018000e07001e0f000e0700060300
-2613002613000e0700180c00201000160b00160b002814001e0f000e0700180c00281400
-0e07002613000e07000e0700201000160b002e17001e0f000e07000e0700180c00201000
-2010002010000c06000e0700160b00180c00201000281400160b00201000261300060300
-160b00201000180c00201000160b001e0f000e07000e0700140a002010002010002e1700
-1e0f00160b001e0f00140a001e0f00180c00180c00060300020100140a00201000180c00
-160b000e07000e07002010001e0f003018002814002814000e0700140a000c0600160b00
-140a00201000180c000c06000c0600140a000603001e0f002010000c0600160b00301800
-180c00180c000c0600180c00160b001e0f000e07000e0700140a000603000e0700140a00
-0e0700060300180c00140a00160b000e07000e0700160b00201000201000281400160b00
-180c000e0700180c003018002e1700140a002010000e0700ffa54affaa54261300180c00
-2814001e0f002010001e0f00ffa142180c000603001e0f00160b00201000201000201000
-140a000603001e0f00261300180c002010001e0f00060300281400201000201000261300
-0e0700160b00160b000e07000e07002010001e0f000e07002010001e0f00160b00060300
-0e07001e0f000e0700160b002e1700201000301800201000140a00201000261300180c00
-0c06001e0f000c0600180c001e0f003018002814000e0700160b00140a00180c00180c00
-201000140a00160b00381c002e1700140a00ffa74e2814002010000e0700261300301800
-3a1d002613004221005a2d00542a005c2e004c2600643200763b00663300864300804000
-7e3f00884400763b009048007e3f006c3600643200542a00542a004a2500422100281400
-4a2500281400160b00281400301800180c00261300180c00ffa448201000201000261300
-040200140a00180c000603002010002814000e07001e0f00140a00160b00140a000e0700
-0e07000603000e0700201000060300ff9b362010002613002814002010002e1700261300
-4221005e2f006e3700864300b25900be5f00ce6700b25900984c006c3600542a004a2500
-3018003a1d00321900281400160b00160b000c0600ff9e3c140a002010001e0f001e0f00
-160b000c0600160b000e0700160b00160b000e0700160b000e0700160b00180c00ff9b36
-060300201000261300160b00040200160b00160b00201000140a00020100140a00160b00
-281400160b00160b00ffa448ffa040160b00020100201000160b00160b00160b00180c00
-140a002010000e0700180c00201000160b00160b00201000
-281400140a000e0700180c001e0f000e0700321900160b00201000140a001e0f00180c00
-1e0f002814002010000e0700160b00201000140a00160b002010000e0700160b00201000
-2010001e0f002010002010000201000e0700160b001e0f000e0700180c000e0700160b00
-140a002010000c0600201000160b00140a00201000201000140a00140a00180c00040200
-160b002e17002814002010001e0f00281400160b002613001e0f00140a00261300180c00
-0e0700160b00160b00301800180c000e0700160b00160b00ff9c38281400160b00281400
-2010003018003018002e17003219003018002814003a1d003018003018004221002e1700
-321900201000281400281400201000ff9e3c140a00060300201000160b001e0f00261300
-0e0700160b00140a000e0700160b00180c000603001e0f00160b000c06002010000e0700
-180c00261300301800160b002613002010000c06001e0f00201000201000180c00180c00
-1e0f00160b00140a000603002613000c0600281400180c000e0700180c000e07001e0f00
-140a00160b00201000180c003018002010002010000c06003018000e0700060300180c00
-160b000e0700160b00140a00ff9932ff9c38ffa448ffa9521e0f00201000281400160b00
-140a00060300261300160b001e0f00180c00201000140a000e0700160b000603001e0f00
-160b000603001e0f000603000e0700160b00201000160b002e1700180c00140a00201000
-0603000c0600160b00180c00281400160b001e0f000e0700020100201000160b00180c00
-0c0600160b00180c00180c000e0700180c00201000201000160b000e07002010001e0f00
-140a00201000261300160b002010000e0700301800261300201000160b001e0f00281400
-1e0f00281400160b00160b000e0700160b002613000603000e0700261300201000281400
-180c00160b00180c00180c00180c001e0f00160b00201000281400140a00060300201000
-1e0f000603000e0700160b000e07000603002010000c0600140a00281400160b00201000
-140a001e0f00180c002613000e0700160b000c0600140a000c06000c0600160b000e0700
-0e0700160b00060300201000180c00040200201000160b000e0700160b000e0700180c00
-140a002010000c0600180c00140a002e17000e0700180c00180c00160b00060300201000
-2010000e0700201000180c000e0700140a000c0600140a00180c00160b00160b00281400
-0e0700060300180c001e0f002010002010001e0f000201001e0f00180c00ff9c38ffa142
-ffa142ff9932ff9d3affa2442010000e07001e0f00201000201000201000261300040200
-160b00201000040200140a00160b00060300160b00160b00261300140a002010000e0700
-1e0f00281400201000160b00261300160b001e0f001e0f001e0f002010000e0700160b00
-140a000c0600160b00261300160b00261300201000201000140a001e0f00160b00060300
-140a000e07000603000603000c06001e0f00140a00060300160b00160b00201000301800
-160b002613002010000e07000e07000e0700ff9b36160b00201000180c00201000261300
-3018003018004020004422006c3600522900763b00703800864300763b009048009a4d00
-9a4d009a4d009a4d00984c008844007e3f00763b007038005c2e004a2500422100422100
-381c003018002e17002814002010002e1700261300261300ff9c38140a000e0700060300
-140a00140a00140a000e0700180c000c0600020100160b000e0700160b000603000c0600
-2010001e0f000c06000c0600261300ffa54a160b00261300160b00201000301800422100
-4c2600663300703800864300a25100984c008643007e3f00884400663300542a004a2500
-4221002010002e1700140a00201000160b00ffa448201000160b00160b00281400160b00
-0c06000c0600160b002010000e0700261300160b00201000060300261300201000281400
-ff9d3a2814000e07003a1d002010001e0f00160b00201000140a002010000c0600261300
-140a000e0700ffa64c160b00281400201000180c00140a00261300281400201000201000
-180c00140a00201000160b002613002010002010001e0f00
-180c00140a000c0600160b000603000e07002010002e17002010002010000c06001e0f00
-1e0f000e0700060300140a00060300060300160b000603002e1700160b00201000180c00
-0402002613002010000e07000e07002010001e0f001e0f001e0f001e0f002010001e0f00
-2010000c0600180c002010000c0600160b000e0700160b00180c00140a001e0f00201000
-0603002010002814001e0f00160b00160b00180c00281400140a001e0f00040200160b00
-160b00180c00140a00160b000c0600060300261300160b00ffab56160b002e1700180c00
-2e17003018003a1d004221003a1d003a1d007e3f004422004c26004422003a1d00422100
-3a1d002814001e0f000e0700160b00ff9e3c261300160b00180c00201000160b00201000
-060300281400201000160b000e0700160b002010000603000603002613002010000c0600
-160b00160b000e07001e0f001e0f001e0f002613000c0600180c00160b00180c00140a00
-140a00201000160b000c06001e0f00160b000e0700201000160b00180c00281400160b00
-0c0600160b00060300160b00180c002814002814000402000c06002e1700160b00180c00
-160b00160b00ff9c38ff9932180c001e0f000e07000c0600ffa448ffa54aff9d3a1e0f00
-1e0f002613002010002814001e0f00160b00140a00160b002010001e0f00160b001e0f00
-281400160b001e0f00180c00180c00201000140a000e0700060300140a000c0600160b00
-160b001e0f00140a00201000160b002814000c06000e07000e0700261300180c00281400
-140a00160b00140a002010002010002010001e0f00180c00180c002814002010000e0700
-201000180c002010002010001e0f00140a00140a00140a00281400201000160b001e0f00
-4422000e0700060300201000140a00160b000e07003018000e0700201000261300281400
-1e0f00160b00160b002010001e0f00060300180c00180c000e07000e07001e0f00160b00
-160b002e1700140a00160b001e0f00160b00160b00180c00160b001e0f000e0700160b00
-060300040200160b00140a00160b000c06001e0f00140a00261300180c00180c001e0f00
-040200201000160b000e0700180c001e0f00160b00160b00180c000c0600060300140a00
-281400301800140a00140a001e0f00140a002010000201002010000c0600160b001e0f00
-140a00160b00140a00160b000e0700180c000e0700140a000c0600060300201000160b00
-201000140a00160b00160b00180c00201000040200180c00160b00201000160b00140a00
-2814002814003018000e07000e0700180c003018002814002010002814001e0f001e0f00
-140a00160b00160b000e07000603000e0700040200160b00281400201000180c00160b00
-2010002010000c0600180c00261300160b002814002010002010000e0700201000160b00
-140a00281400160b001e0f00140a00261300140a00201000160b00201000201000160b00
-160b000e0700160b001e0f00160b00180c00160b00180c000201001e0f00140a000e0700
-180c00140a00160b00281400201000160b00ffa040201000281400160b002010003a1d00
-3a1d004020004020004a25005229005c2e00703800703800783c00904800a45200ca6500
-d86c00c86400c66300c86400c46200aa5500984c008643006e37004c26005a2d00422100
-2e17003a1d002010002613002e1700301800201000301800ffa142301800261300160b00
-060300160b00180c000c06001e0f000603000e0700060300180c00140a000e0700261300
-180c00140a00160b00160b00160b00ffa4480e0700201000261300261300301800321900
-4c26006c3600763b00763b00984c00884400864300763b00783c006633004a25003a1d00
-2e1700160b002e1700201000281400160b00ffa64c201000201000180c001e0f00301800
-160b00261300180c001e0f00160b00281400180c00201000160b002e17000e0700180c00
-140a00ffa448ffa0400e07002010001e0f00160b00160b002613002814000e07000e0700
-ff9e3cffae5c201000180c00180c00060300160b00160b000e07000e0700160b001e0f00
-160b002613002010001e0f00201000201000040200281400
-1e0f000603002613001e0f002e17000e0700140a00201000201000442200140a000e0700
-180c00180c00140a00140a000e07001e0f002613001e0f00160b001e0f002e1700201000
-2e17000e07000e07001e0f00140a001e0f00281400281400140a00180c00160b00180c00
-160b00160b00201000201000201000201000140a00180c000c0600160b00201000281400
-0c0600160b00160b00160b00281400160b00160b000e07000c0600281400281400160b00
-140a002010000e07002613000e0700201000281400ffa142180c002814002e1700281400
-2814003a1d003a1d00542a005a2d005c2e007e3f006633006633005a2d004a25004a2500
-3a1d00281400201000160b002e1700301800ff9e3c201000140a001e0f00180c00201000
-160b00160b00140a00180c000e0700140a000603000e07002814002814000e0700160b00
-2613001e0f00160b00140a00140a00160b001e0f000e07000e07002e17001e0f00201000
-0c06000603000e07001e0f00261300201000140a002010000c0600160b00180c00140a00
-281400140a000e07000603000e0700180c00301800140a00160b00140a00160b00180c00
-ff9d3aff9e3c160b00140a00201000201000160b00261300201000160b00160b00ff9e3c
-ffa64c1e0f000c06002613002010002010001e0f002010000e0700321900160b00281400
-160b000c06000e07002613000e07000e0700040200281400180c002e17001e0f00261300
-2814002814000e07000e07001e0f00180c00160b001e0f00281400201000180c00201000
-201000201000160b00140a000402002613001e0f00060300140a00160b00020100180c00
-201000180c00261300140a00281400201000160b000c06000c06001e0f000c0600180c00
-2010000201001e0f00160b002010001e0f000e0700180c00140a00201000160b00160b00
-160b001e0f00160b00140a00180c00060300160b00180c002613000e07002010001e0f00
-4a2500160b000c0600160b00160b001e0f000e07002613001e0f00201000180c00201000
-1e0f00201000160b000c06002010000603002010000e07000c0600160b00140a00160b00
-0e0700180c00160b00160b000e0700160b00180c00040200281400281400160b00281400
-201000180c003018001e0f00160b00140a00060300160b00140a000e0700160b00281400
-261300160b000402001e0f002613000e07000603000c06000201001e0f000e0700201000
-2010002010002010000e07001e0f00160b00201000261300201000060300160b00180c00
-281400201000180c002010000e0700140a000603000603002613000e0700140a000e0700
-160b00201000160b000e0700140a001e0f000e0700180c00201000180c00160b001e0f00
-2010001e0f00140a00180c000e0700201000160b002010001e0f000e0700201000140a00
-261300180c00160b00140a00140a00160b00201000201000140a00160b00160b000e0700
-0e07000e07001e0f00160b00160b00180c00160b00261300140a00180c00180c00180c00
-160b00160b000e0700180c000c0600ffa1422010000e0700201000281400381c003a1d00
-3219004020003018004c26005229005e2f00783c007e3f009a4d00aa5500c46200d26900
-f47a00d86c00e87400d86c00e27100b85c00b259009c4e00663300663300542a004a2500
-4020004a25002814002814002e17002814002613001e0f001e0f00ffa448281400160b00
-2010000e07000e0700140a00160b00160b000e07001e0f00160b002010001e0f00060300
-060300201000160b000c0600060300ff9932261300201000281400180c002814003a1d00
-4422006432006e37007e3f007e3f007e3f00783c00643200542a004c2600442200281400
-2814002e17000c06002010000c0600ffa4482010002e1700261300160b00201000261300
-140a00281400160b001e0f00140a00160b000603000e07001e0f00160b001e0f00160b00
-160b000e07000e0700ffa244ffa952ffa54aff9830ffa448ffa142ff9932ff9c38ffa952
-1e0f00160b000e0700160b00140a00160b00160b00201000160b000e0700160b00160b00
-1e0f001e0f001e0f00180c00301800160b00201000201000
-180c002010001e0f00140a000c0600261300180c000e0700180c00180c00201000160b00
-160b002613000e0700140a00201000180c00261300281400140a000e0700261300180c00
-201000201000180c00201000160b00201000201000140a000e07002010000e0700201000
-0c06002814000e0700261300160b00201000201000180c000e0700201000160b00140a00
-160b00422100140a002010001e0f00201000160b002e1700160b00281400140a00060300
-2613002010001e0f00140a002613002e1700261300ff9d3a160b00281400160b00301800
-4a2500381c005229005c2e00763b00984c00904800984c00864300763b004a2500522900
-542a001e0f003018000c0600261300201000ffa4481e0f00160b00281400281400160b00
-160b00180c00060300160b002010002010003a1d00261300140a00160b001e0f000e0700
-0e07001e0f00180c00160b002010000e0700160b000201000e0700301800140a00160b00
-2613000201000c06002814000e0700140a00201000020100160b00060300160b00160b00
-0e07001e0f002613001e0f00140a00301800160b00201000281400160b002010000e0700
-ff9c380e07000e0700160b00180c003219003018001e0f00201000281400281400060300
-0e0700140a00060300160b00201000060300160b00180c002814000e0700201000180c00
-261300060300140a00160b002613000e07000e07000603000c0600201000281400160b00
-281400180c00180c002010000603002010002814000e0700180c000c0600180c00140a00
-180c002814000c0600201000261300140a00160b00160b001e0f00140a001e0f00060300
-1e0f00160b00180c002010000e07000e0700402000160b00201000160b00140a001e0f00
-2613001e0f003219002010002010000e0700201000160b001e0f00160b00201000060300
-2613000e0700160b000e0700301800201000281400201000160b000e0700140a00160b00
-0c0600160b00180c00160b000e07002814000e07000e0700160b000e07001e0f00160b00
-160b001e0f001e0f00180c001e0f002814002010002814000402002010000e0700201000
-1e0f00160b00020100180c000201001e0f00140a00140a000c06000e0700160b001e0f00
-140a00201000160b00060300180c001e0f00180c00160b001e0f00180c00140a00160b00
-2613001e0f00261300201000140a00201000160b00201000201000180c000e0700160b00
-0201002814000e0700180c00040200261300180c00160b00261300140a00301800160b00
-160b00201000180c000e0700201000180c00201000140a00180c00201000201000140a00
-180c000e07001e0f00180c00180c00140a00281400160b002010000c06001e0f000c0600
-1e0f00160b000e0700160b00140a002010002e1700180c00060300160b00160b00281400
-160b00261300180c000e07002e17002814000e0700160b00160b002814002010001e0f00
-160b00160b00160b00160b00180c00140a00020100201000140a00140a00060300140a00
-2613000e07000e07002613000e0700ffa142180c000e07003018001e0f003219002e1700
-381c004020004a25004221005c2e004221007038007e3f00b45a00b85c00ec7600fe7f00
-ff952aff9326ff9326ff952aff8306d66b00ac5600a452007e3f00763b005a2d004c2600
-3a1d003018003a1d00281400261300301800301800261300160b00ffa1421e0f00160b00
-160b000c06000e07000e07000c0600160b00140a000c06000e0700020100180c000e0700
-0603000c06002010000e0700ff9932160b00261300160b002010002010003018004a2500
-5229006e3700763b00783c006c36006432006432006e37005c2e005229004a25004a2500
-261300281400281400281400281400ffa74e0e0700201000160b000c06002010001e0f00
-0e07000e07000c0600201000160b00281400160b000e0700180c00020100160b00160b00
-2814000e0700201000261300180c00201000160b00201000140a000c06000e07000e0700
-201000180c000402002010000e0700020100160b000e07001e0f00201000201000180c00
-201000160b002613001e0f001e0f001e0f000c0600180c00
-140a001e0f00160b00180c00160b00160b000e0700261300281400160b00160b00301800
-261300201000281400160b00201000140a00160b000e0700201000160b00160b00140a00
-160b00180c002010002e17002010002010002010002010003018002010000e07000e0700
-1e0f00261300201000180c00160b002010001e0f00140a00201000261300160b00160b00
-2010000e0700160b00281400160b00180c00160b000c0600160b00040200281400160b00
-180c000c0600140a00160b00201000180c00ffa952201000201000201000201000281400
-422100542a004c2600904800b25900be5f00ce6700d66b00ac5600984c00783c00542a00
-442200301800301800301800301800281400ffa1420e0700160b002010002613000c0600
-0e07000e0700160b00160b000402002613000e0700281400160b00180c00160b000e0700
-140a00180c00140a00140a00160b000e07002010002010002814002814000e0700060300
-1e0f00160b000c0600160b000e0700201000140a00201000140a000e0700180c00201000
-180c00201000261300160b00160b001e0f00140a000e07000c0600160b00160b00ff9d3a
-261300281400160b00160b00180c00321900201000160b001e0f00201000140a00261300
-2e1700281400ffa040301800180c00160b002010002613000e0700160b00140a00180c00
-060300140a001e0f00321900140a00261300180c00180c00020100160b00160b00180c00
-381c003018000e0700160b00180c00201000201000040200402000160b000e0700180c00
-160b00160b00160b00160b000c0600160b001e0f002010001e0f00140a000c0600160b00
-160b00140a000e07000e0700180c00160b00160b001e0f00160b000e07001e0f00261300
-160b002e1700160b00201000160b00281400201000160b002613001e0f00160b00281400
-2613002010000e07001e0f00140a002613000603000c06002814000e0700160b00201000
-180c00201000281400160b001e0f00160b00160b00140a00160b00261300201000140a00
-281400281400160b00180c00261300140a00140a00201000140a000e0700060300201000
-160b000e07001e0f00201000281400201000160b00140a00160b002613000c0600140a00
-160b00140a00160b00160b00160b00160b002010000c0600201000140a00180c003a1d00
-2e1700180c00160b000c0600ffaa54ffa142ffa64cffa142ffa244160b00160b000c0600
-160b000e0700160b000e07000e0700140a00160b000e0700281400201000160b00201000
-0e0700140a00160b000e0700160b00160b000e0700180c00180c00180c00180c00261300
-160b002010000e0700180c00160b00160b002e1700140a000c0600060300160b00201000
-2010000e07002010000e0700201000140a00140a002814000e0700160b00281400160b00
-1e0f002010000e07000402000603002010002e1700060300160b00160b00160b00140a00
-1e0f000e07000c06001e0f000603000e07001e0f000e0700140a00160b000201000e0700
-2010000e0700040200160b00201000ff9e3c160b00201000201000180c00301800281400
-3018004a2500301800422100542a005c2e00763b009a4d00b85c00e47200ff8a14ffa64c
-ffbb76ffbc78ffc488ffbc78ffa142ff8f1ee47200bc5e00984c006c3600643200703800
-4221004a2500301800381c001e0f00422100201000281400180c00ffa54a261300201000
-1e0f00281400160b002010000402002e1700281400160b00160b00201000020100060300
-2010002010000e0700160b00ff94280e07002814002010002010002e1700301800422100
-5c2e00663300763b006c36006e37004a25005a2d00542a004c26004c26004c26004a2500
-3018002010000e0700140a002e1700ffa54a160b002e1700301800160b001e0f00180c00
-201000140a00160b00160b001e0f000e0700160b001e0f00160b000c06000603002e1700
-140a001e0f00281400160b00160b00261300180c00201000160b002e1700261300180c00
-160b002010001e0f00160b00201000160b00201000201000160b00140a00160b00160b00
-0c06001e0f002814001e0f00180c00201000180c00180c00
-140a00160b00140a000603002814002814000e0700180c001e0f00160b00261300281400
-0e0700180c00201000261300160b00160b00180c00201000160b000e07000c0600160b00
-180c001e0f00261300160b000e07000e07001e0f00180c00261300281400201000201000
-201000160b002010000c06000e0700180c000c06000c0600201000020100180c00140a00
-2814001e0f00281400160b00180c00201000140a002010000e0700160b00180c001e0f00
-201000160b000c06000e0700201000160b00ffab562010000e0700201000301800402000
-4a25004c2600703800a25100f27900ff8810ffa54aff9326f27900a452007e3f005a2d00
-4a2500442200281400281400301800261300ffa64c140a00281400160b002010001e0f00
-180c000e07000e0700201000281400201000160b000e0700201000160b00201000160b00
-0e0700160b000c0600060300140a002814000e0700160b00160b000e0700201000180c00
-2e1700180c00060300180c00160b00140a00180c00180c00180c00201000160b00160b00
-2010001e0f00381c00180c002814000603000e0700060300201000160b000e0700ffa040
-201000160b002814002814000603001e0f002613001e0f00201000201000201000160b00
-180c000e0700160b00ffa448140a00261300160b00180c00180c00180c000603000e0700
-201000160b00160b00160b000402000e07002010000c06002613000e07002e1700060300
-2e17002010002010001e0f000402001e0f000e0700160b002814002814001e0f00281400
-180c00201000140a000e0700160b001e0f00160b003018000e0700160b000c0600201000
-281400140a00160b00261300201000160b00060300160b002010000c0600160b00180c00
-0e07001e0f00140a001e0f00180c00180c00160b00281400201000140a00140a00180c00
-281400160b000e07000e0700261300160b00060300140a00060300160b00180c00060300
-180c00301800040200261300160b002010000e0700160b00160b00140a00180c00201000
-180c000603001e0f00060300040200160b000603000e0700201000261300140a00180c00
-2814000603001e0f00180c000e0700180c002010000603001e0f00180c00201000201000
-140a00180c001e0f00201000160b00160b002010000e0700261300140a00180c00160b00
-180c00180c00ff9b36ffa1420e0700160b00140a000e0700301800ffa040ffa040201000
-2814002e17001e0f002613002010002814000e0700261300180c00140a00281400281400
-2613000c0600160b00281400281400160b00180c00180c000e0700160b00180c00160b00
-1e0f000e0700140a001e0f00140a00040200281400180c000e0700261300261300201000
-1e0f00160b000e0700160b00201000160b000e07002613000201000e07000e0700180c00
-2010000c0600201000060300201000201000180c002e1700201000281400140a001e0f00
-040200160b000e07000e0700261300160b000c06000603000e0700281400160b00160b00
-160b000e0700160b00281400140a00ff9b36201000160b003219002814002e17002e1700
-3219004a25004221004a25005229005a2d00884400984c00d06800f07800ffa040ffcc98
-ffe7cefffcf8fffcf8ffebd6ffc890ff9c38ff9020c46200c66300763b007038005c2e00
-4c26004c2600542a003018003a1d002e1700321900301800261300ff99320603001e0f00
-201000040200160b000e0700281400060300040200140a00140a000e07000c0600160b00
-0e07000c0600160b000e0700ffa0400e0700160b00281400201000281400281400381c00
-542a005c2e006c3600542a006e37005a2d00542a004a25005e2f004a25004c26003a1d00
-301800201000201000160b00ffa142201000201000140a001e0f00321900261300201000
-2010000e07000e07000c0600201000140a001e0f000e07001e0f00180c00160b00160b00
-160b00201000160b001e0f000603001e0f00160b00160b001e0f00201000180c00261300
-0e0700201000201000140a00201000140a00160b00140a00140a001e0f00140a00160b00
-261300180c00020100180c00160b00160b00201000201000
-1e0f002010000e07000e0700160b00060300180c00301800140a00180c00140a00160b00
-160b002010000c06001e0f000e0700160b00060300160b000603001e0f00160b00201000
-0e0700180c00180c00160b001e0f00160b00160b00160b00180c00281400160b00160b00
-1e0f001e0f00160b00180c00201000140a000c06000c0600140a000e0700180c00201000
-1e0f001e0f00060300140a00281400140a00140a00160b000e0700261300160b001e0f00
-2814000603001e0f00160b001e0f00180c00ffa54a180c002010002814003219004a2500
-522900783c009a4d00de6f00ffad5affc488ffd5aaffbb76ff8b16b85c008643005c2e00
-4a2500402000321900180c00261300261300ff9d3a160b00160b00201000160b00201000
-2814002010002010000e0700160b00160b00140a000e0700201000281400180c00160b00
-201000160b000e07000e0700160b00180c00201000020100261300160b00160b000e0700
-040200020100261300160b002e1700201000140a000c0600180c00201000201000180c00
-160b00180c00261300261300160b00180c00140a000e0700140a00160b00ff9932180c00
-201000160b00060300140a000e0700301800281400201000301800201000201000140a00
-140a002010000e0700ff9c38180c00140a003219001e0f00281400160b00040200160b00
-0e0700140a00160b00180c00180c00201000160b001e0f000e0700201000201000160b00
-060300160b000e0700180c00160b00201000160b00201000160b000e07002010001e0f00
-2010002010000c06000e07000e0700180c00261300201000261300160b00180c000c0600
-0e07002613000e0700180c00180c00160b00140a000e07001e0f00060300201000060300
-201000180c002010001e0f00040200160b00160b00160b00281400160b001e0f00180c00
-281400160b002e1700160b00160b00180c00160b00160b001e0f00160b00060300180c00
-2010000e07000e07001e0f000e07000e0700201000140a001e0f001e0f00160b001e0f00
-301800180c00180c00140a000603002613000e07000e07000e0700261300160b000c0600
-160b00160b000e0700140a00060300160b00160b00160b000e0700301800160b00060300
-140a00060300201000160b000c0600180c000e0700140a000603000e0700140a00160b00
-160b00ff9d3a160b00201000201000321900201000201000201000201000160b00ff9c38
-160b00140a000603000e07002010000e0700020100140a00160b00281400140a00301800
-0e07002613000e0700301800201000261300140a000e07000c0600261300201000201000
-2010001e0f002613000c06000e0700281400060300281400180c00140a002e17000e0700
-180c00160b00160b00180c00160b002613000e07000e07000e0700201000201000201000
-201000060300160b00140a00160b000201003018002613000e0700140a000603000c0600
-281400180c00160b002010000603000e07001e0f00160b000e07000e07000e0700160b00
-2010000e07001e0f00160b00060300ff9e3c281400201000160b00160b003018003a1d00
-3219004020004a25004c2600703800643200804000b45a00ce6700ff8a14ffb870fff1e2
-fffcf8fffcf8fffcf8fffcf8ffe2c4ffa54aff8a14d06800b45a009249006e3700542a00
-5229003018003a1d003018002814003018002613002e1700180c00261300ff9d3a0e0700
-160b00160b000e0700060300060300140a00060300160b00020100160b00160b00261300
-1e0f000402000e0700060300ff99320e07002814002010002613002814003a1d00301800
-4221004a25005e2f006432005c2e00542a004221004a2500542a00542a004a2500442200
-2e1700160b00140a00201000ff9e3c180c00201000201000160b000e07000e0700160b00
-140a003018000e0700060300180c00160b000e07001e0f001e0f00201000201000201000
-180c00140a002010002814000e0700281400020100160b00160b00201000180c00201000
-281400140a002010001e0f000e0700201000140a00321900201000281400160b001e0f00
-1e0f000e0700180c00140a000e0700301800201000140a00
-160b00180c00301800201000160b002010000e0700140a000e07002e1700160b00201000
-180c002613000e0700160b00140a00201000140a001e0f001e0f001e0f00201000160b00
-160b00281400180c000e07001e0f00160b000201002010000c0600261300201000040200
-180c000e0700160b00261300201000201000160b002613000e0700201000020100281400
-0e0700140a002814002010000e0700180c00160b001e0f000e07001e0f00201000160b00
-160b00160b00301800180c00140a00ffa040201000261300160b00301800321900422100
-5229007e3f00aa5500ff8810ffb870fff3e6fff8f0ffd1a2ff9932d26900984c00542a00
-5c2e003a1d003219002010001e0f000c0600ff9e3c180c002010000402002814001e0f00
-2010002613002010002010000e0700261300140a00201000180c00201000140a00160b00
-160b00281400140a002e1700261300301800140a001e0f00201000140a002e17000e0700
-0c0600281400140a00160b002010001e0f00281400180c002010002e1700160b00201000
-2e1700180c000c0600160b000e0700201000201000201000201000201000ff9d3a281400
-261300160b001e0f00160b00281400180c004a25002814002814002e1700201000140a00
-160b000c0600160b000e0700ff9932180c002010002010000e07002613002814000c0600
-0e0700180c00160b00160b00060300160b00201000160b00140a00281400160b000e0700
-0e07002613001e0f00281400140a00160b000c06000402001e0f000603002814001e0f00
-0c06001e0f00180c00140a001e0f00160b00201000281400261300160b00160b00301800
-160b00160b00201000140a00140a00261300060300160b00160b002814000e0700301800
-180c000e0700140a00180c00160b002814000603001e0f00160b000e07000e0700020100
-281400160b000e0700281400160b00160b00201000180c002613001e0f00201000180c00
-140a000201002010002814000e0700180c00160b00160b00201000060300060300160b00
-0e0700180c00201000201000261300160b00040200140a002010001e0f00140a000e0700
-0e0700160b00201000180c002e17002814000e0700201000180c00140a000c06000e0700
-140a000e07000c0600180c00180c00160b001e0f00160b002613000c0600160b00160b00
-ffa0402814002010001e0f001e0f00281400261300160b002010002e17001e0f001e0f00
-ffa244140a000c0600140a00160b00160b00201000180c000e0700201000201000160b00
-0e0700140a002613000c06001e0f00180c00160b00201000060300160b000c06000e0700
-0e07000e0700160b00261300281400201000040200180c00140a00180c00140a00201000
-140a002e17002814000e07002613001e0f00160b00160b00160b00140a002010000c0600
-201000180c002010000603001e0f00180c001e0f00201000201000422100140a00180c00
-040200140a001e0f00160b000e07002010000c0600201000140a00180c00261300160b00
-0e07001e0f00160b00160b00201000ffa448140a002010002814003018003a1d00321900
-0e07002814004020004221006432006e37009249009c4e00ea7500ff8c18ffbd7afffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8ffc386ff8f1eec7600b45a00804000763b00542a00
-542a00321900442200381c001e0f002814002e1700261300321900261300ffa0401e0f00
-0e07000603002010002010000c06001e0f000c06000c06001e0f000e07000e07000c0600
-140a00180c00160b00201000ffa040160b00160b002e17002010002814001e0f00301800
-3a1d00422100542a004c26004c26003a1d004422004a25003018004020002010003a1d00
-2814002010000c0600ff9830180c002010001e0f000e07000c0600180c00261300281400
-2814000c06000603001e0f001e0f000e0700160b00180c00160b00060300160b00201000
-1e0f000c06002010002010000e0700201000180c000e0700140a001e0f000603001e0f00
-160b000e0700180c00180c002010000e07000e0700160b002010001e0f000e0700261300
-160b002010000603002010001e0f002814002e1700160b00
-1e0f00140a001e0f00140a00160b001e0f000e07001e0f00160b00261300140a00281400
-2613000c06002010000e0700180c000e07002e17000e0700160b00020100301800160b00
-261300180c000c0600180c00201000180c002010001e0f00160b00261300201000261300
-0e0700180c001e0f00180c002010001e0f00160b000e0700160b001e0f00160b00140a00
-140a001e0f00140a00201000160b00160b001e0f00201000201000180c002010001e0f00
-0e07001e0f000e0700160b000e0700ffa0401e0f002613002e1700381c004a2500422100
-6432007e3f00aa5500ff8204ffb468ffebd6ffeddaffc488ff8b16b85c00864300542a00
-4422003a1d00140a00281400180c00402000ffa64c281400160b001e0f001e0f00180c00
-140a003018002814000603000e0700160b00180c002613002010000e0700281400160b00
-201000140a00060300140a00201000140a00180c00160b00140a00140a00160b00261300
-1e0f001e0f00140a002814001e0f00201000180c00140a000e0700201000201000140a00
-2613003018002814001e0f000e0700060300281400201000201000160b00ff9d3a0e0700
-160b001e0f002814002814002010002613002e1700301800402000301800201000281400
-180c00201000201000180c00ffa448020100180c000e0700261300140a00201000020100
-0e0700160b00201000160b002e1700281400160b00201000140a00140a00281400160b00
-0e0700160b00281400140a00140a002010000603000c0600281400180c00160b00201000
-0c06002613000402002814002613001e0f000e07002010001e0f00261300301800160b00
-2010000603002814000c0600180c001e0f001e0f002010000e07000603002814001e0f00
-2613000c06001e0f000e07001e0f00160b003018000e07000e07002613002814000e0700
-2010002814001e0f00160b000c0600160b001e0f00201000060300160b000e07001e0f00
-160b00301800160b00160b00140a00281400180c00140a00160b00281400140a00160b00
-0e07002010000c0600060300180c00201000180c000e0700201000140a000e0700040200
-160b00060300160b00160b00201000140a00160b00180c001e0f001e0f00180c00180c00
-0c0600060300160b00160b00160b000e0700160b002814001e0f00160b00201000180c00
-ffa448321900261300180c002814003a1d002e17001e0f00301800281400281400201000
-261300ffa142160b001e0f000e0700261300201000180c00180c00160b00201000160b00
-160b00201000201000140a00140a00140a00160b00201000180c002613000e07000e0700
-281400160b001e0f000c0600201000281400180c00160b002613001e0f00140a00201000
-2010000c0600160b001e0f000e07002814000e0700180c000e0700261300201000140a00
-2010000402000c06001e0f00180c000e0700160b000e0700140a002010000e0700060300
-160b00201000160b000603002613001e0f002e1700201000180c003a1d00201000261300
-1e0f00180c00140a000e0700201000ffa0402010002814000c06002e17002e1700261300
-3a1d00381c004422004a25005e2f007e3f00884400aa5500f47a00ff952affc182fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8ffb366ff870ece67009c4e00984c006e3700663300
-4020003a1d00442200402000281400261300381c002e1700160b00201000ff9c38180c00
-1e0f00160b00160b00140a00160b000e0700060300180c000c06000e0700180c00140a00
-040200140a00160b00180c00ff9e3c0c0600160b00201000261300281400281400402000
-2814004422003219004a25003a1d00381c004a25003a1d002e17002814003a1d00301800
-160b00160b00180c00ffa64c2010001e0f000e07000e07000e0700180c00180c00160b00
-0e0700140a00140a001e0f00281400201000160b002814000603002010000e0700140a00
-140a002010002613002613000e0700201000261300180c000e0700201000020100140a00
-140a001e0f00201000140a001e0f001e0f002e1700201000160b00281400140a00060300
-301800180c00160b00140a000c0600180c00160b00060300
-160b000e0700140a001e0f00160b001e0f000e07002010002814001e0f000e0700160b00
-2e17001e0f002010000e0700281400261300201000160b000e0700140a001e0f00281400
-0e07000402000e0700140a001e0f000e0700140a00140a00180c000e0700160b00261300
-180c00160b000e07000e0700160b001e0f002814000e07000c06002613002010000e0700
-201000160b000e0700160b002010001e0f000c0600201000321900140a001e0f001e0f00
-140a000c0600160b001e0f00281400ffa142281400160b002814003018003219004c2600
-542a006e3700a25100ec7600ff9932ffaa54ffa74eff9932e27100984c00783c007e3f00
-4221002e17002814001e0f00301800301800ffa4482814003219001e0f001e0f00281400
-180c000e07001e0f002010000e07000c06000c06002010000c06002613000e0700180c00
-0e07000e0700160b00201000140a000c06002613001e0f000e07001e0f00160b001e0f00
-0e0700160b001e0f00201000040200160b00261300201000201000180c00160b000e0700
-2613002e17002010000c0600160b000c0600180c00201000160b000c0600ffa1421e0f00
-2010001e0f002010002613003018002814004020004a25004221003a1d00301800281400
-2814002010001e0f000e0700301800ffa54a0e0700201000201000160b00201000201000
-0e07000c06001e0f00160b00201000160b00160b00261300160b002814000e0700180c00
-180c00160b00180c00140a00281400160b00140a00160b00201000201000140a00180c00
-160b000e07000e0700261300201000180c00201000140a00180c00180c00160b00201000
-0e07000c0600160b000402000603000e0700160b002e1700040200160b001e0f00140a00
-2613000c06003018000e0700140a00281400201000201000140a001e0f00201000160b00
-2010001e0f000e07000e0700180c001e0f000e07000e0700180c00160b000c0600040200
-281400140a00140a000e0700281400060300160b001e0f00180c00281400281400180c00
-0e07001e0f00180c00160b00160b000e0700201000201000180c00160b002010001e0f00
-0e0700160b00160b00140a00160b00180c00160b00140a00180c001e0f00040200140a00
-0e0700160b00180c001e0f002010000e0700201000261300160b00160b00201000ff9830
-1e0f000e07003018002010003a1d002814004a25003018003018002e1700281400261300
-201000201000ff9e3c281400180c00160b00160b00160b00140a00180c00140a00160b00
-160b00060300140a00201000020100160b00201000261300160b000402000c0600201000
-160b00180c00160b00180c00160b002010001e0f00140a000e07002814000e07002e1700
-2613000c0600180c00160b00201000020100160b001e0f00160b000e0700140a000e0700
-160b00160b00140a00160b00180c00180c00180c00201000160b00180c000e0700201000
-201000201000180c00140a00140a00020100180c00180c000e07001e0f00180c00160b00
-0e0700281400201000201000201000201000ff952a160b00281400201000301800321900
-2613003a1d004a25003a1d005c2e00643200763b00b25900d06800fe7f00ffaa54ffd3a6
-fffcf8fffcf8fffcf8fffcf8ffd3a6ffad5aff8306c864009e4f007e3f00763b006c3600
-5c2e004c26003a1d004221003a1d002e17003219003a1d002814003a1d00ffa244180c00
-281400180c00261300060300160b00160b00261300160b000e07000e07000e0700201000
-140a000e0700180c000c0600ff9e3c140a00060300160b00281400160b00281400301800
-301800381c002814004221004020003a1d002e1700201000261300301800201000160b00
-281400261300ff9e3c160b00261300040200201000160b00140a00160b00160b00060300
-201000201000261300180c000e0700160b00160b002010002010002010001e0f002e1700
-0e07001e0f000c06002010000e0700140a000e07003a1d00180c003a1d00160b00160b00
-140a00160b00060300301800180c00281400160b001e0f000e07001e0f00160b002e1700
-0c06000e07001e0f000603002613000e0700160b00140a00
-180c001e0f00140a002010002010001e0f00160b000c0600180c000e0700160b00140a00
-0c0600180c000c06002613002010002010000c0600160b001e0f00160b00060300140a00
-0e0700140a00160b002e17000e07000e0700160b00160b00261300180c00140a00160b00
-1e0f000e0700160b00261300301800201000160b000603001e0f00201000160b00180c00
-201000201000060300201000140a00201000201000180c002010000c06000c0600180c00
-180c00140a00140a000e07000c0600ffa448160b002613003018002613002e17003a1d00
-4422006c36007e3f00bc5e00d26900e87400de6f00ce6700a45200783c006432004c2600
-2e1700321900180c00281400261300201000ffaa543018003a1d00201000160b002e1700
-0e0700160b002010000e0700160b00160b00160b002e17000e0700261300180c00160b00
-0e07002e17000e07001e0f000e07000603001e0f00180c002010000e0700160b00201000
-160b001e0f000c06002010002010002e1700180c00160b00060300140a00281400180c00
-160b00180c00180c00140a00060300160b00140a00281400281400180c00180c00ffa040
-261300201000160b00301800180c00281400381c00442200381c00281400301800281400
-160b00201000180c00160b00201000ffa54a180c002613001e0f000c06000c06000e0700
-180c00261300261300140a00060300140a00201000160b002814000e07000e0700160b00
-2010002010002613001e0f000201000e07001e0f00160b000c0600160b00201000160b00
-0402001e0f000e07000603003018000e07000c0600140a00160b000c0600160b00160b00
-180c00201000140a00180c00201000160b00180c000e07002814002613002613001e0f00
-1e0f001e0f00160b001e0f002814002814000e0700201000180c00201000201000160b00
-2010000e07001e0f00160b000e0700180c00180c000e0700060300160b00201000160b00
-201000201000261300180c00160b00140a00201000180c00180c00140a00201000140a00
-0e07000e0700201000160b000e07002e17002e17002613001e0f000e0700180c001e0f00
-281400180c002814002613001e0f001e0f00160b001e0f00321900140a00201000201000
-201000180c002613000e07000c0600180c000c06000c0600201000060300301800ff9b36
-160b001e0f00140a003219004a25004422004c26004a25004221003219002814001e0f00
-180c00140a00ffa64c1e0f002010002010002010000e0700201000201000140a00180c00
-2e17002814002010001e0f00160b000e0700160b00160b002814001e0f00160b00160b00
-180c00201000140a00160b00180c001e0f001e0f00180c00180c00160b00180c00060300
-160b00201000180c00201000281400160b000e0700261300201000160b00201000261300
-0e0700160b002e1700160b00160b000c0600201000140a00180c00201000201000160b00
-201000040200160b000e0700180c00020100060300160b00160b00160b00180c001e0f00
-1e0f001e0f00060300140a00060300180c00ffa448281400261300180c000c06002e1700
-2e17003018003a1d004a25005c2e007038008a4500984c00ca6500e87400ff9932ffc488
-ffddbaffefdefff8f0ffe2c4ffb264ff9932fa7d00d66b009c4e008643007038005e2f00
-5e2f00542a00301800201000281400261300160b00281400261300140a00ffa0400c0600
-261300140a00160b000e07000e07000c06000e0700160b00140a00060300160b00060300
-160b00261300180c00261300ff9e3c2814002010002613002e17002814002e1700301800
-3018002814002e17003a1d002814002010003018002e1700281400180c001e0f00201000
-281400ff9c381e0f00301800160b00281400201000160b002010000e07001e0f00180c00
-2010002010000e07001e0f001e0f00140a001e0f00140a00160b001e0f00201000160b00
-0c0600201000160b000e07001e0f00201000160b001e0f00140a00140a00201000201000
-2e1700201000160b00140a00201000180c00261300201000160b000603000e07000e0700
-2613000e0700160b00140a002814001e0f00160b00301800
-020100180c002e1700020100180c00160b00140a00281400140a000c0600180c00281400
-160b00160b002010002814004422000e0700201000140a00281400201000060300160b00
-2e1700140a002814002613001e0f00160b00060300140a001e0f00160b00160b00180c00
-201000140a00160b000e0700180c000e07000c0600261300160b00160b00140a00201000
-140a00201000060300160b00140a002814001e0f00160b002613000201000c06000e0700
-0e0700160b00321900261300201000261300ffa74e2010003a1d001e0f00301800381c00
-4a2500542a007e3f00984c00984c00904800aa55008040006c36004a25005229003a1d00
-3018003018002814002010000e0700ff9e3c160b00160b002010001e0f00261300201000
-020100201000180c001e0f002814000e07000e0700180c002010000e0700140a000e0700
-0603002010001e0f00180c00422100140a00281400160b00040200201000201000201000
-2010001e0f002010001e0f00201000261300160b00180c00160b002613002010000e0700
-0e0700201000180c00140a00261300201000160b00140a003018003a1d00140a00ffa64c
-2010002814002010002814000603001e0f00261300381c00422100381c002010002e1700
-201000140a00201000180c00201000ffa142261300261300140a000c0600201000140a00
-201000180c001e0f00060300281400160b002814000e0700160b000e0700261300201000
-0c0600140a001e0f00301800180c002010000e07000c0600140a00160b000e0700180c00
-2613001e0f000e0700201000201000160b000e07000201002010000e0700281400140a00
-0201002010000e0700180c000e0700201000180c00160b000e07002e17000c0600201000
-180c00060300281400180c00180c00160b000e0700180c000e0700261300160b000e0700
-160b000c0600060300140a00140a00140a000603001e0f00180c000603000e0700160b00
-140a00281400140a00160b00201000160b002814000603000e0700201000140a00201000
-180c001e0f00180c00040200201000140a00140a00201000201000140a00261300201000
-160b00201000ff9c38ffa244ffa448ffa040ffa4480c06000e0700060300261300180c00
-180c001e0f000e0700201000160b000e0700160b00201000140a00201000281400ff9c38
-140a002e17002010002814002010004a2500542a00422100381c00422100321900301800
-281400201000ffa2441e0f000e0700160b00422100020100180c00060300160b000e0700
-040200160b00261300301800201000160b002010001e0f00160b00060300180c000e0700
-2814001e0f00180c00180c002010000c0600180c00201000201000020100160b00160b00
-2e17000c0600261300281400281400160b002613002010002010000e0700060300140a00
-0e07002613000e07001e0f00160b000e07000c0600180c00160b00261300140a000e0700
-0e0700180c00160b00160b00180c002613000c06002010001e0f000e0700140a00180c00
-2e17000603002e17000e0700160b00201000ffa64c201000160b00201000261300201000
-3018003a1d00381c004a25004221005c2e00783c00984c00b25900d86c00ff850aff9932
-ffbb76ffc386ffb366ffb76eff9c38fa7d00ea7500b25900984c00703800643200542a00
-4a2500542a002e17002010004221003018002613003018001e0f00542a00ffa1421e0f00
-2613000201001e0f00201000261300160b00160b000e0700140a00160b001e0f000e0700
-0201000c0600180c00281400ff9b360e07002010002814001e0f002010001e0f00160b00
-2010002814002814002814001e0f002814003018002613003219001e0f00281400160b00
-201000ffa142140a000e0700261300140a00160b00281400160b000603000e07000e0700
-201000160b00160b000c0600040200201000140a00140a00180c002010000e0700261300
-180c00201000201000180c001e0f00060300160b00281400160b00040200281400160b00
-180c00201000160b002814000c0600160b002010001e0f001e0f000e0700140a00201000
-1e0f000e07001e0f00160b00160b00160b00160b00180c00
-160b000e0700180c000e0700201000140a00060300160b00201000140a00140a000e0700
-160b00281400160b002010001e0f002e17000c0600180c00160b00160b00060300160b00
-180c000e0700060300160b001e0f001e0f00060300160b00160b000e0700281400180c00
-140a00160b00261300060300160b00160b00140a00160b00140a000603000e0700140a00
-0e0700160b00160b00140a001e0f00140a000c06000e07000e0700201000160b00140a00
-0c06002e1700160b00160b00281400160b00ffa244160b001e0f00281400281400281400
-2e17004a25005c2e006633005c2e00763b007e3f00763b004a2500422100402000381c00
-2e17003018003018002e1700201000ffa54a0e0700160b00201000160b00261300261300
-0e0700160b000e0700201000160b00180c002010000e07001e0f001e0f00261300201000
-2010000603001e0f00140a00160b00160b000e07002814002613002010000e0700140a00
-2010000e0700140a00281400160b000e0700180c000e07000c0600140a001e0f001e0f00
-180c00160b00301800140a000c06001e0f000e0700160b00201000201000160b00160b00
-ff9c380603000e07001e0f000e07002010001e0f002814003018002010002010001e0f00
-060300140a00201000160b00281400ff9c38281400160b00201000160b000e0700281400
-0c0600140a00140a00160b000c0600180c00180c00160b00201000140a002010001e0f00
-160b000e07000e0700140a002010001e0f00180c00201000160b00180c000e0700281400
-160b002010002814000e07002814000c0600160b00261300160b00180c00160b00180c00
-201000180c00180c00180c00020100160b00140a00201000180c00261300281400160b00
-0603001e0f00180c001e0f00180c001e0f00160b001e0f000e07000603000e07001e0f00
-020100201000160b00180c00180c000e0700060300160b00180c00160b00201000060300
-301800180c002613001e0f002814001e0f000402000e0700261300060300201000201000
-160b00160b00160b00040200160b002010000e07002814000e07000e0700060300180c00
-ff9932ff9c38140a002010000e07002613001e0f00ffa142ff9e3c201000201000160b00
-160b000e07000e07002613001e0f00160b000e07001e0f00281400160b00040200ffa040
-180c00201000281400301800381c003018004a25004221003a1d003a1d000e07001e0f00
-281400201000ff9e3c201000201000160b002010000c0600160b00140a000e07001e0f00
-281400180c00060300261300060300201000160b000e07000603002010000e07001e0f00
-1e0f000e07001e0f00160b002010002814002010001e0f00180c000c0600160b00180c00
-180c00281400180c00160b00261300180c00060300180c00160b001e0f00160b00180c00
-1e0f00020100180c000e0700160b00160b00160b000e0700281400160b00180c001e0f00
-160b000c06002010000e0700060300140a00160b00261300140a00140a002010002e1700
-180c002010002010000e0700261300201000ffa0401e0f00281400201000281400301800
-1e0f002e17003a1d004a25005c2e006432006c36007e3f00924900aa5500c46200f27900
-ff8306ff8e1cff9122ff8306f67b00d86c00b25900984c00804000763b005a2d005c2e00
-5229002e17002814002e1700301800261300060300160b00261300261300ffa54a201000
-0e0700160b000e0700160b00180c001e0f000e0700160b00160b00160b000e07000c0600
-160b00160b00160b000e0700160b00ffa4481e0f00281400261300180c00201000261300
-1e0f002814002e1700160b002613002e1700201000261300281400180c00160b00160b00
-ffa040160b00281400180c00160b000e0700160b00180c00140a001e0f00140a00180c00
-1e0f000c0600180c00160b00160b00160b00180c00180c00180c001e0f00160b00180c00
-0e07000c0600201000160b00060300201000160b00301800160b00140a000c06002e1700
-1e0f000e07000e07002e1700261300160b001e0f000e0700160b00160b00180c000e0700
-0603000e0700180c00261300140a002814001e0f00160b00
-281400140a00180c000e0700160b003018002613001e0f00160b001e0f00180c00160b00
-201000160b000603002613000c0600201000201000160b00180c00160b00140a001e0f00
-0e0700140a00160b00201000140a000c06000e07001e0f000c0600281400160b00060300
-2e17002010000e07002010000e07000e0700160b00201000140a00261300160b00140a00
-160b00180c000c06000c06000c06000c0600201000201000160b000e0700160b00201000
-0e0700140a002010000c0600201000140a00ff9d3a140a001e0f001e0f002010002e1700
-301800381c004a25005229004a2500643200542a004221003a1d003a1d00301800201000
-281400201000281400201000ff9c380e0700201000160b002814002e1700180c00261300
-2010002e17000e07000e07000603000e0700140a001e0f00261300160b00201000261300
-1e0f000e07000e07000e0700281400160b001e0f00261300160b00201000201000160b00
-180c000e07002010000e0700281400180c00160b000c0600180c00160b00160b00040200
-160b000402001e0f00140a00140a00180c000c06001e0f00140a00160b00140a00261300
-ff99320e07003018001e0f000e07001e0f00160b00160b00201000201000281400180c00
-180c00281400160b00261300ffab562814001e0f00261300201000160b00201000160b00
-160b000e0700140a000e07003a1d00180c00020100281400180c001e0f000c0600180c00
-2010002613002814000c0600160b00160b00201000160b00160b00060300160b000e0700
-060300160b00180c000e07001e0f00201000201000160b000603002814001e0f00301800
-2814002010000e07000603000e0700060300020100140a00060300180c000603001e0f00
-1e0f00201000140a00281400160b001e0f00160b00060300160b00160b000e07001e0f00
-160b00180c00160b001e0f000e07003a1d000e07000e07000e0700160b00160b00060300
-060300201000180c00140a000e0700140a00201000160b00180c000e0700160b00180c00
-201000160b00140a00160b001e0f002e1700180c000c06000c0600140a00ff9c38ffa142
-160b00201000201000160b001e0f00180c00201000180c00281400ffa54a1e0f00160b00
-180c000603000e0700160b00201000201000140a002010002010002e17001e0f00ff9830
-281400160b001e0f00301800381c00321900422100522900321900281400301800281400
-2814000e0700ff94282814000e0700160b00140a00160b00160b000e0700281400140a00
-160b002010002010001e0f00180c000c06000e07001e0f00140a002010000e07000e0700
-2010002010002010001e0f00160b000c0600160b00160b00180c00160b00140a000c0600
-201000201000020100060300201000160b000e07000e0700201000160b00140a00201000
-0e0700140a00140a00281400060300201000201000160b002010000c06002010000e0700
-060300160b00281400201000140a001e0f00281400140a00160b00060300281400140a00
-0e07000e07000c0600261300281400201000ff9e3c201000180c00160b000e0700201000
-3a1d004020004020003018003a1d004c26005229006e37009c4e00884400aa5500de6f00
-e87400d86c00f27900d26900ce6700be5f00984c009c4e007e3f00763b00643200522900
-2e17003219003a1d003018002613002814003018000e0700201000ffa74e201000281400
-0c0600201000140a00140a00201000180c001e0f000c0600261300140a00140a000e0700
-040200140a000e0700140a00201000ffa040201000180c00180c00281400261300201000
-140a00201000261300301800301800321900281400201000281400180c00201000ff9e3c
-0e07000603000c06001e0f00180c001e0f002010002010001e0f00180c00160b00160b00
-281400140a002010002010003a1d00201000201000160b00201000160b00201000201000
-180c00180c000e07000e07000e0700160b00281400201000201000160b00160b000e0700
-1e0f00160b00261300140a000e0700160b002814001e0f001e0f00201000160b00160b00
-180c00160b00160b00201000201000281400201000140a00
-160b000e0700160b00281400140a00180c000e0700160b001e0f00160b00201000281400
-1e0f00140a00281400201000201000140a000402000e0700160b001e0f000e0700160b00
-180c00160b00160b00140a000603001e0f00140a001e0f002613000e07001e0f00160b00
-2613000c06002010002010001e0f00261300201000261300040200180c00040200140a00
-180c002010002010001e0f00140a00281400261300201000160b000c06001e0f00020100
-160b000e0700180c000e07002010002010002e1700ff9d3a0e0700140a002814001e0f00
-180c003018003a1d003018004221004020004221004422004221003a1d00381c002e1700
-261300301800160b00ffa1421e0f00180c00281400201000160b000c0600201000140a00
-160b00160b002814001e0f00201000201000281400060300160b00281400140a00281400
-160b00201000180c00160b00160b00180c002010002010001e0f000e07002010000e0700
-160b002e1700160b00180c001e0f002e1700180c00281400160b00261300201000160b00
-160b00160b00160b001e0f00160b000e07002613001e0f001e0f000e0700140a000c0600
-281400ffa448140a00140a000e07000e0700160b00160b00140a000e07000e07000c0600
-0e0700180c00140a003a1d00ffa952321900201000180c00180c000e0700140a00261300
-281400160b00160b000e0700201000201000201000180c001e0f00301800160b00180c00
-180c000e07002814002010002010002010002010002814002010000e0700201000201000
-2010000e07001e0f000e07000603001e0f00160b00180c00140a001e0f000e07000e0700
-160b00301800261300160b00160b00060300060300201000180c00160b00160b00201000
-160b00040200381c000e0700060300180c000e07000c0600180c00160b000e07000c0600
-160b002814000e0700180c00140a00281400180c00180c00160b00160b00201000160b00
-140a00160b001e0f00060300160b00060300160b00140a002613002010001e0f00160b00
-0e0700180c000e0700160b001e0f00180c000e0700160b000e0700201000ffa040180c00
-281400160b000e0700281400201000201000180c000c0600160b00261300ffa54a261300
-160b000201000c06000603002010000e0700160b00160b00160b000603002010002e1700
-ff9d3a180c00261300281400180c002814004a25003a1d00261300201000180c00261300
-2e1700ff99320e0700160b00160b00180c000402000e0700180c00180c000c06001e0f00
-180c00140a00140a00201000160b00281400160b002010001e0f00180c00160b000e0700
-0603000e0700180c00201000160b00201000160b002010002010001e0f001e0f00201000
-2e1700160b001e0f00180c00140a001e0f001e0f000e0700140a000e07001e0f00060300
-0c0600160b00160b001e0f000c06001e0f00160b00160b00180c00160b002010002e1700
-0e0700281400160b002814002010000e07001e0f00160b00180c000e0700160b00160b00
-160b00060300160b00140a00281400160b00201000ff9e3c180c00281400160b00301800
-321900301800381c00381c003018005c2e006633005c2e00763b00984c009e4f009e4f00
-be5f00c46200be5f00bc5e00c46200a45200984c007e3f00763b005c2e005c2e005c2e00
-3a1d003018004a2500381c002613001e0f002010001e0f001e0f00ff9b36180c00201000
-160b001e0f000603002613001e0f00180c001e0f000e0700160b00160b00201000040200
-201000180c000e0700060300180c00ff9e3c160b002814001e0f00201000140a001e0f00
-180c002814002010003219002010001e0f00261300160b00160b00201000fffcf8140a00
-2010001e0f00160b00180c000e0700140a001e0f00160b00180c00160b00261300020100
-261300140a000e07000c0600140a000201002613000402003018000c0600180c00060300
-0c06000e0700160b00140a00160b00261300180c00160b00180c001e0f000e0700060300
-1e0f000c0600140a001e0f001e0f00201000261300261300201000180c00160b001e0f00
-0e0700180c00201000160b000e07000e07001e0f00281400
-160b00140a00160b00160b000c0600180c002010002613002010002613000c0600160b00
-180c000e0700301800140a00140a000e07000e07002e1700301800201000160b00180c00
-160b00160b000e0700281400180c00301800140a00160b002e1700160b00020100140a00
-160b000e07000c0600180c00140a000e07000e0700281400160b00140a00160b001e0f00
-0e0700180c00140a00180c00160b00201000160b00140a000e0700140a000603000c0600
-201000160b00381c00140a000e0700160b00180c00ff9c381e0f00201000301800261300
-201000301800281400402000321900381c00301800301800281400301800402000281400
-180c00261300ff9d3a301800180c00160b00180c00160b002010000e07000e0700160b00
-281400140a000c06002613000e0700281400160b00281400201000201000180c00180c00
-180c002010002010001e0f00180c001e0f00160b002e17001e0f002010002e1700160b00
-2010002010000e0700160b00180c000c0600201000140a00180c000c06000e07000c0600
-1e0f001e0f00160b00160b000e07000603002e17000e07001e0f00201000201000180c00
-201000160b001e0f00060300180c00160b00180c00160b00160b00060300281400160b00
-261300160b00281400ffa1421e0f00281400160b00201000160b00160b00160b00201000
-140a00261300201000040200301800160b00160b001e0f001e0f00160b00140a00140a00
-0e07000603000402000e0700180c000e0700160b00140a00060300140a00180c000e0700
-201000140a002613000e0700201000140a001e0f00180c000e0700201000160b00201000
-140a00180c00180c001e0f00160b000e0700160b00180c00180c00201000060300180c00
-180c002e1700201000281400040200140a00160b002e17000e0700160b00261300160b00
-140a00180c000603002010000e07002010000e0700261300160b000e07000e0700180c00
-201000281400180c00160b001e0f00160b000e0700180c00140a00140a00201000281400
-2613000e07002814000e07000e07000c0600140a00160b00321900ffa54a3a1d00140a00
-1e0f00160b002010002e17002613002814002613000c0600180c001e0f00160b00ffa040
-160b00140a00261300060300160b002010002010000e0700160b000e0700201000020100
-ffa2441e0f00060300180c002814000e07003018003219002010002e1700180c001e0f00
-281400ffa0402010001e0f000603000e07001e0f000e07000201000c06001e0f00160b00
-0c06000e07000e07000c0600160b00140a001e0f00060300281400160b00140a00160b00
-0c0600201000201000140a000603000e0700160b00201000160b00160b00160b003a1d00
-201000180c000e0700140a00160b00281400160b00180c00160b00281400180c001e0f00
-2010002613000c06000e07000c0600140a00160b00180c001e0f00160b00040200160b00
-201000160b00180c00160b00160b00160b000e0700201000060300201000060300140a00
-201000160b00281400140a001e0f002010000e0700ffa040160b00261300261300301800
-281400201000381c00281400422100442200542a004221005e2f006c3600804000884400
-984c00b45a00984c00984c008844008040007e3f007e3f005c2e006432004a2500301800
-522900321900201000301800381c00301800180c002e17001e0f00ffa448281400160b00
-261300180c00281400160b00060300180c00201000160b000e07002010000e0700301800
-0603002010000c0600201000160b000e0700ff9b36160b00180c001e0f00140a00140a00
-2814000e07001e0f00180c001e0f00201000160b00261300160b00ffa1420e0700201000
-140a00180c00160b00160b002814000603001e0f00160b001e0f000e0700201000060300
-281400160b00160b002010001e0f001e0f000603000e07000e07001e0f00160b00060300
-160b00201000201000160b002010001e0f00160b000e0700160b00180c00180c00180c00
-2e1700160b001e0f00160b00160b00201000180c00160b00140a00160b000e0700140a00
-261300160b00180c00180c002e1700060300160b00140a00
-0e0700180c000c0600160b00140a00160b00281400160b00140a004020001e0f000c0600
-140a00180c002e17001e0f001e0f00180c00020100201000201000180c00261300160b00
-060300180c002e1700160b00020100060300160b00160b002010002e1700160b00321900
-2010000e07000e07001e0f000c06000e0700261300180c00160b001e0f001e0f001e0f00
-180c000e0700180c00140a00201000160b00281400201000180c00160b000e0700140a00
-1e0f00160b00180c000e0700160b002814001e0f00281400ff9830261300201000160b00
-281400201000321900281400442200201000261300261300281400321900140a00201000
-281400ff9c38ff9e3c140a00160b00160b00281400261300201000301800160b00140a00
-0603002e1700160b000c06000e07000c0600160b000c0600160b00180c000e07000e0700
-2010000e07001e0f00160b000e07000e0700180c002613002010001e0f00160b001e0f00
-180c000e07002613002010004a2500040200160b00040200160b00201000261300160b00
-1e0f000c0600180c00160b00160b00201000381c00160b00140a00160b00160b00040200
-160b001e0f00180c00ff9932ffa040201000261300160b00281400180c002010002e1700
-301800201000ff9932ff9e3c281400261300140a00160b001e0f00160b000e07001e0f00
-160b002010000e0700180c00140a002010000e0700201000201000160b001e0f001e0f00
-201000140a00180c00261300160b00140a00160b00261300060300261300140a00160b00
-140a000e0700180c00201000160b00160b000c06002010001e0f000e0700160b00281400
-180c00160b00201000261300140a00160b00060300180c000e0700060300180c00180c00
-060300060300261300261300180c00160b00060300160b000e0700180c00160b00060300
-160b00140a00180c002010002814002814000c06001e0f00060300060300060300261300
-160b000603002010000e0700160b000e07002613000603003018002613000e0700180c00
-180c00180c00180c000e0700160b00140a00160b00281400ff9b360c06001e0f00140a00
-3018002010003219002613003018002814002613001e0f00180c00160b000e0700ff8a14
-2814000603000e07001e0f001e0f00160b000e07000c0600140a000e07000e07001e0f00
-281400281400160b00160b00140a002814000e07002e1700281400160b002e1700160b00
-ff9932160b00201000140a002010000e0700180c00160b000e0700140a00160b00160b00
-0603001e0f00160b00160b00201000180c000e07001e0f00140a002814000e07000c0600
-160b00201000160b001e0f00160b00160b00201000160b001e0f00201000201000160b00
-3018004221000e0700180c002814002010000e0700160b00160b000603000e0700180c00
-0e07001e0f00160b00140a001e0f00160b002e17003219002010000c0600160b001e0f00
-1e0f00180c00160b00160b002010002010000c0600160b00180c002814003a1d00140a00
-160b00160b00140a002010000e0700201000140a001e0f00ffa040180c00160b00281400
-301800301800301800381c004020003a1d00422100542a004a25006432005c2e00703800
-783c00783c007e3f009249007e3f00804000542a006432006432004a25005229004a2500
-2e17002814004020001e0f00381c00261300180c003018000e0700ffa448201000201000
-2e1700160b00180c00180c002010002010000c0600261300140a00140a00140a001e0f00
-0e0700140a00180c000e0700321900160b00ffa244160b002814001e0f00201000201000
-140a00180c00201000281400180c00281400281400140a00ffa54a1e0f00160b00160b00
-160b001e0f00160b00160b00160b00160b00201000180c00160b00261300160b00160b00
-160b001e0f001e0f000e07001e0f00160b00160b001e0f002010002814000e0700160b00
-0e07001e0f001e0f00180c00180c000c0600301800180c00180c000e07000e07000e0700
-160b00201000180c00140a00020100201000140a00160b000e0700140a002e1700160b00
-261300060300180c00180c000e07000e0700180c001e0f00
-0e0700140a00140a000c06002010000e0700160b00281400180c000e0700160b00160b00
-0e0700160b001e0f00140a00160b00160b00160b00160b002010001e0f002010002e1700
-281400180c001e0f001e0f00180c000e07001e0f000e0700160b00060300180c000e0700
-0201002814000c06002814000e0700180c002010001e0f00261300261300160b00160b00
-261300180c00180c000c0600060300201000180c002010001e0f001e0f00261300160b00
-2613000c06000c06002e17000e0700160b00160b001e0f00261300ff9c38160b000c0600
-201000160b001e0f00281400201000281400201000160b002010000e0700180c00201000
-ffa0402010000e0700281400201000140a00321900060300201000180c00180c00160b00
-1e0f000e07000e0700180c002010000e0700180c000e0700180c000e0700160b00201000
-2814000e0700261300040200160b00160b002613000c06000e0700160b00140a00040200
-1e0f00180c001e0f00180c001e0f000e0700160b00160b00140a00261300140a00140a00
-160b002010002814001e0f00160b001e0f001e0f00160b00180c000c0600160b00281400
-180c00281400160b002613000e0700ffa244ff9d3aff9e3c1e0f00261300321900140a00
-ffa142ff9e3c201000160b00020100201000060300140a00160b00201000180c00160b00
-0c0600160b00160b00180c00281400160b002010002010000e07000e0700201000160b00
-2814000e0700140a00140a001e0f00180c000e07000201002613000603000e0700140a00
-0e0700160b00160b000402002613002010000e0700180c000e0700160b000e0700160b00
-060300201000201000160b002613000c06000e0700160b00160b00060300140a00201000
-0c0600201000140a00281400160b002814001e0f00140a00160b001e0f000e0700381c00
-140a000e07001e0f000e07002613000e07001e0f002814000e07002010000c0600201000
-1e0f002010000402000c06002613000e0700160b00160b00180c000c0600180c001e0f00
-201000160b000e0700180c00140a00160b00160b00301800ffa040160b000c0600281400
-2010002010003018003a1d001e0f003a1d003018002814002814003018001e0f00ffa142
-160b00160b00140a00160b00160b000e07001e0f00180c00140a001e0f00160b00160b00
-140a00180c00ff9b36ff99320e07000e07000e0700321900180c00201000ff9c38ffa244
-1e0f002010001e0f000c06001e0f000e0700040200160b00160b000e0700140a00180c00
-180c000e07000e07000c0600180c00060300140a00140a00201000281400201000261300
-0e0700180c00160b002010001e0f00140a00180c00160b00160b00261300160b00201000
-160b00160b00160b00160b00201000180c003018001e0f00140a00160b00140a00261300
-180c000e0700160b00281400160b001e0f00140a00160b000603000603000e0700160b00
-180c000e07001e0f001e0f001e0f002814000603002613000201001e0f00160b00160b00
-0e0700160b00040200281400140a00140a00201000160b00ffa448301800201000201000
-3219002010002e17003219003a1d002e1700402000422100542a00542a00542a00643200
-7038006c3600763b005e2f007038006633006e37006432006432005a2d004a2500422100
-3a1d003018003018002010001e0f002814000e0700261300ffa1420e07001e0f00180c00
-0c0600180c000e0700281400180c000e07001e0f000e0700201000140a00140a00040200
-0c0600160b00261300160b00281400160b00ffa040140a00261300140a001e0f00281400
-140a00281400201000160b00261300201000261300ff99320e07000e07000e0700281400
-1e0f00180c00140a000e0700201000180c002613001e0f00160b000e07001e0f00160b00
-2814000e07001e0f00160b00180c00140a001e0f000e0700160b00160b00301800201000
-2010000e0700140a00281400201000140a001e0f000e0700201000160b00160b00281400
-160b00201000160b00261300180c000e0700160b002e1700140a001e0f000c0600261300
-180c002e17002010002010002010000e0700140a000e0700
-160b00160b00140a001e0f00180c001e0f000e0700160b00160b00160b001e0f00201000
-0e0700160b000c06001e0f000c0600160b00180c00261300160b001e0f00140a00201000
-160b001e0f001e0f001e0f00180c00180c000e0700160b000603003a1d001e0f00261300
-201000281400201000180c00281400160b002010002e17001e0f000e0700160b00160b00
-201000160b00160b002814001e0f002613002010002814000603001e0f001e0f000e0700
-0c06000c0600160b00261300060300160b00140a000e07001e0f00140a00ffa244ffa74e
-160b003219003018002010002814002010000e07002010002e17002e1700ff9b36ff9d3a
-261300180c000e07001e0f002010001e0f001e0f000c06002010002613000e0700140a00
-140a00180c00160b00140a00140a002010001e0f00160b00160b000c0600160b00060300
-0201000e07000e07001e0f002010000e07000c0600180c000c0600160b00180c00020100
-160b00140a000e07001e0f00160b00160b002814000c0600140a00160b00160b00201000
-160b00140a00201000160b00140a00160b00201000160b00140a00281400201000140a00
-1e0f00180c001e0f000c0600180c00160b00261300180c00ffa040ff9932ff9d3affa448
-0c06000e0700281400160b00201000140a001e0f00261300160b00160b00160b00160b00
-180c00160b00140a00160b00160b00180c00180c00140a001e0f000e0700160b00140a00
-0e07000c0600160b000e0700201000140a000e07000e0700160b00301800261300060300
-0e0700140a001e0f00040200160b00201000381c00160b00201000140a000603001e0f00
-060300201000201000160b00140a002613000c0600201000060300180c002e1700160b00
-261300160b00201000140a00160b00160b00160b00160b00180c00281400201000201000
-060300180c000e0700060300160b000e07000e07001e0f000e0700160b00160b00261300
-201000160b001e0f00201000180c000e0700140a00281400160b00201000140a00060300
-201000160b001e0f00201000180c002814000e0700160b00ffa1422613000e0700201000
-1e0f00281400321900301800261300301800201000160b002e1700180c00201000ffa448
-0e0700020100140a00020100160b00201000201000261300020100180c000e07001e0f00
-201000060300160b001e0f00ff9e3cffa142ffa142ff9e3cff952aff9c38201000301800
-160b00160b00140a00160b00201000261300140a000e07002010000e0700160b000e0700
-020100160b00201000160b00160b00180c002613000e07002010000e0700201000180c00
-0e07001e0f00160b00160b00201000020100201000140a00160b00201000060300201000
-140a00201000201000140a000e0700140a00281400060300140a000e07002010000e0700
-160b001e0f00180c00160b001e0f00140a00160b000c0600201000180c00140a00140a00
-140a00160b00180c002e17001e0f00160b00281400160b00160b00060300281400201000
-060300281400040200160b00160b00180c00201000180c000e0700ff9c38201000281400
-2010002814003018002e17003018003a1d003219003018004422004221005229005e2f00
-4a25005c2e005a2d006e3700663300542a00542a005e2f005229004c2600301800381c00
-381c00381c00281400281400281400180c00160b00060300ffa244160b00180c000e0700
-160b00180c00140a00140a00160b00160b00160b00140a00281400040200040200060300
-2010000e07000e0700160b000e0700180c00201000ffa142160b002814002613001e0f00
-1e0f000e07002814001e0f00180c00060300ffa244180c00281400180c001e0f00140a00
-2010000201000201000c0600140a002010001e0f001e0f001e0f00160b00160b00201000
-0e0700140a001e0f000c0600180c00160b00160b00160b00160b002010000e0700040200
-201000160b002010000c06000e07002010002e1700140a000402002613000e07001e0f00
-160b001e0f00180c00281400321900160b00180c00201000201000281400140a000e0700
-0e0700180c00261300160b001e0f000e0700040200201000
-0e0700160b001e0f001e0f000e0700140a00160b000e0700160b000c0600180c00160b00
-0e0700180c002814000e07001e0f000201002814002613000e07000e07003a1d00201000
-180c00261300201000160b000c0600281400201000201000160b002613000e0700261300
-160b002613000e0700180c00180c00140a00201000201000140a003018000e0700140a00
-140a000c0600180c001e0f00160b00201000140a001e0f002613000e07000402000c0600
-2010002010002814001e0f000c06000603001e0f00140a00160b000e07000c06001e0f00
-ffa142ffa040ff9d3affa448ffa64cffa448ffa040ffa952ffa952ff9d3a180c00201000
-0e07002e1700140a00160b002814000603002010000e0700160b00261300261300180c00
-0c06002e1700160b00160b00281400160b00160b001e0f00160b00261300261300261300
-180c000603000603000c0600160b00140a000e07000c0600160b00201000140a00160b00
-180c002010000e0700160b000e07002010001e0f00140a001e0f000e07000e07001e0f00
-0c0600180c00180c00160b001e0f00281400140a00180c003a1d002010002e1700160b00
-160b00180c00160b001e0f00140a002613002814002010002010000c0600160b00201000
-0603000e07000e0700261300201000160b000e0700281400160b00140a001e0f00281400
-0e07003a1d00201000160b00160b00301800160b00160b001e0f00060300180c00281400
-180c00261300301800160b002010001e0f00180c00140a00180c00160b003219000e0700
-160b00201000160b00040200281400140a001e0f002814000e0700160b00281400201000
-201000281400180c002613000e07002010001e0f00201000140a002814001e0f00160b00
-2814000e07000e0700140a002010000e07002010002010002613000402002010000e0700
-160b00140a000e0700180c002010002e1700160b000c0600160b00261300201000201000
-201000160b000e0700201000160b00140a00040200140a00140a00180c001e0f00160b00
-0c0600160b00160b00160b00160b000e0700281400201000ff9e3c201000281400281400
-160b001e0f002e17003a1d003a1d002613004a2500201000160b00281400261300ff9e3c
-0603001e0f001e0f00160b000c0600140a00140a00140a000e07000e0700201000180c00
-160b001e0f00160b000e0700180c002010000e07000e0700160b002613000c0600060300
-140a002814002e17002814002814000c0600201000020100261300160b000e07001e0f00
-140a001e0f00160b00180c00160b00160b000e0700140a00160b00040200140a00160b00
-2010000e07001e0f00140a00140a00160b00140a002e1700261300160b001e0f00160b00
-0c0600160b00160b002613002010002010000e07001e0f002010000e07002010000e0700
-2814000e0700201000261300261300180c002814002010002010000e07000e0700160b00
-060300261300201000160b00180c00201000140a001e0f00160b00160b000e07000c0600
-201000160b000c06001e0f00160b00180c003018001e0f00180c00ff93260e07002e1700
-201000281400201000381c002e17002010003219002814004221004a25005c2e00542a00
-643200542a00542a006e37006633006c36005c2e004a25004c26004221004221002e1700
-301800321900281400261300160b000e0700180c00261300ff9b361e0f001e0f00261300
-2010000e0700060300261300180c00201000281400060300160b000e0700201000160b00
-2010000c0600180c002010001e0f002010002e1700201000ffa040ffa448201000201000
-180c000e07000e0700ffa142ffa448ffa9522613003018000e07001e0f00040200160b00
-2010000e07003018000e0700160b001e0f000e07000e0700180c00160b00201000160b00
-140a000e07000e0700160b00140a00160b000e07000e0700060300160b00201000281400
-201000160b00180c002010001e0f00180c00160b00180c00301800160b001e0f00180c00
-0e0700140a000603002010003a1d00201000281400160b00140a000603002010001e0f00
-0e0700160b00020100160b00180c000c0600180c001e0f00
-1e0f00160b001e0f000e07001e0f000c06002010001e0f001e0f000e07000c06001e0f00
-2613002010001e0f000c0600180c000c0600160b002e1700140a002814000e0700281400
-261300201000160b001e0f00160b001e0f00160b00160b001e0f002613002010000e0700
-180c00160b00160b001e0f00201000160b00140a001e0f000c0600180c00140a000c0600
-2814002814000e07001e0f00160b002814001e0f001e0f000c0600160b00160b00261300
-281400160b00160b00160b000e0700160b001e0f00160b00160b000c06002613000e0700
-180c002e1700201000180c00160b00201000201000201000160b003018001e0f00160b00
-160b001e0f001e0f000e0700180c001e0f001e0f00180c00160b002010001e0f00140a00
-0e07000e0700160b00060300201000180c00180c00160b000201000e07000e0700201000
-180c003219000603002010000603001e0f000c0600140a000e0700180c00160b00281400
-0c0600160b001e0f00201000160b002010000e0700160b00140a001e0f000e0700040200
-0e07001e0f00201000160b00160b000201002e1700160b000e0700140a002010000e0700
-140a00261300201000160b00261300160b00160b002e1700180c00160b00201000060300
-0e0700201000140a002010000c0600060300160b00160b00180c00140a002010001e0f00
-0e07002010001e0f00160b003018000c0600180c00281400140a00261300060300201000
-160b00160b001e0f00261300160b00140a00160b00160b00201000201000180c00160b00
-140a002010002010002e1700180c00160b00140a00140a00160b00180c00160b00160b00
-3a1d000e0700201000160b001e0f00160b00ff9932ff9d3aff9932ffa54affa448ff9d3a
-201000160b00160b00160b00180c000e07000402000e0700180c00201000140a00180c00
-261300160b00160b00060300060300301800201000201000201000180c000e0700180c00
-160b00301800180c00160b000e0700201000160b000603000e07002613000e0700140a00
-0e0700201000261300160b00180c00160b000c0600160b00ffa4481e0f000e0700261300
-281400201000301800281400201000281400160b002814000e0700160b00160b00ff9932
-160b00160b001e0f00201000160b000c06001e0f00140a002010002e17002010000e0700
-180c00140a000e07000e07000201000e07001e0f000e0700160b00180c00140a00201000
-140a00140a000e0700140a00160b000c0600261300261300140a000603000c0600140a00
-0c0600261300180c00160b000e0700140a004020002010000e0700160b002814000c0600
-1e0f00160b001e0f001e0f000e07000e0700261300060300180c00140a001e0f00281400
-201000261300180c00160b002613000e0700180c002e1700140a002613001e0f00301800
-160b00160b00160b001e0f00201000180c00160b00160b001e0f00160b002613001e0f00
-180c000e07003018002010001e0f00160b00180c00201000301800140a00160b00180c00
-261300140a00140a000c06000e0700160b000c0600180c000e0700160b00ffa448281400
-261300201000180c003018002010002e17004020004020003018005c2e003a1d004c2600
-3219004a25004422004422005229005a2d004c26004c26003a1d003a1d003018003a1d00
-281400301800140a002e1700180c00180c000e0700ff9b36180c001e0f00160b001e0f00
-0e0700160b00140a00201000140a00261300020100201000201000160b000c0600160b00
-0c0600160b00261300140a000e07002613000e0700201000281400160b00ffa244ffa74e
-ffa142ff9d3affa0400603000e07001e0f00060300160b00060300160b00201000140a00
-0e0700160b001e0f00201000180c000c06001e0f00140a00261300180c00160b00180c00
-0e07001e0f000c0600160b00140a00201000160b002010000402002613000e0700180c00
-140a00180c001e0f00301800140a00281400160b00281400060300060300281400281400
-140a00140a000e0700180c00201000140a00160b000e0700160b000e0700140a00201000
-0e0700060300281400281400281400160b00160b00160b00
-281400180c001e0f000c0600140a000c06002010000e0700201000160b00140a000e0700
-201000201000140a00060300160b00160b00160b00160b00160b003018002814001e0f00
-160b000e0700180c002613002010000e0700160b000e0700160b000c0600201000201000
-2814000e0700301800160b00160b00140a00201000160b00261300180c000e07001e0f00
-201000201000180c00160b00261300160b00180c00160b00201000140a00140a00180c00
-140a00201000160b00201000160b002814000e07000e0700281400160b00160b000e0700
-160b000603000e0700180c00160b00140a00281400281400180c00140a00301800140a00
-2613001e0f001e0f001e0f00281400160b00160b00180c00160b00160b00160b002e1700
-0e07002010000e07000e0700160b00160b00160b001e0f000e0700160b00060300180c00
-2814000e07001e0f000e07000c0600180c00180c00140a00180c00180c00160b00201000
-201000201000160b000603001e0f00180c002613002010000e0700140a00180c001e0f00
-0e0700160b000e0700160b00160b00160b00180c00180c000e07001e0f00201000140a00
-1e0f000e0700180c00180c00060300160b00060300160b00180c00160b001e0f00160b00
-160b000e0700160b00180c000603000201000e0700180c00160b00201000160b000c0600
-1e0f00160b00140a002e1700160b000e07001e0f00140a00140a000e07000e0700180c00
-160b002010000e0700180c00160b00160b00160b00160b00140a002010001e0f00160b00
-1e0f000e0700201000060300160b00140a000e07002010000c0600160b001e0f00180c00
-160b00060300281400281400ff9932ffa2440e0700180c00160b002010000e0700140a00
-ffa448ffa54a261300180c00180c00160b001e0f000e07001e0f002814002010001e0f00
-2e1700060300201000160b002010001e0f001e0f00140a000c06000c0600201000201000
-0e0700140a00160b00160b00160b000e0700020100140a00160b00020100201000060300
-2e17001e0f000e07000e0700140a000c06000e07000603001e0f00ffa2440e07000e0700
-020100160b002010003018001e0f00201000140a000c06000e07001e0f00ff9c38060300
-1e0f00140a000402001e0f000e0700180c00160b00160b000e0700261300321900160b00
-160b001e0f00281400180c002e17000e0700201000160b00160b00160b00201000160b00
-1e0f00180c00281400160b00261300160b00160b00140a000e0700201000160b00180c00
-0603000603002010002010000e0700160b002010000603000e0700160b00160b000e0700
-2814000e0700180c00140a00160b00180c001e0f00180c00180c00060300160b00281400
-0e0700160b00201000281400160b000e0700160b00261300160b00160b000e0700160b00
-0e0700261300160b002010001e0f00140a002010002010001e0f00180c00180c00140a00
-2814002010000201001e0f000e0700140a002814002010000c06001e0f000603000e0700
-060300060300201000261300160b002010000e07000e0700160b000e0700ff9b36301800
-0e07002814002010002010001e0f002010003a1d00321900201000301800321900321900
-4221004221004c2600422100381c00402000301800422100381c003018002e17002e1700
-3219002010003018002814001e0f00201000281400ff9c380e0700201000160b00180c00
-0e0700261300020100040200160b000e0700180c00140a000402001e0f00140a00281400
-1e0f00160b00180c000e07002613002e1700140a000402000c0600281400201000180c00
-261300160b000e0700201000281400180c00180c00160b00060300160b00180c00020100
-201000040200160b00201000160b000e0700160b000201002814000e0700201000261300
-0e07002010000c06000e07000c06002e1700201000201000180c00180c000e0700140a00
-3018002613000e0700140a00180c00160b001e0f000e0700140a002010000e07000e0700
-160b00201000180c00160b00261300261300261300160b001e0f00160b000e0700040200
-160b002010002010002814000e0700140a000e07000e0700
-1e0f00180c00160b00160b00180c00160b001e0f00281400201000180c000c06001e0f00
-0e0700160b00160b00160b00261300160b00160b00201000160b002814001e0f000e0700
-180c00160b003018001e0f00201000160b000603003018000c06001e0f002010001e0f00
-2613001e0f00160b00140a00160b001e0f00140a000603002613001e0f000e07001e0f00
-160b001e0f00160b002814001e0f00160b00201000160b00261300261300281400140a00
-0e07001e0f00180c00160b00140a002010001e0f000e0700160b00160b002010000c0600
-301800160b000e0700201000261300180c00180c000e0700180c00160b00140a001e0f00
-160b00160b00060300160b001e0f00281400160b00301800201000060300140a00201000
-160b00180c00201000180c00201000180c00160b00160b000603001e0f00160b00281400
-140a000e07001e0f00160b00261300160b002010000e0700140a00060300180c00160b00
-160b001e0f00160b00060300201000160b001e0f00020100060300201000040200160b00
-180c00201000281400160b00201000160b00140a00301800140a00261300180c00281400
-160b001e0f002010003a1d00060300201000160b00160b00180c00140a00140a00160b00
-140a000e0700060300261300180c000201002010002010000e07000c06001e0f00180c00
-2010001e0f00281400160b00160b002613003219000402002e1700180c000e07001e0f00
-160b00261300160b00261300180c000e0700281400160b00201000281400180c00281400
-160b001e0f001e0f001e0f00160b001e0f001e0f00160b001e0f00261300020100201000
-180c000e0700261300ffa4481e0f00160b00160b002010000e07001e0f00160b00060300
-160b002e1700ff9b36180c001e0f000c06000e0700201000160b00160b00201000160b00
-180c002010001e0f00160b00160b00201000201000160b00201000201000261300160b00
-140a00201000381c00160b001e0f00160b002010001e0f002814001e0f00180c000c0600
-281400140a00201000140a00160b00140a00180c000c06001e0f00060300ff98300e0700
-261300160b002613002e1700201000060300140a00261300201000ffa040180c00301800
-160b00040200180c001e0f001e0f000e0700201000160b00201000201000160b00261300
-0603000c0600281400180c00140a00140a00160b000c0600160b00160b000e0700160b00
-160b001e0f00140a00160b00140a002010000e07000e0700180c00261300160b00180c00
-0c0600201000301800180c002010000603000c0600201000140a002010001e0f00201000
-281400160b00201000180c00180c00201000140a00160b00160b002613001e0f00402000
-180c00180c00201000140a001e0f001e0f001e0f000e0700180c00201000201000160b00
-040200160b00261300301800180c00140a002010000c0600281400180c00201000160b00
-201000180c002814002814002010002e17002613000e0700160b002e1700140a00060300
-0e0700180c000c0600160b00180c000e0700180c002010000e0700160b001e0f00ffa54a
-281400321900160b00160b002613002010004020002814003219003219002e1700281400
-4a25004020003a1d003219004c26003a1d004020003a1d003018002814002e1700281400
-2814003018001e0f00201000160b001e0f00ffa142060300201000180c00201000301800
-1e0f001e0f00281400180c00140a000e0700040200140a00180c00160b00160b00281400
-ff9c38ffa64cff9b36ffa040ffa54affa244180c00281400160b002613000e0700180c00
-0e07003a1d002613000e07002613002613000c0600301800160b001e0f001e0f00180c00
-0e0700160b000e0700140a00140a00160b000c0600180c00160b00201000180c000e0700
-0c0600140a00160b00180c00060300180c00160b00201000140a000402002613000e0700
-180c00140a00160b001e0f00060300201000160b00060300160b00060300261300140a00
-0e07001e0f00201000160b00160b00140a002010001e0f00301800180c00180c00281400
-160b00160b00160b00160b000603001e0f000e0700281400
-160b002010001e0f00140a00180c002010000603000603001e0f000e0700160b00281400
-160b00060300160b00140a002613002814000e07002010001e0f00201000281400020100
-180c001e0f000c0600281400160b00160b00160b00160b001e0f00160b00261300160b00
-140a00060300160b001e0f001e0f00140a001e0f00180c002010002814000e0700201000
-180c001e0f00160b00160b00180c001e0f00180c000e0700180c00140a00180c00180c00
-0e0700160b00060300180c002e17002613001e0f002010002814003018001e0f000c0600
-0e0700160b00060300160b002010002e17002010000e07002010000e0700160b001e0f00
-160b00180c00140a001e0f00201000261300180c00140a00160b00281400281400160b00
-201000180c000e07002613000e07000e0700060300281400160b002e17002010001e0f00
-0e07000e07002010001e0f002613003018002010002010000e0700281400281400180c00
-180c002010002010002e17000c0600140a00180c00140a00180c00201000201000180c00
-261300160b000e0700060300201000140a000e0700201000201000180c001e0f00281400
-201000180c00201000160b000e07002010000e0700160b00140a000e0700281400201000
-0603000402000c06002010000603001e0f00060300160b00261300160b00160b001e0f00
-1e0f00261300301800201000201000160b00160b00301800180c00180c00301800180c00
-160b00160b00160b00140a00160b001e0f00261300261300201000160b00281400140a00
-0e07001e0f00261300281400261300160b00201000160b00140a000c06001e0f00060300
-140a000e0700ff952a0603002613002e1700060300160b00160b00201000140a000c0600
-2010000e0700160b00ffa54a140a001e0f001e0f000e07000201002010001e0f00201000
-160b00201000140a00261300201000201000140a001e0f000e07002010001e0f00140a00
-160b00201000060300201000180c00040200180c000201000e0700160b003018001e0f00
-2814001e0f000e07001e0f001e0f003018002613001e0f000e0700160b00201000ffa54a
-160b000c0600180c001e0f002010000c0600160b00140a00ff98300e07000c0600281400
-160b001e0f000e0700140a000603000e0700180c000201001e0f000e0700160b000c0600
-0e07001e0f00160b000e0700140a00180c00281400160b002010000402001e0f00261300
-140a00201000180c000e0700160b000e07001e0f00140a002814002010000e0700261300
-160b00160b002010002e17002010002010000c0600160b00040200201000180c00160b00
-160b00160b00180c00180c00160b001e0f000c0600281400261300140a00180c00180c00
-180c00201000301800201000140a00261300281400301800160b000603001e0f00201000
-301800160b001e0f000e07000c06000e0700140a00201000281400301800160b00140a00
-261300261300281400301800160b00281400381c00281400281400261300140a00201000
-0603000603000c0600180c00140a00160b000e0700301800160b002814000e0700261300
-ffa54a2814002613003018002010002010002010002814002613002010002e1700281400
-281400261300261300321900381c003a1d002814003a1d003018001e0f00281400160b00
-281400261300160b00160b00201000180c00ffa1421e0f000e07000603000e07000e0700
-0603000603001e0f00180c002814001e0f000e07000e0700140a00ffa64cffa040ffa448
-2010000c0600201000140a00201000180c00ff9d3aff9d3aff9b361e0f00201000180c00
-2010000e07000e07000603001e0f000201001e0f003a1d00160b002e17000e0700160b00
-2814000e0700020100201000160b00140a00140a00060300160b000e0700160b00160b00
-140a00281400160b00160b00180c000e07000e07000e07001e0f00160b000e0700160b00
-140a00140a000e0700201000160b00160b002010001e0f000c06001e0f00160b00160b00
-160b00160b00381c00160b00281400180c00201000201000160b00261300201000301800
-0c06002010000e07000e07002010000c06000e0700180c00
-201000160b00261300140a000e0700160b00140a002e1700160b00160b000e0700201000
-160b00261300180c00160b000e0700180c00201000201000160b002010000e0700160b00
-180c002e1700160b00140a00201000060300180c00160b000c0600201000160b000e0700
-140a00140a00261300160b00180c000603002010000e07000e07000e0700160b001e0f00
-0e0700281400180c00261300060300160b00140a002010000e07000e0700281400160b00
-160b00281400261300140a00140a00201000180c00060300201000180c000c0600160b00
-160b000c06000e07002814002613002010001e0f00201000140a002613001e0f001e0f00
-2814002010000e0700060300160b002010001e0f000e07002010000e0700140a00261300
-040200040200140a00060300301800140a000c0600160b000e07001e0f00140a000e0700
-201000060300140a00160b002010002010000c06002814000e0700201000140a00180c00
-160b00261300180c00201000160b000e0700060300160b00201000301800160b001e0f00
-0603000c0600201000160b00060300201000201000160b00160b000e0700020100160b00
-140a00201000140a00140a00140a00140a00160b00201000160b00180c001e0f00201000
-0201001e0f00140a00160b001e0f00160b000e0700060300160b00301800160b00281400
-2010002e1700261300140a00281400160b000e07000c0600140a00201000160b00180c00
-281400201000160b00160b000e0700281400180c00180c00140a00160b00160b00180c00
-2814000e0700140a00160b00180c002010001e0f00201000160b000e07000e0700201000
-160b00ff9b360e07002010001e0f00201000281400201000261300381c00281400281400
-1e0f002e1700140a00261300ff9c38060300160b00201000160b00140a001e0f00201000
-1e0f00201000160b000e0700281400160b002814001e0f000e0700160b000e0700160b00
-281400160b000e0700180c002010002010000603000e07000e0700180c00201000140a00
-0e0700160b00180c000603002010001e0f001e0f000e0700160b000603000e0700160b00
-ff9830ffa040ffa142ff9c38ff9d3aff9c38ff9b36ff9e3c0e0700160b000e0700201000
-0c0600180c000c0600160b000e0700020100201000160b00160b001e0f00140a00160b00
-160b00180c00301800160b00160b00180c00160b000e07002613002010002e1700140a00
-180c00160b00180c00140a000c06000e07000c06000201002e17000e0700261300180c00
-0e07000e0700160b00160b000e0700281400201000060300140a00140a001e0f00160b00
-180c00160b00160b002613002010002613001e0f00160b001e0f00180c00160b00180c00
-140a00301800160b00160b000e07000e0700160b00281400060300160b00201000140a00
-020100180c000e0700180c00201000020100160b00160b000c0600160b00301800201000
-301800261300201000160b00201000201000201000140a00160b002010000c0600140a00
-180c00140a00201000160b001e0f00180c00160b00201000140a000e07000e0700201000
-160b00ffa244160b001e0f00160b002613002814002010003a1d00201000261300201000
-2814002010002010003a1d002613003a1d004221003a1d00160b00060300281400201000
-180c00281400201000201000261300040200060300180c00160b002814000e0700160b00
-2613000e0700201000140a00140a002010002e1700ff9326ffa74e2613001e0f00180c00
-2814001e0f002010002e1700201000281400160b00160b00261300ff9d3affa040201000
-1e0f00201000140a00201000160b000e0700180c000603000603001e0f00201000060300
-160b00281400160b00140a00160b001e0f000c0600060300060300140a000c0600160b00
-1e0f00281400180c00261300160b002613001e0f00201000180c00180c000c0600140a00
-0e0700180c001e0f000e0700261300160b00160b00160b00180c00180c00201000140a00
-261300201000281400060300201000160b00160b002010000c0600180c00160b00281400
-160b00140a00140a00140a001e0f002613001e0f00201000
-060300160b00160b00160b001e0f00261300160b001e0f00180c000c0600281400160b00
-1e0f002e17002010001e0f002010002010000603001e0f00140a00160b000603000e0700
-180c001e0f00180c00160b00180c00201000261300160b00160b000e07001e0f00281400
-2010001e0f00180c002010000c06001e0f000e07000603001e0f00160b001e0f00381c00
-140a00160b000e07001e0f00180c00140a00160b00160b00201000201000160b00140a00
-1e0f000402002010000e0700140a00180c000603000e0700140a002010001e0f00201000
-201000261300180c00160b002010001e0f00180c00160b001e0f002010001e0f00140a00
-180c002814000e0700201000140a00201000201000281400201000140a000e0700160b00
-160b002010000e07000e07000c0600160b000e07002010002e1700160b00180c000e0700
-180c00201000160b00201000160b00281400201000160b000e07000e07001e0f000e0700
-160b002814000e07000e0700160b000c0600180c00160b000e0700201000140a00160b00
-160b00140a001e0f00180c00040200201000160b000e07002010000e0700160b00060300
-0e07000e07000e07000e0700160b00160b00160b00060300160b00261300180c00201000
-0c0600160b00160b00160b00160b00160b00160b000e07000c06002010001e0f00261300
-201000281400261300201000281400201000060300201000060300180c00160b001e0f00
-180c00140a00060300201000281400180c00140a00060300160b000e0700160b00180c00
-0e0700160b00201000180c00180c001e0f000e0700261300261300180c00201000040200
-ff9e3c2814002010002010002814000c0600301800381c002010001e0f00281400301800
-160b00140a00201000160b00ffa142261300180c003018003a1d001e0f000e0700201000
-060300160b001e0f00160b000e0700160b00160b00140a00381c002613002e1700160b00
-160b002010002e17002010002010002010000e0700160b00160b00261300201000160b00
-2613000c06002814002814003018000c06000e07002010000402000e0700160b00060300
-140a00160b00201000140a00160b00180c00261300160b000e0700140a00140a00040200
-2010002010001e0f000e07001e0f00140a00160b00140a00140a000e07000e0700060300
-0e07001e0f000c0600060300281400180c00140a00140a002010001e0f000e07001e0f00
-201000160b001e0f00180c001e0f00261300160b00201000180c00160b00160b00160b00
-140a00180c002010001e0f000e07000c06000c06001e0f000c0600160b002814000e0700
-160b002613002613000c0600140a00160b00140a000e07000e07000e0700201000201000
-140a000c0600281400160b002e1700201000301800261300180c000e07000e0700261300
-2010002010000e07000e0700140a000e0700321900180c000e0700201000160b000e0700
-160b00160b00281400180c00301800160b00160b00301800201000180c001e0f001e0f00
-160b000c0600281400180c00160b000e07001e0f001e0f001e0f00160b00180c00281400
-201000281400ffa040402000201000281400160b002010001e0f002010002e1700261300
-2010003219003018001e0f002814002814003018002814002814002e1700180c00201000
-180c00160b000e07001e0f00ff9d3a180c00160b00180c000c0600140a00160b00180c00
-140a00201000261300281400140a001e0f00ffa2441e0f00160b002814001e0f00201000
-2010002814003a1d003a1d004422002e1700201000261300201000201000160b00ffa244
-0c06000c06001e0f00180c001e0f002010003018000e0700160b000e07000e0700160b00
-0603001e0f00160b000603000e07002e1700160b00040200201000281400160b00060300
-2814002010000e07000e0700281400160b001e0f00160b001e0f00060300160b00281400
-180c000e07000e0700180c002814002814000e07002010000e07000c0600160b00201000
-160b00180c00160b001e0f002010002010001e0f00160b00301800180c000c06000e0700
-0c06000e07000c0600160b00180c00140a00160b000c0600
-0201000e0700201000201000180c00160b00201000160b00201000140a00301800160b00
-2010002814001e0f00140a000201000e07001e0f002010001e0f00180c002010000e0700
-180c00201000140a00261300160b00180c00180c000c06002010002e1700160b00201000
-160b000e0700160b001e0f00261300160b00160b00180c000e0700160b000e0700301800
-180c00201000160b001e0f00160b00180c00160b00201000261300140a00201000140a00
-140a00140a00060300281400160b00301800160b000e07002010001e0f00180c00281400
-201000140a002010002e1700281400180c00060300040200160b00201000160b00180c00
-261300201000261300201000180c00201000160b00201000160b00060300201000160b00
-160b001e0f002010001e0f00160b00160b000e0700201000060300180c00201000180c00
-1e0f00201000160b00261300160b00180c00201000160b001e0f000c0600261300040200
-2814001e0f00160b00160b001e0f00201000180c002e17000e07002613000c0600201000
-160b00261300180c00180c00160b000e07002814000e0700160b000e0700180c00160b00
-1e0f00180c001e0f00261300301800140a00060300140a002613000e07001e0f00160b00
-160b00180c00281400180c00180c00180c000603000603000e07000e07000e0700201000
-2e1700301800160b000603000e0700180c001e0f00160b00201000160b000e0700160b00
-160b002e17001e0f000e0700180c004221000e0700160b00160b00180c00160b000c0600
-160b002010002010001e0f000e07002814000603002814000e07000603000603000e0700
-ff952a2010000e0700281400160b002814003018003018003a1d004c2600402000321900
-301800281400140a002814000e0700ff9e3c201000201000060300180c003018000c0600
-281400180c00201000180c00140a000e07000e0700261300201000160b00201000160b00
-201000160b003018000e0700160b001e0f00201000160b000e0700201000261300160b00
-0e07001e0f000c0600160b00301800160b00281400160b001e0f00160b00160b000e0700
-1e0f00160b001e0f00160b000c0600160b00160b00140a00060300160b000c06000e0700
-0603000603000603001e0f00281400160b00140a00160b000c06000603000c0600281400
-160b001e0f00160b00160b00160b00160b000e0700201000020100160b00261300201000
-160b00180c000e07001e0f000e07000e07001e0f001e0f00140a00160b00160b00201000
-140a002010000e0700261300140a00160b001e0f00140a00060300160b001e0f00060300
-180c00140a002010000e07001e0f000e07000603000e07002e17001e0f00160b00201000
-381c00160b00160b00140a00160b000e07001e0f00160b00180c00160b00160b00261300
-201000140a000e0700160b00180c00201000281400160b00261300160b002010001e0f00
-2613002814002814002814002010003219002814002613002814001e0f000e07001e0f00
-0603002814002e1700140a00160b00140a00160b001e0f00160b002e1700201000160b00
-140a00160b00160b00ff99323018001e0f001e0f00281400381c001e0f00301800160b00
-201000201000160b001e0f00281400160b00381c00261300281400201000160b00201000
-160b00201000261300ff9e3c0c0600040200160b00301800261300140a00180c001e0f00
-0402000e07000e0700180c00180c00160b000e07001e0f00160b002613001e0f00301800
-2010002814004020004221003018003219002814002010002e17000e07000e0700261300
-fffcf8301800281400160b00160b000e0700201000160b00201000180c000e0700281400
-261300140a00160b00140a002814001e0f000e0700201000160b00160b00201000140a00
-180c00281400060300160b00160b00261300140a00060300160b00160b00281400201000
-140a001e0f000c0600140a00201000261300140a000e0700201000180c00160b001e0f00
-140a002613002010000e0700160b00140a00160b00160b00281400201000201000201000
-180c00140a00281400160b00201000160b00140a00281400
-0603000e0700180c00140a003219002e1700160b00160b00201000261300160b00180c00
-1e0f00160b002814001e0f00160b00201000201000201000201000160b00201000201000
-140a001e0f00180c000e0700281400160b00160b00140a00040200201000281400201000
-0e07000603000e0700160b000c0600201000160b00140a00160b001e0f00180c00140a00
-140a00140a00140a00180c00180c00180c001e0f000e07002814001e0f002010001e0f00
-0e07000c0600201000201000180c001e0f00140a00140a000603000c0600020100261300
-0e0700160b000e07000c0600140a00261300060300160b00160b00261300160b001e0f00
-160b00160b00281400180c00180c00180c000e0700160b001e0f002e1700160b000e0700
-160b00160b001e0f000e0700160b002010001e0f000e0700261300180c00261300160b00
-140a00281400160b002814000e0700160b002814002010000c06000603000603000e0700
-160b000e07001e0f00140a00160b00180c002010001e0f00201000201000060300201000
-201000140a000e07001e0f000e0700201000201000140a000e0700140a00201000201000
-180c00261300201000140a000e0700180c00160b00180c00160b00060300201000140a00
-1e0f002010002010002613002814002010000e07004020002010000e0700160b00281400
-180c00261300060300261300281400140a00160b001e0f002010001e0f001e0f00160b00
-0e0700180c001e0f00180c00020100160b002613000e07002613002814000603000e0700
-160b000e07000e07001e0f000e0700281400180c00140a000e07001e0f00160b00160b00
-ffa54a160b00140a000e07003018002814004a2500442200763b005c2e00542a00301800
-2e1700160b00321900060300160b00ffaa540e07000603002613000e07001e0f00040200
-3219002010000c0600140a002814002010001e0f002814000c06001e0f00160b00281400
-180c00261300180c00180c00201000160b00201000160b000c06002814001e0f00180c00
-160b00140a00140a00201000140a00140a000e07001e0f00160b000c06000e0700201000
-1e0f001e0f00140a00140a00140a000e07000e07000e0700040200160b00160b00201000
-0e07002010000603002010000c0600160b000c0600160b00201000160b000c0600180c00
-0e0700160b00261300160b002010000e07000c06000e07000e0700060300201000261300
-1e0f000603001e0f00201000180c00160b00180c00160b00160b00160b002010001e0f00
-1e0f00160b00261300160b001e0f00201000201000160b002e1700160b001e0f00261300
-201000060300180c00160b00281400180c000e0700160b00201000160b00160b00160b00
-140a00160b00201000160b00180c00140a001e0f00040200301800261300281400281400
-160b000e0700180c000e0700160b00140a00301800261300201000180c00140a00140a00
-160b00201000180c002e17003219002e1700180c00201000201000160b00060300060300
-1e0f00180c000e07000e0700140a00160b001e0f00140a00140a00140a00160b00140a00
-180c002613001e0f00180c00ff9e3cffa448201000160b00201000301800180c00321900
-201000301800201000201000201000160b00201000201000281400201000180c00140a00
-140a001e0f00ffa74e201000281400180c002010000e0700060300140a00160b000e0700
-040200201000140a00180c00281400ffa54a0e07002010002010001e0f00160b002e1700
-2814004422004c26003a1d00381c00381c003018004422002613002613001e0f00281400
-160b00ffa74e0e07001e0f00201000180c00140a000e0700160b001e0f000e0700060300
-1e0f00281400160b002010000c0600140a001e0f00160b00201000180c00261300160b00
-0603002010002814000201002814001e0f000e07002814000c0600160b00180c00060300
-140a00060300160b00160b001e0f00261300160b00180c00160b001e0f00201000180c00
-1e0f002e17000e0700201000160b000e07000e07001e0f001e0f00261300140a00060300
-1e0f00281400201000160b00160b000c06001e0f001e0f00
-2814001e0f002e1700201000180c00160b00160b00201000160b00160b001e0f00140a00
-160b00201000180c00180c00281400281400160b002e1700261300060300140a00160b00
-160b001e0f00140a00060300060300140a00180c00160b002010002814000e0700301800
-0e0700201000201000060300160b00160b002010002010000c06002010000c0600160b00
-180c00201000321900040200140a00160b000e0700180c00180c00201000140a00140a00
-1e0f00160b00060300180c00180c001e0f00281400180c002e1700180c00160b00180c00
-180c001e0f00160b000e0700140a001e0f000e07002814002010000e0700281400140a00
-160b000e0700140a00160b00060300281400140a00160b00281400020100160b00180c00
-261300201000160b00180c00261300160b00281400180c00261300160b00060300160b00
-4a2500180c002010002e1700201000060300201000261300201000140a00281400160b00
-281400160b00140a00160b001e0f000c06000c0600140a00060300160b00201000180c00
-160b00160b00160b00060300180c001e0f00201000140a00160b000e0700180c000e0700
-2814000e07000c06002010000e0700160b00180c00281400180c001e0f00281400301800
-281400281400180c00160b000e0700281400281400160b002613000e0700160b00160b00
-0e0700160b000c0600140a00180c000c0600201000201000261300281400160b00201000
-160b003018001e0f001e0f00201000261300261300160b00281400160b00281400160b00
-2e1700160b00060300160b000201000603002010000e07001e0f002613001e0f00040200
-ff9c38140a00201000160b001e0f003018004020005229006432007038005c2e00422100
-2814000e07000e0700201000160b00ff9d3a381c00180c00201000261300160b00180c00
-0e0700160b00160b00301800140a002010000c0600160b00160b003018000c06001e0f00
-180c000402002010003018003a1d00180c002814002e1700180c00281400140a00261300
-0e0700160b002814000e0700201000040200180c003a1d001e0f00201000160b000e0700
-2814000c06001e0f00160b00020100160b00140a00180c00201000160b00180c00281400
-0c06001e0f000e0700180c00160b00160b000c0600060300160b00140a00180c000c0600
-160b000e07000c0600140a00020100201000201000160b000e0700160b002613001e0f00
-0e07000e0700160b000e0700060300180c00160b002814001e0f00180c00160b000c0600
-160b000e0700160b00160b00180c000c0600140a00201000160b001e0f00261300160b00
-160b00261300160b00160b001e0f00160b001e0f000e0700160b001e0f002814000e0700
-180c00281400261300180c000e07002814001e0f001e0f000e0700160b002e1700201000
-0c0600160b00160b00160b002010001e0f00160b002010001e0f002010002010002e1700
-180c001e0f002010001e0f00201000201000160b00201000180c00261300261300180c00
-1e0f000e0700160b00160b00140a00160b002010001e0f001e0f00201000160b00160b00
-201000180c00160b00160b00281400201000ffa54a281400201000180c00261300261300
-301800201000180c003a1d002e1700180c002613002613000e07000e0700160b00140a00
-ff9d3affa2440e0700140a001e0f00201000160b00140a002010000e0700201000201000
-261300180c000c06000e0700ffa1421e0f002010002814001e0f004020003a1d00301800
-4a25004221005a2d005c2e00542a00422100522900542a00402000301800321900201000
-1e0f001e0f00ff9d3a180c00201000140a00261300201000160b002814001e0f000c0600
-0e0700281400160b000e0700060300160b00140a00160b00160b002010001e0f00160b00
-201000160b00281400140a000e07000e07002010000603002814000e0700201000160b00
-201000060300160b00281400261300261300160b00180c00201000140a00180c00160b00
-140a00160b00140a001e0f001e0f00281400160b00160b002814001e0f00201000180c00
-160b00160b00140a002010000e07002010001e0f00301800
-0e07001e0f000e0700160b002613000c0600180c00180c002e1700160b001e0f00160b00
-0e07000e0700201000180c001e0f00180c00160b00160b00060300180c000e0700281400
-281400160b00140a00160b002814001e0f00261300201000281400020100160b00160b00
-180c00160b00160b00201000281400160b00160b00180c00180c00160b00201000201000
-060300160b00060300160b00140a00140a00140a00160b00201000160b00180c00160b00
-0c06002010001e0f00160b00140a000e0700060300180c002010000e0700160b00180c00
-180c00261300160b00261300160b00140a00201000160b00160b001e0f00140a00140a00
-201000140a00281400060300180c00160b00180c00040200201000201000060300180c00
-2010001e0f002e1700160b00160b000e0700261300060300180c00180c00201000261300
-1e0f002010000201000e07000e0700201000140a00180c001e0f000e07000e07000e0700
-1e0f00160b00201000160b001e0f00281400140a00261300180c002613001e0f00180c00
-281400160b00060300180c000e0700301800201000160b000c0600160b000e07000e0700
-160b000e0700160b002613002613000e0700180c002613000603001e0f000e0700201000
-0e07000e07002613001e0f002010002613002010000e0700180c000c0600140a00261300
-2010001e0f001e0f00160b00201000201000180c00160b002814002814002e1700201000
-0603000e0700140a000e0700281400180c00140a00140a000c06000603000c0600060300
-160b00140a00201000160b000e0700281400160b00160b002010000201001e0f002e1700
-ff9d3a160b00160b002814003018002613005c2e00542a006432007e3f005c2e00301800
-422100381c00160b00201000160b00ff9e3c140a000603003018002010002010001e0f00
-180c00140a00180c00180c00261300140a002010002613002010002814001e0f000e0700
-2010000e07000603001e0f002613002814000c0600201000201000160b00201000201000
-2e17002814000c06001e0f00180c00201000180c00201000281400160b000c0600140a00
-201000261300301800140a00201000160b00140a00160b000603000e0700180c00261300
-020100160b00301800201000140a002010000e0700020100201000160b00160b000e0700
-180c00281400140a000e07000603000603000c0600140a00140a002010002010000e0700
-0e07000e0700201000281400180c001e0f000e07002814000e07000e0700201000160b00
-140a000603000e07000e0700140a00201000281400261300160b002613002613000c0600
-0201001e0f00160b002010000e0700180c001e0f00180c000e0700140a00160b000c0600
-2e1700160b00160b002613002e1700180c000c0600180c00301800140a00180c00140a00
-160b00140a00160b00201000160b00160b00160b00160b00140a00281400180c00180c00
-180c000e07002010001e0f000e07002814001e0f00140a00281400180c00281400020100
-261300160b00160b00060300160b00160b000e0700160b000c06002010001e0f00160b00
-201000160b00160b001e0f00140a00281400160b00ff9d3aff9c38160b00140a00301800
-2814000e07001e0f00201000201000180c00180c002010001e0f00201000ffa54aff9c38
-180c000e0700160b001e0f000c0600201000180c00160b00160b00201000140a000e0700
-1e0f000e07000c0600020100ffa040201000180c002814002814002e17003018005a2d00
-5c2e00763b006c36007e3f006e37006633005e2f004a2500402000301800261300281400
-140a00060300160b00ffa54a180c000c06000e0700201000180c000e0700201000160b00
-0e0700140a00140a00140a00180c00281400201000160b000603000e07001e0f00140a00
-160b002010000e07000603001e0f001e0f000e0700180c000e0700160b00060300201000
-201000180c00180c00201000160b00160b002010000603000e0700140a00140a000e0700
-180c00160b001e0f000e0700140a000e07002814002010001e0f001e0f00180c00201000
-201000160b00140a00160b002010001e0f002010001e0f00
-0e0700140a000e0700140a00160b00160b00180c00201000180c00160b00281400201000
-0e0700180c00261300180c00301800201000261300140a002613002e17002010001e0f00
-160b00281400160b00160b00201000180c002010000e0700160b00140a00160b00160b00
-2613002814000e0700160b00160b00281400160b00261300281400160b00140a00201000
-180c001e0f000c0600140a002010000e07000e0700180c00160b002814002010001e0f00
-160b00261300281400160b002010001e0f00160b00160b00160b00160b00160b002e1700
-261300160b002814002010000e0700261300160b00180c000e0700140a00281400060300
-160b001e0f00160b000e07002814000e07002613001e0f000e0700180c002814001e0f00
-2613002010000e07002814001e0f00201000160b000c06000201000c0600160b00140a00
-160b000c0600201000180c00140a00160b00160b00160b00020100160b00140a000e0700
-301800201000140a00160b000e0700160b002613001e0f00160b00140a00201000160b00
-160b00160b000e07002613000e07000e07001e0f00140a00140a00060300140a001e0f00
-180c00201000160b000e07002010002814001e0f00160b00180c00140a003018001e0f00
-140a00140a00180c002814001e0f00180c00180c001e0f00180c00180c00140a00201000
-201000281400160b000e0700160b001e0f00160b00180c001e0f00281400160b000e0700
-180c000e0700160b00160b00140a00160b00160b00060300180c00160b00180c00180c00
-0e0700180c000e0700140a00201000180c00281400140a00180c00201000201000201000
-ffa142160b000603002010002814002814003a1d003a1d005229005e2f005e2f00402000
-180c00201000201000180c00160b00ff9932040200201000281400261300140a00281400
-281400201000160b001e0f00140a001e0f00281400160b00201000160b00201000281400
-060300201000160b000e07002613002010001e0f00180c002010002e1700180c00201000
-1e0f001e0f00180c00180c00140a00140a000603000e0700201000180c001e0f00180c00
-0e07000c0600201000160b001e0f00160b00160b00180c00140a000603001e0f00160b00
-1e0f000e0700201000180c00160b00060300140a00060300160b00160b00160b001e0f00
-160b00160b00180c00060300160b002010003018000e0700180c00140a00281400160b00
-201000140a000603000e0700060300160b002814000c0600140a00261300160b00160b00
-261300180c000e0700261300160b003219000c0600160b00160b00160b00180c00201000
-160b002613000c06000e0700180c00201000201000160b00140a001e0f002613000e0700
-180c00160b00140a00180c00140a000e0700201000201000140a002010000e0700160b00
-160b00180c00180c00160b00180c002010000e07001e0f00201000060300140a000e0700
-201000160b00160b00140a001e0f00140a00160b000e0700160b000c06000e07000e0700
-160b000e07000e0700281400140a00261300160b00160b000603000e07000e0700140a00
-180c00281400140a00201000180c00160b00140a00140a00180c00ff9932ff9932ffa244
-ffa64c160b000e0700160b00180c00180c00ff9c38ffa448ff9932ff9b36140a00201000
-180c001e0f00180c00140a00160b00160b00160b000e0700160b000603002010000c0600
-160b000c0600160b00ffa54a2814002613002010002814002e1700301800542a00643200
-8a4500a45200b25900ca6500aa5500984c006e37006633005c2e00442200402000281400
-381c002010001e0f00ff9b36140a00180c00261300261300140a00180c00160b000c0600
-261300060300381c00201000180c00160b000e07000e0700140a00201000180c000e0700
-0e07000402001e0f00201000160b00160b000603000c0600160b00301800201000201000
-0e07001e0f00160b002814002010000402000c0600261300261300160b00201000281400
-2010000e07001e0f00140a000e07000e0700201000160b000e0700160b00201000160b00
-180c00140a00261300281400201000261300060300140a00
-201000281400201000020100201000160b002814000e0700180c00140a00140a00180c00
-201000201000060300180c00160b002e1700160b002814001e0f00160b00160b00160b00
-160b001e0f002010000e0700160b00140a001e0f000c06000e0700140a00160b000e0700
-1e0f00180c002613001e0f000e07000c0600160b000e0700201000201000160b00160b00
-160b000c0600160b000e07001e0f001e0f00160b001e0f000e0700281400201000180c00
-160b00140a002e1700160b000e0700201000060300201000160b00281400160b00261300
-160b00140a00180c00180c00160b002e1700201000160b00160b00201000261300140a00
-180c00201000160b002814000e0700160b00201000140a000603000e07000e07001e0f00
-0e07001e0f00140a001e0f00281400180c00301800060300160b000e0700160b00381c00
-201000160b00160b00201000040200160b00180c00060300160b00201000160b00201000
-0e0700201000160b002010000e0700281400160b002010002613001e0f00201000160b00
-180c00160b00160b000402001e0f00160b00180c000e07000e0700180c00180c00201000
-2613000c0600180c00180c00160b000e0700160b00261300140a000e0700160b00261300
-140a002814000e0700160b000e0700160b00180c001e0f00160b00281400180c00160b00
-2010000e0700201000140a00180c000e07001e0f00160b00040200060300160b00060300
-0603002010000e0700160b00201000180c000c0600140a00180c00281400180c00160b00
-281400180c00160b00160b00201000180c00201000261300321900140a00201000160b00
-ff9b362613001e0f00261300160b002e1700402000381c004c2600402000281400301800
-3018000e0700261300201000160b00ff9c38180c00180c00160b002010002e17001e0f00
-2613002010002814002814002010002010003018002814002010001e0f00160b000c0600
-1e0f00281400201000160b002814001e0f00180c002e1700201000160b00201000281400
-180c00301800201000160b00201000281400281400261300201000201000160b00180c00
-160b000201000e07002010002010000e07000e0700060300180c00180c000603000e0700
-160b00160b00160b00060300060300020100160b001e0f002814001e0f00060300160b00
-0e07000e0700180c00281400140a00160b00201000201000160b00180c00160b00060300
-060300201000180c00261300281400201000180c00201000201000201000201000140a00
-281400281400201000160b002613000e0700201000160b000e0700180c00201000180c00
-160b000201000402002814000e0700281400060300160b00301800160b00160b00261300
-201000180c00140a00160b00140a002814000e07001e0f00180c002010000e07001e0f00
-180c003a1d001e0f00301800261300160b002e17000c06000e0700180c00140a00180c00
-2613000c0600140a00160b002814002814000e07000201000e0700281400140a00140a00
-0e07000e07002814002010001e0f002814000e0700301800160b00180c000e0700201000
-140a00180c00180c000e0700040200160b00140a00261300201000201000160b001e0f00
-160b00ff9e3cffa54affa142ff9e3cff9d3a160b000e07002e1700160b000e07000e0700
-160b001e0f00180c00160b00160b00160b00160b000e07001e0f000e0700160b000e0700
-201000140a00140a00ff9428180c002814001e0f001e0f002010004a25005e2f00924900
-be5f00e47200ff8c18ff8102d86c00be5f009048008643006e37004a25004221002e1700
-2814001e0f00160b00ff9c381e0f00201000160b000e0700201000261300201000060300
-160b00201000060300140a00160b00180c000603001e0f001e0f00140a000e07000e0700
-060300281400060300160b00201000160b00160b00160b00140a00160b002814000c0600
-180c00140a000e0700140a00160b001e0f002010000603002010000c0600180c00180c00
-180c00160b001e0f00201000160b001e0f00180c00180c00160b00261300140a00140a00
-1e0f00140a00160b000e0700160b002010000e0700201000
-2e1700281400160b00140a00140a00201000180c00180c00160b00180c00281400201000
-2613002010001e0f000e07002613000c0600180c000e07000e07000c06002010000e0700
-180c001e0f000e0700ffa142ff9e3cff9d3affa142ffa74effa142ffa142ff9b36ff9d3a
-0e0700281400160b00160b00140a00201000301800201000261300160b002010001e0f00
-0e0700281400060300180c00140a00160b00140a00160b001e0f000e07001e0f00201000
-1e0f00180c000e07002010002e17000603000e0700180c00160b00160b000e07000e0700
-160b000e07000e0700140a00261300180c00060300140a000e0700201000180c001e0f00
-140a00160b00160b001e0f000c0600180c000c0600180c002613000e0700201000140a00
-0e0700160b002814000603002e1700180c000c0600140a001e0f00281400201000180c00
-201000140a002010000c06002010001e0f00201000060300180c000e0700140a000e0700
-0c0600160b00160b00160b00160b00180c00140a000e0700201000020100160b00160b00
-180c000e0700160b00180c00140a00261300261300180c002814002613000e07000c0600
-1e0f00201000180c001e0f00281400140a00261300180c00180c00160b002814000e0700
-160b002e1700140a002010000e0700160b00180c001e0f00140a00140a00160b00160b00
-060300160b000603002613000e07002010001e0f002613002010000e0700140a00180c00
-2e1700140a002e1700140a002814000e07002010002010000e0700160b00261300160b00
-160b002010002814002010000603002010000e0700160b00160b00301800160b00180c00
-ffa448180c00160b003018000e07002e1700140a00402000201000321900321900281400
-201000160b001e0f00261300180c00ffa448160b00281400140a002e17002010000e0700
-1e0f002e1700201000281400160b002613002814001e0f003018002613000e0700201000
-3a1d00201000180c00160b00180c002613002e17003a1d00201000ffab56261300301800
-1e0f00180c00ffaa54ffa142ffa040ff9b36ff9b362814003a1d001e0f00160b000e0700
-160b000e07002613002613000e07002010000e0700180c000603002010002613000e0700
-281400160b00160b00140a00160b00180c00160b00140a000c0600381c000e0700201000
-180c000e0700281400160b000603003018000e0700160b000e0700160b002613000e0700
-160b001e0f00201000201000201000140a00261300201000201000140a00281400201000
-0201001e0f00281400180c00180c00201000201000140a00281400201000180c00160b00
-160b00160b002814001e0f001e0f00160b001e0f000e0700160b00160b001e0f00160b00
-2e1700261300321900281400160b000e07000c06003018002613001e0f00160b00180c00
-1e0f00160b00201000160b00160b00201000160b00160b001e0f002010001e0f00160b00
-201000180c000e07002613001e0f00180c00160b00160b00160b00020100160b00281400
-160b002010000c0600140a00160b002010000e07001e0f00281400261300160b000e0700
-201000140a00180c002010000c0600140a00180c00160b00160b00060300160b00281400
-281400180c00160b00160b001e0f00160b000e0700180c002e1700281400160b00160b00
-180c000603003018002814000e0700140a000e0700140a00140a000e07000e0700160b00
-281400281400160b00ffa54a281400140a00201000281400301800402000763b009a4d00
-fa7d00ffa74effb366ffc58affa040f47a00b259009048006c36004c26003a1d005c2e00
-301800201000160b00ffa74e160b000e07000e0700140a00180c00160b00281400160b00
-160b000603000e0700160b00261300180c00160b00180c00140a000c06002814000e0700
-261300281400180c00180c001e0f00160b001e0f00160b00180c00160b000e0700201000
-140a00201000381c000e0700140a000e07000e07001e0f000e0700160b00201000060300
-160b002010000402002613001e0f00140a00060300060300140a003a1d00201000160b00
-2613003018001e0f00160b00180c000e0700281400261300
-0e0700201000140a00160b001e0f002010001e0f00180c000e0700160b002010001e0f00
-0e07000e0700160b000e0700281400201000201000180c00180c00160b00160b00261300
-040200ff9b36ffa1421e0f00180c00140a000c0600140a00261300180c00160b00281400
-ff9e3cffa2442e17002010001e0f002010000603000e0700160b00140a000c06001e0f00
-201000160b00180c00261300160b001e0f002010000c06001e0f00140a00140a00201000
-140a00180c001e0f00160b00180c00160b002010000c06000e07000e07000e0700201000
-1e0f001e0f000e0700020100160b00160b001e0f002010000c0600180c002e1700160b00
-180c000e0700160b00201000261300201000160b00160b00060300140a00140a000e0700
-2e17000e0700180c000603002010001e0f000e0700281400160b00160b00180c00140a00
-140a000c06000e0700160b00180c003018002010002010000c0600060300060300201000
-2010000402001e0f00140a000c0600180c00261300180c00160b000e0700281400201000
-201000180c001e0f00160b00180c00180c00140a00281400160b00160b002010002e1700
-180c000e0700160b002814001e0f00160b00060300261300201000160b000e0700180c00
-160b000e07000603001e0f00180c00160b00160b001e0f000e0700281400160b00201000
-3018000e0700201000060300160b00160b000e0700281400281400140a00140a00180c00
-160b00060300160b00301800140a00160b000c06002010002010002010002814000e0700
-160b00140a000c0600160b000c0600281400402000180c00160b00160b00281400140a00
-281400ff9b361e0f00160b00160b00160b003018002010000c0600201000201000281400
-180c002814002613002e1700ffa2442010001e0f002010002814000e0700281400301800
-2010003a1d00381c003018000e07003a1d000201002010000e0700281400281400301800
-3a1d00321900160b001e0f00201000ffa54affa64cffa952ffa64c2010002613002e1700
-2814002613002010002e1700281400261300281400201000160b00140a002e1700160b00
-180c00140a00160b00060300160b003018002e1700180c00281400140a000e07001e0f00
-1e0f001e0f00140a00140a000e0700020100160b000e0700140a00201000140a00160b00
-0402002010000c0600160b000e07000e0700160b000e07000c0600180c00160b00020100
-0603001e0f00160b00140a00180c000e0700160b000e0700301800180c00140a00261300
-140a000e0700140a00160b00140a00261300060300201000281400201000160b00180c00
-1e0f00160b00201000160b001e0f00160b00160b000603000e07000e0700060300281400
-0e0700281400201000180c00180c00140a00321900140a00160b00160b000201000e0700
-261300140a000e07002613000e07001e0f001e0f002613000e0700060300261300201000
-160b001e0f00201000261300261300160b000e0700140a00281400160b002e17001e0f00
-160b00201000201000201000160b00201000180c00201000060300160b00180c00201000
-160b00261300281400160b00201000060300160b000e07002613001e0f00201000201000
-0c06000e0700160b002010000c0600180c00160b00160b00281400261300160b00020100
-201000060300201000180c00180c00180c001e0f00140a00160b000c0600160b00040200
-0c0600160b00201000ffa142160b000603001e0f003018003219004221007e3f00984c00
-e07000ffa74effc080ffbf7effa74eff8810d26900904800763b005c2e004a25004a2500
-301800261300281400201000ff9d3a0e0700201000180c000e0700160b000c06001e0f00
-0c0600180c000e07001e0f000402001e0f00180c000e07000c06001e0f000603000e0700
-160b000e0700160b000603002010000e07000e0700201000140a00180c00160b00160b00
-261300140a00160b00160b00180c00180c00261300201000160b002010000e07000c0600
-2010000603001e0f00160b000603001e0f00201000160b002010002010000e0700140a00
-281400160b001e0f000c0600140a00160b00180c000e0700
-180c002613000e07000201002010000c0600301800160b00160b00281400301800180c00
-2613001e0f00140a000e0700201000160b00140a00160b00160b00060300020100ff9e3c
-ffa0400c06002e17000e07000e07002e17002010003018001e0f000e0700201000281400
-201000281400ffa448261300020100140a00201000201000160b00201000140a00140a00
-0c0600160b000e07002010002814003018003018002010002814001e0f00060300261300
-201000160b00160b000e07002814000e0700201000201000201000160b00140a00140a00
-160b000e07002010002010000c0600301800201000180c000c06000e0700160b00281400
-180c00201000160b001e0f001e0f00201000140a001e0f000e07001e0f00160b00261300
-2814000c0600281400160b00160b00281400160b00160b000e0700160b00180c00201000
-060300140a00140a00140a001e0f00180c00160b00160b00281400060300160b00201000
-140a00140a00140a002010000c06000e0700201000180c00201000201000180c00201000
-0c06000e07002613002010001e0f002010000e0700201000301800160b00140a00160b00
-160b00160b00281400160b000e07002814000603000e0700060300160b00201000180c00
-160b001e0f00180c002010001e0f000e07001e0f00160b00301800281400180c002e1700
-281400060300201000180c002010001e0f00140a002010002010002814001e0f00140a00
-160b00160b00180c00160b001e0f00160b00281400140a00301800180c00060300160b00
-180c00180c00140a001e0f00140a001e0f00201000140a002010002e17000e07001e0f00
-140a00281400ff99320c06000e07002814000603002010002e17002814002814001e0f00
-180c00140a00281400ffa54a160b00301800261300140a001e0f002010001e0f00160b00
-180c00180c00160b003018003018002814002010001e0f00140a001e0f00261300160b00
-2e17003219002010002814002814002613003219002814001e0f00301800321900201000
-2814002e1700160b00180c00261300402000180c001e0f00301800301800321900201000
-ff9c38ffa64c1e0f000c0600301800281400180c00180c00140a00261300180c00201000
-140a000e0700180c000c0600160b00140a002010000201000c06000603000e0700160b00
-0e07001e0f001e0f00201000160b00201000140a00140a00160b000603001e0f000c0600
-160b002613000e07001e0f00160b002814002613002010002e1700160b00160b00321900
-201000201000201000140a00381c000603000c0600160b002010000e0700160b000e0700
-1e0f00201000201000180c002010001e0f00160b00180c00160b00060300160b000e0700
-0e0700160b00160b00261300140a00160b00160b00180c001e0f001e0f00140a00180c00
-281400281400180c001e0f00160b002e1700140a002613000402002814001e0f000e0700
-2814000e0700160b00201000201000180c001e0f00160b000e07000e07000e07000e0700
-2e1700160b000e0700281400180c00180c00281400201000281400201000160b00040200
-0e07002010002814002010001e0f00201000180c001e0f00160b00160b002010001e0f00
-2814002010000e07000e07000603000e0700180c00201000140a00281400140a00160b00
-2010001e0f00160b00180c00201000160b00201000160b000c06002010001e0f00060300
-0e0700180c00160b00ff9d3a160b00160b00261300281400381c005c2e005c2e00904800
-e07000ff870effa448ffa64cffa244e87400b85c00904800763b005c2e004a25003a1d00
-301800201000281400ffa4481e0f00201000180c00160b00180c000e0700201000261300
-160b000e0700160b000402000e07000c06001e0f000c0600201000160b00180c00201000
-2010001e0f000c06000c06001e0f000c0600140a00140a00140a000e0700281400180c00
-0e0700180c00140a000e07000e0700140a000c06001e0f000c0600160b000c0600040200
-140a00180c001e0f00160b000e0700160b002e1700140a00140a000e0700160b00160b00
-3018001e0f00201000160b00160b00281400140a00281400
-201000201000201000160b001e0f001e0f000c06002010002e1700201000201000140a00
-180c000e0700201000140a00140a00140a00160b00160b00201000160b00ff9d3a180c00
-180c00261300140a00180c002e17002010002e17002010002613000e0700201000020100
-261300160b00281400ffab56180c00140a000e0700180c00201000201000060300020100
-160b002010000e07001e0f002613000e07000e07003a1d00160b00160b00160b00160b00
-160b00140a00140a00201000140a002e17001e0f00140a00060300140a00140a00140a00
-2010000e0700261300180c00160b000e0700160b002613000603001e0f001e0f00160b00
-0e07000c06001e0f00201000201000160b00060300160b00060300160b00160b000e0700
-2010001e0f001e0f00281400180c00180c00160b000c06000c0600180c00160b000e0700
-160b00180c00160b000e0700160b002010000402002010000c0600160b00160b00160b00
-0c0600140a001e0f001e0f00201000160b000e07000c06002010001e0f00160b00301800
-2010000e0700180c000e07002814000402001e0f00160b00160b00160b00201000160b00
-180c00140a00201000180c001e0f001e0f00261300060300140a00201000060300201000
-201000160b00160b00180c000201001e0f00160b00180c000603000603000e07000e0700
-1e0f00180c002e17000e0700180c00301800060300180c002814000e07002010000e0700
-2e17001e0f000c0600140a00160b00140a00180c00201000160b000e0700201000140a00
-140a000e0700140a00160b00140a00020100160b00160b002e1700201000160b000e0700
-140a00261300180c00ffa2442010000e07000e0700281400201000140a00180c00281400
-160b001e0f00ffa74e140a000e0700180c002613000e0700281400201000281400160b00
-160b001e0f00301800160b00281400140a00ffa54affab562613001e0f00140a00ffa64c
-ffa54a301800321900ffab564221003018003a1d003a1d00402000160b00422100160b00
-281400180c002010000e0700381c002e1700281400261300381c00261300301800261300
-2e1700281400ffa244ff9e3c160b00201000160b002010001e0f001e0f00180c00180c00
-1e0f00160b000603000e0700160b000603000201000c06000201001e0f00160b00201000
-160b000402000e0700160b000e0700160b00201000160b000e07001e0f000c0600201000
-2010000603000e0700281400140a000603002010002e17001e0f000603001e0f00180c00
-180c000e0700160b00060300140a00180c00140a000201002613001e0f00180c000c0600
-160b00180c00140a00160b00060300160b002010001e0f002010002814000c06001e0f00
-180c00160b002e17001e0f00160b00060300160b00140a001e0f001e0f000e0700180c00
-201000201000160b00160b000e0700140a000e0700160b00180c00160b00201000201000
-201000060300201000140a00160b001e0f003018001e0f00140a00201000281400180c00
-160b00301800160b002814000e0700180c00160b00180c000e0700140a000e0700060300
-281400160b002814001e0f00160b001e0f00160b00060300160b00060300160b00201000
-301800140a002010001e0f00160b000e0700140a00160b000201002010002613001e0f00
-2814000e07000e0700160b00160b00180c001e0f00140a00140a000603002010000e0700
-2613000e0700040200ffa64c160b002613001e0f003018003a1d005a2d00542a007e3f00
-8a4500ce6700ea7500fa7d00ea7500ce67009249007e3f005c2e004a25004a2500321900
-2613000e0700180c00ff9e3c201000140a000c0600180c00201000261300180c000c0600
-0e0700180c00020100160b00160b003a1d00160b00160b00140a00180c00160b000c0600
-160b000e0700160b002010002010000e0700160b00140a00281400060300180c00180c00
-1e0f00140a00201000160b00261300281400160b00140a000e07001e0f00261300140a00
-180c00160b00180c00160b00261300180c00201000160b00281400180c00140a00201000
-180c00180c00180c002010000603002814001e0f00160b00
-160b00201000160b00160b00180c00140a00160b001e0f00201000281400281400321900
-2e1700281400261300201000261300180c00160b002010001e0f00ffa244201000160b00
-1e0f002010002010000e07001e0f00201000261300201000201000201000160b001e0f00
-201000281400301800261300ff9b36180c00201000160b00160b00160b00180c00201000
-160b00201000261300140a00160b00140a001e0f00140a00140a001e0f002010000c0600
-0e0700160b002e1700160b00201000180c000e0700301800160b001e0f00201000180c00
-160b00160b00180c00160b000e0700201000281400160b000e0700160b00140a000e0700
-201000180c000e0700180c00201000160b00180c002010000e0700201000060300321900
-1e0f00160b002010000c0600160b00160b002814002e1700180c00140a000c06000c0600
-0e0700261300201000180c00160b001e0f002010000c06002010003018001e0f00261300
-160b002010000e0700160b002814000e0700160b001e0f00160b00201000160b00281400
-060300180c001e0f00201000180c00201000261300160b00140a00321900140a00261300
-0603000c0600261300160b000e07000c0600160b00201000180c000603002010000e0700
-180c000c06002814000c0600160b00160b00140a00261300160b00281400140a00140a00
-0e07000e07001e0f00180c002613002613000c0600281400201000281400201000180c00
-0e07001e0f00140a00281400201000160b002010000e0700160b001e0f00140a00160b00
-180c000e07001e0f00180c00140a00201000160b000e0700160b00160b002010002e1700
-160b000c06000e0700261300ff9932140a000c0600321900160b00160b00261300281400
-201000ff9d3a201000201000201000201000281400201000140a00261300160b00281400
-180c00201000140a00ffa9522010002814003219002010001e0f002e1700ffa74effad5a
-3a1d00381c002e17002e1700ffad5a3018004a25002010003a1d003a1d00381c00201000
-3219003018003018002814002814002814001e0f00301800281400281400281400301800
-2814002814000c0600160b00281400180c003018002010000e0700140a000603001e0f00
-160b00201000261300160b001e0f000c06000e0700201000201000060300180c00201000
-0e0700140a00140a000e0700281400201000281400180c00180c00160b00160b00140a00
-2613001e0f00160b00160b00140a002010001e0f00160b00140a000e07000e0700180c00
-180c000e07001e0f00180c00160b001e0f00160b001e0f00160b002010000c06000c0600
-160b00160b00160b00160b00180c000e07000e0700140a000c06001e0f00201000140a00
-0e07000e0700201000160b00201000160b002814002010000c06001e0f00160b00180c00
-160b00261300281400160b00160b00301800201000160b000c06001e0f002613000e0700
-180c000e07002010004020000e0700040200040200180c000e0700160b000c0600060300
-0c06002613002814000e0700180c00180c00281400160b00160b00160b001e0f00140a00
-160b00261300180c003018002e1700180c000e0700140a001e0f00201000160b00160b00
-160b00261300201000180c00020100261300261300201000160b00160b00180c00140a00
-0e0700160b00140a002e17000e0700160b001e0f00060300060300160b00140a00201000
-180c000603000e07000c0600ffa040160b002e17001e0f00160b00381c004020005a2d00
-7038007e3f00864300aa55009a4d00864300783c00542a00422100402000201000301800
-301800281400201000ffa0400e0700201000201000281400402000160b00201000140a00
-140a00160b000e07001e0f00201000180c00201000160b00180c00180c00140a00140a00
-0e07001e0f00160b001e0f00160b002010002814000e0700180c002613000e0700040200
-0e0700180c00180c00160b002010001e0f00160b00201000261300160b000e0700160b00
-180c00180c00160b002814001e0f000c0600160b00160b00140a00140a001e0f00160b00
-5c2e00160b00060300180c00201000140a00201000201000
-160b00060300201000261300060300160b00180c00140a00201000180c000e07001e0f00
-1e0f00140a000e0700281400301800201000140a00180c00ff9932140a00020100180c00
-180c00180c00201000261300201000321900281400281400160b00281400201000281400
-1e0f00281400160b00060300ff99322010001e0f002814001e0f001e0f002814000c0600
-261300180c00160b00160b000603001e0f002010000e0700160b00261300160b00060300
-160b00281400160b00201000140a001e0f00140a00160b002010000e0700261300160b00
-160b00160b00160b002814000c0600160b002814000603002010002814001e0f00160b00
-140a00160b000e0700140a000e07002e17000e07000e0700180c00180c00160b000c0600
-160b00281400261300180c00140a000e07001e0f003018000e07000c06001e0f001e0f00
-0e0700160b00180c00180c00140a000e07002e17002010000e0700160b00160b00160b00
-2814000603002010002613002010001e0f00160b00160b00160b00201000201000160b00
-060300180c00201000160b000e0700160b001e0f002010000c06000e07000e0700140a00
-0e0700160b003018000c0600180c002e17001e0f00160b00201000140a000e0700160b00
-020100160b002613000e07000e0700160b000c0600160b00160b00180c000603000e0700
-0c0600281400180c00160b00301800060300160b002613000e07002e1700140a00140a00
-160b00281400160b00140a00201000201000201000261300160b001e0f001e0f00140a00
-2613001e0f00160b002010000c0600020100140a002010001e0f00261300160b000e0700
-1e0f00180c000603000603000e0700ff9c38ff9932ffa74effa448ff9e3cffa54affa74e
-ffa244160b000e0700180c00281400281400201000160b002613001e0f00201000281400
-2613000c0600ffab562010001e0f00321900281400261300ffa74effaf5e2814002e1700
-381c004221004422003219003a1d003018004a25003018005e2f00442200442200522900
-3018004a25003a1d003219004221003219002010002e17003a1d002814003018003a1d00
-2010002613002010001e0f00281400180c001e0f00140a00261300160b00160b00180c00
-140a00160b000201001e0f00160b000e07002010001e0f000e0700160b00160b00060300
-1e0f000c06002010000c0600160b002613002613000e0700261300140a00040200180c00
-160b00160b002010001e0f002010001e0f000e0700281400201000201000180c00201000
-1e0f00261300201000180c00140a000e0700261300160b001e0f00160b00020100160b00
-201000281400281400160b00160b00160b000e07000c06001e0f00140a00160b00140a00
-201000160b000c0600060300160b002613001e0f00180c00160b00180c00160b00180c00
-201000180c002613000e0700281400180c00160b00261300160b00201000261300261300
-0603000e07001e0f000603002010000e0700160b00180c00201000160b00201000140a00
-0e07001e0f002010001e0f00321900301800261300201000160b001e0f002010000e0700
-140a000201000e0700281400160b000e07000603001e0f00140a00180c000e0700160b00
-180c00140a00140a00160b002814000c0600180c00201000140a001e0f001e0f000c0600
-201000140a000603002010002613001e0f00160b000c0600281400020100201000160b00
-160b00160b00160b00281400ff9d3a2010002814000c06002010003018004a2500422100
-542a005c2e005c2e006c36007038005e2f004c2600402000542a003018002814002e1700
-261300180c00160b00ff9d3a201000160b00160b00040200140a00160b001e0f00201000
-0603002613000e0700160b001e0f001e0f00060300160b00020100201000160b00180c00
-2010000e0700201000160b003018000e07000c06000e0700281400020100201000180c00
-0603000e0700180c001e0f002010002010003018000c06000e07002613002814001e0f00
-1e0f000e0700140a002010000e0700180c00140a001e0f000e0700201000261300060300
-1e0f002e1700201000201000160b00060300301800160b00
-140a00301800160b00281400040200160b000e07002010001e0f002010001e0f00180c00
-2010001e0f002814000e0700201000160b000e0700180c00ffa040201000160b00281400
-201000180c00281400201000261300281400201000160b002613003a1d00160b000e0700
-261300140a00140a00281400ffa142160b00201000160b00160b00160b00160b00321900
-0c0600160b001e0f00160b001e0f00281400140a001e0f002613000603000e07000c0600
-160b00201000160b000e0700301800281400180c00160b001e0f00160b000c0600281400
-160b00140a000e0700160b00160b000c06000e07002010000c0600140a001e0f00160b00
-180c001e0f00201000201000160b00160b000402001e0f00281400180c000e0700201000
-201000140a00201000160b00201000160b00060300140a00160b00060300020100140a00
-0c06002010000e07002010000e07000e0700180c00180c002814000201000e0700281400
-2e1700281400160b00160b00140a00140a00160b002613000e0700201000140a00180c00
-060300160b00201000180c000e0700281400281400140a00040200160b00160b00180c00
-281400261300140a00281400261300201000140a00160b00180c00060300140a000c0600
-160b002613002613001e0f00281400060300201000160b000e0700201000201000261300
-2e1700160b00281400180c00180c001e0f00201000281400160b00160b002814002e1700
-201000160b00160b000c06000e0700160b00160b000e07000c06000c0600281400160b00
-281400160b00281400180c002010001e0f000e0700060300160b001e0f00301800060300
-180c00060300140a00180c00020100160b00160b002010003219001e0f001e0f002e1700
-140a001e0f000e07000c0600201000140a00180c002010002814002613002010003a1d00
-2010002010002814003018002010003018003a1d003219004020004020004221003a1d00
-4422005c2e00542a002613003a1d004a25004a2500ffba74542a003a1d004020004a2500
-2814004221003219003a1d002814002814003018003018003018003a1d003219002e1700
-281400261300281400160b003219000e0700201000ffa54a140a00160b000e0700201000
-201000140a000e0700160b000e0700020100140a000c0600180c00060300160b00201000
-140a00201000180c000e0700160b002010000603001e0f00160b00160b00201000180c00
-1e0f00180c002010000e0700140a00160b002613000e07001e0f00160b00140a001e0f00
-201000140a00180c00281400201000201000160b00140a000c06000c0600180c00201000
-140a00140a002613002010002814000e0700160b00140a000e07002e1700160b00160b00
-180c00180c00160b000e0700201000160b00180c00140a000e07001e0f001e0f00060300
-140a00160b00281400180c002010001e0f00160b000e07000603000c0600160b00140a00
-2010002814001e0f00201000160b00201000160b00261300180c00180c00201000160b00
-201000140a00160b00140a00180c00140a002814000e0700160b001e0f00160b00281400
-160b00201000160b00140a00140a00160b00281400140a002010000e0700160b00160b00
-2010002613001e0f00180c000e07002010002010000e0700060300160b000e0700160b00
-2613001e0f000e0700201000140a00140a000402000c06001e0f00160b00160b000c0600
-0e07002613000e0700160b00201000ff9932281400261300180c002814003018001e0f00
-2e1700542a004a25005e2f003a1d004221004221003a1d003a1d003a1d00321900281400
-301800060300ffa54a160b002814002e17000c0600201000060300281400180c00201000
-180c000e0700160b001e0f00160b000c06000e0700281400140a000e0700160b00140a00
-281400180c00201000140a002010000e0700261300261300160b000c0600201000281400
-180c00201000160b00201000160b00060300160b000603000e07000201000c0600180c00
-201000160b000c0600281400201000160b00160b00180c00160b00381c00140a000e0700
-0201000e0700140a00160b00201000160b00261300201000
-060300060300201000201000261300281400180c000201002e1700180c00261300180c00
-0e07002010001e0f002010000e07001e0f00140a00ff9830301800180c00160b00261300
-160b00160b002010002e1700201000321900381c002e1700321900201000201000140a00
-180c00160b00180c00281400ffa4482010001e0f001e0f000e07000e0700281400180c00
-2010001e0f001e0f00180c00180c000e0700140a000c06002613000c06001e0f00201000
-160b00261300160b002010000e07000e0700201000160b00180c00160b002010001e0f00
-180c001e0f000e07001e0f002613002010002814002010000e0700140a000e0700020100
-2010000e0700160b00040200140a00180c00180c00180c00140a001e0f00160b00160b00
-180c00160b00180c00381c00140a00140a00160b00201000160b00060300140a00201000
-0e07000c06002613000e0700160b000201001e0f00160b00160b00160b002613000c0600
-2814001e0f000201001e0f00140a001e0f002814002e17000e0700160b00140a00140a00
-0e0700201000180c00201000201000261300160b003018001e0f00140a000e0700180c00
-160b000e0700140a000c06000e07000e0700140a00160b00180c00160b00160b00140a00
-160b000e07002010001e0f000e07000e0700160b002010002010000e07002010001e0f00
-2613000e07000e0700201000201000201000160b00160b002814002814002010000e0700
-160b00201000160b001e0f000e0700160b002814002613002010001e0f00180c003a1d00
-2814000e0700160b002613000e0700140a001e0f00060300140a00160b00160b00160b00
-0e0700180c002613000e07000603002010000e0700180c001e0f002010002e1700281400
-180c00180c00201000180c00180c00160b00160b001e0f002814000c0600301800261300
-1e0f004422002814001e0f002613003a1d004020004221003a1d00522900422100422100
-3018004a25004a25004a2500402000522900542a00442200ffbb764a25004c2600643200
-3018004020004221003219004221003a1d004020003018004221004a25004221002e1700
-2010002e1700261300160b003018001e0f001e0f00281400ffa2442010001e0f001e0f00
-0603000e07001e0f00060300160b000c0600140a001e0f000c0600160b001e0f00160b00
-261300160b00201000201000020100201000160b000e0700301800201000261300201000
-180c001e0f000e07000c0600160b00201000201000160b00281400201000160b00201000
-261300160b00201000140a00201000201000180c00180c00180c002010001e0f00201000
-040200261300160b00180c000e0700060300160b00180c000c06002010001e0f00180c00
-180c002010002613002010002814001e0f000e0700180c00160b00160b00301800160b00
-201000201000201000160b000201002e1700180c00261300281400060300201000060300
-060300180c00140a00140a00261300140a00160b00261300160b00140a00060300160b00
-0e0700160b00180c00160b000e07002814000e0700180c001e0f00160b00160b00201000
-140a00160b00160b00160b001e0f000e0700160b002613002613001e0f00261300160b00
-0e07000e0700160b00160b00180c00180c00261300160b00180c00201000160b00160b00
-201000180c00160b000e0700140a00160b00160b00040200261300160b001e0f000e0700
-201000180c00160b00160b001e0f00281400ffa040160b00201000281400160b00180c00
-2814002e1700442200321900281400381c002e17001e0f00381c002814002613002e1700
-201000180c00ffa244160b00160b00140a00180c000e0700180c00180c001e0f00060300
-201000180c00160b001e0f00160b000402001e0f00201000160b00180c00160b00060300
-160b002010001e0f00140a00180c000e0700140a00160b00160b000e0700201000140a00
-1e0f000c06000e0700201000160b00160b000e07003a1d000e0700281400281400281400
-160b002010000e07000603000c06002613001e0f00281400160b00140a00160b00160b00
-281400160b00040200160b001e0f000c0600160b00160b00
-160b00180c00281400201000201000281400160b00160b00160b001e0f00261300201000
-0c0600160b00140a00201000060300140a00180c00ff9d3a140a00140a000e07001e0f00
-160b00261300201000381c002e1700381c004221003a1d003018002e1700261300281400
-160b00160b001e0f00301800ffa244201000180c002010002010002010002010000e0700
-160b00201000160b001e0f00201000160b002010002814000e0700201000201000301800
-2e1700140a002814000c0600160b000e0700160b000e07001e0f002010001e0f00160b00
-201000140a002e1700160b00180c002010001e0f00261300180c001e0f00180c001e0f00
-160b00160b00140a00140a000c06002814001e0f001e0f00160b001e0f00160b002e1700
-0e07001e0f00140a00160b002814000e07002613002010001e0f000e0700060300060300
-160b000402000e07001e0f00140a00140a000e0700281400160b000603000e07001e0f00
-140a001e0f00140a000e07002010001e0f001e0f00201000201000160b00160b002e1700
-180c00180c000e0700160b002010002613000e0700180c00140a00180c00201000160b00
-160b00180c002010002010000603000e0700201000060300160b001e0f00180c00140a00
-0e0700160b001e0f000e07002e17000c0600301800281400160b00140a000e0700201000
-140a00261300261300180c00201000402000261300201000201000201000160b00140a00
-160b000e0700180c001e0f00201000201000160b00180c000e0700160b00281400160b00
-160b000e07002814002814001e0f00201000261300160b000c06001e0f001e0f00281400
-140a002814001e0f00261300020100281400160b002010002010002010000603000e0700
-2613002613000e07002010002814001e0f00261300140a00180c00160b001e0f00ffa448
-2e17003a1d003219004a25003a1d004221005c2e004422004a2500542a005a2d00422100
-6633005e2f005c2e004c2600542a004a2500542a00542a005c2e00542a005e2f00402000
-5229003018004221003a1d003018004a25003a1d004221003219005229002e1700422100
-301800201000381c002010003018002814002010001e0f003a1d00ffa74e140a002e1700
-160b000e0700160b00180c00060300140a000c0600261300180c00201000160b000e0700
-1e0f002814002010000c0600180c000e0700180c002010002e1700281400180c00ffa448
-ff9c38ff9c38ff9c38ffa54aff952a201000160b000e0700201000160b00140a001e0f00
-160b00201000060300160b001e0f00301800160b00160b00160b00140a000e0700201000
-1e0f00160b00160b00160b000e0700201000140a00180c00180c000e0700160b00160b00
-0e07000e0700160b00160b002e1700281400261300201000160b000e07002010001e0f00
-0e07002814002010000e0700160b002613000e07002010000e0700160b00140a00060300
-2e1700301800160b00160b001e0f00020100180c00180c00281400201000281400281400
-160b002010000e0700261300180c00201000160b00180c000e07002010000e0700201000
-0e07002010000c0600180c002010002010002010000e0700180c00201000201000140a00
-0603000603002e1700160b00140a00160b00180c000603000c06000e07000e0700160b00
-0e0700160b002010002613000e07002814000e07000e07000603001e0f00140a00160b00
-0c0600201000140a00201000180c00261300381c00ffa2442010001e0f00201000261300
-381c00261300201000201000261300301800381c00281400381c002010002e17001e0f00
-180c00ffa0401e0f00160b00180c00160b00180c00180c00160b00180c00140a00160b00
-0e07000e0700281400160b00160b000e0700160b00180c00160b00140a00160b00281400
-281400201000060300140a000c0600201000160b000e0700160b00180c00160b00261300
-160b00140a000e07001e0f000e0700281400281400160b00201000160b00160b00180c00
-261300201000180c00301800160b002613001e0f002613002010001e0f00160b00180c00
-0e07002010002010002010002010001e0f00201000201000
-0c0600180c00140a00140a00180c00261300201000201000160b00160b001e0f00180c00
-160b00281400160b00140a000e07001e0f00201000ff9e3c2814000402000e0700281400
-2010002814002e1700381c003018004020003219002010004a2500180c00180c00180c00
-160b00180c00180c00160b00ffa54a1e0f00201000180c00060300060300301800261300
-2010002814000c0600160b001e0f00160b002613000c0600140a002814000c0600281400
-2010002613002613002010002010002613000e0700261300201000160b00140a000e0700
-160b000e07001e0f00201000160b00201000201000160b00201000040200180c00201000
-201000160b000e07001e0f001e0f002010001e0f000e07000e0700180c00201000160b00
-160b002e1700201000160b00160b000c0600160b002010000e0700180c00160b000c0600
-2010000e0700180c001e0f001e0f00160b00180c00060300180c00180c00160b000e0700
-160b00160b002010000e0700180c00160b00140a00160b000c06000e0700201000281400
-180c002010000603002010001e0f002010000e0700160b00140a002e1700180c00160b00
-180c00281400160b00160b003018001e0f00301800160b000603000c06000e0700160b00
-0e0700201000180c00180c00160b00160b00180c000e07001e0f002613001e0f000e0700
-0c0600160b003018001e0f00160b000e0700180c000e07002010000e07000e0700201000
-140a002010002e1700160b00160b00180c002814000e0700180c00160b00160b001e0f00
-180c000e0700160b00140a00160b001e0f001e0f00201000160b000e0700140a00261300
-2010000e0700160b000e07002613000c0600201000160b00160b000e0700160b00160b00
-180c002010002010000e0700261300201000281400140a003018002e17002010003a1d00
-201000281400281400ffaa542814002e17005c2e00442200542a005c2e00542a005c2e00
-643200643200663300643200663300542a006c36005c2e006c36006633005c2e00643200
-542a00643200542a004422003a1d003a1d004c26005229003018003a1d00402000301800
-2814003219003018004020003219002010002e1700201000140a000e07000e0700261300
-1e0f00301800201000201000140a000e0700140a000e0700160b002613000c0600140a00
-0e07000e0700140a000c0600281400140a00180c000e0700160b00ff9d3affa64c201000
-2814002814001e0f00180c00180c00ffa040ffa448ff9e3c160b000e0700180c00281400
-160b002613000c06000e0700160b00201000060300281400201000381c00060300040200
-201000160b00180c001e0f001e0f00160b001e0f00160b000e07001e0f00140a00180c00
-160b00281400140a00281400180c00180c003018002010002814002613003018001e0f00
-321900180c00180c001e0f000e0700140a000e07000e07002010002010000603001e0f00
-0e0700140a000e07002010001e0f001e0f000e0700180c001e0f00180c00160b001e0f00
-0c0600160b00140a00140a00201000160b00180c000e07002e17000e07001e0f00140a00
-201000160b002010000c06000c0600201000201000180c00160b001e0f000e07001e0f00
-160b00160b00160b00160b00201000160b00160b00180c001e0f00060300180c00160b00
-0603003018000e0700060300140a00180c000c0600140a00160b000e0700180c000e0700
-140a00160b00140a000e0700160b001e0f00201000261300ffa952140a00180c00201000
-2814002814002e1700160b00281400201000281400281400201000160b00060300ffa64c
-ffa2440e0700160b000e0700140a00201000160b00160b00060300140a001e0f00140a00
-0e0700160b00060300060300160b00201000160b00160b00160b003018000e0700261300
-301800201000140a002010000c06002613000603002e17002010002613002613001e0f00
-160b00201000160b001e0f001e0f00180c000c06002814002613000c06000e0700060300
-2613002814002814000e07002814000e07001e0f00201000160b000c0600201000060300
-201000160b00180c00140a00201000140a000e0700261300
-060300060300060300180c00201000201000060300281400160b002010000e0700060300
-2010002e17000e07000e07000e0700160b00201000ffa040281400140a00261300160b00
-160b002010002010002e1700301800301800301800301800281400160b00301800201000
-2814000e0700160b00201000ff9e3c160b00160b002814000603000e0700140a00281400
-0e07000c06000603001e0f002010000e0700160b000603002010002010001e0f00201000
-160b00160b000e0700020100060300201000160b002814002814002010001e0f00201000
-1e0f002010001e0f00160b00201000140a00180c00140a00020100160b00140a00160b00
-180c00160b00160b000e0700180c00180c000e0700140a000e07001e0f00180c00180c00
-160b002010001e0f000c0600160b00180c000e07000e0700180c000c0600160b000e0700
-0e0700261300060300201000180c00160b001e0f000e0700160b00160b000e0700261300
-0e0700201000060300180c000e07000c06000e07002613000c0600140a00160b00201000
-060300160b00201000140a00180c00201000160b00281400201000180c00160b000e0700
-301800140a002e17000c06001e0f000e0700180c00140a002613000603000e0700180c00
-060300180c00201000201000140a00160b00301800160b000e0700060300160b00201000
-201000301800201000160b000603000e0700180c000c0600140a00140a001e0f00261300
-160b00160b00281400301800201000160b000e0700160b001e0f00261300180c00281400
-160b000c06000e07000c0600281400261300160b00140a000e07000c0600160b00160b00
-160b000e0700281400160b00160b00160b000c0600160b001e0f002010002e17002e1700
-140a00160b00180c000e07000c06000e07002814002814003018001e0f00321900281400
-201000301800ffae5c3a1d003219004221004020004c26007038006e37007e3f00663300
-8643007e3f007038008a4500763b007e3f006e3700542a00763b006e3700ffc1826e3700
-5e2f005a2d00542a00663300542a005c2e004422004c26004a25003a1d003a1d00422100
-5229003018004a2500381c002613002e1700201000261300281400180c00301800281400
-2613003219001e0f00201000381c00180c00281400140a00160b000c0600160b000e0700
-160b00160b00180c00180c000603002613000e0700ffa040ffa64c180c00160b00160b00
-2010002e1700160b00160b00160b00261300140a00201000ffa54aff952a0e0700201000
-140a000e0700020100201000180c00160b00281400281400261300281400060300160b00
-020100020100201000281400201000160b000c0600201000180c002010001e0f001e0f00
-281400201000180c00261300140a003018000e0700281400160b002613002814001e0f00
-2e1700140a00160b00140a001e0f002010000e07000c0600160b001e0f000e0700261300
-160b00261300140a00201000281400140a001e0f00201000160b00180c00140a001e0f00
-2e1700140a00060300160b00160b001e0f00180c00160b00140a00281400301800140a00
-0c06000e07000e07001e0f00160b003a1d002e17001e0f00180c00160b001e0f00201000
-140a00201000160b000603000e0700160b000c0600281400160b00180c001e0f001e0f00
-160b00160b001e0f00020100180c00060300140a000e07002010001e0f000c0600140a00
-160b00180c000e07000e0700201000160b002010001e0f00201000ffa54aff9e3c201000
-1e0f00160b00140a001e0f002613002613001e0f00281400140a00ff9d3affa040201000
-140a000e0700180c00160b000e0700201000140a00160b000e0700140a000e07001e0f00
-0e0700160b000e0700301800201000160b00160b001e0f000e07001e0f002613001e0f00
-0402002814000e0700160b002613002010002010001e0f001e0f00180c00201000160b00
-0603002010001e0f00160b00201000160b001e0f000e07000e0700140a001e0f00020100
-2e1700160b002e1700140a001e0f00201000180c00201000160b00201000140a00160b00
-2e17000e0700160b00281400180c001e0f00160b00261300
-160b00201000180c00180c000e07002010002814000c06000603001e0f00160b00180c00
-0603002010001e0f001e0f00140a00160b00140a00ff9c38160b000e0700201000160b00
-201000301800281400040200201000261300321900201000160b00180c002613000c0600
-281400160b000e0700ffa1420c0600140a00180c001e0f00301800201000140a00140a00
-201000201000301800201000160b00201000180c002613000e07001e0f00060300160b00
-2814000e0700180c00180c002010001e0f00281400060300160b000e0700261300201000
-160b00201000140a00261300201000160b00201000180c00160b00040200160b00201000
-281400201000160b00140a00160b00160b001e0f001e0f00160b00160b00140a00020100
-040200201000201000140a000603000c0600201000160b002010001e0f000c0600160b00
-140a00281400281400160b00180c00281400160b00140a00160b00201000140a00180c00
-0e0700180c00160b00180c00160b00180c002010002010000402002814000e0700201000
-2613000603001e0f002010002010002010000e07001e0f003018001e0f00180c00160b00
-281400201000180c00060300160b00140a00020100201000160b00301800201000281400
-0e0700201000020100261300140a00281400160b000e0700180c00140a00180c00281400
-2814000e07000c0600160b001e0f00201000140a00140a00160b00160b00060300140a00
-160b00140a00160b00281400301800160b00160b002010002613002e17001e0f00160b00
-0e07000603000e07000e0700180c00281400180c00160b00180c001e0f000e07001e0f00
-160b00160b00201000160b00140a000e0700201000180c001e0f00201000201000201000
-140a00180c00201000321900281400301800201000160b00281400ffa54a301800160b00
-2613003a1d00ffad5a2814004422003219005c2e00542a007e3f009e4f009249009a4d00
-9e4f00984c00a25100984c009048009048008a4500864300763b00924900804000ffd0a0
-5c2e00864300763b007038005e2f00542a005e2f004c26005e2f004221005229004c2600
-4a2500381c003a1d003219002e17001e0f003a1d00160b001e0f001e0f002010001e0f00
-201000160b002814001e0f00261300180c00160b00160b002613002613002613001e0f00
-180c00160b00160b00140a00140a00160b00ff9b36160b000c06000e0700160b00201000
-160b003018002814002e1700201000201000281400201000160b000e0700ffa64c180c00
-160b00160b00160b00060300281400301800261300281400301800281400301800140a00
-160b001e0f000e07002010000c0600180c00281400201000201000281400020100140a00
-0e07000e0700281400201000160b00201000261300261300281400281400160b00180c00
-0c06002814002010001e0f00180c000e0700201000160b000e07002010000e0700180c00
-0603002010001e0f002e1700180c00140a000e07000402003219002010000c06001e0f00
-180c00201000201000160b00180c000e07000e0700201000140a00201000060300201000
-180c000e07002814000c06001e0f000e0700160b00201000160b002613001e0f00301800
-160b000e0700261300201000180c00160b00140a00160b00160b00140a00201000160b00
-2010000e07002010001e0f00201000160b002010002010000c06000e07000e0700201000
-201000201000422100281400140a000e07001e0f001e0f001e0f00160b00160b00ffa244
-ffa244ffa142ffa142ffa54affa244ffa244ffa142ffa448ffa040160b00160b00201000
-0e0700160b00180c00180c002e17000c0600201000201000281400160b00180c000c0600
-2e17000e0700160b001e0f001e0f000603001e0f00180c00180c00281400261300301800
-160b000e07002613000e0700160b00160b00160b000e0700160b001e0f002010001e0f00
-160b00160b00140a00201000180c001e0f000e0700180c00160b001e0f00140a00ff9c38
-ffa54affab56ffa64cffa244160b00160b00160b002e17000e0700180c00160b00140a00
-2814002010000e07002613002613001e0f00160b000e0700
-160b000e07002e1700140a002010000e0700140a000e07002010000e0700140a00301800
-2010000e0700160b000e07000402003018000e0700ffa1420c0600281400201000140a00
-160b00180c002613002613002613002010002e17000e0700160b00160b00160b00261300
-201000160b00ffa142201000281400140a002010001e0f00160b00261300140a00140a00
-0e0700201000160b00201000160b00160b000e0700180c00261300140a00160b000e0700
-0e07002613004221001e0f000e07000e0700160b001e0f00160b00180c001e0f00140a00
-180c00201000160b000603002010000603003018000201002010000c06001e0f000c0600
-0603000e0700160b00180c001e0f002010000402000603001e0f000603000e0700040200
-180c000c06002814002010000c06001e0f001e0f001e0f001e0f000e07001e0f000c0600
-2010002613001e0f00140a00180c00160b000e0700201000160b000e07000c0600301800
-0e0700140a00201000261300261300281400060300201000160b000201000c06000c0600
-0e0700180c002613001e0f00160b000c06001e0f00160b00160b00281400201000201000
-0201001e0f00180c00160b00201000180c000402001e0f001e0f000e07000e0700180c00
-160b000603000c0600160b003219002010000e0700160b000e07001e0f002010000e0700
-201000160b001e0f00281400201000160b000e0700160b00281400060300281400160b00
-2010000e0700160b002010002010001e0f002010001e0f00180c000e0700140a00301800
-180c00060300201000160b002e1700201000261300140a00180c001e0f000c0600180c00
-160b000603000603000e07000c06002814001e0f00180c00201000281400281400180c00
-1e0f002010003a1d002613002814002613002010002613000e0700ffaf5e261300301800
-301800ffab56381c004a2500542a006e3700542a00703800a25100b45a00d66b00d86c00
-de6f00ce6700bc5e00b45a009048009c4e009c4e009c4e00884400984c00984c00984c00
-8844007e3f00864300763b008643006e37007038008643005e2f004c26005a2d004c2600
-3a1d004020004221004020003a1d00381c003018002e1700180c00261300180c00160b00
-261300160b00040200301800201000140a001e0f000c0600140a000e0700201000020100
-160b00160b000c06000c06001e0f00ff952a140a002814000e0700281400160b00140a00
-3a1d000e0700201000140a00160b00281400160b00180c002010002010000c0600ffa040
-160b000c0600180c001e0f002010001e0f001e0f00060300160b00201000140a00140a00
-160b000603001e0f002e17002613000e0700160b00060300140a000e07000e0700020100
-1e0f002814000e0700160b00180c00160b00160b00140a00160b002814001e0f00281400
-2e1700281400301800140a00180c00180c00160b00261300160b00180c00160b00201000
-160b00160b00020100140a00160b00160b00201000160b00060300140a000402001e0f00
-281400201000160b00201000201000160b00160b000e0700160b002e1700160b000c0600
-1e0f00160b002814001e0f00160b000c0600160b000e0700201000060300201000160b00
-180c001e0f00140a00140a00201000180c001e0f003018000e0700140a00160b001e0f00
-160b001e0f00160b00160b00281400201000140a00140a00140a000c0600160b00180c00
-201000180c000402001e0f00201000140a00160b000603001e0f000e0700180c000e0700
-160b00201000201000160b00201000160b00180c002010000c0600160b00261300180c00
-1e0f00160b002010002010001e0f00201000281400140a00180c000e0700060300201000
-1e0f001e0f00140a00060300201000180c00140a003018001e0f000e0700281400140a00
-160b002010000e07002010001e0f00160b00160b00180c001e0f00160b00160b00160b00
-201000160b00160b00180c00160b00160b00201000060300ff9b36ffa54affa952201000
-201000301800160b00180c00ffa448ff9c38ffa74e2613001e0f00281400160b00281400
-261300261300060300140a00281400160b000e07000c0600
-2010000e0700180c002613000e07002010000e07000c06002814002010000c0600060300
-180c00180c00261300140a00160b001e0f001e0f00060300ff9020060300160b00201000
-1e0f001e0f00140a00261300201000160b00201000261300160b00160b001e0f00060300
-160b00fffcf8040200160b000c0600180c00160b00180c001e0f00160b00160b00160b00
-0e07001e0f00281400160b00160b00180c000e07002e1700140a002613000e0700060300
-2613002010001e0f002e17000e07002010002613000c06000e07002010002e17001e0f00
-180c00281400201000160b000e07001e0f001e0f00281400160b002010000e0700160b00
-0c06000e07002010000c0600180c002e17000e0700140a00180c002613001e0f001e0f00
-1e0f00160b00261300160b00140a00281400201000160b000e0700140a00180c000e0700
-180c002613000e07002010002010000603001e0f00180c00160b00160b00140a00201000
-1e0f00160b00160b00201000180c00160b00201000180c00160b000c06000e0700180c00
-180c002010002010002e17000e0700201000160b000e0700180c000c0600180c00201000
-201000201000180c00180c00140a00160b00180c00160b002613000603000c0600140a00
-2613002814001e0f00180c00160b000c06000c06001e0f002010000c06000e07000c0600
-160b000603000e07000c0600281400160b00160b00160b00180c00201000160b00281400
-160b002814000e07002010000e0700160b001e0f00060300201000180c00201000160b00
-180c00281400201000201000201000160b002814000603002010001e0f00201000180c00
-261300180c00160b00281400180c00180c00261300201000180c00261300261300201000
-140a00160b00140a00180c00201000261300160b00261300301800ffaa54281400402000
-321900381c00422100542a004221006e37007e3f009a4d00de6f00f27900ffad5affaa54
-ffa64cff8b16fa7d00c66300c86400b65b00ac5600a25100b25900a452009a4d00984c00
-a25100904800984c009048008643008643006c36007038006c36005c2e006432004a2500
-5229004a2500261300381c003219003a1d003a1d00281400201000301800281400201000
-281400ff9b36201000160b001e0f002e1700160b00160b001e0f001e0f000e0700160b00
-1e0f00180c00160b000e0700ff99320e07000e0700201000180c000e0700180c00281400
-160b002e1700301800301800281400160b00281400160b00180c00201000301800180c00
-ffa244160b002613001e0f00180c002e1700160b00201000180c00301800160b00301800
-160b001e0f00201000180c000e07000c0600201000160b000c06003219000603000e0700
-201000201000160b00160b00160b002e1700180c00180c00160b00301800160b00140a00
-201000060300281400180c00140a00160b002010001e0f00180c00180c00160b00160b00
-020100160b002814002814001e0f00261300140a00140a00281400201000261300160b00
-140a00180c00201000281400201000281400140a000e0700160b00160b00281400180c00
-0603001e0f002010002814001e0f00180c00140a00160b00160b00201000180c00261300
-1e0f000e07000201002814001e0f001e0f000e0700201000160b00180c000e0700160b00
-0e07002010000603002814001e0f00201000060300140a00160b00180c001e0f00160b00
-160b001e0f00160b001e0f00060300160b000e07002613002e17001e0f00160b000e0700
-160b000e0700180c000e0700160b000e0700180c002010002010001e0f00201000160b00
-2613001e0f00180c001e0f00261300040200160b000e07000e07000e0700201000060300
-140a000e0700140a00060300180c000e07002010000201000e07002010002814000e0700
-2613001e0f00201000160b000402001e0f000402002814000c0600040200160b00180c00
-0201002e1700201000160b001e0f00201000281400ff9d3a160b001e0f00180c00261300
-180c00201000160b00160b00180c00201000201000ff9d3a160b00140a00060300160b00
-180c00180c00281400261300201000160b001e0f00261300
-2010001e0f00160b002613000c0600281400160b000e0700180c00201000180c00160b00
-1e0f00180c00201000160b00140a00180c00160b00201000060300ff9830180c00140a00
-0e0700180c00160b00160b00160b00261300301800180c00140a00261300140a000e0700
-ffa54a140a001e0f00040200140a000c0600281400140a000e0700261300160b000e0700
-180c00301800160b00060300281400281400160b00160b00160b00180c002814001e0f00
-2010000e0700140a001e0f00180c00201000160b002010000e0700040200201000261300
-180c000c06000e0700160b00281400261300201000261300201000180c000e07000e0700
-160b002010000e07001e0f00201000160b00201000160b00180c001e0f00140a00201000
-0603001e0f001e0f00180c00281400201000201000140a000e07002010000e0700060300
-140a00160b002814002814000c0600160b000c0600180c00281400281400160b00140a00
-261300180c00160b00160b00160b00160b000e0700180c00301800160b00160b00060300
-0c0600201000201000261300281400140a00160b002010001e0f00261300160b00160b00
-201000140a003018002010002010002010001e0f001e0f00180c00201000160b000c0600
-201000201000201000180c00261300140a002814000e0700160b00281400140a001e0f00
-180c00040200301800261300060300160b001e0f002010000c06000e0700160b00160b00
-060300180c00301800201000160b00201000140a00180c00160b001e0f000e0700281400
-1e0f002613002010000603000e07002814000e07002e1700160b00261300160b00140a00
-180c00180c00160b000c06000603000e07001e0f00201000140a00160b00160b002e1700
-2814000e0700160b002e1700201000281400201000180c003018003018003018002e1700
-2e1700321900402000542a005c2e006e3700884400c66300ff8b16ffb66cfff3e6fffcf8
-fff8f0ffc488ffa448e47200ce6700b85c00de6f00c46200de6f00be5f00b25900b85c00
-fff8f0aa5500b25900aa55008844009a4d00884400783c005c2e006432005a2d005a2d00
-4a25003a1d004422004422003018003a1d002814001e0f00201000201000301800201000
-3a1d00201000ff9c38281400160b002010002814003018001e0f00060300160b00160b00
-140a00381c000c0600140a00ff9b36160b00281400160b00160b00160b00180c001e0f00
-2010003219003219001e0f00180c00180c00201000281400160b00160b00060300180c00
-ff9e3c140a001e0f00201000281400140a00201000140a000e0700201000060300180c00
-1e0f00180c00160b002010000e0700180c00140a00281400180c002814001e0f00180c00
-140a001e0f00180c002e1700160b00201000281400201000281400180c00180c00140a00
-201000381c001e0f00201000261300140a00160b001e0f002010000603001e0f00160b00
-160b001e0f00201000160b00261300180c002010001e0f00261300201000261300180c00
-0e0700281400160b001e0f001e0f002814002010002010000603002e1700180c00160b00
-2814000e0700180c00281400160b00201000180c00140a00281400201000140a00160b00
-160b002010000e07000e0700140a002010000e0700180c00180c00201000140a000e0700
-1e0f00020100160b00060300160b000e07000e07000c06002010000c06000e0700201000
-180c00201000281400160b00180c00201000180c00040200160b002e1700180c00301800
-2814000e0700140a000c0600140a00180c000603000201000c06002e17002814000e0700
-201000160b00180c00180c000e0700160b002010000e0700281400180c00180c00180c00
-180c00160b00160b00160b000e07000e0700180c00160b00140a00160b000e0700201000
-160b000e0700140a00140a003018002010000402000e0700201000201000160b00201000
-0e07000e0700140a000c0600201000321900ff9c380e07003018002010002010001e0f00
-1e0f00301800201000180c002e1700261300140a00160b00ffa142160b00140a00201000
-301800160b00180c000e07000e07000e0700160b002e1700
-160b000603000e0700160b000e07000e0700180c002613001e0f00160b000201001e0f00
-160b00281400201000160b002010000c0600160b00281400180c00201000ff9b360c0600
-180c001e0f001e0f00201000180c00180c003219001e0f00160b00180c00140a00ff9932
-160b00180c002010002814002613001e0f00180c00321900160b00160b00201000160b00
-160b000402000e0700261300160b000e0700201000180c002814002010002e1700160b00
-0e07002010002613001e0f002e1700160b000c06001e0f00160b000e0700201000060300
-160b001e0f002010001e0f00060300160b00281400281400180c00261300201000281400
-160b00180c00281400140a000603000e0700160b00140a00180c00160b00140a00180c00
-180c00140a00060300201000201000180c002814002e17001e0f001e0f00201000201000
-180c00140a002814002010001e0f00160b00180c00160b00160b00140a00040200281400
-140a000e07001e0f00140a002010003018000c06002010002613001e0f00201000140a00
-0e0700180c000c0600160b000e07002814001e0f00281400261300261300180c000e0700
-1e0f000c06000e0700201000140a002814002e1700160b00140a000e0700180c00160b00
-1e0f00281400160b000e0700060300160b00140a00140a001e0f00180c000e0700281400
-281400140a00180c001e0f00020100140a00160b00160b002e17001e0f00160b001e0f00
-160b002010001e0f001e0f00180c002814000c06002613000e0700160b00201000201000
-180c00301800020100160b000c0600201000160b00160b00180c00180c00160b00020100
-1e0f00180c00201000160b00160b00261300160b00180c00201000140a00140a001e0f00
-160b00201000301800201000281400281400201000281400321900261300381c00301800
-381c003a1d003a1d00542a00643200783c00a25100fe7f00ffb468fffaf4fffcf8fffcf8
-fffcf8fffcf8ffc182ff9830ec7600ea7500e87400e27100f67b00e27100de6f00f67b00
-fffcf8e27100d86c00ac5600a45200a45200984c007038008643006c36006c36006e3700
-5a2d005c2e004a25003a1d004020003a1d00301800261300261300201000160b002e1700
-281400261300ff9c38201000140a00201000160b00201000160b000c0600180c001e0f00
-160b00160b00201000ffa74e201000201000180c002010002613001e0f00281400261300
-1e0f002010003a1d002814002e1700381c004221001e0f002613003018001e0f00140a00
-261300ff9830261300060300201000201000160b00160b002010001e0f00160b00160b00
-2e1700180c000e0700140a00180c000e0700201000160b00160b00261300160b00201000
-281400140a000e0700180c000e07000e0700281400180c00140a000e0700160b00160b00
-2e1700180c002e1700201000140a00281400160b00060300140a000e0700201000180c00
-180c00160b00160b00160b00020100180c002010000e07000e07000e07002613000e0700
-1e0f00261300140a00160b002010001e0f001e0f00160b001e0f001e0f00201000160b00
-140a00301800180c00160b00160b00160b00180c00140a00060300160b00281400160b00
-160b00261300140a000e07002814000e0700160b00281400261300160b00160b00160b00
-0e07001e0f002010001e0f00180c00201000160b00020100160b000e0700160b000e0700
-0c06000603002010002010000e0700281400160b00160b002613002613001e0f00160b00
-140a00160b00160b000e07002010001e0f00160b00281400180c000603001e0f00160b00
-160b001e0f00060300261300060300140a000e0700140a000c0600201000180c000e0700
-1e0f00140a00160b000e0700180c002814000603000e0700180c00160b00060300180c00
-0c0600140a000603000e07003018002010000e07000603002010000c0600140a00180c00
-0e0700160b000c0600160b00060300201000ffa040160b000c0600160b00422100261300
-2010003018002e17002010002010002613002010001e0f00ff9932160b00180c00301800
-201000160b001e0f00201000160b00160b000c0600060300
-180c000603000c06003219000e0700160b000e0700180c00261300140a001e0f00201000
-301800201000180c00201000201000180c00160b000e07002814001e0f00060300ffa244
-ffa142160b001e0f00140a001e0f002613002010001e0f00ff9e3cffa244ff9b36160b00
-180c00140a00160b00180c000c06001e0f00281400160b00160b00201000160b00180c00
-1e0f002e1700140a00180c000e0700140a00201000180c001e0f000201000e0700180c00
-160b00180c00261300160b002010000e0700201000160b00201000180c00281400180c00
-201000301800160b00180c00140a002613002613001e0f001e0f00140a00160b000c0600
-160b00140a00180c00160b00321900201000201000160b00180c001e0f00201000201000
-1e0f002e1700180c001e0f000e0700301800160b00160b00160b00160b002e1700160b00
-160b002010000e0700201000180c00060300180c000e07000e0700060300201000201000
-0603000e0700140a001e0f00321900160b000c06000e07000e0700201000301800201000
-140a002010002010000c0600160b00160b002010001e0f00160b000c06000e0700160b00
-140a001e0f00201000160b00020100180c001e0f00020100201000301800160b00160b00
-020100180c00180c00160b001e0f000e0700160b002613003a1d000e07000e0700160b00
-2010000e07000e0700160b00180c00160b00201000140a00180c00160b00160b00201000
-201000060300160b00160b00160b000e0700140a00180c00140a00201000140a00160b00
-160b00180c001e0f00201000060300180c00160b00180c00180c000402000e07000e0700
-180c00180c00160b00060300180c00140a00301800261300180c00040200281400261300
-160b00160b00140a00201000201000180c002010002e1700381c00ffaa54381c003a1d00
-2e17003219004221005e2f006c36009a4d009e4f00fc7e00ffb264fffcf8fffcf8fffcf8
-fffcf8fffcf8ffdab4ffa74eff8e1cff8204ff8102ff8b16ff8810ff850aff8306ff8b16
-fffcf8ff8306ec7600e87400d26900be5f00aa5500984c009048007e3f00703800643200
-5a2d005e2f005229004a25004a25002814004020003018003a1d00261300321900201000
-3a1d002e1700ffa64c140a00160b002e17002613001e0f00180c002e17001e0f00281400
-160b00160b00201000ffa0400e0700180c001e0f00281400201000180c00381c00160b00
-422100301800381c00321900381c002814003018002010002010002010000e07001e0f00
-2e1700ffa74e180c00160b00281400140a00140a00160b002010001e0f002010000e0700
-060300160b00180c001e0f00281400140a00201000140a00060300140a000e0700160b00
-160b001e0f002010002613000e07000e0700281400160b00160b00160b000e0700180c00
-201000140a000e07000e0700201000201000180c00201000160b00060300180c00160b00
-140a002e1700180c00160b00160b00160b00160b00160b00160b00261300160b000e0700
-201000180c001e0f001e0f00160b00140a000c0600160b00201000160b00180c00160b00
-140a002010002010001e0f003018000e07002e1700160b00261300201000201000140a00
-160b001e0f001e0f002010000e0700140a00160b00180c00160b00060300060300140a00
-0603001e0f00160b00060300180c00140a00160b00140a001e0f00201000160b00140a00
-180c002010000e07002e1700281400201000180c00140a000e0700261300201000281400
-201000180c00201000201000180c00201000180c00140a00160b00160b000e07000e0700
-160b00160b000c0600160b00301800180c00160b001e0f00180c00160b000e07000e0700
-261300201000201000160b000e0700261300160b001e0f000e0700180c00160b00261300
-2613000c0600281400180c001e0f001e0f00060300160b000e07000e0700160b00160b00
-201000180c001e0f00020100201000201000ff9b36140a00160b000c0600281400160b00
-3018002814002e1700201000301800180c000e0700281400ffa2442010000e0700261300
-1e0f002010000e0700201000201000160b00180c00281400
-160b000e0700160b001e0f000e0700160b000603002010000e0700160b000e07001e0f00
-1e0f00160b002010002010000e0700261300281400180c002814000e07001e0f00180c00
-0e0700ff9e3cff9c38ffa54affa040ff9e3cffa244ff99321e0f00140a000c0600140a00
-160b00160b00160b002814000e0700281400140a00060300140a00180c00160b00301800
-0e0700201000160b00160b00201000201000180c00180c000e07001e0f00140a00160b00
-0e07000e0700281400140a00140a000603002613000e0700160b00160b00180c00261300
-2010002010000c0600281400180c00160b000e07002010000603001e0f000e0700201000
-0c0600180c001e0f002010001e0f00160b002010000c0600180c00140a00160b00180c00
-140a00160b00261300160b00180c00140a00160b000e0700160b00140a000e0700180c00
-160b001e0f00160b001e0f00140a00261300261300140a00060300180c00160b001e0f00
-0e0700140a000c0600160b000e0700261300261300201000160b00160b00201000301800
-160b002010000e0700140a002814001e0f002010002613000c0600140a00160b000e0700
-180c000e0700201000201000261300160b00140a00160b00180c00201000160b00201000
-0603000e07002814001e0f00160b00140a00140a00180c00140a002e17002613000e0700
-1e0f000c0600180c00281400180c00160b00140a001e0f001e0f00201000060300261300
-180c00160b00180c000e0700060300201000140a00281400160b001e0f000c0600201000
-1e0f000c0600160b000603000e07002010000e07000c06000c06000c06001e0f00140a00
-2010000e07000e07002010002010000e0700140a002010000e0700160b00201000160b00
-180c00140a00201000160b00321900321900281400180c002e1700ffa448ffab56402000
-3a1d003018003a1d004a25006432007e3f009a4d00e27100ffaf5efffcf8fffcf8fffcf8
-fffcf8fffcf8ffd0a0ffa448ff9b36ff9932ff9830ff8f1eff9932ffa64cff9e3cffab56
-ff9c38ff9c38ff9428f67b00f47a00e07000ce6700a452009e4f008643007e3f00864300
-6432005c2e005229004a2500542a004422003a1d00321900261300301800321900301800
-2010000e0700201000321900160b001e0f002e1700060300160b00160b001e0f00160b00
-1e0f00281400ff9d3a160b00160b002010002e1700281400261300160b00261300422100
-4221004a25005e2f004c2600542a003a1d00381c002010002814000c06002e17001e0f00
-261300060300ff9e3c140a001e0f000e0700180c00140a000e0700140a001e0f00261300
-140a00281400281400201000160b002010000e07000e0700201000160b00160b00040200
-1e0f000e0700180c001e0f00140a003018000603002010000e0700281400201000180c00
-2814000e0700160b000e0700160b000c0600140a002010000c0600281400140a00180c00
-140a00281400020100180c000c06000c0600160b00140a002010002e17000e0700160b00
-1e0f001e0f00201000160b00040200160b001e0f002010000201000c06000c06001e0f00
-261300180c00160b00040200160b000e07000c0600180c00180c00140a00160b001e0f00
-160b001e0f00140a00201000160b001e0f000e0700261300201000060300160b00160b00
-0e0700201000261300180c000e07000e0700140a001e0f002010002814000e0700160b00
-160b000e0700160b00160b00160b00140a00261300140a00160b000603000c0600301800
-160b00201000180c00160b00201000140a00201000160b001e0f00160b001e0f000e0700
-0c06000e0700160b00261300160b000603000c0600261300060300140a000e0700160b00
-201000160b001e0f001e0f00180c000201000c0600140a00160b00160b001e0f00160b00
-040200180c001e0f00261300020100180c000201001e0f00140a00140a00160b00201000
-0e0700201000160b00140a00140a00201000ffa1421e0f000e0700201000281400261300
-281400180c00321900160b00160b002e1700180c00180c00ffa244180c00201000201000
-2010002010000e07002010000e0700201000160b00281400
-1e0f00201000160b00180c00201000160b00160b00140a002814001e0f00140a00180c00
-160b00160b00261300180c00140a00201000201000140a00201000140a00180c000e0700
-180c000603000c06000e0700160b00180c00201000180c002814002e17000c0600281400
-160b001e0f00160b00160b00160b002010002010000c0600160b00180c002010000e0700
-180c002010000e07000e0700160b00160b00160b00201000160b00180c00160b00201000
-201000160b001e0f00201000180c00160b00180c000603002010000e07001e0f000e0700
-180c001e0f00160b00180c00160b00160b00201000160b00180c000e07000c0600180c00
-0e0700201000180c00160b00261300381c00281400160b00160b000e0700180c00160b00
-201000140a00160b002010001e0f001e0f002010001e0f000e0700160b00201000180c00
-2010001e0f00201000201000160b00201000180c00281400040200281400160b00ffa244
-ffa64cff9e3cff9c38ffa64cff9932ff9e3c2010002010001e0f00160b000402000c0600
-160b00140a00201000160b00140a00301800201000160b000e07000e0700060300201000
-2613000e07001e0f00180c000e07003018000e0700261300201000160b00180c000e0700
-140a00180c001e0f001e0f001e0f00160b00160b00281400140a000e07000c0600180c00
-160b000e07000e0700201000201000180c00160b00160b00201000160b00261300201000
-180c000603002010000e0700201000160b00160b00160b00160b000e0700160b001e0f00
-201000160b000e07000e0700160b00160b00180c000603001e0f000c0600201000160b00
-201000201000140a00180c00160b00140a00281400281400180c00281400281400180c00
-0c0600261300180c00281400160b00140a00281400160b00442200ffaa542e17002e1700
-5c2e003219004a25006c36006e3700703800aa5500de6f00ff8c18ffd0a0fffcf8fffcf8
-fffcf8ffe4c8ffc182ffab56ffa244ff9c38ffaa54ffad5affba74ffb76effbd7affc080
-ffba74ffb76effab56ff9e3cff850afc7e00ec7600c86400aa5500aa5500783c006c3600
-6e37006e37005e2f00442200402000422100301800381c00201000301800301800160b00
-180c002e1700180c00281400160b00301800140a001e0f00261300201000160b00281400
-2814000e0700ff9d3a201000301800201000321900301800381c00261300301800522900
-5e2f00783c009e4f009048005a2d004422003018003219003018002814001e0f00281400
-2814000e0700ffa64c201000201000160b002010001e0f00160b000c0600201000160b00
-180c000e07000e0700201000261300160b00180c001e0f000e0700160b00301800140a00
-201000201000140a00180c00180c00180c00140a00140a00180c00060300180c00201000
-160b00160b00160b00140a002613001e0f00060300160b00160b00160b002010000e0700
-0e0700160b000603000e07001e0f002814002613000e0700160b00060300160b000e0700
-0e07002613001e0f002010002010000c06000603000e0700140a00140a00160b00160b00
-160b00160b00020100180c00140a00020100160b00160b000e0700201000180c00160b00
-2010000e07000e0700180c002010001e0f000e07000e07001e0f00160b00160b00140a00
-201000060300180c000e07000e07002814001e0f000e0700160b00261300160b000e0700
-0e0700140a00060300160b000e07000c0600180c00160b00160b000e0700261300201000
-1e0f00160b00301800140a002e1700160b00180c00160b000e07000c0600060300201000
-140a00261300160b000c0600160b000c0600160b00201000140a000e0700020100201000
-140a000e07001e0f00201000160b002010000201000603002010000e0700140a00160b00
-020100160b000603000603000c06002010001e0f000e07002010000e0700160b00201000
-1e0f00180c00040200201000160b00160b001e0f00ffa040180c00180c00321900180c00
-2010001e0f00301800201000201000201000180c00ff9b362e1700160b00160b00160b00
-140a000e0700160b00261300281400140a00060300201000
-301800180c00201000180c00140a00140a000e0700040200160b000e0700060300201000
-160b001e0f00160b002e17000e07000e0700321900160b000603000201002010000e0700
-2010000201000201000e07002010000e07001e0f00201000201000281400060300160b00
-140a00160b000e07000e0700160b00140a00140a000c0600180c00180c00160b00180c00
-0e07000e07002814000e07000e0700140a001e0f000e0700201000160b001e0f00040200
-160b00160b00180c000603002814000e07000c0600140a000c0600201000060300261300
-160b000e07002010001e0f000e07002814002814000e0700060300160b001e0f00381c00
-201000160b00201000160b00180c00180c002613000201001e0f00281400201000160b00
-0e0700160b00020100060300201000180c00281400140a00201000180c00040200160b00
-160b00281400140a000e0700140a002010000e0700261300201000ffa040ff9d3a261300
-261300180c00281400281400180c00201000ffa952ff9b36261300180c000e0700140a00
-1e0f00060300140a00201000160b00180c000e07000e07000e0700180c00160b001e0f00
-2010002814002814002010002e1700201000140a00160b00160b000e0700180c001e0f00
-140a000603000e0700140a00140a002814000e07001e0f001e0f00261300180c00281400
-180c000e0700201000160b00201000140a001e0f00140a00140a00261300301800381c00
-1e0f000e0700160b00140a002010001e0f001e0f00160b00180c000e07002010001e0f00
-301800201000201000140a00321900201000060300201000160b00180c00140a00160b00
-201000201000180c001e0f00140a002e1700281400180c001e0f00261300160b00160b00
-3a1d002814001e0f002814002e1700261300281400281400261300ffa9522e1700422100
-4221004c2600542a00542a00783c00763b008a4500b65b00f67b00ff9b36ffc386ffcc98
-ffc890ffbd7affb264ffa952ffa448ffae5cffb76effbf7effcd9afff3e6ffebd6ffe4c8
-fffcf8ffdbb6ffd5aaffb468ff9932ff9e3cfc7e00d66b00bc5e00aa55009c4e008a4500
-6e37006432005c2e006c36005a2d004221003a1d00301800381c00281400281400201000
-160b00160b001e0f00201000140a00180c000c06002010002010000e0700201000180c00
-180c001e0f00ffa2442814002010002e17002814001e0f00281400301800522900763b00
-aa5500e07000fc7e00b65b009048005e2f004a25003219001e0f00281400180c00261300
-201000160b00ff9e3c160b00180c00261300160b001e0f00140a000e0700160b00261300
-0e0700160b00180c000e0700160b00180c00160b00060300281400180c00140a000e0700
-2010000603000e07002e1700201000201000160b00180c00140a00281400160b00201000
-180c00180c000e07001e0f00201000160b001e0f002e1700160b00160b00160b00160b00
-160b00160b00201000261300180c00160b00160b00160b00180c00301800160b000c0600
-060300160b00180c003018002010000e0700160b00281400160b00201000201000180c00
-1e0f00180c00180c001e0f00140a000c06000e0700180c00301800201000261300160b00
-160b001e0f00140a000603000e0700281400160b00140a00140a00060300140a002e1700
-0e07001e0f00160b00160b00160b00160b002010001e0f00201000180c00160b00140a00
-140a001e0f00160b00160b00180c00140a002010001e0f00140a000e0700201000261300
-0c0600180c00140a001e0f000c06001e0f000e0700160b001e0f00160b000e0700140a00
-140a000201002010001e0f000c06002010001e0f00140a00060300180c000e0700180c00
-0c0600180c00140a00160b00160b00160b00261300160b002814000e0700060300160b00
-0c0600040200040200160b002613001e0f002010000c0600040200160b00140a00160b00
-1e0f000e07002e17000e0700160b00140a00160b00261300ffa64cffa142ffa64c180c00
-140a002613002010002010001e0f00ff9c38ffa4480e07000c06002814000e0700160b00
-180c00160b001e0f00060300160b00140a00160b00140a00
-140a00321900060300140a002010000c06000c06002010000e0700180c00180c00201000
-0e07000e07000c0600180c002613002010000c0600160b000e0700160b00180c00201000
-1e0f00281400261300180c00180c001e0f00160b000c06002e17000e07000e0700160b00
-160b00180c00160b002814003018002010002010003a1d00140a00140a000e07001e0f00
-060300201000160b001e0f00160b00040200180c00160b000e0700160b00201000180c00
-201000301800060300140a00160b002e17002613000e0700261300160b001e0f00160b00
-2814001e0f00180c002e17001e0f00140a00160b000e07001e0f00060300281400201000
-160b00301800201000180c00281400281400301800281400140a00160b00160b00060300
-0e07000c06001e0f00160b000e07002e1700160b00160b002814000e0700201000180c00
-180c00160b00160b00180c00201000160b00321900201000ff9d3a201000140a00201000
-321900180c00160b00301800201000201000180c00301800ffa142180c00180c00140a00
-140a00201000301800160b00201000201000140a000e0700281400060300281400160b00
-201000140a000c0600160b00180c002010000e0700180c00140a00160b002e1700140a00
-160b000603002010000c06002814002010000e07000e0700180c000e0700160b00261300
-140a00160b00281400160b00180c00160b000e07000e07000e0700160b00160b000e0700
-180c002e1700160b000e0700160b000e0700180c002e17002814002010001e0f00160b00
-1e0f00201000281400160b002010000603002814002010000e0700160b00160b00281400
-0e0700261300261300160b00140a00160b00020100160b001e0f00281400261300261300
-0603003018001e0f002814002e17002e1700201000301800ffa142ffae5c422100201000
-3a1d003a1d004221004c26005a2d006c3600763b00a25100b65b00fa7d00ff8306ffab56
-ff9b36ffa040ffa142ff9830ffaf5effb366ffcc98ffebd6fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fff6ecffdbb6ffc080ff9b36ff8a14fa7d00d66b00bc5e00984c007e3f00
-5c2e005e2f00763b006c36004a2500442200381c00381c003219004a25002e1700261300
-281400201000281400180c00160b000c0600180c00381c00020100201000140a00281400
-2010002e1700ff9e3c0402000e07002e1700261300180c001e0f00381c004a2500783c00
-bc5e00ff952affad5aff860cc462006e37004221001e0f00201000160b00160b00201000
-1e0f00160b00ffa142160b00060300201000281400201000281400060300201000140a00
-160b00261300140a000c06001e0f000603000e0700160b00060300160b00201000201000
-201000201000180c00180c00160b00301800140a00281400201000261300261300140a00
-201000160b000c06000603000e07000e0700180c00140a00180c00160b001e0f00201000
-2010002814001e0f00160b00160b000e0700180c000e07001e0f00060300140a00201000
-160b002814001e0f00180c00180c00201000160b00160b00160b002613002613000c0600
-140a001e0f00281400060300160b00160b00180c00140a00160b000c06000e0700201000
-201000281400201000160b00140a00140a00201000060300281400160b00020100160b00
-0c06001e0f000c06001e0f002e1700160b000e0700160b000e07000e0700180c000e0700
-180c000e07002814000e0700180c00160b00261300201000201000140a00140a00281400
-201000140a00201000281400160b001e0f001e0f000e0700160b000e0700160b00281400
-2814000c0600261300160b00201000160b000e0700140a00140a000e0700060300201000
-201000160b000e0700140a001e0f00140a002010000e07000e0700180c00180c00160b00
-0c0600201000201000180c001e0f00180c000e0700140a00140a002010000e07000c0600
-160b000e07001e0f00160b00180c00140a00180c00160b00180c002010000e0700ff9d3a
-ffa040ff9e3cff9e3cff9e3cffa142160b00201000160b000603001e0f00201000281400
-1e0f000e0700160b00201000180c00160b00301800160b00
-180c002010002010002814001e0f003018002010002613002010000e0700140a00160b00
-2010000e07001e0f000c06001e0f000e0700160b000603000e07000e0700060300060300
-1e0f002613002613000603001e0f002010002613002613002010000e0700060300160b00
-201000201000180c00160b00261300160b00140a00321900180c00201000160b00180c00
-201000281400060300160b00140a00180c000e0700261300160b001e0f00261300140a00
-180c003219002613000e0700301800201000160b000e07001e0f00201000201000180c00
-2814000e07000e0700180c00140a00160b000201000e07000e07001e0f001e0f000e0700
-201000180c00160b000e0700160b001e0f00160b00160b00301800281400160b001e0f00
-160b002010000c0600140a00140a00180c00201000301800160b003a1d00160b00201000
-1e0f00160b00140a000e07000c0600160b00301800ffa142160b002814000e0700201000
-261300301800301800201000301800281400201000140a00180c00ff9d3a0e07000e0700
-2010000c06002613002010000e0700140a00261300140a00020100140a00160b00060300
-1e0f000e07002010001e0f00201000140a002010000e0700160b00060300160b00160b00
-160b001e0f00201000261300180c00180c00281400180c00140a001e0f00180c00180c00
-060300160b002814000e0700160b00261300140a000c06001e0f00201000180c00160b00
-160b002e17000e0700180c00180c00180c00281400140a00301800281400180c00201000
-201000160b00201000140a000e0700201000261300160b00281400160b00160b00201000
-2010001e0f00160b001e0f00301800060300281400160b00160b00201000301800160b00
-201000160b00201000261300201000281400140a00402000281400301800ffab56301800
-4a25003a1d005229006432006c36006432007e3f00984c00984c00b85c00ec7600f67b00
-fe7f00ff870eff870effa54affb162ffce9cffddbafffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8ffe9d2ffad5affa142ff8c18e07000d06800c462008a4500
-9048006e37006633006432004a25004c2600321900542a003219003a1d00201000381c00
-3a1d00261300301800201000ffa040160b002814000e07003219001e0f00180c00180c00
-261300201000ffa952160b00321900180c00180c00201000381c003018004c26007e3f00
-ce6700ff9c38ffab56ff870ec462006432005229003018002010002814000e07001e0f00
-160b00020100ffa1422e17000c06000e0700160b00160b002010000c0600160b00140a00
-160b00201000201000201000060300201000180c000e07002613001e0f00201000040200
-1e0f000e0700140a002e1700160b00140a00140a001e0f002814003219001e0f00160b00
-0e0700201000140a000c0600140a002e1700180c00140a00201000261300180c00281400
-140a00201000160b000e0700160b000c0600180c00201000160b00160b00040200140a00
-160b000e0700180c002613000e0700160b000e0700160b00160b00140a00140a00281400
-2613002010000c0600160b00140a00060300140a000e0700160b001e0f00201000160b00
-160b00160b00281400160b00180c000c0600160b001e0f000e0700201000060300201000
-2010000e0700281400281400201000140a00140a00160b000603003018000c0600180c00
-140a00261300201000160b00140a00180c00201000201000281400180c00160b00281400
-0e0700201000201000160b00281400020100140a00201000201000140a00160b00060300
-2814000e0700160b00040200140a000e0700180c00180c000e0700160b000201000c0600
-160b00160b00160b000201002010000c0600201000180c00040200140a000e07000e0700
-0e0700160b000e07002010002010000e07002613002010000603002010000402000e0700
-140a001e0f002613000c06000e07000c06000e07002613000e07000c06000e0700201000
-1e0f002814000c0600140a000e0700160b002010002814002613001e0f000e0700281400
-1e0f000e0700160b00160b00180c00180c00140a00160b00
-2814002010000e07002010001e0f000e0700020100160b00281400140a00261300201000
-140a00160b002e1700160b00160b002814002010002010000e07001e0f001e0f00160b00
-201000180c00201000020100261300160b00060300060300140a000e0700201000180c00
-1e0f00140a000e0700160b001e0f00140a000e0700140a002e1700160b000e0700160b00
-160b00201000160b00180c00201000140a00180c000e07001e0f00261300160b00180c00
-140a00160b001e0f000e0700160b00201000180c000e0700180c00180c001e0f00060300
-2613001e0f000e0700160b002814002e1700140a00160b002010000c06002814001e0f00
-060300160b00180c00160b00160b00281400160b00140a000e0700180c00140a001e0f00
-160b002613000e07001e0f001e0f00160b00281400180c001e0f00140a00160b00140a00
-180c00201000180c000e0700140a001e0f00ffa142281400160b001e0f00140a00281400
-2e17002010002613003018002e1700201000201000201000201000180c00ff9d3a0c0600
-0603001e0f00160b000e07002010002613000e07002010000402002814001e0f00160b00
-160b00180c00201000201000140a002010000e0700160b002010002010000603000e0700
-140a001e0f000c06000c0600402000281400160b00180c00160b00160b00201000261300
-060300281400160b000c0600160b00140a00180c00180c00140a003018000201001e0f00
-2613000c06001e0f00160b00160b00281400060300160b00281400201000140a00301800
-3018000e0700201000281400281400261300140a001e0f00160b000e07002010001e0f00
-0e07001e0f001e0f00160b00160b00281400180c002814001e0f001e0f001e0f00261300
-2613002010002010002814003018003018003219002010003a1d00381c00ffaa54422100
-3018004221005c2e004c26006e37006e37006432006c3600984c009c4e00c86400d26900
-ea7500ff8c18ff8a14ff9122ffbf7effd5aafffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8ffc080ffb264ff9932fe7f00d26900be5f00984c00
-984c00763b007038005c2e005e2f005229004221005a2d00301800381c00281400201000
-2814003a1d00261300281400ffa142201000201000201000201000160b00261300140a00
-201000261300ffa0402010002613002010002814002e17003219003a1d004a2500924900
-b25900fa7d00ff8a14ca6500984c00643200522900381c002e1700281400201000160b00
-201000160b00ffa1421e0f002814001e0f00180c000e0700160b00180c001e0f00140a00
-0c0600201000301800140a00060300301800020100160b00180c001e0f00261300160b00
-160b00160b00160b00261300160b00160b00160b002010000201000e0700160b001e0f00
-0e07002613002010000e07000c0600201000201000140a00160b000e07001e0f002e1700
-160b001e0f00281400160b002010002e17002010000c06000e0700140a00180c000e0700
-160b00140a00281400140a00140a00160b00140a00060300020100140a00160b00060300
-160b00160b00140a00160b00160b00060300261300180c00020100180c00160b00201000
-160b00180c000e0700140a000e07002814001e0f00160b00261300140a00140a00140a00
-160b000e0700160b00201000281400160b00180c00160b000c0600180c00160b001e0f00
-0e07000e07002814002613001e0f002814001e0f00180c002010002010000e0700180c00
-261300140a002010002010001e0f002010002010000e07002814000201000e0700281400
-160b00020100160b00160b000e0700060300140a00140a000603000e0700140a000e0700
-160b00201000160b00140a00140a002010000e07000c0600160b00160b00140a000e0700
-160b00160b00160b00201000140a000e0700160b001e0f000e07002814001e0f000e0700
-180c00160b000e0700160b00160b00180c00160b00160b00201000201000201000201000
-180c002010000e0700160b00160b001e0f002010002814001e0f002e1700180c00160b00
-0c0600160b00140a000402001e0f00160b002613001e0f00
-2814000e0700160b002e17002010001e0f001e0f00160b002814000e0700160b00160b00
-180c00180c000c0600281400140a00160b000e0700140a002814000c06002010000e0700
-160b00140a00140a002814002814002010000e07000402001e0f00140a00160b000e0700
-160b000e0700201000140a00060300160b000e07000e0700040200160b00281400201000
-0e0700140a00160b00180c00261300160b002e1700160b00160b00261300281400281400
-2e17002814000402000e0700201000201000180c001e0f000c0600301800180c000e0700
-0e07000e07001e0f00160b000e07000c0600140a000e07000603000c0600160b00160b00
-140a001e0f00140a001e0f00201000180c002010000e0700020100140a00261300160b00
-261300140a00281400201000160b002010000c0600201000020100201000301800160b00
-321900160b000e07000e0700060300281400ffa54a140a003018001e0f002e17004c2600
-4221004a25005a2d002e17003219003a1d00261300301800201000180c00ff9e3c2e1700
-2010002010002010000e07000e07000e07000c0600180c00160b001e0f001e0f000e0700
-0e07000e0700060300160b002010002010002010002e17001e0f000e07000e0700201000
-160b000c06002010001e0f000e07000603002010002010002010000e0700180c00160b00
-281400160b00160b002613002814002010002010001e0f000603001e0f00160b00201000
-140a00160b001e0f00180c00160b001e0f003018000e07001e0f00180c00160b00140a00
-160b002010000e0700281400180c00201000160b00180c00201000201000060300201000
-160b00180c001e0f000e0700160b00180c00140a002613002e1700281400180c00201000
-2010002010002010003018002010002010002010002e1700281400281400281400301800
-3018003a1d004221004c26005c2e005e2f005a2d007e3f006e3700a25100b65b00ce6700
-ce6700e47200ff9830ffa040ffb468ffdab4fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8fff6ecffc58aff9b36ff860cea7500c46200a25100
-9e4f00763b00763b00763b005c2e005c2e00522900402000281400402000261300281400
-201000281400281400160b00ffa74e301800261300180c00180c00160b00201000281400
-160b00301800ffa74e2010002010002e17001e0f00160b00261300301800381c006c3600
-763b00984c00b45a008a45006c36003a1d00422100321900281400160b000c0600160b00
-1e0f001e0f00ffa244180c00201000281400180c00180c00180c00060300201000201000
-281400160b00160b00160b00180c00201000140a00160b00160b00281400261300201000
-201000201000160b00160b000e07000c06001e0f000e07001e0f002010002814000e0700
-180c002010002010002010001e0f000e0700180c00140a000603000c0600180c000e0700
-160b00180c002010002010000e0700180c00180c001e0f002010002814002010001e0f00
-281400261300140a000e0700160b00201000160b00160b00140a00180c00160b00160b00
-180c00060300140a00201000201000180c000e0700160b00301800180c000e0700281400
-160b000e07002613000e0700180c00140a00180c00060300160b000c0600180c00281400
-160b000e07000201000402000e0700281400160b00060300140a001e0f00060300201000
-0e07000e0700160b000e0700040200140a00261300201000201000281400301800301800
-140a002010000c06002010001e0f00281400140a00201000201000160b001e0f000e0700
-060300180c00201000261300180c00160b002010001e0f00180c00060300160b000e0700
-0e07000c0600180c000e07000e0700160b00060300160b00160b001e0f00201000140a00
-160b00140a00281400201000160b00040200140a000c0600160b00020100140a00180c00
-060300140a001e0f00140a002e17002814001e0f001e0f00160b00201000160b00160b00
-201000180c00160b001e0f00160b000e07002010000e0700201000281400301800160b00
-160b00281400160b000603001e0f002814002e1700160b00
-160b00140a000c06000603002613000e07001e0f00160b00160b000e07002613001e0f00
-261300201000140a00281400160b00201000180c00160b000e07002814001e0f00261300
-1e0f00201000140a00201000201000201000160b000e0700201000160b000e0700160b00
-160b001e0f00261300160b00261300140a001e0f00160b001e0f000e0700160b00140a00
-160b00160b001e0f00160b00281400160b00261300180c00040200261300201000040200
-2814001e0f002010000c0600160b00201000201000160b00160b003018001e0f00201000
-0e07000e0700160b00160b002814002814000e07000e0700201000160b00180c00201000
-0e0700160b002010000e07001e0f00160b00140a000e0700201000281400060300060300
-1e0f002814000e07001e0f00140a00160b002814001e0f002010000e07000e0700201000
-2010000402001e0f00281400140a00ffa040140a001e0f001e0f00301800301800542a00
-4c26006633006c36004c26005c2e004c26003018002613001e0f00201000281400ff9e3c
-060300160b00201000160b000e0700060300180c00201000040200180c00160b00201000
-201000201000180c002010001e0f00140a002010000e07001e0f00281400160b00160b00
-1e0f001e0f00060300140a002010000e07000e0700140a000402000e0700281400201000
-140a000e0700281400201000140a00180c000e07000e07000c0600201000060300140a00
-140a000e07001e0f00160b001e0f00160b000e0700281400180c00281400381c00180c00
-2010000c0600201000201000201000201000160b00160b00140a00160b002010001e0f00
-140a00060300180c001e0f00060300140a00321900201000180c002e1700180c00201000
-2814002e17002e17002613002010000e0700381c003a1d003018002e17002e1700321900
-381c004a25004020004221004a2500522900783c00763b007e3f00763b008a4500aa5500
-d26900e07000ff870eff9e3cffbd7affe7cefffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffc58affa74eff9122ec7600ce6700a25100
-904800804000763b00542a005e2f004c26003a1d003018002814003018003018001e0f00
-281400261300201000ffa142180c00201000281400201000301800281400180c00140a00
-201000180c00ffa1422814002814002010002814001e0f002613002814002e1700301800
-381c00442200763b007e3f004221003018002e1700201000281400261300281400281400
-261300160b00ff9b36160b00180c00160b001e0f00160b00160b00140a00160b001e0f00
-0e0700160b002010000e0700201000180c002010002010000e0700180c00060300201000
-2613002613001e0f002010000e0700201000160b001e0f000c0600180c00140a00261300
-0603002010000603002010003219001e0f000e0700281400201000201000180c000e0700
-180c00160b00060300160b001e0f00201000201000140a00201000160b001e0f00140a00
-160b00160b00201000060300201000180c00180c00201000261300201000060300160b00
-1e0f00160b00201000201000261300160b00160b000e0700261300180c00160b00180c00
-281400180c000c06001e0f00160b002010000c06000603001e0f00160b00201000160b00
-261300160b003018002814002010001e0f00201000180c00060300180c00180c00160b00
-3a1d00160b00160b001e0f00180c000e0700261300180c00261300261300201000201000
-281400140a002814002010000e0700180c001e0f00140a00301800160b00180c00261300
-2010000e07002010002e17002010000e07000e0700140a000c0600281400060300060300
-180c00040200140a00160b000e07000201000e0700201000160b000e07001e0f000e0700
-180c00180c00140a00060300180c00180c00060300160b000c0600160b00160b00160b00
-160b00180c00160b00180c00180c000e07002e17000e07001e0f000603001e0f00201000
-2e1700160b000e0700140a00160b00261300140a00281400281400140a00201000180c00
-180c00140a001e0f000c06000e07002814000c0600180c00
-261300160b00020100160b00160b00180c000e0700201000140a000e07000e0700040200
-160b001e0f00160b00201000261300160b002010000e07000e07000e07002814000e0700
-0603000e07000e0700201000201000160b00261300160b00160b00281400201000281400
-140a00301800160b000e07000402000c06000603002010000e07002010002e17001e0f00
-201000060300160b00160b000e07002613002010002010000e07000c0600180c000e0700
-140a00281400160b002613000603002613000e0700201000060300140a00180c001e0f00
-160b000e07000e07002010000c0600180c00180c000e0700201000180c002010000c0600
-140a001e0f00140a00160b00140a000e0700160b002010001e0f000e0700180c00261300
-160b00180c00140a00180c00160b00201000180c000c0600261300160b00060300180c00
-0e0700160b000e07002814001e0f00ffa142261300160b002814002e17003a1d00763b00
-643200aa55009e4f00804000763b00442200442200180c00261300261300160b00ffa54a
-160b000e07002e17002010002e17000e0700160b00180c00020100281400160b00201000
-160b000c06000e07000e0700160b00140a000603000e0700140a000e07000e07001e0f00
-140a000e07001e0f002010000e0700160b000e0700040200180c00180c00140a00160b00
-0e07002e1700301800160b00160b00160b000e0700160b00180c00160b00180c00060300
-1e0f002010001e0f000e07000e07000c0600140a000e0700261300160b00281400281400
-2e1700281400201000261300140a00160b001e0f00160b00140a00180c00281400281400
-160b001e0f00160b00160b00160b002010002010002814002613002613002814002e1700
-281400180c001e0f001e0f00201000301800201000ffab56281400140a002e17003a1d00
-3a1d00ffbd7a402000321900542a00542a006432006432006c36008643009e4f00a25100
-c46200e27100ff8e1cff9932ffb66cffe0c0fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffdab4ffaf5eff8a14f07800c46200ac5600
-9048006e3700783c00763b004a2500442200542a003a1d004221003a1d00301800261300
-2e17003a1d00201000201000281400201000281400201000180c001e0f00140a00201000
-1e0f002e1700ffa54a0e0700321900201000201000160b00201000301800381c00321900
-3a1d003a1d003018004221004422003219003018001e0f00381c001e0f00261300160b00
-201000ffa448160b00281400160b000e0700060300180c00160b00201000160b00301800
-160b000e07002010002613000c0600201000180c00160b00160b000e0700180c00060300
-160b001e0f00180c002613001e0f00140a00180c00160b00160b000e07001e0f00160b00
-201000180c00201000160b00160b000e0700160b00060300180c00180c00060300020100
-0603000e0700160b00160b00060300180c00261300201000160b000402000e07002e1700
-160b001e0f00160b000e0700140a000c0600160b00180c00201000140a00261300140a00
-160b00160b001e0f00040200060300281400160b00160b00180c002010000c0600060300
-180c000e0700160b00180c00301800201000201000180c001e0f00160b000c0600160b00
-160b002613002010000e07000e0700160b000e0700140a002e17000e0700160b000e0700
-0e0700180c00140a00201000160b002010002010002010002010002010001e0f00281400
-281400ffaf5effa74eff9c38ff9d3affaa54301800201000160b00180c002814000e0700
-201000201000160b000e07000e07000e07000603002010001e0f00160b00160b00060300
-140a00160b000e07001e0f00040200160b000e07000c06000603000e0700180c001e0f00
-0c0600160b00160b001e0f002e17002613000e0700201000140a00261300261300201000
-0c06000e0700160b000e07000603001e0f00180c000e0700140a001e0f00281400201000
-140a00201000160b00201000201000160b00060300160b000e0700201000180c000e0700
-0c06002814002010002010002e1700060300060300060300
-2010000e0700160b00140a00160b00160b002010000e07000603000e07000e0700140a00
-060300201000160b00201000180c00060300160b00160b00180c001e0f000e0700160b00
-180c00060300160b002613002814000e0700140a00140a001e0f00160b00140a00160b00
-160b00201000160b00180c00160b00281400261300160b00180c00180c00140a000e0700
-261300140a001e0f00180c00160b00060300201000160b00160b00201000160b000c0600
-140a00160b002814000e0700281400180c00060300261300140a00140a001e0f000e0700
-2613000603001e0f00160b00160b000e0700201000261300160b00180c00180c001e0f00
-140a00180c00301800160b000e07000c0600201000160b00160b00261300160b00201000
-0e0700180c00160b002010000c06000c06002613002010000c0600160b000603000c0600
-180c00201000281400060300140a00ffa448201000281400381c003a1d003a1d006c3600
-b25900f07800f27900ce6700984c00542a00381c003219003219001e0f001e0f00ff9932
-180c000402001e0f00140a00060300180c00160b00261300140a00261300180c00160b00
-1e0f002613000e0700201000160b000c0600201000140a002010002010000c0600201000
-180c001e0f00060300261300180c002010001e0f00160b00160b00201000140a00020100
-2613000e0700160b000603001e0f00160b00160b00160b00201000201000160b00180c00
-0e0700180c00160b00140a000e0700201000160b00160b001e0f00381c000e0700180c00
-140a00281400281400180c00281400201000140a002814002010002613002e17000e0700
-281400180c002613002010000e0700261300180c000e0700060300180c001e0f00160b00
-1e0f00201000201000301800201000201000261300ffa74e3a1d00180c00381c00281400
-4221004a25004a25005e2f004a25003a1d004c26005c2e00783c007e3f00a45200984c00
-b65b00c66300ff850aff9932ffa64cffe6ccfffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffcd9affa448ff8a14de6f00de6f009e4f00
-783c007e3f006e37005c2e005c2e00301800381c004221003a1d004422003a1d002e1700
-2e1700201000281400301800261300201000160b002010002e17000603002814001e0f00
-180c00201000301800ffa142160b00180c00281400180c002613001e0f00180c00301800
-2814003018002e17002e1700301800381c002613003a1d00160b00281400160b00160b00
-160b00ff99322010001e0f003a1d000e07000c06001e0f002010001e0f000e0700160b00
-201000160b001e0f00160b00201000160b000e0700060300180c00140a00160b000e0700
-0e07002814002010000603000e07001e0f00060300160b00160b00160b00140a00201000
-160b00140a000e0700261300180c00160b001e0f00201000180c00160b00160b00140a00
-160b002e17000603001e0f000e0700140a000e07000e07002010002010000e0700261300
-160b00201000180c00160b00180c00140a00140a002010001e0f00160b002010000e0700
-2814002e17000e0700160b002010002613002010000c0600281400180c002613000e0700
-1e0f001e0f00160b00160b00201000160b00180c00160b00180c001e0f000e0700281400
-160b000e0700160b00201000160b002010001e0f00180c000c06001e0f00160b00140a00
-261300201000140a00261300160b00422100201000261300261300ffa244ffa244ffa244
-ffab56261300160b00301800140a00261300ffa54affa244ffa54aff9e3c140a00281400
-160b00201000180c000e07003018000e0700020100160b000e07000c06000c0600140a00
-180c000201001e0f00140a001e0f00140a000e0700160b00160b000e0700180c00140a00
-0603000603000c0600201000201000160b000c06000e07001e0f00180c00160b00201000
-201000180c00160b00160b00160b00180c00261300201000140a001e0f000e0700060300
-1e0f002010000e0700160b00160b000e07001e0f00160b000e0700160b00160b000e0700
-180c00281400160b000e0700201000140a00160b001e0f00
-201000201000201000160b00281400160b00160b00140a002010000e0700180c00261300
-140a00160b00160b00140a00201000261300160b00140a000e07002613002e1700160b00
-0402002814002010002613000e07000e0700261300160b000c06000c0600140a00180c00
-0e07002010000e07000e07000e0700201000281400160b00160b002010001e0f001e0f00
-2814000e0700180c002010000e07002613001e0f000e07003219000e07000e0700201000
-140a00160b000e0700140a00040200261300140a00160b00160b00261300160b00160b00
-180c00040200180c002613002814000e0700140a00201000020100180c00040200301800
-281400160b00180c00201000201000160b00180c00140a000e0700140a00160b001e0f00
-140a00020100180c00261300201000201000160b000e0700201000160b00140a00281400
-3018001e0f00180c000e0700180c00ff9e3c2010001e0f002010004020004a2500703800
-ce6700ff850aff8b16f279009048005e2f004020002010002e17004221000c0600ff9c38
-0e07002010000e07002613000e0700140a002010001e0f000e0700060300140a00060300
-301800140a00180c00160b00180c000e07000603000e07000e0700281400201000201000
-1e0f000e0700160b00140a00160b00180c00020100261300180c00160b00180c00160b00
-261300160b00160b002010002613000e07002814001e0f00160b002010000e0700160b00
-140a00160b001e0f002814000e07003219001e0f00201000180c00261300201000261300
-281400180c000e0700160b00180c002814002e17002010001e0f00140a00180c00160b00
-160b002613000e0700301800180c000c06002010002010002e1700160b002010000e0700
-180c00201000180c001e0f00201000180c00281400ffa4482010003219003219003a1d00
-261300381c003a1d00422100ffb66c4a2500643200542a00663300763b009048009a4d00
-aa5500be5f00e47200ff9326ffa74effcc98fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffd3a6ffb870ff870ee27100ac5600b65b00
-904800864300703800663300542a005c2e00542a003219003a1d003018001e0f00321900
-180c003018002010002e1700281400301800160b002814002814000e07002613001e0f00
-2e1700140a00301800ff9b36180c00201000060300160b002e1700301800261300180c00
-2010002613003018002814002814002613001e0f00180c00180c00281400201000301800
-ffa54a160b000c06002010000c06002010000e0700201000201000201000140a00060300
-180c00140a000e07000e07001e0f00160b00180c00160b00402000180c000e07000e0700
-180c001e0f00201000140a00160b000e0700140a00180c00160b000c0600201000201000
-1e0f00160b00160b00180c00160b00160b002010002814002010000c06000e0700020100
-160b00160b00160b002010002814000e0700281400201000201000160b00201000140a00
-201000201000160b00160b00180c00160b001e0f002613002814000e0700140a001e0f00
-1e0f00140a00201000160b003018001e0f000e0700281400160b001e0f00261300201000
-180c00160b00180c00140a00160b00160b001e0f002010001e0f00140a000c0600201000
-2814001e0f00060300140a00140a00180c00180c000e0700160b00140a00180c00201000
-201000140a00180c00201000281400160b00201000ffa64cffa142160b00201000201000
-2010003018001e0f00160b002010003219002e17002613002613000c0600ffa244ffa448
-2613002010000e07000e0700160b00180c000e0700261300180c000e07000201000c0600
-180c000e0700261300060300201000281400140a00160b000e07000e07000e07000c0600
-201000140a001e0f000c06001e0f001e0f00180c00160b00160b001e0f001e0f00160b00
-140a000e07001e0f00040200160b00180c00160b000e0700281400180c00261300281400
-1e0f002010001e0f00261300201000261300180c00140a00180c00201000160b00201000
-0e07000e07000c06001e0f00140a00201000160b00201000
-201000201000140a001e0f001e0f001e0f000201001e0f00160b000e07001e0f000c0600
-160b002e1700160b00160b00140a002814002814000e0700201000201000201000180c00
-160b002814000e07000c06000e07003018000e07000e0700301800060300201000261300
-140a00180c000e0700180c00180c00201000201000140a00160b00281400160b00160b00
-201000140a00060300160b00180c00261300160b00140a00201000160b00201000261300
-1e0f00020100060300140a00180c00261300160b00160b00180c00160b00140a000e0700
-0e0700160b00140a001e0f00160b00201000281400180c00180c00160b00060300281400
-160b002613002e1700160b001e0f00180c001e0f002010002010000603003018000e0700
-140a002814002010000e07001e0f000e07000603002010001e0f00201000160b000e0700
-2814002613001e0f000c0600201000ffa142180c00201000301800381c005c2e006c3600
-9c4e00e07000f47a00c66300763b004c2600381c002613002e17001e0f00140a00ff9b36
-140a00301800180c002814002010001e0f002010000e0700261300180c00180c00261300
-2010000603000c0600140a001e0f00160b00140a000c06000c0600160b00281400281400
-1e0f00201000281400180c00160b000e0700160b00140a00180c000e0700261300301800
-1e0f00201000180c00160b00180c00160b000c06002010000e07000c0600201000201000
-140a001e0f00180c00140a00180c00261300201000160b002e17001e0f00261300160b00
-140a000e0700261300160b00180c001e0f00140a002010001e0f002010001e0f00140a00
-140a002814001e0f00140a002e17001e0f00180c00180c001e0f00180c001e0f00180c00
-381c002814000e0700281400140a00201000261300ffb264281400301800381c00321900
-2e17003219003018003018004a2500ffb366542a00542a004a25007e3f00703800904800
-984c00be5f00d26900f47a00ff9c38ffba74ffe9d2fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffbf7effa142ff8306d66b00d26900984c00
-763b006e37007038006432006432005a2d004c26003219003018003018003a1d00201000
-301800261300160b00180c00140a002010002814002e17002613001e0f00160b00201000
-1e0f00160b001e0f00201000ffa64c2010002010002e1700201000201000201000261300
-180c003a1d00261300201000180c003018002814001e0f00281400160b00160b001e0f00
-ffa4481e0f00160b001e0f00381c002814000e07000e0700201000160b001e0f000e0700
-160b00160b00201000160b00160b00160b000c06000e0700020100160b000e0700180c00
-1e0f001e0f002e17000c0600160b000e07002010001e0f00060300160b001e0f00140a00
-201000201000040200160b00160b00180c001e0f00160b000c06000e0700160b000e0700
-160b002010000e07002e1700180c002010000e07000e0700160b00201000201000160b00
-040200160b00160b00160b00160b00201000160b00180c000e0700140a000e0700180c00
-2010000e0700301800201000140a001e0f00020100160b00160b001e0f00281400201000
-160b000e0700201000140a00060300140a001e0f00201000180c002010000e0700140a00
-1e0f001e0f001e0f002010000e0700140a000e0700180c003018002814002010000e0700
-201000160b000e0700140a00160b00201000ffa64c381c00201000160b00261300281400
-261300281400180c00160b001e0f00381c002010002613001e0f002613000e0700281400
-ffa040ffa0402010000c06003018001e0f00160b002814002613000603000e07000e0700
-0e0700140a00060300140a002010000e07000c06000e0700180c000603000e0700180c00
-2010000e07000c0600140a00180c000e0700160b00201000160b001e0f00261300160b00
-180c000e0700140a00201000140a00180c00160b001e0f00160b002613000c0600180c00
-020100160b00180c000e07000e07000c0600281400180c002814002010001e0f000c0600
-160b00180c000e07000c06001e0f00160b00160b00060300
-180c001e0f00261300160b001e0f002e1700160b000e07001e0f00180c00160b00160b00
-201000140a002e17000e07000c06000e0700180c00160b002010002613002010001e0f00
-0603001e0f00160b001e0f000e0700160b000c0600140a002010001e0f00140a00160b00
-261300201000160b002010000e07000e0700201000060300160b00281400180c00201000
-160b00261300281400160b00201000180c000c0600160b00160b000e0700060300180c00
-0e0700180c002613002e1700160b003018002613001e0f00180c002010000e0700261300
-2814002814001e0f001e0f00180c000e07002613002814002010001e0f00160b00281400
-2613000c0600261300140a00180c002814000e07000e07001e0f00060300180c00281400
-140a00160b00160b00140a002613002010002010001e0f00160b00160b00321900160b00
-160b00180c00140a00160b002e1700ffa040140a002010002613003a1d003a1d00542a00
-7e3f00904800aa55008a4500643200542a002e17002613002613001e0f00160b00ffa952
-0e0700180c002613002613000e07001e0f002010000e0700201000160b00140a000e0700
-160b001e0f00060300140a00140a002010002010000e07001e0f00180c00160b00060300
-180c001e0f00140a00160b00160b00160b000603001e0f00201000140a002814001e0f00
-0e07002010002814002613001e0f00140a00180c00020100160b000e0700180c00160b00
-160b001e0f00160b00060300160b00160b001e0f00261300180c00160b00040200140a00
-0e0700160b00180c00180c00160b00201000160b00281400160b00180c001e0f000e0700
-160b002010002814000e0700180c002814001e0f003018003219000c0600201000261300
-3219002e1700201000160b002613002e1700201000ffa54a2814003018002e1700281400
-3219003a1d003a1d00381c00422100522900542a005a2d00ffbf7effc488ffd1a2a25100
-7e3f00ffeddafffcf8ec7600ff8c18ffad5affbc78ffe2c4fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8fffcf8ffc386ffb468ff9c38f27900c86400aa5500b65b00
-884400763b005c2e005c2e004a2500542a004020004a25003018003219002010002e1700
-3219002613002814001e0f002814002814002814002613001e0f00281400140a002e1700
-0e0700180c00281400180c00160b00ffad5a201000281400160b00281400281400160b00
-2814002814001e0f00281400261300140a00160b000e07002613001e0f00201000ff9b36
-160b001e0f000e0700160b00140a00160b00140a00321900160b00301800160b00160b00
-180c00281400060300140a000e07000e07000c0600140a00180c00140a00281400160b00
-1e0f002613002613000e07000e0700180c00201000060300160b002010000e0700160b00
-160b000e07000e07002010000e0700160b001e0f00160b001e0f002010002010000e0700
-1e0f001e0f00180c001e0f00180c000e07000e07000e0700160b00281400180c00040200
-201000261300160b002e1700160b00140a00040200140a00301800160b002e1700201000
-1e0f00180c002010000603002010000c06002e1700160b002613004422000e07001e0f00
-160b000e07000e0700140a00160b00261300160b00261300201000180c000e07000e0700
-0e07002814002613002814002613000e07001e0f00160b002814000e0700281400201000
-2e1700201000261300281400201000ff9d3a180c00160b002010003a1d00301800281400
-301800180c00381c002814003a1d00321900381c002613002814003018001e0f00281400
-261300261300ffaa54ffa4480e07000e0700180c00060300160b00160b001e0f00020100
-160b00160b00040200060300160b00160b000e07000e0700160b000402000e0700261300
-0e07000e07000e07000e0700160b00180c00160b00160b00281400180c00281400160b00
-180c00160b00140a001e0f001e0f00140a000e0700160b00160b00180c00060300140a00
-140a000e07000e0700201000201000160b000c06002e1700201000180c000e07001e0f00
-180c00060300060300160b001e0f00180c001e0f001e0f00
-4221001e0f00201000180c002814000e07002814000e07001e0f000e0700140a00180c00
-2010000e07002814000e0700180c002010002010002814002814000603002010000e0700
-160b00160b00201000201000140a00201000060300201000180c001e0f00160b000c0600
-201000180c001e0f000e0700160b00160b000c0600261300180c002010001e0f00060300
-160b002010000e0700160b00180c00180c001e0f001e0f001e0f002814001e0f00160b00
-0603000e07000402000c0600140a00140a000e0700201000201000160b000e07000e0700
-140a00180c000e0700261300261300201000180c00180c000c0600140a001e0f00261300
-2e17002010001e0f00301800180c000c0600140a003018002010000c0600140a001e0f00
-2613000e0700160b00180c00160b000e07000e0700180c002613002010000e07001e0f00
-0c0600160b00160b00201000201000ffa040261300201000160b003a1d002e1700402000
-422100422100542a006432003a1d003219002e1700180c00201000281400ffa952261300
-140a002010000603002814000e0700201000201000040200060300160b00160b00201000
-160b00160b00180c00180c002010000e0700180c00180c003018001e0f002e17000c0600
-160b00301800160b00180c002814002010001e0f000c06002613002010000e0700180c00
-0e07002e17001e0f00160b000e0700180c00281400261300201000160b00020100020100
-160b00180c001e0f003a1d00140a001e0f00201000301800160b001e0f001e0f00160b00
-1e0f00180c001e0f000e07001e0f00060300281400180c00140a003018000c0600301800
-160b00381c00281400160b001e0f001e0f00180c002010000e0700160b00060300180c00
-140a002613002e17002814002010002814002010002e1700201000160b002e17003a1d00
-3219003a1d003a1d00301800381c004422003a1d005a2d005229005c2e006c36007e3f00
-924900aa5500aa5500c66300ff8204ff8810ffab56ffd1a2ffe9d2fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fff8f0ffd3a6ffb366ffa54aff8810de6f00ce6700b25900b85c00
-8a4500763b00643200542a004221003a1d005a2d00381c002814002613002e1700180c00
-2e1700261300ffa64c301800160b000e0700180c001e0f00281400160b000e07001e0f00
-281400160b00201000281400261300261300ff9b36281400301800281400140a00301800
-201000201000140a00140a00160b003a1d00201000261300301800321900ffa142201000
-0e07002010002010000c0600160b00201000160b00201000160b00140a00160b00060300
-0e07000e0700201000160b00160b000603002010001e0f002010002814002010000e0700
-160b00180c00180c00201000060300160b00160b000e0700160b000e07001e0f00060300
-160b001e0f00201000180c002010001e0f001e0f00201000140a00201000261300160b00
-0e07000c0600180c00261300180c00160b000e0700180c00160b000e07002814000c0600
-160b000c0600180c000603000402001e0f002613000201001e0f00160b000e07000e0700
-3018001e0f00160b00201000281400160b00261300060300201000160b00140a00160b00
-201000020100180c00140a000e0700281400160b000e07002010000e0700201000180c00
-0e07000e0700040200060300060300201000180c000e0700160b00160b002010000e0700
-2613000e0700160b00301800ffa2442814002814001e0f002010000c06002e1700261300
-3219002814004020004c2600381c00261300381c00402000301800301800281400321900
-3018002010001e0f001e0f00ff9e3c160b00281400180c001e0f000e0700160b00040200
-0e0700160b002613001e0f002010002010002010000e07000e07000c0600020100180c00
-140a001e0f00160b00140a002814000e0700020100160b00160b000c0600140a00160b00
-180c00160b00160b00140a00140a00060300201000160b00140a00261300060300201000
-160b00140a001e0f00201000201000201000281400140a002010001e0f000e0700201000
-180c002e17001e0f002010001e0f00281400160b00060300
-281400281400180c00160b002010000c06001e0f00180c00160b00140a00180c00160b00
-140a001e0f00201000160b00201000140a00160b00160b002613000e0700180c00261300
-0c0600180c000e0700140a000c0600160b00201000160b000e07001e0f00060300201000
-0e0700160b00180c00201000281400160b00140a00180c001e0f001e0f00180c00060300
-201000140a002010001e0f00140a00261300180c00060300160b00201000160b00281400
-0603001e0f002613000e0700180c000e07002613001e0f00140a000e07000201000e0700
-1e0f002613002e1700160b002010000e07001e0f000e07000c0600201000160b00060300
-2613000e07000c0600201000160b000e0700140a00180c00160b001e0f00140a001e0f00
-2010000e0700281400160b002613001e0f00281400040200180c00180c00160b00060300
-0e07000c0600180c000e0700261300ff9932160b000e07002814001e0f00301800201000
-3018004221004221004a25003a1d00301800301800201000180c00020100ffa040140a00
-2010000c06000e0700140a00160b00160b00201000281400160b001e0f002010000e0700
-060300140a002010000c0600160b00201000160b00180c002814002010000e0700180c00
-301800201000180c00201000160b000e07000e0700201000140a003018000e07001e0f00
-201000160b000c0600201000140a001e0f00201000281400160b000e0700201000281400
-140a00201000160b00180c00160b000e0700201000160b000c0600201000201000060300
-201000160b000e0700180c000e07000c06002613002814001e0f002814001e0f00140a00
-281400160b00160b002814001e0f00160b000e0700180c000201000e0700201000281400
-281400301800140a00261300281400281400261300180c00201000422100201000281400
-381c002814003018005229002e17004a25004221005a2d00542a006c3600542a00643200
-8a4500924900aa5500b85c00e27100f27900ff9932ffaa54ffc488ffd1a2ffebd6fffcf8
-fffcf8fffcf8fff3e6ffc78effb162ff9932ff8c18fe7f00d66b00ac56009e4f00864300
-9249005e2f006c3600542a003a1d00442200301800321900381c00381c00281400281400
-281400180c00ffa142160b00180c001e0f002010000e0700281400281400261300201000
-2010002613002814002814002010002010001e0f00ff9b36281400180c00301800060300
-3a1d00201000020100180c00301800201000201000381c00ff952aff9e3c0e0700180c00
-160b00281400160b00160b00160b00140a003018000e07000e0700140a001e0f00160b00
-1e0f001e0f00160b00180c000c0600180c00180c00180c002010002010002010002e1700
-140a00201000160b00160b00160b00180c00201000140a000e0700140a00140a00160b00
-160b00160b00301800180c00160b001e0f00140a00160b000e0700160b00261300201000
-1e0f002e1700160b002613000e07000e0700160b000e07001e0f002613001e0f00060300
-1e0f00180c00160b001e0f00281400201000301800060300281400160b001e0f00180c00
-2010001e0f002613000e07001e0f00160b00160b000e07000e0700180c00160b000e0700
-2613000c0600180c000402003219002613001e0f00281400160b001e0f00160b00180c00
-020100160b000e07000e0700180c000c0600060300261300160b000e0700201000301800
-201000201000201000ffa74e281400301800301800301800381c003219002e1700281400
-3a1d00261300522900381c00301800261300301800542a002814003a1d004422002e1700
-3a1d003018001e0f00301800201000ff9830ff9d3a160b000e0700020100160b000c0600
-0c0600160b000c0600180c000603002613000e07000c06000e0700261300180c00140a00
-0e0700060300040200160b001e0f001e0f000c0600180c00281400261300180c00180c00
-020100261300160b002010001e0f000c0600180c000c0600160b001e0f00180c001e0f00
-2e17001e0f001e0f00261300261300160b00261300160b00201000140a000e0700180c00
-160b001e0f00261300180c00201000140a00160b00180c00
-180c001e0f00160b000c0600160b00160b002010000e0700140a00201000201000180c00
-201000140a002e1700180c002e17002e17000e07001e0f00160b00261300180c00160b00
-160b000e07000c0600160b00180c00180c00201000140a000c06000e07002010000c0600
-0c0600160b00160b000e0700160b001e0f002010001e0f00160b001e0f000e07001e0f00
-020100201000160b00160b00160b00180c00201000180c002010002613001e0f00201000
-0c06002010000e0700180c002e1700180c001e0f002e1700160b00140a00261300160b00
-0e07001e0f000603000c06000c06000e0700160b002613002613000e0700180c00201000
-2814002814002010002010000e0700140a000e07002010000e0700180c00160b00201000
-180c001e0f000603002010002010002010000c06002010001e0f000e0700281400281400
-140a002e17002010002e17000e0700281400ff9d3a201000201000201000160b00261300
-261300381c00261300381c003a1d002814001e0f001e0f001e0f00ffa040160b001e0f00
-020100180c00261300180c000201000c0600180c00140a00180c00180c00160b000c0600
-301800160b00160b00140a000e07001e0f000c0600160b000c0600201000160b000c0600
-160b00060300201000140a001e0f000e07000402000e0700160b000c0600160b00140a00
-160b000e0700140a002010000e0700060300160b001e0f000e0700180c000e07000c0600
-0e0700180c00261300140a002010002613002613000e0700060300160b00160b00160b00
-160b00281400160b00160b002010002010002010002010002010000603000e0700160b00
-2010002613002e1700201000160b00180c002010001e0f00160b00201000281400281400
-281400281400160b00201000201000301800321900201000321900160b002e1700201000
-261300381c00381c003219003018004422004a25004422004a25004020006432005c2e00
-7e3f00884400a25100b65b00bc5e00f47a00ff8306ff8306ff9932ffb76effc78effc890
-ffc890ffb870ffad5affa952ff9c38ff850ae87400e07000c66300a251009c4e00904800
-8844006432005a2d00522900542a004a2500422100381c002613002814001e0f00201000
-1e0f00261300ffa54a2010003018002010000e0700180c00261300301800180c00261300
-160b00281400160b00160b00140a001e0f00180c00261300ffa448ffa448140a00201000
-0e07001e0f00160b00180c000e0700201000ffa448ffa2442e1700160b001e0f00140a00
-160b00180c00261300180c002613001e0f00201000160b000e0700261300261300201000
-0e0700201000160b001e0f000e07000e0700160b00180c00160b00160b00180c000e0700
-0e0700160b002814000e0700160b002814000c0600160b002010000603002814000e0700
-160b00160b00281400140a00281400160b00381c001e0f00140a00060300281400140a00
-160b000201001e0f00160b00140a00281400201000180c00180c000c0600160b00281400
-180c000e07001e0f00201000201000261300201000180c003018000c0600160b001e0f00
-0e0700140a00160b000e0700180c00040200201000160b00160b00160b001e0f00201000
-160b00201000060300180c000e0700140a00140a001e0f000e07000e0700180c00060300
-0603002613000e0700160b000e07001e0f00281400180c001e0f00140a00201000281400
-2613000e0700ffa952281400422100180c00201000261300321900281400201000381c00
-4a25004c26003018004020003219002814004221004a25004020003a1d003a1d00160b00
-2613003018002814002814002814002814002e1700ffa040160b00180c001e0f00160b00
-1e0f000e0700060300180c002010002010001e0f00160b000c06000c0600160b000e0700
-0c0600140a00160b00140a00160b000e0700060300160b00261300160b002010000e0700
-0e07002010001e0f00160b00180c003a1d002613001e0f00281400160b00281400160b00
-2814000e07000e07002010001e0f00160b002613001e0f00201000180c001e0f002e1700
-160b00180c00140a001e0f002010000603000e0700201000
-160b00201000180c000603002010000e0700180c00201000160b00160b00060300201000
-201000140a00281400160b00160b00160b001e0f000603002e1700160b00281400160b00
-201000180c000e07000c06000e0700180c00160b002010000e0700140a00180c00160b00
-0e07000e0700160b00140a00160b00201000160b00180c000e07003219003a1d00160b00
-160b00160b00160b000e0700281400160b00281400180c00180c00160b00180c00060300
-160b00160b00261300160b00160b000e07001e0f00160b002010002e1700160b00261300
-0402001e0f000e0700160b00201000201000160b00180c000e0700160b001e0f001e0f00
-160b001e0f000e0700160b000e0700060300160b001e0f000e0700160b00160b001e0f00
-180c00180c00201000160b00160b003a1d002613001e0f00201000140a00140a000e0700
-281400180c00060300180c00140a00180c00261300ffa040201000201000180c00201000
-321900201000160b00281400281400140a00201000301800ffa244180c002010002e1700
-160b00160b00160b00180c00281400201000180c00180c00301800261300180c00160b00
-0e0700160b001e0f00160b00261300180c000e07002e17002010000e0700020100201000
-020100180c00160b00261300160b001e0f00160b00201000160b000e0700160b00281400
-140a00180c002010002814002010002e17001e0f00160b002010000e0700301800160b00
-160b000e0700140a00160b000e07000e0700160b00180c00261300160b00160b00261300
-160b000e07002e1700180c001e0f001e0f00201000201000180c00160b000c0600160b00
-160b00160b00160b000e07000e0700261300301800201000180c00180c00160b00160b00
-2613000e07003018002010002e17002814002e1700261300201000281400321900281400
-2814001e0f003a1d003a1d003018002814002e17004221004a25004a25005c2e00663300
-763b00763b008844009e4f009a4d00b85c00d66b00ec7600ff870eff9428ff9020ffab56
-ff9e3cff9b36ff9932ff8a14f07800ea7500d06800be5f00aa55009e4f00864300663300
-6c3600542a004221003a1d003a1d003a1d00261300261300281400281400301800261300
-301800ff9b362010000e07001e0f001e0f002e17000e0700201000160b00281400201000
-201000160b000c06002613000c0600261300201000261300160b00281400ff9e3cff9d3a
-ff9c38ff9e3cffaa54ffa244ffa040ffa2441e0f00180c00140a002814000c0600201000
-160b001e0f000e0700160b00180c003219000e0700060300180c00180c00160b00160b00
-160b000e07000603000201001e0f000e07000c0600160b00060300180c00160b00281400
-0e0700201000140a00180c001e0f00201000201000140a00140a000c06000e0700160b00
-160b00160b000201001e0f00422100160b00140a00140a002010000e0700160b00160b00
-1e0f000e0700180c00281400140a000e0700140a00160b00160b00180c000e0700201000
-0e0700140a00160b00160b001e0f00160b00201000160b00160b00180c002010000c0600
-180c002814001e0f000e07000e07002613002814001e0f00140a00140a001e0f00201000
-442200160b000e07001e0f00160b000e07001e0f000e0700160b00160b00180c00261300
-0201001e0f001e0f00180c00140a00140a00201000160b002010000e0700160b00261300
-1e0f00201000ffa952381c002814003018002e17003018003018003219003a1d00301800
-4221004020004221003a1d00422100442200422100442200381c004221004221004a2500
-4422004221002814002613002814002613002814001e0f00ff9d3a1e0f00281400180c00
-180c00060300281400040200180c00020100140a00160b00160b002010000c06000e0700
-0c0600201000201000060300160b002814000402000603002010000e0700140a00301800
-060300180c000603003018002010002814001e0f00140a00160b001e0f00180c00180c00
-201000180c00160b002613002010000e07000e07002010002e1700281400160b00140a00
-0e0700261300020100160b00201000140a000e0700140a00
-1e0f000e0700180c00160b00180c00160b00160b000e07001e0f002010000e0700201000
-1e0f002010000e0700281400140a003a1d00201000301800160b00180c00201000140a00
-180c00180c001e0f00261300140a00140a00180c00160b00160b000e0700201000160b00
-261300160b002613001e0f000e07002613000402001e0f002e1700160b00140a00160b00
-201000160b00140a002010001e0f000e07001e0f002010000402000e07002613001e0f00
-2010003018000603000c0600201000180c000e07001e0f000e0700281400301800160b00
-201000201000160b002010001e0f00020100140a00281400160b00261300160b00201000
-160b00201000180c00160b00180c001e0f00140a001e0f00281400160b000c06001e0f00
-180c00180c00160b00160b00160b00160b00180c000603000e0700140a00160b00201000
-201000160b00261300180c00201000201000160b00201000ffa0400e07001e0f00201000
-1e0f002814002010001e0f00180c00160b001e0f00ff9932180c00180c00201000201000
-0e0700160b00160b002814002010000c0600140a00180c001e0f00060300140a00261300
-281400160b000e0700160b001e0f00160b002613000e0700201000201000160b00180c00
-140a001e0f00160b00160b002814000e0700180c00140a00160b00180c00180c000e0700
-060300201000140a001e0f00140a00201000140a00261300160b00281400140a00180c00
-1e0f002e17001e0f00140a000e0700180c00201000140a001e0f00160b00160b00160b00
-0603000c0600180c001e0f00180c00261300160b00301800140a002613002010000e0700
-201000160b00201000201000201000301800180c002814002613001e0f00060300160b00
-201000060300160b00201000201000180c00281400160b002e1700ffa4480e0700281400
-2814002e17002010003018002010004422004221004221003219004422004c26005a2d00
-804000643200884400984c00984c00904800b85c00ca6500d26900ec7600f27900e87400
-ff8204e47200e27100ea7500ca6500c46200aa55009048007e3f008643007e3f00783c00
-542a005229004422003219003a1d003a1d004a2500381c002e1700281400160b00201000
-140a002814002814000e0700261300060300160b002010001e0f00160b00261300281400
-1e0f002814002010001e0f00281400180c003018000e07003a1d00261300201000140a00
-2e17002e17000c06001e0f00180c00160b00180c00140a001e0f00160b000e0700281400
-140a00160b002814002010000603002010001e0f00160b001e0f00160b00140a00160b00
-0e0700180c00160b001e0f00201000180c00201000201000180c00180c00160b001e0f00
-180c00180c00160b002613001e0f002010002e17002010002010000c0600160b00060300
-0402002814001e0f00180c002814002e1700160b00160b00180c00140a00261300201000
-060300281400180c00201000180c001e0f00040200160b000e0700160b00140a001e0f00
-160b00060300140a00140a00160b002e1700301800160b002613000e07002814001e0f00
-180c000e0700140a000e07001e0f000e07001e0f00201000180c00201000180c00160b00
-160b00160b001e0f00140a00281400180c00180c00160b00060300281400140a00160b00
-201000140a00201000180c00060300201000160b00180c00180c00201000160b00261300
-201000ffa142180c002814002814003018004020002814004a2500301800301800321900
-4c26004221004422005c2e004a25005229005229005a2d004a25005a2d00402000422100
-3219002814003018002e1700261300261300301800160b004a2500ffa9521e0f000c0600
-180c000e0700060300160b00040200140a00160b00160b00020100020100281400040200
-060300180c000e0700140a001e0f00140a00180c001e0f000c0600160b000e0700180c00
-2814002010001e0f00201000160b00180c00180c001e0f000603000201001e0f000c0600
-2010000c0600160b00160b00140a001e0f002613002814002814001e0f00281400201000
-180c00160b00201000140a002010000c06000e07000e0700
-160b002814001e0f00201000140a00140a00160b00060300160b000603000603000e0700
-180c002010002814001e0f00160b000c0600180c00160b00180c00140a00180c00201000
-1e0f00281400180c00020100261300180c000402001e0f00160b00201000160b001e0f00
-2613002010001e0f000c06000e0700261300180c00140a00160b00201000201000201000
-0e0700201000201000140a000e07003018001e0f000c06001e0f00160b001e0f00140a00
-180c00201000201000060300140a00180c001e0f00160b001e0f00040200261300180c00
-160b00160b00160b000e0700160b000e07002613002010000e0700281400180c002e1700
-160b00060300301800140a000e0700201000180c00180c00201000140a00160b000e0700
-281400140a00261300201000180c00140a00140a00040200281400160b00020100201000
-160b00160b000e07000c0600180c00160b001e0f00160b00180c00ffa040ff9e3cffa142
-180c00160b00301800140a000e0700ff9d3affa54a2010000e0700201000261300180c00
-160b00201000201000180c000e07000603000e07002814000e0700160b000e0700201000
-261300140a00160b002e1700261300180c00201000180c002e1700201000160b000c0600
-1e0f002010002010002010000603002010002e1700261300180c00160b00180c000e0700
-0e07002010002010002010000e0700160b002010002010000603002010000c06001e0f00
-1e0f00160b000e07002010001e0f00201000201000180c001e0f000402002814002e1700
-060300201000140a00140a002010000c0600160b001e0f001e0f002010000e0700281400
-2613002814001e0f003018001e0f00180c00180c00160b00201000160b00160b00201000
-3018002010002613002e1700301800402000301800301800301800ffaa54301800261300
-0e07003018003a1d00180c004221003219003018004c26004221005a2d004c26004a2500
-663300763b00763b007e3f009048009249009c4e00b45a00bc5e00ce6700bc5e00d66b00
-e07000c46200b65b00c46200b65b00b259009048009048006c3600763b006e37005c2e00
-5229004020004221002e17003a1d003219003a1d003a1d00281400321900060300261300
-2010001e0f00281400160b00281400160b00301800201000140a001e0f001e0f00160b00
-201000160b00140a00160b000e0700201000201000261300201000180c001e0f00281400
-1e0f001e0f00160b002e1700281400281400140a003018002613000e0700180c00160b00
-2613001e0f000c0600140a00281400180c00160b001e0f00140a001e0f001e0f002e1700
-140a000e07002010002010001e0f00201000160b00261300160b00180c00060300180c00
-140a002e1700140a00060300180c00160b00160b000e0700060300180c00140a00060300
-160b000e0700160b000e0700160b002613002814002e1700281400140a002613000c0600
-1e0f00201000140a00281400261300180c00160b000c0600160b00160b00180c00140a00
-160b00160b00140a00160b00140a00180c00160b00160b00180c000e07000e0700201000
-1e0f00160b002613000c06000e0700160b00140a00160b001e0f00160b00140a00281400
-0e0700160b00140a00160b00180c00201000180c002010001e0f00180c000e0700261300
-160b00180c00060300140a00140a00160b00160b00301800140a000e0700160b00261300
-201000ffa64c381c00301800201000301800201000381c00281400442200321900442200
-4422005229005a2d004422005c2e00542a005c2e00542a00542a004c26004a25004a2500
-4a2500381c00381c004221002814002010002814002e1700201000281400ffa040140a00
-140a000e07001e0f000603000603000e0700180c000e07000e0700140a000c0600160b00
-201000261300160b00160b00201000160b00160b00160b00160b00160b00160b00160b00
-201000160b00180c00140a001e0f00140a00201000301800160b00281400201000140a00
-060300160b000e0700140a001e0f00140a002814000e0700160b00160b00281400180c00
-180c00140a000e0700180c00180c002010000603000c0600
-040200140a002010000e07000e0700281400160b002613001e0f00180c001e0f00160b00
-1e0f00140a00261300201000201000160b00160b00281400180c00281400160b00020100
-201000160b00201000180c002010002010000c0600201000140a00160b000e0700140a00
-0e07000201000c06000603000e07000603000e0700180c00140a002e17001e0f00281400
-0e0700180c000e0700180c00060300160b00180c00160b00160b00281400140a000e0700
-160b000c06000402000402000e0700180c000c0600160b000603001e0f001e0f001e0f00
-0e0700160b00180c00160b002814000e07000e07000e0700160b00140a000c0600180c00
-060300160b00160b000c06000c06002613000e07000402001e0f001e0f002010000e0700
-0c0600261300180c000c06000e07000e07002010000e07002613001e0f00180c00201000
-1e0f002e17001e0f00201000160b002e17001e0f00160b00201000180c00180c00261300
-ff9d3affa142ffa244ff9d3affa54a160b00180c001e0f00160b00040200180c00160b00
-160b00201000160b000e07000c0600140a000e07000e0700160b002010000e07000c0600
-020100160b001e0f00160b00160b00140a00140a00160b00180c002814002010001e0f00
-160b00160b000e07000c0600201000160b00201000160b00160b003018000e0700281400
-201000201000160b00201000201000201000180c002e17001e0f00040200281400201000
-160b00140a00160b002010000e07002613001e0f002e1700160b00160b000e0700281400
-0c06002613002010002e17002e17002010003a1d001e0f003018001e0f00261300140a00
-140a00201000180c00201000160b001e0f00201000160b000e07003a1d00180c00201000
-1e0f000e0700281400281400160b00201000160b00201000261300ffa244261300281400
-301800180c003a1d002010002814003018002010003a1d00381c004a25004a25005a2d00
-4a25006432005e2f00542a007038007e3f008844007e3f00aa5500ac5600aa5500aa5500
-be5f00aa5500b85c00924900924900884400864300763b007038006e37004a25005a2d00
-542a00402000542a00301800422100321900281400160b002e17002010002e1700261300
-140a00281400281400281400201000160b00180c00180c001e0f000e0700140a00180c00
-301800201000180c002814002010002814002010002010002e17003219001e0f00160b00
-0e0700160b00160b00140a002814002010000e0700140a00201000281400140a002e1700
-1e0f000e0700201000140a000e07000201002814000e07001e0f000e0700060300281400
-180c00180c001e0f001e0f00201000160b00261300201000201000140a00140a00160b00
-201000201000160b00160b00160b00160b00180c003219001e0f00281400060300180c00
-140a001e0f00060300201000140a00140a001e0f00180c00160b00160b00140a00261300
-140a002814003219002e17000402001e0f000c06000e07000e07002e17000e07000e0700
-020100140a00201000180c000e0700381c00261300160b00281400160b00160b00201000
-2010000201002010000e0700201000160b002e1700261300160b00180c00140a00201000
-180c002010001e0f00160b00140a002814000e07000603002613001e0f000e07001e0f00
-060300180c00201000261300281400160b00201000201000160b00201000060300201000
-ff9e3c2e1700261300381c00381c00201000321900542a004c26005229004c2600422100
-5a2d006633007038006e37004c26006432007038006432006432005e2f005a2d00381c00
-5a2d00542a004221004020002010003018003219002e1700261300261300ffa142160b00
-180c000c0600140a00180c000603000c06002010000e07000e07000e0700060300060300
-2613002010000201000e0700140a00160b00160b00020100020100201000180c00201000
-140a001e0f000e0700140a00201000281400301800160b002e17000c0600140a00281400
-2814000e0700180c00180c00160b001e0f00160b00261300261300201000160b00180c00
-1e0f002814002814002010000e07002814000201000e0700
-2613000603001e0f000c0600160b00160b00160b00160b000e0700301800301800201000
-1e0f003a1d002613000e0700160b00160b00201000180c00180c00160b00281400160b00
-1e0f00160b002e1700140a001e0f00180c000201000e07001e0f00201000281400201000
-0e0700140a00160b00261300160b002613002e1700160b00140a001e0f00180c000e0700
-201000201000180c00160b001e0f00180c000c0600060300180c00060300281400261300
-0c0600060300160b001e0f00160b00160b00261300301800180c00201000281400201000
-180c001e0f00160b000e07001e0f00160b00180c002010002613002010002010002e1700
-180c00422100160b00160b00160b002010000e07000e07000603000c0600060300201000
-2814000c0600160b00201000160b000603000603002010000603000e0700180c00281400
-261300281400281400160b00140a001e0f00201000201000160b00160b00160b001e0f00
-281400160b00180c00201000160b00160b00261300261300160b00201000201000261300
-180c002010001e0f001e0f00180c00201000160b00281400180c000e07000e0700160b00
-2010002613003018002e1700180c00040200160b002010000c0600201000160b00301800
-0c0600160b001e0f00201000160b00180c001e0f002010000603000e07000c0600160b00
-180c00160b00201000160b00160b00160b00201000201000281400180c00261300160b00
-2814000603000c06002814000c0600160b00060300060300180c00140a000e0700201000
-0e0700140a002e1700180c00180c002e1700160b002e17002010000e0700180c00180c00
-180c00180c003018002e17001e0f003018002e1700281400201000180c00201000201000
-281400261300261300160b002e17001e0f002e17001e0f00140a002e1700ffaf5e301800
-2613001e0f001e0f004221002814002010002010003219004020003a1d004a25004a2500
-5c2e004c26005c2e006c36005c2e006432007e3f00783c00984c008a4500a25100ac5600
-8643009c4e00904800763b00864300804000864300542a005c2e00542a004a2500402000
-4a25004a25003219004221003219003018000e07003a1d00160b00261300160b000e0700
-140a00180c00140a00160b00140a000e07001e0f00160b000603002010000c0600281400
-160b00160b002010001e0f002010000e07002814000e07000c0600201000201000201000
-2010002010000e07001e0f002613002814000e0700180c00160b002e1700160b000e0700
-160b00261300160b002e17001e0f00160b002010000e0700261300160b00160b00201000
-140a00160b00060300201000140a00060300201000180c00180c001e0f000e0700261300
-0c0600180c00160b000e0700160b00180c00140a00180c000e0700160b00180c00201000
-0402001e0f003219001e0f000c06000e07000e07000e0700160b00201000281400201000
-2e1700160b00140a000e0700160b00201000201000201000201000180c00201000040200
-1e0f000e0700281400160b00261300281400160b001e0f00281400180c00060300201000
-160b000e0700140a00180c000e0700180c00140a00201000140a00180c00180c00281400
-140a00160b00180c00261300281400160b00160b000e0700160b00160b00160b001e0f00
-1e0f000e0700180c00160b00261300281400261300201000261300301800201000201000
-ffa54a2e1700160b001e0f003018002e17003a1d002010003a1d00442200542a00522900
-783c00763b00663300663300663300804000763b008643006c3600763b00783c006c3600
-6432004221004a2500542a003018003219003a1d00261300201000160b00060300ffa54a
-2814000c0600281400020100140a00160b000c06000e07000e0700160b00160b00140a00
-0e07000201000e07000c06000c06000c06000e0700140a00140a000e07000e07001e0f00
-160b000c0600140a000e0700160b002e1700180c00160b00160b002010001e0f00160b00
-060300180c003219000603000e0700160b000201001e0f002010002814002613000e0700
-180c000e07000e07001e0f00160b001e0f00201000020100
-2010000e0700261300020100180c002613002010002010002010000c0600201000261300
-0e07002010002e1700180c000e0700160b002010000e0700160b00160b00180c00201000
-180c00301800180c00160b00060300140a002010001e0f00180c000c06000c0600201000
-160b00281400140a000e0700281400160b00140a00180c00180c002e1700160b00160b00
-160b00140a000c0600140a00140a00160b00201000160b00160b00180c000e0700160b00
-160b00201000180c00140a00180c000e0700140a002010000e07000e0700180c00160b00
-2010000201002814000e07000e0700160b00180c002e1700140a002010001e0f00160b00
-180c000e0700180c000e07000e0700160b00160b00180c00180c000e07002010000c0600
-0c06001e0f002814001e0f00160b00160b002010000e0700160b00281400160b00201000
-261300180c00201000160b00180c001e0f000e0700140a000e0700140a00180c001e0f00
-180c000603002e1700160b002010001e0f00140a003a1d00160b00140a00201000281400
-160b000c06000e07002814002010002010002010000e07002010001e0f00040200201000
-0c06002010001e0f00180c00160b00160b001e0f00180c00180c00160b00160b00140a00
-2010000603001e0f00140a002814001e0f00201000201000160b00160b002010000e0700
-1e0f00140a001e0f002010001e0f00180c00201000201000160b002e1700281400201000
-180c00201000160b000e0700160b00180c002010000c0600140a00180c00281400160b00
-2010000c06000e0700180c002e1700140a000603001e0f00180c003a1d00160b00201000
-140a002010004221000e07000c06002613002010002e1700201000201000261300201000
-140a00140a001e0f000e0700160b00160b001e0f002010003219001e0f00381c00201000
-1e0f00281400381c00381c003018003a1d00281400301800301800281400321900402000
-422100522900422100542a00542a006633006633007038006c36006e3700643200703800
-7038006e37008040006633007e3f00643200763b00522900542a004c2600522900422100
-4221003a1d00381c003018002010000e07002814002e1700160b00261300ffa952140a00
-0e07002814001e0f00160b00201000160b002010000e0700160b002010002814000e0700
-201000180c00160b00160b001e0f00160b00201000160b00140a002010000e0700160b00
-180c002613002e1700160b002814001e0f00281400281400201000281400060300281400
-201000261300160b00060300180c001e0f00180c00020100261300160b00180c00180c00
-1e0f002613002814002814000e07000e07002010000e0700201000160b000e0700201000
-201000160b000c0600180c00180c000c0600201000201000160b00160b00201000140a00
-0e0700160b00261300301800180c000e0700281400180c00040200180c00160b00160b00
-261300180c00140a00160b00160b000c06000201000e0700140a00180c001e0f00160b00
-0e0700201000160b000c0600201000201000140a00160b001e0f000e0700180c00281400
-160b000e0700201000201000160b000e07000e0700180c00180c00160b000e0700201000
-160b00281400140a00040200160b00180c000e07000e0700261300160b00261300060300
-0e07001e0f00281400201000281400160b002e17000e07002010002613000c0600261300
-ffa0403018002814002814002613002e17003219004422004422003a1d005229006e3700
-6c3600763b008a45008643008040008844008a4500864300904800924900984c00703800
-6633005c2e005e2f004a25004020004422002e1700160b003a1d00281400160b00180c00
-ff9b36201000140a00160b000e0700140a000e0700020100060300060300160b000e0700
-0e07002613001e0f00160b00140a00040200180c000e07000e0700020100160b000e0700
-060300281400160b00180c002010000e0700140a00180c00140a00180c00160b00140a00
-140a001e0f00160b00160b00261300261300261300160b000e0700160b00180c001e0f00
-201000180c000c06002010000e07001e0f002814001e0f00
-2010002010002010001e0f00160b00180c000e07002010002613000201000e0700201000
-1e0f00180c000e0700180c00201000180c00180c00201000180c00201000201000160b00
-1e0f000e0700180c00160b000c06000c06002010001e0f00140a00160b00140a001e0f00
-0e0700160b000e0700140a00201000201000140a000e07000c0600140a00180c00020100
-180c00060300201000160b00160b00201000201000160b00261300180c00160b00261300
-180c000e07002613000e07002613001e0f000402002613000c06001e0f00180c00040200
-281400160b00140a000e0700160b000e0700180c002010000e0700180c000e0700140a00
-201000180c00140a001e0f00160b000201001e0f002613002814000e0700201000180c00
-2010002010000603002814000c0600160b00160b001e0f00140a001e0f00281400160b00
-180c00160b00160b00201000201000301800160b000e0700140a001e0f000201001e0f00
-160b00281400281400160b000e07002814001e0f00140a000e07000e07001e0f00180c00
-160b00281400160b00060300180c00180c000e0700180c000e0700201000201000160b00
-281400160b000e0700180c00180c002613000c06002e17001e0f002613000c06002e1700
-0c06000c0600180c002010001e0f002613000e0700180c00160b00201000201000160b00
-0e07000e0700281400140a00201000160b00160b00281400160b00160b001e0f00160b00
-0e0700160b00180c00201000201000281400140a002010000e07001e0f00281400180c00
-261300281400201000301800281400180c00160b00160b00160b00160b001e0f001e0f00
-2010002010002613002814001e0f00261300261300201000160b002010003018000e0700
-201000180c002613002814002e17002814002e1700201000160b00321900301800301800
-321900140a002010000e07002814003018001e0f00180c00301800281400402000301800
-4422004a25004a25004a25005a2d004a2500522900703800643200763b00783c00663300
-783c006c36005a2d004a25006c36005c2e00522900381c00522900422100402000281400
-160b002e17003018002e1700261300160b00180c001e0f00201000ffa9521e0f00201000
-180c000e0700160b002010002814000e0700281400060300160b00160b001e0f00261300
-261300160b00201000201000160b000e0700381c002e17001e0f00140a00201000261300
-160b00281400301800160b00281400201000201000160b002613002010002814000e0700
-261300140a00201000281400160b00281400140a00281400160b00180c00140a00281400
-180c00180c00160b00060300160b000c06000e0700160b00180c00140a00140a00160b00
-140a00160b002814000e0700201000140a002010000e07002e1700180c00180c00160b00
-160b00020100261300261300160b00140a000e07002613001e0f00160b00180c001e0f00
-0e0700140a00160b001e0f00160b001e0f00160b000603001e0f002814001e0f00281400
-0e0700180c00160b00160b00261300140a00180c00160b000c06001e0f001e0f00160b00
-1e0f00160b002010002814000e0700201000140a002e17001e0f000e0700160b001e0f00
-0e07001e0f000e0700180c00140a00201000160b00140a00201000140a00180c00180c00
-180c00160b000e0700160b00180c00201000180c00201000281400261300321900261300
-ffa64c1e0f003018002010003a1d003a1d00422100542a004020004a25006432005a2d00
-7e3f00783c009048009e4f00aa5500b25900aa55009e4f00b65b00ac5600a25100984c00
-6e37007038006432004c26003a1d004221003a1d00281400301800381c00160b00020100
-ff9d3a0e07000e0700140a000e07000e0700140a00201000160b000e0700281400160b00
-1e0f000e0700160b000e0700160b00160b002e17000c06000603001e0f00180c00261300
-1e0f00020100160b00281400180c00180c00160b000e0700160b001e0f00201000160b00
-0e0700180c002814000e0700261300140a00160b001e0f00201000140a00201000140a00
-0e0700160b00160b00201000160b000e0700180c00060300
-180c00180c00160b000e0700140a001e0f002010000402002010000e07000e0700160b00
-0e07001e0f00261300140a00180c000e07000e0700160b00201000180c00140a00140a00
-180c000e07000603000c0600160b00160b00160b00201000180c001e0f00201000160b00
-140a00201000261300160b00160b000e0700201000160b00201000180c00140a00160b00
-261300201000201000201000140a00060300160b002e17002e1700160b00201000261300
-381c00160b00160b00301800201000281400261300321900180c00201000160b00160b00
-160b001e0f00160b00180c000c06001e0f00201000180c00180c00160b00201000060300
-180c00180c00060300201000180c000e0700201000160b00281400060300160b00201000
-0c0600201000060300201000140a00040200160b00140a00180c00160b00160b00160b00
-1e0f00160b002010002010002814002010000402000e07000e07002814002010000e0700
-0c0600160b00160b00160b000e07000e0700201000180c002e1700201000140a00281400
-060300281400040200160b00060300140a00160b00160b000402000603000e0700201000
-160b00201000160b001e0f00160b00261300140a00180c00201000180c00261300160b00
-060300180c000e0700140a00201000321900281400180c000603000e0700060300201000
-160b00201000261300160b00180c002e1700160b00160b00020100201000140a000e0700
-1e0f00180c00261300160b00060300160b00201000180c00281400160b00180c00160b00
-0e07000c0600160b003a1d000c0600201000140a00160b00301800180c000c0600281400
-261300201000201000281400160b00201000140a00261300201000301800281400261300
-2613000c06001e0f00261300201000180c001e0f002010003a1d00261300201000201000
-2e1700160b00160b002010002010002814002814003018002e17003a1d004a2500402000
-3a1d003a1d005e2f004a25003a1d00381c004a25005c2e00402000542a00542a00542a00
-542a006432005c2e005229005a2d004c2600402000422100442200422100321900321900
-2e1700261300261300261300261300160b001e0f00321900ff9c380e07000e0700160b00
-201000281400180c00301800140a00180c00140a00261300180c002814002814000e0700
-0c06002e1700160b00281400140a00180c00160b00261300201000140a00201000281400
-201000201000201000180c002814003018000e0700140a00261300160b00281400160b00
-140a00160b002613001e0f001e0f000603001e0f000e0700020100201000140a000e0700
-0e0700281400160b000e0700160b002814003018000c0600180c002613000e0700060300
-160b00160b00180c00160b001e0f00160b000c06002010000e0700281400160b00160b00
-201000180c000201000c0600180c002010000e07001e0f00160b00180c00160b00160b00
-201000180c000e07001e0f00180c00281400160b002010002e1700020100060300180c00
-201000180c00180c002814000e0700201000140a000e07001e0f002010002814000e0700
-1e0f00201000140a00160b002010000e0700160b00180c002010001e0f00060300180c00
-0c0600180c001e0f00140a001e0f002010000e0700261300180c00140a00140a001e0f00
-160b00180c00281400160b000e0700201000180c00201000281400140a00180c00201000
-ffab563a1d003018003a1d003a1d004020004221004a2500522900542a006c3600763b00
-7e3f00924900904800b65b00b25900d26900e27100e87400ec7600e07000c46200b25900
-ac56009c4e00763b006633004a25005e2f00442200321900281400381c000e07002e1700
-201000ffa244261300160b001e0f000e07000c06000c0600060300060300020100160b00
-140a000603000e0700140a000e0700140a000e07000e07000c06002010001e0f00201000
-0201002613000e07001e0f002814000e0700140a000e07002010001e0f00160b00060300
-180c000c06002010002010000e07002814002010000e0700160b00140a000c0600281400
-140a00160b00160b00160b00160b00140a001e0f00180c00
-0e07001e0f00301800201000180c00180c00160b002010000e07002010001e0f001e0f00
-160b000e0700160b000c0600160b000e0700060300160b00201000281400160b00281400
-2613002e17001e0f002814002e1700180c002814002e1700160b00301800060300201000
-140a00160b001e0f00261300160b00160b00160b00201000261300160b00160b00160b00
-0e0700201000180c00261300160b00201000140a00160b00160b001e0f001e0f00160b00
-0e0700180c00301800140a000c0600160b00140a000c06001e0f002010000e07001e0f00
-160b002010000e0700160b002010000e0700180c00060300160b002010000e07000e0700
-1e0f00160b000e07001e0f00160b001e0f001e0f000603001e0f00180c00160b00261300
-0e07002814001e0f000c0600140a000e07000c06002010000e07000e07000c0600201000
-301800140a00160b001e0f00281400201000180c000c0600180c00160b00160b00160b00
-1e0f000e07000e07001e0f00180c00261300281400160b00201000180c00201000261300
-0e0700140a001e0f00160b00160b001e0f00160b00281400160b000c0600140a00301800
-0402000e0700160b00180c00160b000e07001e0f00160b00160b002e1700180c00160b00
-160b00201000180c00140a00180c00160b000e0700140a00140a001e0f001e0f00281400
-0c0600201000201000180c00160b00321900160b000e07000e0700160b00160b00180c00
-2613000e07002613002814000e0700180c00140a00261300281400281400160b00140a00
-140a00160b00140a00160b00160b00180c00201000201000281400160b000c0600261300
-2010002814001e0f002010002613002814001e0f00201000140a00160b001e0f001e0f00
-1e0f00201000281400281400201000281400201000281400201000180c00301800281400
-140a00ffa64c2e17003018000e0700160b002010002613003018000e07003a1d00301800
-281400381c003a1d003a1d00301800281400422100522900422100402000442200542a00
-542a00542a00542a004a25004221004a25003018003a1d002010003018003a1d001e0f00
-301800160b002814000e07000e07002e1700160b00201000160b000c06001e0f00160b00
-201000060300160b00140a00140a00281400180c000e07002010003018002e1700281400
-201000201000201000180c00201000180c00201000180c00261300160b00201000160b00
-2010000e07002814002e1700160b00160b00261300160b00140a00160b00201000281400
-0603000e07000c0600160b00281400160b00180c001e0f002814000e0700160b00261300
-0e0700281400201000160b002814000603000c06000e0700201000201000040200020100
-2814000e0700180c002010002010002010000402000e07000c0600160b00180c00180c00
-160b00160b00180c00160b002e17001e0f00261300160b00160b00160b002010002e1700
-2613001e0f00140a000e07002613000e07001e0f002010000e07002e1700160b00301800
-201000160b00201000140a00160b002010000603001e0f00160b00160b00261300201000
-160b00160b00160b000603001e0f00201000301800180c003018002814002010000c0600
-1e0f00160b00140a001e0f00180c00160b00180c00180c003018000e07000c0600160b00
-160b00040200180c00281400160b002e1700201000180c00180c002814001e0f00201000
-ffaf5e2814002e17002010002613003a1d003a1d00402000542a005c2e006c3600804000
-8a45009e4f00bc5e00c46200e87400ff8102ff8b16ff8810ff9932ff9122ff8f1ef27900
-c66300b259009e4f008040005e2f005e2f003219003219003018003a1d00180c00180c00
-261300180c00ff9e3c1e0f00060300060300140a00160b00020100060300180c000e0700
-0e07000e0700140a00140a000e0700180c00160b00140a000e0700261300180c00180c00
-201000140a00321900261300261300281400140a00160b002010002e17000e0700180c00
-2010000e0700381c00060300140a00180c003018002010001e0f00140a001e0f00180c00
-140a00180c00160b000c0600160b00201000160b00201000
-0e0700281400140a00160b00160b00160b00180c00180c00140a00160b000e0700040200
-1e0f00140a000c0600201000060300180c00261300060300060300160b00201000160b00
-160b00261300180c00261300160b00060300201000160b000e07002814001e0f00201000
-160b000e07001e0f000e07002010002010000e07000c06000e0700160b00201000160b00
-160b002814000e0700281400201000261300201000281400180c001e0f000c06000e0700
-1e0f00160b00160b00160b00160b000e0700180c00180c001e0f00160b00201000060300
-140a001e0f001e0f001e0f001e0f000e07000e07000c0600160b000c0600140a00261300
-180c001e0f00160b00180c00180c002010000e07001e0f002010000e0700180c00160b00
-160b001e0f002010001e0f00201000261300201000160b00180c00140a002e17000e0700
-321900180c00160b002010000e0700160b00160b000c06001e0f000c06000603000e0700
-180c00281400140a00140a00180c002010000e07001e0f00160b00160b00160b00160b00
-2814000c0600180c000e07000e0700201000180c00140a001e0f001e0f00160b00261300
-180c00140a00281400140a00160b002010000603000c0600060300160b00201000160b00
-201000140a00140a000e07000e0700180c00160b000e0700160b001e0f002010000e0700
-2010001e0f00160b00140a00281400160b00160b00060300201000140a00281400160b00
-0c0600261300160b00180c00160b00281400180c00160b00160b002e17000e07000c0600
-160b00180c00201000180c00261300160b00180c001e0f00281400201000040200160b00
-140a00261300281400160b001e0f002010000e0700140a00201000201000180c00281400
-1e0f00160b002613002010002010002010001e0f00180c001e0f00201000201000160b00
-201000301800ff9e3c140a00160b002613002e17002e1700160b002e17002e1700301800
-3018003018002e17003219002e17003a1d003a1d004221003018003a1d00281400422100
-381c004a25004a25003a1d003a1d004020002e17003018003018001e0f00301800160b00
-2814002814001e0f00180c000e07002010000c0600180c001e0f00201000201000160b00
-060300160b00160b001e0f001e0f00261300140a00301800160b00201000261300140a00
-0e0700281400201000281400180c00301800201000180c00160b00281400201000160b00
-381c00160b002e17003018003018000e07001e0f00160b00160b000e0700160b00160b00
-201000140a001e0f000e07002010001e0f00160b00160b000e0700140a00261300201000
-2e17000e0700140a00160b000c0600281400160b00201000180c00160b000603000e0700
-160b000e0700160b00060300160b00160b00060300180c002814000c06000e0700060300
-0e07002814000e07000c06000e0700180c00160b00140a00261300180c00201000060300
-2613001e0f000e0700281400140a00201000140a00160b000201002814001e0f00160b00
-201000180c00160b00180c001e0f00160b001e0f000e0700281400160b00160b00160b00
-160b000e0700060300160b000e07001e0f002e1700261300261300140a00180c001e0f00
-020100160b002010000603000e07002613002010002010000e0700160b00301800201000
-160b00160b001e0f00180c002010002613000603002010000c06001e0f00281400180c00
-ffa0401e0f002814001e0f004020003018004a2500301800522900763b006e3700804000
-ac5600b45a00c66300ff850aff8b16ffb76effb66cffc890ffca94ffbc78ffa952ffa040
-f47a00ca65009e4f008a45007e3f006633005c2e003a1d00422100301800381c000e0700
-201000301800ffa142060300060300201000140a001e0f000c0600160b00060300140a00
-0e07000e07002010002613002814000e07001e0f00160b001e0f00160b002e1700160b00
-2e17000e0700160b001e0f002010002010002814000603002814000c06002e1700281400
-201000301800140a00180c00140a002e17002010001e0f002613002e17002010000e0700
-201000180c000e07002613001e0f00160b00160b00060300
-0e0700140a00140a00201000160b001e0f00160b000e0700140a00160b00160b00160b00
-160b00060300140a00180c001e0f000e0700261300140a002010002010001e0f00060300
-281400261300160b00140a00201000160b000e0700160b000e07001e0f000e07001e0f00
-0c0600160b001e0f001e0f00160b00160b00160b00160b000402000e07002010000e0700
-160b000603000e0700201000160b001e0f003018002e17001e0f00281400140a00201000
-0e07000603000e0700160b00160b00201000180c00140a000e0700160b00201000261300
-0e07001e0f002814000e0700060300140a002010001e0f00281400160b000603000e0700
-160b000c0600140a00160b000e0700180c002613000e0700160b00201000201000201000
-160b00160b00020100281400261300180c00140a001e0f00201000180c00160b00160b00
-160b003018001e0f002613002010002010000e07002010000e0700180c00201000140a00
-160b00160b00160b00140a00261300160b00140a00261300160b00180c00180c00160b00
-060300160b002010000e0700160b001e0f000603000e07001e0f00140a00140a00180c00
-1e0f000603001e0f00160b000e07001e0f00160b001e0f00201000160b000c06000c0600
-1e0f001e0f000e0700160b00201000180c00201000160b00160b00160b00160b00281400
-160b00180c001e0f00180c00281400281400180c00140a000c0600160b00201000281400
-0e0700140a00180c00201000160b003018000402002613000e0700281400261300201000
-2e17000c0600160b001e0f001e0f00281400180c00201000160b00180c00160b001e0f00
-160b00160b000e0700201000160b003018000c06002814002814001e0f00201000201000
-381c003018002010002010000e0700321900160b002e17001e0f00281400201000180c00
-160b00160b000e0700ff99320c06002010002613002814002010001e0f00160b00261300
-2010003a1d003a1d00180c002e1700281400321900381c003a1d00381c00321900321900
-2e17003219003a1d00402000321900321900261300180c003a1d001e0f00301800160b00
-0e07002010002814000e0700160b00201000281400160b000603000603000e0700180c00
-0e07000402000e0700160b00160b00160b000603000e07000c06002010002613000e0700
-160b00160b00301800180c000e07000e07000c0600140a00321900281400261300160b00
-402000180c00180c00160b00301800301800180c00140a00180c00160b00201000261300
-180c002010000e07000c06000e0700281400201000160b00160b000e0700160b00160b00
-201000180c00160b00160b00140a00301800160b00201000180c000e0700180c00281400
-160b000e07001e0f00140a00160b00261300281400140a00160b002010001e0f000c0600
-0603000e07000c0600140a00060300180c00160b002613000e0700140a00160b001e0f00
-160b00160b00040200201000201000281400180c00140a00201000160b001e0f00261300
-160b003018000e0700160b00140a00201000180c00160b000e0700140a00180c001e0f00
-160b00140a00180c000e07000c0600261300281400261300301800180c00201000160b00
-0603001e0f00261300160b000c06001e0f00160b001e0f00180c000c06000e0700060300
-160b00381c00201000140a00180c00301800160b00140a001e0f002010000e0700201000
-ffa0401e0f002814002814002613003a1d00381c00542a004c2600643200783c00924900
-b25900c46200f47a00ff9020ffad5affc182ffefdefffcf8fffcf8fffcf8ffeddaffd1a2
-ff9932ff850ac864008a4500804000663300542a003a1d003018003219002e1700281400
-201000201000ffa64c2613000e0700281400160b000e07000e0700180c00160b001e0f00
-2010000603001e0f00180c00180c00040200020100180c00160b000e07001e0f000e0700
-281400140a00160b001e0f000e07002e1700180c00180c00180c00201000201000261300
-2613000603000e0700201000180c002010001e0f00281400140a002010001e0f00201000
-261300261300140a000e0700160b001e0f00160b00160b00
-140a00160b00180c002010001e0f00201000201000201000160b00201000160b00060300
-0201001e0f00160b00180c001e0f00160b00160b00160b00160b000e0700160b00020100
-0e0700201000180c000e0700160b00060300180c001e0f00160b00060300261300281400
-201000180c002010000e0700281400180c002010002010000402001e0f000c0600160b00
-140a001e0f00160b00281400180c000e0700140a000e0700140a002010000603001e0f00
-201000180c00261300140a002613001e0f00140a00281400060300160b00281400201000
-0603000e0700160b001e0f001e0f00160b00160b00140a000e0700140a001e0f00020100
-160b00180c00160b00140a00180c00201000160b001e0f00180c002010002010002e1700
-0e0700201000261300180c001e0f000e0700160b00020100140a00180c00160b00201000
-1e0f000e0700180c00201000160b001e0f002010002613002010000e07002814000e0700
-2010000c0600201000160b00160b00140a000c06000c0600281400281400160b00180c00
-140a00160b000e07002814001e0f00160b00180c00060300201000160b001e0f00201000
-0c06001e0f000402000e0700180c002010002010000e07001e0f00201000060300261300
-160b000e0700281400160b00180c00201000140a000e07000e0700180c00160b00201000
-0c06001e0f00261300160b000e07002010002613001e0f00180c00180c00140a000e0700
-2010002e17000201001e0f00160b002010000e07001e0f00140a00180c00201000160b00
-180c000603002010001e0f00301800201000201000201000160b001e0f00180c00281400
-160b00261300321900201000381c002010001e0f00281400281400060300160b00140a00
-160b00180c00160b001e0f00201000301800281400201000201000201000201000301800
-321900160b00201000140a002e17001e0f00261300180c00140a00201000160b00201000
-180c002010003018002814002e17002010002613002010002814002814002e1700301800
-2814002010002010002814002010002814000e07000c0600160b00201000201000160b00
-140a00281400160b00ffa244180c000e07000201000e0700160b000e07000603001e0f00
-0e07000e0700060300301800160b00160b001e0f000e0700160b00261300201000201000
-0e07003018002e1700301800180c001e0f00321900180c00201000160b000e0700201000
-201000140a000e07003018001e0f00261300140a00140a00180c000e0700281400261300
-1e0f002010001e0f00201000160b00140a004221002010000402001e0f00180c000e0700
-060300180c001e0f00160b00402000140a00140a00180c00160b00201000140a000e0700
-1e0f001e0f00201000160b000c0600180c00160b002010000e0700201000180c00160b00
-160b000e0700160b00140a00160b000e07002010000e0700281400321900060300201000
-160b00140a000e07001e0f000e07001e0f00180c00160b00201000201000060300160b00
-201000281400160b00160b00160b00140a00160b001e0f00180c000e0700180c001e0f00
-160b001e0f002613002010002814002010001e0f001e0f00201000201000301800160b00
-160b000603002814001e0f00281400060300160b000e07000c06001e0f00180c000e0700
-180c001e0f00060300201000140a00281400160b000e0700201000201000301800281400
-ffa1422e17002e17004422002814003219004221004a25006e37006e37008643009a4d00
-ac5600ce6700ff8306ffa54affbf7efffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-ffcd9aff9932e27100c864008a45007038005c2e004c2600422100281400301800321900
-301800201000281400ff9e3c140a00020100160b00160b00261300160b00060300180c00
-0c0600060300060300140a00140a00160b000e0700180c00140a002010002814001e0f00
-160b002613002613001e0f000e07001e0f00201000180c00201000201000160b00281400
-1e0f00261300160b000e0700160b00160b00201000160b00261300160b00201000160b00
-1e0f00160b00201000140a00160b002010000e0700180c00
-180c00281400201000140a00140a000c06001e0f001e0f00160b00180c00281400140a00
-1e0f001e0f00160b00180c002010001e0f00281400201000301800160b00140a00281400
-140a002613001e0f00201000201000201000180c00140a00160b00201000160b00180c00
-2e1700140a00160b00160b00261300140a001e0f00180c00180c00160b00201000201000
-201000140a00160b00160b000603000603001e0f00160b00281400180c00160b00180c00
-281400140a00201000160b00281400160b002613002613000603003018000201000e0700
-180c001e0f00160b00301800301800201000201000060300140a00281400201000201000
-1e0f00201000160b00140a00261300160b001e0f00180c002814000e0700160b00160b00
-2010001e0f002814000603000e0700160b00140a003018000c0600180c000e0700180c00
-140a000c06000603002613000c0600140a001e0f00160b000e0700180c001e0f00160b00
-0603002010000c0600201000140a00160b000c06002010002613000e0700160b001e0f00
-2010002010000e0700160b00201000140a000e0700261300180c003018001e0f00180c00
-040200160b002814001e0f00201000040200140a00060300060300201000140a00201000
-140a002e1700140a00180c00160b00160b00060300180c003018000e0700281400201000
-160b00060300201000281400201000160b00160b00180c00160b00261300140a002e1700
-1e0f000e0700201000281400160b002e1700160b00281400180c002e17001e0f000e0700
-160b00201000261300160b00160b000e0700201000201000040200301800180c00201000
-0c0600160b00180c002010002613002814002010000e0700261300020100281400301800
-0e0700160b00060300160b00201000180c00281400201000261300261300180c00180c00
-2010000e07003018002613001e0f00201000201000160b002613001e0f00180c001e0f00
-201000140a003018001e0f001e0f003a1d002010002e17002613002010002e1700281400
-2010002613002010002e1700201000160b00020100180c00160b000c0600201000160b00
-060300ff952affa54a1e0f000603000e07002010000e07000c0600140a000e07000e0700
-2010000603000e0700140a000e0700201000140a002010002010002010000e07000e0700
-2814002010000e0700301800261300301800201000281400201000201000180c00160b00
-2010000e0700201000201000180c00281400160b002613000c0600261300180c00261300
-1e0f00261300201000281400160b001e0f001e0f00160b001e0f00201000201000281400
-0e0700160b000603001e0f001e0f00180c001e0f001e0f00160b00140a002010000c0600
-0c06000c0600261300180c00140a00160b00301800140a00160b002010001e0f00160b00
-160b000603000e0700160b000c0600160b00160b00060300201000140a002010001e0f00
-0201002010000e0700160b00160b00281400180c00180c00160b000e07001e0f000c0600
-160b00261300281400281400160b000c0600140a00160b00180c00180c00160b000c0600
-160b001e0f000603001e0f00180c00160b001e0f002814002e17001e0f00140a003a1d00
-1e0f00040200201000160b002814002613002814000c0600140a00261300201000281400
-0402001e0f000603000c0600201000160b00261300301800180c002814000e07002e1700
-ffa2442010003018002613003a1d003a1d00422100542a00542a006e3700783c00a25100
-c46200de6f00ff8f1effc182fffaf4fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-ffebd6ffb468ff8102c86400b45a007e3f005e2f004221004020004a2500321900301800
-3018002e1700321900ffa0400603000e0700160b000603002814000603000e0700020100
-160b00160b00160b000c06000603000c0600180c000e0700160b00140a00160b00160b00
-3018001e0f001e0f002814002814001e0f001e0f00160b00261300160b00140a00140a00
-0e0700201000160b001e0f00160b00281400160b00180c00160b00201000160b00201000
-0201001e0f00301800160b000e07000e0700160b00261300
-0e07002613000e0700201000180c00160b00281400160b00060300180c00201000201000
-2814000c06001e0f00140a002010001e0f00060300201000180c00160b003a1d00160b00
-0c06001e0f00180c00281400160b00201000160b00201000160b00140a00160b001e0f00
-2814000e07000e0700160b00180c00140a002613000c0600160b00201000201000261300
-180c00281400160b00140a00180c00180c002010001e0f000e07002e1700201000201000
-160b00160b000c0600160b00140a00201000160b00160b00160b00281400201000160b00
-2e1700060300060300160b001e0f00201000180c00160b002010000e0700160b00160b00
-180c001e0f00140a000e0700180c00060300140a00201000160b001e0f00180c000e0700
-0e0700201000180c000c0600160b00160b00160b000e0700201000140a00160b00180c00
-140a002e17002814001e0f000e0700160b00160b001e0f002e1700060300281400281400
-0e07002010001e0f00180c000e0700160b002010002814002010000e0700140a00180c00
-2814000e0700140a000c0600160b002613000c0600180c00180c00140a00140a00140a00
-1e0f00160b00140a002613001e0f000e0700060300160b00180c000e07000603001e0f00
-0402000e0700160b000e0700201000201000160b000e0700140a002010002814001e0f00
-1e0f002010002010002010001e0f00180c001e0f00160b00140a00160b00281400261300
-180c00201000201000160b00201000281400140a003018000e0700180c002010001e0f00
-0e0700180c00201000180c000c0600160b00160b00160b00201000140a001e0f000e0700
-140a001e0f00180c001e0f001e0f00140a00281400281400201000140a001e0f00160b00
-160b00301800381c002010002010001e0f00201000281400160b00201000201000180c00
-1e0f000e07000603000603000201002814002010000e0700ffa74e301800180c00281400
-0e07001e0f000e07000603002613000e0700160b002010003018002814000e0700281400
-140a00180c00201000160b000603001e0f000e0700020100020100180c00281400060300
-ff9c381e0f00180c00160b000e07001e0f00180c00160b000603000c0600201000180c00
-0e07000603000201000e07000e07001e0f000c0600140a00140a001e0f00140a001e0f00
-0e07001e0f002613001e0f000e0700180c00201000160b003a1d002814002814001e0f00
-160b00160b000e0700261300261300201000201000201000281400160b00201000201000
-160b002613002010002010002e1700301800180c001e0f00180c00160b00140a00160b00
-0e0700160b002010000e0700160b00160b00160b000603000e07002010000e0700160b00
-0c0600180c000e07000e0700281400201000201000160b001e0f002010002e1700060300
-1e0f00140a000e0700301800281400140a000e0700140a000c06002613001e0f00180c00
-1e0f00180c000c06002613002010002010000c0600180c00160b001e0f00140a00140a00
-160b002e17001e0f000e07002613001e0f000e0700160b00281400180c00180c000c0600
-1e0f000c0600160b00201000140a00201000160b00180c002e1700201000261300201000
-2e17000e07000c0600180c001e0f00160b00201000160b00201000180c00201000160b00
-0e07000e07002010000c06002e17001e0f00160b001e0f00281400281400301800281400
-ff9d3a2613002814002010003a1d00201000422100422100542a005a2d005e2f00984c00
-c46200e27100ff8306ffc58afffaf4fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8ffc890ff9020d86c00c46200984c007e3f006c3600442200542a003018002e1700
-2010002814001e0f00201000ff9b360c0600060300160b000e07003219000c0600140a00
-0e0700140a00160b00160b00140a00201000160b00160b000e07002814000e0700180c00
-180c00160b002e1700160b00160b00160b000e0700160b00261300180c00160b00ff9c38
-ffa448ffa244ff9830ffa244ffa040ffa142ff9d3aff9932ff9428140a00060300180c00
-180c00020100261300140a00160b00160b002613000e0700
-0603000e0700140a002010002814000e0700201000180c00160b00160b00180c00160b00
-261300201000160b002814000e07000e0700180c00281400160b00261300201000160b00
-160b000e07000c0600201000261300160b00160b001e0f00160b00301800160b00160b00
-160b002010000c06002010002e1700281400201000180c000c06002010000e0700160b00
-201000160b002010000e0700160b001e0f00160b00261300160b002010000603000c0600
-180c00180c00140a00201000160b00160b00160b00180c002814000e07002010000e0700
-281400160b000e07000c06000e07002010002814002010001e0f00201000160b001e0f00
-160b000e0700160b001e0f00140a002010000e0700060300040200180c00140a00140a00
-160b000e07000c06000e07002814001e0f002613001e0f00160b001e0f00281400201000
-160b00160b00040200160b002814002613002010002814000e0700180c002010000e0700
-140a00160b00180c00160b00180c00160b00160b00160b002814002010000c06001e0f00
-160b00201000160b00180c001e0f000e07002814002613000e0700140a00201000160b00
-160b00060300160b00201000140a00160b00180c00261300281400180c00180c001e0f00
-180c00140a00060300160b00201000261300160b00140a000e0700281400180c00281400
-180c00180c000603000c06001e0f000e07002613000c0600160b00180c00160b00201000
-0e07000603000c0600140a00180c000e0700160b00201000201000180c002010001e0f00
-0c0600160b00060300180c001e0f00281400160b00180c00180c001e0f00201000201000
-1e0f002010002814001e0f00281400180c001e0f002e17002010002010002814001e0f00
-2814002010000603002613002814002613000e0700201000160b00281400201000261300
-160b00180c002613000e0700140a00180c000e07000e07000c0600ff9932ffa244160b00
-160b00020100201000140a000c0600160b000e0700261300160b001e0f001e0f00201000
-180c00261300261300180c00180c000e07000e07002010002010000e07000c0600160b00
-140a00160b000e07000603000603000603000201000201000c0600060300160b00040200
-1e0f00140a00040200140a000603000e07000e0700160b00201000160b00201000160b00
-2010002814000603001e0f000e0700301800180c00060300201000160b00160b002e1700
-281400160b002814002613002613001e0f002814002010000e0700201000180c002e1700
-180c000e0700160b002010002e1700140a00140a000e0700060300160b000e07000e0700
-180c002010002613002010000e0700160b000603000e07001e0f00160b000e07001e0f00
-060300160b00180c000c06000c0600180c00160b00160b000e0700180c00160b00040200
-1e0f001e0f00201000160b000e0700261300140a000e0700201000060300060300160b00
-180c00180c00160b00201000160b002e1700060300160b00180c002613000e0700160b00
-2010000e0700140a00301800160b002010002e1700140a00180c00160b00060300060300
-160b001e0f00160b001e0f00301800201000201000160b00180c00160b00160b00261300
-160b00201000180c00180c00160b000c0600180c002814000c0600281400201000201000
-180c00160b000e07000e07001e0f00201000160b002010000e0700140a00281400281400
-ff9b362814002e17003018003219002010004221004221004a25005a2d007e3f00904800
-aa5500e27100fe7f00ffbc78fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8ffce9cff952af27900bc5e009048008a45005c2e004221004221004a2500301800
-180c00261300321900160b00ff9c382010002e17000e07002814002010000402000c0600
-060300140a00060300160b00180c00020100180c000201000c0600201000160b00160b00
-180c00180c000e0700201000160b00160b00301800201000ffaa54ff9932ff9c38180c00
-160b00160b00281400201000201000160b00160b001e0f00201000ffa54aff9c38ff9c38
-160b00180c002010000e07004020000e0700160b00281400
-301800140a001e0f00140a00160b00140a00140a00160b00160b00160b00261300281400
-2010002e17001e0f00201000140a00140a00140a001e0f00301800180c00160b00261300
-0c06001e0f000e07000c0600201000160b00180c00281400180c002814001e0f00180c00
-140a00160b00160b00201000140a00201000160b001e0f00160b00180c00201000281400
-201000180c00261300140a00281400160b002010001e0f000e0700261300201000060300
-0c06001e0f00160b00160b00180c000e0700060300140a001e0f00160b000e0700301800
-140a00160b002e17000603000603000e0700180c00281400160b00160b00180c00201000
-140a000e07002010002613001e0f00140a00180c001e0f00140a00140a00281400160b00
-261300160b001e0f000e07002613000e0700281400281400180c001e0f00140a00201000
-0e07001e0f001e0f001e0f002814000c0600281400180c00201000140a00160b00140a00
-0e0700140a00281400201000281400160b00060300261300160b00160b00160b000c0600
-160b00281400160b00201000160b00160b00020100160b00140a001e0f00201000160b00
-281400160b00201000180c00060300020100160b000e0700180c00160b00201000281400
-261300201000201000160b00281400160b00160b002e17002010001e0f00160b00201000
-2814002010000c06003018000e07000e07002010000c06001e0f00180c00140a00160b00
-140a00160b001e0f001e0f00160b00180c000c06000e0700140a00140a00201000160b00
-2010000e0700140a00281400040200160b00180c002010000e0700160b002010001e0f00
-0603000e0700160b000201001e0f00281400180c002010001e0f00160b00201000160b00
-281400281400160b00381c00160b00140a00160b00160b00160b00261300261300201000
-2814000e0700140a00201000301800160b00160b00160b00160b00261300180c00ffa448
-180c000e0700160b00160b000e0700060300140a000e0700140a00301800140a001e0f00
-160b00180c00160b000603001e0f00140a00ffa4480e07000c06000e0700180c000e0700
-0e07000c06000e07000e0700020100060300140a000201000402000e0700020100060300
-060300160b00180c000201000402000c06001e0f001e0f00201000160b00201000201000
-2010000e0700261300040200140a00281400180c001e0f00180c000e0700261300160b00
-2010002010000e0700201000140a00160b00160b00180c000c0600160b00201000180c00
-160b001e0f00201000201000301800140a00201000160b00201000020100281400180c00
-2814000e0700160b00261300160b00160b002e1700201000160b00180c002010000e0700
-201000160b002010002010001e0f000e07001e0f001e0f001e0f00160b000e0700180c00
-0e07001e0f000e07002010000603002010000e0700301800201000201000261300180c00
-060300160b00281400180c00180c00201000040200140a00160b00180c001e0f00261300
-140a00140a002010002613000e0700160b002010000e0700140a00160b00201000201000
-0e0700201000160b00160b00180c00261300201000160b002814000e0700160b000e0700
-160b00160b000e0700140a00160b00140a00160b002814000e0700160b000c0600160b00
-0c06001e0f00180c00040200301800140a00180c00140a00160b002613000c0600201000
-ffa74e2613001e0f003018002e1700422100381c004a2500542a005c2e00643200763b00
-aa5500c66300ff8810ffa74effe2c4fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8ffd3a6ff9c38f67b00b85c00984c00783c006c36005a2d004422004020004c2600
-281400201000281400160b00ffa0401e0f00180c002613002613000e0700060300040200
-040200060300261300140a000e07000e07002814000603000e07001e0f00160b00201000
-0e07000e0700160b00261300160b00160b00ffa64cffa244201000160b00160b00281400
-3018001e0f003a1d00160b002010002613000201001e0f00160b000e07000e0700140a00
-ffa1422814001e0f002010000c06002010001e0f00020100
-140a000e0700180c002814002e17002613000e07000e07002010000c0600160b001e0f00
-261300160b00160b00261300160b00160b00201000281400201000201000160b00140a00
-060300160b001e0f00160b00160b00180c001e0f001e0f00140a002814000e0700180c00
-1e0f00160b00140a00201000160b002010002010003018000c06002010000e0700261300
-2010002814002010000402001e0f00201000160b00201000201000180c00281400160b00
-2010000e0700060300160b00160b00140a002010001e0f002e17000c06000e07000c0600
-0e07000e0700180c001e0f002814000e0700060300140a00281400180c00160b001e0f00
-160b00160b001e0f00160b000c06002010002613000e0700160b00160b000e0700180c00
-160b002010002814001e0f00140a00060300160b00140a00160b00020100140a00160b00
-2010002010000603000e0700180c00201000261300201000160b00201000201000261300
-140a00160b000c0600140a000e07001e0f002010002814000e07000e07000603000e0700
-2010000e07000603001e0f00301800180c000e07002010002010000e0700160b00180c00
-301800160b002814003018000c06000c0600160b00140a00160b00140a00281400140a00
-140a00160b001e0f00261300160b00140a000c0600140a00160b00140a000e0700281400
-180c00180c00201000160b00160b00201000140a000e07002814001e0f00201000180c00
-160b00281400160b00160b00160b00201000020100180c00160b001e0f00160b00201000
-060300160b00140a00201000020100160b00281400140a000201002010001e0f00180c00
-2814002e1700261300160b00201000140a00160b00281400180c00201000160b00301800
-180c00160b000e07000c06002814002814003018003018003018003018001e0f00261300
-180c000603001e0f00060300180c000e0700160b00160b000c06000e0700140a002e1700
-0c0600180c00160b000c0600160b00ff9b36ff9932ff9c381e0f00140a002010000e0700
-1e0f00180c00ff9932ffa040ffa448ff9c38160b00060300180c00140a00140a00020100
-0201001e0f000201000603000e07000201000201000c06000e07000e0700180c00160b00
-0e07000e07000e07001e0f00201000160b00160b00160b00160b00160b00160b00160b00
-2e1700281400201000201000261300180c00201000281400180c001e0f00281400201000
-160b000e07001e0f00180c002e1700201000261300201000261300180c001e0f00180c00
-160b002010001e0f00160b00301800301800201000201000160b00140a000e0700160b00
-160b00160b002e17000e0700261300180c002010000e0700160b000e0700160b000e0700
-140a00160b001e0f002010001e0f001e0f00140a00180c000201001e0f00201000040200
-060300180c002613000e07001e0f001e0f001e0f002010000e0700281400160b00201000
-0e0700160b00140a00261300201000301800160b000e0700201000180c00201000180c00
-2010002010002814002010002613001e0f002613002814000e0700060300160b00201000
-160b00281400180c000e0700140a00201000180c002e1700160b00261300180c000e0700
-261300140a00180c00201000180c002010001e0f00180c000e0700020100160b001e0f00
-3018001e0f00201000180c00180c002010001e0f00160b00180c00180c00201000201000
-160b00ff9e3c2e17004221003018002814002010002814005a2d005229005e2f006e3700
-904800b65b00ea7500ffa74effca94fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8ffbc78ff9326e27100c663009048008643006c36006432004a25003018003a1d00
-281400281400140a001e0f00ff9c380e0700060300060300160b000e07002814001e0f00
-020100060300180c001e0f00160b001e0f00160b000c06000c06000e0700180c00060300
-160b00180c001e0f00201000201000ff9e3c201000160b00201000160b00201000281400
-0e0700160b00180c00180c00201000160b00180c002010003018002613001e0f001e0f00
-261300ffa448ffa74e180c002e1700301800281400180c00
-0c06000c0600140a001e0f00201000160b00160b00201000160b00261300160b000c0600
-1e0f00140a00201000160b000e07000c0600160b000e0700140a000c0600160b00201000
-201000201000180c00160b000e0700261300180c00160b002814000c0600160b000e0700
-2010001e0f00201000301800160b001e0f00160b000e0700381c00140a000e0700180c00
-160b000e0700180c00201000180c00180c00201000160b00140a000e07000e0700160b00
-140a00160b00160b00160b00140a00140a002010000e07000e0700140a000e07001e0f00
-201000140a00160b00160b000603000402000c0600060300160b002010000603000e0700
-201000281400140a00180c00180c000c06002613001e0f00160b00281400321900060300
-1e0f00160b002613000603001e0f000e07000c06002010000e0700180c00201000180c00
-261300261300261300201000261300201000160b00160b00160b00180c00160b00180c00
-160b00160b002613001e0f001e0f00160b00160b000e0700160b00140a001e0f00180c00
-281400160b00160b00160b00180c000e07001e0f001e0f00160b00180c00140a000e0700
-1e0f00160b000c06002814001e0f00281400180c000e0700160b002814000e0700201000
-281400180c00140a002e1700160b000c0600160b001e0f00140a00160b00381c000e0700
-2613000e0700160b00201000160b000e0700140a00261300201000060300201000201000
-201000160b00160b002010001e0f00201000201000160b000e0700160b000e0700140a00
-2010002613002613002814000c06000e0700261300261300261300201000160b00160b00
-0e07002010000e07001e0f00160b00160b000c06001e0f00301800180c00201000261300
-1e0f00281400281400281400160b00140a00201000140a00301800201000261300160b00
-140a00140a000e07000e0700160b00201000060300020100020100180c00281400180c00
-261300060300160b000201000603000e0700020100160b00ff9830ff9428201000060300
-160b000e07000e07000e0700201000020100160b000e0700020100140a000c0600020100
-0201000e07000e0700160b000201000201000201000201000e0700040200180c00160b00
-0c06000c0600180c00160b00160b00140a000c0600140a00201000160b00160b00140a00
-180c00160b00201000160b00180c00160b002e1700281400180c000e0700180c00160b00
-160b00381c001e0f00180c00180c000e0700160b00160b003219000e07001e0f00281400
-0e07002613002613000e0700201000180c000c06000c0600180c00180c00180c00201000
-0e0700160b000c0600040200201000160b001e0f00180c00160b00281400180c00160b00
-1e0f00160b00160b000c06003018000e0700180c00140a002010001e0f00180c00020100
-180c00180c002010000e0700201000180c00180c00180c00060300180c00140a00140a00
-0e0700281400160b00180c002010002010000e07000e0700160b00060300160b00160b00
-180c00281400140a000e0700201000140a00060300201000140a001e0f00140a00301800
-201000140a00160b00140a00160b00180c001e0f001e0f002010000e0700140a00201000
-0e0700180c00160b00160b00160b00180c000c0600160b00160b000e0700180c00140a00
-1e0f003018002010002010001e0f00140a00180c00201000201000180c00201000201000
-160b00ff9e3c140a002613002613002814003219004020004a25003a1d004c26006e3700
-9a4d00aa5500c66300fc7e00ffa74effddbafffcf8fffcf8fffcf8fffcf8fffcf8fffcf8
-ffdebcffb870ff8a14e87400b25900904800763b006432005229005a2d00442200281400
-3a1d00201000281400281400ffa1421e0f00160b00040200180c001e0f00160b001e0f00
-2814000e07000603001e0f00301800180c00060300180c00160b00040200301800261300
-160b001e0f00160b00180c00ffa448201000301800201000160b00201000201000180c00
-160b002010000e07000e0700281400201000160b00140a00160b00261300201000140a00
-060300160b00201000ffa0400c06000c0600160b00160b00
-140a000e0700020100160b00160b00160b001e0f00060300160b00160b002010000c0600
-2010001e0f00180c00201000160b00060300060300160b001e0f00180c00160b00160b00
-160b00180c00160b000e0700160b00261300301800180c000e07002814001e0f00160b00
-281400160b00020100140a000e0700201000160b00201000140a00160b002010000e0700
-160b000c0600180c00160b00160b00160b000e0700180c00160b00140a001e0f00160b00
-261300160b001e0f001e0f002010001e0f00160b00281400160b000c06000e07000e0700
-0c0600180c000e0700180c00160b00180c00180c000c0600160b00140a00160b00180c00
-201000140a000e0700201000140a000e0700160b000603002814000e07000e07000e0700
-140a000c06000e07000c0600160b00140a000e0700160b00201000060300160b00201000
-180c00261300160b001e0f001e0f00160b000c06002010002010002e17000603000e0700
-2010000c0600160b002e17001e0f001e0f00140a002e1700201000180c002010000e0700
-180c00160b00140a00160b000e07002010000e0700180c00060300140a003018000e0700
-281400160b000c06000e07001e0f00140a000c06000e07000603002e1700201000140a00
-0c0600160b002010002e1700180c002e17002010001e0f002e1700160b001e0f00060300
-201000281400160b002814001e0f00301800281400160b00180c00160b001e0f00180c00
-0e0700180c00180c00160b00180c00160b00160b00160b00160b003018001e0f00180c00
-281400140a00180c00201000201000160b001e0f00160b00281400321900160b000e0700
-160b00201000281400160b00281400180c00180c00160b002613002613002e17001e0f00
-1e0f00160b003018001e0f00060300301800201000180c00180c00160b00201000160b00
-1e0f002814002010000c0600160b00160b001e0f00160b001e0f00180c000e07000e0700
-2613000201000e07000e07000c0600180c00060300140a000e0700020100180c00140a00
-0e07000e07000e0700140a000603000c0600160b000201000e07000603000c0600201000
-0402000c06000201000201000e0700040200020100180c000e0700160b000c0600160b00
-020100160b00060300281400160b000603001e0f00160b000e0700140a000c0600261300
-0e07002814001e0f00180c00060300180c00ff9e3cff9c38ffa448ffa54affa244ffa74e
-ffa142ffa74e281400201000201000180c00160b00160b00201000201000201000261300
-0e07001e0f00060300140a00160b000e0700160b002814002814002010000e0700180c00
-2010001e0f00160b003018001e0f000c06002010000e0700160b001e0f000c0600160b00
-0e0700281400180c00160b00261300180c002613000e07001e0f000e0700040200160b00
-180c000e0700160b00140a001e0f00180c004221002613001e0f00201000140a001e0f00
-180c000e0700140a000c0600180c00160b001e0f00160b00140a00201000201000201000
-160b000e0700201000281400160b003018002010001e0f00180c002010000e07000e0700
-301800140a000402002613000e07000e07002010002613001e0f002010000603000e0700
-201000160b000e0700201000201000140a00180c00140a00060300201000180c00160b00
-160b00281400281400180c003018000e0700180c00180c00281400201000160b000e0700
-140a00160b00ffa54a160b002010002010003018003018004221004020004a2500542a00
-763b00924900b25900f27900ff9830ffa54affc386fff4e8fffcf8fffcf8fff1e2ffd5aa
-ffb264ff8f1ede6f00ce67009a4d008643008643005e2f005229004a25004422003a1d00
-321900261300201000201000ff9c382010001e0f001e0f00180c00160b00140a00020100
-1e0f000c06000e07000e07000e0700060300020100180c00160b002010000c06000e0700
-060300201000261300ff9e3c261300281400160b00281400140a00160b00160b00201000
-140a001e0f002613001e0f00160b000e0700201000160b00140a00180c00201000261300
-261300140a002010001e0f00ffa244140a00201000301800
-1e0f00160b00180c001e0f000e07001e0f00140a00160b00160b00321900261300201000
-201000140a002010000e07001e0f00201000140a00180c00160b00140a00160b00201000
-180c001e0f00140a00180c00281400160b001e0f00160b001e0f00160b00060300261300
-180c001e0f000603000e0700201000201000160b00060300201000160b00180c00140a00
-140a00140a002010000e0700160b001e0f00180c000e07000e0700160b00160b00160b00
-0c0600180c000e0700160b001e0f001e0f00140a00140a00060300160b00160b00281400
-0603000c0600180c00160b00140a00180c00180c001e0f002814001e0f00201000281400
-160b00201000281400160b000c06001e0f000e07003018000e0700160b000c0600160b00
-1e0f000e0700201000160b000603000e0700180c00180c000e0700201000160b000e0700
-0e0700201000261300281400201000160b000e0700201000160b00160b00140a00201000
-160b00261300160b00060300160b001e0f001e0f000e0700301800060300201000160b00
-1e0f00040200160b000e07002814002613000e0700160b00160b00180c000e07000e0700
-040200160b001e0f001e0f000e0700180c002010002613002814001e0f00160b000e0700
-160b00160b002814002814002010002814000e07002010001e0f00201000160b00160b00
-201000160b00201000180c00160b00140a00160b001e0f002e1700281400140a00060300
-140a000e0700201000201000180c002010000603000e0700140a00201000160b00201000
-2010000c06000e0700140a00140a00261300160b000e0700301800180c00201000281400
-160b00140a00201000140a00281400160b00201000160b00160b00201000180c001e0f00
-201000201000281400160b00020100201000201000160b00301800140a002613000e0700
-160b00160b002010003a1d00180c00160b000603000603000603000e0700160b00060300
-140a000201000e07000e0700140a000e0700160b00180c000201000e07002010000e0700
-0c06002010000e07000201000603000e07000e0700140a00160b000c06000201000c0600
-0201000c06000c06000603000402000c06000e07000201000603000c0600160b00020100
-0603000c06000c06001e0f00160b000e07000e0700180c00160b000e0700160b000e0700
-2010000201000c0600180c00ffa448ffa952201000261300160b000e0700281400301800
-2814001e0f00ffa64cff9932ff9e3c2613002010001e0f00281400140a00201000201000
-180c000c0600261300160b000e07002613000c0600060300160b001e0f000e0700180c00
-0c06002814002010000c0600140a00180c00160b00060300160b00180c00201000060300
-201000160b00160b002010001e0f000e0700180c00140a00060300160b00261300180c00
-281400201000180c002010001e0f00160b00160b00160b000e07002010002010000e0700
-180c00201000261300180c000e0700160b00160b00160b00160b00261300140a002e1700
-180c00180c00160b00261300060300180c00180c00201000201000140a00160b00180c00
-1e0f00160b00160b002010002010000603000e07000e0700160b002010000c0600160b00
-140a00160b000e07002010002e1700160b00140a00160b002814002814000e0700160b00
-160b00160b00140a00180c000c0600180c000c06003018001e0f000e0700140a00201000
-201000201000ffa2440e0700180c00180c003018003a1d003219003219006633005c2e00
-6c3600783c00984c00b45a00ec7600fe7f00ff9932ffa952ffba74ffb66cffbc78ff9e3c
-ff952af47a00c86400b25900b259008643008040005c2e004a25004a25004a25003a1d00
-3018002e1700281400201000ffa54a0e0700180c00140a00140a00040200020100160b00
-160b00160b002010000e07000603001e0f00180c00160b00281400140a00140a00321900
-1e0f00301800ff952a1e0f002010001e0f00180c003018000603000e07001e0f00281400
-1e0f00140a00281400160b00180c002e17002814000e0700281400160b00261300180c00
-0e07002010000e0700160b00ffa9521e0f00140a00140a00
-180c002010000c0600180c002613001e0f002010000e0700180c002814001e0f00201000
-140a00160b00160b00201000160b003018001e0f00201000160b00160b00160b00180c00
-180c002010000e07001e0f002613002814000c0600180c00160b000e0700201000160b00
-180c00060300301800160b002814003018000e07002814002613002010000e07000e0700
-140a00160b00261300201000281400180c00160b00201000160b00160b00180c00060300
-0201000c0600201000261300160b001e0f000e0700140a001e0f00040200160b00201000
-281400201000160b00261300160b00140a002e1700201000160b000e07002010000e0700
-1e0f000e0700160b000e07000e07000e0700140a00201000281400261300281400201000
-160b00180c000603002e17000e0700140a000e0700160b00060300160b00140a00160b00
-160b00180c00160b00261300160b002613000c06002010000e0700160b00160b001e0f00
-0c06003018001e0f00160b00201000281400140a002e17003018000e0700140a00381c00
-160b002010002e1700160b00160b00020100201000261300261300160b000e07000c0600
-2613000e0700201000201000160b00281400180c00201000160b001e0f00201000201000
-2010000c0600160b00140a00140a001e0f00261300140a00060300160b00160b00301800
-140a00160b000e07001e0f00160b00180c00160b002010001e0f00261300201000160b00
-2010000c0600281400281400180c000e0700261300140a00160b001e0f00180c002e1700
-261300201000060300140a000e07002814000e07002814002010000e07002010000c0600
-160b00180c00160b000e07002613002814003018002613002613002010003a1d00261300
-160b00201000201000160b00160b001e0f001e0f00201000180c00140a00261300160b00
-160b000c0600180c000e07000201000c0600060300201000140a00180c000402001e0f00
-140a00020100281400020100060300160b000e0700160b00140a00ff9932ff9428ffa448
-ff9428ff952affa040160b00201000040200140a00060300020100140a00020100060300
-160b000e0700160b00020100140a000603000402000c06000e07000e07000603000c0600
-0402002010001e0f002010000c0600140a000e07000e0700160b00160b002e17000e0700
-180c000e0700ffa040ff9d3a2814000c0600020100180c000e0700261300160b00201000
-0c06002010000e0700160b00160b00ff9c38ff9c38180c000e07002010000c0600180c00
-060300201000201000160b000e0700160b00180c00201000160b000e0700261300261300
-281400160b00160b000e0700060300160b00160b000201003018000e0700180c00160b00
-2010002010000c0600261300160b000c0600180c00060300160b00140a002010000e0700
-201000160b00281400281400180c00381c00180c00160b00160b00160b001e0f00281400
-1e0f000e0700201000160b000e07002613000e0700140a002613000e07002010002e1700
-140a000c0600261300381c00201000160b00160b00140a00281400180c000e07001e0f00
-261300180c000e0700140a001e0f00060300160b00180c00281400160b00261300281400
-2010002e17000e0700160b001e0f00140a00201000281400180c00201000201000160b00
-160b001e0f000c0600201000180c001e0f000e0700160b000e0700201000180c00160b00
-281400201000281400ffa040160b001e0f003219002814002814003a1d004221004c2600
-6432006c36008643009e4f00a45200d66b00fc7e00f27900ff9326ff8b16ff8c18f67b00
-ff860cd66b00aa55009e4f009048007e3f006432005a2d00522900402000422100261300
-3a1d00160b000e0700201000ff9e3c140a00281400160b00201000060300261300040200
-2814000e0700160b000c0600160b002613000603002010003018001e0f00281400201000
-201000ffa54a140a00160b000603000e07001e0f001e0f000e07001e0f001e0f00140a00
-201000201000180c00201000261300422100180c00160b002e17001e0f00160b00140a00
-160b00180c00180c000c0600261300ff9c381e0f000c0600
-201000160b00160b00201000160b000e0700060300160b00180c00160b00261300180c00
-0e07001e0f00160b00381c000e07002814002010000e0700281400201000160b00180c00
-261300180c00140a00180c002010000e0700160b00281400201000160b00180c00180c00
-201000201000281400180c00160b00180c001e0f00160b000201002010000603001e0f00
-140a00160b00160b00160b00140a002613000e07002010001e0f00160b00160b00301800
-1e0f00261300160b001e0f00281400160b000e07000e0700180c00160b000e07001e0f00
-1e0f000c06000e0700160b000e0700160b00180c00160b00201000180c00180c00160b00
-1e0f00040200160b00160b00281400160b00301800160b00140a00160b002010000e0700
-1e0f00160b002010002814000e0700160b001e0f00140a00201000160b00261300201000
-261300261300261300180c001e0f00020100281400160b00180c00140a00140a000e0700
-160b00281400140a00180c00160b00261300140a00281400201000281400180c00281400
-160b002010002010000e0700201000160b000c06000e07000e07000e0700160b00140a00
-180c00261300281400281400060300160b001e0f00160b000e0700180c00201000160b00
-0c0600160b00140a002010002613000603001e0f00201000261300160b002010001e0f00
-0e07002613001e0f000e0700160b002010000e0700180c001e0f000e0700180c000c0600
-2010000e07002613001e0f000e07002010000e07001e0f00140a00140a002613000e0700
-0e0700140a00160b001e0f00060300201000160b00180c00180c00201000180c00140a00
-180c00201000180c001e0f00160b002010002010001e0f001e0f002010000e0700160b00
-3018000c06001e0f001e0f000c0600160b002814000e07001e0f001e0f000e0700261300
-0e0700160b001e0f002010000603000201000603000c0600180c000e0700060300060300
-0201000603000c0600180c00060300180c00040200ff9d3aff98300e07000e0700060300
-180c000c0600160b00ff9830ff9e3c0e07000603000201000402000e0700020100020100
-020100020100020100020100020100060300040200020100160b000e07000e07000e0700
-160b00140a00180c00201000140a00160b00160b00201000180c000e0700261300201000
-0e0700ff99321e0f000c06001e0f001e0f00261300160b000e0700281400261300160b00
-2010000e0700281400261300180c000e0700201000ffaa542613000e0700160b00201000
-160b00281400201000140a001e0f00180c00140a000e0700180c00160b002613000c0600
-2613002010002010001e0f00140a001e0f00281400180c00281400140a00060300160b00
-0e07000603002010000e0700160b00160b000c0600160b00140a00180c00160b00160b00
-201000180c00160b00381c002e17001e0f000c06001e0f00160b00180c00201000180c00
-2e17002814000603002010002010001e0f00160b00160b00180c000e07002e17000c0600
-381c00180c00180c002e17001e0f00201000140a00140a00160b00180c000c06002e1700
-140a00402000261300160b00160b00160b00160b00160b001e0f00201000180c00140a00
-060300160b00140a001e0f00180c002010002613000603000e0700160b00060300160b00
-180c00140a00180c001e0f00160b000603000603000c0600160b00140a000e0700201000
-0e0700160b00201000ff9e3c3a1d00160b002010002814002613003018003a1d004a2500
-542a00663300763b008643008a4500a45200c46200c86400e27100d66b00d86c00c86400
-c86400bc5e00aa5500904800783c006633006432005e2f005229004a2500381c00422100
-3018002010000c0600201000ff9e3c160b001e0f000e0700180c00160b00180c000c0600
-140a00160b00140a00160b002010000e0700160b00060300201000261300160b001e0f00
-0e0700ff9c38160b002e17000e07000e0700201000160b000c0600281400180c00321900
-2010002010000e07003a1d003a1d002010000e0700281400381c002e1700201000180c00
-160b000e07001e0f000e0700160b00ffa040160b00201000
-180c001e0f002e17000e0700160b002010000c0600160b00140a00160b000e0700201000
-1e0f00180c00301800180c002814000e0700160b00060300201000301800301800160b00
-140a00261300140a00201000201000160b00201000201000160b000e07000c06000c0600
-160b002814002814003018000e07002010004020002010002613002010000e0700180c00
-160b001e0f00180c000e0700140a00160b00180c002010002814000e0700160b000e0700
-0603000e07002010002814002010002e1700281400160b00140a000e0700180c00261300
-0603001e0f00281400201000160b00160b00160b002010002010000402000e07000e0700
-0e07002010000e07001e0f00140a000c06000603001e0f00060300040200201000201000
-0e0700201000160b000e07001e0f00040200180c001e0f00160b001e0f00160b00201000
-201000180c002814002814001e0f00261300060300201000160b00160b002010000e0700
-160b00160b00261300140a00160b000e07002010000e0700160b001e0f00160b000e0700
-2010002010000c06002010000e0700180c00180c000603000e0700201000140a000e0700
-180c00040200160b000c06002010000603001e0f002010001e0f001e0f000e0700281400
-281400160b00180c00160b00180c002613000e0700160b001e0f000e0700201000160b00
-180c002010000e07001e0f001e0f00201000261300160b002814002613000c06001e0f00
-301800201000160b00261300140a000e07001e0f00060300201000180c00040200281400
-281400180c00160b002010000e0700201000281400160b002e1700201000201000201000
-160b002814001e0f00201000281400160b001e0f001e0f00201000261300261300140a00
-2e1700281400301800301800160b00140a002010002010002010002e1700140a00060300
-281400060300140a000e07000e0700160b000c0600060300160b000603000e0700060300
-0201002010000603000e0700020100140a00ffa74e140a00160b00180c00201000160b00
-2010001e0f001e0f001e0f00160b00ffa142180c000e0700060300020100040200020100
-0e07000603000e07000201000402000201000e07000e07000201001e0f00060300020100
-0e07000e07000c0600160b00160b000603000603002814000603002814001e0f00180c00
-ffa2442e1700201000160b00201000180c001e0f00160b00281400160b00160b002e1700
-281400160b00180c00160b000e0700281400160b00201000ff9932261300140a000e0700
-140a00160b00160b00160b00201000201000160b00261300160b002010000c0600180c00
-140a00281400160b00201000160b000e07000603002010001e0f000603002010001e0f00
-1e0f000e0700160b000e0700180c000e0700160b00160b00160b000e0700281400201000
-180c001e0f00140a00201000140a002814001e0f000603002814001e0f00160b00160b00
-0603001e0f00281400140a000c06002010000e07002010000c0600281400201000281400
-2814002613002814001e0f002010000e0700180c002010000c06000e07000e07000c0600
-180c000c06000e0700160b00180c00281400201000140a002613001e0f00060300201000
-201000140a001e0f00180c00160b000603000603000e0700160b00140a00160b00160b00
-060300060300040200180c003018000c06000c06002010000603000c0600201000261300
-140a000e0700281400201000ff9e3c2814002010002e17003a1d003018003a1d003a1d00
-3018004a25005c2e006432007038007e3f008643009c4e00a25100b45a00a25100be5f00
-aa55007e3f008a4500804000783c005e2f005a2d004a25003a1d003a1d002e1700321900
-2010003018002e1700201000ffa142281400160b00160b000e07000603000e0700160b00
-0c06001e0f000603000e0700201000140a00201000140a000603000e0700160b00160b00
-ff9932140a00060300160b00160b00160b003219001e0f00180c001e0f002010001e0f00
-281400301800381c00301800381c00160b002613002814002e17000e07002e1700281400
-281400160b00180c00261300040200ff9b36201000160b00
-180c00201000201000180c00201000281400180c002613002010000e0700301800201000
-201000160b00201000160b00060300281400201000201000180c000e0700160b00201000
-180c001e0f001e0f00060300281400180c00180c001e0f00160b00060300140a00180c00
-0c0600180c000e0700261300160b00180c002613002010000e07001e0f00140a00160b00
-1e0f00060300180c00160b000e07000e0700140a00160b00140a00160b00160b00160b00
-180c000c06000e0700201000160b002010002e1700180c00160b00160b002010001e0f00
-381c00180c000c0600180c002010000c06001e0f000e0700160b002010000e0700281400
-281400060300180c00060300201000180c002613000c0600140a00201000180c00160b00
-201000140a00020100281400160b001e0f000e07003a1d00201000301800160b00160b00
-0e0700160b00160b00160b002814000c0600180c000e0700160b000603000c0600201000
-160b000c0600160b00160b00180c00180c000e07000c06000e0700281400261300281400
-1e0f00160b000e0700160b001e0f002010001e0f00060300160b00201000281400160b00
-060300140a00281400020100201000180c00201000180c00201000281400160b000e0700
-180c00301800201000160b00201000160b00020100160b00180c002010001e0f000c0600
-160b003018002010002814000e0700160b00160b00140a000c0600020100201000160b00
-1e0f001e0f000c06002010001e0f00140a00160b00040200180c000e07001e0f00060300
-0e07000e0700160b002010002613002613002e1700201000160b00040200160b00160b00
-060300160b002814000e07003018001e0f001e0f00140a000e0700140a00180c00201000
-160b00160b00160b001e0f00301800140a000e0700180c003a1d001e0f00160b00201000
-140a000603002814001e0f000e07000e07000201001e0f000c06000201000603000c0600
-0e07000e07000c06000c06001e0f00fffcf80402002010002e17002613003018003a1d00
-402000301800201000201000180c00020100ff9c38040200140a00160b000201000e0700
-140a000603000201000201000603000603000402000603000402000c0600060300160b00
-140a00140a001e0f000e07001e0f001e0f00180c002010000e07001e0f000c0600160b00
-ff9b362814003018002814002814002814002e1700180c00180c00160b00261300180c00
-160b000e0700160b00180c00281400201000201000180c00020100ff9d3affa54a0e0700
-180c00160b000e0700140a00180c000e0700160b002010000e0700040200261300201000
-0c0600040200140a002613000e0700060300140a00160b002613000e07000e0700180c00
-140a000c06000c0600160b000e07000c0600140a00140a000e0700160b002814000e0700
-281400140a00160b002010002010000e0700201000160b00201000201000140a000e0700
-1e0f00140a000e07002010002e1700160b00180c00201000160b000e0700160b00180c00
-201000281400140a00160b000c06000c06002010000e07000603000e07002814000e0700
-0c0600180c000603002010000e07001e0f00160b00160b00160b000e0700261300180c00
-2e1700140a00140a00201000160b00160b00140a00261300261300020100180c000e0700
-160b00140a001e0f00160b001e0f000e07002613000e0700140a00140a00201000180c00
-1e0f00301800201000201000ffa54a140a000e0700180c002e17003018002010003a1d00
-442200402000542a00763b006432006432007038008040008a4500884400904800904800
-703800783c00763b006432006432006c36005c2e004a2500442200422100422100381c00
-2814002e1700160b00281400ff9e3c160b00140a00160b00140a00281400140a001e0f00
-180c00201000160b00160b00402000201000180c002010002010002010001e0f00201000
-ff99321e0f00180c002010001e0f00201000201000180c00180c002814001e0f00281400
-381c00301800321900381c004221002613003a1d00281400160b002814000e0700281400
-2010000e0700160b00201000160b00180c00ffa244201000
-281400140a000e07000e07000c0600140a000e0700261300160b00060300160b00140a00
-321900201000180c000e0700180c000e0700160b00160b002e1700180c000e0700201000
-0e07001e0f00261300281400160b002e1700281400201000140a00060300180c00160b00
-160b002613004020001e0f002010000c0600180c001e0f00201000301800180c00140a00
-261300180c00201000160b00140a00261300160b00281400060300180c001e0f00201000
-140a00140a001e0f00180c00160b001e0f00180c00160b001e0f00160b00180c001e0f00
-2010000e0700180c00160b00201000160b001e0f003a1d00201000281400160b00160b00
-201000261300160b00160b00261300160b000201002e1700160b00281400281400140a00
-160b000201000e0700160b00281400160b000e07001e0f002010002010002010001e0f00
-2010002010000603001e0f000c0600160b00040200180c00160b000e0700261300040200
-1e0f00140a000e07000e0700180c000e0700160b00160b00160b002010000c06000e0700
-2010001e0f00160b00160b00180c000c06000e0700201000201000201000201000180c00
-201000301800261300281400160b00160b002010000e0700281400140a000e07000e0700
-281400160b00160b001e0f00201000160b000c06000e0700160b00281400261300201000
-2010002010002e1700160b000402000e07002e1700281400060300140a001e0f00140a00
-140a00201000201000160b00261300160b000e0700140a00060300281400180c00160b00
-160b00160b000e07001e0f000e0700261300201000140a000e0700180c00180c00201000
-201000160b00201000140a00201000060300281400180c000e0700160b00180c00160b00
-0e0700201000140a00160b00160b00160b00180c00140a002e1700140a00160b000c0600
-160b00160b000e07000e0700140a00160b00140a000e07000e0700160b00140a00020100
-2010000e07001e0f00140a00ff952a180c00160b002e17003a1d00422100542a003a1d00
-542a004c26004c2600201000281400160b00281400ffa952060300040200160b00020100
-060300020100020100060300020100040200140a000e0700020100140a000c0600020100
-060300261300160b000e07000e07000e07000e0700261300160b00160b001e0f00ff9932
-160b001e0f00160b00160b00201000201000160b00180c00201000180c002010002e1700
-160b00281400160b00281400201000160b00301800160b00020100140a00ffa54a180c00
-201000180c00160b00201000180c000e0700281400140a00180c00160b00180c00160b00
-160b001e0f00160b000e0700140a001e0f001e0f000e0700160b00140a00180c001e0f00
-180c000e07002010000603001e0f00160b001e0f000e0700180c000c0600140a00201000
-160b002010002010000e0700281400140a000e0700201000160b00201000180c00060300
-261300201000180c000e0700140a00140a00020100160b00140a00281400381c00140a00
-0603001e0f00160b00160b00160b00261300301800140a00160b00140a00160b00140a00
-0e0700180c00060300140a00201000180c000e07000e0700201000201000160b00180c00
-140a000e07000e0700160b00160b00140a000c0600140a002010000603000e0700160b00
-201000180c000e0700160b00201000060300381c000e07002010002010000e0700180c00
-261300160b002010001e0f00281400ffa142201000201000140a002814003018004a2500
-3a1d005c2e004221005a2d005a2d005c2e006e37006e37006e37006432007e3f00763b00
-6e37006e3700804000542a00542a006633004c26004a2500301800442200381c00281400
-0e07000c06001e0f00140a00ff9e3c160b001e0f002010002010000e0700140a00180c00
-201000201000160b000c0600281400140a00060300201000160b00160b00020100160b00
-ffa64c201000261300160b00281400281400160b00301800381c00281400261300301800
-3219002613003219002010004221003018002e17002010002814002010001e0f00261300
-201000281400180c001e0f00020100180c00ffa142160b00
-160b00201000160b00060300180c00281400160b00160b002613002010001e0f00201000
-201000201000301800381c00160b00160b00261300180c00160b00180c00180c00160b00
-0e0700261300140a002613000c06003018002010002613001e0f00261300160b00160b00
-261300180c00201000140a00201000201000160b00160b00160b00160b00261300201000
-261300180c00160b00201000140a00261300160b00140a00140a000402000c06001e0f00
-180c002010000e07000e0700140a00140a00160b00201000180c00261300140a00160b00
-060300201000040200201000140a002010002010002e17002613001e0f001e0f00201000
-180c00160b002e17000e0700060300160b000e0700160b00140a000e0700160b000e0700
-160b001e0f00160b002613000c06002613002010001e0f00160b00201000180c000c0600
-020100060300140a00160b000e07000c0600180c00180c00160b002010000e07001e0f00
-140a00180c00160b002814002010000e0700140a00160b00201000160b001e0f00140a00
-160b000c06001e0f000e07000e0700261300140a00201000160b00140a00180c00140a00
-160b001e0f002010000201000e0700180c00160b00160b00180c002010000e0700201000
-0c0600160b000e07002010001e0f00180c00020100140a002814002010002e1700321900
-0603001e0f00040200180c001e0f00160b000e0700160b002010000c06000e0700201000
-140a000c0600160b001e0f002e1700160b00160b000e0700160b00140a00180c00180c00
-180c00160b002010002e17000201000c0600201000160b00281400160b001e0f00281400
-201000201000180c00160b000402000c0600140a00180c00180c002613002e17002e1700
-160b00180c00201000140a00201000201000180c00180c000603000c0600160b00180c00
-160b000603000e0700060300060300160b00020100140a00140a00140a00060300160b00
-160b00160b00160b000e0700ff98300603002e1700201000321900542a00984c00aa5500
-9c4e00884400763b005c2e003219001e0f00160b00ffa4481e0f00160b000402000e0700
-0201000201000201000603000c06000201000c06000402000c06000402002613000c0600
-140a000603000603000c0600160b000e07002814000e07000c0600180c00180c00ff9c38
-281400201000201000060300301800160b002613002814002814000e0700422100160b00
-281400281400281400201000281400160b00301800180c002010000c0600160b00ffa64c
-160b00201000060300160b000e0700201000160b002814002010000e07000e0700160b00
-140a000e0700140a000e0700060300160b00201000160b00160b000c06001e0f00180c00
-140a00160b000e07000e0700261300140a001e0f00160b00060300201000180c00140a00
-160b00180c002010000c0600321900140a002814000e0700261300160b001e0f00060300
-1e0f00160b00180c000e0700040200281400261300261300160b000e07000e07000e0700
-2010000e07002613002010000e0700160b00160b00140a000c06003018001e0f00180c00
-281400301800180c00180c001e0f00160b00060300160b00140a00040200201000261300
-201000160b000603003018002814001e0f00140a002010000e0700201000201000281400
-0e07000e0700180c00201000201000140a00201000201000160b00321900160b00140a00
-140a00201000180c00180c00140a00160b00ffa1420e07001e0f003018002e1700381c00
-3219004020003018005a2d004a2500442200522900542a005c2e005e2f006432006e3700
-4a25005e2f004221004a25005229004a25005a2d004221004c26003a1d00301800281400
-201000201000261300ff9b36140a00301800160b00140a002613002010002010000e0700
-0e0700180c00160b004c2600180c00140a00201000160b002010001e0f000603000c0600
-ffa1420c0600180c00201000201000180c002814001e0f00281400180c00201000160b00
-3219004422003a1d003018002814002e17003018002e17002010002e1700281400281400
-060300201000201000281400020100ffa448060300140a00
-160b00160b00201000201000160b00180c000e0700160b000e0700180c00160b00281400
-160b00201000160b00160b003018000e0700160b00060300201000160b002010001e0f00
-0e0700160b000e07000e0700140a00160b002010002010002e1700160b00160b001e0f00
-1e0f00381c001e0f00281400160b00201000201000140a001e0f00201000140a000e0700
-160b00180c00140a002010002010002010002010000e0700160b00160b001e0f00281400
-0e07002613002010001e0f00160b00140a00160b000e0700020100201000140a00180c00
-140a00060300180c000402002010000e0700160b00160b00180c00281400140a00160b00
-160b00160b00201000160b00160b00140a00060300160b000e07000402001e0f000e0700
-160b00160b00180c000c0600160b000e0700160b00180c00180c00160b00140a00201000
-2e1700160b001e0f00160b001e0f000c06002010000e07000e07001e0f00140a00180c00
-160b000e0700180c00140a000603002814001e0f00140a002e17001e0f002613000e0700
-0e0700160b00261300160b00160b00160b00160b00261300180c000e0700160b001e0f00
-201000180c000e07001e0f000e0700140a003a1d002e17000e07002010001e0f00201000
-0603000e07001e0f000c0600160b00020100281400140a000e0700060300160b00160b00
-2e1700160b002010002010001e0f00281400180c00261300160b00281400160b00140a00
-0e0700160b00160b002814002613001e0f000c0600160b00140a00160b00140a000e0700
-0e07000e07001e0f00160b000e07001e0f000e0700160b002613002814001e0f00201000
-0e07000e07000c06001e0f00160b00180c002613001e0f002814001e0f002e1700140a00
-281400160b00140a00180c00140a00160b000e0700180c00160b002613002010000e0700
-0603000603002010002010000603000e0700060300180c000e0700160b000201000e0700
-0c06000c06000e0700140a00ff9b361e0f004a2500301800542a008a4500de6f00ff9326
-ff8306f07800aa55005c2e002e1700201000281400060300ff98300603000c0600020100
-060300060300060300060300160b000c0600160b001e0f000e07001e0f000e07000c0600
-0201000c06000603000201002010000201000c06001e0f000c06001e0f001e0f00ff9b36
-261300180c001e0f003018002613001e0f00281400201000261300301800140a00140a00
-2010002613002010002e17002010001e0f00160b002613001e0f00180c001e0f00301800
-ffa54a160b00281400180c001e0f00201000160b00160b00201000180c000e0700261300
-1e0f002010000e0700160b00180c00261300160b000c0600201000140a000e0700160b00
-060300261300160b00261300160b002814000e0700140a002010001e0f00140a000e0700
-0c0600180c00160b00160b002010000e07003018002814001e0f00160b00261300160b00
-160b000e07002010001e0f000e07000e0700160b00201000160b00180c00180c000c0600
-0e0700281400180c002613000c0600180c00140a002814000e0700201000180c00261300
-1e0f00180c002613001e0f002010002613001e0f000603000c0600180c00281400060300
-180c001e0f000e07002814002010001e0f00160b000c06000e0700060300180c00160b00
-201000180c000c0600160b000603002e17000e07002010000603002010001e0f00180c00
-140a00160b000c0600261300060300180c001e0f00ffa64c3219003018002814002e1700
-3018002814003a1d004221003018003219004422004a25005229005a2d005c2e005a2d00
-4c26005e2f004c26004221005229005229003a1d004221004221003a1d00281400321900
-261300201000261300ff9c38160b00201000180c00160b002814000e0700140a000c0600
-2613000201000201000e0700140a00060300160b00201000140a001e0f00201000180c00
-ffa0401e0f000603001e0f00160b000603000c0600201000160b00201000261300201000
-301800281400321900281400321900281400281400201000180c00201000201000201000
-201000060300160b00201000140a00ffa0401e0f00180c00
-1e0f00201000201000381c00140a002010002e17000e0700180c00160b00180c001e0f00
-1e0f000e07000e0700140a00160b000e0700261300261300160b00301800261300180c00
-0e07002e1700301800160b00160b00160b00201000160b00301800180c00160b00281400
-140a00160b002613000c06001e0f00281400201000180c00201000281400201000261300
-0e07001e0f00160b00180c001e0f00180c00180c00060300140a00180c00180c00160b00
-180c00180c00140a00160b00201000301800160b00281400281400201000201000160b00
-0e0700180c00140a00281400180c000e0700201000140a00160b000e07001e0f00060300
-0e07000e07000402000e0700160b001e0f000e07001e0f00140a000e07001e0f00160b00
-160b00180c000e0700261300201000140a00020100060300140a000c0600201000060300
-1e0f000e07000e07002814000e07000402001e0f00140a00180c000e07001e0f00160b00
-0e07000e0700180c00140a00201000180c00201000160b00060300160b00201000201000
-160b000e0700060300140a00060300180c00140a000e07000e07002814002010000e0700
-140a000e07000e07001e0f00201000160b00261300140a000e0700281400160b00301800
-2613000e0700160b000c0600160b00160b002814001e0f00180c00160b00301800160b00
-140a002613002e1700261300160b00060300160b000e0700301800281400180c00180c00
-2010002010000c06000603000603000c06000e0700140a000e0700201000040200160b00
-0e07000603000e0700180c00160b00040200160b00160b00160b000e0700160b00040200
-180c00261300160b00281400160b00180c002010000e0700281400180c001e0f00261300
-281400281400180c00180c001e0f000e0700201000140a00160b00040200140a00201000
-160b00160b001e0f000c06000e0700140a000e07000201000e0700180c00140a00140a00
-201000180c000c0600ff99321e0f002814003a1d00381c00763b00c46200ff952affc890
-ffd1a2ffaa54c86400804000522900201000180c00140a00ff952a1e0f00020100020100
-0201000e07000e0700020100060300020100040200180c000c06000603000e0700160b00
-140a00160b000e0700020100160b001e0f00201000180c000e0700180c000e0700ffaa54
-0e0700261300160b00261300201000281400201000180c00281400201000261300321900
-2814003018002e17002010002010001e0f002e17003018002814000e07001e0f000e0700
-160b00ffa448160b000e0700160b002e1700180c00140a00201000201000160b00160b00
-180c000e0700160b000e0700160b00160b000e0700160b000603000e0700160b00160b00
-180c00180c00160b00160b000c0600160b00160b00281400140a00201000281400ffa142
-ff9c38ff9c38ffa54aff9c38160b002010000e0700160b002010001e0f00180c00040200
-160b000e0700140a00160b00140a002010002814000e0700020100160b00140a00140a00
-140a00160b001e0f00160b00160b00160b00180c00281400160b002613003018000c0600
-160b00140a00160b00160b001e0f000c06002010002613000c0600281400201000160b00
-0e07001e0f002613002814000c0600201000160b001e0f00160b00140a00201000180c00
-0c0600180c001e0f00160b00201000160b00140a00180c00160b000c0600160b00140a00
-160b002010002010000e0700201000160b00160b00201000ff9932160b00301800301800
-2e1700321900422100422100381c002814003a1d004422005229003a1d004221005c2e00
-3a1d004a25004a25003a1d00381c002814004422003a1d002e1700381c002e1700281400
-2e1700201000201000ffa040281400180c000e07001e0f00201000281400281400040200
-160b00261300281400160b00180c00020100060300180c00140a000e0700281400201000
-ffa142281400060300160b00160b00160b00140a002010002010000e0700261300160b00
-160b00180c002613002613001e0f001e0f002814001e0f001e0f00201000201000160b00
-3219002613001e0f001e0f000e0700ff9d3a281400160b00
-1e0f002e17000e0700140a00180c000e0700160b00180c00040200281400140a00261300
-0603002814001e0f002010003018000e0700281400180c00160b001e0f002010000e0700
-201000160b00140a00201000201000160b002e1700201000060300180c000e0700140a00
-0e0700301800160b001e0f00140a00201000321900140a00160b001e0f00201000140a00
-160b000e0700180c002814002814002010000402001e0f000c0600180c001e0f000e0700
-160b000c06002814002010001e0f002010001e0f00160b00160b00140a00160b00060300
-180c00180c00180c00281400201000160b00060300160b000e07000c0600180c00160b00
-160b00060300160b00140a00180c000603001e0f000e07000e0700160b002613002e1700
-140a000e07002010002613000e0700140a00020100160b00180c00201000160b00160b00
-0603000e0700160b001e0f00160b00180c00160b000e0700180c000e0700180c00140a00
-160b000c0600140a00180c00201000180c002010000c0600160b000603000c06000e0700
-180c00160b001e0f00160b00140a00180c00261300281400160b00201000180c00201000
-1e0f00160b00180c00261300140a002613002010000e0700180c000e0700160b00180c00
-180c002010000e0700321900160b002814002814000201002010001e0f00281400201000
-140a000c0600160b000e0700180c001e0f00180c00140a00160b001e0f001e0f00140a00
-060300180c002814002613000e0700160b002010002010000c0600160b00201000201000
-160b00140a00180c00160b00180c00160b001e0f00180c00180c001e0f00060300160b00
-160b000e07002814001e0f00180c00261300140a002814002010000c0600060300180c00
-0e0700261300301800140a00281400281400140a000603002814000e0700180c00321900
-2010002010000e07000c06000c0600180c000e0700160b00160b00140a00140a000c0600
-140a00201000060300ff93262010002010003a1d004a2500703800de6f00ffab56ffdab4
-ffd7aeffb162e472009249004a2500301800422100160b00ff9d3a0603000e0700020100
-0c0600180c00201000060300160b00180c000201000c06001e0f002010000603000c0600
-180c001e0f001e0f00160b00160b00160b000c0600160b000e07001e0f00160b00ffa448
-201000160b00281400160b00160b00160b001e0f00140a00201000301800261300301800
-381c002010002e1700160b00281400381c001e0f002814002e1700160b000e0700281400
-160b00ff99322613000e07001e0f001e0f003018000e0700140a00160b00201000261300
-2613000201000e07002e17000e0700140a00180c00180c00160b000e0700140a00180c00
-281400201000160b002613000603000e0700160b00160b00261300ffa244ffa54a0c0600
-281400281400201000281400ff9d3affa0400e0700180c002613001e0f001e0f000e0700
-1e0f000e07000e07000c06002010000c0600201000020100160b00180c00160b00180c00
-281400201000140a00261300160b00261300201000180c00201000201000261300180c00
-1e0f00281400140a00160b00180c000c06002613002010002613001e0f00160b00160b00
-0e0700201000160b00140a00261300180c000e07000e0700180c00180c00201000140a00
-140a000c06002010001e0f000c06000e07002613000e0700180c001e0f002814000e0700
-140a00160b00201000160b001e0f000e07001e0f00201000201000ffa54a2814002e1700
-201000281400381c00422100201000381c004020004a25004221002e17003a1d00422100
-5229002613003a1d004221004221003219003a1d003018002e1700381c00201000180c00
-2010002e1700ff9c38281400201000281400201000160b00140a00140a00180c000e0700
-160b00160b00140a00160b002010000e0700160b001e0f001e0f002613002010000e0700
-0c0600ff952a140a00160b001e0f000e07000e0700180c000e07003a1d00201000180c00
-1e0f003018003018001e0f00201000261300180c002613001e0f002613000e0700201000
-261300261300160b00180c00ff9c38201000160b00180c00
-2010000c0600180c00201000201000060300160b00160b00261300321900180c00060300
-180c00160b001e0f00160b00180c002010001e0f002e1700201000160b00281400201000
-160b00140a00261300160b00160b00180c000e07000c0600160b00281400281400201000
-381c002010002613000e0700180c00160b000603003a1d002814001e0f000c0600140a00
-281400160b000e07001e0f00301800201000180c00180c002010001e0f00060300201000
-180c000e0700201000281400281400160b000c0600281400160b001e0f000e07000c0600
-0e0700040200201000140a00261300160b001e0f000201002814001e0f00160b000e0700
-0e07000e07000e0700140a000e0700180c00180c000c06001e0f00160b000c0600160b00
-140a00261300160b001e0f00160b00140a00201000060300060300180c000c0600160b00
-0e07000e0700160b002010001e0f000e07002613000603000603000c0600180c00201000
-140a00180c002010002010000e07003018000c06000e0700060300020100140a00201000
-281400201000180c00201000180c00140a001e0f00160b001e0f00140a002010001e0f00
-201000160b002010000e07000e0700180c00160b000e0700160b00140a000e0700160b00
-180c000c0600261300180c001e0f00281400160b001e0f002010002010001e0f00160b00
-160b00180c000e0700261300281400201000281400180c00160b00160b00180c001e0f00
-0e0700160b002010000e07002e17000e0700261300020100180c00160b00060300180c00
-140a000c06000e07000e0700060300040200140a00180c000e07001e0f000e0700201000
-180c00160b00140a00201000180c00160b00140a00160b00140a000e0700060300180c00
-180c000e07000e07000e0700160b000e07000e0700140a00201000160b000e0700020100
-1e0f002010001e0f00160b00180c00160b000e07000c0600180c000e0700060300140a00
-140a00140a00140a00ffa040160b00180c001e0f003219006432009a4d00ff8b16ffb66c
-ffd1a2ffa952de6f00763b00542a00201000160b000c0600ff9c380603000e0700180c00
-140a000201000603000e0700140a000201000c0600020100020100020100020100020100
-040200020100160b000603000603000e07000e07001e0f00160b00140a000e0700ff9932
-2010002010002010000c06002814001e0f001e0f002e17004422002010004221004a2500
-321900381c00422100281400180c00201000160b00160b00160b000201000e0700261300
-1e0f00201000ffa1421e0f002010001e0f002010000e0700160b000e07000c0600160b00
-2010003018000e07000e0700180c001e0f001e0f00180c000603000e0700201000160b00
-160b00140a000603001e0f00201000160b000e0700160b00ff9c38201000140a00201000
-180c002613000e07000c0600281400160b00ffa142160b00160b000603000c06000e0700
-1e0f00160b00160b000c06002613000e07000e0700201000060300160b00201000140a00
-0e0700201000180c00180c00281400180c00201000281400140a00281400160b00201000
-261300160b00160b00180c00180c000c0600140a00160b002e1700180c000e07001e0f00
-160b000603000e07000e0700201000060300160b00160b00140a000c0600160b00180c00
-201000140a00140a00160b00261300160b00160b002010001e0f00160b00140a001e0f00
-160b001e0f00160b00160b00160b002010002613003018000e0700281400ffa448261300
-160b002814002613002814003219003018003a1d003219003018003a1d003a1d00402000
-4020004a25004422004020003a1d00381c003219003018003a1d003a1d00301800180c00
-180c00201000ff9d3a160b00180c001e0f000e0700201000160b000c0600201000321900
-140a00140a000e07000e07002010000c0600160b00140a002613002010002814001e0f00
-0603000c0600ffa74e1e0f000e0700160b00180c00160b000e0700060300261300261300
-0e0700201000281400160b00201000180c00201000381c00160b00261300301800201000
-261300201000180c00ffa448160b002e1700160b000e0700
-2613000e0700180c00180c000e0700160b00140a00261300160b00201000281400160b00
-160b000e07000c06000e0700261300261300201000160b001e0f00180c000e0700180c00
-422100281400160b000c0600180c000e0700180c00140a000e07001e0f00180c000e0700
-0e07002e17000e0700160b000c06001e0f00020100281400281400160b00180c00281400
-201000261300140a00140a00140a001e0f000e07002e1700160b003018002010000e0700
-301800060300160b000e0700180c00160b00160b001e0f00060300160b00160b00160b00
-2010000e07001e0f00180c00180c00160b000e0700201000160b00180c00160b00160b00
-0c06001e0f000c06000e0700140a00180c00140a001e0f00160b000e0700140a00140a00
-2814001e0f00160b00180c00180c00281400060300160b00160b00160b000e0700060300
-201000160b00160b00261300060300160b000e0700160b00140a00180c00180c00180c00
-160b000e07000e0700040200301800180c00180c002010000e0700160b00060300261300
-1e0f002010000e07000e0700160b000603002010000e0700160b002010001e0f00201000
-2010000c0600140a002010002010000e07000e0700180c00281400201000140a00160b00
-281400301800281400201000201000160b002613000e0700160b00020100201000140a00
-180c001e0f000e07001e0f002010002010001e0f000e07000c0600160b000e0700140a00
-1e0f002e17001e0f00261300261300160b001e0f00201000160b00261300160b00140a00
-2010000e07000e0700140a00060300281400201000281400180c00160b003018001e0f00
-160b000e0700281400201000180c00020100160b00201000140a00261300140a00201000
-160b00160b001e0f00160b002010000e0700261300160b002613000c0600160b00140a00
-160b00201000060300160b00140a000e07000c06000e0700201000060300140a00180c00
-160b000e0700020100281400ffa54a201000261300422100542a009a4d00de6f00f47a00
-ff8306f47a009a4d006e37003a1d00201000140a00160b00ff9122160b002010000e0700
-020100060300020100160b00020100201000180c00040200160b00160b000402000e0700
-0603000e07000c0600261300140a00160b00261300060300160b00060300180c00ffa040
-2010002613002613000e0700281400160b00160b00301800201000301800422100402000
-4221004221004020004221002814002e1700261300281400201000060300160b00201000
-140a001e0f00ffa9520402000c0600160b00060300140a000e0700160b00201000201000
-060300201000140a00160b00201000201000140a00060300140a000c0600180c00060300
-2613001e0f00060300140a000c06000402000e0700ff9932201000160b00160b00160b00
-140a00180c00180c00160b00201000261300160b00ffa54a281400281400201000060300
-2613000603002010002613000603002613003018002010001e0f00160b00261300301800
-160b00201000180c00180c00201000180c001e0f002814001e0f000e0700281400180c00
-0e07001e0f00160b001e0f000c06000e07001e0f00281400180c00140a00160b00261300
-160b00140a002010002010002613000603000e0700180c002010001e0f00140a00160b00
-140a00160b000603000e0700160b00140a00180c00281400140a00160b002814000e0700
-2010000603001e0f00060300180c00281400261300160b000e07000e0700060300ffa142
-0e07001e0f002613002613003a1d003a1d002010001e0f003018003219003a1d00301800
-3018002e17003018003a1d003219002814003a1d002814003018002010002e1700201000
-140a00ffa142281400180c00140a00180c00281400140a00160b00160b000c0600201000
-0e0700201000140a000603001e0f00160b000e0700160b00160b00201000201000160b00
-1e0f000e0700ff952a180c002010001e0f001e0f00160b002814001e0f00201000201000
-301800201000160b002613000e0700180c002010002613002010000c06001e0f00201000
-140a00160b001e0f00ffa040160b001e0f000c06001e0f00
-0402002010000402002e17000e0700160b00160b00140a00180c001e0f00160b001e0f00
-160b00160b002814001e0f00160b00140a00140a002613002010002010001e0f00180c00
-1e0f000e0700201000160b00140a000e0700140a001e0f001e0f001e0f00060300140a00
-160b00201000201000180c00160b000c0600140a001e0f00201000201000201000201000
-2010002e17002010001e0f00301800281400201000160b000e0700160b001e0f000c0600
-0e07000c0600140a00140a002814001e0f00201000160b00201000180c004020000c0600
-160b00140a00180c001e0f002613002e17000e07000e0700180c000e0700201000160b00
-0603000e0700201000060300160b00160b00281400160b00180c001e0f001e0f00160b00
-0e0700140a002613002010002e17000e07000e07000e0700180c001e0f002010000c0600
-0e0700160b00160b001e0f00160b00160b00201000201000261300180c00180c00160b00
-0e07001e0f000e0700160b002010002010003018001e0f00160b00180c00160b00180c00
-180c002010002010000603002613000c06000e0700261300160b001e0f00160b001e0f00
-140a00160b00201000180c00160b00060300160b00160b000e07002010002814001e0f00
-2613000e07002010001e0f000e0700160b00160b00180c00201000261300060300261300
-0c0600180c00201000281400140a001e0f000e07002814001e0f001e0f002e17000e0700
-160b000e0700160b002010001e0f00180c001e0f00140a000e07001e0f00180c00140a00
-0e0700060300160b00160b00180c00160b001e0f002814002010000e07000e0700160b00
-201000180c002010002814000e07001e0f00160b00381c00160b000e0700160b000e0700
-2010001e0f002010000603001e0f001e0f00160b00201000160b00261300160b00140a00
-180c002010000c0600160b00140a00140a002613000e0700160b00160b000c06000e0700
-2010000603001e0f00140a00ff9e3c1e0f003219002814004a25005c2e00783c009a4d00
-ac56008844005229004a25002613001e0f00261300ffa2440603000201000603000c0600
-0201000e0700140a000603000e07002613000c06000e07000603000c06000e0700160b00
-160b000201002010000e07002e17002010001e0f001e0f00201000301800140a00ffa448
-180c001e0f00160b000e07001e0f00261300201000301800160b003a1d00321900442200
-522900542a002814002e1700381c002814001e0f00180c00281400261300180c00160b00
-140a000e0700ff9e3c201000140a000e0700160b00140a00180c002814000e07001e0f00
-160b001e0f00160b000e07000c06000e0700160b001e0f00160b000e0700180c00160b00
-281400060300040200160b00180c00140a00ffa040160b00180c00060300140a001e0f00
-060300160b001e0f003018002814001e0f00160b001e0f00ff9d3a0e07000e07001e0f00
-140a001e0f00140a00160b00160b00060300140a00160b000e0700261300140a00160b00
-2010001e0f000201002010000e0700140a00201000160b00180c00160b00140a00160b00
-060300180c00180c00160b00201000301800140a000402001e0f00160b001e0f00281400
-160b00180c002010002e1700140a002010001e0f00160b00160b00140a001e0f00160b00
-060300160b00160b000e07000e07002814000c0600281400140a00140a002814001e0f00
-201000160b00261300201000140a00160b002010002010004020002814000c06001e0f00
-ffa64cff9c38180c00301800180c003219003a1d00160b000e0700201000180c004a2500
-3018004020002814002e17002e17003018002010002e17002814002613002613001e0f00
-ffa54a1e0f00261300261300201000140a003018002010001e0f00160b00160b00160b00
-140a00160b000603002613000e0700140a00281400160b00160b000c0600261300261300
-1e0f00060300060300ff9c38060300160b002010000e0700140a002e17002010001e0f00
-2814000e0700180c00160b00281400261300180c00140a00160b00180c00281400261300
-1e0f00ff9e3cff9d3a2010000c06000e07000e0700160b00
-2e1700201000180c00160b00180c002814002e17000e0700201000180c001e0f00160b00
-180c000e0700201000301800160b00160b000e07001e0f001e0f00160b00281400281400
-0e0700140a00020100180c000e0700060300201000201000160b00180c00140a00281400
-180c001e0f001e0f00180c00160b00261300160b001e0f00160b00180c000e0700140a00
-1e0f00201000261300261300281400160b00180c00160b00180c00160b00160b00201000
-140a00160b002e17002814000c0600160b002814000c06000e0700140a00201000261300
-160b00281400281400160b00040200180c002e1700180c00160b00201000160b00160b00
-180c00160b000402000c06000e07002010000c0600180c00140a000603000e0700160b00
-1e0f000e07000e0700180c00160b000c0600160b00160b00160b000c0600160b001e0f00
-261300160b00140a00201000201000140a00180c001e0f002010000e07001e0f00160b00
-0c06001e0f002010000e0700160b00180c00160b00180c00160b001e0f00160b001e0f00
-160b002010000e07001e0f00140a00140a00140a001e0f00201000060300160b00140a00
-140a002e1700180c00140a00281400160b00160b00160b002010000e0700180c00020100
-180c00201000180c000c06000e0700160b00180c00180c00160b000e0700140a00160b00
-160b00201000160b00201000160b00261300180c00180c00201000180c000e0700160b00
-1e0f00160b00160b002010000e07001e0f00281400140a001e0f001e0f00201000180c00
-201000180c00201000160b002010000c0600160b002010001e0f00281400201000261300
-0201000e0700160b00140a002613001e0f00140a000e0700160b00281400261300160b00
-0c0600201000180c00160b00261300140a00160b00180c00160b00160b000e07001e0f00
-160b000e07002010000e07002814000e0700180c000c06002010000e0700060300020100
-1e0f000c0600160b00281400ffa74e281400160b001e0f002814003a1d00442200804000
-5e2f007038005a2d003a1d002613002e1700180c00ff9c38160b00140a00201000140a00
-2010000e07000e0700060300160b00040200020100160b00160b000e0700180c00060300
-140a00140a00160b000e07002010000c0600201000140a000c0600180c000e0700ff9b36
-0c06002613000e07000e07003a1d001e0f00281400281400140a002e1700281400301800
-4a25004a2500442200381c003a1d004221002814002010000e0700160b001e0f00201000
-2010000e0700ffa2440e07002010003018000e07002010000e07000c06002613000e0700
-1e0f00281400180c00160b00160b000e07000e0700160b00040200140a001e0f001e0f00
-2010000c0600160b001e0f00060300201000ffa244060300201000160b00160b00160b00
-201000201000201000160b00281400180c00261300180c00201000ffa142180c00060300
-180c00060300160b001e0f000e07002010002e17002613002010002010000e0700281400
-140a000201000603000e0700160b000e0700140a00201000201000180c00180c001e0f00
-201000160b00160b00281400140a00140a00160b00140a00180c00180c000201000e0700
-0c06001e0f00201000201000180c00180c00140a000e07000e0700160b00160b000e0700
-0603000e0700160b00140a00140a000e0700180c000e0700180c00140a00160b00140a00
-160b00201000160b00160b000e0700180c00160b001e0f00281400160b00301800201000
-160b00201000ffa040281400301800281400301800301800301800281400321900261300
-2e17002e17003219003018003a1d00281400180c00201000201000281400261300ffa54a
-261300201000140a00261300201000160b000e0700160b00160b000e0700180c00160b00
-180c00160b000c0600140a00180c002010000e0700160b00160b003018000603001e0f00
-2010002010000c0600160b00ffa142ffa54a0e07001e0f00180c001e0f002814001e0f00
-201000160b001e0f001e0f00180c00301800160b00201000160b000e0700160b000e0700
-ffa4482e1700180c00160b00060300160b000e0700060300
-1e0f00201000140a00140a000e0700261300180c001e0f00160b002613002613001e0f00
-2613002613001e0f00160b00201000180c00261300180c002010002010000e0700201000
-201000201000180c00180c002e17001e0f00201000180c00381c00140a00180c00140a00
-180c002814003219002814003018000e0700201000201000201000201000180c00180c00
-201000160b00140a00160b002010001e0f001e0f000c0600160b002010000e0700201000
-281400201000180c00261300160b002010000e07001e0f00180c000e07001e0f000e0700
-180c00180c00140a00160b000e0700180c000e07001e0f001e0f00140a000e07001e0f00
-160b000c0600261300160b002010001e0f000e07000e0700180c00180c00201000160b00
-0e07000603002e17002010000e0700140a000e07000c06002010002613000e07000e0700
-180c000e0700281400160b00160b00140a001e0f00201000201000261300140a00281400
-0c0600281400060300140a000c06000e0700180c00160b000e0700060300160b00321900
-2e17000e0700140a00180c00180c002010000e0700160b00281400180c001e0f001e0f00
-060300160b000e0700160b00201000140a00160b000e07001e0f00140a00160b00160b00
-160b000e0700281400201000160b000c0600140a003018000e0700281400180c00281400
-2814000603000c06001e0f000c0600160b00180c00160b00160b002e17002010000c0600
-140a00201000140a001e0f00160b00140a000e0700160b00201000060300160b00160b00
-1e0f00160b000c0600160b00140a00261300160b002010001e0f00180c000e07000e0700
-160b00140a00261300140a00201000201000160b00140a00160b002010000603000e0700
-0603001e0f00160b001e0f00180c002814000e07000c06001e0f002613002010000c0600
-1e0f001e0f00261300180c00020100160b00180c000e0700180c000402000c06000c0600
-060300180c00160b00160b00060300ffa0402010002613002814003219004a2500422100
-281400422100422100321900201000201000ff9428140a00261300040200060300060300
-1e0f00160b000c06000c0600060300020100140a002010000e07000c06000e0700140a00
-160b00140a00160b00140a00160b00180c000c0600160b000c0600160b00261300160b00
-ffa448160b000e0700201000281400160b00160b00201000301800160b00201000381c00
-2e17003a1d00381c003018003018002814002010002613001e0f00261300201000201000
-1e0f000e0700ffa040201000160b00160b001e0f00140a001e0f00180c00160b000e0700
-180c00201000160b00160b00160b000c06000603000e07000e07002010002e1700020100
-040200201000140a00140a00201000ff9c38140a00281400140a002814000c0600301800
-2814002613001e0f00281400261300160b002814002e17000e0700ffa448201000160b00
-281400201000201000020100281400160b00060300261300301800140a002010002e1700
-1e0f00201000160b000e07001e0f00180c001e0f002814001e0f002e1700160b00261300
-060300160b002010001e0f003018001e0f001e0f00160b00160b001e0f00160b00160b00
-180c00160b001e0f00180c00060300140a000e07002e17002e1700261300160b00201000
-0e07002814001e0f000e07000e0700060300180c000c0600160b00201000160b00261300
-1e0f00180c002814001e0f00281400160b00201000180c00160b00140a00201000160b00
-261300180c00201000ff9e3cffae5c180c002010002010002e1700281400201000261300
-2010001e0f002814003018002e17003219002010002613002e1700ff9e3cffaa54180c00
-2613002010002613001e0f00160b000603000603002814000e07000e0700140a00281400
-3018002814001e0f00180c00160b000e0700160b00140a00160b00201000261300180c00
-281400201000060300140a00160b000e0700ff9c38ff9e3c0c06000e07000e0700201000
-201000201000140a00060300180c00261300060300160b00261300160b00ff9c38ff9b36
-160b00180c00160b002010000e07000e07000c0600160b00
-1e0f00201000160b00201000160b00180c00180c001e0f00160b002010000c0600160b00
-301800201000180c00180c000e0700261300160b00180c002010001e0f00281400201000
-180c000e07000603002814000603002010000603001e0f000c06001e0f00160b00160b00
-281400160b001e0f00160b00201000160b002010001e0f00140a001e0f00201000160b00
-281400160b001e0f00261300160b00160b002e17000e07001e0f002010000e0700201000
-160b00281400060300180c002e1700180c00160b000c0600140a00160b00060300040200
-1e0f00180c00180c00180c000201000402000c06002010000201000e0700160b00060300
-0e0700160b00180c00201000160b000e07002010000e0700140a00140a00201000160b00
-2010000e0700160b00160b00180c00060300201000180c00201000060300261300201000
-281400160b002010001e0f00180c00180c00160b00201000281400160b00180c00180c00
-2613001e0f00201000180c00160b000c0600160b002010000603000e0700160b001e0f00
-060300160b000e0700180c00160b002613000603000e07000c06000e07001e0f001e0f00
-1e0f00261300160b002010000e0700281400201000160b00140a000c06000c06001e0f00
-2e1700261300160b000e07002010000e07000e07000c06002613002814000e0700201000
-0c0600140a00160b00140a00160b00180c00160b00201000160b00201000060300180c00
-2613002010000e07000e07000e07002814000e0700160b00160b00060300281400160b00
-060300020100160b00201000160b00201000301800180c00180c00261300281400140a00
-2e1700201000180c00160b00140a000e0700180c001e0f00140a000c0600201000201000
-060300180c00160b00160b000e0700140a001e0f000e0700301800160b00180c00140a00
-160b001e0f00160b00140a00140a00261300160b000402000e0700160b00160b00020100
-1e0f000e07000201002010000e0700140a00ff9d3a0e0700160b002010002010004a2500
-1e0f001e0f00261300301800160b000e0700ffa0402814000e07002010000c0600060300
-040200020100281400060300160b002010000c06000e07000c06001e0f000603000c0600
-140a001e0f00201000160b00140a00261300060300160b00201000160b000c0600060300
-ff9b36160b00180c00140a00140a001e0f001e0f002814002814002010003018001e0f00
-3018004422003a1d003a1d002e1700281400160b002e17000c0600180c00261300160b00
-0e0700301800180c00ff9b360c0600201000180c000e0700160b00140a000e07000e0700
-0e0700140a001e0f002010001e0f00160b000e0700160b001e0f00201000160b00180c00
-0c0600201000140a00201000060300ffa040160b00180c000e0700160b00201000201000
-2e1700321900281400281400160b00281400180c00160b00060300201000ffa244140a00
-2814000c0600160b000c0600180c00201000140a000e07002010002010002613000e0700
-160b00160b00180c001e0f00160b00201000160b00180c002814001e0f00180c00140a00
-0e07000e07002613001e0f00160b00060300160b000e0700180c00281400160b00160b00
-160b00060300160b00160b00160b00201000060300160b000603000603000e07000e0700
-140a00160b00180c002010000e07002010001e0f00160b00040200160b00060300160b00
-180c00140a00160b00160b00160b00180c001e0f00160b00201000160b00160b00140a00
-201000180c00281400301800180c00ffa142ffa244ff9e3c201000301800321900201000
-301800301800261300281400140a00261300160b00ffa64cffa142281400160b001e0f00
-160b002010001e0f00201000020100140a000603001e0f00140a00160b00201000160b00
-1e0f00201000160b001e0f000e0700160b00180c000c0600160b002e17000e07001e0f00
-160b002814001e0f000e07000201000e07002010000e0700ff9b36ff9c38ff9c38ff9d3a
-1e0f00201000201000201000160b00ff9b36ff9b36ff9830ff9932ffae5c0e0700140a00
-0c06000e07000c0600160b00160b00180c002814000e0700
-2814000e0700261300201000201000140a002814000e0700180c00060300160b00201000
-160b00060300201000160b00140a00160b001e0f001e0f00160b00140a00180c00201000
-201000201000060300160b00201000160b001e0f00160b00201000140a00160b00201000
-180c00160b000c0600201000201000180c00140a001e0f00180c00180c000c0600180c00
-1e0f00321900140a00160b002e1700160b000e0700180c00201000201000160b00180c00
-2814000603000e0700160b002010002613000e0700281400160b00020100180c00180c00
-160b00180c00160b001e0f00160b001e0f00160b00160b000e0700140a00160b00160b00
-281400160b00281400160b002e17001e0f00040200301800201000261300160b000e0700
-0e07000e0700201000160b00301800180c002010001e0f00060300140a00140a00020100
-160b002e17000e0700180c001e0f00140a000e07002613000c0600180c00160b00301800
-160b000e07002010001e0f00201000160b002613000e07001e0f00180c001e0f00281400
-1e0f00201000160b001e0f001e0f000e0700180c00180c00180c000e0700180c00160b00
-0e0700180c00180c002e1700160b000c0600160b00180c000603000c0600160b00201000
-160b000e07000e07002010002010000e07002010003a1d00180c00160b000c06000e0700
-201000160b000c06002814001e0f00140a00160b000e0700160b00160b001e0f00160b00
-060300201000281400180c002e17001e0f002010002010000e0700201000160b000e0700
-0e0700180c00160b00180c00160b00201000140a00201000ff9e3cffaa54ff9932ffa244
-ffa040ffa142ff9d3a201000180c00201000180c000e0700160b00201000201000261300
-1e0f00201000040200160b002010000e07000603002613001e0f00180c000e07001e0f00
-040200160b001e0f002010000c0600160b000603000e07000c06000e0700160b00180c00
-201000180c000e0700140a000e07001e0f00160b00ff99320e07002e1700160b002e1700
-160b001e0f00261300201000ff9e3cffa1420e0700160b00160b000603001e0f00040200
-180c000c0600160b000603000e07000e0700160b000c0600160b000e07000201000e0700
-060300160b001e0f00281400201000201000160b00180c00160b00160b00160b00160b00
-140a00ffa54a180c000e0700140a000e0700201000201000201000180c001e0f00201000
-2814002814003219003219002814002010002814000603000e07002e17000603001e0f00
-0e07002e1700ff9c38261300180c000603001e0f00140a000201001e0f00301800201000
-160b000e0700160b00201000281400160b000c06001e0f00060300140a00140a00160b00
-180c00140a002814000e0700281400ffa4480e0700180c00201000201000201000281400
-2814001e0f002613003a1d002e17003018002010001e0f00201000140a00ffa952160b00
-201000140a000e0700180c000e0700160b000e07000e0700160b001e0f00301800281400
-140a00160b00160b00281400160b00160b002010000e0700160b00180c000603000e0700
-160b000e0700160b00201000140a002010002010001e0f002814002e1700201000160b00
-1e0f000201003018000e0700160b00160b00281400180c00261300140a001e0f00160b00
-160b00160b002613002e1700140a00301800180c00060300140a00160b002010000e0700
-2010003a1d002814002814000e0700281400160b00160b001e0f002010001e0f00180c00
-0e0700281400261300160b00201000301800281400060300ffa952ffa142ff9932ffa64c
-ffa244ffa244ffa74effa74effa448ffa952ffa74e281400281400180c00301800160b00
-180c002814000e07002e1700140a00160b00140a00160b000603000e0700160b000e0700
-060300160b00040200160b00201000201000321900180c00160b00160b00160b000e0700
-2e17000e0700180c00160b00201000160b00180c000e07001e0f001e0f000e07000e0700
-ffa54aff9932ffa040ff9e3cff9e3c140a00180c00160b001e0f000e0700201000160b00
-160b000e0700201000201000140a002010002010000e0700
-160b000e0700160b00201000160b00160b002e1700160b00201000281400180c00160b00
-261300261300201000140a00201000160b002e17003018000c06002010000e0700160b00
-160b00140a00020100281400160b001e0f00160b001e0f002613000c0600140a00160b00
-180c00140a00160b002010000603002613000e0700180c00160b00201000201000281400
-201000140a002010001e0f001e0f00261300160b002010002010002e17000e0700261300
-261300160b00201000060300180c00160b00160b00180c00160b00201000201000281400
-0201000e07000e07000c0600160b000e0700201000040200201000140a001e0f00160b00
-0e07002010000e0700160b00020100140a001e0f00160b00160b001e0f00160b00060300
-2010002010000e0700160b00160b002010001e0f00180c00160b00281400160b00140a00
-201000160b00140a00261300201000301800201000180c000c06000e0700160b000e0700
-0e0700140a00180c00261300281400180c00201000160b000e07000e07000603000e0700
-2010002613002814000e0700160b001e0f00160b00160b002010002e1700281400261300
-0e0700301800160b002e1700160b002613000e0700160b002010000603000603001e0f00
-261300201000180c00160b001e0f001e0f002010000c0600201000160b000e0700261300
-201000160b00160b002e17000e0700201000180c002010002e17000c06000e0700160b00
-040200201000180c00160b000c06000e0700160b00180c00060300140a00160b00180c00
-180c00261300060300180c002e1700301800ffab56ffa64c261300201000201000201000
-2814000e0700301800ffa54affa1421e0f00180c001e0f00160b001e0f000e0700160b00
-0e0700281400140a001e0f00201000160b00180c000e0700140a00160b001e0f00160b00
-160b00160b001e0f002010000e0700140a00140a00201000160b000e0700060300060300
-180c001e0f001e0f00160b000603000e0700180c000e0700ff9932ff9d3aff9c38ffa040
-180c00ffa64cffa74eff9d3a0603000e07002e17002010000e07001e0f000e07000e0700
-0e07000e07002010000603000e0700140a002010000c06000c06000c06002814000e0700
-1e0f00180c002010000e0700201000301800140a00140a002814000e07000e0700160b00
-060300ff9e3c180c001e0f00180c001e0f00281400180c00160b00301800261300160b00
-261300281400160b00301800261300261300160b002814001e0f000e0700281400180c00
-2010000c0600ff9d3a201000140a00201000160b00201000160b00180c00201000160b00
-180c003018001e0f00381c00201000261300140a000c06000603000e07000e0700201000
-201000060300180c00040200281400ffaa54180c00160b00160b00160b00201000301800
-321900321900301800281400261300281400201000160b00201000201000ffa142160b00
-160b000e07002613000e0700201000160b00020100160b002814000e07000e0700301800
-140a00140a00180c000e07001e0f00140a00261300201000140a00180c00201000140a00
-1e0f00180c00201000160b00140a000603002010000c0600201000140a00201000140a00
-140a000e0700180c000e07001e0f000603003018001e0f002010000e0700020100180c00
-140a001e0f00160b001e0f00201000160b00140a000e0700160b00160b000e07002e1700
-0c06000603000e07002e1700160b001e0f00140a002814000603000e07000e0700160b00
-160b00180c00160b000e07002e1700140a00140a00201000140a00201000180c00180c00
-160b00140a002e17001e0f00201000281400160b00201000281400140a00160b00160b00
-201000140a00160b002e17000603000e0700281400261300160b000c06000e0700281400
-0c0600160b001e0f00160b001e0f001e0f000603000e07000e07001e0f00140a00301800
-060300281400201000140a001e0f000e07001e0f00140a00201000140a00160b00060300
-261300180c001e0f001e0f000e07000c0600201000140a001e0f00140a00160b000c0600
-2e1700160b000e0700060300060300201000261300281400
-060300281400261300040200180c00160b00180c00040200180c00160b000e0700180c00
-160b002e1700201000140a00140a00140a00160b00201000180c00180c002613000e0700
-140a002010000e0700160b00180c00180c00160b00261300140a00201000261300160b00
-2010000e0700201000180c001e0f000e0700301800201000180c002613000e0700140a00
-2010002613002e17003018002010000e07000603000e0700201000201000261300261300
-160b00201000140a000e07000e07000e0700160b002814002e17000c0600281400160b00
-0e0700180c000e07000e07000e07000e0700140a00180c00160b000c06001e0f00261300
-0e07002010000e0700180c00160b001e0f000e0700160b00301800180c00160b000e0700
-140a000e07000e0700160b000e07002010001e0f001e0f002010002613002e17001e0f00
-1e0f00160b000c0600160b00180c00261300140a000603000c06000e07000e0700180c00
-281400160b000e07000e0700160b00180c00160b002010002e17000402001e0f000e0700
-160b00060300180c00160b00180c00160b00160b002613000e07000e07002010001e0f00
-2010002010000e07000e07002613002814000e0700160b00040200060300140a001e0f00
-1e0f00160b00261300261300180c000e07000e07002010001e0f001e0f00160b00160b00
-180c00201000180c00201000201000180c00281400160b000e0700281400281400160b00
-0e0700140a001e0f00261300060300160b00281400160b00160b00160b00180c00201000
-160b00180c002613000e0700140a00ff9e3c160b00160b002010002010001e0f00201000
-2010000c0600301800060300160b00ffaa540e07000c06000e07000e0700140a00261300
-0e0700180c002613001e0f000e0700060300180c00160b002814002010000e0700160b00
-201000160b00201000060300160b000603000e07001e0f00160b00140a00160b00140a00
-160b002010000e0700180c00140a000c0600160b00180c00160b00201000201000160b00
-ffa952160b000603001e0f00140a00261300160b002010000e07000e07000c0600160b00
-0c0600160b000c0600060300160b00140a00140a000e07000c0600160b000603000e0700
-0603001e0f002613000e0700160b002010000e0700160b000e07001e0f00160b00140a00
-060300140a00ff9d3a160b003219002010000e0700020100201000261300160b00381c00
-201000201000160b00180c001e0f00160b00160b002613001e0f002814000e0700160b00
-0e0700201000ffa142160b00160b00140a00020100201000160b00060300321900261300
-0402001e0f000e0700160b00160b00160b00160b00160b000e07001e0f00160b000e0700
-1e0f000e07001e0f00060300201000ff9830261300160b00020100180c001e0f002e1700
-180c00542a00281400201000261300160b00140a001e0f00160b001e0f00ff9b36201000
-0e0700201000160b000e0700140a00160b00180c00201000180c00160b00160b000e0700
-0e07002613001e0f00180c00180c00180c00261300180c000e0700160b00160b00140a00
-160b002e1700140a00160b004221002814002010002010002010001e0f001e0f00281400
-201000180c000e0700160b002010002010000201000e07001e0f00180c00160b001e0f00
-160b00160b000e07002010000e0700180c000c0600140a002010002814000c06001e0f00
-160b00160b00020100060300201000140a000c06001e0f00160b00140a000e0700180c00
-160b000e0700201000160b000e07002e17002814003018001e0f00160b002814000e0700
-201000281400281400140a002613002814002010003219002814000c06001e0f00201000
-1e0f00160b000e0700301800160b001e0f00140a00060300160b00160b00160b00140a00
-281400201000160b000e07000e0700140a00160b00160b002613002010001e0f00201000
-0c06001e0f00180c002010000c0600160b00180c001e0f000e0700160b00060300281400
-261300180c00060300281400201000201000140a00020100060300180c00060300180c00
-1e0f000e07001e0f00160b000e0700281400180c00160b00
-1e0f00160b00160b00180c001e0f00160b000e07000e0700160b00201000160b00201000
-180c00160b00281400160b002010001e0f00261300301800201000140a00160b002e1700
-2613001e0f00140a00281400160b001e0f00160b000e0700040200060300201000180c00
-3219001e0f00160b00160b00160b00040200060300281400261300301800261300201000
-1e0f000e07000e07000e07000c0600180c00160b00140a00180c00180c00060300201000
-2010000e07000e07000e07001e0f00160b000e0700261300160b000e07000201001e0f00
-201000180c001e0f000c0600261300040200180c001e0f000e07001e0f002010001e0f00
-0e0700140a00160b001e0f00020100160b00140a000c06000e0700160b00180c00140a00
-0e07001e0f00160b00040200020100201000201000180c00140a00281400160b00140a00
-180c002613000c0600281400160b00160b00160b002010000c06000e0700160b00160b00
-140a002613000201000c06002613002010000e0700201000180c00140a00160b00281400
-201000180c00180c00160b001e0f00180c00180c00140a002e1700201000180c00201000
-261300201000160b00180c00180c00160b001e0f00140a001e0f00160b000c0600180c00
-140a00201000281400160b00201000140a002613000e07000603002814001e0f00140a00
-281400160b00160b00160b003018002814002814001e0f00160b00160b00180c000e0700
-160b00261300140a000c0600140a000e0700160b002613002010002010001e0f000e0700
-160b002010000e0700261300ffa448160b00281400261300180c002613002814002e1700
-301800140a00160b00160b00201000180c00ff9e3c0e0700201000281400261300180c00
-140a00201000180c001e0f00281400160b00040200180c003a1d00201000180c00040200
-180c00160b00060300180c00281400140a000e07002814000e0700160b00020100020100
-060300140a00160b00160b000e0700201000180c001e0f00201000261300281400060300
-0402000402001e0f000e0700281400140a001e0f001e0f000e07003018000c06000c0600
-201000201000020100160b00160b00201000140a00140a002010000e07001e0f00060300
-2010002814000e0700140a000e0700160b002814000e07000603000e0700140a00281400
-2814000e0700140a00ffa244160b00201000160b00180c00160b00201000281400160b00
-201000140a00160b00180c00180c002e17002010002e17001e0f00201000140a00201000
-201000180c00ff9c380c0600160b00160b00140a002010001e0f000e0700180c00040200
-160b002814002814002613000e07002814000e0700160b000e0700201000180c00060300
-160b002010000e0700160b00020100160b00ff9e3c180c002814002613001e0f00140a00
-2010003219004422005a2d002e17000e07002010000e07000e0700180c000e0700ff9932
-0e07000603002010000e07001e0f002010000603001e0f00180c000e0700281400160b00
-160b00160b00140a002613001e0f00160b00301800201000160b002613001e0f000e0700
-140a00160b000c06000e0700160b00160b00180c002613002e1700160b00160b00201000
-160b00160b00201000160b000e0700160b00160b000e07000603001e0f00160b00160b00
-0e07001e0f001e0f001e0f00301800261300201000140a00321900160b00ffa74effa244
-ffa142ff9932ffa448160b000e0700160b00201000281400140a000e0700160b00281400
-201000201000281400180c00140a00261300160b00160b00201000160b00160b00301800
-281400180c00160b002010002010002e1700281400321900140a001e0f00261300160b00
-160b002010001e0f002814001e0f00040200180c00180c000201003018002010001e0f00
-180c002010000e0700060300140a00140a00160b00180c00160b000e07001e0f00160b00
-160b00140a00140a00201000160b000c06001e0f00160b00160b00180c00160b000e0700
-160b00140a00201000160b001e0f00201000261300140a000e07002e17000e07001e0f00
-160b00140a00160b000e07000e0700160b00261300281400
-160b001e0f00140a00281400201000140a00020100201000201000140a000e0700180c00
-281400160b002814001e0f00140a00160b000201000e0700160b000603002613001e0f00
-160b001e0f00160b00140a002010000e07001e0f00160b000e07000e0700180c001e0f00
-1e0f00201000180c00180c00140a00201000160b002814000e0700180c00160b000e0700
-0e07000e0700180c00180c000e07002613002010001e0f00160b00281400281400321900
-180c00160b00281400140a002010001e0f00160b00160b002613000e0700160b00180c00
-201000160b00321900140a001e0f000e07001e0f002010001e0f00160b00180c00201000
-160b000e0700060300180c00160b001e0f00140a001e0f000c06000e0700201000261300
-0e0700140a00180c00160b00160b00140a000e0700160b00160b00140a00160b00160b00
-160b000c0600160b00201000160b00160b00060300180c000e07002010000c0600060300
-201000281400160b00160b003018000e07000e0700201000160b002010000e07001e0f00
-2814000e0700160b000e07002010001e0f00160b00261300180c002814001e0f001e0f00
-0e07003018000201000e07001e0f000c0600160b00060300140a002e1700140a00180c00
-201000140a00160b000603000c0600180c002e1700180c00261300160b001e0f00160b00
-261300201000201000301800201000140a00261300160b002010000e07002613000e0700
-1e0f002010001e0f001e0f00180c00261300160b00160b00160b00180c00140a00201000
-201000020100201000ffa54a1e0f00160b001e0f00281400281400261300442200261300
-3a1d002e1700261300281400281400281400ffa54a160b00201000140a00140a00160b00
-261300180c001e0f00180c002814000e07000c0600381c00140a00160b00160b00201000
-201000140a002010000e0700201000160b00201000180c003018000e0700261300160b00
-180c000e0700180c002010000603000e07000603000e0700201000140a00160b00201000
-1e0f00180c00140a000c06000c06001e0f00160b000603000e07002010000e07000e0700
-180c00281400180c000e07001e0f000e0700201000160b000e07002010000e0700060300
-160b001e0f00160b002613002613002010001e0f00140a00060300160b00140a00180c00
-160b00060300160b001e0f00ff9d3a0e0700201000201000301800261300160b00201000
-2613002814000e0700261300261300180c002e17000402002010001e0f002613000e0700
-140a00ffa142201000180c00261300140a00160b002613000e07000e07000201001e0f00
-201000301800301800060300281400281400160b001e0f002814000603000e0700140a00
-1e0f000e0700140a000603001e0f00140a00ff9e3c160b000e0700160b00140a00201000
-1e0f00201000301800180c00201000301800180c002613001e0f00180c00ff99320c0600
-160b00281400160b001e0f002613001e0f00201000160b00261300180c00160b00261300
-160b002613000e0700281400301800180c00140a000e07000e07002613001e0f00180c00
-0e07001e0f002814002010000c0600160b000603001e0f002814000e07002010001e0f00
-160b002010002010002010001e0f00201000060300201000140a00160b00180c000e0700
-0e0700180c00180c00140a00180c00140a00201000040200ff9932ffa040201000160b00
-0c06000e07000c0600ff9c38ff9d3a180c001e0f00160b001e0f002613000e0700281400
-160b00201000201000140a000e0700140a000e0700180c001e0f00180c000e0700201000
-2814001e0f000e0700180c002613002010002010002613003018003018002010000e0700
-201000180c00180c00261300160b001e0f00060300180c00060300281400160b00160b00
-201000180c00020100060300160b00140a00020100160b00140a00160b00160b00140a00
-0e0700140a00160b000e0700281400160b00140a000e0700160b00140a00180c00160b00
-180c00180c00160b00160b00261300261300140a002010002010000e0700040200201000
-160b001e0f00160b00201000201000160b00201000261300
-201000201000201000180c00180c00180c001e0f000e0700281400160b00160b00160b00
-0e0700160b001e0f00140a001e0f00180c00301800140a003018002613000e07000e0700
-1e0f001e0f00261300160b000e0700201000160b00160b00060300160b00160b00180c00
-0c0600160b000e07001e0f00140a00160b00180c002010002e1700160b00060300180c00
-201000160b00140a00160b00180c00201000281400180c00160b00180c00180c00261300
-140a002010000e0700160b00160b00160b001e0f001e0f000e07000603000e07000e0700
-1e0f00140a000c0600160b000e0700201000160b00060300160b002814001e0f00040200
-060300160b002e1700281400160b000603002814000c06000e0700160b001e0f000e0700
-180c00281400160b00180c001e0f00201000180c00160b00160b00160b002010002e1700
-180c00180c001e0f00201000180c00160b00160b000603000c0600160b001e0f000e0700
-2814000e0700140a00281400180c001e0f00201000160b00281400281400201000060300
-1e0f002010002613000603003018000c0600160b002010002010001e0f00180c00201000
-160b002010002613002010002010000c06002814000e0700140a00160b00160b00201000
-0e07000e07000c06000e07002010000e0700060300ff9e3cff9d3affa952281400140a00
-ff9b36040200140a001e0f00160b00281400281400060300201000160b00140a00201000
-160b002010000e0700201000180c00180c00060300160b00201000160b00060300160b00
-160b00180c00180c00ffa448160b00381c004422002814004221004020003a1d005a2d00
-4a2500422100261300201000201000160b00ffa9522613000e0700160b00180c00140a00
-160b002613001e0f00201000160b00180c00261300140a000e0700201000201000201000
-160b000e07002814000c06001e0f00180c000c06000c0600040200160b001e0f00160b00
-020100160b00160b000e07001e0f00160b00160b00201000160b000e0700180c000e0700
-0e07002010001e0f00281400201000180c002010000e07001e0f00180c00140a000e0700
-0e07000e0700140a000e07001e0f00140a000603002010002010001e0f000e0700180c00
-201000160b001e0f00180c00140a001e0f00140a000e07000e07000603001e0f00180c00
-3018000e0700201000060300060300ff9b36140a00160b00201000180c00160b00160b00
-281400160b00201000180c00180c00160b00160b00201000160b00060300180c00201000
-160b00ff9932180c00140a00140a00160b00180c00160b00140a000e0700160b000e0700
-160b00140a001e0f002010000e0700140a000c0600160b00180c00060300140a001e0f00
-180c00160b00261300140a001e0f00180c00ffa040201000281400140a00160b000e0700
-160b00201000180c001e0f00281400261300201000140a002613000e0700ffa1421e0f00
-140a002010001e0f00160b00201000160b001e0f00281400301800140a001e0f00281400
-0e07000e07001e0f000e0700060300180c00160b00160b00261300160b00201000140a00
-160b00281400160b002814002814001e0f00180c00140a00180c00261300301800201000
-2613001e0f002010002613001e0f00160b000e07002010003018001e0f000e07000e0700
-1e0f000e0700160b000603001e0f00180c00140a00140a00060300301800180c00281400
-201000160b002814000c0600201000ffa64c0e0700261300140a00160b00180c001e0f00
-060300180c00261300261300140a00160b000e0700140a00180c002e1700261300261300
-301800201000160b00160b000c0600160b00180c00160b00160b00160b001e0f00261300
-180c002e1700140a00160b002010001e0f00160b000c0600160b00180c00201000160b00
-1e0f00160b00140a00160b001e0f00180c00140a00180c00180c000c0600261300160b00
-180c00140a000402000e0700201000020100180c001e0f00160b00160b00160b00180c00
-0e07000e0700160b002010001e0f000e0700040200160b00140a000e07000e0700160b00
-2814002010002010000e07002e1700160b000e0700201000
-261300201000201000140a002e1700040200201000201000201000160b00160b00281400
-0e0700160b00180c00201000201000180c00060300281400180c00160b00160b00201000
-160b00140a000e0700180c00180c001e0f00180c000e0700140a00140a00160b00201000
-160b00281400160b000e0700201000180c00201000281400160b00201000180c00180c00
-060300160b000c0600140a00180c00180c000c0600201000160b002814000e0700261300
-180c002613000e0700281400180c002613000e07000e0700140a00160b00180c00201000
-1e0f000402001e0f002e17000603002010000e0700201000160b00201000160b000e0700
-060300180c000e0700020100140a00160b000e07001e0f002010000c06000c0600140a00
-0c06000e07000e0700201000201000060300180c00140a002010001e0f001e0f00160b00
-0e0700160b001e0f000e0700180c000603002e1700180c00160b00140a00180c001e0f00
-281400201000140a00160b00201000160b000c0600160b000e0700160b00140a00140a00
-060300201000261300281400180c00160b00160b002010002e17002e1700301800180c00
-1e0f00160b00160b00140a000e0700160b00180c00160b00140a00160b00160b00201000
-2814001e0f000e0700ff9e3cff9e3c180c000c0600281400060300281400261300201000
-0e0700ffa952ffa64c201000261300160b002e1700020100160b001e0f000e0700281400
-301800201000160b00201000201000261300160b000e0700140a000e0700160b00201000
-160b00140a00ffa142261300040200201000281400321900422100542a006e37008a4500
-5c2e004221003018002814002e1700160b00160b00ffa040261300040200140a00180c00
-0201000e07000c06000e0700201000140a00020100140a002010002613000c0600201000
-160b00060300160b000e07000e0700180c00180c00160b002613000e07000c0600281400
-160b00160b00180c00140a00140a000e0700201000060300201000160b000e0700201000
-1e0f00160b00201000160b000e0700060300160b000e0700180c00140a00160b00160b00
-2010000e0700201000140a001e0f000e0700180c001e0f000c0600160b00201000020100
-160b000c0600160b002613003018000e07000e0700180c00140a00180c00281400160b00
-160b00201000261300180c00301800140a00ff9830ff9932180c001e0f00281400261300
-180c002010001e0f00160b00160b000e0700201000201000180c002010000e0700201000
-ff9c380e07002814000603000e0700180c00180c00201000160b000e0700140a001e0f00
-281400160b00180c00140a00180c001e0f00261300160b001e0f00160b00160b00261300
-180c000603000e0700180c00160b00180c001e0f00ff9d3a180c00301800201000261300
-180c00180c002814001e0f001e0f001e0f00180c00160b00201000180c00ffa244281400
-0c0600160b00160b00180c000c0600180c00201000180c00060300180c00160b00201000
-160b00261300201000140a003018000e0700160b00160b001e0f000e0700160b000e0700
-060300180c000e07000e07001e0f00281400201000180c00281400261300201000060300
-2010001e0f00160b001e0f00140a00060300160b00180c00281400140a00160b00140a00
-2010000e07002814002010001e0f00281400180c00ffa54a2010003018001e0f00160b00
-3018002010002010000e0700160b00201000ffa244140a00140a000e0700160b00160b00
-201000160b002814002010002613000c0600160b00180c002814000e0700201000201000
-160b00160b00060300160b000e0700281400140a003018000e0700160b00140a001e0f00
-160b00060300180c000e0700261300201000140a000e0700160b000e0700140a00201000
-0c0600060300060300160b00160b00020100160b000e07000e0700140a00180c000e0700
-160b001e0f000e0700160b002010000e0700180c00140a00160b000c0600160b00261300
-180c002010001e0f00201000040200261300160b00160b000e07002e17002010002e1700
-160b002010000c06001e0f002010002010002010000c0600
-261300180c000e0700160b00261300160b000e0700140a00201000060300060300160b00
-180c00140a00301800160b00201000160b00160b001e0f002613000c06001e0f001e0f00
-201000180c001e0f000e0700201000140a00160b00180c00261300060300160b000e0700
-1e0f000e07000e0700160b002e17001e0f00160b00160b00160b00160b000e0700201000
-060300201000261300140a00160b00201000160b00261300140a00261300261300160b00
-281400301800060300140a00261300180c00180c000e0700140a00201000160b00160b00
-140a00201000321900160b00040200180c00201000160b00140a000e0700201000201000
-160b000603001e0f00040200261300160b00160b001e0f00281400180c000e0700180c00
-0e0700180c000e0700160b00140a00180c00201000201000180c00160b002613002e1700
-0e0700160b00160b00201000160b002010003018002613002e17000c0600180c00201000
-2613001e0f000603001e0f000e0700040200160b00180c00180c00281400160b000c0600
-160b00160b000e07002613000e07002814001e0f002814002814002814002010000e0700
-180c00180c00160b00160b000e0700160b000c06002613002814000c0600160b00160b00
-1e0f002010001e0f00201000281400160b00201000201000180c002010002e1700281400
-0e07000e0700160b002613001e0f00ffa4482010002010002010000603001e0f00180c00
-140a00180c00201000160b000e07000e0700160b00140a00160b00160b00160b00160b00
-2613001e0f00ffa244160b001e0f00160b002814003a1d00542a008040009e4f009a4d00
-763b005a2d003018003a1d002010002e1700140a00ff9e3c140a000e07000e07001e0f00
-1e0f000e0700140a001e0f00281400160b00201000321900160b00060300160b00261300
-160b00060300160b00180c00160b001e0f00060300160b000c06000e0700180c00060300
-1e0f001e0f001e0f000e0700160b000e0700180c00301800160b00160b00160b00180c00
-2010001e0f001e0f000e0700160b00160b00160b00160b000e0700160b00140a00201000
-160b00201000180c00160b000e07002010000e0700261300201000180c000e07001e0f00
-0e0700180c00160b001e0f000e0700180c00180c000e0700201000201000140a00201000
-180c001e0f00180c002e17001e0f002814002010000e0700ff9932ff9d3a180c00281400
-180c001e0f001e0f00140a002613001e0f001e0f00261300201000160b00ff9d3affa040
-180c002010000e07000e07000e0700201000180c00160b00040200140a00201000ff9c38
-ffa244160b00ffa244ff9d3a160b000e07000e07000e0700180c00180c00140a000e0700
-140a00160b00020100180c000c06000e0700160b00201000ffa64c0c06002814000e0700
-2010002e1700160b00140a00201000201000180c00140a001e0f00ff9932060300140a00
-140a00160b00160b00301800160b000e07001e0f00160b00201000201000180c00180c00
-1e0f00160b00160b000e0700160b00180c00301800281400140a00140a002010000e0700
-281400160b00180c00201000160b000e07000c0600160b00180c00201000060300180c00
-180c00160b00180c000e0700140a00201000160b00160b000e0700140a00201000180c00
-201000160b000e0700261300060300160b00ff9b360e0700140a002814001e0f001e0f00
-2613002814002010002010001e0f000e0700201000ffa142160b00180c00180c00140a00
-160b00140a00261300201000160b000603000e0700201000261300281400180c000e0700
-060300201000261300160b002010000e0700140a001e0f00160b001e0f00261300281400
-0c06000e0700140a00160b00180c000e0700180c001e0f00160b00140a00201000160b00
-160b00180c00160b00140a003018000c0600180c00140a00201000261300160b00201000
-0603001e0f00180c00160b00160b00160b00160b002010003018001e0f00180c00040200
-0e07001e0f002613002814001e0f000e07000e0700180c00160b002613000e0700060300
-160b00160b00201000160b00160b00180c000e0700201000
-160b00140a001e0f000e0700060300261300261300140a00201000160b00160b000e0700
-2010000e07001e0f00180c002010000e0700160b00160b00140a00160b00201000160b00
-0e07000e07000e07002010002613000e0700160b00301800201000201000140a00201000
-2010002010001e0f000e0700140a000e07002613001e0f000603001e0f001e0f00180c00
-140a00201000140a000e0700261300180c00180c00201000180c002010000e0700180c00
-160b00140a00180c001e0f00180c00201000180c00160b00160b00201000060300201000
-160b000e0700201000160b001e0f001e0f00060300060300160b00140a000e07000e0700
-0e07000e07001e0f00060300281400301800160b002e1700160b00160b000e07001e0f00
-160b000e07000c0600140a00140a00160b00140a00180c000e0700160b00281400160b00
-2814000e07001e0f00180c00160b000603001e0f00060300281400201000180c000e0700
-180c00140a002010000c0600160b00040200261300180c00140a002010000e0700261300
-2010001e0f00180c000e07002613001e0f002010002814001e0f003018001e0f00201000
-201000301800160b00160b00201000160b001e0f000402000402000c0600160b00201000
-ff9932261300301800180c00201000160b00160b00261300281400301800281400201000
-2814000e0700180c000e07002010002e1700ff9b360e0700160b00180c00261300201000
-140a00140a000e0700180c00281400160b001e0f000603001e0f000e0700060300140a00
-2010000c0600ffa448160b00160b002814003018003a1d005c2e00763b00864300884400
-763b00542a002814003018002814000e07000e0700ffa54a160b00160b00160b00140a00
-1e0f00281400140a00020100160b000e0700281400160b001e0f00281400040200160b00
-0e0700160b00160b003018001e0f000e07002814002010001e0f00201000160b00040200
-160b000e07000c06000e0700180c00160b00160b002010001e0f000c0600261300201000
-180c00160b002010000c0600160b003018001e0f003018001e0f00281400281400261300
-201000281400180c00201000180c002010000e07002814003018000e0700160b00020100
-2613000e0700160b000e07002e17000603002613001e0f000402000e07001e0f00180c00
-160b001e0f000e07000e07001e0f00201000261300160b00160b00261300ffa448ffa64c
-ffa040160b00140a00180c00020100060300160b00160b00ff9e3cff9c380e0700020100
-0c0600301800201000180c00180c002613002814000c0600180c00ffa142060300160b00
-0c0600281400160b001e0f00201000ffad5a2814002010002010000603002010000e0700
-2010002010000e07000e0700201000140a00160b00160b00060300ffa54a2010000e0700
-160b00160b00160b00201000201000160b00281400160b00060300ff9c381e0f001e0f00
-160b002814001e0f00261300180c00160b00160b00261300140a001e0f000e0700201000
-0c0600160b00201000160b00180c00160b00201000160b00180c001e0f00040200160b00
-281400140a001e0f002814002010000e0700180c00140a00140a001e0f00060300180c00
-201000140a002814000e07000e07001e0f00180c00160b00261300261300140a00140a00
-2814000e07002814000402002010000e0700ff9e3c140a00180c00261300301800201000
-422100281400281400201000281400160b00201000180c00ff99322010000e07000e0700
-160b00201000180c00281400160b00180c002010002010001e0f001e0f000603000e0700
-261300201000281400281400261300180c00180c00201000281400140a001e0f00140a00
-180c002613002010000c06000c06000e07000e07002e1700060300160b002010000c0600
-060300180c000603000c0600160b00281400140a001e0f000c0600160b00180c00261300
-281400160b00201000160b001e0f000e0700160b00060300140a001e0f002010000e0700
-140a001e0f000e07000e07002e1700160b00160b00160b00281400160b00261300261300
-201000261300060300160b00160b00180c00040200261300
-0e0700201000180c00040200261300180c00160b002010001e0f00140a00160b00140a00
-0e0700180c00201000201000180c002010001e0f00160b000e0700261300160b000e0700
-1e0f00281400160b00160b00060300140a00281400160b000e07000e07002814000c0600
-140a00301800140a00160b000c0600281400160b000e0700140a00160b00160b00180c00
-0e0700140a00160b00201000160b00160b00180c00160b00160b00160b000e0700160b00
-180c00140a00301800160b000e0700201000180c000e0700140a00180c000c0600180c00
-0e0700160b001e0f00160b000e0700160b000e07000c06002814001e0f002814001e0f00
-160b00180c00160b000e0700180c00020100060300201000201000160b000e0700060300
-201000160b00201000180c00060300160b00201000201000180c00281400160b00140a00
-180c00261300180c002010000c06002010001e0f00160b000e07000e0700160b00140a00
-0c06002010002613002e1700160b00261300381c000e07000e07000e07000c0600060300
-201000201000160b00060300281400160b001e0f00281400201000160b00180c00201000
-180c002010001e0f00160b00140a000e0700180c00261300180c000c0600180c00ffa64c
-160b00201000180c002814002010001e0f002010002010002e1700381c00261300381c00
-2010003018003018002010001e0f002010001e0f00160b001e0f000e0700281400281400
-281400140a000e07002010000e07000e0700060300201000160b00160b002e1700281400
-0c0600020100ff9c38160b002814002814002e17003018004c26004a25005a2d006c3600
-5c2e004a25003a1d003018000c0600281400301800ffa0400e07000e0700201000261300
-160b000e07002e17002613001e0f002814002010002613000e0700160b00160b00261300
-201000160b00160b00140a00140a00180c002613001e0f000c06001e0f00140a00040200
-201000160b00201000160b002814001e0f00160b000e0700160b00160b00201000160b00
-1e0f002814002010002010000e0700160b002010000e07002613001e0f000c0600160b00
-2010002010002010000e0700160b00201000160b00281400261300180c000e07001e0f00
-2613002613001e0f00160b00140a00160b00160b00281400180c000e0700160b00140a00
-180c00180c001e0f00140a000e0700180c00160b000402000e07000e07000c0600180c00
-160b00ffa448ff9e3cff9d3aff9c38ffa244ff9e3cff9830160b00160b000c0600301800
-2814001e0f00060300160b00140a00140a00180c00160b00261300160b00160b001e0f00
-0e07000603001e0f000e0700180c000e07000c06001e0f000c06000603000e0700180c00
-301800281400140a00160b00160b002010000e07001e0f00160b001e0f00ff9830201000
-140a002e1700261300160b002010000e0700160b00281400ffa142160b00261300201000
-0201000e0700140a00160b00160b00160b00201000321900160b00160b00040200201000
-1e0f00140a000e07000c06001e0f000e0700160b00140a00160b00160b00180c00160b00
-2010001e0f00180c000e0700140a00160b00201000281400261300140a00160b000e0700
-2814000e0700180c000c06001e0f002814002010000e07001e0f00160b001e0f00201000
-160b000e0700140a002e17000e0700160b00ffa040201000140a000e07003a1d002e1700
-2e1700381c002814002010002e17002814002814002e17001e0f00ff9d3a140a00160b00
-160b002814000603000e0700180c00180c00140a00140a00261300160b00261300160b00
-201000160b00160b00201000201000160b00020100140a00201000160b000e0700201000
-2010002814000603000c0600160b003018002010000603002814000e0700201000201000
-160b00381c00180c002010000e0700140a001e0f000e0700180c00201000402000160b00
-060300180c00160b000c06000c0600ff9932ff9b36ff9830ffa64cffa142ff9932160b00
-160b002010001e0f001e0f00180c000c0600261300020100201000160b001e0f00140a00
-201000140a002613000e0700140a003018001e0f00301800
-2010000e0700201000261300160b002010002010000402002814002613001e0f00281400
-140a00160b001e0f000e07001e0f000603000c0600201000180c000e0700180c00060300
-2010000c0600201000160b00201000180c00160b003018001e0f00160b001e0f00140a00
-0603000603002010000e07002613001e0f002010001e0f000603001e0f000c0600180c00
-180c000603000e0700140a00201000140a00281400160b00140a00201000201000160b00
-140a001e0f00201000180c001e0f00160b00060300140a000e07002e1700180c00060300
-0e07000e0700201000160b00140a001e0f001e0f00060300281400201000201000140a00
-140a00140a001e0f000e07002010000e07000e0700140a000e0700020100201000160b00
-140a00201000281400201000201000140a00160b00160b002613000e07000e0700201000
-160b00201000180c00281400180c000e0700281400160b00140a002814000e0700160b00
-2613000e0700160b00160b002814000603000e07001e0f000e0700201000160b000e0700
-201000140a00180c00160b00040200160b00201000301800201000281400160b00020100
-180c00060300160b002010002010000e07000603000e07000e07001e0f00301800140a00
-160b000e0700160b002814002e17001e0f002010003018002613003a1d00301800381c00
-3018002814002814002e17001e0f001e0f000c0600281400ffa54a201000160b00201000
-160b00160b000e0700140a00160b001e0f000e07000e07002010000e0700180c00160b00
-2010000e0700ffaa54160b00201000180c002e17003a1d00402000402000542a00542a00
-422100321900160b002010003018002e1700ff9c382e1700201000180c001e0f001e0f00
-0603001e0f000e0700060300160b00160b00201000160b00180c001e0f00160b001e0f00
-1e0f000e0700160b002010003219002010000e0700140a00201000301800281400201000
-2010002814000c0600180c00140a003018002010000e07002010001e0f00201000201000
-1e0f002010002010002814002010000e07000c06000c06000c0600180c000e0700160b00
-180c002613000e0700160b000603000e0700160b00140a00261300180c00180c00281400
-2010000c06000e0700180c001e0f00160b00160b00201000160b00160b001e0f00060300
-0e07000e0700201000160b000c0600140a000c0600281400060300160b00060300160b00
-160b000e0700201000281400140a00180c000c06000e0700180c002010000e0700140a00
-0e07002010000e07000c0600160b00140a000e0700ff9d3a301800160b00180c00180c00
-1e0f00201000160b002e17003219000e0700140a000c0600ffa448180c00140a00160b00
-2010002010002814000e0700160b000c0600301800140a00160b002010002e1700ff9932
-ffa244ff9b36180c001e0f00160b00ff9e3cff9c38ffa040281400281400160b00160b00
-1e0f00140a00180c002613000e0700160b00160b002e1700281400301800281400180c00
-180c001e0f00180c002e1700201000201000261300160b000e0700160b00381c00140a00
-0e0700180c002613000e07000e0700281400180c00160b00160b001e0f00060300201000
-180c00160b00201000140a000603000603000c06001e0f002613000c06001e0f00160b00
-0c0600140a00201000160b001e0f00201000ff9d3a160b001e0f00281400201000301800
-542a005c2e004020004a25002e1700281400321900261300261300ffa74e281400281400
-0e0700160b00160b00060300020100160b001e0f00160b00160b000c06000e0700201000
-140a001e0f00160b00201000180c000e07001e0f000e0700180c000402002e1700381c00
-2814000e07000e07000e0700201000180c000201000c06000c0600180c000e07000e0700
-261300180c00180c00160b00160b000e07001e0f00160b002010002010000e0700180c00
-0e07001e0f001e0f00ffa142ffa2441e0f00160b001e0f000e0700180c00201000ffa040
-ffa142140a00261300281400160b001e0f001e0f003018000e0700180c000e0700160b00
-261300140a000e07001e0f00140a00201000160b000e0700
-140a00261300060300281400160b00160b000603001e0f00160b002814000c06001e0f00
-140a000e0700160b000c0600160b002010000e0700160b000e0700180c003018000e0700
-1e0f002010000e07000e07000402002010000201001e0f00160b00180c000c0600160b00
-201000180c00140a000e0700140a000e07001e0f00160b00160b000c0600180c00180c00
-0e0700160b000e0700160b000c06002613002010002010001e0f00160b00201000140a00
-180c000603001e0f00160b00180c002010000e0700160b00281400261300261300160b00
-140a00261300160b00140a00281400160b00140a00301800180c00201000281400160b00
-261300321900180c000e07001e0f00160b000e0700160b000e0700160b00160b000e0700
-0e0700140a002010000c0600281400160b00261300261300160b00160b00201000261300
-160b00160b00160b001e0f000c0600160b00160b002010002010002010000603000c0600
-160b00180c00140a002e17000e0700261300160b002613000e0700160b002613000c0600
-180c00140a001e0f000603000c06000e07000e0700140a00160b00160b000e0700160b00
-2613002010002613002010001e0f00140a00060300201000160b00180c00201000060300
-0e07002613002010002613001e0f002e17004020003a1d005a2d00542a003a1d003a1d00
-3a1d003a1d003a1d004221002e17001e0f00201000281400180c00ff90202010000c0600
-2814001e0f00160b00201000140a00140a00201000261300160b00160b001e0f00201000
-2010000e07000e0700ffa2441e0f00201000301800281400381c003219002e1700381c00
-3a1d00160b00201000281400201000201000ffa0403219002613000e07002814001e0f00
-0e07000e0700140a00160b002010000e07000e0700160b000402000e0700201000160b00
-201000140a002613000e0700180c00160b00180c00201000201000281400160b00160b00
-160b000e0700180c00180c000201000c0600160b00261300281400261300261300180c00
-2010001e0f000603000c0600140a001e0f00180c002814001e0f00160b00160b00201000
-160b002814002010002613002613000e0700180c00261300261300160b002613001e0f00
-180c002010001e0f00180c00160b00180c00261300160b000c0600301800301800180c00
-2010000c0600160b001e0f00180c001e0f00201000160b00180c00060300160b00261300
-160b000e0700281400281400201000160b001e0f00160b000c0600281400281400140a00
-1e0f000e0700281400201000140a00160b002010002010000e07002010000e0700020100
-160b00180c000e07002814002814002814001e0f00180c000e0700140a001e0f001e0f00
-1e0f00281400140a00180c000e0700180c001e0f000c06000e07000603000e0700201000
-1e0f001e0f00ffa54affa448ff9932160b001e0f00160b00180c000e07000c0600160b00
-180c00160b00140a00201000201000140a000e0700180c00140a00201000060300180c00
-160b00160b00160b00160b00180c00140a00140a000c06000e07000c0600201000160b00
-2613000e07001e0f00140a002010002e17002010000603002613002010002613001e0f00
-160b00160b002010001e0f00160b00180c00180c00180c000e0700160b00160b00180c00
-0e07002010002010001e0f00140a000e0700ffa1422010001e0f00201000281400422100
-4a25003a1d005229003a1d003a1d003219002814001e0f00160b00140a00ffa4480e0700
-2010000e0700160b001e0f000c06002814000e0700160b00160b002613001e0f001e0f00
-020100201000140a00201000160b00201000201000281400160b00201000160b00140a00
-160b00160b00160b002814002814000e0700201000201000201000201000160b00160b00
-201000180c00160b000e0700180c000e07000e07000e0700180c000603000e0700261300
-160b00160b00ff9e3c0e0700281400201000160b00160b00140a00201000261300180c00
-1e0f00ffaa541e0f00201000281400201000301800160b001e0f00160b00160b00201000
-1e0f00060300160b002010001e0f000e07002613001e0f00
-381c00160b002010000c0600160b00281400160b000e0700160b00201000201000180c00
-160b00301800180c00201000160b00060300160b00160b00261300140a002010000e0700
-0e0700160b00060300180c000e07001e0f00160b00160b00160b000e07000603001e0f00
-160b000e07000e07000c06000c06002613000201000c06002010001e0f00160b00060300
-0e07000c0600160b00140a00040200160b002010000e0700160b001e0f000e0700060300
-1e0f00160b00140a00160b00201000160b00261300160b00160b000e07000e0700140a00
-020100201000201000160b002010001e0f00201000261300040200201000180c00261300
-201000060300180c002010000603001e0f00160b000c06000e07000c0600180c00201000
-1e0f00281400261300160b00201000160b002e1700140a00281400140a000c06000e0700
-160b002010000e0700180c000e0700160b00140a00140a00261300180c000e07000e0700
-1e0f002e17000c0600060300160b00140a002010001e0f00180c00180c00201000160b00
-0402000201000c0600201000180c00140a001e0f00140a000e07002814000603001e0f00
-160b00060300160b001e0f000e07002613002e17000e0700160b00ff9e3c261300160b00
-160b001e0f002e1700381c003a1d003018003a1d005e2f004422004c2600542a00542a00
-4a25004422004020005229003018002814002613002814002613002010000e0700261300
-140a002010002613000e0700060300160b000c06002010001e0f000603000e07000e0700
-160b00160b00060300ff9932261300201000281400281400140a00201000281400261300
-3018002e1700201000261300180c00ff9c38281400201000180c000402000e0700140a00
-0603000c0600140a001e0f00261300160b00160b00160b000e0700160b000c0600180c00
-0e0700180c00040200160b00160b002010001e0f000e0700201000160b00301800261300
-281400301800201000180c00180c00201000160b002e17000e07002613002e1700201000
-281400160b00160b001e0f00180c00060300140a001e0f002e1700060300140a00180c00
-201000140a00180c00261300281400140a00060300201000180c002010001e0f00281400
-1e0f00140a00281400160b00201000201000160b00180c00201000201000201000060300
-0e07000e0700160b000603000e07002010000e0700140a00140a00180c00201000281400
-160b00201000301800201000060300180c00140a00201000140a002613001e0f001e0f00
-0603000e07001e0f00201000160b001e0f00ffa1420e0700140a001e0f002010001e0f00
-160b002010001e0f000c0600201000160b001e0f002010000e0700ff9b362814000e0700
-201000180c00160b002e1700201000160b00160b001e0f000e0700160b00160b00180c00
-160b002010000e0700180c00160b000603000e07002010000e07002613001e0f00180c00
-281400060300160b001e0f000e07000e07002010002613002613000e0700140a001e0f00
-3a1d002010000603002010002814002613000e07000c0600160b000c0600301800201000
-160b000e0700261300160b00281400180c00160b00180c001e0f00201000160b00160b00
-020100201000261300160b00180c002010000603001e0f002010000c0600281400160b00
-0e0700180c001e0f000e07000e0700160b00ffa54a0c06001e0f00301800281400301800
-5c2e006432005e2f00542a002e1700281400201000381c00301800201000ffa64c261300
-180c00180c00281400160b002613000e0700160b00281400140a00160b001e0f00140a00
-180c00140a002814002e1700160b00281400160b00160b002814000e07001e0f00020100
-0c0600281400201000180c002010000c06000e0700160b00201000180c00140a00160b00
-140a000e0700140a00201000201000180c00180c00180c00201000160b00281400160b00
-261300ff9e3c160b001e0f00160b003018002613002814002010001e0f00261300201000
-180c00140a00ff9e3c201000201000160b00180c00180c00160b001e0f00261300180c00
-0603002e17002010000c06000e0700261300281400160b00
-160b00201000160b00060300140a002814002010001e0f00160b00201000281400281400
-0c06001e0f002e1700140a00201000301800140a00201000160b001e0f00140a000e0700
-261300180c00160b002010001e0f00020100160b00180c00201000160b001e0f00160b00
-0c0600160b00160b001e0f00060300160b002814000c06000e0700140a000201000e0700
-140a000e07000c0600160b000c0600160b00140a00140a001e0f000e07000e0700160b00
-0603003a1d00180c002613001e0f00160b00140a00180c002010002e17002613000c0600
-180c002814001e0f002010000e0700160b000e0700180c00201000201000160b00160b00
-201000261300160b00201000140a00180c00160b000e07001e0f00160b00201000140a00
-140a00140a00261300160b00180c000e0700180c00140a00201000201000201000180c00
-281400301800160b00180c00160b002010002010001e0f00180c00180c00281400201000
-0e07002010000e07001e0f00180c00261300201000060300140a000603000e0700160b00
-201000160b000e0700140a000e0700180c000e07000c0600060300201000281400160b00
-0e07000e07000e07001e0f00180c00180c000603002e1700180c00ffa4480e0700201000
-281400301800381c002e1700301800381c00542a00542a00542a008844006432006e3700
-6c3600643200542a004c26003a1d00321900201000301800301800281400160b00201000
-140a00160b00301800160b00160b00201000180c00160b00160b00160b00201000180c00
-2e17001e0f00180c00060300ffa040160b000e0700180c003219002814003a1d00160b00
-201000180c000e0700160b00ff9d3a0c0600281400160b00140a00180c00180c000e0700
-1e0f00160b002010000402003018000e07002010000201000c0600261300160b00201000
-180c002010000e0700261300180c001e0f001e0f00180c00180c001e0f001e0f00140a00
-180c00140a00160b001e0f00040200180c000e07002814002613001e0f00180c00160b00
-180c001e0f001e0f002613002814001e0f00180c00281400160b002814001e0f00201000
-3018003018002010001e0f00160b000e07002814002613001e0f00201000140a00281400
-261300261300180c00201000281400160b001e0f002010000c0600201000180c000e0700
-281400160b00060300281400140a000c06002814002e17000e07000e0700180c00160b00
-201000160b00180c00040200140a00040200301800160b002010000e0700180c00281400
-180c000402002814000e0700160b00201000140a000c0600180c00201000060300160b00
-3a1d003a1d003a1d00301800160b002e17002010002010000e0700ffa040201000201000
-2814001e0f000c06001e0f002010002814000e0700180c002010002010001e0f00160b00
-140a000e0700201000201000160b00140a00180c00261300160b000e07001e0f000e0700
-020100180c00281400160b00160b002010002010001e0f00160b002010001e0f00261300
-0e07000e07000e07000e0700160b000e0700160b00160b002814001e0f001e0f00201000
-1e0f00160b00180c001e0f00201000201000140a001e0f00140a00160b002814000e0700
-0e0700201000180c002e1700180c00201000140a00201000160b00140a002e1700140a00
-2010001e0f000e07000e07002814000e0700ffa9522010002010001e0f002814004a2500
-4a2500542a005c2e005c2e00542a003a1d00180c00261300301800180c000c0600ffa040
-0e07000c06000e0700180c00201000160b000e0700281400160b000603000e0700160b00
-0c0600140a00160b000e0700160b00140a00180c002010000e07000e0700140a001e0f00
-0603002010000c0600180c00180c00160b002010000e0700201000180c00180c001e0f00
-0e0700140a002010001e0f002010002010000e0700140a001e0f00060300140a001e0f00
-201000ffa54a140a00201000160b00261300160b00301800160b000e07001e0f00160b00
-3018000c06000e0700ff9d3a180c000e07001e0f00160b00261300281400040200160b00
-201000180c002010000603000e07002010000c06001e0f00
-0e0700201000261300180c00160b002814002814002010001e0f002814002613001e0f00
-160b00301800201000201000301800201000201000201000140a00301800160b00201000
-140a00281400060300160b00140a000e0700160b00180c00160b00180c00180c000e0700
-160b002010000e07000e07000e07002010000c06000c0600160b000e0700160b00060300
-160b000c0600261300160b002613000c0600201000140a00160b00140a00180c00020100
-1e0f000e07000e0700160b00160b002010002814002814000e07002814002814000e0700
-160b002613002814002010003018002010000e07000e0700180c00201000160b000e0700
-140a00180c00140a00180c00180c00140a00281400180c00201000160b00160b00180c00
-180c00201000140a00160b00160b00281400180c00281400180c002010001e0f00180c00
-201000180c002010002010000e0700180c00180c001e0f002613000c06000e0700060300
-0e07001e0f000c06000e07000201000c0600281400160b001e0f00160b001e0f00140a00
-160b000e0700160b002613002010001e0f00201000180c00160b001e0f00160b00060300
-1e0f00140a001e0f00140a00160b00180c000c0600160b00261300180c000e0700281400
-3018002814004221002e17005c2e00542a007038008040008a4500ac5600a45200b25900
-8a45006e37006c3600542a005229002e17002e17003018002010002613000e0700ffa142
-140a00281400160b000e0700140a000e0700201000140a00140a000e07001e0f00180c00
-160b001e0f00180c00160b00201000ffa2442010002010001e0f002613003018001e0f00
-0e0700140a00ff952affa4480c0600160b000e07000c06002613000603001e0f000e0700
-261300140a00140a001e0f00261300180c000e07001e0f000e0700160b000e0700261300
-160b000603002e17000e0700140a00281400281400201000040200201000160b00160b00
-2010002010001e0f00201000201000201000160b00261300201000160b002010000e0700
-160b00160b002010000e0700160b001e0f002010002010001e0f00201000160b00180c00
-180c00160b002814002010002e17000c0600160b00180c00180c002613001e0f00160b00
-160b000c06001e0f00180c001e0f000e07002010002814000e0700140a00060300160b00
-0e07000e07002010001e0f00201000160b000e0700160b00140a001e0f001e0f001e0f00
-160b00160b00160b00140a00281400140a002613000201000e07000603000e07001e0f00
-180c00160b00180c000603000e0700281400160b00160b00060300180c002613001e0f00
-4221003219003018003a1d00201000201000201000180c00140a00301800281400060300
-160b000e07000e0700160b00180c00020100180c00160b000e07000e07000e0700160b00
-160b002010000e0700180c00160b001e0f00180c00160b00160b00140a00160b00301800
-0e0700180c00180c000e0700201000160b00321900160b00060300160b001e0f00261300
-1e0f000402000e07001e0f00180c00060300060300281400160b00201000321900201000
-281400160b00201000160b00160b000e0700160b000c0600160b00160b000e0700140a00
-160b000c0600140a00180c000e0700060300060300040200201000180c00160b00180c00
-060300160b00180c00381c00160b00261300ffa244201000160b000e0700281400422100
-3018005a2d005a2d004c2600422100381c003a1d003018001e0f00180c00160b00ffa448
-180c000e0700201000160b000e07001e0f00261300180c002613000e0700201000160b00
-2613001e0f002814000e07001e0f00180c002010000e0700160b000e07000e0700160b00
-0e07000603000e0700140a00180c001e0f00140a00160b002010000603000e0700140a00
-0e0700160b001e0f00160b002010001e0f00140a00180c002814000e0700160b00160b00
-ff9428020100160b00180c00180c00402000160b002010003018001e0f00201000301800
-2e17000e0700281400140a00ffa448180c00180c00201000140a001e0f001e0f00160b00
-180c00140a00201000160b000e0700180c000e0700180c00
-0e0700020100160b00201000201000160b000e07002010002010002613002814001e0f00
-140a00321900140a00160b00160b001e0f00180c002814002814000e07000e07001e0f00
-180c00160b00160b000e0700140a00140a000e0700140a000603000201000c0600160b00
-0603000603002e1700140a000e07001e0f00160b00281400201000281400281400160b00
-0c0600160b001e0f002613000e07000e07000e0700180c000201000e07001e0f00180c00
-0603000e07000603000c06002613002613001e0f00160b00160b00160b000e0700140a00
-160b00160b00060300180c000c0600201000281400060300160b002010002010001e0f00
-140a00160b00140a00160b000e07001e0f001e0f000c0600160b00160b001e0f00180c00
-180c002814002010002814000e0700160b00060300201000140a000e0700140a001e0f00
-2010002613000e0700261300160b00201000281400301800180c00261300201000180c00
-180c000e0700201000160b00201000201000160b00180c001e0f00180c000c0600140a00
-0e0700160b000603002613000e07000c06000c0600201000160b00160b00160b00201000
-140a00140a00040200201000160b00160b00201000180c00180c00261300201000201000
-140a004221003a1d00381c004c26005e2f00643200a45200b45a00e87400f47a00e47200
-d26900864300763b005e2f00522900381c00381c002814001e0f00281400201000ffa040
-180c00160b00281400060300160b00160b00180c00140a00261300060300201000160b00
-201000160b00201000201000160b002e1700ff9b36ff9c38ffa040ffa040ffa74eff9e3c
-ffa54affa448140a00180c00160b00201000160b00160b000e0700160b000c0600180c00
-180c00261300160b00201000160b00180c002814000e0700201000281400140a000e0700
-160b002010002814001e0f00180c000e07000e0700261300422100160b00180c00261300
-0e07000e0700160b00160b001e0f00060300261300301800281400201000201000201000
-281400140a00201000281400281400160b00180c00201000201000160b00281400180c00
-2e17002010001e0f001e0f00180c000e07001e0f00281400160b00201000281400180c00
-2814000e0700060300140a00201000060300201000180c002613000e0700160b00201000
-0c0600160b000e0700160b000e07000c0600160b000e07000c0600180c00201000160b00
-180c00160b00160b00060300160b00020100160b000e07000e0700160b000e07001e0f00
-0e0700140a001e0f00160b00180c00ff9932140a001e0f000e0700201000281400281400
-2e17004221003018004221002814002010001e0f002814001e0f001e0f00ff9c38160b00
-140a00180c00140a00160b00180c00160b000e0700160b00180c000c0600201000160b00
-060300060300160b00180c00160b001e0f00160b000c06000c06000c0600160b00201000
-180c002010000e07000c06000e0700160b00140a000603002e1700281400281400020100
-140a002814000603002010002010000e0700140a00140a000c0600180c000e07000e0700
-2010000e07000e0700160b00301800281400201000160b00160b00160b000e0700261300
-140a00040200160b001e0f00160b00281400201000261300040200180c002010001e0f00
-261300180c001e0f000e0700160b000e07001e0f00ff9d3a0e0700201000301800321900
-3018004221006432004a25004a25004c2600402000281400201000160b002e1700ff9c38
-0e0700201000301800160b00261300160b002010000c0600160b000e0700160b001e0f00
-2010002e17000c0600180c000e07001e0f00180c000402000e07002613000e0700201000
-020100140a00060300180c00180c00180c000402002010002010002010000e0700060300
-020100160b00160b00160b001e0f000e0700160b00281400201000180c00160b00201000
-ff9e3c201000160b00261300160b00180c00201000281400381c00180c00160b00281400
-281400301800261300261300ffab562e17002010000e0700180c00301800160b00160b00
-140a002010000603000e07002613002010000e0700020100
-160b00201000281400ff9e3cffa74effa54affa040ffa54aff9e3cff9c38ffa244ffa54a
-ff9b36ffa74eff9c38ffa74eff9b36ffa952160b00160b00201000180c00201000180c00
-1e0f00160b00180c000e07000e0700160b00140a000e07000201001e0f00422100180c00
-0e07002010002010000e0700140a000e07001e0f00201000160b00140a00160b000e0700
-0e07001e0f00201000060300201000201000160b000e07000e07000e0700201000160b00
-160b001e0f00160b00180c00381c00281400160b00160b00160b00020100201000160b00
-0603001e0f00160b000c0600160b00160b000e0700201000180c002e1700180c00201000
-281400301800140a002010002814001e0f00281400160b00180c00160b002814002e1700
-2010002613000e0700180c00201000261300201000060300180c002010000c0600180c00
-180c000e0700201000180c001e0f00140a000c06000c0600020100160b00201000060300
-060300140a00180c001e0f00140a00140a002010001e0f001e0f00160b00180c000e0700
-0c0600060300160b000e07000c0600160b002613000402000e07000402000c06000e0700
-1e0f00060300281400160b000e07000e07000e0700160b00ff99320e0700281400201000
-2e1700381c00301800ffad5affbf7effc890ffdbb6b25900fa7d00ff9b36ffab56ffb468
-ff9932b259009c4e006e37004a25005229002814002e1700261300261300160b000e0700
-ffa244160b00060300160b00160b002010000c0600140a00060300160b00281400261300
-201000140a000e0700180c000e07001e0f00201000060300160b00140a000e07001e0f00
-201000160b00201000160b002010000e0700281400180c00140a000e07001e0f00160b00
-0e07001e0f000e07002613000c0600160b00160b00261300281400180c00160b00140a00
-0e07002010000603002e1700201000140a001e0f000201000e0700160b00160b001e0f00
-2814002814001e0f00180c00160b00160b00301800180c00160b000e0700201000160b00
-0e0700160b00160b00201000180c002613000e0700160b00201000160b00301800201000
-2814000e07002814002e1700201000180c00160b00160b00301800201000201000180c00
-0c06002814002e17002814000e07000e0700160b00261300140a00160b000c0600160b00
-2010000c0600160b002010002613000201002e17000e0700180c000402001e0f00140a00
-160b00160b00180c00180c00180c00180c00160b00160b00160b00261300060300140a00
-160b00160b00140a001e0f000e07000e0700160b00180c00201000201000180c002e1700
-422100381c00381c00201000301800201000160b002010001e0f00180c00ffa54a0e0700
-180c000603002e1700160b00160b001e0f00140a00160b00160b000402002010002e1700
-0603002010003018001e0f00201000201000180c00160b002613002814000c06000c0600
-160b00180c00160b000c0600140a002010000e07002010002010002010002010001e0f00
-160b00180c002613002010000c0600160b000c06001e0f001e0f00160b00140a00261300
-201000160b002814000e07001e0f000e07002010000e07001e0f00060300201000020100
-0e07000c0600140a00201000160b001e0f002010002613000e07002010001e0f00160b00
-1e0f00160b00020100160b00160b00140a00180c00ff9d3a160b002010002010003a1d00
-3219003a1d004a25004c26004422004a25003a1d00281400201000301800281400ff9932
-3018002010000c0600201000180c000e0700140a002010000e07000e07001e0f001e0f00
-140a00160b00180c00140a000c06001e0f001e0f00140a00140a001e0f000e0700060300
-2010002010000e0700160b000c06000e07000402000e0700140a00160b00160b00201000
-1e0f000e0700160b00281400180c00160b00060300201000140a00140a00160b00160b00
-ffa74e0e0700180c00180c002010001e0f003018002613002010001e0f00301800140a00
-281400160b00261300261300ffa040201000160b000c0600160b001e0f002010000e0700
-201000180c00201000160b000e0700201000140a00140a00
-ffa040ffa244ffa0402010001e0f002613002010002814001e0f001e0f00281400301800
-2010002010002814002814002010001e0f00ffa244ff9e3cffa244ffa448201000201000
-160b00160b000e0700180c00140a00140a00140a000e0700201000180c00201000201000
-1e0f00140a00180c000c06002010001e0f002613000e0700160b00180c000c0600160b00
-0201002613001e0f002613001e0f00201000160b00160b00201000180c00160b000e0700
-060300160b00140a002010000c06000e07001e0f00160b00180c002814002e17001e0f00
-0e0700261300160b00180c002814001e0f001e0f001e0f001e0f002010000e0700160b00
-1e0f00201000201000281400140a002e17000c06000c06000402000c06000e07001e0f00
-160b000e07000e07001e0f002e1700201000160b002613000c0600060300261300201000
-0e0700301800160b001e0f002010000e07000e0700140a000e0700201000160b00180c00
-0e07000603000e0700140a00160b00180c00201000160b001e0f00160b000c0600140a00
-160b00160b000e07000e0700301800160b000e07002010000c0600160b000e0700160b00
-020100160b00020100140a00140a002010001e0f000e0700ff9e3c201000ffa64cffa244
-2010002814003018004221006432005e2f00924900e27100ff9020ffbc78fffcf8fffcf8
-ffa448ec7600aa55007e3f005a2d004020003219002814002814002613002e1700201000
-180c00140a000e07001e0f00160b00160b00160b00201000160b00140a00160b00160b00
-0e07001e0f00160b00160b002010000201000603000e07000e0700140a00261300201000
-160b00160b00160b000e07001e0f00160b000e07000603000e07000e0700201000160b00
-180c00180c00160b00180c00160b000e0700180c00201000140a00160b000e0700261300
-160b000c06002613003018000e07002e1700140a002814000e0700201000201000201000
-1e0f002e1700160b00301800201000140a00180c00180c00261300160b000e07001e0f00
-160b00261300160b002010002e1700201000180c002814001e0f002e17002613000e0700
-ffa54affab56ffa54aff9d3affa74e160b000603000e0700261300201000180c00140a00
-160b00160b00201000261300160b00261300201000140a00160b00140a00281400140a00
-2613000e0700160b00180c00160b001e0f00160b00060300160b001e0f00160b00180c00
-3018001e0f00140a001e0f001e0f000e07000e07000e0700060300180c000c06001e0f00
-180c000e07001e0f000c0600180c00201000140a00180c00060300160b00160b00180c00
-1e0f002e17003a1d00301800201000180c00201000281400060300201000180c00261300
-140a000c06000e07002e1700160b00180c002010000c0600180c00201000301800201000
-201000281400160b00140a002010001e0f00060300180c00160b000e0700160b00261300
-140a000603002010000e07000603002010000e0700160b002010002010000c0600180c00
-201000140a000e07000e0700261300140a00281400060300160b000603002613000e0700
-060300160b00160b00381c00140a00261300201000140a002e1700160b00160b00160b00
-160b000c06002010002010002010002814000e0700160b00140a000c0600160b00140a00
-0c0600180c00201000201000160b000603002010000c0600ffa244261300261300201000
-2613003a1d004221004422005a2d00301800422100201000381c001e0f002e1700ffa040
-2010002010000e0700160b000402002010002010001e0f000e07002613002010000e0700
-1e0f00180c00180c002814002e17000e07001e0f00160b00201000180c001e0f00180c00
-3a1d00261300160b00180c00140a002613000e0700180c00140a00160b000c0600160b00
-2010002e1700140a00040200160b001e0f00180c00160b002814002613001e0f00160b00
-ffa142180c001e0f000c0600180c003a1d001e0f002613003018002e17004221001e0f00
-201000160b002613000e0700ffa040140a001e0f00160b000e0700201000261300160b00
-160b00140a000e07000c06002613002010002010000c0600
-1e0f00140a001e0f00160b002010003a1d00201000201000281400281400160b00160b00
-140a00301800281400301800201000140a00281400180c00301800140a00ff9e3cff9e3c
-ffa040201000140a00281400160b000e0700201000160b00060300160b00140a00060300
-0e0700140a00201000160b00140a00160b00160b000c0600160b00180c00140a00160b00
-0e07001e0f00160b000c06002010002010002010002010000603000e0700180c00160b00
-160b00140a00140a00201000140a001e0f00201000060300201000201000160b00180c00
-1e0f000c0600160b000201002814002814002814001e0f000e07002613001e0f00201000
-1e0f00160b00301800160b003018001e0f001e0f00281400201000160b002010000e0700
-281400180c002010000e0700201000160b00180c001e0f000e07001e0f000e0700281400
-2010000603001e0f00140a000e07002814001e0f002814000e0700160b002010002e1700
-0c0600140a00160b00160b001e0f000402002814001e0f00160b000e07000e07001e0f00
-0e0700180c00140a00160b000e07000e07001e0f000e07000c0600140a000e0700201000
-160b000c06000e0700040200281400160b001e0f00140a001e0f00ffa74e2814003a1d00
-301800381c004221004c26006432006e3700864300c66300ff8b16ffc488ffdab4ffc78e
-fffcf8ea7500864300643200542a003a1d00381c002613002e17002e17002e1700201000
-2814000e0700201000060300180c000c0600140a002010000603002010000e0700160b00
-0e0700180c001e0f00160b000e0700201000160b00261300281400180c00140a00160b00
-160b00040200160b00281400201000140a000e0700201000261300160b000e0700160b00
-160b000603002814000c0600160b000e0700180c00281400160b001e0f002e1700140a00
-0e07001e0f00180c00160b002010003018001e0f000e07001e0f002814002613000e0700
-201000160b002613001e0f00160b000c0600180c00140a002e1700201000201000201000
-0e0700201000261300201000281400261300201000321900261300261300ffa244ff9e3c
-281400261300140a00140a000c0600ff9d3a0e07001e0f00261300281400140a00201000
-160b002010001e0f000e0700040200180c00160b00160b00140a00180c00160b00201000
-160b002010002010000e0700160b000e07002010001e0f00180c00160b00281400201000
-0c0600140a000c06000e07001e0f00180c000c06000e07001e0f00261300160b00160b00
-201000201000160b000e0700040200160b00ff9b360e0700160b00321900201000180c00
-0603002814002613002814002814001e0f00ffa64cff9830201000261300ff9e3cff9932
-ff99320e07002613003018002613002010002613002010001e0f00140a00160b00180c00
-0e0700140a00140a00020100140a000402002814002010001e0f001e0f002814001e0f00
-1e0f00180c002010001e0f00180c00140a00160b00281400140a00160b00160b00160b00
-0e07002814002814001e0f001e0f001e0f00160b00140a00160b002010002010001e0f00
-0c06002613001e0f003a1d00180c00160b00180c00160b002010002814002010001e0f00
-0e0700140a002010000e0700281400140a00201000160b00160b000c0600180c00160b00
-160b000e0700261300140a00180c001e0f00160b00201000ffa64c1e0f00201000261300
-2814003219003018003018003a1d004a2500301800261300180c00261300201000ff9c38
-0c0600180c001e0f00140a000e0700140a000402000e07000e0700140a000c0600180c00
-2010000e07000e0700160b00201000160b000e07001e0f00160b002613002814000c0600
-2814002814001e0f001e0f00060300160b002010000e0700160b00201000060300180c00
-1e0f00140a000e07002814000e0700201000160b002010001e0f00201000180c00180c00
-ffae5c180c002613000e0700160b00160b00301800301800160b00281400281400160b00
-3018001e0f00140a00281400ffa142140a00160b00160b00160b002010001e0f000e0700
-060300180c003a1d002010001e0f00140a001e0f00160b00
-0c0600201000281400281400301800381c00381c003a1d00261300301800281400180c00
-2e17003a1d00201000201000261300281400381c002814001e0f00160b00180c001e0f00
-201000ff9932ff9d3a060300160b00281400160b001e0f00201000140a00160b000e0700
-201000160b000603000c0600160b00040200140a000e0700020100160b000e0700180c00
-201000020100160b000e0700160b000c06000e0700160b000e07000e0700160b00201000
-160b00281400040200180c000e0700180c000e0700140a001e0f00060300180c00201000
-140a00281400160b002010002010002010002613000c0600180c00160b00160b001e0f00
-301800180c00281400281400301800160b00180c000603001e0f000e0700140a00140a00
-261300201000180c002010000e07000e07000e0700180c00201000261300201000040200
-2010000e0700281400180c00180c00160b00160b000c0600160b000c0600160b00261300
-301800140a00180c002613000e07000e07002010002010000c06000e0700201000140a00
-160b000c06000e0700261300040200160b00060300160b00060300020100160b00140a00
-0e0700160b000603000e07001e0f001e0f000603002613002010002010002010003a1d00
-2e17003219003a1d004221005c2e00663300864300b65b00f27900ffa244ffb870ffad5a
-ffa040bc5e008844006432006c3600422100442200281400180c002613000e0700201000
-ff9d3a201000140a000c06002010000e07002613002010002613000e07000c06001e0f00
-160b00201000160b002010000603001e0f001e0f00160b00060300180c000e07001e0f00
-160b00201000160b00201000180c00060300261300201000160b00160b00160b00020100
-1e0f000e07002010001e0f00201000281400160b000e07000e0700160b00261300281400
-2010003219000e0700160b001e0f001e0f002e1700160b001e0f00140a00180c00201000
-160b002814000c06000e07000c0600160b001e0f00160b00040200261300160b00160b00
-180c000e0700281400160b00140a00160b000c0600201000201000ffa244180c00160b00
-281400180c001e0f00261300140a000e07000e0700ffa244201000201000160b00160b00
-140a002010000e0700281400180c00381c001e0f00160b00160b00160b00180c00060300
-2e1700160b000e07000e07002814002010001e0f00040200261300160b000e0700160b00
-160b00281400180c00160b00201000261300160b00160b00201000060300160b000c0600
-160b00160b000e07000c0600140a000c0600180c00140a00201000180c00201000301800
-1e0f00160b00201000ffa142201000140a00160b001e0f00321900201000281400281400
-201000180c001e0f00ff9e3c2010002010002e1700381c00060300140a001e0f00180c00
-180c00180c000e0700140a00160b000c0600160b00180c00180c002010001e0f001e0f00
-140a00201000160b002814000e0700160b002814000e0700180c00301800281400201000
-1e0f00281400180c000e0700160b001e0f000e0700201000180c001e0f00140a00201000
-201000281400160b002613000e07000e0700140a00281400201000060300160b000e0700
-301800201000160b00140a002e1700201000180c00160b00160b00180c00261300160b00
-140a00160b000e0700160b002814000e0700180c000e0700180c00ff9c38040200281400
-1e0f00281400140a00140a003a1d003a1d002010002613003018001e0f00301800ff9428
-160b001e0f002613003018001e0f001e0f00201000180c000e07000c0600201000160b00
-140a00160b00160b001e0f00180c00201000201000301800261300301800160b00281400
-180c002e1700160b000e0700160b001e0f00160b00140a000e07000e07001e0f00281400
-2613000e07000402000e07000e0700180c000603002814001e0f001e0f00281400281400
-201000ffa1420e07000e0700180c000e0700160b00201000381c00140a00201000180c00
-201000201000160b00160b00ff9b36140a001e0f00261300281400180c00140a00160b00
-180c00160b00201000160b002613001e0f002e17000e0700
-4020002814002010003219003219003219003018004020003018003a1d00301800381c00
-301800180c002613003018001e0f002010003a1d003219002010002814002e1700281400
-281400060300201000ff9e3cff9c381e0f00160b001e0f00140a00180c00160b00160b00
-0e0700180c000603000e07000e0700160b000c06000e0700160b00060300060300140a00
-0c06000402000e0700160b000e0700261300160b00160b00160b000e07000c0600201000
-281400180c00160b00160b00160b00160b00281400160b00140a000e0700140a00281400
-201000140a000e0700180c00201000201000160b00160b000e0700160b00201000201000
-1e0f00201000261300201000160b000e07003219000e0700180c000e07002e17000c0600
-281400160b002814002613001e0f00160b00040200140a002814002814001e0f001e0f00
-0e0700140a00160b001e0f00140a002010002613000c06001e0f000e07001e0f000e0700
-180c00281400160b001e0f000e07000e07002613001e0f000e07002814002010000e0700
-0e07000e0700140a000e07000e07002010002010000e0700160b00060300060300140a00
-0e0700160b000e07002010000c0600ffa142281400261300140a001e0f00160b00261300
-422100422100542a006432005c2e00663300703800b25900de6f00fc7e00ff9428ff8b16
-e27100ca6500984c006e3700ffc1824a25002e1700381c003a1d002e1700281400201000
-ff9d3a2613000e07000e0700180c00160b000e07001e0f00281400060300180c00140a00
-060300160b00040200281400140a000e0700160b00160b00060300201000180c000e0700
-1e0f00160b000c0600140a000c0600160b000e07002010001e0f00261300201000261300
-1e0f00140a00180c00160b00160b00261300160b00180c000e07002e1700160b00281400
-2010000e0700020100281400160b00180c000c0600180c002e1700261300060300160b00
-2613000e07002613002613001e0f000e0700160b002010001e0f00160b000e0700301800
-2814001e0f001e0f00180c00281400402000261300201000140a00ffa040201000140a00
-0e0700160b003018001e0f002010002010000e0700ff9e3c180c002010001e0f00281400
-160b00140a00261300180c00201000160b000603000c0600180c000e07001e0f00140a00
-180c00201000281400160b00160b00060300201000201000140a00160b001e0f00140a00
-0e07000c0600180c001e0f00160b00140a000e07002010001e0f00160b000c06000c0600
-0e07000e07000e0700160b00180c00201000160b00ffa244140a00160b00281400301800
-381c00301800ff9e3c2814000e07001e0f00140a002010002e1700301800201000261300
-0e0700281400160b00261300ffa040201000160b00261300060300180c00201000201000
-0c06001e0f002010000e0700201000281400160b00201000140a00160b000e0700261300
-160b00160b000e0700261300140a002814001e0f00160b00160b00261300060300160b00
-140a00281400160b002010000e0700160b00160b00201000180c00180c00281400060300
-0c0600160b000e07002010001e0f00160b002814000e0700180c00201000160b00160b00
-0e0700180c000e07000e07002613001e0f00201000160b003018000c06000201000c0600
-160b002e1700140a000c06000e0700140a00160b00160b001e0f000e0700ffa54a0e0700
-2e17001e0f00201000261300201000321900201000261300201000201000140a00ffa448
-1e0f00140a00160b001e0f000c06000e0700201000160b00201000160b00201000060300
-281400180c000c06002010002e17001e0f002010001e0f000e07001e0f00201000201000
-160b00261300020100281400201000201000140a00201000180c00261300281400281400
-060300060300140a00201000140a00261300160b000201002814000e0700180c00160b00
-180c00ffa0400c06001e0f00160b00180c001e0f003018002613001e0f00160b00160b00
-160b002010000e0700301800ff9d3a0e07000603000e07002010001e0f000e0700281400
-0e0700180c00160b00160b00180c00160b001e0f001e0f00
-3a1d003018002010003a1d00381c004221003219004221004221003a1d00381c003a1d00
-2e17003018003018002010004020003219002814002814002010002814002814001e0f00
-3018003018001e0f00160b00201000ffa244ffa142160b000e07001e0f00281400160b00
-160b00160b002613002010000e07000c06000e0700140a00060300060300180c000e0700
-160b00040200281400261300180c00201000160b000e0700180c000402000c06001e0f00
-0e0700201000180c00160b00160b00281400060300201000201000180c00140a00160b00
-1e0f00201000180c00261300180c001e0f002010002613001e0f00281400321900201000
-160b001e0f000e0700160b002e17000e0700201000201000160b00160b00160b001e0f00
-2010002e17001e0f000e0700180c00201000180c000201000603000e07000e0700160b00
-160b000e07002814000c0600140a00140a000e07000e07002613000c0600201000281400
-261300261300180c00180c000603002613000e07000c06002814000201001e0f00040200
-0e07000e0700180c000e0700160b000c0600160b00140a00180c00160b00160b000c0600
-201000140a00281400160b00ff9e3c160b00201000281400160b00ffa64c140a00301800
-381c003018004020004221004a2500542a00804000783c00a45200c66300e07000c66300
-ac5600a251008643005c2e00442200ffaf5e3219002e1700301800281400201000160b00
-160b00140a00140a00160b00160b001e0f000e07002010000e07002814000e0700201000
-261300160b00281400140a00140a00180c00060300160b000e0700160b00201000160b00
-160b00281400201000140a002e17000603002814000e07001e0f00160b001e0f00160b00
-160b001e0f000e0700201000160b000603001e0f001e0f00140a000e07002613000e0700
-261300201000060300140a00180c00201000201000160b00261300201000201000180c00
-3018002010000e07002010002010001e0f000e0700180c00180c00180c00180c00160b00
-160b002e17002814002010002e1700160b00160b00160b00ff9e3c180c00180c001e0f00
-1e0f00261300301800281400180c00180c00201000180c00ffaa54281400140a00160b00
-2010000e07000603001e0f002010000e0700160b00160b00160b002613002613000c0600
-160b000e0700160b00140a00140a002010000e0700160b00160b00160b001e0f00261300
-0e0700020100140a00180c002010000201000e0700140a00160b00040200040200060300
-140a00261300160b00160b001e0f001e0f00160b00160b00ffae5c201000160b001e0f00
-160b002613001e0f00261300281400180c00281400301800ffaa544020001e0f00301800
-201000160b002814002613002e1700261300140a002613002e1700180c00140a000e0700
-0402000e0700281400180c00160b000e07000c06000e07000603002010002010000e0700
-160b00301800180c00140a00261300201000160b00060300201000140a00201000201000
-301800140a001e0f00201000201000160b00160b00281400281400160b00160b00140a00
-0e0700180c000e0700160b00140a00160b000e0700281400201000140a00140a00160b00
-140a00281400160b00140a001e0f00281400140a00160b00060300160b00180c000c0600
-0e0700160b00160b00160b00201000160b001e0f001e0f00160b00160b00ffa54aff9e3c
-2010001e0f00281400321900281400140a001e0f002010003018000e0700160b00ff9d3a
-1e0f00201000180c00160b00060300040200160b001e0f000e0700160b00140a00140a00
-281400140a001e0f002010002e1700160b00281400261300160b00160b000e0700160b00
-0e0700201000160b000c0600201000160b00160b000e07001e0f00140a00140a000e0700
-140a002e1700160b00160b00160b00201000180c000e07001e0f000e0700261300201000
-160b00201000ffa1420e07001e0f000c0600140a002010001e0f00180c00201000140a00
-160b00281400160b00fffcf8261300201000140a00180c000c06002010000c0600261300
-201000160b00201000140a00160b00160b00180c000e0700
-1e0f002814002010003a1d003a1d004a2500542a003a1d004020004a25003a1d00281400
-4221004221004221004020004221003219004221003a1d00381c002e17002613002e1700
-160b00301800140a002814002e17000e0700140a00ff9c38ffa54a060300140a000e0700
-201000160b001e0f000e0700160b000603001e0f00060300180c00160b000201000e0700
-160b00261300140a00140a00160b000e07000e07001e0f000e0700140a00160b000c0600
-160b00281400160b00160b000e07002814000e0700160b000e07000c0600201000201000
-160b001e0f00201000160b002613000e07002613000e0700201000201000140a000e0700
-0c06001e0f00180c00201000281400201000140a00261300301800140a00160b00301800
-2e17003018002010000e07000c06002e1700140a00261300201000261300160b001e0f00
-1e0f00140a00140a00160b00180c00160b00160b002010000e0700160b00060300140a00
-301800160b00160b000603001e0f00160b00140a00160b00160b000c06001e0f00160b00
-160b000603000e07000e07001e0f00060300040200140a000e07000e0700160b00261300
-0603002010000e0700201000180c002613001e0f002e1700201000ffa64c2e1700321900
-4221003a1d00522900422100542a004a25006c3600763b009249009e4f00984c00aa5500
-9c4e00864300864300643200442200301800301800301800301800301800201000160b00
-1e0f00160b000c06002010002010001e0f00160b002814000603001e0f00201000160b00
-180c00201000140a00180c00261300160b00261300140a00180c000e0700201000180c00
-0e0700140a000e0700180c00201000160b00261300160b00180c000c0600020100201000
-1e0f00060300180c002814000c0600180c00180c00201000281400160b00020100160b00
-0c06000e0700201000160b002010001e0f000c0600160b000e0700201000180c002e1700
-140a002e1700160b00140a002010001e0f00160b00180c00281400180c000e0700140a00
-1e0f002814001e0f002814001e0f00160b002010001e0f00ffa64c0e0700140a00140a00
-2613002613003219000e07002e1700140a000e0700201000ff9b36180c001e0f00201000
-1e0f00201000160b00160b00060300201000201000160b00180c00201000160b00201000
-2010000e0700060300201000160b000e07000e07000e07002814000e0700160b00180c00
-160b002613002e1700261300281400180c00160b00140a00160b00140a000e0700160b00
-201000160b000e0700140a00261300160b00160b000e07000603001e0f00ffa448ff9c38
-201000201000201000381c00261300301800261300ffa64c2e1700381c003a1d003a1d00
-381c00301800321900281400201000301800160b00ffad5a301800140a000e0700160b00
-2814001e0f00180c00281400140a002814000e0700160b000e0700140a001e0f000c0600
-2010002613001e0f00160b00160b00140a00180c002e1700180c00180c00281400261300
-140a00281400160b002010000e0700180c000e07000e07000c06001e0f00160b00160b00
-140a001e0f00140a00140a00160b00160b00180c00180c00160b00160b00281400201000
-140a00060300160b00160b000e07001e0f00040200160b000e0700140a000e0700160b00
-160b00261300160b000e07000e07000e07000c0600160b000e07000c0600180c001e0f00
-ff9e3c160b002814000e07001e0f001e0f000e0700160b00160b00160b00ffa4481e0f00
-2010000e07000c0600180c000e0700201000180c000c06000e07000c06000e0700160b00
-160b00160b002814002814001e0f002010002814000603000e07000603000c0600140a00
-160b00160b000c06000c0600201000160b00180c000603000e0700180c00180c00180c00
-1e0f00140a00201000160b000603002010000e07000e07003a1d000603000e0700261300
-160b00160b001e0f00ff9e3c0e07000e0700160b001e0f00180c002814000e0700180c00
-160b00180c00201000201000201000180c000e07000c06000c0600180c00180c000e0700
-201000180c00201000180c00140a00160b00301800180c00
-3018003a1d002e17004020003018004020003a1d005229004a25003a1d004a25005c2e00
-4a25003a1d00542a00542a00542a00402000542a004422004422004a2500442200301800
-422100381c00281400201000180c00201000201000281400060300ff952aff9932160b00
-0c06001e0f00180c001e0f00140a000e0700040200060300040200020100060300160b00
-0603002010000e0700180c00140a001e0f000e0700180c00160b00160b00160b00201000
-0603000e0700160b00160b00180c000e07000e07000e0700140a00140a001e0f000e0700
-160b00160b001e0f000603000e0700160b00201000160b00301800140a00201000281400
-1e0f000e0700160b000e0700201000160b00180c00180c00060300301800160b00180c00
-2e1700180c00201000160b000c0600140a002814002814002010002010002613000e0700
-2e1700201000281400160b00281400140a00060300160b001e0f00060300201000160b00
-1e0f002010000603002613000e0700281400160b001e0f001e0f00180c002010000e0700
-2613001e0f00140a00180c002613000201000e07000c0600160b00160b000e0700180c00
-140a00160b00201000160b001e0f003018002814002613001e0f00301800301800321900
-381c004221004a25004c26004a25005a2d005c2e007e3f00703800924900984c007e3f00
-7e3f005e2f00703800542a004422004422003a1d00301800281400201000180c00160b00
-ff9b362613002010002010000c0600180c00180c000e07000c0600160b000e0700160b00
-160b00201000180c00160b00160b00160b000e0700140a00160b00140a00180c00040200
-160b002010002010001e0f00140a00160b00160b00140a00201000140a00140a00140a00
-1e0f00180c00281400140a000e07002010000603000e07000e0700160b000e0700180c00
-180c002010001e0f002010000e0700140a00281400140a00201000140a002010000e0700
-201000160b000603000e0700180c000e07002e1700180c002613001e0f002814000e0700
-2e1700180c000603002613002613000e0700201000180c00ffa448261300281400201000
-2e17004221003a1d002e17002010002814002e1700201000ffa040160b00160b00140a00
-180c001e0f00201000301800160b00160b003a1d00160b00160b001e0f00180c001e0f00
-2010001e0f00160b002010001e0f002010001e0f00160b002010000c0600060300180c00
-0603002613002613002613001e0f001e0f000201000c0600060300160b00180c000e0700
-2814000e07002010000603000c06002613001e0f00180c00261300281400281400ffa142
-160b00201000281400160b00402000301800ffa74e381c003219004020004a2500321900
-3018004a2500381c00381c003219001e0f00261300160b00ff9e3c2010002814001e0f00
-1e0f00180c00180c00160b00160b001e0f00180c002814000e0700180c000e0700201000
-180c001e0f00281400261300160b001e0f000e07002010002010000e0700281400201000
-201000160b00160b000e0700140a002e1700160b00160b002613000e0700201000160b00
-261300160b00160b00160b00140a000e0700160b00160b00140a00201000281400060300
-2010001e0f00060300180c000c0600180c00281400160b000603000e0700160b000c0600
-140a000c0600160b00140a003018000e07000e0700160b000c0600261300261300201000
-201000ff9d3affad5a281400201000201000140a00180c00180c00ff9e3c201000201000
-140a002814000c0600140a00160b00261300301800180c001e0f00160b002814001e0f00
-201000140a00160b002613001e0f000603000e07000e0700201000160b00301800160b00
-0e07000c06002010002814001e0f002010000e0700160b002e17000e07000e0700140a00
-261300201000160b00301800160b00160b00201000261300160b00060300160b00060300
-2613000e07002010000c0600ffa244ff9d3a2814000e0700261300140a00140a00201000
-160b00ffa142ff93260e0700160b00201000180c001e0f00180c00160b00060300180c00
-201000180c002010000e07001e0f002010002613000e0700
-4020003a1d003018003a1d00442200422100542a005c2e00542a00522900542a00542a00
-4a25005c2e00542a005c2e00542a004c26006432004221004c2600542a004422003a1d00
-4221004221002010002010002010003a1d002010002010002010002010001e0f00ff9e3c
-180c00281400180c00160b00140a00201000160b000e0700180c00201000060300160b00
-140a00180c000e0700160b00201000160b00160b00281400261300040200140a000c0600
-180c00140a00140a00180c001e0f00160b00201000140a00160b00160b00160b000e0700
-160b00140a00160b002e1700261300160b000e07000e07001e0f00180c000201000e0700
-180c001e0f00201000040200160b001e0f00060300160b000e07001e0f00201000281400
-140a00180c00201000060300140a000c06003018000e07000603000402001e0f00140a00
-160b00060300140a000603002814000c0600160b00180c002e17001e0f001e0f001e0f00
-0e07002010000201000e07002010000c06000e07001e0f00140a00281400180c000c0600
-201000160b000e0700140a000e0700060300160b00160b00201000160b000e0700160b00
-0c0600180c00140a00261300180c00160b002010003a1d00281400201000201000422100
-4a25004221004422004020005c2e005229005c2e007e3f007038005e2f007038006e3700
-5c2e006e37005e2f005e2f00422100321900281400321900301800201000301800ffa54a
-180c00140a002613000e0700180c00180c00160b002010000e0700261300201000160b00
-281400201000160b00140a002010001e0f00160b00160b00140a00160b002814000e0700
-201000160b001e0f00281400180c000e07000e07000e07002613000e0700160b001e0f00
-140a00140a000603000e0700160b00140a000e0700180c000e0700160b00160b00201000
-180c00160b00201000160b00281400160b00160b00201000160b00160b00201000321900
-0e0700180c001e0f001e0f00201000180c00160b002814000e0700201000201000180c00
-201000180c001e0f001e0f002010000c06000e07002e1700ff9d3a2613000e0700281400
-160b00160b00201000261300281400160b00281400ff9b36201000281400180c00281400
-160b00321900281400160b00140a00060300160b001e0f00281400160b001e0f00180c00
-160b000e07000c0600140a001e0f00140a000c06002613000e0700140a002e1700160b00
-180c00160b000e07000e0700060300160b000603002010001e0f002010000603001e0f00
-160b00160b00201000160b000e07000e07000e0700180c002814000e07000e0700281400
-160b00ff9b36321900ffab56ffaf5e4221004a25004221005c2e004a2500643200442200
-5c2e004020003a1d002010002e1700261300261300281400180c001e0f002010000e0700
-160b00140a000e07000e0700160b002010000e0700160b000e0700160b00160b00201000
-160b00201000180c00180c000603002010001e0f00140a001e0f00180c002e17001e0f00
-0e0700160b00160b00160b00160b00201000140a00261300160b00301800201000160b00
-201000160b000e07002e1700201000201000261300140a000e07000e0700140a00261300
-0e07000201001e0f00160b00201000281400040200160b000603000c06000e07000e0700
-160b00140a00201000180c00160b000c0600140a00160b00140a00281400060300140a00
-140a002e1700301800ffa142ff9c38ff9e3cffa64cffa64cffa0401e0f002010000e0700
-140a00160b000c0600140a00160b00060300180c00201000180c00160b00160b00060300
-1e0f00160b00160b00160b00160b00160b00160b00160b00140a00180c001e0f000e0700
-180c00160b00160b000e07001e0f00060300060300160b00201000201000160b00301800
-281400261300180c00201000060300201000201000261300160b00160b002010000c0600
-0c06000c06000e0700140a00201000281400ffa64cffa244ff9932ff9b36ffa74eff9c38
-ffa142281400060300201000281400281400ff9932ff9932ff8e1cffab56ffa244ff9e3c
-ffa448ffa448180c00160b00180c002010000e0700160b00
-4221002613004221004221004020004a25005c2e00542a00542a005e2f006432005e2f00
-8040006432006432006432005c2e005c2e00663300763b006633006432005c2e004a2500
-442200542a004221003018002814002010003018002010001e0f00281400261300140a00
-ffa142ffa448160b000c0600180c000e0700140a00160b000c0600160b000e0700160b00
-180c002010000e0700160b00140a000402002613000e0700140a00160b00201000201000
-140a00160b000603000603001e0f001e0f00160b00160b002010002010001e0f00160b00
-060300160b00140a00281400160b001e0f00201000281400160b00201000160b00180c00
-1e0f00060300160b000e07000c0600060300261300160b000e07002e1700281400140a00
-0e0700201000140a00160b00281400281400060300140a00160b001e0f00160b00140a00
-160b00140a00140a00160b00160b00160b002010001e0f00180c00160b00180c000e0700
-160b00160b00160b00060300160b00160b00201000160b00160b001e0f00140a00040200
-180c00160b00020100040200160b000e0700140a000e0700160b00160b00040200060300
-040200ffa1420e07000e0700160b00301800160b002e1700381c00301800422100ffaa54
-321900381c00422100542a004a25004a25005c2e007038005e2f005e2f006e3700663300
-6633004c2600542a00442200402000301800201000261300ffa448180c00261300ffad5a
-1e0f00180c00140a00160b000201002010002613002010002814003a1d00180c00201000
-160b000603000e0700180c001e0f00261300160b001e0f002010000e07001e0f00261300
-201000160b00281400060300201000201000160b002010000e07000e0700261300160b00
-1e0f001e0f00160b001e0f001e0f000e07002010001e0f000c0600160b00160b000c0600
-160b002010000603002010002613000c06000e0700180c000603002e1700160b00402000
-201000201000281400281400261300261300160b002010000e07002e1700261300180c00
-160b00201000301800301800140a00281400201000160b00160b00ffa244201000281400
-281400180c00180c00201000160b00201000261300ffa244160b000e0700160b00140a00
-2010002e17000e0700140a002010002814001e0f001e0f00201000160b00201000060300
-160b001e0f001e0f00201000180c002010000e07000c0600180c001e0f000e07001e0f00
-2613000e0700140a00201000180c00281400140a00160b00060300180c00140a00140a00
-160b000e0700060300140a001e0f000e0700261300160b00201000180c00180c00140a00
-261300301800261300442200442200542a005e2f006c3600643200703800783c00643200
-663300542a005229003a1d003a1d003a1d001e0f00281400160b002010002e1700160b00
-0c0600201000160b002e1700160b000603001e0f000e0700201000180c00140a00160b00
-160b00160b00060300140a00160b002814000e0700281400180c00281400160b00261300
-2814000c0600201000261300160b00140a000e07000603002814000603001e0f00160b00
-0e07002814002814002613000e07000e0700060300201000160b00180c002010001e0f00
-0e0700281400160b000c06000603000e0700180c00140a000e0700160b00140a00201000
-2613000c06001e0f000c0600281400160b00201000160b00140a000e07001e0f00201000
-180c00160b00040200281400140a00140a000c06000e0700160b002814000402000e0700
-140a00160b000c06001e0f00201000160b00160b00261300160b00160b00160b000e0700
-281400180c002e1700180c00160b00160b00261300160b00160b001e0f00180c00281400
-1e0f00180c00180c00160b00160b000e0700140a002010000e07001e0f00180c000c0600
-0e07002010000e0700140a000e0700180c000e07000e0700180c00180c00160b00140a00
-180c00180c00160b00261300160b00180c002010001e0f000e0700160b00160b00281400
-201000020100160b00201000020100ffa448160b000e07000e07002814000e0700201000
-160b00261300ff9b36ffa244281400180c001e0f000e0700
-2e17003a1d00321900321900542a004221004a25004c26005e2f006633006c36005e2f00
-663300804000763b00763b00783c00703800763b00763b007038005e2f00884400542a00
-6633005c2e005c2e003a1d003219003a1d00381c002814002e1700281400281400261300
-1e0f00281400ff9b362010000e07002010002814000e07000603001e0f00140a00160b00
-1e0f00060300160b00160b001e0f00281400140a000c0600160b000c06001e0f00060300
-201000180c00140a00140a00140a002613000e0700160b000e0700180c002010000e0700
-0e07000e07000c0600160b002010000c0600180c00180c002e17001e0f00060300160b00
-0e0700140a001e0f00180c000e07000e0700140a00140a000c0600201000160b00381c00
-140a000c0600201000160b000e07000e07000e0700180c002613000e0700180c00160b00
-0e0700160b00180c00160b00160b00201000180c00160b00180c00160b000e0700060300
-160b00040200160b00261300180c00020100301800140a00160b00140a00060300160b00
-180c000e0700020100140a000603000402002010000c06000e0700160b00060300020100
-0e0700ff9e3c0e07002613002010002814002613001e0f00281400301800422100522900
-ffbd7a5229003a1d006432006633005c2e006432006c36005a2d00763b005e2f00542a00
-542a005a2d00442200381c003219003a1d002814001e0f00301800ffa244201000261300
-140a00281400140a00160b00160b00180c000e07000e0700160b001e0f00060300201000
-201000160b00140a00160b000e0700180c000e07000e0700140a00040200060300160b00
-0e07001e0f000e07000e07002010000c06002613002e1700160b00180c00160b00281400
-1e0f001e0f001e0f00180c001e0f00201000201000281400160b00140a00160b00160b00
-2613001e0f000e0700140a00160b00160b001e0f00140a001e0f000c06000c0600160b00
-201000261300160b00160b001e0f00140a001e0f00140a00281400281400160b002e1700
-1e0f00180c002e17002010002814001e0f00180c000c0600160b00201000ffa0401e0f00
-160b002010000e0700201000321900180c00ff99321e0f00201000140a002010000e0700
-160b00201000160b001e0f00201000180c000201000603000e0700160b00261300261300
-281400201000160b00261300140a00160b00201000140a00140a00160b000e0700160b00
-160b000603000c06002613000603002010001e0f00281400180c002010000e07001e0f00
-0e0700201000160b00160b00060300020100140a00160b00321900ffa0400e0700201000
-2814002814004a2500442200442200643200763b00884400a25100924900aa55009a4d00
-7e3f00783c005a2d00542a003219003a1d003a1d00381c00301800180c00281400160b00
-160b00160b000e0700281400140a002010000c06002814002010000c0600201000160b00
-160b00201000060300140a00180c00160b00140a00160b000c06000e0700160b000e0700
-160b00160b00160b00060300160b001e0f00160b000c06002010002e1700261300261300
-140a001e0f00281400180c00261300140a00160b002010000402002010001e0f00281400
-160b00160b00140a000e0700160b00060300060300180c00180c00160b000e07001e0f00
-160b000c06000e0700160b000603002814000e07001e0f000e0700180c00160b00060300
-1e0f00201000160b00180c00180c00201000160b001e0f00020100140a00160b00140a00
-160b00160b00180c00140a002010002613002010001e0f00160b00160b000e0700261300
-261300201000180c001e0f001e0f00201000160b000e07002010002010002010000e0700
-281400160b000e0700261300180c001e0f001e0f00281400140a00140a00160b000e0700
-201000160b00180c00180c00160b00160b003018001e0f00160b000e0700140a001e0f00
-160b001e0f00160b00160b00140a00060300160b000c0600201000180c00160b00140a00
-201000060300160b001e0f00ffa1423018000603001e0f00160b00261300160b001e0f00
-160b00140a000e07002e1700ffa244140a00180c00180c00
-3219003a1d004020004a25004020004221006432005c2e006633008643007e3f00783c00
-904800984c00984c00904800924900a25100904800904800984c00984c009048007e3f00
-763b006432006432005e2f00542a004422004a25003a1d002814002e17001e0f001e0f00
-301800261300201000ffa9522e17000e07003a1d00160b00180c00180c00160b00180c00
-140a00160b00261300180c00160b000201000e07002010000603000e0700281400140a00
-140a00180c00140a00201000160b001e0f00160b002010001e0f002814001e0f00180c00
-0e07001e0f000c06000e07002814002814002010000e0700160b00160b001e0f00160b00
-2e1700160b00261300060300201000201000160b002814001e0f00180c00180c00281400
-0c0600160b00140a00160b00060300201000160b00261300160b000e07001e0f000e0700
-180c00160b00180c00180c00140a000e07000e07001e0f00140a00201000201000201000
-2010000e07002010000e07001e0f00201000060300180c00180c000603000e07001e0f00
-1e0f00140a00180c002010000e0700201000160b002010000402000e07000c0600060300
-ffa040160b00140a00281400281400281400160b00381c003018002814003018004a2500
-6c36005c2e006432006e3700763b006e37007038006c36007038006e37005c2e004c2600
-6e37004a2500542a00381c00542a003a1d003a1d00180c00281400281400ffa74e0e0700
-160b000e0700160b000c06000e0700140a00140a001e0f00160b00281400201000140a00
-2e1700180c00180c002010001e0f00160b00281400180c000e07000e0700261300201000
-160b001e0f002814002613000c06000c06000e0700201000201000140a002010000e0700
-1e0f000e07001e0f00201000180c00140a00160b00140a00140a00160b000c0600281400
-2010000402002010000e0700140a002010001e0f002010002010002814001e0f001e0f00
-1e0f000c0600140a00160b00281400201000281400160b00281400180c000c0600261300
-2e17004a2500160b00160b00201000281400301800281400301800160b00261300ffa142
-ff9d3a0e0700180c00180c00ffa244ffa54a1e0f002613000603001e0f001e0f00201000
-1e0f002010002814003018000e0700160b00160b00281400160b00060300160b00261300
-0c06002814002613000603000e0700140a000201002613000c0600160b00180c000e0700
-140a000e07002e17000e07000402000c0600281400180c002814000e0700180c00160b00
-0c0600140a00201000060300160b000c0600140a00180c00140a00ff99321e0f002e1700
-180c003219003a1d004a25006432008844009e4f00b25900c86400fa7d00de6f00e87400
-b259008643006432006e37004c2600422100381c00201000281400281400ff9b36201000
-2814000e07000603000c06002e17002010000e0700060300180c000e0700160b00201000
-160b000e0700180c00160b000e07002010000402003018000e0700040200201000160b00
-160b001e0f00201000040200160b00180c001e0f00160b00180c000e07003018000e0700
-160b001e0f00160b00201000140a002613000c06001e0f002e1700160b001e0f00180c00
-0e0700201000180c002613000c0600160b001e0f000c06001e0f001e0f00180c00301800
-140a000e0700160b00160b002010003018002814001e0f00160b00201000201000160b00
-1e0f001e0f00160b00281400281400281400060300140a00201000140a002e1700281400
-0e07001e0f00160b00281400160b00140a002010000e07000e07000c0600180c00281400
-201000140a00160b000e07002e17000e0700201000180c000e0700160b00281400180c00
-180c00281400160b00160b00060300160b000e07001e0f00281400160b00180c000e0700
-0e07002010000c0600160b00201000160b00180c00281400160b00261300160b00160b00
-281400160b00261300140a001e0f000603000e0700201000160b001e0f00261300321900
-160b00261300160b00ff9d3a180c002010002814002613002010001e0f001e0f00281400
-1e0f002814000e07002e1700261300ff9d3a140a001e0f00
-2613003a1d004020004a25004a2500542a005e2f005c2e005c2e00643200864300a25100
-904800904800904800b65b00a45200aa55009c4e00c46200ac5600aa5500b85c00a25100
-b25900984c00904800663300542a00542a004a25004c26003a1d00381c00281400281400
-261300301800281400381c00ffa64c2814002010001e0f001e0f00140a00180c00160b00
-160b000e07000e0700140a00201000201000180c003018000e0700281400060300180c00
-0e0700160b00180c00201000160b00160b001e0f00160b00140a00180c00261300160b00
-0e0700180c00201000140a003018001e0f000e07000e07000e0700160b00060300020100
-2e17001e0f000201000c06001e0f000e0700301800160b000e07000603001e0f00160b00
-160b00201000201000180c00160b001e0f00040200160b001e0f003018002010000e0700
-0e0700201000160b00060300180c002814002010002010001e0f002010001e0f00160b00
-160b003018000e0700180c001e0f00180c000c0600201000140a00140a00160b001e0f00
-140a00140a000e0700020100060300160b00160b001e0f001e0f000e07000603000e0700
-2010001e0f00160b002010003219002814001e0f003018003a1d003a1d004a2500542a00
-5a2d00542a00663300763b00864300864300804000703800763b006e37005a2d005c2e00
-5a2d00522900402000422100381c003a1d00321900301800281400ff9932301800281400
-0c06000e0700201000180c000e07002613000c0600160b00140a00060300180c000e0700
-2010000e07000402000e0700180c00160b00180c00180c002010000c0600140a00160b00
-060300301800180c000e0700160b00180c001e0f000e0700140a002613002010000e0700
-160b00140a00160b00140a00160b000e0700261300140a001e0f00201000060300201000
-2010002010001e0f00160b002613001e0f00160b000c06001e0f00140a00140a00261300
-160b00140a00160b00160b001e0f002010001e0f002e17002613001e0f000c0600160b00
-1e0f002613002010001e0f001e0f000603000e0700160b00301800261300201000201000
-261300ff9c38ffa040ffa0402613002814001e0f000e0700301800160b00201000201000
-2e1700201000201000140a002613001e0f00201000160b00160b00281400160b00180c00
-0e0700160b003a1d00180c00180c000e07000e0700201000160b00060300160b000c0600
-180c000e0700201000160b00140a001e0f00060300201000160b00180c002010000e0700
-1e0f00180c000e07000c06000e07000e0700201000060300ffa040201000140a00201000
-381c003a1d00301800522900663300984c00bc5e00ec7600ff9830ffa64cffa54aff8b16
-f47a00be5f009048006633005229004020004020003018002e1700160b00261300ffa54a
-0e0700140a00301800281400180c000e0700261300160b00060300140a001e0f002e1700
-3a1d00201000160b002814000e0700160b00160b00180c00160b00160b002814000c0600
-160b001e0f00160b00180c00201000160b00160b000e0700180c003a1d000201001e0f00
-0603001e0f002613002e1700160b001e0f00180c002010000e07000c06001e0f00060300
-160b00160b000e0700281400160b000e0700261300160b000c0600140a000e07000e0700
-0c06000e07001e0f000e07000e0700180c00160b001e0f00180c00140a00261300201000
-180c002e17002010002814001e0f00201000160b000c06001e0f00281400281400180c00
-0e0700281400160b00060300160b00060300140a00160b000c0600160b00140a00160b00
-201000261300160b000e07002010000e07002010001e0f00180c00180c00140a00201000
-180c00160b00180c00140a00160b00160b00281400201000261300160b00261300060300
-2613001e0f00160b00140a00180c00160b001e0f00201000180c002010001e0f00160b00
-201000160b000e0700201000160b000201000e0700180c001e0f00160b00201000201000
-261300060300ffa1421e0f00201000140a000e07000e0700201000281400160b00201000
-2814002010002010001e0f00060300ff9e3c0603000e0700
-2814002814002814004020004221003a1d004a25006432006e37008643008a4500a25100
-a45200b25900b85c00bc5e00b25900d66b00d66b00d86c00ec7600de6f00ca6500ca6500
-d06800bc5e008643009a4d00763b005c2e005c2e004020004221003a1d004a2500422100
-2e1700261300201000321900261300ff9e3c301800201000160b00040200180c000e0700
-160b00160b00201000060300040200180c00140a00160b000e07000c06000c0600020100
-2010000e0700180c00281400180c00281400160b000e0700201000180c00201000060300
-201000180c002010001e0f00060300261300140a000201000e0700160b000c0600040200
-281400180c002010002814000e0700201000180c00180c00180c00180c00060300201000
-1e0f00201000160b00201000140a00160b00201000020100201000160b001e0f00140a00
-180c00160b00160b00160b00140a002010000c0600160b001e0f002010002010000e0700
-0e07000e07000e0700201000180c000e0700261300140a00160b00160b000c06000e0700
-160b00160b00160b000e07001e0f00140a00180c00040200060300160b00160b00160b00
-140a002814001e0f002613002010002613003018004020004a25004221006633006e3700
-763b00884400904800ffdebcffebd6aa55009048009a4d008844007e3f00763b00542a00
-6432004a2500301800381c003018003219001e0f002814003219000c06003018001e0f00
-0e0700180c00160b000e0700281400261300140a000c06002814001e0f00160b00281400
-180c00180c00060300201000160b000e07001e0f000e0700140a002010000e0700180c00
-261300201000140a002010000e07002814001e0f00201000160b001e0f00140a00160b00
-1e0f00281400140a00140a00180c002010002010000201000e07000e07000e07001e0f00
-180c003219000e0700160b00261300180c000e0700140a00301800180c00160b00281400
-0e07000603000e0700180c00402000261300140a002814001e0f00160b000e0700040200
-180c00180c00201000140a00301800281400261300160b00180c00281400201000301800
-2010002010002814003018002010002e1700180c00180c00140a00201000180c000c0600
-201000160b000e07003a1d00140a001e0f00180c00160b00180c001e0f000201000c0600
-1e0f000e0700180c00160b002010002010000e0700180c00281400301800140a00140a00
-0e0700140a00160b00160b00160b00160b001e0f000e07002010001e0f00140a00160b00
-140a00140a001e0f00160b002613000e07000e0700160b002e1700140a00201000301800
-381c00422100442200643200884400b65b00f07800ffa448ffc890ffdebcffebd6ffc182
-ff9326ea7500ac5600783c005229004c2600321900402000261300281400261300160b00
-201000381c000e0700201000160b00140a00321900160b002010001e0f000e0700201000
-180c00281400180c00180c00160b00160b002010002814000e0700140a00060300180c00
-160b000e07000e0700201000201000160b000e0700381c000c0600201000180c00040200
-2010001e0f000e0700140a000c0600180c00281400140a000e0700180c00160b00201000
-160b00160b001e0f00180c00160b002010000e0700281400160b00180c00160b001e0f00
-1e0f00160b00180c002814000402002613000c0600160b00180c000c0600281400281400
-2814003018002613000e0700201000301800160b002814000c06000e0700180c000e0700
-160b00160b00140a00261300060300201000140a000603000e0700140a00160b00261300
-1e0f00261300140a000c0600180c001e0f002814002e17002e1700201000201000180c00
-261300180c00201000160b00201000201000180c000e0700160b00180c000c0600060300
-160b000e07001e0f00060300180c00140a00201000160b000e07000e0700201000180c00
-140a00160b00180c00180c00160b001e0f001e0f001e0f00040200201000281400160b00
-160b00201000ffa244281400301800201000201000160b00301800301800381c00301800
-2010000e0700160b00201000160b000e0700ff9e3c201000
-301800381c00402000381c00542a004a25005a2d006432005a2d007e3f00804000a45200
-b45a00ce6700c46200d06800fe7f00ff8102f07800ff8b16ff9122ff8e1cff8e1cff8e1c
-ff8f1ef67b00ca6500b65b009249009048006432005e2f00542a004a2500542a00402000
-2e1700281400321900422100402000201000281400ff9e3c1e0f00160b00140a001e0f00
-140a000e07000e0700160b000e07000e0700160b00160b00160b00160b00180c00060300
-160b000e07000201002010000e07002010001e0f00281400160b00160b00180c001e0f00
-160b00261300160b00140a000603002010000e07000e0700160b00180c00201000160b00
-201000180c00201000261300160b00180c00201000140a000e07000e0700060300261300
-0e0700201000281400160b00060300140a00180c00201000180c00180c000e0700180c00
-140a00160b002814000e0700281400160b00140a00261300140a001e0f001e0f00140a00
-160b00201000281400160b000e0700160b00201000060300160b000e0700160b000c0600
-0201000e07000e07001e0f00140a000201000e07000402000e07000e07001e0f001e0f00
-0e0700140a002e17002814002e17003a1d00381c004a25003a1d004221006e3700643200
-804000984c00b25900ca6500d66b00ca6500c46200aa5500aa5500804000864300663300
-663300542a00542a00381c00381c00ffb264ffa244261300261300160b00281400160b00
-180c000e0700180c00160b001e0f000e07000e0700140a000e0700180c00201000180c00
-0603003018000e0700281400281400160b00180c00160b00180c000c06001e0f00201000
-0e0700160b001e0f000e0700160b000e07000e0700160b00160b00140a000e0700201000
-0e0700201000281400160b00160b00180c001e0f001e0f000e07002e17000e07000e0700
-060300201000160b000e0700180c000c06000e0700201000160b00180c000e0700301800
-1e0f00160b00160b002010001e0f00160b00201000160b001e0f00261300160b00261300
-160b00201000160b00160b002e1700201000261300140a00201000180c00160b002e1700
-201000160b00201000201000160b00160b002010001e0f00180c00140a00201000160b00
-160b000e0700180c00281400180c00261300261300160b00180c00180c00261300160b00
-2010000603001e0f002010002010000c0600160b001e0f002010002e1700201000160b00
-2e1700180c001e0f000e07000603002010002613001e0f001e0f002010000e0700160b00
-0603001e0f000e07002010001e0f001e0f000e0700281400160b001e0f001e0f00180c00
-381c00381c00542a006432009c4e00c86400ff9122ffd1a2fffcf8fffcf8fffcf8fffcf8
-ffca94ff8e1cc462009a4d006432006432003a1d00381c001e0f00160b00201000201000
-201000160b000e07002613000e07002613002613002814000e07000c0600180c00140a00
-1e0f00160b000e07000e07002010000e0700180c000603002e1700180c00201000140a00
-140a00180c001e0f00281400180c00160b001e0f00180c002010002010000e07000e0700
-160b00281400180c00201000281400281400160b00180c00140a002010000e0700281400
-1e0f000402000603000c06002010000e07000e07002e1700201000160b00160b00201000
-201000160b001e0f00201000160b000e07000e07002010000c0600201000160b000c0600
-2010002010000402001e0f00201000160b00180c001e0f000e0700160b00201000201000
-2814002814002814002613000e07001e0f00180c00180c003018001e0f00140a00201000
-140a001e0f00180c000e0700180c00160b00160b00160b00201000060300160b00201000
-160b00140a00180c000e07000603001e0f001e0f00261300201000160b00281400160b00
-0e0700160b00160b00140a00140a002010002010002010000c0600060300160b00201000
-160b00160b002010002e17000e07000e0700160b000c0600160b00160b00201000160b00
-1e0f00281400ff9c382613001e0f000e07002814001e0f002e1700281400321900381c00
-3a1d00180c001e0f00261300140a00060300ff9c38160b00
-3018002613004221003219004221004020005a2d006432006c3600804000984c00ac5600
-aa5500c86400ec7600e47200ff8b16ff8a14ffa448ffb162ffb468ffc890ffc182ffc890
-ffbc78ff9e3cff9122ea7500be5f00b45a00884400783c00763b005229005c2e00402000
-402000381c00301800261300381c002010000c0600261300ff9d3a0e0700201000160b00
-160b00201000160b00060300261300160b000603000e0700060300160b00160b00060300
-201000140a000c06000e0700180c00160b002010002010001e0f00180c001e0f000e0700
-2010000e0700140a00201000180c00180c000e0700160b000e0700140a00180c00160b00
-2010002e1700201000140a00180c00201000201000160b000e07002613000603000e0700
-2010002613001e0f000c0600160b00140a002814002010001e0f001e0f002010000c0600
-0e07001e0f002e17001e0f00140a00180c00201000160b00160b00281400180c001e0f00
-201000140a000e0700040200160b002814001e0f001e0f00060300201000201000180c00
-180c000e0700180c00060300020100140a000e0700060300060300180c00160b00ffa040
-160b002010001e0f00201000281400381c004221005229005229005229006c36007e3f00
-864300be5f00ce6700f27900ec7600f27900fc7e00fff8f0fff8f09c4e008643006e3700
-ffc78effc0805229004221003219002e1700201000201000180c00261300261300ff9c38
-1e0f000c06002814002e1700060300160b00201000160b000e07000e0700140a000e0700
-160b00180c000e07001e0f00180c00140a000e0700140a00180c001e0f001e0f00281400
-0c0600160b00160b001e0f000e07002010000e0700180c00160b000e07000e0700301800
-261300140a001e0f00180c00140a001e0f00180c00201000261300180c00140a001e0f00
-2814001e0f001e0f002814002010000c0600160b000e0700140a002010002e1700180c00
-0603000e07002010000e07001e0f002010000e07002814001e0f00060300160b00140a00
-0e0700180c00160b002010002010001e0f00301800160b00261300321900381c00201000
-2e17002010001e0f00140a00201000180c002010000e0700160b00160b00201000281400
-2613001e0f00160b002e1700281400160b00140a00160b000e07002613001e0f001e0f00
-160b001e0f00180c00140a001e0f00180c00060300140a00180c00160b000e0700160b00
-0e07001e0f00160b002010000e07002010000e0700160b00160b002010000e0700160b00
-060300261300060300160b001e0f00160b00140a001e0f00ff9e3c180c00160b00281400
-3018003a1d005a2d007e3f00924900d86c00ffb366fffcf8fffcf8fffcf8fffcf8fffcf8
-ffe0c0ffa74ed068008a4500763b005c2e00402000442200281400261300180c00ffa244
-1e0f00160b00180c00160b001e0f002010002010001e0f00160b000c0600180c00281400
-281400180c000e07003018002010000e07001e0f00180c00160b00281400281400281400
-160b00261300140a000e07000603002e1700281400160b002010000e07002613000e0700
-0e07000c0600140a00160b00180c00160b001e0f00160b000e07002010002e1700140a00
-160b000e0700180c002814000e07001e0f00160b00261300160b000e07002010002e1700
-160b00160b000603000c0600201000201000201000261300201000160b002814000e0700
-160b002814001e0f000e07002613002010000603000c06001e0f00201000140a00140a00
-060300180c00160b00180c00060300261300160b00201000160b002010002e1700281400
-140a00020100180c00160b002010000e07000c06002814000e0700140a00201000140a00
-2010000e0700180c000c06002010001e0f000e07002814002010001e0f000e07000e0700
-0e0700301800160b00140a00201000201000261300160b000c06001e0f00140a00180c00
-160b00201000140a001e0f001e0f00281400140a00201000140a00201000160b00160b00
-0c0600ff99322814002e1700140a002e17002814002814003018004221004c2600402000
-301800381c00180c001e0f00201000160b00ffa142201000
-2e17002814003018004020004221004a25004c2600542a006c36008040009a4d00a25100
-b25900b85c00ea7500ff8a14ffa040ffa952ffc182ffdebcfff6ecfffcf8fffcf8fffcf8
-fffcf8ffdebcffc890ff9326ff8204de6f00a251007e3f007e3f006633005c2e004c2600
-3018004a25003a1d00301800160b002814003018001e0f00ffa448180c000c06000c0600
-0e0700180c00060300160b000603001e0f000603000e0700160b00060300201000201000
-321900261300020100060300160b00281400160b00180c001e0f000e07000e0700160b00
-160b00201000201000201000201000261300160b000e07002e1700180c001e0f00180c00
-160b001e0f00201000160b002010001e0f002010001e0f000e07000603000e07000e0700
-160b00201000140a002613002010002010001e0f000e07000c06002010002010002e1700
-160b000e0700160b000e0700140a002e1700020100020100140a001e0f00160b00180c00
-180c000e0700180c000c0600140a000c0600301800201000160b00140a00281400160b00
-201000160b000603000402000c06002010000e07000e07000c0600201000140a00ffa040
-3018002010002613003219002814002e17003a1d003a1d00442200542a006633007e3f00
-904800b25900d86c00ff860cff8f1effa040ff9b36ff8a14e27100d86c00aa5500884400
-6e3700643200522900422100442200381c00201000160b00301800201000160b00ff9932
-160b00261300180c000e07000c06000e0700180c00281400040200160b000e0700160b00
-140a001e0f00201000160b000e07001e0f001e0f00201000160b00201000180c000e0700
-201000160b00140a00160b00201000140a00201000160b000603000201000c0600160b00
-040200281400140a00201000140a001e0f00201000140a00160b00201000261300261300
-201000261300180c00201000180c002814000c06000e0700160b00160b001e0f000c0600
-201000180c00201000160b000e0700281400180c00281400160b001e0f00160b00281400
-2613000e0700060300201000180c000e0700160b00160b00261300180c00160b00140a00
-140a00140a00160b002010001e0f00160b002814002814000e0700261300201000160b00
-140a00201000261300201000281400281400140a00201000060300140a000e0700160b00
-180c002010001e0f001e0f00140a002814002010002613001e0f00160b00060300160b00
-0e07002814000201001e0f00060300180c001e0f00180c000402000e0700180c001e0f00
-201000160b002010001e0f00160b000603002814001e0f00ff952a180c002010001e0f00
-3018004a25004c26005c2e00a45200e87400ffa952ffefdefffcf8fffcf8fffcf8fffcf8
-ffdab4ffa74ede6f009c4e006e3700542a004c26003a1d00160b00301800281400ffa040
-301800160b00160b002010002814002010001e0f001e0f00281400160b001e0f00201000
-261300160b00160b00140a001e0f000e0700140a000e07001e0f00201000201000140a00
-160b00160b001e0f000e0700140a00140a002814000e0700160b002010003018001e0f00
-060300160b00160b002814000c0600160b000e0700180c00140a00180c00140a00201000
-160b001e0f000e0700180c001e0f000e07000e0700160b002814001e0f00160b00261300
-160b001e0f00201000160b000c06000603002010002814000e07000e0700201000180c00
-0c0600160b000c0600040200140a000c06002e1700201000160b000e0700140a00281400
-201000140a000e07000e0700160b00201000140a00160b00140a000e0700160b00160b00
-160b00160b00160b000603001e0f000c0600140a001e0f00180c00160b00160b000e0700
-0c0600060300160b00261300160b00140a002e1700160b004a2500180c002e1700160b00
-201000180c00281400140a002814002814002e1700281400160b002814000e0700160b00
-160b00160b000e0700140a00160b00140a00160b00160b00180c000e0700201000160b00
-060300ffa1420e0700160b001e0f002e17003018003a1d004020005a2d00522900422100
-301800261300201000301800160b00281400ff94280e0700
-160b002814004221003018003a1d004020004c26004a2500542a005a2d008a4500904800
-924900c66300e87400ff860cffa952ffc58afff1e2fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8ffb66cffa040f07800b25900aa5500904800783c005e2f004c2600
-522900321900381c00422100301800281400160b002010000e0700ff9b360e0700160b00
-160b002010000e07002814000e07001e0f00140a000e07000e0700060300140a00281400
-160b00060300140a001e0f000e0700160b00020100180c00140a000201002010001e0f00
-160b00140a00160b00201000160b00020100160b00261300060300160b001e0f00281400
-0c06001e0f00261300180c002010000e07000e0700040200160b000c0600160b00201000
-160b00180c00140a00160b00140a00281400201000140a000e07000e07000e0700160b00
-160b002e17002814002e1700160b00140a000e0700160b00180c001e0f000e0700281400
-261300201000180c00281400060300201000160b00180c002e1700140a000603001e0f00
-2613000e07000e0700020100160b00201000160b00060300060300140a000c0600ff9c38
-0e0700160b002e17003018002e1700381c004a25004221004a25005a2d00884400864300
-a25100d06800ff8102ff9428ffb366ffc890ffbc78ffaa54ff8a14d06800984c00884400
-763b006e3700442200402000301800321900160b00261300201000160b00201000ffa448
-1e0f000c06002010000e0700160b003018000e0700160b000e0700180c001e0f00201000
-180c00160b002613002010003219000e0700160b002814000e07002010000e07000e0700
-180c00281400160b00201000160b00201000160b00261300180c00140a00201000160b00
-160b000e0700020100201000201000160b00160b00201000301800180c00201000160b00
-201000160b002010001e0f000e0700160b002010001e0f00140a000c06002613000e0700
-261300160b000c06001e0f00140a002010000c0600261300160b002010001e0f00180c00
-2010002613001e0f00160b000e0700261300140a002613000e0700422100160b001e0f00
-201000201000180c000e07002814001e0f00180c002010000e0700160b00160b00160b00
-0e0700140a001e0f000e0700160b00281400160b00201000201000180c00160b00201000
-0e0700261300281400160b00281400201000180c00160b000e0700180c00201000261300
-0e0700160b000e07000e0700201000160b00140a00160b00140a00160b000e0700160b00
-0e0700040200201000180c00180c00201000201000180c002814000e07000e0700321900
-2814003018004c2600663300864300e47200ff9e3cffe0c0fffcf8fffcf8fffcf8fffcf8
-ffd7aeff9932d068009e4f006e3700542a00442200422100321900201000201000ff9d3a
-160b001e0f00160b000e0700180c00281400201000281400160b001e0f002e1700261300
-281400301800201000160b002010000e0700140a00140a000e07002613000e0700160b00
-160b00160b00160b00160b000e0700180c000402000c0600180c002814000e0700261300
-201000160b00160b00140a00160b000e07001e0f00180c00160b00160b000c06000c0600
-0e07000e0700160b00160b002010000e0700281400180c000c06002010000e0700160b00
-160b001e0f00160b00160b000e0700140a000e0700160b002613000e0700160b00180c00
-2814000e07000e07002010000e0700201000160b00160b00261300201000160b00180c00
-201000160b00281400180c00140a00140a00160b00201000160b000c0600201000140a00
-180c000e07001e0f00140a00261300140a003a1d000e07000603000c0600201000060300
-160b00140a00140a000e07002613002613001e0f000402002814001e0f002814001e0f00
-180c00160b00160b00140a002010002814001e0f00281400180c001e0f001e0f00060300
-2010001e0f00140a001e0f00160b00160b00180c00180c000e07001e0f001e0f00160b00
-201000ffa244201000160b000e0700201000180c00281400442200381c006432004a2500
-321900201000201000261300140a00201000ff9c38160b00
-2814003a1d001e0f003018003018004020004221004221006432006e3700643200864300
-ac5600b25900ea7500ff8b16ffa952ffcd9affefdefffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8ffefdeffb264ff8810ea7500b25900a452009048006432005c2e00
-4a2500442200542a004020002e1700281400261300281400281400201000ff9932160b00
-2e17000201002613000e0700201000201000140a002010000e07000e07000e0700201000
-160b00180c00201000140a00160b002010002010001e0f00180c00281400140a002e1700
-0e0700160b001e0f00180c00140a00201000160b001e0f00180c001e0f00201000201000
-0c06001e0f00281400160b00160b00180c000e0700140a002613001e0f00201000201000
-160b000603000e0700180c002010000603000c06002010001e0f00160b00180c00281400
-2010002613001e0f00281400201000160b00040200201000261300140a00281400201000
-281400261300201000201000140a00060300160b00180c000e07000603000e0700180c00
-2010000e07000e07000c06000c06001e0f00140a00281400201000060300160b000e0700
-281400020100261300281400381c003018003a1d005229006432005c2e00763b00884400
-b25900d26900ff860cff9c38ffdab4fffcf8fff4e8ffd1a2ffaa54ff850ac46200924900
-8040006432004c26004a2500422100381c00381c002814002010003a1d00201000180c00
-201000261300180c000e0700201000060300180c002010001e0f001e0f000c06000e0700
-0e0700281400201000140a000c0600060300180c00140a00201000261300160b00160b00
-2010002613002814002010001e0f001e0f000e0700160b00160b001e0f00201000180c00
-201000160b00160b00140a00180c00201000020100160b00180c000c0600160b00160b00
-2613002814000e07002010001e0f00201000160b000e0700160b000e0700201000140a00
-281400180c00160b00201000281400201000281400160b002010002010001e0f00281400
-0603002613002814002814002814001e0f00281400180c001e0f00140a000e0700180c00
-160b00160b001e0f00261300160b001e0f001e0f001e0f00321900140a00281400160b00
-2613001e0f00160b000e0700160b00180c00180c001e0f001e0f00160b00060300201000
-201000180c00160b000c06000603002010001e0f001e0f00180c002010001e0f002e1700
-2814001e0f00160b00201000160b00180c000603000e07002010001e0f00180c000e0700
-140a000201000603000e0700180c000e0700140a00140a001e0f000603002e1700160b00
-301800422100542a005e2f007e3f00ca6500ff870effb66cfff8f0fffcf8fffcf8ffe7ce
-ffb76eff8810bc5e006e3700663300542a004a25002814002814002814000603002e1700
-201000281400160b00180c00140a000e07002010000603001e0f003018000e0700060300
-201000201000160b000c0600180c000e07002613000e07002010000c06001e0f00201000
-0e0700160b00180c000e0700160b00281400140a000e0700160b002e1700160b000c0600
-160b00422100180c00160b000e07000e0700160b000e0700301800160b00261300281400
-2010001e0f00140a00160b000e07000e07001e0f00140a00180c00160b00201000160b00
-160b001e0f000c0600160b00040200180c000e0700201000140a000e0700261300140a00
-2010001e0f00261300160b001e0f002814002010002814001e0f000e0700301800261300
-201000160b002613002613001e0f002613002814002010001e0f00261300201000201000
-060300281400201000160b00160b00140a00281400160b00160b00140a00160b001e0f00
-1e0f00140a00140a00201000060300140a00281400201000201000160b00201000281400
-0e07002010001e0f00140a00160b00160b003018000c0600261300160b00180c00160b00
-160b000e07000603002010000e0700201000160b00180c000e07000c0600160b00180c00
-180c00ff98300c06000e07002010001e0f003018002814003a1d003a1d004221003a1d00
-2814003018002613001e0f00160b000e0700ffa2440e0700
-3018002814002814002814003a1d002814002e17004a25004221005c2e00663300763b00
-8a4500ce6700d26900ff860cff952affc182ffebd6fffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8ffc890ffa448ff8810ce6700ac5600ac5600763b006c3600
-5a2d004c26004a25004221003018003018003219002010002613002e1700160b00ff9122
-2010001e0f002010001e0f000e0700160b00160b00160b00160b00180c00140a00261300
-160b00140a00160b00140a000c06001e0f00060300201000180c000e0700281400201000
-201000201000160b00160b00281400201000160b000402002010000e0700160b00160b00
-261300140a00201000281400381c000e0700180c000c06000e07002010002010001e0f00
-2010000e07000c0600180c00160b002e1700140a00180c000402000e0700201000020100
-180c00160b002613000c0600160b000e07001e0f00281400160b00301800160b001e0f00
-1e0f002010000c06000603000e0700281400180c00160b002010002010000e0700020100
-261300201000160b00201000060300160b00201000140a000e07000c06000e0700160b00
-180c00201000160b002010002814004020004221004a2500422100663300663300864300
-984c00c66300ff850affaf5effeddafffcf8fffcf8fff4e8ffbd7aff9c38de6f00984c00
-542a00542a00542a004221004020003a1d00281400201000261300301800301800201000
-1e0f00201000180c00180c00140a000603002814002010002010000c0600160b000e0700
-180c001e0f00180c00160b00201000160b00261300060300020100201000140a00160b00
-0c0600060300160b002010002010000e0700140a00160b00160b00140a00140a001e0f00
-201000160b000e0700160b000603001e0f00020100160b000e0700201000140a002e1700
-0e0700160b000e07002010001e0f000e07001e0f00160b00140a00201000281400140a00
-060300201000160b00201000140a002814002814000c0600180c000e07002814000e0700
-1e0f00180c00160b00180c00180c00281400281400160b00261300160b00201000060300
-0c06002010000c06002814001e0f000e0700020100140a000c06000402001e0f00201000
-281400180c00180c003018000e0700160b002010002814002814000e07000e0700201000
-201000180c00160b00201000201000261300140a00180c000e0700160b000c0600160b00
-201000180c000e0700140a000e07002010000c06002010000e0700201000060300180c00
-2010002010000e07000e0700140a00140a00160b00180c002010001e0f002613001e0f00
-2e17003a1d005229005229007e3f00aa5500ce6700ff850affab56ffc890ffc080ffb468
-ff8e1cde6f00b65b007e3f006e37005c2e002e17003a1d002010001e0f003018001e0f00
-180c002e1700160b002010001e0f001e0f002814001e0f00201000201000140a00160b00
-160b00140a001e0f00201000180c00180c000e0700180c00201000160b00301800201000
-201000301800160b001e0f00261300140a00180c002010000e0700040200140a00281400
-1e0f00180c00160b000e0700160b000c0600180c00140a000e0700201000201000201000
-201000160b00040200180c00160b00020100160b001e0f002010000e0700261300060300
-2010000e07000e07001e0f001e0f00180c000e07000c0600160b00180c000603000e0700
-0e0700060300180c00160b00261300160b00301800160b00201000060300140a00180c00
-281400160b00160b002e17000e0700261300180c00160b00140a000201000e0700201000
-0e0700140a003219000e0700261300180c00160b001e0f00060300160b00020100201000
-0c0600140a00140a001e0f00201000201000140a00180c00201000160b00261300160b00
-201000160b002010001e0f002814002010002010001e0f000c0600281400060300160b00
-2010000e07001e0f00201000261300180c000e07000e07002613001e0f00160b00180c00
-0c0600ff9d3a160b00180c002010002814001e0f00180c003018002e1700201000261300
-3219002e1700180c001e0f00281400140a00ffa0400e0700
-2814000603002010002010003018003018004221005a2d004a2500522900643200643200
-783c009c4e00b85c00e07000ff9326ffb76effdebcfffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8ffdebcff9c38fc7e00e27100bc5e00aa5500864300804000
-763b006432006432004c2600422100261300160b00160b00261300160b00140a00261300
-ff9932160b00160b000603000201000603001e0f00160b00180c00180c001e0f00180c00
-180c00160b002010000e0700201000201000140a000c0600201000160b00160b00180c00
-140a00140a00201000140a00020100160b003a1d000603002010000e07001e0f00160b00
-2010001e0f00140a002613000e07000c0600180c00281400020100020100180c00281400
-261300160b000e0700160b00180c00160b00201000160b00180c00140a00160b00160b00
-1e0f002613001e0f00201000140a00180c002010002613000c0600160b000e07000e0700
-180c002814002010000c0600281400140a00140a00140a000e0700160b000e0700140a00
-140a00160b000c06000e0700160b000e0700160b002e17000201000402001e0f00160b00
-160b002814002613002814003018004221004020005229004c26008643006633007e3f00
-984c00c66300ff8204ffa74efff1e2fffcf8fffcf8ffebd6ffc080ff9428d06800a25100
-7e3f006432004a25003219003a1d003018003219002e17002e17003018001e0f00201000
-160b00060300321900060300140a00140a00180c00140a00040200140a00140a00160b00
-140a00140a002010000c06003a1d00261300020100160b00201000261300201000201000
-201000261300201000261300140a00201000140a00040200180c001e0f002010001e0f00
-180c00160b00180c002010001e0f002010002613002814001e0f00201000160b00060300
-180c001e0f002814001e0f00281400281400160b002613002010001e0f00201000261300
-201000261300201000140a00140a00201000160b00180c00201000180c001e0f00201000
-160b002814000e0700261300140a00180c003a1d00301800180c00281400281400180c00
-180c00060300160b000c06000e07000e0700160b00261300201000180c00180c00201000
-281400180c00180c002010001e0f00261300201000160b00160b00060300140a00160b00
-160b00160b00140a00160b00060300160b000603001e0f00180c00060300180c00040200
-2010002613000e0700160b00060300160b00160b00180c00180c00180c00201000201000
-140a002010001e0f00140a001e0f00201000160b002e1700160b00ffa142281400160b00
-2613002613004a25004a2500663300783c00ac5600ce6700fa7d00ff9122ff9326f27900
-ce6700a45200804000763b005229005a2d00381c001e0f004c2600201000381c00ffa244
-180c002613001e0f000e07000c0600180c00160b00201000180c001e0f00160b00140a00
-140a002814000c06000e07000c0600201000201000040200140a001e0f00160b002e1700
-281400281400281400201000140a001e0f000e07002613000201002e1700160b00160b00
-1e0f00160b00301800201000140a00160b00160b000c06000c0600201000201000060300
-180c002e17001e0f001e0f000e0700180c00160b003018000e07001e0f00060300140a00
-160b00281400060300160b00160b002010002010002613000e0700180c00040200160b00
-201000180c000e0700281400160b002010000e0700160b00160b00261300160b00261300
-201000160b000e0700160b00180c00160b000603002010001e0f00301800201000140a00
-201000160b00160b00281400180c00160b001e0f00180c00140a001e0f00160b00160b00
-160b00140a000e07002010002814000e07002010000e07000e07000e0700160b00281400
-2010002010002613001e0f002613002010000e0700180c00180c00180c000e0700140a00
-1e0f001e0f000e0700261300201000180c000e07001e0f00180c000e07000e07001e0f00
-0e0700180c00ffa1422010002010002010002613002e17002814002814000e07002e1700
-2e17002010002814003a1d002613001e0f00ffa0401e0f00
-2613002613002010003018002613002814003a1d004020003a1d004422005a2d007e3f00
-5e2f008643009c4e00de6f00f67b00ffa54affcd9afffcf8fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8fffcf8ffd5aaffa040fa7d00d06800b25900aa55009249007e3f00
-5e2f007038005c2e004221004a2500301800422100381c00281400180c002814001e0f00
-ff9e3c201000180c00180c00160b00160b00040200020100180c000e0700160b00140a00
-140a002010001e0f003a1d00180c001e0f00201000060300160b000e07001e0f001e0f00
-201000140a00160b001e0f00201000201000140a000c06001e0f00180c002010000c0600
-160b00180c002814000c0600261300180c00180c00020100180c002814000e07000e0700
-2010002814000e0700301800160b00160b000e0700201000201000180c00180c00281400
-180c00201000180c00160b001e0f002613001e0f00160b00201000321900180c00180c00
-160b00281400140a000e0700140a00180c00201000180c001e0f00060300140a00201000
-060300140a00180c00060300060300180c000e07002010000c06000e0700160b000e0700
-1e0f00160b003a1d00160b003018005c2e003a1d00381c003a1d006e37005e2f00643200
-9e4f00b65b00e47200ff8a14ffcd9affe7ceffe9d2ffddbaffa74eff8a14bc5e00904800
-763b006c36005229004a2500321900301800402000321900261300321900201000301800
-2e1700160b001e0f00160b000e07002613002010001e0f000e0700160b001e0f000e0700
-180c000e07000e0700160b000e0700160b000e07002613001e0f00160b00201000140a00
-201000160b00261300160b00160b00201000261300140a00060300261300160b000e0700
-261300160b001e0f000e07000e0700160b000603001e0f00140a00060300160b00281400
-2010001e0f002010002814000e07001e0f00160b000e0700060300160b000e07001e0f00
-2010002010001e0f00160b000e0700160b00160b00160b00040200261300140a00060300
-160b00060300160b00180c00160b001e0f001e0f00281400180c000e07001e0f00281400
-1e0f00201000261300160b00160b001e0f00160b00160b00201000140a00201000060300
-2010002010002010000e07000e0700020100140a00281400281400160b00281400261300
-0e0700140a00180c001e0f000c0600160b00160b00261300180c00160b000e0700160b00
-180c000e0700180c00140a000e07000201001e0f00180c00160b00180c000c06000e0700
-0c0600180c00160b001e0f000e0700261300140a00180c00180c00ffa54a1e0f001e0f00
-3a1d00201000381c004221004422007038008a4500fff1e2fff1e2fffcf8d06800c86400
-ffe9d2ffddbaffd1a25c2e004a25004a2500381c00321900201000301800201000ff9c38
-201000140a002814002010002010002613002613002010000e07000e07002613000e0700
-1e0f000e07002814001e0f00160b000c0600180c00160b00140a00160b00201000201000
-140a000e0700261300160b002010000c06001e0f00160b000c0600160b00201000180c00
-0e0700160b00261300160b00180c002010002010002010000e07002814002e1700281400
-160b00180c00060300180c00060300140a00140a000e0700160b00160b00201000160b00
-1e0f000e0700160b00160b000e0700160b00160b000e07002010002010001e0f001e0f00
-180c001e0f00201000140a002e17000c0600160b00160b00201000160b00160b00301800
-1e0f000c0600281400060300201000261300140a00040200140a001e0f00160b00201000
-1e0f002010003018002e17000e0700201000281400180c002814001e0f00160b00160b00
-160b00180c002814002010000e0700201000160b00140a00140a000e0700140a001e0f00
-140a001e0f002814002613002814002814002814001e0f00160b00180c00201000160b00
-0603001e0f001e0f00140a002814000e07000e07000e0700160b00160b00160b00160b00
-2010001e0f00ffa1422814000e07002010002010003a1d00301800381c00201000180c00
-2613002613003018000e07000e0700ffa74e140a00301800
-ff9e3c1e0f000c06002613002e17003018002814002e1700381c004422004a25004a2500
-6c36006e3700904800ac5600d06800ff8a14ffa74effc488fffcf8fffcf8fffcf8fffcf8
-fffcf8fffcf8fffcf8ffefdeffb366ff9428fa7d00d26900b85c009c4e00a45200864300
-763b00643200542a006e37003a1d003a1d003a1d00301800281400201000201000281400
-160b00ff9c38201000140a000e0700160b000e0700160b00160b00160b00201000160b00
-0e0700160b000c0600281400180c00201000201000160b00140a001e0f00160b00140a00
-180c00261300281400140a002613000603000e0700180c00160b000e07001e0f000e0700
-3a1d00060300160b00160b000e0700140a000e07001e0f00281400201000160b002e1700
-2814000c06000e07000e0700140a002010001e0f00261300180c000e0700281400201000
-0603000e07002010000e0700160b00160b00160b001e0f00201000281400201000180c00
-1e0f002814001e0f00180c00201000180c00201000180c00180c00160b00140a00180c00
-160b000402001e0f00020100160b000603000201000e07000e0700160b000e0700ff9932
-160b002613002613002814002814002e17003219004221004422005c2e006633006e3700
-6e37009c4e00b25900fc7e00ffa040ffb76effba74ffb468ff8f1eea7500b25900864300
-7e3f004a25004221005229003a1d00060300140a00160b00201000281400201000ffa244
-2814000e0700060300020100140a00201000180c00140a000603000e0700160b000e0700
-1e0f00160b00140a00140a002010002010000e07001e0f002814000e0700160b00160b00
-160b000e0700180c00281400201000060300201000160b00160b00180c00040200160b00
-261300160b00140a00160b00261300060300160b000c0600180c00160b002613000e0700
-1e0f000e07000e0700020100201000060300160b00160b00160b00201000160b00160b00
-2010002010000c0600160b00201000160b00160b001e0f00160b00060300261300140a00
-160b001e0f00160b00381c000603001e0f00180c000c0600201000160b001e0f00140a00
-1e0f00201000160b001e0f00180c00180c00160b000e0700201000040200140a00180c00
-1e0f00160b000e0700160b00140a00201000140a00140a00160b00180c00160b00040200
-140a00160b000e0700160b00160b002613001e0f00160b00140a00160b00201000201000
-1e0f00140a00140a00160b00140a00140a00201000281400160b00180c00281400140a00
-040200160b00281400160b00140a000e07001e0f001e0f00160b00201000201000301800
-1e0f00381c002e1700ffaf5effb4684c26005e2f00763b009048009a4d009c4e00884400
-9048008a45006e37004422004020004c26002613002814003a1d00180c00ffa54a160b00
-160b00281400261300180c00180c002010001e0f001e0f000c06001e0f00160b000c0600
-180c00201000201000180c00140a000e0700201000301800140a00201000160b00180c00
-140a000e07002613002613001e0f000e0700180c00180c00201000201000140a00160b00
-2010000e0700160b00201000201000180c00201000160b00140a00201000140a00180c00
-160b00160b00201000160b001e0f000e07000e0700180c00281400201000140a00261300
-201000201000180c000e0700140a00281400140a000603002814002010000e0700281400
-180c00140a002010000603000603000e07000e0700180c00180c00180c00281400281400
-160b00160b000603002613001e0f00160b002814001e0f002613002814000e0700180c00
-0603002010002010000e0700040200180c002010002010001e0f00261300160b00281400
-160b000e0700180c002010002814000e07000e0700321900060300180c00160b00140a00
-2010001e0f002010002010000e07002e1700180c00160b001e0f00160b00180c000e0700
-180c001e0f00261300201000201000180c00180c00201000160b000c0600201000160b00
-160b00060300201000ff9d3a160b00160b00160b00160b00140a00201000281400180c00
-160b00180c001e0f00281400ffa1420e0700201000140a00
-201000ffa1422e1700160b002e1700301800160b00301800422100281400542a004a2500
-4c26005c2e007e3f00984c00aa5500e27100ff8102ff9d3affc890ffe2c4fffcf8fffcf8
-fffcf8fff4e8ffe7ceffc182ffa040ff8e1cfa7d00d86c00b25900984c00864300864300
-6e37006432005229005229005229004a25004422003018002814002613000e0700261300
-0e0700ffa64c160b00281400140a001e0f00160b00160b000c06000201001e0f000e0700
-180c00160b002010001e0f00160b00060300160b001e0f000603001e0f00201000160b00
-160b000e0700201000301800180c00180c002e17000e0700201000140a00040200160b00
-1e0f00160b00140a00201000160b001e0f001e0f002613000e07002613000e0700140a00
-060300140a00180c001e0f001e0f002613001e0f00160b002e1700201000261300140a00
-160b002814002814001e0f002814002010001e0f002e1700201000160b001e0f00281400
-281400261300140a00180c00140a00180c000e0700201000040200160b000c06000e0700
-201000160b001e0f000c06000e07000201000e07000603002613000e07000e0700ffa448
-160b00281400281400301800381c004020004020004221004a25004c26005e2f005c2e00
-763b008a4500a25100e07000f07800ff8a14ff9326ff870ef07800b45a00984c00804000
-763b004c26002814003a1d00281400381c00281400160b00261300281400160b00ffa142
-2e1700140a00140a000e07002613000e0700140a000603002e1700180c00140a000e0700
-1e0f000e0700180c00140a00180c00180c00201000261300160b000e07000603002e1700
-0e0700180c002010002010001e0f000c0600201000160b00140a00060300281400140a00
-0e0700140a001e0f002010001e0f00140a00160b00281400060300180c00060300160b00
-201000160b000e07001e0f00140a00180c00201000140a000c06000e07002e1700201000
-0e0700160b000e0700180c000e0700201000180c00261300201000140a00281400180c00
-0e07001e0f001e0f00180c00160b001e0f00180c001e0f00160b00201000180c00261300
-261300160b000c0600201000140a00201000281400381c00160b00180c000e0700040200
-2613002814001e0f002010003018002e1700140a00301800060300160b000e0700281400
-180c00281400160b00160b000c0600180c00160b001e0f00180c00160b00140a00261300
-0c0600160b002814000e0700060300140a00201000140a000603002010001e0f00060300
-0e0700160b000e07000e07002010000e07000e07001e0f000201004a2500201000201000
-301800321900281400301800321900542a00542a006432005c2e007038006633006c3600
-6c3600643200542a003a1d004a2500ffaa54ffae5c2814002010002613000e07002e1700
-201000160b00281400160b00160b00201000180c00140a000c0600180c00160b00160b00
-201000160b00160b00281400160b000e07002613000c06002010000e07000e0700160b00
-060300160b000e07000e07001e0f00201000160b000e0700160b000e0700180c00281400
-2010000e07002814002010000603001e0f00180c00261300160b00160b00160b00140a00
-060300160b00261300ff9932ff952aff9d3affa448ff9e3cff9d3affa040180c001e0f00
-0c06002814000e0700160b001e0f00160b000e0700180c000e0700201000180c00201000
-261300140a00160b002010002814000e07002010000603002010001e0f00201000281400
-3018002010000e07000201001e0f00261300020100160b00060300160b001e0f00140a00
-160b001e0f001e0f00180c00060300160b002010001e0f00180c002010002e17000e0700
-160b000c0600180c00180c00160b00160b000e0700160b00160b00020100281400160b00
-140a00180c001e0f00020100160b001e0f001e0f000e07001e0f001e0f000c0600160b00
-201000201000140a00140a00160b00140a00180c000e0700160b00301800060300160b00
-2e17002613000c0600ff9d3a160b00140a002814000201000e07001e0f00180c00201000
-1e0f00180c00180c00180c00ffa0401e0f000e0700160b00
-301800381c00ffa040160b00321900140a00321900301800281400301800402000422100
-4221005c2e00643200763b008a4500aa5500ca6500f47a00ff9020ff9d3affc080ffc488
-ffbc78ffbb76ffa74eff9e3cff8810f47a00e87400c86400b25900984c00904800864300
-6c3600783c007038004c26004c26006432004221003a1d00301800201000201000321900
-201000160b00ffa64c2814002613000c0600160b00140a00180c002010002613000e0700
-160b00180c00160b001e0f00140a00160b00160b00180c00160b000e0700160b00160b00
-160b00060300140a00140a00140a000e07002010000e07002010002e1700301800160b00
-2010000c06000201001e0f00201000201000060300160b000e07003018002010001e0f00
-0e07001e0f000e0700160b00201000301800301800160b003018002010001e0f00180c00
-140a000c06000e0700140a00180c00020100160b000e0700160b002010002613000e0700
-180c00281400160b00160b00180c00201000281400160b00180c00140a00201000160b00
-0603000e0700140a000603000201000201000c06000e0700160b00040200180c00ff9932
-2613002010003a1d003a1d003018002613002814003219004221004c26004a2500643200
-5c2e00643200904800984c00bc5e00de6f00d06800d86c00c46200aa55009048006e3700
-6432005c2e00402000321900281400281400201000261300160b00160b001e0f00ffa54a
-1e0f000e07003a1d00281400180c00180c00160b00160b000e0700160b00180c00160b00
-0e07000e0700160b000e07002814001e0f001e0f000e0700180c00140a002e1700201000
-1e0f000e07001e0f000e0700201000201000140a000e07001e0f000e07000e07000e0700
-261300160b00201000201000160b000c0600381c000e0700281400180c00160b00140a00
-160b00160b00160b00160b00140a00160b000e0700281400140a002814001e0f00060300
-0e0700160b00140a00281400261300140a00140a001e0f000e07000c06000e0700020100
-2814000e07000e0700180c00160b002010000e07000e0700140a002010001e0f00281400
-0c06000c06000c06002010001e0f00160b00201000160b00160b00160b001e0f00160b00
-180c001e0f000603002613000e0700160b00160b00160b002010000e0700140a00160b00
-1e0f00180c00160b002010000603001e0f002010002e1700160b001e0f002814001e0f00
-160b00201000201000160b00180c00261300160b00180c00160b00201000140a00160b00
-0e07000e0700180c003018002613002010001e0f001e0f00160b00160b002010001e0f00
-201000ff9d3a2e17002613002814003a1d004422004a2500542a005c2e006c3600542a00
-542a005229005a2d00422100321900381c00281400261300301800281400321900261300
-2010002e17002613000c0600060300060300201000281400301800160b00201000281400
-0e0700201000180c001e0f00140a00160b00180c00160b00201000160b001e0f00201000
-160b00140a000e0700180c001e0f002613000c06000e0700160b00180c00140a000e0700
-201000201000160b00160b00160b00281400160b00180c00160b00281400160b00261300
-261300180c00ffa244160b001e0f00180c002814002010000e0700180c00ff9830ffa64c
-180c001e0f00160b00140a000e07002613002814000e0700180c000201000e0700201000
-1e0f000e0700140a00160b00281400160b00180c00160b002814002010000e0700201000
-060300301800201000160b000e07002010000e0700201000140a000e07000e0700160b00
-2010001e0f00180c00160b001e0f002010000e07000e07002010002010000e0700160b00
-0e0700160b00160b00201000160b001e0f00281400201000180c00180c00160b001e0f00
-2e17000c06000e0700180c000e0700201000281400160b00140a00201000160b00180c00
-2010001e0f000e0700281400281400201000201000160b00180c001e0f000e0700160b00
-180c00180c00261300160b00ffa54a3018001e0f000402000201000e07002613000e0700
-180c00321900ff9c38ff9d3a160b000e0700281400160b00
-261300261300281400ffa74e140a000e07003018002613004422002814004422003a1d00
-4221004a2500542a006633007e3f00864300aa5500d26900e07000f67b00ff850aff952a
-ff8306fc7e00f67b00ff8a14e47200e27100d06800ac5600ac56009e4f00864300804000
-783c005e2f005c2e006432006432004221004a2500381c00422100160b003018000e0700
-0c0600281400ff9b36140a001e0f00160b002814000e0700060300160b002010000e0700
-160b00160b00160b00160b00140a00140a00180c00201000160b002e1700180c00180c00
-2010001e0f000c06000e07003219000e0700160b00140a002010003018002010000e0700
-2010000e07000c0600281400180c000e0700281400160b00140a000402000c0600261300
-1e0f00281400060300160b001e0f002e17000603003018001e0f00160b00160b000e0700
-180c00180c002814001e0f002613003a1d00140a002010000e0700281400180c00160b00
-2e1700180c002010002010002010002010000e07000e0700140a00060300160b000c0600
-160b00180c000e0700140a000e0700160b000c0600060300160b000c0600160b00160b00
-2010002814001e0f002814004020003a1d002814004422003a1d004221004a2500422100
-4c26005e2f00763b00763b009048009c4e00b85c00a452009a4d007e3f007e3f00864300
-4221005a2d003a1d00321900321900321900160b002613003a1d00201000140a00060300
-160b00140a00160b00140a00140a00060300180c000e0700160b00040200201000160b00
-0e07003018002010000e0700180c001e0f00281400160b002814002010002613000e0700
-040200160b00180c002814000603002010000e07002010000e07000e0700160b00201000
-0e07000e0700180c00180c00180c000e07000e0700160b001e0f000e07001e0f00180c00
-160b00180c00201000180c002010000c06002e17001e0f00140a001e0f00160b001e0f00
-180c00140a001e0f00160b00160b00201000180c00140a00160b001e0f001e0f00160b00
-140a00140a00160b00020100160b00020100160b00060300180c001e0f001e0f00201000
-1e0f002814002010001e0f000c06000e0700261300160b000e0700160b000e0700140a00
-160b002613002010000c06001e0f001e0f002010002010001e0f000c06001e0f00201000
-140a00160b002010000c0600140a00180c00180c002e17002010000e0700160b00060300
-0e07001e0f00201000140a00180c000c0600140a000e07002613000e0700160b000c0600
-0e07001e0f003018002010001e0f00281400160b002010002e17002613002010001e0f00
-fffcf81e0f003018003018002613002814004020003a1d00522900542a004c2600522900
-4c26004422003a1d004020002814003018002e17002613001e0f00ffa2442010000e0700
-281400261300201000180c00180c00140a00180c00160b00261300201000160b00140a00
-2010001e0f002e17000c06000e07002010001e0f002010000c0600160b00180c00201000
-0c0600160b001e0f00160b000e07002010002e17001e0f00160b00281400180c00201000
-201000180c00160b00140a00160b000e07001e0f00140a00160b000e0700180c00160b00
-0e0700ffa448160b00261300201000301800180c00201000060300160b00180c00201000
-ff9e3cffa040201000180c00160b00020100060300281400140a001e0f00201000160b00
-2010000c0600160b00160b002814001e0f00160b000e07002010002e1700060300261300
-2613001e0f00281400201000201000180c000e07002814002010002010000603000e0700
-2010000e0700140a00160b000e0700140a00180c00140a00160b000e0700140a001e0f00
-160b00281400140a002e17002e1700160b00160b00160b00140a000c0600201000261300
-201000281400020100140a00201000140a00160b00160b002010002010000e0700160b00
-140a00180c001e0f00180c000c0600160b00180c00160b001e0f001e0f002e1700160b00
-140a00160b001e0f000e07000c0600ff9c38ff9932ffa4481e0f00160b001e0f00201000
-ffa64cff9e3c1e0f001e0f00281400160b001e0f00261300
-201000160b001e0f001e0f00ffa2440c0600160b003018001e0f00180c00402000301800
-321900402000542a005c2e00763b006e3700783c00884400b65b00c46200d06800d26900
-de6f00e07000d66b00c66300b65b00ca6500a45200c864008643008a4500884400703800
-703800763b006e37005e2f006432004c26004a25002e17002814001e0f002e1700201000
-180c002e1700ffaa54180c00160b000603001e0f00160b001e0f001e0f00160b000e0700
-201000160b000c0600180c00160b00160b00140a00201000180c000e0700301800180c00
-1e0f000e0700160b00160b000603002010000c06000e07002613002010002814000e0700
-160b000e07001e0f001e0f00160b00160b002814002010000c06000e0700201000180c00
-160b003018002814002e17000e0700160b00160b00160b00180c00160b00301800281400
-261300281400160b00160b002010001e0f000e0700180c001e0f00160b000603000c0600
-180c00160b00180c001e0f001e0f00140a00180c00160b00180c00301800160b00180c00
-2613000603001e0f000c06000c0600020100180c00140a000e0700160b001e0f00160b00
-2e17000e0700281400281400261300281400381c002814003a1d003018003018004c2600
-2e17004422005a2d00763b006e37008040008643009249009249006c36006e37005a2d00
-442200381c002814003a1d00301800201000301800180c00201000180c00180c00160b00
-180c00160b000c0600060300201000180c00140a000e0700160b000e07000e0700160b00
-1e0f002010002010002010000c0600261300180c000e0700160b00281400140a00160b00
-140a00160b00160b00140a00281400180c00261300160b00160b000e0700160b00140a00
-0402000e07002814000e07002010002e1700281400160b000e0700201000140a000e0700
-1e0f00281400180c00180c00160b00201000160b00261300160b000e07000c0600160b00
-140a00160b001e0f00160b00180c00180c00180c00180c00180c001e0f001e0f00201000
-180c00201000180c00160b000e0700160b00201000020100281400180c00261300160b00
-2613001e0f00201000180c00160b002010000c0600160b00201000160b00261300160b00
-1e0f000e0700201000201000160b00160b000e0700160b001e0f000201000c0600160b00
-0e07000c0600160b00160b00180c00281400160b002010002e1700180c00160b00180c00
-2814000e0700281400020100140a000e0700140a00261300160b00140a00160b000e0700
-180c00140a00140a002010000e0700180c00261300140a00180c00180c00201000261300
-ffa244160b002e1700261300261300381c004020004a25004221004422003a1d004c2600
-3a1d003018002e17004221002e1700301800301800301800ff9e3cffa040160b00201000
-2e17000e07002e17000e0700140a00140a00160b00160b001e0f00180c00201000201000
-281400160b001e0f00140a00160b00160b000c06000e0700201000160b00160b00160b00
-0e0700201000180c002613002613001e0f002010000c0600201000180c001e0f000e0700
-281400201000160b00160b00060300160b00261300261300060300281400180c00201000
-ffa64c201000160b001e0f00160b00160b002613002010002814000e0700201000201000
-2010000e0700ffa040140a000c0600160b00180c00160b002613000201002814000e0700
-201000180c001e0f000e0700201000201000140a00140a00201000180c00160b00201000
-160b00180c00160b00160b00201000140a000e07002010001e0f001e0f001e0f00140a00
-180c00160b00180c00180c00140a00201000160b00160b000c06002e1700180c00301800
-201000261300160b001e0f00180c002613000e0700301800201000180c000e0700201000
-2010001e0f000c06001e0f002e17000e07001e0f003018000e0700160b002010001e0f00
-180c002010000c0600020100281400180c002e17000e07000e0700060300160b00281400
-160b00060300160b00201000201000201000060300201000ff9326ff9c38ffa448ffa244
-160b000c06002814000e0700180c00160b00281400060300
-2814001e0f000e0700180c00201000ff9c381e0f001e0f00201000281400381c003a1d00
-381c003219004020004221004221005c2e00542a00763b008a45008643009e4f00b25900
-b25900a25100ac5600be5f00b45a00aa55009a4d00904800904800783c006e3700783c00
-763b00763b006e37006e37005e2f00542a00542a00381c004a2500381c002e1700281400
-160b00180c00ff9932140a00160b000e0700180c000e0700180c000c06001e0f00160b00
-140a00180c00180c002814001e0f002010002010000e07000e0700140a000e07000e0700
-2814000e07001e0f002e1700140a00060300160b00160b00060300160b000e0700201000
-201000160b00160b00020100140a00140a003a1d000e0700140a00180c000e0700201000
-140a00201000140a00261300201000201000201000160b00180c00402000180c001e0f00
-1e0f002e1700140a00160b00281400261300180c00201000201000160b00301800281400
-2010002613001e0f002010001e0f000603000c06000e07000e07001e0f00160b00160b00
-0e07000e0700180c00201000040200160b001e0f00160b00020100020100020100261300
-281400140a00160b00180c002e1700281400301800301800422100381c00442200281400
-5c2e00422100522900542a00663300763b00783c00804000763b006c36005e2f00542a00
-321900321900381c003219003018002814001e0f002010002814001e0f00180c00140a00
-381c001e0f000603000c0600140a00160b000e07000c0600160b001e0f001e0f001e0f00
-180c00160b00160b00060300160b00160b00060300160b000e07001e0f00140a00140a00
-160b00281400180c00140a002010000e07000e07001e0f00180c00281400140a00261300
-140a000e0700160b003219000e0700281400040200201000201000140a000e0700160b00
-0e07000c06000c0600160b00140a000e0700160b00301800201000281400160b00261300
-160b001e0f000603000603002814001e0f002613001e0f000e0700140a00160b000e0700
-0e07001e0f00160b00180c00201000281400140a001e0f00160b00201000201000281400
-201000201000261300201000201000160b002613000e0700201000281400201000060300
-201000180c00140a000c06000e0700020100140a00261300160b00201000281400180c00
-281400160b001e0f000e07001e0f001e0f000e0700160b000e0700160b001e0f000e0700
-160b000e07001e0f00160b000c0600160b00160b00201000160b00060300201000140a00
-180c002010000e0700201000201000201000281400140a000603001e0f00201000261300
-2814002010002814002010002814003a1d003219004020003a1d003a1d00381c005c2e00
-442200381c004a2500301800381c002814002e17002e17002814002e1700ff9c38381c00
-201000160b000603000e07002010002814003018001e0f00140a002814001e0f00160b00
-0e0700160b00140a00160b002010002010000e0700180c00140a000c0600160b00180c00
-1e0f000e0700060300160b000c0600140a00160b002010001e0f00160b00160b001e0f00
-140a00160b001e0f00261300201000381c001e0f00140a000c0600261300140a00ff9830
-160b00281400301800060300180c002010001e0f00060300140a00140a00180c00281400
-2010001e0f000c0600ffa142160b00160b000c0600140a00281400160b00160b000e0700
-160b000c06000e07002010000e0700160b00160b00201000160b00060300160b000c0600
-201000140a00140a00201000201000060300201000261300160b00281400281400201000
-180c00180c002613001e0f00020100180c000603000e07000c0600201000060300140a00
-2010000e07000e0700160b001e0f00261300261300160b002010000603000e0700140a00
-1e0f00140a002613001e0f00160b00160b00160b000e0700060300180c00261300180c00
-160b002010001e0f00301800201000160b00140a001e0f00140a000e0700321900020100
-201000201000160b004a2500140a00160b00201000180c00140a00180c00140a00140a00
-1e0f002613002814001e0f00160b00180c00160b00261300
-3018002e1700160b00301800261300281400ffa142ffa1422814001e0f00261300321900
-422100381c004221004221004422004a25004c26005c2e006432006e37006e3700904800
-864300864300a452009e4f00884400984c00804000783c006e37006e37007038006c3600
-763b006e3700763b006633005e2f004422004a25004a25003a1d003a1d00301800201000
-201000180c00ffa040140a000c0600180c00180c000603000e07003018000e0700201000
-2010000201000201000e0700160b00201000180c00160b00281400180c000c0600140a00
-0e0700140a002010002010002814001e0f00060300140a00140a00281400140a000e0700
-1e0f000c0600180c00160b00201000281400160b00201000160b002010001e0f002e1700
-281400281400160b000e07000e07002e17001e0f00281400160b00301800201000281400
-180c002613001e0f00281400201000160b00281400201000140a000e0700201000160b00
-0c06002010001e0f00201000160b000402002613000e07001e0f000c0600301800160b00
-180c00160b00040200180c000603000e07000c06000603000e0700140a00140a00160b00
-180c00ff9830160b00281400381c00180c00422100301800381c002814004a25003a1d00
-3a1d004a25003a1d004422006c3600542a005e2f005c2e005c2e00442200442200442200
-4221003018002814002010003a1d00180c002010002010000e0700201000ff9d3a160b00
-0c0600160b000e0700160b00160b00180c00140a00140a00140a00180c000e0700060300
-160b001e0f00140a00060300261300140a00160b00160b00140a00180c001e0f00160b00
-1e0f00160b000603002814002010002010000e07001e0f00160b002e17001e0f00201000
-1e0f00180c001e0f00160b002814002613002e1700281400060300140a00180c00201000
-160b00180c000e07000e07002814002613000e0700160b000201000e0700060300160b00
-0e0700160b00160b00140a00180c002814000e07003219002613000e0700180c000c0600
-1e0f00261300140a00201000180c000c0600160b002814001e0f00160b000c0600180c00
-180c00201000140a00060300201000301800160b001e0f00160b000603002010003a1d00
-140a00140a00160b00160b002613002613000201002010000e0700180c00140a00160b00
-1e0f00180c000c0600160b00160b001e0f00140a00140a00160b002814000c0600160b00
-180c00060300140a00060300281400020100160b00140a00180c00160b00201000180c00
-060300140a002613000e0700160b000603003018000e07000c0600261300ffa244180c00
-160b00140a00160b00ff9d3a2814002e1700381c00281400542a003219004c2600522900
-542a003a1d004221003a1d00381c00ffad5affb366301800201000160b00381c00180c00
-201000140a00140a00140a00160b00201000180c00160b00160b00160b001e0f00180c00
-160b00140a00180c000e0700180c00201000160b00261300201000281400160b000e0700
-2613000e0700160b002010000e0700160b000e0700160b002010000e0700180c00160b00
-160b00140a000e0700160b001e0f000e0700140a00281400160b000201000e0700ffa040
-201000261300140a00201000180c00140a00140a00261300060300160b00261300201000
-180c00180c00201000160b00ffa54a1e0f000e07000c0600201000180c002010001e0f00
-1e0f00140a000c0600160b00160b00160b000c0600201000261300180c000e0700160b00
-201000140a00281400180c00140a00140a002814000e0700040200180c00180c00281400
-160b000e0700281400281400180c00160b00040200140a00261300160b000c06001e0f00
-2010001e0f002010000e0700160b001e0f003018000603002613002814000e07001e0f00
-0e0700201000060300201000180c00201000160b002010002010000e0700201000160b00
-0c0600201000301800160b000c06001e0f002613001e0f00160b00201000180c00160b00
-160b00261300180c00160b00160b00160b002814000e0700140a00201000180c00160b00
-160b000e0700160b00140a00160b00201000201000140a00
-060300160b00180c00160b00140a001e0f00160b002e1700ffa64c140a00201000281400
-2e17002010002814002814004020004422004422003a1d00442200542a005e2f006e3700
-643200763b00763b00763b008643007e3f006432006633006e37005a2d005e2f00542a00
-5c2e004c26006432005c2e004c2600542a00522900422100442200301800301800301800
-160b00281400ff9932201000160b00160b00180c001e0f00140a00160b000e0700201000
-201000060300160b002010000e0700281400180c00160b00261300160b00160b00160b00
-160b00160b00140a00160b00201000140a00060300261300180c00281400261300160b00
-180c00140a000e0700180c00180c000603002010000c06000c0600160b00201000201000
-2613000603002e1700160b00201000261300201000160b001e0f00180c00201000281400
-2613003a1d00180c00201000060300281400160b002010002613002814000c0600261300
-160b000603002010002010002010000e07002e17002814000e0700140a000c06001e0f00
-0e0700160b00160b000e07001e0f000e07000603000c06000c06000c06001e0f002e1700
-1e0f00ffa54a140a001e0f002010002e17002814003a1d003018002e17004221003a1d00
-3018004a25005a2d004a25005c2e005229004c26005c2e005c2e005a2d004a25004a2500
-3a1d002e17003018002613002814002814001e0f00160b00160b00ffa54a2010000c0600
-180c00180c00060300160b001e0f00160b00201000180c00160b00160b00140a000e0700
-201000180c001e0f00180c00160b00160b00140a00060300060300180c00060300201000
-0e07001e0f00180c000c0600281400140a00201000160b000e0700160b00160b00180c00
-160b002010000e0700180c001e0f00160b00180c003018002010000e0700160b00060300
-2010000e07000e07002010000e07000e07000e07002010002e1700140a00160b00281400
-261300160b00160b00261300180c001e0f002814002e1700140a002010002010001e0f00
-140a001e0f00020100160b000e0700160b002010000603001e0f000e07002613001e0f00
-1e0f000603002814002010002613000e0700160b000e07002814001e0f00180c00201000
-180c00261300160b000e07000c0600160b00060300160b000603000c0600261300201000
-160b00201000281400160b00180c00160b00281400160b00020100140a000e07000e0700
-0603000e07000e07000e0700201000201000160b00160b002010001e0f00201000201000
-0e0700140a000e07002010000e07002010000201001e0f00160b00281400ff9d3a281400
-281400140a00180c002e1700ffa9522814004221004c2600542a004c2600703800643200
-5c2e005a2d004221005c2e00ffb2643a1d00402000321900201000281400180c000e0700
-160b000603001e0f002010000e07002010001e0f00160b001e0f00020100160b000e0700
-140a00140a00060300160b00160b000c06000e0700201000180c000e07001e0f00160b00
-201000140a000e0700140a001e0f002010002e17002010000c06001e0f003018000e0700
-0e07000603000c06002010001e0f00201000180c00160b00201000160b00ffa0400c0600
-2e17001e0f000c06001e0f00281400261300321900261300160b00140a003a1d001e0f00
-160b00160b002e1700160b00180c00ffa040140a00180c00160b00160b00180c00201000
-281400180c000603001e0f00140a000e0700160b00160b00201000201000261300180c00
-2613002010001e0f00160b000e0700180c00140a00160b00160b000e0700180c00060300
-140a00140a000e0700140a000c06001e0f00402000160b00160b00201000160b00281400
-2010000e0700160b002010000e07002010003219000e07003219000c0600060300180c00
-201000140a000e07001e0f002010000201000e0700160b00160b002814001e0f00180c00
-160b00261300201000160b002010001e0f00140a00160b002010001e0f00160b00160b00
-160b001e0f00160b000e07002814003018000e0700160b00201000160b001e0f000e0700
-2010001e0f00281400281400160b001e0f00180c00201000
-020100040200160b003018002814001e0f00160b00201000201000ffa142ffa448140a00
-1e0f00180c002010002e17002613003a1d00301800381c00281400301800442200542a00
-5c2e005a2d005229006633006c36006432004c26005c2e00542a00442200522900442200
-5a2d005229005c2e006633005229005a2d004221003018002613002e17004221001e0f00
-2010000e0700ffa4482010001e0f000e07000c06000603000603002010001e0f000e0700
-261300201000140a00180c00160b00201000201000160b00180c00160b00160b00140a00
-160b001e0f002010002814000e0700180c00201000160b00201000160b00160b00180c00
-160b00201000140a00180c00020100180c00160b00180c00381c00180c000e0700160b00
-201000321900301800201000281400160b00201000301800140a00201000281400281400
-281400261300201000321900140a002010002e17001e0f00060300160b00281400281400
-0e07000e0700281400281400201000140a00160b00180c000e0700301800160b000e0700
-140a000e07001e0f00180c000c0600140a00060300160b00160b00060300140a000e0700
-3018000e0700ff9c381e0f002e1700180c002613003219002e1700301800261300321900
-321900402000301800542a004a25005229004c26004a25004221003a1d003219003a1d00
-301800321900261300301800281400201000261300160b001e0f00ff9d3a160b00140a00
-140a00160b000603001e0f000603000603002010001e0f00160b001e0f000e07001e0f00
-0c06000c0600180c000c06001e0f00140a002010001e0f00160b00060300261300180c00
-160b002e17002814000c0600180c002814002010000603002e1700140a001e0f00201000
-201000301800201000160b001e0f002814000603002010000e0700160b000e0700180c00
-180c000c0600201000281400160b00160b002010000e0700261300160b00160b00140a00
-180c002010002010000e0700180c00160b00201000180c00140a00180c00201000180c00
-261300160b002814001e0f00160b00180c00201000261300160b00160b000e0700140a00
-1e0f000e0700160b000c0600261300201000201000261300020100261300201000060300
-201000160b00160b000e0700180c00201000160b000e0700180c00060300160b00201000
-160b00140a00180c00160b00201000180c00160b000e0700160b001e0f000e0700160b00
-060300160b00281400040200060300020100160b00060300281400140a000c0600201000
-160b00060300160b000e07002e1700160b00140a00140a00160b00160b002814000e0700
-180c002010002814002010004020003a1d004c2600ffbf7effcd9affd0a06e3700763b00
-ffc386ffc4884422005a2d003a1d00402000281400281400281400140a001e0f00160b00
-ffa040180c00180c00160b001e0f00160b000e07000e07000e0700140a001e0f00281400
-060300140a002814000e07000c0600261300160b001e0f000e0700020100160b00060300
-180c00180c002814000e0700201000201000201000140a00261300160b00180c00201000
-0e0700160b00140a000e0700160b00261300140a00180c000c06001e0f00ff9b360e0700
-160b00160b001e0f00201000180c00201000180c00281400140a00281400160b00201000
-1e0f000e07001e0f000e0700261300160b00ffa040180c00180c000e07000e0700281400
-0e0700160b001e0f00160b00160b003018002010002814001e0f00180c002010001e0f00
-140a00180c00160b00281400160b00201000160b000e07000603001e0f000e07000e0700
-1e0f000e07000c06000e07000e07000e07000e07001e0f00160b000e0700060300180c00
-2814000e07000c0600201000180c00201000160b001e0f000e0700201000180c00180c00
-180c00261300160b00140a000e07002e1700160b00201000160b00060300201000160b00
-160b00160b000e0700201000140a00040200422100180c001e0f00140a00160b00140a00
-160b00301800160b000201001e0f001e0f000c06000c0600201000180c002010000e0700
-201000180c000e0700180c001e0f00160b00160b000c0600
-201000180c00201000180c00140a00160b00261300160b000c0600180c00281400ff9e3c
-0e0700261300160b000c06002010002e1700201000261300381c00381c00422100402000
-5229005229005a2d003018005a2d004a25004c26004c2600442200522900542a00542a00
-4a2500422100542a00542a004a25004221004020003a1d00442200281400301800281400
-301800281400ff9e3c0c0600261300201000160b000e07000e07000603000e0700160b00
-0e07001e0f001e0f000c06000402002010001e0f00160b00160b000e07000e0700160b00
-160b000603000e0700261300201000060300060300281400201000160b00201000281400
-0e0700180c00160b00201000160b00180c00140a002814002e1700180c00261300160b00
-201000261300281400261300060300201000160b00160b00321900201000180c00201000
-180c00180c002814002010002613001e0f00201000160b00301800281400201000201000
-160b00281400261300160b00180c00180c00160b00160b002814000e0700160b00301800
-160b000c06002010000e07000201000603000e07000e07000e0700160b000c0600160b00
-201000180c001e0f001e0f002010002e1700301800321900321900281400422100301800
-2e17003a1d003219004020004a25004221003219004a25003018003018003a1d00281400
-2814002814002e1700180c00160b000e07000e07002010000c0600180c00140a00201000
-160b000c0600160b00060300160b00201000060300160b00160b00160b00281400140a00
-040200180c00261300140a000e0700160b002010000e07000e0700281400180c000e0700
-0e07001e0f00160b00160b001e0f000e0700160b000e0700140a00180c00160b001e0f00
-180c00160b00ffa4481e0f00140a000e0700281400201000160b00281400160b00261300
-160b001e0f00160b00201000160b00160b001e0f00140a00020100180c00261300201000
-140a00281400160b000e0700140a002010001e0f003018000e0700140a00140a00140a00
-060300180c00180c000e0700281400140a00160b00180c00160b000e07000e07000c0600
-160b00160b00060300201000281400160b00140a00201000180c00201000060300261300
-201000140a000603002010000c0600180c00140a00180c00160b00140a001e0f00160b00
-2010002010000e0700040200160b00160b001e0f000e07002010000402000c0600060300
-261300160b000c06000e0700160b001e0f000e07002010000603000e07000e0700160b00
-060300201000160b00261300020100160b000e0700180c00140a00160b00160b001e0f00
-180c00180c00160b003219004221004a25004422007038008643008a4500a45200b85c00
-9a4d008040007038005a2d004221003018003a1d00180c002010002e1700201000281400
-ffa448261300201000140a002010000e0700180c00281400261300160b00201000201000
-1e0f000c0600140a001e0f00180c00060300160b002010002e1700201000201000180c00
-1e0f00180c001e0f001e0f00140a00160b00201000160b00160b001e0f000c06000e0700
-140a00201000160b001e0f00160b00160b00381c00201000201000281400ff9932160b00
-140a00281400261300160b001e0f00201000261300201000180c00140a00160b00160b00
-281400261300140a002e17000e0700301800160b00ffab56060300201000160b00160b00
-160b000e0700020100201000140a00180c002613000c06000c0600180c00040200201000
-140a00180c000e0700261300261300201000160b002814000603000e0700140a00160b00
-201000281400160b000e0700201000180c001e0f00140a00180c00281400201000160b00
-0e0700180c00422100261300020100201000281400180c00201000281400040200060300
-160b00281400281400160b001e0f00180c00180c001e0f00180c001e0f000e07000e0700
-0e07000e0700060300140a000603001e0f001e0f00261300160b000402000c0600160b00
-1e0f00160b00281400180c000e07001e0f00160b00160b00140a00140a00201000160b00
-160b00160b002e1700381c00180c00160b00180c00140a00
-180c00201000180c00160b000c0600140a00020100160b00180c00160b00281400180c00
-ff9e3cffa64c2814002814002814001e0f002e17004221001e0f003a1d00180c00321900
-301800402000381c004a25004a25004422004020003a1d00402000381c00301800321900
-402000442200402000402000261300381c003a1d003219003219002814001e0f00281400
-160b00281400ff9e3c0c06000e07001e0f000e0700281400140a002010000e0700060300
-160b00201000180c001e0f00201000160b00180c00160b000e07000e0700020100201000
-2010000e0700140a00140a001e0f000c0600281400140a002010000c0600160b00160b00
-2e1700201000140a000e07000e0700140a001e0f002010001e0f00180c00160b00201000
-140a000e0700ffa64cffae5cffa448ff9932ffa54aff9e3cffa040381c001e0f00281400
-2613000e07001e0f00301800281400201000261300160b002814002010001e0f00140a00
-140a00201000140a00201000201000201000160b000e0700201000160b00160b00060300
-201000160b00160b00060300160b00140a00160b00160b000603001e0f00160b000e0700
-201000160b00160b003219002010003a1d00160b000c06001e0f003a1d002814002e1700
-321900381c002814003018002e17003219003a1d004a25003a1d00442200261300281400
-201000301800281400201000201000281400180c000603000c06001e0f003018000e0700
-180c002010001e0f00180c00160b00160b000402000c06000e07000e0700140a00060300
-0e0700140a00140a00281400281400261300140a001e0f002010000e07002010000e0700
-180c000e07002613001e0f00060300201000160b00180c00ffa64cffa448ffa64cff9428
-ffa952ffa040160b00ffa244ffa244ff9c38ff952a180c00201000281400180c00160b00
-281400180c00160b00180c00160b00201000160b001e0f00201000281400140a000e0700
-160b000e07002e17000603000e07001e0f00281400160b000e0700160b00281400160b00
-180c002613002010000e0700281400281400160b00160b00201000060300180c00160b00
-160b00160b000e0700180c001e0f00180c00180c002814000e0700261300160b00201000
-160b00060300160b00160b002010000201002e17002010000c0600180c002010001e0f00
-160b002010000e0700160b00160b002010002814000201000e0700160b00160b00261300
-201000201000020100160b000201002613001e0f00160b00201000180c003a1d00180c00
-1e0f00160b002010000c06000e0700160b00201000160b001e0f00140a00180c00201000
-180c003018003018001e0f00281400321900542a008040008a4500be5f00f27900ff8102
-ca65009c4e00763b005e2f004a25004221002e1700381c00261300381c002814001e0f00
-281400ffa142281400201000160b00040200140a00020100160b00180c00140a00140a00
-0e0700281400140a00160b00160b00160b00160b00160b003018000e0700180c00180c00
-201000201000180c00160b00160b001e0f000e07000e0700140a00261300160b00180c00
-060300040200140a00160b00261300201000180c00160b002010002e1700ffa0400e0700
-0e0700160b00201000140a003219001e0f002e1700301800180c002e17002814000e0700
-160b00180c00160b00261300201000201000160b00ffa0404221002814000c06001e0f00
-160b000e0700201000381c00160b00140a00201000160b000c06001e0f000e0700140a00
-180c00160b001e0f002814000e0700180c00201000301800201000140a001e0f00160b00
-160b00160b00201000281400160b00160b002613002010000e07002010001e0f00140a00
-1e0f00201000160b002814002010000e07000e07002613000c0600180c00261300160b00
-160b00160b001e0f000c0600160b00160b00160b00160b00180c000c06000e07000c0600
-180c000e07002010002010001e0f000603000c06001e0f000e07002e17000e07000e0700
-201000060300201000301800281400140a002613000c0600201000140a00180c00060300
-180c00180c00160b000c06002e1700160b00160b000e0700
-160b002010002613000c0600301800160b001e0f00160b00060300140a002814001e0f00
-160b00201000ff9d3aff9e3c2814001e0f002010001e0f000c06002814003a1d003a1d00
-4422003018002814003a1d002814003a1d003a1d00442200381c003219004020003a1d00
-4422004221003219003a1d004c2600301800381c002613003018002010002613002e1700
-1e0f00ffa0402613000603000c0600281400160b001e0f001e0f000c06001e0f00160b00
-060300201000180c00180c00160b00060300180c00160b002814000e0700261300180c00
-0c0600140a002010000e0700160b00140a000e07001e0f00180c00180c000402000c0600
-180c00160b00281400180c00160b00180c00201000201000201000261300ffa952ffa244
-ff9e3cffa244201000201000140a002010002e1700301800261300ff9c38ff9e3cffa244
-ffaa54281400160b00281400281400261300281400160b002613002814000e07001e0f00
-180c00140a00160b00140a002e1700201000060300020100180c000e0700201000060300
-180c00140a000e07001e0f00180c00140a00180c00160b00201000060300180c00160b00
-0603000e0700160b00160b000603002010002814002e17002010002e1700281400160b00
-2e17002613003a1d00281400422100381c003a1d003a1d00301800281400281400160b00
-201000160b002613002613000e07000c0600160b00160b00160b00140a00020100140a00
-180c002e17001e0f000e07000603000603000e0700160b00020100281400160b000e0700
-0e07002814001e0f001e0f001e0f002010002814000603002010000e07000e07000e0700
-160b00160b00160b000e0700201000261300ff9d3aff9e3c301800180c00160b00201000
-1e0f002010002814000603002814001e0f000e0700ffa142ff9d3affa244140a00281400
-140a002e17000c06000e07002613000c06002814000e07000e0700160b00160b00040200
-1e0f00201000180c001e0f000c0600140a00160b00160b00281400281400201000201000
-180c00160b000e07002e1700180c00140a00160b001e0f001e0f00140a000e0700261300
-140a000c06002e1700201000321900140a00180c00201000160b000e07000c0600140a00
-1e0f00201000140a00180c000603001e0f000e0700180c00201000180c002e1700201000
-160b00140a00180c00160b00140a002e1700140a00140a000e07000e0700140a002e1700
-160b000e0700180c002613000c0600160b00140a001e0f000e07000e07000c0600281400
-180c00180c00180c001e0f00160b002010000603001e0f000e0700261300ff9b36140a00
-2010002010002e17002e17004422004221006c36009a4d00b65b00fe7f00ff9e3cff9932
-fe7f00d86c009249006e3700643200442200402000321900281400281400140a00261300
-2814003018002613002814000c0600201000201000160b00140a00201000180c00261300
-140a00160b002814000603000201000e0700160b00201000160b002613000e0700281400
-1e0f00140a001e0f000e0700180c00160b000e0700160b000e0700160b00060300261300
-0e0700160b00160b000c06002010000e0700201000201000140a001e0f00ff9d3a180c00
-0c0600020100160b002814000e0700180c002613003018003a1d00301800381c00321900
-2e17002e1700140a002010001e0f00160b00180c00160b00ff9830180c00160b00160b00
-160b00201000180c00140a001e0f00160b000e07001e0f00160b00160b00301800140a00
-160b002814003018001e0f00180c001e0f00160b00160b000e07000e07001e0f00201000
-2613002613002010001e0f001e0f002010000402002010002613001e0f000e0700160b00
-201000160b00160b000e07001e0f001e0f00160b00060300140a00301800160b00201000
-0e0700201000180c00140a00201000160b000e07000e0700180c00160b002010000e0700
-160b001e0f000e0700160b000e07000c0600261300201000180c001e0f000e07002e1700
-020100201000281400180c00060300160b00201000180c00140a00160b00201000140a00
-160b00160b001e0f00160b00180c00201000160b00180c00
-140a00201000160b00140a00140a00160b002010000201001e0f00140a00140a000e0700
-180c001e0f00180c00201000ff9830ffaa54160b002e1700160b00140a001e0f00261300
-3018003018003018002010003018003018002e17004020003018003018002e1700381c00
-4221003219003a1d002814002814003018002814001e0f003018002e1700281400140a00
-261300ff99320e07002814002010003018000e0700201000160b000e0700160b00261300
-201000180c00160b000e0700201000160b00140a00201000160b000e0700160b00060300
-140a00180c001e0f00261300160b00281400160b002010000e07001e0f00180c001e0f00
-0e0700160b00160b00060300160b00261300281400201000ffa244ffa4480e0700201000
-2010001e0f00281400201000160b00160b00160b00261300281400180c002010001e0f00
-402000ffab56ff9e3c0e0700160b00160b000e07001e0f001e0f00160b000e0700201000
-160b00160b00180c002010000e0700160b002010001e0f000e0700140a000e07001e0f00
-201000160b000e0700140a000e0700140a000201000603000603000e07001e0f00060300
-140a000e0700201000160b000e0700ffa54a1e0f00281400281400261300281400201000
-2e17002814002e1700281400381c004020003a1d00201000281400261300321900261300
-201000180c00140a00281400261300140a00ffa64c0e07000c06001e0f000e07000e0700
-0603000c0600160b000e07000603001e0f00140a000c0600261300160b000e0700160b00
-2e17000c0600140a00160b000e0700160b00201000201000180c000e0700160b00180c00
-140a00281400180c00160b00261300ffa142201000201000160b00180c00201000160b00
-160b002e17002613002e1700201000281400180c00261300281400160b00ff9e3c160b00
-0c0600281400201000060300160b00180c000e0700160b00160b000e0700201000140a00
-261300160b00180c000603001e0f001e0f00281400201000160b00201000160b00261300
-160b002010001e0f000e0700160b002814002e1700201000160b000e07001e0f000e0700
-180c000e0700180c00180c00180c00160b00160b000603000e07002e1700180c00281400
-0c06000e0700301800201000201000160b002010000e0700281400020100180c000c0600
-180c002814000c0600201000180c000e07000e07001e0f00261300180c00160b001e0f00
-281400140a000603001e0f00140a00180c00180c000c0600201000180c001e0f00160b00
-140a000c0600160b00140a00160b00261300201000140a002e17001e0f00ff9c38160b00
-2814002613002010003018003219004c26006c36008a4500c46200e47200ffa244ffb366
-ff9b36de6f00aa55006c3600542a003a1d00381c00381c004020002e1700160b00160b00
-2010002010002e1700160b00160b00040200281400180c00160b00160b00160b00261300
-160b000c06002613002e1700140a00140a00060300160b001e0f001e0f00140a001e0f00
-201000160b00201000140a00261300180c00201000281400140a00281400140a00160b00
-160b00281400201000160b00140a001e0f00160b002613001e0f00140a00ff9c38060300
-160b00201000160b00160b001e0f00201000201000422100301800402000381c00321900
-3018000603000e0700180c00201000160b00160b00261300ff9d3a140a00160b00160b00
-281400281400140a00261300201000060300261300160b00180c00201000060300281400
-1e0f000e07001e0f00160b002010000e0700201000301800160b001e0f000c0600180c00
-261300160b00140a00180c002613000e07002e1700160b000e0700180c000c0600201000
-1e0f002010002814000e0700180c00040200160b000e07000c06000e0700201000160b00
-2e17000e07003018000e07002010001e0f00140a000201000e07002010001e0f00160b00
-2613000c0600040200160b000e0700160b00201000281400140a000c06000c0600140a00
-2e17002010000e0700180c00160b00180c000c06001e0f00180c00160b00140a00261300
-160b002010002814002010000c06001e0f00140a00160b00
-201000160b00140a00180c000e07001e0f001e0f00160b00160b00201000201000160b00
-2010000e0700160b000e0700301800180c00ff9932ffa2442613002010002010001e0f00
-281400180c001e0f002613002613002e17003018002814003a1d00261300281400422100
-180c001e0f003a1d003a1d003a1d003018002613002010000e0700160b00201000201000
-ff9b36160b00180c00160b001e0f00201000180c002613001e0f00201000180c00160b00
-180c00160b002010000e0700201000281400160b000c06001e0f000e07000e0700201000
-060300160b00140a00201000160b001e0f001e0f00201000281400160b00261300060300
-2814001e0f001e0f00180c00281400261300ffa142ffa64c2010001e0f00201000160b00
-0e0700281400261300201000160b00180c00281400301800201000140a00201000140a00
-2010003a1d00261300ffaf5e201000261300180c00261300301800160b00160b00160b00
-180c00201000060300261300160b00160b00160b001e0f002010002010000e0700160b00
-160b00160b002613001e0f000603000e0700160b00140a00180c00160b00140a00060300
-0e0700180c000c0600160b001e0f00201000ff9c38301800160b00201000201000301800
-2814002814002814002814002010003a1d00201000160b00301800160b00160b00281400
-160b00140a002e17000c06000e0700ff99322814002e17002010002010000e0700160b00
-2010002010000e0700020100060300060300140a00281400060300160b000e0700180c00
-180c000603000e07000e0700201000160b000c0600140a000c0600160b002814000e0700
-180c00160b000e0700180c00ffa448261300160b00160b00261300381c00140a00261300
-3018002e17002e17002e17003a1d003a1d00140a002814002814000e0700281400ffad5a
-160b00180c00060300180c002613002010000201000e07000e07000e0700160b00201000
-160b00060300201000160b00160b00160b00160b00140a00160b000e0700201000160b00
-261300160b000e0700160b00180c000201001e0f00381c00160b00261300180c00160b00
-160b001e0f00261300201000160b00160b00160b002010002e1700160b00201000201000
-2010001e0f00160b00140a003018000c0600261300301800160b00201000201000180c00
-1e0f000e07002814002e1700160b002010002814000e07001e0f00060300180c001e0f00
-180c00201000140a00160b00321900140a00201000180c00160b000c0600140a00180c00
-281400180c00140a000e0700140a001e0f00180c00160b002e17000c0600160b00160b00
-060300261300140a00281400381c004020005c2e00763b009c4e00f67b00ff9122ffa448
-ff9326f27900a452007e3f005e2f004a25004020003a1d00301800321900261300201000
-261300ffa040160b00160b000c06001e0f000603002814000e07000e0700140a00180c00
-160b002010000e0700180c00160b00180c002814000e0700180c00160b001e0f00060300
-2814000e07000603002010000e0700180c00160b000e0700160b00180c00201000060300
-201000140a00160b00180c000e0700140a001e0f00060300261300261300ffa142160b00
-0e07001e0f002814000e07000e0700180c003018002613004a25003a1d005229003a1d00
-2e17002613002e17001e0f00180c00140a000e0700140a00201000ff9e3c0c0600160b00
-160b00201000160b00160b000c0600180c00160b00180c000c0600140a00160b00201000
-261300160b00180c00140a00160b000201002613000e0700160b000e0700160b00281400
-1e0f00201000160b000603000e07001e0f00140a00140a000e0700261300160b00140a00
-0603001e0f000c0600201000422100180c00160b00160b00180c001e0f00160b001e0f00
-140a00160b00160b000c0600140a00180c00201000160b002814001e0f001e0f00281400
-2010000c0600201000180c00160b00160b002010002814000e0700201000160b000e0700
-160b00281400261300180c00160b00160b00160b00180c001e0f00140a00140a00180c00
-060300160b00261300180c000c0600201000201000160b00
-2814000e07000e0700140a00201000140a00140a00140a000c0600201000261300020100
-201000160b000c0600160b00060300160b00160b00160b00ff9932ff9e3cff9d3a1e0f00
-160b002e1700180c00201000201000160b00261300281400301800321900160b00301800
-281400301800201000180c001e0f002613001e0f00160b000c0600180c00201000ffa244
-180c000e07001e0f00140a00201000140a002010000e07000e0700201000180c00180c00
-0c0600261300180c002e17000e07000c06003018000e0700180c000e0700180c00261300
-140a001e0f001e0f00140a000c0600160b001e0f00180c000e0700140a00160b00281400
-180c00180c002010000c0600ffa244ffa448281400281400261300160b00301800301800
-281400301800381c003018003018002010002010003018004020002814002010001e0f00
-2613002010002e1700261300ffa54a160b00140a003018002010000e07002010000c0600
-060300180c00040200140a00140a000201001e0f00160b00180c00060300160b001e0f00
-0c0600140a00060300180c00180c00160b00020100060300140a00140a000e0700060300
-0e07000201000e0700160b00180c00160b00180c00160b00261300160b001e0f00301800
-281400201000261300301800381c00261300281400261300281400201000160b00201000
-2e17002010001e0f001e0f00140a002010002010000e0700180c002010000e07001e0f00
-180c000603000603000e0700160b00201000160b00160b00160b00301800160b00160b00
-201000160b000e0700140a00180c000c06000c0600160b00201000160b00201000160b00
-1e0f00160b000c0600ffa0400c0600180c002010001e0f00201000281400201000281400
-1e0f00281400381c00201000381c00381c00180c00201000201000281400180c00261300
-ff9e3c160b00060300160b000e0700160b000e0700160b00281400140a002613001e0f00
-0e0700040200160b001e0f000c0600180c002814001e0f00140a00160b001e0f00140a00
-160b002613000c0600201000160b001e0f00140a00160b001e0f001e0f00201000160b00
-2e1700160b00201000140a000e07000e0700201000060300180c000c06001e0f00201000
-0c0600160b002814000e0700160b00201000160b000e0700180c000e0700160b00140a00
-0c0600040200160b001e0f000c06002010001e0f002814002814000e0700160b000c0600
-0c0600160b00140a000e0700060300201000140a00060300180c00140a002010001e0f00
-0e0700160b00201000160b000e07001e0f000e0700180c002613000e07000c0600160b00
-1e0f002010002814002814004221004a25004a2500763b00924900c46200e27100fc7e00
-e27100be5f00b259008040006633004a25003018004221003a1d00281400261300180c00
-180c00ffa448261300281400160b00160b002010000201002010002613002814000e0700
-1e0f00140a00180c00180c00160b00140a00201000140a000603002613000e0700180c00
-0603000e0700281400201000160b00140a000e0700140a003a1d000c06002010000e0700
-0603001e0f00261300281400140a001e0f00060300160b00160b00281400ff952a160b00
-1e0f00180c000e07001e0f000402002010002814004a25003219003219004221005e2f00
-3a1d003219002e1700160b002814002010002613000e07003a1d00ff9932201000180c00
-201000201000180c00160b00281400201000160b00201000180c000c0600140a00060300
-261300180c00160b000e07000e07000e0700301800180c000e0700140a000e0700020100
-201000060300160b001e0f00160b001e0f00160b00160b000e07001e0f000c06000e0700
-140a000e07002814000603002814001e0f00060300281400281400201000201000201000
-160b00140a002010002613001e0f00201000060300160b00160b00261300201000160b00
-0e0700140a00180c00040200160b00160b00160b000e07000402002814001e0f00160b00
-160b00160b000c06001e0f000e07001e0f001e0f00180c00140a000e0700140a002e1700
-2010001e0f002010001e0f00180c000e07002613000e0700
-160b001e0f00160b001e0f000603002010001e0f001e0f00160b00160b00160b00160b00
-2010000c0600180c00201000201000180c00060300140a00140a00180c00160b00ff9d3a
-ff9b36ff9e3c0603002e1700261300180c00201000160b00160b002613002010000c0600
-1e0f00180c00281400201000180c00261300140a00261300201000ffa448ff9e3c2e1700
-2010000c0600160b001e0f000c0600201000180c00261300180c000e0700140a00180c00
-1e0f00020100160b001e0f00160b00140a000c06002010001e0f001e0f00160b00140a00
-140a000e07000c0600140a00160b00160b001e0f000603000e0700180c00160b00160b00
-180c00201000140a00ffa54a2e1700140a00201000160b002010002e1700281400301800
-2814002814002814003a1d00281400542a002e17004020002814002e17002e1700301800
-0c0600201000180c00281400281400ffa142201000160b001e0f00160b00180c001e0f00
-1e0f001e0f001e0f00201000140a002010000e07002613003219002010000e0700160b00
-0c06001e0f00180c001e0f00201000160b00060300020100160b00160b001e0f00160b00
-0e07000e0700160b001e0f00160b000e0700180c00140a002e17001e0f00ffa74e281400
-180c002e17002e17002e17000e0700201000160b00201000281400160b00160b00321900
-160b00ff9b36140a000e07000e0700160b00160b000e0700020100160b000e0700201000
-2010000e0700140a002613002010000402000e0700140a003018000e0700180c000e0700
-1e0f002010002613002814000402001e0f00140a00140a002010000e07001e0f00201000
-301800201000ff9e3c2814002613002814002010003219002e1700201000301800281400
-2e1700381c003a1d004020004020003018002e1700422100281400201000180c00261300
-160b00ff9e3c2010002010002613002e1700180c001e0f00140a00160b001e0f001e0f00
-0c06002010002010000e0700180c00160b00261300160b00160b00160b00160b00180c00
-261300180c00160b00140a00140a002814000e07000e07002010001e0f001e0f00180c00
-160b00261300160b00180c000c0600160b00160b00281400160b001e0f000e0700321900
-201000201000261300160b00020100160b000e0700160b000e0700261300180c00180c00
-180c000e0700180c002e1700160b002010001e0f000e0700201000201000281400201000
-160b000e0700201000201000040200060300180c00140a00160b00281400180c00201000
-0e07002010000e0700180c00160b00140a001e0f000e0700180c00180c00ffa040201000
-1e0f000e07001e0f00281400301800381c004a25005c2e006e37008a45009c4e00a45200
-9c4e00a251007e3f006e37005c2e00522900442200281400301800381c00261300261300
-180c001e0f00160b002814000603002010000e07000e0700160b00160b00060300180c00
-261300201000180c000603000e0700180c003018001e0f00140a000603001e0f000c0600
-0e07000603002e17002010000603001e0f00180c002814000e07002010000e0700180c00
-1e0f00160b000c0600180c002814000e0700180c00160b00160b001e0f00140a00ffa54a
-2010002814000e0700160b000c06000c0600180c002613002613003a1d00301800422100
-3018001e0f002613001e0f002010001e0f00160b00160b00180c00ff9e3c180c001e0f00
-160b000603001e0f00160b00201000160b00201000180c00281400160b00160b00180c00
-201000140a00160b00261300201000160b00180c00180c00160b000e0700321900140a00
-180c00180c002814002e1700201000160b001e0f000e0700180c00160b001e0f00201000
-160b00180c00160b000e0700281400261300140a00160b00261300201000201000180c00
-1e0f00281400301800160b00160b000c0600180c00160b002613000603000e0700160b00
-140a001e0f00160b000c0600160b00180c00201000140a00201000160b00160b00281400
-160b002010001e0f00281400160b00201000201000201000180c002613000e0700180c00
-0e0700201000060300140a00140a000e0700201000060300
-160b000e0700180c00160b00160b002613000e07002814000e07000c0600180c000e0700
-180c00160b000e07002010001e0f000c06001e0f000603000e0700160b00160b00160b00
-0e07000c0600ffa448ffa142ff9c38ffa244ff9e3c180c00180c00180c00160b00160b00
-140a00281400281400180c00201000ff9c38ff9e3cff9932ff9b360e0700160b001e0f00
-160b00261300140a00201000160b00160b00180c003018002010002613002e1700160b00
-281400160b00201000180c000603000201002e17000e0700020100301800281400160b00
-160b00180c00060300201000160b00060300180c000e0700160b00201000140a001e0f00
-180c00180c00ffa244261300281400301800301800281400201000281400381c003a1d00
-3a1d004422004422003219003a1d004c26004a2500301800301800281400321900281400
-381c002814002814002814002e1700160b00ff9e3c160b00201000160b00060300301800
-140a00201000201000140a00180c00180c001e0f000e0700140a000e0700160b00180c00
-201000180c000e0700160b000e0700160b000c0600160b00180c000e07000e0700160b00
-0c06000e07000e07000e07000e07001e0f002010000e0700201000140a00160b00ffa244
-ffa040201000281400160b000e0700180c00160b00140a00180c00160b00160b00ffa448
-ffa040201000160b00060300040200160b000e0700261300160b00140a001e0f00160b00
-0e0700160b000603000c06001e0f00140a00160b00180c00140a00060300261300060300
-160b002613000e07002613000e07002814000c0600160b002613001e0f001e0f002e1700
-201000180c00ffa1421e0f001e0f00201000261300381c002613002010003a1d00542a00
-4221004c26004a25005229004221004422002814003219002e1700160b00301800301800
-201000180c00ffa142160b001e0f00180c001e0f00261300160b002613000e0700160b00
-2e17000201000e0700160b000e0700160b00261300281400140a00020100201000180c00
-160b00180c00321900160b00261300060300160b00160b00201000201000201000180c00
-060300160b001e0f000e0700160b00160b00301800201000281400160b001e0f00201000
-201000180c001e0f00160b00160b00180c000e07000e0700160b00201000160b00160b00
-160b00180c00160b00160b00160b00180c00201000160b001e0f00261300160b00201000
-301800160b001e0f002814002814002010000e07000c0600060300160b00281400140a00
-261300160b000201000c06002613002010000e07000e0700160b00201000160b00ffa448
-281400180c002613002010002814002e17003219004a25007038006e3700763b00763b00
-763b006e37006e37006432004c2600442200381c003018003a1d002010002010000e0700
-160b00160b000603000e0700261300160b00060300281400160b00160b00160b00160b00
-140a00160b00140a00180c00140a00261300160b00281400160b00180c00160b000e0700
-140a00160b003219000201001e0f00140a00281400160b00160b000e0700201000201000
-180c00281400160b00060300060300281400261300160b00160b00160b00160b00ff9e3c
-140a00140a00160b000603002814000e07002e1700281400381c003018003a1d00180c00
-381c002010002613000e07002010002613002010002814002e1700ffa54a160b000e0700
-2e1700201000160b00060300422100180c000e07001e0f00201000281400261300160b00
-180c000e07002814002814000c0600160b000e0700160b00261300180c00060300160b00
-160b00180c000c0600201000160b00160b00180c00180c00060300201000060300281400
-0603000c06003018000e0700180c00160b000e07000c0600160b00281400160b00160b00
-160b00180c00180c002010000e0700140a000e0700261300180c00261300160b00060300
-160b00160b00180c000e07000e07001e0f002010000e07000e07000e07000e0700160b00
-0c0600160b00201000201000060300160b00160b000e0700160b002010000e0700261300
-1e0f00160b000e0700180c002010001e0f003018001e0f00
-180c002814000e07000e07000e0700160b00060300160b000e07001e0f001e0f00201000
-180c00140a00201000140a00160b000c06000603000e07000e0700020100180c001e0f00
-2010002010001e0f00180c00180c00281400301800ffa74eff9e3cffa64cff9830ff9e3c
-ffa244ffa142ffa244ffa64cffa0401e0f00040200140a00160b000e0700180c000e0700
-160b00160b000c0600140a00281400281400381c00060300281400180c00160b00160b00
-2010001e0f00281400201000281400020100140a002010002e1700160b000201001e0f00
-0e0700160b001e0f002010002010000c0600140a00180c001e0f000c06000e0700160b00
-ff9c38ffa952201000180c002e17002613002e17003018003a1d004020003a1d00422100
-4221004c26005a2d004020004221004422004a25004221004020004a2500381c00321900
-180c003018003018002e17002814003a1d00ff9d3a2814002e1700160b000e0700060300
-140a000e0700160b00201000160b00201000140a000c06001e0f00160b00060300140a00
-201000180c000e07000e0700140a00180c00160b000c0600201000160b000603000c0600
-160b00160b001e0f00160b00281400180c000c0600160b00040200160b00201000180c00
-0e0700180c00180c00180c00ffa448ff9c38ff9c38ffa0401e0f00140a00201000201000
-2010002010000e07000201000e0700020100160b000e07000e07000201000c0600180c00
-0e0700160b00160b00140a00060300060300160b00160b001e0f001e0f002613000e0700
-160b000e0700160b000e07000e0700201000140a00140a00160b00160b00160b00160b00
-201000ff9e3c1e0f00180c002814003219002010003219003219005229005e2f00643200
-5a2d006e3700763b00763b005229005229003a1d00301800261300261300301800281400
-281400201000ff9d3a160b00281400140a00160b00160b00160b00160b00281400160b00
-140a002010002814001e0f000e0700180c000c06001e0f00180c00201000160b001e0f00
-281400180c001e0f000e0700180c00160b00180c002814001e0f00160b00281400180c00
-140a00160b00281400281400160b00160b000e07001e0f00140a000c0600201000040200
-0c0600160b002613000e07002010001e0f00140a001e0f00180c00140a001e0f00180c00
-180c000e0700160b00281400160b00060300201000060300160b00160b00281400180c00
-160b00201000140a001e0f002010001e0f00160b000c06000e07002814001e0f00160b00
-0c0600180c000e07002010000e0700140a002010002010002010002613001e0f00ff9d3a
-160b002613003018002010003018003018004020003219004a25005a2d005e2f00663300
-542a006633006432005c2e005c2e004221004a2500321900301800180c002e1700160b00
-201000160b00140a00180c000e07000603002e17002613000e07001e0f00281400160b00
-3018001e0f00281400180c001e0f002e1700140a00201000160b00201000281400160b00
-1e0f001e0f001e0f002010000402002814001e0f002010000e0700180c00301800140a00
-2613001e0f00201000140a00160b000603000e0700140a00201000160b00180c00180c00
-ffa0401e0f001e0f00060300140a002814002010003018003018003018002e17002e1700
-3a1d002e17000e07003018000c0600201000160b00140a000e0700ffa1420e0700261300
-140a00160b00201000180c00060300180c00140a002010002010001e0f00160b00140a00
-160b001e0f00160b000e0700140a00180c00201000180c00160b00060300180c00201000
-1e0f00160b000e0700160b003018002010001e0f002814001e0f00160b000e07000e0700
-301800060300201000201000180c000e07000e07002010000e0700261300160b00040200
-1e0f00261300180c000e0700180c00140a002010001e0f00140a002613000603000e0700
-140a00160b00160b00201000180c002010002613000e0700180c002010000e0700201000
-2010000c06000e0700201000160b000e07002613000e0700160b00160b000c0600180c00
-0e07000603000e07000e0700140a00201000140a00160b00
-180c00160b002010000201000e0700140a00180c00261300201000140a00160b00261300
-0c06002e17000402001e0f00140a000c06000603002613000c0600160b00180c00060300
-201000160b00180c00140a00020100140a00140a002010000e07000c06000e07000e0700
-1e0f00140a00201000160b001e0f00180c00281400180c001e0f000e0700180c00201000
-060300140a00261300180c000c0600201000180c000c06000e07000e0700261300261300
-1e0f00281400140a00281400160b002010003a1d00020100140a00140a00281400261300
-2814002814000e0700160b000c0600140a001e0f00180c00261300201000140a001e0f00
-3018000e0700160b000e0700281400381c002e17004a25004020004221004422004a2500
-5c2e00643200763b005c2e006e37006432005e2f00542a004c2600442200442200281400
-402000261300381c00261300180c00201000160b00ff9932180c00160b001e0f00160b00
-160b00140a001e0f001e0f000e0700160b000e0700160b000e0700281400160b00160b00
-040200201000160b00160b00160b00160b00060300160b002613001e0f000e07000e0700
-180c000603000603000e07000603002010000e0700160b00160b00160b00201000261300
-160b002010002814000e07001e0f00160b00160b00140a001e0f00140a00140a00261300
-180c00060300160b00261300140a00180c00180c002e1700201000160b00180c000c0600
-160b001e0f000e07001e0f000e07002e1700201000160b00140a000e07002613000c0600
-0c06000c0600201000201000160b00201000160b002010001e0f000e0700301800261300
-160b00ff9e3c160b000c06002613002e17003018004221004221003a1d00763b007e3f00
-9048009a4d009c4e008a45007e3f005c2e00542a00542a00281400180c00160b00261300
-160b00140a00ffa1422010000402001e0f00060300180c00281400201000301800160b00
-0c06002010001e0f00160b000e07002613000e0700140a00281400140a00180c00201000
-160b000c06001e0f00281400261300160b00140a001e0f00140a00160b000c06001e0f00
-160b002010000e0700140a00160b002613001e0f00160b00201000281400180c00160b00
-160b00160b000603002010002010000c0600140a00160b000e0700261300261300160b00
-160b00060300160b00180c00160b001e0f000c06001e0f00180c000e0700160b00201000
-381c00140a00180c000e0700160b00160b00160b00180c000603000e0700201000160b00
-2010000e07000e0700180c002010001e0f00160b000e07002613002010002010001e0f00
-180c002814002814002814001e0f00160b003018003219003018003a1d004c2600402000
-542a005a2d005a2d00422100542a00442200281400201000201000160b00261300160b00
-160b00ffa54a180c000c06000e07001e0f00160b001e0f003018001e0f00201000140a00
-2010000201002814000e07000e07001e0f002e17001e0f001e0f00201000160b00160b00
-1e0f000e0700160b00160b00201000160b00180c001e0f00160b00281400160b000e0700
-0603000e07000603002010001e0f001e0f001e0f00020100160b00201000160b00201000
-ff9b36261300140a00201000180c00160b00281400160b000c0600140a00301800201000
-321900261300261300140a000201001e0f002010002010001e0f00ffaa540c06000e0700
-2613001e0f00140a00261300160b00060300160b00140a00160b00160b00160b000c0600
-0c06000201001e0f00140a001e0f003219002e17000e0700180c00140a000c0600201000
-281400281400060300160b000e0700040200160b000e0700160b001e0f00180c000e0700
-201000040200180c00160b00160b000603000e0700201000160b00160b002613000c0600
-1e0f001e0f00160b00160b00281400060300160b00201000201000180c00160b00201000
-040200180c00140a00180c00180c001e0f002814000e07000e07002010000603000e0700
-0e0700180c00201000140a000e0700281400180c00160b00140a00140a00261300281400
-180c00201000160b001e0f00201000160b00180c001e0f00
-1e0f00160b00201000180c002010000e07000e07001e0f00180c00160b00140a001e0f00
-160b000e07000e0700140a000c0600140a002814000c0600140a000603000e07000c0600
-1e0f00160b00180c00140a000e0700160b00160b000e07000c06000e07000c0600160b00
-060300040200180c00281400180c000e0700180c00160b00060300180c00160b000e0700
-160b00140a000e0700180c00180c00180c00140a00180c00201000060300140a00201000
-281400140a002814001e0f000c0600140a00402000281400201000140a00160b001e0f00
-0e0700281400201000201000140a002814001e0f00140a001e0f00160b00160b00ff9b36
-2814001e0f00261300301800281400301800281400301800542a004020006432005c2e00
-5c2e00783c00884400904800763b00804000783c005e2f005a2d004a25004a2500422100
-3a1d00261300201000321900201000281400201000ffa0400e0700140a00281400040200
-160b000e0700140a00160b00201000140a00140a000e0700140a00160b00160b00301800
-160b000c0600201000201000160b000e0700201000160b00060300160b000e0700060300
-060300281400201000060300160b00160b002010000c06000c0600140a00160b00140a00
-0e0700201000180c000c0600160b00160b000e07000201000603002010000603000e0700
-201000180c00140a00140a00160b00160b000e0700ff9c38ffa040ff9b36ffa448ffa142
-ff99322010001e0f001e0f00201000180c00201000201000281400140a001e0f00160b00
-2010002010001e0f002010000c0600180c001e0f00180c00160b000e0700160b001e0f00
-201000ff9d3a160b002010002010003018002e17002e1700422100542a006c3600864300
-c66300c46200ce6700b65b007e3f007038004221003a1d00261300281400381c00301800
-281400160b00160b00ff9830160b000e0700160b001e0f00180c00261300140a00180c00
-1e0f000c06000e0700160b00160b00160b00180c00140a00180c000e07000e07000e0700
-2010001e0f00160b000e07002010001e0f00160b00160b00281400160b001e0f00281400
-2e1700160b00201000201000160b00160b00160b000e0700180c00160b002010000e0700
-140a000e07000e07002010000e0700180c00160b00281400140a00281400160b002e1700
-180c000c06002010002814000603000e0700160b00160b000e0700180c000e0700201000
-160b002010000e0700140a00261300160b000c06000e0700160b00140a002010000c0600
-060300160b002010000c0600140a001e0f001e0f00060300160b00060300301800160b00
-201000040200180c00281400281400301800301800301800381c00381c004221003a1d00
-4a25004a2500381c004a25004221004221003a1d004422002e1700321900281400201000
-160b00ffa1422010002010002613001e0f003a1d00160b00160b001e0f000e07000e0700
-201000261300160b00140a00160b000201001e0f00201000381c000e0700160b00160b00
-140a00201000201000261300180c00160b002010000e0700160b00281400201000160b00
-160b001e0f00201000261300261300180c001e0f000e0700160b00160b000e0700180c00
-060300ff9c381e0f00261300160b000e0700180c00321900281400140a000e07001e0f00
-2e17002814002010002613002e17002814001e0f002010001e0f00ff99320e07000e0700
-180c001e0f00140a00180c00160b00160b00201000261300160b00140a000e07000c0600
-160b000e0700201000140a00261300160b00160b000e07000e07000603000e07000e0700
-180c00321900040200160b000e0700180c000e07000603001e0f00160b00180c00261300
-2010000e07000e07001e0f00381c001e0f00160b00381c00160b000e0700140a00180c00
-3018002010002814001e0f00261300201000160b00180c002010001e0f001e0f00060300
-201000160b00160b000e0700201000160b001e0f00160b000e0700140a000e07000e0700
-261300180c003018002010001e0f00180c000e0700140a00201000060300201000180c00
-180c00140a002613000c0600180c000e0700201000180c00
-261300160b00160b00201000160b002010000603002814000e07000e0700201000281400
-160b00140a000603000603002814001e0f000e07000c0600160b00201000160b00160b00
-160b002814000e0700020100ffa64cff9428ffa952ffa142ff9b36ff952affa54affa040
-0e0700060300060300140a00160b00160b00160b00160b00160b001e0f000e0700201000
-160b00180c00201000060300261300160b001e0f000e0700160b00060300160b00060300
-0c06002010001e0f001e0f00180c00140a002010000e0700040200160b000e0700140a00
-140a000e0700301800060300201000160b002010000402001e0f00281400ffa2441e0f00
-3018003018002e1700381c002613004020003a1d003a1d00442200663300864300763b00
-a45200b25900be5f00b45a00984c009c4e007e3f009048006633006633005c2e00542a00
-4221003a1d003018002814002010003018001e0f00160b00ffa0402613001e0f00281400
-2613002010002010002010000e0700140a002010000e07002010001e0f00040200201000
-0e0700040200140a002010000201001e0f001e0f002613002010001e0f00201000160b00
-160b00160b000c06000603002010000e07000e07001e0f00060300160b00301800201000
-301800180c001e0f00140a002e1700020100180c000e07000e07000e07000c0600261300
-0e07001e0f00160b00180c00ff952aff9e3cff9d3a201000160b00180c00261300261300
-160b00ff9b36ff9b36ffa54affa2440e0700160b00281400261300180c00160b00160b00
-0e0700140a001e0f00180c00140a00140a00160b00201000180c00281400160b00281400
-160b00ff9c38140a001e0f00281400160b00381c004a2500422100542a008040009c4e00
-d66b00e07000fc7e00d66b009e4f007e3f005e2f00442200643200321900281400301800
-261300281400180c00ffa2440e07002010000e0700180c00140a000e07001e0f00201000
-2814003018002814000e0700060300160b00180c00180c00261300180c00160b00160b00
-0e0700160b00201000201000201000160b00160b00261300201000160b00160b00060300
-140a00201000201000160b00160b000e0700160b000e0700160b000e0700160b000e0700
-0e07001e0f001e0f00281400160b00402000180c00201000160b001e0f000e0700160b00
-140a00180c00060300140a000603001e0f00281400281400201000160b00160b000e0700
-0e0700140a00140a00160b002010000e0700160b00140a00261300160b00160b00180c00
-0603002010002613000c06002613000e07000e0700160b00140a002613000e0700180c00
-261300ff9e3c160b00201000140a00160b002e17003018002814003a1d003a1d00321900
-301800422100301800381c004c26003018003219002e17002e17001e0f00180c00160b00
-2814000c0600180c00160b00301800140a00281400160b00201000261300281400160b00
-2814000e07001e0f00160b000c0600140a000c0600160b00201000140a001e0f00180c00
-1e0f00140a00160b000603000e07000603000e07002613002010000e0700160b00140a00
-261300180c00060300160b000c06000e07002010000e0700160b00160b00060300201000
-201000ff9c38160b00160b00201000140a00201000281400281400160b00201000261300
-180c001e0f00201000160b000e0700160b00201000261300201000ffa142140a001e0f00
-0e07001e0f00180c00020100281400180c00140a00160b00180c001e0f00180c00160b00
-2814002010000e0700281400180c00201000160b00281400140a000e07001e0f00160b00
-2814000e0700261300180c000e0700201000180c001e0f001e0f002814000201001e0f00
-0e0700180c001e0f001e0f000e07002010001e0f00160b00160b00180c00160b00261300
-261300140a001e0f000e07001e0f000e07001e0f001e0f001e0f00180c001e0f00140a00
-160b000e0700160b001e0f000e0700180c002010001e0f00180c000e07001e0f00160b00
-180c00140a002010000c0600281400180c002814001e0f002e1700180c00160b00201000
-281400180c00201000160b000e07000c0600140a00201000
-160b00201000140a001e0f00201000180c001e0f000201002010001e0f002010001e0f00
-140a002010002010000c0600140a00140a000e07000e0700060300160b000603001e0f00
-0e0700ff9b36ff952affa54a0e0700140a002010002613001e0f00180c00281400261300
-ffa040ff99320e0700201000060300160b002010001e0f00140a00140a000e0700160b00
-160b00160b000201002814001e0f000e07000e07000e07000e0700261300140a00281400
-160b00180c00160b002010001e0f00180c002010000e0700160b00160b00201000281400
-0e0700160b002010002010002010000e07000e0700180c00180c00ffa64c281400301800
-281400381c002814002e17003018004221003a1d005e2f00663300864300bc5e009c4e00
-ea7500ec7600ec7600de6f00e87400a45200ac5600b25900924900904800663300522900
-4422004a2500321900402000160b002e17002814001e0f00ffa2441e0f00201000180c00
-1e0f002613002814000c0600160b00060300201000201000060300160b00160b00180c00
-1e0f00180c000e0700201000180c000c0600160b00261300040200040200060300281400
-160b00201000160b000c0600140a00180c00160b00160b00140a00140a00281400060300
-201000261300140a00160b00160b001e0f000603000201001e0f000e07001e0f00261300
-180c00201000ff9b36ffa64c261300180c002814000e07002010001e0f001e0f00180c00
-3018001e0f00160b00281400261300ff9c38ff9b36180c00180c001e0f000e0700160b00
-160b001e0f00140a001e0f000e0700180c00020100160b00140a00160b002010001e0f00
-0e0700ffa64c1e0f00160b003018002e17003018003219004020006432006e37009a4d00
-ac5600e07000d66b00c663008a4500763b005c2e003a1d00381c002e1700381c001e0f00
-2010001e0f00180c00ff9e3c2613001e0f00180c00160b00180c00201000140a00060300
-1e0f002010003018002010002010000e0700140a00160b00140a00301800180c00160b00
-2010001e0f00140a000c0600201000160b00281400140a000e07001e0f00180c00140a00
-180c000603003018002010000e0700160b000e0700201000180c00201000160b00160b00
-0e0700140a00180c00261300140a002814000e0700160b00160b001e0f00160b00060300
-201000140a002613000e0700201000281400261300140a00180c00180c000e0700281400
-160b002814000e07001e0f00180c00160b001e0f00160b00180c001e0f00160b00160b00
-160b001e0f00140a000c06000e07000e07001e0f00160b00180c00180c00201000201000
-261300201000ffa2442613002e17002010001e0f002613002010002e17001e0f002e1700
-2010004221002e17003018003018003018002814003a1d002814002814002814000c0600
-2010002010002814000603001e0f000e0700160b00160b000c06002010002e1700160b00
-160b000c06002010000201002010000e07000c0600060300060300160b00060300201000
-180c00180c00180c00201000140a00201000261300261300060300160b002814000c0600
-140a002010000e0700180c00060300180c00160b001e0f000e0700140a001e0f00160b00
-281400180c00ff98303219001e0f000e0700160b002010003018002010001e0f00281400
-0e0700160b001e0f000e0700201000201000160b00180c00201000ff9e3c2010000c0600
-0201002010001e0f001e0f00201000201000140a00160b00180c000603000e0700160b00
-180c002613000e0700140a00140a00140a00201000140a000e07001e0f000e0700160b00
-2010000603002814003a1d00281400160b00160b00040200140a001e0f00261300201000
-261300160b00261300160b00160b002010002010001e0f00160b00140a00160b00160b00
-0c06002613000e0700160b000e07002814002010000e0700160b00020100160b00160b00
-0603000e0700180c00180c001e0f001e0f00180c001e0f000e0700201000160b00140a00
-180c002613000c06001e0f001e0f001e0f00261300060300160b00160b000e0700201000
-3018002613000402002613002e1700160b00281400180c00
-0e07000e0700180c00140a00160b000e0700201000201000301800281400201000281400
-0c0600060300201000060300160b00160b00140a00160b00180c00160b00160b002e1700
-ff9b36281400281400160b00281400140a00160b00160b00422100160b00201000180c00
-281400160b00ffa74e160b00281400160b00140a001e0f000e07002010001e0f00180c00
-0c0600060300160b00160b000e07001e0f00140a00160b000e07000c0600201000201000
-180c00160b00140a000e07002010002010000c06001e0f00201000160b00160b00281400
-0e0700060300160b002010002613000e0700140a00160b00281400ffab56140a00301800
-2814002814004020002814004221004a25005c2e007e3f00884400aa5500ca6500fe7f00
-ff9428ffad5affa54aff9830ff8f1ef67b00d66b00be5f00aa5500663300804000643200
-5229002e17002e1700281400201000180c00180c001e0f00ffa244160b00160b00180c00
-1e0f00261300160b001e0f000e0700060300261300140a000603001e0f00160b00201000
-160b002613002613001e0f000c06000e07002613000e0700160b00160b000e0700140a00
-160b00140a00160b00180c00201000201000281400160b00180c000e0700020100160b00
-0201001e0f00140a000e07002010000402002010000603002010002010000e0700140a00
-281400ffad5a0603002010000e07000e07003018002e17003a1d002814003a1d00201000
-2010001e0f00261300281400020100160b00160b00ff9e3cff9932180c002010000c0600
-040200140a002814000c0600180c00140a00281400140a00180c00160b000e0700160b00
-201000ffa54a160b002e17002010003018002e17002613002e17003a1d005c2e006e3700
-904800984c00b85c00aa5500763b005a2d00422100522900522900402000201000281400
-1e0f00201000ffa74e180c000e0700140a00201000261300160b00160b00160b000e0700
-160b002010001e0f00160b00180c00160b00180c001e0f002010000e0700201000160b00
-180c00160b000e07001e0f001e0f00301800201000180c002010000e0700040200281400
-0c0600180c000e0700180c002613000603002814000e0700301800140a00201000160b00
-160b000e0700160b00140a00301800180c00160b00281400160b00160b001e0f00180c00
-2010002010001e0f000c0600140a00160b001e0f000c0600201000281400160b000c0600
-160b002e1700160b00160b00381c00201000160b00060300160b00140a000e0700140a00
-140a00160b00160b00180c00201000140a00140a00040200140a00140a000c0600301800
-1e0f00160b00180c00160b000c06001e0f002010002814001e0f002814002010001e0f00
-2010003018003018002010001e0f003a1d002e1700281400261300261300180c00ff9d3a
-201000261300160b000e0700160b00201000201000201000201000180c002814001e0f00
-321900160b00201000201000160b00160b00180c00180c00281400160b00160b00261300
-0c0600201000281400180c00180c000c0600140a003a1d00180c00160b00140a00261300
-180c000e07000e0700140a000e0700160b00140a000c0600160b00140a002010000e0700
-0e0700140a00201000ff9d3a281400201000160b00180c002613001e0f00180c00140a00
-2010000e0700301800140a00160b00180c00180c00160b001e0f00ff9e3c201000160b00
-160b00160b00160b00160b00160b00140a000e0700261300140a00160b000e07000e0700
-3a1d00281400160b000c0600160b00160b00180c00020100160b00160b00160b00180c00
-140a00180c00180c001e0f001e0f001e0f00201000201000261300201000180c00160b00
-160b002010000e07002e17002814000e0700020100160b002e17000e07000e07001e0f00
-160b002010002613000c06000603000c0600201000060300180c00160b00140a00160b00
-160b003018000201002010002814002814002613000e0700180c000e0700180c00160b00
-1e0f00160b002010001e0f00160b00160b00201000281400160b00140a001e0f00180c00
-160b00301800180c00060300160b00160b00180c002e1700
-0c0600160b00060300160b00140a002814002010000e0700060300180c00160b000c0600
-261300201000060300160b000c06000402000c06000c06000603000e0700ffa040ff9b36
-281400160b00180c00180c00140a00160b003018002814000e07001e0f00060300160b00
-160b000e07000c0600ff98301e0f00201000160b00040200140a001e0f000c0600140a00
-2e17002010000e07000e0700261300140a000e0700160b00180c002814000e0700201000
-160b00281400160b001e0f00201000180c00160b00180c00201000140a00160b00160b00
-180c001e0f00180c000e0700160b00201000180c00180c00ffa64c140a001e0f00140a00
-381c004020004221003a1d003a1d004a25006e3700984c00b25900ce6700ff850affa64c
-ffd0a0ffe2c4ffe0c0ffc78effbc78ff8c18fe7f00d66b00b65b008643006c3600442200
-422100381c003219003219002e17002010002613001e0f00ffa040261300201000201000
-140a00140a001e0f002010002010001e0f00201000180c00160b00281400140a001e0f00
-0e0700160b000e07001e0f00160b000e0700020100160b000e07001e0f00201000160b00
-2613000603000603000603000402000e0700060300180c002010000e0700160b00020100
-0e07000402000e0700180c00140a000c0600140a00060300140a00201000160b001e0f00
-ffa4482010001e0f00180c002e17000e07002814002e17002814002e1700281400381c00
-2e17003018002814002e1700201000281400201000160b00201000ffa54a160b00140a00
-140a001e0f00281400160b00140a00020100180c002010002613001e0f000201000e0700
-201000ffa0400e07002814002814002010003219003018004221004422005c2e005c2e00
-5a2d00864300783c006c3600663300542a004a25004a2500381c003a1d00180c00301800
-180c000e0700ff9932201000281400281400140a00261300160b00180c00160b00160b00
-160b001e0f002e1700140a00201000160b00201000160b00281400201000201000160b00
-160b00160b00180c001e0f00160b000c0600160b000e0700160b00160b00160b00261300
-1e0f00201000140a00160b00160b00201000180c00201000160b002010000e0700020100
-2010000e0700281400160b00140a00281400160b00201000140a003018001e0f00060300
-160b000c0600201000381c00180c000e07001e0f00201000140a00180c00160b00261300
-140a00160b00160b00140a001e0f000e0700140a00140a00160b00160b001e0f00140a00
-160b00140a000e07000c06000e0700140a00140a000e0700201000281400140a00140a00
-201000201000281400160b00160b00180c002613002010002814003018002613002e1700
-2e17001e0f002814003219002814002e1700180c00281400201000201000ffa64c1e0f00
-0e0700140a000e07002613000c06000c0600160b00160b00140a00180c00160b002e1700
-0e0700160b00281400160b00281400261300160b000603000e0700160b00201000160b00
-261300140a00201000160b00140a001e0f001e0f00140a000e07000c06000e0700140a00
-301800180c001e0f00060300201000180c000e07001e0f00201000160b00201000160b00
-0e07000e07002e1700160b00ff9c38281400180c002010002010000c06001e0f00261300
-180c000e0700180c002814002010000e07002010000e0700ff9d3a201000140a000e0700
-160b000e07001e0f000603001e0f00160b00201000160b00160b000e07001e0f00281400
-160b00201000040200060300281400201000140a00140a001e0f000c06002010001e0f00
-281400140a002010000603000e0700160b00180c000e07001e0f00160b00180c000e0700
-160b002814000e0700180c000e0700160b00201000180c00060300140a001e0f00140a00
-2010002613001e0f00160b00261300160b001e0f00160b00261300160b001e0f00160b00
-180c00160b00180c001e0f00140a00160b00160b002010002814000e0700160b00201000
-201000180c00140a00160b00140a001e0f000e0700160b00201000160b001e0f00381c00
-201000160b00160b00160b002613000e07001e0f00301800
-1e0f00140a000e0700180c001e0f00201000160b001e0f002010000c0600281400160b00
-160b001e0f000603000e0700180c000603000c0600060300160b002010001e0f001e0f00
-180c00201000140a001e0f00140a002814002613002814000e07002613002e1700201000
-1e0f002814000e0700281400ff9e3c2814000e07000e0700140a001e0f001e0f000e0700
-201000060300140a002814000c0600160b000402002010000e0700040200140a00040200
-180c00160b00060300180c00160b00201000160b00160b000e0700180c00140a00201000
-2e17001e0f000e0700160b001e0f00140a00281400201000ff9d3a180c00160b00381c00
-2010002814004c2600321900542a00763b00804000aa5500d06800ff8204ffa64cffdbb6
-fffcf8fffcf8fffcf8fffcf8ffd1a2ffa142ff870ed86c00bc5e008a45006e3700442200
-522900301800301800180c002010001e0f00261300ffa1422613001e0f002613002e1700
-281400160b00201000180c00180c00160b000e0700160b00160b00201000160b00180c00
-281400140a000e07002010000e0700180c00201000201000201000180c00301800160b00
-160b00180c000201000e0700160b00140a00180c00160b001e0f00020100180c00261300
-140a000e07001e0f000e07000e0700201000180c00020100160b000e07001e0f00ffa142
-0e0700160b00140a00261300160b002814003018004422003a1d004422004a2500522900
-381c00542a003a1d00381c00381c00301800321900281400201000160b00ffa142ffa74e
-140a00060300140a00160b001e0f00160b002613000402000e0700160b00020100180c00
-160b00160b00ff9d3a0c0600060300160b00180c002814002613003018002814004a2500
-4c2600542a004422004221004221005229004221003a1d00301800281400160b00140a00
-180c00140a00ff9d3a201000140a000e07002010002613002613000e07002010000e0700
-1e0f00160b00140a001e0f002010002814000e0700180c00160b000e0700201000201000
-180c00201000180c000c06001e0f000c06002010002010000e07002010002814000e0700
-160b002e1700160b000e0700180c00140a00160b00261300281400180c00140a00180c00
-180c002814002010001e0f000e0700160b00201000180c001e0f00201000160b00160b00
-160b00301800060300160b002e17000e07002010001e0f00160b000603002613001e0f00
-261300180c00180c00180c00422100060300160b002010002613000c0600060300160b00
-1e0f002010000e0700160b00140a00160b000e07000e07000c0600140a000c06001e0f00
-160b002814002613000603000e0700ff9932ffa0402613001e0f001e0f00281400301800
-180c002814002010001e0f001e0f00160b00261300281400201000160b000e0700160b00
-0e0700201000180c000e0700160b00160b000603002010000e07003a1d00160b00160b00
-180c001e0f000201002e17002613000e07000e0700201000201000160b00180c00201000
-160b001e0f00201000160b000e07000e07000e0700160b00160b00160b00160b001e0f00
-2e1700201000180c00160b00201000160b000e0700160b001e0f001e0f00261300201000
-2613002814000c06001e0f00281400ffa952ffa040160b00160b002814000c06000e0700
-261300201000201000160b003018000e07001e0f00ff9b36160b001e0f000603001e0f00
-160b00060300201000261300140a00160b00060300201000140a001e0f000c0600180c00
-160b00160b00301800060300201000180c00060300281400180c00160b00060300160b00
-160b00060300040200160b001e0f002010001e0f00060300180c00180c00160b00160b00
-160b00180c00301800201000201000160b000201002814000c0600201000201000160b00
-060300140a00201000060300160b000603000e07002e1700201000160b00140a00261300
-180c00201000201000201000201000180c00301800160b001e0f002814001e0f001e0f00
-281400301800140a00261300140a00160b000c0600180c00180c00160b002010000c0600
-2814000e07002613001e0f00060300201000160b00201000
-0c06000c0600020100160b00060300261300160b00160b000e0700201000140a001e0f00
-180c00201000160b000c0600160b001e0f00140a00180c001e0f00ff9b36160b00140a00
-180c00201000261300201000201000201000160b002613002613003018001e0f00160b00
-140a00160b00140a00201000ffa0401e0f00180c000c06002010001e0f000c0600160b00
-0c0600261300201000160b00160b000e07001e0f000e0700201000160b000e0700160b00
-020100180c000c0600201000160b00201000201000140a000603001e0f00060300040200
-160b001e0f00060300160b00160b000e0700160b00201000ffa74e160b00261300160b00
-2814003018004c26004020006e3700884400ac5600be5f00de6f00ff952affc488fffcf8
-fffcf8fffcf8fffcf8fffcf8ffd7aeffad5aff8102d66b00aa55009048006432005e2f00
-4a2500301800381c00281400301800281400281400ffa74e281400180c000e0700201000
-2e17002e1700160b00201000060300160b00140a001e0f00060300201000160b00160b00
-160b000e0700180c00180c00201000140a001e0f00140a001e0f00261300140a000e0700
-0e0700160b00160b000e07002814001e0f000e0700140a00140a00160b002010000e0700
-0e07000e0700140a00160b000c0600201000140a001e0f001e0f00160b00ff9428201000
-180c002010002814003018002613002814003a1d004221004c26006432006c3600643200
-6432005a2d005c2e004a25003a1d002814003018003a1d002e17002010001e0f00060300
-ff9e3c0603002010002814000c0600140a000e0700180c00060300261300201000180c00
-0c0600201000201000ffa142140a000e0700201000160b003219002e1700301800301800
-3a1d00321900442200381c002e17004221002e1700201000201000301800140a00281400
-281400ffa2442010001e0f00140a003018000c0600140a000c0600140a00281400140a00
-201000160b00160b00160b00201000261300160b00281400301800180c00201000160b00
-160b00160b002613001e0f00160b00160b002010000e0700160b001e0f00281400160b00
-1e0f000e07002814001e0f00180c00140a002814001e0f000e0700261300180c00160b00
-180c00160b00160b00180c00261300201000201000060300261300201000160b00160b00
-2010000c06002010002613002010001e0f00160b000603002010000e0700140a00281400
-0e0700060300281400180c00160b00160b00281400140a000e0700160b002010000e0700
-0e07001e0f00180c00261300160b000c0600201000201000180c00160b00060300201000
-0e0700140a002010002814002010001e0f00160b003a1d00281400160b00160b00180c00
-201000140a00180c00281400201000160b001e0f00ffa244ffa54a201000180c00160b00
-140a000201002010001e0f00140a00301800160b00281400160b00140a002010000e0700
-2814002010000e0700180c00060300180c00160b00160b00160b00160b00160b00201000
-201000180c00160b000e07000e07000e0700180c00201000201000160b00140a00201000
-160b00160b00040200160b00160b00201000160b00060300160b000e07003018000e0700
-2814002613001e0f000603000e0700040200201000ffa142ff9e3c1e0f00140a00160b00
-201000160b001e0f00160b000c06002e1700ff9932160b001e0f00201000160b00180c00
-180c000c06000c06002814002010002010002010002010000402000e07000c0600281400
-201000160b00180c00180c00160b00180c000e07001e0f000e0700160b00201000160b00
-160b000e0700140a000e07000e07002e1700180c00ffa142ff9e3cffa54affa448ffa040
-0c0600261300160b00140a00180c00140a002e17002010002010000e07000e0700060300
-160b00180c00180c003a1d00060300201000140a00160b00140a00180c001e0f00180c00
-140a000603000e0700201000160b00201000140a00180c00180c002814002010001e0f00
-160b002010002814000e0700160b00160b00180c00201000180c00180c00160b000e0700
-201000201000160b00160b00140a00180c00060300060300
-180c00060300180c001e0f00321900201000160b000603000c0600160b002613001e0f00
-160b00160b00160b001e0f00160b000e07000e0700281400ffa142160b001e0f00160b00
-2010001e0f002814002814002010003018003018002e17001e0f002e1700160b00160b00
-1e0f00261300160b000e0700ff99320e0700281400140a000603000e0700160b00060300
-1e0f00160b00160b00180c00140a00160b000e07001e0f00160b001e0f00160b00160b00
-020100160b000e0700321900180c00180c002814001e0f00160b00261300060300201000
-1e0f002e1700281400160b001e0f00201000301800ffa448261300160b00422100281400
-2814002613004020005a2d006432008040009e4f00b25900ea7500ff9830ffbd7afffcf8
-fffcf8fffcf8fffcf8fff4e8ffb870ffa142fc7e00c46200a251008040006e3700542a00
-542a003219002010001e0f001e0f002814000e0700ffa448201000160b00160b00201000
-2e1700140a00180c000e0700160b000e0700180c001e0f00201000180c00140a000c0600
-060300060300160b00180c000c06001e0f00160b00140a000c06002010002010000e0700
-0603002613000603000603000e0700140a000e07000e07000c06001e0f000e07001e0f00
-160b000201002010000e07000c06000e07002010000e0700180c000e0700ffa448201000
-2e17002814003a1d004221005229005229005e2f005c2e005c2e00904800884400804000
-884400904800703800763b005229004c26003a1d00321900281400201000140a00201000
-ffa64c2010001e0f00160b00201000201000160b00160b00160b00201000160b00160b00
-180c002e1700160b00ffa040201000261300201000180c00261300160b002e1700261300
-2814002814002e17003a1d003018003018002814002010002814002e1700160b001e0f00
-261300ff952a2010000e0700140a001e0f00281400180c00160b000e0700281400140a00
-180c002613001e0f00201000160b00140a000e07000201004020002814001e0f002e1700
-201000160b002613000e0700201000180c000e07000e07000c0600160b001e0f00160b00
-180c00180c002010002e1700140a000603000e0700140a002010002010000e07001e0f00
-160b00180c00180c00180c000c0600160b00201000060300180c00160b00201000140a00
-0e0700160b002e1700261300160b001e0f00180c000e07002010000e07002010001e0f00
-160b00060300140a00160b00140a00160b000603002010001e0f001e0f002010000e0700
-0c06000e0700140a002814000c0600160b000603001e0f00201000140a00020100140a00
-2010002010001e0f000c0600140a000e07000e0700201000402000ffa040ff9c38ff9e3c
-301800180c00ffa448ffa448ffa040180c00180c000603000e0700160b000e0700201000
-060300160b00160b00180c00180c003a1d002e1700160b00180c000e0700140a001e0f00
-281400160b002010001e0f00180c00140a00160b00140a00160b00180c000603000e0700
-160b00180c00180c00060300140a002814000e0700160b00140a000e07000603001e0f00
-160b002010000e0700160b00140a00160b000e0700281400201000180c002613000e0700
-2814000e07000c0600180c00201000180c00140a00160b00060300ff9c38ff9e3cffa448
-0603000e07001e0f00201000ffa448ff9d3a140a00180c00160b00160b00160b001e0f00
-140a000e0700060300160b000e07002e17002814002010000e0700160b000e07000e0700
-201000160b00160b00140a00160b00201000140a00160b000e07002e1700160b00160b00
-261300180c00180c000e07000c0600ff9c38ff9932060300261300301800140a00160b00
-ff9932140a002010001e0f001e0f00160b00201000201000160b00160b00160b00160b00
-0e0700281400201000160b002010001e0f00160b000e07000e07000e0700160b00160b00
-160b00180c001e0f002e1700160b000603000e0700201000201000160b00261300301800
-060300060300160b00160b00281400261300281400160b00201000140a00201000160b00
-160b00160b001e0f000402001e0f001e0f00140a00201000
-201000180c002010000603000e0700140a00160b00160b000e07000e0700201000160b00
-1e0f000e07001e0f00160b00140a000e0700201000261300ff9e3c160b00160b00301800
-160b002010003018003219002e1700381c00402000402000381c002814002010002e1700
-2613000e0700160b00201000160b00ff9932140a00140a00201000140a00020100180c00
-140a00060300160b00140a000c0600201000201000180c00160b000e07002613001e0f00
-140a001e0f00201000160b00160b00160b00140a00180c000e0700160b00160b00180c00
-140a001e0f00201000160b00140a00180c00160b00ff9b36180c00180c00201000281400
-2010003018003a1d005a2d007e3f007e3f009a4d00c86400e47200ff8f1effb264ffd0a0
-fff4e8fffcf8fff6ecffd3a6ffa74efe7f00e47200b25900763b00763b005e2f00422100
-422100381c00301800201000160b001e0f00160b00ffa54a261300180c00201000201000
-281400060300180c001e0f00160b00160b001e0f002613002814002010000c0600160b00
-0c06000e0700160b00160b00160b000e0700040200160b001e0f000e0700281400180c00
-160b002613001e0f00201000180c00180c00201000180c000e07000e07001e0f00180c00
-1e0f001e0f00180c001e0f001e0f000e07000e07001e0f002010000e0700ffa040261300
-2814003a1d003a1d00522900542a006432006e3700864300864300a45200c46200d06800
-b65b00bc5e00b65b008643007e3f006432004a25004422002e17003219002613001e0f00
-060300ffa142180c00180c000c06002010001e0f00160b000e0700140a00060300140a00
-160b00140a00201000160b00ffa64cff9c381e0f00180c00301800321900160b00301800
-180c003a1d002010002814002814002613002010000e07000e0700381c00160b00ff9d3a
-2010001e0f002613002010000e07000c0600281400180c00180c00160b002e17000e0700
-0c0600160b00160b000c0600160b003018000c06002e17002010000e0700160b000e0700
-0e07001e0f00180c000c06000e0700281400160b001e0f000e0700160b000e0700160b00
-201000160b00180c00140a00160b000e0700160b003018002613001e0f000e0700201000
-1e0f001e0f00160b00201000160b00160b000e0700160b00160b00281400160b001e0f00
-1e0f000e0700180c00201000201000160b00321900160b00160b002613000603000c0600
-180c00160b00140a000e07000c0600160b000e07000e07000e0700160b00301800201000
-160b00281400140a000e0700180c00180c00180c000e0700281400140a00201000060300
-1e0f002613000c06002010002814002010000e07002010000e0700281400160b00201000
-160b00160b00201000160b000e0700180c000e07001e0f002613001e0f00281400140a00
-2613002814002010003018000e07000e0700160b00160b00140a00261300140a00140a00
-281400201000140a00160b00201000201000180c000603002010000c0600261300060300
-2814000c0600201000201000140a00180c002814002e17002814000e0700140a00160b00
-160b000e07000e07001e0f00301800160b00160b00160b00281400160b000e0700201000
-0e07001e0f00261300160b00261300281400180c000e0700261300180c00261300160b00
-ffa040ffa448ff9b36ff9c38201000160b000e07002010002e17002010000c06001e0f00
-160b000603000e0700140a00060300160b00020100160b002010002814000e0700180c00
-1e0f000603000e0700160b00261300160b00301800201000180c00060300160b000e0700
-160b00180c00060300180c00ffa142180c00140a00140a00160b00160b00201000201000
-261300ff9c380e0700160b00180c000e07000e0700140a00201000160b000603000c0600
-1e0f000603001e0f000c0600180c00201000160b00160b001e0f00160b00160b00160b00
-0e0700201000180c000e07002e17000e0700140a00160b00180c00160b00201000281400
-1e0f00261300160b002613000c0600160b00180c002613002010002010002010000e0700
-160b000e0700160b00160b00160b000e07000e0700281400
-1e0f000c0600140a00180c000e07000c06002613000e07000c0600040200281400180c00
-0c06000603000e0700180c00180c00201000201000ffa244180c000e0700160b000e0700
-180c00160b00381c00381c00301800381c003219003219004221003a1d00281400281400
-2e17001e0f001e0f00180c00201000ff9830261300040200140a002010002010001e0f00
-0e07000603000e0700201000201000160b000e0700180c000e07001e0f00140a00201000
-1e0f000e07003219003a1d00180c002010001e0f002814001e0f000e0700201000140a00
-201000160b00301800180c002e17002613000e0700ffa9521e0f002613002613002e1700
-281400160b004c2600442200663300864300904800a25100d06800f27900ff9326ffab56
-ffc080ffc488ffb468ff9d3aff8204d86c00aa55009249006c36005c2e004c2600321900
-3a1d004020002814001e0f00201000140a00ffa448180c00180c00160b001e0f00160b00
-201000261300180c000e07000e0700180c002010000e07001e0f002613000e0700160b00
-0e0700261300180c00261300160b00140a00160b00140a00160b00201000160b00160b00
-0c06001e0f000402002e1700180c00160b00060300140a000e0700201000060300020100
-160b00201000180c002814000402000e0700160b000e0700180c00ff9830060300281400
-281400321900542a005e2f006c3600703800804000984c00b85c00de6f00f67b00ff9428
-ff8f1eff850aff8204d86c00b259008844006e37004422004a2500301800281400160b00
-140a00201000ffa2440c0600180c00281400201000180c00140a000c0600060300140a00
-0603000e0700180c003018001e0f00140a00ff9428261300160b00160b00180c00160b00
-140a00201000201000281400281400180c00160b00160b000c0600261300ffa448140a00
-281400201000060300180c002e1700160b00201000201000160b00180c000c0600201000
-281400140a001e0f000e0700140a000e0700180c00180c00020100201000140a00140a00
-2010002010000e07000c0600281400180c002010001e0f001e0f000e0700140a00281400
-140a00160b001e0f00140a002010000e07000e07000402000e0700160b000e0700140a00
-2010001e0f00180c000e0700201000281400201000261300281400160b001e0f00201000
-2e1700160b00020100140a002613000c0600180c001e0f00180c00201000160b00160b00
-160b001e0f000e07002010000603000c06000603000e0700140a00140a00160b00060300
-020100140a00201000180c00301800160b00160b00180c00201000140a001e0f001e0f00
-201000140a00201000160b000e0700201000160b000e0700180c00201000201000140a00
-180c00160b00140a00140a000e0700140a001e0f00180c00201000261300160b000e0700
-261300160b002010001e0f001e0f000c06001e0f00160b00160b00180c000e0700180c00
-160b002010002814000c0600180c00160b00140a002010000c0600201000160b000e0700
-201000140a00160b00160b00201000180c000402002010000e07000e0700201000201000
-180c00160b001e0f00261300201000180c002010000e0700160b002613002010001e0f00
-201000261300140a00180c00180c00201000160b00261300160b001e0f00201000160b00
-160b00160b00281400140a00140a00201000160b00180c00140a002010000e0700160b00
-160b002010000e0700201000140a00281400160b00180c00180c000603000e0700160b00
-201000140a000e07002010001e0f00180c00381c00160b000e0700140a00160b00160b00
-160b001e0f000e0700ff9c380e0700201000201000060300160b00140a001e0f000e0700
-140a000e0700ffa4480e0700180c00201000140a002010002e17002010000e0700160b00
-201000020100261300180c000e0700140a00201000180c00140a00281400180c00140a00
-140a000e0700160b00160b00201000160b00261300160b000603001e0f001e0f00261300
-261300160b002e1700140a00160b00281400201000160b00180c00140a00180c00201000
-140a00160b00201000160b000e07002010001e0f00180c00
-140a00160b000603001e0f000e0700160b00160b001e0f002010000e0700160b000e0700
-261300201000160b000e07000c06000e0700281400ffa448281400261300261300140a00
-2613001e0f00140a002814004221004a2500381c005229003219002814002010002e1700
-140a000e0700281400140a00ffa1420c0600160b000e0700160b00261300160b00281400
-261300201000201000180c00160b00020100160b000e07000e0700160b00160b00301800
-0e07001e0f00160b000c06002010000e0700201000180c00180c001e0f002010000e0700
-301800160b00160b00140a002814001e0f00160b00ffa244261300160b000c06002e1700
-2e17002e17004422003a1d005e2f00643200904800984c00b65b00ca6500d86c00ff8102
-ff9326ff8306ff8102f27900c462009e4f008a45007e3f00542a005c2e003a1d003a1d00
-281400261300281400281400301800160b00ffaa543018002010002814000e0700201000
-0c0600160b002613000e07002814000e0700180c00180c003018001e0f00160b00281400
-160b002010002613000e0700160b00060300201000060300060300160b001e0f00060300
-160b001e0f00160b001e0f00140a001e0f00201000180c00201000160b00180c00160b00
-1e0f00160b00160b001e0f00180c000e0700180c00160b000e0700ff9c38160b00201000
-3a1d003018005229005a2d006432007e3f009c4e00a45200c66300ff8b16ffa54affbb76
-ffbf7effc78effad5aff870ee47200b259008643006c3600422100422100321900281400
-201000201000ffa2441e0f00020100180c00201000201000160b001e0f00180c000e0700
-160b00160b000603001e0f00281400160b00140a00ffa040ffa54a160b00201000160b00
-2e17002613002e1700140a00281400180c002010000e0700ffa040ffa448201000060300
-160b00160b00261300140a001e0f002010002010000e0700160b00160b00180c000c0600
-0e0700140a00160b00201000261300261300160b00180c000e0700160b00180c00160b00
-160b002010002010000c0600180c000e0700140a00140a00160b000c0600201000160b00
-180c00281400160b00201000201000180c00180c001e0f001e0f00261300160b00160b00
-201000201000201000020100180c00160b002010002613000c06001e0f00180c00281400
-261300160b00140a00160b000e0700160b002010000e07001e0f002814000e0700060300
-160b000e07002814000e0700201000060300160b00201000180c00160b001e0f002e1700
-160b00201000160b000402001e0f00301800160b002613002814002010001e0f00160b00
-201000180c002010002e1700160b00180c000e07002010000c0600160b000e0700160b00
-160b00160b00160b004020002613001e0f00180c00160b000e07001e0f00140a000e0700
-180c000c06002010002814000e0700261300201000180c00180c000e0700281400201000
-160b001e0f00140a00160b002613000c06000c0600180c00140a000e0700160b001e0f00
-0c0600140a00180c00140a00140a00060300180c00160b001e0f001e0f00140a00261300
-0c0600180c00180c00201000261300201000160b001e0f00180c00060300160b00201000
-0c0600281400060300060300160b00160b001e0f00281400160b001e0f001e0f00180c00
-1e0f000e0700180c00160b002814000e0700201000160b00201000160b00140a00180c00
-140a001e0f00180c000201002010000e0700060300140a002814000e0700060300201000
-201000160b00381c00201000160b003018001e0f00140a000c0600180c00180c00160b00
-160b000603000e0700ffa54a1e0f00201000261300140a002814000e0700060300261300
-140a00040200ff9c38261300180c000c0600160b00160b002010000e0700180c00201000
-0402000e07002613002010002613000e07000c0600261300180c00201000040200140a00
-160b00160b00261300160b00201000261300180c002010002613000e07000e0700180c00
-180c00160b001e0f00201000160b00261300140a00160b000c0600140a00201000180c00
-160b00160b000c0600180c001e0f00301800180c00140a00
-180c002613001e0f00180c00160b001e0f002613001e0f00140a000e0700160b00180c00
-140a00180c000e0700140a003018000603000e0700ff9c38160b001e0f00160b00140a00
-0e07001e0f003219004020002814002e17003a1d002010003219001e0f000e0700201000
-060300180c00201000160b00ff9c380e0700160b001e0f000c06000e07002613001e0f00
-3018001e0f00060300140a000e0700180c00301800180c00160b00180c000e07001e0f00
-160b00180c000e07000c0600160b001e0f00281400140a000e0700281400281400180c00
-180c00201000160b002010002814001e0f00201000ffa4481e0f00180c00201000301800
-2010002010003018003a1d005c2e006432006e37007e3f009c4e00aa5500aa5500ac5600
-c46200d06800c86400984c00984c00804000643200663300422100442200321900422100
-281400301800261300261300160b00ffa74e1e0f00180c00160b001e0f00140a000e0700
-160b00060300160b002010002814002814000e0700160b001e0f00160b00180c00301800
-1e0f000e07000603000e07002613002613000e07001e0f00160b000e0700140a00140a00
-2010001e0f000e07002010000402002010002010000e0700160b00160b00140a00160b00
-0e0700281400160b001e0f001e0f002814000603001e0f001e0f00ff9c382010001e0f00
-3018002e17003a1d004a25006432007e3f00864300be5f00d86c00ff952affc890ffedda
-fffcf8fffcf8ffdebcffb468ff870ed86c00ac5600763b004a2500422100321900301800
-1e0f001e0f00201000ff9b36160b000e0700160b000e0700160b000603000e0700281400
-140a002814002e1700160b00201000160b001e0f00160b00060300ffa040ffa54affa142
-ffa64cffa64cffad5affa74effa448ff9830ffa244ffae5c160b00180c000e0700180c00
-2010001e0f00301800201000180c00180c00140a002814002e17000e0700160b00201000
-1e0f00160b00060300020100160b00140a00201000160b002010000e07001e0f00281400
-160b00261300160b00140a002010000c0600281400201000140a00201000160b000e0700
-060300281400160b00180c00160b00140a000e0700140a00180c00281400160b00201000
-261300261300180c00201000160b00201000201000160b002010000e0700201000180c00
-0e0700180c00180c00160b000c0600160b001e0f000e07002814000e07002613002e1700
-0e07001e0f002814001e0f002613000603000c0600160b002e17001e0f000e0700160b00
-2010002814000e0700140a00180c00160b00281400261300201000180c00180c000c0600
-160b00180c00160b000e07001e0f000c0600160b00160b00180c000e07000c06000c0600
-160b000e0700201000160b00201000140a00140a00281400160b000c0600261300180c00
-0603000201001e0f00201000201000140a001e0f00140a00180c00140a00201000281400
-180c00180c002010000c06001e0f001e0f000e07000e07002010002010000c06001e0f00
-160b00140a00160b00180c001e0f00201000160b00160b001e0f00040200160b00281400
-2814000e07000c06002e1700160b00180c002010000603001e0f00281400160b00201000
-180c00140a00201000160b00180c002010000e07001e0f00180c001e0f000e07000e0700
-160b00040200160b00140a00160b00160b002010001e0f00180c00160b00140a00140a00
-0e0700160b00281400160b000e07001e0f00160b00180c002613000e0700261300281400
-140a00281400160b001e0f002613000c0600160b002010000c0600180c00180c00261300
-140a00201000ff9d3a160b000e07002e1700201000201000201000160b00180c00140a00
-1e0f00261300160b00ff9c383018002010002010000e0700140a002010000e0700180c00
-0c06000e07001e0f00140a00160b00160b00180c00060300281400140a000e07001e0f00
-140a00201000180c002814001e0f001e0f000e0700281400160b002814001e0f00201000
-2814000e07002010000e0700381c002010003018002814002814001e0f00201000140a00
-160b000e0700160b000e07002010000e0700160b00281400
-0c0600140a00140a000e0700201000160b00261300140a000e07002010000e0700140a00
-2010002613002010001e0f00060300020100060300160b00ffa74e261300020100160b00
-0e07001e0f000e07001e0f00201000160b002e17001e0f00160b00180c00180c00160b00
-040200281400140a00ff9d3a0c06000c06002814001e0f000c0600160b00281400201000
-2010001e0f001e0f002010000e07000e07000c0600180c00160b00281400160b001e0f00
-0e0700160b000c06000603000e0700040200060300140a00160b000e07000e0700160b00
-0e0700160b00180c002010000e0700201000140a00ffa74e2814001e0f000402001e0f00
-201000301800381c002e17003a1d004221005e2f006e3700804000864300783c00a45200
-a45200984c008844008a45008844005c2e006633002814003a1d00301800402000281400
-281400201000201000160b00ffa448201000180c00160b002010002010000e0700180c00
-140a001e0f000e07002010002613001e0f002010000603000c06002613001e0f000c0600
-261300160b00180c00140a00201000301800180c00201000160b000e0700160b00261300
-160b000e0700140a00180c00201000160b00160b000e07000e0700140a00180c000e0700
-0e0700180c000e0700301800140a00281400201000261300201000281400ffa2440e0700
-281400261300381c004221004c26006e3700904800b25900e47200ff9b36ffc488fffcf8
-fffcf8fffcf8fffcf8ffd9b2ff9d3aff8306be5f008643006c3600542a00281400281400
-1e0f00281400180c00ff9d3a060300180c00180c00160b000c0600160b001e0f00180c00
-140a002613000c0600180c000e0700060300140a00180c002613000e0700301800201000
-0e07000e0700160b00160b00281400040200261300160b000e07001e0f00261300201000
-0e07000c0600140a00160b00140a00160b00160b00201000160b00160b00261300180c00
-180c002010000e07002010000e0700020100160b002814001e0f00201000140a00261300
-0e0700160b000e0700261300180c000e0700140a00201000180c00160b00201000060300
-321900160b00160b002613002814000603000e07001e0f00160b00180c000e0700160b00
-201000261300160b00140a001e0f00160b000c0600040200180c00201000201000281400
-180c000e07000e0700160b00281400201000201000180c001e0f00201000180c00160b00
-2814000c06001e0f00140a00261300261300281400160b001e0f00140a001e0f00140a00
-0e07002613001e0f000c06000e07002010000e07000c06001e0f00422100180c000e0700
-0e0700261300160b000e0700140a00201000160b00140a000e07002613000e0700201000
-160b00180c000e07001e0f002814000c06000e0700160b00180c001e0f00180c00160b00
-0c0600180c00140a00140a000e0700281400160b002010001e0f00160b00040200140a00
-160b000c0600160b00140a000c0600140a00140a000e07000e0700040200040200160b00
-0e0700160b001e0f000e0700140a000e07000c06000e0700060300160b002010000c0600
-180c00201000060300201000160b00020100160b00180c000c06000e0700201000040200
-140a00140a00160b00140a001e0f00261300201000281400201000180c00180c00020100
-261300140a00160b00140a00180c00201000261300160b00160b001e0f00160b00281400
-0e0700160b00160b001e0f00160b00180c00140a00160b000c06000c0600201000201000
-160b001e0f000e07000e0700160b00140a000e07001e0f00140a00201000160b00060300
-180c001e0f00ff99321e0f00160b00201000180c003018002613001e0f000e07001e0f00
-140a002613000c0600ff9d3a180c002010002010000402001e0f00180c00261300180c00
-0603001e0f00321900160b00160b001e0f000e0700060300160b000e07000e0700140a00
-2010002010000e07000c06001e0f00020100160b001e0f00160b00201000201000060300
-0e07000e0700180c001e0f00160b00201000281400261300301800160b000e0700180c00
-140a00201000180c00160b000c0600201000160b00060300
-261300020100140a000e0700180c002814002010002010000603000e0700180c00060300
-281400201000201000160b000402001e0f000e0700261300ffa244201000160b00160b00
-0e0700201000160b002814001e0f00261300160b002613002010001e0f00140a00261300
-140a00140a00ffa74e2010000201000e0700140a00140a00160b00281400201000201000
-060300261300160b000e07001e0f002010000e0700201000180c00281400160b00140a00
-281400180c00160b002e17000e07000e0700160b000e0700140a001e0f00201000201000
-1e0f00261300160b00180c00160b00281400160b000e0700ff9d3a1e0f00160b00180c00
-3a1d002814002814005229002814004c26005229006432005c2e005c2e005c2e006e3700
-804000763b006633005a2d004a25003a1d004221004a25002e17003219001e0f00201000
-1e0f00301800160b00ffa1420e0700160b002e1700180c00160b00160b00140a001e0f00
-140a00180c002010000e07002010000e0700140a00180c00140a00160b00040200201000
-0c0600281400180c00140a001e0f00160b000e07001e0f00140a00201000160b00301800
-2010001e0f000e0700201000160b00180c00160b000e0700140a00140a000e07000e0700
-0c06002e1700160b00201000201000261300140a00201000180c00180c00ffa4480e0700
-2010003018003018004221004020006e3700763b009c4e00c86400ff8b16ffaa54fff8f0
-fffcf8fffcf8fffcf8ffe2c4ffba74f67b00ca65009e4f005e2f00402000301800301800
-201000160b000e0700ffa1420c0600160b00140a00160b000402002613002613000e0700
-160b00160b002814000e07000e0700160b00160b00201000140a00160b000e0700201000
-1e0f001e0f00160b002e1700180c000e07002010001e0f001e0f002814001e0f00201000
-160b000e07000c06000c06000e0700060300140a001e0f00201000140a00140a00140a00
-1e0f00201000261300201000281400160b00160b00160b00160b002814002010001e0f00
-140a00160b000e0700201000201000201000261300140a002010000e0700160b002e1700
-180c002613000e07001e0f00180c00140a00160b00060300160b00180c00321900281400
-160b001e0f00140a00160b000c0600261300201000201000261300160b00140a00261300
-201000201000201000160b00201000140a002e1700160b000c0600160b00281400201000
-2010001e0f00402000281400140a00281400160b002814000603001e0f00180c00160b00
-0e07000c0600160b000e07000c0600180c00261300160b00140a002613001e0f00160b00
-2010000c0600160b00261300180c002010000201001e0f000e0700140a001e0f00201000
-1e0f00140a000e07000603000e0700160b000e0700301800180c001e0f00201000201000
-0e07000c06002814001e0f00381c00140a00201000261300160b00160b00160b001e0f00
-2010000603001e0f002010001e0f00201000160b001e0f00160b002010000e0700201000
-2010000e0700160b00180c00140a00180c001e0f00180c002010000e0700060300201000
-1e0f00180c00180c001e0f000c0600140a00160b000e0700201000060300301800140a00
-140a001e0f002613002010000e0700060300201000180c001e0f002010001e0f00160b00
-180c00160b000201000e0700140a00160b000e0700160b000c0600201000140a00160b00
-281400160b001e0f00140a00180c000e0700201000261300160b00261300140a00140a00
-1e0f00201000020100140a00060300201000020100160b00160b00160b00140a00160b00
-0e0700ff952a0e07000e0700140a00160b00180c003a1d00281400160b00160b00261300
-180c000c0600140a001e0f00ffa448281400160b00180c001e0f002613000e0700180c00
-160b000e07000e0700160b00060300201000160b002613001e0f001e0f000e0700201000
-0e0700160b00180c00040200160b001e0f00140a002010001e0f001e0f000e0700160b00
-160b00180c001e0f00160b002613002814002010001e0f000e0700160b00201000180c00
-160b00180c00261300160b00301800160b00180c00160b00
-2814002010001e0f00060300140a00180c00180c000e07002010002010001e0f00060300
-160b00201000180c000e07002010000c06000e07001e0f00261300ffa1421e0f00180c00
-0e0700140a001e0f002e1700180c001e0f002010001e0f00180c00201000261300160b00
-1e0f00ffaa54261300160b002010002010000e07001e0f00160b00180c00060300201000
-0201000e0700180c002010001e0f00160b001e0f00281400281400261300281400180c00
-0e0700160b000e07000e0700261300201000160b000e0700160b00140a000e0700160b00
-0e0700140a00180c002613002010000e0700160b000e0700ffa448281400140a001e0f00
-2010003018002010003018003219002e17004a25005c2e004a25004c26004c26004c2600
-5c2e00522900643200542a004020003a1d003a1d00321900301800301800321900201000
-140a00281400ffa244ffa142180c00160b000e0700160b002e17002814000e07001e0f00
-1e0f000e07000c06002010001e0f000c0600281400180c00040200140a00140a000e0700
-2010002814000e07000e07001e0f00160b00160b000e07002010000e0700180c00201000
-180c00180c00160b00160b00201000140a00180c00160b00261300160b00281400180c00
-040200160b002010002010001e0f00201000160b000e0700201000140a00ff9e3c201000
-0e07001e0f002e17003219004221004c26008a45007e3f00aa5500e27100ff9830ffbb76
-ffeddaffe7ceffe7ceffb870ff9b36f67b00d269008a45006e37004c26003a1d003a1d00
-281400201000160b00ffa040160b00140a000201000e0700201000180c001e0f00201000
-180c00160b000e07001e0f00140a000c06000c0600160b00160b002010001e0f000e0700
-0e0700160b000e0700180c00160b00140a001e0f00160b00261300261300261300180c00
-0e07000603000e07002814001e0f00180c00201000180c00180c00281400261300140a00
-140a00060300201000180c00180c000e07000c0600160b002010002814001e0f001e0f00
-0c06002010001e0f002814000e07001e0f00180c00140a000603000e0700201000201000
-140a00180c000c0600301800160b00160b00040200201000160b000e0700140a00140a00
-2814000e0700201000160b00180c00321900201000180c002010002010002e1700201000
-180c001e0f00040200160b00140a00140a002010000402001e0f00201000060300180c00
-180c00180c002e1700160b001e0f001e0f002613002613001e0f002814000e07001e0f00
-160b000c06000c06000e0700201000160b00060300160b00160b00160b00201000321900
-0e0700201000281400201000160b00160b00261300060300201000201000160b00140a00
-0c06002010000e0700180c00180c001e0f000c0600160b001e0f00160b002814001e0f00
-321900160b000603000402000e0700140a00201000180c00160b000c0600140a00261300
-1e0f00160b001e0f000e07001e0f00201000201000201000201000261300140a00160b00
-160b000e07001e0f00060300201000281400281400160b00201000281400160b00281400
-0c0600060300160b000e07000e0700180c00281400201000281400201000140a001e0f00
-2e17000e0700160b002010002814000c0600160b00140a00281400160b00160b00180c00
-180c00261300160b000e0700180c000c0600201000060300140a00160b00140a001e0f00
-1e0f00201000201000180c00180c00160b00201000160b000e0700160b00201000160b00
-201000060300160b000e07000603000e07001e0f00060300281400180c00140a001e0f00
-0e0700ff9e3c1e0f00281400180c00180c001e0f001e0f000e07002010000e0700201000
-2613001e0f000e07001e0f00ff9c38201000140a00160b00160b00160b004a2500180c00
-0c06002010000e07001e0f00060300180c000e0700160b00180c00381c000e0700060300
-0e0700180c00160b002010001e0f00140a001e0f000e0700201000201000281400160b00
-0e07000c0600281400160b00160b00180c00140a000e0700261300160b00201000261300
-160b000c06002613001e0f001e0f00160b002010000c0600
-060300160b00160b00020100201000201000160b00160b00160b00180c000c0600201000
-2e17000201000e0700261300160b002e1700160b00160b00201000180c00ffa1420e0700
-2814000603000e0700160b00180c001e0f003219002814001e0f00201000140a00ff9932
-ffa54a201000261300160b00160b001e0f00160b002814000c0600160b00140a00140a00
-160b00140a000e0700180c000e07000c0600201000160b000e0700201000140a000e0700
-0c0600140a001e0f000e07001e0f00160b00160b000e0700140a00180c00261300060300
-180c00160b00140a00020100160b002010001e0f00160b00180c00ffa142201000160b00
-2814002010002814002e17003a1d002e17003a1d003a1d003018003a1d00402000442200
-422100542a00442200422100381c00321900321900160b00301800281400201000180c00
-1e0f00ffa9523018000e07000e0700201000160b00180c001e0f00180c001e0f00201000
-2010000e0700201000180c00201000180c001e0f00140a00160b00160b00040200140a00
-261300180c00201000180c00060300060300040200160b000e0700160b001e0f00160b00
-160b00160b00201000140a002010001e0f002010002010000e0700261300160b001e0f00
-201000201000020100201000160b00160b00160b00180c003a1d00261300160b00ffa244
-140a00160b002613003018004020004221004a25006432008a4500aa5500ca6500ff8c18
-ffa448ffad5affa448ff9122f47a00c46200984c008040006c36004c26004a2500281400
-160b00261300281400ffa244160b00261300160b00160b000e0700180c000e0700060300
-0e0700140a00160b00201000160b00160b002010000e0700140a00140a00180c00201000
-0e0700281400281400160b000e0700140a00160b000e0700180c00261300201000201000
-2010000c0600381c00160b001e0f00140a00180c00160b00180c001e0f00160b00201000
-160b00160b00140a00140a000603000e0700040200301800160b00160b00201000160b00
-160b00140a00180c002010000e07002613002814002010000e0700160b002010000e0700
-281400160b00160b00180c002814001e0f00160b00140a001e0f00180c00281400261300
-160b00140a000201002613000e0700201000281400261300060300180c00060300201000
-180c00160b00201000281400020100140a00140a000c06000e07000c0600160b000e0700
-1e0f001e0f00160b000e0700301800180c00201000201000140a00160b00160b000e0700
-160b000c06000e0700160b00160b000e0700160b000e0700180c000e0700140a000e0700
-180c00060300201000160b00160b000e07000e07000c0600180c002010001e0f00160b00
-180c000e0700060300160b00140a00140a00140a000e0700281400301800160b00160b00
-1e0f00160b000e0700160b00160b00140a00060300160b001e0f00160b00381c000e0700
-140a000e0700140a00301800180c000e07003018000c0600201000180c00060300201000
-0c0600140a00160b00140a002010002613001e0f00020100180c00160b00201000060300
-301800160b000e07000e0700060300140a002010000e0700180c001e0f00160b00140a00
-1e0f00140a00201000160b00201000160b00180c002814001e0f001e0f000402001e0f00
-180c00160b00180c000402001e0f00160b00180c00201000160b00160b00160b00180c00
-140a002613000e0700281400140a00160b00160b00160b00180c00160b00140a001e0f00
-1e0f00060300160b003219002814000e0700180c002010002e17001e0f000e0700261300
-0c0600ffa54a140a002010002010001e0f001e0f002814002e1700160b00261300321900
-180c00140a00201000261300ffa74e140a001e0f001e0f002010001e0f00160b00140a00
-140a00422100160b00060300160b00140a00261300180c00281400020100201000201000
-140a00160b00180c000e07000e0700160b00160b00140a000c06000e07000e07000e0700
-3018002613000e0700060300060300160b00160b00261300261300060300281400060300
-140a00180c00281400140a000e0700180c00160b00301800
-1e0f00201000140a00201000180c000c0600160b00160b000e07001e0f00180c00160b00
-281400160b00180c000e0700180c00201000180c001e0f000e0700160b00201000ffa54a
-ff9d3a180c00160b00281400201000160b001e0f00201000160b00ff9d3affae5c201000
-0e07001e0f002010000e07000e07001e0f000e07000e0700180c00281400160b00180c00
-281400160b001e0f000e0700180c00140a000e0700261300160b000e07002010001e0f00
-0c06000e0700301800140a003a1d00180c000e0700180c001e0f00301800261300060300
-0e07000e0700160b00160b000e0700160b001e0f00201000140a00ffa040180c00281400
-3018002010002613003018004221003018003018003a1d002e1700281400301800402000
-321900301800201000261300381c00201000301800201000261300261300281400180c00
-ffa0402613002e1700201000160b000c0600160b00160b000c06000e0700180c00140a00
-0e0700160b00160b00160b000e07000e0700140a00140a00201000140a00140a000e0700
-201000160b00281400140a00160b001e0f001e0f00160b00160b00201000140a00281400
-1e0f00140a00140a00140a00140a00261300140a000603000603000e0700180c00180c00
-040200140a00281400180c000e0700180c000e07000e0700140a001e0f00281400ff9e3c
-160b002010001e0f003018002613003a1d004020005229006e37007e3f00aa5500bc5e00
-c66300ec7600d06800c46200b25900984c00763b00763b005c2e003a1d003a1d00281400
-301800160b00160b00ffa244160b00160b00060300160b00201000201000140a00301800
-201000160b000e0700160b00020100160b000e0700040200201000201000201000140a00
-0c0600160b000402000c06000603000e07001e0f00201000160b000e0700160b00160b00
-0c0600261300201000201000201000160b000e0700201000160b00180c000e0700160b00
-201000180c00160b001e0f00160b003018002010000c0600140a00180c00060300201000
-160b001e0f00160b00180c00301800160b000e0700180c00140a001e0f00180c00160b00
-2010001e0f00301800180c00180c00140a000e07002e1700160b001e0f001e0f000e0700
-160b00201000140a00160b001e0f00160b00160b000c06000603001e0f00140a00140a00
-160b002613000c0600180c00160b00201000160b00180c00201000180c001e0f00180c00
-281400180c002e1700140a001e0f000e07000e07002e1700180c00201000180c00160b00
-281400201000201000180c000603001e0f00140a00160b00201000301800201000321900
-2814002e1700201000201000160b00160b00140a000e0700020100060300140a00261300
-040200201000160b000e07001e0f00180c00140a00160b00140a00201000261300281400
-180c00180c00160b00281400180c00160b000e0700160b00201000281400281400261300
-281400180c00160b00040200180c001e0f00180c00160b002010000603000e0700201000
-180c001e0f000e0700160b00160b001e0f001e0f00140a00160b002010000e07000e0700
-0e07000e0700180c000e07001e0f00281400261300140a00160b00201000040200160b00
-281400201000180c00180c00160b00140a00160b00201000201000160b000e0700201000
-160b00140a001e0f001e0f00140a00140a00140a00201000140a00180c00201000040200
-0e07001e0f002010000c06001e0f000c0600160b000e0700160b000e0700201000180c00
-020100261300160b00140a000e07002010000201002010001e0f00201000140a00140a00
-201000ff9c382010000e07002814002613001e0f002814002e17002814002814000e0700
-201000261300160b00140a00ff99322010002814002613000e0700160b000603000e0700
-160b00160b00160b00160b000c0600281400281400160b001e0f000e0700160b00140a00
-160b00180c00160b002010002010003018001e0f002e17000e0700180c00160b000e0700
-140a001e0f001e0f00140a00160b000c0600180c001e0f00140a00140a00160b00160b00
-1e0f00160b00160b00140a00180c001e0f000e07000e0700
-140a000e0700261300140a00160b00261300180c00160b002814000e0700201000140a00
-160b00140a00180c00281400160b002613002010000c06002613002e1700180c00160b00
-160b00ffa142ffa244ffa74effa448ffa142ffa74eff9b36ff98302010001e0f000e0700
-160b000e0700201000140a00140a00160b00281400180c001e0f00281400281400160b00
-2010000e0700180c000c06001e0f000c0600180c00180c00160b00060300020100160b00
-201000140a000e07000e07000603000e07000e0700140a002010000e07000603000e0700
-060300160b00160b00180c000c0600201000201000261300160b00160b00ffa0401e0f00
-2010002010002e1700160b00180c002814002e17003a1d00261300422100281400442200
-2814002613003018003219001e0f00201000281400281400160b002814001e0f00ffa244
-1e0f00261300281400140a00281400261300160b00060300301800201000261300201000
-160b00140a00301800180c00180c00201000160b00201000261300201000140a00180c00
-0201000e0700160b001e0f002e17002e1700160b000e0700201000160b001e0f000c0600
-261300140a00140a001e0f00281400140a00160b001e0f002010001e0f000e0700060300
-160b00160b00160b002010000e07000c0600140a00160b00281400160b00180c00201000
-ffa0400c06002e1700402000160b002814004020004c26004c26006432008040007e3f00
-984c00a251009048008a45008a45008040006432005a2d00422100321900301800281400
-160b002010001e0f00ffa64c140a00140a00180c000603000e0700180c00040200060300
-180c002010000c06000c06000e0700060300020100160b00160b00201000201000261300
-1e0f00201000261300281400160b00140a00201000201000281400201000180c00160b00
-180c001e0f001e0f000e07001e0f001e0f001e0f000e07002010000e0700160b00180c00
-1e0f00160b000e0700160b00180c001e0f002010001e0f00180c00160b001e0f00140a00
-0c0600180c000c06002010001e0f002613000e0700140a000c0600201000180c001e0f00
-2613002814000e0700140a00160b000e0700261300180c001e0f00180c00160b00140a00
-0e0700160b00160b00281400160b00180c00160b00160b00160b00160b00160b001e0f00
-281400160b00160b00160b002814003018000e07000e07003018000e07002814002e1700
-0e0700180c000e0700180c002010000603002010000e07000e0700201000201000160b00
-160b00160b00201000180c00140a000e07000e0700201000201000140a002613001e0f00
-2814001e0f00180c00160b00180c000e07002010000c0600160b002613001e0f00180c00
-020100140a00180c000e07002010000e0700140a002814002613000e07000603001e0f00
-160b00140a001e0f00160b001e0f00201000140a00201000180c00261300140a000e0700
-140a001e0f000e07000e0700160b001e0f00201000201000201000160b00160b00140a00
-160b00140a000c0600140a00160b001e0f000e07000e0700160b00281400180c00160b00
-160b000e0700160b00261300180c002010001e0f00160b00381c001e0f002613001e0f00
-201000160b00201000201000281400140a00180c00140a000e0700160b002010000e0700
-1e0f00180c00060300201000020100180c000c0600160b00140a00040200201000060300
-2613000603002010000c0600140a001e0f00160b002814000e0700140a000e0700201000
-180c00201000160b000c0600160b00060300160b001e0f000e07000e0700281400140a00
-ffa4480e07000603002010000603001e0f00201000321900381c003a1d00301800201000
-2010002814001e0f00160b00ff9c38201000201000140a00281400160b000e07000e0700
-201000060300140a000e0700201000160b002814002010000e07000e0700160b00201000
-0e07000c06000e07001e0f00180c00140a00201000160b000c06002010000e07000e0700
-140a002e1700160b00160b00160b00140a002010000e0700201000160b00180c00060300
-140a000e0700160b002e17002e1700160b00160b000e0700
-160b003018000e0700160b00180c001e0f00261300180c002814000e07002010001e0f00
-201000180c00160b003018002814002010000e07001e0f00140a00180c00160b00261300
-140a00160b00180c00160b00160b00180c000e0700261300140a001e0f00201000180c00
-2010003018000e0700180c00201000160b00140a00160b00281400180c00201000261300
-201000201000281400281400160b000c06003018000e07000e0700201000160b001e0f00
-160b00201000180c00160b002814000c0600180c00180c00180c000e07002010001e0f00
-201000180c00020100160b00160b00180c00160b00140a00261300201000261300ff9b36
-ffa74e2010001e0f002814002010003018002814001e0f002e1700261300201000201000
-2010003018002e1700160b00140a00301800321900180c00261300ffa448ff9c381e0f00
-0c06000603002613002613000e0700140a000402001e0f00160b00281400180c001e0f00
-201000160b00160b00160b00160b00160b00261300160b00160b00140a00201000160b00
-160b001e0f00140a000e0700201000281400160b001e0f003018000e0700140a00201000
-0e0700180c00201000160b002e17000e0700160b00281400201000281400201000180c00
-160b00201000201000160b00160b00160b00160b000e0700201000160b00281400140a00
-160b00ff9d3a2010001e0f00160b002613002814003018004221004422005c2e00643200
-6e3700703800542a00542a00542a004a2500422100402000261300201000201000261300
-140a00201000ffa040261300140a00201000060300160b002010001e0f001e0f001e0f00
-0e0700180c002613000e07000c06000e0700160b00140a00160b000603002010000e0700
-160b000c0600140a002010000e0700160b00160b00201000160b00160b00160b00201000
-160b00301800180c00180c00281400060300160b002010001e0f001e0f00281400180c00
-201000160b001e0f000e0700160b000402000c06000e0700140a002613000e0700180c00
-0e0700160b001e0f000e07001e0f00140a00261300201000180c00060300201000160b00
-160b00261300160b000c0600140a000603002010001e0f00160b000603000e0700180c00
-0402001e0f001e0f000c0600281400160b00261300201000140a002010000e0700180c00
-0e0700160b001e0f002010002814000e07000e0700201000201000201000160b00180c00
-160b002010002010000c0600140a000e0700180c00160b000e07002010001e0f00180c00
-201000160b00140a00160b00140a002e17000603001e0f00160b002010001e0f00180c00
-0e0700180c00160b00140a00140a00160b00180c00201000060300140a00281400060300
-0e0700060300140a00160b000c0600160b00160b00180c000c0600301800140a00261300
-180c002e1700160b000e0700201000261300140a002010000e07001e0f00160b00180c00
-160b000402000c06000c0600040200160b002010000e0700261300201000140a00201000
-201000140a00140a00201000180c000e07001e0f00160b00160b002010000e07000e0700
-0e07001e0f001e0f002010000603000e07001e0f001e0f003a1d001e0f00180c00261300
-180c00160b00180c00160b000e0700160b00140a00160b00140a000603000e07001e0f00
-160b00160b000e07000603002010000603001e0f000c0600160b001e0f00140a000e0700
-180c00381c000e0700160b00160b00201000060300160b002010001e0f000c06000e0700
-0e07000e07002010002010000c0600180c001e0f00201000160b002010000e0700160b00
-ff9932140a002010002e17002814001e0f002814002e1700160b00442200261300201000
-2010000e0700160b00140a00ff9d3a180c00140a00180c002010000c06000e0700060300
-160b000e0700281400201000160b000603002010000e07002e1700180c002010001e0f00
-201000160b00201000180c000e0700160b003018001e0f00180c000e0700140a001e0f00
-140a00180c00180c00160b000e0700160b00160b00201000180c00201000180c000c0600
-160b000e07000e0700140a00261300281400160b00180c00
-0e0700160b001e0f000e0700140a00201000160b00281400281400160b00160b001e0f00
-0e0700140a000e0700160b00160b000e0700160b00180c002613002814000e0700060300
-2010002814002010000e0700160b001e0f00060300180c00160b002613001e0f00160b00
-1e0f003018001e0f002010002010001e0f001e0f002e1700060300180c001e0f00180c00
-201000180c00160b00160b00281400160b00201000201000140a00180c000e07000e0700
-160b001e0f000e07002010002613000e0700160b000402000e0700160b00201000160b00
-160b002010000c0600201000180c00281400140a002010002010001e0f002010000c0600
-1e0f00ffa244201000201000140a002613001e0f00180c002010002e1700281400160b00
-2e17001e0f001e0f00140a002e1700180c00ff9c38ffa448ffa1420e0700140a00180c00
-0e07001e0f00201000201000160b00261300180c002010000e0700160b00140a00060300
-160b00201000180c001e0f00140a000e07000c0600160b001e0f000e07000e07000e0700
-1e0f00140a00140a00040200261300140a002010002010000e0700261300281400160b00
-060300201000160b001e0f000e0700180c000603000c0600140a00160b00160b000e0700
-261300180c000e07000603000e07001e0f000e0700160b00060300201000160b00201000
-0e07001e0f00ff9d3a1e0f000603001e0f002814002814003a1d004020004a2500301800
-4422004c26006432004020004a25004a25004221004221002814002814003a1d00140a00
-1e0f001e0f00ff9b36160b001e0f00160b001e0f00140a000c06000e0700201000020100
-201000160b00180c000402001e0f001e0f001e0f00140a00160b00180c003018001e0f00
-160b000201000e0700201000140a000e07000e07000c0600160b000e0700160b00160b00
-0e07002010000e07000e0700160b000c0600040200140a00160b00301800201000261300
-281400160b001e0f00160b002814000e0700140a000e0700160b00180c00201000180c00
-180c002010002613000c0600281400160b001e0f00180c00201000301800201000140a00
-201000160b00020100160b00020100140a00160b00381c00180c00140a00020100281400
-180c002e17001e0f00180c00060300201000140a00140a001e0f00140a000c0600201000
-160b00180c00201000160b00160b003018002010001e0f00140a00180c00201000201000
-140a002613002010002010003a1d002010000e0700140a00160b00180c000c0600160b00
-281400281400140a000e07001e0f00160b00201000140a00140a001e0f000c0600140a00
-201000140a001e0f000e0700140a002613000e0700140a00160b001e0f00201000301800
-2010000e07001e0f00261300201000261300180c001e0f00160b004422001e0f00060300
-160b001e0f00281400180c00160b00180c00301800160b00180c00160b000e0700160b00
-160b00281400140a00140a00180c00201000060300261300160b000e07001e0f00060300
-0e0700060300160b00160b002e17000e07000e0700180c00140a00180c002010000e0700
-2613002010001e0f000e07001e0f002613000e07000603002010001e0f00160b00201000
-2010000e07001e0f000603001e0f000c0600160b000e0700160b00140a001e0f00180c00
-1e0f002613001e0f00201000201000160b00261300261300160b00180c00040200160b00
-140a00140a00381c001e0f000e0700140a00180c00060300261300261300140a00160b00
-180c00160b00160b00160b000e0700140a00180c00261300160b00201000160b00160b00
-ff98300c0600180c001e0f00201000301800301800281400381c00402000301800180c00
-1e0f002814000c0600201000ff9e3c1e0f00201000160b002010000e07002010000c0600
-160b00160b00140a001e0f00180c000e0700281400160b00201000140a000e0700180c00
-402000140a000c0600180c002010000e07000e07001e0f00201000160b002010001e0f00
-160b00160b000e0700140a000603000e0700180c003219000c0600160b00201000261300
-160b00160b00160b000e07000c0600160b00160b00160b00
-160b00261300160b002814002613000e0700201000180c001e0f001e0f00160b000e0700
-3219002010002010000e0700160b00160b001e0f00201000140a00140a00160b000e0700
-1e0f00160b00160b00160b000e0700140a001e0f00160b002814002e1700301800180c00
-160b001e0f002613002010000e07003a1d00140a001e0f002814001e0f000e0700201000
-201000201000180c00160b001e0f00261300160b00140a00140a000e0700140a00180c00
-301800160b00140a00201000261300180c000e0700140a00140a00160b00160b00060300
-0201002613000e07002e1700160b00140a00281400160b001e0f001e0f00261300201000
-201000261300ff9b36ff9b36ffa040160b002814002e1700201000201000160b00281400
-180c002010001e0f00ff9b36ffa244ffa2441e0f00140a000e0700281400281400201000
-201000160b00160b00160b001e0f00140a00020100140a00180c00160b00140a00201000
-0402000e07001e0f00160b00020100140a000e07000c06000e07001e0f001e0f00160b00
-160b00180c00140a000e07001e0f000e07000e0700140a00281400160b00160b000e0700
-0201000e0700180c00180c00160b00201000060300060300160b000e07000e0700180c00
-160b00281400160b000603002010001e0f00160b00140a002010002010000603000c0600
-0e07000603000e0700ff9d3a140a001e0f000e0700261300201000321900321900381c00
-2814004422004221002814003219002e1700301800321900201000160b002e1700160b00
-261300fffcf8160b000201000603001e0f000e0700281400160b00140a00140a00261300
-261300020100180c000603002010001e0f00160b00160b00160b000e0700040200160b00
-0603000e0700281400160b000e0700160b00140a001e0f00160b002814000603000c0600
-0e07000e07000e07000e07002010000e07000e0700180c00201000160b001e0f000e0700
-0e0700160b00140a00201000201000160b001e0f00160b00180c00160b001e0f00201000
-020100180c000e0700261300180c002e1700180c00201000281400180c00160b00160b00
-2814002613002613001e0f00201000160b00281400160b000c0600140a00160b00140a00
-060300140a00180c001e0f00180c00160b000e0700160b00180c002010000e0700321900
-140a00160b00160b00160b001e0f00160b00180c00281400180c00321900060300160b00
-0c0600180c001e0f002613000c0600180c00261300180c000e0700180c002010000c0600
-180c002010002814002010001e0f00201000160b002814000e0700201000180c00060300
-180c00180c00160b00140a00160b002010002010001e0f00201000160b00180c00201000
-040200140a002613002010001e0f00160b000e0700060300201000160b002613000e0700
-040200140a00201000060300201000180c000e07000e0700160b000e0700261300201000
-160b000e0700180c00180c00281400160b000e07000c0600160b00160b00160b001e0f00
-0e0700180c001e0f00160b00281400140a00060300201000201000160b00201000201000
-0e07000e0700180c00180c001e0f00140a00140a00140a00140a00180c00201000140a00
-201000180c00261300160b00201000140a00201000160b001e0f00180c00040200160b00
-0e0700160b00201000140a00160b00180c00180c00201000140a000c0600160b00160b00
-0e0700140a000e0700180c00040200180c001e0f002010000e07001e0f00301800281400
-0e0700180c002010000603001e0f00160b00140a002814001e0f002010000e07000e0700
-ff9326140a00140a00160b00201000160b002613002814004020003a1d00261300321900
-0e0700160b00060300201000ff9932160b00160b000e07000c06002010002814000e0700
-160b00160b00180c00160b00140a00180c001e0f002010000e07000e0700140a00201000
-0e0700160b000c0600180c00180c001e0f00180c000c06000c06001e0f00201000301800
-160b00060300180c00140a00160b000c0600060300301800160b00201000160b00160b00
-2613002e1700201000060300140a002814001e0f00201000
-140a003a1d00140a00140a00180c00140a00160b000603001e0f00160b00160b00261300
-160b00180c00160b00180c00160b00140a00180c002814000e0700160b00281400201000
-160b002010000e0700160b001e0f00281400180c000e07001e0f001e0f00281400040200
-0603003018001e0f000e0700201000180c000e07001e0f00140a00201000201000201000
-160b002814001e0f00201000160b00301800160b000c0600180c000c06000e0700201000
-140a00140a000e07002010000603002814000c0600180c00140a000201000e0700160b00
-2010002814001e0f00140a00020100180c00140a00160b00201000140a00180c000c0600
-3a1d00201000140a002e1700201000ffa244ffa040ffa64cffa244ffa54affa244ffa040
-ffa952ff9e3cffa64c0e0700201000140a00160b00261300180c00060300160b00140a00
-140a00020100140a00160b002010000c06001e0f000e07000e0700180c000e07000e0700
-1e0f00140a00140a00160b00180c00180c00261300140a00180c00160b00160b00201000
-160b00321900160b00060300160b001e0f00160b00201000060300321900040200180c00
-2010000e0700180c00160b001e0f00060300160b00140a000603000c0600281400160b00
-160b002010001e0f00140a00160b00160b00180c00140a00180c000c06000e07000e0700
-0e0700160b00160b00180c00ffa244ff9e3c281400201000160b002e1700160b00281400
-2010002010002814003a1d00201000381c002e1700261300201000160b00422100281400
-ff9d3a160b000e0700180c00160b000e07000e07000e07000e0700160b000e07000e0700
-0201000603000e0700180c00160b00180c000e0700020100020100180c000e07001e0f00
-0e0700201000201000020100180c00140a001e0f002613002010000e07000e0700160b00
-2010000e0700160b00160b000c06002010003018000e07000e07000e0700160b00160b00
-160b000e07002010000c0600201000261300160b000e0700160b00140a000e07000e0700
-2e17001e0f00201000160b00160b00261300281400180c000e0700201000140a00160b00
-1e0f00180c00281400180c00261300180c000e07000e0700160b002e1700140a001e0f00
-0e0700160b00281400160b00160b002613002010000e07000e0700201000140a00180c00
-0e07001e0f00201000180c00160b00060300160b00160b000e0700281400160b00140a00
-201000140a00201000160b00180c001e0f00201000160b00160b00060300281400180c00
-160b001e0f00160b00201000261300160b00261300201000201000180c00160b00160b00
-180c00140a000603002814000e0700140a000e0700140a001e0f00160b00060300160b00
-060300160b00281400160b000e07000603000e0700160b00201000160b00201000281400
-1e0f00160b000603000c06000e07000e0700201000201000140a002613001e0f00180c00
-160b000e0700381c00160b003018000603001e0f00140a000603000e07000c06000e0700
-160b00140a00140a001e0f00201000261300160b001e0f002010000c0600301800140a00
-0c0600160b00180c00281400160b00281400160b002e17002010000e0700160b00180c00
-160b002010000e0700261300140a00020100160b00160b00180c000e07001e0f00160b00
-140a000e0700281400180c00180c00180c00180c00201000180c00201000160b000e0700
-201000180c002613001e0f00261300160b000c06000e07000c0600201000160b00201000
-160b00140a002010002010001e0f001e0f00281400201000160b001e0f000e0700160b00
-ff9e3c160b000c0600180c00180c002e1700281400301800281400381c001e0f00301800
-180c000e0700381c00160b00ffa74e2613001e0f002010002010002010001e0f000e0700
-0c06000e0700060300281400180c001e0f00140a00160b00201000160b001e0f000e0700
-2010000e07000e07000c06000e0700160b000c06001e0f002814002613000e07000e0700
-160b00180c00281400060300201000201000301800180c00160b00160b00160b000e0700
-281400281400060300160b00140a00180c00140a00160b00
-160b00201000160b000e0700160b002010001e0f001e0f00160b00201000180c001e0f00
-180c00140a002010000e0700281400180c000402000c0600160b001e0f000c0600140a00
-140a00180c00180c000402001e0f000603000e0700201000160b000e0700160b00261300
-0e0700140a000e07002010000c0600160b00140a002010001e0f00040200180c001e0f00
-160b001e0f003a1d00160b00160b00140a000e07000e07002010002010001e0f000c0600
-201000160b00140a00160b000c0600160b00201000160b00140a002814000c0600281400
-261300140a00281400180c001e0f00261300301800180c00281400140a00160b000e0700
-140a002613001e0f002010000e0700180c00261300160b00201000180c00201000140a00
-160b00201000201000160b00160b00201000160b000e0700261300160b000e0700160b00
-301800140a00160b00180c000c06000603001e0f00160b00060300201000201000160b00
-180c00201000160b00160b000e0700201000281400281400180c00201000140a00201000
-160b001e0f00020100201000180c002010000e0700140a00060300060300060300180c00
-020100140a00261300180c00201000160b000e0700160b00060300020100201000140a00
-0e0700140a00180c00140a000e0700160b00160b00160b00140a00060300201000261300
-201000140a00180c000e07000e0700180c00ffa142ff9b360e0700040200201000201000
-2814000e0700180c00301800201000201000160b00201000060300160b00ff9c38ffa244
-180c002010000e0700160b00201000160b00160b001e0f00140a00060300160b00160b00
-060300160b00201000201000180c00160b000e07000e0700160b00160b001e0f001e0f00
-2010002814000e0700201000140a00160b00160b00160b000e0700180c00160b00201000
-0c0600160b00140a00160b00261300180c00160b002e17000603000e0700180c00160b00
-160b00160b000e0700140a002814000e0700160b00140a001e0f00281400201000201000
-2010001e0f00140a00201000321900201000180c00180c00281400160b00160b001e0f00
-160b002010001e0f00180c00201000180c00281400160b00180c00201000060300140a00
-1e0f00180c00281400140a000e07000c06001e0f001e0f00160b002010000e0700201000
-160b00201000180c00201000160b00261300160b00160b00180c00160b001e0f00160b00
-201000261300160b001e0f00261300140a000e0700160b00160b00160b000e0700180c00
-160b00201000261300160b00140a00160b001e0f00180c00140a00180c00281400402000
-160b00160b00180c000e07000e07000e07000e07002010002e1700060300201000281400
-140a00261300160b003a1d000e0700261300140a000e0700201000180c000e07001e0f00
-1e0f00180c00180c00140a000c06002010001e0f000e07000e07000e07001e0f001e0f00
-2010000e0700160b000e0700180c001e0f002010002814001e0f00261300180c00261300
-160b00040200140a00160b002814000603002613001e0f000e0700160b00321900261300
-281400160b000e07000e07000e07000402001e0f00180c00201000201000160b001e0f00
-160b00020100180c00180c001e0f00140a00180c00160b00160b00140a002010000e0700
-160b00281400140a00201000160b000e0700201000160b001e0f00160b002010000e0700
-140a000e07001e0f00140a000603000e0700261300160b00160b00180c00201000180c00
-261300160b00160b00180c00180c00201000281400160b001e0f00160b00060300160b00
-ffa1421e0f00201000060300201000160b002e1700321900422100301800201000201000
-160b001e0f00261300180c00ff9c38140a002613002010002010002010002814000e0700
-1e0f00160b000e0700160b001e0f002e1700160b00201000180c00281400160b00160b00
-040200160b00201000160b001e0f00160b00160b00281400140a000e0700281400281400
-160b001e0f00160b001e0f000c06000e0700160b00180c001e0f002e1700201000160b00
-201000160b001e0f00180c002e17001e0f000e0700201000
-1e0f001e0f002e1700060300160b00160b001e0f002814001e0f00180c00160b001e0f00
-261300201000160b00180c003219000e07000e0700201000140a000e0700060300201000
-160b00160b00160b00140a00180c00261300160b00160b00180c002814001e0f00281400
-201000160b00140a00281400201000140a00201000180c00060300180c00160b00201000
-160b00140a000e07002e1700201000160b000603000e07001e0f00160b00201000281400
-2010000c06000603001e0f000603002814000e0700160b00180c00140a000e0700020100
-1e0f000603001e0f00201000160b00201000201000020100140a00261300201000180c00
-1e0f00281400140a002010000c06000e07003018001e0f00261300160b000e0700281400
-0e0700160b001e0f00180c00180c001e0f002010002010002814000c0600160b00160b00
-2010000e0700140a00160b002010000e07001e0f00321900180c00281400160b00261300
-060300160b000e0700160b002010001e0f000e07002814001e0f000c0600160b000e0700
-1e0f000e07000e07000e07000603002613000e07000e07000c0600160b00160b001e0f00
-160b00160b000603000c0600140a00140a000e0700140a00201000160b000e0700160b00
-140a00261300160b00160b00040200201000160b000c0600140a00160b002814000c0600
-261300201000020100060300180c00201000140a00180c00ff9c38ffa448ffa448261300
-281400281400201000281400201000140a002010001e0f00ff9e3cffa142160b000e0700
-201000180c002010000e07002814000e0700180c000e0700160b00160b00201000060300
-160b00180c000e0700160b00201000060300201000160b001e0f00201000281400201000
-160b000e0700140a00201000140a00160b000603002e1700160b000e07000e0700180c00
-0603000e07000e07000e0700201000180c00160b00160b001e0f00180c000e0700180c00
-160b00140a00020100201000160b00201000180c00160b00160b000e0700160b00140a00
-1e0f00201000201000321900301800381c00201000321900180c000c06000e07002e1700
-160b000e07002010000c0600281400160b00180c002613000e0700201000281400140a00
-0e0700180c00060300261300180c00160b002010000e0700180c000e0700201000201000
-0e0700160b00160b00160b002814002814002e1700180c00281400160b00160b00201000
-0e0700160b002010000e0700140a000c06002010001e0f000603001e0f000603002e1700
-0e07000e07002010002814001e0f00140a00140a00201000140a00160b000e0700180c00
-281400281400160b000e0700261300160b002814002010000c0600160b001e0f001e0f00
-1e0f00160b00140a00140a000e0700201000160b00160b00140a00160b000e07000e0700
-040200180c00160b001e0f00180c00201000160b00140a00160b000e0700160b00201000
-0e0700180c00160b000e0700060300281400140a00060300201000301800060300140a00
-1e0f00180c00060300160b00140a002814003a1d00060300301800281400180c00180c00
-0e07000e0700180c00180c00201000160b00140a000e07002814000603000e0700261300
-281400140a001e0f00201000201000160b00160b00160b003018002613001e0f00060300
-160b00180c00180c00160b000603000e0700160b00140a00281400160b000e0700261300
-201000201000180c000e07002010000e0700160b00281400180c00180c00381c00060300
-160b000e07000603000c0600160b000e0700160b000603000c0600140a000e0700160b00
-ff99322e1700160b00201000201000180c002814003018003a1d00281400201000261300
-321900281400060300281400ffa74e281400180c00140a00140a000603002010000c0600
-3018000e0700160b00201000140a001e0f001e0f00160b00180c00281400160b00201000
-180c00160b00201000180c00201000140a00180c00201000180c00180c00201000180c00
-0e07000e07000e07000603001e0f00281400160b00060300140a00160b00180c00201000
-180c00140a00160b00140a00020100160b002e1700201000
-160b000e07000c06000c0600160b00201000180c00160b001e0f002010002814001e0f00
-2010000e07002814000e0700160b00160b00180c000c0600180c00140a00201000160b00
-261300160b001e0f00201000180c00160b00261300201000140a00321900140a00261300
-0e0700160b00160b00180c00160b000e0700160b000e0700160b00201000140a00201000
-2613000e07000c0600160b00201000381c00180c00160b000c0600160b00160b00160b00
-0e07001e0f000e0700180c00180c00160b00201000180c000603000201001e0f00180c00
-0603002010000e0700020100201000180c00180c001e0f000201002010001e0f00261300
-0603003a1d00160b00180c00140a00201000180c001e0f00402000201000140a00201000
-180c001e0f00180c002e1700281400140a00060300201000160b00060300140a00201000
-1e0f00160b00140a000603002814001e0f00160b00201000160b00160b001e0f00140a00
-0c0600180c000e0700201000140a000e0700060300060300160b00160b00020100140a00
-201000160b00160b00140a00160b00160b00180c00160b002010002613000e0700160b00
-160b00140a000c06000c0600160b000e0700160b00140a00160b000e0700261300160b00
-180c000e07000e0700160b00160b00201000160b000e0700040200180c00020100040200
-0e07000e0700140a00201000060300040200140a00160b00180c00140a00201000ffa448
-ffa64cff9c38ffa040ffa54affa64cffa040ffa64cff9c38160b00160b00160b00180c00
-180c00201000201000140a00281400160b00160b00160b00060300060300160b000e0700
-2010000e07000c0600180c00060300060300180c000e0700281400180c000e0700060300
-0c0600180c00140a00040200201000201000160b001e0f00281400160b00160b00140a00
-281400201000180c000e0700201000180c000e07002814002e1700180c00201000201000
-160b00261300160b00160b00180c002814000e0700201000160b00281400180c00180c00
-140a001e0f000603000e0700261300160b002010002e1700160b001e0f00160b00201000
-160b00180c000e0700140a00160b00060300201000180c00201000261300160b00281400
-2613001e0f00140a00261300060300301800201000201000160b00180c000e07000c0600
-201000180c002010000e0700140a00060300180c00140a00201000281400160b004c2600
-2010001e0f000e0700180c000e0700180c00180c00160b00281400160b000c0600201000
-2010002e17000c0600201000160b002010000e0700140a001e0f00281400140a00201000
-0e07000e0700160b00160b001e0f00281400140a00160b00140a000e07000e0700160b00
-0603002613000e07000e07000e0700060300140a000e0700160b00180c00140a00180c00
-140a000603000c0600180c00160b00160b00201000201000140a000603002010000c0600
-2010001e0f00180c002010000c0600140a000e0700160b00160b00180c00160b00201000
-201000201000281400160b00180c001e0f00180c00180c00180c00180c001e0f00201000
-0e0700180c000e0700180c00180c000e0700060300160b00180c00160b001e0f00201000
-180c00160b00180c002613002613000e0700180c000e0700160b001e0f001e0f000e0700
-160b000e0700140a001e0f000e0700201000180c00060300201000140a00180c00381c00
-1e0f001e0f000e0700160b00180c000c0600140a00180c002010000603001e0f00160b00
-0603002814001e0f000603000e0700160b000c06000c06000e0700140a000e0700201000
-ffa142261300180c00180c00160b002010002613002613002814001e0f00281400140a00
-2010003219001e0f00ffa448281400140a00160b00201000180c00281400140a00160b00
-0c06000c0600160b004c2600180c00140a00140a001e0f002010001e0f001e0f001e0f00
-140a00201000140a002e1700180c00140a00160b002010001e0f000201003018000e0700
-0201002613000e0700160b00301800180c00140a00180c000e0700201000261300160b00
-1e0f000e07003018003018000e0700160b000e0700180c00
-180c000e07001e0f000e07000e0700160b00180c000e07000c06002613000e07000e0700
-2010000e0700140a00160b00261300261300180c00160b00180c00140a000e0700040200
-160b00180c000e0700160b000e07002613002010000e07002613002e1700281400301800
-0e07002010000e07002814000e0700160b00140a000c0600140a002814000e0700160b00
-0c06001e0f00201000201000281400201000140a00201000160b000c06000e0700180c00
-0e0700160b00060300160b001e0f00160b001e0f00160b00140a00020100201000160b00
-2010002814000e07002814001e0f00201000201000281400160b00160b002613000c0600
-0e0700160b002613002613002e1700160b002814000e07000e07001e0f00160b00160b00
-0e0700180c00201000201000180c001e0f00160b00160b00160b00060300160b00160b00
-160b000e0700140a000e0700160b00160b00301800201000160b00180c000e0700140a00
-160b00140a002010001e0f003a1d000e0700140a00140a000e07001e0f000c0600160b00
-0e0700160b00160b00140a00160b00180c00180c000c0600201000160b00201000160b00
-160b00180c000603000201002613000e0700180c002613000603000c0600140a00281400
-0c06000e0700201000040200180c00160b00201000060300281400140a00160b001e0f00
-2814000e0700160b000e0700060300261300140a00060300140a000e07000c0600201000
-2e1700180c00201000060300160b001e0f00160b00160b00201000261300160b00160b00
-160b00160b00140a00160b000201000e0700160b00140a00160b000e0700160b00201000
-1e0f000e0700201000281400060300160b00160b000e07001e0f000e07002814000c0600
-1e0f000e0700160b00180c00160b00160b002613000e0700180c00140a00201000160b00
-281400160b00060300160b00201000201000201000060300140a00140a00160b00140a00
-0e0700140a00180c002613001e0f000e07000e0700180c00160b00160b000c0600261300
-160b00140a000e0700301800261300160b00160b00140a00381c00160b00180c00201000
-180c000e07000e0700201000060300201000140a00160b00180c000e0700160b00160b00
-140a00140a000e0700281400180c00160b002613002814000603002010001e0f00261300
-020100160b003018000e0700140a00201000180c00281400180c00160b002010000c0600
-160b002010002010002613001e0f00140a000e07002010000e0700140a002814001e0f00
-160b002814000e0700180c001e0f00180c000e0700180c00201000160b00160b00160b00
-1e0f00281400140a00180c00160b001e0f00281400160b00201000160b002e17000c0600
-201000140a00180c001e0f002010001e0f000e0700281400180c00160b00180c000c0600
-2010002010001e0f00160b002010002010001e0f001e0f00160b000e07000e0700180c00
-160b001e0f003219000603002010002010000e0700160b00140a001e0f00160b00160b00
-281400140a000603000201000e07000e0700201000281400140a00160b00160b00140a00
-180c00160b00140a00180c00160b00040200160b00160b001e0f00201000160b00140a00
-1e0f00160b00140a000e0700180c00180c000c0600160b00201000140a000e07000e0700
-160b001e0f00180c00261300160b00060300201000321900140a000e07002e17000e0700
-3018002613001e0f001e0f00261300180c001e0f002814001e0f00180c00261300140a00
-0e0700140a001e0f00140a00180c000e07000e0700160b001e0f001e0f00160b001e0f00
-ff9428261300140a00201000261300201000160b002010002010001e0f001e0f00281400
-140a002814000c0600ffa0400402002814002814002613000e07000e07002010001e0f00
-201000201000060300180c00160b00160b00060300180c00160b00261300281400160b00
-180c002e17000c0600160b001e0f002010000e0700140a00281400281400261300160b00
-2010002e17001e0f000e0700020100140a002010002814002010000603002010001e0f00
-160b00261300020100261300201000201000140a000e0700
-1e0f00160b003018001e0f002010000201000402004a25000c06002010000e07000e0700
-2814002010000c06002010001e0f002814000e0700140a001e0f000e0700160b000e0700
-0e07000e0700160b00160b001e0f00201000160b002010002613001e0f001e0f00201000
-180c00160b002e1700160b000e07002613000e07000e0700160b00180c000402000e0700
-0e0700140a002814002010002814000e0700180c00140a00140a001e0f00180c00140a00
-160b000c06000e0700160b00160b001e0f00160b00261300160b00180c00160b00160b00
-281400140a000e07001e0f00160b00160b00160b00160b00160b00160b000e07000e0700
-180c002814000c06002010000e07000e0700180c001e0f00180c00180c000603000e0700
-0e0700180c00160b00140a00140a001e0f00281400281400140a00201000160b00160b00
-0e07002613001e0f00160b002010002010000e0700281400140a00140a00180c00261300
-0e07001e0f00160b00281400201000140a00140a001e0f000e0700160b000e0700160b00
-0e0700160b000e0700160b00160b001e0f00180c00160b000603000e07000e0700140a00
-0c06000e07000e07000e0700180c00160b000603000201000e0700140a00020100060300
-140a002e17000e07000e07000603000c06001e0f00160b00040200040200140a000c0600
-1e0f00160b00160b00160b00ff9c38ff9c38ffa040ff9d3affa040ff9e3cff9e3cffa142
-180c000c06002e17000e0700160b00281400180c000603002613001e0f002010000e0700
-1e0f00160b00160b00160b00201000160b001e0f000e07000e0700160b001e0f003a1d00
-201000140a00160b001e0f00160b000e07002010000e0700140a00160b00060300160b00
-2010002010000e07001e0f00040200020100180c00140a002010000e0700160b00020100
-140a00180c00160b00160b00180c000e0700140a00160b00201000160b001e0f00160b00
-060300060300020100160b002613001e0f00160b002010000e0700160b00180c000e0700
-1e0f00140a00281400140a00160b001e0f00201000201000301800201000261300201000
-261300160b00180c002010001e0f00261300140a00201000140a000e0700180c000e0700
-2814002814000c06003018000603000e0700180c000e0700160b00281400160b00160b00
-0c0600140a00020100160b002814002010002010000e0700160b002814001e0f00160b00
-160b00160b002e1700160b00201000160b00201000201000261300180c00140a00201000
-2010000402002010002e1700160b00160b00140a00281400160b000e07001e0f000c0600
-1e0f00140a00060300160b00201000180c002814000603000603000c0600321900060300
-2010001e0f00201000160b00201000160b00160b000e07000e07000c06002814000e0700
-140a00140a00140a00201000261300201000180c00180c001e0f000e0700160b00261300
-201000180c00201000201000281400140a00160b00201000160b00160b00060300281400
-180c001e0f000603000e0700180c001e0f00180c001e0f00ff9c38ffa54affa040ff9d3a
-ffa2442010001e0f000e07002613000c06001e0f001e0f00160b00060300040200281400
-180c00140a00180c000c0600160b00160b000e0700180c002010002010001e0f001e0f00
-160b00160b00160b000e07000e07002010000e07002010002814002010001e0f00160b00
-201000160b002814002e17001e0f001e0f001e0f00160b00140a001e0f00261300040200
-180c00160b004221000e0700160b00060300180c00160b000e07000e07001e0f000e0700
-160b00ffa64c201000140a00281400180c00180c00281400180c00140a00281400281400
-281400140a00160b00ffa2441e0f002814001e0f00381c00180c000e0700160b00281400
-140a002e1700160b000e0700201000201000301800140a00180c00140a000e0700160b00
-281400201000160b000e07000e0700201000180c00160b000c0600261300180c00180c00
-0201000c0600160b000c06003018002010001e0f000e0700160b00160b00140a00180c00
-1e0f00180c00160b001e0f000c06000e0700201000160b00
-201000160b00180c00160b00201000160b001e0f00140a001e0f001e0f00201000261300
-2010002010002613000e0700261300281400160b00160b00180c00160b00160b001e0f00
-1e0f000c0600160b000c0600160b000c0600261300140a00160b00261300160b001e0f00
-160b001e0f00140a00160b001e0f00160b00180c00180c002010002613001e0f000e0700
-160b001e0f001e0f000e0700180c002e17000e0700201000201000160b00140a00201000
-2613000e0700201000140a00140a00160b00140a00160b00180c00281400140a00140a00
-381c002010000c06002010000e07000c06001e0f00201000160b00140a000e0700160b00
-2814002010000e0700180c00180c00140a00160b00160b000e07001e0f000e0700140a00
-0c0600281400160b000e0700160b00140a00160b000e07002613000e07002613000e0700
-140a000603000e07000c06001e0f002814002814000c0600201000180c002010000e0700
-180c00180c00140a000c0600160b00140a00261300160b00180c002010000e07002e1700
-281400201000180c00180c00160b002814002814000e07000c06000e0700160b00180c00
-140a00160b00180c000e07002814001e0f000c06000e07000e07002010000e0700020100
-160b00020100060300060300180c00020100160b00060300201000160b00160b00201000
-020100160b00ff9b36ff9932180c00180c001e0f00160b00160b00281400160b003a1d00
-ff9b362010001e0f002814000e0700201000201000281400160b00160b00261300160b00
-180c002613002010000e07001e0f001e0f00180c002010001e0f00160b00140a00201000
-160b00160b00180c003018000e07002010001e0f00140a000603000e0700140a00180c00
-160b00201000180c000e0700160b000e07000603001e0f00261300160b001e0f000e0700
-0603000e0700201000201000180c00180c000e07001e0f000e07001e0f000e07000c0600
-160b00140a00140a00180c00140a00060300201000060300281400160b00160b001e0f00
-3018000e0700301800020100201000281400140a00261300160b00281400201000201000
-2010000e07000e07002814000e07002613000e07002e17000e0700180c00160b00261300
-140a00261300060300180c000e0700180c00281400160b00160b000e0700060300301800
-2010000e0700060300160b00140a00261300140a001e0f00201000160b001e0f00261300
-2010000e07002010000e07000e0700160b00140a00160b00180c00201000140a00180c00
-2010000e0700180c001e0f00201000180c00160b002613002010002814002010000e0700
-2010000e07000e0700160b00060300261300281400160b00160b00180c00160b00180c00
-0e07002010001e0f00201000261300180c002e1700201000160b002010001e0f00180c00
-1e0f000e0700140a000e0700261300160b000e0700160b002010001e0f000e0700201000
-0e0700160b001e0f00160b002010001e0f002010000e07000e07000e07000c0600160b00
-160b000e07001e0f00160b00140a00160b000e0700ffa244201000261300261300201000
-160b00ffa040ffa244160b00040200140a000c0600160b00201000201000160b00160b00
-160b00040200060300180c00201000160b00180c00160b00180c002010001e0f00281400
-0e07000e0700180c00160b00301800060300060300140a00180c00180c00160b001e0f00
-201000160b000e0700201000160b002010002613003018000e0700180c00140a00160b00
-1e0f00261300140a000c0600160b00140a00160b00201000060300160b00261300201000
-201000ffa448180c000e07000e0700201000301800301800160b00381c00201000201000
-2010002010000e0700ff9d3a140a001e0f00160b00180c002010002010002010000e0700
-180c000e07000e0700060300140a000e0700140a000c06000c06000e0700281400180c00
-281400281400180c00180c00201000201000201000160b00160b001e0f00160b00160b00
-160b00160b00060300160b00140a00160b00060300201000201000201000060300160b00
-0e07003018002010001e0f00140a000e0700140a001e0f00
-160b00160b000402000c06001e0f002814001e0f00180c002613002e1700060300201000
-1e0f001e0f00140a002010000e07000201002010000e07002814001e0f002010001e0f00
-060300140a001e0f00160b001e0f00180c000c06002010002e17002e1700160b00160b00
-160b00160b00201000160b00060300180c002613000e0700180c000e0700160b00160b00
-1e0f00180c001e0f001e0f00140a001e0f00180c00281400160b00201000261300160b00
-1e0f00180c00281400140a00160b00180c00201000281400060300160b00201000160b00
-160b000e0700261300160b00060300160b000c06002010001e0f00140a00201000160b00
-160b001e0f00201000160b00140a000e07000e07001e0f000c0600261300180c00160b00
-1e0f00160b00160b000e0700180c00140a002010001e0f00180c00160b00160b00201000
-160b000e07000c06000c06000e0700140a00160b002e1700281400201000060300160b00
-180c000e07000201000e0700140a000c06002010002010001e0f00160b00201000180c00
-1e0f000e0700140a00160b001e0f000e0700140a00160b00160b000e07000c0600160b00
-281400140a000e07002814000603000e0700180c000e07000e0700140a00140a00160b00
-0e07001e0f000e07000201000e0700060300140a00160b00160b00060300060300140a00
-ff9e3cff9b360e0700180c00140a00160b00180c00160b00281400160b00281400201000
-140a00ff9c38160b00160b00160b002010000603000e0700180c00160b00180c00201000
-040200180c002010000c06002010002814000e07001e0f00201000160b00160b000e0700
-140a002814000e0700060300060300160b00020100180c00180c00160b000e0700180c00
-160b000e0700180c00281400180c00180c00160b00180c00201000180c002613000e0700
-261300060300160b000201001e0f002613000e07002814002010001e0f00160b00060300
-140a00180c00160b000e07000c06002010001e0f00140a000e0700180c00201000160b00
-0603000c06002814002e17001e0f00160b00301800180c00180c001e0f00160b00180c00
-2613000e0700160b00201000160b000e0700160b00301800201000201000140a00140a00
-140a00201000201000160b000603000e0700020100281400160b00180c00261300180c00
-140a00160b00281400180c00160b00160b00160b002010001e0f00060300201000180c00
-2613000e07002613002e17001e0f00160b00281400160b002814002814001e0f00201000
-2010000603001e0f00160b00160b002010000402000603002010002814000e07000c0600
-1e0f000e0700140a00180c00261300160b003018002814000c0600160b00140a002e1700
-140a00060300160b000e07002814000c06000e07002e1700381c00160b000e07001e0f00
-0c06001e0f00160b00060300160b00160b000e07002010000e0700180c00281400160b00
-160b00160b00180c000e07002010001e0f00140a00160b001e0f00160b000e0700160b00
-0402002010002010002613001e0f001e0f00ff9e3c1e0f001e0f00140a003018002e1700
-261300160b00160b00ff99320c0600201000160b00160b00261300160b00160b001e0f00
-1e0f00201000160b00160b00201000040200281400140a000e07000e0700160b00201000
-0e0700160b002010001e0f00160b00180c00160b00060300281400160b00201000160b00
-261300201000160b00180c00281400160b00160b000e0700160b00160b00160b00201000
-140a001e0f001e0f00140a002613002010001e0f00180c00281400281400160b000e0700
-281400ff9b36201000140a002010000e0700180c00261300180c00201000160b000e0700
-1e0f00261300ff9c380e07000c0600180c00201000180c00140a00261300180c00180c00
-281400160b001e0f00140a00281400160b00160b000e0700180c00140a00160b000c0600
-1e0f00160b001e0f000603002613000e0700180c000c0600160b00180c00160b00261300
-2010000603001e0f00201000160b000c06002814000c0600261300160b00160b00201000
-281400160b00180c001e0f00201000180c001e0f00140a00
-0e07000e0700160b000e0700160b002010000e07000e07001e0f00160b000e0700160b00
-180c00160b002010000c06000e07000e0700180c000e07002814001e0f00201000160b00
-180c00160b001e0f00160b002814002010001e0f00160b002010001e0f00160b00160b00
-1e0f00321900281400180c000603000e0700180c001e0f00140a00301800140a001e0f00
-140a00160b001e0f00261300060300160b001e0f00180c000c0600140a00160b000e0700
-180c00180c002010002010002814001e0f002e1700180c00160b00381c00160b001e0f00
-140a00201000160b00140a00140a00160b00060300180c002814002010001e0f00160b00
-160b00180c00160b00160b00160b001e0f002814001e0f00281400060300140a00140a00
-180c002010002010001e0f001e0f00281400140a00180c00160b00160b00201000261300
-2613000e0700160b001e0f00140a00160b00180c000e07002010000e0700160b00060300
-0603000e0700060300060300060300201000160b002010002010001e0f00281400140a00
-140a000e0700160b001e0f00201000160b00140a000402000c0600140a000e07000e0700
-1e0f000e0700160b00140a00180c000603000c0600140a000e07000c06000c0600060300
-0603000603000c0600180c00160b000e0700180c00261300140a000e0700ff9e3cff9932
-0e0700160b00180c00281400201000160b00180c00180c002613000e0700201000180c00
-0e0700160b00ff98300603001e0f00201000261300160b000e0700201000160b00160b00
-180c00160b001e0f00160b00060300201000140a00140a000e07000603000e0700201000
-160b00140a00261300180c002010000c06000e07001e0f00160b00160b00160b000e0700
-2e17000e0700180c00140a001e0f001e0f00160b00201000180c000c0600060300160b00
-201000160b000e0700020100261300140a000603000c0600140a00140a00160b001e0f00
-140a00160b000e07003018002613002613000c06000e0700020100160b00160b00160b00
-1e0f003018001e0f000e0700180c00140a00ffa040180c00261300ffa54affae5cffa448
-201000261300201000160b00201000261300180c00281400160b00160b001e0f00201000
-140a000e0700160b00201000201000261300201000160b002613000e0700140a00281400
-160b00160b00160b000e0700160b000c0600201000160b00140a00140a00261300281400
-2010002814001e0f002010000e0700160b00060300180c00160b00180c002010001e0f00
-160b00160b00281400261300201000140a00180c002613000e0700180c001e0f00201000
-180c001e0f00160b003018002613000e0700140a000e0700140a002010002e1700261300
-180c00180c000e07000e0700180c00261300201000160b001e0f00261300201000180c00
-0e0700180c00160b001e0f00140a000402002e1700160b00160b00140a00180c00060300
-2010000e07002613000c06002010002010002010001e0f000e07002814001e0f00040200
-160b00160b000c06001e0f00160b000c0600ffa64c2010003018000e0700301800160b00
-1e0f00180c00281400261300ff90202010000e0700140a00201000281400140a00160b00
-160b001e0f001e0f001e0f001e0f00180c000e07000e07001e0f002010000e0700321900
-2010002010001e0f00281400140a00180c00261300201000180c00180c00160b001e0f00
-0e0700160b00281400180c00160b00160b00160b00140a00140a001e0f00160b00020100
-0603000e0700020100160b00160b00140a001e0f00180c00140a000e07001e0f001e0f00
-160b00160b00ff9d3a140a003018002010003a1d00160b00281400160b00160b000e0700
-140a00140a00ffa1420e0700160b002010001e0f00201000180c000e07000e0700301800
-0e07001e0f00301800160b00160b00281400160b00180c00261300180c00160b00201000
-0201001e0f00160b00261300040200040200180c000e0700160b00281400140a00160b00
-160b00160b00160b00180c00180c00201000180c00160b000603001e0f001e0f000e0700
-1e0f002010000e0700261300201000201000160b00160b00
-1e0f000e0700140a00281400201000180c00160b00160b00180c002010000e0700180c00
-1e0f002010000c0600160b00140a00180c001e0f00160b001e0f00160b00160b00201000
-0e0700160b001e0f00160b00140a00140a00160b00140a001e0f00140a002010001e0f00
-2613001e0f002010002010001e0f000e0700180c000e0700160b000402002e1700060300
-160b00160b00261300160b002010000e07002814001e0f001e0f00201000140a00140a00
-2613000e0700160b00160b00201000160b002e17003018000e0700201000160b00160b00
-160b000c0600020100160b000603002e17000e0700140a00201000140a001e0f00160b00
-180c00261300180c00180c00160b00140a000e0700201000160b00160b00160b00020100
-140a00060300160b000e0700160b001e0f00060300140a000e07000e0700160b00160b00
-0e0700140a000603002814000e07002010001e0f000e0700180c00140a00060300201000
-160b00301800140a00140a00180c00160b000e07002e1700160b001e0f000603000e0700
-140a00201000160b000e0700180c00160b000c06000e0700160b00180c00160b000e0700
-0e07000e0700180c00281400140a00160b001e0f00140a000603000e07000201000e0700
-140a00140a000e0700160b00020100160b00160b002613000e0700ff9b36160b00301800
-0e07002e1700160b001e0f000c0600140a00201000140a00201000261300201000261300
-160b000e0700ffa1421e0f001e0f00180c002814001e0f000603001e0f00160b000e0700
-0e0700140a001e0f00160b000c0600160b00261300180c00261300160b000e07001e0f00
-180c00180c000e0700140a000e07000603000e0700160b000e07000c0600180c00281400
-140a00160b00160b00160b00140a00140a00060300160b000c06000e07000e0700160b00
-2010000e07001e0f002010000c0600140a00201000160b00160b00040200180c00160b00
-140a00160b000603001e0f00160b00140a001e0f00160b002e1700160b00281400160b00
-160b00160b00160b00301800ffaa54ffab563018002e1700381c00160b00261300201000
-180c00261300ff9e3c180c00140a00160b002010001e0f00281400180c00140a001e0f00
-160b00160b00180c000c0600201000381c00281400160b00180c001e0f00201000140a00
-4020000e07000e0700180c002814001e0f00261300180c00261300160b001e0f00180c00
-281400160b002613002010000603001e0f000e07001e0f00160b00160b00201000160b00
-2814002613001e0f000e0700281400140a00140a00180c00160b002814000e0700160b00
-2010001e0f00180c000e0700180c00201000201000261300201000160b00180c00060300
-0c0600140a000e0700140a000e0700140a00201000281400060300160b00060300140a00
-180c002613002e1700180c00140a00160b00160b00201000160b000603001e0f001e0f00
-180c00201000201000160b00180c00160b00160b00180c002010000e0700160b000e0700
-0402001e0f00261300160b000201001e0f00ffa040140a00281400160b002010001e0f00
-2613002613000e07002814001e0f00ff9b362010002010000603000e07000e0700281400
-060300201000422100160b001e0f00180c000c0600160b00180c00140a000e07001e0f00
-180c000e07002814000c0600201000261300160b001e0f00301800140a00281400180c00
-3018002e17003018002010002010000e07003018001e0f00140a00060300160b00281400
-060300160b000603000c06000c0600180c00180c00140a002010000e07000e0700160b00
-1e0f001e0f00ff9932201000180c001e0f00160b00160b00201000180c000e07001e0f00
-201000ffa4480c0600281400180c002613000e0700180c00201000321900180c00201000
-0e07000603002010002010002010001e0f00281400160b000e07001e0f000c06000e0700
-0e07002e1700180c00160b002010001e0f00160b00140a000e0700180c00160b00040200
-0e07000e07001e0f00261300180c00160b000e07000e0700201000201000201000180c00
-160b003018001e0f001e0f00160b001e0f00060300201000
-0e07000e07001e0f00160b00180c00201000281400301800180c00160b00201000201000
-140a00201000201000381c00201000281400160b00180c002613000e0700201000261300
-160b000e0700160b000e07001e0f00020100201000140a002010001e0f00180c00201000
-180c00261300020100060300160b00261300160b00160b00160b00160b000e0700201000
-261300180c002814000e07000c06003219002e1700180c002814001e0f001e0f001e0f00
-2814001e0f00180c00160b00160b002814001e0f001e0f001e0f00140a00201000160b00
-1e0f00140a00160b00160b00060300261300160b00180c000e0700201000140a00180c00
-0c06001e0f00261300160b00160b00201000180c00180c00180c00160b00160b00160b00
-201000160b00160b00140a001e0f000c0600160b00160b00060300160b00160b00281400
-0e0700160b000c0600281400140a00180c00180c00281400201000160b00201000020100
-281400160b00140a000e0700180c000e0700160b000e07000e0700160b002010001e0f00
-201000060300180c00140a00160b000e0700180c000c0600140a000201000e0700060300
-2613000603000201002010001e0f00020100140a000e0700180c000201000c0600281400
-0e07000e07000e07000e0700020100060300160b00180c00ff9428160b000e0700201000
-180c001e0f002010000c0600201000160b001e0f002010003018003018002010002e1700
-160b001e0f00160b00ffa448140a00140a000c06000e07000e07000c06000c06001e0f00
-160b00160b00180c00160b00060300160b00160b000e0700160b00040200281400160b00
-0e0700160b00160b00201000040200160b002010001e0f00160b001e0f00160b00281400
-160b00140a000e07000c06002814002613000e0700180c00060300201000201000180c00
-160b00160b002613002e1700160b002010000c0600160b001e0f00180c001e0f00201000
-180c00160b00160b000e07000c06000e0700140a00201000160b00180c000603000e0700
-0e0700ffab562e1700180c000e0700160b00281400160b00301800261300160b00321900
-160b003a1d00180c00281400020100180c00201000160b00160b00180c00201000140a00
-140a00281400160b00160b00160b00160b00201000160b000e07000e0700201000040200
-0e0700180c00140a00160b002010000e07000e0700180c00180c000c0600201000160b00
-201000261300140a00201000201000201000160b00180c00261300201000180c00140a00
-261300301800201000261300160b002613000201002814002010000c0600160b000e0700
-140a00201000281400140a00201000160b002010001e0f00160b00201000281400140a00
-0e07000e0700160b00060300180c00180c002010000e0700201000060300201000140a00
-160b00020100140a00160b001e0f000603001e0f000e07002010000c0600160b00261300
-060300180c00160b00140a00160b002814002010002613001e0f00201000201000281400
-261300160b00201000140a00160b00201000ff9b36301800160b003018002e17002e1700
-201000301800201000180c00160b00ff9b36180c00180c002010002814000e07000c0600
-201000281400160b000c06002e1700140a00201000201000301800160b00261300180c00
-301800160b00020100160b00281400160b00201000201000140a00281400201000261300
-160b000e0700160b00160b00160b00160b000c06002814002010001e0f00140a00060300
-160b002814002010000e07000e07000e07002010002010001e0f002814000603000e0700
-2613000e0700201000ffa2442e17001e0f001e0f002814002613000c0600140a00201000
-ff9c38160b001e0f000402002e1700160b002814002010001e0f00160b00160b00281400
-140a00281400201000201000180c00160b000e0700281400201000160b00160b000e0700
-2010001e0f002010002010001e0f00160b000e07002613002814000e07000e0700140a00
-201000140a00160b002010002e1700160b000e07000e0700140a00180c00201000180c00
-2814000e07002613001e0f001e0f00261300160b00201000
-2010001e0f00040200180c00201000160b00160b001e0f000e07001e0f002010001e0f00
-160b00180c000e0700160b00140a001e0f00261300180c00281400140a001e0f00201000
-180c000e0700160b00160b000e0700140a00201000201000160b00020100160b002e1700
-160b00160b000e0700201000160b00261300180c00301800140a00160b00160b001e0f00
-201000180c00160b00201000201000180c001e0f00160b002814000c0600140a000e0700
-160b001e0f001e0f00201000160b00160b00160b00160b00201000160b000e0700160b00
-160b002010002010000c06000e0700180c00140a001e0f000e0700180c00180c00140a00
-160b00180c00140a002e1700140a000e0700140a001e0f00160b00180c00160b00180c00
-0e0700160b000e0700201000180c00201000160b000e0700140a00060300180c00160b00
-281400201000060300201000060300180c00140a001e0f000e0700201000180c00060300
-1e0f00180c00180c000e0700020100160b00140a00180c001e0f00020100140a00281400
-160b002010002010001e0f000e0700160b000e07000e07000e07000c0600160b001e0f00
-140a000e07000e0700180c00060300140a000603000e0700140a00180c000201000e0700
-160b002010000e07000603000201000e0700ff9e3cff99322010000e07002010000c0600
-180c002613002613002613000e07003018002010002e17002814003018002814000c0600
-201000261300381c00ffa142160b00281400180c000603000e07002613000603001e0f00
-160b00140a00261300261300160b000e07001e0f00160b00201000160b000e07000e0700
-0e07000c06000c0600201000160b000e07002e1700060300160b000e0700140a002e1700
-160b00160b002010000c0600301800160b001e0f00261300160b00160b00201000160b00
-2010000c0600160b00160b000e07000e07000e0700160b00160b00140a00160b00160b00
-180c00281400140a000e07000e0700140a00180c00180c000c0600160b00160b00ffa54a
-ffa2442010004020001e0f00281400140a00180c002814002613003a1d00281400301800
-160b00281400160b00281400261300160b00201000160b00020100140a00180c00160b00
-140a001e0f00060300160b00140a00160b00180c000e07000e0700180c000e0700060300
-201000160b002613002814000e0700201000140a000e07002613001e0f00281400201000
-180c00261300160b00180c00301800160b00180c000e07001e0f000603001e0f000e0700
-0e07000c0600160b000e0700281400160b002010002010001e0f00281400160b00160b00
-160b00201000140a00160b001e0f00180c00160b000e0700160b000e07001e0f001e0f00
-201000201000140a000e07000c0600281400020100201000140a00180c00160b00201000
-140a00140a00140a00201000140a000e0700160b000e0700160b00180c00180c00261300
-060300160b00140a002010001e0f00180c00201000160b00180c00180c000e0700281400
-160b00160b00180c00201000180c00180c00ffa64c301800261300180c001e0f002e1700
-2814002e1700201000160b002e1700201000ff9e3c0e07001e0f001e0f000c0600180c00
-180c001e0f002814000e0700160b00180c00281400281400160b00160b001e0f001e0f00
-180c001e0f00140a00060300040200201000160b00201000180c00281400060300060300
-0e0700160b00160b00060300180c002814002010001e0f00160b00201000140a001e0f00
-140a00201000180c002613002010002010000e07002010000201000e07001e0f002e1700
-160b00261300140a00ffa74e0e0700180c00180c00281400140a000e0700201000ff952a
-140a001e0f00180c002010001e0f00140a00180c001e0f001e0f00160b000c0600060300
-0e07002010002010002010001e0f000c0600140a00160b00180c000e07000e0700160b00
-180c001e0f00160b00160b00180c00201000160b00140a000e0700180c001e0f00201000
-160b000e0700180c000e07000e0700160b00140a000c06001e0f000e0700160b001e0f00
-1e0f00160b00160b000e07002010002814001e0f00201000
-160b00180c000603000603002e17002010001e0f000e0700180c00201000140a00180c00
-0e0700140a00261300201000261300261300201000281400160b002e1700160b00180c00
-180c00201000201000201000201000140a000c06000e0700140a001e0f00140a00160b00
-180c000e07002010002010002010000e0700180c00261300201000201000060300140a00
-1e0f001e0f002010000e0700180c00180c00160b002613002010001e0f00160b00180c00
-281400160b00180c001e0f00140a00180c00180c000e07002e1700201000160b00201000
-0e07002010001e0f000c0600140a00180c00160b00160b000e07000e07001e0f00201000
-0e07000e0700180c00201000281400160b000e0700020100160b00261300180c00201000
-0402000e0700201000160b001e0f002010000e07000e0700261300201000261300160b00
-0e07000c0600140a00140a00180c00281400ffa54aff9d3aff9932ffa448ff9e3cff9d3a
-0e0700160b00140a00301800140a00201000160b00201000160b000c06000e0700140a00
-0e07002010002010001e0f000e07000201000603000402000201000c06000e0700060300
-0e07000e07000e07000e07000c0600201000140a000e0700140a00160b000e07000c0600
-020100201000180c00180c000c0600ff94280c0600261300160b00201000201000261300
-381c003018003a1d002010003a1d002814003018003018003018002814002e1700402000
-301800301800201000ffa1422010000e0700160b00160b000e07001e0f000e0700201000
-1e0f00140a00201000160b00201000261300160b00160b000c06000c0600160b00160b00
-140a00160b000e0700180c002814001e0f002010002e1700180c000603000e0700261300
-301800201000180c00180c002010002010000e0700201000160b00160b002613000e0700
-160b00160b00201000281400180c001e0f000e0700140a00180c002010000c0600140a00
-160b00160b001e0f000402000e07001e0f002010000e07002613000c06001e0f000e0700
-180c00201000180c002814002814003018003a1d002e17003a1d00201000201000281400
-281400422100261300201000261300ffa64c160b00160b002010000e0700160b00180c00
-180c00140a00140a00160b00140a00160b001e0f00201000140a002010000e0700261300
-2e1700160b00160b00140a00160b00160b002010002010003018002e1700180c000c0600
-180c00321900261300281400160b001e0f002010001e0f00180c001e0f000e0700140a00
-2814001e0f000e0700301800140a00201000020100180c00201000060300160b00180c00
-1e0f00201000281400160b001e0f001e0f000e07002010002010003219002010000e0700
-0e0700201000180c000e07000e0700180c00180c00201000160b002010000c06001e0f00
-261300201000201000281400201000140a00201000160b00140a00160b003018001e0f00
-160b00160b00180c00160b002010001e0f000e07000e07000c06000e0700261300201000
-140a000e0700201000201000140a00140a00180c00ffa040180c001e0f00281400180c00
-2613002814002e17002814001e0f000e0700ff9d3a321900180c002e1700160b00060300
-0e0700180c00140a00160b002010000e0700160b000e0700160b00261300281400160b00
-1e0f00140a00281400201000160b00160b001e0f00160b00281400180c002010000e0700
-160b00201000140a002613000e0700261300281400140a001e0f001e0f000e0700180c00
-201000281400140a00160b00180c000e0700160b001e0f001e0f00261300060300201000
-060300160b000c0600160b00ffa040ff9c381e0f00140a00281400ffa244ff9c38201000
-0603002010000e07000603002010000c06002010002814002613000e07001e0f001e0f00
-160b000c0600160b000e07002613000c0600160b00160b000c0600301800180c00201000
-0e0700140a000c0600180c001e0f00180c000c0600140a002010001e0f00160b00201000
-1e0f00160b000e0700201000140a00160b002e1700201000140a001e0f000e0700281400
-180c00261300160b00160b00201000261300281400160b00
-2010002814000c0600160b001e0f000c0600180c004a2500140a000c06001e0f00261300
-261300261300160b00160b00201000160b00201000281400160b000e0700281400140a00
-160b002010000e07000e0700180c00281400160b001e0f000c0600180c00180c000c0600
-0e0700160b00160b002814002814001e0f00160b001e0f00140a00160b00160b00160b00
-180c00160b001e0f00201000020100180c001e0f00201000201000160b00180c00020100
-261300281400020100140a00160b000e07000c06000e0700160b003018001e0f001e0f00
-2e17001e0f00140a00160b000e0700040200160b001e0f000e0700160b000e07000e0700
-140a00020100160b00301800140a00201000180c00020100140a00160b00140a000c0600
-160b00201000140a00160b001e0f00201000180c00180c00201000060300180c00060300
-201000140a000e0700160b00201000ffa2440c0600140a00160b001e0f00201000281400
-ff9d3aff9c38201000180c00160b00060300180c00060300301800180c000e07000e0700
-160b00140a000603002010000e07000e07001e0f001e0f00201000140a000c0600160b00
-2010000e0700020100020100180c000e0700140a000c0600140a00060300060300281400
-0e0700160b00160b000c0600ff9c38180c001e0f00261300261300160b002010001e0f00
-2e1700381c002e17002e17003018002814002e17004422003018004a25002814003a1d00
-281400402000301800ffa54a160b00281400381c00201000201000180c00180c00160b00
-180c000e0700180c00261300160b002010001e0f001e0f001e0f000e0700201000140a00
-160b00140a000e0700281400201000160b00180c00180c00160b000e0700060300160b00
-1e0f000e07003018002613001e0f00201000180c00281400301800160b00140a00160b00
-0e07001e0f00201000201000160b00160b000c06000201000e0700281400180c00160b00
-1e0f00160b00261300160b001e0f000e0700160b000e0700201000160b00381c00261300
-180c003018003a1d004020003a1d003018003a1d003a1d003018004221002e1700381c00
-4221002e17002e17001e0f00281400ffa9522613001e0f00281400160b00160b00020100
-301800160b000e0700201000201000261300160b00201000281400201000281400160b00
-0e0700160b00180c00140a002814000e0700180c000e07001e0f00180c002e1700281400
-2010002814002814000c06001e0f00140a00140a00160b00160b001e0f00160b00180c00
-0e07000e0700261300140a00160b00281400160b000c0600160b000603002010000e0700
-0e07003018001e0f002613002010001e0f001e0f002010002010000e0700020100140a00
-180c000e0700261300140a00160b00160b00160b00060300180c000e0700060300180c00
-0e0700140a00160b00160b00140a00160b000e07001e0f00261300160b000e07001e0f00
-301800160b00160b00140a000e07002e17001e0f002814002010000e07000c0600281400
-301800180c000e0700301800140a000c0600201000ffa64c2010002613001e0f00281400
-3018001e0f00180c00140a001e0f00201000ff9c382e1700201000140a00160b00201000
-0c0600180c00301800140a000e0700281400160b00160b000e07001e0f00160b00160b00
-180c002010000603000c06002010001e0f00261300160b00160b00261300140a00201000
-281400301800160b002010000e0700201000201000281400140a00140a00201000040200
-1e0f00180c00261300180c000e0700180c00180c00201000140a00281400160b000c0600
-301800160b00160b00180c002814000e0700ff9932ffa54affa142201000160b00160b00
-160b00180c000c06001e0f000c0600160b00160b00180c00281400281400160b001e0f00
-2010002613002814001e0f00160b00281400160b001e0f001e0f00060300140a00140a00
-2010000e07000c0600180c000c0600060300060300160b00180c000e0700281400180c00
-1e0f00160b00160b000c06000c0600140a00261300160b00160b00180c00040200160b00
-160b00160b002e17002814000201000e0700140a00160b00
-2010000e0700180c00140a00180c001e0f000e07000c0600180c000e07001e0f001e0f00
-160b00201000160b000e0700201000281400261300261300201000180c00261300160b00
-140a000e07000603003018002010000e0700201000261300160b00140a00281400140a00
-2010002010000e07000603000603001e0f00180c00261300180c00160b00201000160b00
-0e07001e0f00180c000e0700201000040200281400180c000e0700160b000603000e0700
-140a00180c00201000201000160b002814002010000c06001e0f001e0f000e0700160b00
-180c00140a000c06000e0700160b00140a001e0f000e0700180c00201000261300180c00
-0603000e0700180c000e0700160b00040200020100140a00040200201000160b00160b00
-0c0600201000020100160b000e0700160b00040200060300261300160b00060300160b00
-160b00160b00160b00201000160b00160b003018002613002010001e0f000e0700180c00
-201000140a00ff9b360e07000e07000603002814000e0700281400201000160b000c0600
-3018000e07000e07001e0f00160b00180c00140a00040200261300160b00060300060300
-140a000402000402001e0f000e07000e07000e07000e07002010000c0600201000140a00
-0e0700060300201000ff9c38160b00060300160b001e0f002814002e1700281400301800
-381c004a25003018004221004020002e17003a1d003a1d00301800301800321900261300
-261300201000301800ffb1621e0f00301800201000160b00160b00201000160b00160b00
-261300201000160b00160b00160b002010002613000e07000e0700140a00160b000c0600
-160b002e1700201000301800201000201000201000040200180c00140a000e0700180c00
-0e07001e0f001e0f00140a00060300160b00160b00160b00180c000e0700160b00261300
-0e0700160b00281400160b00281400180c002010000603000603001e0f00160b00020100
-0603001e0f00060300180c00140a00201000160b00140a00ffa142261300381c00261300
-160b003018002814003018003a1d004a2500381c004422004020004a25004a2500321900
-3a1d002814002e17002010000e0700180c002814000c0600180c00160b00160b00160b00
-140a002e1700180c00201000060300261300160b002814000c0600180c001e0f00201000
-381c00160b00180c000e0700160b00281400281400060300140a00281400180c00140a00
-0e0700160b002613000e0700160b00160b00160b000e0700160b00140a00160b00160b00
-201000180c001e0f00160b00201000160b00140a000e07000e0700160b003018000c0600
-0603000e0700140a001e0f00201000160b002010000c06000c0600140a002010001e0f00
-2010000c06000e07000e07000e0700160b00140a00180c001e0f00160b00201000160b00
-0e07000e07001e0f00281400160b002010001e0f00140a001e0f00180c00060300301800
-201000201000180c00160b00160b002814000e0700160b00140a00160b00160b00160b00
-0e07000e0700180c000e07000402001e0f00160b00201000ffa64c0c0600301800201000
-160b002e1700180c002010000e07001e0f00ffa040040200160b00281400301800140a00
-1e0f00140a00180c002010002010002814000603000e07000c0600301800201000060300
-0e07000e0700160b00201000180c00281400160b00180c00180c00160b00140a00261300
-140a000c0600140a00140a000e07002010000e0700160b000e07002010000e07000c0600
-160b00261300180c00180c000e07000e07000e0700140a002e17002010001e0f00261300
-2814000e07000e0700140a00201000180c00160b001e0f000e0700261300160b001e0f00
-140a00281400160b001e0f000e07001e0f00140a00140a000e07000e0700180c00261300
-261300140a002010002010000e0700160b00160b00140a00160b00201000201000180c00
-0e0700160b00261300160b002010000e0700160b00160b00201000160b000603001e0f00
-261300160b001e0f00160b00140a00261300140a002e1700160b002010000402001e0f00
-160b00261300261300180c000e0700140a00180c00160b00
-0e0700160b00180c001e0f001e0f00160b00180c001e0f000e0700160b002010000e0700
-0e07001e0f00160b001e0f00020100180c00160b001e0f000c06000c06001e0f000e0700
-1e0f002613001e0f00180c002814001e0f00140a00180c002010001e0f00281400281400
-2814002010000e07000e0700201000160b000e0700140a00201000180c00180c00180c00
-140a00140a00180c002613003018000e0700160b00261300180c00281400321900160b00
-0e07000e0700180c00180c00140a000e0700140a000e0700020100020100140a00160b00
-201000201000060300160b00180c00301800160b00160b00160b000e07003018000c0600
-160b002010000201001e0f000201000e07002613000e0700180c000e0700160b000e0700
-180c00140a000e07000c0600160b002010000603000e0700160b000e07000e07000e0700
-1e0f00160b000e0700060300ff9c38201000180c000e0700261300160b000e0700201000
-0e0700201000140a00ff9e3c0c0600160b00140a00140a000e0700160b00140a00301800
-0e0700140a00160b000c0600180c00180c00140a00060300180c00060300180c00020100
-0402000c06000c0600160b00160b000e07000e07000402000603000603000603000c0600
-160b00060300ffa142160b00160b002010002613000e0700201000301800402000522900
-422100542a00442200402000381c00381c003a1d004221002e1700381c00321900281400
-201000301800261300ffa142301800160b00201000301800180c00140a000e07000e0700
-180c000e07001e0f00281400301800201000140a00180c00020100140a00060300140a00
-140a00180c000e07000e0700140a000201000c0600281400201000140a002010000c0600
-281400180c000e0700160b00261300180c00160b002e17000e0700160b00060300281400
-2613001e0f00140a000c0600160b000e0700160b00160b00140a00040200160b00140a00
-180c00281400281400201000140a00261300201000ffa2442e1700281400160b00281400
-2814003219004020004020004a2500542a004c26006432005e2f004a2500542a004c2600
-3219003018002010002e1700301800281400201000281400281400160b00180c00160b00
-261300301800140a000c0600160b00160b000603000e07000e0700180c001e0f00060300
-0e0700160b00160b00201000201000261300140a002e1700281400160b00140a00180c00
-180c00160b00301800140a002010001e0f002010000e0700201000180c00281400140a00
-140a00140a00160b00160b001e0f00160b00201000160b00160b00301800281400201000
-2010002613001e0f001e0f00321900160b00140a000402001e0f00160b000e0700020100
-2e1700160b000e0700201000201000261300180c00160b002e17002814001e0f00160b00
-160b00201000180c002814002814000e0700201000160b00180c00160b00201000201000
-261300261300140a00160b00140a00201000160b00160b00160b00201000160b00201000
-0e07000603000e0700140a002613001e0f002613002613002e1700ff9c38201000060300
-160b00140a00321900140a000e0700fffcf82010001e0f001e0f000c0600140a000e0700
-0c0600160b00160b00140a001e0f000402001e0f00160b000e0700160b00160b00261300
-0e07002814000c0600160b001e0f001e0f00160b002010001e0f000e0700301800140a00
-160b00201000160b000201000201002010000c06002010001e0f000e07000603002e1700
-0e07000603000e0700140a001e0f00160b000c06002814001e0f00160b001e0f00201000
-160b00180c00140a002010003a1d001e0f000201002010002613000c0600140a00160b00
-1e0f00160b00180c000e0700160b00201000261300201000180c002e1700180c00180c00
-281400140a002613000e0700040200201000281400281400180c000e07000c0600140a00
-160b002010002814001e0f00160b00140a00201000160b000e0700160b002010000e0700
-160b00180c000603000e07001e0f002e1700140a000c06000e07000c0600180c00140a00
-2010001e0f002010002010000e0700140a00160b00160b00
-281400201000180c00201000201000201000180c001e0f00140a00160b00160b00160b00
-160b00160b000603001e0f000e07000c06001e0f00201000180c00301800180c00160b00
-3a1d00160b00160b00160b00140a00180c00281400201000201000281400201000201000
-160b002814000e0700261300180c00160b00160b00160b00160b000c06001e0f00160b00
-1e0f00160b00281400160b000e0700060300160b00160b002010000e0700160b00180c00
-0c06001e0f00180c00140a00160b00160b00060300140a002613000e07001e0f00040200
-160b001e0f00140a001e0f00160b00060300060300140a000e07000c0600060300040200
-201000140a00160b00160b00140a000e07001e0f00160b001e0f001e0f000e0700160b00
-180c00180c00160b00160b00160b000e0700180c001e0f000e0700180c00160b00160b00
-201000180c00201000ff9d3a1e0f00060300261300201000140a000e0700281400140a00
-180c002814002010001e0f00ffa4482010002613001e0f00160b000e07001e0f000c0600
-0603001e0f000e0700201000201000281400160b000402001e0f00160b000e0700140a00
-2613000e07000c06000603000402000e07000e07002814000e07000201000e07000e0700
-1e0f00fffcf80c0600040200261300160b001e0f003a1d00180c004020004221003a1d00
-3a1d003a1d003219003a1d00381c004c26004221003a1d00281400402000281400301800
-301800261300201000ffa142140a00281400281400140a00160b002613000c0600180c00
-0e0700281400160b001e0f002613001e0f00060300201000060300140a00180c00140a00
-281400160b000603000c06002613000c06002613000e0700201000281400281400201000
-201000281400180c001e0f00201000140a000c0600281400140a00160b000e07000c0600
-0e0700160b00180c000e07002814000e0700140a000e0700160b001e0f002010001e0f00
-0e07002010000e0700140a00160b00160b002010002613002814003a1d00281400381c00
-4020004a25005a2d004a25006633005c2e00763b008643007e3f00663300542a00542a00
-4221002814003018003219001e0f00261300ff9e3c3219002814001e0f00160b00140a00
-0603001e0f00140a00140a00201000201000281400160b001e0f00180c000e0700301800
-1e0f00140a00160b000e07000e0700140a000e0700160b000e07000e07001e0f00020100
-201000201000160b001e0f000e07000e0700160b002613000e07002e1700040200160b00
-160b002e17000e0700160b00160b00160b00140a000e0700140a000e0700180c00261300
-0e0700301800261300301800301800301800180c000e0700180c00160b00281400201000
-261300140a000e0700180c00261300160b00160b003a1d00201000180c00140a000e0700
-180c00281400160b000e07001e0f001e0f000603000603000603000201000e0700201000
-0c06000e0700201000180c001e0f00180c00140a00180c000e0700201000261300281400
-2814000e0700160b00060300160b00180c00160b001e0f00160b000e0700ff9e3cffa040
-160b001e0f00140a00180c00ff9b363018000e07000e07002e17001e0f002010001e0f00
-160b003018000e0700160b00140a00160b00201000160b00160b002e17000603000c0600
-201000180c00140a000e07000e07000e0700160b002e17002814001e0f00180c00140a00
-180c00301800160b00060300180c001e0f00201000160b00381c000e07000c06001e0f00
-0c06000e0700201000140a00140a00180c00160b00160b00140a00201000180c00180c00
-0e07001e0f000603002010003a1d00060300281400180c002e1700160b00201000160b00
-160b001e0f00160b002010000e07002613000e0700160b00201000201000160b00261300
-020100140a000e07003219001e0f00020100160b002814000e0700281400201000180c00
-261300140a00261300160b00180c001e0f000e0700180c001e0f001e0f000e0700261300
-201000180c00140a00140a00160b002613000e0700160b00020100180c00160b00040200
-201000160b00160b001e0f00180c00160b000e0700160b00
-0e0700060300180c00201000180c00140a000e07000e0700160b00201000140a00160b00
-020100160b001e0f00261300160b002010000c0600160b00160b000e0700180c00180c00
-261300180c00201000060300261300140a000402000e07001e0f00140a00201000160b00
-1e0f001e0f00160b00321900160b00201000140a000e07001e0f000e0700060300201000
-160b002010000e0700160b001e0f00201000140a00201000060300160b00180c001e0f00
-160b00201000281400160b00160b00201000160b000e0700160b000e0700180c000e0700
-160b00160b00160b000e07000e07001e0f00180c000e07000c06002613000c0600180c00
-3018000e0700201000160b00140a00180c000e0700140a00180c00060300140a00140a00
-140a00060300160b000e07001e0f00140a002814002e17000e0700140a00140a001e0f00
-180c00201000140a00ff9932160b00140a003018001e0f00281400281400160b00201000
-201000160b000e0700140a00ffa54a0e0700160b000c0600301800140a000e0700160b00
-0c06000e0700160b000c06000c0600040200140a000603000e0700281400180c00140a00
-0e0700060300060300020100160b002010000e0700140a000201000e0700060300140a00
-ff99320603000c0600140a00140a00301800160b002814000c0600402000422100422100
-4a25003a1d00542a00381c00381c004020004020003219003a1d004a2500321900301800
-3219002814003a1d00ffa54a2010002613001e0f00140a00180c00201000180c00160b00
-040200160b000e0700060300180c002010000e0700160b002814000e07002010000e0700
-160b000e07001e0f00160b00160b00180c00201000201000180c000e0700281400381c00
-201000040200180c00180c00140a00140a000603002010002010000e07001e0f00160b00
-0c06000e07002613000e0700281400160b00160b000e0700140a000603000c06001e0f00
-140a00281400160b00201000201000040200281400201000381c00422100442200402000
-5229005e2f007038007e3f00904800804000ac56009c4e009a4d009048007038005a2d00
-422100281400381c00281400201000180c00ffa244180c00160b000603001e0f00140a00
-0e07000603004221002010000e0700160b002814002010001e0f000c0600301800060300
-1e0f00160b00160b00140a00201000160b00201000160b00160b002010000e0700140a00
-180c00160b001e0f00160b002e17002814001e0f00201000160b002e17001e0f000e0700
-0e0700180c002010001e0f00160b000e07002e17000e0700180c001e0f00201000201000
-261300160b00281400180c00160b002814001e0f00180c000e0700180c002010000e0700
-180c001e0f000e0700281400160b00201000201000180c002010000c0600201000140a00
-180c000e07001e0f00160b000603000e0700160b00261300301800160b00060300160b00
-2010000c0600160b000e0700422100160b00201000180c000c0600281400261300201000
-180c00160b000e0700180c00140a00201000140a00160b00160b00040200201000301800
-ffa142ff9c38ffa952ff9c382010000603003018002613000e0700201000180c00020100
-0c0600160b002613000e07001e0f000e0700140a00160b00201000160b00160b001e0f00
-201000301800160b00180c00160b00160b00201000160b001e0f00160b00201000281400
-201000140a00140a002010001e0f00160b000e0700020100261300160b00140a001e0f00
-201000160b00160b001e0f00160b00140a002010002e17000e0700160b00180c000e0700
-2613000e0700140a002010000e0700160b00140a00140a002010000e0700040200160b00
-1e0f00281400160b00160b00180c00160b000c06001e0f000e07001e0f00281400160b00
-261300201000201000140a002e17000e0700160b00160b00201000281400140a00201000
-0603000e0700180c002814000e07000e0700160b001e0f00180c00201000261300422100
-160b000e07000e07000e0700281400160b000e0700261300201000160b000e07001e0f00
-402000160b00201000281400140a00160b001e0f00180c00
-0e0700201000281400160b00140a000e0700180c00180c00140a002010000e07001e0f00
-160b00201000201000160b00201000160b000603000e07000c0600201000160b00201000
-160b00201000201000281400060300140a00140a002814001e0f002613001e0f00201000
-281400060300060300160b00321900160b00160b00140a00060300160b00180c001e0f00
-160b00201000180c00261300140a00160b00160b002814002e17002613002010000e0700
-0e07000e0700281400281400140a00160b001e0f00140a00160b00060300180c000e0700
-160b002010000e0700140a000e0700160b000e07000e0700140a00180c00261300201000
-160b000e07000e07001e0f000e0700040200180c00160b002010000e07000603000c0600
-201000180c00261300201000140a00140a00160b00140a001e0f002010000e0700160b00
-180c002814000c0600ff9b36140a00281400281400140a00281400281400301800201000
-281400201000160b00160b00201000ffa040140a00180c00160b000201000e0700060300
-160b000c0600060300160b00160b00140a000e0700140a000e0700140a00160b000e0700
-0c0600180c00060300040200060300160b001e0f000e0700040200040200060300ff9d3a
-0603002010000e07002814001e0f00201000160b00381c003a1d002613003a1d00422100
-4221004a25004a25004c26004422004422004a25003018003a1d00301800180c00160b00
-2e1700281400201000ffa448160b00180c00180c00180c00060300201000140a00020100
-3a1d001e0f000e0700140a00281400160b00180c001e0f00160b00140a000e0700160b00
-160b000e0700180c002e17001e0f000e07001e0f00160b00160b002010000e0700180c00
-281400201000180c000e0700180c000e0700180c002010001e0f00201000180c00060300
-160b000e0700060300140a00160b000c06001e0f00160b001e0f00160b001e0f000c0600
-160b002010001e0f00261300ffa448060300201000160b00381c003a1d004c26005c2e00
-6e3700804000ac5600be5f00de6f00ca6500ca6500c46200aa55007e3f006e3700422100
-381c00301800281400201000201000160b00160b001e0f00160b001e0f002010000e0700
-0c0600201000261300160b00201000201000261300180c00160b00160b00180c00140a00
-180c00160b002814002010001e0f00060300140a00201000160b00060300281400160b00
-0603001e0f000e0700201000160b000c0600060300201000160b000e0700160b00281400
-201000301800281400140a002e17000e0700160b00261300281400160b00201000201000
-140a00201000261300321900160b001e0f00160b00160b00180c001e0f002613000c0600
-1e0f00201000140a00201000060300140a00180c00261300040200261300180c00261300
-180c00160b00180c000e0700160b000e0700201000180c00201000261300180c00201000
-2613000e07002010000402002814000c0600140a00060300160b00201000160b00180c00
-160b001e0f00281400281400160b00180c00160b000e07000c06001e0f00281400160b00
-160b00281400281400261300060300180c000c0600261300180c000e07000603000c0600
-261300160b00180c00160b00261300180c00160b00201000180c00040200160b00180c00
-180c00180c00160b00201000201000301800140a00060300201000201000201000160b00
-201000160b00160b00180c002010002010000e07000e0700160b000c06000e07000e0700
-160b00160b001e0f002613002613002814002613001e0f002010001e0f00160b000e0700
-160b002613000c0600160b000e0700140a00281400201000140a000c0600201000060300
-0e07001e0f00040200060300140a00281400180c00140a00160b001e0f00160b00160b00
-261300160b00140a002010000402000e07001e0f000603002814003018001e0f00180c00
-0e07001e0f00201000301800180c000c06000e0700180c00140a001e0f000e0700180c00
-201000140a000e07001e0f00180c001e0f00261300261300201000201000060300201000
-0e0700140a00160b00160b002814001e0f00201000180c00
-0603001e0f001e0f00201000201000160b00160b002010000c0600160b00160b00201000
-1e0f00180c00060300160b00060300281400281400180c00060300160b00180c00140a00
-281400261300160b000c0600201000160b00160b000e07000e07002814000603000e0700
-201000060300160b002010001e0f00261300160b00201000160b00140a00201000261300
-160b00201000201000281400160b000c06001e0f001e0f000e07003a1d00140a001e0f00
-2010000e0700160b00140a00201000160b00160b00201000160b00180c00201000201000
-180c00160b00261300060300140a00281400180c002010000e0700180c000c06000e0700
-0603002010000e07001e0f00180c00180c000c06000e0700060300140a00020100201000
-160b000c06000c06002010002010000e0700180c00040200020100140a002010000e0700
-201000160b00160b00ff9b36160b000201001e0f00160b00201000160b00301800281400
-201000160b00180c002010000e0700ffa1422613002613000e0700160b000e07000e0700
-180c00201000160b001e0f00140a001e0f000603001e0f00140a002e1700160b000e0700
-020100060300160b00020100060300020100201000020100020100180c00ff9932060300
-0e07000e0700140a002613002613002613001e0f00381c003018004422004a2500442200
-5c2e004a25004c26003a1d00542a004020003a1d004422003a1d002e1700381c001e0f00
-3018002e17000e0700ffa244160b00180c00140a000e0700180c001e0f000e0700180c00
-0c0600201000160b00160b00180c00180c000e0700060300160b000e0700180c00160b00
-261300140a00160b000e0700140a00281400201000261300160b00201000060300201000
-2010000e0700180c002010001e0f00140a001e0f002e17001e0f000e07000e0700301800
-140a00160b00140a000e07000e07001e0f002814000e07000e0700160b001e0f000e0700
-160b00060300160b00ffa142301800160b00160b00381c003219003a1d005a2d006c3600
-984c00d06800ff8102ff8810ffa64cff8f1eff8204de6f00b85c009c4e00783c005e2f00
-5229003219003018002814001e0f00160b00201000020100201000140a00281400140a00
-2010002010000e07002613000e07001e0f00180c00160b000e0700301800160b00140a00
-060300201000201000160b00180c00140a00180c001e0f000e07002613000c06000c0600
-060300180c00140a000e0700140a000c0600180c001e0f00180c001e0f00140a00201000
-160b002010000e0700201000180c00180c001e0f00160b00040200140a000e0700180c00
-321900160b001e0f001e0f00201000140a00040200201000160b00160b001e0f00201000
-201000060300140a000e07000e0700160b002010002814000e0700160b00201000060300
-201000160b00201000140a00201000140a00160b002010000e0700180c00160b00281400
-301800160b00180c002814000c0600160b00180c00160b00281400160b00140a001e0f00
-160b00180c002814000e0700160b00180c00160b000e0700201000261300201000301800
-160b00321900261300180c00160b00140a00160b00060300160b00180c000e0700281400
-160b002613000e07000e07000e0700160b001e0f000e0700180c00020100160b00201000
-180c000c0600281400180c000e07001e0f002010000e0700201000160b00201000020100
-160b00201000201000281400160b001e0f002814001e0f00160b00160b00201000281400
-140a002010001e0f00180c000603001e0f00160b00180c00201000201000160b001e0f00
-140a002010001e0f00180c002e17000e07000e0700201000201000180c001e0f00201000
-140a00160b00060300060300160b00180c000c0600160b00180c00261300201000160b00
-1e0f00201000160b00180c00201000261300160b00160b002e1700160b000e0700201000
-2010001e0f000e0700160b00140a00281400281400060300201000281400140a00180c00
-140a000e0700180c00180c001e0f002814004020000e0700140a00140a00180c000e0700
-060300160b00160b000c06002814000e0700140a00301800
-0201000e0700201000140a00160b00160b002010000e0700040200140a00160b00201000
-2814000e07000e0700160b00261300160b00180c00160b00160b000e07002010001e0f00
-261300140a00160b000c0600060300140a00140a000c06002010000e0700160b00201000
-160b002e17000e0700060300160b00180c000603000e0700020100281400160b00201000
-0e0700020100160b002e1700160b00160b000c0600281400160b001e0f00261300201000
-160b00180c000e07000e07002010002010000c06000e0700040200180c00281400160b00
-060300160b00160b000e0700180c00160b00160b00040200180c00140a000e0700281400
-160b000e07000c0600160b00140a000e0700160b00060300140a00060300261300160b00
-2e17000e0700140a00261300140a00060300301800140a00160b00160b00180c00180c00
-0c06000e0700180c00ffa142160b000c0600060300201000160b002e17003018003a1d00
-1e0f001e0f00160b00201000180c001e0f00ffa54a1e0f000c0600160b000e07001e0f00
-0e07000e07001e0f001e0f00060300060300160b00201000140a00040200060300140a00
-020100160b00020100020100180c00261300140a001e0f000c0600ffa54a140a001e0f00
-160b00060300281400160b00201000201000201000281400321900381c004422004a2500
-5c2e004c26004a25004221003a1d003018004020003a1d002010003219002010002e1700
-281400201000140a00ffa244261300261300160b00160b00201000160b000e0700261300
-160b00160b000e07001e0f00201000140a00140a00201000060300060300281400160b00
-0e07002010000e0700261300180c002814000e07002010002613000201001e0f00281400
-140a00140a00180c00160b00160b00160b00140a000e0700140a00140a000e0700201000
-261300140a00180c00140a002010001e0f00160b00261300281400201000381c000c0600
-301800180c00180c00ffa142422100201000180c003219004c2600542a00643200924900
-d06800ff8c18ffb468ffcd9affe9d2ffc890ffab56ff8b16d86c009c4e00783c005c2e00
-2010003a1d002010002814001e0f00301800281400160b00180c001e0f00160b00201000
-281400140a00160b000603000e0700201000140a000603002010001e0f00160b00060300
-1e0f00201000201000160b00180c002814001e0f00160b00281400140a000e0700261300
-0e07002e1700281400201000201000281400281400020100140a001e0f00281400160b00
-0e0700140a00140a00180c002613002010000e07000e0700140a00160b002010000e0700
-1e0f000e0700160b00140a00201000160b00160b000e07000e0700281400160b00180c00
-160b00201000201000140a00281400201000180c00160b000e07000e0700160b00060300
-180c00180c00180c00201000281400140a000e07001e0f00281400160b00160b00301800
-0c0600180c00160b00180c002e17002010000e0700160b00160b00160b001e0f001e0f00
-160b00160b00201000160b00201000180c00160b00281400160b00160b000e0700180c00
-201000140a00180c00160b00261300140a000e0700201000201000261300281400180c00
-180c000603001e0f002e17000603002814000e0700180c00201000160b002e1700201000
-1e0f00201000160b002814000e0700201000160b00140a00180c00160b00160b001e0f00
-2010002010001e0f00180c00020100261300160b00060300321900381c001e0f00201000
-160b00160b000e0700140a000e0700140a00060300160b00160b000e0700180c00140a00
-140a000e0700160b001e0f000e07000e07000e07000e07000402002613001e0f00160b00
-140a000603002e1700060300160b002814000c0600140a00140a00160b000e0700140a00
-160b00060300261300140a000e07000e0700160b001e0f000e07002010002e17000e0700
-0e0700160b000c0600160b00201000160b000e0700160b00140a000c06002e17001e0f00
-180c00160b00180c00160b000603000c0600201000180c00281400060300160b00180c00
-180c001e0f00201000140a00160b00201000140a00160b00
-201000180c00160b002814000e0700160b000e0700160b000c0600201000180c00281400
-2010001e0f00020100160b002010002814002e1700201000281400281400160b00281400
-1e0f00160b002613002010001e0f00160b00261300140a00140a000e0700040200160b00
-160b00160b00160b00160b00160b00201000160b000c06002010000e07001e0f001e0f00
-140a001e0f002010001e0f00201000160b000c06000e0700180c000e07002010000c0600
-160b000e0700201000060300140a001e0f000603000e0700180c00060300160b00060300
-160b00180c002010001e0f001e0f00201000281400180c00160b00140a00160b00060300
-0402001e0f00060300261300160b002814001e0f00180c00140a00180c00140a000e0700
-160b00160b00160b001e0f00201000160b003018000e07002010002010000e07001e0f00
-0402001e0f00160b00ff99322010002010002010001e0f00281400321900301800321900
-3018002010001e0f001e0f00140a00160b00ff9d3a2613000c06000e0700160b00060300
-060300160b00140a002010000e0700160b00160b00020100140a000201000e07000e0700
-040200140a000c06000c06000c0600140a00140a00160b000e0700ff952a1e0f000e0700
-160b00160b00180c002814000e07002814003a1d003219002e17004422004221004a2500
-4221004221004422005c2e004a25004221004221003219003018003a1d001e0f00261300
-140a00201000281400ffa448160b000e0700201000160b001e0f000e0700140a001e0f00
-140a00160b000c06002010000e0700160b002010000e07000e07000e0700160b00160b00
-160b002814002010002814001e0f00140a00160b000e0700180c00160b00201000160b00
-140a002010000e07001e0f00140a00160b00261300140a00160b000201000e07000e0700
-281400140a000e07001e0f00140a00180c00020100301800201000261300020100140a00
-2613000e0700261300160b00201000281400301800381c004221006e3700864300ca6500
-ff9122ffdebcfffcf8fffcf8fffcf8fffcf8ffce9cff9b36de6f00904800783c00442200
-4020003a1d00261300180c00160b00ffa448160b00160b000e07000e0700160b000e0700
-180c00040200140a000e0700160b00060300160b00160b00060300180c00180c00201000
-3219001e0f00160b002010002814000e07000e0700201000201000160b001e0f000e0700
-140a00160b002010002010000e0700281400261300060300201000160b00160b00140a00
-281400180c002613000e0700201000201000160b00140a00201000160b00160b00160b00
-160b00180c00201000201000201000160b00261300180c000603000c0600060300160b00
-2613000c0600201000201000160b00201000140a00281400160b000e0700060300060300
-0402001e0f00160b000e07002613002010000603002814001e0f002010001e0f00201000
-180c00160b00201000160b000c0600261300281400180c00301800160b00160b00160b00
-0e0700321900140a00180c00160b00140a00160b00201000020100201000281400160b00
-140a00201000140a000e07002814000603000e0700180c000e0700201000180c00160b00
-180c00160b00160b001e0f00160b00060300201000281400261300180c00160b00281400
-201000160b001e0f00160b000e07001e0f00261300140a00160b00160b00281400261300
-140a001e0f001e0f00140a00261300140a000e0700140a001e0f001e0f00180c00160b00
-201000160b001e0f002010000c0600180c001e0f002010002010001e0f00160b00201000
-180c00140a000e0700201000140a002814002010003018002010000e0700060300020100
-140a00180c000c0600281400160b001e0f000603002010002010003018001e0f000c0600
-2010000e0700180c00140a00180c00140a00140a00160b002010000e0700160b001e0f00
-160b00201000140a00180c000c06002613001e0f00160b002e1700160b000c0600140a00
-ff9932ffa54aff9932ffa448ffa9521e0f00160b000e0700301800160b000e0700261300
-2010002814000e0700060300201000160b00180c00160b00
-180c00160b00261300160b000e0700180c00180c00160b00140a000e07002613000e0700
-0c0600180c000c0600160b00180c002010002010000402001e0f00160b00201000160b00
-1e0f00060300160b000e0700160b00160b00060300180c00160b00180c000e0700281400
-201000201000201000180c00160b00160b00261300180c001e0f00140a00281400160b00
-0e07000e07001e0f00301800160b00180c00140a00281400201000180c00160b00060300
-201000140a000603000c0600261300281400160b00180c00160b002010000e0700160b00
-0603002814000e0700201000060300261300301800201000201000140a00160b00281400
-201000201000160b00140a000e07000c06002010000e07002010000e07000e07000e0700
-201000140a00160b000e07000e0700160b00160b00180c002010000e0700180c000c0600
-140a00201000160b00ffa4480e07002010002613002814002613002814002e1700301800
-301800281400201000140a00140a00201000ff99320e0700180c000c0600160b00180c00
-160b000e0700160b000201000c06001e0f000603000603000201000e07000603000c0600
-140a000201000e07000603000c0600040200160b00060300ffa0400e0700160b00201000
-301800160b003a1d002814003a1d00381c004a25004020003a1d004c2600422100542a00
-522900542a00542a004020005c2e00442200381c004221002e1700201000140a00140a00
-0c06002814001e0f00ff9d3a1e0f002010001e0f00201000160b00261300040200140a00
-160b00201000160b00140a00160b000e07000e0700160b00140a000201000e0700140a00
-140a00261300201000060300160b00160b00160b00180c000e0700180c00281400281400
-140a002010000603000e07000c0600281400201000160b000e07000603002010000c0600
-1e0f000e0700180c001e0f000e0700140a002010002814002010001e0f00301800201000
-180c002613000e07001e0f00201000201000381c00381c00542a00703800a45200de6f00
-ffba74fffcf8fffcf8fffcf8fffcf8fffcf8fff1e2ffa244de6f009048006c3600522900
-3a1d00201000201000281400160b00ffa244201000180c00201000060300261300160b00
-180c00160b000e0700140a00201000201000201000180c000603002010002e1700160b00
-281400160b002010000e07000e0700261300160b00140a00160b00281400140a00140a00
-201000281400060300261300201000160b00160b001e0f00160b00160b00180c00040200
-1e0f00160b00140a00160b00160b00160b00301800160b000e0700160b00180c00281400
-0603001e0f00160b001e0f000e07001e0f000e07002613002e1700140a002613001e0f00
-0e07000e0700160b00201000160b00160b002814000402001e0f00160b001e0f00201000
-0e0700140a001e0f00180c00140a00160b00160b00180c00281400261300160b000e0700
-2010000e0700261300040200160b00281400180c00160b00160b002e17001e0f00201000
-140a000e07000603002010000c0600281400201000140a00140a000e07000e07001e0f00
-160b00160b00160b00281400201000180c002613000c06002814002010000e0700261300
-1e0f002e17002010000c0600180c00140a00160b00160b00140a00281400180c000c0600
-060300140a00180c00201000160b00160b000c06002613000e07000e07001e0f001e0f00
-0e0700160b00180c00201000160b00160b00160b00160b00261300140a00180c00160b00
-180c00160b00180c000e07002010000e07002613000e07002814000e0700180c00201000
-2010001e0f00160b00180c000603000c0600201000201000201000180c00180c00180c00
-1e0f00160b00140a002010000c06000e0700140a002e17000c06002010002e1700160b00
-160b000c0600140a002613002613001e0f002e17000e07000e0700160b002613001e0f00
-180c00160b00281400281400160b000603001e0f000c0600201000281400ffa040ffa952
-180c000e0700160b00281400140a00ffa040281400180c00180c000e07001e0f00201000
-140a001e0f000c0600180c00180c000e07001e0f00160b00
-0e07001e0f000603002010000c06000201001e0f00140a002010002e1700160b00140a00
-381c00201000140a000e0700180c001e0f00160b00321900281400180c003219002e1700
-140a001e0f00201000281400201000160b00261300180c001e0f000c0600160b000c0600
-180c000e0700160b00160b002613000c06002613000e07000e0700201000140a000c0600
-160b00160b00140a000e07002010000603002814001e0f000e0700160b00140a00180c00
-140a00140a00180c000e0700160b00160b001e0f001e0f00160b00160b000e0700180c00
-1e0f000e07000e0700160b00160b002814002613002010001e0f00201000160b00201000
-2814000e07001e0f000e0700180c00040200160b00160b00040200180c00160b00140a00
-160b00140a00281400201000160b000e0700201000140a002814000e0700180c00160b00
-160b00281400261300140a00ffa142201000160b000e07001e0f00160b00281400281400
-3018001e0f00281400160b000e0700281400ff9d3a201000180c00140a00160b000e0700
-160b00160b000e0700160b00160b000e07000402000603000e0700020100020100020100
-060300140a000402000c06000603000e0700160b00ff94280e07000e0700180c000e0700
-201000201000301800381c002814003a1d00542a004221004c2600542a005c2e00643200
-5a2d004a25005a2d00542a003a1d004422003018003018003018002e1700301800261300
-301800180c00160b00ff9d3a0c0600160b00281400160b002814000e0700180c00201000
-2814000e0700160b00180c002010001e0f00160b002613000e0700180c002814000c0600
-201000060300160b00180c00020100160b000e0700160b00140a00201000160b000e0700
-140a002010000402000e07001e0f00261300180c000e07002e17000e07001e0f00201000
-140a00140a00160b00160b002010000c06000e0700201000140a00261300140a00180c00
-160b00ffa2441e0f001e0f00180c00381c003a1d003a1d00542a00804000ac5600ff850a
-ffd7aefffcf8fffcf8fffcf8fffcf8fffcf8ffe7ceff952ab65b008643006e37004a2500
-301800301800180c001e0f00160b00ffa448160b00201000160b002010000e07000c0600
-261300180c000e07000e0700180c002e17001e0f00160b00201000140a001e0f00180c00
-0e0700140a000e0700160b001e0f00160b002010001e0f00180c00160b00281400160b00
-3219000e0700160b001e0f001e0f001e0f00180c001e0f002010000e0700160b00201000
-0e07000e0700201000281400201000160b001e0f00160b00201000180c00180c00160b00
-140a00201000201000180c00281400201000180c00160b00201000180c00201000180c00
-0e07001e0f00160b00140a001e0f00160b002010002e1700140a001e0f00201000201000
-160b00281400160b000e0700060300140a00160b00201000180c00261300140a00160b00
-180c00140a00160b00261300160b001e0f00201000140a00180c00160b00180c00040200
-140a002010000c0600160b00281400281400281400321900140a00180c00160b00160b00
-2814002010000e07000e07000e0700180c000e07000402000e0700160b002010000e0700
-201000160b00160b00180c00180c00140a002010000e07000c0600201000140a000e0700
-2010002010000e0700160b00160b00160b000c0600160b00160b002010000e0700261300
-2010001e0f000e07001e0f001e0f00180c00160b00201000180c00160b000c06000e0700
-060300180c00201000160b002e17002613002613000c06002e1700160b00180c00261300
-140a00301800201000160b00140a000c06000e07000e07003018001e0f002613000c0600
-160b00160b00160b00140a002010000c0600180c000e0700140a000e0700160b00201000
-020100060300160b000e0700140a00201000160b00160b00180c00180c00201000180c00
-160b00160b00160b000e0700160b00201000201000201000140a00ffa4481e0f000e0700
-040200160b003018000e07002613000c0600ff9e3cffa2442010002010002613001e0f00
-160b001e0f000c0600140a00180c00301800180c00261300
-160b000e0700201000160b00281400160b00140a002814000201002010000c0600201000
-201000261300160b00160b00180c00160b00160b000c0600160b00060300201000201000
-0e07001e0f001e0f00180c00060300160b00160b002814000603002814001e0f000c0600
-140a00040200301800261300180c00140a000e07002010000e0700180c00201000281400
-180c000e07000c06002010001e0f002613001e0f00201000160b00160b00201000201000
-140a00160b00160b00060300160b00160b000603002010000e0700201000180c00201000
-140a00160b001e0f00160b00180c000e07002010000e0700160b000e07002010001e0f00
-160b00201000201000201000160b001e0f002010000c0600140a00160b00201000160b00
-0e0700180c00160b000e07000e0700160b001e0f00140a000c06000c0600160b00160b00
-160b000c0600261300180c00ff9932281400201000160b003018001e0f00201000140a00
-1e0f00301800180c00261300201000301800ffa448201000060300160b001e0f000e0700
-2010000e0700160b00160b00160b00160b00180c00060300160b00140a00020100140a00
-040200160b00180c00020100040200060300ff952a040200060300140a001e0f00160b00
-160b00381c003018004a25003219004422004a2500542a00522900522900542a00643200
-5c2e006432005a2d005a2d00542a003018004221003018002010003a1d002e1700281400
-0c0600201000ff93260e0700180c00281400160b00180c000c06000c0600442200060300
-160b00180c00201000160b001e0f000c0600160b000603000e07000e07001e0f00160b00
-2010000603000e0700160b00180c00201000140a00261300180c001e0f00180c00060300
-160b000c0600160b00180c00160b001e0f00160b000402002010002814000c0600201000
-0e0700180c002613000c06000e07001e0f00201000180c002e1700140a00201000160b00
-160b00ff9c38160b002613001e0f003a1d003219005c2e005e2f007e3f00ac5600ff8c18
-ffd5aafffcf8fffcf8fffcf8fffcf8fffcf8ffca94f47a00b45a006e37005c2e004a2500
-1e0f00261300201000201000201000261300180c00321900180c002010001e0f00201000
-2613002010002010000c0600201000160b00180c002613001e0f00160b000e07000e0700
-0402002613001e0f000e0700281400160b00261300281400140a000e0700261300180c00
-201000180c00160b002613001e0f00160b002814000c0600160b002613000e07000e0700
-0c0600201000140a002010000c0600160b00201000201000180c00201000180c00180c00
-0e07000e0700281400180c001e0f00140a000c06002010000c0600160b00140a00201000
-201000180c002010000e07000e0700160b00160b00160b000e0700160b00160b00180c00
-201000180c00261300201000140a00180c000e07000e07000e0700160b001e0f000c0600
-1e0f001e0f00180c001e0f00140a00160b00160b00160b00160b00160b00140a001e0f00
-1e0f00160b00160b002010000603000e07000e0700160b001e0f00180c00180c00160b00
-0c0600180c00160b00160b00160b00160b00160b00201000201000020100160b000e0700
-140a001e0f00201000160b000603001e0f00160b00060300160b00140a001e0f00201000
-281400160b00261300201000201000160b001e0f00281400180c00160b00160b000e0700
-160b001e0f002613000c0600140a00060300140a00160b00281400201000160b00201000
-2613002010000603002010002010002010002010002e1700201000180c00140a001e0f00
-0c0600160b000e0700201000160b00140a00160b000e07000e07000e07002613001e0f00
-160b00201000140a00140a00140a000e07001e0f00281400201000201000060300160b00
-0603002010001e0f001e0f00180c00201000180c00281400160b00180c00281400160b00
-160b00060300160b000e0700201000160b000c0600201000140a00ff9b361e0f00180c00
-1e0f000e0700020100180c00160b001e0f000c06000e0700ff9932160b00201000160b00
-1e0f000e0700160b00180c00160b00201000160b00281400
-0e0700201000180c00140a00180c001e0f002010000e0700160b000c0600160b000e0700
-2814001e0f00160b000e0700160b000e07002814001e0f00281400160b00261300201000
-3a1d00140a00180c00180c00180c00180c00180c00201000160b002010000e0700180c00
-140a00281400140a00201000201000160b002010000e0700201000160b00160b00180c00
-160b000c0600160b002e17001e0f00201000180c000c06000e0700160b00261300201000
-140a000c06002010000e07000c06001e0f00160b00160b00281400160b00261300201000
-0e0700180c002010001e0f000e0700301800160b00140a00201000060300180c00140a00
-1e0f00140a00160b002010000e07001e0f00180c001e0f00160b00180c000e07000e0700
-140a00140a000e0700140a002010000c06000e07000e07000e0700160b001e0f00180c00
-0e0700180c000e0700201000381c00ffa74e0e07000e0700160b00180c002e1700160b00
-2010002e1700281400201000281400060300ffa54a201000160b000e07000402001e0f00
-140a00160b000e07002010001e0f00180c001e0f00020100140a000e07000201000c0600
-0603000e07002010000e07000c0600ff9428140a00140a00160b001e0f002613002e1700
-321900160b004a25004c26004221005c2e006432005e2f005c2e005e2f005c2e005c2e00
-6432006633004a25005c2e00542a00422100422100422100201000160b00281400180c00
-0e0700040200ff9d3a160b00261300160b00180c00180c000e07000e0700160b001e0f00
-160b000603000e0700180c002010002613001e0f00201000281400160b000e0700160b00
-060300160b002010001e0f002010002010002010000e07000e07002613000603000e0700
-1e0f00140a001e0f002613002010000e0700201000281400201000160b00160b001e0f00
-281400281400180c00281400201000160b00201000160b00160b00281400140a001e0f00
-281400ffa0402010002814002010003a1d004a25004a2500643200924900d66b00ff9122
-ffba74fffcf8fffcf8fffcf8fffcf8ffd7aeff9b36c462008643006e37005a2d003a1d00
-261300381c002e17000e0700281400281400201000201000160b00160b00201000060300
-160b001e0f00201000140a000603000e0700160b00180c000e07000e07002010001e0f00
-160b00180c002010000c0600201000020100160b000e0700180c00140a00160b00160b00
-0e07002e17000e07002010000e07000e07001e0f00160b00160b002010001e0f002e1700
-0e07002e1700160b00180c00060300140a00281400281400201000160b00160b00160b00
-2814000e07000c0600301800201000201000180c00180c00160b000e0700180c00140a00
-201000140a000e07001e0f00201000201000140a000c0600180c00201000201000281400
-160b000e0700140a00160b00261300261300160b00281400160b003219000e07001e0f00
-060300140a000e07002e17002010000e07003018000c0600160b00140a002613001e0f00
-0e07002010002e17002010000e0700160b00201000140a002010002e17002010000e0700
-0e07001e0f001e0f000c06001e0f00140a00140a000e0700140a00060300160b00040200
-1e0f00201000140a002814001e0f001e0f00060300160b00160b00180c000c0600201000
-2010000e0700201000180c000e0700060300160b001e0f00160b004a25000e0700140a00
-060300261300140a00180c00180c00201000381c00160b000c0600281400201000180c00
-2e1700160b00140a00201000160b000e0700160b000c0600180c00160b002010000e0700
-0e0700180c00160b00160b00281400140a001e0f000e0700160b00281400261300160b00
-140a00160b00180c00180c000e0700180c00140a00160b00281400160b00261300180c00
-160b001e0f00261300261300201000060300160b000201000e0700140a00160b00180c00
-0e07000e07000603001e0f00261300180c000e0700160b00ffa1420e0700180c001e0f00
-201000160b00180c002e1700261300180c00160b00140a00140a00ff9c381e0f000e0700
-201000140a00160b002010000e07001e0f000e0700281400
-060300160b00201000160b00160b000e07000603002010001e0f00180c00261300160b00
-0e0700201000140a002010002010001e0f00180c00140a00180c00180c002613000e0700
-1e0f002613001e0f00180c001e0f001e0f000e07000e07000c0600261300160b00281400
-201000140a00180c002613000603000c06001e0f00140a002814000c06002814000e0700
-180c00160b00160b000e07000e07002010000e07000c06000e0700180c00160b00201000
-1e0f00180c00201000180c00180c001e0f000e07001e0f00180c00301800160b00140a00
-160b002010002010000e07003a1d000c0600160b00180c002613002010002814000e0700
-201000140a00140a00160b00060300140a00140a00201000180c00160b00180c001e0f00
-140a00180c00040200160b00160b00160b001e0f00201000160b00180c000e07001e0f00
-201000201000140a000e0700160b00ff9e3c321900201000261300201000140a00180c00
-140a00160b00201000201000201000020100ff99320e0700160b000402000603000e0700
-140a000603000402000e0700261300060300060300261300020100160b000e07000c0600
-040200180c000e0700140a00160b00ff952a180c00160b000e0700281400301800180c00
-3219003a1d005a2d006633005a2d00542a004a25007e3f00763b007038007e3f00763b00
-763b005e2f005c2e004a25005a2d00422100422100301800281400261300301800180c00
-0e07000e0700ff9e3c0e07002010002814000e0700281400160b000e0700160b00201000
-0e07001e0f000e0700261300140a00201000160b00261300201000160b00060300160b00
-3018002814002613002e17000e0700160b00180c00160b000e07000e0700180c00281400
-0e0700160b000e0700140a00160b00140a001e0f000e07002814002010000402000e0700
-160b00140a001e0f001e0f00060300180c00201000201000281400261300281400261300
-2010000e0700180c00160b002010003018003219005c2e006633008844009a4d00ff8204
-ff9932ffc58affd7aeffc890ffad5aff9932d26900ac5600804000542a00301800321900
-301800201000281400ffa54a201000180c001e0f00180c000c0600201000140a001e0f00
-040200160b00201000060300140a00140a001e0f00140a002814000c0600201000180c00
-160b00040200160b00201000140a002613002814002613000e0700180c00020100180c00
-2010002814002010000c06000e0700140a00180c002613002010001e0f000c0600040200
-0e07000c06001e0f00140a00180c00180c00020100180c000e07001e0f001e0f00201000
-160b00140a00060300160b00160b001e0f00060300160b002010001e0f000e0700160b00
-0e0700160b00281400180c00160b00180c00160b00201000180c00201000180c000c0600
-040200160b00160b00261300180c002010000e07003018000e0700160b00180c00160b00
-2010002e1700281400180c00180c00160b00160b000c0600140a002613000e07000c0600
-180c001e0f00160b00180c00201000201000060300140a00201000180c000603000e0700
-140a00180c00060300160b002e1700060300160b00201000160b000e07000e0700261300
-180c00140a00261300281400160b00180c000e0700281400160b00201000201000201000
-160b00160b00180c00201000140a000e0700060300201000060300140a002e1700261300
-1e0f000e0700160b00140a001e0f000c0600160b00180c00201000160b00160b00180c00
-160b00180c00140a00160b001e0f001e0f001e0f00180c00160b00140a00160b00160b00
-2010000e0700140a00140a00261300201000160b00180c00160b000e0700281400020100
-0c06000e07001e0f00060300281400160b000c0600160b00281400180c00201000160b00
-261300201000180c00201000180c00281400160b00160b001e0f000e07002e1700160b00
-160b00160b00180c00160b000e07000201000e0700060300ffa040140a000603000c0600
-160b00301800160b002e17002010003018000e07000e0700201000ffa244281400160b00
-140a000c06002814000e0700201000381c002010001e0f00
-261300160b00020100140a002613000e0700160b002613000e0700140a00140a001e0f00
-160b00160b00140a00160b002010000c0600140a003018001e0f002010002613000e0700
-1e0f00160b000e0700281400201000201000160b00160b00140a00160b001e0f000e0700
-1e0f002613003018001e0f000e0700180c00160b000e07001e0f001e0f00281400160b00
-0e07002e1700160b000c06000e0700160b000e0700160b000c0600160b000402000e0700
-0e07002613000e0700201000180c00180c003018000e0700ff9932ff9e3cff9428ff9d3a
-ffa54a180c002010001e0f00201000160b001e0f00281400160b001e0f000e0700261300
-281400180c00201000281400160b00201000160b000e0700180c000e0700140a00060300
-0e0700140a00140a00140a00261300160b001e0f00020100180c00201000180c00160b00
-060300160b00201000160b00180c00180c00ff9e3c1e0f00201000281400281400180c00
-201000201000180c00201000160b00ff9d3a2010000e0700180c000e0700180c000e0700
-2010001e0f00201000180c00160b00180c000e0700140a00020100160b000c0600040200
-1e0f000e0700201000180c00ff8f1e0c0600060300140a00160b00281400281400321900
-381c00542a007e3f00663300763b008a45008643007e3f008a4500864300904800763b00
-763b006e3700763b005e2f00542a004422003a1d002e1700281400281400261300160b00
-160b00160b00ff8b16140a003018000c06002010000c0600281400180c001e0f001e0f00
-0c06001e0f00180c000e07001e0f001e0f000e0700140a000e07000e0700160b00160b00
-201000160b001e0f00160b000e0700180c002010001e0f002010000e0700201000160b00
-160b002613002010000e0700160b00160b00160b00160b00201000160b00201000201000
-1e0f00160b001e0f00140a00160b002e17001e0f00180c000e0700ff9d3affaa54160b00
-2e1700261300ffaa541e0f00201000402000542a004221005c2e00884400984c00e87400
-fe7f00ff8810ff8e1cff8810ea7500c66300a251006e3700442200542a00422100261300
-2e17001e0f00ff9d3a180c00060300180c002010000e0700201000160b000603000e0700
-0e0700140a000603000e0700020100160b00160b00160b000e0700281400140a00201000
-180c00020100140a00160b000e0700201000160b001e0f00160b00160b00180c000e0700
-180c000e07000c0600201000160b002010001e0f000201001e0f00201000281400140a00
-2814000e07002613002010001e0f002814000c0600180c00140a002814000e0700261300
-160b001e0f00160b00160b00201000261300201000201000160b00160b000201000e0700
-201000160b000603002e17001e0f00140a000603000e0700160b00160b000e0700160b00
-281400201000160b000e0700180c000e07000603001e0f000c0600180c00160b000e0700
-201000160b002814003018000c0600160b00180c002010000c0600180c002010001e0f00
-020100301800281400140a00140a001e0f00201000160b00140a00160b000603000e0700
-160b00160b00180c001e0f00201000281400160b00140a002814000e07000e0700281400
-0c0600201000160b000e07000e07003018001e0f001e0f001e0f002814002613001e0f00
-0e0700180c00140a001e0f000e0700261300160b001e0f00060300201000160b00281400
-301800160b00140a00180c00160b00160b00160b00201000201000140a00261300321900
-160b00160b00160b001e0f002010002010003018000402002010000603000e0700160b00
-0e07002613002010002613001e0f000e0700301800140a00140a001e0f001e0f000e0700
-160b001e0f002613002010000e07002010002814001e0f001e0f000e07000e07000e0700
-0603002010002814000c0600140a00140a000e0700140a00201000160b00160b00060300
-0c06000e0700180c002010001e0f00281400201000160b00ff9830160b00180c001e0f00
-0e0700281400160b002010002814000e07002010002814001e0f00180c00ffa4480e0700
-2010002613000e0700160b000c0600201000261300201000
-140a00140a000e0700201000180c00180c001e0f00281400140a00160b000e0700140a00
-140a00201000160b002010001e0f002010000e07002e17000e0700160b00201000160b00
-201000180c001e0f001e0f001e0f00160b00180c001e0f000c06001e0f00140a00160b00
-0c06001e0f000e0700180c00160b000e07001e0f00180c000e07000e07001e0f000c0600
-2613001e0f000e0700160b00180c00160b00180c00160b000c06000e0700201000140a00
-0e07001e0f00180c00160b00140a00ffa64cff9d3aff9e3c1e0f000c06001e0f00201000
-0c0600ffab56ff9e3c201000160b00160b001e0f002814001e0f001e0f001e0f00160b00
-160b00201000160b000e07001e0f00281400281400160b00180c000e0700180c00261300
-160b00160b00160b00201000160b001e0f00140a00060300281400281400160b00201000
-201000160b00201000140a000c06002613000e0700ffa244160b00160b00281400140a00
-160b001e0f001e0f00160b001e0f002814003018001e0f000c06000e0700180c00180c00
-160b00180c00140a00160b00160b00020100060300160b00140a00180c00060300140a00
-201000160b000e0700ff99320c0600060300160b000e07002613002814003a1d003a1d00
-542a007038006e37007e3f00904800a45200924900984c00984c008844009a4d00804000
-703800763b00542a00542a004a2500301800301800381c00381c000e0700321900160b00
-060300ffa2441e0f00180c00160b000c06001e0f001e0f00180c002e17000c0600201000
-180c000e0700140a00140a001e0f00180c00180c00160b00201000160b00140a001e0f00
-201000180c000e0700180c00140a002e1700160b001e0f00160b00160b001e0f000e0700
-2010000e07000e0700160b000e07000e0700160b00201000201000180c00381c00160b00
-2010000603000e0700160b001e0f00261300180c00ff9e3cff9d3a2814001e0f000c0600
-3a1d00281400261300ffa54a3219003018005a2d004a2500763b00864300a251009a4d00
-aa5500d06800ac5600b25900984c00864300783c005c2e004a25002e17002814002e1700
-2e1700160b00ffa4482814000e0700201000261300140a000e0700281400160b00261300
-060300060300140a00160b00180c00160b00201000180c00160b00180c000e0700140a00
-180c00201000160b00201000160b002613002814000e07001e0f00180c00180c00060300
-2010000e07002814002010001e0f000603002613002010001e0f002613000c0600060300
-160b000e0700ffa142ff9b36ff9e3cff9e3cffa040ff9428ff9932ffa244ffa54aff9c38
-ff9e3cff9e3cff9c38ff9b36160b000e0700180c00160b00201000140a000e07001e0f00
-180c00201000160b000c0600160b001e0f002010002814002010002010000c0600160b00
-160b00160b00201000140a002010000e0700281400160b00281400201000301800281400
-2010000c0600180c00140a00060300160b00180c00160b00160b00281400180c00160b00
-160b00160b001e0f001e0f00281400140a000603002010001e0f00160b000e0700301800
-281400160b00140a00281400060300160b00040200160b00140a000e07000e07001e0f00
-2613001e0f000c0600201000140a000e07000e0700281400140a00160b001e0f00281400
-160b00201000160b00180c000603001e0f00261300261300040200060300201000201000
-180c002814002814000e0700060300140a00140a00180c002010001e0f003a1d00180c00
-0c0600201000201000180c00281400140a00180c00140a002613000e0700281400301800
-201000201000180c00180c000e07000c0600180c00160b000e07000e07000e0700160b00
-2613000c06002010002613000e0700020100160b00261300180c002010000e0700281400
-281400160b000e07002010000e07001e0f00160b00281400180c00140a002613002e1700
-201000140a000c06000e0700160b00160b00160b00ff9c38160b00201000160b00140a00
-201000201000201000301800180c00140a00160b00201000140a00201000140a00ffa244
-140a00180c00180c000e0700160b000e0700261300160b00
-261300140a001e0f00180c00180c00180c000e0700160b00160b00140a00201000281400
-201000261300180c002814002613001e0f00160b00180c002010002613001e0f00281400
-2814000e0700160b000e0700180c00160b002010000e07000e0700281400140a00201000
-1e0f00020100180c000e07001e0f00281400160b000603001e0f00160b00140a00301800
-0c0600140a00160b00160b00160b00201000160b00180c00281400160b00180c00201000
-201000180c00160b00160b00ff99320c0600140a003219001e0f00180c00201000160b00
-1e0f00261300160b00ffa64cffa0400402000e0700281400060300160b001e0f00180c00
-140a001e0f00180c001e0f002010002613000c06000c0600201000160b00160b000e0700
-0e0700160b00201000140a00160b00160b002814000c0600160b000e07000e07000e0700
-0e0700201000140a00261300201000160b00140a00160b00ff9c38ff9e3c2010000e0700
-160b00160b00160b00060300ff9428201000281400160b000e0700020100261300060300
-201000160b000402000c06000e0700180c00160b000c06000e0700060300160b00201000
-0e07000e0700140a00ff9e3c0e07001e0f00020100261300261300381c004020005a2d00
-6633008643009c4e009c4e00b25900bc5e00a45200aa5500aa55009c4e009e4f009a4d00
-6e37007e3f006432005229004020003018002e17003a1d00301800281400281400261300
-160b00ffa244281400201000160b000603002613000603000e07001e0f000e0700160b00
-0e07001e0f000e0700180c00201000140a00160b000e07000e07002010002e17000e0700
-2814000e07002613000e0700201000160b000c06002010000e07000e07001e0f00261300
-2010001e0f00160b00180c00180c002010002010001e0f00160b00060300160b000e0700
-1e0f000e0700ffa54affa4480e07002814002814002e17002613001e0f00201000201000
-ffa54a3018002010002613002e1700321900422100ffbb76ffc080783c007e3f00884400
-763b00904800783c008844007e3f005c2e004221004c2600321900201000301800281400
-180c002010000c0600160b000c0600060300160b000603001e0f00201000160b00060300
-180c00160b00140a00160b000e07002010001e0f000e07002814000e07000e0700140a00
-180c00160b000e07000c06002010002e1700281400201000180c00040200160b00160b00
-1e0f00160b00180c00180c001e0f00160b00160b002010000e07000c0600ffa040ffaa54
-ffa244ff9d3a1e0f00160b002613000c06000e0700160b00160b00201000180c00201000
-2010002010000e0700261300ff9d3aff952aff9830ff9d3aff9d3a0c0600180c00140a00
-0c06002010000e07001e0f00160b00160b00160b001e0f00140a00160b002010000e0700
-2613001e0f00140a000402001e0f000e07000c0600180c000201000e07000e07000e0700
-2010000e07002814002010002010001e0f000e07002010000e07002814001e0f00201000
-201000160b000603000e07002010002814000e0700160b00160b00140a00160b001e0f00
-201000060300201000261300180c00060300160b00160b00180c000e0700140a00180c00
-0e0700040200180c00160b00180c00160b00201000160b00160b00160b00281400281400
-281400160b00160b00140a002010000e0700160b000e07000e07000e0700201000201000
-0e0700160b002e1700160b00160b00160b00160b000e0700140a000603000e0700281400
-140a00140a00060300160b000603002613001e0f00201000160b001e0f001e0f00201000
-160b00201000160b000e0700201000180c00060300180c001e0f00180c000e0700060300
-1e0f003a1d00160b000e0700160b00180c00201000180c00160b000e0700160b000c0600
-1e0f002010001e0f001e0f002010000e0700160b00261300140a00201000180c004a2500
-160b00060300281400160b002814002010000c0600ffa54a0e0700301800180c00201000
-2010002e17002010002e17003018003a1d003219000e07002e17002814001e0f00ffa040
-201000180c000e07001e0f002613002010000e0700160b00
-180c00160b00160b00201000281400160b000e0700040200180c001e0f00261300140a00
-020100140a000c06002010000e07000c06002814000e07002010000e0700180c00160b00
-0e07000e0700201000160b00281400180c000e0700060300160b00180c000e0700160b00
-2010002010001e0f001e0f00160b00160b00160b00140a001e0f00281400281400261300
-2010001e0f000c0600281400201000140a00160b00160b00160b00160b000e0700281400
-160b00160b00160b00ffa1421e0f002010001e0f00140a000e07002010002010000e0700
-160b00160b00140a001e0f00160b00ff9d3a160b000e07001e0f00180c001e0f001e0f00
-160b001e0f00160b000603000e0700201000160b00180c002e17002814000e07000e0700
-180c00140a000c0600201000160b002e1700180c002010000603002613000e0700180c00
-0e0700180c00140a00140a002613000e0700160b001e0f00201000301800ff9e3cffa142
-ff9b36ff9d3affa040ffa040180c00201000201000180c00201000140a000603000e0700
-0c06000e07001e0f000c0600160b00140a000c06000201000e0700040200140a00140a00
-160b000e0700ffa448261300140a00261300160b002e1700281400542a00422100804000
-904800924900b65b00b45a00d26900d26900c66300b85c00be5f00aa5500a25100904800
-7e3f006432007e3f00542a00542a004221003018003219003a1d002e1700160b00301800
-1e0f00ff9b361e0f000c0600180c00160b00160b00160b000c0600160b00201000261300
-140a00160b00160b00160b00201000160b000e07001e0f00201000201000160b00160b00
-140a00160b00180c000e0700160b00180c00160b00422100201000140a00180c00140a00
-160b00020100180c000c06002010002814002e1700261300201000201000281400020100
-0e0700ffa448281400180c002010002e17000e0700261300160b00281400281400301800
-ffad5a422100201000301800321900261300422100402000542a004c26005e2f00763b00
-5c2e007e3f007e3f00522900542a005229003a1d003219002010002e1700321900281400
-201000180c002010002613000c0600201000261300180c000e0700140a001e0f00160b00
-0e07000e0700180c000e07001e0f00060300180c00281400060300140a000e0700060300
-1e0f00140a00180c002010001e0f00160b002814003018002e17000e07000c0600180c00
-140a00160b001e0f00140a00160b000603002e17000c0600160b00ff9932381c000e0700
-0e0700281400160b000e07000c06001e0f00261300160b00160b00140a00160b00301800
-060300160b000e0700160b00160b00160b001e0f00160b000e0700ff9d3aff9e3cffa040
-ff9830140a002e17001e0f00281400201000180c00201000140a00160b00261300160b00
-180c002010000201001e0f00201000180c00140a00160b00160b000e07000e07000e0700
-201000160b00160b00180c000603001e0f00160b00201000180c000e0700201000180c00
-180c000e0700160b000e07000c0600140a000603002613002e1700160b000e0700261300
-180c00201000160b002814001e0f00201000261300160b001e0f001e0f001e0f00180c00
-180c00020100140a002613001e0f000e0700180c00201000160b00180c000e07000e0700
-060300160b002010000e07002010000e0700180c00201000060300160b001e0f00261300
-2e1700160b00261300160b000e0700160b00180c00201000180c00160b00281400160b00
-0c0600180c00261300140a001e0f002613000c0600160b00140a00140a00160b000e0700
-140a000e0700180c00281400160b00201000160b00281400160b000e0700160b00281400
-1e0f00201000201000140a00180c00180c00160b00201000180c002613001e0f00160b00
-3219002010002814003a1d001e0f00160b00160b00160b00201000180c00160b001e0f00
-180c00301800140a00160b002613000c0600261300ff9e3c1e0f00140a001e0f000e0700
-160b003219002814002e17001e0f00281400201000201000060300160b00160b00160b00
-ffa142180c00180c000603000e0700140a00201000140a00
-160b00140a00060300160b00160b000603000e0700160b00140a00140a00180c00201000
-180c002010000e0700201000160b00140a00261300180c00160b00160b000e07001e0f00
-160b002010001e0f000603000c06001e0f000e0700201000180c00281400140a000e0700
-2010000e07002010002814001e0f001e0f000e07000201002010000c0600201000180c00
-0c0600160b00180c00180c001e0f00140a001e0f000e07000e0700020100281400160b00
-180c00060300ffa142180c000e07001e0f002010003a1d002e1700201000261300060300
-2010001e0f00160b002613000e0700140a00ff9932160b00160b00201000160b001e0f00
-160b000e0700160b00160b00140a00160b001e0f00140a00160b00160b000c0600160b00
-0603000e07001e0f00281400180c002010002e1700160b00160b00140a00201000281400
-201000160b000e0700261300281400180c001e0f00160b002e1700160b002010000e0700
-261300160b00180c001e0f00180c00140a00201000201000160b000c06001e0f001e0f00
-0e0700160b000e07001e0f002613002613000e07000e0700160b000e07000e0700140a00
-160b00ffa040140a00040200201000160b002010002e1700301800542a005a2d00763b00
-9c4e00b65b00d86c00f67b00ea7500ff8102fc7e00e87400d06800c46200b85c00984c00
-7e3f005e2f005c2e004c2600381c003a1d00281400301800180c002613002e17001e0f00
-ffa040180c000603000c06000e0700140a00160b000e07001e0f00281400281400160b00
-281400180c00160b000e0700180c000e07002814002010001e0f00160b00140a00160b00
-201000201000140a000603002e1700160b00180c00180c00261300201000160b000c0600
-1e0f00180c000e0700060300160b00180c001e0f000e0700201000281400201000160b00
-160b00140a002010002010002010001e0f00281400281400201000160b00301800201000
-180c000e07003219002814003a1d004221004020004c2600542a00542a005e2f005c2e00
-6e37005c2e005a2d004a2500442200301800381c002010003a1d00261300201000ffa74e
-2010002010000e07002010003018000e0700160b00201000160b00060300160b00140a00
-281400140a00180c003018000e0700180c00160b00180c000e0700060300160b00281400
-060300261300140a000c06002010002010001e0f000e0700140a000e0700140a00060300
-281400140a000e0700180c002613000e0700180c00ffa142ffa64c201000060300201000
-0e0700201000261300160b00160b00140a00060300160b002613000c0600160b001e0f00
-201000140a00060300301800160b001e0f00261300160b00261300160b002613000e0700
-0e0700ffa64cff9b36ff9c38180c000e07002010002613000e0700281400180c00140a00
-261300160b00020100140a00160b00281400140a00160b002e1700160b00160b00160b00
-180c002010002613002010000c06002e1700160b00180c00140a00160b00160b00140a00
-0c06002010002814001e0f001e0f00201000201000160b00201000301800180c00140a00
-2814001e0f00160b00281400201000201000160b002010000c0600160b000e0700160b00
-180c00180c00180c00201000140a001e0f001e0f000e0700201000201000180c00201000
-0e07002613002613001e0f00201000201000261300201000180c000e0700160b00201000
-2814000e07002814002010001e0f00160b000e07000e0700201000261300040200140a00
-180c00261300160b00180c00201000180c001e0f002010003018000e07000e07000e0700
-020100160b00201000160b00160b000e0700201000281400140a000e0700201000201000
-261300180c001e0f00140a000c0600180c000e07001e0f00160b00060300140a000e0700
-060300140a000c0600201000160b000c06002613000c0600281400160b000e0700060300
-180c00160b001e0f00180c002613000e0700180c00160b00ffa54a0e0700180c000e0700
-281400281400140a003018001e0f003a1d001e0f00301800140a00201000160b000e0700
-ffa4482010000603001e0f002814002814000c0600060300
-2010000e0700201000140a00160b00261300201000201000160b00140a000e0700140a00
-0e0700160b000603001e0f00140a00160b00140a002010000e0700160b002010000e0700
-201000160b00201000160b000e07002010002e1700281400160b000e07000c0600301800
-160b000e0700140a00140a000e0700281400160b00281400261300160b000402000e0700
-0e07000e0700201000160b001e0f001e0f00060300160b00201000160b000c0600160b00
-281400ffa142160b00140a000e0700140a00201000281400160b00281400180c00160b00
-281400180c00180c00201000160b000e0700ffa448160b000e07001e0f000e07000e0700
-201000160b00201000160b00160b00160b000e0700261300160b00201000281400180c00
-201000160b00180c00160b00201000180c00301800140a00140a00160b00201000180c00
-140a00281400160b00140a002010001e0f00281400160b000e07002010000e0700140a00
-261300201000160b00160b000e07000e07000603001e0f000e0700160b00201000160b00
-180c000e07000e0700140a000e0700180c002814000c06000e0700140a000e0700060300
-060300ffa040180c000e07002814002613002613003a1d003a1d00703800763b00804000
-c46200ec7600ff9020ff9d3affa040ff9932ff9932ff8a14e87400d86c00b85c00bc5e00
-9a4d006432005c2e00522900442200381c002814002814002e17000c0600201000201000
-ffa2440603002010001e0f000e0700160b000c0600140a00281400160b000e07001e0f00
-201000160b00160b000e0700140a002613000e0700160b003018002010000c06000e0700
-0c06000e07002010003018000c06001e0f00160b000e0700160b00201000381c001e0f00
-0e0700261300201000201000060300180c001e0f002613000e0700ff9b362613001e0f00
-160b002814002e17000c0600301800201000140a002814002010002814002e1700321900
-381c002613002e17004422003018004221004221004020004422004c26005c2e00ffb162
-4221004221004221002e1700381c003018004020003a1d00321900261300ff9b36201000
-180c00160b001e0f00160b00180c00160b000e07002010000c06000e07001e0f00160b00
-0e0700160b00140a00160b000e07000e07000e07000c0600180c00160b00201000180c00
-1e0f002814001e0f000201001e0f00201000160b000e0700140a00261300281400261300
-160b001e0f00140a00201000201000201000ff9c38160b00160b00140a00140a00060300
-160b001e0f00160b00160b00201000160b000e0700140a00140a00160b00160b00180c00
-281400201000201000160b00140a002010000e07003a1d00281400422100281400281400
-201000160b00281400160b00ffa952ff9932ff9d3a201000180c00180c00180c00180c00
-160b000e0700040200160b00160b00201000140a00160b000e07000e07001e0f00281400
-0e0700281400060300201000201000261300160b00160b00140a000e0700060300160b00
-140a001e0f000c0600160b00160b000e0700201000160b002e1700201000180c00201000
-2814000e07001e0f00160b00140a000e07000603000c06002814000c0600201000201000
-040200201000201000160b00160b00160b00180c00160b00160b00140a00040200140a00
-160b00180c00261300160b00160b000c0600180c00160b00180c00180c00160b000e0700
-160b00180c00180c00201000261300160b000e0700261300201000201000160b001e0f00
-140a00180c001e0f00201000201000261300180c00160b00201000140a000e0700160b00
-2010000603000201000c0600040200160b00160b00160b001e0f002e17001e0f00140a00
-180c001e0f002814000e07001e0f000e0700160b00160b00281400160b000e0700160b00
-0e0700160b00180c00180c002e17000603003018000e07002010000e0700201000160b00
-0e07002010001e0f00160b002010000c0600160b000e0700ffa142060300180c00281400
-140a002010002814002613001e0f00301800201000261300201000160b000201000e0700
-ff9b36180c000e07000e0700060300160b00160b00261300
-0e07000e0700160b00180c000e07000e0700180c00201000201000140a00140a00180c00
-0e07000201001e0f00160b002010001e0f00180c000e0700140a000e07002010000e0700
-0e07000e0700180c00160b00201000201000201000201000160b00160b001e0f00160b00
-160b00180c00180c00180c001e0f00160b000e0700180c00140a00160b00140a00040200
-281400261300201000060300040200201000160b00281400160b00140a000e0700160b00
-160b00ffa2440e0700160b00261300281400201000180c003a1d002e17002e1700422100
-2613002e17002613002010002613001e0f00201000ffa54a180c00201000140a000e0700
-140a00201000140a00140a00281400160b00140a002010002613000e0700140a00160b00
-140a00140a00060300160b00180c00180c00140a00201000261300201000140a000c0600
-180c002814000e0700261300020100140a000e0700201000301800381c000e0700140a00
-1e0f00281400180c001e0f001e0f000201002010003219000e0700160b00180c000c0600
-180c00201000160b001e0f00160b00020100140a00060300160b00160b000e0700140a00
-ff99320201002814002010001e0f003018000e07004020005c2e00763b00804000aa5500
-d66b00ff8810ffad5affc488ffc78effad5affaa54ff9020ff8a14e27100c66300aa5500
-8040005c2e005e2f004a25003a1d00281400281400160b001e0f00160b00160b00160b00
-ffa0401e0f000402002814002010001e0f000e0700201000160b000e0700160b00180c00
-0e07002010000e07001e0f003018000603000c06000e0700201000140a00160b00261300
-180c00160b00201000160b00281400281400201000160b00160b002613000402000e0700
-160b00261300160b000c0600180c00180c001e0f00281400ff9c38140a000e0700201000
-0e07002010002010002613002e1700321900321900281400180c00180c003219003a1d00
-281400ffa9523018003018003a1d00422100381c003a1d003018003a1d003219002e1700
-ffaf5e3018002814002e1700281400160b003a1d00160b00180c00180c00180c00201000
-160b00160b000c0600201000160b00160b00140a00160b001e0f00160b000e0700160b00
-180c00201000180c00060300180c00160b00160b000e0700160b002613002010001e0f00
-140a000e0700180c00160b000c06002814001e0f001e0f00060300160b00180c00281400
-261300140a00140a00160b00201000301800ffa244160b000c0600180c00160b000e0700
-140a00201000160b00261300281400160b002814000201001e0f002e1700180c00261300
-160b00201000160b001e0f001e0f002010000e0700180c00180c000e0700160b00160b00
-2613002814002010000e0700201000180c00281400ffa142ffa64c0603002010002e1700
-160b00281400160b00060300160b00160b00160b000e07000e0700201000180c00281400
-020100261300201000060300180c00160b00201000180c00060300180c000603000e0700
-140a002010000e0700201000140a002010001e0f002814002613003018000e0700140a00
-0e07002613000402002010000c06000e0700180c000e07000e0700201000160b00201000
-2010001e0f002010001e0f00140a002010000e0700201000160b00281400160b001e0f00
-3018001e0f00201000180c00160b003018002814001e0f002e1700160b000e0700160b00
-160b00160b00140a00201000201000201000180c00180c00261300180c00281400281400
-201000201000381c000e0700160b00281400160b00140a000e0700201000261300180c00
-201000201000160b00160b001e0f00140a002613000e07001e0f00201000160b00261300
-261300160b000e0700180c00160b002010002613000c06000c06001e0f00160b00261300
-201000281400180c00180c00160b00160b002e1700140a002010000e07001e0f00160b00
-1e0f002613000c0600180c000e07000e07000e0700020100ff9932180c00321900261300
-2010002814003018003219003018003a1d002814002e17000e0700160b002010002e1700
-ff9e3c2010002010000e0700261300140a001e0f00201000
-0c0600140a000e0700180c000e0700180c002814001e0f00060300160b000e0700201000
-0e07000e0700040200160b000e0700201000160b00180c003a1d002814000e0700160b00
-160b000e0700201000140a00180c00160b00140a00160b00201000160b00160b00040200
-3219002814001e0f00201000020100160b002e17000e0700140a000e07002010000e0700
-180c00160b00160b00201000160b00201000020100180c000c0600160b00201000160b00
-ff9c380e07002814002814001e0f001e0f002613002613002613003a1d00381c00402000
-281400201000160b002010002010000e0700201000ff952a0603001e0f00160b00180c00
-2613002010000c0600301800180c00180c00140a000e0700160b00201000180c00140a00
-2010000c06001e0f00160b000e07002010000603002814000e0700140a00140a00422100
-0e07002613000e07002613002010002e17001e0f00281400201000281400160b00180c00
-140a00201000040200140a00160b000e07000603002010000e07000e0700020100140a00
-060300140a00160b00020100201000180c000e07000e07000e07000402000c06000c0600
-ff9d3a0e07000e0700160b001e0f003018003018005c2e005c2e006432009e4f00bc5e00
-ff850affb76effd5aafff4e8fffcf8ffe4c8ffc78eff9d3aff8f1efc7e00d66b00b25900
-783c007e3f003a1d003018003a1d003018003a1d00281400140a00160b001e0f00ffa448
-140a00140a00160b000e0700160b00140a000e0700261300160b002010000c0600180c00
-0603002010000e0700160b00140a000e0700201000261300180c00160b002e17001e0f00
-201000160b00201000160b00180c001e0f00301800160b00201000140a00201000140a00
-160b000e0700140a000e0700281400201000140a001e0f002814001e0f00180c001e0f00
-160b00301800281400281400301800180c002613002e17002613003a1d003018003a1d00
-381c00301800ffb1624020003219003219002613004422003018002814002814001e0f00
-3018001e0f002613002e1700201000180c002814002010000c0600160b00180c00261300
-201000180c00160b00140a002010000603002010000603001e0f000e07002e1700060300
-180c00140a00180c000e07000e07002010002814002010000603000e0700180c00160b00
-180c00180c001e0f00281400160b00201000060300201000160b000e07000e07001e0f00
-160b000e0700140a00160b00201000ff9c380e0700201000180c00140a000e0700160b00
-0e07002613002814002010002814002010003a1d000e07002010002e17000402001e0f00
-201000281400201000160b002613002010001e0f00180c00281400261300261300160b00
-261300140a001e0f00201000160b00160b00160b00160b00201000ffa040ffa244201000
-160b001e0f002613000c0600261300160b001e0f00201000060300201000261300160b00
-180c00160b00140a00160b002814002613002814000e0700180c00201000140a000e0700
-201000160b000c0600140a000c06001e0f00180c000e0700160b001e0f002e17002e1700
-160b00160b00180c00261300160b000e0700140a00140a00180c00201000160b00160b00
-2010002010001e0f00160b00140a00160b001e0f00160b00020100140a001e0f001e0f00
-160b00180c00201000201000140a00160b00160b00160b00201000180c00201000281400
-201000180c00160b00180c002e1700160b00261300201000180c00160b001e0f000c0600
-2e17002613001e0f002010001e0f00140a00201000281400201000160b00140a00281400
-0201001e0f002010000603002010001e0f00281400201000180c000201002010000e0700
-2613001e0f00160b00180c00160b00281400140a00160b00140a00140a00201000201000
-2010001e0f00180c00160b00160b00180c00180c002613000e0700160b001e0f00140a00
-2814000e0700160b000e0700160b00180c00261300201000ffa64c3a1d00160b00180c00
-2e17002814003018004020002814004020003219002010000e0700180c00180c00281400
-0e0700ff9c38140a000603000e0700160b00160b00201000
-1e0f001e0f00180c00201000160b00180c001e0f00281400160b00160b00160b00201000
-201000160b00201000180c00261300281400160b001e0f002010001e0f000e0700180c00
-201000261300261300180c00060300160b00160b00160b00140a001e0f00160b000e0700
-180c000e0700201000201000160b00160b00140a00201000140a001e0f00201000180c00
-1e0f00261300201000140a002010002613002814000e0700020100160b001e0f00201000
-ff9c38180c000e07001e0f00140a00201000180c003a1d004221003a1d003a1d00261300
-2814003a1d00301800180c00301800281400180c00ffa4480e07000e0700201000140a00
-160b00140a000c06000e07002010000c06000e0700180c002613002814000e0700201000
-201000160b00180c00180c00160b00281400140a002010002010002010000e0700201000
-140a000c06000e07003018002814002613002613002613003219001e0f003018001e0f00
-160b00160b000603001e0f002814000e0700160b00160b000e0700201000060300201000
-180c00160b000e0700180c000603002010000c06000603000e07000e0700160b00ff9e3c
-0c06001e0f001e0f00180c002814002010004422004c2600783c00884400bc5e00f27900
-ff9d3affd5aaffefdefffcf8fffcf8fffcf8ffd5aaffbc78ff9122e47200c86400984c00
-783c004221005a2d003a1d002814003a1d00201000160b00160b00160b00201000ff9e3c
-201000160b00201000160b000e0700160b00140a000c0600060300201000140a000e0700
-160b00140a000c0600281400160b00180c00180c00201000160b00140a001e0f00201000
-160b00201000160b000e0700160b00160b00160b00180c004221002010001e0f001e0f00
-281400140a002010001e0f001e0f00180c002814002010003018002814002010001e0f00
-2010002814002814004221003219002010002e17003a1d004020003a1d00281400422100
-4221004221003a1d002e1700301800281400301800201000301800281400422100301800
-261300201000180c00201000160b003a1d00ffa244ff9b36140a000e0700020100201000
-201000281400180c00261300261300160b00020100160b00160b000e07002010001e0f00
-2010000c06000c0600180c000e0700160b001e0f00281400160b002010000e0700160b00
-0e0700160b00160b00060300180c00160b00160b001e0f000e0700301800180c00180c00
-2814000c06001e0f00180c00201000ffa54a160b00160b002814000e0700281400180c00
-140a00160b002e1700160b00201000160b00180c00201000281400301800281400301800
-201000180c001e0f003018001e0f00301800281400201000321900321900201000201000
-0e07002613002814002010001e0f00160b00201000160b002010001e0f002e1700ff9e3c
-ffa54a1e0f00160b00140a00160b002613000402000e07000e0700140a003219001e0f00
-1e0f00160b00201000180c00201000180c00160b000e07000e07003018000603000e0700
-160b00160b00140a00140a00140a00180c00281400160b00180c00180c00201000140a00
-180c00180c001e0f000c0600201000201000160b001e0f00160b00180c002613000e0700
-160b000e0700281400140a00160b00140a00040200160b00160b00281400060300201000
-160b00160b00160b000e0700180c002814001e0f00160b000402001e0f00160b00160b00
-160b001e0f000e0700201000201000180c00160b002010001e0f00180c002613000e0700
-0e0700160b000e0700140a002010002814000e0700160b00180c00301800140a000e0700
-160b000e0700140a00140a00201000160b00180c00180c001e0f00140a00301800140a00
-160b000e0700040200160b00160b00140a00140a002613002e17001e0f00261300201000
-0e0700160b00201000040200281400060300201000180c000402000e0700140a00201000
-1e0f00160b00140a00281400261300140a001e0f00201000ffa244060300160b00201000
-140a002613002010002e17002010001e0f003a1d00301800281400201000180c000e0700
-160b00ff9d3a160b000c0600140a000c0600321900201000
-0e0700180c00201000160b00160b00060300160b001e0f00140a00160b00140a00140a00
-060300160b001e0f00160b001e0f00201000180c000402001e0f00160b000e0700180c00
-201000180c003018000e0700180c001e0f00160b002613000c0600201000201000140a00
-180c00160b00180c00140a002613000e0700160b002814000e0700060300020100201000
-201000160b00160b00180c00160b00180c00160b00160b001e0f002010000e0700140a00
-ff9d3a160b001e0f00160b001e0f00160b003219002814003018003a1d00381c002e1700
-301800261300261300160b00160b000e07001e0f00ff9c38180c00180c001e0f001e0f00
-0603002010000c06000e0700180c002613001e0f00140a00140a00201000180c000c0600
-140a001e0f002010001e0f00160b00140a002814000c0600160b000c0600180c00060300
-0c0600180c00160b00180c002814001e0f001e0f002010002010002010002010001e0f00
-201000160b00201000160b00160b001e0f002010000603000e0700201000281400140a00
-0603000e07000e0700160b00281400060300201000160b00160b00180c00180c00ffa952
-160b00160b00160b002e1700201000381c00381c00542a00703800864300de6f00ff8a14
-ffbc78ffe2c4fffcf8fffcf8fffcf8fffcf8ffe6ccffcd9affa142f27900b85c00984c00
-7e3f005a2d005229004020004a2500201000301800301800160b00281400ffa142180c00
-180c00160b00180c000603001e0f000e0700160b000603001e0f00160b00201000140a00
-0e0700160b00160b00140a00060300140a00160b00180c00140a00140a00281400160b00
-160b00180c000e0700301800060300140a00160b00201000281400180c001e0f00140a00
-160b002010000c06000e07001e0f00ff9d3a180c00281400281400160b00261300180c00
-381c002e1700201000281400301800381c003018004020004221004020005e2f004a2500
-542a00381c004221004221002814003a1d004221002814002814002010000e0700261300
-1e0f00ffa1424020001e0f00160b00ffa142140a00160b000e0700160b000e0700160b00
-160b00180c00140a00180c001e0f00180c000e0700140a002e1700160b00020100160b00
-0e0700060300060300060300180c00160b00140a00140a00160b001e0f00180c00201000
-0e07000e07001e0f00180c00160b00180c00160b00180c00201000180c00281400140a00
-201000160b00160b000e0700060300ffa1421e0f00060300160b001e0f00160b000e0700
-301800160b00180c000e0700301800180c003018003a1d003a1d00261300301800261300
-2010003018003018003018004221004020002e17002010002814001e0f00180c00180c00
-261300261300281400140a00180c00180c00281400261300301800281400261300201000
-180c00ffa64cff9b36381c000201000c0600140a00261300140a00140a00160b00160b00
-140a000e0700160b002010001e0f00201000140a000603000e0700160b00160b00201000
-1e0f002010000e0700201000261300180c002010000e07003018002613000e0700180c00
-1e0f00201000160b00160b00160b00160b00180c000c06002010000e07001e0f00201000
-160b00201000180c002814001e0f00180c00261300160b00261300160b00281400261300
-160b00180c00261300261300060300160b000e07002010002814000e07001e0f00261300
-201000201000060300281400140a00201000281400160b00140a003018003018000e0700
-160b000c0600180c00140a00140a00180c001e0f00201000180c00140a00201000160b00
-0e07000e0700281400261300180c00160b00261300160b00160b00160b00160b00180c00
-1e0f000e07000c0600140a00040200281400160b00201000201000201000140a00281400
-160b00180c002010003a1d00040200180c002613002010000e0700160b00160b00261300
-0e0700140a000e0700160b00160b00381c00160b00140a000e0700ffa040180c00060300
-160b002010002e1700261300201000301800281400281400422100020100261300160b00
-0e0700ff9c381e0f000e07000e0700160b00140a00281400
-ff9b360e0700160b002814002814002814000c0600180c00201000201000140a00180c00
-0c06000e0700060300301800160b000e0700140a00201000160b00160b00160b000e0700
-160b001e0f000c0600180c002010002010000c0600180c002e1700160b00261300261300
-160b00180c002010002613002814003a1d00281400160b00160b000e07001e0f000c0600
-060300160b00020100180c002814001e0f000e0700060300160b002010003018003a1d00
-1e0f00ffa1420e0700180c00201000261300160b002010001e0f00201000381c00201000
-201000060300140a002010000e0700261300ff9e3c201000160b00140a001e0f00180c00
-0c0600140a00160b00160b00201000281400160b000c0600180c000e0700160b00201000
-140a000e07001e0f00180c00160b002814000e0700180c00060300180c00020100160b00
-0e0700201000180c000c0600160b001e0f00180c000e0700281400180c000e0700160b00
-1e0f000603000603000e0700140a000e0700261300160b00140a00160b000e07001e0f00
-060300140a00160b002613000402000603000e0700040200180c000c0600ff9932261300
-3018002010000201002e1700442200301800542a006432008a4500a45200ea7500ffa74e
-ffc890fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffdab4ff9d3aec7600b65b00904800
-6e37004c2600422100542a003018003018001e0f00201000201000180c00ffa54a201000
-1e0f000c06002010000e0700381c000201000e0700201000201000160b00281400140a00
-060300160b00160b00180c00160b002010000e07000c0600180c000e07001e0f00201000
-0c0600180c001e0f001e0f00160b00160b00180c000e07000c0600140a00140a002e1700
-1e0f00140a00160b00201000ffa1422010002010002814002814002814002010003a1d00
-2010004221003018003a1d004c26003219005c2e00381c00542a005e2f006432005c2e00
-4221004a2500301800442200ffa74e281400201000261300160b00180c00140a00201000
-0e0700fffcf8ffb1621e0f002e17001e0f00160b00201000180c000e0700281400281400
-2010000e07002010000e07002613000e07000e0700160b00160b00160b00140a00140a00
-160b001e0f00160b00180c000201001e0f001e0f00160b00060300201000160b00160b00
-180c001e0f00140a00180c000e0700140a00180c00201000160b00160b002010000e0700
-0e0700160b00160b000e0700140a00ff9830140a00261300201000160b00180c00201000
-201000140a00180c00201000140a000e0700201000301800180c003018003018004a2500
-281400321900381c003018002e1700261300321900321900301800381c002e1700201000
-2e17002814002814000c06002814000e0700180c00201000301800301800180c00201000
-140a00321900281400ffa1420e0700160b001e0f00261300321900180c002010001e0f00
-0e07000e0700160b001e0f000e0700160b00160b00160b002010000e0700140a00201000
-0e07002e17002010002814000e07002010000c0600160b001e0f000e0700160b00160b00
-180c001e0f00160b00201000180c00160b00201000160b001e0f002613001e0f00261300
-160b00261300160b001e0f00160b00160b00160b00060300140a000e0700201000160b00
-140a00160b002e17002613000c06002e17002613000402001e0f000e07000c0600281400
-140a000c06001e0f000e0700160b002814002814001e0f001e0f000e0700180c001e0f00
-281400281400160b00201000301800140a00140a00180c002010000e0700140a00160b00
-160b00140a000201002613000e07001e0f000e07000e07002e1700160b00140a00201000
-1e0f00180c00180c00180c000e0700160b002e17000e0700180c00140a00180c00180c00
-2613000c06002814001e0f002613000e07003a1d00301800180c00160b00160b00281400
-060300201000160b00140a001e0f00160b00261300160b00261300ff9932201000160b00
-201000201000180c00140a00301800281400281400281400160b00180c00261300140a00
-0e0700ff9d3a180c000e0700140a00281400180c00040200
-0c0600ff9d3a160b000e07000e0700201000140a001e0f00180c000e07000e0700140a00
-2010002814002010002010000c0600140a00160b00040200301800180c00060300201000
-0e0700180c00160b00160b00160b00201000160b00160b00180c00201000180c00180c00
-140a000e0700281400160b00140a000e0700160b00261300201000160b00160b001e0f00
-180c00160b00261300160b000e0700281400180c00180c000603002613002814001e0f00
-201000ff99320e0700180c00180c00160b001e0f003018002e1700160b00261300301800
-201000201000201000180c00201000ffa142fffcf8ffa74effa64c0e0700140a00180c00
-180c000e0700160b00160b00160b000c06001e0f002010000e0700180c002010001e0f00
-160b00201000381c00180c00201000301800160b002010001e0f000c0600160b00180c00
-1e0f000e07000e0700201000160b00160b00201000140a002010001e0f00180c000c0600
-1e0f001e0f000c06000e0700140a00201000160b00160b00020100180c00140a00140a00
-0c0600160b00160b00160b000c06002613002010000c0600060300ff9932140a00160b00
-160b000e0700281400281400422100381c005c2e008040008a4500b45a00ff850affba74
-ffe7cefffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffc78eff9932f47a00b259007e3f00
-6c3600522900422100321900402000281400281400180c001e0f00ffa54a201000160b00
-060300160b00180c00261300140a00160b00140a00180c00140a00060300140a00160b00
-2010001e0f002e1700281400281400180c00261300201000160b00160b00201000160b00
-160b00201000140a00160b002814000603002010001e0f001e0f000c0600281400180c00
-140a00201000261300ffa4480e07001e0f003018003a1d00301800180c00261300281400
-422100381c003a1d003a1d004422003a1d005e2f005229005c2e005e2f006e3700542a00
-6e37005229004c2600381c002010003018002e1700ffa74effa448ffa142180c00301800
-ffa0400e0700180c00160b00140a001e0f00160b000c06001e0f000c06001e0f00140a00
-0e0700201000160b00160b000c0600160b000e07000603001e0f00160b00040200180c00
-0603000e0700160b000402000e07002613001e0f00060300160b00160b000e0700180c00
-422100160b00180c002010000e0700160b00180c000c0600060300261300201000040200
-0e0700060300160b00160b00160b00ffa142281400160b00180c00201000201000140a00
-160b00160b00160b00140a002e17002613002e17002814002010003018003a1d002e1700
-4221003219004422003a1d003018004020004a2500422100301800381c00301800321900
-381c002e17002814002613002e1700281400261300281400281400160b003018001e0f00
-160b00201000140a001e0f00ff9c38ffa1420e0700381c002613001e0f00180c000e0700
-0c0600160b002613002010002e1700180c000e07000e0700201000180c00160b00261300
-0e07001e0f00180c00180c000c06000e07000603002010000e0700160b000c0600201000
-180c002010000e0700140a00140a00281400160b001e0f00180c001e0f00201000140a00
-1e0f00160b00261300201000160b00201000201000140a00281400261300180c00281400
-140a002e17000e07002e1700180c00160b002e1700140a00180c000201000c0600180c00
-201000180c000e0700160b00160b00301800201000160b002010001e0f00201000201000
-160b000e0700281400180c00160b00180c000e07000e0700281400160b000e07000c0600
-281400201000140a00160b000e0700180c001e0f002010002010002613000e0700281400
-0e0700180c00140a00140a00160b000603000603000e0700180c00261300201000201000
-2010002010000e07000e0700261300201000140a00180c000e07000c06002613000c0600
-160b002613002613002613000e0700180c00160b002e1700160b00201000ff9932160b00
-201000201000201000160b003018002814002814001e0f002010000e0700160b00281400
-1e0f00ff9d3a180c00301800140a001e0f00160b00180c00
-160b00ff9b36281400201000381c00160b00180c00180c000e07000e0700160b00281400
-201000201000160b00160b000c0600140a000e0700180c00281400281400180c001e0f00
-0e07003018002613001e0f00160b00201000160b000c06000e0700140a002613002e1700
-160b00160b00381c00140a002613000e07000603002613000e0700201000180c00160b00
-180c00140a00140a000c0600160b00180c001e0f00140a000e07002e1700160b000e0700
-0e0700140a00ffa54a2e1700281400160b00261300160b00160b00201000201000201000
-2010000e07002613001e0f00180c00ff9c38140a002814002e1700ffa244ffa142201000
-180c00180c001e0f00180c00160b00180c002010000e07000603000c0600201000160b00
-201000180c00160b00060300180c002010000e0700201000140a001e0f00160b00301800
-201000160b00201000201000160b00060300201000160b00180c000e07000e07000e0700
-180c001e0f00180c001e0f000e0700140a001e0f000c0600160b00201000060300180c00
-180c001e0f00261300140a00160b00180c002613000e07001e0f00ff9c382010001e0f00
-140a00140a003219004221004221005229005a2d00703800b25900c66300ff8e1cffd0a0
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffc386ff8f1ed86c00904800783c00
-643200522900301800201000321900201000281400160b00160b00ffa142160b00160b00
-261300140a001e0f00160b002010000e0700180c000603002613001e0f000e07000e0700
-201000180c002010000e0700160b00140a00160b001e0f00160b00180c00160b00160b00
-160b00281400201000140a00160b002010003219002613002010002010000c0600180c00
-3018000603000e0700180c00281400201000180c00201000422100281400381c002e1700
-3018004020004a25004c26005e2f004c26009048007e3f009249009048009048007e3f00
-6432005c2e004422004020002e17003018003018002814001e0f002010002010001e0f00
-060300201000201000060300261300180c000c06000603000e07002814000e0700140a00
-0e07001e0f002814000402001e0f00160b00140a00020100140a000201000e0700060300
-160b000e0700160b00160b000e0700160b00160b00160b000c06000e0700060300160b00
-0e0700060300160b002010002010001e0f00140a001e0f001e0f00301800020100180c00
-140a00201000160b00201000160b00ffa64c2e17002010002814000e07000e07000e0700
-160b00180c000c0600060300261300180c00301800281400301800381c00160b00261300
-3018004020004a25003a1d003a1d002e1700442200542a004c2600442200422100301800
-422100321900301800321900180c002613002613001e0f000e0700180c00140a00140a00
-1e0f00261300201000201000201000281400ff9c381e0f002613000e07002814000e0700
-180c002e1700160b00140a00180c00180c00160b00140a00140a00160b001e0f00060300
-160b00180c002e1700160b002613002010001e0f000e07000e0700180c00160b00160b00
-160b00180c002613002010001e0f00140a00140a002e1700140a00201000140a00160b00
-0c0600160b00160b00180c000e07000e0700160b001e0f001e0f000c0600281400281400
-140a00281400160b00160b002814000e07000e0700160b00140a00180c001e0f000e0700
-180c001e0f00140a002010002613000e07000e07000c06002010001e0f002814000e0700
-160b001e0f000e07002010002010000c0600160b00160b001e0f00160b00180c00201000
-0201001e0f003018002613002010000e0700140a00160b000e0700180c00160b00140a00
-2010001e0f00180c002814000e0700281400261300140a00201000160b00201000201000
-2814000e07000e0700140a002814000e0700140a00060300160b00160b00201000140a00
-180c000e0700201000201000160b00160b00160b001e0f000e0700160b00ff9428281400
-0e0700201000180c00201000160b00160b000e07001e0f00180c00261300160b000e0700
-140a00ffa040201000180c00201000160b002e1700160b00
-160b00ffa244140a00180c001e0f000603000e07000e0700180c00160b002e17001e0f00
-0e0700201000180c00160b00201000201000060300160b00060300160b00160b00020100
-2010000603002010000e0700180c00060300160b00201000160b00201000180c00201000
-2e1700140a00140a00160b00180c00160b001e0f00160b00140a00140a002010000c0600
-1e0f000e0700160b001e0f00180c001e0f000e0700040200160b00160b002010000c0600
-0e0700180c00160b00ff9c38160b00180c00180c00180c00160b00140a00180c00160b00
-281400160b00301800201000fffcf8180c00201000261300201000281400201000ffa448
-0c0600160b000c0600180c000e0700281400140a00281400180c00160b00180c00160b00
-160b00140a00160b00160b001e0f00060300180c00180c00180c00180c00261300160b00
-1e0f00140a00160b002010001e0f00201000180c00160b000e0700201000160b00201000
-180c00020100201000160b000e07002613002010000c0600160b00140a00020100060300
-0e07000c0600140a00060300160b00060300160b00060300160b00ffa0401e0f00180c00
-2e17005229001e0f003a1d00422100542a00643200884400b45a00f27900ff9932ffd5aa
-fffcf8fffcf8fffcf8fffcf8fffcf8fffcf8ffe2c4ffba74ff850aaa55008a4500763b00
-5c2e004c26004020002814002e1700180c001e0f00281400ff9e3c180c00160b00160b00
-0c0600261300160b00180c00140a000603000e0700281400180c00060300281400201000
-1e0f00201000160b002010000c06000e07000e0700160b00261300140a00201000201000
-261300201000160b00261300201000180c00180c000603002613002613000e07001e0f00
-160b00281400281400281400160b00160b002010001e0f002814003018002e1700442200
-4a25004020004a25006e37007e3f007e3f00984c00be5f00ac5600bc5e00984c00864300
-783c005c2e00542a004a25002814002613002010002010003018001e0f002e17001e0f00
-160b002e17002814000e0700140a00201000160b00140a00201000160b00160b00201000
-1e0f00160b000e07000e07001e0f00160b000603000e0700180c001e0f00140a001e0f00
-180c000e0700180c000e0700160b002010001e0f000e0700060300140a002010000e0700
-281400160b00140a00281400180c00160b000c0600180c00140a00180c00180c000e0700
-180c002010000201003219001e0f00321900ffa244201000140a001e0f00281400281400
-160b00301800060300160b002010003219002010002814003018003a1d003a1d00281400
-4221003a1d004020003a1d004422003219003a1d004a2500542a004c26004221004a2500
-4221003a1d003219003a1d004221001e0f001e0f00281400180c003a1d00160b00281400
-0e0700261300160b002613001e0f00180c00301800ffa4481e0f002010001e0f00140a00
-1e0f00160b002010000c06001e0f000e0700140a00180c00160b00201000261300140a00
-1e0f00160b00160b002010002814000e07000e07002010001e0f00160b00180c001e0f00
-160b00160b00160b00160b00160b00160b00201000140a002613001e0f002010000e0700
-060300160b00160b002e1700060300140a000c0600160b00160b000e0700140a000c0600
-261300060300201000160b00201000180c00261300160b00160b00381c00160b00180c00
-0e07002010002814001e0f003018001e0f00201000201000301800140a00180c00201000
-2e17002010000e0700060300180c000e07000e07000c0600281400201000160b000e0700
-180c00160b00160b00180c002814001e0f00160b00160b000e07001e0f000e0700160b00
-140a00160b00160b001e0f00281400160b002814001e0f00180c002613001e0f00201000
-160b00281400261300180c00180c00060300140a00160b000e07000e0700281400180c00
-0e07001e0f00160b00160b000c06002010002613001e0f002814000c0600160b00ff9d3a
-140a002010000e07002e17003018000e0700160b00281400180c000e0700180c00261300
-ffa9520e0700140a00180c00060300160b00180c00060300
-0e0700261300ff98302010002010002010002010000e07000603001e0f00140a00060300
-1e0f000402000e0700140a000c0600140a00160b00160b002e1700160b001e0f00060300
-301800180c00140a00201000160b000e07001e0f00160b000e0700180c00040200140a00
-0e07002010000e07000e07000e07001e0f000e0700180c00180c002814000c0600020100
-160b002010002010001e0f00281400201000040200201000160b000c0600281400160b00
-160b00180c00201000180c00ffa448ff9b36180c001e0f00281400140a00140a001e0f00
-0c0600ffa244ff9e3cffa142ffad5a180c002010002010001e0f002814002e1700180c00
-ff9b36160b00180c000e0700160b001e0f00140a001e0f000e0700140a00180c00261300
-160b00140a00160b000e07000c06001e0f00160b002010003018000c0600180c00201000
-1e0f00140a000603002010000c0600160b001e0f002010001e0f000c06002814000e0700
-0e0700140a000c0600140a00201000180c00180c002010000402002010000e07000c0600
-140a00180c00160b00020100201000020100160b000e0700ff9e3c060300160b00201000
-2010002814004020004221003a1d006633007e3f00884400bc5e00ff8102ffa448ffd7ae
-fffcf8fffcf8fffcf8fffcf8fffcf8ffebd6ffca94ffa040e47200ac5600763b005e2f00
-5a2d003a1d003018002814001e0f003219003018001e0f00ffa952160b000603000e0700
-140a000e0700060300180c00140a00160b00180c00180c00160b00281400160b00140a00
-060300180c002010000e0700201000140a002e1700281400160b00160b000e07003a1d00
-2e1700160b000e0700180c000e0700060300160b00261300281400201000180c00180c00
-0c0600261300ffa74e160b002814001e0f00160b00301800381c003a1d00321900301800
-4221006633004c26005c2e008040009c4e00ca6500f67b00fe7f00e87400e07000a25100
-763b005c2e00281400381c002e1700281400281400180c00160b00201000201000261300
-160b00ff9b360e07000e0700140a000e0700160b00140a00160b000e0700160b00160b00
-261300180c001e0f000c06002010000e07000e07000e07000c06000201000603001e0f00
-0c06000e0700281400160b00160b000e07000c0600180c001e0f000c06000e0700180c00
-0201000402000e0700160b00160b00160b000c06001e0f000e07002e17001e0f000e0700
-0603001e0f000e0700180c002010001e0f00060300ff9d3a180c000e0700261300160b00
-160b00060300140a00281400160b00180c00201000321900201000321900301800381c00
-3018003a1d003a1d004422005a2d004020005c2e00402000422100542a004a25004c2600
-5229005a2d00381c003a1d00381c002e17003018002814000e0700160b00281400160b00
-140a00281400281400201000140a00261300201000201000ffa142040200160b00160b00
-160b000e07000c0600160b000e07001e0f00261300160b000e0700160b00160b00201000
-160b00261300160b00180c00160b00180c000e0700140a00060300201000140a00140a00
-160b001e0f000c0600281400160b001e0f00160b00201000201000160b00140a00281400
-2010002613002e1700180c00180c000e07000c0600201000201000160b00261300160b00
-0e07002010000c06000e0700261300180c000e0700180c00160b00201000201000140a00
-160b002010003219000e0700160b00201000180c002010001e0f00180c000e0700160b00
-180c00140a00160b001e0f00160b00180c00160b00140a00140a00201000140a00281400
-180c00160b00281400160b000e07001e0f00281400180c00020100180c00201000140a00
-1e0f00160b00160b00140a00140a00140a002613001e0f00180c002613001e0f00160b00
-160b000e0700140a00160b000e07000e0700140a00180c00140a00180c00281400060300
-2814001e0f001e0f00160b000e07002010000e07001e0f00140a00160b00160b00201000
-ff9c382010002814002010000c0600140a00160b00180c002814002010002814001e0f00
-ffa040180c002613000e07001e0f00160b00160b00180c00
-2613001e0f00ff9d3a160b001e0f00180c001e0f00201000160b00160b00160b00160b00
-1e0f002e17000e07000e07001e0f00160b001e0f00160b001e0f00281400140a00201000
-281400140a000c06002814002e17000e0700201000201000160b00160b000e0700281400
-2010001e0f00281400201000140a00201000140a000c06002010002613002e1700060300
-180c001e0f000e0700140a00180c00201000180c000c06000e0700201000180c00140a00
-0e07002814001e0f00180c002010000e0700ffa952ffa142ff9b36ffa244ffa040ff9e3c
-ffa1420e0700281400140a00160b00ffa448180c002e17002e1700261300281400281400
-ffa040381c00180c001e0f00180c000e07002613002613000c0600160b00281400422100
-160b00160b00160b00160b001e0f00180c00180c001e0f000e0700160b00261300201000
-0e0700180c00160b00180c00160b00060300160b000e0700020100160b001e0f00201000
-2010002613000c0600180c00160b00160b00160b00140a00180c001e0f001e0f00040200
-0c0600060300060300160b00281400160b00180c000c0600ffa64c281400160b00281400
-2e1700381c00381c00422100542a005a2d00643200904800ac5600ea7500ff9932ffc488
-ffe6ccfffcf8fffcf8fffcf8ffeddaffcc98ffa74efc7e00b85c009c4e00783c00522900
-542a003a1d002e17002e1700261300281400281400ffa040180c00201000281400201000
-0603001e0f001e0f00140a00160b000e07001e0f00160b000e07002010000e07000e0700
-281400201000140a000e0700281400040200180c000e0700160b000e0700160b001e0f00
-180c001e0f00160b00180c000e07001e0f00180c00281400140a00180c00261300301800
-160b00ffa244201000160b002814002010001e0f00201000281400160b004422004a2500
-3a1d004a2500643200763b00a25100be5f00ec7600ff850aff8306f67b00de6f009e4f00
-763b005a2d004221004221002613003018002814001e0f00201000140a000e07000e0700
-ff9d3a160b002814000e0700180c00040200140a00160b000e07000e07000e07000e0700
-140a00060300160b00140a000e0700261300201000060300180c00060300160b00160b00
-060300160b00180c00201000160b00281400180c00201000140a000c0600140a001e0f00
-180c00201000140a00140a00180c00201000060300160b000e07002814000c06000e0700
-160b00140a00160b002010000c06002e1700160b001e0f00ffa64c0c0600140a00140a00
-1e0f00201000160b000c0600140a00180c003a1d00381c003018002e1700301800321900
-2010003219004a25004c26005229005c2e006432005c2e005e2f005c2e00522900542a00
-542a00542a004a25004020003219003a1d00301800281400321900301800160b00201000
-2814002814002814001e0f00301800201000160b00140a00140a00ffa64c180c00140a00
-0603002010002814001e0f002010002010002010000e07000e07001e0f00261300160b00
-261300160b000e0700180c001e0f000e0700180c002010002e1700180c000e07000e0700
-0e07002814002814002010000e07002010000603000e0700160b000e07002814000e0700
-0e0700201000180c000603000e07002613001e0f000603002010002010002e1700281400
-160b000e0700160b00160b000e07002010002010000e07003018000e0700180c00140a00
-1e0f002613001e0f000e0700201000140a002613000c06002010002010002814001e0f00
-0e07001e0f00160b00160b00140a00160b00140a00261300201000201000321900281400
-160b00180c00160b00140a002814000e07000e0700160b00160b00301800160b00140a00
-2010001e0f000c0600160b00160b001e0f001e0f002010002010001e0f00201000180c00
-1e0f00160b000e0700160b002010002814002010000e0700160b00201000160b00180c00
-160b00160b00261300201000281400160b00060300180c002010000c0600160b00140a00
-ffa0402010002010002010002010000603002814000c06001e0f00140a002010000e0700
-ff9932140a00160b00020100160b000c06001e0f000c0600
-180c00160b00ffa54a140a00180c00201000160b000e07002613002010001e0f00201000
-0c0600201000160b00160b00160b000e0700060300140a000c06000e07002814001e0f00
-2010000e07000603000e07000e0700160b000e0700160b001e0f00180c00180c001e0f00
-1e0f00160b00140a00160b003018001e0f00180c000603002814000603002010000e0700
-0e0700201000160b002814000e0700160b002814000e0700160b001e0f00060300201000
-180c00140a00201000160b001e0f00261300160b00160b00040200160b00160b00261300
-0e0700201000160b00201000160b00ffa0402010002e17001e0f003219002010001e0f00
-301800ffa0401e0f002814002010002010002010000e0700261300201000201000140a00
-2010002613001e0f00140a00160b002e17000e07000c0600160b000e07000e0700201000
-020100160b002010001e0f00140a00140a00261300180c001e0f00060300180c000e0700
-140a00160b002814000c06000e0700160b00180c00160b002010001e0f000e0700020100
-160b00140a00261300180c00160b00180c000c0600ff9326160b000e0700201000301800
-4020003a1d00381c004a25004c26006c3600864300904800b65b00ea7500ff8f1effaa54
-ffc58affd9b2ffddbaffd0a0ffb76eff9e3cfc7e00b45a00984c006e37005a2d005c2e00
-3018004020002814002814002010002010000e0700ffa448160b00201000180c00160b00
-1e0f000e0700201000160b00180c000e0700201000180c00201000160b001e0f00140a00
-1e0f002814000e07000c06000e07000e0700160b00160b00381c002814000e0700381c00
-160b000c0600180c000e0700160b00301800160b00160b002613002010002613001e0f00
-1e0f00ffa54a3219002e17002e17003018002e1700301800281400381c003018004c2600
-522900643200703800904800a25100be5f00ea7500fa7d00f67b00f27900c46200904800
-6e37005c2e003a1d00381c002613002814002613000c06002814001e0f00180c00160b00
-160b000e07000c0600180c00060300180c00060300281400160b002010000e0700160b00
-201000060300060300040200160b001e0f000603000e0700040200180c00060300140a00
-140a000c06002010002010000c06001e0f000c0600180c000e07001e0f000e0700201000
-2814002814001e0f00201000160b000e0700201000281400060300160b000e0700020100
-180c001e0f000603000e0700160b001e0f00201000160b000c0600ffa448160b00160b00
-0e0700201000201000060300180c002814000e0700160b004020002010003219002e1700
-4020002814004422004221004c26005229004a25005229004221004a2500542a00542a00
-542a005c2e00522900542a005229003a1d003018003219002613001e0f002010000e0700
-0c0600140a00201000180c001e0f00261300020100160b00160b00261300ffa54a281400
-160b000603002010003018000e0700160b00201000281400201000180c00180c00160b00
-0e07000603000603001e0f00060300201000180c001e0f00180c00140a002010000c0600
-140a00201000180c001e0f00140a00160b000e0700160b00201000180c00040200201000
-180c00180c00160b00180c00160b00160b00160b000e0700180c000e0700160b00180c00
-1e0f002814000c06002613002613001e0f002e1700180c00281400180c001e0f000e0700
-140a002613000e0700281400160b00160b000e0700140a00201000180c00160b002e1700
-1e0f00180c00180c002e17000e0700381c00201000160b002814002e1700160b00261300
-281400281400201000180c00180c00180c001e0f002010000e0700140a00160b00281400
-201000180c000201000e0700180c00140a00180c000603001e0f002e1700160b00180c00
-2814002e1700160b00160b00180c00261300160b002010000e0700160b00140a00180c00
-1e0f00160b00160b000c0600160b002010001e0f00180c00140a000e0700261300160b00
-160b00ff9932ffab56140a000e0700160b00201000201000160b002010002e1700ff9c38
-2814000e07000e0700281400261300160b00020100281400
-4020000c0600ffaa540e07000e0700201000140a002010001e0f00160b00180c000e0700
-1e0f00180c001e0f00180c00160b00261300160b002010002814003018000e0700160b00
-140a00160b001e0f00140a001e0f00160b00180c00180c002814000e0700160b001e0f00
-261300180c00201000180c00281400160b00140a001e0f002814001e0f002010001e0f00
-281400160b002814003018001e0f000e07000e07000e07002010000c06000e07000c0600
-1e0f00180c00160b00060300160b00060300261300160b00180c000e0700261300201000
-1e0f00160b00160b00180c00180c00060300ff9c382814002010001e0f00422100180c00
-160b00ffa244160b00160b00180c00201000160b00201000281400160b00160b00160b00
-261300180c001e0f00140a000e07001e0f000e07001e0f00180c001e0f00261300160b00
-160b00140a00281400160b00160b00201000281400301800180c002010000e0700160b00
-261300160b000c06000c06000603002814000603000c0600160b002010000c0600160b00
-281400020100160b000e07000c0600160b00201000ff952a180c00160b00201000201000
-4221004a25003a1d004a2500542a006432009a4d009a4d00b85c00e87400ff850aff9830
-ffa448ffaa54ffb162ff9d3aff9326ff8102de6f009e4f007e3f005e2f00522900402000
-301800201000301800301800261300160b00ff9932180c001e0f002010001e0f00160b00
-180c00160b00201000160b000c0600140a00160b000e07000e07002010001e0f00281400
-180c00201000140a000c0600201000201000261300140a00201000261300180c00201000
-180c00140a00261300261300180c00160b00160b001e0f002010002e17002613001e0f00
-261300281400201000180c00201000201000180c00321900301800381c004a2500522900
-5a2d00542a006432006e3700924900aa5500e07000d06800ce67009c4e00904800643200
-5a2d003a1d004221004422002010002e1700180c00180c00160b00160b002e1700261300
-160b002010000c0600160b001e0f00180c00160b00261300180c001e0f00160b000e0700
-180c00180c00140a00160b00160b000603000e0700160b00160b00180c001e0f00040200
-0603002010002010000e0700201000180c001e0f00160b001e0f00140a00201000281400
-1e0f00301800140a001e0f00180c000e07002814001e0f00160b00140a000e07002e1700
-0c0600ffa040ff9428140a00160b00201000180c000402000e0700160b00fffcf8180c00
-2010000e0700140a002010000c06000e07001e0f00180c003a1d00180c00140a001e0f00
-201000321900201000422100542a00542a004422004422004c26004a25004a2500522900
-4422004221004221003a1d004422004a25004a2500301800261300281400201000301800
-180c000e0700201000160b00201000140a00160b00160b00180c00281400ffa244180c00
-0e0700160b000603002814000e0700301800020100201000020100180c00180c00281400
-321900060300160b00140a002010001e0f00201000160b001e0f000603002613000e0700
-180c00261300160b00160b00060300160b00281400140a002010002010002e1700160b00
-160b00180c00201000180c00281400140a00261300281400160b000e0700140a00201000
-281400140a00281400180c00201000261300261300160b002010001e0f00160b00160b00
-140a000c06000e07002613003a1d00160b000e07000c0600160b001e0f00301800261300
-140a002010002613000e07000603001e0f00201000261300201000160b001e0f00180c00
-060300201000140a00160b00160b00180c000e0700140a00201000180c002010001e0f00
-1e0f001e0f002e1700160b000e0700281400201000281400201000160b00160b00160b00
-180c002814000e0700160b00201000180c00201000160b00160b000e0700201000281400
-0c0600180c00201000160b000c0600180c000e0700261300140a00160b001e0f00201000
-0e0700201000160b00ffa952201000261300140a00160b00180c000e0700ff9e3c201000
-2814002814001e0f000e0700040200040200160b001e0f00
-140a00160b00ff9c38261300160b00201000160b002010000e07000201002010003a1d00
-180c00281400201000160b00160b00140a00201000160b00180c00201000180c003a1d00
-0e07000603002010000e07002814000c0600160b000c0600160b00201000261300180c00
-0e0700160b000e0700160b00180c00160b00201000281400201000180c00201000201000
-0e07000e07001e0f000603001e0f00261300201000060300201000160b00140a00140a00
-1e0f000c06002010000e07000c0600160b000e07000201000e0700140a002613000c0600
-2010001e0f00180c00160b00201000160b001e0f00fffcf82814000e0700261300180c00
-160b00ff9b36160b00301800281400301800060300180c00180c00160b00261300160b00
-140a00140a000e0700261300201000140a000c06002010000e0700140a00201000160b00
-180c001e0f002e17002814000e0700201000140a00140a00201000261300201000201000
-261300180c00201000160b00060300180c00180c000e0700160b001e0f00140a00160b00
-180c00040200160b00140a00160b001e0f00ffa040060300180c002814002814003a1d00
-2e17004221004221004422005229007e3f009048009c4e00be5f00d86c00c66300f47a00
-ff860cff9326ff870efc7e00ec7600ce67009a4d009c4e006633005e2f004a2500422100
-422100281400321900301800301800281400ffa64c0e0700160b00160b00261300180c00
-140a000e07000e0700160b00060300160b000e0700180c00160b002e1700160b00201000
-0e07000e07001e0f00180c00160b00160b001e0f00201000140a00160b00261300180c00
-261300201000261300201000201000281400140a00281400140a00140a00301800140a00
-160b002814002010002613001e0f004a2500281400301800301800381c003a1d00321900
-4a25004a25005a2d00643200924900804000904800aa5500984c00763b005a2d004c2600
-402000381c002814002010002613001e0f00201000160b00180c00160b001e0f00201000
-160b002010000c06000e0700140a00140a000c0600020100160b000603001e0f00180c00
-0e07002010000e0700140a000603000e0700180c00160b000e0700201000201000140a00
-0e0700160b00160b000e07000e0700160b00140a001e0f00160b00160b00060300261300
-0603002010000e07000e0700160b000c0600160b00160b001e0f00160b00140a00ffa54a
-ffa64c201000281400ff9932ffa040180c002e1700281400160b00201000140a00ffa54a
-2010003018001e0f00201000160b00140a002010001e0f00201000281400180c00201000
-180c002814003a1d003018003219002814004a25005c2e00402000381c003a1d00402000
-3a1d004020005c2e004020005229004221003a1d004221002e17003a1d00301800301800
-160b00201000201000261300160b00160b002613002613002613000e0700201000ff9e3c
-2010001e0f00140a001e0f001e0f00160b00160b00140a00160b00261300160b00261300
-261300201000160b002e17001e0f000c0600201000140a00160b00160b00201000160b00
-0e0700261300180c00180c00160b00180c000e0700160b00201000160b00201000201000
-160b00180c00160b00201000281400160b001e0f00140a00160b00201000261300261300
-140a000e0700201000140a00160b00261300160b00321900281400180c00201000201000
-2010002e1700201000201000180c001e0f00160b00180c00160b000e0700140a00261300
-2010002613000e07001e0f001e0f001e0f00180c00160b00201000180c001e0f00160b00
-2010000e07002010000e07002010002814002010000e0700140a00201000201000140a00
-2010000e0700160b00261300160b00261300160b00201000201000140a00160b000e0700
-0c0600140a002814002010000e0700060300201000160b00160b000c0600140a00160b00
-0e0700180c00160b00201000140a002010000e0700060300160b00160b000e07000e0700
-140a00160b00281400281400ff9e3cffa54affa040ff9932ffa54affa64c201000140a00
-040200261300180c00160b000e07001e0f002010002e1700
-160b00060300ff9c381e0f00160b00140a00160b000603000603000e0700160b00281400
-160b000e07001e0f00060300140a00301800160b00160b001e0f00261300160b00060300
-261300180c001e0f003018001e0f00180c001e0f000e0700140a000e0700140a00160b00
-2e17002613001e0f002e1700180c00160b002010002613000603000e0700160b000c0600
-160b002010000c0600180c00180c002010002814001e0f002010002010000e07002e1700
-2010000e07000e07000603000e07000e07000e07000201000e0700160b00261300180c00
-0e07002010000e0700140a000c0600140a00160b00180c00ff9830ff9932180c001e0f00
-ffa74e180c000e07000e0700140a001e0f00140a00160b00160b00201000160b000e0700
-0e0700160b00261300160b000c06002814001e0f00201000160b00160b001e0f002e1700
-160b00261300160b00160b00180c00180c001e0f002613000c0600281400060300201000
-140a001e0f00160b00160b000e07002613000c0600201000160b001e0f000e0700160b00
-0e0700160b000e0700180c002010001e0f00ffa1422e17000402002010002814001e0f00
-3a1d004221004422006e3700663300763b008a45009c4e00aa5500ac5600d86c00f67b00
-ec7600f27900ca6500be5f00b45a00a45200984c00783c006432005a2d00402000261300
-160b002814002613002e1700180c00ff9e3c060300261300160b00160b00140a00060300
-160b000e07000603001e0f000e07000c0600160b000603000c0600140a00140a001e0f00
-0e0700140a00180c00160b00261300261300261300201000160b002e1700261300201000
-180c00160b00281400281400160b00281400201000261300201000261300261300180c00
-281400ffa74e2613002010002814002e1700281400301800422100301800301800321900
-4a25003018005229005229006e3700783c006432008040005c2e004a2500663300522900
-381c002814002613002010002e1700281400180c00281400381c00261300ffa1422e1700
-180c000e0700201000020100140a00140a00020100160b00180c00160b000c0600140a00
-201000201000020100140a000e07000e07000e0700140a000603001e0f00140a000c0600
-0603000c06000201000e07000201002010000c0600160b000e0700160b00140a001e0f00
-261300160b00201000140a00140a00281400180c00140a000c0600160b00ff9932201000
-2010000e07000e07001e0f00160b00ffaa54180c00060300160b00180c00160b00140a00
-ff9e3c0e0700040200140a00180c00281400160b002010000e07001e0f00281400281400
-160b000e07003a1d00160b00201000301800321900381c00160b003018004c26003a1d00
-3a1d003219004221003219003a1d003a1d004a25002e1700281400301800201000281400
-301800261300160b00160b00180c002010000e07000e0700201000201000140a00ff9e3c
-0e07001e0f00160b001e0f00140a003018001e0f001e0f002010000e0700180c000e0700
-281400140a00180c000603001e0f002814000e0700140a00160b00060300160b001e0f00
-160b001e0f00180c00160b00060300160b00160b000c0600180c00140a000e07002e1700
-0e07001e0f00281400180c002613002814000603000e0700180c00180c00281400140a00
-160b00160b00140a00180c00281400261300180c00180c00180c002814001e0f00160b00
-180c00201000160b002010002010000e07000e0700201000160b002814000c0600160b00
-1e0f003018000c0600160b00301800160b00160b00160b00160b00281400160b00261300
-0e07001e0f002814001e0f00201000140a00180c00160b00261300160b00160b00201000
-0e0700201000060300281400201000201000180c00140a002010002814003018001e0f00
-160b000603001e0f000e0700160b00180c002010001e0f00160b00020100160b00160b00
-2010001e0f00180c00201000160b00160b00140a000e0700180c00140a00261300180c00
-160b00180c002613000c0600281400201000140a00180c000603000e07001e0f000e0700
-0e0700140a00160b000e07000c06000e0700160b001e0f00
-160b00160b00ff9d3a201000160b00160b00180c00201000160b000c0600201000160b00
-180c00160b000e07000e07002613002010000e0700160b00201000020100160b00201000
-2010000e0700180c001e0f00180c00201000160b00160b00201000301800301800180c00
-180c001e0f001e0f00180c00160b00281400140a00160b000e0700201000140a001e0f00
-180c00160b001e0f00140a00281400140a00160b000e0700180c00040200140a00201000
-201000301800160b00060300160b00160b00261300140a00201000201000160b00020100
-160b00281400160b00180c00140a002010000201001e0f001e0f00140a00ff9d3aff9c38
-180c00180c000e07001e0f002010000e0700140a00180c00160b00201000180c00060300
-140a00160b00201000180c00180c000c0600040200201000160b001e0f00201000060300
-160b00180c00201000301800281400160b00160b000603000e0700180c00160b000e0700
-1e0f00160b002010001e0f00180c000c0600160b00040200160b00281400160b00160b00
-060300160b002010001e0f00060300180c00ff9d3a2010002e17002814003018003a1d00
-2e17005a2d006432005c2e007e3f00763b00884400984c00aa5500b25900d26900be5f00
-be5f00c66300b25900ac56009c4e008643006e37007038006633004c2600422100301800
-3018002613003018003018001e0f00ffa64c0e07000e07002010000c06001e0f00140a00
-180c001e0f00160b00381c00140a000e07002010000e07001e0f00180c000603000e0700
-281400201000180c002010002814001e0f000e07000e0700060300201000160b00160b00
-180c00160b002010000c0600261300160b00180c00180c001e0f000e07000e0700201000
-2e1700ffa448201000201000180c002010003a1d00301800160b00301800381c00281400
-261300422100321900442200522900542a004a25005a2d005a2d00542a00422100422100
-2814003018003a1d00381c003018003a1d002010001e0f00140a00ff9c382010002e1700
-201000261300040200180c00060300180c00140a000603000e07000603000c06000e0700
-160b00060300160b00261300160b00140a00140a00160b000e0700201000180c00201000
-180c000603000e0700020100140a000e07000e0700180c00140a001e0f00201000060300
-180c001e0f00160b000c0600140a002010000603000e0700180c00fffcf82010002e1700
-201000180c002613002010001e0f00160b00ffa9521e0f002e1700261300180c00040200
-201000ffa64cff9932160b002814002010000e0700160b001e0f001e0f00201000201000
-281400201000140a003018004020002814002814003219002814001e0f00381c002e1700
-3a1d00301800381c003a1d003219003a1d00281400402000281400281400281400281400
-2814002613002010002010002613002010000e07000e07002e1700281400140a00060300
-ffa0401e0f002010001e0f001e0f00060300160b001e0f000e0700180c001e0f000e0700
-201000160b002010001e0f00020100180c00140a002010000e0700180c00160b000c0600
-140a001e0f002613002010000e0700180c000603000e0700180c002e17001e0f002e1700
-0e07003018001e0f00160b00160b00140a00160b00261300160b00160b000e0700201000
-0c0600160b002613002814001e0f002010002010002e17001e0f001e0f002e1700140a00
-281400261300301800201000140a001e0f00201000160b00180c000e0700281400160b00
-1e0f00140a00160b00180c00261300160b00160b00140a00160b001e0f002814002e1700
-0e0700140a002e1700201000160b002e17003018002e1700160b00140a00180c000e0700
-0e0700261300160b00201000160b00140a002010002613001e0f00160b00160b00261300
-201000160b000e0700201000140a00060300160b000e0700160b002e1700261300060300
-2010001e0f00261300140a00160b00180c000c06001e0f002010002613003018000e0700
-140a00281400160b000e0700180c00160b00160b000c0600160b00140a000e07000c0600
-160b000603002010000e0700201000160b00201000180c00
-0c0600ff9d3a160b00160b001e0f00140a00140a00201000140a002613000e0700160b00
-160b00281400160b002010000e0700180c000e0700160b002010000c06000e0700261300
-160b00180c00201000201000160b002010001e0f00160b000e0700180c00160b00180c00
-180c001e0f002010003018000e0700160b00301800180c00281400160b00201000160b00
-ffa74eff9d3affa040ffa54a160b00160b002010001e0f000e0700060300201000381c00
-160b000603000e0700180c00140a000c0600160b000e0700180c003018002010001e0f00
-0e0700180c00020100160b00160b00160b00140a000c0600160b001e0f00140a00060300
-2613002010000e07000603000c06000c06001e0f00160b00180c00180c000e0700180c00
-201000180c00201000140a00160b00160b002e17000402000e0700180c001e0f00160b00
-261300201000060300180c00160b00261300160b00140a00201000160b00160b00201000
-1e0f00060300160b00180c000e0700180c00160b00140a00201000281400160b00060300
-180c00160b000e07000c0600060300ffa0401e0f000e0700160b001e0f00201000301800
-4020004a25004a2500643200703800904800924900904800aa5500aa55009e4f00a25100
-bc5e009a4d00924900763b007e3f005a2d006432005a2d004a2500422100422100281400
-2e1700201000160b00160b00ff9d3a281400160b002e17001e0f002e1700060300140a00
-160b00281400160b00180c000603000e07001e0f00180c000e07000603000e0700201000
-2e1700180c00140a001e0f001e0f00180c000e07000e07000e0700261300281400201000
-060300160b00160b00201000160b00160b001e0f002010003018000e0700160b00281400
-160b00201000281400201000201000160b002613002613002613001e0f00180c00281400
-4020002613004a25003a1d003a1d003a1d004020004422004a25004020003a1d00261300
-3018002010001e0f000e07002010000e07001e0f002814002613002e17001e0f00180c00
-140a002e17000c0600060300160b00180c001e0f000c0600140a000e07001e0f000e0700
-180c000e07000c0600160b000603000e07000402000e0700160b00160b00160b00060300
-140a00261300201000160b001e0f00160b000e07000e0700140a001e0f000c0600ffa142
-ffa040ff9932ff9d3a0e0700160b000e07001e0f001e0f00ffa142140a002814000e0700
-2814002e17003219003a1d00201000281400ff9c380e0700160b000e07001e0f00160b00
-160b00160b00020100ffa64cffa64c201000261300201000201000060300180c001e0f00
-160b002e1700180c00140a002814002010002e1700281400261300281400301800201000
-301800160b00422100381c00301800321900301800281400301800261300160b00261300
-180c002613002010002814002814001e0f002010000e07002010000c06001e0f00160b00
-ffa9520e07000e0700261300160b00281400140a000e07002010000e0700201000201000
-160b002814002010001e0f002814002010000c06003219000c0600160b00160b00140a00
-160b00281400140a00160b00140a000603001e0f000e0700160b00180c00201000261300
-140a00201000201000140a000603002010001e0f00060300160b000c06002010001e0f00
-201000180c000e0700201000180c00160b001e0f000e07002010002e1700160b004c2600
-160b00160b003219001e0f00201000180c000c06001e0f00201000140a00160b000e0700
-281400160b00281400060300201000261300040200160b00160b00180c00160b000e0700
-180c000e07002e1700020100160b000e07000e0700281400160b00281400160b000e0700
-0e07002010000c06002613002010002613000e0700180c00160b000e07000e0700180c00
-0e0700180c00281400201000201000140a002010002e1700261300160b00281400060300
-180c00201000261300160b001e0f000e0700140a00160b002010001e0f001e0f00201000
-0e07000c0600060300060300180c000e07000e07002e17000603002010000e07000e0700
-201000261300160b001e0f001e0f000e07004221000c0600
-0e0700ff99321e0f00281400140a00180c001e0f000c0600160b00180c00201000060300
-0c0600160b00180c00160b000e07002613001e0f000e0700160b00180c00201000140a00
-0e0700301800160b00201000281400180c002814000e0700140a00180c00201000201000
-1e0f001e0f00160b002010001e0f002613000e07001e0f00180c001e0f00261300ffa244
-0e07001e0f00160b001e0f00ffa0401e0f00140a00160b00201000140a00160b00201000
-2814000e0700160b000c0600140a00160b002010000e0700160b00160b00281400060300
-2814002814002010002010001e0f00160b002814003018001e0f00281400160b00020100
-2e17000e0700060300140a00160b000e0700160b00160b001e0f00140a00160b00281400
-201000160b001e0f002e17000c06002010000c06002010002010002010000e0700140a00
-0e07001e0f00040200160b000e0700140a001e0f00201000160b00060300060300180c00
-281400140a00160b00281400160b002010002010000e07000e07001e0f00160b00160b00
-0603000e07000c0600140a00261300ffaa54321900180c001e0f003018003a1d002e1700
-4a25005c2e005c2e007038008643009c4e006e37009a4d00a25100984c00924900aa5500
-ac5600984c008a45008040006e37006432005c2e004a25003018004221003018003a1d00
-261300261300201000ff9b36301800281400180c00201000180c000c06000c06000c0600
-060300060300160b000e0700160b00160b00160b000603001e0f002010002613000e0700
-0e0700160b000e0700160b00060300160b000e07001e0f00160b000c0600180c00160b00
-160b00060300160b00160b00281400301800160b000e07002010000e07001e0f00160b00
-140a00160b00160b00180c003018003018002613001e0f002e1700281400281400261300
-381c003219004422002613002e17002e17003219002814003018002e1700261300261300
-180c00281400261300180c00180c001e0f00160b00281400261300201000201000180c00
-180c00020100281400180c00140a00160b00160b000e07000e07000c06000c0600281400
-0e07000e07001e0f000e07000e0700201000160b00160b00180c00180c00040200060300
-281400160b00180c00020100201000060300160b00180c00140a00201000ff99321e0f00
-261300281400201000fffcf81e0f00180c00160b00281400ffa64c201000160b002e1700
-2e1700381c002e17002e17002010001e0f00160b00ffa64c180c00321900160b00160b00
-180c002010001e0f00180c00180c00ff9d3affa142261300160b00201000140a00160b00
-201000281400301800160b002814001e0f001e0f002814002010002814002e1700301800
-3219001e0f00201000201000261300140a000c0600180c00201000261300180c00301800
-160b00281400160b00281400201000301800160b00180c002010002613002e1700140a00
-ffa2440e07000c06002010000603002814002010000e0700160b000e0700140a00160b00
-1e0f00180c00201000160b001e0f00201000160b00160b00160b00140a00201000060300
-180c00160b00180c001e0f00140a00160b00180c002613002814000603000c06000e0700
-140a000e07002010001e0f00201000180c001e0f00160b00201000160b00160b00160b00
-140a00281400281400381c00261300180c00160b000c06000c0600160b00180c00301800
-301800180c000e0700160b00201000201000201000060300160b000e07000c0600180c00
-060300180c002010001e0f00180c00060300140a00281400160b00261300281400201000
-160b002613000e07002613003018002814002814000e0700261300160b000c0600160b00
-2613000e0700201000160b00261300140a002814001e0f000e0700160b002010000c0600
-2010002010001e0f000e0700160b00261300180c00160b000e07000e07000e07001e0f00
-1e0f00180c00060300180c002010000e0700201000180c00301800140a00140a00140a00
-160b00160b00281400060300160b00140a000e0700140a002613002814000e0700180c00
-0e07000e07001e0f002010001e0f000c0600180c00160b00
-180c00ff9e3c140a000e07000201000e0700261300180c002814000c0600180c00201000
-180c00160b00140a000e0700160b002e17000e0700281400160b00140a000e0700201000
-281400201000160b00160b000e07002814001e0f002814002e1700180c003a1d000c0600
-180c00140a00201000160b00180c00261300140a00160b000e07002010000e0700ffa142
-160b00261300180c002814002010002e1700ffa2440c0600160b001e0f00180c00180c00
-261300201000180c000e0700140a00180c00180c000603001e0f00160b002010001e0f00
-160b00180c000e0700060300180c00160b00201000281400261300201000160b00060300
-160b000e0700201000040200261300261300201000180c00140a001e0f00201000160b00
-140a003a1d002814002010001e0f00160b000e07001e0f000201001e0f00201000160b00
-160b00160b00160b00020100180c000c0600201000140a000c06001e0f001e0f000e0700
-160b00160b00140a00180c00140a00180c001e0f000e0700281400180c000603002e1700
-180c001e0f002814001e0f00ffa64c160b002010001e0f00261300281400422100321900
-4020005a2d005c2e00643200703800864300984c00904800a251009c4e00904800864300
-864300763b007e3f00783c006633005a2d004a25003a1d00381c003a1d00321900160b00
-201000381c00140a00ff9830261300160b000e07001e0f00160b00201000160b00140a00
-140a00281400140a00140a00180c000e0700160b000e0700201000160b00281400180c00
-0e07002814000e0700180c00201000140a000c06000e07001e0f00180c00180c001e0f00
-2010002010000c0600160b00140a00160b00180c001e0f000e0700201000261300160b00
-160b001e0f003219001e0f002010001e0f00201000281400201000281400301800140a00
-2010002e17002814002e17001e0f002e17003018002613003018003219001e0f00381c00
-201000281400281400060300201000160b00ffa74e2010002814002613002814000e0700
-201000160b001e0f00140a003a1d00160b000e07000c06000e07002613000e07000e0700
-0c0600060300040200160b00160b00140a000603000e0700020100160b00140a00140a00
-2010000e0700060300060300140a00201000140a00160b000e0700fffcf80e0700201000
-281400160b00180c00281400ffa64c0e0700140a00ffa040201000160b00180c00281400
-301800381c004422002010001e0f00160b00281400ffa1420e0700180c000e07001e0f00
-160b00180c00160b000e07000e0700140a00281400ff9c38ff99320e0700180c00140a00
-1e0f001e0f002010001e0f001e0f002e17000e07001e0f003a1d001e0f00261300160b00
-180c001e0f00180c00180c00160b002814001e0f00201000261300180c002814000e0700
-180c000e07000e07001e0f00422100301800180c002613000e07000c0600281400ff9d3a
-160b00180c002814000603000201002814001e0f00160b00261300201000160b00281400
-1e0f00040200160b002010000e07002e1700180c00180c000e0700140a002613000e0700
-160b000c06002613000e0700201000180c00140a00020100020100160b00060300140a00
-0e0700160b00201000201000140a00160b001e0f00160b000c0600160b00140a000e0700
-281400281400160b00140a00180c00201000160b00140a00201000140a00281400301800
-2814002e1700301800180c00160b000e0700160b00160b00201000160b00160b001e0f00
-160b00160b002010002010000e0700140a004020000e07000e0700140a00201000261300
-201000201000261300140a00140a00160b000e0700281400160b002010002613000c0600
-201000140a000201002010000e07000c06001e0f001e0f000c06000e0700140a00160b00
-160b00201000140a00201000160b00180c00160b000e0700140a001e0f00160b00201000
-0e0700140a001e0f000e0700180c002e1700160b00160b002613000e07000e07001e0f00
-180c00160b001e0f00160b00180c00160b000c06000e0700140a00140a00160b000e0700
-0c0600160b000e0700180c001e0f00301800160b00140a00
-180c00ffa040160b00160b00180c00060300140a00160b00160b00140a00160b00201000
-1e0f00180c002e1700160b00180c00201000160b00180c002814001e0f00160b00180c00
-2613003018001e0f00201000160b00201000160b002e17002613002010000e0700201000
-0e0700060300261300140a000c0600140a000e07001e0f00140a000e07003018001e0f00
-ff9c38180c00201000381c00281400160b00ffa142060300180c002010000e0700281400
-180c00160b00201000160b000e07001e0f00140a002010001e0f001e0f000e0700040200
-140a00180c000e0700140a00201000140a00140a000e07000603000e0700060300261300
-2814002613000e07000e07001e0f00201000160b000e07000e07001e0f00281400201000
-180c000c0600160b002010000e0700180c00160b001e0f00140a000e07000e0700040200
-160b00201000160b001e0f00160b00180c00201000160b00160b00160b00201000140a00
-2010000e07000603000e0700180c000c0600281400180c000e0700160b00201000160b00
-060300140a000e0700020100ffa244201000180c002010002010003a1d004221004a2500
-3a1d00643200542a006432007e3f00984c008643009a4d009249009a4d00884400984c00
-763b006c3600763b00763b00542a005e2f005e2f004221003a1d00301800281400402000
-180c000e0700ffa142261300201000180c001e0f00160b00180c001e0f000603000c0600
-2010001e0f00261300180c00060300180c002814000c0600180c00140a000e07000e0700
-060300140a00201000261300201000201000160b000e0700160b000e0700060300201000
-0e0700020100160b00261300160b00160b00140a002613002010001e0f001e0f00180c00
-0e07001e0f00ffa54a0402000e07002613000e0700301800180c00140a00261300180c00
-2e17003018003a1d00261300381c001e0f002e17003018002e17003018001e0f00261300
-1e0f00180c00180c001e0f00160b00ffa0400e07002e1700201000160b001e0f000e0700
-0e0700160b001e0f000e07002010001e0f001e0f000e07000e07002010000c0600060300
-0c06000402000c0600160b00160b003018000603002010002e1700180c00040200180c00
-2e1700160b00201000160b00180c00160b00020100281400ffa448180c002010002e1700
-2814002613002e17002010000e0700ffa64c281400ff9e3c201000301800281400301800
-3a1d00442200381c00301800201000180c00160b00ffa244160b00160b001e0f00201000
-160b00140a00261300180c00301800160b00180c000e07000c0600ffa64cffa54a201000
-140a00180c00261300160b00261300160b000e0700140a002814002814001e0f001e0f00
-180c000e07000e0700160b00180c00140a00301800201000060300180c00201000301800
-1e0f00301800140a00160b000603000e07001e0f002814000e07000e0700201000fffcf8
-140a001e0f002613000e0700180c002010000e0700160b00160b001e0f00160b00140a00
-0c06002010000e0700160b00201000160b00180c002010002613001e0f000e0700160b00
-180c00060300201000160b000e0700160b00201000160b002010002814000c0600020100
-281400160b00180c00140a002e17002010000402000e07000402002010001e0f00160b00
-140a00281400201000160b00180c00160b000e0700160b00160b003219000c06000c0600
-2814000e07001e0f00160b001e0f00140a00201000201000140a001e0f001e0f00201000
-2e1700140a00201000140a001e0f001e0f00180c001e0f000201003018002814000e0700
-0e0700201000201000261300140a000e0700321900201000180c00160b001e0f00160b00
-140a000e0700140a000603001e0f001e0f00180c00160b00261300261300160b00281400
-160b00160b002814002613002e1700201000160b000e07001e0f00140a00201000140a00
-0e07002010001e0f00160b002814002010002613001e0f00160b00301800201000180c00
-160b000e0700201000160b00281400140a00060300160b00160b000c0600180c00160b00
-0e07001e0f00140a00140a00180c002010000e07001e0f00
-ffa54a020100261300160b00160b000c06002010001e0f00160b00140a00160b00160b00
-1e0f00160b00160b002814002613000c06002010002613002e17000e07000c06000e0700
-140a002010001e0f002010000e0700201000201000160b00180c00140a00160b00180c00
-3a1d000e07000e0700180c00180c00160b000e0700160b001e0f002010001e0f00281400
-ffa040281400281400321900261300281400201000ff9e3c201000160b00040200140a00
-2814000e07000e0700180c00160b00160b001e0f000e07000c0600140a002e17000e0700
-160b003219001e0f001e0f000e0700140a000e0700160b002613000603000e07000e0700
-160b00381c00201000201000281400160b00160b002814001e0f00201000160b00140a00
-2010000201000e07001e0f00201000140a002814000e0700140a00160b002613000e0700
-160b00060300140a00180c002010000603002010000e07000e07000e07000e07000c0600
-180c00160b00160b00140a000c06002e1700040200160b00201000201000160b00180c00
-0e07002010002010001e0f00ff9e3c2613002010001e0f00261300281400301800542a00
-5c2e00542a00663300864300804000864300804000864300864300a251008a4500864300
-9048005e2f006e37005c2e005c2e004a25004a2500281400422100261300381c00201000
-140a00ffa74e160b00281400180c00160b002010002814002010002814001e0f00160b00
-180c00160b000e07000e0700201000201000140a00140a00140a00160b00201000160b00
-1e0f00180c000e07000e0700281400160b00160b00060300201000060300201000180c00
-1e0f000e0700160b000e0700281400180c001e0f00160b00201000180c000e0700160b00
-0e0700180c00180c00ff9c38201000281400201000281400160b00201000201000180c00
-0e0700201000201000301800422100301800160b003018002010002613002e1700160b00
-2e1700281400160b00201000ffa040180c00160b001e0f00281400281400140a00160b00
-281400160b00201000160b002010000c06000e07000e0700160b000c0600140a000e0700
-0e0700160b00140a000e07000201001e0f002010000e0700160b000c06000e0700060300
-180c00160b000603000e07002010000e07000e0700281400ff9c38160b00261300201000
-2814002814002814000e07001e0f00ffa142180c00ff9932160b00281400180c00301800
-4a2500261300301800281400201000160b00ffa74e180c001e0f002010000e0700201000
-2010000e0700261300140a00160b002010003018002010001e0f000c0600201000ffa040
-ffa448ffab562613002814003018000e0700160b000e0700281400281400160b001e0f00
-2010000e0700180c002010002010001e0f00180c002e17002613001e0f00140a00301800
-140a002010001e0f000e07002010002010000603000e0700261300160b00ffa1421e0f00
-1e0f000e07000e0700301800180c00060300060300160b00201000180c00201000160b00
-140a002814003a1d001e0f000e07000c0600140a001e0f00261300180c002010001e0f00
-160b001e0f002010003018002613000e0700160b00140a00160b00160b000e0700281400
-0e0700160b002814001e0f002613001e0f00301800160b003018001e0f00160b00180c00
-201000140a00060300160b00160b002010000e07002010002814002814002613001e0f00
-140a00160b002010001e0f000e07001e0f001e0f00180c00140a00140a000c0600180c00
-0c0600281400160b000c06001e0f00201000160b00281400140a00301800180c000e0700
-180c00201000040200180c001e0f00140a00160b00160b002814000e0700180c00281400
-261300201000160b000c0600201000301800160b00140a000e0700281400201000180c00
-140a00140a00180c001e0f001e0f00160b002010000e0700180c002e1700160b00201000
-0c0600160b00180c00201000160b000e07002e17001e0f00201000060300160b00160b00
-0c0600140a00140a000e0700160b000e07000603000e0700281400180c00060300281400
-160b00180c00201000140a00160b000603001e0f00201000
-ffa4482814000e0700160b00201000201000180c00180c00160b00160b00160b00180c00
-160b00140a000e07002010002010000603001e0f00201000201000201000180c00201000
-0c0600160b00160b00281400140a001e0f000c06000e0700160b002613000e07000e0700
-180c00160b000e0700160b00140a00160b00201000201000160b00160b000e07001e0f00
-0e0700ffa244180c00281400281400281400261300ff9932261300201000301800060300
-0e0700160b001e0f000c06000e07001e0f00281400201000180c00160b00201000180c00
-2010003018002814002613002010000e0700160b00201000160b00140a00160b00140a00
-060300160b003018003018002814001e0f00140a000c06002010000c0600201000180c00
-261300040200140a001e0f002010000c0600180c001e0f00160b00281400180c00261300
-0c06001e0f00140a00140a001e0f00160b000e07000e0700140a002010003a1d00281400
-0e0700160b001e0f000c0600201000180c00140a002010001e0f002613000e0700160b00
-1e0f000e0700180c001e0f00ff9e3c180c00160b002814003018001e0f00402000442200
-5a2d005c2e005c2e00763b006e37007e3f008844008a45009e4f00804000763b007e3f00
-763b006c36005c2e005e2f004a25004221002e17003a1d002613003219000e07001e0f00
-180c00ff9b362010000e0700140a00160b002010000e07002e1700160b000e0700201000
-3018001e0f00ff9932ff9e3cff9b36ffa244ff9e3c180c00160b000c06000201000e0700
-0c06000e07000e0700160b001e0f00180c001e0f00160b00140a00160b00160b00201000
-2814000c06000c06000e07002814002613001e0f00180c00281400160b00160b000c0600
-180c000c06000603000e0700040200140a00180c00281400381c00160b00160b00261300
-281400160b002613002010002010002010001e0f00180c00261300321900201000160b00
-140a002613002010002010001e0f000c0600160b00201000261300180c00261300261300
-160b00281400160b00261300160b00160b00160b00060300160b000e0700160b000e0700
-060300160b00160b000603001e0f00160b001e0f00160b00201000180c00160b001e0f00
-160b00160b00160b00201000180c002010000e0700201000ffa1420e0700261300201000
-2e1700381c002010002e1700261300ff9932201000ff9c38261300201000180c00301800
-180c004020003a1d00281400201000201000ffa448180c000e0700060300060300160b00
-0e0700180c00180c00201000140a000e0700140a000e07002613002613000e0700201000
-1e0f00140a00ffa244ffa448ffba74140a002814001e0f001e0f002814001e0f00160b00
-0e07000e07001e0f00160b002613002010000c0600180c00160b00140a002010001e0f00
-160b00160b002814002010000e07000e07001e0f00140a00160b00ffa448160b00140a00
-160b001e0f00201000180c000603000e07002010000e0700140a00261300261300180c00
-180c00261300301800160b00160b00160b000e07002010002814002613001e0f00160b00
-0e07002010002814000e0700180c00140a00180c00160b002613002e1700180c00140a00
-180c00201000201000160b001e0f00180c000c06001e0f000e07000e0700201000261300
-140a000e07000c0600180c00160b00261300261300160b00261300180c00180c00180c00
-160b001e0f00201000160b00160b00160b00180c001e0f00160b000e07000e0700201000
-160b00160b00180c000e0700321900160b00160b002814000c0600140a00180c00201000
-201000180c001e0f00180c00281400140a000e0700140a00160b00060300201000160b00
-1e0f00180c00180c00160b00180c00201000281400261300281400261300160b00160b00
-1e0f00160b00140a00160b000e0700261300140a000e07001e0f002010000e0700160b00
-1e0f001e0f00261300160b000e0700180c00201000140a00160b001e0f00160b00201000
-201000201000140a00160b00160b001e0f002010000e0700160b00140a00140a00040200
-040200140a00261300140a00180c00060300020100180c00
-160b00160b001e0f002010002010000e07000e0700160b00040200160b002814001e0f00
-160b00160b00160b001e0f000e07003018001e0f00160b002e1700160b000c06001e0f00
-281400180c00261300281400180c002010001e0f000e0700180c001e0f002613001e0f00
-1e0f002613000c0600301800160b00160b000e07000603001e0f00201000160b00261300
-0e07000e0700fffcf8160b00281400281400201000ff9c38201000140a00160b00140a00
-2814001e0f000c06002010002010001e0f000603001e0f00180c00160b002e1700160b00
-0603000e0700301800180c00201000040200160b000e0700180c000c0600140a00160b00
-160b00261300160b001e0f000c06002814002010000c0600180c00060300140a00160b00
-140a000e07000e07000402003018001e0f000402000e0700160b00160b00261300261300
-040200180c000603001e0f00180c00180c000201002010000e0700180c00281400160b00
-0e07002010000e0700160b00140a00160b000e07000603000e0700201000160b000e0700
-301800180c001e0f00ff9932160b000e07002613003018003a1d00301800542a003a1d00
-542a005e2f006432007e3f00763b00804000804000783c008643008a45007038006e3700
-6c3600542a00542a004a25003a1d003a1d00402000281400201000281400261300281400
-ffa74e2010001e0f002e17002010000e0700261300281400281400140a00281400ff9c38
-ffa040ff9c38160b00180c00140a00160b00180c00ff9b36ff9d3aff9932180c00180c00
-160b00160b000e0700160b00060300180c00060300160b00140a00180c002814001e0f00
-160b001e0f002010002e17000c0600180c002814001e0f000c0600180c00160b00201000
-060300160b00180c00201000160b00ffa448ffa2442010002e1700261300160b00160b00
-201000160b00201000261300201000201000180c00201000140a001e0f00201000ff9c38
-ff99320e0700201000201000160b00140a002613001e0f00160b00180c00281400160b00
-180c00140a002010000c0600060300160b000e07000c06001e0f001e0f000603000e0700
-261300281400180c00180c00160b000e07000c06001e0f000c0600140a000c06001e0f00
-060300160b00140a000e07000e07000c0600160b00201000ff9b36160b00180c00281400
-301800281400160b00180c00060300ff9b36201000140a00ffa448160b00160b00281400
-2010002e17002613002010001e0f00ffa448180c000e07000e07000c06002e1700020100
-160b002613002814002e1700180c00160b001e0f000e07002613000e07001e0f000e0700
-140a00281400180c00140a00180c00ffa244ffa448ffa142ff9d3a140a00281400261300
-321900160b000e07002e1700261300281400060300201000160b00140a00140a00140a00
-0e0700140a00201000281400281400060300140a00ffa142ff9e3c281400261300140a00
-140a00160b00140a000c0600160b000e0700201000160b00160b002010001e0f00261300
-1e0f00160b00180c00140a000e07000e0700180c001e0f00180c00060300140a00140a00
-160b002814002010003018002814001e0f00180c000e07001e0f00281400140a00160b00
-2e1700261300180c00160b001e0f00201000160b001e0f00180c00160b00160b00160b00
-0e0700160b000e07001e0f00180c00160b00261300060300180c00201000160b00201000
-1e0f00160b00201000201000160b001e0f00261300261300160b002e1700160b00281400
-2613001e0f00201000160b00180c000e07000c0600261300261300261300160b000e0700
-2010002010000e07002814000e0700180c00201000140a00201000180c000c0600180c00
-3018000e0700201000160b002814000e0700140a00281400180c00160b00381c00160b00
-0e0700160b00301800160b001e0f000e0700160b00160b000e0700140a00201000160b00
-160b00201000261300201000281400160b000e0700140a001e0f00160b00261300201000
-1e0f00140a000603000e0700160b00160b00160b00261300180c00160b000603000c0600
-0e07002613001e0f00160b000c06000e0700160b00180c00
-180c002010000e0700201000180c00160b00261300180c00281400180c00201000060300
-0e0700201000261300140a003018001e0f001e0f001e0f00201000201000160b00160b00
-0e0700201000301800160b00201000261300281400160b002613000603000e0700201000
-160b000e07000c06002010000e07001e0f000c06001e0f00160b00281400201000160b00
-160b00160b00160b00ffa448ff9d3a201000ffa244ffab56160b00180c000603000e0700
-180c00180c002613002814000e0700140a00160b00140a00201000180c00201000201000
-201000060300281400180c001e0f002613001e0f000c0600281400160b000e0700160b00
-201000160b002010000c0600160b00281400281400160b00160b00160b00281400180c00
-0e0700040200140a001e0f000c0600180c00160b00180c00180c00160b00160b00160b00
-160b000603000e07000c0600321900160b00180c000201000603000603001e0f00160b00
-160b00160b00201000160b000c06000e0700180c000e07002010000c0600261300160b00
-180c00140a00140a00ffa040201000180c00301800261300261300381c003018002e1700
-4221004221005c2e00763b00763b006e3700703800783c00804000924900763b00663300
-542a005a2d004a25005a2d004a25003a1d003a1d002e17001e0f00201000201000ff9d3a
-2e17001e0f00160b00160b00180c002010001e0f00160b00261300180c00ffa4481e0f00
-201000160b00140a00281400160b00180c002010002010001e0f00160b00ff9932ff9d3a
-140a00281400281400160b002814000603000e0700180c00261300160b00180c00160b00
-180c00281400160b00180c00281400201000160b002010000e0700140a00140a00160b00
-160b00261300140a002010001e0f00201000160b00ffa74e140a002814002e1700201000
-2814002010003219001e0f00160b002613002613002010002814001e0f00ffa040160b00
-2e17001e0f00301800160b00060300160b000e0700140a00060300160b00160b00201000
-261300201000180c00160b00201000140a001e0f001e0f00160b00160b00180c001e0f00
-2613000c06000e07000e0700180c002814000c0600301800060300160b00180c00160b00
-160b00140a00180c000e07000e07002e1700160b00160b00140a00ff98300e0700321900
-0e0700281400020100201000ff9b36180c00140a000c0600ffa244180c00140a00140a00
-140a00140a00160b00140a001e0f001e0f001e0f00180c00180c00180c002e17001e0f00
-160b001e0f00201000140a00160b00160b000603000e0700160b000e0700040200160b00
-160b00201000281400180c00160b00201000201000180c00060300ffa142ff9c38ffa040
-ff9e3cffa74e160b000e0700160b00180c001e0f003a1d002010001e0f00201000180c00
-060300160b00140a00ff9d3aff9932ffa040ffa142180c00201000281400201000201000
-140a00160b000e0700160b002613000e0700201000060300140a002814002010001e0f00
-160b00160b00160b00201000140a000e07001e0f001e0f00160b00160b00160b00140a00
-0e0700060300201000180c00201000160b00060300160b000e0700040200020100201000
-140a00140a00261300180c00160b000c0600160b00140a00160b001e0f000e0700201000
-2814000e0700261300140a00160b00160b001e0f00160b002010000e0700261300160b00
-201000261300201000201000160b00160b00301800301800180c00140a00160b00160b00
-160b001e0f001e0f00160b00201000160b002010001e0f001e0f000e0700160b00201000
-4020003018001e0f002814000e0700060300180c002814001e0f00180c00140a00180c00
-140a00160b001e0f00261300140a00160b00160b00160b001e0f00180c00201000160b00
-201000261300261300160b00060300201000201000261300180c00281400160b00201000
-140a002814002613000e0700160b00281400160b00281400160b00160b00201000140a00
-140a001e0f00160b001e0f000c0600201000140a001e0f00201000281400281400160b00
-0e07001e0f00180c000e07002e17001e0f002613000e0700
-160b00140a002814001e0f00201000160b00180c00180c00160b00160b00160b00180c00
-160b00160b00180c00140a00140a00140a001e0f00180c00160b00160b00140a001e0f00
-160b000e0700060300180c00160b00160b00180c00160b001e0f00160b00160b00160b00
-2010000c0600160b000e0700160b00281400281400261300160b000c0600160b000e0700
-261300160b00281400160b00160b00ff9e3c261300160b00060300160b00160b00140a00
-140a002010001e0f002613002814000c0600160b00281400160b000e0700160b000e0700
-160b00160b000c06002010000603000e0700180c00060300040200201000180c00160b00
-3018000e0700160b000c0600160b002613002814000e0700180c000c0600020100261300
-180c00201000160b00160b000e07000e07001e0f00180c000c06001e0f00201000060300
-2010000e0700140a00281400180c00140a00160b00201000201000020100180c00060300
-281400180c00201000160b000c0600180c00160b000e07001e0f001e0f00160b00140a00
-160b00201000281400ffa040180c00140a003219003219001e0f002e1700422100542a00
-4020004a25006432006e3700663300783c00783c00763b007038006432007038005c2e00
-542a00542a004a25003219002613003a1d002613002e1700201000301800ff9d3a180c00
-301800281400201000261300180c00160b00261300160b00ffa448ff9c38201000201000
-160b00281400160b00261300160b00160b00160b00180c000e07000e07000e0700160b00
-ff9c383018000e0700180c000e0700140a000e0700140a00160b00201000060300201000
-160b00160b001e0f00180c002010001e0f002010000e07000603000e07000e0700281400
-160b001e0f00140a001e0f00160b00160b002814000c06000c0600160b00ff9e3cff9c38
-ff952a2814000e07002e1700ff9c38ffa244ffa0401e0f000e07000e0700160b001e0f00
-180c00140a00060300160b00201000180c00160b000e07000e07002010002010000e0700
-2613002e1700140a00060300201000261300160b001e0f00160b00201000180c00040200
-0e0700140a00160b00281400020100180c00140a000e07000e0700180c00201000160b00
-0c06001e0f00140a00180c00040200261300160b00281400140a00060300fffcf8160b00
-2613001e0f00160b00ffa142201000201000160b000e07001e0f00ff9d3affa040160b00
-160b000e0700180c00ffa448ffa142160b000603002010000c0600060300060300140a00
-140a000603000201000e0700140a002010000e07000c0600201000261300180c00180c00
-201000160b000e07001e0f00180c00261300281400140a00160b00201000201000160b00
-281400160b00ff9d3affa040ffa040ffa142ffa244ff9e3cff9932ff9e3cff9d3aff9326
-ffa952ffaf5eff9c38281400180c00180c002010000e0700180c000e0700160b00201000
-160b00160b00060300180c00160b002010000e07002010001e0f00160b00180c00160b00
-0e0700160b001e0f000e0700180c002010000e0700180c000c0600160b00140a000e0700
-160b00201000180c00180c00140a00140a001e0f002814001e0f00160b001e0f000c0600
-060300180c00160b00160b00281400201000201000140a001e0f00180c00180c000e0700
-140a00160b00160b00201000301800160b000e07001e0f00201000160b00160b00281400
-0c06002e17001e0f003219002010002e1700160b00160b00201000201000261300180c00
-180c001e0f002010001e0f000e07000e07000e07000201000c06001e0f00160b00180c00
-160b00140a000c0600201000140a00281400160b00140a00160b00160b000e0700201000
-2010002010000201002010001e0f00160b00180c00201000160b002814002e1700060300
-281400160b00160b002613000e07002010002613002010002010001e0f00201000201000
-060300201000160b00160b002010000c06000c06000e0700180c000e0700140a00160b00
-160b00180c00160b00160b002010000c06000402002010001e0f002010000e07000e0700
-201000140a000e07001e0f000603002613000e07001e0f00
-281400160b001e0f000603002010001e0f00201000160b002814002e1700180c000e0700
-201000140a001e0f00201000160b000e0700160b00060300261300140a000e07001e0f00
-160b002613000e0700180c000c0600261300160b000c06001e0f000201000e0700180c00
-2010000e0700160b00180c00160b002814000e07000c0600180c00180c000e0700180c00
-281400060300140a00201000160b002e1700140a00140a002010001e0f00281400060300
-160b002e17002010001e0f002010000e0700201000201000140a002814000e0700140a00
-2010002e17002e1700201000020100160b002010002010002010002010001e0f00160b00
-0603001e0f00160b001e0f000603002613000603000603002e1700160b001e0f00060300
-180c003018000e0700201000180c00281400020100160b00140a000e0700160b00160b00
-060300160b00060300160b00201000180c00281400180c00160b00160b00060300160b00
-160b00060300140a002814002814000e07000e07000e07000e07000e0700160b00060300
-281400140a00180c00ffa9521e0f001e0f00381c00381c00402000422100402000422100
-4a25005e2f006432006432005c2e006432007e3f006e37006432006e3700643200422100
-5229004221004c26002814003a1d003219003a1d00281400281400261300ffa448160b00
-201000160b00281400140a00281400160b002814001e0f00ffa1420e0700160b000e0700
-0c06000e0700261300281400261300160b00160b00160b00201000281400020100201000
-140a00ff9b360e07003018002814000e07002613000c06001e0f00201000180c00180c00
-0c0600180c002010002814000e07001e0f001e0f001e0f001e0f00140a00160b00261300
-261300160b000e07000e07001e0f00160b003018001e0f001e0f000e0700040200060300
-1e0f000e07000e0700201000160b00201000180c00160b00140a00180c00060300201000
-2010000603002010001e0f001e0f00160b002814000e07002010002010000e07001e0f00
-2613000e07000e0700060300160b00160b00160b002613001e0f000e0700160b00180c00
-140a000e07002010002010002010000603000e07002613002e1700160b00201000140a00
-0603001e0f00140a00180c001e0f00160b000c0600060300140a00160b00140a00ffa952
-ff9932ffa244ffa244201000140a00160b001e0f00180c00180c00040200160b00ffa040
-ffa040ff9b36ff9e3c160b00180c00180c000e07000e0700261300140a00160b00281400
-2010000e07002814001e0f00201000160b00281400160b00140a002010000e07000e0700
-2010001e0f002010000c06002814000603000e0700180c001e0f000c0600160b00140a00
-140a00261300281400160b00180c002814000e07002814000c06002010000e0700261300
-281400160b001e0f00160b00301800140a00160b000e0700180c00180c000e0700140a00
-0c0600160b00060300180c00160b00180c002814000e0700160b00201000140a000c0600
-0c0600201000160b000e0700201000180c00020100180c001e0f00180c00160b00201000
-160b000402000e0700140a00180c000e0700201000180c002010000e07000e0700180c00
-2e1700201000160b00160b00160b00201000160b00180c00201000140a00160b00160b00
-2613001e0f00140a002e17001e0f00301800160b001e0f00140a000c0600180c00261300
-0e0700140a00160b002e1700160b00140a00201000060300160b000e07000603001e0f00
-060300180c000e0700180c00160b00140a000e0700180c00060300160b000e0700140a00
-180c001e0f001e0f00180c001e0f00140a00140a002814000e0700160b000e0700281400
-0e0700140a000603002010000e0700180c00160b00160b00160b00281400140a00201000
-1e0f000e0700160b00160b00140a00160b001e0f002010001e0f00040200160b00160b00
-201000180c00281400180c000603001e0f00201000140a000603001e0f00261300140a00
-180c00160b000c0600140a00160b00140a00160b00160b00281400281400281400160b00
-0e07000c0600261300160b00201000160b000e07001e0f00
-160b00261300140a000c0600020100160b002010000e0700160b000c0600201000160b00
-2613001e0f00160b00201000140a00140a000e07001e0f00201000060300201000281400
-160b00160b00140a00180c000e07002010000e07001e0f00160b001e0f00201000201000
-140a000603001e0f00160b00201000160b000c0600301800180c00301800160b00140a00
-201000201000020100160b002010002e1700140a000e07000e0700201000160b00140a00
-140a00160b001e0f00160b00281400160b00180c000e07001e0f00160b00160b00160b00
-2010002814000c0600281400160b000402000e0700160b002010001e0f000e0700180c00
-180c000e0700020100160b001e0f000e0700180c00201000160b00160b00160b000e0700
-2010002814000e0700201000160b000e0700160b00160b00160b00201000201000140a00
-0201001e0f00140a001e0f00160b000e07000e0700180c000e07000603003018000e0700
-180c000e07000603000e07000e07002814001e0f000e0700160b00201000160b00201000
-160b000e0700180c00ffa040140a00180c00201000301800402000442200422100422100
-4221005e2f004c26005c2e004a25005e2f006432006c36006c36005c2e005229004a2500
-4a25004221003018004221002e1700201000201000281400281400ffa74e201000140a00
-060300160b001e0f00160b00160b00201000160b00ff9e3c140a00160b001e0f00160b00
-281400140a000e07002814002e1700201000261300281400201000180c00281400201000
-201000160b00ff9e3c1e0f00261300140a00160b00140a00140a001e0f00160b000e0700
-2e1700201000160b000e0700281400160b00160b000e07000603001e0f002010000e0700
-160b000e07002010000c06000e0700201000160b001e0f001e0f00160b00160b00261300
-2e1700140a00180c00201000140a001e0f00160b001e0f00140a000603000e0700160b00
-160b000e0700140a00160b00140a00160b00201000160b00201000060300160b00201000
-160b001e0f00160b000c0600281400180c00180c002613000e0700160b00201000301800
-160b002010002010000603002010000e07000603001e0f00020100160b000c06000e0700
-180c00180c00160b000e07002613000603000e0700281400201000201000201000180c00
-201000160b000e07000e0700140a00201000160b00160b00180c00201000281400201000
-281400180c000c0600160b001e0f00160b00301800060300060300160b001e0f00201000
-201000140a00160b000e0700160b00060300140a001e0f00060300160b000e0700180c00
-060300160b000e0700140a001e0f00140a00040200140a00160b00140a001e0f00261300
-140a00180c00160b002814002010000e0700160b001e0f00180c00160b000e0700160b00
-2814001e0f00160b002010000e07000e0700180c00201000261300180c00160b00060300
-2010000603001e0f00281400201000060300160b000e0700160b00180c00160b00140a00
-402000160b00160b000e0700281400180c00201000160b002814000603000e0700180c00
-180c00160b00160b001e0f002010001e0f00201000180c00180c00140a00180c000e0700
-1e0f00160b00160b00180c002814002814000e0700201000180c002010000e0700201000
-1e0f000e0700281400201000180c00140a00180c002010002613002010000c0600201000
-160b00140a00180c00180c00020100180c00180c00160b001e0f00160b00180c001e0f00
-160b002010000c0600160b001e0f000e0700020100160b002814000e07000e07000e0700
-281400261300160b002613002e1700140a00180c002010001e0f000c0600160b001e0f00
-1e0f00180c001e0f00160b00281400180c000e0700201000060300180c002814000c0600
-0e0700180c00381c002e1700160b00261300160b00160b003018002613001e0f00201000
-2613000c0600140a00180c000c06002010000e07002613000e07000603000e0700160b00
-160b000e07002010000e07001e0f00140a00160b00160b00281400140a00201000160b00
-160b000e07002e1700160b00180c00201000160b00160b00
-160b00160b002010001e0f00160b000e0700180c00140a00180c003a1d000e0700140a00
-160b00140a000c0600281400160b00201000281400180c00160b000c0600261300180c00
-1e0f00160b002010002010000e0700160b00160b000c0600180c00201000201000201000
-1e0f002010002010001e0f00140a000e07000c0600160b002010001e0f00160b00201000
-2010000e07000c0600160b00140a00261300201000160b00160b00160b00180c00180c00
-0c0600140a00140a00160b002613002e1700261300301800201000160b00261300020100
-140a000e0700140a00140a002814000201000e0700160b00201000060300160b000e0700
-180c00180c00140a00261300281400160b00160b002613001e0f00140a002010001e0f00
-201000201000160b00201000140a002010000e07002e17002010002010000603001e0f00
-0e0700140a00140a00140a00160b00180c000c0600160b00160b00060300281400020100
-1e0f000e07001e0f001e0f000e07000e0700060300201000160b00140a001e0f00201000
-160b00201000ffa4482010001e0f002010002814004020003018003a1d003219004c2600
-5c2e005e2f005a2d00542a005c2e005c2e00542a00542a004c26004221005a2d00381c00
-4221003219003a1d002814002e1700281400281400301800ff9e3c140a00201000261300
-281400140a001e0f00180c00160b00281400ffa142281400180c00301800201000180c00
-180c00140a003a1d00180c00160b002814002e17001e0f00160b00060300160b00040200
-160b000e0700ff9e3c0e07002010000e0700160b001e0f00160b00140a00140a00160b00
-0c0600160b000c06000e07001e0f001e0f00140a00160b00160b000e07001e0f00180c00
-301800140a00140a002010000e07002e17000e0700180c00180c00201000201000180c00
-261300160b002010003018000603001e0f00201000060300201000180c00180c00160b00
-160b00160b00201000201000180c001e0f00201000281400281400160b00160b00160b00
-180c002814002010001e0f00160b00261300160b001e0f00180c00140a000c0600160b00
-160b00201000180c000e07002814002010000e07002010001e0f00140a00180c00160b00
-180c001e0f00180c000e07000e0700180c00160b00160b00160b00140a00160b000e0700
-140a00261300140a00160b000e07002613000603002010003018001e0f00140a00201000
-1e0f00160b000e07002814001e0f000603000e0700160b002010000c0600140a002e1700
-0e07001e0f00281400160b003a1d00201000261300160b001e0f00160b00140a00160b00
-1e0f00261300160b00160b00160b00201000140a00261300160b002814002613001e0f00
-180c002010003219000e07002814002010000c0600140a00180c00060300180c000e0700
-160b001e0f00201000140a000e0700180c00201000160b000c0600060300422100180c00
-180c00160b00261300281400160b00160b00160b00160b000e07000e07000e0700180c00
-140a00160b00160b00160b00140a00140a00261300140a000e0700201000140a001e0f00
-060300201000180c00160b00180c000e0700140a00160b00180c00020100060300140a00
-1e0f002814000e0700020100201000160b000603002613001e0f000c0600160b00140a00
-160b00160b000e0700160b002010003018000e07000e0700180c00160b00140a000e0700
-0e0700321900160b00321900201000160b00180c00201000180c000e0700301800201000
-0e0700160b00201000261300201000180c00140a002010002010001e0f00201000261300
-180c00160b000e07001e0f00201000160b00160b000c0600160b00060300140a000e0700
-160b00140a00261300160b00201000180c002613002010001e0f00140a000c0600201000
-261300160b00180c002010002e1700201000301800201000180c00281400140a00140a00
-1e0f00180c002010000e0700160b001e0f002613000e0700281400160b00201000201000
-281400140a00160b00281400040200180c00160b00140a001e0f00180c000e0700160b00
-0e0700281400180c000201002e17002814000e0700261300
-1e0f000c0600281400180c001e0f001e0f00201000201000140a00281400160b000e0700
-0c0600140a001e0f002613000e0700160b00281400160b00180c002613000e07001e0f00
-1e0f000c06000e07000603000e0700160b000201000e0700160b00201000140a000e0700
-180c002814002613000e07001e0f000e0700140a00140a002010000e0700160b00160b00
-160b002010000e07000e0700140a00160b000e07000e0700281400160b001e0f00281400
-2010002e1700160b00140a002613003a1d002e17001e0f000c0600140a00180c00140a00
-201000160b00160b00201000180c00201000281400180c00301800060300140a00140a00
-160b000201000402001e0f00201000160b00261300160b00060300160b00160b00160b00
-180c00160b00040200201000160b000e07002010002010000e07000e0700180c00201000
-0c0600040200060300140a00160b00281400140a00160b000e0700060300160b00160b00
-160b00180c00201000281400201000160b00140a00201000060300140a00281400281400
-2814002e1700ffa64c2e1700301800261300381c003219003018003018003018003a1d00
-442200542a004a25004a25004422005a2d00422100542a004422004221003a1d00301800
-3a1d003219004422003018002010001e0f00281400ffa54a180c00301800140a000e0700
-201000160b00140a00261300160b00ffa142261300301800140a00160b00160b00321900
-0603001e0f00180c00160b00180c000c0600160b001e0f00201000281400201000201000
-201000140a00160b00ffa952160b001e0f000201002010000c06001e0f000e0700060300
-140a001e0f00201000201000261300140a00180c00140a00160b00180c000e0700140a00
-160b000603000e07000603002814000402001e0f00160b000e07000e0700160b00180c00
-160b001e0f00180c00281400040200180c00281400201000261300201000160b00160b00
-160b002010002613001e0f002814001e0f00160b00160b00160b002613002010000e0700
-180c00281400160b001e0f00160b00201000160b00180c00180c00140a000603002e1700
-020100140a000c0600160b000c06000603001e0f002e1700180c00160b002e1700180c00
-160b00281400180c00140a002010002613002010002010000e07000201000e0700040200
-040200160b00281400160b001e0f001e0f00281400160b00160b00261300040200180c00
-201000261300160b00140a000e0700160b00060300040200160b00160b00180c00060300
-180c00160b000c06000e07002613000603000603002613000e0700201000261300201000
-160b00261300140a00160b00060300261300160b00160b002010002814001e0f00180c00
-0e07002814003a1d002010002613000603001e0f00201000060300261300180c000e0700
-1e0f00201000020100160b00140a00160b00140a001e0f001e0f000e0700261300180c00
-160b000e0700160b00180c000e07000e07002010000e0700160b00301800201000381c00
-140a000c0600160b00160b000e0700201000201000201000281400160b00180c000e0700
-1e0f00201000160b00201000160b002613002010000e0700060300180c001e0f00180c00
-180c00140a000c0600140a00180c00201000201000160b002613001e0f004221000e0700
-0e0700060300201000180c00201000060300281400180c001e0f00180c00060300180c00
-0e0700160b000e0700261300201000160b00301800140a00160b00261300180c00180c00
-0e0700180c00160b000e0700180c00160b001e0f00180c00160b001e0f00261300180c00
-160b00140a00160b002814000c0600160b00160b000c06002613001e0f000c0600160b00
-1e0f000e0700060300140a00281400160b000c0600160b002814000c0600140a00160b00
-060300281400180c00180c002814000e07001e0f002010000e07001e0f000c0600180c00
-180c00261300160b00281400140a00180c00140a00160b001e0f000402000e0700160b00
-160b00160b001e0f00140a00301800201000281400160b000e07002814002010001e0f00
-160b00281400140a001e0f000e0700160b00160b00180c00
-180c00160b00140a00160b00201000180c00160b000c06002613000e07002010001e0f00
-160b00201000160b00160b00160b000c06000e0700160b000e07001e0f001e0f00140a00
-2010000e0700140a00140a00180c00140a00140a000e0700160b00140a000e0700201000
-0e0700160b00281400261300140a00160b00201000160b001e0f00160b000c0600160b00
-1e0f002010002010000603000e0700160b00160b000e0700180c00140a000e0700140a00
-160b00180c00261300140a00201000140a00201000180c00180c00160b00180c00180c00
-160b00201000160b001e0f00180c003018001e0f00180c00020100180c001e0f00180c00
-180c000e07000603001e0f002613000e0700140a003018002e1700160b002814002e1700
-160b00201000301800261300160b00201000160b00160b00140a000e0700140a00201000
-201000180c00160b00160b000e0700160b001e0f00281400140a00201000140a00060300
-0603000e0700160b00261300180c00040200201000281400180c00160b000e0700160b00
-180c00301800ff9e3c1e0f000e0700301800261300201000381c00301800261300422100
-4020004221004020004a25003a1d004221004a25004c26003219003a1d00442200321900
-180c00281400281400261300180c001e0f00ffa64c201000281400201000160b00301800
-281400160b000c0600160b00140a00ffa54a160b00180c00201000281400160b00201000
-2010002814002613002e1700180c00281400261300201000180c00301800281400160b00
-0e0700160b00160b00ffa952180c000e0700180c000603000e07002010000e0700160b00
-140a00180c00160b00201000201000160b000e0700201000201000160b000e0700020100
-1e0f00140a000c0600140a00180c002010002010002010000e0700140a001e0f00140a00
-180c001e0f00040200201000160b00160b00060300140a00261300160b00160b000c0600
-180c00160b00180c00281400201000180c00140a00261300160b00160b00201000140a00
-2010002e17000e0700060300140a000e0700160b00160b00160b00160b00201000020100
-160b001e0f00060300140a00160b00180c00180c00140a00160b00281400140a00160b00
-261300160b00ffa244ff9830ff9d3aff9122ffa2440e0700140a002814000e0700140a00
-0603002010002010000e0700140a002814001e0f000e07000e0700160b00180c000c0600
-201000160b000e0700140a00140a00160b000c0600160b000e0700160b000e0700201000
-060300160b00160b00140a00180c00261300160b002613001e0f002010000e0700180c00
-160b002e1700160b001e0f00160b000e0700261300160b002010002e1700261300160b00
-2010002010001e0f00261300201000160b00160b001e0f000e07000e0700160b000e0700
-0e07000603002613002010000e0700160b00301800201000160b00180c00160b00160b00
-261300160b00201000140a001e0f00160b002010000603001e0f00321900201000281400
-040200020100180c002613000c0600140a00201000160b00180c00160b001e0f00261300
-160b00261300201000180c00140a000603000603002814000e0700160b00160b00201000
-180c002e17002613003018000e0700140a002814000603000e07001e0f00140a00201000
-180c00201000060300160b000e0700140a00281400160b000e07001e0f00160b00160b00
-2010002e1700160b00160b00180c00140a00160b00160b00180c00160b000e0700160b00
-0e0700160b00060300160b00060300140a001e0f00140a00261300180c00180c00281400
-160b00261300201000180c00160b00261300140a00160b000603000e0700160b00281400
-201000160b003018000c0600160b00201000140a000e0700281400281400201000160b00
-301800060300281400140a003018000e0700180c00180c00180c002814000e0700160b00
-1e0f002814001e0f001e0f001e0f002010001e0f00281400140a001e0f00160b000e0700
-160b00201000201000140a00160b000201000e0700160b002010000e0700261300160b00
-180c00180c00261300160b00160b00281400180c00180c00
-160b00281400140a00140a00140a00140a002613002010002010000e0700201000180c00
-0e07002010001e0f00261300140a00201000160b000c0600160b000e0700180c000e0700
-0e0700180c001e0f00160b000e07002010000c06000e0700201000140a00160b00140a00
-1e0f00160b00201000160b000c0600160b000c0600160b000e0700140a000c0600040200
-2010002e1700180c001e0f00140a00201000160b00180c00060300160b000e0700201000
-160b00180c00281400180c00180c00321900180c00160b00140a00160b001e0f00160b00
-281400160b000e0700180c000c0600160b00261300261300201000201000201000140a00
-060300140a000e07002613000e07001e0f00160b000e0700261300201000281400180c00
-180c000e07001e0f00160b000e0700180c000e0700160b000c06002613000c0600201000
-160b000e0700160b00160b000e0700060300201000160b000c06000e07000603000e0700
-1e0f00301800281400160b000e0700201000201000160b000c0600201000261300301800
-0e0700201000ffa54a201000301800301800281400160b00201000301800381c00422100
-4c26004c26004221004c26004221004221003018004c26001e0f00301800281400261300
-140a00160b002010002e1700281400ffa64c2e17001e0f00180c00261300180c00261300
-140a00160b00140a00160b00201000ffa74e1e0f00160b00180c00281400160b00201000
-2010002814002814003018002613002e17001e0f000e0700140a002613002814000e0700
-140a00201000201000281400ff9b36140a00140a000e0700201000160b00201000140a00
-140a000e0700140a00140a00160b00160b001e0f00140a00140a000603000603002e1700
-160b00140a00180c00180c000e0700160b00180c002010000c06001e0f00140a00201000
-160b002613000e0700160b00160b00180c001e0f00180c002010000c06002010000e0700
-160b00160b00060300201000180c00160b00160b00180c001e0f00140a00160b00261300
-2010000c0600160b00201000160b00160b00180c00160b00261300201000140a00140a00
-0603000e0700301800180c00060300160b00201000020100201000160b00ff9d3affa244
-ffa244ff952a160b00201000140a00201000160b00ff9e3cff9d3aff9d3a140a00160b00
-0402002010001e0f00180c00140a001e0f001e0f00160b001e0f002010001e0f00140a00
-160b00281400281400281400180c00180c000c0600160b00180c00140a001e0f000e0700
-0e0700160b000e0700281400160b00140a00201000140a00201000140a00060300160b00
-160b002e1700140a001e0f002613001e0f004020000e07002010000e0700180c00180c00
-140a00201000160b00201000160b00160b00201000281400180c00160b000e0700180c00
-180c00281400180c00180c000e0700180c002e17000e07001e0f000603001e0f00160b00
-1e0f00020100180c002010001e0f00160b001e0f000e07000e07000c0600040200160b00
-160b00160b000c0600160b00060300281400180c00160b00140a00261300140a001e0f00
-2010001e0f000603000e0700160b00160b000e0700160b002814001e0f002613000e0700
-281400180c001e0f00201000261300140a00201000261300301800140a00261300160b00
-1e0f001e0f000e0700180c000e0700060300180c00060300261300060300201000201000
-201000160b00140a00160b000603001e0f000e07002613001e0f00160b000e0700261300
-0e07000603002010002010000e0700060300140a00301800180c000e07001e0f000c0600
-180c00180c002814000e07001e0f000e07001e0f00160b00261300201000180c001e0f00
-0c06002814002814003018002e1700281400160b00281400261300040200261300160b00
-0e07002010000e0700160b00281400140a000603001e0f00261300160b00160b00140a00
-0e0700180c00281400201000160b002010001e0f00140a001e0f001e0f00160b002e1700
-2613000e0700160b00180c00201000160b002814000e07001e0f002010001e0f00160b00
-1e0f000e0700140a001e0f00140a001e0f00180c00201000
-180c00140a001e0f00160b00160b001e0f001e0f000e0700160b000e07001e0f00201000
-160b00261300201000180c001e0f00140a00180c00140a000603000c0600160b00201000
-0603002010002613002e1700160b00261300201000160b00281400180c001e0f00160b00
-201000160b00140a003018000e0700180c00201000160b00060300160b001e0f002e1700
-1e0f00180c002613002010001e0f00160b00160b000c06000e0700160b00201000201000
-201000160b000e07001e0f00160b00180c00281400201000140a00160b00180c00160b00
-0e0700180c000e07001e0f00060300201000160b001e0f00160b00160b000e0700160b00
-160b00060300140a000201002010001e0f002814002010001e0f00180c002010000c0600
-180c00160b00160b00160b002613002814001e0f00180c000e0700160b00060300160b00
-0e07000e07001e0f00261300140a000e07002613000e0700201000180c00140a00261300
-160b00160b00261300160b00060300160b000e07000e07001e0f00160b00201000261300
-160b00160b00ffaf5e0e0700160b00160b00321900281400261300301800201000301800
-381c004221003219002814004221003a1d00381c002814002010003a1d00321900281400
-201000301800301800180c00201000ffa54a2010001e0f002613000e0700180c00180c00
-2010002814002e1700301800ffa4482010000e0700261300180c00160b00261300281400
-1e0f002814002814001e0f004221003a1d003a1d00281400201000180c00180c00201000
-140a002e17001e0f00160b00ff99321e0f00201000160b000e0700180c001e0f000e0700
-281400020100201000160b00201000160b002010000e0700160b00160b000e07001e0f00
-1e0f00160b00201000201000140a00140a00160b001e0f000e0700060300060300140a00
-0e0700140a00140a00281400140a002613000201000c06003219001e0f002010001e0f00
-0e07000e0700160b001e0f00180c00201000140a001e0f000e07000e0700160b001e0f00
-1e0f000e0700281400140a002010000e07000e07002010001e0f00201000040200180c00
-160b00160b002e17000e0700140a00201000160b00261300ff9e3cff99323219000e0700
-160b001e0f00201000201000160b00180c00201000060300160b00201000ffa448160b00
-1e0f00160b000e0700180c00201000140a00201000261300160b000c0600180c00281400
-1e0f00201000201000180c00180c000e0700160b002010001e0f000e0700180c00180c00
-140a00160b000603000201000603002814000402000e0700180c000c06003018001e0f00
-160b001e0f001e0f002e1700180c002e1700301800160b002010001e0f00301800261300
-160b00201000180c00180c00160b00180c003219000e07001e0f00201000140a000c0600
-160b000e07000e07001e0f000c06000c06001e0f001e0f00160b00160b00160b00160b00
-160b000201000603001e0f001e0f002010001e0f00160b000603002010002814001e0f00
-180c000c0600160b00201000201000160b000e0700160b00160b000e07001e0f00160b00
-281400160b002e17000402002010002e17000603001e0f00140a00281400160b00160b00
-0e0700180c001e0f00180c00180c000e0700160b00160b00160b00201000160b00281400
-180c00180c00160b00201000201000281400160b00160b00140a00201000180c00160b00
-201000160b000e0700180c002e1700140a002613000e07000e0700201000281400261300
-140a002814002010001e0f002613002010002613002613000e0700180c00160b00140a00
-1e0f002814001e0f00281400160b00160b00160b00180c002010000e0700020100180c00
-180c00160b00160b00281400160b000e0700201000140a00160b00160b00060300261300
-281400060300060300160b000e0700160b00140a00160b00160b00160b00180c002e1700
-160b00261300140a000e0700140a000e0700261300160b002010000e0700201000140a00
-201000040200180c00180c00140a00201000180c000e0700160b00180c00140a001e0f00
-2e1700180c00060300160b001e0f00201000160b00040200
-2010001e0f000603001e0f00160b00140a000c0600160b00140a00201000140a00201000
-0e0700180c00261300060300180c00160b00201000201000180c001e0f001e0f000e0700
-281400180c00201000261300261300160b00180c000e0700180c00160b00261300140a00
-020100160b00140a00180c00180c000603002814001e0f000e0700140a002010001e0f00
-160b00281400160b002010000e0700180c00140a002010002010003018000e07000e0700
-281400160b00140a00140a00261300201000180c001e0f00201000140a00160b00140a00
-160b002e1700160b00060300180c000e0700140a00060300140a001e0f00060300261300
-0c0600140a003018000e0700180c00160b001e0f001e0f002010002613002010000c0600
-201000201000140a00140a00040200160b000e0700160b002010002010002010000e0700
-0e0700301800180c000e07000e0700180c00060300040200060300180c00160b00281400
-0e0700201000060300201000201000160b00060300201000160b00281400140a00201000
-201000281400ffa040160b002814002814002010003219002814002010002814004a2500
-381c003018003018003018002010004422003a1d00261300261300201000180c00160b00
-160b00201000321900281400ffa64c301800160b00261300281400201000140a00281400
-281400180c00160b001e0f00ffa54a1e0f00140a00201000160b000e07002010001e0f00
-2613002010003a1d003219002613004422002814002814002e17001e0f00201000180c00
-201000060300281400160b00ff99320c0600201000261300201000160b00140a000c0600
-1e0f002010002010002010000e0700160b00060300160b00160b00201000140a00160b00
-0e0700160b00140a000e07000e07000e07000c06000c0600140a002814000e0700281400
-160b00140a00180c000c0600180c000e0700201000160b00140a00180c000c06001e0f00
-261300160b00201000160b000e07002010002814000e0700201000160b00160b00261300
-060300180c00140a000c06002010000e0700160b00261300281400201000281400160b00
-2010000c06000e0700160b00180c00140a00ff9932ffa448180c002010002010000e0700
-261300160b002814002010001e0f000e0700160b00160b00160b000e0700160b00ff9932
-ff9d3a2010002010002010002613002613000e07001e0f001e0f001e0f002814001e0f00
-3018000e0700160b00160b002613001e0f00160b00301800160b002010002010000c0600
-0e07000c0600180c00201000160b000e07000201000c06000e0700160b00160b00180c00
-0e07000e07001e0f00180c000c0600160b00160b002814002613002010000e0700180c00
-0603002010000e0700140a000e07001e0f002613000c0600160b00160b000c06001e0f00
-261300160b00160b002010000e07000c0600180c00160b00180c00160b00160b00261300
-1e0f00180c00160b001e0f000603001e0f000e07002010002010000e0700301800140a00
-160b00040200160b00160b00060300180c001e0f00160b00060300160b00160b00201000
-1e0f001e0f00160b001e0f000c0600140a00180c002010002010001e0f000e0700140a00
-160b00160b001e0f00160b002814000e0700160b002814001e0f00140a002010000c0600
-140a001e0f00160b001e0f002814002814001e0f00180c002010000e07000e07000e0700
-160b00201000180c00201000201000140a00160b00321900321900261300180c00160b00
-140a00180c00180c000e0700180c00281400180c00160b000e0700281400140a00180c00
-060300180c00160b000e0700060300160b00140a00160b000c06002e1700281400160b00
-2010000e0700180c00140a00140a00180c00140a000e0700261300201000140a000e0700
-140a00281400201000201000160b00160b001e0f002010002814002814001e0f00261300
-160b00160b00180c00301800160b001e0f00160b00201000160b00060300160b00201000
-160b00281400281400180c00140a00160b002814000603000e07000e07001e0f00060300
-180c00180c00060300160b001e0f000e0700180c00160b00
-160b001e0f00140a000e0700160b002814000e0700160b000e0700160b00160b00201000
-160b00180c00201000160b00160b00160b00160b00201000060300261300261300180c00
-0e0700180c000e07002814000e0700160b00261300140a000c06002814000e0700180c00
-281400201000160b002010000c0600060300060300160b00180c002613002010001e0f00
-281400160b00281400201000160b000603001e0f000e0700140a00281400180c00160b00
-020100160b000e0700140a00060300140a002814000e07002814001e0f001e0f00180c00
-2010001e0f00201000160b00160b00160b002e17000e0700180c00140a001e0f000e0700
-0c06000e0700160b00261300180c001e0f002814000c0600160b003018003018000e0700
-180c00180c00281400261300180c00160b00201000180c002814001e0f002e17000c0600
-0e0700060300201000160b00201000160b000e0700180c00160b00281400180c000c0600
-201000180c000c0600160b00201000281400160b00160b000e0700140a00180c00020100
-0e07000e0700ff9d3a2613002814001e0f002010002814003018002814003a1d00301800
-2e1700381c003a1d003018003018002814002613002814002e1700261300301800281400
-2010002e1700ffa040ff9932160b002613001e0f00301800201000201000281400281400
-0603002e1700301800160b00ff9c38060300201000301800281400201000201000180c00
-3018002010001e0f004a25003018003a1d003018003a1d002814002613002e1700180c00
-261300160b00160b00180c00140a00ff9c38140a00201000160b002814001e0f00140a00
-160b002613000603000e0700140a002010000201001e0f000c0600201000201000201000
-160b000e07002010002010000e0700180c002814002010000e0700201000160b00180c00
-201000060300180c000e0700160b000603000e0700140a000e0700180c00201000140a00
-2814000e07001e0f000e07000e07000e07000e07000c06001e0f000e07000e07001e0f00
-0e0700160b00281400201000140a001e0f002010000c0600180c002010000e0700140a00
-180c00160b00201000160b00ffa244ff9c38160b00140a00261300201000180c00261300
-261300160b002814003018002010002814002814003018002e1700160b00261300160b00
-ff9e3c2613000e0700180c00281400180c000e0700020100160b00261300060300180c00
-2613000e07002814001e0f000c0600201000261300160b00160b000e07001e0f000e0700
-2010001e0f00201000180c00160b00261300140a00281400140a00281400180c00160b00
-140a00140a00281400261300060300140a00160b002613003219000c06000e07001e0f00
-0e0700180c002010002010000e07001e0f002814000c0600160b00180c000603000e0700
-0c06002010000e0700201000140a00140a00201000160b000e07000e0700261300160b00
-0e07002814000603002814000e0700160b00140a00140a000402002010002010000e0700
-0e0700180c00160b00180c000201000201001e0f002613000c06001e0f001e0f000e0700
-060300040200060300160b00160b00160b00180c001e0f002814000603001e0f00201000
-3219000e0700140a00140a00160b000c0600201000180c000e0700140a00180c00201000
-201000201000261300160b00281400ffa040ff9b36ff9c38ff9b36201000160b00160b00
-201000140a00160b00140a00160b00160b00060300180c001e0f002e17001e0f00160b00
-160b002613001e0f000e0700301800140a00261300ffad5aff9b36ff9e3cff9c38ff9e3c
-261300281400180c001e0f003018001e0f00160b00060300261300201000180c000e0700
-140a001e0f00160b00180c001e0f00160b00180c000e0700160b00160b00160b00180c00
-160b00140a00281400140a00160b000e0700060300261300160b001e0f000e0700160b00
-1e0f00201000381c00140a00180c00201000140a00160b001e0f00321900281400180c00
-0e07002613000603002613002010000402001e0f000402002010001e0f00140a00180c00
-1e0f001e0f00160b000c06000e0700180c00201000201000
-0e0700060300160b00201000140a00201000140a00160b00381c00160b000e0700180c00
-281400060300140a001e0f00160b00160b00180c00180c00281400160b00160b000e0700
-180c000402000603000e0700160b00381c00201000281400180c000e07000c0600201000
-0e07000e07000e07002010002010001e0f001e0f00140a001e0f000e07002613001e0f00
-261300261300261300160b00140a00160b002010001e0f00160b00180c00201000180c00
-020100160b00140a00201000140a00060300261300160b000603001e0f00060300201000
-180c00261300140a001e0f001e0f000e0700281400160b00060300201000281400261300
-060300201000201000201000261300201000180c00281400160b002010000e0700160b00
-201000160b00201000140a00201000160b000c0600201000180c000e07000c0600180c00
-180c001e0f00160b000603000e07002814001e0f00180c00160b000c0600160b00160b00
-0e0700201000180c001e0f00160b001e0f001e0f00160b002814002814001e0f00060300
-2010000e0700ff9e3c201000160b002010003a1d002010002e17001e0f00281400301800
-301800281400321900381c002e17002e17002e1700301800180c00301800201000201000
-160b00ff99323018002814002613002010001e0f00180c00201000201000301800201000
-160b00160b00180c00160b00ffa64c281400160b00040200261300201000201000201000
-2613002613003219004020003219005c2e003219002613002814002613002010001e0f00
-160b002814000c06001e0f00160b00ffa0400e0700180c000e07000e0700160b00261300
-160b00140a00160b001e0f001e0f00140a000c0600281400201000140a000e0700180c00
-1e0f00160b00160b001e0f001e0f002010001e0f001e0f00180c000e0700160b00160b00
-140a00180c002010000e07000e0700160b00160b000e07000e0700160b00281400281400
-180c00140a001e0f000e0700060300160b000c0600160b001e0f00261300281400180c00
-2010002e1700140a002010002e1700160b00060300201000140a002010000e0700261300
-160b00201000261300ff9c38201000160b002010000c06002613001e0f00301800281400
-1e0f004221002e1700301800201000301800381c002e17001e0f000c0600201000160b00
-201000ff9c38160b00140a00140a002010001e0f00180c001e0f000e0700140a00261300
-060300180c001e0f001e0f002613000e07002010000e07000e0700281400281400281400
-060300281400180c000603001e0f00160b00160b000e0700160b00301800140a00180c00
-0e0700160b000e0700180c00261300201000180c000e07000e0700261300160b001e0f00
-0c06001e0f00160b00160b000e07000c0600201000060300201000180c00201000140a00
-0e0700180c00140a00201000180c00160b002613000e0700060300381c00160b00201000
-0c0600160b000c0600140a00180c00160b000c0600261300180c00160b002010000e0700
-160b002010000201000402000e07002814000e07000e0700180c001e0f000e0700261300
-2814000e0700160b002010001e0f00180c00281400201000160b00201000060300180c00
-201000160b00160b00140a00180c000e0700160b000c0600160b00201000160b001e0f00
-2e17000e07003018001e0f00ffa952281400140a00180c00261300ffaa54281400140a00
-160b00160b00140a00180c00201000020100261300140a00281400160b00281400160b00
-2010002e17002010001e0f000e0700301800261300160b00160b00201000180c00422100
-ffa54affa9523018000e0700060300160b00160b001e0f00140a000c0600160b001e0f00
-180c00261300140a00160b00301800201000160b00140a001e0f00180c000e0700261300
-0e07002010002010000e07003a1d002010002010001e0f00140a002010001e0f00180c00
-1e0f001e0f00160b001e0f00140a002613000e0700160b002010003219000e0700261300
-160b00060300201000160b002e1700180c000e0700160b000e0700160b000e0700060300
-2010000e0700020100060300180c00140a00261300180c00
-0c0600180c002010000e0700201000180c001e0f002814000603000603003018000e0700
-140a000e07000e0700140a000e0700160b00160b00180c001e0f00160b00281400201000
-1e0f000e07000e0700140a00180c00140a00140a002814000c0600281400180c002e1700
-2010000201001e0f00160b00160b00180c00281400060300201000201000180c00201000
-0c0600160b00180c00160b00160b00160b00281400180c00180c000603000c06001e0f00
-160b00281400160b00281400180c002814000e0700180c00201000201000180c00160b00
-160b00160b00180c002814000e0700160b00140a00140a00160b00160b00281400281400
-160b000c06000e0700160b001e0f000e07000e0700160b00201000281400201000180c00
-140a00160b00040200140a002613002814002010000e0700160b00180c00140a00140a00
-0c0600160b000c06000e07002e17000e07000c06000e07000e0700160b00060300261300
-180c00261300060300201000140a00180c003018002010001e0f00201000040200180c00
-201000281400ffa0402814001e0f00140a002010000e07001e0f00281400261300261300
-2010001e0f001e0f004422001e0f00301800381c001e0f00201000321900180c00281400
-ffa448201000160b00261300140a00140a00201000160b00160b00160b00281400201000
-201000160b00060300160b00ff99320e07002010002613000e0700321900160b00261300
-281400281400261300321900422100321900402000281400381c00301800201000160b00
-020100160b00180c00261300160b00ffa64c261300160b00140a002814000e07000e0700
-0e0700160b002010001e0f000e0700160b001e0f00140a00160b00160b000e0700140a00
-2814001e0f000603000e0700180c00160b00160b00180c00140a000e0700180c00180c00
-180c00140a00201000160b00160b000e0700140a002010000c0600140a00160b00160b00
-140a00180c00180c00160b00140a00180c002010002010000e0700160b00140a00160b00
-140a00201000180c00201000180c002010000c0600140a00281400160b00160b00261300
-0c06000e0700ff9c382010001e0f000e0700201000160b00422100180c00301800321900
-3a1d003018002814003018002010003219004020002e1700160b00201000281400201000
-261300ff99320e0700180c00201000261300060300180c000e07000e0700060300140a00
-261300201000180c002814001e0f00160b001e0f000e0700160b00140a00160b000e0700
-140a002613000e07000e07000e0700261300140a00160b001e0f000c06000c0600040200
-160b00281400160b000e07000e0700160b001e0f00160b00160b00160b002010001e0f00
-201000160b00020100201000201000180c000c06000e0700160b00160b00140a00201000
-160b00201000201000140a00201000160b00201000140a002613002010000e07000e0700
-3018000e0700180c00140a000e07002814000e0700160b00180c000c06001e0f00180c00
-160b00160b00060300140a00140a00180c002010002010001e0f000e07000e07001e0f00
-2010002010001e0f00261300020100160b00160b00160b00180c000e07000c0600201000
-2010000e0700160b001e0f000c0600201000160b00160b00140a00381c00160b00160b00
-1e0f00281400160b00ffa4482613002613001e0f002e1700261300160b00ffa040020100
-261300160b00180c000c0600180c001e0f001e0f000e07002010001e0f000e0700160b00
-201000180c001e0f002e17002e1700281400ff99320e0700160b002e1700201000160b00
-2814000c0600180c002010002010001e0f00160b00160b00160b001e0f00160b00281400
-0402000e0700140a00140a00261300180c000e0700261300160b00180c00281400201000
-281400020100160b00281400201000180c00160b002010000e07000e0700180c00201000
-201000201000281400201000160b000603000e0700160b00281400201000180c00140a00
-160b00201000140a00160b00201000321900160b00060300160b00201000140a001e0f00
-160b00160b00060300180c001e0f00160b00180c001e0f00
-0e0700060300160b002010000e07001e0f001e0f001e0f00160b00180c00201000160b00
-2010000e0700180c00140a002010001e0f00201000160b00180c000c0600301800160b00
-160b002010000201001e0f00160b00160b002010000e0700140a00201000160b00201000
-0e07001e0f00140a00140a00160b00281400160b00201000140a00180c00160b00160b00
-2010002010001e0f002010000c0600160b00020100160b000e0700201000180c00180c00
-201000201000261300140a00060300160b000402002e1700160b00020100160b00140a00
-140a00160b002010000e07000e0700060300020100180c00281400140a00160b001e0f00
-160b003018002814002010000e0700160b00160b00201000201000180c00261300261300
-201000261300140a00180c00201000160b00160b00060300201000020100160b000c0600
-1e0f00180c000e0700160b00140a00160b000c0600160b000e0700140a00140a00040200
-160b00020100160b00201000160b00160b00140a00281400180c00160b00040200180c00
-180c00201000ff9e3c2e17000c0600301800281400281400160b002613002e17001e0f00
-1e0f00281400160b001e0f001e0f002010002814002e17003018001e0f00261300ffa142
-1e0f002e17001e0f00180c002010001e0f00261300301800201000160b00180c00160b00
-201000201000201000160b00ffa54a2010002010002010000e0700201000281400261300
-2e17002613003a1d00301800301800381c003a1d00201000160b00201000180c00261300
-261300160b00160b00140a001e0f00ff9e3c180c000e07001e0f002010000c0600160b00
-281400140a00180c00160b001e0f002010002613002613000e0700160b00201000201000
-060300060300160b00140a00160b00201000040200160b00160b00201000160b001e0f00
-020100180c00160b000c06001e0f00160b00160b00020100180c000e0700261300160b00
-0e07000c0600140a000c06000603000402000c0600160b00160b003018000e0700261300
-140a001e0f002010000c0600160b00180c00160b00180c00140a00160b00201000160b00
-281400ff9e3c201000201000160b00160b002814003a1d00381c00381c00301800422100
-5229004221004a25004221004422003018003a1d00301800281400201000281400201000
-180c00301800ff9d3a0e0700160b000e0700160b00160b00160b00160b000c0600060300
-160b00140a00160b002613000e0700261300281400261300020100160b00140a001e0f00
-160b000e07002010002010000201000c06002613000e0700201000160b00160b001e0f00
-160b000402000c0600281400180c00180c000e0700140a000e0700160b00140a00180c00
-160b002010001e0f00180c00140a00140a00160b000e07000e0700140a00180c00160b00
-2814001e0f00301800160b00060300201000160b000e07001e0f00160b00180c000e0700
-201000140a00180c00281400261300160b000c0600060300160b001e0f00160b00160b00
-160b00261300201000160b000c06001e0f001e0f001e0f002613002814000603000e0700
-0c06001e0f002010002010000e07000c0600160b00140a001e0f002010000e07001e0f00
-301800281400180c00261300180c00201000160b001e0f00140a000e0700160b000e0700
-160b001e0f000e0700281400160b00060300160b000c0600160b00301800ff98300e0700
-160b000e0700160b00261300160b00020100160b002010000c06002010001e0f00160b00
-0c06000603001e0f00180c00281400261300ff9d3a0603002010002010002e1700140a00
-3018002010002e1700ffa64c2814000e07000e0700180c00201000160b00160b00020100
-2814002613002010000e07002613003018002814000e0700381c000c0600261300201000
-2e1700160b00160b000c0600160b00160b00180c00160b00180c00180c002613000e0700
-1e0f002613000c06002e1700180c00180c00281400140a00160b00180c00160b001e0f00
-0e07000e0700180c00160b001e0f00140a000e0700160b00301800160b00160b00201000
-180c00140a002010000e07000e07000e0700140a00201000
-281400160b00160b001e0f00281400201000261300160b000c0600060300140a000e0700
-2010000e07000e07002010002010000402000e0700201000060300261300160b000c0600
-160b00180c00201000201000160b000e07000e0700180c000e0700160b000e0700180c00
-160b00281400160b00160b000e0700180c00160b00140a002814002814000e07000e0700
-160b00180c001e0f000e0700160b000e0700040200301800160b00201000160b00180c00
-1e0f00140a00140a00180c00160b00160b00281400140a00180c001e0f00180c00201000
-201000180c000c06001e0f002613002814000e07001e0f002e1700160b000603000e0700
-020100160b00160b00160b00201000160b002e17000c0600261300201000180c001e0f00
-201000160b00160b001e0f00140a00140a000e0700160b00201000020100160b00160b00
-140a002814001e0f00020100140a00140a000e07002010000e07000c0600160b00261300
-0e0700301800160b001e0f000e0700160b000e0700160b00261300180c00140a00160b00
-160b000e0700281400ff9e3c180c00180c001e0f00281400261300261300060300160b00
-0e07001e0f002814002613003018002010001e0f002e17002010000e0700ffa142261300
-261300180c002814000e07002010000e0700281400160b00180c00201000040200140a00
-2e17001e0f00160b001e0f00ffa4480e0700160b000e0700140a00160b00201000160b00
-3018002010003018003018004a2500381c002814003219002814002814000e0700140a00
-1e0f00201000160b00261300ff9932180c00160b000c0600060300160b00160b00201000
-301800160b000e0700160b002010000c06001e0f002814002010000c0600160b00160b00
-2010000e0700261300140a002613000c06000e07000c06001e0f00201000160b00160b00
-1e0f002613002613003018000c0600160b00201000201000281400160b000402000c0600
-160b00180c00301800060300160b00261300281400140a000e0700160b00140a001e0f00
-160b00201000160b00201000180c00261300160b00160b00160b000e07001e0f001e0f00
-ffa040140a00281400160b00201000281400281400442200381c004221004c26005e2f00
-6432004c26006432005a2d00542a00422100301800281400201000281400180c00281400
-201000160b00ff952a2010000e07002814000402000e07000e07000e0700201000160b00
-180c000c0600281400160b000c0600180c00160b00180c001e0f000e0700160b001e0f00
-2010000603000c0600201000160b00180c00160b00281400140a000201002613000e0700
-1e0f001e0f002814002e1700020100180c000e07001e0f00261300261300201000160b00
-160b00201000160b00160b00140a00201000281400140a00060300060300160b00180c00
-140a000e07002010001e0f00020100140a002010002010002010001e0f00281400261300
-261300180c001e0f00201000160b00261300160b002814000e0700160b00160b00140a00
-0e07000e07003a1d00160b00281400140a00201000140a00180c00160b000e0700160b00
-2814001e0f000e0700201000160b00180c002613000e0700281400201000180c00281400
-402000160b00060300261300180c00040200160b00180c00160b00201000160b00180c00
-281400ff9d3a1e0f00140a00180c00020100201000201000301800201000201000ffa74e
-201000180c002010001e0f00180c001e0f00160b00160b00180c00281400301800160b00
-140a00140a002010002010000e0700060300ff9b36180c002010000e0700301800301800
-180c00180c000e0700180c00ffa54a0e0700201000140a00201000201000301800160b00
-160b00261300160b000e07000e0700160b002814000603000e0700281400201000140a00
-140a00160b00160b000e07002e1700140a00140a002010002613000e0700281400140a00
-261300180c00201000140a002613000603000e0700261300281400160b000c0600201000
-160b000e0700180c00261300160b00060300201000160b00140a00060300201000201000
-160b00140a001e0f00201000301800140a000c06000e0700
-0603001e0f000e0700201000060300140a000e07002e1700060300140a000c0600261300
-201000160b00160b00201000261300201000261300160b00160b001e0f00160b00040200
-140a000c0600140a00201000201000281400160b00140a00160b000e07000e0700201000
-160b000603001e0f00160b00201000201000160b00140a00160b000c0600201000020100
-0e0700160b002613002613001e0f00201000180c00321900020100201000180c00140a00
-160b002e1700160b00160b000c0600160b000c0600160b001e0f000603002010001e0f00
-2814000e0700160b00160b00201000060300281400180c00140a001e0f00201000020100
-201000160b00261300180c001e0f001e0f00201000201000180c000c06000e07002e1700
-201000261300160b00160b00160b00180c00180c00160b00180c00160b001e0f00160b00
-180c002010002010002010001e0f001e0f00160b00160b000c0600201000281400140a00
-2010000e0700160b00201000180c00160b00180c00140a000e07002e17002010001e0f00
-0603000e0700201000ff98302010002010000c0600201000140a00261300261300281400
-201000160b00160b002e17002814001e0f00281400281400ff9932ffa74e160b002e1700
-160b00180c00180c00261300201000160b00160b000e0700160b00160b00180c00201000
-140a001e0f002010002010000e0700ffa54a180c002010002010003018000e0700160b00
-160b00261300180c00261300301800281400160b001e0f002814001e0f00160b00281400
-2010002010001e0f001e0f00ff9c38180c00160b00160b001e0f000e0700180c00301800
-1e0f00140a00180c00160b001e0f00060300201000140a001e0f00201000180c00160b00
-160b00160b00201000140a002010000c06000e07001e0f000e0700160b00160b002e1700
-1e0f00180c000e0700160b00060300160b002010000e07000c0600180c000e0700201000
-2010000c06002010001e0f00160b00060300160b00160b00201000160b001e0f00281400
-281400201000201000160b00060300201000160b00140a00140a001e0f00201000321900
-ff9e3c160b00281400160b00281400281400261300381c00522900522900643200864300
-8040009249007e3f006e37004a2500381c004a25002e17002010002e1700261300281400
-201000020100ff9c38201000160b001e0f001e0f00140a000e0700060300140a00201000
-160b000c0600140a00201000140a00160b00160b00160b00201000160b001e0f00160b00
-201000060300180c00140a002814001e0f00281400140a00140a00201000201000160b00
-160b003018001e0f00140a000e0700201000180c00180c000402000603000c0600281400
-201000201000160b00160b00180c00140a00180c00160b002010002814000e0700281400
-140a000e07002613000e0700180c001e0f00160b00261300140a00160b00160b00140a00
-160b002613000603000e0700201000160b002613000e0700160b00180c00140a001e0f00
-0e0700160b002814002010000603000e0700160b00160b000e0700180c001e0f000e0700
-0e0700180c000e0700140a000e0700160b000e07002010002010001e0f000c0600140a00
-160b00140a002e1700140a00301800180c000e07002613001e0f00261300261300140a00
-2e1700ffa64c2814000e07000c0600140a00281400180c00180c00201000140a00ff9932
-0e07002010000e07001e0f002814002814003a1d00020100180c00180c00201000060300
-180c00281400140a00180c002613001e0f00321900ff9d3a180c00261300301800201000
-2e1700281400160b00180c00ff9d3a140a002010000e0700160b000e0700140a00160b00
-301800140a00180c00301800180c00160b00160b00140a000e0700201000160b00201000
-0e07001e0f001e0f00180c001e0f00281400160b002613000c06000c0600140a000c0600
-0e07001e0f001e0f00140a002010000e07000e07001e0f00301800261300160b001e0f00
-160b001e0f00140a00140a00201000160b00201000160b003018001e0f00281400201000
-160b001e0f00140a002010000e0700140a000c0600201000
-0e07000e0700261300201000160b003018002010000e0700060300180c000e07001e0f00
-0e0700140a00140a002613001e0f00201000180c00140a00160b000201000c0600261300
-0c06000e0700201000201000180c000e07000603002e1700180c00201000140a00160b00
-180c00140a000c0600261300160b00160b00160b001e0f000c0600140a002e1700160b00
-0e07000e07002010000e0700180c00040200281400160b001e0f00201000180c00160b00
-2010000c0600060300160b00281400160b00381c000e0700160b00180c00201000180c00
-0603002010000e0700160b002010000c0600180c00160b00160b000e0700060300040200
-140a00060300180c00201000201000160b00160b000c06002010001e0f00160b000e0700
-0e0700160b001e0f00160b00281400160b00140a00160b001e0f000e0700201000160b00
-201000160b000e0700201000201000180c00160b00140a001e0f000c0600281400060300
-160b00060300180c00180c00201000160b00180c001e0f00201000201000160b00180c00
-2814002010000e0700160b00ffa040281400160b002814002613002010002010001e0f00
-1e0f00301800261300060300201000180c00160b00ff9932201000261300261300180c00
-281400261300180c00160b00301800160b000e07000e07002814002613002613002e1700
-140a00160b00140a00160b001e0f00ffa9522613000e0700201000160b00180c00160b00
-180c001e0f00180c003018001e0f00261300281400201000201000281400140a001e0f00
-2e1700160b00140a002e1700ff9e3c201000160b002010002613002010001e0f000e0700
-201000180c001e0f002010001e0f00261300140a00180c00060300201000201000140a00
-180c000e0700180c000201001e0f00160b00140a000c06002010001e0f00201000160b00
-160b00160b00261300160b00160b00180c00140a00261300281400180c00160b00201000
-160b000e0700180c002613000e0700180c00020100160b00201000180c001e0f00160b00
-160b00261300160b002e1700180c002613002010000c06002e1700160b00201000ffa64c
-2613003018001e0f002e17002010002010002814004020004a2500703800783c00904800
-aa5500984c008643007e3f00542a005229003a1d002e17003018002010002613001e0f00
-160b00180c00ff9932060300180c00160b00160b00140a00180c000c0600201000160b00
-160b00281400201000160b00060300201000060300201000160b001e0f00160b00201000
-160b000e07000e07003a1d001e0f000e07000e07002010002613000e0700201000140a00
-2010000e0700180c00160b002e17002010000e07001e0f00160b00020100140a00160b00
-180c00201000060300160b001e0f00060300140a00180c00261300060300160b00281400
-160b002010002010000c06000e0700281400381c001e0f00160b000e0700160b00160b00
-0e07000e0700261300261300261300180c000e0700201000201000281400060300201000
-1e0f00160b000e0700060300261300201000261300201000060300201000060300160b00
-060300180c001e0f00281400160b002613000e07001e0f00160b00180c00160b001e0f00
-160b002010000603000e0700140a001e0f001e0f00160b00160b002010000e07000e0700
-ffa1421e0f001e0f002613003018000e0700281400261300281400160b00160b00ff9c38
-160b00261300201000160b00201000160b002814001e0f00060300060300140a00160b00
-261300140a00140a00201000281400261300402000ffa4480e0700160b00301800201000
-3018003219002e1700281400261300ff9d3a140a00160b002e1700281400180c00160b00
-201000140a002010000e0700160b000c06002010001e0f000e0700140a00201000160b00
-160b00060300261300160b002010002010002814000c0600301800281400160b00201000
-0e07002613002010001e0f00140a000603000e0700281400180c00040200160b00201000
-0e0700201000160b00201000281400180c000402002010001e0f000c0600180c00160b00
-0e0700261300160b00140a00020100180c000e0700160b00
-201000160b00060300160b000c0600180c00201000180c00201000201000060300201000
-2814002010000e07002e1700201000201000160b00140a00060300140a000c0600160b00
-160b00180c000e07001e0f00160b002814001e0f00160b001e0f001e0f00180c00180c00
-140a00160b002e1700261300160b001e0f00281400160b00160b000e07000603000e0700
-1e0f00060300160b00201000160b00140a00160b002e1700281400140a00160b000e0700
-140a001e0f001e0f000e0700060300201000261300140a001e0f001e0f00160b00261300
-0e0700140a00160b001e0f000e0700140a001e0f00201000160b00160b000c0600201000
-261300140a001e0f00160b00180c002613000c0600201000160b00160b00201000261300
-0c0600180c00160b000603000e0700180c00180c00140a00281400281400201000140a00
-160b000e07002010000c0600180c002e1700140a00160b00140a000c06001e0f001e0f00
-2010000c0600160b000e07001e0f00140a001e0f00160b00180c00301800180c00160b00
-0603001e0f00160b00201000140a00ffa54a140a00180c001e0f00180c000e0700160b00
-201000301800180c00180c00160b00ffa54aff9b362814002010000e0700140a00201000
-180c000c06002613001e0f00201000180c002814000e0700160b000e07000e0700160b00
-1e0f00180c00160b00381c000e07001e0f00ff9e3c140a00201000180c00281400281400
-201000281400201000201000180c00261300301800180c001e0f001e0f002010000e0700
-2e17000e07000c0600180c00ff9b36180c00160b000e0700160b00180c00201000201000
-2010003018002e17002613002010002010002010002613000e0700160b00140a000e0700
-0e0700160b001e0f00180c00140a00160b003018001e0f00281400060300020100201000
-160b00160b000e0700281400160b000e0700160b00261300160b00201000180c00201000
-020100160b000e07001e0f00281400160b00281400201000160b000c06000e0700201000
-281400180c00201000060300160b002010000e07002010002010001e0f00ffa142261300
-2010002010001e0f002010002010002e1700542a004422004a2500643200a25100b85c00
-ce6700c462009e4f00763b006432004020003219003a1d001e0f00301800160b00180c00
-281400ff9932160b000c0600140a00160b00060300180c000e07000e07000e0700160b00
-0e07001e0f000e0700160b002814000603002010000e0700201000160b00201000160b00
-0e0700060300160b000c06002e1700160b00160b000e07002613001e0f00140a00201000
-060300140a00160b00160b00201000140a00281400180c001e0f002613000c0600201000
-0e07002010002613000e0700160b00160b00261300160b001e0f00160b002e1700140a00
-2010002010000603000603000e0700201000180c00160b002010001e0f002613001e0f00
-180c00160b00060300160b00160b00140a000e0700160b001e0f00140a000e0700020100
-1e0f00201000140a00180c00160b00160b00201000201000160b00060300060300160b00
-160b00281400201000160b002e17003018000e07000c0600160b00261300160b000e0700
-0e07000e07000603000e07002e17000c0600160b000e07001e0f00261300160b00ffa040
-180c00160b00140a00160b00321900301800180c002814001e0f00281400201000ff9c38
-0e0700201000180c00140a00201000281400180c00140a00140a00160b000c0600261300
-140a00201000140a00140a000e07000e07000e0700180c00ffa448301800201000281400
-261300281400160b00201000160b00ffa142201000201000160b002613000e0700281400
-160b002814002814000e07002010002e17001e0f00261300180c000e0700040200140a00
-2e17000e0700160b00160b00160b000e0700281400160b000e0700160b00281400160b00
-2010002814000201002010000e0700160b00201000201000160b00160b00140a00160b00
-180c00281400140a00201000160b00201000201000180c002010000e0700140a00261300
-281400281400261300140a00160b000c0600180c00040200
-140a00180c002010000e0700160b00060300140a00160b00160b00160b001e0f00160b00
-180c002010000e07003a1d00160b002e17002814002814002010001e0f00140a001e0f00
-281400140a000e0700180c00201000180c002010000e07000c0600160b00201000160b00
-160b00180c001e0f00160b00160b00160b001e0f002e17000e0700160b00201000201000
-160b00201000160b00160b001e0f001e0f00201000160b00281400180c00160b000e0700
-2010002814001e0f002613002010002613001e0f00180c000c06000e0700201000180c00
-160b001e0f000e0700301800160b001e0f002010000e0700160b00301800180c00180c00
-201000140a00261300ffa64cff9d3aff9e3c0c0600261300201000160b001e0f00160b00
-201000160b00020100160b000201000603000603000e07001e0f00160b000603001e0f00
-160b00160b002814000e0700060300140a00160b001e0f00261300140a00281400180c00
-180c00180c002010000e0700160b00160b00180c00180c00180c00261300301800281400
-1e0f000402000e07002010002010001e0f00ffa9521e0f001e0f00281400201000281400
-160b00160b00ff9d3affa74effa54a160b000e0700301800201000281400180c000e0700
-140a00281400201000160b00201000201000160b00261300140a000e07000e07001e0f00
-160b00281400160b00201000281400140a00ffa54a2613002010001e0f00281400140a00
-2010002010002613002010002613002814002814001e0f000c0600160b00160b00140a00
-201000201000140a00ff9e3c160b00201000301800261300201000180c00281400180c00
-301800180c00261300180c002010001e0f00160b001e0f00140a00140a000e0700060300
-0e0700140a00180c001e0f00060300301800140a000e07001e0f002814000e0700160b00
-160b000e0700160b00201000160b00160b002613000e0700201000261300261300140a00
-1e0f00160b000e0700160b001e0f002e17002010002613003a1d003a1d000e07000c0600
-060300060300201000201000180c002010002010002613000e07001e0f00ffa040180c00
-3219002613002814003018003a1d00301800422100522900542a007038008a4500b65b00
-ca6500c462009048008643004a25005229004221003219003a1d00160b00201000160b00
-301800ff952a180c00261300160b002814002010000e0700140a000e07002814000e0700
-281400140a00180c00201000160b00160b002613000e0700160b00160b00140a00180c00
-180c00160b00160b000e07000e07002613000402002010000c06000c0600140a00180c00
-040200201000201000140a00160b00180c000c0600281400140a002010000e07001e0f00
-1e0f00321900281400180c000201000201001e0f002010002010000e07001e0f000e0700
-281400160b00180c00140a00201000140a00281400201000180c000e07000c0600180c00
-281400160b00160b000e07001e0f00180c000e0700140a00180c000c0600201000160b00
-140a001e0f00140a00160b00201000261300140a000c0600160b00160b00140a00160b00
-180c00201000160b00281400160b001e0f00160b00140a00160b00160b00140a00281400
-160b001e0f002e1700160b002010001e0f00140a00201000180c00160b001e0f00ff9b36
-2010001e0f001e0f001e0f001e0f00301800201000160b00160b00281400201000ffa54a
-0603002e17000e07003018000e07000603002010001e0f00201000180c00020100140a00
-2613000e0700281400160b000c06001e0f00140a00060300160b00ff99320e0700160b00
-281400180c00201000140a000e0700ffa1422814002613002613002613000e07000e0700
-201000160b001e0f00180c001e0f00281400140a00160b00160b002010000c0600160b00
-261300060300281400160b003018003018001e0f00140a00281400160b00160b000e0700
-060300281400201000180c002613002613001e0f002814000e0700180c002010000c0600
-160b000603000e0700180c000c0600261300160b00140a000e07003219001e0f000e0700
-2613002010002010000e0700180c001e0f000e0700140a00
-160b00160b000c0600140a001e0f00160b00201000140a00160b002814000e0700140a00
-1e0f002e1700160b000e07000e0700261300261300160b00180c00140a00180c00140a00
-160b00201000160b00201000060300201000201000180c00180c000201001e0f00160b00
-1e0f00160b000c06000e07000e07002814002e1700201000160b000e0700160b000e0700
-160b001e0f002613001e0f00201000180c001e0f00201000180c00160b00160b00060300
-3018003a1d00160b00160b000e0700140a00160b00160b000e0700160b00140a00060300
-0e0700160b002010001e0f00201000180c00180c000e0700201000140a00160b00160b00
-ffad5affa142ffa64c0e07001e0f00180c00ffa040ffa040ff9e3c0e0700140a00281400
-140a000e0700160b001e0f00160b001e0f00140a00140a00140a000e0700160b000e0700
-201000140a000e07000201001e0f000e07000c0600160b00201000160b00160b00261300
-0e0700201000160b000c0600201000160b00281400180c002010000e0700180c000c0600
-2010002613000e07002e17002010001e0f00281400ff9e3cff9b36ffa64cffa244ffa142
-ff9932ffa142160b00180c001e0f000e0700201000180c000e07000c06002010000c0600
-0e07000e0700201000180c002010002814001e0f00261300140a00201000160b00160b00
-281400160b000e0700180c000e07001e0f00160b00ff9d3a160b001e0f00201000160b00
-140a00160b00201000201000160b00201000201000160b00201000201000160b00160b00
-261300140a00ffa142160b002613000e0700140a00140a002010001e0f00140a00160b00
-160b001e0f001e0f00180c000e07000201000e0700160b00201000180c00180c00180c00
-160b00160b00160b001e0f00201000160b00381c00160b00160b000c0600180c000c0600
-180c00060300201000201000160b00160b00160b00201000261300160b002010001e0f00
-281400180c00160b000201002010002814000e07000e07002010001e0f00281400180c00
-160b00160b001e0f00201000140a00060300201000140a00201000281400ffa64c281400
-2613002e17002e1700301800381c00422100422100542a00542a00663300924900a25100
-a45200aa55008040006432004c26003018003018003018002e17003219002010001e0f00
-0e0700ff9e3c0e07000e0700261300160b00160b001e0f001e0f002e1700060300020100
-160b00160b00160b00160b00040200160b00281400160b00180c00160b00180c000e0700
-160b000c06002814002613000603000e07001e0f00160b000e0700140a00180c00160b00
-140a00160b00201000140a00040200140a00160b00201000180c00160b000e0700180c00
-160b00160b00201000160b000c0600160b000201000c06000e07001e0f00201000160b00
-0e07002e1700160b00140a00160b00060300160b00201000180c002010001e0f000e0700
-2e1700160b00160b001e0f000e0700160b00140a00160b00160b00180c00180c000e0700
-160b000e0700180c000c06000c0600201000020100160b00140a00160b00020100261300
-261300201000160b000e07000c0600060300160b00160b001e0f00160b00140a00180c00
-0e0700201000160b00140a00140a00261300180c002010000c06000e0700ff9c38201000
-160b003018003018002010003a1d003a1d00180c00301800160b00180c00180c00ffa142
-0e07001e0f00160b000e07002814000201001e0f001e0f00160b00160b002010000e0700
-2010002814000e0700180c000e0700160b000e0700160b00180c00201000ff952a180c00
-0e0700180c00180c000e0700201000ff9e3c160b00180c001e0f000c0600160b00060300
-1e0f002010000e0700160b000e07000e07000c0600160b00180c00281400160b00160b00
-201000160b002010000e0700201000140a002e1700201000201000281400180c00160b00
-1e0f00180c002010000e07002814002e1700321900201000261300201000201000261300
-180c00140a00180c00140a002e17000c0600180c00281400281400160b000e07001e0f00
-201000381c00160b002010000e07001e0f00160b000e0700
-2010000e0700281400201000180c001e0f002010000e0700180c001e0f00180c001e0f00
-0c06001e0f00261300201000140a000603000c0600160b00160b000e07002613000e0700
-140a00201000201000140a00180c00261300201000201000160b000e0700160b00180c00
-301800201000160b00180c00201000140a00180c001e0f00201000180c00160b000c0600
-020100201000180c00140a000c0600140a00140a00160b00140a000e0700160b00160b00
-060300281400160b00160b002010000e07002010000c0600201000201000160b00201000
-2010001e0f00180c002010003018000e07002010001e0f001e0f00261300ffa040ffa142
-2814001e0f00301800160b003018003a1d00201000261300201000ffa244ff9e3c140a00
-140a00281400140a001e0f002010000e07000c0600160b00160b001e0f000e0700201000
-0e07001e0f000e07000e0700160b00180c00140a00160b000603002613000e07000e0700
-140a00281400180c000402000e07002613002e17002010000e07000e0700281400180c00
-140a00180c00201000160b00201000201000201000160b00261300261300201000201000
-281400201000160b00261300281400160b00160b00160b00201000281400201000160b00
-2814001e0f002e1700201000160b00180c00140a00180c00160b000e0700160b00160b00
-140a00140a00180c000e07000e0700180c00160b00ff9d3a160b00160b00140a000e0700
-160b000e0700180c00160b000e07002010001e0f00201000160b00160b00140a00160b00
-2814000e0700ff9e3c201000060300281400160b00160b00140a00160b00281400201000
-201000281400301800140a00160b00180c002814000c06000603002010000c06001e0f00
-140a00160b00180c00140a00060300261300180c00160b001e0f00201000201000020100
-0c0600281400140a002010000e0700140a00140a00160b00160b001e0f00160b002e1700
-261300140a001e0f00281400140a00160b00281400160b00060300160b00281400201000
-160b00160b002814000e07000402002010000e0700140a000603001e0f00ffa74e160b00
-281400140a00160b002814002613003018004422004a2500542a006432006e3700904800
-8643008040008643006432003219003a1d003018002010002814002613000e07001e0f00
-ff9c38140a00160b00180c000603001e0f00160b000e07000e07001e0f00160b000e0700
-0c0600160b000c0600160b00160b000c0600140a000e0700060300180c00040200140a00
-160b001e0f00201000180c001e0f00160b002613001e0f00160b00060300160b001e0f00
-180c00160b00060300020100201000180c00180c000c0600160b000e0700160b000e0700
-160b00160b00160b002010000e0700160b00160b00060300281400140a00160b00201000
-160b00140a00160b00160b001e0f00281400160b00201000160b00160b00180c001e0f00
-160b001e0f001e0f000603002010000e0700201000140a00180c00160b00140a000e0700
-2e17000e0700201000160b00201000201000201000160b00160b00140a00160b00180c00
-1e0f00160b00140a00160b001e0f00180c00140a000c06000603001e0f002613000e0700
-0201001e0f00160b000c06000e0700140a00201000140a00160b00020100ffa142160b00
-281400281400160b00180c003a1d00301800201000180c00160b00180c00201000ffa142
-301800201000281400201000140a00160b00180c002010000e07000e07000e07001e0f00
-2814000603001e0f00160b00160b000e07000e0700160b000e07001e0f00060300ffa74e
-ff9e3c160b00160b00160b00ff9c38160b002613002613002010002613001e0f001e0f00
-2e1700180c00140a00201000281400301800160b002613000c0600201000160b001e0f00
-281400160b002e1700201000180c00060300160b000c06002010001e0f00201000160b00
-1e0f002010002814000c0600180c00160b00160b002613001e0f002010000e0700140a00
-160b00180c00160b002010001e0f000e0700160b000e0700140a00140a00160b00281400
-1e0f002010002814002010000e07001e0f00160b00201000
-201000201000281400140a00301800180c000e0700160b000e0700201000281400040200
-060300140a00160b00160b00160b00160b00261300180c002814000e07001e0f000e0700
-0e07000e0700140a002613002e17002010000c0600201000160b00160b00160b00261300
-301800140a00201000160b00140a00180c000e07001e0f00160b000e0700261300261300
-180c00180c002010002613002e17002010002010000e0700160b00140a00301800160b00
-180c000e07002814000e0700261300180c00140a00160b00060300180c00281400180c00
-201000160b00160b00160b00160b00180c00422100160b00261300ff9e3c3a1d001e0f00
-160b000e0700201000160b000603001e0f00201000160b00160b00160b000e0700ffa64c
-0e0700160b000c0600160b000e07001e0f00201000140a00180c00160b000e0700201000
-0201001e0f002010000e0700201000201000160b000c06000c0600140a00160b00201000
-0e07003a1d001e0f00201000180c00160b00160b00281400180c00160b000e0700180c00
-180c002010002010000e0700140a00180c00180c000e07002613001e0f00281400160b00
-160b00180c00180c002814003018001e0f000c0600160b000c0600160b000e0700201000
-160b00160b00160b00160b00160b001e0f00160b00140a000e07002010002e1700140a00
-160b002010002613002010000e0700160b00180c00201000ffa54a1e0f000e0700201000
-261300201000201000301800160b001e0f002010000e0700180c000e07002814000e0700
-0e0700ff9c38180c00201000201000160b000e07003018002010002010002814000e0700
-180c00160b00160b00201000201000180c000402001e0f00140a002e1700261300140a00
-160b000c06000e0700160b00160b00160b000e07002010000e0700180c001e0f000e0700
-261300140a001e0f000e0700140a002010000603000e0700180c00180c002613000e0700
-2010000c06001e0f00160b002e1700160b00140a000c06002814000e0700160b00160b00
-281400160b000201001e0f00281400140a00301800180c00160b00ffa244201000160b00
-3018003018002613004221003018002613003219003a1d00422100542a006e3700522900
-5e2f006e3700542a003018003a1d002010001e0f00201000160b00201000261300ff9b36
-1e0f00140a002814000e0700261300160b00301800180c000201002613000e07000e0700
-281400201000160b002613000c0600160b002613000e07000e07000e0700160b001e0f00
-180c000e07000e0700140a000e0700201000020100160b002010000c06001e0f001e0f00
-180c002613000e07001e0f002814000e0700180c00160b00160b00180c001e0f00261300
-060300140a00160b00140a00261300201000140a00201000060300261300160b00201000
-140a00160b00160b00060300201000140a001e0f00201000301800261300201000160b00
-160b002814000e0700180c00160b00160b002613000e0700160b00060300160b00040200
-0c0600140a001e0f00261300301800160b001e0f002010003219000e07001e0f00201000
-140a00160b000e0700201000261300160b00180c00140a00160b000603001e0f00180c00
-0c0600201000201000201000160b00160b00201000160b00201000ffa142160b001e0f00
-2010002613001e0f002814003018002e17002010000e0700201000160b00180c00ffa040
-0e0700140a00201000201000140a00160b00160b001e0f000e07001e0f00140a001e0f00
-140a00201000160b000e0700140a00180c00160b00160b00140a00261300281400140a00
-160b00ffaa54ffa040ffa0400e07001e0f002814000c0600180c000e0700160b00140a00
-140a001e0f001e0f00020100201000140a000c06000e07001e0f000e07002613000e0700
-2814000c06002814003018002613000e0700140a00160b000e07000e07000e07000e0700
-1e0f000e07000e0700160b00180c00140a000e07002613002010000e0700140a00180c00
-1e0f002010000e07000e0700160b001e0f00160b00180c000e0700040200261300160b00
-2010001e0f00180c00201000201000180c001e0f001e0f00
-1e0f001e0f00261300160b00180c000e07002010000c06000e0700180c001e0f00160b00
-0e07001e0f00140a002010000e0700160b00201000201000160b000e07000e0700301800
-060300180c00160b00160b000402001e0f000e07001e0f00160b00180c000e0700180c00
-1e0f00201000281400160b002010002814000c0600140a00281400160b00160b000e0700
-180c00160b000c06000e07000603000603000e07000e07002010000c0600060300040200
-180c002814000603000e07001e0f00201000160b000e07000e07002613002010000c0600
-2e17000e0700301800281400180c00020100201000281400ff9c38160b00281400160b00
-140a00321900160b00301800301800160b00281400281400160b00180c00201000140a00
-ff9e3c0e0700261300180c00160b000e0700261300140a001e0f000201002010000e0700
-2010002814000e07000e0700201000180c00180c000c0600180c000e0700160b00020100
-180c00160b000e0700201000180c00180c001e0f00140a00201000201000321900261300
-0e0700180c00140a00180c002010000e0700180c00160b001e0f001e0f00201000160b00
-1e0f00180c00160b001e0f00160b000c0600180c00140a00201000160b00201000281400
-0e0700140a001e0f000e07001e0f001e0f000e0700140a00201000160b000e0700160b00
-201000160b00201000180c001e0f002010003018000e0700281400180c00ffa64c281400
-180c00160b00160b000c06000603002010002814001e0f00180c00281400160b000e0700
-ffa0400603002814002e1700140a001e0f000e07002613002010001e0f00180c00140a00
-0603001e0f00140a00020100160b001e0f00180c00201000160b00140a00201000281400
-0603000603000e07000c06000e0700261300160b00160b00281400140a00201000180c00
-201000160b002814002010002010000402001e0f00160b00140a00201000261300201000
-0e07000e0700180c001e0f00281400160b001e0f00140a00201000060300180c00201000
-140a001e0f000e07000e07002010001e0f00140a00160b00201000180c00ffa040201000
-2814002814002814002e17003018004221002814003a1d003a1d005a2d00442200442200
-4c26004020004221002613002814002814002e1700160b002814003018002814000e0700
-160b00201000140a00281400140a000e0700160b00201000180c002010000e0700281400
-140a00180c00160b00160b002814000c0600060300160b002613002010000603000e0700
-1e0f002814002613002613001e0f00140a00160b003018000e0700180c00160b00201000
-201000160b000603000e0700140a00140a000c0600140a00201000160b002010000c0600
-261300281400020100140a002814002010000e0700301800060300040200160b00180c00
-2e17002010002e1700281400160b00281400160b000e0700201000140a002010000e0700
-0e07001e0f001e0f00160b00160b00180c00140a000603000c06000e07002010000e0700
-2814001e0f000e0700020100060300140a00160b002613000c06000e0700281400381c00
-0e07002814002010002e1700160b00160b00180c00060300201000160b000e0700201000
-0e0700140a000e0700160b00180c00261300180c00201000040200ff9d3a160b00201000
-2010002010002814003018004422003a1d00321900180c002613001e0f001e0f00ffa244
-0c0600261300180c00140a00160b000e0700160b00160b000e0700201000140a00201000
-180c000e0700160b002814002010000c0600140a00160b001e0f003a1d00281400160b00
-1e0f00180c001e0f003018000c06001e0f00261300020100281400261300040200201000
-0c06001e0f00201000180c00160b00180c002010000c0600160b00160b000e0700160b00
-0e07000e07002814002613001e0f001e0f000e07002010002613002010001e0f00060300
-1e0f00160b00180c000e07000603001e0f00201000140a002010000e07000c0600160b00
-160b00160b00201000060300040200160b00160b002e1700140a000e0700201000140a00
-2010000e07000e07000603000c0600160b000201000e0700
-281400160b00180c002e17002613002e1700160b00201000180c001e0f00140a00160b00
-180c001e0f001e0f000e07002814002010000e0700180c00140a001e0f00201000140a00
-160b002010000e07000e07002613000e07000603000c0600160b000e0700160b00140a00
-2010000201001e0f00160b001e0f002010002e1700160b00281400281400180c001e0f00
-281400160b00261300160b000e07000e07001e0f000e0700140a00160b002010000c0600
-180c00160b00180c00180c00180c00140a001e0f00140a00160b00160b00201000201000
-140a002814000c0600060300160b001e0f00261300ffa448261300261300160b002e1700
-2814003a1d002814004020003219002814001e0f001e0f000c0600140a001e0f00160b00
-281400ffa54a2e1700180c000c0600180c000e07002010000e07001e0f00160b000e0700
-0603000e0700160b002010000e07001e0f00180c00160b000e0700140a00381c00201000
-160b00160b002814000c0600180c00281400180c001e0f00180c00261300180c00261300
-160b00201000180c00160b00180c00140a000e07000e07000e0700201000201000160b00
-180c00261300180c002010002010002010002814002613002010001e0f00180c00160b00
-140a00160b00140a00281400160b001e0f00160b000e0700180c00180c00160b00060300
-1e0f00180c003219001e0f00281400140a00281400140a000e0700160b00060300ffa040
-ff9932160b00201000140a00321900140a001e0f00180c00140a00060300ff9e3cff9c38
-2010002010002613000e07002010002010002814000c06002010002814001e0f001e0f00
-160b001e0f00140a00160b00160b00160b00180c00160b001e0f00160b00160b00201000
-2010001e0f001e0f00140a002814000e07000e07000e0700160b002010000e0700180c00
-2010000e0700160b000e0700261300180c00321900201000160b000e0700201000160b00
-3018002613002010000c0600180c000e0700140a00160b00160b00140a00201000201000
-180c000e0700140a00301800160b00201000160b00180c00160b00160b00ff9c38160b00
-160b002010002814002e1700261300301800402000442200301800281400321900442200
-2e17003a1d00381c00281400160b002e1700140a002613000402000e0700ff9d3a160b00
-0c06000e0700140a00160b002613000e0700180c00140a00201000160b000603000e0700
-201000160b00180c00060300160b000603000603001e0f000c06001e0f000c0600160b00
-0c06000c06000e0700281400261300160b000e0700180c002010001e0f00160b000e0700
-140a00160b00281400201000201000140a000c06000e07002010001e0f000c0600180c00
-0603001e0f00140a00281400180c001e0f00140a00201000160b000e07002010001e0f00
-180c000e0700201000180c00140a00180c001e0f000e0700160b000e07000603000e0700
-381c00160b002010002010002814000e07002010000e0700160b00160b000e07000c0600
-160b00160b000e07000603001e0f00140a00201000160b00160b00281400180c00160b00
-201000160b00261300180c000e07000e0700140a00180c001e0f00160b00201000180c00
-1e0f000e0700281400180c00020100140a002010000e0700160b00ff9c38281400160b00
-2010002814004422003018002e1700381c00381c00201000140a00281400281400ff9c38
-160b000c0600180c00160b00140a000e07003018001e0f000c0600201000160b00281400
-201000160b00160b000e0700281400180c00160b00160b00201000160b000e0700201000
-180c00180c00160b00140a00261300140a00180c002010001e0f000e0700281400201000
-160b002613002010000e0700281400281400160b00301800160b00140a002814000e0700
-160b00140a00160b00201000160b00201000201000160b001e0f00140a00160b00321900
-321900201000160b000c0600180c000e0700201000160b001e0f000e07000e07000e0700
-160b00160b00160b000e0700160b000e07000e0700160b002e17001e0f002010001e0f00
-180c00160b000e0700281400140a002613000e0700281400
-1e0f00160b00201000160b00201000261300160b00160b002814000603000c0600201000
-140a000e0700160b00301800180c002814003219002010002613001e0f000e0700140a00
-180c00180c00160b001e0f001e0f000201000603000e0700160b000e07002010000e0700
-160b00060300180c00040200180c00160b000e0700140a000603000e0700140a00201000
-2010000e0700140a00060300160b001e0f000e0700060300160b001e0f00140a00201000
-2e1700160b00160b001e0f00060300180c001e0f00140a00180c000c06000c0600180c00
-060300201000160b000603000e0700140a00281400ffa54a160b00201000281400261300
-201000261300201000201000301800381c00160b004020002814003018001e0f00140a00
-201000ff9e3c201000180c00160b002613000603000e0700140a000e0700160b00201000
-180c00261300301800201000180c001e0f001e0f000e07000e0700140a00261300140a00
-0603000603002010002e1700020100180c00180c000e07002e17001e0f00201000060300
-180c000201002814002010002e1700201000060300160b000603000c0600201000261300
-160b000e0700301800180c002e17002010001e0f00201000201000160b001e0f00140a00
-261300160b00261300281400201000201000140a00140a00281400160b00201000140a00
-060300180c003219002010002010000e0700140a00281400201000140a001e0f00261300
-180c00ffa244ffa142ffa040ff9e3cff9e3cff9932ff9b36ff9932ffa952160b00180c00
-2010000e0700201000301800160b00261300160b000e07000c0600201000160b00180c00
-180c00261300160b00201000140a00301800180c00160b000e0700180c00160b000e0700
-140a00140a00060300160b00180c00160b00160b00180c00180c00180c00180c00201000
-180c00201000180c002010001e0f000c0600180c00160b002010000e07000402000c0600
-301800180c00261300281400180c001e0f00140a00201000201000140a002613002e1700
-160b00261300160b00180c00060300261300261300140a001e0f00180c00ffa142281400
-0e07002010002010002010002814002814002613003018003a1d00321900381c00422100
-3a1d001e0f002613001e0f003219002010002e17001e0f00ffa448ff9e3c0e0700160b00
-1e0f000c06002814001e0f002613000c0600140a00201000060300160b000c0600140a00
-0402002010002814000603000e0700180c00140a000e0700160b00180c00020100140a00
-1e0f00160b00140a000e0700261300160b00060300281400140a00201000060300140a00
-160b001e0f002814002814001e0f001e0f00020100160b00140a00180c00180c00160b00
-0e07002010002613000e0700301800201000140a00160b00201000281400180c00261300
-2e17001e0f00201000201000140a00201000261300160b00160b00160b00180c000e0700
-201000180c00160b00180c00281400160b00140a00140a00140a00180c000e0700180c00
-2010002010002613001e0f00180c00160b000e07000e07001e0f00160b002e1700020100
-261300180c00180c002010000201003018000402001e0f00140a00180c000e07000e0700
-0c06000e0700060300201000180c001e0f00201000180c00ff9d3a160b00201000201000
-180c00201000281400180c00381c00281400301800281400160b00281400ffa142160b00
-160b000402000e07002010001e0f000e07000e0700180c002814000e07000c0600160b00
-261300201000201000201000201000180c00201000140a00160b002010000e0700160b00
-1e0f00281400180c00180c00281400261300160b002613001e0f00160b00160b001e0f00
-2613002010000603002613000603001e0f001e0f00160b00160b001e0f000c0600160b00
-160b000e0700160b00281400160b00201000201000160b002814000e0700140a001e0f00
-0e07000e0700201000201000180c000e07000e0700281400201000060300160b00160b00
-160b00140a00201000140a000e07002010000c0600060300060300261300201000180c00
-180c00140a00160b000e07000e0700201000160b00160b00
-281400020100160b00140a002613001e0f00301800201000160b00201000160b00160b00
-140a00140a00140a000603000603000e0700201000281400180c002010001e0f00160b00
-140a00160b002e1700160b000e0700160b00261300160b00160b00160b000e0700160b00
-201000160b00140a000e07001e0f001e0f00180c00201000140a00160b00201000281400
-0e0700281400261300201000201000201000160b001e0f001e0f00160b00301800040200
-1e0f002010002010000e0700201000140a00201000040200160b00160b00160b000c0600
-180c000e0700160b000c0600180c001e0f00ffa448160b003a1d002010000e0700201000
-3219003018004a2500321900321900381c003a1d002814001e0f00281400160b00201000
-160b000c0600ffa1423018000e07000e0700180c00180c00180c002010000e0700160b00
-2010000e0700201000201000060300160b00201000201000160b00020100060300180c00
-160b00160b00180c00160b00160b00201000180c00201000140a002e1700160b00160b00
-180c002814000e0700180c000e0700201000201000160b00160b00180c001e0f001e0f00
-281400201000261300040200160b00160b002814002010000e07001e0f00261300381c00
-160b00201000160b00321900201000301800321900180c00160b00160b002010000e0700
-1e0f000e07002010000e0700281400160b00140a002010002814001e0f000e0700281400
-160b00201000140a00201000140a000e0700160b00180c000e0700180c00060300180c00
-0603000e07000e0700180c001e0f00281400180c00180c00180c00160b002010000e0700
-160b001e0f00140a000e07002613001e0f00140a000e07000e0700060300160b00160b00
-0e0700261300201000140a00160b00180c00160b002814002613001e0f00301800201000
-2814002010000e0700180c000c06000c0600261300261300160b00180c00160b00180c00
-0e07000e0700301800201000160b00301800402000201000201000281400201000160b00
-2814001e0f000e0700180c00160b002613001e0f001e0f002814000c0600ff9e3c160b00
-1e0f002e1700201000321900301800301800261300281400180c00281400261300301800
-2814001e0f00160b00281400160b00201000281400ffa4482010002010000603001e0f00
-1e0f000e0700261300140a00180c00180c001e0f00160b00060300180c00281400160b00
-140a00060300180c00180c00140a000e07000e0700160b000e0700180c001e0f00160b00
-201000060300140a00160b000e0700201000160b00060300140a00160b00160b00180c00
-160b00261300160b00160b00201000201000160b000e0700140a000e0700201000180c00
-040200321900140a00201000160b000c0600180c00140a000c0600140a00160b00160b00
-201000160b001e0f001e0f000e07002010000c0600060300180c000e07001e0f00281400
-0c0600140a00160b002e1700180c002010000e07002e1700160b00160b00281400180c00
-160b00201000261300180c00160b00160b00201000180c001e0f00261300201000180c00
-040200301800180c00140a002e1700140a000e0700180c001e0f00140a00201000180c00
-0e0700180c00180c00201000160b00201000180c00160b00ffa040140a002010000e0700
-281400381c00301800402000422100201000180c003018002010000e0700ff9c38060300
-140a00140a00160b00140a00201000060300160b001e0f001e0f001e0f000c06000e0700
-160b001e0f002e17000e0700180c002010000e0700160b000e07001e0f001e0f00201000
-160b003018002010001e0f00261300261300201000140a00180c001e0f00020100281400
-160b00060300140a00160b00160b00261300180c00160b000e07000e0700180c000c0600
-180c002814000e07002814000e0700261300140a002613000e0700160b00201000201000
-180c00140a00160b000e07002010002010002010002010000c06000e0700201000201000
-0603002010000e0700180c00201000281400201000201000140a002010002613001e0f00
-160b00020100140a00180c00160b00261300201000140a00
-160b00281400261300201000201000160b001e0f000e07002613000e07001e0f00160b00
-2010002814002010001e0f00140a00140a00261300201000180c00140a00140a00180c00
-160b000603000e0700160b00180c00140a00140a00180c00160b00201000281400140a00
-201000201000140a00261300160b000e07002814000e07001e0f000402001e0f00281400
-1e0f00201000180c00160b00160b00140a00180c000c06000e0700160b00160b00140a00
-201000201000020100160b00160b001e0f002010000e07000e0700160b00140a00140a00
-160b00160b00140a00180c00201000140a00ffa0401e0f00201000201000261300321900
-2010004020004a25004221003a1d00381c003a1d00542a00381c00201000261300261300
-160b00261300ffa040160b000e07000603001e0f00160b000e07000e0700020100140a00
-180c00160b00180c00201000160b00180c00160b000c06000e0700140a002010000e0700
-1e0f00160b00261300180c000201002814002010000e07001e0f000e0700160b00020100
-160b00261300140a002010002e1700160b00180c00261300180c000c0600160b000e0700
-2e1700180c002814000e0700281400201000140a000e07001e0f001e0f00261300180c00
-160b00060300160b00160b001e0f002814000e0700261300201000180c00201000180c00
-160b00160b00201000060300160b00201000201000180c000e0700180c004c26001e0f00
-0603002613001e0f00201000140a00180c00201000201000160b00140a000c0600160b00
-160b001e0f000e0700160b00160b00160b00160b00201000180c00140a000201001e0f00
-140a000c06002613002010000e0700180c00261300140a000c0600160b00140a00201000
-301800160b00261300140a00160b00160b002010002010000e0700281400160b00281400
-261300160b000e0700160b00180c00201000160b00201000140a00160b00180c00160b00
-2e17002010000e0700201000281400201000201000180c000e0700140a00180c000e0700
-281400140a002010000e0700160b00140a00201000180c000e0700261300281400ff9d3a
-180c001e0f002e1700281400201000281400180c000e07002010001e0f00261300281400
-422100261300180c00301800060300140a00ffa74e140a000e0700201000180c00281400
-140a00060300140a000e0700281400180c000c06000c06000e0700281400281400160b00
-160b000603001e0f00261300140a001e0f000e07000e07000e0700160b00160b00201000
-2010001e0f001e0f000603002010001e0f000e0700180c00160b00140a00140a00201000
-160b002010001e0f00140a003018000603000e07000e0700180c00140a001e0f002e1700
-0e0700140a00060300160b00180c00201000140a002e1700160b001e0f000e07000e0700
-180c00180c00201000180c002613001e0f000c0600201000180c00180c00140a00201000
-2e17000e07001e0f00180c00040200321900140a001e0f000c0600160b000e0700160b00
-060300160b001e0f00140a002010002613001e0f00140a00201000160b002613002e1700
-0e07000c0600180c00060300160b00140a00160b00201000140a000e07000c06000e0700
-201000201000201000160b00140a00201000140a00201000ffa448180c00160b00301800
-3a1d002e1700381c00381c003a1d002814002613003018003018000e0700ffa448281400
-201000201000160b000e07002e17001e0f00160b00160b001e0f00261300180c00180c00
-0c0600160b00201000160b00060300160b002010000c0600160b000c06001e0f00261300
-140a00281400261300160b00201000160b001e0f000c0600180c00160b00160b00180c00
-160b002010002e1700160b00140a001e0f00261300060300160b00060300160b00261300
-1e0f002010001e0f000e07002814000e07000e0700261300201000261300060300160b00
-2814002814002814001e0f00180c001e0f002e1700160b002010002613000e0700060300
-0e0700160b00160b000603002613002613001e0f001e0f000e07000e07000c0600160b00
-0e0700160b000e0700180c00281400180c000e0700201000
-160b000e07002010002010000e07000e0700160b001e0f00281400201000261300160b00
-0e0700160b000e07002010000e0700201000160b00160b00180c00040200201000201000
-180c002010002010000e07001e0f002814000e0700201000140a000e0700261300201000
-180c00140a000603001e0f00261300160b000e07000e07000603002010002010000c0600
-0603002613002814002e17002613000e07000c0600201000301800140a00140a00160b00
-201000160b00180c00261300160b000e07001e0f001e0f001e0f00160b00201000321900
-201000261300160b000e0700201000ffa1423a1d000e07001e0f00160b002613002e1700
-381c004a25005229006633005a2d005c2e006432004422003a1d00301800140a00281400
-160b00160b00281400ffa142281400060300140a00180c00180c00180c001e0f000e0700
-180c00140a00160b000e0700140a000e07000c0600160b00160b00160b00160b000e0700
-160b000e0700201000140a00160b002613000e0700160b000e07002814002010000e0700
-2010000c06000c0600261300140a00160b00201000281400140a00160b00160b00160b00
-261300261300160b000201000e0700180c00160b001e0f002814000e0700201000281400
-180c000e07000e0700140a00281400160b00261300160b00160b00160b003a1d00201000
-1e0f00201000281400180c00160b00160b002010001e0f000e0700140a00160b00180c00
-060300180c00160b001e0f00160b00160b00060300160b00321900180c002010001e0f00
-160b00160b002814002e17000c06002814002e1700140a00160b002613003a1d002e1700
-2010000e0700160b00180c00180c00201000140a00180c00180c00261300160b00261300
-140a00261300060300180c002010002613001e0f00301800160b00160b00281400180c00
-160b000e0700160b00381c00180c00180c00180c00160b00180c001e0f00060300160b00
-160b001e0f00040200201000261300180c00180c000e0700160b00140a00140a00180c00
-201000201000160b002814000c06002010001e0f00281400160b00160b00140a00160b00
-ff9b36180c002010001e0f000603002010000402002010002814000c0600020100201000
-281400201000160b00201000ffa244ffa9520e0700160b001e0f00281400160b00201000
-201000180c00060300261300020100180c00140a00160b00160b001e0f00180c00201000
-1e0f00201000160b000e07001e0f00201000160b001e0f000e0700261300180c00381c00
-281400140a000c06000201001e0f000c06000c0600180c00140a00261300180c000c0600
-281400261300180c000e0700140a000201002010001e0f00140a000c06000e07001e0f00
-0e0700160b00160b00160b001e0f002814000e07002e1700160b00180c00180c00140a00
-0e07002010002814000e07000e0700140a001e0f00201000140a00180c001e0f00160b00
-281400140a00060300201000261300180c00160b00160b000c0600180c00140a000e0700
-1e0f001e0f000e07001e0f000e0700160b00160b00201000281400160b00140a00261300
-180c00140a000201002e17001e0f00060300160b000e0700301800180c00160b00201000
-160b002010000e0700160b00261300180c00140a00ff9428180c00281400160b00160b00
-3018002613003a1d00321900442200201000301800180c00160b00180c00ff9b36281400
-140a00040200180c00180c00060300020100160b002613002814001e0f000e07001e0f00
-140a000e07001e0f00261300281400201000160b00201000140a001e0f00180c00180c00
-0c06002010002814000c0600140a00160b001e0f00261300140a000e0700160b00201000
-0e0700160b00140a00201000180c00040200140a00160b00261300261300301800160b00
-201000140a000e07000c0600160b002e17002010002613002e1700201000281400160b00
-4020002010000c06001e0f000e07002010000e0700201000160b00060300180c00140a00
-2814001e0f00140a00160b00281400160b00140a001e0f00160b002e17001e0f00160b00
-160b00060300140a00180c000e0700160b00140a00160b00
-2010002613002010000e0700180c00160b00140a000e0700160b00201000201000201000
-201000160b00160b002010000e07004020000e0700180c002e17001e0f000e0700140a00
-2814000e0700140a00160b00160b001e0f00140a001e0f00180c00060300140a00160b00
-0e0700180c002010000e07000e0700140a00140a00140a00261300180c00160b00160b00
-160b00140a001e0f00180c00301800160b00261300160b00201000201000201000140a00
-160b00160b002613001e0f001e0f00281400160b00281400160b000e0700180c00180c00
-2613000e0700160b00201000180c00ffa448160b00281400160b002e1700180c00301800
-4020005a2d006c36007038007e3f00763b006e37005c2e00381c00442200301800281400
-321900180c00201000ff952a2814002010000e0700160b00160b000603001e0f000e0700
-1e0f00140a00160b00180c000e07000e07001e0f00201000040200140a00140a000e0700
-2814000e07000e0700160b001e0f00140a00201000261300180c00180c001e0f00381c00
-020100281400160b00160b00180c00201000261300160b00160b001e0f00261300201000
-140a00160b002010001e0f000c0600180c00261300261300140a00281400160b00301800
-180c00160b00201000180c00180c00180c00301800281400201000281400261300201000
-201000201000201000160b00180c00160b000e0700281400160b002814001e0f00281400
-201000201000160b002e17000e07000e07001e0f001e0f00160b000e07001e0f00261300
-0c06002e17003219000e07002010002613002010000e07000e07000c06002613000e0700
-1e0f001e0f002010001e0f001e0f00140a00201000201000180c00201000201000201000
-2e17002814000e0700261300160b000402000e07002010001e0f000603000e07000e0700
-160b000e0700160b000e0700201000060300180c00281400060300140a00281400201000
-1e0f00180c00180c000e07001e0f002814000e0700180c002010000e07000e0700180c00
-0402002010002010001e0f00201000261300180c002e17001e0f00140a002814001e0f00
-0e0700ffa64cffa54aff9d3a160b00160b00160b00160b00201000160b000e0700281400
-160b00ff9e3cff9e3cffa0402814000e07003018000e0700201000160b00201000160b00
-0c0600160b00140a00201000180c00160b00201000160b000e0700201000140a001e0f00
-180c000e0700160b00160b00160b00160b00160b00040200261300140a00281400180c00
-060300281400160b00140a001e0f00381c000e07000603000e0700201000180c00201000
-180c000e0700160b00160b00160b00140a00160b000603000e0700180c001e0f00180c00
-160b00160b002e1700180c000c0600201000140a001e0f00180c000402003018001e0f00
-160b000603002010001e0f001e0f00160b00201000180c00160b000e0700201000020100
-2010001e0f002010003018001e0f003018002e1700281400140a000c0600160b00261300
-140a002814001e0f001e0f00281400140a00140a000e0700180c00201000160b00160b00
-160b004c2600140a002814000c06001e0f000c0600160b00160b00160b00261300160b00
-060300160b00160b00160b002010001e0f00180c00ffa244060300261300301800201000
-2e17003a1d002814003219004a2500281400160b00281400201000ffa64c0e0700060300
-2613000e0700160b00281400160b00201000180c002010000e07001e0f00160b00160b00
-0e0700160b00160b00281400060300180c000c0600140a00281400160b000c06000e0700
-201000160b001e0f000e0700180c00201000180c00160b00160b00201000180c00160b00
-140a00201000180c00201000281400180c00261300160b000402001e0f00160b00201000
-1e0f00160b000e07000e0700160b002010000201001e0f001e0f00160b001e0f00261300
-0e0700140a00201000140a00160b000c0600180c000603002814000e0700180c000e0700
-201000180c00140a00140a00160b000c0600160b001e0f00201000140a002010001e0f00
-0e0700201000140a00160b00281400201000180c002e1700
-180c002010001e0f00180c00160b00160b002814000e07002814002010003018000e0700
-160b00160b002814001e0f00160b00160b00160b000e07001e0f000603001e0f00180c00
-0e07001e0f000e07000603001e0f00160b00180c00201000180c00160b001e0f00201000
-180c00180c000e07001e0f00140a00160b00160b00160b000e0700140a002814000e0700
-201000201000060300160b001e0f00180c000c0600281400160b000e0700180c00261300
-0e07001e0f002814000603002e17000c06000c0600201000281400140a000201000e0700
-0e07000603003a1d00261300201000ffa142160b00180c00201000160b00201000321900
-4a2500542a006e3700984c009249009048008844005c2e004422003a1d002e1700261300
-2e1700201000201000ffa74e201000160b000c0600201000160b00140a00060300140a00
-2010000e0700160b002010002814001e0f00180c00140a00140a00160b00060300140a00
-060300160b001e0f000e0700180c00180c002814000e0700201000160b00060300281400
-2613002613000603000e0700160b00180c001e0f002814002010000e0700180c00261300
-0e0700140a00140a00140a00140a00160b00301800140a00160b00140a00201000160b00
-0e07001e0f002010000e07001e0f00180c00201000261300140a00201000160b000e0700
-140a00140a002613001e0f00301800140a00201000180c00160b00261300281400160b00
-0e07000c06000e07000e0700160b00160b001e0f000c0600180c00180c00160b00261300
-0c0600160b00301800140a000c0600060300180c00180c00201000140a001e0f00160b00
-160b00422100140a002010000c0600201000261300201000060300160b000e0700261300
-1e0f00201000261300160b000c0600160b00261300201000180c00281400201000160b00
-0e07002010000e0700180c000e07002e17000e0700160b002010000e0700281400160b00
-160b00160b002010002613001e0f000e07001e0f00140a00301800160b001e0f000e0700
-040200160b00180c001e0f00261300281400281400160b00160b00140a000c0600140a00
-160b002e17002010002e1700ffa040ffa244ff9b36ffa142ffa244ff9d3aff9c38ffa54a
-ff9d3a160b002e1700261300140a00140a000e0700201000180c000201000e0700281400
-0e0700261300261300140a00140a00140a001e0f000c0600180c00060300160b00160b00
-160b00160b00201000160b00180c000e07000e0700060300160b00160b00160b00261300
-0c0600060300140a00180c002010001e0f00281400140a000e07001e0f000e0700160b00
-201000140a00281400140a00040200201000201000160b001e0f00180c00140a00180c00
-140a00160b00180c00160b00160b000e0700281400281400201000160b00301800160b00
-201000140a00160b00160b00180c00201000140a00261300160b00140a00140a00201000
-140a003018002010002814002010002010000e0700160b00140a00160b000e0700201000
-020100180c00160b002010001e0f00281400301800160b001e0f00201000180c000e0700
-180c000e07000c06002814001e0f000e07000e07001e0f00020100160b002613001e0f00
-0402002010002e17002010002010000e07000e0700ffa54a201000201000261300201000
-321900402000301800422100301800160b00160b00180c00180c00ff9e3c281400060300
-201000201000180c000e07001e0f00060300140a00160b001e0f002010000e0700180c00
-160b00160b00201000261300160b001e0f002010002613002613000e0700201000160b00
-1e0f00140a00140a00201000201000160b002010003018002010000e07002e1700281400
-160b001e0f00140a00180c000c06003a1d00060300261300160b00160b00140a00160b00
-160b000e0700160b00201000160b00160b00201000201000160b00180c000e0700160b00
-2814000e0700201000160b00201000160b002010000e07001e0f00180c00160b00160b00
-160b00040200140a00201000140a00201000160b00160b00180c001e0f001e0f00180c00
-180c000e07000e0700140a002e1700060300201000160b00
-0e0700261300201000160b00180c00160b00201000160b00180c001e0f00180c001e0f00
-160b00201000201000060300201000261300201000160b00180c00160b00180c001e0f00
-160b000e07000c06000e0700160b00180c002e1700160b00160b00180c00180c00201000
-0c0600201000160b00201000180c000c0600160b001e0f00201000060300160b00160b00
-160b000e0700020100160b001e0f00160b00140a00180c004020000e07000e0700281400
-201000281400160b00160b003018002e17002814000c0600281400180c002e1700281400
-160b00281400180c002010000c0600ff9c38281400160b00160b00140a003a1d003a1d00
-4c2600643200864300a25100984c008a4500763b006e37003219003a1d00281400381c00
-261300160b000e0700ff9932301800201000180c00160b000c06000e07001e0f00060300
-2814002814000c06002613002814002814000e0700160b00060300160b002814000e0700
-180c00160b00201000160b00160b00381c000e0700281400201000180c002814000c0600
-160b000603001e0f00201000201000140a00140a001e0f00160b00160b001e0f00201000
-1e0f002010000e0700180c00201000180c00180c000e0700160b000c0600281400201000
-160b000603001e0f001e0f00160b00180c002814002613002814000e0700160b00060300
-261300160b00140a00201000281400060300140a00160b00281400201000180c000e0700
-1e0f001e0f001e0f00140a000c0600180c002613001e0f00180c00201000140a00180c00
-1e0f002010000c0600140a001e0f00301800060300201000180c00261300160b000e0700
-160b000e07000c0600140a00281400281400180c00160b001e0f00160b00140a000c0600
-160b00160b00060300160b000e0700160b002613001e0f002e17000e0700201000201000
-180c00060300160b00201000180c00180c001e0f000201000e0700281400201000140a00
-180c00160b000e0700040200261300180c001e0f000e0700201000180c00261300180c00
-0e0700140a002814000c0600140a002613002010002814001e0f00140a00180c00160b00
-160b001e0f00201000180c00180c000e0700201000201000160b000e0700160b000e0700
-201000160b001e0f000603001e0f00140a00261300201000140a000c0600060300201000
-0e07000e0700201000160b00160b001e0f002613000e0700180c001e0f00261300281400
-0402001e0f002814001e0f000e0700060300140a001e0f00160b00060300281400160b00
-160b001e0f00060300180c000e0700160b000e07000c0600140a000e07000c0600180c00
-0e07002e17001e0f00281400261300261300201000180c002010000e0700261300160b00
-0e0700180c00160b000c06002e17000e07001e0f00140a001e0f000e0700180c000e0700
-201000160b00180c00160b001e0f00140a00261300180c00201000160b00180c00180c00
-201000160b00140a00281400060300140a00060300201000201000160b000e0700201000
-0e0700140a002010002010002e1700160b00261300281400201000020100201000160b00
-160b00160b00160b00201000160b001e0f000e0700160b002613002814001e0f000e0700
-0e0700160b000402001e0f001e0f00201000201000ff9e3c201000160b00201000160b00
-3018002e17004020004221003a1d00281400160b00160b001e0f00ffa040140a000e0700
-201000140a00160b00180c00160b00180c00281400180c00180c002613000e0700180c00
-2010002010001e0f00201000180c00160b00201000160b00180c00060300261300180c00
-281400160b000e0700160b00160b00020100140a001e0f00301800160b00160b00160b00
-140a00180c00442200160b00160b00180c00160b00160b00060300160b00140a000c0600
-201000201000140a001e0f00201000180c00160b00160b002814000e0700160b00160b00
-201000140a00201000060300201000180c00180c000e0700261300281400140a000e0700
-201000160b00261300160b00160b000e07002010000402001e0f00160b00160b00261300
-281400281400180c00201000180c000e0700160b001e0f00
-201000140a001e0f001e0f00160b002e1700201000180c00180c00140a000c06001e0f00
-140a00201000180c00180c00201000160b00160b00060300180c00140a000e0700261300
-301800140a00160b00160b001e0f00140a000603002613000e0700180c000e0700060300
-140a000e0700160b001e0f00201000160b000e07000e0700160b00160b002e1700060300
-2010001e0f000e07000e0700140a00180c002010002010002010000e0700160b001e0f00
-201000160b001e0f00160b001e0f00301800160b00140a000e0700160b00180c001e0f00
-2e1700180c001e0f00160b000e0700ffa4481e0f000603002e1700201000321900402000
-3a1d00783c007e3f009249009a4d00904800763b006c3600422100281400301800160b00
-201000281400160b00ff9c380c0600201000160b00180c00180c00281400040200160b00
-180c00160b002613000e0700201000201000140a00180c002814002010001e0f00201000
-2814000e0700140a00281400201000180c002e1700180c00201000180c00281400160b00
-261300180c00180c002613001e0f00180c00040200140a00261300160b001e0f00140a00
-180c00160b00201000140a00201000201000160b000402001e0f00180c00281400160b00
-160b00160b00201000281400180c00160b002613001e0f001e0f000e0700201000160b00
-0e07000e0700201000060300140a00140a00261300201000180c000603000e0700140a00
-0e0700261300160b000e0700281400201000201000261300160b00160b000e0700201000
-201000160b000c06002814003a1d000e0700160b000e0700160b00140a00160b001e0f00
-180c00180c000e07000603002010002613000e07001e0f000402000e0700060300160b00
-160b00160b00160b00180c002010000e0700281400160b00281400160b002010001e0f00
-020100201000160b00261300201000140a00160b000e0700160b00160b002010000e0700
-0c06000c06000c0600140a00160b000e07002814002e17000e0700160b002814001e0f00
-180c001e0f00160b00301800201000160b00160b000c06001e0f00281400201000140a00
-0e0700180c00140a00281400261300321900201000160b00180c00160b00160b00201000
-160b00160b000603000e0700160b000e0700180c00160b00402000140a00180c00180c00
-060300180c002010000e07001e0f001e0f00281400140a003018000c06002e1700160b00
-180c00160b00201000180c00140a00020100261300160b00160b00180c001e0f00160b00
-160b00140a00060300160b000603000e0700201000160b001e0f000e0700140a00180c00
-0c0600180c00160b00160b000e0700281400281400140a002010000e0700180c00140a00
-160b00140a00160b000e07000e07002010001e0f00180c00201000140a004221000e0700
-201000060300180c00140a00160b000c0600180c00060300160b00160b001e0f001e0f00
-2010001e0f00160b000402000e07000e0700160b001e0f00180c00281400201000180c00
-180c000c06002613002613000e0700201000160b00201000160b00201000180c00160b00
-180c000e0700180c00180c00201000281400201000381c00160b00180c00180c00140a00
-1e0f00180c001e0f00180c00201000140a00321900ff9c382010002010003a1d00422100
-2010002010003219003a1d002814002e1700140a00160b00ff9e3c0c06001e0f00160b00
-3018001e0f00201000160b00060300261300140a00160b000603000e0700180c00140a00
-160b00180c00201000160b000e07000c0600160b00160b00180c000e07000e07000e0700
-0e0700160b000603000e0700160b000c06000e0700180c002010002613002010000e0700
-1e0f002010001e0f00160b000e07001e0f000e07002e1700261300201000140a002e1700
-1e0f000e0700201000201000261300160b00160b00201000160b002010002613000e0700
-201000201000160b00160b00140a001e0f00261300160b00261300140a00160b00180c00
-0201000c0600140a000e0700281400180c002010000c0600180c00201000160b00201000
-180c000e0700281400160b002814003018000e07000e0700
-1e0f00261300140a00160b00201000180c00201000201000160b000e07000e07000e0700
-201000160b00160b00160b000e0700140a00180c00160b001e0f002010002814001e0f00
-0c0600281400160b00281400201000180c000e0700201000160b002010000603000e0700
-2e1700040200160b00020100060300160b00160b001e0f000603000e0700201000160b00
-180c00160b002010000e0700160b00160b00060300261300160b001e0f001e0f000e0700
-0e0700160b00160b000c06000603000e0700201000140a00140a00160b000e0700180c00
-060300261300160b00201000160b00ffa244160b00140a003a1d003018001e0f002e1700
-522900643200703800783c007e3f00763b006e3700542a00402000281400281400301800
-381c00201000201000ff9830180c000e07000e0700160b00281400201000040200201000
-1e0f001e0f00180c00281400180c00281400160b00160b00160b001e0f00201000301800
-140a00160b001e0f000c0600261300201000180c00180c000e07001e0f001e0f000e0700
-281400281400261300201000180c002010000c0600140a00180c000e0700201000180c00
-160b00140a000603001e0f00180c00140a00160b002010000e0700160b00180c00180c00
-160b00201000160b001e0f002e1700381c001e0f00140a00160b00281400201000281400
-160b001e0f00201000160b00281400160b00160b000e07001e0f000c0600160b00180c00
-0e07002010001e0f00160b00160b001e0f00060300160b00201000160b00180c00261300
-140a002814000e0700301800160b00281400201000160b00180c00160b000e0700060300
-180c002814001e0f000e07002010003018000603002814002e17002010000e0700201000
-0e07000e07000c06001e0f002613002010001e0f00140a002613000e0700040200060300
-180c00140a000c0600201000160b00140a00140a000603000c0600261300281400140a00
-0e07002010000201000e0700201000160b001e0f000e0700160b00180c00180c00160b00
-1e0f00140a000e07002010000e0700281400160b00140a00160b00160b00281400201000
-1e0f00140a002814000603000e0700160b00140a000e0700180c00261300180c00160b00
-2010001e0f000e0700160b00160b00180c00160b00060300160b00160b001e0f000e0700
-180c000e0700140a000e0700060300160b00160b00140a00160b00160b00160b001e0f00
-0e0700180c00201000160b000e0700140a00201000180c002010000e0700180c00180c00
-0e07001e0f00160b000e0700140a00180c00160b000c06001e0f000e0700160b00160b00
-020100261300160b002814000e0700060300160b001e0f000e07000e0700281400201000
-180c00180c00140a00140a00140a00180c00160b00140a000e0700160b00281400140a00
-0c06002814000e0700160b002010000e0700160b00160b000c0600201000160b00261300
-301800160b000c0600180c000e07000e0700180c00201000160b00160b003018000e0700
-2e17000e0700140a00140a002010001e0f003018001e0f00060300060300180c00160b00
-160b000e0700160b00060300160b000e0700201000281400201000140a00160b00180c00
-0e0700160b00160b00201000201000201000160b00ff9c382e1700160b002814001e0f00
-3219002e1700301800281400201000160b00201000201000ff9c381e0f002010000e0700
-1e0f00140a001e0f00180c00160b002010001e0f001e0f00160b001e0f00160b00201000
-160b00140a00160b00301800140a00060300180c00160b00201000160b001e0f00160b00
-0c0600140a000e0700180c000e0700281400180c00160b000e07001e0f002010001e0f00
-0c0600160b00201000140a00160b00160b00160b00160b000e0700060300180c000e0700
-261300140a001e0f00160b000e07000e0700140a002010001e0f00160b001e0f00160b00
-0e0700140a00261300180c00201000140a00180c00160b000603000e0700180c000e0700
-1e0f00201000180c00160b00261300160b002010002010000e0700060300160b00201000
-0e0700140a002010000e0700180c00160b000e0700140a00
-160b00160b000c0600201000201000140a000e0700261300180c000e07000e0700160b00
-160b002613000c0600160b00281400160b00140a002814000c0600180c00201000160b00
-180c00140a002010000603002e1700160b00160b00180c002010002e17000e0700201000
-201000180c001e0f00281400140a001e0f00281400ff9c38ff9c38140a00160b00160b00
-201000180c000e07000c0600201000261300160b001e0f00281400201000140a001e0f00
-1e0f00180c00180c002814003018000e0700201000201000180c00140a001e0f00201000
-160b00180c00160b00180c00140a00ff9d3a2010002814002814003018002e1700402000
-4221004221005c2e005e2f006c36006633005a2d004a25002613002e17003018000e0700
-261300180c00160b00ffa1422010002010002814001e0f00261300020100060300201000
-201000201000140a00180c00180c00060300140a00261300201000060300160b00261300
-160b00160b00160b002e1700140a00040200160b00160b000e0700160b00261300201000
-180c00180c00201000160b00180c00160b000e07000c0600261300160b00160b00381c00
-160b00160b000e0700160b000e0700201000140a001e0f002814000c06000e0700140a00
-1e0f002613000e0700160b001e0f002010002010002814002010002814000e0700060300
-180c00160b000e0700201000201000160b00160b00160b00160b00140a00160b000c0600
-160b00160b00281400160b000e0700201000160b001e0f00060300301800140a001e0f00
-160b00180c00160b000e0700160b00180c001e0f000e0700160b00281400160b00201000
-0e07002010000c06000201002010001e0f00281400201000140a002613001e0f001e0f00
-2010001e0f00180c000603003a1d00160b000e0700160b000603002e17001e0f00180c00
-160b00281400140a001e0f00140a00160b001e0f00160b002010001e0f000e07002e1700
-2010001e0f00160b002010001e0f00140a004221002613001e0f00261300160b00201000
-0e07002010001e0f00180c00281400160b000c0600201000160b00201000160b00060300
-160b00180c00020100180c00160b00160b00160b00160b001e0f001e0f00060300261300
-201000201000160b002010002010002e17000c06002010000c06001e0f00160b00201000
-140a001e0f00180c00160b000e07000e0700261300160b001e0f00281400201000180c00
-180c000201000c0600261300160b00160b000603000e07000e07002010001e0f00020100
-160b00160b00201000160b00160b001e0f002010000e0700201000160b002e1700261300
-160b00160b000e07000e07002613000e07001e0f000e0700180c00180c00281400140a00
-140a00180c00160b00261300160b000e07002010002010002010000c06001e0f00180c00
-160b00201000140a00201000160b00180c00140a00201000180c00201000261300140a00
-0e07000e0700261300160b00180c002010001e0f000e0700201000160b000e0700281400
-160b002814002814003018002010002010000e07000e07001e0f00160b00160b00160b00
-201000140a00201000281400160b00180c00160b00160b00180c003018000c0600060300
-0e07002814002010000e0700201000160b00ff9932160b00140a001e0f00201000201000
-2e1700301800281400201000402000201000261300201000ff9d3a261300201000180c00
-0e0700180c00140a000e07002010000e07000c0600201000180c002814000e0700321900
-2010002613002010000e0700160b00281400180c00201000140a00060300160b00140a00
-1e0f003219000603002814000e07002814000603000e0700060300180c00180c000e0700
-180c000c06000e0700160b001e0f00201000160b00201000180c00201000180c00201000
-281400281400160b00160b00160b001e0f000e0700201000180c000c06001e0f001e0f00
-2010001e0f00160b000e0700160b00301800180c00201000180c00160b00160b00160b00
-060300160b001e0f000e0700160b00180c002010000e0700180c00160b00160b001e0f00
-201000160b00140a00281400180c000e07000e0700160b00
-1e0f000e07001e0f00160b00160b00180c00201000140a002814000c06002613000c0600
-180c00201000180c00160b001e0f000e0700261300180c00140a000e0700160b00201000
-0e0700180c00160b002613001e0f00180c00140a000e0700160b00201000060300180c00
-2e1700201000020100160b00180c00ff9b36ffa54a281400160b00ff9932ff9e3c261300
-160b002010002010000e07000603000603002010000e0700201000160b000e0700281400
-160b00160b00160b00060300281400160b000e0700160b00160b00201000201000180c00
-160b002e17000e07000e07001e0f001e0f00ffa64c0e0700160b001e0f00160b00281400
-3219002e17003a1d004a2500321900442200321900321900381c00201000261300180c00
-1e0f00201000ffa0400c0600281400281400180c001e0f00140a00201000160b000e0700
-261300160b00160b00301800180c000e0700040200281400201000160b002010000c0600
-0e0700180c001e0f002e17000e07000e07001e0f00160b001e0f002814000c0600140a00
-160b00160b00261300201000060300160b002010000e07002e1700180c000e0700060300
-0e07001e0f00140a00281400180c000e07001e0f002010000e07002010000e0700160b00
-2814000e07000e0700201000180c000603002613000e07001e0f00140a002613000e0700
-201000160b002010000e0700281400180c00180c002010000e0700060300180c00140a00
-160b00140a00180c000e07001e0f00180c00160b00180c00281400201000201000160b00
-0e07000e07001e0f00160b00261300160b00180c00160b00160b00160b000e07001e0f00
-180c00160b002010002010003018000e07001e0f00140a00180c00201000140a00261300
-1e0f000e0700201000160b00160b001e0f002010000e0700321900201000281400160b00
-180c00160b00281400180c00180c001e0f000c06000c0600140a00160b00201000060300
-0c06001e0f00140a00160b00160b00281400160b00281400060300160b00261300180c00
-180c00160b000e0700160b00140a00040200160b000e07000e0700140a000e0700201000
-2814000e0700201000261300261300201000201000140a00160b00201000160b00160b00
-0e07002613002010000e0700201000301800281400160b001e0f00281400140a00301800
-2814002010002010002010000603001e0f00060300160b00201000201000160b002e1700
-201000160b001e0f00160b00160b001e0f002010002e1700281400180c00180c00160b00
-381c000e07000e0700160b000c0600301800261300160b00201000160b00160b00281400
-2010000e0700180c000e0700160b00160b000603000603000e07000402001e0f00281400
-2613001e0f000c0600180c00281400261300060300180c00160b000603001e0f00261300
-060300160b00201000160b00160b00060300160b00160b00140a00160b00201000281400
-0c06002e1700160b00281400180c00180c00201000040200140a00180c001e0f00060300
-140a00180c00180c001e0f00261300160b00180c00160b000e0700201000201000201000
-160b00180c00160b000e0700261300201000201000060300180c001e0f00160b001e0f00
-160b00140a00201000160b000e0700201000ffa0400e0700180c00301800281400201000
-2814002e1700180c001e0f00160b00180c001e0f00ff9d3a0603001e0f000e0700201000
-160b00160b000603000c0600160b00160b00140a000c0600180c00180c00160b00201000
-140a00160b000e07001e0f001e0f00160b00180c000603002814001e0f001e0f00140a00
-0e07002613000603000e0700060300201000140a00160b00140a00201000201000160b00
-0e0700201000160b00160b00140a00201000140a00180c00160b003219001e0f000e0700
-0c0600160b001e0f002010000e07001e0f00281400140a00160b002010000e07000e0700
-2010001e0f000e0700160b001e0f00180c000e0700180c00160b002010000c0600160b00
-281400160b001e0f000e07001e0f002613002613000e0700140a00201000140a00020100
-060300201000281400261300160b00281400160b00160b00
-140a001e0f00180c00140a002613000e07002010001e0f000e07002e1700020100180c00
-160b00201000160b001e0f00261300201000140a00281400261300201000160b00261300
-160b00261300180c00160b00180c00140a001e0f00201000140a00180c000e0700201000
-1e0f00180c000e07000e0700261300160b00160b001e0f002010001e0f00160b00ffa952
-261300281400281400201000201000140a00160b000e0700140a00140a00160b00201000
-160b00301800281400160b001e0f00160b002814001e0f002010000e0700281400160b00
-140a00201000201000140a00261300201000ffa54a160b00281400201000281400180c00
-261300321900381c004422004020004221003018003a1d00261300261300301800180c00
-281400180c00ffa1422814000e0700180c001e0f000603000e07000e0700160b00140a00
-140a00180c00020100160b00180c00180c00160b000e07000c0600160b000e0700180c00
-201000140a00201000261300180c00160b00140a000c06001e0f00160b00160b001e0f00
-3219002010001e0f000e07002010000c0600140a001e0f00140a00201000140a000c0600
-0c06000c06000603002613000c06000e07001e0f00160b002e1700180c00060300281400
-160b002010000c0600201000160b00160b00281400180c00140a00160b00140a000e0700
-2010000e0700201000201000381c00261300160b00160b00160b000402001e0f00180c00
-160b00201000160b00160b00201000180c002814001e0f00160b00060300160b00160b00
-160b00321900261300140a002814002613000e0700180c00160b000e07000e0700160b00
-2010001e0f00040200180c002010002613001e0f00160b00180c00140a00201000180c00
-1e0f00160b000603000e0700160b002010000e07000603000e07001e0f000e0700140a00
-140a00140a00160b00140a00160b000e0700281400180c00160b00180c000e0700020100
-160b00201000180c002814000e07000e0700201000160b00281400201000060300201000
-201000160b00140a001e0f00201000301800160b00160b00201000160b00160b00160b00
-160b000e0700160b000e07000603001e0f00140a00201000180c00201000160b00160b00
-0e0700281400201000201000160b00060300180c00040200140a000e0700160b00261300
-0201000c06000e07000e0700020100140a00261300160b00160b00261300160b00281400
-0e0700160b000e07002010001e0f00281400201000180c000e0700160b00201000160b00
-140a002814000e07000c0600140a00140a00160b00160b00281400180c00201000140a00
-0201002e1700261300381c00160b00020100180c000e0700180c00180c00140a00140a00
-160b002613002613002814002814002010000e0700020100281400160b00301800201000
-140a000e0700140a002010000e0700160b00160b000e0700140a00060300160b00180c00
-140a00140a002010000e0700160b00140a001e0f000603000e07002e17000e0700180c00
-1e0f00180c00180c00160b002814002814001e0f00180c002814001e0f002e1700281400
-0201000e07001e0f00201000160b00201000201000160b00160b003018002010000e0700
-2814001e0f00160b000e07002010000e0700ffa244140a002010002010002613002e1700
-1e0f001e0f003018002814001e0f000e0700180c00ff9c380e0700281400160b00321900
-180c001e0f00160b00180c000e07001e0f000e0700060300140a00160b00140a00140a00
-0201001e0f002613000201000e0700140a000e0700160b00281400160b00201000020100
-2010000e07001e0f000e07000603000c06002814001e0f00180c002010002010001e0f00
-140a00140a001e0f00180c00160b00160b00060300160b00180c001e0f00261300160b00
-180c001e0f000e07000e0700281400160b002010002814002010002814002010000c0600
-201000281400180c00201000140a002613000c06002010002613001e0f00281400281400
-0e07002010001e0f00281400281400180c002010000e07000603000201002814000e0700
-160b00281400261300180c00281400160b000c0600160b00
-2814001e0f00201000261300201000180c00160b001e0f00180c000e0700160b00140a00
-0e0700160b00160b00160b000e0700180c001e0f000e07002e17002010002010000e0700
-180c00160b00180c00180c00180c001e0f000e0700201000201000180c001e0f00140a00
-2010000e0700160b00180c00ff9c380201000e0700040200160b00201000140a00160b00
-ff9932180c00160b00180c001e0f002e17001e0f00281400140a00160b00040200180c00
-160b001e0f00160b00140a000402002814000603002010001e0f00020100180c00281400
-201000180c000e07002010002010000603000e0700ffa040201000180c000e0700201000
-140a002010003a1d003018005a2d00261300381c00301800261300180c00201000201000
-0e0700ffa142201000160b00201000160b00160b00160b000e0700160b00140a001e0f00
-040200060300261300140a000e07000c06000c0600140a00160b00201000140a001e0f00
-140a00160b002010003018002010001e0f00160b00160b00140a00140a00201000281400
-0e0700160b002010000c06002010000e0700180c00140a00160b001e0f00160b00321900
-0e07002010001e0f002010000e07000e0700160b002010002010002613002613000e0700
-160b00160b00160b00261300140a001e0f00180c000c0600201000140a00060300140a00
-160b00180c002613001e0f002010000e07001e0f00281400040200281400261300201000
-2010002e1700281400160b000e07001e0f002814002010001e0f00201000281400180c00
-060300160b00201000160b00060300140a00201000160b00160b000e0700160b00201000
-160b002613001e0f000e0700201000140a001e0f00140a00201000201000160b000e0700
-180c00060300160b000e07002613000e0700160b00160b000e0700160b00201000160b00
-201000160b00281400180c00180c00160b003219002814000e07000e07001e0f00040200
-160b001e0f000e07000603000e07002010001e0f00180c00281400201000160b002e1700
-0e07000e0700201000201000180c000e07000c06000e07002814002010002613000e0700
-0e0700301800281400160b00180c000c06001e0f00201000160b002010001e0f000e0700
-140a000e0700180c000c0600160b001e0f00180c00160b00201000201000160b00201000
-2613000c0600201000180c001e0f00140a00140a000e0700160b000e0700201000160b00
-201000180c000e0700140a000e07001e0f00281400160b000e0700160b00160b00180c00
-140a00180c00160b00201000180c002613000e07000c06002e17000e0700140a001e0f00
-0c0600201000160b00140a00160b00020100381c00180c00160b000c06002010000c0600
-180c002010002613000e07000e07003018000603000e0700160b00261300160b001e0f00
-0e07000e07000e07000603001e0f00160b00140a000e0700180c00140a00180c001e0f00
-0e0700281400201000040200160b00160b00281400180c00140a002613002010000c0600
-160b000e07002814000e07001e0f00261300160b000e07000c0600201000201000140a00
-0e07000e07000e0700140a00180c000e0700180c00160b00261300160b00160b00180c00
-160b001e0f001e0f00060300160b000e0700ffa448160b00180c00281400261300201000
-3018001e0f00160b002e1700281400261300ffa4482613000e0700160b00160b00180c00
-201000160b00201000160b00160b00140a00180c00160b000e07001e0f001e0f00160b00
-0e0700160b00261300261300160b00261300160b000e0700160b00160b000603000c0600
-2814002010002010002010000603001e0f00140a000c06002010002814000e07001e0f00
-160b00140a00160b002010001e0f00201000281400180c001e0f00160b00281400281400
-160b000c06003a1d000e0700160b00160b00201000160b00261300140a00201000201000
-160b002010002010002613000e0700140a001e0f002e17000e0700261300201000140a00
-0e0700180c00140a00201000201000180c00180c00261300060300201000180c00201000
-2010000e0700201000201000180c000e0700201000140a00
-140a001e0f00261300140a001e0f001e0f001e0f00160b00281400040200201000160b00
-160b00281400160b00160b00160b00281400201000301800281400201000201000201000
-160b000e0700060300201000281400140a000e07002010001e0f000e07000e0700060300
-1e0f001e0f00160b00ff9c381e0f000e0700160b00201000201000160b002e1700160b00
-2e1700ffa54a160b00060300301800160b00160b00060300180c000e07000e07001e0f00
-0e07002010001e0f00160b00160b00160b000e0700180c00160b00160b00160b000e0700
-160b00281400180c00201000201000140a00281400ffa448381c00180c00261300180c00
-2010002010002814001e0f00381c001e0f002e17002010001e0f002e1700201000261300
-201000ff9e3c140a00140a00180c000e0700140a001e0f00140a000201001e0f002e1700
-2010000e0700201000160b00180c00160b00160b001e0f00160b00140a00281400201000
-060300160b00160b001e0f00281400201000140a002010002010000e0700180c00040200
-1e0f000e07002814000e07000e0700261300140a000e0700160b00140a00180c000e0700
-1e0f00160b000e0700160b000e07002814000603001e0f00160b002010000c0600160b00
-0e0700140a00140a00180c00160b000c0600160b002e17001e0f00160b00201000281400
-0e0700180c000e07001e0f000e07000e0700201000180c00160b00281400281400160b00
-0e07000e0700160b002613002814001e0f00201000160b00180c00201000160b00040200
-0e0700180c00201000180c00160b00201000160b00160b001e0f00160b000c06000e0700
-2613002010000e0700140a000201001e0f00160b00301800160b00281400060300281400
-0e07001e0f002010000e0700140a00160b00160b00140a00281400180c00201000140a00
-0402002e17000e0700180c00281400160b00160b00160b00261300160b00301800160b00
-180c00180c00140a00201000160b00160b00180c00160b000e0700180c00140a00160b00
-2e17002613000e07000e07000e07001e0f001e0f00160b00261300060300201000201000
-0e07002613000603000c0600180c000e0700261300160b00201000201000180c00201000
-160b002010001e0f000e07000e07002e1700140a002010001e0f00261300140a00160b00
-160b00180c000e07002010002010000c0600160b00060300160b000c06002814000e0700
-140a00140a001e0f00180c000e07000e0700140a00140a000e0700180c002010000c0600
-180c000603000e07002613000e07000e0700060300261300201000201000160b000e0700
-160b00281400160b00180c000e0700180c00281400180c00180c00180c00140a000e0700
-1e0f002613003018002010002010002e1700180c00160b001e0f00160b00060300201000
-281400160b00160b002010001e0f00160b00201000261300140a000e07001e0f00160b00
-201000180c002010001e0f00060300140a000c06000e07000c0600180c00281400160b00
-160b00160b00160b00201000201000140a000603000e07001e0f00160b00160b00201000
-201000140a00180c00140a000e07001e0f00261300180c001e0f00160b00040200060300
-2010001e0f00201000180c000e0700060300ff9c38281400201000180c00040200261300
-2e17002010000e07002010000e0700ff9c380e0700281400201000160b002010001e0f00
-160b00160b000e0700160b00140a00180c00281400160b00201000160b000c0600160b00
-0e07001e0f000e07002613000603000c0600160b00281400180c00160b002010000e0700
-0e07002010002814000e0700160b001e0f00261300060300160b000c0600180c000e0700
-0e0700160b001e0f000e07002e1700060300140a00180c00180c00160b002010001e0f00
-140a002613000e0700281400381c000e0700160b00160b00201000180c00301800261300
-180c00160b002010001e0f002010002010000603001e0f00160b000e0700140a00281400
-180c003018000e07002e1700281400160b001e0f001e0f000e0700160b000e0700140a00
-180c000e0700160b00160b000e07002010002814000e0700
-0e07001e0f002e17000e0700160b00160b00201000180c00160b00160b00160b00140a00
-160b001e0f00201000160b00160b00160b00160b000c06002010002814001e0f00160b00
-160b001e0f000e07001e0f00140a00261300160b00201000160b00201000140a000e0700
-180c00201000160b00ffa040201000201000381c001e0f00140a00201000201000060300
-020100ff9e3c201000160b003018000e07001e0f001e0f00160b00261300201000160b00
-180c00140a000e07000e0700140a000e0700140a002814001e0f00060300180c00160b00
-180c000402002010000201001e0f00160b00140a00281400ffa040160b001e0f00180c00
-160b00301800140a001e0f00201000140a00281400201000201000160b00180c000c0600
-ffa040160b00160b00180c001e0f000c06000c06000e0700261300160b00201000160b00
-0e0700160b00160b000e0700160b002010000603000e07000e0700160b00261300201000
-0c06002814000603002010002010002010000e0700201000201000160b00160b00140a00
-140a00140a00301800160b000e0700160b00160b00261300160b00201000180c00201000
-180c000e0700160b00180c00261300060300160b002010000e0700321900180c00160b00
-160b001e0f00201000160b002010001e0f00180c000e07001e0f00160b00201000060300
-180c00180c000e07002010000e0700160b00160b002010001e0f00281400140a00261300
-201000160b00180c00201000180c001e0f00160b002613002814000402002010001e0f00
-0201000e0700201000140a00201000281400160b00301800160b00160b00180c00160b00
-180c00201000140a00160b003018001e0f000e07000e0700140a000e07003018000e0700
-160b00160b000e0700201000140a00160b00160b002613002814001e0f00140a001e0f00
-180c001e0f002e1700160b001e0f00140a000e0700180c00160b00281400160b00201000
-0e0700140a002010002814002814000c06002814000c0600160b00261300060300201000
-1e0f00201000201000160b00180c00160b00160b00160b002814000c0600180c00201000
-0e0700140a00201000160b00261300321900140a00180c000e0700160b002e1700160b00
-180c000e0700160b00140a00160b001e0f00201000160b00140a001e0f00140a00160b00
-2010002010000e0700160b001e0f00160b00140a002814002010002010002e1700140a00
-140a002010000e0700020100140a003219001e0f00160b00160b001e0f003018001e0f00
-160b00160b00160b00381c002e1700140a00180c002010002814001e0f000e0700180c00
-160b00160b002814000e0700201000180c002010002010000e0700140a00160b00160b00
-180c00201000261300180c00160b00160b002814001e0f000e0700160b00140a00060300
-180c000c0600140a000402001e0f00160b000e07001e0f001e0f001e0f00180c00180c00
-0e0700180c000c06001e0f00160b00140a00160b00180c002010002010000c0600201000
-140a00180c002010000603003219000e07000e07000402000e0700180c000e07000e0700
-0e0700020100281400160b001e0f00180c00140a00180c00160b002e1700060300160b00
-2010000e07000c0600140a00160b00160b00140a00ff9c38140a00201000261300060300
-180c00301800261300160b00060300ff9e3c2010000603000c06002010001e0f00281400
-160b00140a00261300160b000e0700160b001e0f002010002010002010000e07000e0700
-1e0f00160b000e07002010001e0f00261300180c002613000e0700201000060300261300
-160b000e07001e0f00020100180c000c0600180c00160b00060300201000160b00160b00
-261300160b001e0f000e0700160b00301800160b000201002613001e0f00140a00201000
-0c0600140a00160b00180c00180c000e0700160b00201000140a00180c00060300140a00
-160b00160b00180c002010000e0700160b00180c00160b003a1d002814000c0600180c00
-180c001e0f00180c00201000180c00060300140a00180c00201000040200140a00060300
-140a00160b000e07000e07000e0700020100160b001e0f00
-180c00160b00180c001e0f00160b00261300180c001e0f000e0700160b00261300160b00
-160b00160b00180c00140a00201000140a000e07000e0700180c002010002814001e0f00
-0c0600160b000e0700160b00160b00160b00180c00020100180c00281400201000160b00
-160b00060300261300ffa2440e07001e0f00281400201000201000201000060300261300
-2010000e0700ffa040160b00201000160b00140a002814002010002814000c0600160b00
-2010001e0f000402001e0f00281400201000180c000e0700140a00140a00140a00160b00
-180c00160b00201000140a001e0f00180c00160b001e0f001e0f00ffa54a201000201000
-2e17001e0f00301800201000160b001e0f00160b00140a001e0f001e0f00201000ff9e3c
-160b001e0f002010000c0600160b001e0f00201000261300140a000e0700140a00160b00
-0603000c06000e07001e0f00160b00201000140a000603001e0f00140a000e0700060300
-140a00201000140a00180c000e07000e0700160b000e0700180c00180c00201000060300
-160b002e1700040200160b00160b000402000c0600160b00201000201000180c00160b00
-0e0700261300060300160b00160b00020100160b00201000160b000e0700201000281400
-201000160b00160b002613002010000e0700160b00180c00180c000e07001e0f000e0700
-180c002e1700201000060300160b00140a000e07002010000e07002613001e0f00160b00
-160b00160b000e07001e0f00160b002814002010002613000e0700261300160b00201000
-0603002010001e0f00180c001e0f00160b000e0700160b00201000261300281400160b00
-160b001e0f000e07000c06000e0700140a001e0f002814000e0700160b00140a001e0f00
-160b00160b00180c00140a00261300180c00180c00201000261300060300301800261300
-140a00281400180c00261300201000201000160b000c06000e07002010001e0f001e0f00
-1e0f00140a000e0700201000201000140a00160b00180c000e0700160b00180c00201000
-060300160b000c0600060300160b00140a000e0700160b001e0f00160b000603000c0600
-281400180c001e0f00281400020100180c00201000160b002814000e0700160b00281400
-2010000c0600180c002814002010001e0f00201000140a000e0700160b002814000e0700
-160b00261300140a00180c000e0700180c000c0600180c00160b001e0f00160b00160b00
-201000180c00160b00160b00140a002010002613002e1700140a001e0f001e0f001e0f00
-060300261300160b00040200160b00160b000e07000e0700180c001e0f00201000201000
-180c002613000603003219000e0700160b00160b002814002e1700180c00261300281400
-160b000c0600201000261300201000160b003018001e0f00140a00180c002010000e0700
-0e07001e0f001e0f00140a002613001e0f00140a002613000c06001e0f00261300201000
-281400160b00281400281400160b00160b00261300201000140a00160b00261300160b00
-1e0f000c0600201000160b000e0700140a000e0700201000160b000e0700060300160b00
-0e0700160b00040200201000261300180c00261300201000180c00180c000e0700180c00
-060300060300160b00060300160b001e0f00201000ff9e3c201000160b00201000160b00
-160b001e0f00160b00060300ff9c38160b002010001e0f00140a00160b00160b00281400
-0c06000603000e0700140a000402000e0700201000060300160b000e0700261300201000
-160b00180c001e0f00201000180c00140a001e0f00160b00160b00180c00180c00201000
-1e0f00160b00180c00140a000603000c06001e0f00160b00160b000e07000c0600160b00
-0e0700261300281400180c00160b000e07002010002613002814000e0700140a000e0700
-160b00281400180c001e0f00281400201000160b00160b00201000180c002e1700160b00
-160b00180c00160b00201000060300140a00020100140a000c0600140a00180c00281400
-261300160b001e0f00160b00180c00201000160b00140a001e0f00160b002010000c0600
-140a00180c00160b00321900261300140a00020100140a00
-160b00140a000e0700261300140a00160b00180c00140a00160b00160b00140a00160b00
-261300140a00160b000e07000e0700201000140a000e0700020100201000281400140a00
-1e0f00201000160b000e0700140a00180c001e0f00180c002e17000201001e0f00160b00
-281400140a00140a00ffa64c0e0700140a00201000160b00201000160b00201000381c00
-180c00201000ff9e3c0e0700281400201000160b000c0600160b00160b001e0f00281400
-281400060300160b00160b002010001e0f002613000e0700180c000e0700160b00201000
-0e07000e0700160b001e0f00281400140a00160b002e1700060300160b00ffa142ff9b36
-1e0f001e0f003018002010000e07002814000c0600160b00180c00ffa244ff9e3c0e0700
-1e0f001e0f00201000160b001e0f00160b001e0f00160b00160b000e0700180c000c0600
-201000160b000c0600160b00160b00160b00140a00140a00140a00160b001e0f000e0700
-140a00201000160b000e0700261300201000140a002010000402000e0700180c00201000
-0e0700060300160b000e0700261300381c000c0600201000180c002613000e07001e0f00
-281400281400140a00180c000c06000e07000e0700201000140a00301800160b00160b00
-060300160b002010001e0f000e0700160b00281400180c00180c00060300281400140a00
-2010000e07000c0600140a000c0600261300281400180c00201000201000180c000e0700
-0e0700160b000603001e0f00160b001e0f00201000160b00201000301800180c000c0600
-261300140a002010000603002814000e0700160b00160b001e0f00160b00201000261300
-160b00160b00160b00180c00160b00201000201000180c000e0700160b00180c001e0f00
-180c00160b00160b00140a00180c00281400160b00140a002010001e0f00060300261300
-160b000e0700160b002010000c0600140a002613002010002010000e0700201000160b00
-2e1700160b002613000e0700180c000e0700160b001e0f00180c001e0f00201000060300
-180c00160b00261300201000160b000c0600140a000c06000e0700140a00160b00201000
-160b00160b002010001e0f002010000e07002010000e07002010002010000c0600160b00
-2010000c0600140a00180c00140a00160b00160b00160b002010000c06000e0700020100
-2814001e0f00140a00281400201000020100180c00160b000e07000402002010000e0700
-180c000e0700180c00160b00180c001e0f000e07000e0700160b000c0600060300140a00
-160b000e0700160b00201000140a00180c00140a00140a000e0700160b00160b001e0f00
-160b002010001e0f000c0600261300160b00040200281400201000201000261300201000
-0e07002e17000e0700201000140a000e07000e07000603000603000e0700160b00160b00
-160b00281400060300160b002814001e0f00201000180c00381c00201000180c001e0f00
-140a00180c00180c00160b000e0700160b00160b00140a00160b00281400160b00160b00
-160b000e0700160b000e07000e0700180c00160b00140a000603000e07000e0700060300
-160b000e0700060300180c00180c00160b000e0700160b00261300160b00160b00281400
-160b000c06000e0700160b00180c00160b00381c00ff9c38160b00160b001e0f00301800
-160b00180c00160b00fffcf8160b00180c001e0f00201000180c00060300020100160b00
-140a000e0700201000180c00160b00060300160b00160b000e0700201000140a00160b00
-180c001e0f000e0700180c000c0600160b000e07000e07002814001e0f000e07001e0f00
-281400201000180c000e0700201000180c000c0600160b00261300180c00140a00140a00
-3018000c0600201000140a000c0600180c00ff9d3affa244ff9d3affa040ffa64cffa244
-0c06002814000c0600060300180c000e07002010000e07001e0f00140a00180c000e0700
-201000160b001e0f000e0700160b002010000e07000c06001e0f00201000201000160b00
-0603002814002010002e1700160b002010002814000c0600180c00180c000e0700140a00
-160b00160b002010001e0f00160b001e0f00140a000c0600
-160b00261300160b00301800160b00201000261300060300201000160b00160b000c0600
-160b00281400160b00301800140a00160b000e0700160b00060300261300160b00160b00
-160b000201000c0600160b001e0f001e0f000c0600060300020100160b00140a00281400
-0e0700140a00020100ff9b36160b00180c00301800201000201000201000261300160b00
-201000160b00281400ffa64c201000140a00160b00160b000e0700261300180c00140a00
-160b002814002010002010002010000e07002613002010002010002814000e07000e0700
-140a000c0600160b000c0600160b00160b000e0700160b00201000201000180c000c0600
-ffa448ffa54affa040ffa142ffa64c0e0700ff9c38ffa142ffa1422e17002613000e0700
-0c0600180c00060300160b000e0700160b002613001e0f00201000140a00140a000e0700
-180c001e0f00201000160b000e07002010000402000e0700201000140a00060300160b00
-140a00160b00160b000e0700281400160b00160b000201001e0f001e0f00060300180c00
-0e0700160b00140a002613002814001e0f00160b00160b00261300160b00201000261300
-160b00160b000e07003018002010002010000201000c06000c0600201000180c00060300
-201000201000160b001e0f00140a000e07000e07002010000e0700140a002814001e0f00
-201000160b00261300160b002010000e07000c06002010000603000c06000c06001e0f00
-140a002613000e07001e0f000603001e0f00201000160b000603000e07001e0f00160b00
-201000160b000e07000e07000e0700261300160b00201000180c00060300180c00140a00
-201000160b00160b00140a002e17000c0600160b00281400261300040200160b00160b00
-0e07000c0600160b001e0f00261300160b00160b002e17000e0700160b00160b001e0f00
-180c00281400160b00160b00140a00160b00140a00140a00281400140a000e0700201000
-0e0700301800140a001e0f000e07001e0f00160b000e07000e0700180c00160b00160b00
-261300020100160b002010000e0700140a00160b000e0700160b000e0700281400160b00
-1e0f000e0700160b00140a000e0700140a002010002814001e0f002010000e07001e0f00
-160b00160b00180c002010000e07000e0700160b000c0600201000281400180c00160b00
-0c06001e0f001e0f001e0f00160b001e0f001e0f00180c00180c00180c00201000281400
-160b00180c00201000301800201000201000201000160b001e0f001e0f00160b00180c00
-040200281400160b000e0700160b00160b00201000140a000e0700261300281400160b00
-2010000e07002010000c0600160b00201000140a00261300160b002e17001e0f00201000
-180c00140a00160b000603000e0700160b00201000160b00201000201000160b000e0700
-140a000e0700160b00140a00180c000e07002e1700160b00180c001e0f002010000e0700
-201000140a00160b000c06002010002010001e0f00180c002613000e07000c0600160b00
-0e0700261300060300201000140a001e0f00140a00201000281400160b00160b00180c00
-140a00201000160b000c0600160b00160b00140a00261300140a00201000140a00140a00
-140a00180c00140a00160b000e07000e0700180c00ffa142140a00020100140a000e0700
-160b00160b00ffa54a160b00180c00160b00281400140a000c06002e1700180c00140a00
-201000180c00160b00160b001e0f000c06000e0700160b000c06000c0600180c000c0600
-180c00140a00140a00180c00160b002814000e0700060300160b00160b00180c00180c00
-281400160b000e0700180c00381c00180c000e0700261300180c002010000e0700261300
-1e0f000e0700140a00281400ffa64cffa0401e0f00201000160b00180c00201000201000
-ff9e3c261300201000160b001e0f00160b00201000160b00261300201000261300381c00
-160b00140a002010000c0600180c00040200140a00140a00201000140a00261300201000
-201000261300180c000e0700160b000603000c0600160b00201000140a00160b000e0700
-180c00180c000e0700160b00160b00140a00140a00281400
-160b00140a00281400160b00180c000e07002613000e07001e0f001e0f00201000140a00
-2e17000c06002814000e0700160b00180c000e0700160b00281400201000261300201000
-201000160b002613002010002010001e0f00160b001e0f001e0f00201000261300201000
-0e0700281400060300ff9e3c281400201000160b00180c002010002814002e1700160b00
-2814001e0f001e0f00ff9c38140a00140a00160b00180c00160b00201000140a00261300
-160b000402000e0700180c002814002814002814000c0600180c00140a00160b00160b00
-160b00180c00180c002010002010000c0600060300160b000603001e0f001e0f00180c00
-201000160b00160b002010001e0f00ffa74e060300180c00160b00201000201000040200
-0e07002613000e07002814000e0700180c002010001e0f00020100140a00180c002e1700
-140a000603002814002e1700180c00140a002814000e07000603002010000e0700261300
-180c000e07002010002814000201001e0f00201000281400180c001e0f003a1d00201000
-0402002e1700160b00160b002814002010002e1700160b002613001e0f00301800160b00
-140a002010001e0f000603001e0f00180c00160b000e0700160b00160b00160b00160b00
-2010001e0f00140a000e07000e0700180c00261300160b00180c00281400201000160b00
-160b000e07000e07002010002010001e0f001e0f00160b00140a00281400160b00201000
-201000040200160b000e07000603000e0700040200160b00160b001e0f00201000180c00
-2613002010002010000e0700160b000c0600160b00160b002e17001e0f00180c00160b00
-180c00180c001e0f00160b00160b00140a00201000140a00180c00201000281400180c00
-402000140a00180c002814000e07001e0f002010003018000e0700160b000e07002e1700
-060300140a002010000e0700140a000e07000e07001e0f001e0f00160b001e0f00201000
-140a00140a00140a00160b00201000180c00201000201000201000160b000c0600160b00
-2814000c0600180c00160b00160b002010002814002010002010000e0700180c000c0600
-160b00180c000c0600160b00060300140a00180c000e07000e0700180c000e0700321900
-201000201000160b000603001e0f00201000160b000603001e0f000e0700201000261300
-180c002010000e0700281400160b00160b00160b00261300160b00160b000c0600160b00
-180c002010000e07001e0f00160b00160b00060300160b00140a00201000201000160b00
-281400180c001e0f001e0f00160b00160b00160b00180c00180c00180c00261300180c00
-2010000e0700140a00180c000e07002010001e0f00140a002814000e0700180c00180c00
-160b000e07000e0700160b00160b002010000e07002010000e07001e0f001e0f000e0700
-160b00140a00160b00160b00201000160b00140a00160b00201000140a000e07001e0f00
-160b001e0f00140a00140a00180c00160b001e0f00201000140a00160b00381c00060300
-0c06000e0700180c00281400180c00180c00201000160b000c0600140a000e0700201000
-160b00160b000c06000e0700180c002010000402002814000e07000603001e0f001e0f00
-261300140a002e1700261300201000160b001e0f00160b00ffa448201000060300160b00
-180c00ffa1420c06000e07001e0f001e0f000603001e0f00180c000e0700160b00180c00
-160b00160b001e0f002814000e0700180c00140a002010000e0700140a00180c00060300
-0c06002010000e0700140a00160b000c06002010001e0f00160b000c0600201000160b00
-180c000e07001e0f001e0f000e07001e0f00160b000c0600160b00301800140a00281400
-2613002010002e1700ff9932201000201000160b001e0f002010002010000e0700261300
-160b00ff9c380e07001e0f000e0700160b00140a000e07001e0f002010000e0700180c00
-140a00201000160b000e0700201000060300261300160b00160b00180c000603001e0f00
-0e07000603000e0700180c00261300180c001e0f00180c00201000180c002814000e0700
-0c06001e0f00160b00201000140a002613002010000e0700
-0e07002010002613000e0700160b00160b00160b000c06002010001e0f000e0700261300
-160b00140a00160b002010002010000e0700160b001e0f000e0700160b000e0700140a00
-0e07002010001e0f000c06000e0700020100160b00201000180c00060300201000160b00
-140a001e0f001e0f00ffa244160b002613002814002814002e17002010003a1d00281400
-140a000e0700201000ffa54a201000180c000e07003018001e0f001e0f00180c000c0600
-160b00160b00201000281400040200180c001e0f000e07000c0600160b00201000201000
-2010000c06000e0700140a002613001e0f001e0f00180c00160b000e0700160b001e0f00
-1e0f000e0700180c00160b00201000180c002010002814000e0700180c00160b00201000
-160b00180c000e0700160b002010000e0700160b00160b00040200160b00160b002e1700
-0e0700160b00381c00201000180c002814000c0600020100140a000e0700201000160b00
-0e0700160b000e0700261300140a00160b001e0f00180c00060300160b00301800040200
-0402001e0f002814000201002e17000603001e0f000e0700160b002010000e0700201000
-180c001e0f00140a00160b000e0700160b00160b002814002613002814002814000e0700
-180c00180c00180c00160b00160b00180c00201000160b002010002814000e0700180c00
-261300160b000c06000e07002e1700140a00180c000e0700180c00160b003018000c0600
-160b00281400180c00261300180c00140a001e0f000e07000e0700140a00140a00261300
-0e07000603001e0f000c06000e0700201000160b00160b002814001e0f001e0f000e0700
-201000261300140a00261300201000160b002814000201002010001e0f00180c00261300
-160b00180c001e0f00160b002814001e0f001e0f002814000e0700201000201000180c00
-0c0600160b00160b002e1700140a00160b00201000301800201000201000160b00201000
-160b00180c00180c00160b00180c001e0f000e0700321900160b002010000c0600160b00
-0e0700180c000c06001e0f00140a00020100060300160b002613001e0f00201000140a00
-281400180c00201000180c00060300140a00201000140a002010001e0f000e0700160b00
-060300160b00160b00140a000e07000e07000c0600140a00180c001e0f000e0700060300
-180c000e0700160b00160b00261300261300180c001e0f001e0f00160b00160b000e0700
-281400180c00201000160b002010001e0f00160b002814002010000e0700160b00261300
-140a00160b00180c002814000e0700160b00140a00201000180c00180c00180c00160b00
-1e0f001e0f001e0f002010001e0f00160b000e07001e0f00180c00160b001e0f00180c00
-2e1700180c000e0700160b00140a001e0f000e0700201000140a00160b000e0700281400
-180c00160b00040200261300060300180c000e0700201000201000180c00180c00180c00
-0603001e0f002010001e0f001e0f000603001e0f00281400180c00281400040200160b00
-0e0700201000201000140a000e07001e0f000e07002814000c0600261300180c00201000
-160b00160b00301800060300160b000e0700261300281400201000140a00180c00160b00
-301800140a00201000201000160b001e0f00160b00160b00140a00ffa448ffa64cffa040
-ff9932201000160b00160b00140a00180c002010001e0f001e0f000e07000c06000e0700
-201000180c00160b00201000180c000e0700201000160b001e0f00160b00160b00060300
-0c06002010002613000e0700160b000e07000603000c0600160b001e0f00180c001e0f00
-201000180c00160b00160b00160b002613000e07000c06000e07002814002010000e0700
-060300180c00ff9e3c0e0700160b002814001e0f001e0f002e17000e07001e0f001e0f00
-201000160b00ff9e3c2010002010000c0600160b00160b00180c00261300140a00160b00
-160b00160b00140a000e0700140a00160b00140a001e0f00140a00060300281400160b00
-180c000e0700201000160b000e0700261300201000201000060300201000201000201000
-160b00160b00160b00201000201000140a00180c00201000
-160b002613002613000e0700160b00160b000e0700180c00160b000e0700160b00201000
-261300201000180c00261300201000261300160b000c06002613000e07000e0700160b00
-0c0600140a00140a00060300201000160b00140a002010000c0600180c002010000e0700
-0e0700140a002e1700ffa142160b00140a00201000281400201000381c001e0f00281400
-160b002613000e0700ff9830160b00201000140a00160b00180c001e0f000e0700201000
-2814002010000e07000e07002010000e0700180c00180c000c06002814000e0700180c00
-160b00160b000e0700180c00180c00201000160b00180c00160b00160b00160b00180c00
-160b00140a00140a002e17001e0f000e07000c06000e07002010000e07002e17000e0700
-180c000e07002010002814000e07000e0700261300201000281400060300180c001e0f00
-0e07000c0600201000201000160b00180c001e0f000e0700180c002010002010000e0700
-0e0700201000201000160b00140a002010000e07000603000c0600160b00201000060300
-160b002814000e0700160b00180c000e0700160b000e0700160b00140a00381c00060300
-180c00201000140a00201000301800160b00201000160b001e0f00140a00201000160b00
-040200160b00160b000e0700160b002010000e07002010001e0f001e0f00201000140a00
-281400281400201000261300180c000e0700140a00140a001e0f000e07002010001e0f00
-160b002e1700201000201000160b000e0700060300180c00201000160b00140a00160b00
-281400180c00201000160b002010000c0600180c00160b00281400180c00160b00261300
-160b002010002814001e0f000e0700261300140a002613000e0700160b00281400160b00
-0e0700160b001e0f00160b00160b00261300261300201000201000140a002010000e0700
-201000201000301800160b000e07000402002814001e0f00201000301800261300040200
-0e0700160b000c06000e0700321900140a00281400140a00160b000e0700180c00160b00
-180c002010000e07002010002010000c06001e0f001e0f00160b002814000c06001e0f00
-140a00281400281400140a00201000201000160b000e0700201000180c001e0f001e0f00
-180c002e17002010000e07000402001e0f002010001e0f00160b00180c00261300261300
-060300160b000c06000c06000e07000e0700160b00160b002010001e0f002010001e0f00
-140a00140a00201000180c000c06002010002010000603000e0700201000201000201000
-0e07001e0f000e07000402002010000e07001e0f001e0f00261300140a000603000e0700
-0e07000e0700020100060300140a000e0700160b000e07002814000e0700160b001e0f00
-1e0f00160b00020100140a002e1700180c002010000c0600281400160b00180c00201000
-180c00140a00261300281400160b00160b00160b00180c000e07000e0700201000201000
-281400140a000e0700281400160b00180c00160b00281400160b00180c00281400201000
-1e0f002010002e17001e0f002613000e0700180c001e0f001e0f001e0f000c0600261300
-201000180c001e0f002814000e07003018000e07001e0f00020100201000180c000c0600
-201000160b00160b00160b000e0700020100060300160b002613001e0f001e0f00140a00
-0603002010000e0700281400160b000e0700180c000c06000e0700201000201000201000
-0e0700281400180c00201000160b002010000e0700160b00140a00160b00140a001e0f00
-1e0f002010001e0f00140a000e07000402001e0f00160b00180c00060300301800140a00
-281400160b00160b00201000140a000c0600160b00261300160b00160b00160b00180c00
-201000ffa244140a00180c003018002613003018002613002e1700321900160b001e0f00
-0e0700140a00ff9c381e0f000e07001e0f00201000201000160b00180c000c06002e1700
-201000201000180c001e0f00261300140a00160b00321900020100180c000e0700020100
-140a002e1700160b002814002814002010002e17001e0f00160b000e0700160b00140a00
-160b00060300140a00160b00180c000c0600160b00160b00
-160b000e07002814001e0f00160b00160b00140a00301800281400180c00160b00140a00
-0402001e0f00140a00160b000e0700180c000e07002010000201000e07002010002e1700
-0e07000603002010000c0600301800140a000603000201000e07002e1700301800201000
-1e0f00160b00180c00ff9932160b00201000301800160b00180c00281400301800261300
-2814000e07000e0700ff9932180c00281400160b00180c001e0f001e0f00160b00160b00
-160b00160b00180c00180c000603000c0600180c00261300201000060300140a000e0700
-281400160b00160b00160b00281400140a000e07000603001e0f000e0700160b00160b00
-281400160b002613002010000c06002010002010001e0f002613000e0700160b00281400
-180c002814000e0700301800201000381c00201000060300020100140a00160b000e0700
-160b00261300060300040200160b002e1700140a00160b00140a00140a002010001e0f00
-180c000e0700060300160b00321900160b00201000201000201000201000140a00160b00
-0201000e0700160b00160b00140a002814002010001e0f000c06001e0f00281400201000
-0e0700160b002e17000e07002613001e0f00180c002814000e07000e0700160b00160b00
-160b00201000201000281400160b00201000201000281400160b00201000160b00180c00
-180c00160b000e0700160b002e1700281400201000160b00180c00281400201000160b00
-0e0700201000201000201000201000180c00160b00160b000e07000e0700180c00160b00
-1e0f00160b00160b002010001e0f00201000160b00281400140a00160b000e0700160b00
-160b00140a00160b00281400180c002814000e07000603002010003018002814000e0700
-2e1700160b000e0700140a00160b00160b000c0600160b000c0600160b00261300201000
-180c00160b002010000c0600160b00160b00180c00160b002010000e0700180c00180c00
-0e07000e07002010002010001e0f00160b000e0700201000060300140a002010001e0f00
-281400140a000c0600140a002e1700140a002e1700180c00020100160b00160b000e0700
-0c0600201000160b001e0f002613000c0600060300140a00160b000e0700180c00201000
-140a001e0f00180c00201000180c000c06000e0700180c00160b00160b00160b00281400
-160b00020100261300140a00160b00180c00060300180c001e0f002010000e0700281400
-180c000c06001e0f000c06000e07002814000e07001e0f00160b000e0700180c00201000
-140a001e0f00160b00060300180c00060300180c002010000e0700281400201000261300
-160b00160b002010002010000c06002613000c0600180c00060300201000301800180c00
-0c06000c0600201000160b00201000140a00261300160b00201000160b000e0700261300
-140a001e0f00160b002e17002e17001e0f00060300201000180c00160b002010001e0f00
-1e0f000e0700160b00180c00160b00160b00140a00140a00160b002613002e1700201000
-140a001e0f00261300140a00180c001e0f002010000e07001e0f00160b000e0700160b00
-140a002814000402000603001e0f00160b00201000140a002814002010000e0700160b00
-160b002010001e0f000e0700201000180c00060300201000160b00180c00281400160b00
-201000180c001e0f000e07002613000e07002010000e0700140a00140a001e0f000e0700
-180c000e07002010000201000e07000c06000e07000201001e0f001e0f000e07000e0700
-0e0700140a00160b00160b00201000160b002613000e0700140a00201000140a00201000
-201000160b00160b002814002613001e0f00201000281400180c000e07000603002e1700
-180c00ffa040ff9e3cff9932ff9c38ffa1421e0f00180c00281400281400281400160b00
-060300281400ff9e3c1e0f001e0f00160b001e0f00160b00261300140a00140a00140a00
-160b00180c00201000060300201000201000140a000e0700140a002010001e0f001e0f00
-140a00160b000c06000e07002814002e1700180c00160b00180c00281400140a00160b00
-201000261300201000160b000e0700180c00160b00140a00
-201000140a00281400180c00160b00281400180c00180c002010001e0f00060300160b00
-160b00160b001e0f00160b00180c00180c002814000e0700180c00201000180c00201000
-060300160b000e0700180c00160b000e0700160b00281400180c000e0700140a00201000
-1e0f001e0f00281400281400ffa64c160b002010002010003018001e0f002814002e1700
-2010001e0f002010000e0700ff9c38160b00160b000e07000e07000e07000e0700020100
-140a00160b001e0f00180c002814000e0700201000140a000e0700160b00201000160b00
-180c00160b001e0f00140a00180c002010001e0f00160b000e07000c0600201000201000
-201000020100180c00261300281400201000140a000e0700160b002814000e07001e0f00
-180c00180c00201000160b000603000c06000e0700160b00160b00261300201000160b00
-160b000c06002010000e07000c0600160b00160b00281400140a00180c00301800201000
-1e0f00160b002814002010002010002814000e0700261300160b00160b00160b00160b00
-2814000201000c0600281400160b000e0700261300160b000e0700140a00160b00160b00
-160b00180c00060300160b00201000160b000e07000e0700201000261300140a000e0700
-180c00140a00201000160b00160b000e07001e0f00281400201000281400281400201000
-160b002613002010000e07001e0f002010000c06000e07000e0700180c00060300201000
-180c002010002e1700201000140a002010001e0f00160b00140a001e0f00160b00040200
-060300160b00140a00261300281400160b00140a000e0700040200281400201000281400
-201000160b00160b00160b000e0700140a00180c00160b000e07002010001e0f00160b00
-0e0700201000160b00140a00060300160b00160b00140a002010000e0700160b001e0f00
-1e0f00201000140a003018000e07002613000603001e0f002e1700261300281400201000
-201000160b00180c00160b00160b00180c00201000160b00160b000e0700180c00160b00
-0e0700261300140a00160b00160b00160b00180c00160b00201000201000281400160b00
-180c000201000e0700160b00180c00060300140a00180c00261300160b002010000c0600
-201000201000160b00160b003018001e0f00281400160b00160b00160b001e0f00160b00
-201000201000160b00180c00160b001e0f001e0f000201002010000c06001e0f00020100
-1e0f00140a00140a000603000e0700180c00160b002613000e0700160b00281400180c00
-020100201000201000160b001e0f001e0f000c0600160b002010001e0f00261300160b00
-0e07001e0f00160b00160b00160b000e0700180c002010002613000e0700261300160b00
-2613000e0700160b002010001e0f00140a00160b001e0f002814000c0600160b00281400
-180c002613001e0f00201000140a00160b00180c00321900140a00160b002010000e0700
-0e07001e0f002613000e0700160b002814002814001e0f00160b00261300060300140a00
-160b00160b00180c00180c001e0f00160b002613002814001e0f00160b00201000160b00
-180c00060300180c00160b002613002814002010001e0f00060300281400201000140a00
-140a00140a00160b00180c00201000160b00201000140a000e0700140a001e0f000e0700
-160b00201000160b000603000e0700180c002010001e0f00160b00201000060300281400
-201000201000180c000e0700160b00201000140a00020100020100180c00180c00180c00
-2613002010000e07000603000603002e1700201000160b000e07002e1700301800140a00
-180c001e0f00180c00261300201000281400180c00140a00281400201000160b00ffa244
-fffcf8ff9c381e0f00201000301800261300ffab56ffab563a1d00261300201000281400
-0e07001e0f00ffa040180c000e07000201001e0f00060300160b001e0f00140a001e0f00
-1e0f00160b000e07000e07000e0700201000160b00160b001e0f00160b000c0600201000
-0e07001e0f00160b000c06000e0700160b003018001e0f002010001e0f00160b000e0700
-160b00281400160b001e0f001e0f000e0700160b00281400
-140a00160b00201000160b00160b00201000160b00281400180c00140a00160b00160b00
-261300281400140a00160b001e0f000e07001e0f000e0700060300160b00140a00040200
-140a00160b00140a000e07001e0f001e0f00160b00160b000e0700140a00180c00140a00
-180c00180c00180c00160b00ffa4483018001e0f00180c002010002010001e0f001e0f00
-0e0700160b00160b00ff9e3c1e0f002814001e0f00140a000c0600140a00040200160b00
-160b00180c00140a00180c00180c00140a002010000e0700180c00160b000e07001e0f00
-160b00180c00140a000603002e1700160b00281400180c00201000140a00160b000c0600
-281400281400160b00160b00160b00301800140a00040200201000160b00180c00020100
-0e0700160b000c0600160b00201000281400160b00201000160b00160b00261300060300
-1e0f000603001e0f002814001e0f00180c000e0700160b000e0700201000180c00261300
-0e0700261300160b001e0f00301800201000140a00160b00281400060300140a00180c00
-201000160b00180c00160b002814002010000e07000c0600160b00160b00180c00160b00
-0e07001e0f00180c002010000603000e07000e07000e0700180c00281400201000160b00
-0e07002e1700442200160b00201000160b00160b000e0700160b00261300201000160b00
-281400140a000e0700160b00140a000603002010000e0700160b00301800180c00281400
-201000160b000e0700160b00261300140a00160b00160b000e07000e0700160b00160b00
-160b00140a001e0f002613000e07002010000e07002814000e07000c06001e0f00160b00
-1e0f00201000180c00160b000e07000e0700160b00160b000e07000c0600140a00140a00
-140a002010000e0700160b00180c00180c00160b00180c000e0700140a00201000140a00
-180c001e0f000e07002010000e0700180c00160b000e0700281400160b00281400060300
-0603001e0f000e07002010001e0f00180c00160b00201000201000140a00160b00201000
-1e0f002e17000603001e0f002010000e0700180c00201000281400140a00060300060300
-180c00160b000e07000e0700160b00160b002010000402000e07000c0600040200040200
-0e07000e07001e0f00060300160b00160b001e0f00160b002814002010002010001e0f00
-2010000e0700160b00180c00160b000402002010001e0f00140a00020100040200201000
-0e07000c06002010002010001e0f00160b002010000e07001e0f00281400201000060300
-2e17000e0700160b001e0f001e0f00140a00160b001e0f001e0f00201000180c00160b00
-180c00020100140a00160b001e0f002010000c06002010002814002010002010002e1700
-201000180c00180c00180c001e0f00201000140a001e0f00160b00140a00160b000e0700
-0e07000e0700160b001e0f000e0700140a001e0f000e0700160b00160b00140a00160b00
-2814000e0700160b00180c00040200281400140a001e0f00160b00301800140a00040200
-140a002010000e0700301800201000160b002010003018002814002010000e0700160b00
-160b00201000160b000c0600180c00160b00160b00140a00160b00180c00180c00160b00
-160b000c0600180c000c0600180c000c0600140a00180c00261300201000160b001e0f00
-160b00160b002010001e0f00160b002010000e07002010000e07000e0700301800201000
-180c00140a00160b00180c00140a001e0f00281400160b000e07002814001e0f000e0700
-2010000c06000e0700180c000e0700160b00180c00140a000e0700160b000e07000e0700
-160b000e0700201000201000140a00160b00160b002e17001e0f00ff9d3affa142160b00
-ffa74e160b00160b001e0f00140a003018003018003a1d00fffcf8140a00261300261300
-140a00201000ffa2441e0f000402002e17002814001e0f00201000160b00180c000e0700
-180c00160b00140a000c06000e0700060300160b00140a002010002010002010001e0f00
-180c000e0700160b00160b00180c00180c00180c00160b00160b00180c00140a00201000
-0e0700281400140a001e0f00160b00160b00180c00160b00
-160b001e0f000e0700281400060300160b00160b00160b000e07001e0f001e0f00201000
-140a00180c00261300140a001e0f00160b000c06000c0600160b001e0f00160b001e0f00
-160b00160b002010002010001e0f00160b00180c002613000e0700160b00160b00281400
-140a00160b000e0700201000ff9d3a1e0f000c0600160b002010003018003a1d00261300
-160b00160b00261300ffa64c140a000402001e0f00140a00201000201000201000261300
-2613000e07000e07001e0f001e0f002814002814002613001e0f00160b00140a00180c00
-160b000e0700180c00180c00180c00140a000e0700160b00160b002010001e0f00201000
-180c00201000201000180c00201000060300201000201000201000160b001e0f00060300
-0c06002010003018000603000603000e07000e07001e0f00201000180c000e0700160b00
-201000060300180c00160b00020100160b00180c00140a001e0f00160b00140a000e0700
-2e17000e0700180c00160b00160b00060300160b000e0700160b00180c000603002e1700
-2e1700160b002613002814000c06001e0f00140a00160b002814001e0f00060300160b00
-140a00201000160b001e0f00140a00180c001e0f00201000140a00261300160b00180c00
-160b001e0f002010000e0700160b00201000261300140a00180c000e0700160b00201000
-0e0700160b001e0f002814000e0700160b001e0f00160b00160b00140a00261300140a00
-140a00060300180c00020100201000281400261300201000180c000e07001e0f00140a00
-160b00201000160b00180c00180c00060300140a00160b000e07000e07002010000e0700
-0201000c0600180c002814000e0700140a00201000180c00160b00201000160b00140a00
-1e0f00160b00281400160b00201000160b00180c002010000e0700201000201000160b00
-140a001e0f00160b00140a00180c00160b001e0f002e1700201000160b001e0f00201000
-201000180c00160b00201000180c001e0f00140a000402002010000e0700060300140a00
-0e07001e0f001e0f00261300160b00160b00180c00160b00180c002010000e07000c0600
-0e0700180c00180c002613001e0f001e0f002010001e0f000e07001e0f00160b00261300
-261300140a00281400201000140a002010001e0f000e0700160b001e0f001e0f00281400
-1e0f001e0f00160b00060300160b002814000c06002814001e0f00160b00281400201000
-1e0f000e0700160b00160b00281400180c001e0f000e07000603000e0700140a000e0700
-281400160b00140a000e07002010001e0f00160b000e0700281400180c000e0700201000
-281400180c000e0700160b00160b00160b00160b00140a001e0f00301800321900201000
-261300160b00261300201000140a00180c001e0f00261300261300160b00140a000e0700
-0e07001e0f00160b00140a000e0700201000201000201000201000140a001e0f00281400
-160b00201000261300281400140a00180c00160b00281400201000180c00180c000e0700
-160b00140a00261300160b002010001e0f00160b00160b002613000e07002010002e1700
-180c00160b00160b00180c00140a00180c00160b00160b00160b00201000060300201000
-160b000c0600180c00160b002613001e0f001e0f00060300140a00160b00160b00140a00
-0c06000e0700060300160b00201000180c000c06000e0700140a00180c000402001e0f00
-0e0700140a002010000c06000e0700201000301800261300180c00180c002613000e0700
-0e07000402000e0700140a00201000140a00201000160b000e0700160b000e0700160b00
-201000160b00160b001e0f00040200060300160b000e0700ff9e3c0e07001e0f00261300
-ffa448160b00201000160b00281400201000160b002e1700281400ffa0401e0f00201000
-160b00ffa4482814002e1700281400160b00160b00201000160b001e0f00201000160b00
-1e0f002613000e07002613000e0700201000160b00060300140a00261300201000160b00
-1e0f00281400301800201000301800201000160b000e0700160b00160b000e0700160b00
-201000160b002814000603000c0600160b00281400160b00
-0e0700020100281400160b00160b001e0f00140a001e0f00160b00160b00160b00160b00
-180c000603000e07000e0700140a00160b00180c00160b000e0700160b00201000160b00
-0c06000c0600060300261300160b00140a00140a00180c00180c003018000c0600201000
-0c0600060300180c00160b00180c00ff9e3c321900201000180c00301800160b00160b00
-180c00281400160b00ff9e3c160b000c06001e0f00140a000c0600160b00201000060300
-1e0f000e07002814000c06000c06000e07001e0f000603001e0f00040200160b00180c00
-2010001e0f003018002613003018000201002814000c0600201000140a00201000140a00
-160b00201000040200140a00180c002e1700160b00140a000e0700281400160b00201000
-201000160b001e0f00201000160b000603000603000e07000e0700281400180c00180c00
-261300140a00180c00160b000e0700261300160b00261300201000160b000e0700060300
-140a00180c00160b00180c00180c002814000c0600180c00180c000c0600201000180c00
-0e0700140a00160b00180c000e0700160b00160b00160b00261300160b00281400261300
-201000160b000c06002010001e0f000e0700160b002613003018002814000e0700281400
-201000201000160b00140a00160b00160b00201000180c00201000180c00261300180c00
-160b000e07000603000c06001e0f00160b00140a001e0f00160b00140a00140a001e0f00
-0c0600160b00201000180c00281400180c00ffa040ff9830ff9932ffa64cff952affa54a
-ff9932ff9932ff9d3a1e0f002010000e07000e0700201000160b001e0f00301800180c00
-2010002010002010000e0700160b00140a00201000140a002010002010001e0f00180c00
-160b00140a000e0700160b00140a001e0f000e0700160b000e0700180c000e0700160b00
-2e1700180c00140a000603002613002010002010002814000603003219000e07000e0700
-060300201000201000180c00160b000e07000e07000e07000e0700261300281400281400
-160b002010000e07000e0700281400160b00180c001e0f001e0f00201000160b000e0700
-160b00201000160b00261300160b00160b00160b00160b000e07000e0700180c001e0f00
-2814000e0700201000140a00180c00140a000c0600180c000201000e07001e0f001e0f00
-0e0700160b00160b002010002010000e0700180c000e0700020100201000140a000e0700
-0e0700160b00160b00180c000c0600201000160b000603000c06001e0f00180c00180c00
-201000180c00140a00180c000603001e0f000402000c0600301800160b001e0f00261300
-180c000c06000e0700261300201000180c00180c00160b00160b003018002e1700281400
-2010001e0f002e1700160b00201000160b001e0f00261300160b00201000201000180c00
-0c06002010001e0f000e07002814001e0f000c0600281400160b000e0700160b00160b00
-180c00160b00140a002e17000c06002814000e0700180c00160b000c06001e0f00201000
-0c0600281400140a00140a000e07002010000c0600180c00180c00140a00201000201000
-140a00180c00201000201000160b00160b00422100140a00160b00160b00201000201000
-060300140a00201000160b00160b002e1700160b001e0f00180c00160b00201000201000
-0e07000201001e0f00160b00140a00160b00160b00140a00140a00160b00201000140a00
-180c00160b002010000e0700261300160b00160b00261300281400140a00160b00201000
-160b001e0f001e0f000e0700201000160b00261300160b00140a000e0700140a00140a00
-160b00140a00281400040200160b000e0700261300ffa2440c06001e0f000e0700180c00
-160b00ffa64c2010002814002010002814002010000e0700180c00140a00ff9e3c0e0700
-ffa64c1e0f000e0700160b002010000e07002814000e0700160b002010000e0700160b00
-160b00261300180c00180c00201000160b00160b00160b000c0600160b00160b00201000
-160b002010000e07002010002010000e0700201000180c002010000e07000603001e0f00
-160b00180c000e07002814000e07002010002e1700180c00
-1e0f00201000160b000c06002e1700140a00140a00160b001e0f00160b000c0600140a00
-2010000e07000c0600160b00261300020100160b00160b00160b00140a000e0700140a00
-0e0700261300140a001e0f000603000e0700160b000e07001e0f002010000e0700201000
-301800160b00060300201000201000ffa040201000140a00180c002e1700301800261300
-201000180c00180c00ff9c38180c00160b00180c00160b00160b00140a001e0f00261300
-180c00281400180c00160b00201000160b00160b00140a00201000020100140a00201000
-160b000e0700301800261300381c00160b000603000e07002010000e07000e07000e0700
-0e07000e07000603000e0700201000060300060300301800140a002010001e0f00180c00
-281400160b000603000c0600060300160b000603000e0700160b001e0f001e0f000e0700
-140a00261300140a00160b001e0f00060300160b00140a00201000180c00160b001e0f00
-180c00201000180c00040200140a00201000201000160b00201000180c00160b00281400
-140a00281400261300201000140a00180c00180c002814001e0f00160b00180c00180c00
-3018002010003018000603000e0700060300020100160b00201000201000261300140a00
-180c001e0f00140a00140a000e07001e0f00201000180c00060300281400140a00201000
-180c000e0700020100060300140a00201000281400160b001e0f001e0f000e07001e0f00
-2010000e0700160b00140a00261300ffa0401e0f00160b00140a001e0f00060300301800
-2010000c0600281400fffcf8201000140a00180c00160b002010000e0700140a00281400
-160b00180c00261300160b000e07000e0700201000281400180c000e0700160b00201000
-0c06000e0700160b001e0f000e07000e0700160b000e0700140a00160b00180c00160b00
-0e0700281400180c002814002010000e0700301800180c00140a00201000180c00140a00
-160b00180c00040200160b000402000e0700160b001e0f00140a00201000301800180c00
-0e07000603000e07001e0f000e0700180c00060300261300180c00201000160b001e0f00
-2613000c0600060300180c002613000e0700160b00180c00140a00160b000e0700160b00
-2010000e0700201000160b000e07000e0700261300180c001e0f00201000201000160b00
-0402001e0f00180c000e0700180c00060300180c00140a00160b000c06002010002e1700
-160b002010002010000e07000e07000c06002010000e0700201000201000060300060300
-140a00180c00140a00180c00140a00160b00160b00160b002010002010001e0f001e0f00
-180c000e0700281400281400180c000e0700180c00201000281400281400201000160b00
-1e0f002010000603000603000e0700160b00160b000e0700301800180c00201000261300
-1e0f000e07000c0600201000160b00261300160b00201000160b001e0f00281400180c00
-1e0f00160b00160b00180c00160b00160b00180c001e0f00281400301800281400180c00
-180c001e0f00160b001e0f001e0f00160b002010000402000e0700160b00160b00261300
-160b000e07002613001e0f002010002e1700160b00060300160b00321900140a00140a00
-140a000c06000e0700180c001e0f000c06000e0700160b002e1700160b00060300140a00
-2010000e07000e07001e0f000e0700261300281400180c00140a002010000e0700281400
-060300261300160b002613001e0f001e0f00140a002613001e0f00180c000e0700201000
-0e07002010000e0700180c00201000201000281400160b001e0f001e0f00160b00201000
-1e0f00160b00160b001e0f00201000160b00ffa54a2613000e0700180c00201000301800
-281400ff9d3a2010002814002613003018002814002613002814000e0700ffa040ff9932
-0e07002e1700160b002010001e0f00160b00261300160b00160b00140a00180c00180c00
-140a001e0f002010000e0700180c00160b002613000c06000e0700140a000e07000e0700
-0e0700140a00180c00160b001e0f00140a001e0f001e0f00140a00160b001e0f00160b00
-0e07000e07000e0700160b002010002814000e0700261300
-ff9e3c140a00160b00201000180c002814000201000c0600160b00180c001e0f00201000
-140a002814001e0f00180c00020100160b001e0f00180c000e07000603002010000c0600
-0c0600160b00201000301800281400160b00180c003a1d00201000160b00160b000e0700
-060300140a00160b00060300160b00261300ffa0400e0700140a00160b00180c00261300
-180c00201000140a00ff9e3c1e0f00160b00180c000201001e0f000e0700160b000c0600
-160b00040200180c00261300140a001e0f00201000160b00160b000e0700201000201000
-281400201000261300180c000e0700201000180c00160b00160b000e0700261300160b00
-2e1700160b00180c002613000e07001e0f00040200281400140a00160b001e0f00201000
-180c00301800160b00180c000e07000e0700160b000e07000402001e0f001e0f00201000
-140a00160b00180c00180c00160b00160b000603000e0700160b00060300140a00160b00
-2010000e0700261300160b00180c00160b00201000201000201000201000160b001e0f00
-160b001e0f00201000160b000e07002e17002814001e0f00180c000e0700180c00180c00
-0603000e07000e07000e0700160b000e0700160b00160b000c06002e17000e0700160b00
-201000160b00040200381c00281400180c00201000180c001e0f00140a00180c000e0700
-201000261300201000140a00160b000e0700160b00160b002814001e0f00180c00160b00
-0e0700201000140a00160b00ff9d3a060300180c002010002010002010002814003a1d00
-3018000c0600140a00160b00ff9b36140a000603000c0600180c002010001e0f00281400
-0e0700020100281400160b000e0700201000261300180c00160b000e07000e07001e0f00
-261300160b00160b00140a002010001e0f001e0f00160b00160b001e0f00180c00160b00
-2010002010000e07000e07002613001e0f00160b00160b00160b00180c00201000060300
-261300160b00140a00160b00140a00060300140a00160b000e0700402000140a000e0700
-160b000603000603000e0700281400201000160b00180c00140a00180c00160b00140a00
-1e0f000c0600261300201000040200140a00281400160b00281400160b00180c00201000
-160b001e0f00201000160b00160b00180c000e07000e07001e0f00160b00281400201000
-0201002814000e0700160b00140a000e07000e0700180c001e0f00140a00160b00160b00
-2613000e0700140a00160b002814001e0f00160b00160b00261300201000261300140a00
-160b00160b00160b00201000281400140a001e0f002010000e07002613002613001e0f00
-1e0f001e0f000e0700201000160b002010000e07001e0f000e0700281400180c00201000
-261300140a00160b00180c001e0f00140a00160b00140a00160b00160b00160b00160b00
-160b001e0f00261300160b001e0f000e0700201000180c002814001e0f00160b00180c00
-160b00180c00180c000e0700201000160b002010001e0f002010001e0f00261300201000
-0c06002814001e0f000e0700201000180c00180c000e07002814000402000e0700180c00
-1e0f000e0700140a000e0700160b00160b001e0f002010000e07000e0700201000201000
-201000201000180c00060300180c000e07002010002010001e0f00201000160b000e0700
-020100180c002814002613003a1d00160b00201000180c00160b00160b00160b00160b00
-140a00160b000c0600160b00201000060300140a00160b00160b00160b000e0700180c00
-180c00140a001e0f000e07000e07000c06000e07000e0700140a00281400180c00201000
-2613000e0700060300281400160b00ff9c38160b00160b00140a00261300281400261300
-180c00180c00ffb162ffa4483018002010000e07002e1700160b00ffa040fffcf8140a00
-160b002814002814002e17001e0f00281400201000180c000c0600201000160b00140a00
-3219002010000e0700160b002010002613000c0600160b00201000140a00140a00281400
-180c00060300201000060300140a00180c001e0f00140a00180c00201000261300261300
-160b00201000180c000e0700160b00201000140a00160b00
-0e0700ffa142160b00060300261300160b00160b000e0700180c00160b00281400140a00
-0e07002010000e0700201000160b00160b000e0700160b00160b00160b00261300201000
-160b00180c003018000c06003a1d00160b00140a00160b00160b00020100180c00160b00
-160b003219000c06002e1700160b000c0600ffa64c160b00180c00160b00281400201000
-180c00281400160b00ffa448180c00261300201000301800180c002010002e1700160b00
-160b002010000e0700160b001e0f00180c000e0700281400060300180c00180c000e0700
-261300180c00201000140a00180c004c2600180c00201000281400160b001e0f00180c00
-160b00180c00180c00180c00160b002010002010002613000e0700180c000402000c0600
-0603001e0f00060300140a000e0700020100020100201000180c00140a00180c00160b00
-160b00160b001e0f002010000e07000e0700160b00160b00160b00201000160b00160b00
-3018001e0f00180c00160b000603002814002010003219002010002e1700201000201000
-0e07000e07002010001e0f002613000e0700301800140a000e0700140a00160b00201000
-2010002613002e17002613001e0f00160b00140a000e0700160b00160b00040200180c00
-160b00180c00160b000c06001e0f00160b00140a000e0700160b00140a001e0f00261300
-140a00201000281400140a00160b00160b000e07000e07000e07002010000e07000e0700
-060300160b00160b00180c00ff9932160b00180c00180c003018002e17002010002e1700
-281400160b00201000261300ff9d3a2814002010002814002010000e0700160b00180c00
-180c001e0f00180c002814002010002613000e0700160b000e07001e0f002814000e0700
-160b00180c001e0f001e0f00301800160b000e0700321900060300201000140a00201000
-180c00201000180c00160b00180c002010002010003a1d00180c00201000180c00261300
-0c0600180c00201000180c00140a00160b00140a002814002010000603001e0f00201000
-1e0f00140a00201000180c002010001e0f000c0600261300180c00160b00281400160b00
-160b00261300201000180c00140a002613000c0600180c001e0f00180c002e1700160b00
-201000160b00160b00140a00160b002010000402001e0f001e0f001e0f001e0f00160b00
-281400180c00160b00160b00160b00201000261300160b000c06002010000e0700180c00
-160b00160b002010001e0f000c0600160b000e07000e0700201000160b00140a000e0700
-1e0f00160b000c0600281400201000160b00160b002010001e0f00160b000c0600261300
-0c06000402001e0f00160b00160b00201000281400160b001e0f000e0700180c00160b00
-160b00281400160b000e0700281400140a00281400160b002010002613000e0700160b00
-301800201000160b00140a00160b00040200160b00060300261300160b00060300160b00
-201000160b00160b001e0f00201000140a00160b002814000e07001e0f00201000261300
-2814002010000e0700201000281400261300201000281400140a002814001e0f00301800
-2e1700180c00160b000e07000e07000e07000e0700160b00201000140a00261300201000
-2814002010000c06001e0f00180c002010000e07000c0600140a000e07000603001e0f00
-160b00140a00201000201000201000180c00160b00160b00281400201000060300201000
-201000160b00140a002613000c06000e0700180c00140a00160b00160b00281400160b00
-160b00060300180c000e07000e0700201000160b00261300160b00180c00201000201000
-160b002814002010001e0f00201000ff9d3a281400140a00140a00201000201000281400
-2010001e0f00301800160b00ffa040ffa244ff9d3aff9c38ffa142160b00ff98300e0700
-160b00160b00160b001e0f00140a001e0f002010000c0600160b00281400140a00180c00
-180c00201000140a00140a00180c00140a000e07000e0700261300180c00040200060300
-180c00201000180c000e0700160b00060300201000180c003018000e0700160b00301800
-1e0f00160b002010001e0f00201000261300160b00160b00
-201000ffa142140a002010002010001e0f000603000e07002010001e0f00180c00160b00
-0e07000e07000e0700160b000c06000e0700160b00180c001e0f000c06000e0700180c00
-0c06000c0600160b00180c00180c00140a00261300201000140a00160b000e0700140a00
-140a000603001e0f00140a00261300060300160b00ff9932180c001e0f00020100160b00
-281400140a00fffcf8160b00180c00140a00180c00160b00261300201000060300160b00
-2e1700160b000e0700180c00180c000e0700160b00160b00180c00160b00160b000e0700
-2e17001e0f000e0700160b00201000140a000e0700201000281400140a00261300201000
-160b00160b001e0f001e0f001e0f00140a00180c00140a000c06000e0700160b00140a00
-0e0700201000180c00281400281400160b00140a000c06002010000603000e0700201000
-140a002010001e0f001e0f00160b00160b000e07000e0700160b00160b00281400180c00
-2010004a2500160b00180c00281400160b00180c00160b00201000281400140a00281400
-040200201000201000160b00160b00160b000e0700140a00140a000603001e0f00140a00
-1e0f001e0f00180c00180c00160b002010002010002814000c06002010000e0700180c00
-1e0f000603000e0700160b000c06000603000e0700140a00160b00201000180c00160b00
-2613001e0f00160b00180c00160b00281400281400180c00180c000e07000c06000e0700
-160b00160b00201000160b00ff9b360e0700281400201000281400281400301800261300
-2814001e0f00281400261300ffa54a0e0700160b00180c00140a002010001e0f001e0f00
-140a00201000180c002613000e07002814002010000c06001e0f001e0f000e07001e0f00
-2010000e0700160b00140a00180c000c06001e0f000c0600201000160b00201000201000
-0c0600140a001e0f00140a001e0f001e0f002e17003018002613000c0600160b00180c00
-3018001e0f00140a00281400160b00140a00040200160b00140a00160b00140a00180c00
-160b001e0f001e0f002010001e0f00160b001e0f001e0f00160b00201000201000060300
-0e0700201000180c001e0f000603000e0700160b00180c001e0f00160b002010001e0f00
-160b000e07002613000e0700381c002010001e0f00160b00160b000c0600201000160b00
-160b000c06002814002814002010000e07001e0f00201000180c000c0600180c001e0f00
-0e07000e0700281400201000160b00201000160b002010001e0f00180c00201000140a00
-1e0f00201000281400140a00180c002814000e0700180c00160b000e0700281400180c00
-1e0f00180c001e0f00160b002010000e07003018000e0700160b003018000e0700261300
-140a00160b00140a002010000e0700261300281400160b00301800060300321900160b00
-2010002e1700160b000e0700201000160b00261300160b00160b00160b00180c000e0700
-2e17000e0700201000180c002e1700180c001e0f00160b002010000c06002e1700201000
-160b00201000140a00180c001e0f000e0700160b00180c000e0700160b00281400201000
-0e07000603002010000e07000e0700140a00060300140a000e0700281400140a00201000
-2010000c0600261300140a00160b000e07002814001e0f001e0f001e0f00301800160b00
-0e0700140a00160b000201000e0700140a001e0f00060300160b00140a00201000060300
-1e0f000e0700160b00140a000e0700140a00160b00160b00180c00160b000402001e0f00
-0c0600180c00180c000603000603002010001e0f000e0700140a001e0f00160b00261300
-160b002814000e0700281400ffa040160b00140a002010000c06000e07002613002e1700
-381c003018002814002e17002e1700160b00201000160b00281400201000ffa244281400
-180c00201000140a00140a000e0700180c003018000c06000e07000c0600140a00201000
-0e0700140a00160b00160b00180c00180c002e1700180c002814002010001e0f00040200
-0e07001e0f00180c000e0700261300281400160b002814002010002e1700180c00261300
-140a00261300201000160b00261300180c00140a00201000
-0e0700ffa64c1e0f000c0600180c00060300160b00180c000e0700160b00020100180c00
-0e0700160b000e0700060300180c000c06000e0700060300381c00160b00381c001e0f00
-160b00160b000e0700201000140a00140a000e0700160b000c06000402000e0700140a00
-0e07001e0f003a1d00201000140a00180c00261300281400ffa142ffa74e281400201000
-180c00ffa0402010002e1700201000201000180c00281400160b00160b000e0700180c00
-180c00160b000e0700160b00040200201000160b00140a00140a00160b00160b001e0f00
-1e0f000e0700060300160b001e0f000c06001e0f00160b00180c00140a002010000c0600
-1e0f00160b000e07000402001e0f00160b00160b000e0700201000140a00281400180c00
-0c06000e07002613001e0f00160b000201000c06000e0700160b00160b000e07000c0600
-2010001e0f00160b00160b00160b000e0700180c000c0600201000201000180c00201000
-0e0700140a00160b000e07000e07001e0f002010002010002613001e0f00381c00261300
-180c00180c00261300180c000c0600160b00180c00160b00140a00201000020100301800
-0c06000e07000c0600060300160b000e07002010000e0700160b00140a002010001e0f00
-1e0f00160b00040200140a00160b00140a00160b001e0f000c0600160b00180c000c0600
-160b000c0600040200160b00160b00160b00201000160b00201000201000160b00180c00
-261300261300160b00201000ffa244160b00160b00201000261300180c00261300201000
-2010000e07002010001e0f00ff9830160b00261300160b00180c000e07000e0700060300
-2814001e0f00201000160b00281400160b000e0700160b001e0f00281400160b00180c00
-160b000e07002613002010000e0700160b000603001e0f000e0700180c001e0f00261300
-2010002814000e0700140a00140a002814002814000e0700201000160b000e07000e0700
-180c001e0f00160b00201000160b001e0f00020100201000160b00261300140a00281400
-2e1700201000160b00201000160b00160b00180c001e0f00160b00201000140a00180c00
-201000201000160b00180c000c0600201000140a00160b00140a001e0f002010001e0f00
-160b001e0f00160b00160b000c06000e0700281400160b00160b00281400261300160b00
-180c00140a00281400180c00140a00160b00140a000e0700160b00201000281400140a00
-2010000e07001e0f00180c00140a000603000c0600160b00020100281400140a00281400
-201000160b000c0600140a00160b00160b00180c000c0600160b00140a002613000c0600
-160b000e07000e0700060300180c00180c000c0600261300140a00180c000e0700020100
-180c00140a00160b00160b000c06001e0f00160b00281400301800160b00140a001e0f00
-140a001e0f00160b002814001e0f00201000180c00160b00201000301800140a00201000
-3219000e0700160b00140a00160b002010000e0700160b002010002e1700201000140a00
-020100281400180c001e0f000e0700160b001e0f00160b000c06000e0700140a00301800
-0e0700201000201000180c002010000e07001e0f00160b000e0700140a002010000e0700
-1e0f000e0700140a002010000603000c06001e0f002814002010000e0700160b00060300
-160b00201000160b00160b00281400180c00160b002010001e0f000e07000c06000e0700
-160b002613000e07001e0f00160b000e07000603002010001e0f00160b00140a00160b00
-2814001e0f000e0700160b003018001e0f000e0700160b00160b00160b00180c00160b00
-201000180c00180c00160b00ffa2441e0f00160b00160b00201000160b00201000281400
-1e0f003a1d00301800261300201000201000261300060300160b00ff9d3a261300281400
-0c06002010001e0f000e07000e07003018001e0f00180c00020100160b00160b00180c00
-1e0f00201000160b001e0f00180c00180c002e17000e0700160b00201000201000180c00
-1e0f000e0700261300160b00140a000e0700201000301800160b001e0f00261300201000
-0603002814002e17001e0f00160b00160b000c0600180c00
-160b00160b00ff9d3a2010001e0f000e0700160b00160b00060300180c00160b00180c00
-0e07002814000e07000e07000e0700201000201000140a00180c000e07000e07000e0700
-160b00261300201000261300160b000e0700160b00180c000402001e0f002010001e0f00
-060300180c000e07000e07000c0600160b00180c00140a00201000261300ffa142ff9d3a
-ff9e3c2010002e17000e0700140a00140a00160b002814000e0700160b002010001e0f00
-281400180c00160b000c0600261300160b000e0700261300160b000e0700160b000e0700
-1e0f00140a00180c00180c00180c00140a00160b00140a002010002010000e07000e0700
-160b00140a00201000160b00160b00140a000e0700140a000e0700160b00281400281400
-0201002613000e0700180c000c0600180c000e07000402000603000e07000e0700160b00
-180c001e0f000e07000603001e0f00281400261300160b00180c000c0600160b00301800
-2010001e0f00160b000c0600180c00160b001e0f00180c000e0700140a00180c003a1d00
-2010002010000e07002010000e07000e0700140a00140a002010002010000e0700301800
-060300180c002e1700140a00160b00140a00201000201000160b00160b000c0600140a00
-2010002010000c06001e0f002613001e0f000e07000e0700140a00180c00180c000e0700
-0603001e0f00160b00281400160b00201000261300180c00160b002613002010001e0f00
-0201002010002010000c0600160b00fffcf8201000160b00201000160b002e17002e1700
-140a000e0700160b00ff9e3c160b00201000140a00140a001e0f00140a00160b00160b00
-180c00140a000c0600060300140a00160b000e0700261300060300160b00060300180c00
-1e0f000c0600160b00160b00180c002613000402002814000e0700160b00040200160b00
-160b000e0700201000201000381c001e0f00060300201000201000140a002010000e0700
-1e0f000e07000e07000c0600180c002613000e0700261300160b002010000e07000e0700
-0e0700160b000e0700160b00160b00180c000201001e0f00201000160b00060300160b00
-0e07001e0f000e0700140a00201000140a00201000201000201000160b00160b00160b00
-160b00180c00201000140a000c06002010000603000603002814001e0f00140a00201000
-180c00180c00140a000c0600301800180c00160b00281400020100201000160b00201000
-1e0f00140a00180c002613000e0700180c00160b00020100180c00180c00180c00201000
-180c00180c00160b00160b00281400140a002010000603000603000603002814000e0700
-180c001e0f00180c001e0f00180c000e0700180c00180c002e1700160b002010001e0f00
-0603002010002e17001e0f00201000020100201000140a00160b000e0700160b00201000
-2010001e0f00201000160b00261300201000160b00060300160b00261300160b00201000
-2613000e0700140a00160b00201000160b00261300180c002010001e0f00180c00060300
-1e0f00160b000402001e0f00201000301800180c00140a00160b00160b000e07000e0700
-2010000e0700160b00180c002814001e0f00261300160b002613000e0700140a00201000
-160b00160b001e0f001e0f000c06000c06000e0700160b00201000160b00180c00201000
-2010000e07001e0f00281400201000160b00160b00160b00180c000c0600160b00201000
-160b00160b00160b00160b002613000e0700160b00140a001e0f00160b00160b00201000
-160b00160b00180c00160b000e07000e0700201000201000261300201000180c000e0700
-1e0f000e07002010001e0f00ffa1420e07001e0f00180c000e0700160b00281400201000
-3a1d001e0f00261300281400201000180c002010002010000e0700ff9d3a4221001e0f00
-2814002010000c0600160b000e0700201000160b001e0f00281400160b001e0f00180c00
-1e0f00160b000c0600020100140a002010002814000e0700140a001e0f00201000201000
-0e0700201000140a00160b000603002010002010000e0700160b00180c00180c00060300
-0201000e07000e07000e0700201000180c001e0f001e0f00
-2814000e0700ffa64c160b001e0f002613002010002010001e0f00180c00160b00060300
-0e07000e0700180c00160b002814001e0f001e0f001e0f00160b00160b00160b00060300
-0e07002613001e0f002010000c0600201000140a00040200160b000e0700160b00060300
-201000201000160b001e0f00301800160b00160b001e0f000c0600180c00140a00180c00
-2010002e17003018001e0f00160b000e07002814000c0600180c001e0f000e0700281400
-0402000c06000e07001e0f002814002814000e0700060300160b001e0f00140a000e0700
-1e0f00160b00140a00201000201000180c001e0f001e0f002010002010000e07000e0700
-180c00180c000e0700201000201000180c000e0700180c00301800261300160b00160b00
-0e0700160b000e0700160b002814000603002010000201000603001e0f00281400060300
-140a002010000603002010000e07001e0f000c06000c0600140a000e07002e17000e0700
-0e0700201000160b000e0700180c000e07002613000e0700180c00201000201000060300
-201000201000160b000c0600180c000e0700201000180c00160b00140a002010000c0600
-261300261300160b000e0700201000201000180c00160b00201000281400261300180c00
-261300180c00180c00180c00060300140a000c0600160b00160b000c0600180c001e0f00
-261300140a000e0700140a001e0f00140a00180c00160b00060300201000201000160b00
-0c06000402000e07000e07000e07000c0600ff9932ff9932ff9830ffa74effa142ffa54a
-ff9d3affa244ff9830140a00140a00201000201000160b002e17000e07000e0700160b00
-0c0600261300160b00180c00201000180c00140a00140a000e0700160b00160b00160b00
-1e0f00140a00281400261300160b00160b000c0600160b00281400281400281400180c00
-160b002814000e0700140a001e0f00160b001e0f002010000e07001e0f002814000e0700
-301800160b00140a002010000e0700140a00201000160b002e1700160b000e0700160b00
-1e0f000e0700160b00060300201000180c00160b002e1700201000160b00180c00261300
-140a00140a00180c00140a00060300160b00180c00160b00180c00140a001e0f00301800
-2814001e0f000e0700160b00201000160b00160b00140a002814001e0f00160b00160b00
-2814001e0f00180c00261300140a000603002814001e0f00180c002e17001e0f00201000
-281400160b00180c00160b000e0700160b00160b00160b00160b00160b00160b00201000
-0e0700140a002010000e07001e0f001e0f00180c00201000160b000c06002010000e0700
-201000160b000e07001e0f00180c00201000180c00160b00140a00160b00301800180c00
-180c00180c001e0f00281400281400201000140a00160b00160b00201000180c00140a00
-140a00140a00201000281400201000180c00160b00281400060300201000160b00160b00
-180c000e0700140a00261300160b002814001e0f000c06000e07002010001e0f00201000
-1e0f000c06000e0700140a000e07002010000c0600160b00160b00160b00160b00060300
-1e0f00281400160b00060300201000201000180c00180c000e0700040200201000180c00
-0e07000e07000e0700160b00180c00180c00281400160b00180c000e0700160b00201000
-1e0f00281400201000160b00281400180c00140a00180c002010000e0700180c000e0700
-060300160b000c06002010000e0700160b002613001e0f00160b00201000160b001e0f00
-160b001e0f000e07000e0700180c00140a00201000140a00040200180c000e0700160b00
-180c000e0700160b00261300ff9c38261300160b00160b000603000e0700261300301800
-140a00201000160b002e1700160b001e0f00261300060300ffa952201000160b00160b00
-1e0f001e0f00301800201000160b002010002613000e0700160b00160b000c0600140a00
-2010002010000e07000c0600160b001e0f000e07001e0f001e0f002814002010000e0700
-160b00201000180c001e0f00201000180c00281400201000140a002010002613001e0f00
-160b00160b000e0700160b002e17002814000e0700160b00
-160b001e0f00ffa040160b00160b00180c00140a001e0f00180c00060300180c000c0600
-0e07001e0f00140a002613000201000e07000e0700160b000e0700160b00160b00180c00
-140a002814000603000e0700160b00160b00201000160b000c0600040200201000160b00
-160b00060300140a00180c00180c002010001e0f00201000180c00180c00160b00281400
-201000180c00201000140a00261300281400160b00180c002010000e0700201000140a00
-180c00160b00180c000e0700261300060300160b00160b00160b00180c00160b001e0f00
-180c00060300160b00160b00201000160b00281400160b00040200160b00140a000e0700
-040200381c00160b00201000201000020100140a002613000e0700160b000c0600060300
-201000201000160b002613002010001e0f000e07001e0f00140a00201000160b00160b00
-2814000e07000e07000c06000e07002010000c0600160b00261300281400140a00281400
-0e07000e0700402000180c00180c00201000201000180c00201000281400261300180c00
-0e0700201000140a001e0f00140a00201000140a000e07002010002613001e0f003a1d00
-2010000603001e0f002010000e07000e0700180c00160b000e07000e0700060300140a00
-0e0700180c00160b001e0f002613000e0700160b001e0f00140a001e0f00160b000e0700
-1e0f001e0f00180c000e07002814002010000e07002010000e0700261300201000201000
-160b00281400160b00160b00261300281400160b002010000603000e0700281400201000
-180c00140a002010000e0700160b00180c00160b00140a00201000160b00160b00281400
-2010002010002010000201001e0f00201000201000160b000e0700180c00160b00160b00
-2010002613001e0f001e0f00180c00301800160b00201000201000160b00180c00180c00
-201000160b00160b001e0f002e1700180c00201000261300140a000c06000e0700201000
-180c000e0700160b000e0700160b001e0f00140a002010000e0700140a00160b002e1700
-2814000e07000e07001e0f00180c002814002010001e0f00281400160b00180c000e0700
-0e07002010000c0600180c002010000e0700160b000e0700201000160b001e0f00060300
-0e0700180c001e0f000e0700160b00140a001e0f00140a00160b000e0700160b00180c00
-261300201000140a00281400160b000603000c0600060300281400160b00140a000c0600
-140a000e07000e0700160b002613000c06000603000402000e0700160b00201000281400
-0e0700060300180c002010002010000e0700140a00140a00201000160b000e07001e0f00
-2010000e0700160b00201000201000180c002613000e0700180c002613001e0f001e0f00
-180c00160b000603002010002010003018001e0f00160b000e0700201000160b000e0700
-140a000e0700160b00060300140a001e0f001e0f000c06002814001e0f002814000c0600
-160b00140a000e0700160b001e0f002010000e0700201000160b00140a00160b00060300
-160b002814000c0600201000180c001e0f00261300180c00201000040200201000160b00
-180c00060300201000160b00140a002613000e07002814000e0700201000160b00261300
-2010002010000e0700160b000603002613001e0f00201000060300201000060300261300
-0e0700180c002010001e0f000e0700160b00160b00201000160b00160b00201000301800
-0e0700201000261300160b00201000140a000e0700180c000e0700160b000c0600140a00
-1e0f002010002010000c06001e0f00180c00160b000c06001e0f001e0f000e0700160b00
-201000160b00201000160b00ffa4480e0700160b000e0700040200160b00160b00261300
-2814001e0f00060300201000140a00140a00281400ff9e3c180c00160b000c06001e0f00
-160b00281400160b00201000261300180c00160b000e07001e0f00281400140a001e0f00
-0c0600180c000603002814000e07002613001e0f00140a00201000201000281400180c00
-140a00180c002e17002010000e0700281400140a00020100201000040200160b00160b00
-160b00201000160b002010000c06001e0f00281400160b00
-201000ff9d3a201000160b00160b000c0600160b000e07002010000e0700140a00140a00
-160b001e0f00140a00140a000e07002010000c06000e0700180c002010001e0f00160b00
-140a00140a004020000c0600160b000c0600180c00201000060300160b00180c000e0700
-020100180c00ff9b36ff9e3cffa142ffa54aff9c38ffa244160b00140a002814000e0700
-0e07000e0700160b00160b00201000180c000e0700140a00060300140a000e0700160b00
-1e0f001e0f001e0f002613001e0f001e0f000603000e0700160b000e0700160b001e0f00
-140a002814002010000e07001e0f00160b00201000160b00180c00201000060300160b00
-140a00160b00201000140a00261300160b000e07001e0f00301800160b00180c00201000
-160b00281400160b00180c00201000180c00160b00281400281400381c001e0f00160b00
-160b00160b000e0700180c00180c00060300261300201000160b002613000e0700160b00
-140a00281400301800281400160b00281400140a000e0700201000060300160b00160b00
-0e0700160b000e0700160b000e0700140a00201000160b000603000e07001e0f001e0f00
-160b00160b00160b00140a000402002010002010002814002e17000e0700160b00180c00
-321900160b00201000180c002613000e07000e07001e0f00140a000e0700180c000e0700
-0c06002010000c0600160b001e0f001e0f00160b000e0700180c000e0700160b00160b00
-201000201000160b00261300140a00140a00180c00201000160b000e07001e0f00160b00
-1e0f00180c00180c000e07002010001e0f00140a00060300301800160b00321900180c00
-0e07001e0f00140a00180c00180c00180c001e0f001e0f000c0600180c000e07001e0f00
-0c0600160b00160b002010001e0f000c0600201000160b001e0f00180c002010001e0f00
-201000160b002010002010000e0700160b00140a002010001e0f000e0700160b00140a00
-281400060300201000201000160b002613000c0600160b000e0700281400160b00160b00
-160b00180c001e0f00160b000603002613000e0700281400160b00180c00281400140a00
-160b00281400201000160b000e07000201001e0f000e0700140a002e1700180c00160b00
-160b00201000201000281400301800140a002010002613000201000e0700201000201000
-2010000c0600261300261300160b00140a00201000180c001e0f000e07002010001e0f00
-160b002010000e0700160b000e07000e0700180c001e0f00261300160b00301800180c00
-201000160b00160b001e0f00201000201000160b00060300160b00160b00160b00160b00
-1e0f00160b002010002e1700160b000e0700160b000603000e0700201000140a00321900
-0603001e0f002814001e0f000c0600160b00160b00160b002010002814000e0700160b00
-1e0f00201000261300140a00160b00160b000e0700201000201000020100180c00160b00
-281400201000180c001e0f00201000261300180c00201000160b00140a00140a00160b00
-201000160b00281400060300140a00261300060300140a00180c00160b001e0f00160b00
-180c00301800140a00261300201000140a00201000160b00160b000c06000e0700060300
-160b002010000c06000e0700140a00180c00160b00040200160b001e0f000c0600160b00
-2613002613003219001e0f002010002e1700180c002010002613000e0700160b001e0f00
-2e17000c0600060300140a000603001e0f00180c000c0600020100180c00201000160b00
-201000060300160b000603002e1700060300180c00180c00160b00140a00160b002e1700
-0603002e1700180c00160b00140a00ff9c38281400160b00140a000e0700261300201000
-2010002010003a1d001e0f00261300180c00ffa54a160b00201000160b00201000201000
-060300281400060300160b00160b00201000160b00140a00140a000c06000e0700160b00
-2010000c0600140a00160b00160b00140a00180c00160b00060300160b002e1700201000
-0e07000e0700160b000e0700060300160b00140a00140a00160b000402000e0700060300
-2010000402001e0f00261300180c00160b000e07000e0700
-060300ff9d3a281400060300160b001e0f000e07000e0700140a002010002814001e0f00
-0e07002010000e0700180c001e0f000c0600160b00160b00060300160b00261300040200
-0c06000e0700160b000603002613002613000e0700180c00060300160b00180c00140a00
-ffa54aff9d3a0e07000e0700261300201000261300301800ffa54affa244180c00261300
-0e07002e17002010001e0f00201000160b00160b00201000180c000c06001e0f00301800
-2e17000603003018001e0f00281400140a00180c002613000e0700160b000e07001e0f00
-1e0f002010002010002010001e0f00201000160b002010002010001e0f00160b00160b00
-0e07000c0600201000160b00140a00261300160b00160b00160b00180c00160b001e0f00
-201000160b001e0f001e0f000c0600160b000e07001e0f002010000e0700180c00201000
-1e0f00201000140a00201000201000140a000e0700160b002010002814000c0600180c00
-1e0f002010001e0f001e0f000e0700201000160b00281400060300180c002e17000e0700
-201000160b00261300180c00140a00180c001e0f00180c00180c00180c00160b00140a00
-140a000e0700201000160b00160b000e0700060300160b000e07000e0700180c000e0700
-140a001e0f00261300140a000201000e0700160b00301800160b001e0f001e0f00160b00
-160b002010000e07002613001e0f00160b00160b001e0f002e1700201000140a000e0700
-180c00160b00381c00201000180c001e0f00201000281400201000201000201000201000
-160b000e07002010000e0700160b00201000281400160b00180c000c06002010001e0f00
-180c000e0700140a00140a000c0600020100160b00140a00201000281400201000201000
-261300140a00160b002010003018002e1700180c00160b00140a00160b00160b00180c00
-040200201000201000281400160b00160b00140a000e0700201000160b00160b00201000
-2613003018001e0f00140a00160b000e07000201000e0700180c001e0f00160b000e0700
-201000160b002613000c0600180c002814000c0600160b003219001e0f00201000140a00
-160b000c0600281400180c000e07000e0700180c000e0700160b000e0700160b00201000
-0c06002010000c06001e0f00201000140a001e0f000e0700160b000e0700180c00261300
-1e0f00281400140a00160b00180c00281400201000140a00180c00060300060300140a00
-160b002814001e0f001e0f000e07001e0f00140a00140a00140a00180c00180c00180c00
-140a001e0f00140a00180c000e07002010001e0f002e1700180c000e07002613000e0700
-160b002e1700160b00201000060300180c00281400140a00160b000e0700180c00160b00
-281400180c00261300140a00160b001e0f000e07000c0600160b00261300281400201000
-160b002010000e07002814001e0f00201000261300201000140a00201000281400160b00
-201000201000160b00201000140a001e0f002010000603001e0f00160b00160b00261300
-140a00281400180c00201000180c00201000201000160b00180c000e0700180c00140a00
-140a001e0f00180c00160b002814000e07002814002814002010002010002814001e0f00
-2010000c06000e0700301800201000180c00160b00180c000e07002613000c0600201000
-201000321900160b002010002814002814001e0f002010000c06002814001e0f00060300
-180c00160b00201000201000261300201000201000160b00180c00160b00160b000c0600
-160b00201000160b00281400180c00201000180c000e07001e0f000e0700160b00281400
-180c000603000e0700140a00140a000e0700ff9932180c00140a00140a00201000160b00
-201000160b00060300160b00ffa142ff9932160b00261300180c001e0f00201000261300
-020100201000140a003a1d00160b000e07002e1700060300180c002613000e0700180c00
-160b001e0f000e0700180c000c0600140a00160b001e0f00160b002814000e07000e0700
-140a000e0700180c00180c00160b00180c00321900160b002010000603000e0700160b00
-0e07001e0f000c06001e0f000e0700140a000e0700180c00
-201000ffa64c180c001e0f00261300180c00301800160b002010002e17001e0f00180c00
-0402002010001e0f00160b00160b00160b000c06002e1700160b00281400281400160b00
-180c00160b00160b00140a00140a002814001e0f000e0700261300140a00ff9d3aff9932
-201000281400180c001e0f00160b00201000201000160b00281400201000ffa244ffa244
-160b002613002010002010001e0f00160b000e0700160b00281400180c00160b00180c00
-3018002010002010001e0f00160b00060300180c001e0f00281400180c00160b00140a00
-0e0700140a000e0700180c000e07000c0600140a000e07000e0700160b000c0600180c00
-2010000e0700160b00201000180c00160b00160b00180c00160b000603000e07000e0700
-140a00160b002010001e0f000e07000e0700281400160b000e0700180c00201000180c00
-160b000c0600160b000e07000e07002814002010001e0f002010002814000603001e0f00
-180c00140a00281400140a00201000140a00160b000e0700201000140a00180c00160b00
-160b000e07002010000c0600180c000603002e1700140a002010001e0f00060300020100
-180c00140a000e0700140a00160b00180c00140a00060300201000261300160b00160b00
-2010002010002613003018000e0700140a00180c002613002613002814000c0600160b00
-160b00321900160b00180c000603002010000e07000e0700180c00160b00201000140a00
-160b00140a000603000603000c0600160b000e0700160b00180c000c06002e1700281400
-2010000e0700201000160b002613000e07002814002010002010000e07000e0700160b00
-1e0f00201000160b00160b001e0f00140a000e0700160b000e0700201000301800180c00
-1e0f00180c00060300180c00060300160b00140a00140a001e0f000e0700160b00301800
-160b000c0600160b000e07001e0f00060300040200160b000603000e0700201000160b00
-0c06002010001e0f002010001e0f000e0700201000180c00180c00201000160b00160b00
-160b002010002814000e07002010000e0700180c000e07000e0700201000180c000c0600
-0c06001e0f001e0f000e0700261300160b00281400201000180c00281400281400261300
-0e0700060300281400140a000e0700160b00160b001e0f00180c00060300160b000c0600
-160b000e07000c06002814001e0f00201000261300140a00160b00160b00160b001e0f00
-160b000603000c0600201000180c00201000140a000e0700201000040200160b00160b00
-0c06000c06001e0f00160b00160b002010001e0f00160b00160b002814001e0f000c0600
-180c000c0600201000140a00201000160b00060300281400060300180c000c0600160b00
-180c00160b002613002010001e0f00180c00201000180c001e0f000e0700140a00261300
-160b000402002010001e0f001e0f00180c00160b00160b000c06001e0f00020100160b00
-1e0f00160b00180c00180c00281400261300160b002010002e1700140a000e0700160b00
-0603000e0700160b001e0f00201000160b001e0f000e0700180c002e1700201000160b00
-0c06002010002814000e07000201002613000603001e0f00060300140a000e0700201000
-2613001e0f00261300060300160b000e0700201000180c000e0700160b000e07001e0f00
-201000180c002613003219001e0f001e0f00180c000603003018001e0f000c06000e0700
-1e0f001e0f002010000e0700180c000e07001e0f00140a00160b001e0f00281400201000
-160b00160b000e0700160b000e0700060300140a00180c00160b00261300201000201000
-160b002814000e0700160b00180c001e0f00180c00ff9932ffa142060300201000201000
-160b00ffa142ffa54affb1620e0700160b00160b000e0700160b001e0f000e07000c0600
-1e0f00180c001e0f000e0700301800180c00160b000e0700160b00281400180c00201000
-1e0f000e07000e0700201000201000281400160b000c0600040200180c00321900201000
-160b000e0700160b000603000e0700180c00301800060300160b00180c000e07001e0f00
-0c06002010002010002010000e07002010000e07001e0f00
-160b00ffa448160b00160b000603000e0700180c001e0f00180c00160b00040200160b00
-1e0f00160b000e07002010000e0700140a002010001e0f00160b00160b000e0700160b00
-0e0700180c003a1d00201000140a001e0f00160b000e07001e0f00ff9d3a160b000e0700
-2613000e07002814002613003018002613002613002e1700261300201000261300ffa244
-0e0700180c00160b00140a001e0f000e0700160b00160b002010000e0700180c00301800
-0e0700180c00301800180c001e0f00160b00140a000e07002010000402002814001e0f00
-0e07000e0700160b00180c002010002010002010002010001e0f001e0f00160b00160b00
-160b00180c002010002010000e07000e0700201000160b00301800140a00160b00261300
-0e07002814002814000e0700140a00040200180c002010000e07000c06001e0f00060300
-201000140a00180c000603002010000e0700160b00160b00160b00180c00160b001e0f00
-140a001e0f00180c000603000e07000e0700140a002010002613000e07001e0f00160b00
-0c0600140a00180c00180c002010000e0700201000160b00160b00160b001e0f00140a00
-160b00180c000e0700201000160b00160b00180c00140a000e07000e0700140a00140a00
-2010001e0f000e0700160b00180c00261300140a00160b00060300180c00160b00281400
-2613001e0f00201000180c00201000160b00140a00281400160b00201000180c001e0f00
-0e07000e07000e0700160b002814001e0f00140a001e0f00160b00180c00140a00160b00
-060300201000180c000e0700201000160b00261300140a00140a000e0700201000281400
-180c002010000e0700201000060300180c00201000160b00160b002613001e0f00281400
-281400160b00201000160b00140a00140a000e07002010000e07001e0f00180c00160b00
-0e0700160b00160b00140a001e0f00201000140a000e0700160b002010001e0f001e0f00
-281400281400160b002010000e0700281400201000180c000e0700180c000e0700281400
-261300060300180c00160b000e0700180c00160b00201000180c000e0700160b00140a00
-160b002814002e1700160b000c0600160b00160b001e0f00261300180c00180c00160b00
-281400160b00180c002010000c0600160b00160b00201000160b00160b00201000160b00
-060300180c00140a00160b00140a000603000e0700180c00060300160b00140a00201000
-160b00180c00180c00160b00160b00140a00160b002e1700140a00160b00160b00160b00
-1e0f000c06001e0f00261300160b001e0f00160b000e0700201000160b000e0700180c00
-0e07000e0700180c00180c00140a001e0f00180c00160b00060300160b00201000281400
-160b00160b001e0f00261300160b00201000180c001e0f00180c000c0600180c00180c00
-201000160b00060300060300180c001e0f00140a001e0f00180c00180c00281400140a00
-180c00281400140a00201000160b00201000201000180c00180c00140a00180c00140a00
-0e0700040200160b003219000e0700201000160b001e0f00160b002010000e07001e0f00
-160b001e0f000e0700261300261300140a00140a000c0600160b00160b002010000e0700
-160b000e07000e0700140a000603000e07000c0600201000180c00160b00201000180c00
-1e0f001e0f00201000301800160b00201000180c001e0f00040200160b00281400060300
-160b000e0700140a00201000160b002613000e07001e0f00160b00261300160b00281400
-0e07000e07000c0600201000281400160b002010001e0f00281400060300160b00160b00
-0e0700180c000c0600180c002613000e07000e07000e0700160b00ff9b36ff9b36ff9b36
-ff98300e07001e0f001e0f00180c000e0700160b00140a000e0700201000201000160b00
-1e0f001e0f000e07002010001e0f00180c002010000e07000e0700040200180c00140a00
-180c002613000c06000e0700040200140a001e0f00020100160b000e0700201000140a00
-0e07001e0f00261300140a00201000160b00060300140a000c06000e0700261300140a00
-2e17000201001e0f00201000020100160b00140a000e0700
-ffa2440e0700180c000e0700160b001e0f00201000140a001e0f00160b00201000140a00
-0402001e0f002613001e0f00160b00160b001e0f002010000e07002010001e0f00160b00
-160b00140a000e0700180c00201000180c000c0600381c00ffa0401e0f00180c00281400
-2e1700180c00261300201000301800301800261300381c002814003018001e0f00060300
-ff9d3a160b000e0700160b002814001e0f00160b000e0700180c00140a001e0f00180c00
-140a00160b00160b000603000e07000e07000e07002613000e0700160b002613000e0700
-180c00160b00180c00140a00281400160b00160b000c0600160b00160b00321900140a00
-160b000c06000e0700160b002814002010002814001e0f000e07002010001e0f00160b00
-180c00180c001e0f00140a000e0700180c00160b00160b00060300201000281400060300
-0402000c06000e0700201000180c00160b00180c00160b00160b00160b000e0700281400
-0e07003018000e0700180c001e0f000e0700201000160b00261300160b00160b000e0700
-281400160b000e0700140a00160b000e07001e0f000c06000c0600201000261300160b00
-180c001e0f001e0f00160b00180c00140a001e0f00160b002010002814001e0f00140a00
-140a000603000e0700160b001e0f00261300180c000603002613000603003a1d00261300
-1e0f00160b000e07002010002010000e0700160b002010001e0f00160b000e07000e0700
-160b00160b002613002010000e0700180c00160b00140a000e0700201000281400060300
-0e0700160b00201000140a001e0f00160b00160b002613001e0f00180c00060300180c00
-0e0700160b002814002010002010000e0700180c00180c001e0f00201000160b00140a00
-0603001e0f000e0700201000201000160b00160b002010002e1700160b000e07001e0f00
-381c00180c000201000e0700201000160b000e0700180c000e0700180c001e0f00160b00
-160b00180c00140a00140a000603000e0700140a00281400140a00261300201000040200
-201000160b00201000140a00140a00060300201000180c00140a00160b000e0700201000
-281400180c001e0f00201000160b00060300180c00180c00201000180c00160b00160b00
-2814002e1700160b00201000140a00160b00160b00140a00160b00160b00201000160b00
-180c00140a00180c00160b00160b000e07001e0f002e1700140a000e07000e0700160b00
-2613000e07000e0700281400160b002010002814002010001e0f003018002010000c0600
-1e0f001e0f00201000140a00180c001e0f001e0f00160b00160b001e0f001e0f00261300
-0e07002e1700180c002010002010000c0600140a001e0f002010001e0f000e0700020100
-0e0700160b00060300160b002e1700160b000c0600261300321900180c00201000201000
-180c000c06001e0f00201000301800301800281400180c002814002010002814001e0f00
-180c00160b00040200281400160b00140a00180c00180c00261300180c002814001e0f00
-0e07002613000e0700140a001e0f00140a00201000201000160b000c0600261300060300
-2613001e0f00201000180c00140a00140a00261300140a00261300261300060300261300
-201000160b00160b00201000201000180c000603000e0700140a000e07000e0700201000
-140a00160b00180c002010002010002814001e0f002010002e1700140a00140a00281400
-201000160b00180c001e0f001e0f000c0600261300281400160b00140a00180c00140a00
-2e17000e0700160b000201000e0700140a00201000261300261300180c00201000160b00
-201000160b000e0700140a00060300060300160b00180c002814002613001e0f00160b00
-0c0600140a000e0700180c00160b00281400140a001e0f00160b00201000281400201000
-140a00160b00140a00261300160b000e0700160b002010000e0700160b00160b000e0700
-140a00402000160b00201000140a001e0f00160b000e0700020100160b00140a00180c00
-2010000e07001e0f00281400180c000603001e0f00160b000c0600180c00180c001e0f00
-201000180c002010001e0f00160b00180c000603000c0600
-ffa952160b00160b000e07002814001e0f00180c000c06000e0700160b00201000160b00
-140a00180c00180c000e0700180c002010001e0f00281400140a00180c00201000160b00
-201000180c002613000e07000e07000603000e07000c0600ffa1420e0700281400261300
-281400281400301800321900381c00281400281400381c002814002e1700261300060300
-261300ffa244201000160b00201000020100140a000e0700180c000e07003a1d00020100
-160b00201000140a002010001e0f000c06000e0700140a00201000180c001e0f00160b00
-0c06000e0700160b00160b00180c000603002010000201000e0700301800140a00281400
-1e0f00201000180c000e07001e0f00140a00060300160b00180c00201000281400261300
-180c002814000e07001e0f00160b002613002613001e0f00180c00321900201000281400
-060300180c000c0600281400201000201000201000201000160b00180c001e0f00140a00
-140a00140a00160b00160b00281400201000180c00201000180c00060300160b001e0f00
-160b000e07000e07000e07000e07002010002010000c0600140a00201000160b00201000
-160b001e0f00020100160b00160b002814000c06000e0700201000160b000c06000e0700
-321900281400281400180c000e07001e0f000e07001e0f000e0700160b00180c001e0f00
-201000201000180c00180c001e0f000e07000e0700201000281400160b00180c00301800
-140a002613001e0f00140a00160b002814000e0700201000140a00160b00180c00201000
-180c002010002010001e0f000e07000e0700160b001e0f00160b001e0f00180c00201000
-0603000e0700160b00140a00281400160b00160b00180c00160b000e07000c0600201000
-1e0f000c06000e0700160b00180c000e07001e0f00201000160b00160b000e0700160b00
-1e0f00060300180c00160b00060300160b002010001e0f00201000201000261300281400
-160b00160b00160b00060300180c000e07001e0f002010000e07000e07000e0700160b00
-180c00160b000e0700040200160b000e07001e0f00281400060300160b00140a00201000
-281400281400261300180c00160b000e0700140a00160b00160b00060300281400160b00
-0e07000603002814000e0700160b00140a000201000e0700201000261300180c00201000
-160b000e0700281400261300180c00160b000e0700180c00160b00261300180c001e0f00
-0c0600261300301800381c00160b00020100160b00301800201000261300140a00180c00
-0e0700140a00180c001e0f000c06002613000c06002814000e0700261300160b00160b00
-160b001e0f00060300140a00160b00281400160b00180c00160b002010002814000e0700
-060300180c00201000180c000e0700201000160b001e0f00201000281400140a00261300
-140a00180c00180c00140a00160b00160b00180c003a1d00160b00160b000e0700160b00
-0c06000e07002010002e1700201000160b00281400160b000e0700201000160b00140a00
-180c002010000e0700201000160b00160b00160b000e07002814000e07001e0f000c0600
-0e07001e0f00160b001e0f00180c00140a000c06001e0f002010001e0f003018001e0f00
-160b00140a00160b00160b00201000160b000e07000e0700180c00160b002613001e0f00
-0c0600261300201000201000160b001e0f002613003018001e0f00160b00281400140a00
-0e0700180c00180c000e0700160b00040200261300060300160b00060300140a00160b00
-160b002010001e0f002010002010002010000c0600180c002010000c0600201000160b00
-040200281400160b00140a00261300180c00201000160b000e07000e07000e0700180c00
-1e0f000e0700160b001e0f00180c00160b000603001e0f00160b000c06000e0700160b00
-160b00201000160b000e0700160b002010001e0f002010000c0600281400040200160b00
-160b00060300180c000e0700281400180c00160b00ff9d3aff9d3affa74effa64c160b00
-180c000c0600160b00160b00160b00261300180c000e0700160b00140a00201000060300
-160b000e07000603000e0700160b00160b001e0f000c0600
-261300040200160b00180c00140a00160b00140a00160b001e0f00160b000e0700160b00
-0e07001e0f000c0600180c00160b000c06000c06000e0700180c001e0f00160b000e0700
-2e1700140a00180c00201000160b00201000201000ffa2442613002010000e0700201000
-2613004422004020004c2600321900542a004221002e1700422100201000301800201000
-422100ff9c38381c001e0f00301800261300160b00160b00261300180c00160b00140a00
-160b000e07002010002010002010000e0700201000140a000e0700261300301800160b00
-2010000e0700060300301800160b001e0f000e07002613002010000c0600140a000c0600
-160b002613002010000e07000e07000e0700301800160b00281400140a00060300140a00
-2814000e0700201000060300160b00160b00180c00160b000c0600160b00160b00180c00
-0e07000e07001e0f001e0f00160b001e0f00160b00180c001e0f001e0f00160b00160b00
-160b00160b001e0f00180c002814003219002010000c06000603002814001e0f00180c00
-0e0700140a00180c00140a00160b00140a000e0700180c00160b00160b000e07000e0700
-180c000e07003a1d00281400160b00201000180c000e0700160b00180c002010000e0700
-2613001e0f00140a000603000e07002613000e0700201000140a00201000160b00201000
-160b002010000e0700160b00140a003018001e0f000e0700140a00180c00201000160b00
-180c00180c00160b000c0600180c00140a002010001e0f00261300180c00160b00201000
-060300160b00060300160b000e0700140a00140a000e0700140a000c06001e0f00201000
-160b000c0600160b002010001e0f001e0f00140a002814000e0700201000140a00160b00
-0e0700160b00281400180c000e0700180c002814002613002814000e0700160b000e0700
-201000201000301800201000160b00140a00140a00180c002814000603002e1700180c00
-140a000e07001e0f00180c001e0f00140a00160b00180c00160b002613000e0700060300
-0e0700160b00180c000e0700160b000e0700201000160b00160b00160b00180c000e0700
-1e0f000e0700040200180c00140a002e1700180c00281400160b000e0700160b00160b00
-160b00201000160b00261300140a002010001e0f002010001e0f000e07000e0700301800
-160b00160b000c0600261300180c00160b000603000e0700281400160b001e0f00160b00
-140a00180c00020100020100160b00261300140a00060300160b002814000603000e0700
-261300160b00140a00160b00140a001e0f00160b000e07002010002010000e0700301800
-261300160b000e0700180c002010000e07000e0700160b001e0f00180c00060300140a00
-281400040200160b00201000160b002613002613000e0700180c00160b00261300160b00
-160b000e07002010000c0600160b001e0f000e07002010000e0700261300201000160b00
-180c00060300160b001e0f000603002e17002613001e0f00201000381c00060300201000
-0e07000e07000e0700160b00180c00201000180c00160b00201000180c002814000e0700
-180c00160b00180c002010002010000e07000c06002010000c06001e0f00180c000e0700
-0e0700281400281400201000160b00180c00160b00160b00140a00201000281400261300
-2010002010002e17002814001e0f00281400201000281400160b00160b002613000c0600
-160b000603002613001e0f00261300160b00160b001e0f00180c00140a00201000261300
-0e0700381c00201000140a000e0700281400160b00160b000e07000e0700160b00160b00
-0e0700140a000e07001e0f00160b00140a00201000060300060300160b002814002e1700
-140a00180c00180c00281400201000201000060300140a000603001e0f002613000c0600
-0c0600261300160b00060300201000180c000603000e07001e0f00261300180c00201000
-201000160b00201000160b00ffa54aff9b36ffa448201000160b00201000201000ffa040
-ff9e3c2613001e0f000e0700180c002010000e0700020100281400160b00160b000e0700
-160b000e07000e0700160b00160b00140a00160b001e0f00
-160b002814002010001e0f00201000201000180c003018000e0700140a00160b00020100
-261300160b00160b00160b00160b00160b00201000040200140a000603000e0700160b00
-201000160b00180c00160b00160b00140a00ffa1422814002e1700180c00281400180c00
-2814004221004221004a25005a2d006633004a25004a2500422100201000160b002e1700
-201000381c00ff9e3c140a00140a002010002814002010000e07000e0700201000180c00
-160b001e0f00180c00201000160b002e17002e1700140a00281400140a00160b000e0700
-180c000603001e0f000e0700281400180c00160b00160b001e0f000e0700060300160b00
-1e0f001e0f00180c000603001e0f000e0700201000140a001e0f002010000e07000c0600
-201000201000281400180c00281400160b000c06002010000e07001e0f002814001e0f00
-180c00160b00201000261300201000160b00060300381c000e07000e0700140a001e0f00
-140a00201000201000140a00180c002010002e1700140a00140a00160b00140a000e0700
-140a002010000e07002814001e0f000e0700140a00261300301800160b002010001e0f00
-180c00160b001e0f00281400160b002010000c06001e0f001e0f00180c000e07001e0f00
-2010002613002613002613002613002814002e1700160b00160b001e0f00160b000c0600
-140a000e0700201000060300301800140a00180c00160b00160b001e0f00160b00201000
-2613001e0f00180c00140a000e0700140a00140a00180c000e0700281400201000180c00
-201000160b00060300140a00201000020100160b000e0700040200261300201000301800
-160b00140a00140a001e0f000e0700201000160b00160b00261300140a00281400201000
-2010002814000603002010002010001e0f00160b002e17000e0700201000281400180c00
-160b002010000201000e0700040200281400160b001e0f00020100140a00301800261300
-281400160b00201000140a001e0f00160b00160b000c06001e0f00060300140a00160b00
-180c00160b00160b00060300020100281400180c000603000c06002010000c0600140a00
-160b00261300201000160b00160b00180c00160b003a1d002010000e0700261300180c00
-180c00140a00281400261300180c000e07000c06001e0f00160b00180c002010001e0f00
-201000160b00140a00180c002e1700281400281400180c00201000040200160b00160b00
-201000201000020100201000160b003018002010001e0f00201000160b002010000c0600
-2010001e0f00060300060300180c001e0f00160b00201000180c000e0700140a00281400
-0e07001e0f000e0700160b00281400180c00140a00201000160b00180c00160b00201000
-2010000e0700201000281400160b00201000060300180c000c0600201000201000261300
-160b001e0f00180c002010000603001e0f002613002e1700301800160b00180c000c0600
-060300160b001e0f00201000160b00140a00201000180c002e1700160b00160b002e1700
-2e1700201000160b00180c000c0600160b000e0700160b00160b00160b00301800160b00
-140a00180c002814002010000e07002010002010002010001e0f00160b00180c00301800
-160b00160b000e0700160b001e0f00301800160b000e0700201000201000201000160b00
-2010002613002010001e0f00281400180c00160b000e0700140a00160b00180c00160b00
-2010000e0700180c00201000180c002010001e0f000402002010000c06000e07000e0700
-0c06000e0700060300180c00180c001e0f000e0700140a000e0700160b000c06000e0700
-201000160b00201000140a00160b001e0f00261300281400180c000c06000e07000e0700
-2010000c06000e0700140a002e1700140a00180c00160b002613000402000e0700201000
-160b00201000160b00160b000e07002010000e0700160b00160b000e07001e0f000e0700
-160b00160b00160b00ff9e3c281400261300201000281400160b001e0f00140a00060300
-140a00fffcf80e07001e0f00160b00160b002613000e0700160b00140a00160b00160b00
-180c00180c00140a00301800160b00201000160b000e0700
-0e07000603002e17001e0f002010002e1700060300160b00201000180c00261300160b00
-0e0700160b002010000e07001e0f002814002814000c06000e0700140a00060300180c00
-140a00180c00180c00160b001e0f00140a00ff99322613003a1d00281400281400321900
-522900522900663300763b008643006c3600442200422100422100261300281400261300
-201000160b00ff9e3c2010002814000402002613001e0f00020100160b00160b00281400
-180c00140a00160b000e0700201000201000140a00180c00140a00281400180c00201000
-180c001e0f00160b001e0f000e07000603002010000e07000e0700160b000e07001e0f00
-180c00261300201000160b002010002010002613001e0f00060300201000160b00201000
-0c0600160b00160b00201000180c001e0f00160b001e0f00160b000e07002010000e0700
-0e0700201000140a00160b00160b00180c000c0600281400160b00160b000c0600180c00
-1e0f00261300180c00140a001e0f00ffa54affa952ffa040ffab56ff9e3cff9b360c0600
-160b002010002010000e0700160b00160b001e0f000e0700140a000e0700281400160b00
-140a00060300201000140a000e0700281400140a002010001e0f00160b00160b00160b00
-261300160b00201000180c00180c00160b000e07000c06002010000c0600180c00281400
-160b00281400301800160b00201000321900201000180c00180c00160b00281400160b00
-160b002010001e0f00180c000e0700180c001e0f00180c000e0700160b00201000201000
-1e0f00160b00281400160b00201000160b00281400281400060300201000281400160b00
-261300160b00160b002010000e0700160b00160b000e0700201000201000160b00180c00
-261300180c000c0600020100201000020100180c00160b00140a00160b000e07000c0600
-0e0700201000140a00160b001e0f00160b000e0700160b00140a00060300160b001e0f00
-1e0f00180c00160b000c0600160b00140a00180c00301800160b001e0f00201000180c00
-160b00160b002814002613000c0600180c00160b000c06002010001e0f00140a00201000
-0c0600140a00180c00180c002010001e0f00180c00301800281400160b00261300140a00
-0e0700160b002814001e0f00301800201000160b00160b00160b00140a00180c000e0700
-201000160b000c06002010000c0600060300201000140a001e0f00140a001e0f000e0700
-0e07002010001e0f000e07000e0700180c00160b00180c00201000160b00201000160b00
-140a000c06000e0700140a00140a000c06000e07000e07000e07000e07001e0f000e0700
-180c002010002010001e0f000c0600140a002010000201002814000e07002010000c0600
-160b00160b000e0700160b001e0f002814000e07000e0700180c00201000140a00140a00
-201000160b00060300180c00201000160b00160b00201000180c00160b000603001e0f00
-2010000e0700160b00160b002613000402001e0f00201000160b001e0f002814000c0600
-0e0700180c000e0700180c00281400160b00160b000402000201001e0f000e0700301800
-180c00160b00160b00140a000603002814001e0f00201000180c00160b000e0700160b00
-2814000402001e0f000e07000c0600140a002814002010000e0700201000160b00281400
-140a00160b001e0f00180c00140a00160b000e0700160b001e0f000c0600180c00201000
-160b00201000140a00180c001e0f00160b00180c00201000160b002010000e07001e0f00
-160b00160b00160b000c0600160b00160b00180c000e07000603001e0f00160b00261300
-160b000e0700201000201000180c000e07000c06000e07000e0700160b00201000201000
-0e07001e0f00140a00180c002814001e0f000e0700140a000c0600160b00140a00160b00
-140a001e0f000e07000e0700160b00160b00281400060300140a002010000e0700201000
-0e0700160b00ffa448201000160b002814002613002613002814002010000e0700140a00
-0e07000e0700ffad5a1e0f00160b002010000e0700180c000e0700180c00160b00201000
-281400060300160b00160b00180c00201000201000180c00
-0e07002010000e07000e0700140a00160b00281400180c00160b000e0700140a00140a00
-0e0700160b00140a001e0f000e0700261300140a00261300140a000c0600060300160b00
-160b00160b002e1700160b00201000160b00ffa74e2814002010002e17002e1700402000
-4c26006e3700864300904800ac56009048006432005c2e004a2500201000281400301800
-1e0f00160b00ffa040140a001e0f000e0700201000160b001e0f00160b00301800281400
-180c00140a00140a00160b00261300140a00180c002010002e17000c0600180c00160b00
-0e0700180c00281400140a000e07001e0f00140a002e1700160b002613002010001e0f00
-160b00261300261300160b000603001e0f000e0700180c00140a00140a001e0f00160b00
-180c001e0f00201000201000160b00140a00140a00180c000c06001e0f00180c001e0f00
-2010000c0600160b002010002613000e0700180c00180c000c06000e07001e0f001e0f00
-180c002613000e0700ffa952ffa54a201000160b00201000201000140a001e0f00ffa244
-ff9d3aff9c380603002010002010000c06000c06002e1700140a00201000160b00201000
-1e0f00201000180c00160b000e0700281400201000201000180c00160b00261300140a00
-2010000201000c0600180c00160b000603000603000c0600201000160b002010000e0700
-160b001e0f001e0f000e07001e0f00160b00160b00140a000c0600160b00140a00020100
-2010002010002814000c0600201000160b000c06000c0600160b002613001e0f00160b00
-201000160b001e0f000e0700160b002613001e0f00060300201000140a002814000e0700
-160b00160b000201001e0f00180c00201000281400160b00180c00140a001e0f001e0f00
-0e0700160b000e0700201000160b000e0700060300160b00180c00140a00201000281400
-201000180c001e0f00160b000e0700201000140a000e0700160b002010000e0700160b00
-140a002814001e0f00060300201000160b00160b00160b00261300060300140a00060300
-1e0f00140a003a1d00140a00201000201000160b000e07000c0600160b00201000160b00
-0e07000c0600060300201000040200180c00180c00201000261300160b00201000160b00
-2e1700160b001e0f001e0f00180c002010000e0700160b00140a000e0700201000140a00
-201000381c00160b000603000201000e0700201000180c00201000160b002010001e0f00
-281400281400140a000e0700180c002010002010002010000e07001e0f00160b00201000
-140a00180c00140a002814000e0700160b001e0f00160b00180c00281400060300201000
-0e07000c0600160b002010000e07000c0600261300180c00261300160b00160b001e0f00
-160b00140a00180c00180c00261300160b00140a00180c00281400160b000e07000e0700
-180c000e07000e07000c06000e07000e0700140a001e0f002814000c0600180c00281400
-2613000603001e0f00160b00160b00020100281400160b002010000c06000e0700201000
-1e0f00180c000603002010000e07001e0f00281400160b00261300160b00261300381c00
-201000160b00060300180c000c06000e07001e0f00201000160b00180c00281400140a00
-140a00281400180c000c0600160b001e0f00160b00040200160b00201000140a000e0700
-1e0f001e0f00180c00160b002010000e0700160b000603001e0f00201000140a001e0f00
-160b00140a00201000140a00180c000c06000e07000e0700180c002010000e07000e0700
-060300180c000e0700160b00180c002010000e07000c0600140a002010000e07001e0f00
-3018000e07001e0f00160b00180c00140a00201000201000160b000c0600140a00140a00
-180c00060300160b000e07000603002010000e07001e0f00201000160b002010001e0f00
-0e0700160b00180c00281400381c00140a003018000e07000e07000e0700060300321900
-160b00ffa0400e0700160b002814002613002010001e0f003219001e0f00281400201000
-201000180c00160b00ffa244160b00180c00321900140a00160b00261300060300020100
-2010000c0600140a00160b000e0700180c000e0700140a00
-160b000e0700160b002814000e0700180c000e0700060300040200201000160b000e0700
-140a002e17000e0700140a00201000160b00180c001e0f000c0600180c00180c00160b00
-160b000201000e0700281400301800ff9d3a140a002814002e17002613003219003a1d00
-6e3700804000b85c00e27100e87400e07000aa55006c36005229003a1d00381c00281400
-160b00281400ffa244261300301800140a00140a00180c00160b00140a00160b00020100
-0e0700160b001e0f00180c00180c000c0600160b00201000201000160b000e0700201000
-160b00180c002613000e0700201000040200201000140a000e0700140a00060300060300
-2814000c0600160b00160b00201000160b00140a00180c00160b002814000e07000e0700
-201000160b00140a00201000261300381c001e0f00201000040200160b00160b00060300
-160b00160b00160b00180c00261300180c000e07000e07002010001e0f002613001e0f00
-201000301800ffa244140a002010002e1700140a00201000160b00281400281400060300
-140a00060300ff9c38160b001e0f000e0700160b00201000140a000e07002613001e0f00
-160b00180c002010000e0700160b00160b00261300201000180c002010001e0f000e0700
-201000140a000e0700180c00060300261300160b00201000140a00140a00140a00160b00
-140a001e0f000e0700160b001e0f001e0f001e0f000402001e0f00060300160b00160b00
-160b00180c00140a00160b001e0f00160b00160b002613001e0f001e0f00160b00140a00
-201000281400140a000e0700160b002613000e0700381c001e0f002010003018000c0600
-160b00160b00201000201000160b00140a00201000201000281400301800060300180c00
-140a00180c00060300281400140a00201000140a002e17000e07000e0700201000201000
-180c000e0700160b002e1700160b000e0700160b00160b001e0f00180c00180c00020100
-160b00160b00281400160b00140a00160b00201000180c001e0f000e0700140a000e0700
-180c00160b000e07002010002010000603001e0f00140a00201000140a001e0f00160b00
-0e0700160b000402001e0f00060300140a000e0700140a00180c002010000e0700201000
-180c00160b004020000c06002010000e07001e0f00160b00180c00201000160b00160b00
-160b000e0700201000261300140a00160b00140a00201000140a000e0700201000180c00
-1e0f00160b000e0700201000160b002010000e0700180c00201000060300180c000e0700
-160b001e0f001e0f00201000020100201000201000180c000e07000c06000e0700261300
-2010001e0f001e0f002010002010001e0f000603000e07000e0700160b00201000140a00
-160b001e0f000e0700160b00201000180c00281400140a000c06002613000e0700140a00
-0e07000e0700160b00201000160b00201000180c002010000e0700160b00261300301800
-0e0700160b00160b000e0700160b00160b000e0700160b000c06002814002010002e1700
-160b000e0700201000201000180c00180c00180c001e0f001e0f001e0f001e0f002e1700
-180c00160b00160b00160b002010000e07002010000e07000e0700160b000e07001e0f00
-0e0700201000180c002010001e0f001e0f00140a00201000060300180c002e1700160b00
-1e0f00301800160b002010002010002010002613001e0f000e0700201000180c000e0700
-2010001e0f001e0f00201000261300180c002613000603002613000e0700180c00180c00
-2010002010000e0700201000160b00160b00140a00180c00160b002010002814001e0f00
-0201000e0700201000160b000e07002613000e0700180c00201000160b000201002e1700
-2814002010000c0600160b001e0f001e0f00160b00261300040200140a001e0f00160b00
-2010001e0f002010001e0f000e0700180c001e0f00020100160b001e0f00160b00281400
-ff9c38180c00160b001e0f002e17003018002e17002613003018002814002e1700261300
-1e0f00180c00180c00ffa142281400261300281400160b000c06002010000e0700180c00
-180c002010000e07002e1700160b001e0f00160b00140a00
-0e0700160b00160b00180c00160b002010000e07000e07000e07000e07002010001e0f00
-2e1700201000261300160b002613002e1700160b002010000603000c0600201000281400
-201000201000160b000e0700180c00ff9c38201000160b002010003219004020004a2500
-6e37009c4e00de6f00ff9020ff9c38e47200a25100804000442200381c00281400301800
-1e0f00140a00ff9d3a160b001e0f00180c00180c00160b000603002e1700180c00201000
-ffa244ffa244ff9932ffa040ff9c38ffa448ffa448ffa952ff9d3a0e0700201000281400
-1e0f00160b00301800180c001e0f00140a00201000140a00180c001e0f00160b001e0f00
-040200140a000603000e0700160b00281400160b00180c00140a000e07002e1700281400
-1e0f000e0700160b00160b00160b002010001e0f00180c00180c00140a00201000160b00
-3018001e0f00020100160b00140a00140a00140a002010000e07001e0f000e07000e0700
-160b00fffcf81e0f00281400301800301800281400281400140a00180c002814001e0f00
-160b001e0f00201000ffa142ffa2442613002010002010002613000e07001e0f00301800
-180c003a1d00301800140a00180c002e17002613000e0700160b00201000201000281400
-1e0f002e17000c0600160b00201000160b00060300201000140a000e0700160b00201000
-180c002814001e0f00201000281400201000160b000e0700160b00180c00160b000e0700
-140a00201000160b002010001e0f000e0700160b000e07000e0700140a000c0600201000
-0c0600160b00060300301800160b00160b00160b00160b00160b00201000160b00201000
-140a002010001e0f001e0f00180c00040200201000160b00140a002010000e0700060300
-1e0f00160b002010002010000e0700140a00180c00160b001e0f00140a00180c002e1700
-160b00281400180c001e0f00201000180c001e0f00180c00140a00261300201000201000
-160b002010002010002010001e0f002010000c0600201000261300160b00160b00201000
-201000160b001e0f000603001e0f001e0f001e0f00201000140a00160b000603000c0600
-0e07000e0700160b001e0f002814000c06002010001e0f002010001e0f00261300160b00
-2613000c0600160b00140a001e0f00281400180c00140a001e0f00180c00201000180c00
-160b002010001e0f000e0700140a00180c002010000e07002814000e0700140a00201000
-020100140a000e0700180c00060300140a00201000281400180c000e0700180c001e0f00
-1e0f001e0f001e0f00201000060300201000321900180c00160b00140a00180c00140a00
-0e07002814001e0f00261300180c00160b00160b000e0700201000040200160b000e0700
-1e0f000e0700160b00160b00040200160b001e0f000e07000e07001e0f00060300160b00
-160b000e0700140a000e0700201000160b00201000140a00180c000e0700201000060300
-140a002e1700201000140a00160b00281400180c000e0700160b00160b000e0700261300
-1e0f00180c002613000e0700201000140a00180c001e0f00201000180c00180c000e0700
-140a00201000160b00140a00281400160b00160b001e0f002613001e0f000e0700140a00
-160b00160b00261300201000180c002010000c0600160b000603000e0700020100160b00
-281400261300140a00180c00160b00160b00160b00201000261300301800201000140a00
-2613000c0600201000281400160b000e07002010001e0f000e0700180c000e0700201000
-160b002010000603000e0700180c00180c00160b000e07001e0f00180c000e0700040200
-0e0700201000140a000e0700261300060300060300160b002010000e0700160b00160b00
-1e0f002e17002613001e0f002814000e0700160b00180c00180c00201000060300201000
-140a00160b000e0700160b00140a000e0700201000140a000e0700060300201000ffa74e
-201000160b00160b00281400201000281400281400321900301800422100201000321900
-281400281400281400160b00ffa244160b000201002010001e0f00180c002613000c0600
-180c00180c00301800160b00140a00140a000e07001e0f00
-160b00160b00281400140a00160b00160b002010000e07000e0700140a003219000e0700
-1e0f00160b00060300060300160b00060300201000281400140a002814000c0600201000
-160b000e07001e0f00261300140a00ffa54a160b00281400281400160b003018005a2d00
-763b00aa5500fe7f00ff8e1cff9932ff82049e4f008643004221002613003a1d00201000
-2814000e0700ffa4482010001e0f00301800160b001e0f001e0f00ffa54affa142ff9d3a
-0e07000e0700281400281400201000261300140a00180c00201000ff9e3cff9e3c1e0f00
-261300201000140a000c06000603000e0700281400160b00140a00281400301800140a00
-160b001e0f00160b00160b00281400140a00140a00140a000603001e0f001e0f001e0f00
-160b001e0f00201000160b00160b000c0600020100060300060300180c000c0600160b00
-160b002814002010000e0700281400160b00160b00261300140a00201000201000261300
-ffa1423219002010002814002613002814003018002814002e17002e1700160b00301800
-060300160b00261300201000201000ff9e3c180c001e0f001e0f00180c00180c000e0700
-140a00180c001e0f000603000e0700160b000c0600160b00281400160b00140a00160b00
-160b000e07002010001e0f00140a001e0f00160b00180c000e0700201000281400160b00
-060300160b00160b001e0f000603002010000e07000c06002010000e07000e0700160b00
-180c00201000180c00281400160b00160b00140a00160b002010000c0600180c00160b00
-180c002814002814000c0600180c00261300060300180c000e07000e07002613000c0600
-160b00201000201000160b000c06000e0700140a00140a00261300281400201000160b00
-0402000e07000e07002010000402001e0f00201000040200160b00160b000c0600140a00
-140a00160b002010002010000e07001e0f00160b00160b00140a00160b00140a00201000
-1e0f00180c000e07002010002814002613002010003a1d000e0700180c00060300020100
-261300180c002814002010003018002613000c0600180c00201000180c00201000201000
-0201000e0700180c00160b00180c00281400140a001e0f00140a000e07001e0f00060300
-180c002613000e0700201000180c00201000160b00180c000e07000e0700180c00160b00
-2010000201001e0f00180c003219000c06000201000e07002814001e0f001e0f00060300
-160b002814000e0700160b00160b000603000e07000c0600140a001e0f001e0f00160b00
-160b000e0700201000261300180c000603001e0f00180c00180c000e07001e0f001e0f00
-140a00201000301800160b000e0700160b00281400160b00140a00140a00160b001e0f00
-0e0700160b000e0700180c000e07001e0f00180c00201000201000160b00201000160b00
-160b00140a001e0f00160b00040200180c00201000201000140a00261300281400140a00
-1e0f00140a00160b001e0f00180c00160b00201000160b000e0700160b000e0700201000
-160b00180c00140a000e07003018002e17000e0700261300160b00281400160b00180c00
-0603000e0700160b000e0700201000160b00180c00180c002010001e0f00180c000e0700
-160b000e07000c0600160b00020100140a00261300160b000603000c0600060300281400
-0c0600160b003018002e17000e0700160b00180c00160b002010000e07000e07000e0700
-2010001e0f00180c00201000020100160b000e0700140a00180c00281400160b00160b00
-160b00201000140a00281400301800201000281400160b002613000c0600140a00060300
-0c06000e0700160b000e0700180c002e17001e0f002010000c0600160b00160b00201000
-180c00160b000e07002613001e0f000e07000201000201000c0600160b00281400180c00
-1e0f00301800160b00160b00160b000e0700160b00160b00201000180c001e0f00ff9932
-2814002613002010002010004221002814004020003a1d00201000402000281400301800
-261300281400160b000c0600ffa040160b00201000180c002010000e07000e0700140a00
-0e0700140a00201000060300180c00201000160b00140a00
-2e17000e07001e0f00180c00160b00160b000e0700160b00180c00160b00180c00060300
-2010002814000e0700140a002010000c0600140a00140a002814000c06000c0600160b00
-180c001e0f00180c000e07000e0700ffa64c160b000e07000e07001e0f00381c004a2500
-7e3f00aa5500e27100ff850aff8102ec76009c4e00763b00402000402000321900201000
-281400301800ffa74e0c06002010000c0600160b00ff9c38ffa0402814000e07000e0700
-281400301800201000160b00160b00160b002010001e0f002010002e1700201000ffa040
-ff9e3c180c00140a00281400160b001e0f001e0f00180c00160b000e0700140a00201000
-0e07000e07001e0f001e0f00201000180c00160b00140a000e0700060300140a00201000
-0603002613001e0f000e07001e0f002010000e0700160b00180c00140a000e07000e0700
-160b000c0600180c00160b00160b002010001e0f002010000e0700160b00140a00160b00
-ffad5a2010002814002010002e1700321900301800281400381c002613003018003a1d00
-2010001e0f002e1700201000281400261300ff9932160b000e0700261300180c00ff9d3a
-ff9d3aff9c38ff9830ffa54aff9e3cffab56ffa142160b00160b001e0f00180c00140a00
-0e07001e0f00160b002010002e1700180c00160b000e0700180c001e0f000201000e0700
-0c0600201000140a002613000603000c0600160b002814000c0600180c00160b00140a00
-201000160b000e07000c0600281400140a002613001e0f00201000201000160b00140a00
-261300261300160b00201000180c00201000201000160b00160b001e0f002e1700201000
-2010001e0f00201000180c002814000c0600201000160b00160b00160b002e17000e0700
-2613001e0f00281400201000060300140a002e1700160b000e0700160b00201000160b00
-1e0f000e0700180c002010001e0f000e07000e07002814002814002010000603000c0600
-160b00180c00160b00160b002010000e0700060300180c000603001e0f00201000261300
-2814001e0f00261300201000180c000c0600160b000e07000e0700160b002814003a1d00
-060300201000201000160b000201002010002613001e0f00160b00201000180c00180c00
-1e0f00160b00180c00140a00140a000e0700160b00180c00281400281400160b00140a00
-140a002814002814001e0f00160b00140a00180c00201000140a00160b00140a000e0700
-0c0600201000160b00201000180c00301800180c00201000060300261300140a00020100
-2010002010000e0700160b000c06001e0f002010003018000e0700140a00180c002e1700
-160b001e0f00201000160b00180c00160b000e07000e0700281400261300160b000e0700
-281400180c003a1d00160b00140a00160b00180c00201000261300281400201000140a00
-1e0f00160b00160b000c0600180c001e0f00160b001e0f000e07001e0f00261300060300
-160b000c0600160b000e0700201000180c001e0f001e0f00180c00281400281400261300
-140a00180c00040200261300201000180c00201000160b00160b00201000160b00160b00
-0e0700281400160b00160b000201002010001e0f001e0f00160b00201000281400281400
-0603000603000603000e0700060300180c002e17002010000c06002010000c0600180c00
-160b00180c000e0700180c00140a00160b00060300201000281400140a000e0700281400
-180c000e0700281400160b000e07000e0700140a00160b00140a001e0f00140a00201000
-180c000e0700160b00201000201000180c00140a00160b000e07000e0700160b000e0700
-160b001e0f000e07001e0f00160b002e1700180c000e07001e0f001e0f00140a00140a00
-0c0600301800180c000c0600201000140a00160b000e0700040200160b002814001e0f00
-261300201000201000180c00160b000c0600160b001e0f00160b00160b001e0f00ff9b36
-2814000603002e1700301800301800381c003a1d00381c00381c00301800301800201000
-301800180c00201000281400ffa142180c00201000040200180c00060300160b001e0f00
-140a000e0700020100180c00160b00180c000e0700180c00
-2613003018001e0f00261300140a000c0600160b00160b00180c00160b002814000c0600
-140a00180c001e0f001e0f000603000e07001e0f00160b00060300281400180c00201000
-1e0f00160b002613000e0700180c00ffa040160b00301800281400281400402000422100
-5c2e007e3f00b85c00d06800d26900b85c006432006633004020004221002613002e1700
-201000160b00ffaa54201000261300ffa448ff9e3c281400160b00261300160b00422100
-2814002010001e0f00201000140a00381c00180c002e17002010002814001e0f00180c00
-180c00ff9e3c301800160b00060300180c00160b00160b002010000e0700060300201000
-1e0f002010002e17001e0f00180c00140a00160b00180c001e0f00160b001e0f001e0f00
-1e0f00160b00140a001e0f00201000160b002814002010002814002e1700180c00180c00
-140a00301800301800160b00160b00140a001e0f00160b00140a00281400281400160b00
-ff9c38140a00381c00160b003219003018002e17003a1d004020003a1d00281400422100
-301800281400381c002814002010002814001e0f00ffa64c201000160b00ffa64c160b00
-160b00160b00201000160b00160b00321900160b00ff9c38ff9d3a1e0f000e0700180c00
-140a000e0700180c001e0f00201000160b000402000e07001e0f000201002010000e0700
-201000160b001e0f002814000e07002010000e0700180c000e0700261300060300281400
-2010001e0f002814002814001e0f00201000261300160b00160b002010000603000e0700
-261300140a00160b00281400160b001e0f002010000c0600140a002613000e0700140a00
-0c0600261300180c00201000180c00261300180c000e0700180c00160b00180c000e0700
-160b000e0700180c000c06002010002814000e07002010000e07001e0f002814000e0700
-1e0f003018000e0700281400180c00140a00180c002814002010000c0600140a00180c00
-0e07002010002613001e0f000e07000e0700140a00160b000e0700160b00201000201000
-0e07002e17002613000e0700140a000e0700020100ff9c38ff9830ff9e3cffa142ff9830
-ff9e3cffa244ff9d3a140a000e0700140a001e0f00060300381c001e0f002613000e0700
-060300201000160b00140a00160b001e0f000e07002613002010002613001e0f00261300
-160b00160b000603002010002010000e07000e0700180c000c0600281400180c00140a00
-2010000c0600180c001e0f002010001e0f00201000160b000c06002010001e0f00160b00
-281400201000140a00060300160b001e0f002010002010002814002e17002e1700301800
-3219001e0f003018002814001e0f002010000e07000c0600201000160b000c0600140a00
-0c0600160b00160b000603002814002613000e0700140a002010002010000e0700261300
-160b002613002814000c0600281400281400160b00180c002010000c06000e0700160b00
-140a00160b00160b00301800140a002814000c06002010002010002010000603000e0700
-140a00160b000e0700180c00160b00180c00140a00160b00201000060300180c00160b00
-2010000201000e0700140a000603001e0f00180c00160b00160b000e0700281400160b00
-180c00160b00140a00160b00160b002010001e0f00201000160b000e0700060300140a00
-160b00180c00301800160b00201000261300160b001e0f000e07001e0f00160b00140a00
-0c06001e0f00281400160b00160b00060300160b00180c003018002010000c0600201000
-180c00160b00180c000e0700180c000e0700180c00180c002010000e0700160b000e0700
-160b00160b00160b00160b000e0700160b00140a00180c000603002010000c0600160b00
-2e1700020100160b002814000e0700180c00281400201000160b001e0f002814000e0700
-0e07001e0f00160b000e0700160b000e07001e0f00201000140a00201000ffa74e261300
-1e0f003018003018001e0f00261300301800321900381c00301800261300301800301800
-301800301800180c00ff9d3a140a00160b00201000180c000e0700160b000e0700160b00
-180c000201000e0700160b00201000261300060300201000
-0e0700160b00160b002e1700060300180c00180c00180c001e0f00140a00160b002e1700
-281400301800180c00160b00160b001e0f00201000060300261300160b000c0600201000
-140a00281400140a000c0600140a00ffa54a160b002010002010003018002e1700422100
-522900663300864300984c00984c00783c006633005229004a25002e1700321900201000
-2e1700201000ffa448301800ffa0402e1700140a00201000140a00180c00281400281400
-3219002814003219001e0f00281400160b00160b00160b00180c002e1700281400261300
-201000160b00ffa040ff99322010002010001e0f000e07000e07002613000e0700201000
-2010000402001e0f00160b00281400160b00160b002e17000c06003018001e0f00201000
-0603000e07001e0f000e0700180c00201000381c003018002613000e0700160b00201000
-180c00201000160b002613001e0f00160b00140a00140a00180c00261300140a00ffa64c
-0c0600261300261300160b003018003018003a1d004a25004a25004a2500542a00522900
-3a1d002e1700281400321900281400160b00201000ff9c380e0700ff9c38160b000e0700
-301800160b00160b00281400160b00201000160b00160b00140a00ffa142281400180c00
-140a000e0700281400060300281400160b000e07000e07000e0700201000180c00160b00
-160b00201000160b001e0f000e07000c06000e0700160b00160b00060300201000160b00
-0e0700160b00160b00261300180c00160b002010000e07002613000e0700160b000e0700
-160b00160b000402000402002010002010002010002010000c0600201000160b000c0600
-0e0700261300160b00201000140a00140a00281400261300040200201000160b000c0600
-160b00160b00060300180c00180c00140a000603001e0f000c0600201000201000140a00
-160b00180c002814001e0f001e0f002010003018000c06002613000e07002e1700160b00
-180c002010001e0f00160b002e1700281400160b00160b000e0700160b00160b00160b00
-0e07001e0f00261300160b00160b00ffa244ff9b36160b00261300140a00160b003a1d00
-1e0f00180c00160b00ff9e3cff9c38180c00160b00180c001e0f000e0700180c00201000
-160b000e07001e0f000e0700ffa64cff9e3cffa952ffa142ffaa540e0700180c002e1700
-201000261300201000201000160b001e0f00201000201000040200180c001e0f00140a00
-0e0700060300160b00180c00180c00201000140a00140a00140a00301800201000140a00
-160b002010001e0f00281400180c001e0f00160b000c0600201000160b00060300201000
-1e0f00160b002010001e0f002613000e0700160b00281400140a00180c001e0f00180c00
-0e0700201000201000140a000e0700201000140a000c06000e07001e0f002e1700160b00
-0c0600180c00180c001e0f00201000160b00261300160b002e17001e0f002613001e0f00
-261300201000060300180c00160b002e17001e0f00180c00160b00140a002010000e0700
-140a00160b00281400160b00180c00201000180c00160b000e0700201000201000201000
-160b00160b001e0f000402001e0f000e0700180c00201000180c00140a000e0700020100
-1e0f00160b000e07001e0f00160b00201000180c00201000160b00140a002010000e0700
-160b00160b000e07000e0700140a00160b00160b00140a000603000c0600160b001e0f00
-0e0700180c00180c001e0f00140a001e0f00160b000e0700140a00160b001e0f00201000
-261300281400180c001e0f000e07001e0f00140a002814003018001e0f00180c001e0f00
-140a00201000160b00180c00201000140a00140a00201000140a002613002010000e0700
-160b00140a001e0f000e07001e0f002010002613000603000e0700160b00201000201000
-2010001e0f00261300180c00060300140a00160b00201000201000160b00ffa142180c00
-160b00201000201000160b002e17002e1700321900381c00321900281400301800201000
-1e0f00160b00381c00ffa64c2010000c06001e0f00140a001e0f00180c000c0600201000
-2010000e0700160b000e0700160b00060300160b00140a00
-140a001e0f000e0700180c00261300180c00060300180c00020100060300160b00180c00
-2010000e07000e0700160b00180c00160b00160b000c06001e0f00140a000c0600281400
-0c06002613000e07001e0f00180c00ff9d3a261300201000261300301800281400422100
-4221006432004a2500643200542a005229003a1d00422100301800281400281400160b00
-160b00ff9932180c00201000160b00160b00160b00261300261300281400201000160b00
-2010003219002010003a1d00381c004020003a1d00381c002e1700281400261300281400
-3018001e0f00261300180c00ff9e3c2814000e0700160b00180c00180c001e0f000e0700
-160b000e0700180c000c0600201000201000180c00160b00180c00160b001e0f00180c00
-0603002010000e0700160b002010002613000e0700281400060300180c00160b00301800
-060300201000160b00060300160b00201000180c001e0f001e0f001e0f00160b00ffa244
-0e0700160b003018002814002814003a1d004221007038004c26006c36006c36006e3700
-5c2e004020004020004221003018002010001e0f00160b00fffcf8160b00180c000e0700
-1e0f00201000160b001e0f00261300281400201000201000160b00160b00ff9c38261300
-060300261300160b000e07002010000e0700060300140a000e0700160b001e0f00201000
-2010002814000e0700180c001e0f00160b00160b00281400201000180c002010000c0600
-180c001e0f002814001e0f00261300060300281400160b000e0700180c00180c00261300
-020100140a000e0700180c00201000160b000603001e0f002e17000e07000c0600020100
-2613002e1700281400160b00201000160b00160b002010002814000c06000e07000e0700
-0e0700140a001e0f000e07000603000c06001e0f00140a001e0f002010000e0700201000
-140a00281400201000261300160b002613002814000e0700281400040200140a00160b00
-281400180c00160b000e0700160b001e0f001e0f00160b000c06000e0700160b000e0700
-1e0f00180c00140a00160b00ffaa54160b002814001e0f00281400261300160b00160b00
-140a00201000160b000603000c0600160b00180c001e0f00140a00201000281400201000
-160b00160b00160b00ff9c38060300140a00201000140a00140a00ffa2442010000e0700
-0c0600140a00160b001e0f001e0f000c0600160b00040200261300160b00160b000e0700
-160b000e0700160b00140a000c0600060300140a00160b001e0f00140a00140a000c0600
-2010002e1700261300180c00140a000c06000e0700201000160b000e07002e1700140a00
-3018001e0f000e0700160b00261300281400160b00281400180c001e0f00180c00201000
-060300180c001e0f00140a000e07002010002e1700180c001e0f00180c00060300201000
-261300180c000e0700201000160b001e0f00321900201000180c00160b000603001e0f00
-160b00180c00160b00180c00140a00060300140a00201000201000261300160b00180c00
-160b00160b00140a00160b001e0f000e0700180c000e07000201001e0f00201000261300
-261300160b00201000160b00180c000e07000e0700160b000c0600140a00180c00201000
-140a00201000180c002010002010000e07001e0f00160b00160b00281400201000201000
-0c06001e0f00140a002814000c0600140a00301800160b00160b00140a00261300301800
-201000180c000402002010002613000c0600201000160b00180c00180c00160b00160b00
-160b00160b001e0f00160b00442200040200160b00140a000c06000e07000402001e0f00
-261300180c000e07001e0f000e07001e0f00281400180c00060300180c00281400180c00
-1e0f00180c000e0700261300180c001e0f00201000180c000e0700261300140a00201000
-160b00160b002010002010000e07000e0700160b00160b000c0600160b00261300ffaa54
-160b00160b002e1700301800422100381c00381c003a1d00281400281400381c00281400
-180c00201000140a00ffa244140a00160b00160b00160b00180c00201000180c001e0f00
-2e1700140a001e0f00140a00160b00201000281400261300
-2814000c06002010000e07002e1700160b00180c00180c000c06002814000c06000c0600
-201000160b000e07000e0700160b00180c00201000180c00281400160b00201000160b00
-1e0f00060300140a00301800160b00160b00ffa244160b001e0f002010001e0f00301800
-2e17004221004c26004c26004221004a25003a1d00301800301800180c00180c001e0f00
-1e0f00ff9e3c201000ffa54a2613002010003219002e1700140a00281400261300522900
-3a1d00381c002e17004221004a25004422003219003018003a1d00301800301800281400
-3018002e1700180c00160b00ff9e3c2814000e07000c0600160b00201000160b00140a00
-160b00160b00160b00160b000e07001e0f000e0700160b002010002e1700040200160b00
-0e07001e0f000c0600160b00180c000201000c0600261300160b001e0f00261300201000
-180c000c06001e0f001e0f00180c000e0700201000261300020100201000020100ff9e3c
-2814000e0700261300201000301800301800442200542a00763b009a4d00924900864300
-6c36006e37004422004221001e0f00180c00281400ffa54a2e1700ff9d3a160b00160b00
-261300381c003219003a1d00381c00201000180c00281400201000281400281400ffa040
-201000160b00160b001e0f002010002613002010001e0f002613000e0700160b00140a00
-2e17000e0700180c00160b00261300140a000e0700160b001e0f000c0600160b001e0f00
-180c00160b000603001e0f00201000060300160b00160b00180c00180c00201000261300
-281400160b000c06001e0f00180c002613000201002010001e0f000e0700180c00160b00
-0e0700180c000e07000e0700140a00160b000e07000e0700180c00160b00160b000c0600
-140a00060300160b00140a00140a001e0f00281400201000160b00180c000603000e0700
-201000160b00261300201000201000201000160b00381c000e0700281400160b001e0f00
-180c00180c000c0600281400160b001e0f00160b00180c00281400281400160b00160b00
-281400201000060300ffa2442e17001e0f00040200180c00201000201000160b00160b00
-2613001e0f00301800160b00160b00180c00ff9c382613001e0f00160b00140a000e0700
-060300160b00160b00ffa244180c00140a00160b000e0700201000020100fffcf8301800
-281400201000160b00160b00180c001e0f000603002613002010002814000e07001e0f00
-281400140a00180c00140a001e0f00160b001e0f00160b00180c00140a00160b00261300
-160b000603000402002010000e0700180c00140a00160b001e0f000e0700201000261300
-180c00180c000c06000e07002010000e0700160b00140a00261300160b00160b00160b00
-040200180c00201000160b002010001e0f00140a00060300160b00160b00180c00160b00
-0c0600160b00180c000e07001e0f002010000e0700160b00180c00261300201000261300
-0c06000e07000c06000e0700160b00160b000e0700160b001e0f00201000201000180c00
-1e0f00281400160b00201000160b00060300201000140a00160b00201000140a00281400
-0c0600180c00201000160b000e0700160b001e0f000603000e0700160b00160b00140a00
-160b001e0f00201000160b00160b000c06002814001e0f00261300180c000e0700160b00
-160b00160b002814002010001e0f00060300180c00180c00180c00201000261300261300
-1e0f00160b001e0f00040200261300160b001e0f00281400180c000c06001e0f00060300
-0e07000e07000c06002010001e0f000e07001e0f00180c00020100281400201000040200
-140a000603001e0f00180c00160b00180c003018000e0700160b000e0700160b001e0f00
-160b000e07003018001e0f002814000e0700160b002010002814001e0f00201000160b00
-180c000c0600160b00281400160b00160b00160b00160b001e0f00140a00201000ffa448
-2e17001e0f00140a00261300180c00201000261300381c00160b00281400201000180c00
-160b00180c00ffa64c140a00180c00160b002e1700180c002010001e0f00201000180c00
-0e0700060300180c00201000160b00140a00201000281400
-160b00160b00160b00160b002010002010000c0600281400160b000e07002010001e0f00
-2010002613000e07000c0600180c00281400160b00180c000e0700180c000e0700020100
-160b001e0f00160b00160b00140a00180c00ffa142140a002613002613002613002e1700
-3018002814003a1d001e0f00261300422100381c00201000321900281400160b00201000
-ffa64c180c00ff9b36160b002010002010001e0f001e0f003018002e1700301800381c00
-4221005c2e00542a005a2d005c2e00643200422100381c00422100301800261300301800
-301800321900180c00180c00160b00ff9e3c180c00180c00160b001e0f00180c000c0600
-1e0f00160b00180c00281400140a002010002814001e0f00180c002613003a1d001e0f00
-180c002613001e0f00160b001e0f000e0700060300160b00160b00180c00180c001e0f00
-0603000e07002010001e0f00160b00160b00160b00201000140a00160b00201000140a00
-ffae5c2010002814003219003018002010004221006c36006e3700924900b25900c46200
-b259007038006633005229003018002e1700ff9e3c261300281400ffa142180c00201000
-2613003219004221003a1d003a1d00281400321900261300281400261300180c00140a00
-ffa4481e0f001e0f003018000e07002010001e0f003018000603001e0f000c0600160b00
-201000160b00160b00201000180c00180c00140a00180c00180c00160b000e0700140a00
-180c00160b00201000201000160b00140a002613000e07000e07002010000e0700140a00
-281400160b00180c001e0f001e0f00180c002010000e0700160b00180c00201000160b00
-201000281400201000180c00180c00160b00040200160b002010001e0f002814000e0700
-0e07001e0f000603002010002010002613002814001e0f00180c001e0f00301800281400
-2814002814002010003018002613002010002010001e0f001e0f00201000281400060300
-160b00060300160b00060300160b00160b00160b000c0600160b00140a00261300060300
-321900160b00ffa0400e07000e0700301800201000160b00201000201000321900281400
-281400201000201000180c00140a000e0700ffa448160b001e0f00180c00281400160b00
-2e1700140a00201000ff9e3c201000201000ffa244160b00ffa142301800160b00ffa244
-160b001e0f00201000201000160b001e0f00140a00160b000e07002010000e07001e0f00
-281400160b00261300160b00160b001e0f00180c000c0600180c00140a001e0f00160b00
-1e0f00160b002010000c06001e0f002814000e07000603000e07002010000201000e0700
-281400140a00040200160b003018001e0f00261300301800160b00160b00160b00261300
-160b001e0f002814002010002010000c0600180c001e0f00160b00281400261300261300
-0603000c06000e0700180c002010001e0f00180c00140a00180c00160b002613002e1700
-2814001e0f000e0700201000201000160b00201000180c00180c00140a000e0700140a00
-160b002010001e0f00060300020100160b00201000140a002814000e07001e0f00180c00
-060300160b00201000140a00201000180c002e17001e0f00160b00201000180c00140a00
-180c00160b00201000160b001e0f000e0700261300160b00321900261300160b000c0600
-160b00180c00160b00180c001e0f000e0700060300160b000201002814000e0700040200
-160b00201000261300160b000e0700180c00140a00201000301800160b00261300201000
-0e0700060300140a002613002010001e0f001e0f00160b00180c00160b001e0f00160b00
-2e1700140a00201000160b00201000160b001e0f00160b00160b00140a002814001e0f00
-1e0f00201000321900201000ff9d3affa54aff9c38ffa142ffa448ffa54aff9e3c201000
-160b00180c00140a00180c00160b00201000060300201000160b00180c000e0700ff9e3c
-0e07001e0f002010002814003a1d001e0f002814003018002e1700180c00180c00160b00
-160b00fffcf8201000160b00060300180c00160b00160b00160b00160b00201000160b00
-180c00180c000e0700160b000e07002010000e0700140a00
-140a00160b00201000180c002613002814001e0f002010000603000c06001e0f001e0f00
-180c00180c00180c00201000160b00160b00160b000603002010001e0f00140a00160b00
-0e07002010002010001e0f00201000301800201000ffa9522814001e0f003a1d00201000
-2e1700261300422100301800180c003018003219001e0f001e0f00261300180c00ffa040
-2e1700ff9932180c00160b00180c00180c00160b00201000180c00422100422100522900
-5c2e006c3600783c008844007038006c3600763b00542a004221005229003219003a1d00
-180c00321900261300140a00201000160b00ff99322613001e0f000603001e0f001e0f00
-1e0f002010001e0f00060300140a001e0f000e0700160b00281400180c00201000281400
-201000160b000603001e0f002e17001e0f00040200160b000402000e0700140a00160b00
-1e0f00160b00160b002010000e0700160b00201000140a002e17001e0f00180c00180c00
-ffa1422613002814002613002010003a1d004221006633006633009a4d00c86400d86c00
-ca6500ac56005e2f005c2e004020002e1700ff9d3a2010000e0700ffaa54180c00261300
-281400542a00763b006c36006432004c26003a1d003018002613001e0f00281400261300
-ffa2442814002613000603001e0f000c0600140a000e07001e0f00160b00140a001e0f00
-060300180c001e0f000e0700261300261300180c000e07002010002e1700201000160b00
-4a2500180c001e0f00160b00160b00060300060300201000160b000e0700060300040200
-0c0600201000201000201000180c00301800160b00180c00160b001e0f001e0f00180c00
-2e1700201000301800180c00160b002814002814002613000e0700140a00201000160b00
-160b002010000c06002010001e0f000c0600140a00180c002010000e0700160b000e0700
-160b001e0f002613001e0f00180c00140a00160b00160b001e0f001e0f00201000201000
-0c0600160b00160b000e07000402002010002613002010000e07001e0f00180c00140a00
-180c00ffa142201000180c00160b00180c002010001e0f003219002814001e0f00281400
-160b002814002010003018000c0600281400281400ffaf5e160b000e0700180c001e0f00
-160b000c0600180c00ff9d3affa0401e0f000e07002814001e0f000603001e0f00ffa54a
-ffa952140a001e0f001e0f00281400160b000e07002613001e0f00060300381c000c0600
-160b001e0f002e1700160b00201000160b00201000140a00201000201000160b000e0700
-180c00160b002010000c06001e0f00140a002010000e0700180c00140a002e1700180c00
-1e0f00180c00160b00160b00180c00201000160b00160b00281400180c00180c00160b00
-180c00180c00301800180c002613000e0700281400160b00261300140a001e0f00201000
-140a00180c00160b001e0f00160b00160b00160b001e0f002814002613001e0f00281400
-2010000e0700160b00201000160b00140a002e1700140a002814002613001e0f002e1700
-160b002e1700160b00180c00160b00160b00201000180c000c0600261300201000160b00
-180c00201000140a000e07001e0f002814002010000e0700160b00281400160b001e0f00
-0c06002814000e07001e0f00060300201000160b00261300060300160b00160b00140a00
-140a00160b00140a00180c002010002814000e07002e17001e0f000201002e1700160b00
-160b00180c00180c000603000e07000603001e0f00180c00160b00180c00140a00160b00
-160b002814002010002010000e0700160b001e0f00060300201000281400180c00160b00
-2613000603002814000e0700160b00160b001e0f000c0600160b00201000160b00180c00
-1e0f000e0700ffa952ffa2440e0700301800281400160b003018001e0f000e0700ff9830
-ff9e3c180c002010002010002010002e17002010000e07000e0700180c00160b00140a00
-ff9932201000281400201000160b00180c00160b003018002010001e0f00201000201000
-ffa1421e0f002010002010001e0f002010001e0f00201000160b00160b00160b00140a00
-201000160b00201000180c002010000e07002613000e0700
-1e0f002814000c06000e0700281400140a000e0700160b001e0f001e0f00180c00140a00
-180c002814000e07001e0f00160b00201000180c001e0f00180c00201000261300160b00
-160b000e07000e0700040200180c00180c00180c00ff9b36160b00281400140a00180c00
-3018001e0f000e07003219002010002010002010002010002814000e0700ffa0402e1700
-0e0700ffa54a0e0700201000160b002010002010004020004422004422004c26006c3600
-8643009048009a4d00b65b00a45200a251009249006e37005e2f005c2e004a2500381c00
-3018001e0f003a1d00180c00261300281400ff9b36160b001e0f00180c002613001e0f00
-160b00140a00281400180c00140a00261300160b00261300140a00140a00180c00160b00
-2613000e0700281400160b00160b001e0f00160b00160b00180c000e0700160b00160b00
-140a000e0700140a00160b00160b00281400160b00140a002814001e0f000c0600180c00
-ffa040140a000e0700180c00201000381c003a1d004a2500643200884400d66b00e87400
-d06800a25100904800542a00422100381c00ffa142301800201000201000ffa952522900
-3018006c3600904800a251009249006e3700542a003219002010002e1700321900160b00
-ff9932160b00160b002010001e0f00140a00201000160b00160b00160b00201000201000
-201000160b000e07000e0700180c001e0f00180c00160b002010002010000402000e0700
-2010002613000603002010002814001e0f00180c00140a003018000c06000e07001e0f00
-180c000603000e07001e0f00180c002010001e0f000e0700060300060300281400201000
-160b002010002010000e0700140a00180c00160b00261300201000160b001e0f00201000
-160b001e0f00140a00201000201000201000160b00261300060300140a00140a001e0f00
-160b002613002e1700160b001e0f00301800281400140a00160b00160b00160b00140a00
-1e0f00160b001e0f00160b00160b00180c00160b000c06001e0f00180c00060300140a00
-160b00ff9830160b00281400140a002613002010002010003219003219003a1d003a1d00
-4a2500281400180c00201000180c00180c00140a00ff9d3a3018000e07001e0f00180c00
-0e0700281400ffa74effa244261300180c00281400281400201000180c00160b00281400
-160b00ff9b360c06000e07000e07000e0700180c00060300160b00180c00160b001e0f00
-0e0700160b002010000e07000c0600060300060300160b00140a00201000160b000c0600
-160b000e0700160b00020100201000140a000e0700201000180c00201000060300160b00
-140a00201000160b002613000e07002e17001e0f00180c00140a000e07000e0700160b00
-180c00160b000402000e0700180c00180c00160b00160b00180c000e0700140a00160b00
-140a001e0f00140a00140a00160b00201000281400180c000e07002e17000e07001e0f00
-2010002010002010000e0700140a00160b00180c00180c000e07002010000c06000e0700
-1e0f00140a00301800180c002010001e0f000603002613000e0700160b00140a00060300
-1e0f000e07002010000e0700201000160b002814001e0f00140a002814002613001e0f00
-2010003018000e07002010002613000e07001e0f00140a00201000140a00160b00060300
-1e0f000e0700422100140a004221000c0600321900160b00201000160b001e0f00160b00
-261300281400160b00160b00160b00201000201000140a00160b00201000160b00160b00
-160b000e0700160b001e0f00201000160b000e07000e07001e0f001e0f00140a000c0600
-160b001e0f00160b001e0f00160b00180c00140a00160b000e0700201000160b00160b00
-ff9932ffa952201000180c00201000201000160b00160b002e17002814000e0700160b00
-261300ffa244ff9e3c0e07001e0f00201000281400261300180c00140a002613001e0f00
-201000ffa040ff9e3c0c0600160b00201000160b00261300201000180c00ff9932ffa448
-0c0600261300180c00160b00140a00160b003018000e07002814001e0f00060300201000
-140a000e07000e0700180c002010001e0f002e1700261300
-140a000e07000e0700201000180c000e07002010001e0f00180c00281400321900160b00
-160b000e07001e0f00140a00160b000c0600201000160b000e0700140a00160b00160b00
-1e0f000603002010000e07000c0600160b00201000180c00ffa244ff99322010001e0f00
-180c002814002814002e17002010002814001e0f00281400180c00ffa142180c002e1700
-1e0f00ff9b362e17002613002010002010003018002e1700402000442200643200864300
-b25900e07000fa7d00f67b00f27900e07000b25900904800783c005c2e004a25002e1700
-3a1d002e1700381c00140a002e1700160b00ffa74e2010000e0700201000180c000e0700
-0e0700160b00160b002613002010002010000e0700160b00040200140a00261300160b00
-160b00160b00160b00160b000e0700180c002613001e0f00261300180c00201000160b00
-180c000e0700180c00160b002814000e0700301800160b000603002613000e07000e0700
-160b00ff9c382010002010002814002613003219004020005a2d00783c009e4f00c46200
-b25900a251007e3f005c2e00442200281400ffab561e0f00201000281400ffa64c3a1d00
-4c2600763b00b65b00fc7e00c864009048005c2e002e1700140a00201000201000201000
-ff9d3a180c002010000e0700201000201000160b002613001e0f00160b00201000180c00
-2010001e0f002010000c0600261300160b00180c00180c001e0f002814000e0700201000
-160b000e0700160b00180c00201000261300180c002010000e0700201000140a00180c00
-261300160b00160b001e0f00160b000e07000e07002010002010001e0f00160b00201000
-060300180c00160b002010002e17002010000e0700180c000e0700160b000603000c0600
-0e07000e0700201000201000281400160b00160b00180c001e0f00140a000e0700180c00
-1e0f002010002010002613003a1d00060300140a002613003a1d00160b002010001e0f00
-140a000c06000e07000e0700201000261300160b001e0f00140a00201000180c00160b00
-ff9b361e0f000e0700180c00160b002814003a1d004020004c2600542a005e2f005a2d00
-4221004020002010002010000e0700201000160b00ffa040160b000c0600160b001e0f00
-160b001e0f00160b00ffa1422e1700201000301800160b002814002e1700201000ffa64c
-261300ff9e3c281400160b00180c00301800301800180c000e07001e0f00140a00140a00
-0c06002010000402000e0700160b00160b00160b00140a002010000e0700201000160b00
-180c00201000180c00140a00201000140a00160b002010000c0600140a00160b00160b00
-180c00201000060300060300201000160b00261300201000160b000e0700160b000e0700
-0c0600180c001e0f00261300180c00160b00160b002010002010002010000e07001e0f00
-140a00201000201000160b00160b00160b00201000160b00281400180c00060300160b00
-180c00201000180c00140a00160b00160b00201000160b00160b00160b000e0700160b00
-0e0700140a00160b001e0f000e0700201000180c000e07002e17002010000e0700160b00
-201000180c00140a00140a002010000e0700160b000e07000e0700281400060300140a00
-180c00201000160b00140a000603000c0600060300140a00160b00180c000e0700160b00
-180c00201000261300160b00160b00180c00160b003219002814000e0700301800201000
-0603002010000c0600140a00160b00261300160b001e0f00140a000201000e0700201000
-0603000e0700140a001e0f00201000060300140a00201000160b001e0f00020100201000
-160b00140a000e0700160b001e0f002613000e0700180c00160b00281400140a00020100
-ffa040140a002010003018002e17002010001e0f00261300301800281400281400201000
-281400201000201000ffa448ff9e3c0e0700140a00281400201000060300160b00281400
-180c00140a00160b00ffa54aff9c38ff9e3cff9d3affa54aff9932ff9932261300160b00
-201000281400160b002010002613001e0f002010004020000e07001e0f00160b00180c00
-201000160b000c0600140a00281400160b002010001e0f00
-201000140a002613000e0700160b00160b00281400201000281400281400201000180c00
-301800201000140a002613000e07002e1700180c000e07000e0700261300301800060300
-2814001e0f000e07002010001e0f00160b001e0f00160b00180c000c0600ffa1420e0700
-2613002e1700160b00201000160b00180c00201000160b00ffa64c2010001e0f00180c00
-ffa040281400201000201000180c002e17003a1d003a1d005c2e005a2d00783c008a4500
-d86c00fe7f00ff9e3cffa952ff9932ff8b16e070009e4f00763b00763b00643200442200
-381c003219002814000e07001e0f00160b00ffad5a281400180c00160b00261300160b00
-140a000e07000603002010000e0700201000140a000e07000e0700180c000c06002e1700
-2814000e07001e0f00160b00261300261300160b000e07000603000603000e0700140a00
-140a00201000140a000e07002010001e0f002010000c0600160b00140a000e07000e0700
-0e0700ff9d3a180c00140a002814003018003018002e17004422005c2e00663300a25100
-904800864300643200422100442200381c00ff9932201000201000140a00ffa74e4a2500
-422100864300c66300fe7f00c86400984c005a2d00442200321900261300160b00160b00
-160b00ff9d3a281400160b00201000160b00261300160b00261300160b00160b00180c00
-0e07003a1d002814001e0f000c0600180c00201000160b00140a00201000160b000e0700
-201000160b00140a000e07001e0f00180c000e0700180c00281400281400261300180c00
-281400160b00160b00060300160b00261300160b00180c00160b00160b003018001e0f00
-281400201000160b00180c000c06000c06000e07002010000e07001e0f00281400281400
-201000140a00180c00281400180c00160b00160b00180c00060300180c00180c00180c00
-2814000e0700020100180c00160b000e0700140a00180c00201000180c00160b001e0f00
-140a001e0f002010000e0700180c00140a001e0f002613000603000e0700180c00281400
-ff9d3a1e0f00201000201000281400140a002613004a25005a2d006633008a45005a2d00
-4a25004a2500261300261300180c001e0f00201000ff9d3a1e0f002010002010001e0f00
-180c00160b00201000ffa4480c06002814002613002613003018002613002e1700201000
-140a000e0700ffa448140a002e1700201000180c001e0f00140a00201000160b00201000
-160b00301800140a00160b002010001e0f00140a00201000180c001e0f000e0700281400
-1e0f002e17002010003018001e0f00180c00201000160b00160b003018000e07000e0700
-0e07000e0700180c000603000e0700160b002e17000e0700261300201000201000160b00
-140a00281400160b000e0700160b00281400201000160b002814000e07001e0f00160b00
-261300201000180c002e17002010002010002010002010002010002e1700301800060300
-160b001e0f00180c00180c00140a00160b00261300140a00060300040200160b00180c00
-0e07002814002010000c0600201000140a00180c000c0600180c00160b000e0700160b00
-201000160b00160b001e0f00160b00201000160b002010000e07000e07000e0700261300
-160b00201000140a00180c001e0f000e07000e0700160b00160b00180c001e0f00160b00
-140a00180c002e1700281400281400160b000e07000c0600160b00281400180c00261300
-1e0f001e0f00180c00281400180c00160b002010002010002613000e0700201000180c00
-261300160b002e1700160b00140a001e0f00201000160b00201000201000180c00060300
-180c00281400140a002613000c06000201000e0700160b00261300140a00201000ff9428
-180c002814002010003a1d003018001e0f002e1700201000201000160b002010000e0700
-301800180c002010001e0f00180c00ffa9522010001e0f00201000281400281400201000
-2613000c0600160b00140a000c0600201000281400160b00140a000c06000e0700201000
-1e0f00160b000e0700140a00160b000e07001e0f002e17002010001e0f00180c00160b00
-301800201000140a00180c000402001e0f00261300140a00
-160b00160b000603000c0600281400281400160b002010001e0f002e1700201000160b00
-180c00180c000c06002010001e0f000e07001e0f00160b00140a001e0f002010001e0f00
-060300160b001e0f00040200180c00321900180c00180c000e0700160b00281400ff9e3c
-ff9e3cff9932ffa448ffa244ff9c38ffa040ffa040ff9c382e1700140a00020100301800
-ff9e3c2613003018002613002814002010002e17004221004a25005c2e00703800904800
-de6f00ff8810ffb366ffb468ffae5cff9428fa7d00b85c00aa55008040005e2f003a1d00
-381c002010002e17002613002010000e07001e0f00ff9e3c281400281400160b000c0600
-201000040200160b002e17002613000e07001e0f00160b00180c00160b002e1700140a00
-160b002613001e0f00180c00180c00160b002010000e07002010000c06000e0700180c00
-020100160b000c0600140a00140a00180c00180c00180c00160b00180c000e0700060300
-160b001e0f00ff99322010001e0f002814003018003219003219004a2500442200643200
-6c36006633005a2d004221003a1d00422100ffab562814001e0f001e0f00ffa9522e1700
-4422006c36009048009e4f009048007e3f00542a00381c00140a00381c002e1700301800
-ff9b36160b00261300160b000402000e0700160b001e0f00281400160b002613000e0700
-2613000c0600201000180c00160b00180c000c0600261300160b00160b002010000e0700
-180c001e0f00180c000e0700261300160b000e0700281400160b00160b00140a00160b00
-261300261300160b00160b000c06000e0700180c002613001e0f00160b00140a000c0600
-0e0700140a003018001e0f001e0f00140a001e0f00160b001e0f00160b000c0600261300
-160b000e07001e0f00160b00180c00160b00160b000e07000c0600180c000e0700140a00
-2010000e07002010001e0f003018000e0700140a00201000201000180c00201000060300
-020100201000160b00180c001e0f000e0700160b000e0700201000160b00201000140a00
-ff9c382613001e0f00160b002010002e1700381c004020004c2600783c006c36007e3f00
-6432003018003a1d001e0f00160b001e0f00160b00ffa040140a001e0f000e07000e0700
-ffa0400603000e0700ff9e3c3018003a1d00160b00261300201000281400201000ffa040
-201000160b00ffa54a301800160b001e0f00160b00160b000e07000c06000e0700281400
-0e0700160b00160b00281400140a00160b000402000e0700180c00060300140a00201000
-160b00180c000603002613001e0f00160b00201000201000160b000e0700140a001e0f00
-160b002814001e0f000e0700281400140a00140a000e07000e07001e0f00381c00160b00
-060300180c000e07000e0700160b00160b00180c000c0600160b000e0700140a000c0600
-0e07002010002010000c06001e0f00180c001e0f002814003018000e0700281400281400
-3018002814001e0f00160b000c06002010002e17000e07001e0f000e0700180c00180c00
-1e0f00160b00201000261300160b00140a00301800180c00281400160b00201000201000
-160b00140a001e0f00160b00180c000e07002e17001e0f000c0600160b00201000201000
-281400281400160b000c0600201000201000180c00180c00281400040200060300140a00
-0e0700140a00180c00281400140a000c0600261300180c00180c002010001e0f00201000
-060300160b002010000e07000e0700160b002010002010001e0f00201000180c00180c00
-0e0700140a00261300140a00201000140a001e0f00140a002010000c0600140a00261300
-1e0f000c0600160b00160b001e0f00201000201000160b00160b00281400ff9b36201000
-160b001e0f00281400160b00261300160b003018003018002e17002010003a1d00301800
-2814003018001e0f002010001e0f00160b00ffa74e160b00180c00281400201000160b00
-180c00160b00160b00140a00140a000e0700160b00140a00201000201000180c00140a00
-0e07002010000e0700281400201000180c00261300060300281400140a00140a00020100
-040200180c000e07002010000e07001e0f000603000e0700
-
-showpage
-
-% stop using temporary dictionary
-end
-
-% restore original state
-origstate restore
-
-%%Trailer
-
-%%EndDocument
- @endspecial 3686 5320 V 90 5323 3600 4 v 1867 5753 a
-Fv(1)p eop
-%%Page: 2 2
-2 1 bop 1867 5753 a Fv(2)p eop
-%%Page: 3 3
-3 2 bop 0 -74 a Fu(Con)l(ten)l(ts)0 177 y Ft(1)84 b(What)35
-b(is)g(SExtractor?)2645 b(4)0 428 y(2)84 b(Installing)35
-b(the)g(soft)m(w)m(are)2568 b(4)136 588 y Fv(2.1)94 b(Soft)m(w)m(are)32
-b(and)e(hardw)m(are)g(requiremen)m(ts)58 b(.)46 b(.)f(.)h(.)g(.)g(.)f
-(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)
-h(.)151 b(4)136 748 y(2.2)94 b(Obtaining)29 b(SExtractor)87
-b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)
-f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)151
-b(5)136 909 y(2.3)94 b(Installation)72 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h
-(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)151
-b(5)0 1160 y Ft(3)84 b(Using)36 b(SExtractor)2796 b(5)136
-1320 y Fv(3.1)94 b(Syn)m(tax)39 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)
-f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f
-(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)151
-b(5)136 1480 y(3.2)94 b(The)30 b(con\014guration)g(\014le)25
-b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)
-g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)151
-b(5)345 1640 y(3.2.1)106 b(F)-8 b(ormat)89 b(.)45 b(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)
-g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)151
-b(5)345 1800 y(3.2.2)106 b(Con\014guration)29 b(parameter)i(list)91
-b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)
-h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)151 b(6)136 1960 y(3.3)94
-b(The)30 b(catalog)i(parameter)f(\014le)40 b(.)46 b(.)f(.)h(.)g(.)f(.)h
-(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(10)345 2121 y(3.3.1)g(F)-8
-b(ormat)89 b(.)45 b(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f
-(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)
-f(.)h(.)g(.)f(.)h(.)106 b(10)136 2281 y(3.4)94 b(Example)30
-b(of)h(con\014guration)89 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)
-g(.)f(.)h(.)106 b(11)0 2532 y Ft(4)84 b(Ov)m(erview)35
-b(of)g(the)f(soft)m(w)m(are)2396 b(11)0 2783 y(5)84 b(Handling)35
-b(of)h(image)e(data)2464 b(11)0 3034 y(6)84 b(Detection)35
-b(and)g(segmen)m(tation)2255 b(11)136 3194 y Fv(6.1)94
-b(Bac)m(kground)31 b(estimation)g(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(13)345 3354 y(6.1.1)g(Con\014guration)
-29 b(parameters)i(and)f(tuning)25 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(14)345 3514 y(6.1.2)g(CPU)30 b(cost)65 b(.)46 b(.)g(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)
-f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(14)136
-3675 y(6.2)94 b(Filtering)41 b(.)k(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)
-g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(15)345 3835 y(6.2.1)g(Con)m(v)m(olution)35 b(.)46 b(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)
-f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(15)345
-3995 y(6.2.2)g(Non-linear)30 b(\014ltering)43 b(.)j(.)f(.)h(.)g(.)f(.)h
-(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(16)345 4155 y(6.2.3)g(What)31
-b(is)f(\014ltered,)f(and)h(what)g(isn't)39 b(.)45 b(.)h(.)g(.)g(.)f(.)h
-(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-106 b(16)345 4315 y(6.2.4)g(Image)32 b(b)s(oundaries)27
-b(and)j(bad)g(pixels)52 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)
-f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(17)345
-4475 y(6.2.5)g(Con\014guration)29 b(parameters.)43 b(.)i(.)h(.)g(.)f(.)
-h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f
-(.)h(.)g(.)f(.)h(.)106 b(17)345 4636 y(6.2.6)g(CPU)30
-b(cost.)40 b(.)46 b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h
-(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)
-h(.)g(.)f(.)h(.)106 b(17)345 4796 y(6.2.7)g(Filter)30
-b(\014le)f(formats.)77 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)
-f(.)h(.)106 b(17)136 4956 y(6.3)94 b(Thresholding)73
-b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h
-(.)g(.)f(.)h(.)106 b(18)345 5116 y(6.3.1)g(Con\014guration)29
-b(parameters.)43 b(.)i(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(18)136 5276 y(6.4)94 b(Deblending)76 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h
-(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(19)1867 5753 y(3)p eop
-%%Page: 4 4
-4 3 bop 0 -74 a Ft(7)84 b(W)-9 b(eigh)m(ting)3076 b(21)136
-86 y Fv(7.1)94 b(W)-8 b(eigh)m(t-map)32 b(formats)66
-b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)
-g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(21)136 246 y(7.2)94 b(W)-8 b(eigh)m(t)32 b(threshold)56
-b(.)46 b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)
-f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f
-(.)h(.)106 b(22)136 407 y(7.3)94 b(E\013ect)32 b(of)e(w)m(eigh)m(ting)
-65 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f
-(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)
-h(.)106 b(22)136 567 y(7.4)94 b(Com)m(bining)29 b(w)m(eigh)m(t)h(maps)
-63 b(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f
-(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(23)136 727 y(7.5)94 b(In)m(terp)s(olation)78 b(.)46
-b(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)
-f(.)h(.)106 b(23)0 978 y Ft(8)84 b(Flags)3300 b(23)136
-1138 y Fv(8.1)94 b(In)m(ternal)30 b(\015ags)76 b(.)46
-b(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)
-f(.)h(.)106 b(24)136 1298 y(8.2)94 b(External)30 b(\015ags)47
-b(.)f(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)
-g(.)f(.)h(.)106 b(24)0 1549 y Ft(9)84 b(Measuremen)m(ts)2878
-b(24)136 1709 y Fv(9.1)94 b(P)m(ositional)30 b(parameters)h(deriv)m(ed)
-e(from)h(the)h(isophotal)e(pro\014le)71 b(.)46 b(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(25)345 1870 y(9.1.1)g(Limits:)39
-b Fs(XMIN)p Fv(,)30 b Fs(YMIN)p Fv(,)f Fs(XMAX)p Fv(,)h
-Fs(YMAX)44 b Fv(.)h(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g
-(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(25)345 2030
-y(9.1.2)g(Barycen)m(ter:)43 b Fs(X)p Fv(,)30 b Fs(Y)79
-b Fv(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f
-(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(25)345 2190 y(9.1.3)g(P)m(osition)30 b(of)h(the)f(p)s(eak:)41
-b Fs(XPEAK)p Fv(,)29 b Fs(YPEAK)37 b Fv(.)46 b(.)g(.)f(.)h(.)g(.)f(.)h
-(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(26)345 2350 y(9.1.4)g(2nd)30 b(order)g(momen)m(ts:)41
-b Fs(X2)p Fv(,)30 b Fs(Y2)p Fv(,)g Fs(XY)61 b Fv(.)45
-b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g
-(.)f(.)h(.)g(.)f(.)h(.)106 b(26)345 2510 y(9.1.5)g(Basic)31
-b(shap)s(e)f(parameters:)41 b Fs(A)p Fv(,)30 b Fs(B)p
-Fv(,)g Fs(THETA)58 b Fv(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g
-(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(26)345 2670
-y(9.1.6)g(Ellipse)28 b(parameters:)41 b Fs(CXX)p Fv(,)30
-b Fs(CYY)p Fv(,)g Fs(CXY)23 b Fv(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(27)345 2831 y(9.1.7)g(By-pro)s(ducts)30 b(of)h(shap)s(e)e
-(parameters:)41 b Fs(ELONGATION)p Fv(,)28 b Fs(ELLIPTICITY)52
-b Fv(.)46 b(.)f(.)h(.)g(.)f(.)h(.)106 b(28)345 2991 y(9.1.8)g(P)m
-(osition)45 b(errors:)70 b Fs(ERRX2)p Fv(,)47 b Fs(ERRY2)p
-Fv(,)h Fs(ERRXY)p Fv(,)c Fs(ERRA)p Fv(,)g Fs(ERRB)p Fv(,)g
-Fs(ERRTHETA)p Fv(,)f Fs(ERRCXX)p Fv(,)636 3104 y Fs(ERRCYY)p
-Fv(,)29 b Fs(ERRCXY)g Fv(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h
-(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)
-h(.)g(.)f(.)h(.)106 b(28)345 3264 y(9.1.9)g(Handling)29
-b(of)h(\\in\014nitely)e(thin")h(detections)91 b(.)46
-b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h
-(.)106 b(29)136 3424 y(9.2)94 b(Astrometry)31 b(and)f
-Fs(WORLD)f Fv(co)s(ordinates)60 b(.)46 b(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)
-g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(30)345 3584 y(9.2.1)g(Angular)30 b(co)s(ordinates)67
-b(.)45 b(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)
-g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(30)345 3744 y(9.2.2)g(Use)31 b(of)g(the)f(FITS)g(k)m(eyw)m(ords)h
-(for)f(astrometry)80 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g
-(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(31)136 3904 y(9.3)94
-b(Cross-iden)m(ti\014cation)29 b(within)f(SExtractor)74
-b(.)45 b(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)
-g(.)g(.)f(.)h(.)g(.)f(.)h(.)106 b(31)345 4064 y(9.3.1)g(The)30
-b Fs(ASSOC)f Fv(list)80 b(.)46 b(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)
-h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f
-(.)h(.)g(.)f(.)h(.)106 b(31)345 4225 y(9.3.2)g(Con)m(trolling)29
-b(the)h Fs(ASSOC)f Fv(pro)s(cess)35 b(.)46 b(.)f(.)h(.)g(.)g(.)f(.)h(.)
-g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(31)345 4385 y(9.3.3)g(Output)30 b(from)f Fs(ASSOC)23
-b Fv(.)46 b(.)f(.)h(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h
-(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(32)0 4636 y Ft(A)57 b(App)s(endices)3013 b(33)136 4796
-y Fv(A.1)71 b(F)-10 b(A)m(Q)31 b(\(F)-8 b(requen)m(tly)31
-b(Ask)m(ed)g(Questions\))43 b(.)j(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f
-(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)g(.)g(.)f(.)h(.)g(.)f(.)h(.)106
-b(33)1867 5753 y(4)p eop
-%%Page: 5 5
-5 4 bop 0 -74 a Fu(1)135 b(What)45 b(is)g(SExtractor?)0
-176 y Fv(SExtractor)38 b(\()p Fr(Sour)-5 b(c)g(e-Extr)g(actor)p
-Fv(\))41 b(is)36 b(a)i(program)f(that)h(builds)c(a)k(catalogue)h(of)f
-(ob)5 b(jects)38 b(from)f(an)g(astro-)0 289 y(nomical)c(image.)50
-b(It)34 b(is)f(particularly)e(orien)m(ted)j(to)m(w)m(ards)g(reduction)f
-(of)h(large)f(scale)h(galaxy-surv)m(ey)h(data,)0 402
-y(but)30 b(it)g(also)g(p)s(erforms)f(w)m(ell)g(on)h(mo)s(derately)g
-(cro)m(wded)h(star)f(\014elds.)39 b(Its)31 b(main)e(features)i(are:)136
-637 y Fq(\017)46 b Fv(Simplicit)m(y)28 b(of)i(usage)h(and)f
-(con\014guration.)136 825 y Fq(\017)46 b Fv(Sp)s(eed:)40
-b(t)m(ypically)29 b(500)j(kpixel/s)d(with)g(a)h(P)m(en)m(tium2 at 450MHz.)
-136 1012 y Fq(\017)46 b Fv(Abilit)m(y)40 b(to)j(w)m(ork)e(with)g(v)m
-(ery)h(large)f(images)h(\(up)f(to)i(65k)28 b Fq(\002)g
-Fv(65k)42 b(pixels)e(on)i(32bit)f(mac)m(hines,)j(or)227
-1125 y(2G)21 b Fq(\002)f Fv(2G)31 b(pixels)e(on)h(64bit)g(mac)m
-(hines\),)h(thanks)f(to)h(bu\013ered)e(image)i(access.)136
-1313 y Fq(\017)46 b Fv(Robust)30 b(deblending)e(of)i(o)m(v)m(erlapping)
-g(extended)g(ob)5 b(jects.)136 1500 y Fq(\017)46 b Fv(Real-time)31
-b(\014ltering)d(of)j(images)f(to)h(impro)m(v)m(e)g(detectabilit)m(y)-8
-b(.)136 1688 y Fq(\017)46 b Fv(Neural-Net)m(w)m(ork-based)32
-b(star/galaxy)g(classi\014er.)136 1876 y Fq(\017)46 b
-Fv(Flexible)29 b(catalogue)j(output)e(of)h(desired)d(parameters)j(only)
--8 b(.)136 2063 y Fq(\017)46 b Fv(Pixel-to-pixel)29 b(photometry)i(in)e
-(dual-image)h(mo)s(de.)136 2251 y Fq(\017)46 b Fv(Handling)29
-b(of)h(w)m(eigh)m(t-maps)h(and)f(\015ag-maps.)136 2439
-y Fq(\017)46 b Fv(Optim)m(um)29 b(handling)f(of)i(images)h(with)e(v)-5
-b(ariable)29 b(S/N.)136 2626 y Fq(\017)46 b Fv(Sp)s(ecial)29
-b(mo)s(de)h(for)g(photographic)g(scans.)136 2814 y Fq(\017)46
-b Fv(Mo)s(dularit)m(y)29 b(of)i(the)f(co)s(de)h(that)g(enables)f(one)g
-(to)h(implemen)m(t)e(new)h(parameters.)0 3049 y(The)e(purp)s(ose)g(of)h
-(SExtractor)g(w)m(as)h(to)f(\014nd)f(a)h(compromise)f(b)s(et)m(w)m(een)
-i(re\014nemen)m(t)f(in)e(b)s(oth)i(detection)g(and)0
-3162 y(measuremen)m(ts,)i(and)f(computational)g(sp)s(eed.)0
-3495 y Fu(2)135 b(Installing)46 b(the)f(soft)l(w)l(are)0
-3749 y Fp(2.1)112 b(Soft)m(w)m(are)38 b(and)g(hardw)m(are)h(requiremen)
-m(ts)0 3968 y Fv(Since)30 b(the)h(b)s(eginning)e(in)g(1993,)34
-b(the)d(dev)m(elopmen)m(t)h(of)f(SExtractor)g(w)m(as)h(alw)m(a)m(ys)f
-(made)h(on)f(Unix)e(systems)0 4081 y(\(successiv)m(ely:)41
-b(SUN-OS,)30 b(HP/UX,)h(SUN-Solaris,)e(Digital)h(Unix)g(and)f(GNU/Lin)m
-(ux\).)41 b(Successful)29 b(p)s(orts)0 4193 y(b)m(y)f(external)f(con)m
-(tributors)g(ha)m(v)m(e)i(b)s(een)e(rep)s(orted)g(on)g(non-Unix)g(OSes)
-g(suc)m(h)g(as)h(AMIGA-OS,)g(DEC-VMS)0 4306 y(and)f(ev)m(en)i(MS-DOS)f
-(Windo)m(ws95)1217 4273 y Fo(1)1285 4306 y Fv(and)f(NT)h
-Fs(;)47 b(\))p Fv(.)40 b(They)28 b(are)g(ho)m(w)m(ev)m(er)i(not)e
-(curren)m(tly)f(supp)s(orted)f(b)m(y)i(the)0 4419 y(author,)40
-b(and)d(Unix)g(remains)f(the)j(recommended)e(system)h(for)g(running)d
-(SExtractor.)64 b(The)37 b(soft)m(w)m(are)i(is)0 4532
-y(generally)26 b(run)f(in)g(\(ANSI\))h(text-mo)s(de)i(from)e(a)g
-(shell.)38 b(A)26 b(windo)m(w)f(system)i(is)e(therefore)i(unnecessary)f
-(with)0 4645 y(presen)m(t)k(v)m(ersions.)0 4805 y(On)i(the)h(hardw)m
-(are)g(side,)f(memory)h(requiremen)m(ts)f(ob)m(viously)g(dep)s(end)f
-(on)i(the)g(size)f(of)h(the)g(images)g(to)h(b)s(e)0 4918
-y(pro)s(cessed.)42 b(But)31 b(to)h(giv)m(e)g(an)f(idea,)g(a)g(t)m
-(ypical)g(pro)s(cessing)e(of)j(1024)22 b Fq(\002)e Fv(1024)33
-b(pixel)d(images)h(should)e(require)0 5031 y(no)f(more)g(than)g(8)h(MB)
-g(of)f(silicon)e(memory)-8 b(.)40 b(F)-8 b(or)29 b(v)m(ery)g(large)f
-(images,)h(\(32000)18 b Fq(\002)e Fv(32000)30 b(pixels)d(or)h(more\),)h
-(a)0 5144 y(minim)m(um)22 b(of)i(200MB)j(is)c(recommended.)38
-b(Sw)m(ap-space)25 b(can)g(of)f(course)h(b)s(e)f(put)g(to)h(con)m
-(tribution,)f(although)0 5257 y(a)31 b(strong)f(p)s(erformance)g(hit)f
-(is)h(to)h(b)s(e)f(exp)s(ected.)p 0 5318 1512 4 v 104
-5372 a Fn(1)138 5404 y Fm(Binaries)19 b(are)f(a)n(v)l(ailable)g(on)f
-(the)g(WWW,)g(see)g(e.g.)33 b Fl(http://www.tass-survey.org/ta)q(ss/so)
-q(ftwa)q(re/s)q(oftwa)q(re.h)q(tml#s)q(extr)q(act)1867
-5753 y Fv(5)p eop
-%%Page: 6 6
-6 5 bop 0 -74 a Fp(2.2)112 b(Obtaining)37 b(SExtractor)0
-145 y Fv(The)24 b(easiest)i(w)m(a)m(y)g(to)f(obtain)g(SExtractor)g(is)f
-(to)i(do)m(wnload)e(it)g(from)h(an)f(in)m(ternet)h(site.)39
-b(The)24 b(curren)m(t)h(o\016cial)0 258 y(anon)m(ymous)j(FTP)h(site)f
-(is)g Fs(ftp://ftp.iap.fr/pub/fro)o(m)p 2149 258 29 4
-v 29 w(users/bertin/sextractor)o(/)p Fv(.)34 b(There)28
-b(can)0 371 y(b)s(e)43 b(found)f(the)i(latest)g(v)m(ersions)f(of)h(the)
-f(program)h(as)f(standard)g Fs(.tar.gz)f Fv(Unix)g(arc)m(hiv)m(es,)47
-b(plus)42 b(some)0 484 y(do)s(cumen)m(tation.)0 774 y
-Fp(2.3)112 b(Installation)0 993 y Fv(T)-8 b(o)31 b(install,)d(y)m(ou)j
-(m)m(ust)f(\014rst)g(uncompress)f(and)h(unarc)m(hiv)m(e)g(the)g(arc)m
-(hiv)m(e:)0 1153 y Fs(gzip)47 b(-dc)g(sex_2.x.x.tar.gz)c(|)k(tar)g(xv)0
-1314 y Fv(A)38 b(new)e(directory)h(called)g Fs(sextractor2.x.x)c
-Fv(should)j(no)m(w)h(app)s(ear)g(at)h(the)g(curren)m(t)f(p)s(osition)e
-(on)j(y)m(our)0 1426 y(disk.)73 b(Y)-8 b(ou)42 b(should)d(then)j(just)f
-(en)m(ter)h(the)g(directory)f(and)g(follo)m(w)f(the)i(instructions)e
-(in)g(the)i(\014le)e(called)0 1539 y(\\)p Fs(INSTALL)p
-Fv(".)0 1873 y Fu(3)135 b(Using)45 b(SExtractor)0 2127
-y Fp(3.1)112 b(Syn)m(tax)0 2345 y Fv(SExtractor)31 b(is)e(run)g(from)h
-(the)h(shell)d(with)h(the)i(follo)m(wing)e(syn)m(tax:)0
-2506 y(\045)88 b Fs(sex)f Fr(image)29 b Fs([-c)g Fr(c)-5
-b(on\014gur)g(ation-\014le)p Fs(])90 b([)47 b(-)p Fr(Par)-5
-b(ameter1)31 b(V)-7 b(alue1)32 b Fs(])88 b([)47 b(-)p
-Fr(Par)-5 b(ameter2)32 b(V)-7 b(alue2)32 b Fs(])d Fv(...)0
-2666 y(The)46 b(part)h(enclosed)g(within)d(brac)m(k)m(ets)49
-b(is)d(optional.)90 b(An)m(y)47 b(")p Fs(-)p Fr(Par)-5
-b(ameter)49 b(V)-7 b(alue)p Fv(")47 b(statemen)m(t)i(in)c(the)0
-2779 y(command-line)f(o)m(v)m(errides)h(the)g(corresp)s(onding)e
-(de\014nition)g(in)h(the)i(con\014guration-\014le)e(or)h(an)m(y)g
-(default)0 2892 y(v)-5 b(alue)30 b(\(see)h(b)s(elo)m(w\).)40
-b(Actually)-8 b(,)31 b Fr(two)g Fv(image)g(\014lenames)e(can)i(b)s(e)f
-(pro)m(vided,)f(separated)i(b)m(y)f(a)h(comma:)0 3052
-y(\045)91 b Fs(sex)f Fr(image1)p Fv(,)p Fr(image2)0 3212
-y Fv(This)21 b(syn)m(tax)i(mak)m(es)h(SExtractor)f(run)f(in)f(the)i
-(so-called)g(\\double-image)f(mo)s(de":)37 b Fr(image1)23
-b Fv(will)e(b)s(e)h(used)g(for)0 3325 y(detection)j(of)f(sources,)h
-(and)f Fr(image2)h Fv(for)e(measuremen)m(ts)i(only)-8
-b(.)38 b Fr(image1)25 b Fv(and)e Fr(image2)i Fv(m)m(ust)f(ha)m(v)m(e)h
-(the)f(same)0 3438 y(dimensions.)36 b(Changing)23 b Fr(image2)h
-Fv(for)g(another)g(image)h(will)c(not)j(mo)s(dify)f(the)h(n)m(um)m(b)s
-(er)f(of)h(detected)h(sources,)0 3551 y(neither)38 b(a\013ect)i(their)e
-(p)s(ositional)f(or)i(basic)g(shap)s(e)f(parameters.)66
-b(But)40 b(most)f(photometric)g(parameters,)0 3663 y(plus)26
-b(a)i(few)f(others,)i(will)c(use)i Fr(image2)i Fv(pixel)d(v)-5
-b(alues,)28 b(whic)m(h)e(allo)m(ws)h(one)h(to)h(easily)e(measure)g
-(pixel-to-pixel)0 3776 y(colours.)0 4067 y Fp(3.2)112
-b(The)38 b(con\014guration)f(\014le)0 4286 y Fv(SExtractor)31
-b(needs)f(a)g(con\014guration)g(\014le.)39 b(If)30 b(no)g
-(con\014guration)g(\014le-name)g(is)f(sp)s(eci\014ed)f(in)h(the)i
-(command)0 4399 y(line,)e(SExtractor)i(tries)f(to)h(load)f(a)g(\014le)g
-(called)g(\\)p Fs(default.sex)p Fv(")e(from)i(the)g(lo)s(cal)g
-(directory)-8 b(.)0 4686 y Ft(3.2.1)105 b(F)-9 b(ormat)0
-4905 y Fv(The)30 b(format)h(is)e(ASCI)s(I.)g(There)h(m)m(ust)g(b)s(e)g
-(only)f(one)i(parameter)g(set)g(p)s(er)e(line,)g(follo)m(wing)g(the)i
-(form:)152 5065 y Fr(Con\014g-p)-5 b(ar)g(ameter)198
-b(V)-7 b(alue\(s\))0 5225 y Fv(Extra)24 b(spaces)g(or)f(linefeeds)f
-(are)i(ignored.)38 b(Commen)m(ts)24 b(m)m(ust)f(b)s(egin)f(with)g(a)i
-(\\#")h(and)e(end)g(with)f(a)i(linefeed.)0 5338 y(V)-8
-b(alues)22 b(can)h(b)s(e)e(of)i(di\013eren)m(t)e(t)m(yp)s(es:)37
-b(strings)21 b(\(can)i(b)s(e)f(enclosed)g(b)s(et)m(w)m(een)h(double)d
-(quotes\),)25 b(\015oats,)g(in)m(tegers,)0 5451 y(k)m(eyw)m(ords)32
-b(or)g(b)s(o)s(olean)e(\()p Fs(Y/y)i Fv(or)f Fs(N/n)p
-Fv(\).)44 b(Some)32 b(parameters)g(accept)h(zero)g(or)e(sev)m(eral)i(v)
--5 b(alues,)31 b(whic)m(h)g(m)m(ust)1867 5753 y(6)p eop
-%%Page: 7 7
-7 6 bop 0 -74 a Fv(then)22 b(b)s(e)g(separated)h(b)m(y)g(commas.)38
-b(In)m(tegers)24 b(can)f(b)s(e)f(giv)m(en)g(as)h(decimals,)g(in)f(o)s
-(ctal)h(form)f(\(preceded)g(b)m(y)h(digit)0 39 y Fs(O)p
-Fv(\),)32 b(or)g(in)f(hexadecimal)h(\(preceded)g(b)m(y)g
-Fs(0x)p Fv(\).)45 b(The)32 b(hexadecimal)f(format)i(is)e(particularly)e
-(con)m(v)m(enien)m(t)34 b(for)0 152 y(writing)d(m)m(ultiplexed)f(bit)i
-(v)-5 b(alues)32 b(suc)m(h)h(as)g(binary)e(masks.)48
-b(En)m(vironmen)m(t)32 b(v)-5 b(ariables,)32 b(written)g(as)h
-Fs($HOME)0 265 y Fv(or)j Fs($)p Fq(f)p Fs(HOME)p Fq(g)g
-Fv(are)h(expanded,)g(and)e(not)i(only)e(for)h(string)f(parameters.)59
-b(Some)36 b(parameters)h(are)f(assigned)0 378 y(default)31
-b(v)-5 b(alues)32 b(in)f(SExtractor)h(and)g(can)g(therefore)h(b)s(e)f
-(omitted)g(from)f(the)i(con\014guration)e(\014le;)i(they)f(are)0
-491 y(listed)d(in)g Fq(x)p Fv(3.2.2.)0 778 y Ft(3.2.2)105
-b(Con\014guration)36 b(parameter)d(list)0 997 y Fv(Here)e(is)f(a)h
-(complete)g(list)e(of)i(all)e(the)i Fr(c)-5 b(on\014gur)g(ation)33
-b Fv(parameters)d(kno)m(wn)g(to)i(SExtractor.)42 b(Man)m(y)31
-b(of)g(them)0 1110 y(are)c(just)g(used)f(with)g(default)g(v)-5
-b(alues.)39 b(Please)27 b(refer)g(to)g Fq(x)p Ft(??)i
-Fv(for)d(a)i(detailed)e(description)f(of)i(their)f(meaning.)50
-1262 y(P)m(arameter)390 b(default)205 b(t)m(yp)s(e)720
-b(Description)p 0 1299 3778 4 v 50 1378 a Fs(ANALYSIS)p
-440 1378 29 4 v 32 w(THRESH)98 b Fv(|)390 b Fr(\015o)-5
-b(ats)33 b Fv(\()p Fk(n)25 b Fq(\024)g Fv(2\))363 b(Threshold)47
-b(\(in)g(surface)i(brigh)m(tness\))f(at)2227 1491 y(whic)m(h)g
-Fs(CLASS)p 2752 1491 V 33 w(STAR)g Fv(and)h(FWHM)p 3523
-1491 28 4 v 83 w(op-)2227 1604 y(erate.)177 b(1)76 b(argumen)m(t:)131
-b(relativ)m(e)76 b(to)2227 1717 y(Bac)m(kground)44 b(RMS.)f(2)g
-(argumen)m(ts:)66 b(m)m(u)2227 1830 y(\(mag.arcsec)2690
-1797 y Fj(\000)p Fo(2)2787 1830 y Fv(\),)31 b(Zero-p)s(oin)m(t)f
-(\(mag\).)50 1943 y Fs(ASSOC)p 296 1943 29 4 v 33 w(DATA)337
-b(2,3,4)241 b Fr(inte)-5 b(gers)31 b Fv(\()p Fk(n)25
-b Fq(\024)g Fv(32\))222 b(Nos)40 b(of)e(the)h(columns)f(in)f(the)i
-Fs(ASSOC)e Fv(\014le)2227 2056 y(that)29 b(will)c(b)s(e)i(copied)h(to)g
-(the)g(catalog)i(out-)2227 2169 y(put.)50 2282 y Fs(ASSOC)p
-296 2282 V 33 w(NAME)337 b(sky.list)97 b Fr(string)668
-b Fv(Name)32 b(of)e(the)h Fs(ASSOC)e Fv(ASCI)s(I)f(\014le.)50
-2394 y Fs(ASSOC)p 296 2394 V 33 w(PARAMS)241 b(2,3,4)g
-Fr(inte)-5 b(gers)31 b Fv(\(2)26 b Fq(\024)f Fk(n)g Fq(\024)g
-Fv(3\))100 b(Nos)40 b(of)e(the)h(columns)f(in)f(the)i
-Fs(ASSOC)e Fv(\014le)2227 2507 y(that)k(will)d(b)s(e)h(used)h(as)g(co)s
-(ordinates)g(and)2227 2620 y(w)m(eigh)m(t)31 b(for)f(cross-matc)m
-(hing.)50 2733 y Fs(ASSOC)p 296 2733 V 33 w(RADIUS)241
-b(2.0)337 b Fr(\015o)-5 b(at)724 b Fv(Searc)m(h)31 b(radius)e(\(in)g
-(pixels\))g(for)h Fs(ASSOC)p Fv(.)50 2846 y Fs(ASSOC)p
-296 2846 V 33 w(TYPE)337 b(MAG)p 1002 2846 V 34 w(SUM)159
-b Fr(keywor)-5 b(d)581 b Fv(Metho)s(d)31 b(for)f(cross-matc)m(hing)h
-(in)e Fs(ASSOC)p Fv(:)1333 2959 y Fs(FIRST)654 b Fv({)56
-b(k)m(eep)g(v)-5 b(alues)55 b(corresp)s(onding)e(to)j(the)2227
-3072 y(\014rst)30 b(matc)m(h)h(found,)1333 3185 y Fs(NEAREST)558
-b Fv({)35 b(v)-5 b(alues)33 b(corresp)s(onding)f(to)j(the)f(nearest)
-2227 3298 y(matc)m(h)e(found,)1333 3411 y Fs(MEAN)702
-b Fv({)31 b(w)m(eigh)m(ted-a)m(v)m(erage)j(v)-5 b(alues,)1333
-3524 y Fs(MAG)p 1483 3524 V 34 w(MEAN)524 b Fv({)45 b(exp)s(onen)m
-(tialy)d(w)m(eigh)m(ted-a)m(v)m(erage)48 b(v)-5 b(al-)2227
-3636 y(ues,)1333 3749 y Fs(SUM)750 b Fv({)31 b(sum)f(v)-5
-b(alues,)1333 3862 y Fs(MAG)p 1483 3862 V 34 w(SUM)572
-b Fv({)31 b(exp)s(onen)m(tialy)f(sum)f(v)-5 b(alues,)1333
-3975 y Fs(MIN)750 b Fv({)56 b(k)m(eep)g(v)-5 b(alues)55
-b(corresp)s(onding)e(to)j(the)2227 4088 y(matc)m(h)32
-b(with)d(minim)m(um)e(w)m(eigh)m(t,)1333 4201 y Fs(MAX)750
-b Fv({)56 b(k)m(eep)g(v)-5 b(alues)55 b(corresp)s(onding)e(to)j(the)
-2227 4314 y(matc)m(h)32 b(with)d(maxim)m(um)g(w)m(eigh)m(t.)50
-4427 y Fs(ASSOCSELEC)p 536 4427 V 31 w(TYPE)99 b(MATCHED)145
-b Fr(keywor)-5 b(d)581 b Fv(What)38 b(sources)f(are)g(prin)m(ted)e(in)h
-(the)h(out-)2227 4540 y(put)30 b(catalog)i(in)d(case)j(of)e
-Fs(ASSOC)p Fv(:)1333 4653 y Fs(ALL)750 b Fv({)31 b(all)e(detections,)
-1333 4766 y Fs(MATCHED)558 b Fv({)31 b(only)f(matc)m(hed)h(detections,)
-1333 4878 y Fs(-MATCHED)510 b Fv({)83 b(only)d(detections)j(that)f(w)m
-(ere)g(not)2227 4991 y(matc)m(hed.)50 5104 y Fs(BACK)p
-248 5104 V 33 w(FILTERSIZE)97 b Fv(|)390 b Fr(inte)-5
-b(gers)31 b Fv(\()p Fk(n)25 b Fq(\024)g Fv(2\))267 b(Size,)31
-b(or)g(Width,Heigh)m(t)g(\(in)f(bac)m(kground)2227 5217
-y(meshes\))63 b(of)g(the)g(bac)m(kground-\014ltering)2227
-5330 y(mask.)1867 5753 y(7)p eop
-%%Page: 8 8
-8 7 bop 50 -86 a Fs(BACK)p 248 -86 29 4 v 33 w(SIZE)385
-b Fv(|)486 b Fr(inte)-5 b(ger)31 b Fv(\()p Fk(n)25 b
-Fq(\024)g Fv(2\))229 b(Size,)35 b(or)f(Width,Heigh)m(t)f(\(in)g
-(pixels\))g(of)h(a)2248 27 y(bac)m(kground)c(mesh.)50
-140 y Fs(BACK)p 248 140 V 33 w(TYPE)385 b(INTERNAL)193
-b Fr(keywor)-5 b(ds)32 b Fv(\()p Fk(n)25 b Fq(\024)g
-Fv(2\))146 b(What)38 b(bac)m(kground)g(is)e(subtracted)i(from)2248
-253 y(the)31 b(images:)1429 365 y Fs(INTERNAL)435 b Fv({)181
-b(the)g(in)m(ternal)f(in)m(terp)s(olated)2248 478 y(bac)m(kground-map,)
-1429 591 y Fs(MANUAL)531 b Fv({)38 b(a)f(user-supplied)c(constan)m(t)39
-b(v)-5 b(alue)36 b(pro-)2248 704 y(vided)29 b(in)g Fs(BACK)p
-2797 704 V 33 w(VALUE)p Fv(.)50 817 y Fs(BACK)p 248 817
-V 33 w(VALUE)337 b Fv(0.0,0.0)322 b Fr(\015o)-5 b(ats)32
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(2\))289 b(in)34 b Fs(BACK)p
-2557 817 V 33 w(TYPE)47 b(MANUAL)33 b Fv(mo)s(de,)j(the)f(con-)2248
-930 y(stan)m(t)e(v)-5 b(alue)31 b(to)i(b)s(e)e(subtracted)h(from)f(the)
-2248 1043 y(images.)50 1156 y Fs(BACKPHOTO)p 488 1156
-V 32 w(THICK)98 b Fv(24)487 b Fr(inte)-5 b(ger)551 b
-Fv(Thic)m(kness)64 b(\(in)h(pixels\))f(of)h(the)h(bac)m(k-)2248
-1269 y(ground)29 b Fs(LOCAL)g Fv(ann)m(ulus.)50 1382
-y Fs(BACKPHOTO)p 488 1382 V 32 w(TYPE)146 b(GLOBAL)289
-b Fr(keywor)-5 b(d)506 b Fv(Bac)m(kground)40 b(used)f(to)h(compute)f
-(magni-)2248 1495 y(tudes:)1429 1607 y Fs(GLOBAL)531
-b Fv({)34 b(tak)m(en)g(directly)e(from)h(the)g(bac)m(kground)2248
-1720 y(map,)1429 1833 y Fs(LOCAL)579 b Fv({)30 b(recomputed)g(in)e(a)i
-(\\rectangular)g(ann)m(u-)2248 1946 y(lus")g(around)f(the)h(ob)5
-b(ject.)50 2059 y Fs(CATALOG)p 392 2059 V 32 w(NAME)242
-b Fv(|)486 b Fr(string)593 b Fv(Name)57 b(of)g(the)f(output)g
-(catalogue.)121 b(If)2248 2172 y(the)74 b(name)g(\\)p
-Fs(STDOUT)p Fv(")g(is)f(giv)m(en)h(and)2248 2285 y Fs(CATALOG)p
-2590 2285 V 33 w(TYPE)104 b Fv(is)h(set)i(to)f Fs(ASCII)p
-Fv(,)2248 2398 y Fs(ASCII)p 2494 2398 V 33 w(HEAD)p Fv(,)72
-b(or)h Fs(ASCII)p 3210 2398 V 33 w(SKYCAT)p Fv(,)f(the)2248
-2511 y(catalogue)95 b(will)90 b(b)s(e)j(pip)s(ed)d(to)k(the)2248
-2624 y(standard)30 b(output)g(\()p Fr(stdout)p Fv(\))50
-2737 y Fs(CATALOG)p 392 2737 V 32 w(TYPE)242 b Fv(|)486
-b Fr(keywor)-5 b(d)506 b Fv(F)-8 b(ormat)32 b(of)e(output)g(catalog:)
-1429 2849 y Fs(ASCII)579 b Fv({)26 b(ASCI)s(I)e(table;)j(the)f
-(simplest,)f(but)g(space)2248 2962 y(and)30 b(time)g(consuming,)1429
-3075 y Fs(ASCII)p 1675 3075 V 33 w(HEAD)354 b Fv({)28
-b(as)f Fs(ASCII)p Fv(,)f(preceded)h(b)m(y)g(a)h(header)e(con-)2248
-3188 y(taining)20 b(information)g(ab)s(out)h(the)h(con)m(ten)m(t,)1429
-3301 y Fs(ASCII)p 1675 3301 V 33 w(SKYCAT)258 b Fv({)26
-b(SkyCat)f(ASCI)s(I)f(format)h(\(W)m(CS)h(co)s(ordi-)2248
-3414 y(nates)31 b(required\),)1429 3527 y Fs(FITS)p 1627
-3527 V 33 w(1.0)450 b Fv({)31 b(FITS)f(format)g(as)h(in)e(SExtractor)i
-(1,)1429 3640 y Fs(FITS)p 1627 3640 V 33 w(LDAC)402 b
-Fv({)36 b(FITS)e(\\LD)m(A)m(C")j(format)e(\(the)h(original)2248
-3753 y(image)31 b(header)f(is)f(copied\).)50 3866 y Fs(CHECKIMAGE)p
-536 3866 V 31 w(NAME)99 b(check.fits)e Fr(strings)31
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(16\))189 b(File)30 b(name)g(for)g(eac)
-m(h)i(\\c)m(hec)m(k-image".)50 3979 y Fs(CHECKIMAGE)p
-536 3979 V 31 w(TYPE)99 b(NONE)385 b Fr(keywor)-5 b(ds)32
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(16\))101 b(T)m(yp)s(e)56
-b(of)h(information)f(to)h(put)f(in)g(the)2248 4091 y(\\c)m(hec)m
-(k-images":)1429 4204 y Fs(NONE)627 b Fv({)31 b(no)f(c)m(hec)m
-(k-image,)1429 4317 y Fs(IDENTICAL)387 b Fv({)37 b(iden)m(tical)e(to)j
-(input)c(image)j(\(useful)e(for)2248 4430 y(con)m(v)m(erting)c
-(formats\),)1429 4543 y Fs(BACKGROUND)339 b Fv({)72 b(full-resolution)c
-(in)m(terp)s(olated)i(bac)m(k-)2248 4656 y(ground)29
-b(map,)1429 4769 y Fs(BACKGROUND)p 1915 4769 V 32 w(RMS)163
-b Fv({)72 b(full-resolution)c(in)m(terp)s(olated)i(bac)m(k-)2248
-4882 y(ground)29 b(noise)h(map,)1429 4995 y Fs(MINIBACKGROUND)147
-b Fv({)31 b(lo)m(w-resolution)e(bac)m(kground)h(map,)1429
-5108 y Fs(MINIBACK)p 1819 5108 V 32 w(RMS)259 b Fv({)82
-b(lo)m(w-resolution)e(bac)m(kground)h(noise)2248 5221
-y(map,)1429 5333 y Fs(-BACKGROUND)291 b Fv({)31 b(bac)m
-(kground-subtracted)f(image,)1429 5446 y Fs(FILTERED)435
-b Fv({)46 b(bac)m(kground-subtracted)f(\014ltered)f(im-)2248
-5559 y(age)32 b(\(requires)d Fs(FILTER)46 b(=)i(Y)p Fv(\),)1867
-5753 y(8)p eop
-%%Page: 9 9
-9 8 bop 1381 -86 a Fs(OBJECTS)392 b Fv({)30 b(detected)i(ob)5
-b(jects,)1381 27 y Fs(-OBJECTS)344 b Fv({)45 b(bac)m
-(kground-subtracted)g(image)h(with)2109 140 y(detected)31
-b(ob)5 b(jects)31 b(blank)m(ed,)1381 253 y Fs(APERTURES)296
-b Fv({)35 b Fs(MAG)p 2339 253 29 4 v 33 w(APER)f Fv(and)g
-Fs(MAG)p 2923 253 V 34 w(AUTO)f Fv(in)m(tegration)2109
-365 y(limits,)1381 478 y Fs(SEGMENTATION)152 b Fv({)61
-b(displa)m(y)f(patc)m(hes)i(corresp)s(onding)e(to)2109
-591 y(pixels)28 b(attributed)i(to)h(eac)m(h)g(ob)5 b(ject.)50
-704 y Fs(CLEAN)562 b Fv(|)438 b Fr(b)-5 b(o)g(ole)g(an)447
-b Fv(If)35 b(true,)j(a)f(\\cleaning")g(of)f(the)h(catalogue)2109
-817 y(is)29 b(done)h(b)s(efore)g(b)s(eing)f(written)g(to)j(disk.)50
-930 y Fs(CLEAN)p 296 930 V 33 w(PARAM)289 b Fv(|)438
-b Fr(\015o)-5 b(at)558 b Fv(E\016ciency)29 b(of)i(\\cleaning".)50
-1043 y Fs(DEBLEND)p 392 1043 V 32 w(MINCONT)98 b Fv(|)438
-b Fr(\015o)-5 b(at)558 b Fv(Minim)m(um)37 b(con)m(trast)42
-b(parameter)e(for)g(de-)2109 1156 y(blending.)50 1269
-y Fs(DEBLEND)p 392 1269 V 32 w(NTHRESH)98 b Fv(|)438
-b Fr(inte)-5 b(ger)460 b Fv(Num)m(b)s(er)25 b(of)h(deblending)e
-(sub-thresholds.)50 1382 y Fs(DETECT)p 344 1382 V 33
-w(MINAREA)145 b Fv(|)438 b Fr(inte)-5 b(ger)460 b Fv(Minim)m(um)70
-b(n)m(um)m(b)s(er)h(of)i(pixels)d(ab)s(o)m(v)m(e)2109
-1495 y(threshold)28 b(triggering)i(detection.)50 1607
-y Fs(DETECT)p 344 1607 V 33 w(THRESH)193 b Fv(|)438 b
-Fr(\015o)-5 b(ats)33 b Fv(\()p Fk(n)25 b Fq(\024)g Fv(2\))197
-b(Detection)66 b(threshold.)144 b(1)66 b(argumen)m(t:)2109
-1720 y(\(ADUs)23 b(or)g(relativ)m(e)g(to)g(Bac)m(kground)h(RM-)2109
-1833 y(S,)36 b(see)h Fs(THRESH)p 2668 1833 V 32 w(TYPE)p
-Fv(\).)f(2)h(argumen)m(ts:)53 b Fk(\026)2109 1946 y Fv(\(mag.arcsec)
-2572 1913 y Fj(\000)p Fo(2)2668 1946 y Fv(\),)31 b(Zero-p)s(oin)m(t)f
-(\(mag\).)50 2059 y Fs(DETECT)p 344 2059 V 33 w(TYPE)289
-b(CCD)385 b Fr(keywor)-5 b(d)415 b Fv(T)m(yp)s(e)30 b(of)h(device)h
-(that)f(pro)s(duced)f(the)h(im-)2109 2172 y(age:)1381
-2285 y Fs(CCD)584 b Fv({)43 b(linear)e(detector)k(lik)m(e)d(CCDs)h(or)g
-(NIC-)2109 2398 y(MOS,)1381 2511 y Fs(PHOTO)488 b Fv({)30
-b(photographic)g(scan.)50 2624 y Fs(FILTER)514 b Fv(|)438
-b Fr(b)-5 b(o)g(ole)g(an)447 b Fv(If)29 b(true,)i(\014ltering)d(is)h
-(applied)f(to)j(the)g(data)2109 2737 y(b)s(efore)e(extraction.)50
-2849 y Fs(FILTER)p 344 2849 V 33 w(NAME)289 b Fv(|)438
-b Fr(string)502 b Fv(Name)39 b(of)f(the)h(\014le)e(con)m(taining)h(the)
-g(\014lter)2109 2962 y(de\014nition.)50 3075 y Fs(FILTER)p
-344 3075 V 33 w(THRESH)722 b Fr(\015o)-5 b(ats)33 b Fv(\()p
-Fk(n)25 b Fq(\024)g Fv(2\))197 b(Lo)m(w)m(er)28 b(and)f(higher)g
-(thresholds)f(\(in)g(bac)m(k-)2109 3188 y(ground)e(standard)h
-(deviations\))f(for)i(a)f(pix-)2109 3301 y(el)41 b(to)h(b)s(e)f
-(considered)f(in)g(\014ltering)g(\(used)2109 3414 y(for)30
-b(retina-\014ltering)e(only\).)50 3527 y Fs(FITS)p 248
-3527 V 33 w(UNSIGNED)193 b(N)481 b Fr(b)-5 b(o)g(ole)g(an)447
-b Fv(F)-8 b(orce)26 b(16-bit)g(FITS)e(input)g(data)i(to)g(b)s(e)e(in-)
-2109 3640 y(terpreted)30 b(as)h(unsigned)d(in)m(tegers.)50
-3753 y Fs(FLAG)p 248 3753 V 33 w(IMAGE)337 b(flag.fits)97
-b Fr(strings)31 b Fv(\()p Fk(n)25 b Fq(\024)g Fv(4\))143
-b(File)29 b(name\(s\))i(of)g(the)f(\\\015ag-image\(s\)".)50
-3866 y Fs(FLAG)p 248 3866 V 33 w(TYPE)385 b(OR)433 b
-Fr(keywor)-5 b(d)415 b Fv(Com)m(bination)34 b(metho)s(d)h(for)h
-(\015ags)g(on)f(the)2109 3979 y(same)30 b(ob)5 b(ject:)1381
-4091 y Fs(OR)632 b Fv({)30 b(arithmetical)g(OR,)1381
-4204 y Fs(AND)584 b Fv({)30 b(arithmetical)g(AND,)1381
-4317 y Fs(MIN)584 b Fv({)30 b(minim)m(um)e(of)i(all)g(\015ag)g(v)-5
-b(alues,)1381 4430 y Fs(MAX)584 b Fv({)30 b(maxim)m(um)g(of)g(all)f
-(\015ag)i(v)-5 b(alues,)1381 4543 y Fs(MOST)536 b Fv({)30
-b(most)h(common)g(\015ag)f(v)-5 b(alue.)50 4656 y Fs(GAIN)1139
-b Fr(\015o)-5 b(at)558 b Fv(\\Gain")154 b(\(con)m(v)m(ersion)h(factor)h
-(in)2109 4769 y Fk(e)2151 4736 y Fj(\000)2210 4769 y
-Fk(=)p Fv(ADU)q(\))39 b(used)e(for)h(error)g(estimates)g(of)2109
-4882 y Fs(CCD)29 b Fv(magnitudes)g(.)50 4995 y Fs(INTERP)p
-344 4995 V 33 w(MAXXLAG)145 b(16)433 b Fr(inte)-5 b(gers)31
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(2\))101 b(Maxim)m(um)26
-b Fk(x)i Fv(gap)g(\(in)e(pixels\))g(allo)m(w)m(ed)i(in)2109
-5108 y(in)m(terp)s(olating)g(the)j(input)d(image\(s\).)50
-5221 y Fs(INTERP)p 344 5221 V 33 w(MAXYLAG)145 b(16)433
-b Fr(inte)-5 b(gers)31 b Fv(\()p Fk(n)25 b Fq(\024)g
-Fv(2\))101 b(Maxim)m(um)27 b Fk(y)k Fv(gap)e(\(in)e(pixels\))g(allo)m
-(w)m(ed)h(in)2109 5333 y(in)m(terp)s(olating)g(the)j(input)d
-(image\(s\).)1867 5753 y(9)p eop
-%%Page: 10 10
-10 9 bop 50 -86 a Fs(INTERP)p 344 -86 29 4 v 33 w(TYPE)289
-b(ALL)h Fr(keywor)-5 b(ds)32 b Fv(\()p Fk(n)25 b Fq(\024)g
-Fv(2\))101 b(In)m(terp)s(olation)122 b(metho)s(d)h(from)g(the)2060
-27 y(v)-5 b(ariance-map\(s\))30 b(\(or)h(w)m(eigh)m(t-map\(s\)\):)1286
-140 y Fs(NONE)582 b Fv({)30 b(no)h(in)m(terp)s(olation,)1286
-253 y Fs(VAR)p 1436 253 V 33 w(ONLY)405 b Fv({)50 b(in)m(terp)s(olate)g
-(only)g(the)g(v)-5 b(ariance-map)2060 365 y(\(detection)31
-b(threshold\),)1286 478 y Fs(ALL)630 b Fv({)47 b(in)m(terp)s(olate)f(b)
-s(oth)g(the)g(v)-5 b(ariance-map)2060 591 y(and)29 b(the)i(image)f
-(itself.)50 704 y Fs(MAG)p 200 704 V 33 w(GAMMA)819 b
-Fr(\015o)-5 b(at)604 b Fk(\015)68 b Fv(of)63 b(the)g(em)m(ulsion)f
-(\(tak)m(es)j(e\013ect)g(in)2060 817 y Fs(PHOTO)28 b
-Fv(mo)s(de)i(only\).)50 930 y Fs(MAG)p 200 930 V 33 w(ZEROPOINT)627
-b Fr(\015o)-5 b(at)604 b Fv(Zero-p)s(oin)m(t)22 b(o\013set)h(to)h(b)s
-(e)e(applied)e(to)k(mag-)2060 1043 y(nitudes.)50 1156
-y Fs(MASK)p 248 1156 V 33 w(TYPE)385 b(CORRECT)98 b Fr(keywor)-5
-b(d)461 b Fv(Metho)s(d)49 b(of)h(\\masking")g(of)f(neigh)m(b)s(ours)
-2060 1269 y(for)30 b(photometry:)1286 1382 y Fs(NONE)582
-b Fv({)30 b(no)h(masking,)1286 1495 y Fs(BLANK)534 b
-Fv({)59 b(put)g(detected)i(pixels)d(b)s(elonging)g(to)2060
-1607 y(neigh)m(b)s(ours)28 b(to)j(zero,)1286 1720 y Fs(CORRECT)438
-b Fv({)34 b(replace)g(b)m(y)g(v)-5 b(alues)34 b(of)g(pixels)f(symetric)
-2060 1833 y(with)c(resp)s(ect)h(to)h(the)g(source)f(cen)m(ter.)50
-1946 y Fs(MEMORY)p 344 1946 V 33 w(BUFSIZE)145 b Fv(|)343
-b Fr(inte)-5 b(ger)506 b Fv(Num)m(b)s(er)51 b(of)h(scan-lines)f(in)g
-(the)i(image-)2060 2059 y(bu\013er.)39 b(Multiply)25
-b(b)m(y)k(4)f(the)h(frame)f(width)2060 2172 y(to)58 b(get)g(equiv)-5
-b(alen)m(t)57 b(memory)h(space)g(in)2060 2285 y(b)m(ytes.)50
-2398 y Fs(MEMORY)p 344 2398 V 33 w(OBJSTACK)97 b Fv(|)343
-b Fr(inte)-5 b(ger)506 b Fv(Maxim)m(um)29 b(n)m(um)m(b)s(er)g(of)h(ob)5
-b(jects)31 b(that)g(the)2060 2511 y(ob)5 b(ject-stac)m(k)32
-b(can)f(con)m(tain.)41 b(Multiply)28 b(b)m(y)2060 2624
-y(300)e(to)g(get)g(equiv)-5 b(alen)m(t)25 b(memory)g(space)h(in)2060
-2737 y(b)m(ytes.)50 2849 y Fs(MEMORY)p 344 2849 V 33
-w(PIXSTACK)97 b Fv(|)343 b Fr(inte)-5 b(ger)506 b Fv(Maxim)m(um)40
-b(n)m(um)m(b)s(er)g(of)i(pixels)d(that)j(the)2060 2962
-y(pixel-stac)m(k)d(can)h(con)m(tain.)69 b(Multiply)37
-b(b)m(y)2060 3075 y(16)f(to)g(32)g(to)g(get)g(equiv)-5
-b(alen)m(t)35 b(memory)g(s-)2060 3188 y(pace)c(in)e(b)m(ytes.)50
-3301 y Fs(PARAMETERS)p 536 3301 V 31 w(NAME)99 b Fv(|)343
-b Fr(string)548 b Fv(The)21 b(name)i(of)f(the)h(\014le)e(con)m(taining)
-h(the)h(list)2060 3414 y(of)39 b(parameters)h(that)f(will)e(b)s(e)i
-(computed)2060 3527 y(and)32 b(put)h(in)f(the)h(catalogue)i(for)e(eac)m
-(h)h(ob-)2060 3640 y(ject.)50 3753 y Fs(PHOT)p 248 3753
-V 33 w(APERTURES)145 b Fv(|)343 b Fr(\015o)-5 b(ats)32
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(32\))199 b(Ap)s(erture)28
-b(diameters)h(in)f(pixels)g(\(used)h(b)m(y)2060 3866
-y Fs(MAG)p 2210 3866 V 33 w(APER)p Fv(\).)50 3979 y Fs(PHOT)p
-248 3979 V 33 w(AUTOPARAMS)97 b Fv(|)343 b Fr(\015o)-5
-b(ats)32 b Fv(\()p Fk(n)25 b Fv(=)g(2\))244 b Fs(MAG)p
-2210 3979 V 33 w(AUTO)35 b Fv(con)m(trols:)51 b(scaling)35
-b(parameter)2060 4091 y Fk(k)g Fv(of)e(the)f(1st)h(order)f(momen)m(t,)i
-(and)d(mini-)2060 4204 y(m)m(um)e Fk(R)2358 4218 y Fi(min)2522
-4204 y Fv(\(in)g(units)g(of)i Fs(A)f Fv(and)g Fs(B)p
-Fv(\).)50 4317 y Fs(PHOT)p 248 4317 V 33 w(AUTOAPERS)145
-b Fv(0.0,0.0)179 b Fr(\015o)-5 b(ats)32 b Fv(\()p Fk(n)25
-b Fv(=)g(2\))244 b Fs(MAG)p 2210 4317 V 33 w(AUTO)59
-b Fv(minim)m(um)f(\(circular\))i(ap)s(er-)2060 4430 y(ture)39
-b(diameters:)60 b(estimation)40 b(disk,)h(and)2060 4543
-y(measuremen)m(t)30 b(disk.)50 4656 y Fs(PHOT)p 248 4656
-V 33 w(FLUXFRAC)193 b Fv(0.5)319 b Fr(\015o)-5 b(ats)32
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(32\))199 b(F)-8 b(raction)49
-b(of)f Fs(FLUX)p 2757 4656 V 34 w(AUTO)f Fv(de\014ning)f(eac)m(h)2060
-4769 y(elemen)m(t)30 b(of)h(the)f Fs(FLUX)p 2853 4769
-V 34 w(RADIUS)e Fv(v)m(ector.)50 4882 y Fs(PIXEL)p 296
-4882 V 33 w(SCALE)289 b Fv(|)343 b Fr(\015o)-5 b(at)604
-b Fv(Pixel)83 b(size)h(in)g(arcsec)i(\(for)f(surface)2060
-4995 y(brigh)m(tness)27 b(parameters,)i(FWHM)h(and)e(s-)2060
-5108 y(tar/galaxy)j(separation)f(only\).)50 5221 y Fs(SATUR)p
-296 5221 V 33 w(LEVEL)289 b Fv(|)343 b Fr(\015o)-5 b(at)604
-b Fv(Pixel)38 b(v)-5 b(alue)39 b(ab)s(o)m(v)m(e)i(whic)m(h)d(it)i(is)e
-(consid-)2060 5333 y(ered)30 b(saturated.)50 5446 y Fs(SEEING)p
-344 5446 V 33 w(FWHM)289 b Fv(|)343 b Fr(\015o)-5 b(at)604
-b Fv(FWHM)23 b(of)g(stellar)f(images)h(in)e(arcsec)j(\(on-)2060
-5559 y(ly)29 b(for)h(star/galaxy)i(separation\).)1844
-5753 y(10)p eop
-%%Page: 11 11
-11 10 bop 50 -86 a Fs(STARNNW)p 392 -86 29 4 v 32 w(NAME)99
-b Fv(|)533 b Fr(string)548 b Fv(Name)24 b(of)f(the)h(\014le)e(con)m
-(taining)h(the)g(neural-)2107 27 y(net)m(w)m(ork)32 b(w)m(eigh)m(ts)g
-(for)e(star/galaxy)j(sepa-)2107 140 y(ration.)50 253
-y Fs(THRESH)p 344 253 V 33 w(TYPE)146 b(RELATIVE)240
-b Fr(keywor)-5 b(ds)33 b Fv(\()p Fk(n)25 b Fq(\024)g
-Fv(2\))100 b(Meaning)52 b(of)f(the)h Fs(DETECT)p 3096
-253 V 33 w(THRESH)e Fv(and)2107 365 y Fs(ANALYSIS)p 2497
-365 V 32 w(THRESH)29 b Fv(parameters)i(:)1333 478 y Fs(RELATIVE)390
-b Fv({)59 b(scaling)e(factor)i(to)f(the)g(bac)m(kground)2107
-591 y(RMS,)1333 704 y Fs(ABSOLUTE)390 b Fv({)24 b(absolute)f(lev)m(el)g
-(\(in)g(ADUs)h(or)f(in)f(surface)2107 817 y(brigh)m(tness\).)50
-930 y Fs(VERBOSE)p 392 930 V 32 w(TYPE)99 b(NORMAL)336
-b(keyword)438 b Fv(Ho)m(w)47 b(m)m(uc)m(h)f(SExtractor)h(commen)m(ts)g
-(its)2107 1043 y(op)s(erations:)1333 1156 y Fs(QUIET)534
-b Fv({)31 b(run)e(silen)m(tly)-8 b(,)1333 1269 y Fs(NORMAL)486
-b Fv({)51 b(displa)m(y)d(w)m(arnings)i(and)f(limited)f(info)2107
-1382 y(concerning)30 b(the)h(w)m(ork)f(in)f(progress,)1333
-1495 y Fs(EXTRA)p 1579 1495 V 33 w(WARNINGS)117 b Fv({)35
-b(lik)m(e)f Fs(NORMAL)p Fv(,)g(plus)f(a)i(few)f(more)h(w)m(arn-)2107
-1607 y(ings)30 b(if)f(necessary)-8 b(,)1333 1720 y Fs(FULL)582
-b Fv({)24 b(displa)m(y)e(a)i(more)g(complete)g(information)2107
-1833 y(and)f(the)i(principal)20 b(parameters)k(of)g(all)f(the)2107
-1946 y(ob)5 b(jects)31 b(extracted.)50 2059 y Fs(WEIGHT)p
-344 2059 V 33 w(GAIN)146 b(Y)576 b Fr(b)-5 b(o)g(ole)g(an)493
-b Fv(If)28 b(true,)h(w)m(eigh)m(t)f(maps)g(are)h(considered)e(as)2107
-2172 y(gain)j(maps.)50 2285 y Fs(WEIGHT)p 344 2285 V
-33 w(IMAGE)98 b(weight.fits)e Fr(strings)31 b Fv(\()p
-Fk(n)26 b Fq(\024)f Fv(2\))188 b(File)39 b(name)g(of)h(the)g(detection)
-g(and)e(mea-)2107 2398 y(suremen)m(t)h(\\w)m(eigh)m(t-image",)k(resp)s
-(ectiv)m(e-)2107 2511 y(ly)-8 b(.)50 2624 y Fs(WEIGHT)p
-344 2624 V 33 w(TYPE)146 b(NONE)432 b Fr(keywor)-5 b(ds)33
-b Fv(\()p Fk(n)25 b Fq(\024)g Fv(2\))100 b(W)-8 b(eigh)m(ting)23
-b(sc)m(heme)g(\(for)f(single)f(image,)j(or)2107 2737
-y(detection)31 b(and)f(measuremen)m(t)h(images\):)1333
-2849 y Fs(NONE)582 b Fv({)31 b(no)f(w)m(eigh)m(ting,)1333
-2962 y Fs(BACKGROUND)294 b Fv({)40 b(v)-5 b(ariance-map)39
-b(deriv)m(ed)g(from)f(the)i(im-)2107 3075 y(age)32 b(itself,)1333
-3188 y Fs(MAP)p 1483 3188 V 34 w(RMS)452 b Fv({)26 b(v)-5
-b(ariance-map)26 b(deriv)m(ed)f(from)g(an)g(exter-)2107
-3301 y(nal)30 b(RMS-map,)1333 3414 y Fs(MAP)p 1483 3414
-V 34 w(VAR)452 b Fv({)31 b(external)f(v)-5 b(ariance-map,)1333
-3527 y Fs(MAP)p 1483 3527 V 34 w(WEIGHT)308 b Fv({)26
-b(v)-5 b(ariance-map)26 b(deriv)m(ed)f(from)g(an)g(exter-)2107
-3640 y(nal)30 b(w)m(eigh)m(t-map,)0 3926 y Fp(3.3)112
-b(The)38 b(catalog)f(parameter)g(\014le)0 4144 y Fv(In)27
-b(addition)f(to)i(the)g(con\014guration)f(\014le)f(detailed)h(ab)s(o)m
-(v)m(e,)i(SExtractor)f(needs)g(a)g(\014le)e(con)m(taining)h(the)h(list)
-e(of)0 4257 y(parameters)g(that)g(will)d(b)s(e)i(listed)f(in)g(the)h
-(output)g(catalog)j(for)d(ev)m(ery)h(detection.)40 b(This)24
-b(allo)m(ws)g(the)i(soft)m(w)m(are)0 4370 y(to)35 b(compute)f(only)f
-(catalog)j(parameters)e(that)h(are)g(needed.)51 b(The)33
-b(name)i(of)f(this)f(catalog-parameter)j(\014le)0 4483
-y(is)c(traditionally)f(su\016xed)h(with)f Fs(.param)p
-Fv(,)i(and)f(m)m(ust)h(b)s(e)g(sp)s(eci\014ed)e(using)g(the)j
-Fs(PARAMETERS)p 3298 4483 V 31 w(NAME)e Fv(con\014g)0
-4596 y(parameter.)0 4883 y Ft(3.3.1)105 b(F)-9 b(ormat)0
-5102 y Fv(The)39 b(format)g(of)h(the)f(catalog)i(parameter)f(list)e(is)
-g(ASCI)s(I,)g(and)h(there)g(m)m(ust)h(b)s(e)e Fr(only)k(one)f(keywor)-5
-b(d)43 b(p)-5 b(er)0 5215 y(line)p Fv(.)64 b(Presen)m(tly)38
-b(t)m(w)m(o)h(kinds)e(of)h(k)m(eyw)m(ords)h(are)f(recognized)h(b)m(y)f
-(SExtractor:)57 b(scalars)38 b(and)f(v)m(ectors.)66 b(S-)0
-5328 y(calars,)36 b(lik)m(e)e Fs(X)p 514 5328 V 34 w(IMAGE)p
-Fv(,)f(yield)g(single)g(n)m(um)m(b)s(ers)h(in)f(the)i(output)f
-(catalog.)55 b(V)-8 b(ectors,)37 b(lik)m(e)d Fs(MAG)p
-3302 5328 V 34 w(APER\(4\))e Fv(or)p 0 5390 1512 4 v
-104 5443 a Fn(1)138 5475 y Fm(Optional)26 b(parameter)1844
-5753 y Fv(11)p eop
-%%Page: 12 12
-12 11 bop 0 -74 a Fs(VIGNET\(15,15\))p Fv(,)33 b(yield)g(arra)m(ys)i
-(of)g(n)m(um)m(b)s(ers.)52 b(The)35 b(order)f(in)f(whic)m(h)h(the)h
-(parameters)g(will)d(b)s(e)i(listed)g(in)0 39 y(the)25
-b(catalogue)h(are)f(the)g(same)g(as)g(that)g(of)g(the)g(k)m(eyw)m(ords)
-g(in)e(the)i(parameter)g(list.)38 b(Commen)m(ts)24 b(are)h(allo)m(w)m
-(ed,)0 152 y(they)31 b(m)m(ust)f(b)s(egin)f(with)g(a)i(\\#".)41
-b(Here)31 b(is)e(a)i(descriptiv)m(e)e(list)g(of)i(a)m(v)-5
-b(ailable)30 b(parameter)g(k)m(eyw)m(ords.)0 443 y Fp(3.4)112
-b(Example)37 b(of)g(con\014guration)0 698 y Fu(4)135
-b(Ov)l(erview)46 b(of)f(the)g(soft)l(w)l(are)0 948 y
-Fv(The)38 b(complete)h(analysis)f(of)h(an)f(image)h(is)f(done)g(in)g(t)
-m(w)m(o)i(passes)e(through)g(the)h(data.)67 b(During)37
-b(the)i(\014rst)0 1061 y(pass,)g(a)f(mo)s(del)e(of)i(the)f(sky)g(bac)m
-(kground)g(is)g(built,)g(and)g(a)h(couple)f(of)g(global)g(statistics)g
-(are)h(estimated.)0 1174 y(During)31 b(the)h(second)g(pass,)g(the)h
-(image)f(is)f(bac)m(kground-subtracted,)i(\014ltered)e(and)g
-(thresholded)f(\\on-the-)0 1287 y(\015y".)39 b(Detections)28
-b(are)g(then)e(deblended,)g(pruned)e(\(\\CLEANed"\),)29
-b(photometered,)f(classi\014ed)d(and)i(\014nally)0 1400
-y(written)37 b(to)h(the)g(output)f(catalog.)65 b(Let's)38
-b(no)m(w)g(en)m(ter)g(a)h(little)d(more)i(in)m(to)g(the)g(details)e(of)
-i(eac)m(h)h(of)f(these)0 1513 y(op)s(erations)413 1480
-y Fo(2)452 1513 y Fv(.)0 1846 y Fu(5)135 b(Handling)45
-b(of)g(image)i(data)0 2097 y Fv(SExtractor)21 b(accepts)g(images)g
-(stored)f(in)f(FITS)1619 2064 y Fo(3)1678 2097 y Fv(format)i(\(W)-8
-b(ells)20 b(et)h(al.)f(1981,)k(see)d(also)f Fs
-(http://fits.gsfc.nasa.gov)p Fv(\).)0 2209 y(Curren)m(tly)-8
-b(,)30 b(only)f(\\Basic)j(FITS")e(images)g(are)h(recognized.)42
-b(F)-8 b(or)31 b(images)g(with)e Fs(NAXIS)24 b Fk(>)i
-Fv(2,)31 b(only)e(the)i(\014rst)0 2322 y(data-plane)26
-b(is)g(loaded.)39 b(Extensions)25 b(are)i(ignored.)38
-b(If)26 b(W)m(CS)2109 2289 y Fo(4)2175 2322 y Fv(information)f
-(\(Greisen)h(&)g(Calabretta)g(1995,)0 2435 y Fs
-(http://www.cv.nrao.edu/f)o(its/)o(docu)o(men)o(ts/w)o(cs/w)o(cs.)o
-(all.)o(ps)p Fv(\))j(is)34 b(a)m(v)-5 b(ailable)35 b(in)e(the)j
-(header,)g(it)e(is)0 2548 y(automatically)j(used)f(b)m(y)g(SExtractor)i
-(to)f(compute)g(astrometric)g(parameters.)61 b(Other)36
-b(astrometric)h(de-)0 2661 y(scriptions)g(lik)m(e)i(AST)f(\()p
-Fr(Starlink)j Fv(format\))f(or)f(the)g(solution)f(co)s(e\016cien)m(ts)i
-(of)f(the)h(DSS)3137 2628 y Fo(5)3216 2661 y Fv(plates)f(are)g(not)0
-2774 y(recognized)31 b(b)m(y)f(the)h(soft)m(w)m(are.)0
-2934 y(In)36 b(SExtractor,)j(as)e(in)e(all)g(similar)f(programs,)k
-(FITS)e(axis)g(\\1")i(is)e(traditionaly)f(refered)h(as)h(the)f
-Fs(X)h Fv(axis,)0 3047 y(and)30 b(FITS)f(axis)h(\\2")i(as)f(the)f
-Fs(Y)g Fv(axis.)0 3381 y Fu(6)135 b(Detection)46 b(and)f(segmen)l
-(tation)0 3631 y Fv(In)36 b(SExtractor,)j(the)e(detection)g(of)f
-(sources)h(is)f(part)g(of)h(a)g(pro)s(cess)f(called)g
-Fr(se)-5 b(gmentation)38 b Fv(in)d(the)i(image-)0 3744
-y(pro)s(cessing)44 b(v)m(o)s(cabulary)-8 b(.)84 b(Segmen)m(tation)45
-b(normally)e(consists)i(of)g(iden)m(tifying)d(and)j(separating)f(image)
-0 3857 y(regions)g(whic)m(h)f(ha)m(v)m(e)j(di\013eren)m(t)e(prop)s
-(erties)f(\(brigh)m(tness,)48 b(colour,)g(texture...\))84
-b(or)45 b(are)g(delineated)f(b)m(y)0 3970 y(edges.)c(In)24
-b(the)i(astronomical)f(con)m(text,)k(the)c(segmen)m(tation)i(pro)s
-(cess)e(consists)g(of)h(separating)f(ob)5 b(jects)26
-b(from)0 4083 y(the)32 b(sky)g(bac)m(kground.)46 b(This)31
-b(is)g(ho)m(w)m(ev)m(er)j(a)e(somewhat)h(imprecise)d(de\014nition,)h
-(as)h(astronomical)g(sources)0 4195 y(ha)m(v)m(e,)f(on)d(the)h(images)g
-(|)g(and)f(ev)m(en)h(often)h(ph)m(ysically)c(|,)k(no)e(clear)h(b)s
-(oundaries,)e(and)h(ma)m(y)i(o)m(v)m(erlap.)40 b(W)-8
-b(e)0 4308 y(shall)26 b(therefore)j(use)f(the)g(follo)m(wing)f(w)m
-(orking)g(de\014nition)f(of)i(an)g(ob)5 b(ject)29 b(in)e(SExtractor:)40
-b(a)28 b(group)g(of)g(pixels)0 4421 y(selected)i(through)f(some)i
-(detection)f(pro)s(cess)f(and)h(for)f(whic)m(h)g(the)h(\015ux)f(con)m
-(tribution)f(of)i(an)g(astronomical)0 4534 y(source)d(is)f(b)s(eliev)m
-(ed)f(to)i(b)s(e)f(dominan)m(t)g(o)m(v)m(er)i(that)g(of)e(other)h(ob)5
-b(jects.)41 b(Note)28 b(that)f(this)f(means)g(that)h(a)g(simple)0
-4647 y Fk(x;)15 b(y)36 b Fv(p)s(osition)31 b(v)m(ector)j(alone)f
-(cannot)g(b)s(e)g(handled)d(b)m(y)j(SExtractor)g(as)h(a)f(detection:)46
-b(most)33 b(measuremen)m(t)0 4760 y(routines)c(require)g(some)i(rough)f
-(shap)s(e)f(information)g(ab)s(out)h(the)h(ob)5 b(jects.)p
-0 4821 1512 4 v 104 4875 a Fn(2)138 4907 y Fm(In)23 b(the)g(text,)h
-(upp)r(ercase)g(k)n(eyw)n(ords)g(in)f(t)n(yp)r(ewriter)h(fon)n(t)g
-(refer)g(to)g(parameters)g(from)f(the)g(con\014guration)i(\014le)e(or)h
-(from)g(the)0 4998 y(parameter)h(\014le)104 5058 y Fn(3)138
-5090 y Fh(Flexible)j(Image)f(T)-6 b(r)l(ansp)l(ort)30
-b(System)104 5149 y Fn(4)138 5181 y Fh(World)e(Co)l(or)l(dinate)h
-(System)104 5241 y Fn(5)138 5272 y Fh(Digital)e(Sky)h(Survey)1844
-5753 y Fv(12)p eop
-%%Page: 13 13
-13 12 bop 118 4955 a @beginspecial 43 @llx 78 @lly 551
- at urx 764 @ury 4252 @rwi @setspecial
-%%BeginDocument: sexlayout.ps
-%!PS-Adobe-2.0
-%%Title: sexlayout.ps
-%%Creator: fig2dev Version 3.2 Patchlevel 0-beta3
-%%CreationDate: Wed Mar 25 19:43:37 1998
-%%For: ebertin at eis3 (Emmanuel Bertin,exp=1-jan-1999)
-%%Orientation: Portrait
-%%BoundingBox: 43 78 551 764
-%%Pages: 1
-%%BeginSetup
-%%IncludeFeature: *PageSize A4
-%%EndSetup
-%%Magnification: 0.8000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-/col32 {0.510 0.886 0.510 srgb} bind def
-
-end
-save
-16.5 834.0 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/reencdict 12 dict def /ReEncode { reencdict begin
-/newcodesandnames exch def /newfontname exch def /basefontname exch def
-/basefontdict basefontname findfont def /newfont basefontdict maxlength dict def
-basefontdict { exch dup /FID ne { dup /Encoding eq
-{ exch dup length array copy newfont 3 1 roll put }
-{ exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall
-newfont /FontName newfontname put newcodesandnames aload pop
-128 1 255 { newfont /Encoding get exch /.notdef put } for
-newcodesandnames length 2 idiv { newfont /Encoding get 3 1 roll put } repeat
-newfontname newfont definefont pop end } def
-/isovec [
-8#200 /grave 8#201 /acute 8#202 /circumflex 8#203 /tilde
-8#204 /macron 8#205 /breve 8#206 /dotaccent 8#207 /dieresis
-8#210 /ring 8#211 /cedilla 8#212 /hungarumlaut 8#213 /ogonek 8#214 /caron
-8#220 /dotlessi 8#230 /oe 8#231 /OE
-8#240 /space 8#241 /exclamdown 8#242 /cent 8#243 /sterling
-8#244 /currency 8#245 /yen 8#246 /brokenbar 8#247 /section 8#250 /dieresis
-8#251 /copyright 8#252 /ordfeminine 8#253 /guillemotleft 8#254 /logicalnot
-8#255 /endash 8#256 /registered 8#257 /macron 8#260 /degree 8#261 /plusminus
-8#262 /twosuperior 8#263 /threesuperior 8#264 /acute 8#265 /mu 8#266 /paragraph
-8#267 /periodcentered 8#270 /cedilla 8#271 /onesuperior 8#272 /ordmasculine
-8#273 /guillemotright 8#274 /onequarter 8#275 /onehalf
-8#276 /threequarters 8#277 /questiondown 8#300 /Agrave 8#301 /Aacute
-8#302 /Acircumflex 8#303 /Atilde 8#304 /Adieresis 8#305 /Aring
-8#306 /AE 8#307 /Ccedilla 8#310 /Egrave 8#311 /Eacute
-8#312 /Ecircumflex 8#313 /Edieresis 8#314 /Igrave 8#315 /Iacute
-8#316 /Icircumflex 8#317 /Idieresis 8#320 /Eth 8#321 /Ntilde 8#322 /Ograve
-8#323 /Oacute 8#324 /Ocircumflex 8#325 /Otilde 8#326 /Odieresis 8#327 /multiply
-8#330 /Oslash 8#331 /Ugrave 8#332 /Uacute 8#333 /Ucircumflex
-8#334 /Udieresis 8#335 /Yacute 8#336 /Thorn 8#337 /germandbls 8#340 /agrave
-8#341 /aacute 8#342 /acircumflex 8#343 /atilde 8#344 /adieresis 8#345 /aring
-8#346 /ae 8#347 /ccedilla 8#350 /egrave 8#351 /eacute
-8#352 /ecircumflex 8#353 /edieresis 8#354 /igrave 8#355 /iacute
-8#356 /icircumflex 8#357 /idieresis 8#360 /eth 8#361 /ntilde 8#362 /ograve
-8#363 /oacute 8#364 /ocircumflex 8#365 /otilde 8#366 /odieresis 8#367 /divide
-8#370 /oslash 8#371 /ugrave 8#372 /uacute 8#373 /ucircumflex
-8#374 /udieresis 8#375 /yacute 8#376 /thorn 8#377 /ydieresis] def
-/Helvetica /Helvetica-iso isovec ReEncode
- /DrawEllipse {
- /endangle exch def
- /startangle exch def
- /yrad exch def
- /xrad exch def
- /y exch def
- /x exch def
- /savematrix mtrx currentmatrix def
- x y tr xrad yrad sc 0 0 1 startangle endangle arc
- closepath
- savematrix setmatrix
- } def
-
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-%%EndProlog
-
-$F2psBegin
-10 setmiterlimit
-n -1000 16747 m -1000 -1000 l 12133 -1000 l 12133 16747 l cp clip
- 0.04800 0.04800 sc
-%%Page: 1 1
-15.000 slw
-% Ellipse
-n 5850 12225 600 225 0 360 DrawEllipse gs col28 1.00 shd ef gr gs col0 s gr
-
-% Ellipse
-n 5850 8700 600 225 0 360 DrawEllipse gs col28 1.00 shd ef gr gs col0 s gr
-
-% Polyline
-1 slj
-0.000 slw
-gs clippath
-6374 11382 m 6250 11391 l 6355 11325 l 6216 11372 l 6234 11428 l cp
-clip
-n 5250 11325 m 5250 12225 l 6450 12225 l 6450 11325 l 6225 11400 l gs col28 1.00 shd ef gr gr
-
-% Polyline
-gs clippath
-6374 7857 m 6250 7866 l 6355 7800 l 6216 7847 l 6234 7903 l cp
-clip
-n 5250 7800 m 5250 8700 l 6450 8700 l 6450 7800 l 6225 7875 l gs col28 1.00 shd ef gr gr
-
-% Polyline
-30.000 slw
-gs clippath
-4659 13260 m 5019 13350 l 4659 13440 l 5145 13440 l 5145 13260 l cp
-clip
-n 5850 3600 m 4350 3600 l 4350 13350 l 5100 13350 l gs col20 s gr gr
-
-% arrowhead
-0 slj
-n 4659 13260 m 5019 13350 l 4659 13440 l 4659 13350 l 4659 13260 l cp gs col20 1.00 shd ef gr col20 s
-% Polyline
-1 slj
-gs clippath
-5940 3759 m 5850 4119 l 5760 3759 l 5760 4245 l 5940 4245 l cp
-clip
-n 5850 3450 m 5850 4200 l gs col20 s gr gr
-
-% arrowhead
-0 slj
-n 5940 3759 m 5850 4119 l 5760 3759 l 5850 3759 l 5940 3759 l cp gs col20 1.00 shd ef gr col20 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-9390 12609 m 9300 12969 l 9210 12609 l 9210 13095 l 9390 13095 l cp
-clip
-n 9300 12300 m 9300 13050 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 9390 12609 m 9300 12969 l 9210 12609 l 9300 12609 l 9390 12609 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
- [90] 0 sd
-gs clippath
-4659 4635 m 5019 4725 l 4659 4815 l 5145 4815 l 5145 4635 l cp
-clip
-n 3600 4725 m 5100 4725 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 4659 4635 m 5019 4725 l 4659 4815 l 4659 4725 l 4659 4635 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
- [90] 0 sd
-gs clippath
-10491 13590 m 10131 13500 l 10491 13410 l 10005 13410 l 10005 13590 l cp
-clip
-n 10800 11925 m 11100 11925 l 11100 13500 l 10050 13500 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 10491 13590 m 10131 13500 l 10491 13410 l 10491 13500 l 10491 13590 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
-gs clippath
-6015 5559 m 5925 5919 l 5835 5559 l 5835 6045 l 6015 6045 l cp
-clip
-n 5925 5250 m 5925 6000 l gs col20 s gr gr
-
-% arrowhead
-0 slj
-n 6015 5559 m 5925 5919 l 5835 5559 l 5925 5559 l 6015 5559 l cp gs col20 1.00 shd ef gr col20 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-5865 5559 m 5775 5919 l 5685 5559 l 5685 6045 l 5865 6045 l cp
-clip
-n 5775 5250 m 5775 6000 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 5865 5559 m 5775 5919 l 5685 5559 l 5775 5559 l 5865 5559 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-4659 13560 m 5019 13650 l 4659 13740 l 5145 13740 l 5145 13560 l cp
-clip
-n 4050 4725 m 4050 13650 l 5100 13650 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 4659 13560 m 5019 13650 l 4659 13740 l 4659 13650 l 4659 13560 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
-15.000 slw
-n 8205 4275 m 8100 4275 8100 5070 105 arcto 4 {pop} repeat
- 8100 5175 9570 5175 105 arcto 4 {pop} repeat
- 9675 5175 9675 4380 105 arcto 4 {pop} repeat
- 9675 4275 8205 4275 105 arcto 4 {pop} repeat
- cp gs col11 1.00 shd ef gr gs col0 s gr
-% Polyline
-30.000 slw
-gs clippath
-4659 2835 m 5019 2925 l 4659 3015 l 5145 3015 l 5145 2835 l cp
-clip
-n 3600 2925 m 5100 2925 l gs col20 s gr gr
-
-% arrowhead
-0 slj
-n 4659 2835 m 5019 2925 l 4659 3015 l 4659 2925 l 4659 2835 l cp gs col20 1.00 shd ef gr col20 s
-% Polyline
-1 slj
-gs clippath
-5940 1959 m 5850 2319 l 5760 1959 l 5760 2445 l 5940 2445 l cp
-clip
-n 2100 1800 m 2100 1500 l 5850 1500 l 5850 2400 l gs col20 s gr gr
-
-% arrowhead
-0 slj
-n 5940 1959 m 5850 2319 l 5760 1959 l 5850 1959 l 5940 1959 l cp gs col20 1.00 shd ef gr col20 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-4659 9960 m 5019 10050 l 4659 10140 l 5145 10140 l 5145 9960 l cp
-clip
-n 4050 10050 m 5100 10050 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 4659 9960 m 5019 10050 l 4659 10140 l 4659 10050 l 4659 9960 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-7041 13590 m 6681 13500 l 7041 13410 l 6555 13410 l 6555 13590 l cp
-clip
-n 8550 13500 m 6600 13500 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 7041 13590 m 6681 13500 l 7041 13410 l 7041 13500 l 7041 13590 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
-15.000 slw
-n 8700 14700 m 10500 14700 l 9900 15600 l 8100 15600 l 8700 14700 l cp gs col32 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1500 14700 m 3300 14700 l 2700 15600 l 900 15600 l 1500 14700 l cp gs col32 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1605 13050 m 1500 13050 1500 13845 105 arcto 4 {pop} repeat
- 1500 13950 2970 13950 105 arcto 4 {pop} repeat
- 3075 13950 3075 13155 105 arcto 4 {pop} repeat
- 3075 13050 1605 13050 105 arcto 4 {pop} repeat
- cp gs col11 1.00 shd ef gr gs col0 s gr
-% Polyline
-30.000 slw
- [90] 0 sd
-gs clippath
-7041 13440 m 6681 13350 l 7041 13260 l 6555 13260 l 6555 13440 l cp
-clip
-n 7800 9900 m 7575 9900 l 7575 13350 l 6600 13350 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 7041 13440 m 6681 13350 l 7041 13260 l 7041 13350 l 7041 13440 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-4659 13410 m 5019 13500 l 4659 13590 l 5145 13590 l 5145 13410 l cp
-clip
-n 3075 13500 m 5100 13500 l gs col10 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 4659 13410 m 5019 13500 l 4659 13590 l 4659 13500 l 4659 13410 l cp gs col10 1.00 shd ef gr col10 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-7041 4815 m 6681 4725 l 7041 4635 l 6555 4635 l 6555 4815 l cp
-clip
-n 8100 4725 m 6600 4725 l gs col10 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 7041 4815 m 6681 4725 l 7041 4635 l 7041 4725 l 7041 4815 l cp gs col10 1.00 shd ef gr col10 s
-% Polyline
-1 slj
- [90] 0 sd
-gs clippath
-7116 10140 m 6756 10050 l 7116 9960 l 6630 9960 l 6630 10140 l cp
-clip
-n 7800 7950 m 7275 7950 l 7275 10050 l 6675 10050 l gs col18 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 7116 10140 m 6756 10050 l 7116 9960 l 7116 10050 l 7116 10140 l cp gs col18 1.00 shd ef gr col18 s
-% Polyline
-1 slj
-15.000 slw
-n 5250 12225 m 5250 11325 l gs col0 s gr
-% Polyline
-n 6450 12225 m 6450 11325 l gs col0 s gr
-% Polyline
-n 5250 8700 m 5250 7800 l gs col0 s gr
-% Ellipse
-n 5850 11325 600 150 0 360 DrawEllipse gs col27 1.00 shd ef gr gs col0 s gr
-
-% Polyline
-n 6450 8700 m 6450 7800 l gs col0 s gr
-% Ellipse
-n 5850 7800 600 150 0 360 DrawEllipse gs col27 1.00 shd ef gr gs col0 s gr
-
-% Polyline
-0 slj
-30.000 slw
-n 960 3600 m 900 3600 900 5040 60 arcto 4 {pop} repeat
- 900 5100 3240 5100 60 arcto 4 {pop} repeat
- 3300 5100 3300 3660 60 arcto 4 {pop} repeat
- 3300 3600 960 3600 60 arcto 4 {pop} repeat
- cp gs col17 1.00 shd ef gr gs col-1 s gr
-% Polyline
-n 8160 8775 m 8100 8775 8100 10215 60 arcto 4 {pop} repeat
- 8100 10275 10440 10275 60 arcto 4 {pop} repeat
- 10500 10275 10500 8835 60 arcto 4 {pop} repeat
- 10500 8775 8160 8775 60 arcto 4 {pop} repeat
- cp gs col17 1.00 shd ef gr gs col-1 s gr
-% Polyline
-n 8160 10800 m 8100 10800 8100 12240 60 arcto 4 {pop} repeat
- 8100 12300 10440 12300 60 arcto 4 {pop} repeat
- 10500 12300 10500 10860 60 arcto 4 {pop} repeat
- 10500 10800 8160 10800 60 arcto 4 {pop} repeat
- cp gs col17 1.00 shd ef gr gs col-1 s gr
-% Polyline
-n 8160 6825 m 8100 6825 8100 8265 60 arcto 4 {pop} repeat
- 8100 8325 10440 8325 60 arcto 4 {pop} repeat
- 10500 8325 10500 6885 60 arcto 4 {pop} repeat
- 10500 6825 8160 6825 60 arcto 4 {pop} repeat
- cp gs col17 1.00 shd ef gr gs col-1 s gr
-% Polyline
-n 960 1800 m 900 1800 900 3240 60 arcto 4 {pop} repeat
- 900 3300 3240 3300 60 arcto 4 {pop} repeat
- 3300 3300 3300 1860 60 arcto 4 {pop} repeat
- 3300 1800 960 1800 60 arcto 4 {pop} repeat
- cp gs col17 1.00 shd ef gr gs col-1 s gr
-% Polyline
-1 slj
-gs clippath
-7959 15060 m 8319 15150 l 7959 15240 l 8445 15240 l 8445 15060 l cp
-clip
-n 6675 15150 m 8400 15150 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 7959 15060 m 8319 15150 l 7959 15240 l 7959 15150 l 7959 15060 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-5940 14184 m 5850 14544 l 5760 14184 l 5760 14670 l 5940 14670 l cp
-clip
-n 5850 14025 m 5850 14625 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 5940 14184 m 5850 14544 l 5760 14184 l 5850 14184 l 5940 14184 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
- [120] 0 sd
-gs clippath
-4659 15060 m 5019 15150 l 4659 15240 l 5145 15240 l 5145 15060 l cp
-clip
-n 3000 15150 m 5100 15150 l gs col12 s gr gr
- [] 0 sd
-% arrowhead
-0 slj
-n 4659 15060 m 5019 15150 l 4659 15240 l 4659 15150 l 4659 15060 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-3516 8490 m 3156 8400 l 3516 8310 l 3030 8310 l 3030 8490 l cp
-clip
-n 5250 8400 m 3075 8400 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 3516 8490 m 3156 8400 l 3516 8310 l 3516 8400 l 3516 8490 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-4809 8085 m 5169 8175 l 4809 8265 l 5295 8265 l 5295 8085 l cp
-clip
-n 3075 8175 m 5250 8175 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 4809 8085 m 5169 8175 l 4809 8265 l 4809 8175 l 4809 8085 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-5940 10734 m 5850 11094 l 5760 10734 l 5760 11220 l 5940 11220 l cp
-clip
-n 5850 10575 m 5850 11175 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 5940 10734 m 5850 11094 l 5760 10734 l 5850 10734 l 5940 10734 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-5940 7209 m 5850 7569 l 5760 7209 l 5760 7695 l 5940 7695 l cp
-clip
-n 5850 7050 m 5850 7650 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 5940 7209 m 5850 7569 l 5760 7209 l 5850 7209 l 5940 7209 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-5940 9084 m 5850 9444 l 5760 9084 l 5760 9570 l 5940 9570 l cp
-clip
-n 5850 8925 m 5850 9525 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 5940 9084 m 5850 9444 l 5760 9084 l 5850 9084 l 5940 9084 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-4809 11610 m 5169 11700 l 4809 11790 l 5295 11790 l 5295 11610 l cp
-clip
-n 3075 11700 m 5250 11700 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 4809 11610 m 5169 11700 l 4809 11790 l 4809 11700 l 4809 11610 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-3516 12015 m 3156 11925 l 3516 11835 l 3030 11835 l 3030 12015 l cp
-clip
-n 5250 11925 m 3075 11925 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 3516 12015 m 3156 11925 l 3516 11835 l 3516 11925 l 3516 12015 l cp gs col12 1.00 shd ef gr col12 s
-% Polyline
-1 slj
-gs clippath
-5940 12609 m 5850 12969 l 5760 12609 l 5760 13095 l 5940 13095 l cp
-clip
-n 5850 12450 m 5850 13050 l gs col12 s gr gr
-
-% arrowhead
-0 slj
-n 5940 12609 m 5850 12969 l 5760 12609 l 5850 12609 l 5940 12609 l cp gs col12 1.00 shd ef gr col12 s
-0.000 slw
-% Ellipse
-n 5903 6572 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 5903 15219 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 5903 10119 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 5903 4767 772 557 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 2378 11844 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 9353 13569 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 5903 13569 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 2303 8297 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Ellipse
-n 5903 2994 772 530 0 360 DrawEllipse gs col26 1.00 shd ef gr
-% Polyline
-15.000 slw
-n 915 4575 m 900 4575 900 4860 15 arcto 4 {pop} repeat
- 900 4875 3285 4875 15 arcto 4 {pop} repeat
- 3300 4875 3300 4590 15 arcto 4 {pop} repeat
- 3300 4575 915 4575 15 arcto 4 {pop} repeat
- cp gs col17 0.50 tnt ef gr gs col0 s gr
-% Ellipse
-n 5850 4698 772 557 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Polyline
-n 660 4575 m 600 4575 600 4815 60 arcto 4 {pop} repeat
- 600 4875 3540 4875 60 arcto 4 {pop} repeat
- 3600 4875 3600 4635 60 arcto 4 {pop} repeat
- 3600 4575 660 4575 60 arcto 4 {pop} repeat
- cp gs col0 s gr
-% Ellipse
-n 5850 6506 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-/Helvetica-iso ff 300.00 scf sf
-9300 9450 m
-gs 1 -1 sc (Ext. weight map) dup sw pop 2 div neg 0 rm col-1 sh gr
-% Polyline
-n 8115 9750 m 8100 9750 8100 10035 15 arcto 4 {pop} repeat
- 8100 10050 10485 10050 15 arcto 4 {pop} repeat
- 10500 10050 10500 9765 15 arcto 4 {pop} repeat
- 10500 9750 8115 9750 15 arcto 4 {pop} repeat
- cp gs col17 0.50 tnt ef gr gs col0 s gr
-% Polyline
-n 7860 9750 m 7800 9750 7800 9990 60 arcto 4 {pop} repeat
- 7800 10050 10740 10050 60 arcto 4 {pop} repeat
- 10800 10050 10800 9810 60 arcto 4 {pop} repeat
- 10800 9750 7860 9750 60 arcto 4 {pop} repeat
- cp gs col0 s gr
-/Helvetica-iso ff 300.00 scf sf
-9300 11475 m
-gs 1 -1 sc (External image) dup sw pop 2 div neg 0 rm col-1 sh gr
-% Polyline
-n 8115 11775 m 8100 11775 8100 12060 15 arcto 4 {pop} repeat
- 8100 12075 10485 12075 15 arcto 4 {pop} repeat
- 10500 12075 10500 11790 15 arcto 4 {pop} repeat
- 10500 11775 8115 11775 15 arcto 4 {pop} repeat
- cp gs col17 0.50 tnt ef gr gs col0 s gr
-% Polyline
-n 7860 11775 m 7800 11775 7800 12015 60 arcto 4 {pop} repeat
- 7800 12075 10740 12075 60 arcto 4 {pop} repeat
- 10800 12075 10800 11835 60 arcto 4 {pop} repeat
- 10800 11775 7860 11775 60 arcto 4 {pop} repeat
- cp gs col0 s gr
-/Helvetica-iso ff 300.00 scf sf
-9300 7500 m
-gs 1 -1 sc (Flag-map) dup sw pop 2 div neg 0 rm col-1 sh gr
-% Polyline
-n 8115 7800 m 8100 7800 8100 8085 15 arcto 4 {pop} repeat
- 8100 8100 10485 8100 15 arcto 4 {pop} repeat
- 10500 8100 10500 7815 15 arcto 4 {pop} repeat
- 10500 7800 8115 7800 15 arcto 4 {pop} repeat
- cp gs col17 0.50 tnt ef gr gs col0 s gr
-% Polyline
-n 7860 7800 m 7800 7800 7800 8040 60 arcto 4 {pop} repeat
- 7800 8100 10740 8100 60 arcto 4 {pop} repeat
- 10800 8100 10800 7860 60 arcto 4 {pop} repeat
- 10800 7800 7860 7800 60 arcto 4 {pop} repeat
- cp gs col0 s gr
-% Ellipse
-n 5850 15153 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Ellipse
-n 9300 13503 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Ellipse
-n 2325 11778 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Ellipse
-n 5850 13503 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Ellipse
-n 5850 10053 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Polyline
-n 660 2775 m 600 2775 600 3015 60 arcto 4 {pop} repeat
- 600 3075 3540 3075 60 arcto 4 {pop} repeat
- 3600 3075 3600 2835 60 arcto 4 {pop} repeat
- 3600 2775 660 2775 60 arcto 4 {pop} repeat
- cp gs col0 s gr
-% Polyline
-n 915 2775 m 900 2775 900 3060 15 arcto 4 {pop} repeat
- 900 3075 3285 3075 15 arcto 4 {pop} repeat
- 3300 3075 3300 2790 15 arcto 4 {pop} repeat
- 3300 2775 915 2775 15 arcto 4 {pop} repeat
- cp gs col17 0.50 tnt ef gr gs col0 s gr
-% Ellipse
-n 2250 8231 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-% Ellipse
-n 5850 2928 772 530 0 360 DrawEllipse gs col31 1.00 shd ef gr gs col-1 s gr
-
-/Helvetica-iso ff 300.00 scf sf
-2100 4200 m
-gs 1 -1 sc (Weight-map) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 300.00 scf sf
-2100 2475 m
-gs 1 -1 sc (Input frame) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 180.00 scf sf
-9300 9975 m
-gs 1 -1 sc (Frame buffer) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 180.00 scf sf
-9300 12000 m
-gs 1 -1 sc (Frame buffer) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 180.00 scf sf
-9300 8025 m
-gs 1 -1 sc (Frame buffer) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 4935 m
-gs 1 -1 sc (filtering) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 4650 m
-gs 1 -1 sc (Image) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5775 8610 m
-gs 1 -1 sc (stack) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5775 8325 m
-gs 1 -1 sc (Pixel-) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 9975 m
-gs 1 -1 sc (Isophotal) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 10260 m
-gs 1 -1 sc (analysis) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 11850 m
-gs 1 -1 sc (Object-) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 12135 m
-gs 1 -1 sc (stack) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-2325 11700 m
-gs 1 -1 sc (``Cleaning'') dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-2325 11985 m
-gs 1 -1 sc (of detections) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-2250 8325 m
-gs 1 -1 sc (De-blending) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-2250 13575 m
-gs 1 -1 sc (PSF mapping) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 15075 m
-gs 1 -1 sc (Cross-) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 15360 m
-gs 1 -1 sc (identification) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-2100 15360 m
-gs 1 -1 sc (\(ASCII\)) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-2175 15075 m
-gs 1 -1 sc (Input catalog) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-9300 15225 m
-gs 1 -1 sc (Output catalog) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 180.00 scf sf
-2100 4800 m
-gs 1 -1 sc (Frame buffer) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 180.00 scf sf
-2100 3000 m
-gs 1 -1 sc (Frame buffer) dup sw pop 2 div neg 0 rm col-1 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 2895 m
-gs 1 -1 sc (Background) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 3187 m
-gs 1 -1 sc (subtraction) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-8850 4545 m
-gs 1 -1 sc (Convolution) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-8850 5063 m
-gs 1 -1 sc (or Retina) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-8850 4801 m
-gs 1 -1 sc (mask,) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 6412 m
-gs 1 -1 sc (Image) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 6697 m
-gs 1 -1 sc (segmentation) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5858 13462 m
-gs 1 -1 sc (Photometry) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-5850 13763 m
-gs 1 -1 sc (Astrometry) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-9307 13748 m
-gs 1 -1 sc (subtraction) dup sw pop 2 div neg 0 rm col0 sh gr
-/Helvetica-iso ff 240.00 scf sf
-9300 13462 m
-gs 1 -1 sc (Background) dup sw pop 2 div neg 0 rm col0 sh gr
-$F2psEnd
-rs
-showpage
-
-%%EndDocument
- @endspecial 0 5151 a Fv(Figure)30 b(1:)41 b(La)m(y)m(out)31
-b(of)f(the)h(main)e(SExtractor)h(pro)s(cedures.)40 b(Dashed)30
-b(arro)m(ws)g(represen)m(t)g(optional)f(inputs.)1844
-5753 y(13)p eop
-%%Page: 14 14
-14 13 bop 0 -74 a Fv(Segmen)m(tation)31 b(in)e(SExtractor)i(is)f(ac)m
-(hiev)m(ed)h(through)f(a)h(v)m(ery)g(simple)d(thresholding)g(pro)s
-(cess:)41 b(a)30 b(group)g(of)0 39 y(connected)j(pixels)c(that)k
-(exceed)f(some)g(threshold)e(ab)s(o)m(v)m(e)j(the)f(bac)m(kground)f(is)
-g(iden)m(ti\014ed)f(as)i(a)g(detection.)0 152 y(But)26
-b(things)f(are)i(a)f(little)f(bit)g(more)h(complicated)g(in)f
-(practice.)39 b(First,)27 b(on)f(most)g(astronomical)g(images,)h(the)0
-265 y(bac)m(kground)h(is)g(not)g(constan)m(t)i(o)m(v)m(er)g(the)e
-(frame,)h(and)f(its)g(determination)f(can)i(b)s(e)f(am)m(biguous)f(in)h
-(cro)m(wded)0 378 y(regions.)52 b(Second,)35 b(the)f(soft)m(w)m(are)i
-(has)e(to)g(op)s(erate)h(on)f(noisy)f(data,)k(and)c(some)i(\014ltering)
-d(adapted)i(to)h(the)0 491 y(c)m(haracteristics)27 b(of)g(the)g(image)f
-(has)h(to)g(b)s(e)f(applied)e(prior)h(to)i(detection,)i(to)e(reduce)f
-(the)h(con)m(tamination)g(b)m(y)0 604 y(noise)20 b(p)s(eaks.)38
-b(Third,)20 b(man)m(y)h(sources)g(that)h(o)m(v)m(erlap)f(on)g(the)g
-(image)g(are)h(unlik)m(ely)c(to)k(b)s(e)e(detected)i(separately)0
-716 y(with)28 b(a)i(single)f(detection)h(threshold,)f(and)g(require)f
-(a)i(de-blending)d(pro)s(cedure,)i(whic)m(h)g(is)f(actually)i(m)m
-(ulti-)0 829 y(thresholding)f(in)g(SExtractor.)44 b(Eac)m(h)31
-b(of)h(these)f(p)s(oin)m(ts)f(will)e(no)m(w)j(b)s(e)g(describ)s(ed)e
-(in)h(greater)i(detail)e(b)s(elo)m(w.)0 942 y(It)i(is)f(w)m(orth)g(men)
-m(tioning)g(here)h(that)g(these)g(3)h(di\016culties)c(could,)i(to)i(a)f
-(large)g(exten)m(t,)i(b)s(e)d(b)m(ypassed)g(using)0 1055
-y(a)45 b(w)m(a)m(v)m(elet)h(decomp)s(osition)d(\(e.g.)84
-b(Bijaoui)44 b(et)h(al.)f(1998\).)85 b(Although)44 b(suc)m(h)g(an)g
-(algorithm)g(migh)m(t)g(b)s(e)0 1168 y(implemen)m(ted)24
-b(in)g(a)i(future)f(v)m(ersion)g(of)h(SExtractor,)h(curren)m(t)f
-(constrain)m(ts)f(in)g(pro)s(cessing)f(sp)s(eed,)i(a)m(v)-5
-b(ailable)0 1281 y(memory)33 b(\(pro)s(cessing)g(of)h(gigan)m(tic)g
-(images\))g(mak)m(e)h(the)e(\\p)s(edestrian)g(approac)m(h")h(still)d
-(more)j(in)m(teresting)0 1394 y(in)29 b(the)i(case)g(of)g(large)f
-(scale)h(surv)m(eys.)0 1684 y Fp(6.1)112 b(Bac)m(kground)38
-b(estimation)0 1903 y Fv(The)c(v)-5 b(alue)34 b(measured)f(at)i(eac)m
-(h)h(pixel)d(is)g(a)i(function)e(of)h(the)h(sum)e(of)i(a)f(\\bac)m
-(kground")h(signal)f(and)f(ligh)m(t)0 2015 y(coming)f(from)f(the)h(ob)5
-b(jects)33 b(of)f(in)m(terest.)45 b(T)-8 b(o)32 b(b)s(e)g(able)f(to)i
-(detect)g(the)f(fain)m(test)g(of)g(these)h(ob)5 b(jects)32
-b(and)g(also)0 2128 y(to)k(measure)f(accurately)h(their)e(\015uxes,)i
-(one)g(needs)f(to)h(ha)m(v)m(e)g(an)f(accurate)i(estimate)f(of)f(the)h
-(bac)m(kground)0 2241 y(lev)m(el)h(in)e(an)m(y)i(place)g(of)g(the)g
-(image,)i(a)e(\\bac)m(kground)h(map".)60 b(Strictly)35
-b(sp)s(eaking,)j(there)f(should)e(b)s(e)h(one)0 2354
-y(bac)m(kground)c(map)g(p)s(er)f(ob)5 b(ject,)33 b(that)g(is,)e(what)h
-(w)m(ould)f(the)h(image)h(lo)s(ok)e(lik)m(e)h(if)f(that)h(ob)5
-b(ject)33 b(w)m(as)g(absen)m(t.)0 2467 y(But,)d(at)g(least)f(for)g
-(detection,)h(w)m(e)g(ma)m(y)f(start)h(b)m(y)f(assuming)f(that)h(most)h
-(discrete)e(sources)i(do)f(not)g(o)m(v)m(erlap)0 2580
-y(to)s(o)i(sev)m(erely)-8 b(,)31 b(whic)m(h)f(is)f(generally)h(the)g
-(case)i(for)e(high)f(galactic)i(latitude)e(\014elds.)0
-2740 y(T)-8 b(o)33 b(construct)g(the)f(bac)m(kground)g(map,)h
-(SExtractor)g(mak)m(es)g(a)g(\014rst)f(pass)g(through)f(the)i(pixel)e
-(data,)j(com-)0 2853 y(puting)24 b(an)h(estimator)h(for)g(the)g(lo)s
-(cal)e(bac)m(kground)i(in)e(eac)m(h)j(mesh)e(of)g(a)h(grid)f(that)h(co)
-m(v)m(ers)h(the)f(whole)e(frame.)0 2966 y(The)k(bac)m(kground)g
-(estimator)h(is)f(a)h(com)m(bination)f(of)g Fk(\024:\033)33
-b Fv(clipping)25 b(and)j(mo)s(de)g(estimation,)h(similar)d(to)j(the)0
-3079 y(one)40 b(emplo)m(y)m(ed)g(in)e(Stetson's)i(D)m(A)m(OPHOT)g
-(program)f(\(see)i(e.g.)69 b(Da)40 b(Costa)h(1992\).)70
-b(Brie\015y)-8 b(,)41 b(the)f(lo)s(cal)0 3192 y(bac)m(kground)c
-(histogram)g(is)f(clipp)s(ed)e(iterativ)m(ely)j(un)m(til)f(con)m(v)m
-(ergence)j(at)f Fq(\006)p Fv(3)p Fk(\033)i Fv(around)d(its)f(median;)j
-(if)d Fk(\033)0 3305 y Fv(is)30 b(c)m(hanged)i(b)m(y)f(less)f(than)h
-(20\045)h(during)d(that)i(pro)s(cess,)g(w)m(e)h(consider)e(that)i(the)f
-(\014eld)f(is)g(not)h(cro)m(wded)g(and)0 3418 y(w)m(e)h(simply)d(tak)m
-(e)k(the)e(mean)h(of)f(the)h(clipp)s(ed)c(histogram)j(as)h(a)g(v)-5
-b(alue)31 b(for)g(the)g(bac)m(kground;)h(otherwise)f(w)m(e)0
-3531 y(estimate)g(the)g(mo)s(de)f(with:)1178 3643 y(Mo)s(de)25
-b(=)g(2)p Fk(:)p Fv(5)c Fq(\002)f Fv(Median)g Fq(\000)g
-Fv(1)p Fk(:)p Fv(5)h Fq(\002)f Fv(Mean)1062 b(\(1\))0
-3807 y(This)29 b(expression)g(is)g(di\013eren)m(t)h(from)g(the)g(usual)
-f(appro)m(ximation)1248 4006 y(Mo)s(de)d(=)f(3)20 b Fq(\002)g
-Fv(Median)g Fq(\000)g Fv(2)h Fq(\002)e Fv(Mean)1133 b(\(2\))0
-4204 y(\(e.g.)68 b(Kendall)38 b(and)g(Stuart)h(1977\),)44
-b(but)38 b(w)m(as)h(found)f(to)i(b)s(e)f(more)g(accurate)i(with)c(our)i
-(clipp)s(ed)d(distri-)0 4317 y(butions,)g(from)g(the)g(sim)m(ulations)f
-(w)m(e)h(made.)59 b(Fig.)f(2)36 b(sho)m(ws)g(that)h(the)g(expression)e
-(of)h(the)g(mo)s(de)g(ab)s(o)m(v)m(e)0 4430 y(is)f(considerably)f(less)
-h(a\013ected)1103 4397 y Fo(6)1179 4430 y Fv(b)m(y)h(cro)m(wding)f
-(than)g(a)h(simple)e(clipp)s(ed)f(mean)j(|)f(lik)m(e)g(the)h(one)g
-(used)f(in)0 4543 y(F)m(OCAS)c(\(Jarvis)f(and)h(T)m(yson)g(1981\))i(or)
-f(b)m(y)f(Infan)m(te)g(\(1987\))j(|)d(but)f(is)h Fq(\031)26
-b Fv(30\045)32 b(noisier.)41 b(F)-8 b(or)32 b(this)e(reason)0
-4656 y(w)m(e)h(rev)m(ert)g(to)g(the)g(mean)f(in)f(non-cro)m(wded)h
-(\014elds.)0 4816 y(Once)d(the)g(grid)f(is)g(set)h(up,)g(a)g(median)f
-(\014lter)g(can)h(b)s(e)g(applied)d(to)k(suppress)d(p)s(ossible)f(lo)s
-(cal)j(o)m(v)m(erestimations)0 4929 y(due)38 b(to)h(brigh)m(t)f(stars.)
-66 b(The)38 b(resulting)e(bac)m(kground)j(map)f(is)g(then)g(simply)e(a)
-j(\(natural\))g(bicubic-spline)0 5042 y(in)m(terp)s(olation)20
-b(b)s(et)m(w)m(een)i(the)f(meshes)g(of)h(the)f(grid.)37
-b(In)21 b(parallel)e(with)h(the)i(making)e(of)i(the)f(bac)m(kground)h
-(map,)0 5155 y(an)33 b(\\RMS-bac)m(kground-map",)h(that)g(is,)e(a)i
-(map)e(of)h(the)g(bac)m(kground)g(noise)f(in)g(the)h(image)g(is)f(pro)s
-(duced.)0 5268 y(It)e(will)e(b)s(e)i(used)g(if)f(the)h
-Fs(WEIGHT)p 1135 5268 29 4 v 33 w(TYPE)f Fv(parameter)i(is)f(set)h
-(di\013eren)m(t)e(from)h Fs(NONE)f Fv(\(see)j Fq(x)p
-Fv(7.1\).)p 0 5327 1512 4 v 104 5381 a Fn(6)138 5413
-y Fm(Ob)n(viously)38 b(in)g(some)g(v)n(ery)f(unfa)n(v)n(orable)i(cases)
-g(\(lik)n(e)f(small)h(meshes)f(falling)i(on)e(brigh)n(t)g(stars\),)k
-(it)c(leads)h(to)g(totally)0 5504 y(inaccurate)26 b(results.)1844
-5753 y Fv(14)p eop
-%%Page: 15 15
-15 14 bop 472 1819 a @beginspecial 50 @llx 50 @lly 410
- at urx 302 @ury 3401 @rwi @setspecial
-%%BeginDocument: modevsmean.ps
-%!PS-Adobe-2.0 EPSF-2.0
-%%Creator: gnuplot
-%%DocumentFonts: Times-Roman
-%%BoundingBox: 50 50 410 302
-%%EndComments
-/gnudict 40 dict def
-gnudict begin
-/Color true def
-/Solid false def
-/gnulinewidth 5.000 def
-/vshift -60 def
-/dl {10 mul} def
-/hpt 31.5 def
-/vpt 31.5 def
-/M {moveto} bind def
-/L {lineto} bind def
-/R {rmoveto} bind def
-/V {rlineto} bind def
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow { currentpoint stroke M
- 0 vshift R show } def
-/Rshow { currentpoint stroke M
- dup stringwidth pop neg vshift R show } def
-/Cshow { currentpoint stroke M
- dup stringwidth pop -2 div vshift R show } def
-/DL { Color {setrgbcolor Solid {pop []} if 0 setdash }
- {pop pop pop Solid {pop []} if 0 setdash} ifelse } def
-/BL { stroke gnulinewidth 2 mul setlinewidth } def
-/AL { stroke gnulinewidth 2 div setlinewidth } def
-/PL { stroke gnulinewidth setlinewidth } def
-/LTb { BL [] 0 0 0 DL } def
-/LTa { AL [1 dl 2 dl] 0 setdash 0 0 0 setrgbcolor } def
-/LT0 { PL [] 0 0 0 DL } def
-/LT1 { PL [4 dl 2 dl] 0 0 1 DL } def
-/LT2 { PL [2 dl 3 dl] 1 0 0 DL } def
-/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def
-/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def
-/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def
-/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def
-/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def
-/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def
-/P { stroke [] 0 setdash
- currentlinewidth 2 div sub M
- 0 currentlinewidth V stroke } def
-/D { stroke [] 0 setdash 2 copy vpt add M
- hpt neg vpt neg V hpt vpt neg V
- hpt vpt V hpt neg vpt V closepath stroke
- P } def
-/A { stroke [] 0 setdash vpt sub M 0 vpt2 V
- currentpoint stroke M
- hpt neg vpt neg R hpt2 0 V stroke
- } def
-/B { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M
- 0 vpt2 neg V hpt2 0 V 0 vpt2 V
- hpt2 neg 0 V closepath stroke
- P } def
-/C { stroke [] 0 setdash exch hpt sub exch vpt add M
- hpt2 vpt2 neg V currentpoint stroke M
- hpt2 neg 0 R hpt2 vpt2 V stroke } def
-/T { stroke [] 0 setdash 2 copy vpt 1.12 mul add M
- hpt neg vpt -1.62 mul V
- hpt 2 mul 0 V
- hpt neg vpt 1.62 mul V closepath stroke
- P } def
-/S { 2 copy A C} def
-end
-%%EndProlog
-gnudict begin
-gsave
-50 50 translate
-0.050 0.050 scale
-0 setgray
-/Times-Roman findfont 180 scalefont setfont
-newpath
-LTa
-1080 2700 M
-5841 0 V
-1611 451 M
-0 4498 V
-LTb
-1080 655 M
-63 0 V
-5778 0 R
--63 0 V
-972 655 M
-(-10) Rshow
-1080 1678 M
-63 0 V
-5778 0 R
--63 0 V
--5886 0 R
-(-5) Rshow
-1080 2700 M
-63 0 V
-5778 0 R
--63 0 V
--5886 0 R
-(0) Rshow
-1080 3722 M
-63 0 V
-5778 0 R
--63 0 V
--5886 0 R
-(5) Rshow
-1080 4745 M
-63 0 V
-5778 0 R
--63 0 V
--5886 0 R
-(10) Rshow
-1611 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(0) Cshow
-2496 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(5) Cshow
-3381 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(10) Cshow
-4266 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(15) Cshow
-5151 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(20) Cshow
-6036 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(25) Cshow
-6921 451 M
-0 63 V
-0 4435 R
-0 -63 V
-0 -4615 R
-(30) Cshow
-1080 451 M
-5841 0 V
-0 4498 V
--5841 0 V
-0 -4498 V
-504 2700 M
-currentpoint gsave translate 90 rotate 0 0 M
-(Clipped Mode \(ADU\)) Cshow
-grestore
-4000 91 M
-(Clipped Mean \(ADU\)) Cshow
-LT0
-1620 2669 A
-1698 2655 A
-1651 2789 A
-1765 2755 A
-1688 2691 A
-1684 2801 A
-1640 2746 A
-3970 2739 A
-1491 2505 A
-1675 2762 A
-1742 2774 A
-1676 2752 A
-1753 2810 A
-1630 2642 A
-1708 2856 A
-1682 2780 A
-1847 2815 A
-1727 2829 A
-1732 2760 A
-1642 2630 A
-2034 2756 A
-1644 2753 A
-1585 2712 A
-1936 2716 A
-1985 2721 A
-6703 2778 A
-1698 2747 A
-1779 2741 A
-1713 2667 A
-1659 2739 A
-1585 2666 A
-2325 2810 A
-1663 2830 A
-1654 2700 A
-1752 2845 A
-2487 2819 A
-1747 2633 A
-1631 2784 A
-1721 2704 A
-1815 2751 A
-1847 2757 A
-2225 2774 A
-1689 2657 A
-1684 2570 A
-1782 2667 A
-1735 2728 A
-1875 2799 A
-1533 2574 A
-1570 2678 A
-2154 2836 A
-1711 2735 A
-1656 2716 A
-2203 2784 A
-1881 2720 A
-1797 2836 A
-1664 2759 A
-1839 2739 A
-1652 2598 A
-3013 2687 A
-1755 2765 A
-2642 2662 A
-1585 2683 A
-1634 2760 A
-3507 2708 A
-3423 2658 A
-1781 2772 A
-1680 2683 A
-2202 2576 A
-1668 2632 A
-1758 2824 A
-1650 2707 A
-1811 2735 A
-1691 2800 A
-1628 2740 A
-1757 2717 A
-1691 2709 A
-1780 2858 A
-3080 2847 A
-1585 2658 A
-6796 2574 A
-1695 2820 A
-1661 2638 A
-1928 2871 A
-1668 2636 A
-1788 2716 A
-1724 2744 A
-1650 2691 A
-1627 2622 A
-2104 2819 A
-1773 2761 A
-1713 2694 A
-2023 2632 A
-2175 2575 A
-1975 2750 A
-1689 2661 A
-2234 2539 A
-1636 2745 A
-1852 2832 A
-1824 2908 A
-1742 2811 A
-1613 2687 A
-1690 2669 A
-1878 2833 A
-1719 2805 A
-2312 2852 A
-1701 2753 A
-1920 2775 A
-3638 2601 A
-2032 2735 A
-1672 2646 A
-1866 2743 A
-1710 2604 A
-1583 2686 A
-1712 2719 A
-1850 2829 A
-1676 2699 A
-1695 2644 A
-1715 2762 A
-1745 2776 A
-1634 2681 A
-1699 2739 A
-1794 2786 A
-2227 2737 A
-2107 2789 A
-2196 2790 A
-5857 2717 A
-1710 2710 A
-1659 2665 A
-1611 2653 A
-2123 2714 A
-1894 2848 A
-1737 2751 A
-1874 2663 A
-1611 2695 A
-1725 2682 A
-1746 2750 A
-1695 2831 A
-1655 2642 A
-2084 2609 A
-1583 2637 A
-1730 2755 A
-1710 2758 A
-1932 2755 A
-2024 2799 A
-1881 2668 A
-2338 2651 A
-1840 2767 A
-1652 2669 A
-1838 2656 A
-1956 2686 A
-3000 2871 A
-1851 2689 A
-1570 2613 A
-1870 2724 A
-1898 2755 A
-1680 2755 A
-1682 2679 A
-1654 2678 A
-3099 2728 A
-1751 2723 A
-1625 2621 A
-1757 2726 A
-1760 2671 A
-1605 2771 A
-1591 2650 A
-1741 2675 A
-1636 2644 A
-1696 2642 A
-1817 2714 A
-1701 2733 A
-1898 2721 A
-1773 2792 A
-1771 2843 A
-1739 2859 A
-1653 2748 A
-1811 2698 A
-1632 2695 A
-1538 2659 A
-1653 2661 A
-1550 2651 A
-2003 2749 A
-2279 2729 A
-1571 2581 A
-1670 2729 A
-1845 2691 A
-1801 2664 A
-3792 2754 A
-1619 2552 A
-1572 2619 A
-1601 2626 A
-2883 2708 A
-1853 2721 A
-2006 2715 A
-2346 2707 A
-1805 2875 A
-2189 2768 A
-1796 2688 A
-1644 2602 A
-1728 2674 A
-1642 2699 A
-2666 2748 A
-2159 2758 A
-2422 2711 A
-1757 2827 A
-1878 2804 A
-1741 2810 A
-1839 2714 A
-1952 2845 A
-1709 2756 A
-1653 2660 A
-1754 2631 A
-3318 2816 A
-1773 2808 A
-1663 2757 A
-1612 2671 A
-1878 2673 A
-1982 2762 A
-1617 2633 A
-1974 2694 A
-1644 2699 A
-1845 2789 A
-1846 2810 A
-2915 2891 A
-1608 2628 A
-1852 2749 A
-1727 2704 A
-1577 2641 A
-1830 2574 A
-1648 2708 A
-1735 2844 A
-1713 2790 A
-1632 2715 A
-1850 2829 A
-1939 2710 A
-1728 2688 A
-1720 2830 A
-1674 2666 A
-2103 2685 A
-4576 2734 A
-1709 2788 A
-2122 2821 A
-2203 2869 A
-3095 2629 A
-1730 2704 A
-1762 2622 A
-1570 2650 A
-4525 2782 A
-2040 2810 A
-1818 2761 A
-4063 2709 A
-2157 2853 A
-1673 2808 A
-1639 2704 A
-1818 2773 A
-1859 2679 A
-1722 2630 A
-1672 2526 A
-1777 2580 A
-1659 2675 A
-1686 2714 A
-1713 2825 A
-2037 2668 A
-1732 2805 A
-2053 2633 A
-1661 2711 A
-1700 2742 A
-1780 2765 A
-1706 2706 A
-1785 2754 A
-1661 2657 A
-1995 2828 A
-2096 2588 A
-1903 2804 A
-1768 2702 A
-1810 2656 A
-1772 2710 A
-1791 2752 A
-1670 2736 A
-1731 2656 A
-3561 2774 A
-1693 2807 A
-1686 2726 A
-3184 2715 A
-1850 2755 A
-1612 2652 A
-2253 2794 A
-1709 2747 A
-1592 2748 A
-1829 2718 A
-1867 2653 A
-1831 2754 A
-1722 2817 A
-2329 2588 A
-1699 2774 A
-2279 2747 A
-1908 2752 A
-1781 2600 A
-2255 2662 A
-1628 2636 A
-1671 2708 A
-1875 2809 A
-6030 2740 A
-2848 2726 A
-1636 2567 A
-1702 2727 A
-1684 2607 A
-1785 2737 A
-3020 2756 A
-1766 2786 A
-1680 2693 A
-1833 2707 A
-2261 2837 A
-3713 2628 A
-1701 2886 A
-1751 2722 A
-1722 2728 A
-1687 2777 A
-1707 2743 A
-1776 2636 A
-1929 2812 A
-1657 2712 A
-1851 2719 A
-1663 2765 A
-1690 2753 A
-2129 2692 A
-1695 2743 A
-3995 2685 A
-3771 2719 A
-1532 2561 A
-1797 2790 A
-1916 2733 A
-1910 2759 A
-1622 2740 A
-2021 2755 A
-1948 2773 A
-1674 2787 A
-2179 2900 A
-1892 2806 A
-1700 2786 A
-1752 2647 A
-1611 2611 A
-1633 2785 A
-1616 2636 A
-1645 2723 A
-1775 2790 A
-2077 2747 A
-1691 2800 A
-1785 2861 A
-1727 2746 A
-1788 2768 A
-1687 2674 A
-1714 2793 A
-4854 2811 A
-1615 2709 A
-1975 2764 A
-4200 2659 A
-1789 2685 A
-1735 2751 A
-1875 2688 A
-1628 2779 A
-1859 2714 A
-1680 2762 A
-1583 2581 A
-1723 2744 A
-1605 2594 A
-1999 2875 A
-1711 2731 A
-1905 2746 A
-1697 2792 A
-1722 2797 A
-1862 2737 A
-2045 2822 A
-1553 2503 A
-1722 2721 A
-1762 2828 A
-1750 2809 A
-1739 2641 A
-1580 2639 A
-1751 2741 A
-1930 2802 A
-1853 2846 A
-1762 2741 A
-1750 2836 A
-1713 2783 A
-1521 2579 A
-1682 2655 A
-2367 2674 A
-1645 2548 A
-2071 2922 A
-1741 2649 A
-2450 2817 A
-1763 2773 A
-1855 2825 A
-1632 2634 A
-2360 2810 A
-1720 2715 A
-1748 2818 A
-3340 2842 A
-2402 2913 A
-1686 2702 A
-1717 2686 A
-1767 2768 A
-1846 2694 A
-1841 2793 A
-1716 2679 A
-1795 2658 A
-1632 2604 A
-1556 2557 A
-1654 2789 A
-1670 2761 A
-2069 2705 A
-2098 2670 A
-1689 2628 A
-1791 2893 A
-1575 2634 A
-1714 2719 A
-2040 2771 A
-1817 2712 A
-2911 2726 A
-1813 2727 A
-1668 2745 A
-1898 2801 A
-2603 2852 A
-1669 2710 A
-1683 2643 A
-1722 2726 A
-1762 2852 A
-2031 2790 A
-1871 2845 A
-2164 2734 A
-1518 2515 A
-1711 2752 A
-1689 2617 A
-1820 2756 A
-1830 2771 A
-1587 2597 A
-1773 2947 A
-1788 2624 A
-2567 2762 A
-1883 2764 A
-1611 2669 A
-2198 2805 A
-1685 2801 A
-3066 2662 A
-1678 2730 A
-1839 2856 A
-4404 2755 A
-1642 2683 A
-1681 2755 A
-1518 2537 A
-1719 2773 A
-1735 2718 A
-1806 2892 A
-1638 2723 A
-1775 2959 A
-2413 2666 A
-4684 2835 A
-1614 2624 A
-1661 2621 A
-1556 2587 A
-2906 2736 A
-1656 2725 A
-2279 2749 A
-2534 2827 A
-1704 2759 A
-5833 2628 A
-1622 2693 A
-2914 2786 A
-1674 2732 A
-1652 2690 A
-1863 2797 A
-1658 2680 A
-1660 2657 A
-1822 2760 A
-2015 2757 A
-1611 2744 A
-1691 2740 A
-1661 2758 A
-1607 2588 A
-1709 2705 A
-2194 2697 A
-1682 2732 A
-1703 2813 A
-1677 2678 A
-1538 2643 A
-1688 2830 A
-2753 2797 A
-1730 2769 A
-1915 2654 A
-1822 2819 A
-1705 2659 A
-1608 2712 A
-1659 2801 A
-2211 2834 A
-1700 2740 A
-1648 2699 A
-1783 2777 A
-2360 2904 A
-1738 2640 A
-2348 2629 A
-1622 2667 A
-1642 2731 A
-1743 2838 A
-1743 2730 A
-2481 2838 A
-1596 2713 A
-1676 2681 A
-1718 2740 A
-1559 2618 A
-1820 2703 A
-1679 2804 A
-1930 2703 A
-1682 2702 A
-2256 2946 A
-1776 2783 A
-1757 2691 A
-2526 2703 A
-1974 2768 A
-1829 2879 A
-1842 2776 A
-1667 2756 A
-2503 2737 A
-1617 2672 A
-2253 2976 A
-2838 2771 A
-2653 2615 A
-2402 2793 A
-1652 2664 A
-1887 2712 A
-2055 2743 A
-1650 2645 A
-1954 2782 A
-2025 2860 A
-1657 2582 A
-1730 2777 A
-1677 2822 A
-2004 2843 A
-1769 2698 A
-1739 2803 A
-1607 2664 A
-1827 2808 A
-5877 2810 A
-2788 2660 A
-1576 2495 A
-1669 2850 A
-1746 2800 A
-1851 2566 A
-1714 2818 A
-2087 2863 A
-1810 2753 A
-1629 2661 A
-1713 2759 A
-1759 2817 A
-1972 2740 A
-1668 2705 A
-2144 2658 A
-1594 2631 A
-2670 2785 A
-1748 2648 A
-2460 2758 A
-1651 2762 A
-3987 2627 A
-1782 2668 A
-1778 2584 A
-2083 2648 A
-1706 2750 A
-1739 2765 A
-2171 2766 A
-1875 2738 A
-1933 2804 A
-1649 2657 A
-2367 2707 A
-1762 2868 A
-1690 2783 A
-1810 2806 A
-3942 2651 A
-1628 2530 A
-5310 2712 A
-1638 2734 A
-1626 2666 A
-1676 2721 A
-1825 2715 A
-1865 2745 A
-1684 2651 A
-1932 2784 A
-1712 2767 A
-1986 2759 A
-1700 2842 A
-1604 2582 A
-1599 2653 A
-1539 2571 A
-1765 2647 A
-1575 2666 A
-1676 2695 A
-1908 2807 A
-1824 2706 A
-1705 2854 A
-1682 2723 A
-6292 2587 A
-1883 2735 A
-2188 2693 A
-1887 2806 A
-1726 2579 A
-1856 2837 A
-1655 2722 A
-1677 2654 A
-2153 2632 A
-2184 2805 A
-1965 2901 A
-2078 2701 A
-1582 2646 A
-1677 2812 A
-1818 2746 A
-1758 2772 A
-1674 2745 A
-1668 2680 A
-1708 2848 A
-1765 2662 A
-2289 2715 A
-1920 2747 A
-1862 2756 A
-1896 2896 A
-1696 2759 A
-5006 2724 A
-1669 2713 A
-1858 2743 A
-1710 2661 A
-1701 2671 A
-1780 2578 A
-1590 2697 A
-3414 2942 A
-2658 2867 A
-1781 2789 A
-1880 2650 A
-1631 2644 A
-1688 2776 A
-1643 2686 A
-1709 2725 A
-1819 2691 A
-1681 2748 A
-1612 2660 A
-1718 2784 A
-1813 2659 A
-1732 2784 A
-1716 2677 A
-1935 2846 A
-2645 2839 A
-1705 2780 A
-2092 2612 A
-1775 2805 A
-1732 2712 A
-1839 2581 A
-3212 2822 A
-1716 2764 A
-1647 2716 A
-1754 2816 A
-4755 2645 A
-1622 2655 A
-1757 2880 A
-1859 2799 A
-2188 2691 A
-1582 2698 A
-2035 2668 A
-1769 2857 A
-1993 2596 A
-1909 2770 A
-1691 2725 A
-1623 2678 A
-1679 2768 A
-3127 2642 A
-1701 2768 A
-2255 2844 A
-1650 2787 A
-2263 2746 A
-1538 2635 A
-1852 2757 A
-1908 2785 A
-2191 2869 A
-2349 2786 A
-2522 2772 A
-2246 2720 A
-1596 2633 A
-1603 2709 A
-1777 2651 A
-1648 2725 A
-1732 2629 A
-1747 2753 A
-1942 2642 A
-1681 2663 A
-1748 2763 A
-1727 2690 A
-1676 2828 A
-2069 2854 A
-1729 2811 A
-1583 2623 A
-1691 2699 A
-1650 2715 A
-1743 2861 A
-1752 2800 A
-1843 2817 A
-2406 2674 A
-2547 2655 A
-2096 2648 A
-2537 2728 A
-2244 2677 A
-1655 2757 A
-1738 2736 A
-1816 2783 A
-2423 2674 A
-3985 2660 A
-2154 2655 A
-1597 2792 A
-2029 2877 A
-1826 2751 A
-2485 2749 A
-1672 2700 A
-1772 2769 A
-1725 2805 A
-1787 2637 A
-2128 2739 A
-2918 2598 A
-1620 2693 A
-1694 2682 A
-1632 2725 A
-1687 2685 A
-1852 2662 A
-1752 2746 A
-2414 2719 A
-1678 2748 A
-2084 2807 A
-2967 2806 A
-1976 2691 A
-1595 2566 A
-1901 2682 A
-1748 2747 A
-2022 2801 A
-1749 2788 A
-1799 2609 A
-2173 2763 A
-1722 2685 A
-1822 2788 A
-1638 2609 A
-5098 2808 A
-3723 2605 A
-1935 2713 A
-2022 2681 A
-1838 2882 A
-1763 2699 A
-3156 2722 A
-1538 2675 A
-1561 2502 A
-1852 2782 A
-1702 2748 A
-1549 2601 A
-1731 2817 A
-1688 2709 A
-1670 2546 A
-1585 2683 A
-1791 2748 A
-1709 2656 A
-1777 2801 A
-1674 2750 A
-1745 2676 A
-1974 2665 A
-1953 2568 A
-1699 2764 A
-1636 2714 A
-1754 2724 A
-1973 2716 A
-1611 2650 A
-4235 2684 A
-1699 2567 A
-1645 2606 A
-1790 2783 A
-1826 2741 A
-1786 2639 A
-1876 2579 A
-1711 2705 A
-1613 2740 A
-1559 2634 A
-1679 2703 A
-2276 2668 A
-1831 2820 A
-1728 2802 A
-2233 2786 A
-1960 2796 A
-2189 2868 A
-1788 2832 A
-1680 2755 A
-2036 2774 A
-1825 2668 A
-1561 2611 A
-1844 2631 A
-1592 2615 A
-1975 2681 A
-1674 2770 A
-3719 2688 A
-4399 2672 A
-2120 2862 A
-2304 2769 A
-1638 2655 A
-1673 2778 A
-3251 2591 A
-2187 2828 A
-1664 2706 A
-1811 2639 A
-1537 2564 A
-1837 2821 A
-1823 2732 A
-1874 2784 A
-1764 2694 A
-1805 2715 A
-1942 2716 A
-1628 2581 A
-1635 2758 A
-1867 2718 A
-1697 2681 A
-1672 2750 A
-2021 2796 A
-1948 2692 A
-1805 2757 A
-2495 2789 A
-1660 2778 A
-1843 2766 A
-1598 2551 A
-1659 2875 A
-1653 2708 A
-1649 2695 A
-1588 2667 A
-1681 2742 A
-1863 2805 A
-1728 2600 A
-1837 2624 A
-1700 2723 A
-1976 2719 A
-2987 2632 A
-1773 2784 A
-2009 2772 A
-1792 2843 A
-1663 2666 A
-1770 2799 A
-1767 2755 A
-1588 2502 A
-1715 2793 A
-1834 2803 A
-1662 2647 A
-1693 2773 A
-2390 2750 A
-1747 2784 A
-1664 2734 A
-1979 2786 A
-2747 2773 A
-2877 2672 A
-2234 2746 A
-1668 2744 A
-1706 2701 A
-2712 2900 A
-1799 2813 A
-2162 2757 A
-1723 2806 A
-1747 2745 A
-1728 2594 A
-1741 2790 A
-1705 2811 A
-1755 2849 A
-1862 2790 A
-1651 2679 A
-1659 2711 A
-1674 2698 A
-1610 2745 A
-1651 2669 A
-1615 2728 A
-1842 2729 A
-1800 2890 A
-1613 2728 A
-2086 2599 A
-3280 2755 A
-3622 2659 A
-2940 2685 A
-2153 2782 A
-4223 2794 A
-1744 2797 A
-1709 2732 A
-1730 2811 A
-1806 2785 A
-2097 2819 A
-3611 2648 A
-2457 2770 A
-1797 2744 A
-2102 2889 A
-1958 2729 A
-1766 2684 A
-1750 2754 A
-1718 2691 A
-1770 2782 A
-1743 2713 A
-1707 2674 A
-1876 2878 A
-1612 2679 A
-1956 2705 A
-1641 2758 A
-1970 2729 A
-2025 2749 A
-1705 2733 A
-1739 2884 A
-1661 2697 A
-1770 2797 A
-1684 2716 A
-1713 2640 A
-2353 2736 A
-1896 2767 A
-1689 2658 A
-1606 2706 A
-1754 2703 A
-1896 2859 A
-1786 2693 A
-1966 2776 A
-1668 2665 A
-1718 2766 A
-1748 2876 A
-2680 2777 A
-1667 2645 A
-1867 2771 A
-1970 2866 A
-2327 2775 A
-1863 2723 A
-1599 2572 A
-1726 2806 A
-1947 2853 A
-1593 2604 A
-1720 2820 A
-2438 2801 A
-1586 2524 A
-4379 2757 A
-2376 2650 A
-1660 2799 A
-1841 2755 A
-1616 2679 A
-1702 2722 A
-1774 2638 A
-1758 2815 A
-2029 2749 A
-2115 2671 A
-1899 2978 A
-1710 2742 A
-1863 2795 A
-1598 2636 A
-4342 2770 A
-1666 2757 A
-1695 2759 A
-1867 2683 A
-2014 2885 A
-3006 2716 A
-1744 2800 A
-1543 2575 A
-1747 2797 A
-1803 2914 A
-1848 2844 A
-1841 2811 A
-1817 2834 A
-1692 2708 A
-1629 2720 A
-2678 2734 A
-1729 2699 A
-1769 2764 A
-1700 2768 A
-1615 2675 A
-1728 2669 A
-1934 2808 A
-1665 2723 A
-1720 2815 A
-1763 2858 A
-1743 2698 A
-2917 2746 A
-1684 2748 A
-1688 2674 A
-1646 2736 A
-3068 2799 A
-1875 2997 A
-1605 2711 A
-1618 2718 A
-1530 2550 A
-1668 2714 A
-1658 2762 A
-1583 2657 A
-1567 2504 A
-1854 2643 A
-stroke
-grestore
-end
-showpage
-%%Trailer
-
-%%EndDocument
- @endspecial 0 2015 a Fv(Figure)23 b(2:)38 b(Sim)m(ulations)20
-b(of)k(32)6 b Fq(\002)g Fv(32)25 b(pixels)d(bac)m(kground)h(meshes)g(p)
-s(olluted)e(b)m(y)j(random)e(Gaussian)h(pro\014les.)0
-2128 y(The)35 b(true)g(bac)m(kground)h(lies)e(at)i(0)g(ADU.)h(While)d
-(b)s(eing)g(sligh)m(tly)g(noisier,)h(the)h(clipp)s(ed)d(\\Mo)s(de")j
-(giv)m(es)g(a)0 2241 y(more)31 b(robust)e(estimate)i(than)f(a)h(clipp)s
-(ed)d(Mean)j(in)e(cro)m(wded)h(regions.)0 2516 y Ft(6.1.1)105
-b(Con\014guration)36 b(parameters)d(and)i(tuning)0 2735
-y Fv(.)42 b(The)30 b(c)m(hoice)h(of)g(the)g(mesh)f(size)h(\()p
-Fs(BACK)p 1424 2735 29 4 v 33 w(SIZE)p Fv(\))f(is)g(v)m(ery)h(imp)s
-(ortan)m(t.)41 b(If)30 b(it)g(is)g(to)s(o)h(small,)f(the)h(bac)m
-(kground)0 2848 y(estimation)i(is)g(a\013ected)i(b)m(y)e(the)h
-(presence)f(of)h(ob)5 b(jects)34 b(and)f(random)g(noise.)49
-b(Most)35 b(imp)s(ortan)m(tly)-8 b(,)33 b(part)g(of)0
-2960 y(the)c(\015ux)f(of)h(the)f(most)i(extended)e(ob)5
-b(jects)30 b(can)f(b)s(e)f(absorb)s(ed)f(in)h(the)h(bac)m(kground)f
-(map.)40 b(If)28 b(the)h(mesh)g(size)0 3073 y(is)f(to)s(o)h(large,)g
-(it)f(cannot)i(repro)s(duce)d(the)i(small)e(scale)i(v)-5
-b(ariations)28 b(of)g(the)h(bac)m(kground.)40 b(Therefore)29
-b(a)g(go)s(o)s(d)0 3186 y(compromise)f(has)h(to)h(b)s(e)e(found)g(b)m
-(y)h(the)g(user.)40 b(T)m(ypically)-8 b(,)28 b(for)h(reasonably)f
-(sampled)g(images,)h(a)h(width)3640 3153 y Fo(7)3706
-3186 y Fv(of)0 3299 y(32)i(to)f(256)i(pixels)c(w)m(orks)i(w)m(ell.)41
-b(The)30 b(user)h(has)f(some)i(con)m(trol)f(o)m(v)m(er)h(the)f(bac)m
-(kground)g(map)g(b)m(y)g(sp)s(ecifying)0 3412 y(the)26
-b(size)g(of)g(the)g(median)f(\014lter)g(\()p Fs(BACK)p
-1331 3412 V 33 w(FILTERSIZE)p Fv(\).)f(A)i(width)e(and)i(heigh)m(t)g
-(of)g(1)g(means)g(that)g(no)g(\014ltering)0 3525 y(will)d(b)s(e)h
-(applied)f(to)j(the)g(bac)m(kground)f(grid.)38 b(Usually)23
-b(a)j(size)f(of)h(3)10 b Fq(\002)g Fv(3)26 b(is)e(enough,)i(but)f(it)g
-(ma)m(y)g(b)s(e)g(necessary)0 3638 y(to)30 b(use)e(larger)h
-(dimensions,)e(esp)s(ecially)g(to)i(comp)s(ensate,)h(in)e(part,)h(for)g
-(small)e(bac)m(kground)i(mesh)f(sizes,)h(or)0 3751 y(in)d(the)i(case)h
-(of)f(large)g(artefacts)h(in)d(the)i(images.)40 b(Median)27
-b(\014ltering)f(also)i(helps)e(reducing)g(p)s(ossible)f(ringing)0
-3864 y(e\013ects)32 b(of)f(the)g(bicubic-spline)c(around)j(brigh)m(t)f
-(features.)43 b(In)30 b(some)h(sp)s(eci\014c)f(cases)h(it)g(migh)m(t)f
-(b)s(e)g(desirable)0 3977 y(to)e(median-\014lter)e(only)g(bac)m
-(kground)i(meshes)f(whose)g(original)f(v)-5 b(alues)26
-b(exceed)j(some)f(threshold)e(ab)s(o)m(v)m(e)i(the)0
-4090 y(\014ltered-v)-5 b(alue.)38 b(This)25 b(di\013eren)m(tial)g
-(threshold)g(is)h(set)h(b)m(y)f(the)h Fs(BACK)p 2327
-4090 V 33 w(FILTERTHRESH)c Fv(parameter,)28 b(in)e(ADUs.)0
-4202 y(It)i(is)g(imp)s(ortan)m(t)f(to)i(note)g(that)g(all)e
-Fs(BACK)p 1439 4202 V 61 w Fv(con\014guration)h(parameters)g(also)g
-(a\013ect)i(the)f(bac)m(kground-RMS)0 4315 y(map.)0 4476
-y(It)h(is)f(p)s(ossible)f(to)j(subtract)f(a)h(user-supplied)26
-b(v)-5 b(alue,)30 b(whic)m(h)f(can)i(b)s(e)e(zero)i(if)e(no)h(bac)m
-(kground-subtraction)0 4588 y(is)f(w)m(an)m(ted.)0 4876
-y Ft(6.1.2)105 b(CPU)36 b(cost)0 5095 y Fv(.)k(The)29
-b(bac)m(kground)g(estimation)g(op)s(eration)g(can)g(tak)m(e)i(a)f
-(considerable)e(time)h(on)g(the)h(largest)f(images,)h(e.g.)0
-5208 y(10)h(min)m(utes)f(for)g(a)h(32000)22 b Fq(\002)e
-Fv(32000)32 b(frame)f(on)f(a)h(P)m(en)m(tium2 at 450MHz.)p
-0 5269 1512 4 v 104 5323 a Fn(7)138 5355 y Fm(SExtractor)20
-b(o\013ers)h(the)f(p)r(ossibilit)n(y)g(of)h(rectangular)g(bac)n
-(kground)f(meshes;)h(but)e(it)h(is)h(advised)f(to)g(use)g(square)g
-(ones,)i(except)0 5446 y(in)k(some)f(v)n(ery)g(sp)r(ecial)i(cases)g
-(\(rapidly)e(v)l(arying)g(bac)n(kground)g(in)h(one)g(direction)g(for)g
-(example\).)1844 5753 y Fv(15)p eop
-%%Page: 16 16
-16 15 bop 0 -74 a Fp(6.2)112 b(Filtering)0 145 y Ft(6.2.1)105
-b(Con)m(v)m(olution)0 364 y Fv(Detectabilit)m(y)33 b(is)e(generally)g
-(limited)f(at)j(the)f(fain)m(test)h(\015ux)e(lev)m(els)h(b)m(y)g(a)g
-(bac)m(kground)g(noise.)46 b(The)31 b(p)s(o)m(w)m(er-)0
-477 y(sp)s(ectrum)g(of)h(the)h(noise)e(and)h(that)g(of)h(the)f(sup)s
-(erimp)s(osed)d(signal)i(can)h(b)s(e)g(signi\014can)m(tly)e(di\013eren)
-m(t.)45 b(Some)0 590 y(gain)24 b(in)f(the)h(abilit)m(y)f(to)i(detect)h
-(sources)e(ma)m(y)h(therefore)g(b)s(e)f(obtained)f(simply)f(through)i
-(appropriate)f(linear)0 703 y(\014ltering)28 b(of)i(the)g(data,)h
-(prior)d(to)i(segmen)m(tation.)42 b(In)29 b(lo)m(w)g(densit)m(y)g
-(\014elds,)g(an)g(optimal)g(con)m(v)m(olution)h(k)m(ernel)0
-815 y Fk(h)e Fv(\(\\matc)m(hed)i(\014lter"\))e(can)g(b)s(e)f(found)g
-(that)h(maximizes)f(detectabilit)m(y)-8 b(.)41 b(An)27
-b(estimator)h(of)h(detectabilit)m(y)e(is)0 928 y(for)j(instance)g(the)h
-(signal-to-noise)f(ratio)g(at)h(source)g(p)s(osition)d(\()p
-Fk(x)2287 942 y Fo(0)2327 928 y Fk(;)15 b(y)2424 942
-y Fo(0)2463 928 y Fv(\))26 b Fq(\021)f Fv(\(0)p Fk(;)15
-b Fv(0\):)1344 1078 y Fg(\022)1424 1135 y Fv(S)p 1415
-1176 69 4 v 1415 1259 a(N)1493 1078 y Fg(\023)1554 1100
-y Fo(2)1619 1197 y Fq(\021)1725 1135 y Fv(\(\()p Fk(s)21
-b Fq(\003)f Fk(h)p Fv(\)\()p Fk(x)2098 1149 y Fo(0)2139
-1135 y Fk(;)15 b(y)2236 1149 y Fo(0)2275 1135 y Fv(\)\))2346
-1094 y Fo(2)p 1725 1176 660 4 v 1904 1192 303 4 v 1904
-1271 a Fv(\()p Fk(n)20 b Fq(\003)g Fk(h)p Fv(\))2166
-1245 y Fo(2)2410 1197 y Fk(;)1228 b Fv(\(3\))0 1457 y(where)33
-b Fk(s)g Fv(is)g(the)h(signal)e(to)j(b)s(e)e(detected,)j
-Fk(n)d Fv(the)h(noise,)g(and)f(`)p Fq(\003)p Fv(')h(the)g(con)m(v)m
-(olution)g(op)s(erator.)51 b(Mo)m(ving)34 b(to)0 1570
-y(F)-8 b(ourier)30 b(space,)h(w)m(e)g(get:)1405 1624
-y Fg(\022)1485 1681 y Fv(S)p 1476 1722 69 4 v 1476 1805
-a(N)1554 1624 y Fg(\023)1615 1645 y Fo(2)1680 1743 y
-Fv(=)1834 1681 y(\()1869 1612 y Fg(R)1940 1681 y Fq(S)7
-b(H)15 b Fk(d!)t Fv(\))2237 1639 y Fo(2)p 1786 1722 539
-4 v 1786 1736 a Fg(R)1856 1805 y Fq(jN)e(j)1994 1779
-y Fo(2)2034 1805 y Fq(jH)q(j)2162 1779 y Fo(2)2217 1805
-y Fk(d!)2349 1743 y(;)1289 b Fv(\(4\))0 1967 y(where)41
-b Fq(S)49 b Fv(and)41 b Fq(H)i Fv(are)f(the)g(F)-8 b(ourier-transforms)
-41 b(of)h Fk(s)g Fv(and)f Fk(h)p Fv(,)k(resp)s(ectiv)m(ely)-8
-b(,)45 b(and)c Fq(jN)13 b(j)3161 1934 y Fo(2)3243 1967
-y Fv(is)41 b(the)h(p)s(o)m(w)m(er-)0 2079 y(sp)s(ectrum)29
-b(of)i(the)f(noise.)40 b(Remarking,)30 b(using)f(Sc)m(h)m(w)m(artz)j
-(inequalit)m(y)-8 b(,)29 b(that)1089 2213 y Fg(\014)1089
-2263 y(\014)1089 2313 y(\014)1089 2363 y(\014)1117 2221
-y(Z)1215 2336 y Fq(S)7 b(H)16 b Fk(d!)1477 2213 y Fg(\014)1477
-2263 y(\014)1477 2313 y(\014)1477 2363 y(\014)1505 2240
-y Fo(2)1569 2336 y Fq(\024)1665 2221 y Fg(Z)1787 2274
-y Fq(jS)7 b(j)1899 2241 y Fo(2)p 1774 2315 178 4 v 1774
-2398 a Fq(jN)13 b(j)1912 2372 y Fo(2)1961 2336 y Fk(d!)2099
-2221 y Fg(Z)2197 2336 y Fq(jN)g(j)2335 2298 y Fo(2)2375
-2336 y Fq(jH)q(j)2503 2298 y Fo(2)2543 2336 y Fk(d!)18
-b(;)973 b Fv(\(5\))0 2583 y(w)m(e)31 b(see)g(that)1482
-2613 y Fg(\022)1562 2670 y Fv(S)p 1554 2711 69 4 v 1554
-2794 a(N)1632 2613 y Fg(\023)1693 2635 y Fo(2)1757 2732
-y Fq(\024)1853 2617 y Fg(Z)1975 2670 y Fq(jS)7 b(j)2087
-2637 y Fo(2)p 1962 2711 178 4 v 1962 2794 a Fq(jN)13
-b(j)2100 2768 y Fo(2)2149 2732 y Fk(d!)19 b(:)1366 b
-Fv(\(6\))0 2947 y(Equalit)m(y)29 b(\(maxim)m(um)h(S/N\))h(in)e(\(5\))i
-(and)f(\(6\))i(is)d(ac)m(hiev)m(ed)i(for)1514 3132 y
-Fq(S)p 1475 3172 139 4 v 1475 3256 a(jN)13 b(j)1649 3193
-y(/)25 b(jN)13 b(jH)1961 3156 y Fj(\003)2016 3193 y Fk(;)30
-b Fv(that)15 b(is)1349 b(\(7\))1679 3503 y Fq(H)26 b(/)1926
-3442 y(S)1988 3409 y Fj(\003)p 1888 3482 178 4 v 1888
-3566 a Fq(jN)13 b(j)2026 3540 y Fo(2)2075 3503 y Fk(:)1563
-b Fv(\(8\))0 3719 y(In)26 b(the)g(case)h(of)g(white)e(noise)h(\(a)h(v)
--5 b(alid)25 b(appro)m(ximation)g(for)h(man)m(y)h(astronomical)f
-(images,)h(esp)s(ecially)e(CCD)0 3832 y(ones\),)36 b
-Fq(jN)13 b(j)406 3799 y Fo(2)477 3832 y Fv(=)32 b Fk(cste)15
-b Fv(;)36 b(the)f(optimal)e(con)m(v)m(olution)h(k)m(ernel)g(for)g
-(detecting)h(stars)f(is)f(then)h(the)g(PSF)g(\015ipp)s(ed)0
-3945 y(o)m(v)m(er)c(the)f Fk(x)g Fv(and)g Fk(y)i Fv(directions.)39
-b(It)29 b(ma)m(y)h(also)f(b)s(e)f(describ)s(ed)f(as)i(the)g
-(cross-correlation)g(with)f(the)h(template)0 4058 y(of)i(the)f(sources)
-g(to)i(b)s(e)d(detected)j(\(for)e(more)h(details)e(see,)j(e.g.)41
-b(Bijaoui)30 b(&)g(Dan)m(tel)h(1970,)h(or)f(Das)g(1991\).)0
-4218 y(There)21 b(are)h(of)g(course)f(a)h(few)g(problems)e(with)g(this)
-g(metho)s(d.)38 b(First)20 b(of)i(all,)h(man)m(y)e(sources)h(of)g
-(unquestionable)0 4331 y(in)m(terest,)48 b(lik)m(e)43
-b(galaxies,)k(app)s(ear)c(in)g(a)h(v)-5 b(ariet)m(y)44
-b(of)g(shap)s(es)f(and)g(scales)h(on)g(astronomical)f(images.)81
-b(A)0 4444 y(p)s(erfectly)37 b(optimized)f(detection)i(routine)e
-(should)g(ultimately)g(apply)g(all)g(relev)-5 b(an)m(t)38
-b(con)m(v)m(olution)f(k)m(ernels)0 4557 y(one)23 b(after)g(the)g(other)
-g(in)e(order)h(to)h(mak)m(e)h(a)f(complete)g(catalog.)40
-b(Appro)m(ximations)21 b(to)i(this)e(approac)m(h)i(are)g(the)0
-4670 y(\(isotropic\))35 b(w)m(a)m(v)m(elet)h(analysis)e(men)m(tioned)g
-(earlier,)h(or)g(the)g(more)g(empirical)e(ImCat)i(algorithm)f(\(Kaiser)
-0 4782 y(et)25 b(al.)f(1995\),)j(for)d(b)s(oth)f(of)h(whic)m(h)f
-(sources)h(to)h(detect)g(are)f(assumed)g(to)g(b)s(e)g(reasonably)f
-(round.)37 b(The)24 b(impact)0 4895 y(on)30 b(memory)f(usage)h(and)f
-(pro)s(cessing)g(sp)s(eed)f(of)i(suc)m(h)f(re\014nemen)m(ts)h(is)e
-(curren)m(tly)h(judged)g(to)s(o)h(sev)m(ere)h(to)f(b)s(e)0
-5008 y(applied)i(in)g(SExtractor.)52 b(Simple)31 b(\014ltering)i(do)s
-(es)g(a)h(go)s(o)s(d)g(job)g(in)e(general:)48 b(the)34
-b(top)s(ological)f(constrain)m(ts)0 5121 y(added)21 b(b)m(y)i(the)f
-(segmen)m(tation)h(pro)s(cess)f(mak)m(e)h(the)f(detection)h(somewhat)g
-(toleran)m(t)g(to)m(w)m(ards)g(larger)e(ob)5 b(jects.)0
-5234 y(Extended,)33 b(v)m(ery)g(Lo)m(w-Surface-Brigh)m(tness)f(\(LSB\))
-h(features)g(found)e(in)g(astronomical)i(images)f(are)h(often)0
-5347 y(artifacts)h(\(\015at-\014elding)d(errors,)j(optical)e(\\ghosts")
-j(or)e(halos\).)49 b(Ho)m(w)m(ev)m(er,)36 b(it)c(is)g(true)h(that)h
-(some)f(of)h(them)0 5460 y(can)d(b)s(e)g(gen)m(uine)f(ob)5
-b(jects,)33 b(lik)m(e)d(LSB)h(galaxies,)g(or)g(distan)m(t)g(galaxy)h
-(clusters)e(burried)f(in)g(the)j(bac)m(kground)1844 5753
-y(16)p eop
-%%Page: 17 17
-17 16 bop 0 -74 a Fv(noise.)40 b(F)-8 b(or)30 b(detecting)g(those)g
-(with)e(soft)m(w)m(are)i(lik)m(e)f(SExtractor,)h(a)g(sp)s(eci\014c)e
-(pro)s(cessing)g(is)g(needed)h(\(see)i(for)0 39 y(instance)22
-b(Dalcan)m(ton)j(et)e(al.)g(1997)h(and)f(references)g(therein\).)37
-b(The)22 b(simplest)f(w)m(a)m(y)j(to)g(ac)m(hiev)m(e)g(the)f(detection)
-0 152 y(of)31 b(extended)f(LSB)g(ob)5 b(jects)31 b(in)e(SExtractor)i
-(is)e(to)j(w)m(ork)e(on)g Fs(MINIBACK)e Fv(c)m(hec)m(k-images)33
-b(\(see)e Fq(x)p Ft(??)q Fv(\).)0 312 y(A)36 b(second)g(problem)e(ma)m
-(y)i(o)s(ccur)g(b)s(ecause)g(of)g(o)m(v)m(erlaps)g(with)f(other)h(ob)5
-b(jects.)57 b(Con)m(v)m(olving)36 b(with)e(a)i(lo)m(w-)0
-425 y(pass)h(\014lter)f(\(the)h(PSF)g(has)g(no)f(negativ)m(e)j
-(side-lob)s(es\))c(diminishes)e(the)k(con)m(trast)i(b)s(et)m(w)m(een)e
-(ob)5 b(jects,)40 b(and)0 538 y(mak)m(es)e(segmen)m(tation)h(less)d
-(e\013ectiv)m(e)j(in)d(isolating)g(individual)c(sources.)62
-b(This)35 b(can)j(to)g(some)f(exten)m(t)i(b)s(e)0 651
-y(reco)m(v)m(ered)30 b(b)m(y)d(deblending)e(\(see)k Fq(x)p
-Fv(6.4\).)42 b(In)27 b(sev)m(erely)h(cro)m(wded)g(\014elds)e(ho)m(w)m
-(ev)m(er,)k(confusion)d(noise)g(b)s(ecomes)0 764 y(the)e(limiting)d
-(factor)k(for)f(detection,)i(and)d(it)h(is)f(then)g(advisable)g(not)h
-(to)h(\014lter)e(at)i(all,)f(or)g(to)h(use)e(a)i(bandpass-)0
-877 y(\014lter)j(\(comp)s(ensated)i(\014lter\).)0 1037
-y(Finally)-8 b(,)24 b(the)g(PSF)g(app)s(ears)f(sometimes)h(to)g(b)s(e)g
-(v)-5 b(ariable)22 b(across)j(the)f(\014eld.)37 b(The)24
-b(con)m(v)m(olution)g(mask)f(should)0 1150 y(ideally)36
-b(follo)m(w)h(these)i(c)m(hanges)g(in)e(order)g(to)i(allo)m(w)f(for)g
-(optimal)f(detection)h(ev)m(erywhere)h(in)e(the)h(image.)0
-1263 y(Ho)m(w)m(ev)m(er,)33 b(considering)c(appro)m(ximately-Gaussian)h
-(PSF)h(cores)h(and)e(con)m(v)m(olution)h(k)m(ernels,)g(detectabilit)m
-(y)0 1375 y(is)38 b(a)h(rather)f(slo)m(w)h(function)e(of)i(their)f
-(FWHMs)1715 1342 y Fo(8)1755 1375 y Fv(:)57 b(a)39 b(mismatc)m(h)g(as)g
-(large)g(as)f(50\045)i(b)s(et)m(w)m(een)f(the)g(k)m(ernel)0
-1488 y(FWHM)d(and)f(that)g(of)g(the)g(PSF)g(will)d(lead)j(to)h(no)e
-(more)i(than)e(a)i(10\045)f(loss)g(in)e(p)s(eak)i(S/N)g(\(Irwin)e
-(1985\).)0 1601 y(Considering)26 b(that)k(PSF)f(v)-5
-b(ariations)28 b(are)h(generally)g(m)m(uc)m(h)g(smaller)e(than)i(this,)
-g(\014ltering)e(in)h(SExtractor)h(is)0 1714 y(limited)f(to)j(constan)m
-(t)h(k)m(ernels.)0 2002 y Ft(6.2.2)105 b(Non-linear)35
-b(\014ltering)0 2220 y Fv(There)41 b(are)g(man)m(y)h(situations)e(in)g
-(whic)m(h)g(con)m(v)m(olution)h(is)f(of)h(little)g(help:)61
-b(\014ltering)39 b(of)i(\(strongly\))h(non-)0 2333 y(Gaussian)27
-b(noise,)i(extraction)f(of)h(sp)s(eci\014c)e(image)h(patterns,...)41
-b(In)27 b(those)i(cases,)h(one)e(w)m(ould)f(lik)m(e)g(to)i(extend)0
-2446 y(the)e(concept)h(of)f(a)h(con)m(v)m(olution)f(k)m(ernel)f(to)i
-(that)f(of)g(a)h(more)f(general)g(stationnary)g(\014lter,)g(able)f(for)
-h(instance)0 2559 y(to)35 b(mimic)m(k)d(b)s(o)s(olean-lik)m(e)h(op)s
-(erations)g(on)g(pixels.)49 b(What)35 b(one)f(w)m(an)m(ts)g(lik)m(e)f
-(is)g(th)m(us)h(a)g(mapping)e(from)h Ft(R)3732 2526 y
-Fi(n)0 2672 y Fv(to)h Ft(R)f Fv(around)f(eac)m(h)i(pixel.)47
-b(But)33 b(the)h(more)f(general)g(the)g(\014lter,)g(the)g(more)h
-(di\016cult)c(it)j(is)f(to)i(design)e(\\b)m(y-)0 2785
-y(hand")i(for)h(eac)m(h)i(case,)g(sp)s(ecifying)c(ho)m(w)i(input)f
-(pixel)f(#i)h(should)f(b)s(e)i(tak)m(en)h(in)m(to)f(accoun)m(t)i(with)c
-(resp)s(ect)0 2898 y(to)40 b(input)e(pixel)g(#j)h(to)h(form)f(the)h
-(output,)h(etc..)70 b(The)39 b(solution)f(to)i(this)e(is)h(mac)m
-(hine-learning.)67 b(Giv)m(en)0 3011 y(a)39 b(training)f(set)h(con)m
-(taining)g(input)e(and)i(output)f(pixels,)i(a)f(mac)m(hine-learning)f
-(soft)m(w)m(are)i(will)d(adapt)i(its)0 3124 y(in)m(ternal)30
-b(parameters)i(in)f(order)g(to)h(minimize)d(a)k(\\cost)g(function")d
-(\(generally)i(a)g Fk(\037)2930 3091 y Fo(2)3001 3124
-y Fv(error\))f(and)g(con)m(v)m(erge)0 3237 y(to)m(w)m(ard)f(the)f
-(desired)f(mapping-function.)37 b(These)29 b(parameters)h(can)f(then)g
-(for)f(example)h(b)s(e)g(reloaded)f(b)m(y)h(a)0 3350
-y(\\read-only")i(routine)e(to)i(pro)m(vide)f(the)g(actual)h
-(\014ltering.)0 3510 y(SExtractor)47 b(implemen)m(ts)e(this)h(kind)f
-(of)h(\\read-only")h(functionnalit)m(y)e(in)g(the)i(form)f(of)h(the)g
-(so-called)0 3623 y(\\retina-\014ltering".)66 b(The)39
-b Ft(EyE)1143 3590 y Fo(9)1221 3623 y Fv(soft)m(w)m(are)h(\(Bertin)f
-(1997\))i(p)s(erforms)d(neural-net)m(w)m(ork-learning)f(on)i(in-)0
-3736 y(put)33 b(and)g(output)g(images)g(to)h(pro)s(duce)f
-(\\retina-\014les".)49 b(These)33 b(\014les)g(con)m(tain)h(w)m(eigh)m
-(ts)f(that)h(describ)s(e)e(the)0 3848 y(b)s(eha)m(viour)e(of)i(the)f
-(neural)f(net)m(w)m(ork.)45 b(The)31 b(neural)f(net)m(w)m(ork)j(can)f
-(th)m(us)f(b)s(e)f(seen)i(as)g(an)f(\\arti\014cial)f(retina")0
-3961 y(that)d(tak)m(es)g(its)f(stim)m(uli)d(from)j(a)g(small)f
-(rectangular)h(arra)m(y)g(of)h(pixels)d(and)h(pro)s(duces)g(a)h(resp)s
-(onse)f(according)0 4074 y(to)38 b(prior)d(learning)g(\(for)i(more)g
-(details,)h(see)f(the)h Ft(EyE)e Fv(do)s(cumen)m(tation\).)60
-b(T)m(ypical)36 b(applications)f(of)i(the)0 4187 y(retina)30
-b(are)h(the)f(iden)m(ti\014cation)f(of)i(glitc)m(hes.)0
-4475 y Ft(6.2.3)105 b(What)35 b(is)g(\014ltered,)g(and)g(what)e(isn't)0
-4693 y Fv(Although)38 b(\014ltering)f(is)g(a)i(b)s(ene\014t)f(for)h
-(detection,)i(it)d(distorts)g(pro\014les)f(and)i(correlates)g(the)g
-(noise;)j(it)c(is)0 4806 y(therefore)28 b(nefast)h(for)e(most)h
-(measuremen)m(t)h(tasks.)40 b(Because)29 b(of)f(this,)g(\014ltering)e
-(is)h(applied)f(\\on)i(the)g(\015y")g(to)0 4919 y(the)d(image,)i(and)d
-Fr(dir)-5 b(e)g(ctly)26 b Fv(a\013ects)h(only)d(the)h(detection)g(pro)s
-(cess)g(and)f(the)h(isophotal)f(parameters)i(describ)s(ed)0
-5032 y(in)34 b Fq(x)p Fv(9.1.)55 b(Other)35 b(catalog)h(parameters)g
-(are)f(indirectly)d(a\013ected)37 b(|)d(through)h(the)g(exact)h(p)s
-(osition)d(of)i(the)0 5145 y(barycen)m(ter)26 b(and)e(t)m(ypical)h(ob)5
-b(ject)25 b(exten)m(t)i(|,)f(but)e(the)h(e\013ect)i(is)d(considerably)f
-(less.)38 b(Ob)m(viously)-8 b(,)25 b(in)f(double-)0 5258
-y(image)31 b(mo)s(de,)f(\014ltering)e(is)i(only)f(applied)g(to)i(the)f
-Fr(dete)-5 b(ction)47 b Fv(image.)p 0 5319 1512 4 v 104
-5373 a Fn(8)138 5405 y Fm(F)-6 b(ull-Width)25 b(at)h(Half-Maxim)n(um)
-104 5464 y Fn(9)138 5496 y Fh(Enhanc)l(e)j(Y)-6 b(our)28
-b(Extr)l(action)1844 5753 y Fv(17)p eop
-%%Page: 18 18
-18 17 bop 0 -74 a Ft(6.2.4)105 b(Image)34 b(b)s(oundaries)h(and)g(bad)g
-(pixels)0 145 y Fv(\\Virtual")30 b(pixels)f(that)i(lie)f(outside)g
-(image)h(b)s(oundaries)d(are)j(arbitrarily)d(set)k(to)f(zero.)43
-b(This)29 b(mak)m(es)i(sense)0 258 y(since)43 b(\014ltering)g(o)s
-(ccurs)g(on)h(a)h(bac)m(kground-subtracted)f(image.)82
-b(When)44 b(w)m(eigh)m(ting)f(is)h(applied)d(\()p Fq(x)p
-Ft(??)r Fv(\),)0 371 y(bad)30 b(pixels)f(\(pixels)g(with)g(w)m(eigh)m
-(t)i Fk(<)f Fs(WEIGHT)p 1614 371 29 4 v 32 w(THRESH)p
-Fv(\))g(are)g(in)m(terp)s(olated)g(b)m(y)g(default)g(\()p
-Fq(x)p Fv(7.5\))j(and)c(should)0 484 y(therefore)h(not)f(cause)h(m)m
-(uc)m(h)g(trouble.)39 b(It)29 b(is)g(recommended)g(not)g(to)h
-(turn-o\013)f(in)m(terp)s(olation)f(of)i(bad)e(pixels)0
-597 y(when)h(\014ltering)g(is)g(on.)0 884 y Ft(6.2.5)105
-b(Con\014guration)36 b(parameters.)0 1103 y Fv(Filtering)30
-b(is)h(triggered)h(when)f(the)h Fs(FILTER)e Fv(k)m(eyw)m(ord)j(is)e
-(set)h(to)h Fs(Y)p Fv(.)f(If)f(activ)m(e,)j(a)f(\014le)e(with)f(name)i
-(sp)s(eci\014ed)0 1216 y(b)m(y)g Fs(FILTER)p 422 1216
-V 33 w(NAME)e Fv(is)i(searc)m(hed)g(for)g(and)f(loaded.)45
-b(Filtering)31 b(with)g(large)h(retinas)f(can)h(b)s(e)g(extremely)g
-(time)0 1329 y(consuming.)74 b(In)41 b(man)m(y)h(cases,)k(one)c(is)f
-(only)g(in)m(terested)g(in)g(\014ltering)f(pixels)g(whose)i(v)-5
-b(alues)41 b(stand)g(out)0 1442 y(from)32 b(the)h(bac)m(kground)f
-(noise.)46 b(The)32 b Fs(FILTER)p 1620 1442 V 33 w(THRESH)46
-b(keyword)31 b Fv(can)h(b)s(e)g(giv)m(en)h(to)g(sp)s(ecify)e(the)h
-(range)h(of)0 1554 y(pixel)c(v)-5 b(alues)30 b(within)e(whic)m(h)h
-(retina-\014ltering)f(will)g(b)s(e)i(applied,)f(in)g(units)g(of)h(bac)m
-(kground)g(noise)g(standard)0 1667 y(deviation.)40 b(If)30
-b(one)g(v)-5 b(alue)30 b(is)g(giv)m(en,)g(it)g(is)g(in)m(terpreted)f
-(as)i(a)g(lo)m(w)m(er)f(threshold.)39 b(F)-8 b(or)32
-b(instance:)0 1828 y Fs(FILTER_THRESH)44 b(3.0)0 1988
-y Fv(will)28 b(allo)m(w)i(\014ltering)e(for)i(pixel)f(v)-5
-b(alues)30 b(exceeding)g(+3)p Fk(\033)k Fv(ab)s(o)m(v)m(e)e(the)e(lo)s
-(cal)g(bac)m(kground,)g(whereas)0 2148 y Fs(FILTER_THRESH)44
-b(-10.0,3.0)0 2308 y Fv(will)31 b(only)i(allo)m(w)h(\014ltering)e(for)i
-(pixel)e(v)-5 b(alues)34 b(b)s(et)m(w)m(een)g Fq(\000)p
-Fv(10)p Fk(\033)k Fv(and)33 b(+3)p Fk(\033)s Fv(.)52
-b Fs(FILTER)p 2927 2308 V 33 w(THRESH)32 b Fv(has)i(no)g(e\013ect)0
-2421 y(on)c(con)m(v)m(olution.)0 2581 y(The)g(result)f(of)i(the)f
-(\014ltering)f(pro)s(cess)h(can)g(b)s(e)g(v)m(eri\014ed)g(through)f(a)i
-Fs(FILTERED)d Fv(c)m(hec)m(k-image:)43 b(see)31 b Fq(x)p
-Ft(??)q Fv(.)0 2868 y Ft(6.2.6)105 b(CPU)36 b(cost.)0
-3087 y Fv(The)d(SExtractor)i(\014ltering)d(routine)h(is)g(particularly)
-f(optimized)g(for)i(small)f(k)m(ernels.)50 b(It)35 b(th)m(us)e(pro)m
-(vides)g(a)0 3200 y(con)m(v)m(enien)m(t)c(w)m(a)m(y)g(of)e(\014ltering)
-f(large)i(image)g(data.)41 b(On)27 b(a)h(P2 at 450MHz,)i(a)e(con)m(v)m
-(olution)g(b)m(y)g(a)g(5)15 b Fq(\002)g Fv(5)28 b(k)m(ernel)0
-3313 y(will)23 b(t)m(ypically)h(con)m(tribute)h Fq(\031)g
-Fv(1)h(second)g(to)g(the)g(pro)s(cessing)e(time)h(of)h(a)g(2048)10
-b Fq(\002)g Fv(2048)30 b(image.)39 b(The)25 b(n)m(um)m(b)s(ers)0
-3426 y(for)34 b(non-linear)f(\(retina\))i(\014ltering)e(dep)s(end)g(on)
-i(the)g(complexit)m(y)f(of)h(the)g(neural)e(net)m(w)m(ork,)k(but)d(can)
-h(b)s(e)f(a)0 3539 y(h)m(undred)28 b(times)i(larger.)0
-3826 y Ft(6.2.7)105 b(Filter)35 b(\014le)g(formats.)0
-4045 y Fv(As)43 b(describ)s(ed)e(ab)s(o)m(v)m(e,)48 b(t)m(w)m(o)d
-(kinds)c(of)j(\014lter)e(\014les)g(are)i(recognized)f(b)m(y)g
-(SExtractor:)67 b(con)m(v)m(olution)44 b(\014les)0 4158
-y(\(traditionaly)29 b(su\016xed)g(with)g(\\)p Fs(.conv)p
-Fv("\),)i(and)f(\\retina")g(\014les)g(\(\\)p Fs(.ret)p
-Fv(")g(extensions)2960 4125 y Fo(10)3035 4158 y Fv(\).)0
-4318 y(Retina)g(\014les)g(are)g(written)g(exclusiv)m(ely)f(b)m(y)h(the)
-h Ft(EyE)e Fv(soft)m(w)m(are,)k(as)d(FITS)g(binary-tables.)0
-4478 y(Con)m(v)m(olution)20 b(\014les)f(are)h(in)f(ASCI)s(I)g(format.)
-38 b(The)20 b(follo)m(wing)e(example)i(sho)m(ws)g(the)h(con)m(ten)m(t)h
-(of)e(the)h Fs(gauss)p 3606 4478 V 33 w(2.0)p 3783 4478
-V 33 w(5x5.conv)0 4591 y Fv(\014le)29 b(whic)m(h)h(can)g(b)s(e)g(found)
-f(in)g(the)i Fs(config/)d Fv(sub-directory)h(of)i(the)f(SExtractor)h
-(distribution:)0 4751 y Fs(CONV)47 b(NORM)0 4864 y(#)g(5x5)g
-(convolution)e(mask)i(of)g(a)g(gaussian)f(PSF)h(with)f(FWHM)h(=)h(2.0)e
-(pixels.)0 4977 y(0.006319)g(0.040599)f(0.075183)h(0.040599)f(0.006319)
-0 5090 y(0.040599)h(0.260856)f(0.483068)h(0.260856)f(0.040599)0
-5203 y(0.075183)h(0.483068)f(0.894573)h(0.483068)f(0.075183)p
-0 5264 1512 4 v 73 5318 a Fn(10)138 5350 y Fm(In)32 b(SExtractor,)i
-(\014le)e(name)f(extensions)h(are)h(just)f(con)n(v)n(en)n(tions;)k
-(they)31 b(are)h(not)g(used)g(b)n(y)f(the)h(soft)n(w)n(are)i(to)e
-(distinguish)0 5441 y(b)r(et)n(w)n(een)26 b(di\013eren)n(t)f(\014le)g
-(formats.)1844 5753 y Fv(18)p eop
-%%Page: 19 19
-19 18 bop 0 -74 a Fs(0.040599)46 b(0.260856)f(0.483068)h(0.260856)f
-(0.040599)0 39 y(0.006319)h(0.040599)f(0.075183)h(0.040599)f(0.006319)0
-199 y Fv(The)c Fs(CONV)f Fv(k)m(eyw)m(ord)h(app)s(earing)f(at)i(the)f
-(b)s(eginning)d(of)k(the)f(\014rst)f(line)g(tells)g(SExtractor)h(that)h
-(the)f(\014le)0 312 y(con)m(tains)j(the)g(description)e(of)i(a)g(con)m
-(v)m(olution)g(mask)f(\(k)m(ernel\).)82 b(It)44 b(can)g(b)s(e)f(follo)m
-(w)m(ed)g(b)m(y)h Fs(NORM)f Fv(if)f(the)0 425 y(mask)i(is)f(to)i(b)s(e)
-e(normalized)g(to)h(1)h(b)s(efore)e(b)s(eing)g(applied,)i(or)f
-Fs(NONORM)f Fv(otherwise)3045 392 y Fo(11)3119 425 y
-Fv(.)81 b(The)44 b(follo)m(wing)0 538 y(lines)33 b(should)f(con)m(tain)
-j(an)f(equal)g(n)m(um)m(b)s(er)f(of)h(k)m(ernel)g(co)s(e\016cien)m(ts,)
-j(separated)d(b)m(y)h Fk(<)p Fv(space)p Fk(>)f Fv(of)g
-Fk(<)p Fv(T)-8 b(AB)p Fk(>)0 651 y Fv(c)m(haracters.)64
-b(Co)s(e\016cien)m(ts)38 b(in)f(the)g(example)h(ab)s(o)m(v)m(e)h(are)f
-(read)g(from)f(left)g(to)i(righ)m(t)e(and)g(top)h(to)h(b)s(ottom,)0
-764 y(corresp)s(onding)33 b(to)i(increasing)f Fs(NAXIS1)f
-Fv(\()p Fk(x)p Fv(\))i(and)g Fs(NAXIS2)e Fv(\()p Fk(y)s
-Fv(\))i(in)f(the)h(image.)54 b(F)-8 b(ormatting)36 b(is)e(free,)i(and)0
-877 y(n)m(um)m(b)s(er)d(represen)m(tations)g(lik)m(e)g
-Fs(-0.14)p Fv(,)h Fs(-0.1400)p Fv(,)f Fs(-1.4e-1)f Fv(or)i
-Fs(-1.4E-01)d Fv(are)j(equiv)-5 b(alen)m(t.)51 b(The)33
-b(width)0 989 y(of)h(the)h(k)m(ernel)f(is)f(set)i(b)m(y)f(the)h(n)m(um)
-m(b)s(er)d(of)j(v)-5 b(alues)34 b(p)s(er)f(line,)h(and)f(its)h(heigh)m
-(t)g(is)f(giv)m(en)i(b)m(y)f(the)g(n)m(um)m(b)s(er)f(of)0
-1102 y(lines.)39 b(Lines)29 b(b)s(eginning)f(with)h(\\)p
-Fs(#)p Fv(")i(are)g(treated)g(as)g(commen)m(ts.)0 1393
-y Fp(6.3)112 b(Thresholding)0 1612 y Fv(Thresholding)21
-b(is)i(applied)f(to)j(the)f(bac)m(kground-subtracted,)i(\014ltered)d
-(image)h(to)h(isolate)f(connected)h(groups)0 1725 y(of)f(pixels.)36
-b(Eac)m(h)24 b(group)f(de\014nes)g(the)g(appro)m(ximate)h(p)s(osition)d
-(and)i(shap)s(e)g(of)g(a)h(basic)f(SExtractor)h(detection)0
-1838 y(that)35 b(will)c(b)s(e)i(pro)s(cessed)h(further)f(in)f(the)j
-(pip)s(eline.)48 b(Groups)33 b(are)i(made)f(of)g(pixels)e(whose)i(v)-5
-b(alues)33 b(exceed)0 1951 y(the)e(lo)s(cal)e(threshold)g(and)h(whic)m
-(h)f(touc)m(h)i(eac)m(h)g(other)g(at)g(their)f(sides)f(or)h(angles)g
-(\(\\8-connectivit)m(y"\).)0 2238 y Ft(6.3.1)105 b(Con\014guration)36
-b(parameters.)0 2457 y Fv(Thresholding)27 b(is)j(mostly)g(con)m
-(trolled)g(through)f(the)i Fs(DETECT)p 2155 2457 29 4
-v 33 w(THRESH)d Fv(and)i Fs(DETECT)p 2969 2457 V 33 w(MINAREA)e
-Fv(k)m(eyw)m(ords.)0 2617 y Fs(DETECT)p 294 2617 V 33
-w(THRESH)42 b Fv(sets)i(the)g(threshold)e(v)-5 b(alue.)81
-b(If)43 b(one)h(single)e(v)-5 b(alue)44 b(is)e(giv)m(en,)48
-b(it)43 b(is)g(in)m(terpreted)g(as)h(a)0 2730 y(threshold)29
-b(in)g(units)g(of)h(the)h(bac)m(kground's)f(standard)f(deviation.)40
-b(F)-8 b(or)31 b(example:)0 2890 y Fs(DETECT_THRESH)44
-b(1.5)0 3050 y Fv(will)36 b(set)k(the)f(detection)h(threshold)d(at)j
-(1.5)p Fk(\033)j Fv(ab)s(o)m(v)m(e)d(the)f(lo)s(cal)g(bac)m(kground.)66
-b(It)39 b(is)f(imp)s(ortan)m(t)g(to)i(note)0 3163 y(that)28
-b(em)g(the)h(standard)e(deviation)g(quoted)h(here)f(is)g(that)i(of)f
-(the)g(un)p Fs(FILTER)p Fv(ed)d(image,)k(at)g(the)f(pixel)e(scale.)0
-3276 y(Hence,)36 b(on)d(images)h(with)e(white)h(Gaussian)g(bac)m
-(kground)h(noise)f(for)g(instance,)i(a)f Fs(DETECT)p
-3210 3276 V 32 w(THRESH)e Fv(of)i(3)p Fk(:)p Fv(0)0 3389
-y(will)j(b)s(e)i(close)h(to)g(optim)m(um)f(if)g(lo)m(w-pass)g
-Fs(FILTER)p Fv(ing)e(is)i(turned)g(o\013,)j(but)d(sub-optim)m(um)f
-(\(to)s(o)j(high\))d(if)0 3502 y(it)c(is)f(on.)52 b(On)33
-b(the)h(con)m(trary)-8 b(,)37 b(if)c(the)h(bac)m(kground)g(noise)g(of)g
-(the)g(image)h(is)e(in)m(trinsically)d(correlated)35
-b(from)0 3615 y(pixel-to-pixel,)e(a)h Fs(DETECT)p 953
-3615 V 32 w(THRESH)e Fv(of)i(3)p Fk(:)p Fv(0)h(\(with)d(no)i
-Fs(FILTER)p Fv(ing\))d(wil)h(b)s(e)h(to)s(o)h(lo)m(w)f(and)g(will)e
-(result)i(in)f(a)0 3728 y(p)s(o)s(or)d(reliabilit)m(y)f(of)i(the)h
-(extracted)h(catalog.)0 3888 y(Tw)m(o)45 b(n)m(um)m(b)s(ers)f(can)h(b)s
-(e)g(giv)m(en)g(as)h(argumen)m(ts)f(to)h Fs(DETECT)p
-2177 3888 V 33 w(THRESH)p Fv(,)d(in)h(whic)m(h)g(case)i(the)g(\014rst)e
-(one)h(is)0 4001 y(in)m(terpreted)39 b(as)h(an)f(absolute)g(threshold)f
-(in)h(units)f(of)h(\\magnitudes)g(p)s(er)g(square-arcsecond",)k(and)c
-(the)0 4114 y(second)30 b(as)h(a)g(zero-p)s(oin)m(t)f(in)f(the)i(same)g
-(units.)0 4274 y Fs(DETECT_THRESH)44 b(27.2,30.0)0 4434
-y Fv(will)28 b(for)i(example)g(set)h(the)f(threshold)f(at)i(10)1566
-4401 y Fj(\000)p Fo(0)p Fi(:)p Fo(4\(27)p Fi(:)p Fo(2)p
-Fj(\000)p Fo(30\))2047 4434 y Fv(=)25 b(13)p Fk(:)p Fv(18)33
-b(ADUs)e(ab)s(o)m(v)m(e)g(the)g(lo)s(cal)f(bac)m(kground.)0
-4594 y Fs(DETECT)p 294 4594 V 33 w(MINAREA)25 b Fv(sets)k(the)e(minim)m
-(um)e(n)m(um)m(b)s(er)i(of)h(pixels)d(a)k(group)e(should)e(ha)m(v)m(e)k
-(to)g(trigger)f(a)g(detection.)0 4707 y(Ob)m(viously)h(this)i
-(parameter)h(can)g(b)s(e)e(used)h(just)g(lik)m(e)g Fs(DETECT)p
-2187 4707 V 32 w(THRESH)f Fv(to)i(detect)h(only)e(brigh)m(t)g(and)f
-(\\big")0 4820 y(sources,)45 b(or)d(to)g(increase)g(detection)g
-(reliabilit)m(y)-8 b(.)72 b(It)42 b(is)f(ho)m(w)m(ev)m(er)i(more)f
-(tric)m(ky)g(to)g(manipulate)e(at)j(lo)m(w)0 4933 y(detection)i
-(thresholds)e(b)s(ecause)h(of)g(the)h(complex)f(in)m(terpla)m(y)g(of)g
-(ob)5 b(ject)45 b(top)s(ology)-8 b(,)49 b(noise)44 b(correlations)0
-5046 y(\(including)25 b(those)k(induced)e(b)m(y)h(\014ltering\),)g(and)
-g(sampling.)38 b(In)28 b(most)h(cases)g(it)f(is)g(therefore)h
-(recommended)0 5159 y(to)37 b(k)m(eep)f Fs(DETECT)p 623
-5159 V 33 w(MINAREA)e Fv(at)i(a)h(small)d(v)-5 b(alue,)37
-b(t)m(ypically)d(1)j(to)f(5)h(pixels,)e(and)g(let)h Fs(DETECT)p
-3284 5159 V 33 w(THRESH)e Fv(and)0 5272 y(the)d(\014lter)e(de\014ne)h
-(SExtractor's)h(sensitivit)m(y)-8 b(.)p 0 5333 1512 4
-v 73 5387 a Fn(11)138 5419 y Fm(If)26 b(the)f(sum)g(of)h(the)g(k)n
-(ernel)f(co)r(e\016cien)n(ts)i(happ)r(ens)e(to)h(b)r(e)f(exactly)h
-(zero,)h(the)e(k)n(ernel)g(is)h(normalized)g(to)g(v)l(ariance)g(unit)n
-(y)-6 b(.)1844 5753 y Fv(19)p eop
-%%Page: 20 20
-20 19 bop 0 -74 a Fp(6.4)112 b(Deblending)0 145 y Fv(Eac)m(h)33
-b(time)g(an)f(ob)5 b(ject)34 b(extraction)f(is)e(completed,)j(the)f
-(connected)g(set)g(of)g(pixels)e(passes)h(through)g(a)h(sort)0
-258 y(of)40 b(\014lter)f(that)h(tries)g(to)g(split)e(it)i(in)m(to)f(ev)
-m(en)m(tual)i(o)m(v)m(erlapping)e(comp)s(onen)m(ts.)69
-b(This)38 b(case)j(app)s(ears)e(more)0 371 y(frequen)m(tly)k(when)f
-(the)i(\014eld)e(is)h(cro)m(wded)g(or)g(when)g(the)h(detection)g
-(threshold)e(is)g(set)i(v)m(ery)g(lo)m(w.)80 b(The)0
-484 y(deblending)36 b(metho)s(d)i(adopted)h(in)f(SExtractor,)k(is)c
-(based)g(on)h Fr(multi-thr)-5 b(esholding)p Fv(,)44 b(and)38
-b(w)m(orks)h(on)g(an)m(y)0 597 y(kind)24 b(of)i(ob)5
-b(ject;)29 b(but)c(it)h(is)f(unable)f(to)j(deblend)d(comp)s(onen)m(ts)i
-(that)g(are)h(so)f(close)g(that)h(no)f(saddle)e(is)h(presen)m(t)0
-709 y(in)34 b(their)h(pro\014le.)55 b(Ho)m(w)m(ev)m(er,)39
-b(as)d(no)f(assumption)f(has)h(to)i(b)s(e)e(made)g(on)h(the)f(shap)s(e)
-g(of)h(the)g(ob)5 b(jects,)37 b(it)e(is)0 822 y(p)s(erfectly)30
-b(suited)f(for)h(galaxies)g(as)h(w)m(ell)e(as)i(for)f(high)f(galactic)i
-(latitude)f(stellar)f(\014elds.)0 983 y(T)m(ypical)44
-b(problematic)f(cases)j(for)e(deblending)e(include)g(patc)m(h)m(y)-8
-b(,)50 b(extended)45 b Ft(Sc)g Fv(galaxies)g(\(whic)m(h)e(ha)m(v)m(e)0
-1095 y(to)g(b)s(e)f(considered)g(as)h(single)e(en)m(tities\),)46
-b(and)c(close)h(or)f(in)m(teracting)h(pairs)e(of)i(optically)e(fain)m
-(t)h(galaxies)0 1208 y(\(whic)m(h)32 b(ha)m(v)m(e)j(to)f(b)s(e)e
-(considered)g(as)h(separate)i(ob)5 b(jects\).)50 b(Basically)-8
-b(,)33 b(the)h(m)m(ulti-thresholding)29 b(algorithm)0
-1321 y(emplo)m(ys)39 b(a)g(m)m(ultiple)e(isophotal)i(analysis)e(tec)m
-(hnique)i(similar)e(to)j(those)g(in)e(use)h(at)h(the)f(APM)h(and)e(the)
-0 1434 y(COSMOS)30 b(mac)m(hines)h(\(Beard,)h(McGillivra)m(y)e(and)h
-(Thanish)e(1991\);)34 b(in)c(a)i(\014rst)f(time,)h(eac)m(h)g(extracted)
-h(set)0 1547 y(of)38 b(connected)h(pixels)e(is)g(re-thresholded)g(at)i
-Fk(N)48 b Fv(lev)m(els)38 b(linearly)d(or)k(exp)s(onen)m(tially)d
-(spaced)i(b)s(et)m(w)m(een)h(its)0 1660 y(primary)28
-b(extraction)j(threshold)d(and)h(its)h(p)s(eak)f(v)-5
-b(alue.)41 b(This)28 b(giv)m(es)i(us)f(a)i(sort)f(of)g(2-dimensional)e
-(\\mo)s(del")0 1773 y(of)g(the)g(ligh)m(t)f(distribution)d(within)i
-(the)i(ob)5 b(ject\(s\),)30 b(whic)m(h)c(is)h(stored)h(in)e(the)j(form)
-e(of)h(a)g(tree)h(structure)e(\(\014g.)0 1886 y(3\).)58
-b(Then)35 b(the)i(algorithm)e(go)s(es)h(do)m(wn)m(w)m(ards,)i(from)d
-(the)h(tips)f(of)i(branc)m(hes)e(to)i(the)f(trunk,)h(and)e(decides)0
-1999 y(at)h(eac)m(h)g(junction)e(whether)h(it)g(shall)e(extract)k(t)m
-(w)m(o)f(\(or)g(more\))g(ob)5 b(jects)36 b(or)f(con)m(tin)m(ue)g(its)g
-(w)m(a)m(y)h(do)m(wn.)55 b(T)-8 b(o)0 2112 y(meet)30
-b(the)g(conditions)e(describ)s(ed)g(earlier,)h(the)h(follo)m(wing)e
-(simple)f(decision)h(criteria)h(are)h(adopted:)41 b(at)30
-b(an)m(y)0 2225 y(junction)f(threshold)g Fk(t)789 2239
-y Fi(i)817 2225 y Fv(,)h(an)m(y)h(branc)m(h)f(will)e(b)s(e)h
-(considered)h(as)g(a)h(separate)g(comp)s(onen)m(t)g(if)66
-2458 y(\(1\))46 b(the)30 b(in)m(tegrated)g(pixel)e(in)m(tensit)m(y)h
-(\(ab)s(o)m(v)m(e)j Fk(t)1730 2472 y Fi(i)1758 2458 y
-Fv(\))e(of)f(the)h(branc)m(h)f(is)g(greater)i(than)e(a)h(certain)g
-(fraction)f Fk(\016)3744 2472 y Fi(c)227 2571 y Fv(of)i(the)f(total)i
-(in)m(tensit)m(y)d(of)i(the)f(comp)s(osite)h(ob)5 b(ject.)66
-2758 y(\(2\))46 b(condition)29 b(\(1\))j(is)d(v)m(eri\014ed)h(for)g(at)
-h(least)f(one)h(more)g(branc)m(h)e(at)j(the)e(same)h(lev)m(el)f
-Fk(i)p Fv(.)0 2991 y(Note)44 b(that)e(ideally)-8 b(,)44
-b(condition)d(\(1\))j(is)d(b)s(oth)g(\015ux-)h(and)f(scale-in)m(v)-5
-b(arian)m(t.)77 b(Ho)m(w)m(ev)m(er)44 b(for)e(fain)m(t,)j(p)s(o)s(orly)
-0 3104 y(resolv)m(ed)f(ob)5 b(jects,)48 b(the)c(e\016ciency)g(of)h(the)
-f(deblending)d(is)i(limited)f(mostly)h(b)m(y)h(seeing)g(and)f
-(sampling.)0 3217 y(F)-8 b(rom)23 b(the)g(analysis)e(of)h(b)s(oth)g
-(small)f(and)h(extended)g(galaxy)h(images,)i(a)d(compromise)g(v)-5
-b(alue)22 b(for)g(the)h(con)m(trast)0 3330 y(parameter)30
-b Fk(\016)474 3344 y Fi(c)539 3330 y Fq(\030)g Fv(0.005)i(pro)m(v)m(ed)
-e(to)h(b)s(e)e(optim)m(um.)40 b(This)28 b(should)g(normally)g(exclude)h
-(to)i(separate)g(ob)5 b(jects)0 3443 y(with)29 b(a)i(di\013erence)f(in)
-f(magnitude)g(greater)j(than)e Fq(\031)25 b Fv(6.)0 3603
-y(The)39 b(outlying)f(pixels)f(with)h(\015ux)g(lo)m(w)m(er)i(than)f
-(the)h(separation)f(thresholds)e(ha)m(v)m(e)k(to)f(b)s(e)e(reallo)s
-(cated)i(to)0 3716 y(the)c(prop)s(er)f(comp)s(onen)m(ts)i(of)f(the)g
-(merger.)59 b(T)-8 b(o)36 b(do)h(so,)h(w)m(e)e(ha)m(v)m(e)i(opted)e
-(for)g(a)h Fr(statistic)-5 b(al)38 b Fv(approac)m(h:)53
-b(at)0 3829 y(eac)m(h)38 b(fain)m(t)f(pixel)e(w)m(e)i(compute)g(the)g
-(con)m(tribution)f(whic)m(h)f(is)h(exp)s(ected)h(from)g(eac)m(h)h
-(sub-ob)5 b(ject)37 b(using)e(a)0 3942 y(biv)-5 b(ariate)28
-b(Gaussian)f(\014t)h(to)i(its)d(pro\014le,)h(and)g(turn)f(it)h(in)m(to)
-h(a)f(probabilit)m(y)e(for)j(that)g(pixel)d(to)k(b)s(elong)d(to)i(the)0
-4055 y(sub-ob)5 b(ject.)49 b(F)-8 b(or)34 b(instance,)g(a)f(fain)m(t)g
-(pixel)f(lying)f(halfw)m(a)m(y)i(b)s(et)m(w)m(een)h(t)m(w)m(o)h(close)e
-(brigh)m(t)f(stars)i(ha)m(ving)e(the)0 4168 y(same)h(magnitude)f(will)e
-(b)s(e)i(app)s(ended)e(to)k(one)f(of)f(these)h(with)f(equal)g
-(probabilities.)44 b(One)32 b(big)g(adv)-5 b(an)m(tage)0
-4280 y(of)31 b(this)e(tec)m(hnique)i(is)e(that)j(the)e(morphology)g(of)
-h(an)m(y)g(ob)5 b(ject)32 b(is)d(completely)i(de\014ned)e(simply)f
-(through)i(its)0 4393 y(list)f(of)i(pixels.)0 4554 y(T)-8
-b(o)27 b(test)h(the)f(e\013ects)h(of)f(deblending)d(on)j(photometry)g
-(and)f(astrometry)i(measuremen)m(ts,)g(w)m(e)f(made)g(sev)m(eral)0
-4666 y(sim)m(ulations)34 b(of)i(photographic)f(images)h(of)g(double)e
-(stars)i(with)f(di\013eren)m(t)g(separations)g(and)g(magnitudes)0
-4779 y(under)30 b(t)m(ypical)h(observ)-5 b(ational)31
-b(conditions)e(\(\014g.)44 b(4\).)h(It)31 b(is)g(ob)m(vious)f(that)i(m)
-m(ultiple)d(isophotal)i(tec)m(hniques)0 4892 y(fail)c(when)h(there)h
-(is)f(no)g(saddle)g(p)s(oin)m(t)f(presen)m(t)i(in)e(pro\014les)h
-(\(i.e.)40 b(for)28 b(distance)h(b)s(et)m(w)m(een)g(stars)g
-Fk(<)c Fv(2)p Fk(\033)32 b Fv(in)27 b(the)0 5005 y(case)g(of)g
-(Gaussian)e(images\).)40 b(W)-8 b(e)27 b(measured)f(a)g(magnitude)g
-(error)g Fq(\024)f Fv(0)p Fk(:)p Fv(2)i(mag)g(and)e(a)i(shift)e(of)h
-(the)h(cen)m(troid)0 5118 y(\()p Fq(\024)j Fv(0)p Fk(:)p
-Fv(4)k(pixels\))e(for)h(the)g(fain)m(ter)g(star)g(in)f(the)h(v)m(ery)h
-(w)m(orst)f(cases,)i(but)d(no)h(other)h(systematic)f(e\013ects)i(w)m
-(ere)0 5231 y(noticeable.)0 5391 y(The)g(user)g(can)g(con)m(trol)h(the)
-g(m)m(ulti-thresholding)c(op)s(eration)i(through)h(3)h(parameters.)56
-b(The)35 b(\014rst)g(one)g(is)0 5504 y(the)k(n)m(um)m(b)s(er)f(of)i
-(deblending)c(thresholds)i(\()p Fs(DEBLEND)p 1908 5504
-29 4 v 33 w(NTHRESH)p Fv(\).)g(A)h(go)s(o)s(d)g(v)-5
-b(alue)39 b(is)f(32.)69 b(Higher)38 b(v)-5 b(alues)1844
-5753 y(20)p eop
-%%Page: 21 21
-21 20 bop 709 1825 a @beginspecial 30 @llx 230 @lly 590
- at urx 695 @ury 2834 @rwi @setspecial
-%%BeginDocument: segment.ps
-%!PS-Adobe-2.0 EPSF-2.0
-%%BoundingBox: 30 230 590 695
-%%Creator: Professional Draw V3.0 (C) Copyright 1992, Gold Disk Inc.
-%%Title: isoph_tree3
-%%CreationDate: 21/04/1993 19:25:27
-%%Pages: (atend)
-%%EndComments
-save
-150 dict begin
-%================================================================%
-% Professional Draw PostScript Prologue file: V3.0, June 1, 1992 %
-%================================================================%
-
-/uniqueid 0 def
-/amigavec [
-8#055 /hyphen
-8#230 /dotlessi
-8#231 /grave
-8#232 /acute
-8#233 /circumflex
-8#234 /tilde
-8#235 /dieresis
-8#236 /ring
-8#237 /cedilla
-8#240 /space
-8#241 /exclamdown
-8#242 /cent
-8#243 /sterling
-8#244 /currency
-8#245 /yen
-8#246 /bar
-8#247 /section
-8#250 /dieresis
-8#251 /copyright
-8#252 /ordfeminine
-8#253 /guillemotleft
-8#254 /logicalnot
-8#255 /.notdef
-8#256 /registered
-8#257 /macron
-8#260 /ring
-8#261 /.notdef
-8#262 /.notdef
-8#263 /dagger
-8#264 /.notdef
-8#265 /.notdef
-8#266 /paragraph
-8#267 /bullet
-8#270 /quotesinglbase
-8#271 /.notdef
-8#272 /ordmasculine
-8#273 /guillemotright
-8#274 /.notdef
-8#275 /.notdef
-8#276 /.notdef
-8#277 /questiondown
-8#300 /Agrave
-8#301 /Aacute
-8#302 /Acircumflex
-8#303 /Atilde
-8#304 /Adieresis
-8#305 /Aring
-8#306 /AE
-8#307 /Ccedilla
-8#310 /Egrave
-8#311 /Eacute
-8#312 /Ecircumflex
-8#313 /Edieresis
-8#314 /Igrave
-8#315 /Iacute
-8#316 /Icircumflex
-8#317 /Idieresis
-8#320 /.notdef
-8#321 /Ntilde
-8#322 /Ograve
-8#323 /Oacute
-8#324 /Ocircumflex
-8#325 /Otilde
-8#326 /Odieresis
-8#327 /.notdef
-8#330 /Oslash
-8#331 /Ugrave
-8#332 /Uacute
-8#333 /Ucircumflex
-8#334 /Udieresis
-8#335 /.notdef
-8#336 /.notdef
-8#337 /germandbls
-8#340 /agrave
-8#341 /aacute
-8#342 /acircumflex
-8#343 /atilde
-8#344 /adieresis
-8#345 /aring
-8#346 /ae
-8#347 /ccedilla
-8#350 /egrave
-8#351 /eacute
-8#352 /ecircumflex
-8#353 /edieresis
-8#354 /igrave
-8#355 /iacute
-8#356 /icircumflex
-8#357 /idieresis
-8#360 /.notdef
-8#361 /ntilde
-8#362 /ograve
-8#363 /oacute
-8#364 /ocircumflex
-8#365 /otilde
-8#366 /odieresis
-8#367 /.notdef
-8#370 /oslash
-8#371 /ugrave
-8#372 /uacute
-8#373 /ucircumflex
-8#374 /udieresis
-8#375 /.notdef
-8#376 /.notdef
-8#377 /ydieresis
-] def
-
-/bdef {bind def} bind def
-/ldef {load def} bdef
-/n /newpath ldef
-/m2 /moveto ldef
-/l2 /lineto ldef
-/c2 /curveto ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/gs /gsave ldef
-/gr /grestore ldef
-/g /setgray ldef
-/s /stroke ldef
-
-%
-% Font handling routines
-%
-
-/dontCopyID false def
-/copyfont {
- { exch dup /FID ne
- {
- dup /UniqueID eq dontCopyID and
- {pop pop}
- {
- dup /Encoding eq
- { exch dup length array copy outfontdict 3 1 roll put}
- { exch outfontdict 3 1 roll put}
- ifelse
- }
- ifelse
- }
- { pop pop}
- ifelse
- } forall
-} bdef
-
-/recode {
- copyfont dup dup
- outfontdict /FontName 3 -1 roll put
- amigavec aload pop
- amigavec length 2 idiv
- {outfontdict /Encoding get 3 1 roll put} repeat
-} bdef
-
-/defamigafont {
- /fntsclmtx [0 0 0 0 0 0] def
- exch
- dup fntsclmtx exch 0 exch put
- neg fntsclmtx exch 3 exch put
- findfont fntsclmtx makefont setfont
-} bdef
-
-/deffont {
- 3 -1 roll
- {
- dup dup length dup 5 add string /newnamestr exch def
- exch newnamestr copy pop newnamestr exch (Amiga) putinterval
- newnamestr cvn dup FontDirectory exch known
- {exch pop}
- {
- exch cvn findfont
- dup maxlength 2 add dict /outfontdict exch def
- /dontCopyID false def recode
- outfontdict definefont pop
- }
- ifelse
- }
- { cvn }
- ifelse
- defamigafont
-} bdef
-
-/rect 4 array def % used in dobox
-/dorect {
- n
- rect aload pop 4 copy m2 3 1 roll exch l2
- 4 2 roll l2 l2
- closepath
-} bdef
-
-/dobox { %clip trnsp x1 y1 x2 y2 dobox
- rect astore pop
- {} {dorect 1 g fill} ifelse
- {dorect clip} if
-} bdef
-
-/dogreyimage { % width height xscl yscl x0 y0 dogreyimage
- 5 index 1 add 2 idiv string
- /picstr exch def
- translate scale
- 4 [1 0 0 1 0 0]
- {currentfile picstr readhexstring pop }
- image
-} bdef
-
-/do8greyimage { % width height xscl yscl x0 y0 do8greyimage
- % same as above, but 8 bits per sample
- 5 index string
- /picstr exch def
- translate scale
- 8 [1 0 0 1 0 0]
- {currentfile picstr readhexstring pop }
- image
-} bdef
-
-/do8bingreyimage { % width height xscl yscl x0 y0 do8greyimage
- % same as above, but 8 bits per sample
- 5 index string
- /picstr exch def
- translate scale
- 8 [1 0 0 1 0 0]
- {currentfile picstr readstring pop }
- image
-} bdef
-
-
-/docolorimage { % width height xscl yscl x0 y0 docolorimage
- 4 dict begin
- 5 index 1 add 2 idiv
- dup /cstr exch string def
- dup /ystr exch string def
- dup /mstr exch string def
- /kstr exch string def
- translate scale
- 4 [1 0 0 1 0 0]
- { currentfile cstr readhexstring pop }
- { currentfile mstr readhexstring pop }
- { currentfile ystr readhexstring pop }
- { currentfile kstr readhexstring pop }
- true 4 colorimage
- end
-} bdef
-
-/do8colorimage { % width height xscl yscl x0 y0 docolorimage
- 4 dict begin
- 5 index
- dup /cstr exch string def
- dup /ystr exch string def
- dup /mstr exch string def
- /kstr exch string def
- translate scale
- 8 [1 0 0 1 0 0]
- { currentfile cstr readhexstring pop }
- { currentfile mstr readhexstring pop }
- { currentfile ystr readhexstring pop }
- { currentfile kstr readhexstring pop }
- true 4 colorimage
- end
-} bdef
-
-/bwline { % linewidth linejoin linecap grey dash 0 bwline
- setdash g setlinecap setlinejoin setlinewidth
-} bdef
-
-/colorline { %linewidth linejoin linecap c m y k dash 0 colorline
- setdash setcmykcolor setlinecap setlinejoin setlinewidth
-} bdef
-
-/ellipsedict 2 dict def
-ellipsedict /mtrx matrix put
-
-/ellipse { % xr yr angle cx cy ellipse
- ellipsedict begin
- /savematrix mtrx currentmatrix def
- translate
- rotate
- scale
- 0 0 1 0 360 arc
- savematrix setmatrix
- end
-} bdef
-
-/initpage {
- gs
-% mir {pagexsize 0 translate -1 1 scale} if
- 0 pageysize translate
- 0.96 -0.96 scale
-} bdef
-
-/endpage {
- gr
-} bdef
-
-/getpagetype { % width ht orient getpagetype width ht orient pagetype
- dup 0 eq {0}
- {
- 3 copy pop
- 2 copy 709 le exch 499 le and
- {pop pop 4} {
- 2 copy 842 le exch 596 le and
- {pop pop 3} {
- 2 copy 792 le exch 612 le and
- {pop pop 1} {
- 1008 le exch 612 le and
- {2} {0} ifelse
- } ifelse
- } ifelse
- } ifelse
- } ifelse
-} bdef
-
-/initcolorpage { % pitch1 angle1 ... pitch4 angle4 ysize width ht orient neg mirror manual #copies epsf----
- commoninit
- 12 dict begin
- /ka exch def /kf exch def
- /ba exch def /bf exch def
- /ga exch def /gf exch def
- /ra exch def /rf exch def
- currentcolorscreen
- /kp exch def pop pop
- /bp exch def pop pop
- /gp exch def pop pop
- /rp exch def pop pop
- rf ra /rp load gf ga /gp load bf ba /bp load kf ka /kp load setcolorscreen
- end
-} bdef
-
-/initbwpage { % pitch angle ysize width ht orient neg mirror manual #copies epsf ----
- commoninit
- currentscreen 3 1 roll pop pop setscreen
-} bdef
-
-/donegprint
-{
- 0 g
- 0 0 m2 pagexsize 0 l2 pagexsize pageysize l2
- 0 pageysize l2 closepath fill
- [{1 exch sub} /exec load currenttransfer /exec load] cvx settransfer
-} bdef
-
-/commoninit { % ysize width ht orient neg mirror manual #copies epsf ----
- { pop pop pop pop pop pop pop
- /pageysize exch def
- }
- {
- /#copies exch def
- /man exch def
- /mir exch def
- /negat exch def
- 3 -1 roll dup /pagexsize exch def 3 1 roll
- getpagetype
- dup 0 ne {
- dup 1 eq {
- userdict /letter known
- {letter} {pop 0} ifelse
- } if
- dup 2 eq {
- userdict /legal known
- {legal} {pop 0} ifelse
- } if
- dup 3 eq {
- userdict /a4 known
- {a4} {pop 0} ifelse
- } if
- dup 4 eq {
- userdict /b5 known
- {b5} {pop 0} ifelse
- } if
- } if
- 0 eq statusdict /setpage known and
- {setpage} {pop pop pop} ifelse
-
- /pageysize exch def
-
- statusdict /manualfeed known
- {/manualfeed man def} if
- statusdict /mirrorprint known
- {/mirrorprint mir def /mir false def} if
- statusdict /negativeprint known
- {/negativeprint negat def} {negat {donegprint} if} ifelse
-
- }
- ifelse
-
-} bdef
-
-/crop { % x0 y0 x1 y1 l s crop
- 2 dict begin
- /spc exch def /len exch def
- gs initclip n
- 0.25 setlinewidth 0 setgray
- 2 copy m2 0 spc rm 0 len rl 2 copy m2 spc 0 rm len 0 rl
- 4 2 roll 2 copy m2 0 spc neg rm 0 len neg rl 2 copy m2 spc neg 0 rm len neg 0 rl
- 4 1 roll exch
- 2 copy m2 0 spc rm 0 len rl m2 spc neg 0 rm len neg 0 rl
- exch 2 copy m2 spc 0 rm len 0 rl m2 0 spc neg rm 0 len neg rl
- s gr
- end
-} bdef
-
-/cross { % xc yc len cross
- 1 dict begin
- /len exch def
- m2 0 len -2 div rm 0 len rl
- len -2 div dup rm len 0 rl
- s
- end
-} bdef
-
-/oneregister { % xc yc len oneregister
- 0 setgray 0.25 setlinewidth
- 3 copy 3 copy cross 4 div 0 360 arc fill
- 1 setgray 2 div cross
-} bdef
-
-/drwcalibbar { % x0 y0 wid len drwcalibbar
- fourcol not component 1 eq or {
- 5 dict begin
- n
- /len exch def /width exch def /y0 exch def /x0 exch def
- /increment width 10 div def
- increment len gt {
- /increment len def
- } if
- x0 y0 m2
- 0.0 0.1 1.0 {
- setgray
- len neg 0 rl 0 increment rl len 0 rl currentpoint fill m2
- } for
- end
- }
- {
- pop pop pop pop
- } ifelse
-} bdef
-
-/drwpatch { % k y m c len incr drwpatch
- 3 dict begin
- /incr exch def /len exch def
- component 1 eq {pop pop pop /grayval exch def}{
- component 2 eq {pop pop /grayval exch def pop}{
- component 3 eq {pop /grayval exch def pop pop}{
- component 4 eq {/grayval exch def pop pop pop}{
- /grayval -1 def pop pop pop pop
- }ifelse
- }ifelse
- }ifelse
- } ifelse
- grayval -1 ne {
- grayval setgray
- len neg 0 rl 0 incr neg rl len 0 rl currentpoint fill m2
- } if
- end
-} bdef
-
-/drwcolcalib { % gr1 gr2 x0 y0 wid len drwcolcalib
- 7 dict begin
- n
- /len exch def /width exch def /y0 exch def /x0 exch def
- /gr2 exch def /gr1 exch def
- /increment width 10 div def
- increment len gt {
- /increment len def
- } if
- x0 y0 m2
- gr1 1.0 1.0 1.0 len increment drwpatch % K
- 1.0 gr1 gr1 gr1 len increment drwpatch % CMY
- 1.0 gr2 1.0 gr2 len increment drwpatch % CY
- 1.0 1.0 1.0 gr2 len increment drwpatch % C
- 1.0 1.0 gr2 gr2 len increment drwpatch % CM
- 1.0 1.0 gr2 1.0 len increment drwpatch % M
- 1.0 gr2 gr2 1.0 len increment drwpatch % MY
- 1.0 gr2 1.0 1.0 len increment drwpatch % Y
- end
-} bdef
-
-/register { % x0 y0 x1 y1 l s register
- 6 dict begin
- gs initclip n
- /spc exch def /len exch def
- /y1 exch def /x1 exch def /y0 exch def /x0 exch def
- x1 x0 add 2 div y0 spc sub len 2 div sub len oneregister
- x1 x0 add 2 div y1 spc len 2 div add add len oneregister
- x0 spc sub len 2 div sub y1 y0 add 2 div len oneregister
- x1 spc len 2 div add add y1 y0 add 2 div len oneregister
- gr
- end
-} bdef
-
-%%%% Gradient Fill operators: %%%%%%
-
-/defhexstr { % length /strvar defhexstr -> length
- currentfile 2 index string readhexstring pop def
-} bind def
-
-/getgraystr { % length getgraystr -> length + /gray
- /gray defhexstr
-} bind def
-
-/getcmykstr { % length getcmykstr -> length + /cstr+/mstr+/ystr+/kstr
- /cstr defhexstr
- /mstr defhexstr
- /ystr defhexstr
- /kstr defhexstr
-} bind def
-
-/setgraygrad { % index setgraygrad
- gray exch get 255.0 div setgray
-} bind def
-
-/setcmykgrad { % index setcmykgrad -> index
- dup cstr exch get 255.0 div % -> index cval
- 1 index mstr exch get 255.0 div % -> index cval mval
- 2 index ystr exch get 255.0 div % -> index cval mval yval
- kstr 5 -1 roll get 255.0 div % -> cval mval yval kval
- setcmykcolor
-} bind def
-
-/radgrad { % cx cy radius /setcol steps /getstr radgrad
- 6 dict begin
- gsave eoclip
- cvx exec % read necessary strings with color information
- /steps exch def
- /setcol exch def
- dup steps div /rstep exch def % -> cx cy radius
- 0 1 steps 1 sub {
- setcol
- newpath 3 copy 0 360 arc eofill
- rstep sub
- } for
- pop pop pop
- grestore
- end
-} bind def
-
-/linXgrad { % x1 y1 x2 y2 wd /setcol steps /getstr linXgrad
- 7 dict begin
- gsave eoclip
- cvx exec % read necessary strings with color information
- /steps exch def
- /setcol exch def
- steps div /dx exch def % -> x1 y1 x2 y2
- 0 1 steps 1 sub {
- setcol
- newpath
- 3 index dx add 3 index m2 % -> x1 y1 x2 y2 {x1+dx y1}
- 1 index dx add 1 index l2 % -> x1 y1 x2 y2 {x2+dx y2}
- 4 copy l2 l2 % -> x1 y1 x2 y2 {x1 y1} {x2 y2}
- closepath eofill
- dx 0 translate
- } for
- pop pop pop pop
- grestore
- end
-} bind def
-
-/linYgrad { % x1 y1 x2 y2 ht /setcol steps /getstr linYgrad
- 7 dict begin
- gsave eoclip
- cvx exec % read necessary strings with color information
- /steps exch def
- /setcol exch def
- steps div neg /dy exch def % -> x1 y1 x2 y2
- 0 1 steps 1 sub {
- setcol
- newpath
- 3 index 3 index dy add m2 % -> x1 y1 x2 y2 {x1 y1+dy}
- 2 copy dy add l2 % -> x1 y1 x2 y2 {x2 y2+dy}
- 4 copy l2 l2 % -> x1 y1 x2 y2 {x1 y1} {x2 y2}
- closepath eofill
- 0 dy translate
- } for
- pop pop pop pop
- grestore
- end
-} bind def
-
-%================================================================%
-
-%%EndProlog
-%%EndProlog
-%%BeginProcessColor: Black
-
-60.00000 45.00000 792 612 792 1 false false false 1 true initbwpage
-
-%%Page: 1 1
-
-initpage
-gs
-0.000 0.000 translate 0.000 rotate
-n -18.750 -18.750 m2 656.249 -18.750 l2 656.249 843.749 l2 -18.750 843.749 l2 closepath clip
-1.000 1.000 scale
-n
-121.87 113.60 m2
-540.86 113.60 l2
-540.86 487.50 l2
-121.87 487.50 l2
-121.87 113.60 l2
-closepath
-gs 0.93 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-121.87 113.60 m2 540.86 113.60 l2 s
-540.86 113.60 m2 540.86 487.50 l2 s
-540.86 487.50 m2 121.87 487.50 l2 s
-121.87 487.50 m2 121.87 113.60 l2 s
-0.26 0 0 0.00 [29.1670 4.1670 ] 0 bwline
-n
-75.00 543.75 m2 600.51 543.75 l2 s
-0.26 0 0 0.00 [29.1670 4.1670 ] 0 bwline
-n
-75.00 112.50 m2 600.51 112.50 l2 s
-n
-543.75 450.00 m2
-575.79 450.00 l2
-575.79 487.50 l2
-543.75 487.50 l2
-543.75 450.00 l2
-closepath
-gs 0.93 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-543.75 450.00 m2 575.79 450.00 l2 s
-575.79 450.00 m2 575.79 487.50 l2 s
-575.79 487.50 m2 543.75 487.50 l2 s
-543.75 487.50 m2 543.75 450.00 l2 s
-n
-487.50 300.00 m2
-515.63 300.00 l2
-515.63 356.25 l2
-487.50 356.25 l2
-487.50 300.00 l2
-closepath
-gs 0.80 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-487.50 300.00 m2 515.63 300.00 l2 s
-515.63 300.00 m2 515.63 356.25 l2 s
-515.63 356.25 m2 487.50 356.25 l2 s
-487.50 356.25 m2 487.50 300.00 l2 s
-n
-168.75 112.50 m2
-456.82 112.50 l2
-456.82 356.25 l2
-168.75 356.25 l2
-168.75 112.50 l2
-closepath
-gs 0.80 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-168.75 112.50 m2 456.82 112.50 l2 s
-456.82 112.50 m2 456.82 356.25 l2 s
-456.82 356.25 m2 168.75 356.25 l2 s
-168.75 356.25 m2 168.75 112.50 l2 s
-n
-298.50 112.50 m2
-454.92 112.50 l2
-454.92 318.75 l2
-298.50 318.75 l2
-298.50 112.50 l2
-closepath
-gs 0.67 g eofill gr
-1.04 0 0 0.00 [] 0 bwline
-n
-298.50 112.50 m2 454.92 112.50 l2 s
-454.92 112.50 m2 454.92 318.75 l2 s
-454.92 318.75 m2 298.50 318.75 l2 s
-298.50 318.75 m2 298.50 112.50 l2 s
-n
-168.75 131.25 m2
-277.23 131.58 l2
-277.23 318.75 l2
-168.75 318.75 l2
-168.75 131.25 l2
-closepath
-gs 0.67 g eofill gr
-1.04 0 0 0.00 [] 0 bwline
-n
-168.75 131.25 m2 277.23 131.58 l2 s
-277.23 131.58 m2 277.23 318.75 l2 s
-277.23 318.75 m2 168.75 318.75 l2 s
-168.75 318.75 m2 168.75 131.25 l2 s
-n
-230.36 168.75 m2
-256.37 168.75 l2
-256.37 225.00 l2
-230.36 225.00 l2
-230.36 168.75 l2
-closepath
-gs 0.53 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-230.36 168.75 m2 256.37 168.75 l2 s
-256.37 168.75 m2 256.37 225.00 l2 s
-256.37 225.00 m2 230.36 225.00 l2 s
-230.36 225.00 m2 230.36 168.75 l2 s
-n
-168.75 131.25 m2
-223.62 131.25 l2
-223.62 224.85 l2
-168.75 225.00 l2
-168.75 131.25 l2
-closepath
-gs 0.53 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-168.75 131.25 m2 223.62 131.25 l2 s
-223.62 131.25 m2 223.62 224.85 l2 s
-223.62 224.85 m2 168.75 225.00 l2 s
-168.75 225.00 m2 168.75 131.25 l2 s
-n
-352.11 112.50 m2
-365.24 112.50 l2
-365.24 131.25 l2
-352.11 131.25 l2
-352.11 112.50 l2
-closepath
-gs 0.53 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-352.11 112.50 m2 365.24 112.50 l2 s
-365.24 112.50 m2 365.24 131.25 l2 s
-365.24 131.25 m2 352.11 131.25 l2 s
-352.11 131.25 m2 352.11 112.50 l2 s
-n
-384.38 112.50 m2
-412.50 112.50 l2
-412.50 131.25 l2
-384.38 131.25 l2
-384.38 112.50 l2
-closepath
-gs 0.53 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-384.38 112.50 m2 412.50 112.50 l2 s
-412.50 112.50 m2 412.50 131.25 l2 s
-412.50 131.25 m2 384.38 131.25 l2 s
-384.38 131.25 m2 384.38 112.50 l2 s
-n
-202.40 150.00 m2
-216.81 150.00 l2
-216.81 168.75 l2
-202.40 168.75 l2
-202.40 150.00 l2
-closepath
-gs 0.40 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-202.40 150.00 m2 216.81 150.00 l2 s
-216.81 150.00 m2 216.81 168.75 l2 s
-216.81 168.75 m2 202.40 168.75 l2 s
-202.40 168.75 m2 202.40 150.00 l2 s
-n
-178.12 131.25 m2
-186.04 131.25 l2
-186.04 168.25 l2
-178.12 168.25 l2
-178.12 131.25 l2
-closepath
-gs 0.40 g eofill gr
-1.04 0 0 0.00 [4.1670 4.1670 ] 0 bwline
-n
-178.12 131.25 m2 186.04 131.25 l2 s
-186.04 131.25 m2 186.04 168.25 l2 s
-186.04 168.25 m2 178.12 168.25 l2 s
-178.12 168.25 m2 178.12 131.25 l2 s
-n
-399.50 131.25 m2
-399.50 150.00 l2
-358.21 150.00 l2
-358.21 131.25 l2
-4.59 0 0 0.00 [] 0 bwline s
-n
-184.28 168.75 m2
-184.28 187.50 l2
-209.95 187.50 l2
-209.95 168.75 l2
-4.17 0 0 0.00 [] 0 bwline s
-n
-196.87 187.50 m2
-196.87 243.75 l2
-243.75 243.75 l2
-243.75 225.00 l2
-4.17 0 0 0.00 [] 0 bwline s
-n
-225.00 243.75 m2
-225.00 337.50 l2
-375.00 337.50 l2
-375.00 150.00 l2
-4.17 0 0 0.00 [] 0 bwline s
-n
-502.64 355.74 m2
-502.64 373.97 l2
-300.00 373.97 l2
-300.00 337.50 l2
-4.29 0 0 0.00 [] 0 bwline s
-n
-393.75 375.00 m2
-393.75 506.25 l2
-564.31 506.25 l2
-564.31 487.50 l2
-4.21 0 0 0.00 [] 0 bwline s
-n
-478.13 506.25 m2
-478.13 543.75 l2
-4.17 0 0 0.00 [] 0 bwline s
-n
-201.38 289.91 m2
-201.38 290.11 201.38 290.32 201.38 290.52 c2
-202.97 290.52 204.56 290.52 206.16 290.52 c2
-206.16 290.32 206.16 290.11 206.16 289.91 c2
-205.71 289.90 205.35 289.83 205.17 289.76 c2
-205.02 289.69 204.92 289.64 204.78 289.49 c2
-204.42 289.15 204.53 288.48 205.22 286.91 c2
-205.43 286.42 205.64 285.92 205.85 285.42 c2
-205.85 285.41 l2
-207.87 285.41 209.90 285.41 211.91 285.41 c2
-211.91 285.42 l2
-212.24 286.17 212.57 286.95 212.90 287.70 c2
-213.29 288.65 213.32 288.93 213.32 289.14 c2
-213.32 289.61 213.01 289.91 211.77 289.91 c2
-211.77 290.11 211.77 290.32 211.77 290.52 c2
-213.80 290.52 215.84 290.52 217.87 290.52 c2
-217.87 290.32 217.87 290.11 217.87 289.91 c2
-217.00 289.88 216.53 289.86 215.79 288.04 c2
-213.82 283.43 211.83 278.81 209.86 274.21 c2
-209.66 274.21 209.45 274.21 209.25 274.21 c2
-207.52 278.33 205.78 282.48 204.05 286.61 c2
-202.91 289.28 202.65 289.62 201.38 289.91 c2
- closepath
-206.33 284.27 m2
-207.19 282.21 208.07 280.13 208.92 278.06 c2
-208.91 278.06 l2
-209.77 280.13 210.62 282.21 211.48 284.27 c2
-211.48 284.29 l2
-209.77 284.29 208.04 284.29 206.33 284.29 c2
-206.33 284.27 l2
- closepath
-gs 0.00 g eofill gr
-n
-351.59 275.10 m2
-351.80 275.11 352.02 275.15 352.23 275.16 c2
-353.53 275.34 353.63 275.60 353.75 277.79 c2
-353.75 280.79 353.75 283.81 353.75 286.81 c2
-353.75 288.56 353.64 289.15 353.21 289.54 c2
-353.00 289.70 352.57 289.88 351.59 289.91 c2
-351.59 290.11 351.59 290.32 351.59 290.52 c2
-353.75 290.52 355.90 290.52 358.06 290.52 c2
-361.43 290.52 365.04 290.18 365.18 286.20 c2
-365.12 284.61 364.43 283.37 362.42 282.48 c2
-362.19 282.39 361.97 282.27 361.75 282.18 c2
-361.75 282.19 l2
-361.96 282.08 362.19 281.98 362.41 281.87 c2
-363.40 281.32 364.35 280.76 364.43 278.66 c2
-364.34 276.33 362.83 274.55 357.89 274.49 c2
-355.80 274.49 353.69 274.49 351.59 274.49 c2
-351.59 274.69 351.59 274.90 351.59 275.10 c2
- closepath
-356.32 282.83 m2
-356.71 282.83 357.10 282.83 357.48 282.83 c2
-360.95 282.97 362.23 283.98 362.32 286.11 c2
-362.24 288.34 361.00 289.40 358.00 289.40 c2
-357.46 289.40 356.97 289.34 356.77 289.29 c2
-356.69 289.28 356.63 289.25 356.57 289.20 c2
-356.49 289.15 356.39 289.03 356.37 288.93 c2
-356.37 288.93 356.32 288.65 356.32 287.99 c2
-356.32 286.28 356.32 284.54 356.32 282.83 c2
- closepath
-356.32 275.63 m2
-356.67 275.63 357.04 275.61 357.39 275.61 c2
-360.00 275.61 361.84 276.38 361.84 278.78 c2
-361.75 280.63 360.66 281.71 357.31 281.71 c2
-356.98 281.71 356.65 281.71 356.32 281.71 c2
-356.32 279.68 356.32 277.65 356.32 275.63 c2
- closepath
-gs 0.00 g eofill gr
-n
-600.00 543.75 m2
-567.91 503.96 576.24 436.10 562.12 463.06 c2
-548.00 490.01 551.21 492.58 544.15 495.15 c2
-537.09 497.71 515.91 401.45 513.99 350.10 c2
-512.06 298.76 504.36 294.27 498.58 316.73 c2
-485.00 369.57 483.18 369.36 465.21 370.64 c2
-447.24 371.93 454.94 183.24 431.84 179.39 c2
-408.73 175.54 415.15 81.84 387.55 122.91 c2
-359.96 163.98 367.66 117.78 353.54 126.76 c2
-339.42 135.75 340.06 248.70 327.22 232.02 c2
-314.39 215.33 309.25 269.24 299.63 309.03 c2
-290.00 348.82 270.75 329.57 259.84 270.52 c2
-248.93 211.48 257.27 160.13 243.15 176.82 c2
-229.03 193.51 229.03 257.69 221.97 220.46 c2
-214.91 183.24 214.27 133.18 203.36 161.42 c2
-192.45 189.66 193.73 192.22 187.96 175.54 c2
-182.18 158.85 184.10 110.08 179.61 157.57 c2
-175.12 205.06 182.18 386.04 154.58 391.18 c2
-126.98 396.31 140.46 362.94 125.70 456.64 c2
-110.94 550.34 75.00 543.92 75.00 543.92 c2
-75.00 103.12 l2
-600.00 103.12 l2
-600.00 543.75 l2
-closepath
-gs 1.00 g eofill gr
-1.56 0 0 0.00 [] 0 bwline
-n
-600.51 543.75 m2 568.42 503.96 576.24 436.10 562.12 463.06 c2 s
-562.12 463.06 m2 548.00 490.01 551.21 492.58 544.15 495.15 c2 s
-544.15 495.15 m2 537.09 497.71 515.91 401.45 513.99 350.10 c2 s
-513.99 350.10 m2 512.06 298.76 504.36 294.27 498.58 316.73 c2 s
-498.58 316.73 m2 485.00 369.57 483.18 369.36 465.21 370.64 c2 s
-465.21 370.64 m2 447.24 371.93 454.94 183.24 431.84 179.39 c2 s
-431.84 179.39 m2 408.73 175.54 415.15 81.84 387.55 122.91 c2 s
-387.55 122.91 m2 359.96 163.98 367.66 117.78 353.54 126.76 c2 s
-353.54 126.76 m2 339.42 135.75 340.06 248.70 327.22 232.02 c2 s
-327.22 232.02 m2 314.39 215.33 309.25 269.24 299.63 309.03 c2 s
-299.63 309.03 m2 290.00 348.82 270.75 329.57 259.84 270.52 c2 s
-259.84 270.52 m2 248.93 211.48 257.27 160.13 243.15 176.82 c2 s
-243.15 176.82 m2 229.03 193.51 229.03 257.69 221.97 220.46 c2 s
-221.97 220.46 m2 214.91 183.24 214.27 133.18 203.36 161.42 c2 s
-203.36 161.42 m2 192.45 189.66 193.73 192.22 187.96 175.54 c2 s
-187.96 175.54 m2 182.18 158.85 184.10 110.08 179.61 157.57 c2 s
-179.61 157.57 m2 175.12 205.06 182.18 386.04 154.58 391.18 c2 s
-154.58 391.18 m2 126.98 396.31 140.46 362.94 125.70 456.64 c2 s
-125.70 456.64 m2 110.94 550.34 75.00 543.92 75.00 543.92 c2 s
-75.00 543.92 m2 600.51 543.75 l2 s
-0.26 0 0 0.00 [14.5830 2.0830 ] 0 bwline
-n
-75.00 525.00 m2 600.51 525.00 l2 s
-
-n
-75.00 506.25 m2 600.51 506.25 l2 s
-
-n
-75.00 487.50 m2 600.51 487.50 l2 s
-
-n
-75.00 468.75 m2 600.51 468.75 l2 s
-
-n
-75.00 450.00 m2 600.51 450.00 l2 s
-
-n
-75.00 431.25 m2 600.51 431.25 l2 s
-
-n
-75.00 412.50 m2 600.51 412.50 l2 s
-
-n
-75.00 393.75 m2 600.51 393.75 l2 s
-
-n
-75.00 375.00 m2 600.51 375.00 l2 s
-
-n
-75.00 356.25 m2 600.51 356.25 l2 s
-
-n
-75.00 337.50 m2 600.51 337.50 l2 s
-
-n
-75.00 318.75 m2 600.51 318.75 l2 s
-
-n
-75.00 300.00 m2 600.51 300.00 l2 s
-
-n
-75.00 281.25 m2 600.51 281.25 l2 s
-
-n
-75.00 262.50 m2 600.51 262.50 l2 s
-
-n
-75.00 243.75 m2 600.51 243.75 l2 s
-
-n
-75.00 225.00 m2 600.51 225.00 l2 s
-
-n
-75.00 206.25 m2 600.51 206.25 l2 s
-
-n
-75.00 187.50 m2 600.51 187.50 l2 s
-
-n
-75.00 168.75 m2 600.51 168.75 l2 s
-
-n
-75.00 150.00 m2 600.51 150.00 l2 s
-
-n
-75.00 131.25 m2 600.51 131.25 l2 s
-
-n
-75.00 112.50 m2 600.51 112.50 l2 s
-600.51 112.50 m2 600.51 543.75 l2 s
-600.51 543.75 m2 75.00 543.75 l2 s
-75.00 543.75 m2 75.00 112.50 l2 s
-n
-299.02 571.85 m2
-300.54 571.85 302.09 571.85 303.61 571.85 c2
-303.62 571.65 303.64 571.44 303.66 571.24 c2
-302.72 571.24 302.43 571.20 302.23 571.02 c2
-302.09 570.95 302.00 570.77 302.00 570.60 c2
-302.00 570.28 302.36 569.60 302.53 569.32 c2
-303.11 568.30 303.68 567.28 304.25 566.26 c2
-304.25 566.27 l2
-305.70 566.27 307.16 566.27 308.60 566.27 c2
-308.60 566.26 l2
-308.75 567.11 308.91 567.97 309.06 568.82 c2
-309.09 569.09 309.13 569.36 309.16 569.63 c2
-309.19 569.84 309.19 569.84 309.20 570.04 c2
-309.20 570.12 309.20 570.12 309.21 570.20 c2
-309.16 571.03 308.47 571.25 307.50 571.24 c2
-307.49 571.44 307.46 571.65 307.45 571.85 c2
-309.48 571.85 311.52 571.85 313.55 571.85 c2
-313.56 571.65 313.58 571.44 313.59 571.24 c2
-312.11 571.24 311.92 571.16 311.52 569.07 c2
-310.75 564.66 309.96 560.24 309.19 555.82 c2
-309.05 555.82 308.91 555.82 308.77 555.82 c2
-306.02 560.58 303.26 565.36 300.52 570.12 c2
-299.98 571.00 299.72 571.09 299.07 571.24 c2
-299.06 571.44 299.03 571.65 299.02 571.85 c2
- closepath
-304.96 565.15 m2
-305.85 563.60 306.74 562.03 307.63 560.48 c2
-307.89 562.03 308.14 563.60 308.40 565.15 c2
-307.25 565.15 306.11 565.15 304.96 565.15 c2
- closepath
-gs 0.00 g eofill gr
-n
-316.13 571.85 m2
-316.77 571.85 317.41 571.85 318.04 571.85 c2
-318.31 571.02 318.59 570.16 318.86 569.33 c2
-319.93 565.98 321.02 564.32 322.00 563.16 c2
-322.61 562.55 322.60 562.56 322.75 562.49 c2
-322.77 562.49 322.77 562.50 322.84 562.48 c2
-322.91 562.50 322.93 562.50 322.99 562.54 c2
-323.04 562.61 323.06 562.62 323.26 562.96 c2
-323.39 563.23 323.72 563.46 324.08 563.46 c2
-324.76 563.46 325.27 562.92 325.27 562.10 c2
-325.22 561.16 324.84 560.89 324.08 560.79 c2
-322.63 560.87 321.54 562.46 320.47 564.26 c2
-320.26 564.59 320.05 564.91 319.84 565.24 c2
-320.15 564.07 320.47 562.87 320.79 561.70 c2
-320.89 561.32 320.89 561.18 320.89 561.11 c2
-320.89 560.84 320.74 560.84 320.56 560.79 c2
-320.52 560.79 320.29 560.81 320.18 560.85 c2
-319.75 560.98 318.11 561.32 317.08 561.45 c2
-317.04 561.60 316.98 561.77 316.93 561.93 c2
-317.26 561.91 317.59 561.89 317.92 561.88 c2
-318.24 561.91 318.23 561.91 318.37 561.98 c2
-318.41 562.03 318.41 562.03 318.44 562.07 c2
-318.48 562.14 318.48 562.14 318.52 562.21 c2
-318.58 562.37 318.68 562.49 318.42 563.71 c2
-318.28 564.28 318.13 564.87 317.99 565.44 c2
-317.94 565.61 317.89 565.77 317.84 565.93 c2
-317.53 567.04 317.21 568.14 316.90 569.24 c2
-316.65 570.11 316.38 570.98 316.13 571.85 c2
- closepath
-gs 0.00 g eofill gr
-n
-328.17 567.16 m2
-328.27 567.15 328.39 567.13 328.48 567.12 c2
-331.60 566.57 335.04 565.30 335.04 562.54 c2
-335.04 561.68 334.51 560.86 333.05 560.79 c2
-329.86 560.87 325.67 564.56 325.67 568.66 c2
-325.61 570.45 326.66 571.49 327.52 571.83 c2
-328.95 572.51 330.76 572.30 333.41 570.01 c2
-333.59 569.86 333.78 569.68 333.95 569.53 c2
-333.85 569.40 333.72 569.26 333.61 569.13 c2
-333.53 569.20 333.45 569.27 333.37 569.34 c2
-331.54 570.88 331.01 571.01 330.24 571.01 c2
-329.15 571.01 328.32 570.37 327.99 569.55 c2
-327.88 569.32 327.71 568.82 328.17 567.16 c2
- closepath
-328.42 566.46 m2
-329.33 563.63 331.23 561.59 332.49 561.49 c2
-333.08 561.49 333.34 562.02 333.34 562.37 c2
-333.34 564.09 331.44 565.73 328.42 566.46 c2
- closepath
-gs 0.00 g eofill gr
-n
-343.48 568.66 m2
-343.12 570.07 343.03 570.71 343.03 571.08 c2
-343.03 571.41 343.12 571.82 343.56 572.02 c2
-344.33 572.53 345.78 571.56 347.06 569.99 c2
-347.20 569.81 347.35 569.64 347.49 569.46 c2
-347.37 569.32 347.23 569.18 347.12 569.04 c2
-346.99 569.19 346.86 569.34 346.73 569.50 c2
-346.00 570.33 345.39 570.73 345.22 570.73 c2
-345.19 570.73 345.16 570.74 345.13 570.70 c2
-345.10 570.70 345.05 570.67 345.05 570.63 c2
-345.02 570.60 344.98 570.50 344.98 570.20 c2
-344.98 569.77 345.30 568.24 345.88 566.51 c2
-345.98 566.17 346.42 564.48 346.48 564.28 c2
-346.62 563.77 346.76 563.24 346.90 562.72 c2
-346.97 562.45 347.07 562.18 347.14 561.91 c2
-347.22 561.63 347.31 561.35 347.40 561.07 c2
-346.79 561.07 346.15 561.07 345.54 561.07 c2
-345.47 561.33 345.39 561.61 345.32 561.87 c2
-344.91 561.38 344.60 560.86 343.45 560.79 c2
-341.21 560.86 336.24 564.30 336.24 569.20 c2
-336.16 571.36 337.81 572.13 338.69 572.13 c2
-340.63 572.13 341.81 570.87 343.17 569.09 c2
-343.27 568.95 343.38 568.80 343.48 568.66 c2
- closepath
-338.44 569.05 m2
-338.44 565.73 341.33 561.62 343.48 561.49 c2
-344.50 561.49 344.79 562.43 344.79 562.99 c2
-344.79 568.11 340.54 571.28 339.33 570.71 c2
-339.19 570.66 338.99 570.54 338.89 570.41 c2
-338.76 570.26 338.40 569.84 338.44 569.05 c2
- closepath
-gs 0.00 g eofill gr
-n
-56.23 365.72 m2
-56.23 363.94 56.23 362.14 56.24 360.36 c2
-56.25 354.23 53.62 348.28 46.81 348.17 c2
-41.97 348.24 40.22 351.44 40.21 355.91 c2
-40.21 357.93 40.21 359.95 40.20 361.96 c2
-40.40 362.01 40.61 362.08 40.81 362.13 c2
-40.88 361.04 40.93 361.03 41.02 360.78 c2
-41.13 360.51 41.25 360.40 41.38 360.32 c2
-41.46 360.29 41.55 360.24 41.76 360.24 c2
-42.09 360.24 42.21 360.24 44.34 360.83 c2
-47.26 361.66 50.17 362.48 53.09 363.31 c2
-54.91 363.89 55.30 364.08 55.40 364.51 c2
-55.48 364.69 55.59 365.10 55.62 365.55 c2
-55.82 365.60 56.03 365.67 56.23 365.72 c2
- closepath
-52.30 360.59 m2
-49.43 359.75 46.54 358.92 43.67 358.08 c2
-43.40 358.00 42.59 357.76 42.42 357.71 c2
-41.66 357.51 41.34 357.44 41.34 355.87 c2
-41.34 352.79 43.12 351.00 46.39 350.93 c2
-51.79 351.07 56.13 355.03 55.04 360.40 c2
-54.96 360.81 54.83 361.08 54.34 361.08 c2
-54.22 361.07 53.68 361.01 52.30 360.59 c2
- closepath
-gs 0.00 g eofill gr
-n
-51.58 344.35 m2
-51.57 344.26 51.54 344.14 51.53 344.05 c2
-50.99 340.93 49.73 337.48 46.96 337.48 c2
-46.11 337.48 45.29 338.00 45.21 339.47 c2
-45.29 342.65 48.97 346.86 53.08 346.87 c2
-54.86 346.93 55.90 345.88 56.24 345.02 c2
-56.93 343.59 56.72 341.77 54.44 339.12 c2
-54.29 338.95 54.11 338.76 53.96 338.58 c2
-53.83 338.69 53.69 338.82 53.56 338.92 c2
-53.63 339.00 53.70 339.08 53.77 339.17 c2
-55.30 341.00 55.43 341.53 55.43 342.30 c2
-55.43 343.39 54.79 344.22 53.97 344.55 c2
-53.74 344.65 53.23 344.83 51.58 344.35 c2
- closepath
-50.88 344.11 m2
-48.04 343.19 46.01 341.29 45.92 340.03 c2
-45.92 339.43 46.45 339.18 46.80 339.18 c2
-48.52 339.18 50.16 341.08 50.88 344.11 c2
- closepath
-gs 0.00 g eofill gr
-n
-56.28 336.30 m2
-56.28 335.68 56.29 335.03 56.29 334.41 c2
-55.29 334.09 54.30 333.76 53.30 333.44 c2
-52.06 333.01 50.72 332.61 48.29 330.61 c2
-47.16 329.58 46.59 328.97 46.60 328.26 c2
-46.60 327.98 46.75 327.94 46.92 327.81 c2
-47.03 327.80 47.14 327.78 47.24 327.77 c2
-47.59 327.77 48.44 327.94 48.75 328.04 c2
-50.18 328.46 51.61 328.87 53.04 329.28 c2
-54.20 329.64 55.14 329.71 55.29 329.71 c2
-55.39 329.71 55.69 329.68 55.80 329.63 c2
-56.25 329.45 56.58 329.08 56.58 328.54 c2
-56.58 328.15 56.35 327.52 55.97 327.05 c2
-55.51 326.44 55.18 326.21 54.44 325.64 c2
-54.17 325.47 53.90 325.27 53.63 325.09 c2
-53.54 325.23 53.45 325.37 53.35 325.51 c2
-54.98 326.62 55.46 327.10 55.46 327.53 c2
-55.46 327.60 55.42 327.70 55.39 327.73 c2
-55.35 327.78 55.25 327.83 55.09 327.83 c2
-54.95 327.83 54.87 327.82 54.73 327.78 c2
-54.38 327.68 54.00 327.56 53.65 327.47 c2
-52.02 327.01 50.40 326.54 48.77 326.08 c2
-48.16 325.91 47.71 325.80 47.21 325.73 c2
-47.13 325.73 47.02 325.73 46.94 325.73 c2
-45.85 325.79 45.23 326.28 45.24 327.22 c2
-45.26 327.48 45.26 327.50 45.30 327.77 c2
-45.63 328.98 46.59 330.22 48.54 331.56 c2
-48.86 331.78 49.20 332.03 49.53 332.25 c2
-49.72 332.38 49.92 332.51 50.10 332.64 c2
-49.00 332.30 47.90 331.96 46.80 331.62 c2
-46.51 331.52 46.51 331.52 46.21 331.44 c2
-45.91 331.36 45.91 331.36 45.59 331.26 c2
-45.41 331.24 l2
-45.38 331.25 45.38 331.25 45.35 331.25 c2
-45.34 331.25 45.34 331.25 45.32 331.25 c2
-45.30 331.27 45.29 331.28 45.27 331.30 c2
-45.25 331.33 45.25 331.33 45.24 331.35 c2
-45.24 331.41 45.24 331.41 45.23 331.47 c2
-45.23 331.51 45.23 331.55 45.23 331.59 c2
-45.29 331.86 45.35 332.15 45.40 332.42 c2
-45.55 333.32 45.73 334.23 45.88 335.13 c2
-46.03 335.18 46.21 335.25 46.36 335.29 c2
-46.36 335.07 46.34 334.84 46.34 334.62 c2
-46.37 334.25 46.39 334.10 46.58 333.92 c2
-46.82 333.76 47.24 333.77 47.72 333.89 c2
-48.63 334.13 49.56 334.38 50.47 334.61 c2
-51.36 334.87 52.28 335.13 53.17 335.39 c2
-54.20 335.68 55.25 336.00 56.28 336.30 c2
- closepath
-gs 0.00 g eofill gr
-n
-52.61 323.49 m2
-53.93 323.66 55.26 323.84 56.59 324.00 c2
-56.59 323.84 56.59 323.66 56.59 323.50 c2
-56.39 323.41 56.31 323.30 56.27 323.20 c2
-56.20 323.08 56.15 323.11 56.46 321.70 c2
-56.55 321.37 56.59 320.92 56.60 320.54 c2
-56.60 317.98 54.81 316.93 53.45 316.87 c2
-52.63 316.91 51.89 317.19 51.18 317.61 c2
-50.72 317.91 50.25 318.23 49.79 318.53 c2
-49.37 318.80 48.92 319.07 48.50 319.34 c2
-48.28 319.49 48.05 319.64 47.83 319.79 c2
-47.66 319.94 47.35 320.03 47.13 320.00 c2
-46.19 320.00 45.99 319.14 45.96 318.64 c2
-46.04 317.47 46.70 316.67 48.21 316.38 c2
-48.38 316.36 48.56 316.34 48.73 316.31 c2
-48.74 316.16 48.76 316.00 48.78 315.84 c2
-47.60 315.67 46.43 315.49 45.26 315.31 c2
-45.26 315.43 45.26 315.54 45.26 315.66 c2
-45.32 315.71 45.38 315.76 45.44 315.80 c2
-45.58 315.94 45.68 316.11 45.68 316.37 c2
-45.69 316.47 45.69 316.72 45.45 317.49 c2
-45.30 318.04 45.29 318.28 45.25 318.74 c2
-45.33 320.74 46.68 321.69 47.85 321.69 c2
-48.68 321.73 49.68 321.20 50.10 320.93 c2
-50.63 320.59 51.18 320.24 51.71 319.91 c2
-52.21 319.61 52.72 319.31 53.22 319.02 c2
-53.96 318.60 54.20 318.57 54.30 318.56 c2
-55.18 318.66 55.89 319.35 55.89 320.36 c2
-55.89 321.43 55.30 322.36 53.15 322.87 c2
-53.00 322.91 52.85 322.94 52.71 322.98 c2
-52.68 323.14 52.64 323.33 52.61 323.49 c2
- closepath
-gs 0.00 g eofill gr
-n
-46.40 313.23 m2
-46.40 312.96 46.40 312.69 46.40 312.42 c2
-46.40 312.23 46.39 311.91 46.66 311.70 c2
-46.77 311.63 46.86 311.59 47.00 311.59 c2
-47.11 311.59 47.19 311.59 47.54 311.69 c2
-47.69 311.72 47.87 311.76 48.02 311.79 c2
-49.69 312.28 51.35 312.79 53.01 313.27 c2
-54.00 313.59 54.59 313.67 55.03 313.67 c2
-55.79 313.67 56.33 313.35 56.54 312.88 c2
-56.58 312.79 56.61 312.60 56.61 312.42 c2
-56.61 311.52 56.04 310.70 54.51 309.55 c2
-54.31 309.39 54.09 309.23 53.89 309.08 c2
-53.78 309.22 53.68 309.36 53.57 309.50 c2
-53.76 309.64 53.97 309.80 54.16 309.94 c2
-54.28 310.06 54.90 310.55 55.00 310.63 c2
-55.44 311.00 55.49 311.20 55.49 311.39 c2
-55.49 311.74 55.31 311.79 55.09 311.79 c2
-55.04 311.79 55.00 311.79 54.95 311.79 c2
-54.88 311.77 54.80 311.74 54.73 311.73 c2
-54.35 311.63 53.96 311.51 53.59 311.42 c2
-51.24 310.76 48.87 310.09 46.52 309.42 c2
-46.39 309.39 46.25 309.34 46.12 309.31 c2
-45.73 309.18 45.65 309.18 45.53 309.18 c2
-45.47 309.17 45.44 309.19 45.38 309.22 c2
-45.33 309.26 45.29 309.32 45.27 309.45 c2
-45.30 309.61 45.27 309.52 45.32 309.73 c2
-45.34 309.90 45.39 310.08 45.41 310.25 c2
-45.57 311.18 45.76 312.13 45.92 313.06 c2
-46.07 313.12 46.25 313.17 46.40 313.23 c2
- closepath
-41.74 310.69 m2
-42.52 310.69 42.97 310.24 42.98 309.54 c2
-42.98 308.96 42.54 308.30 41.67 308.30 c2
-40.93 308.34 40.40 308.79 40.40 309.47 c2
-40.40 310.13 40.92 310.69 41.74 310.69 c2
- closepath
-gs 0.00 g eofill gr
-n
-46.50 304.41 m2
-48.74 305.05 50.99 305.70 53.22 306.33 c2
-54.51 306.71 55.09 306.85 55.40 306.85 c2
-55.91 306.86 56.62 306.57 56.62 305.74 c2
-56.63 304.50 55.80 303.62 53.60 302.17 c2
-53.51 302.29 53.43 302.43 53.35 302.55 c2
-53.51 302.66 53.69 302.78 53.85 302.89 c2
-53.88 302.90 53.92 302.94 53.95 302.95 c2
-54.11 303.08 54.30 303.21 54.46 303.34 c2
-55.01 303.78 55.50 304.18 55.50 304.49 c2
-55.50 304.51 55.48 304.59 55.48 304.59 c2
-55.47 304.64 55.38 304.72 55.36 304.73 c2
-55.30 304.80 55.18 304.84 55.08 304.81 c2
-55.01 304.81 54.83 304.81 54.56 304.73 c2
-54.40 304.70 54.22 304.65 54.06 304.61 c2
-51.54 303.91 49.02 303.17 46.51 302.47 c2
-46.51 301.81 46.51 301.15 46.51 300.50 c2
-46.21 300.43 45.88 300.34 45.57 300.27 c2
-45.57 300.92 45.57 301.57 45.57 302.22 c2
-44.75 302.00 43.91 301.78 43.09 301.57 c2
-43.08 301.70 43.08 301.84 43.08 301.97 c2
-44.58 303.41 45.47 304.28 45.89 306.04 c2
-46.09 306.10 46.30 306.17 46.50 306.23 c2
-46.50 305.63 46.50 305.01 46.50 304.41 c2
- closepath
-gs 0.00 g eofill gr
-n
-45.95 300.81 m2
-46.10 300.79 46.27 300.77 46.43 300.75 c2
-46.37 300.31 46.38 300.12 46.38 299.81 c2
-46.38 299.14 46.69 297.52 55.90 296.24 c2
-56.10 296.22 56.33 296.18 56.53 296.16 c2
-56.81 296.33 57.11 296.53 57.39 296.71 c2
-59.12 297.83 59.95 298.75 59.95 299.28 c2
-59.95 299.39 59.92 299.53 59.88 299.59 c2
-59.49 300.17 59.31 300.33 59.31 300.76 c2
-59.35 301.59 59.95 301.78 60.36 301.78 c2
-61.08 301.78 61.46 301.23 61.46 300.53 c2
-61.47 298.27 51.44 291.00 46.88 290.74 c2
-45.85 290.79 45.32 291.31 45.31 291.98 c2
-45.31 292.32 45.40 292.53 45.50 292.63 c2
-45.65 292.81 45.95 292.96 46.33 292.94 c2
-46.54 292.94 46.69 292.92 46.78 292.85 c2
-46.90 292.81 47.10 292.65 47.21 292.45 c2
-47.63 291.92 47.53 291.92 47.90 291.83 c2
-47.99 291.81 48.06 291.81 48.17 291.81 c2
-48.58 291.84 48.72 291.78 50.19 292.47 c2
-50.47 292.61 51.81 293.25 52.15 293.41 c2
-52.25 293.47 52.25 293.47 52.35 293.51 c2
-52.44 293.56 52.44 293.56 52.52 293.61 c2
-52.91 293.83 53.32 294.07 53.71 294.29 c2
-53.93 294.41 54.16 294.55 54.38 294.67 c2
-54.38 294.68 l2
-54.09 294.72 53.77 294.78 53.48 294.83 c2
-50.01 295.49 47.06 296.20 45.59 296.97 c2
-45.54 297.02 45.46 297.08 45.40 297.12 c2
-45.34 297.23 45.32 297.30 45.30 297.43 c2
-45.30 297.44 45.31 297.70 45.38 298.02 c2
-45.56 298.95 45.76 299.89 45.95 300.81 c2
- closepath
-gs 0.00 g eofill gr
-gr
-endpage
-showpage
-
-%%EndProcessColor
-
-end
-restore
-
-%%Pages: 1
-
-%%EndDocument
- @endspecial 0 2021 a Fv(Figure)35 b(3:)52 b(A)36 b(sc)m(hematic)g
-(diagram)g(of)g(the)f(metho)s(d)h(used)f(to)h(deblend)e(a)i(comp)s
-(osite)g(ob)5 b(ject.)57 b(The)36 b(area)0 2133 y(pro\014le)k(of)h(the)
-g(ob)5 b(ject)42 b(\(smo)s(oth)f(curv)m(e\))h(can)g(b)s(e)e(describ)s
-(ed)f(in)h(a)h(tree-structured)g(w)m(a)m(y)h(\(thic)m(k)g(lines\).)0
-2246 y(The)i(decision)g(to)h(regard)g(or)g(not)f(a)i(branc)m(h)e(as)h
-(a)g(distinct)e(ob)5 b(ject)46 b(is)d(determined)h(according)h(to)g
-(its)0 2359 y(relativ)m(e)28 b(in)m(tegrated)h(in)m(tensit)m(y)e(\(tin)
-m(ted)h(area\).)41 b(In)28 b(that)g(case)h(ab)s(o)m(v)m(e,)h(the)e
-(original)e(ob)5 b(ject)29 b(shall)d(split)g(in)m(to)0
-2472 y(t)m(w)m(o)37 b(comp)s(onen)m(ts)e(A)g(and)g(B.)h(Remaining)d
-(pixels)h(are)h(assigned)g(to)h(their)e(most)i(credible)d
-(\\progenitors")0 2585 y(afterw)m(ards.)709 3586 y @beginspecial
-60 @llx 80 @lly 410 @urx 210 @ury 2834 @rwi @setspecial
-%%BeginDocument: sepsim_pos.ps
-%!PS-Adobe-2.0 EPSF-2.0
-%%Creator: gnuplot
-%%DocumentFonts: Times-Roman
-%%BoundingBox: 60 80 410 210
-%%EndComments
-/gnudict 40 dict def
-gnudict begin
-/Color false def
-/gnulinewidth 5.000 def
-/vshift -60 def
-/dl {10 mul} def
-/hpt 31.5 def
-/vpt 31.5 def
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow { currentpoint stroke moveto
- 0 vshift rmoveto show } def
-/Rshow { currentpoint stroke moveto
- dup stringwidth pop neg vshift rmoveto show } def
-/Cshow { currentpoint stroke moveto
- dup stringwidth pop -2 div vshift rmoveto show } def
-/DL { Color {setrgbcolor [] 0 setdash pop}
- {pop pop pop 0 setdash} ifelse } def
-/BL { stroke gnulinewidth 2 mul setlinewidth } def
-/AL { stroke gnulinewidth 2 div setlinewidth } def
-/PL { stroke gnulinewidth setlinewidth } def
-/LTb { BL [] 0 0 0 DL } def
-/LTa { AL [1 dl 2 dl] 0 setdash 0 0 0 setrgbcolor } def
-/LT0 { PL [] 0 1 0 DL } def
-/LT1 { PL [4 dl 2 dl] 0 0 1 DL } def
-/LT2 { PL [2 dl 3 dl] 1 0 0 DL } def
-/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def
-/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def
-/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def
-/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def
-/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def
-/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def
-/M {moveto} def
-/L {lineto} def
-/P { stroke [] 0 setdash
- currentlinewidth 2 div sub moveto
- 0 currentlinewidth rlineto stroke } def
-/D { stroke [] 0 setdash 2 copy vpt add moveto
- hpt neg vpt neg rlineto hpt vpt neg rlineto
- hpt vpt rlineto hpt neg vpt rlineto closepath stroke
- P } def
-/A { stroke [] 0 setdash vpt sub moveto 0 vpt2 rlineto
- currentpoint stroke moveto
- hpt neg vpt neg rmoveto hpt2 0 rlineto stroke
- } def
-/B { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add moveto
- 0 vpt2 neg rlineto hpt2 0 rlineto 0 vpt2 rlineto
- hpt2 neg 0 rlineto closepath stroke
- P } def
-/C { stroke [] 0 setdash exch hpt sub exch vpt add moveto
- hpt2 vpt2 neg rlineto currentpoint stroke moveto
- hpt2 neg 0 rmoveto hpt2 vpt2 rlineto stroke } def
-/T { stroke [] 0 setdash 2 copy vpt 1.12 mul add moveto
- hpt neg vpt -1.62 mul rlineto
- hpt 2 mul 0 rlineto
- hpt neg vpt 1.62 mul rlineto closepath stroke
- P } def
-/S { 2 copy A C} def
-end
-%%EndProlog
-gnudict begin
-gsave
-50 50 translate
-0.050 0.050 scale
-0 setgray
-/Times-Roman findfont 180 scalefont setfont
-newpath
-LTa
-1296 1853 M
-6921 1853 L
-1296 631 M
-1296 3076 L
-LTb
-1296 1038 M
-1359 1038 L
-6921 1038 M
-6858 1038 L
-1188 1038 M
-(-0.4) Rshow
-1296 1446 M
-1359 1446 L
-6921 1446 M
-6858 1446 L
-1188 1446 M
-(-0.2) Rshow
-1296 1853 M
-1359 1853 L
-6921 1853 M
-6858 1853 L
-1188 1853 M
-(0) Rshow
-1296 2261 M
-1359 2261 L
-6921 2261 M
-6858 2261 L
-1188 2261 M
-(0.2) Rshow
-1296 2669 M
-1359 2669 L
-6921 2669 M
-6858 2669 L
-1188 2669 M
-(0.4) Rshow
-1296 631 M
-1296 694 L
-1296 3076 M
-1296 3013 L
-1296 451 M
-() Cshow
-2234 631 M
-2234 694 L
-2234 3076 M
-2234 3013 L
-2234 451 M
-() Cshow
-3171 631 M
-3171 694 L
-3171 3076 M
-3171 3013 L
-3171 451 M
-() Cshow
-4109 631 M
-4109 694 L
-4109 3076 M
-4109 3013 L
-4109 451 M
-() Cshow
-5046 631 M
-5046 694 L
-5046 3076 M
-5046 3013 L
-5046 451 M
-() Cshow
-5984 631 M
-5984 694 L
-5984 3076 M
-5984 3013 L
-5984 451 M
-() Cshow
-6921 631 M
-6921 694 L
-6921 3076 M
-6921 3013 L
-6921 451 M
-() Cshow
-LTb
-1296 631 M
-6921 631 L
-6921 3076 L
-1296 3076 L
-1296 631 L
-396 1853 M
-currentpoint gsave translate 90 rotate 0 0 moveto
-(Centroid error \(pixels\)) Cshow
-grestore
-4109 2669 M
-(Centroid) Cshow
-LT0
-2702 1242 M
-2702 1038 L
-2657 1083 M
-2702 1038 L
-2747 1083 L
-LT1
-6318 2833 M
-(m=21) Rshow
-6426 2833 M
-6750 2833 L
-2608 1882 M
-2608 1882 L
-2796 1801 L
-2983 1572 L
-3171 1737 L
-3359 1739 L
-3546 1748 L
-3734 1974 L
-3921 1666 L
-4108 1943 L
-4296 1878 L
-4484 1864 L
-4671 2019 L
-4859 1906 L
-5046 1813 L
-5233 1693 L
-5421 1909 L
-5609 1872 L
-5796 2045 L
-5983 1780 L
-6171 1923 L
-6359 2053 L
-6546 1964 L
-6734 1684 L
-6920 1890 L
-LT0
-6318 2653 M
-(m=19) Rshow
-6426 2653 M
-6750 2653 L
-2233 2785 M
-2233 2785 L
-2421 2294 L
-2609 1564 L
-2796 1713 L
-2984 1727 L
-3171 1996 L
-3359 1856 L
-3546 1805 L
-3734 1578 L
-3921 2051 L
-4108 1605 L
-4296 1605 L
-4483 1741 L
-4671 1784 L
-4858 1937 L
-5046 1909 L
-5233 2002 L
-5421 1939 L
-5608 1896 L
-5796 1670 L
-5984 1994 L
-6171 2076 L
-6358 1937 L
-6546 2100 L
-6733 1756 L
-6921 1800 L
-LT3
-6318 2473 M
-(m=15) Rshow
-6426 2473 M
-6750 2473 L
-3171 2008 M
-3171 2008 L
-3358 1811 L
-3546 1837 L
-3734 1782 L
-3921 1870 L
-4109 1721 L
-4296 1900 L
-4483 1778 L
-4671 1627 L
-4859 1923 L
-5046 1774 L
-5234 1972 L
-5421 1839 L
-5609 1964 L
-5796 2031 L
-5983 1707 L
-6171 1851 L
-6359 1888 L
-6546 1917 L
-6734 1788 L
-6921 1837 L
-LT4
-6318 2293 M
-(m=11) Rshow
-6426 2293 M
-6750 2293 L
-5233 1811 M
-5233 1811 L
-5421 1941 L
-5609 1269 L
-5796 1511 L
-5984 1680 L
-6171 1845 L
-6359 1430 L
-6546 1756 L
-6733 1452 L
-6921 1668 L
-LT2
-1872 631 M
-1872 3076 L
-stroke
-grestore
-end
-showpage
-%%Trailer
-
-%%EndDocument
- @endspecial 993 x @beginspecial 60 @llx 60 @lly 410
- at urx 206 @ury 2834 @rwi @setspecial
-%%BeginDocument: sepsim_mag.ps
-%!PS-Adobe-2.0 EPSF-2.0
-%%Creator: gnuplot
-%%DocumentFonts: Times-Roman
-%%BoundingBox: 60 60 410 206
-%%EndComments
-/gnudict 40 dict def
-gnudict begin
-/Color false def
-/gnulinewidth 5.000 def
-/vshift -60 def
-/dl {10 mul} def
-/hpt 31.5 def
-/vpt 31.5 def
-/vpt2 vpt 2 mul def
-/hpt2 hpt 2 mul def
-/Lshow { currentpoint stroke moveto
- 0 vshift rmoveto show } def
-/Rshow { currentpoint stroke moveto
- dup stringwidth pop neg vshift rmoveto show } def
-/Cshow { currentpoint stroke moveto
- dup stringwidth pop -2 div vshift rmoveto show } def
-/DL { Color {setrgbcolor [] 0 setdash pop}
- {pop pop pop 0 setdash} ifelse } def
-/BL { stroke gnulinewidth 2 mul setlinewidth } def
-/AL { stroke gnulinewidth 2 div setlinewidth } def
-/PL { stroke gnulinewidth setlinewidth } def
-/LTb { BL [] 0 0 0 DL } def
-/LTa { AL [1 dl 2 dl] 0 setdash 0 0 0 setrgbcolor } def
-/LT0 { PL [] 0 1 0 DL } def
-/LT1 { PL [4 dl 2 dl] 0 0 1 DL } def
-/LT2 { PL [2 dl 3 dl] 1 0 0 DL } def
-/LT3 { PL [1 dl 1.5 dl] 1 0 1 DL } def
-/LT4 { PL [5 dl 2 dl 1 dl 2 dl] 0 1 1 DL } def
-/LT5 { PL [4 dl 3 dl 1 dl 3 dl] 1 1 0 DL } def
-/LT6 { PL [2 dl 2 dl 2 dl 4 dl] 0 0 0 DL } def
-/LT7 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 1 0.3 0 DL } def
-/LT8 { PL [2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 2 dl 4 dl] 0.5 0.5 0.5 DL } def
-/M {moveto} def
-/L {lineto} def
-/P { stroke [] 0 setdash
- currentlinewidth 2 div sub moveto
- 0 currentlinewidth rlineto stroke } def
-/D { stroke [] 0 setdash 2 copy vpt add moveto
- hpt neg vpt neg rlineto hpt vpt neg rlineto
- hpt vpt rlineto hpt neg vpt rlineto closepath stroke
- P } def
-/A { stroke [] 0 setdash vpt sub moveto 0 vpt2 rlineto
- currentpoint stroke moveto
- hpt neg vpt neg rmoveto hpt2 0 rlineto stroke
- } def
-/B { stroke [] 0 setdash 2 copy exch hpt sub exch vpt add moveto
- 0 vpt2 neg rlineto hpt2 0 rlineto 0 vpt2 rlineto
- hpt2 neg 0 rlineto closepath stroke
- P } def
-/C { stroke [] 0 setdash exch hpt sub exch vpt add moveto
- hpt2 vpt2 neg rlineto currentpoint stroke moveto
- hpt2 neg 0 rmoveto hpt2 vpt2 rlineto stroke } def
-/T { stroke [] 0 setdash 2 copy vpt 1.12 mul add moveto
- hpt neg vpt -1.62 mul rlineto
- hpt 2 mul 0 rlineto
- hpt neg vpt 1.62 mul rlineto closepath stroke
- P } def
-/S { 2 copy A C} def
-end
-%%EndProlog
-gnudict begin
-gsave
-50 50 translate
-0.050 0.050 scale
-0 setgray
-/Times-Roman findfont 180 scalefont setfont
-newpath
-LTa
-1296 1853 M
-6921 1853 L
-1296 631 M
-1296 3076 L
-LTb
-1296 2669 M
-1359 2669 L
-6921 2669 M
-6858 2669 L
-1188 2669 M
-(-0.2) Rshow
-1296 2261 M
-1359 2261 L
-6921 2261 M
-6858 2261 L
-1188 2261 M
-(-0.1) Rshow
-1296 1853 M
-1359 1853 L
-6921 1853 M
-6858 1853 L
-1188 1853 M
-(0) Rshow
-1296 1446 M
-1359 1446 L
-6921 1446 M
-6858 1446 L
-1188 1446 M
-(0.1) Rshow
-1296 1038 M
-1359 1038 L
-6921 1038 M
-6858 1038 L
-1188 1038 M
-(0.2) Rshow
-1296 631 M
-1296 694 L
-1296 3076 M
-1296 3013 L
-1296 451 M
-(0) Cshow
-2234 631 M
-2234 694 L
-2234 3076 M
-2234 3013 L
-2234 451 M
-(5) Cshow
-3171 631 M
-3171 694 L
-3171 3076 M
-3171 3013 L
-3171 451 M
-(10) Cshow
-4109 631 M
-4109 694 L
-4109 3076 M
-4109 3013 L
-4109 451 M
-(15) Cshow
-5046 631 M
-5046 694 L
-5046 3076 M
-5046 3013 L
-5046 451 M
-(20) Cshow
-5984 631 M
-5984 694 L
-5984 3076 M
-5984 3013 L
-5984 451 M
-(25) Cshow
-6921 631 M
-6921 694 L
-6921 3076 M
-6921 3013 L
-6921 451 M
-(30) Cshow
-LTb
-1296 631 M
-6921 631 L
-6921 3076 L
-1296 3076 L
-1296 631 L
-396 1853 M
-currentpoint gsave translate 90 rotate 0 0 moveto
-(Magnitude error) Cshow
-grestore
-4108 91 M
-(Separation \(pixels\)) Cshow
-3921 2669 M
-(Magnitude) Cshow
-LT0
-LT1
-2608 1788 M
-2608 1788 L
-2796 1866 L
-2983 1654 L
-3171 1898 L
-3359 1878 L
-3546 1768 L
-3734 1858 L
-3921 1764 L
-4108 1886 L
-4296 1674 L
-4484 1650 L
-4671 1776 L
-4859 1699 L
-5046 1752 L
-5233 1735 L
-5421 1817 L
-5609 1862 L
-5796 1862 L
-5983 1743 L
-6171 1662 L
-6359 2016 L
-6546 1870 L
-6734 1585 L
-6920 1894 L
-LT0
-2233 1124 M
-2233 1124 L
-2421 1788 L
-2609 1866 L
-2796 1874 L
-2984 1825 L
-3171 1719 L
-3359 1752 L
-3546 1849 L
-3734 1898 L
-3921 1776 L
-4108 1756 L
-4296 1617 L
-4483 1760 L
-4671 1784 L
-4858 1894 L
-5046 1866 L
-5233 1662 L
-5421 1906 L
-5608 1662 L
-5796 1617 L
-5984 1821 L
-6171 1841 L
-6358 1678 L
-6546 1576 L
-6733 1902 L
-6921 1789 L
-LT3
-3171 2098 M
-3171 2098 L
-3358 2082 L
-3546 2004 L
-3734 1845 L
-3921 1898 L
-4109 2004 L
-4296 1813 L
-4483 1715 L
-4671 1833 L
-4859 1801 L
-5046 1870 L
-5234 1931 L
-5421 1825 L
-5609 1715 L
-5796 1731 L
-5983 1788 L
-6171 1735 L
-6359 1801 L
-6546 1780 L
-6734 1976 L
-6921 1617 L
-LT4
-5233 2171 M
-5233 2171 L
-5421 1894 L
-5609 2069 L
-5796 1874 L
-5984 1748 L
-6171 1886 L
-6359 1902 L
-6546 1658 L
-6733 1849 L
-6921 1866 L
-LT2
-1872 631 M
-1872 3076 L
-stroke
-grestore
-end
-showpage
-
-%%EndDocument
- @endspecial 0 4775 a(Figure)k(4:)57 b(Cen)m(troid)37
-b(and)g(corrected)i(isophotal)e(magnitude)g(errors)h(for)f(a)i(sim)m
-(ulated)d(19)3251 4742 y Fi(th)3360 4775 y Fv(magnitude)0
-4888 y(star)31 b(blended)e(with)h(a)i(11)p Fk(;)15 b
-Fv(15)p Fk(;)g Fv(19)34 b(and)d(21)1459 4855 y Fi(th)1561
-4888 y Fv(mag.)43 b(companion)30 b(as)i(a)f(function)f(of)h(distance)g
-(\(expressed)g(in)0 5001 y(pixels\).)37 b(Lines)21 b(stop)h(at)h(the)f
-(left)g(when)g(the)g(ob)5 b(jects)23 b(are)g(to)s(o)g(close)g(to)g(b)s
-(e)e(deblended.)36 b(The)22 b(dashed)f(v)m(ertical)0
-5114 y(line)32 b(is)h(the)i(theoretical)f(limit)e(for)i(unsaturated)f
-(stars)h(with)f(equal)h(magnitudes.)50 b(In)34 b(the)g(cen)m(troid)g
-(plot,)0 5227 y(the)f(arro)m(w)g(indicates)f(the)h(direction)f(of)h
-(the)g(neigh)m(b)s(our.)46 b(The)32 b(sim)m(ulation)f(assumes)i(a)g(1)g
-(hour)f(exp)s(osure)0 5340 y(with)25 b(the)i(CER)m(GA)g(telescop)s(e)h
-(on)e(a)h(I)s(I)s(IaJ)f(plate)g(and)h(Mo\013at)h(pro\014les)d(with)h(a)
-h(seeing)f(FWHM)i(of)f(3)g(pixels)0 5453 y(\(2)k("\).)1844
-5753 y(21)p eop
-%%Page: 22 22
-22 21 bop 0 -74 a Fv(are)37 b(generally)f(useless,)h(except)g(p)s
-(erhaps)e(for)i(images)f(ha)m(ving)g(an)h(un)m(usually)c(high)i
-(dynamic)h(range.)59 b(In)0 39 y(case)38 b(of)g(memory)f(problems,)g
-(decreasing)g(the)g(n)m(um)m(b)s(er)f(of)i(thresholds)d(to)j(sa)m(y)-8
-b(,)40 b(8)e(or)f(ev)m(en)h(less)e(ma)m(y)i(b)s(e)0 152
-y(a)d(solution.)50 b(But)35 b(then)e(of)i(course)f(a)h(degradation)f
-(of)g(the)g(deblending)e(p)s(erformances)h(ma)m(y)i(o)s(ccur.)52
-b(The)0 265 y(second)43 b(parameter)g(is)f(the)h(con)m(trast)h
-(parameter)g(\()p Fs(DEBLEND)p 2215 265 29 4 v 33 w(MINCONT)p
-Fv(\).)d(As)i(describ)s(ed)e(ab)s(o)m(v)m(e,)47 b(v)-5
-b(alues)0 378 y(from)25 b(0.001)j(to)e(0.01)h(giv)m(e)f(b)s(est)f
-(results.)38 b(Putting)25 b Fs(DEBLEND)p 2103 378 V 33
-w(MINCONT)e Fv(to)j(0)g(means)g(that)g(ev)m(en)g(the)g(fain)m(test)0
-491 y(lo)s(cal)38 b(p)s(eaks)h(in)f(the)h(pro\014le)f(will)e(b)s(e)i
-(considered)g(as)i(separate)f(ob)5 b(jects.)68 b(Putting)38
-b(it)h(to)h(1)f(means)g(that)0 604 y(no)d(deblending)d(will)g(b)s(e)j
-(authorized.)56 b(The)36 b(last)f(parameter)i(concerns)f(the)g(kind)e
-(of)i(scale)g(used)g(for)f(the)0 716 y(thresholds.)48
-b(If)33 b(the)h(image)f(comes)i(from)e(photographic)g(material,)g(then)
-h(a)f(linear)f(scale)i(has)f(to)h(b)s(e)f(used)0 829
-y(\()p Fs(DETECTION)p 473 829 V 32 w(TYPE)47 b(=)g(PHOTO)p
-Fv(\).)28 b(Otherwise,)g(for)h(an)f(image)h(obtained)f(with)g(a)h
-(linear)e(device)h(lik)m(e)g(a)i(CCD,)0 942 y(an)g(exp)s(onen)m(tial)g
-(scale)g(is)g(more)g(appropriate)g(\()p Fs(DETECTION)p
-2114 942 V 32 w(TYPE)47 b(=)g(CCD)p Fv(\).)0 1276 y Fu(7)135
-b(W)-11 b(eigh)l(ting)0 1526 y Fv(The)33 b(noise)g(lev)m(el)g(in)g
-(astronomical)g(images)h(is)e(often)i(fairly)e(constan)m(t,)k(that)e
-(is,)g(constan)m(t)h(v)-5 b(alues)33 b(for)g(the)0 1639
-y(gain,)45 b(the)d(bac)m(kground)f(noise)g(and)g(the)h(detection)h
-(thresholds)d(can)i(b)s(e)f(used)g(o)m(v)m(er)i(the)f(whole)f(frame.)0
-1752 y(Unfortunately)31 b(in)g(some)h(cases,)h(lik)m(e)f(strongly)f
-(vignetted)h(or)g(comp)s(osited)f(images,)i(this)e(appro)m(ximation)0
-1865 y(is)26 b(no)g(longer)h(go)s(o)s(d)f(enough.)39
-b(This)25 b(leads)h(to)i(detecting)f(clusters)f(of)h(detected)h(noise)e
-(p)s(eaks)g(in)g(the)h(noisiest)0 1978 y(parts)37 b(of)g(the)h(image,)h
-(or)e(missing)e(ob)m(vious)i(ob)5 b(jects)38 b(in)e(the)h(most)h
-(sensitiv)m(e)e(ones.)62 b(SExtractor)38 b(is)e(able)0
-2091 y(to)c(handle)e(images)i(with)e(v)-5 b(ariable)31
-b(noise.)44 b(It)31 b(do)s(es)h(it)f(through)g Fr(weight)j(maps)p
-Fv(,)f(whic)m(h)e(are)h(frames)f(ha)m(ving)0 2204 y(the)38
-b(same)g(size)f(as)h(the)g(images)g(where)f(ob)5 b(jects)38
-b(are)g(detected)h(or)f(measured,)h(and)e(whic)m(h)f(describ)s(e)g(the)
-0 2316 y(noise)31 b(in)m(tensit)m(y)f(at)i(eac)m(h)h(pixel.)42
-b(These)31 b(maps)f(are)i(in)m(ternally)d(stored)j(in)e(units)f(of)j
-Fr(absolute)i(varianc)-5 b(e)32 b Fv(\(in)0 2429 y(ADU)205
-2396 y Fo(2)245 2429 y Fv(\).)41 b(W)-8 b(e)30 b(emplo)m(y)f(the)g
-(generic)g(term)h(\\w)m(eigh)m(t)g(map")f(b)s(ecause)g(these)h(maps)e
-(can)i(also)f(b)s(e)f(in)m(terpreted)0 2542 y(as)38 b(qualit)m(y)f
-(index)f(maps:)55 b(in\014nite)36 b(v)-5 b(ariance)37
-b(\()p Fq(\025)h Fv(10)1885 2509 y Fo(30)1998 2542 y
-Fv(b)m(y)g(de\014nition)d(in)i(SExtractor\))h(means)g(that)g(the)0
-2655 y(related)j(pixel)f(in)g(the)h(science)g(frame)g(is)g(totally)g
-(unreliable)d(and)j(should)e(b)s(e)i(ignored.)72 b(The)41
-b(v)-5 b(ariance)0 2768 y(format)31 b(w)m(as)f(adopted)h(as)g(it)e
-(linearizes)g(most)i(of)f(the)h(op)s(erations)f(done)g(o)m(v)m(er)i(w)m
-(eigh)m(t)e(maps)g(\(see)i(b)s(elo)m(w\).)0 2928 y(This)g(means)h(that)
-h(the)f(noise)g(co)m(v)-5 b(ariances)34 b(b)s(et)m(w)m(een)g(pixels)e
-(are)i(ignored.)48 b(Although)33 b(ra)m(w)g(CCD)g(images)0
-3041 y(ha)m(v)m(e)d(essen)m(tially)e(white)h(noise,)g(this)f(is)g(not)h
-(the)h(case)g(for)f(co-added)g(images,)h(for)f(whic)m(h)f(resampling)f
-(ma)m(y)0 3154 y(induce)39 b(a)i(strong)g(correlation)g(b)s(et)m(w)m
-(een)g(neigh)m(b)s(ouring)d(pixels.)70 b(In)40 b(theory)-8
-b(,)44 b(all)c(non-zero)h(co)m(v)-5 b(ariances)0 3267
-y(within)34 b(the)i(geometrical)h(limits)d(of)i(the)h(analysed)e
-(patterns)i(should)d(b)s(e)i(tak)m(en)h(in)m(to)f(accoun)m(t)i(to)f
-(deriv)m(e)0 3380 y(thresholds)d(or)i(error)f(estimates.)57
-b(F)-8 b(ortunately)g(,)38 b(the)e(correlation)f(length)g(of)h(the)g
-(noise)f(is)g(often)h(smaller)0 3493 y(than)e(the)h(patterns)g(to)h(b)s
-(e)e(detected)i(or)e(measured,)i(and)e(constan)m(t)i(o)m(v)m(er)g(the)f
-(image.)54 b(In)34 b(that)h(case)h(one)0 3606 y(can)45
-b(apply)e(a)h(simple)f(\\fudge)h(factor")i(to)f(the)g(estimated)f(v)-5
-b(ariance)45 b(to)g(accoun)m(t)h(for)e(correlations)g(on)0
-3719 y(small)30 b(scales.)46 b(This)30 b(pro)m(v)m(es)i(to)h(b)s(e)e(a)
-h(go)s(o)s(d)g(appro)m(ximation)f(in)f(general,)j(although)e(it)g
-(certainly)g(leads)h(to)0 3832 y(underestimations)c(for)i(the)h
-(smallest)f(patterns.)0 4122 y Fp(7.1)112 b(W)-9 b(eigh)m(t-map)37
-b(formats)0 4341 y Fv(SExtractor)24 b(accepts)h(in)d(input,)i(and)f
-(con)m(v)m(erts)i(to)f(its)f(in)m(ternal)f(v)-5 b(ariance)24
-b(format,)h(sev)m(eral)f(t)m(yp)s(es)g(of)g(w)m(eigh)m(t-)0
-4454 y(maps.)49 b(This)31 b(is)h(con)m(trolled)h(through)g(the)g
-Fs(WEIGHT)p 1811 4454 V 33 w(TYPE)f Fv(con\014guration)g(k)m(eyw)m
-(ord.)50 b(These)33 b(w)m(eigh)m(t-maps)0 4567 y(can)f(either)f(b)s(e)g
-(read)h(from)f(a)h(FITS)f(\014le,)g(whose)h(name)g(is)e(sp)s(eci\014ed)
-g(b)m(y)i(the)g Fs(WEIGHT)p 3016 4567 V 32 w(IMAGE)f
-Fv(k)m(eyw)m(ord,)h(or)0 4680 y(computed)e(in)m(ternally)-8
-b(.)39 b(V)-8 b(alid)30 b Fs(WEIGHT)p 1388 4680 V 32
-w(TYPE)p Fv(s)f(are:)136 4915 y Fq(\017)46 b Fs(NONE)p
-Fv(:)27 b(No)h(w)m(eigh)m(ting)f(is)f(applied.)38 b(The)27
-b(related)g Fs(WEIGHT)p 2237 4915 V 33 w(IMAGE)e Fv(and)i
-Fs(WEIGHT)p 2997 4915 V 33 w(THRESH)f Fv(\(see)i(b)s(elo)m(w\))227
-5028 y(parameters)j(are)g(ignored.)136 5215 y Fq(\017)46
-b Fs(BACKGROUND)p Fv(:)35 b(the)j(science)g(image)f(itself)g(is)f(used)
-h(to)h(compute)g(in)m(ternally)d(a)j(v)-5 b(ariance)38
-b(map)f(\(the)227 5328 y(related)c Fs(WEIGHT)p 827 5328
-V 33 w(IMAGE)e Fv(parameter)j(is)e(ignored\).)48 b(Robust)33
-b(\(3)p Fk(\033)s Fv(-clipp)s(ed\))f(v)-5 b(ariance)32
-b(estimates)i(are)1844 5753 y(22)p eop
-%%Page: 23 23
-23 22 bop 227 -74 a Fv(\014rst)22 b(computed)g(within)e(the)j(same)f
-(bac)m(kground)h(meshes)f(as)g(those)h(describ)s(ed)d(in)i
-Fq(x)p Ft(??)3210 -107 y Fo(12)3284 -74 y Fv(.)38 b(The)22
-b(result-)227 39 y(ing)33 b(lo)m(w-resolution)g(v)-5
-b(ariance)34 b(map)g(is)f(then)g(bicubic-spline-in)m(terp)s(olated)c
-(on)34 b(the)h(\015y)e(to)i(pro)s(duce)227 152 y(the)k(actual)g
-(full-size)e(v)-5 b(ariance)39 b(map.)66 b(A)38 b(c)m(hec)m(k-image)j
-(with)d Fs(CHECKIMAGE)p 2965 152 29 4 v 32 w(TYPE)f(MINIBACK)p
-3610 152 V 32 w(RMS)227 265 y Fv(can)31 b(b)s(e)f(requested)g(to)h
-(examine)f(the)h(lo)m(w-resolution)e(v)-5 b(ariance)30
-b(map.)136 452 y Fq(\017)46 b Fs(MAP)p 377 452 V 34 w(RMS)p
-Fv(:)28 b(the)h(FITS)f(image)h(sp)s(eci\014ed)f(b)m(y)g(the)h
-Fs(WEIGHT)p 2194 452 V 33 w(IMAGE)f Fv(\014le)g(name)g(m)m(ust)h(con)m
-(tain)g(a)h(w)m(eigh)m(t-)227 565 y(map)g(in)f(units)g(of)i(absolute)f
-(standard)f(deviations)h(\(in)f(ADUs)i(p)s(er)e(pixel\).)136
-753 y Fq(\017)46 b Fs(MAP)p 377 753 V 34 w(VAR)p Fv(:)28
-b(the)h(FITS)f(image)h(sp)s(eci\014ed)f(b)m(y)g(the)h
-Fs(WEIGHT)p 2194 753 V 33 w(IMAGE)f Fv(\014le)g(name)g(m)m(ust)h(con)m
-(tain)g(a)h(w)m(eigh)m(t-)227 866 y(map)39 b(in)e(units)g(of)i(relativ)
-m(e)f(v)-5 b(ariance.)66 b(A)38 b(robust)g(scaling)g(to)h(the)g
-(appropriate)f(absolute)g(lev)m(el)g(is)227 979 y(then)e(p)s(erformed)f
-(b)m(y)h(comparing)f(this)h(v)-5 b(ariance)36 b(map)f(to)i(an)f(in)m
-(ternal,)h(lo)m(w-resolution,)g(absolute)227 1092 y(v)-5
-b(ariance)31 b(map)f(built)e(from)i(the)g(science)h(image)f(itself.)136
-1279 y Fq(\017)46 b Fs(MAP)p 377 1279 V 34 w(WEIGHT)p
-Fv(:)c(the)h(FITS)g(image)g(sp)s(eci\014ed)f(b)m(y)h(the)h
-Fs(WEIGHT)p 2439 1279 V 32 w(IMAGE)e Fv(\014le)h(name)g(m)m(ust)g(con)m
-(tain)h(a)227 1392 y(w)m(eigh)m(t-map)28 b(in)e(units)f(of)i(relativ)m
-(e)h(w)m(eigh)m(ts.)40 b(The)26 b(data)i(are)g(con)m(v)m(erted)g(to)g
-(v)-5 b(ariance)27 b(units)e(\(b)m(y)j(de\014-)227 1505
-y(nition)d(v)-5 b(ariance)25 b Fq(/)g Fv(1)p Fk(=)p Fv(w)m(eigh)m(t)r
-(\),)j(and)e(scaled)g(as)h(for)f Fs(MAP)p 2200 1505 V
-34 w(VAR)p Fv(.)g Fs(MAP)p 2573 1505 V 34 w(WEIGHT)e
-Fv(is)i(the)h(most)g(commonly)227 1618 y(used)i(t)m(yp)s(e)h(of)g(w)m
-(eigh)m(t-map:)41 b(a)30 b(\015at-\014eld,)g(for)f(example,)h(is)f
-(generally)g(a)h(go)s(o)s(d)g(appro)m(ximation)f(to)h(a)227
-1731 y(p)s(erfect)h(w)m(eigh)m(t-map.)0 2022 y Fp(7.2)112
-b(W)-9 b(eigh)m(t)36 b(threshold)0 2241 y Fv(It)28 b(ma)m(y)h(happ)s
-(en,)e(that)h(some)g(w)m(eigh)m(ts)h(are)f(to)s(o)h(lo)m(w)e(\(or)i(v)
--5 b(ariances)27 b(to)s(o)i(high\))e(to)i(b)s(e)e(of)h(an)m(y)g(in)m
-(terest:)40 b(it)27 b(is)0 2353 y(then)g(more)g(appropriate)f(to)i
-(discard)e(suc)m(h)g(pixels)g(than)h(to)g(include)e(them)i(in)f(un)m(w)
-m(eigh)m(ted)h(measuremen)m(ts)0 2466 y(suc)m(h)33 b(as)i
-Fs(FLUX)p 522 2466 V 33 w(APER)p Fv(.)e(T)-8 b(o)34 b(allo)m(w)f
-(discarding)f(these)i(v)m(ery)g(bad)g(pixels,)f(a)h(threshold)e(can)i
-(b)s(e)f(set)i(with)d(the)0 2579 y Fs(WEIGHT)p 294 2579
-V 33 w(THRESH)23 b Fv(parameter.)39 b(The)24 b(unit)g(in)f(whic)m(h)h
-(this)g(threshold)f(should)g(b)s(e)h(expressed)g(is)g(that)h(of)g
-(input)0 2692 y(data:)52 b(ADUs)37 b(for)f(BA)m(CK)m(GR)m(OUND)h(and)f
-(MAP)p 1788 2692 28 4 v 33 w(RMS)f(maps,)i(uncalibrated)d(ADUs)3094
-2659 y Fo(2)3170 2692 y Fv(for)i(MAP)p 3533 2692 V 33
-w(V)-10 b(AR,)0 2805 y(and)30 b(uncalibrated)g(w)m(eigh)m(t-v)-5
-b(alues)31 b(for)g(MAP)p 1621 2805 V 33 w(WEIGHT)g(maps.)43
-b(Dep)s(ending)29 b(on)i(the)g(w)m(eigh)m(t-map)h(t)m(yp)s(e,)0
-2918 y(the)i(threshold)f(will)e(set)k(a)g(lo)m(w)m(er)f(or)g(a)h
-(higher)d(limit)g(for)i(\\bad)g(pixel")f(v)-5 b(alues:)48
-b(higher)32 b(for)i(w)m(eigh)m(ts,)i(and)0 3031 y(lo)m(w)m(er)i(for)f
-(v)-5 b(ariances)37 b(and)g(standard)g(deviations.)61
-b(The)37 b(default)f(v)-5 b(alue)37 b(is)g(0)h(for)f(w)m(eigh)m(ts,)j
-(and)d(10)3558 2998 y Fo(30)3671 3031 y Fv(for)0 3144
-y(v)-5 b(ariance)30 b(and)g(standard)g(deviation)f(maps.)0
-3434 y Fp(7.3)112 b(E\013ect)37 b(of)h(w)m(eigh)m(ting)0
-3653 y Fv(W)-8 b(eigh)m(t-maps)31 b(mo)s(dify)e(the)i(w)m(orking)e(of)i
-(SExtractor)g(in)e(the)h(follo)m(wing)f(resp)s(ects:)111
-3888 y(1.)46 b(Bad)35 b(pixels)d(are)i(discarded)f(from)g(the)i(bac)m
-(kground)f(statistics.)51 b(If)34 b(more)g(than)g(50\045)h(of)f(the)g
-(pixels)227 4001 y(in)29 b(a)i(bac)m(kground)e(mesh)h(are)h(bad,)e(the)
-i(lo)s(cal)e(bac)m(kground)h(v)-5 b(alue)30 b(and)f(its)h(standard)f
-(deviation)g(are)227 4114 y(replaced)h(b)m(y)g(in)m(terp)s(olation)f
-(of)i(the)f(nearest)h(v)-5 b(alid)29 b(meshes.)111 4302
-y(2.)46 b(The)28 b(detection)h(threshold)d Fk(t)i Fv(ab)s(o)m(v)m(e)i
-(the)e(lo)s(cal)g(sky)g(bac)m(kground)g(is)f(adjusted)g(for)h(eac)m(h)i
-(pixel)c Fk(i)j Fv(with)227 4434 y(v)-5 b(ariance)37
-b Fk(\033)645 4401 y Fo(2)642 4458 y Fi(i)685 4434 y
-Fv(:)53 b Fk(t)796 4448 y Fi(i)861 4434 y Fv(=)35 b Fs(DETECT)p
-1260 4434 V 31 w(THRESH)23 b Fq(\002)1693 4334 y Fg(q)p
-1776 4334 95 4 v 100 x Fk(\033)1831 4402 y Fo(2)1828
-4459 y Fi(i)1870 4434 y Fv(,)39 b(where)d Fs(DETECT)p
-2497 4434 29 4 v 33 w(THRESH)f Fv(is)h(expressed)g(in)g(units)f(of)227
-4546 y(standard)27 b(deviations)g(of)h(the)g(bac)m(kground)g(noise.)39
-b(Pixels)26 b(with)h(v)-5 b(ariance)28 b(ab)s(o)m(v)m(e)h(the)f
-(threshold)e(set)227 4659 y(with)j(the)i Fs(WEIGHT)p
-885 4659 V 32 w(THRESH)e Fv(parameter)h(are)h(therefore)g(simply)c(not)
-k(detected.)42 b(This)28 b(ma)m(y)j(result)e(in)227 4772
-y(splitting)f(ob)5 b(jects)31 b(crossed)f(b)m(y)f(a)i(group)e(of)h(bad)
-g(pixels.)38 b(In)m(terp)s(olation)29 b(\(see)i Fq(x)p
-Fv(7.5\))h(should)c(b)s(e)h(used)227 4885 y(to)g(a)m(v)m(oid)g(this)f
-(problem.)38 b(If)28 b(con)m(v)m(olution)g(\014ltering)f(is)g(applied)g
-(for)h(detection,)h(the)g(v)-5 b(ariance)28 b(map)g(is)227
-4998 y(con)m(v)m(olv)m(ed)35 b(to)s(o.)52 b(This)32 b(yields)g(optim)m
-(um)h(scaling)g(of)h(the)g(detection)g(threshold)f(in)f(the)i(case)h
-(where)227 5111 y(noise)28 b(is)f(uncorrelated)g(from)g(pixel)g(to)h
-(pixel.)39 b(Non-linear)27 b(\014ltering)f(op)s(erations)h(\(lik)m(e)h
-(those)g(o\013ered)227 5224 y(b)m(y)j(arti\014cial)d(retinae\))j(are)g
-(not)f(a\013ected.)p 0 5285 1512 4 v 73 5339 a Fn(12)138
-5371 y Fm(The)c(mesh-\014ltering)f(pro)r(cedures)h(act)g(on)f(the)h(v)l
-(ariance)g(map,)f(to)r(o.)1844 5753 y Fv(23)p eop
-%%Page: 24 24
-24 23 bop 111 -74 a Fv(3.)46 b(The)27 b Fs(CLEAN)p Fv(ing)f(pro)s(cess)
-h(\()p Fq(x)p Ft(??)q Fv(\))h(tak)m(es)h(in)m(to)e(accoun)m(t)i(the)f
-(exact)h(individual)23 b(thresholds)j(assigned)h(to)227
-39 y(eac)m(h)32 b(pixel)d(for)h(deciding)e(ab)s(out)i(the)h(fate)g(of)g
-(fain)m(t)f(detections.)111 227 y(4.)46 b(Error)35 b(estimates)h(lik)m
-(e)f Fs(FLUXISO)p 1396 227 29 4 v 32 w(ERR)p Fv(,)g Fs(ERRA)p
-1824 227 V 34 w(IMAGE)p Fv(,)f(...)57 b(mak)m(e)36 b(use)f(of)h
-(individual)31 b(v)-5 b(ariances)35 b(to)s(o.)227 358
-y(Lo)s(cal)46 b(bac)m(kground-noise)g(standard)g(deviation)f(is)g
-(simply)f(set)j(to)2730 259 y Fg(q)p 2813 259 95 4 v
-99 x Fk(\033)2868 327 y Fo(2)2865 384 y Fi(i)2908 358
-y Fv(.)88 b(In)45 b(addition,)k(if)c(the)227 471 y Fs(WEIGHT)p
-521 471 29 4 v 33 w(GAIN)d Fv(parameter)h(is)f(set)h(to)g
-Fs(Y)g Fv(|)g(whic)m(h)e(is)h(the)h(default)f(|,)k(it)c(is)g(assumed)g
-(that)h(the)227 584 y(lo)s(cal)f(pixel)f(gain)h(\(i.e.,)k(the)d(con)m
-(v)m(ersion)g(factor)g(from)f(photo-electrons)h(to)g(ADUs\))h(is)d(in)m
-(v)m(ersely)227 697 y(prop)s(ortional)33 b(to)i Fk(\033)925
-664 y Fo(2)922 721 y Fi(i)965 697 y Fv(,)h(its)e(median)g(v)-5
-b(alue)34 b(o)m(v)m(er)i(the)f(image)g(b)s(eing)f(set)h(b)m(y)g(the)f
-Fs(GAIN)g Fv(con\014guration)227 810 y(parameter.)50
-b(In)32 b(other)h(w)m(ords,)h(it)e(is)h(then)f(supp)s(osed)g(that)h
-(the)h(c)m(hanges)g(in)d(noise)i(in)m(tensities)e(seen)227
-923 y(o)m(v)m(er)37 b(the)f(images)g(are)g(due)f(to)i(gain)e(c)m
-(hanges.)58 b(This)34 b(is)g(the)i(most)g(common)g(case:)53
-b(correction)36 b(for)227 1036 y(vignetting,)f(or)g(co)m(v)m(erage)i
-(depth.)52 b(When)34 b(this)g(is)f(not)i(the)f(case,)j(for)d(instance)g
-(when)g(c)m(hanges)h(are)227 1149 y(purely)29 b(dominated)g(b)m(y)i
-(those)f(of)h(the)g(read-out)f(noise,)g Fs(WEIGHT)p 2492
-1149 V 33 w(GAIN)f Fv(shall)g(b)s(e)h(set)h(to)g Fs(N)p
-Fv(.)111 1336 y(5.)46 b(Finally)-8 b(,)34 b(pixels)f(with)g(w)m(eigh)m
-(ts)h(b)s(ey)m(ond)g Fs(WEIGHT)p 1971 1336 V 33 w(THRESH)e
-Fv(are)j(treated)g(just)f(lik)m(e)g(pixels)e(discarded)227
-1449 y(b)m(y)f(the)f Fs(MASK)p Fv(ing)f(pro)s(cess)g(\()p
-Fq(x)p Ft(??)r Fv(\).)0 1740 y Fp(7.4)112 b(Com)m(bining)36
-b(w)m(eigh)m(t)g(maps)0 1959 y Fv(All)26 b(the)i(w)m(eigh)m(ting)g
-(options)f(listed)f(in)h Fq(x)p Fv(7.1)i(can)f(b)s(e)f(applied)f
-(separately)i(to)g(detection)h(and)e(measuremen)m(t)0
-2072 y(images)43 b(\()p Fq(x)p Ft(??)q Fv(\),)j(|)c(ev)m(en)h(if)f
-(some)g(com)m(binations)g(ma)m(y)h(not)g(alw)m(a)m(ys)g(mak)m(e)g
-(sense.)77 b(F)-8 b(or)43 b(instance,)i(the)0 2185 y(follo)m(wing)29
-b(set)i(of)f(con\014guration)g(lines:)0 2345 y Fs(WEIGHT_IMAGE)44
-b(rms.fits,weight.fits)0 2458 y(WEIGHT_TYPE)h(MAP_RMS,MAP_WEIGHT)0
-2618 y Fv(will)22 b(load)j(the)g(FITS)f(\014le)f Fs(rms.fits)g
-Fv(and)h(use)h(it)f(as)h(an)g(RMS)f(map)h(for)f(adjusting)g(the)h
-(detection)g(threshold)0 2731 y(and)42 b(CLEANing,)j(while)c(the)i
-Fs(weight.fits)d Fv(w)m(eigh)m(t)j(map)f(will)e(only)i(b)s(e)g(used)g
-(for)h(scaling)f(the)h(error)0 2844 y(estimates)35 b(on)f(measuremen)m
-(ts.)52 b(This)33 b(can)h(b)s(e)g(done)g(in)f(single-)g(as)i(w)m(ell)e
-(as)h(in)f(dual-image)h(mo)s(de)f(\()p Fq(x)p Ft(??)r
-Fv(\).)0 2957 y Fs(WEIGHT)p 294 2957 V 33 w(IMAGE)p Fv(s)k(can)i(b)s(e)
-g(ignored)f(for)g Fs(BACKGROUND)f(WEIGHT)p 2232 2957
-V 32 w(TYPE)p Fv(s.)65 b(It)39 b(is)f(of)h(course)h(p)s(ossible)c(to)k
-(use)0 3070 y(w)m(eigh)m(t-maps)31 b(for)f(detection)h(or)f(for)g
-(measuremen)m(t)h(only)-8 b(.)40 b(The)30 b(follo)m(wing)f
-(con\014guration:)0 3230 y Fs(WEIGHT_IMAGE)44 b(weight.fits)0
-3343 y(WEIGHT_TYPE)h(NONE,MAP_WEIGHT)0 3503 y Fv(will)33
-b(apply)i(w)m(eigh)m(ting)h(only)f(for)h(measuremen)m(ts;)j(detection)e
-(and)e(CLEANing)g(op)s(erations)g(will)f(remain)0 3616
-y(una\013ected.)0 3906 y Fp(7.5)112 b(In)m(terp)s(olation)0
-4125 y Ft(TBW)0 4459 y Fu(8)135 b(Flags)0 4709 y Fv(A)26
-b(set)g(of)f(b)s(oth)g Fr(internal)i Fv(and)e Fr(external)h
-Fv(\015ags)g(is)e(accessible)i(for)f(eac)m(h)i(ob)5 b(ject.)40
-b(In)m(ternal)24 b(\015ags)i(are)g(pro)s(duced)0 4822
-y(b)m(y)36 b(the)g(v)-5 b(arious)35 b(detection)i(and)f(measuremen)m(t)
-g(pro)s(cesses)g(within)e(SExtractor;)39 b(they)e(tell)e(for)h
-(instance)0 4935 y(if)e(an)g(ob)5 b(ject)36 b(is)d(saturated)i(or)g
-(has)f(b)s(een)g(truncated)h(at)g(the)g(edge)g(of)g(the)g(image.)54
-b(External)34 b(\015ags)h(come)0 5048 y(from)f(\\\015ag-maps":)50
-b(these)34 b(are)h(images)f(with)f(the)i(same)g(size)f(as)g(the)h(one)f
-(where)g(ob)5 b(jects)35 b(are)g(detected,)0 5161 y(where)j(in)m(teger)
-i(n)m(um)m(b)s(ers)d(can)j(b)s(e)e(used)g(to)i(\015ag)f(some)g(pixels)e
-(\(for)j(instance,)h(\\bad")e(or)g(noisy)f(pixels\).)0
-5274 y(Di\013eren)m(t)26 b(com)m(binations)f(of)g(\015ags)h(can)g(b)s
-(e)f(applied)e(within)g(the)j(isophotal)e(area)j(that)f(de\014nes)f
-(eac)m(h)h(ob)5 b(ject,)0 5387 y(to)31 b(pro)s(duce)e(a)i(unique)e(v)-5
-b(alue)29 b(that)i(will)d(b)s(e)i(written)f(to)i(the)g(catalog.)1844
-5753 y(24)p eop
-%%Page: 25 25
-25 24 bop 0 -74 a Fp(8.1)112 b(In)m(ternal)37 b(\015ags)0
-145 y Fv(The)26 b(in)m(ternal)f(\015ags)i(are)g Fr(always)h
-Fv(computed.)39 b(They)26 b(are)h(accessible)f(through)g(the)h
-Fs(FLAGS)e Fv(catalog)j(parame-)0 258 y(ter,)h(whic)m(h)e(is)h(a)h
-(short)f(in)m(teger.)40 b Fs(FLAGS)27 b Fv(con)m(tains,)i(co)s(ded)f
-(in)g(decimal,)g(all)f(the)h(extraction)h(\015ags)g(as)g(a)f(sum)0
-371 y(of)j(p)s(o)m(w)m(ers)f(of)g(2:)50 523 y Fs(1)195
-b Fv(The)29 b(ob)5 b(ject)32 b(has)e(neigh)m(b)s(ours,)e(brigh)m(t)i
-(and)g(close)g(enough)h(to)g(signi\014can)m(tly)d(bias)i(the)g
-Fs(MAG)p 3491 523 29 4 v 34 w(AUTO)293 636 y Fv(photometry)755
-603 y Fo(13)830 636 y Fv(,)g(or)h(bad)e(pixels)g(\(more)i(than)f
-(10\045)h(of)f(the)h(in)m(tegrated)g(area)g(a\013ected\),)50
-749 y Fs(2)195 b Fv(The)29 b(ob)5 b(ject)32 b(w)m(as)e(originally)e
-(blended)h(with)g(another)h(one,)50 862 y Fs(4)195 b
-Fv(A)m(t)31 b(least)g(one)f(pixel)f(of)h(the)h(ob)5 b(ject)31
-b(is)f(saturated)g(\(or)h(v)m(ery)g(close)g(to\),)50
-975 y Fs(8)195 b Fv(The)29 b(ob)5 b(ject)32 b(is)d(truncated)i(\(to)s
-(o)g(close)g(to)g(an)f(image)h(b)s(oundary\),)50 1088
-y Fs(16)147 b Fv(Ob)5 b(ject's)30 b(ap)s(erture)g(data)h(are)g
-(incomplete)e(or)i(corrupted,)50 1200 y Fs(32)147 b Fv(Ob)5
-b(ject's)30 b(isophotal)g(data)h(are)f(incomplete)g(or)g(corrupted)2358
-1167 y Fo(14)2432 1200 y Fv(,)50 1313 y Fs(64)147 b Fv(A)30
-b(memory)g(o)m(v)m(er\015o)m(w)i(o)s(ccurred)e(during)e(deblending,)50
-1426 y Fs(128)99 b Fv(A)30 b(memory)g(o)m(v)m(er\015o)m(w)i(o)s
-(ccurred)e(during)e(extraction.)0 1579 y(F)-8 b(or)34
-b(example,)f(an)g(ob)5 b(ject)34 b(close)f(to)g(an)g(image)g(b)s(order)
-f(ma)m(y)h(ha)m(v)m(e)h Fs(FLAGS)e Fv(=)g(16,)j(and)d(p)s(erhaps)f
-Fs(FLAGS)h Fv(=)0 1692 y(8+16+32)g(=)e(56.)0 1977 y Fp(8.2)112
-b(External)37 b(\015ags)0 2196 y Fv(SExtractor)21 b(understands)d(that)
-j(it)f(m)m(ust)g(pro)s(cess)g(external)g(\015ags)g(when)g
-Fs(IMAFLAGS)p 2901 2196 V 32 w(ISO)f Fv(or)h Fs(NIMAFLAGS)p
-3629 2196 V 32 w(ISO)0 2309 y Fv(are)44 b(presen)m(t)g(in)f(the)h
-(catalog)i(parameter)f(\014le.)80 b(It)44 b(then)g(lo)s(oks)f(for)h(a)h
-(FITS)e(image)h(sp)s(eci\014ed)e(b)m(y)i(the)0 2422 y
-Fs(FLAG)p 198 2422 V 33 w(IMAGE)34 b Fv(k)m(eyw)m(ord)h(in)e(the)i
-(con\014guration)f(\014le.)53 b(The)34 b(FITS)g(image)h(m)m(ust)f(con)m
-(tain)h(the)g(\015ag-map,)i(in)0 2535 y(the)29 b(form)g(of)h(a)f
-(2-dimensional)f(arra)m(y)h(of)h(8,)g(16)g(or)f(32)i(bits)d(in)m
-(tegers.)40 b(It)30 b(m)m(ust)f(ha)m(v)m(e)h(the)g(same)g(size)f(as)g
-(the)0 2648 y(image)23 b(used)f(for)g(detection.)39 b(Suc)m(h)22
-b(\015ag-maps)h(can)g(b)s(e)f(created)i(using)d(for)h(example)h(the)g
-Ft(W)-9 b(eigh)m(tW)g(atc)m(her)0 2761 y Fv(soft)m(w)m(are)32
-b(\(Bertin)e(1997\).)0 2921 y(The)i(\015ag-map)h(v)-5
-b(alues)32 b(for)g(pixels)f(that)i(coincide)f(with)f(the)i(isophotal)e
-(area)j(of)e(a)h(giv)m(en)g(detected)h(ob)5 b(ject)0
-3034 y(are)43 b(then)g(com)m(bined,)j(and)c(stored)h(in)f(the)h
-(catalog)i(as)e(the)g(long)g(in)m(teger)g Fs(IMAFLAGS)p
-3127 3034 V 33 w(ISO)p Fv(.)f(5)h(kinds)e(of)0 3147 y(com)m(bination)30
-b(can)g(b)s(e)g(selected)h(using)e(the)h Fs(FLAG)p 1739
-3147 V 34 w(TYPE)f Fv(con\014guration)h(k)m(eyw)m(ord:)136
-3354 y Fq(\017)46 b Fs(OR)p Fv(:)30 b(the)h(result)e(is)h(an)g
-(arithmetic)f(\(bit-to-bit\))i Ft(OR)f Fv(of)h(\015ag-map)g(pixels.)136
-3531 y Fq(\017)46 b Fs(AND)p Fv(:)30 b(the)h(result)e(is)g(an)i
-(arithmetic)e(\(bit-to-bit\))i Ft(AND)f Fv(of)h(non-zero)g(\015ag-map)f
-(pixels.)136 3707 y Fq(\017)46 b Fs(MIN)p Fv(:)30 b(the)h(result)e(is)g
-(the)i(minim)m(um)c(of)k(the)g(\(signed\))e(\015ag-map)i(pixels.)136
-3884 y Fq(\017)46 b Fs(MAX)p Fv(:)30 b(the)h(result)e(is)g(the)i(maxim)
-m(um)e(of)i(the)f(\(signed\))g(\015ag-map)h(pixels.)136
-4061 y Fq(\017)46 b Fs(MOST)p Fv(:)30 b(the)g(result)g(is)f(the)i(most)
-f(frequen)m(t)h(non-zero)g(\015ag-map)f(pixel-v)-5 b(alue.)0
-4268 y(The)27 b Fs(NIMAFLAGS)p 622 4268 V 32 w(ISO)g
-Fv(catalog)j(parameter)e(con)m(tains)g(a)g(n)m(um)m(b)s(er)f(of)h
-(relev)-5 b(an)m(t)28 b(\015ag-map)g(pixels:)38 b(the)28
-b(n)m(um-)0 4381 y(b)s(er)j(of)g(non-zero)i(\015ag-map)f(pixels)e(in)g
-(the)i(case)h(of)e(an)h Fs(OR)f Fv(or)h Fs(AND)f(FLAG)p
-2572 4381 V 33 w(TYPE)p Fv(,)g(or)g(the)h(n)m(um)m(b)s(er)e(of)i
-(pixels)0 4494 y(with)d(v)-5 b(alue)30 b Fs(IMAFLAGS)p
-832 4494 V 32 w(ISO)g Fv(if)f(the)h Fs(FLAG)p 1469 4494
-V 34 w(TYPE)f Fv(is)g Fs(MIN)p Fv(,)p Fs(MAX)g Fv(or)i
-Fs(MOST)p Fv(.)0 4822 y Fu(9)135 b(Measuremen)l(ts)0
-5073 y Fv(Once)30 b(sources)g(ha)m(v)m(e)h(b)s(een)f(detected)h(and)e
-(deblended,)g(they)h(en)m(ter)h(the)f(measuremen)m(t)g(phase.)41
-b(There)29 b(are)0 5185 y(in)g(SExtractor)i(t)m(w)m(o)h(categories)g
-(of)f(measuremen)m(ts.)42 b(Measuremen)m(ts)31 b(from)f(the)h(\014rst)f
-(category)i(are)f(made)p 0 5236 1512 4 v 73 5290 a Fn(13)138
-5321 y Fm(This)c(\015ag)f(can)f(b)r(e)h(activ)l(ated)g(only)f(when)h
-Fl(MAG)p 1526 5321 24 4 v 29 w(AUTO)g Fm(magnitudes)f(are)h(requested.)
-73 5381 y Fn(14)138 5413 y Fm(This)k(\015ag)f(is)g(inherited)g(from)f
-(SExtractor)h(V1.0,)i(and)d(has)h(b)r(een)g(k)n(ept)f(for)h
-(compatibilit)n(y)g(reasons.)45 b(With)28 b(SExtractor)0
-5504 y(V2.0+,)e(ha)n(ving)g(this)g(\015ag)g(activ)l(ated)f(do)r(esn't)h
-(ha)n(v)n(e)f(an)n(y)h(consequence)f(for)i(the)e(extracted)g
-(parameters.)1844 5753 y Fv(25)p eop
-%%Page: 26 26
-26 25 bop 0 -74 a Fv(on)25 b(the)g(isophotal)f(ob)5 b(ject)26
-b(pro\014les.)38 b(Only)23 b(pixels)g(ab)s(o)m(v)m(e)j(the)g(detection)
-f(threshold)f(are)h(considered.)38 b(Man)m(y)0 39 y(of)29
-b(these)g(isophotal)f(measuremen)m(ts)h(\(lik)m(e)f Fs(X)p
-1563 39 29 4 v 34 w(IMAGE)p Fv(,)g Fs(Y)p 1938 39 V 34
-w(IMAGE)p Fv(,)f(etc.\))42 b(are)29 b(necessary)g(for)g(the)g(in)m
-(ternal)e(op-)0 152 y(erations)g(of)h(SExtractor)g(and)f(are)g
-(therefore)h(executed)g(ev)m(en)h(if)d(they)h(are)h(not)g(requested.)40
-b(Measuremen)m(ts)0 265 y(from)33 b(the)g(second)g(category)j(ha)m(v)m
-(e)e(access)g(to)g(all)e(pixels)g(of)h(the)g(image.)50
-b(These)33 b(measuremen)m(ts)g(are)h(gen-)0 378 y(erally)h(more)i
-(sophisticated)f(and)g(are)h(done)f(at)h(a)g(later)g(stage)h(of)e(the)h
-(pro)s(cessing)e(\(after)j Fs(CLEAN)p Fv(ing)c(and)0
-491 y Fs(MASK)p Fv(ing\).)0 781 y Fp(9.1)112 b(P)m(ositional)35
-b(parameters)j(deriv)m(ed)f(from)g(the)g(isophotal)g(pro\014le)0
-1000 y Fv(The)e(follo)m(wing)f(parameters)h(are)h(deriv)m(ed)f(from)g
-(the)g(spatial)g(distribution)c Fq(S)42 b Fv(of)36 b(pixels)e(detected)
-i(ab)s(o)m(v)m(e)0 1113 y(the)31 b(extraction)g(threshold.)39
-b Fr(The)33 b(pixel)g(values)g Fk(I)1736 1127 y Fi(i)1796
-1113 y Fr(ar)-5 b(e)34 b(taken)f(fr)-5 b(om)33 b(the)h(\(\014lter)-5
-b(e)g(d\))34 b(dete)-5 b(ction)34 b(image)p Fv(.)0 1273
-y Ft(Note)28 b(that,)h(unless)f(otherwise)g(noted,)i(all)e(parameter)f
-(names)g(giv)m(en)i(b)s(elo)m(w)f(are)g(only)g(pre\014x-)0
-1386 y(es.)44 b(They)28 b(m)m(ust)f(b)s(e)g(follo)m(w)m(ed)h(b)m(y)g(")
-p 1409 1386 V 34 w Fs(IMAGE)p Ft(")e(if)i(the)f(results)h(shall)g(b)s
-(e)g(expressed)g(in)g(pixel)f(units)0 1499 y(\(see)38
-b Ff(x)p Ft(..\),)g(or)g(")p 624 1499 V 34 w Fs(WORLD)p
-Ft(")e(for)i(W)-9 b(orld)39 b(Co)s(ordinate)e(System)g(\(W)m(CS\))g
-(units)h(\(see)g Ff(x)p Ft(9.2\))p Fv(.)48 b(Exam-)0
-1612 y(ple:)40 b Fs(THETA)29 b Fq(!)h Fs(THETA)p 818
-1612 V 33 w(IMAGE)p Fv(.)f(In)h(all)f(cases)j(parameters)e(are)h
-(\014rst)f(computed)g(in)f(the)i(image)g(co)s(ordinate)0
-1725 y(system,)g(and)f(then)g(con)m(v)m(erted)h(to)h(W)m(CS)e(if)f
-(requested.)0 2012 y Ft(9.1.1)105 b(Limits:)46 b Fs(XMIN)p
-Ft(,)34 b Fs(YMIN)p Ft(,)g Fs(XMAX)p Ft(,)f Fs(YMAX)0
-2231 y Fv(These)d(co)s(ordinates)g(de\014ne)g(t)m(w)m(o)i(corners)e(of)
-g(a)h(rectangle)g(whic)m(h)e(encloses)i(the)f(detected)i(ob)5
-b(ject:)1523 2435 y Fs(XMIN)82 b Fv(=)h(min)1968 2495
-y Fi(i)p Fj(2S)2118 2435 y Fk(x)2170 2449 y Fi(i)2198
-2435 y Fk(;)1440 b Fv(\(9\))1523 2608 y Fs(YMIN)82 b
-Fv(=)h(min)1968 2668 y Fi(i)p Fj(2S)2118 2608 y Fk(y)2163
-2622 y Fi(i)2191 2608 y Fk(;)1402 b Fv(\(10\))1523 2782
-y Fs(XMAX)82 b Fv(=)h(max)1976 2841 y Fi(i)p Fj(2S)2135
-2782 y Fk(x)2187 2796 y Fi(i)2216 2782 y Fk(;)1377 b
-Fv(\(11\))1523 2955 y Fs(YMAX)82 b Fv(=)h(max)1976 3014
-y Fi(i)p Fj(2S)2135 2955 y Fk(y)2180 2969 y Fi(i)2208
-2955 y Fk(;)1385 b Fv(\(12\))0 3189 y(where)30 b Fk(x)315
-3203 y Fi(i)373 3189 y Fv(and)g Fk(y)595 3203 y Fi(i)653
-3189 y Fv(are)h(resp)s(ectiv)m(ely)f(the)g(x-co)s(ordinate)h(and)e
-(y-co)s(ordinate)i(of)f(pixel)f Fk(i)p Fv(.)0 3476 y
-Ft(9.1.2)105 b(Barycen)m(ter:)48 b Fs(X)p Ft(,)34 b Fs(Y)0
-3695 y Fv(Barycen)m(ter)i(co)s(ordinates)e(generally)f(de\014ne)g(the)i
-(p)s(osition)d(of)i(the)h(\\cen)m(ter")h(of)e(a)g(source,)i(although)e
-(this)0 3808 y(de\014nition)29 b(can)j(b)s(e)e(inadequate)h(or)h
-(inaccurate)f(if)f(its)h(spatial)f(pro\014le)g(sho)m(ws)h(a)h(strong)g
-(sk)m(ewness)f(or)g(v)m(ery)0 3921 y(large)f(wings.)40
-b Fs(X)30 b Fv(and)g Fs(Y)g Fv(are)g(simply)e(computed)j(as)f(the)h
-(\014rst)e(order)h(momen)m(ts)h(of)g(the)f(pro\014le:)1489
-4277 y Fs(X)83 b Fv(=)p 1774 4228 52 4 v 83 w Fk(x)25
-b Fv(=)1957 4047 y Fg(X)1957 4231 y Fi(i)p Fj(2S)2092
-4128 y Fk(I)2132 4142 y Fi(i)2160 4128 y Fk(x)2212 4142
-y Fi(i)p 1957 4256 284 4 v 1997 4275 a Fg(X)1997 4458
-y Fi(i)p Fj(2S)2132 4355 y Fk(I)2172 4369 y Fi(i)2250
-4277 y Fk(;)1343 b Fv(\(13\))1489 4743 y Fs(Y)83 b Fv(=)p
-1774 4694 48 4 v 83 w Fk(y)28 b Fv(=)1953 4512 y Fg(X)1953
-4696 y Fi(i)p Fj(2S)2088 4593 y Fk(I)2128 4607 y Fi(i)2156
-4593 y Fk(y)2201 4607 y Fi(i)p 1953 4722 276 4 v 1989
-4740 a Fg(X)1990 4924 y Fi(i)p Fj(2S)2124 4821 y Fk(I)2164
-4835 y Fi(i)2239 4743 y Fk(:)1354 b Fv(\(14\))0 5099
-y(Actually)-8 b(,)30 b Fk(x)438 5113 y Fi(i)497 5099
-y Fv(and)f Fk(y)718 5113 y Fi(i)776 5099 y Fv(are)i(summed)e(relativ)m
-(e)i(to)g Fs(XMIN)e Fv(and)h Fs(YMIN)f Fv(in)g(order)h(to)h(reduce)f
-(roundo\013)f(errors)h(in)0 5212 y(the)h(summing.)1844
-5753 y(26)p eop
-%%Page: 27 27
-27 26 bop 0 -74 a Ft(9.1.3)105 b(P)m(osition)36 b(of)g(the)e(p)s(eak:)
-46 b Fs(XPEAK)p Ft(,)34 b Fs(YPEAK)0 145 y Fv(It)i(is)f(sometimes)h
-(useful)f(to)h(ha)m(v)m(e)i(the)e(p)s(osition)e Fs(XPEAK)p
-Fv(,)p Fs(YPEAK)g Fv(of)i(the)g(pixel)e(with)h(maxim)m(um)g(in)m
-(tensit)m(y)0 258 y(in)i(a)i(detected)h(ob)5 b(ject,)42
-b(for)d(instance)f(when)g(w)m(orking)g(with)f(lik)m(eliho)s(o)s(d)e
-(maps,)41 b(or)e(when)e(searc)m(hing)i(for)0 371 y(artifacts.)46
-b(F)-8 b(or)32 b(b)s(etter)g(robustness,)f Fs(PEAK)g
-Fv(co)s(ordinates)h(are)g(computed)g(on)f Fr(\014lter)-5
-b(e)g(d)34 b Fv(pro\014les)c(if)h(a)m(v)-5 b(ailable.)0
-484 y(On)25 b(symetrical)g(pro\014les,)h Fs(PEAK)f Fv(p)s(ositions)f
-(and)i(barycen)m(ters)g(coincide)f(within)f(a)i(fraction)g(of)g(pixel)f
-(\()p Fs(XPEAK)0 597 y Fv(and)35 b Fs(YPEAK)g Fv(co)s(ordinates)h(are)g
-(quan)m(tized)g(b)m(y)g(steps)g(of)g(1)h(pixel,)f(th)m(us)g
-Fs(XPEAK)p 2784 597 29 4 v 33 w(IMAGE)e Fv(and)i Fs(YPEAK)p
-3514 597 V 33 w(IMAGE)0 709 y Fv(are)31 b(in)m(tegers\).)42
-b(This)29 b(is)g(no)i(longer)f(true)g(for)h(sk)m(ew)m(ed)g(pro\014les,)
-e(therefore)j(a)e(simple)f(comparison)h(b)s(et)m(w)m(een)0
-822 y Fs(PEAK)36 b Fv(and)g(barycen)m(ter)i(co)s(ordinates)f(can)g(b)s
-(e)f(used)h(to)h(iden)m(tify)d(asymetrical)i(ob)5 b(jects)38
-b(on)e(w)m(ell-sampled)0 935 y(images.)0 1215 y Ft(9.1.4)105
-b(2nd)36 b(order)f(momen)m(ts:)45 b Fs(X2)p Ft(,)34 b
-Fs(Y2)p Ft(,)h Fs(XY)0 1434 y Fv(\(Cen)m(tered\))i(second-order)e
-(momen)m(ts)h(are)g(con)m(v)m(enien)m(t)h(for)e(measuring)f(the)i
-(spatial)f(spread)g(of)g(a)h(source)0 1547 y(pro\014le.)j(In)30
-b(SExtractor)h(they)f(are)h(computed)f(with:)1299 1853
-y Fs(X2)87 b Fv(=)p 1578 1774 92 4 v 25 w Fk(x)1630 1827
-y Fo(2)1695 1853 y Fv(=)1863 1623 y Fg(X)1863 1807 y
-Fi(i)p Fj(2S)1998 1704 y Fk(I)2038 1718 y Fi(i)2066 1704
-y Fk(x)2118 1666 y Fo(2)2118 1726 y Fi(i)p 1863 1832
-295 4 v 1908 1851 a Fg(X)1909 2034 y Fi(i)p Fj(2S)2043
-1932 y Fk(I)2083 1946 y Fi(i)2187 1853 y Fq(\000)p 2278
-1804 52 4 v 20 w Fk(x)2330 1816 y Fo(2)2370 1853 y Fk(;)1223
-b Fv(\(15\))1299 2319 y Fs(Y2)89 b Fv(=)p 1580 2240 88
-4 v 25 w Fk(y)1628 2293 y Fo(2)1693 2319 y Fv(=)1863
-2088 y Fg(X)1863 2272 y Fi(i)p Fj(2S)1998 2169 y Fk(I)2038
-2183 y Fi(i)2066 2169 y Fk(y)2114 2132 y Fo(2)2111 2192
-y Fi(i)p 1863 2298 291 4 v 1906 2316 a Fg(X)1907 2500
-y Fi(i)p Fj(2S)2041 2397 y Fk(I)2081 2411 y Fi(i)2183
-2319 y Fq(\000)p 2274 2270 48 4 v 20 w Fk(y)2322 2282
-y Fo(2)2361 2319 y Fk(;)1232 b Fv(\(16\))1299 2785 y
-Fs(XY)83 b Fv(=)p 1574 2736 100 4 v 25 w Fk(xy)28 b Fv(=)1863
-2554 y Fg(X)1863 2738 y Fi(i)p Fj(2S)1998 2635 y Fk(I)2038
-2649 y Fi(i)2066 2635 y Fk(x)2118 2649 y Fi(i)2146 2635
-y Fk(y)2191 2649 y Fi(i)p 1863 2764 357 4 v 1939 2782
-a Fg(X)1940 2966 y Fi(i)p Fj(2S)2074 2863 y Fk(I)2114
-2877 y Fi(i)2249 2785 y Fq(\000)p 2340 2736 52 4 v 20
-w Fk(x)p 2407 2736 48 4 v 15 w(y)s(;)1138 b Fv(\(17\))0
-3091 y(These)31 b(expressions)f(are)i(more)g(sub)5 b(ject)31
-b(to)h(roundo\013)e(errors)h(than)h(if)e(the)i(1st-order)g(momen)m(ts)f
-(w)m(ere)h(sub-)0 3204 y(tracted)26 b(b)s(efore)f(summing,)f(but)h
-(allo)m(w)f(b)s(oth)h(1st)h(and)e(2nd)h(order)f(momen)m(ts)i(to)g(b)s
-(e)e(computed)h(in)f(one)i(pass.)0 3317 y(Roundo\013)32
-b(errors)h(are)h(ho)m(w)m(ev)m(er)g(k)m(ept)g(to)g(a)g(negligible)c(v)
--5 b(alue)33 b(b)m(y)g(measuring)f(all)g(p)s(ositions)f(relativ)m(e)j
-(here)0 3430 y(again)c(to)i Fs(XMIN)d Fv(and)h Fs(YMIN)p
-Fv(.)0 3710 y Ft(9.1.5)105 b(Basic)36 b(shap)s(e)f(parameters:)45
-b Fs(A)p Ft(,)35 b Fs(B)p Ft(,)g Fs(THETA)0 3929 y Fv(These)k
-(parameters)h(are)f(in)m(tended)f(to)i(describ)s(e)e(the)i(detected)g
-(ob)5 b(ject)40 b(as)g(an)f(elliptical)e(shap)s(e.)66
-b Fs(A)39 b Fv(and)0 4042 y Fs(B)34 b Fv(are)i(its)e(semi-ma)5
-b(jor)34 b(and)g(semi-minor)f(axis)i(lengths,)g(resp)s(ectiv)m(ely)-8
-b(.)54 b(More)35 b(precisely)-8 b(,)35 b(they)g(represen)m(t)0
-4154 y(the)c(maxim)m(um)f(and)h(minim)m(um)d(spatial)i
-Fr(rms)i Fv(of)g(the)f(ob)5 b(ject)32 b(pro\014le)e(along)h(an)m(y)h
-(direction.)41 b Fs(THETA)30 b Fv(is)g(the)0 4267 y(p)s(osition-angle)i
-(b)s(et)m(w)m(een)i(the)f Fs(A)g Fv(axis)g(and)g(the)g
-Fs(NAXIS1)f Fv(image)h(axis.)49 b(It)33 b(is)g(coun)m(ted)h(coun)m
-(ter-clo)s(c)m(kwise.)0 4380 y(Here)d(is)e(ho)m(w)i(they)f(are)h
-(computed:)0 4540 y(2nd-order)21 b(momen)m(ts)h(can)g(easily)f(b)s(e)g
-(expressed)g(in)f(a)i(referen)m(tial)f(rotated)i(from)e(the)h
-Fk(x;)15 b(y)25 b Fv(image)d(co)s(ordinate)0 4653 y(system)31
-b(b)m(y)f(an)g(angle)g(+)p Fk(\022)s Fv(:)p 668 4728
-92 4 v 668 4812 a Fk(x)720 4781 y Fo(2)720 4840 y Fi(\022)887
-4812 y Fv(=)230 b(cos)1310 4779 y Fo(2)1365 4812 y Fk(\022)p
-1430 4733 V 22 w(x)1482 4786 y Fo(2)1762 4812 y Fv(+)30
-b(sin)1975 4778 y Fo(2)2030 4812 y Fk(\022)p 2095 4733
-88 4 v 22 w(y)2143 4786 y Fo(2)2450 4812 y Fq(\000)15
-b Fv(2)g(cos)i Fk(\022)g Fv(sin)d Fk(\022)p 2986 4763
-100 4 v 22 w(xy)s(;)p 668 4852 88 4 v 668 4937 a(y)716
-4905 y Fo(2)713 4965 y Fi(\022)887 4937 y Fv(=)241 b(sin)1310
-4902 y Fo(2)1365 4937 y Fk(\022)p 1430 4858 92 4 v 22
-w(x)1482 4910 y Fo(2)1752 4937 y Fv(+)30 b(cos)1975 4904
-y Fo(2)2030 4937 y Fk(\022)p 2095 4858 88 4 v 22 w(y)2143
-4910 y Fo(2)2450 4937 y Fv(+)15 b(2)g(cos)i Fk(\022)g
-Fv(sin)d Fk(\022)p 2986 4887 100 4 v 22 w(xy)s(;)p 668
-5007 136 4 v 668 5056 a(xy)765 5071 y Fi(\022)887 5056
-y Fv(=)83 b(cos)16 b Fk(\022)h Fv(sin)d Fk(\022)p 1430
-4977 92 4 v 22 w(x)1482 5030 y Fo(2)1605 5056 y Fq(\000)30
-b Fv(cos)15 b Fk(\022)j Fv(sin)c Fk(\022)p 2095 4977
-88 4 v 22 w(y)2143 5030 y Fo(2)2265 5056 y Fv(+)h(\(cos)2508
-5023 y Fo(2)2563 5056 y Fk(\022)22 b Fq(\000)e Fv(sin)2831
-5022 y Fo(2)2885 5056 y Fk(\022)s Fv(\))p 2986 5007 100
-4 v 20 w Fk(xy)s(:)3618 4928 y Fv(\(18\))0 5208 y(One)28
-b(can)g(\014nd)e(in)m(teresting)i(angles)g Fk(\022)1293
-5222 y Fo(0)1360 5208 y Fv(for)g(whic)m(h)e(the)j(v)-5
-b(ariance)28 b(is)f(minimized)e(\(or)j(maximized\))f(along)h
-Fk(x)3715 5223 y Fi(\022)3754 5208 y Fv(:)1677 5372 y
-Fk(@)p 1730 5288 92 4 v 5 w(x)1782 5341 y Fo(2)1782 5400
-y Fi(\022)p 1677 5413 145 4 v 1700 5497 a Fk(@)5 b(\022)1831
-5287 y Fg(\014)1831 5337 y(\014)1831 5387 y(\014)1831
-5437 y(\014)1831 5487 y(\014)1859 5540 y Fi(\022)1892
-5549 y Fn(0)1956 5435 y Fv(=)25 b(0)p Fk(;)1496 b Fv(\(19\))1844
-5753 y(27)p eop
-%%Page: 28 28
-28 27 bop 0 -74 a Fv(whic)m(h)29 b(leads)h(to)888 39
-y(2)15 b(cos)h Fk(\022)h Fv(sin)d Fk(\022)1315 53 y Fo(0)1374
-39 y Fv(\()p 1409 -40 88 4 v Fk(y)1457 13 y Fo(2)1517
-39 y Fq(\000)p 1608 -40 92 4 v 20 w Fk(x)1660 13 y Fo(2)1700
-39 y Fv(\))20 b(+)g(2\(cos)2049 1 y Fo(2)2103 39 y Fk(\022)2146
-53 y Fo(0)2205 39 y Fq(\000)g Fv(sin)2408 1 y Fo(2)2463
-39 y Fk(\022)2506 53 y Fo(0)2545 39 y Fv(\))p 2600 -10
-100 4 v 20 w Fk(xy)28 b Fv(=)d(0)p Fk(:)727 b Fv(\(20\))0
-188 y(If)p 91 109 88 4 v 30 w Fk(y)139 162 y Fo(2)203
-188 y Fq(6)p Fv(=)p 299 109 92 4 v 25 w Fk(x)351 162
-y Fo(2)391 188 y Fv(,)30 b(this)g(implies:)1502 332 y(tan)15
-b(2)p Fk(\022)1736 346 y Fo(0)1801 332 y Fv(=)25 b(2)p
-2048 221 100 4 v 2048 270 a Fk(xy)p 1952 310 290 4 v
-1952 327 92 4 v 1952 406 a(x)2004 380 y Fo(2)2064 406
-y Fq(\000)p 2155 327 88 4 v 20 w Fk(y)2203 380 y Fo(2)2252
-332 y Fk(;)1341 b Fv(\(21\))0 532 y(a)26 b(result)e(whic)m(h)f(can)j
-(also)f(b)s(e)g(obtained)f(b)m(y)h(requiring)e(the)i(co)m(v)-5
-b(ariance)p 2487 483 169 4 v 26 w Fk(xy)2584 547 y Fi(\022)2617
-556 y Fn(0)2681 532 y Fv(to)26 b(b)s(e)e(n)m(ull.)37
-b(Ov)m(er)25 b(the)h(domain)0 645 y([)p Fq(\000)p Fk(\031)s(=)p
-Fv(2)p Fk(;)15 b Fv(+)p Fk(\031)s(=)p Fv(2[,)36 b(t)m(w)m(o)e
-(di\013eren)m(t)f(angles)g(|)f(with)g(opp)s(osite)g(signs)g(|)h
-(satisfy)f(\(21\).)50 b(By)33 b(de\014nition,)f Fs(THETA)0
-766 y Fv(is)27 b(the)h(p)s(osition)e(angle)i(for)g(whic)m(h)p
-1216 682 92 4 v 26 w Fk(x)1268 735 y Fo(2)1268 794 y
-Fi(\022)1335 766 y Fv(is)f Fr(max)16 b Fv(imized.)39
-b Fs(THETA)26 b Fv(is)h(therefore)i(the)f(solution)e(to)j(\(21\))g
-(that)g(has)0 879 y(the)i(same)f(sign)g(as)g(the)h(co)m(v)-5
-b(ariance)p 1280 830 100 4 v 32 w Fk(xy)r Fv(.)41 b Fs(A)30
-b Fv(and)g Fs(B)g Fv(can)g(no)m(w)h(simply)d(b)s(e)i(expressed)f(as:)
-1453 1048 y Fs(A)1501 1011 y Fo(2)1623 1048 y Fv(=)p
-1777 969 92 4 v 83 w Fk(x)1829 1022 y Fo(2)1868 1062
-y Fe(THETA)2049 1048 y Fk(;)106 b Fv(and)1291 b(\(22\))1453
-1186 y Fs(B)1501 1149 y Fo(2)1623 1186 y Fv(=)p 1777
-1107 88 4 v 83 w Fk(y)1825 1160 y Fo(2)1864 1208 y Fe(THETA)2045
-1186 y Fk(:)1548 b Fv(\(23\))0 1355 y Fs(A)34 b Fv(and)f
-Fs(B)h Fv(can)g(b)s(e)g(computed)g(directly)e(from)i(the)g(2nd-order)g
-(momen)m(ts,)h(using)e(the)h(follo)m(wing)f(equations)0
-1468 y(deriv)m(ed)c(from)h(\(18\))i(after)f(some)g(tedious)f
-(arithmetics:)1088 1748 y Fs(A)1136 1710 y Fo(2)1258
-1748 y Fv(=)p 1422 1607 92 4 v 1422 1686 a Fk(x)1474
-1660 y Fo(2)1533 1686 y Fv(+)p 1624 1607 88 4 v 20 w
-Fk(y)1672 1660 y Fo(2)p 1422 1727 290 4 v 1544 1810 a
-Fv(2)1742 1748 y(+)1833 1562 y Fg(v)1833 1609 y(u)1833
-1659 y(u)1833 1708 y(t)p 1920 1562 731 4 v 1920 1604
-a( )p 1996 1607 92 4 v 1996 1686 a Fk(x)2048 1660 y Fo(2)2108
-1686 y Fq(\000)p 2198 1607 88 4 v 19 w Fk(y)2246 1660
-y Fo(2)p 1996 1727 290 4 v 2118 1810 a Fv(2)2296 1604
-y Fg(!)2361 1627 y Fo(2)2421 1748 y Fv(+)p 2512 1698
-100 4 v 20 w Fk(xy)2612 1718 y Fo(2)2651 1748 y Fk(;)942
-b Fv(\(24\))1088 2083 y Fs(B)1136 2045 y Fo(2)1258 2083
-y Fv(=)p 1422 1942 92 4 v 1422 2021 a Fk(x)1474 1995
-y Fo(2)1533 2021 y Fv(+)p 1624 1942 88 4 v 20 w Fk(y)1672
-1995 y Fo(2)p 1422 2062 290 4 v 1544 2145 a Fv(2)1742
-2083 y Fq(\000)1833 1898 y Fg(v)1833 1944 y(u)1833 1994
-y(u)1833 2044 y(t)p 1920 1898 731 4 v 1920 1939 a( )p
-1996 1942 92 4 v 1996 2021 a Fk(x)2048 1995 y Fo(2)2108
-2021 y Fq(\000)p 2198 1942 88 4 v 19 w Fk(y)2246 1995
-y Fo(2)p 1996 2062 290 4 v 2118 2145 a Fv(2)2296 1939
-y Fg(!)2361 1962 y Fo(2)2421 2083 y Fv(+)p 2512 2034
-100 4 v 20 w Fk(xy)2612 2054 y Fo(2)2651 2083 y Fk(:)g
-Fv(\(25\))0 2321 y(Note)31 b(that)f Fs(A)f Fv(and)g Fs(B)g
-Fv(are)h(exactly)g(halv)m(es)f(the)h Fk(a)f Fv(and)g
-Fk(b)g Fv(parameters)h(computed)f(b)m(y)h(the)f(COSMOS)f(image)0
-2434 y(analyser)39 b(\(Stobie)h(1980,1986\).)73 b(Actually)-8
-b(,)42 b Fk(a)e Fv(and)f Fk(b)g Fv(are)h(de\014ned)f(b)m(y)h(Stobie)f
-(as)h(the)g(semi-ma)5 b(jor)39 b(and)0 2547 y(semi-minor)33
-b(axes)i(of)g(an)f(elliptical)e(shap)s(e)i(with)f(constan)m(t)j
-(surface)e(brigh)m(tness,)h(whic)m(h)e(w)m(ould)g(ha)m(v)m(e)j(the)0
-2660 y(same)31 b(2nd-order)e(momen)m(ts)i(as)g(the)f(analysed)g(ob)5
-b(ject.)0 2942 y Ft(9.1.6)105 b(Ellipse)35 b(parameters:)46
-b Fs(CXX)p Ft(,)34 b Fs(CYY)p Ft(,)g Fs(CXY)0 3160 y(A)p
-Fv(,)43 b Fs(B)g Fv(and)g Fs(THETA)f Fv(are)h(not)h(v)m(ery)f(con)m(v)m
-(enien)m(t)i(to)f(use)f(when,)j(for)d(instance,)j(one)e(w)m(an)m(ts)g
-(to)g(kno)m(w)f(if)f(a)0 3273 y(particular)30 b(SExtractor)i(detection)
-h(extends)f(o)m(v)m(er)h(some)f(p)s(osition.)43 b(F)-8
-b(or)33 b(this)e(kind)f(of)h(application,)g(three)0 3386
-y(other)d(ellipse)e(parameters)i(are)g(pro)m(vided;)g
-Fs(CXX)p Fv(,)f Fs(CYY)g Fv(and)g Fs(CXY)p Fv(.)g(They)h(do)f(nothing)g
-(more)h(than)g(describing)0 3499 y(the)38 b(same)g(ellipse,)f(but)g(in)
-g(a)h(di\013eren)m(t)f(w)m(a)m(y:)56 b(the)38 b(elliptical)c(shap)s(e)j
-(asso)s(ciated)h(to)h(a)f(detection)g(is)e(no)m(w)0 3612
-y(parameterized)30 b(as)833 3781 y Fs(CXX)p Fv(\()p Fk(x)20
-b Fq(\000)p 1175 3732 52 4 v 20 w Fk(x)p Fv(\))1262 3744
-y Fo(2)1322 3781 y Fv(+)g Fs(CYY)o Fv(\()p Fk(y)j Fq(\000)p
-1750 3732 48 4 v 20 w Fk(y)s Fv(\))1833 3744 y Fo(2)1893
-3781 y Fv(+)d Fs(CXY)o Fv(\()p Fk(x)h Fq(\000)p 2326
-3732 52 4 v 20 w Fk(x)p Fv(\)\()p Fk(y)i Fq(\000)p 2607
-3732 48 4 v 20 w Fk(y)s Fv(\))j(=)f Fk(R)2882 3744 y
-Fo(2)2921 3781 y Fk(;)672 b Fv(\(26\))0 3950 y(where)36
-b Fk(R)g Fv(is)f(a)i(parameter)f(whic)m(h)f(scales)h(the)h(ellipse,)e
-(in)g(units)f(of)j Fs(A)e Fv(\(or)i Fs(B)p Fv(\).)f(Generally)-8
-b(,)37 b(the)f(isophotal)0 4063 y(limit)h(of)i(a)g(detected)h(ob)5
-b(ject)40 b(is)e(w)m(ell)f(represen)m(ted)i(b)m(y)g Fk(R)h
-Fq(\031)f Fv(3)g(\(Fig.)67 b(5\).)g(Ellipse)36 b(parameters)j(can)g(b)s
-(e)0 4176 y(deriv)m(ed)29 b(from)h(the)h(2nd)f(order)g(momen)m(ts:)573
-4388 y Fs(CXX)83 b Fv(=)963 4326 y(cos)1085 4293 y Fo(2)1140
-4326 y Fs(THETA)p 963 4367 415 4 v 1127 4450 a(A)1175
-4424 y Fo(2)1408 4388 y Fv(+)1509 4326 y(sin)1621 4292
-y Fo(2)1676 4326 y Fs(THETA)p 1509 4367 405 4 v 1668
-4450 a(B)1716 4424 y Fo(2)1949 4388 y Fv(=)p 2370 4247
-88 4 v 2370 4326 a Fk(y)2418 4300 y Fo(2)p 2055 4367
-717 4 v 2055 4384 a Fg(s)p 2138 4384 633 4 v 36 x(\022)p
-2209 4438 75 4 v 2209 4499 a Fi(x)2249 4480 y Fn(2)2284
-4499 y Fj(\000)p 2339 4438 72 4 v Fi(y)2376 4480 y Fn(2)p
-2209 4518 202 4 v 2292 4571 a Fo(2)2420 4420 y Fg(\023)2482
-4443 y Fo(2)2541 4539 y Fv(+)p 2632 4490 100 4 v 20 w
-Fk(xy)2732 4510 y Fo(2)3618 4388 y Fv(\(27\))573 4810
-y Fs(CYY)g Fv(=)963 4748 y(sin)1075 4714 y Fo(2)1130
-4748 y Fs(THETA)p 963 4789 405 4 v 1122 4872 a(A)1170
-4846 y Fo(2)1398 4810 y Fv(+)1499 4748 y(cos)1621 4715
-y Fo(2)1676 4748 y Fs(THETA)p 1499 4789 415 4 v 1663
-4872 a(B)1711 4846 y Fo(2)1949 4810 y Fv(=)p 2368 4669
-92 4 v 2368 4748 a Fk(x)2420 4722 y Fo(2)p 2055 4789
-717 4 v 2055 4805 a Fg(s)p 2138 4805 633 4 v 37 x(\022)p
-2209 4859 75 4 v 2209 4920 a Fi(x)2249 4902 y Fn(2)2284
-4920 y Fj(\000)p 2339 4859 72 4 v Fi(y)2376 4902 y Fn(2)p
-2209 4940 202 4 v 2292 4992 a Fo(2)2420 4842 y Fg(\023)2482
-4865 y Fo(2)2541 4961 y Fv(+)p 2632 4912 100 4 v 20 w
-Fk(xy)2732 4932 y Fo(2)3618 4810 y Fv(\(28\))573 5206
-y Fs(CXY)g Fv(=)f(2)15 b(cos)i Fs(THETA)d Fv(sin)f Fs(THETA)1785
-5087 y Fg(\022)1877 5145 y Fv(1)p 1856 5185 88 4 v 1856
-5269 a Fs(A)1904 5243 y Fo(2)1974 5206 y Fq(\000)2095
-5145 y Fv(1)p 2075 5185 V 2075 5269 a Fs(B)2123 5243
-y Fo(2)2172 5087 y Fg(\023)2258 5206 y Fv(=)25 b Fq(\000)p
-Fv(2)p 2788 5096 100 4 v 2788 5145 a Fk(xy)p 2480 5185
-717 4 v 2480 5202 a Fg(s)p 2563 5202 633 4 v 37 x(\022)p
-2634 5256 75 4 v 2634 5317 a Fi(x)2674 5298 y Fn(2)2708
-5317 y Fj(\000)p 2763 5256 72 4 v Fi(y)2800 5298 y Fn(2)p
-2634 5337 202 4 v 2717 5389 a Fo(2)2845 5239 y Fg(\023)2906
-5262 y Fo(2)2966 5358 y Fv(+)p 3057 5309 100 4 v 20 w
-Fk(xy)3157 5328 y Fo(2)3618 5206 y Fv(\(29\))1844 5753
-y(28)p eop
-%%Page: 29 29
-29 28 bop 0 1664 a @beginspecial 72 @llx 283 @lly 539
- at urx 509 @ury 4535 @rwi @setspecial
-%%BeginDocument: ellipse.ps
-%!PS-Adobe-2.0
-%%Title: ellipse.fig
-%%Creator: fig2dev Version 3.1 Patchlevel 2
-%%CreationDate: Mon May 12 20:33:31 1997
-%%For: bertin at strw (Emmanuel Bertin)
-%Magnification: 1.00
-%%Orientation: Portrait
-%%BoundingBox: 72 283 539 509
-%%Pages: 1
-%%BeginSetup
-%%IncludeFeature: *PageSize Letter
-%%EndSetup
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-
-end
-save
-19.5 687.0 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
- /DrawEllipse {
- /endangle exch def
- /startangle exch def
- /yrad exch def
- /xrad exch def
- /y exch def
- /x exch def
- /savematrix mtrx currentmatrix def
- x y tr xrad yrad sc 0 0 1 startangle endangle arc
- closepath
- savematrix setmatrix
- } def
-
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-%%EndProlog
-
-$F2psBegin
-10 setmiterlimit
-n 0 792 m 0 0 l 612 0 l 612 792 l cp clip
- 0.06000 0.06000 sc
-%%Page: 1 1
-% Polyline
-%
-% Begin Imported GIF File: galex.gif
-n gs
-1275 2995 tr
-112.500000 -112.484848 sc
-0 -33 tr
-0 0 tr
-sa
-/showpage {} def
-% GIF image follows:
-64 33 sc
-%***********************************************************************
-%* *
-%* Object: Image decoding PS-routine Date: 01.02.93 *
-%* Author: Evgeni CHERNYAEV (chernaev at vxcern.cern.ch) *
-%* *
-%* Function: Display a run-length encoded color image. *
-%* The image is displayed in color on viewers and printers *
-%* that support color Postscript, otherwise it is displayed *
-%* as grayscale. *
-%* *
-%***********************************************************************
-/byte 1 string def
-/color 3 string def
-systemdict /colorimage known { /cnt 3 def } { /cnt 1 def } ifelse
-/String 256 cnt mul string def
-%***********************************************************************
-/DecodePacket % Decode color packet *
-%***********************************************************************
-{
- currentfile byte readhexstring pop 0 get
- /Nbyte exch 1 add cnt mul def
- /color ColorMap currentfile byte readhexstring pop 0 get get def
- String dup
- 0 cnt Nbyte 1 sub { color putinterval dup } for
- pop 0 Nbyte getinterval
-} bind def
-%***********************************************************************
-/DisplayImage % Display run-length encoded color image *
-%***********************************************************************
-{
- gsave
- currentfile String readline pop
- token { /columns exch def } { } ifelse
- token { /rows exch def pop } { } ifelse
- currentfile String readline pop
- token { /Ncol exch def pop } { } ifelse
- /ColorMap Ncol array def
- systemdict /colorimage known {
- 0 1 Ncol 1 sub {
- ColorMap exch
- currentfile 3 string readhexstring pop put
- } for
- columns rows 8
- [ columns 0 0 rows neg 0 rows ]
- { DecodePacket } false 3 colorimage
- }{
- 0 1 Ncol 1 sub {
- ColorMap exch
- 1 string dup 0
- currentfile color readhexstring pop pop
- color 0 get 0.299 mul
- color 1 get 0.587 mul add
- color 2 get 0.114 mul add
- cvi put put
- } for
- columns rows 8
- [ columns 0 0 rows neg 0 rows ]
- { DecodePacket } image
- } ifelse
- grestore
-} bind def
-%***********************************************************************
-%* Image decoding *
-%***********************************************************************
-DisplayImage
-64 33
-64
-ffffff 7e7e7e fefefe fbfbfb f8f8f8 f5f5f5 f2f2f2 efefef ececec e9e9e9
-e6e6e6 e3e3e3 e0e0e0 dddddd dadada d7d7d7 d3d3d3 d0d0d0 cdcdcd cacaca
-c7c7c7 c4c4c4 c1c1c1 bebebe bbbbbb b8b8b8 b5b5b5 b2b2b2 afafaf acacac
-a9a9a9 a6a6a6 a2a2a2 9f9f9f 9c9c9c 999999 969696 939393 909090 8d8d8d
-8a8a8a 878787 848484 787878 747474 000000 000000 000000 000000 000000
-000000 000000 000000 000000 000000 000000 000000 000000 000000 000000
-000000 000000 000000 000000
-010001020000010200030004000200000004000300020103000000040000000301000003
-000000030004000600050102000400050003010200000002000001030005000000020003
-000000020004000300020005000300040000000300040003000400020000000201000005
-030200000003000000020000000200030004000300040005000001030000000201000002
-000601040003010500030006000300000003000201030004010200040000000300000002
-000000030200000200040100000300000003000200030002010402000005000300060003
-000000020004000000040103010400000002000500040003010400020004000300000005
-000600050100000400000103000500030004000200030004000200040002020000030000
-000300000003010201000103000001030100000200040005010401000002000400000005
-010000020005000201040300000500040005000401000003030201000002000400020003
-000400050000000301040003000401000203000000020003000000050003000200040000
-000300020003000400000005010000040103000000020004000202000003000200050002
-000302040002000000040006000001020100000400000002000503000002000301000102
-000000020006000400000104000000040100000500030002000300020004000200000002
-000000020100000400050004000000050102000400020003000000030204000500020103
-000401020007000200060003000400000003000200030000000500040003000200000002
-000000030002000000030100000400000202000300020005000001020003010000020006
-000400030004000201050003000403000003000200040006000000020003000200040000
-010300040002000000030007020201040003000400050004000201040000000201030000
-000301000002000000040003000200050003010200050102000401000003000402020100
-000300000003000200030002000001040005000000060105000401060004000800040006
-000500060000010400050006010401030100000600040002000500000003000200050000
-000400030004000300020003000200030005000400000003010000020004000300020000
-0002010300040002000300020005000300000004000700020003000601090008010a0008
-000a000c00080009000a0107000500090107000001040007000500030004000301000002
-000000030000010401030002000300020003010200050000000500040002000300000005
-010300000102000300040003000000040005000400080107010a0009000b000d000b000d
-000e000c000a0009000c010a000800050007000400030007000500040103000400030002
-000401020003000500030002010000030002010300020004000000050000000200040100
-0003000400020005000200060002010300060004010700050007000d010c000d0011000f
-0011001000130011000f0011000d000c000d010b000a0007000600050002000501030005
-000401020004010300050303000000050000000201030005000000040102010401030002
-000000020103000200050106000c000a000d000f010d000f001000110014001501160015
-0013001401110010000c000d000900070009000500060104000301000003000000030002
-000600000003000401020004000500020003000200040003000200030002000501040003
-0000010200000002000500030108000a000c000f000e010d000e00100013001500170019
-011b001a00190018001700140013000f000c020800030005000400050000000200040005
-000000040003000501030005000000030004010000040002010001030204000000020004
-010300040003000500070009000b000e0010000c000d010f001200160018001a001b031e
-001d011a001400130011000e000a00090004000300020004000300060000020300020103
-010400000004000500040005000200000004010000030002000500020203000400000004
-0007000600050109010d000f000d001100100017001a001b001d001e0021012200230020
-001f001c001a001700160013000e000d000b000800070003000500030102000500030000
-000200000004000300060102000400030004000300000102000000040002000300000002
-02040005000301040008000b000a000d000c000d001200130018011c001e002000240026
-0029002a002800250020001d001a001900150013000f000c000b00070006000501040003
-000400030000000300050004000200000002010400050002000000030000000300020000
-000300040003000700050106000300040003000000070008000b000a000f000e00110012
-0017001a001c001e002100240029002b002c002b002a00250021001e001a001900150012
-000e000c0008000600070002000400030005000000040302000300050002000400020000
-01030002000500030000010400030006000200070000000300050003000000070106010b
-000f000d001100160018001a001d0020002200270001002c002b002a002700250020001e
-001b001700140013000e000d000a01090005000400000202000301020003000200030002
-000500020003000600030004010201000005010301020003000400030002000600040107
-010a0010000f001200150018001b001d0020002200250128002600240023001f001e001a
-0016001400120011000c000a000900080006000501040100000201030100010401000005
-010000030100000200000003000000020004000200030102000700040003000400070109
-000a0110001500170019001a001b001e0020012200210020001e001d001b001900160114
-0011000c000b000a00070006000501040006000000030004000001040002000500000002
-000300040002000501030002000000050004000001020103000001040205000600080009
-000c000d001102150118001b001d001c011d001c001d001a00170016001400130010000f
-000a00070008000701060002000002030005000200040000000600000003000000030300
-0004000300060105000000040000000600020006010200060103000800060009000b000f
-0010011200140015001800170018001a0119001800160014011500120011000d000c000a
-000700060004000600050204020000030000000400030104000300040103000401000003
-0000000600000003000000020000000300050000040300080009000b000e000d00100011
-01120011001400160015001600140013001400100012020e000b000a0007000500040005
-000400030004000002030005000302040002010400030002000000040000010200000003
-01000103000500030005010300060002000600040005000800090008000a000b000d000e
-010f0212001100120011000d000f000e000a000900050107010600050006000200000103
-000600030004000500020005000301000004000200040000000400030002000000040102
-00030004000300040005000301000003000400070004000200050003000600070006000a
-0009010c000d000f000e000f0010010c020a000801060005000600000002000400030002
-000300020100000300040105010300050002000000040005000600000104000300070000
-000400000002000000030202000300020104000300040005000701040008000500090008
-0009000c00080009000b010a000900060008000701080006000400060005000600000205
-010400030000000200030004000003020005000300000204000200050000000200030002
-0005000000040006000700040002000600020003000400050006000501060004000a0003
-000700040008000600070006010700040006000700040007000400050100000200030100
-010200000002000000030000010300040005000000030000000500030005000000040000
-000200030000000400020000000300040002000601020005010300050003000400020103
-01040003000500040106000a000600070005000400060005000401050003010200040002
-000300000003000400020004000300000202010400000003020200030005010200050002
-000000030100010400050004000500020000000402030002000300040005010400000003
-000200050102000400030002010400030002000500030000000200030006000401030202
-010300040005000005030002000300020000000600020004000300020003000400050000
-000301000202000301000002000300040003000400030100000300050103000400020006
-000200030004000200000003000000030000000200050104000000030102000400030000
-000500030104010200050004020000020100000201030005000000020004020201000002
-000400000004000500040002020001030000000400030002000001030002000600050003
-010201030002000400050003000000030000000300040002010301000005000201030000
-000302000004010300020003010000030100000301040006000300000102000403030002
-000000050002030300050003000200050002000301020003000001030000000200030400
-000200040000000200030004010300020006000000030000000300060000000500030002
-020401000002000000030000000401030102000600040005000000050000000301020600
-00020003000400020003000200030004000300020003000001030002
-rs gr
-%
-% End Imported PIC File: galex.gif
-%EndDocument
-%
-2 slc
-15.000 slw
-% Polyline
- [15 66.7] 66.7 sd
-n 4918 4907 m 7706 5897 l gs col0 s gr [] 0 sd
- [100.0] 0 sd
-% Rotated Ellipse
-gs
-4890 4890 tr
--341.999 rot
-n 0 0 2025 825 0 360 DrawEllipse gs col8 s gr
-gr
- [] 0 sd
-0 slc
-% Arc
-gs clippath
-7306 5475 m 7164 5677 l 7194 5432 l 7088 5710 l 7200 5752 l cp clip
-n 5784.2 5039.6 1522.8 -5.5 25.8 arc
-gs col18 s gr
- gr
-
-% arrowhead
-7.500 slw
-n 7306 5475 m 7164 5677 l 7194 5432 l 7250 5453 l 7306 5475 l cp gs col18 1.00 shd ef gr col18 s
-15.000 slw
-% Polyline
- [15 50.0] 50.0 sd
-n 4890 4890 m 7875 4890 l gs col0 s gr [] 0 sd
-30.000 slw
-% Polyline
-gs clippath
-4897 4698 m 4985 4635 l 5010 4740 l 5057 4614 l 4944 4572 l cp clip
-4978 4827 m 4890 4890 l 4865 4785 l 4818 4911 l 4931 4953 l cp clip
-n 4890 4890 m 4985 4635 l gs col18 s gr gr
-
-% arrowhead
-0.000 slw
-n 4978 4827 m 4890 4890 l 4865 4785 l 4921 4806 l 4978 4827 l cp gs col18 1.00 shd ef gr col18 s
-% arrowhead
-n 4897 4698 m 4985 4635 l 5010 4740 l 4954 4719 l 4897 4698 l cp gs col18 1.00 shd ef gr col18 s
-2 slc
-30.000 slw
-% Polyline
-gs clippath
-5445 5023 m 5510 5110 l 5405 5136 l 5532 5182 l 5572 5069 l cp clip
-4955 4977 m 4890 4890 l 4995 4864 l 4868 4818 l 4828 4931 l cp clip
-n 4890 4890 m 5510 5110 l gs col18 s gr gr
-
-% arrowhead
-0 slc
-0.000 slw
-n 4955 4977 m 4890 4890 l 4995 4864 l 4975 4920 l 4955 4977 l cp gs col18 1.00 shd ef gr col18 s
-% arrowhead
-n 5445 5023 m 5510 5110 l 5405 5136 l 5425 5080 l 5445 5023 l cp gs col18 1.00 shd ef gr col18 s
-/Courier ff 195.00 scf sf
-7467 5408 m
-gs 1 -1 sc (THETA_IMAGE) col0 sh gr
-/Courier ff 195.00 scf sf
-4770 5178 m
-gs 1 -1 sc 340.0 rot (A_IMAGE) col0 sh gr
-/Courier ff 195.00 scf sf
-4600 4887 m
-gs 1 -1 sc 70.0 rot (B_IMAGE) col0 sh gr
-7.500 slw
-% Polyline
-gs clippath
-3031 3814 m 3111 3936 l 2989 3856 l 3139 4007 l 3182 3964 l cp clip
-n 2775 3600 m 2550 3975 l 2925 3750 l 3150 3975 l gs col0 s gr gr
-
-% arrowhead
-15.000 slw
-n 3031 3814 m 3111 3936 l 2989 3856 l 3027 3852 l 3031 3814 l cp gs 0.00 setgray ef gr col0 s
-% Polyline
-%
-% Begin Imported EPS File: formu1.ps
-%BeginDocument: formu1.ps
-%
-n gs
-900 3342 tr
-17.200000 -17.200000 sc
-0 -15 tr
--125 -690 tr
-sa
-/showpage {} def
-% EPS file follows:
-%!PS-Adobe-2.0
-%%Creator: dvipsk 5.58f Copyright 1986, 1994 Radical Eye Software
-%%Title: formu.dvi
-%%Pages: 1
-%%PageOrder: Ascend
-%%BoundingBox: 125 690 500 705
-%%DocumentPaperSizes: A4
-%%EndComments
-%DVIPSCommandLine: dvips formu -o
-%DVIPSParameters: dpi=300, comments removed
-%DVIPSSource: TeX output 1997.05.12:1933
-%%BeginProcSet: tex.pro
-/TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N
-/X{S N}B /TR{translate}N /isls false N /vsize 11 72 mul N /hsize 8.5 72
-mul N /landplus90{false}def /@rigin{isls{[0 landplus90{1 -1}{-1 1}
-ifelse 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
-isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div
-hsize mul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul
-TR[matrix currentmatrix{dup dup round sub abs 0.00001 lt{round}if}
-forall round exch round exch]setmatrix}N /@landscape{/isls true N}B
-/@manualfeed{statusdict /manualfeed true put}B /@copies{/#copies X}B
-/FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{
-/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N
-string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N
-end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{
-/sf 1 N /fntrx FMat N df-tail}B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]
-N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup
-length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{
-128 ch-data dup length 3 sub get sub}B /ch-yoff{ch-data dup length 2 sub
-get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data
-dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N
-/rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup
-/base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx
-0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff
-setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff
-.1 sub]{ch-image}imagemask restore}B /D{/cc X dup type /stringtype ne{]}
-if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup
-length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{
-cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin
-0 0 moveto /V matrix currentmatrix dup 1 get dup mul exch 0 get dup mul
-add .99 lt{/QV}{/RV}ifelse load def pop pop}N /eop{SI restore userdict
-/eop-hook known{eop-hook}if showpage}N /@start{userdict /start-hook
-known{start-hook}if pop /VResolution X /Resolution X 1000 div /DVImag X
-/IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for
-65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}N /RMat[1 0 0 -1 0
-0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V
-{}B /RV statusdict begin /product where{pop product dup length 7 ge{0 7
-getinterval dup(Display)eq exch 0 4 getinterval(NeXT)eq or}{pop false}
-ifelse}{false}ifelse end{{gsave TR -.1 .1 TR 1 1 scale rulex ruley false
-RMat{BDot}imagemask grestore}}{{gsave TR -.1 .1 TR rulex ruley scale 1 1
-false RMat{BDot}imagemask grestore}}ifelse B /QV{gsave newpath transform
-round exch round exch itransform moveto rulex 0 rlineto 0 ruley neg
-rlineto rulex neg 0 rlineto fill grestore}B /a{moveto}B /delta 0 N /tail
-{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{S p tail}B /c{-4 M}
-B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{
-4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w}B /q{
-p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
-a}B /bos{/SS save N}B /eos{SS restore}B end
-%%EndProcSet
-TeXDict begin 39158280 55380996 1000 300 300 (formu.dvi)
- at start /Fa 1 51 df<0F8030E040708030C038E0384038003800700070006000C00180
-030006000C08080810183FF07FF0FFF00D157E9412>50 D E /Fb
-2 122 df<01E0F006310C081A1C101A3C201C3C201C18201C0000380000380000380000
-380000700000700000700000700860E010F0E010F0E020E170404230803C1F0016157E94
-1C>120 D<1E00182300384380384380708380708700708700700700E00E00E00E00E00E
-00E01C01C01C01C01C01C01C01C01C03801C03801C07800C0B800E170003E70000070000
-0700000E00600E00F01C00F01800E0300080600041C0003F0000151F7E9418>I
-E /Fc 5 62 df<00200040008001000300060004000C000C001800180030003000300070
-00600060006000E000E000E000E000E000E000E000E000E000E000E000E000E000E00060
-00600060007000300030003000180018000C000C0004000600030001000080004000200B
-327CA413>40 D<800040002000100018000C000400060006000300030001800180018001
-C000C000C000C000E000E000E000E000E000E000E000E000E000E000E000E000E000E000
-C000C000C001C0018001800180030003000600060004000C00180010002000400080000B
-327DA413>I<000180000001800000018000000180000001800000018000000180000001
-80000001800000018000000180000001800000018000000180000001800000018000FFFF
-FFFEFFFFFFFE000180000001800000018000000180000001800000018000000180000001
-800000018000000180000001800000018000000180000001800000018000000180001F22
-7D9C26>43 D<03F8000C1E00100F002007804007C07807C07803C07807C03807C0000780
-000780000700000F00000C0000380003F000001C00000F000007800007800003C00003C0
-0003E02003E07003E0F803E0F803E0F003C04003C0400780200780100F000C1C0003F000
-13227EA018>51 D<FFFFFFFEFFFFFFFE0000000000000000000000000000000000000000
-000000000000000000000000FFFFFFFEFFFFFFFE1F0C7D9126>61
-D E /Fd 2 3 df<FFFFFFFCFFFFFFFC1E027C8C27>0 D<800002C0000660000C30001818
-00300C00600600C003018001830000C600006C00003800003800006C0000C60001830003
-01800600C00C006018003030001860000CC000068000021718789727>2
-D E /Fe 8 90 df<003800007C00007C00006C0000EE0000EE0000EE0000C60000C60001
-C70001C70001C7000183000383800383800383800383800701C00701C007FFC007FFC00F
-FFE00E00E00E00E00E00E01E00F01C00707F01FCFF83FE7F01FC171E7F9D1A>65
-D<007C3801FF3807FFF80F83F81E00F81C0078380078380038700038700038700000E000
-00E00000E00000E00000E00000E00000E00000E000007000007000387000383800383800
-381C00701E00F00F83E007FFC001FF80007C00151E7E9D1A>67 D<FFFFF8FFFFF8FFFFF8
-1C00381C00381C00381C00381C00001C00001C00001C0E001C0E001C0E001FFE001FFE00
-1FFE001C0E001C0E001C0E001C00001C00001C00001C001C1C001C1C001C1C001C1C001C
-FFFFFCFFFFFCFFFFFC161E7E9D1A>69 D<00F8E003FEE007FFE00F07E01E03E03C01E038
-00E07000E07000E07000E0E00000E00000E00000E00000E00000E00000E00FF8E00FF8E0
-0FF8E000E07000E07000E07001E03801E03C03E01E03E00F07E007FFE003FEE000F8E015
-1E7E9D1A>71 D<7FFF00FFFF807FFF0001C00001C00001C00001C00001C00001C00001C0
-0001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C0
-0001C00001C00001C00001C00001C0007FFF00FFFF807FFF00111E7C9D1A>73
-D<FC007EFE00FEFE00FE3B01B83B01B83B01B83B83B83B83B839833839833839C73839C7
-3838C63838EE3838EE38386C38386C38387C383838383838383800383800383800383800
-38380038380038380038FE00FEFE00FEFE00FE171E7F9D1A>77 D<7F87F87F87F87F87F8
-0E01C00703C007838003878003C70001CF0001EE0000FE0000FC00007C00007800003800
-007C00007C0000FE0000EE0001CF0001C7000387800383800701C00701C00E00E00E00E0
-7F01FCFF83FE7F01FC171E7F9D1A>88 D<FF01FEFF01FEFF01FE1C00700E00E00E00E00F
-01E00701C00783C003838003C78001C70001C70000EE0000EE00007C00007C0000380000
-380000380000380000380000380000380000380000380000380001FF0001FF0001FF0017
-1E7F9D1A>I E end
-%%EndProlog
-%%BeginSetup
-%%Feature: *Resolution 300dpi
-TeXDict begin
-%%PaperSize: A4
-
-%%EndSetup
-%%Page: 1 1
-1 0 bop 237 315 a Fe(CXX)p 318 315 16 2 v 17 w(IMAGE)o
-Fd(\002)q Fc(\()p Fb(x)q Fd(\000)p 589 289 28 2 v 1 w
-Fb(x)o Fc(\))635 297 y Fa(2)655 315 y Fc(+)q Fe(CYY)p
-775 315 16 2 v 17 w(IMAGE)o Fd(\002)q Fc(\()p Fb(y)s
-Fd(\000)p 1044 289 26 2 v 1 w Fb(y)p Fc(\))1087 297 y
-Fa(2)1108 315 y Fc(+)q Fe(CXY)p 1228 315 16 2 v 17 w(IMAGE)o
-Fd(\002)q Fc(\()p Fb(x)q Fd(\000)p 1499 289 28 2 v 1
-w Fb(x)n Fc(\)\()p Fb(y)s Fd(\000)p 1630 289 26 2 v 1
-w Fb(y)p Fc(\))14 b(=)g(3)1763 297 y Fa(2)p eop
-%%Trailer
-end
-userdict /end-hook known{end-hook}if
-%%EOF
-rs gr
-%
-% End Imported PIC File: formu1.ps
-%EndDocument
-%
-showpage
-$F2psEnd
-rs
-
-%%EndDocument
- @endspecial 393 1860 a Fv(Figure)30 b(5:)41 b(The)30
-b(meaning)g(of)g(basic)g(shap)s(e)g(parameters.)41 b
-Fs(THETA)29 b Fv(is)g(negativ)m(e)j(here.)0 2135 y Ft(9.1.7)105
-b(By-pro)s(ducts)37 b(of)e(shap)s(e)f(parameters:)46
-b Fs(ELONGATION)p Ft(,)32 b Fs(ELLIPTICITY)0 2321 y Fo(15)0
-2514 y Fv(These)e(parameters)h(are)g(directly)e(deriv)m(ed)g(from)h
-Fs(A)g Fv(and)g Fs(B)p Fv(:)1374 2748 y Fs(ELONGATION)80
-b Fv(=)2098 2687 y Fs(A)p 2098 2727 48 4 v 2098 2811
-a(B)2307 2748 y Fv(and)1164 b(\(30\))1326 2961 y Fs(ELLIPTICITY)80
-b Fv(=)j(1)20 b Fq(\000)2254 2899 y Fs(B)p 2254 2940
-V 2254 3023 a(A)2312 2961 y Fk(:)1281 b Fv(\(31\))0 3269
-y Ft(9.1.8)105 b(P)m(osition)54 b(errors:)81 b Fs(ERRX2)p
-Ft(,)55 b Fs(ERRY2)p Ft(,)g Fs(ERRXY)p Ft(,)50 b Fs(ERRA)p
-Ft(,)h Fs(ERRB)p Ft(,)g Fs(ERRTHETA)p Ft(,)f Fs(ERRCXX)p
-Ft(,)g Fs(ERRCYY)p Ft(,)319 3382 y Fs(ERRCXY)0 3601 y
-Fv(Uncertain)m(ties)38 b(on)g(the)h(p)s(osition)d(of)j(the)f(barycen)m
-(ter)h(can)g(b)s(e)e(estimated)i(using)e(photon)h(statistics.)64
-b(Of)0 3714 y(course,)44 b(this)c(kind)f(of)i(estimate)g(has)g(to)g(b)s
-(e)g(considered)e(as)i(a)h(lo)m(w)m(er-v)-5 b(alue)41
-b(of)g(the)g(real)f(error)h(since)f(it)0 3827 y(do)s(es)i(not)g
-(include,)h(for)f(instance,)j(the)d(con)m(tribution)f(of)h(detection)h
-(biases)e(or)h(the)g(con)m(tamination)h(b)m(y)0 3940
-y(neigh)m(b)s(ours.)52 b(As)35 b(SExtractor)h(do)s(es)e(not)h(curren)m
-(tly)f(tak)m(e)j(in)m(to)e(accoun)m(t)h(p)s(ossible)c(correlations)j(b)
-s(et)m(w)m(een)0 4052 y(pixels,)29 b(the)h(v)-5 b(ariances)31
-b(simply)c(write:)974 4409 y Fs(ERRX2)130 b Fv(=)25 b(v)-5
-b(ar\()p 1599 4360 52 4 v Fk(x)p Fv(\))26 b(=)1924 4178
-y Fg(X)1925 4362 y Fi(i)p Fj(2S)2059 4259 y Fk(\033)2114
-4221 y Fo(2)2111 4281 y Fi(i)2154 4259 y Fv(\()p Fk(x)2241
-4273 y Fi(i)2290 4259 y Fq(\000)p 2380 4210 V 19 w Fk(x)p
-Fv(\))2467 4221 y Fo(2)p 1924 4388 584 4 v 2029 4417
-a Fg( )2094 4480 y(X)2095 4664 y Fi(i)p Fj(2S)2229 4561
-y Fk(I)2269 4575 y Fi(i)2298 4417 y Fg(!)2363 4440 y
-Fo(2)2517 4409 y Fk(;)1076 b Fv(\(32\))974 4949 y Fs(ERRY2)132
-b Fv(=)25 b(v)-5 b(ar\()p 1601 4900 48 4 v Fk(y)s Fv(\))26
-b(=)1924 4718 y Fg(X)1925 4902 y Fi(i)p Fj(2S)2059 4799
-y Fk(\033)2114 4762 y Fo(2)2111 4822 y Fi(i)2154 4799
-y Fv(\()p Fk(y)2234 4813 y Fi(i)2282 4799 y Fq(\000)p
-2373 4750 V 20 w Fk(y)s Fv(\))2456 4762 y Fo(2)p 1924
-4928 572 4 v 2023 4958 a Fg( )2089 5021 y(X)2089 5204
-y Fi(i)p Fj(2S)2224 5101 y Fk(I)2264 5115 y Fi(i)2292
-4958 y Fg(!)2358 4981 y Fo(2)2506 4949 y Fk(;)1087 b
-Fv(\(33\))p 0 5233 1512 4 v 73 5286 a Fn(15)138 5318
-y Fm(Suc)n(h)25 b(parameters)g(are)i(dimensionless)f(and)f(therefore)i
-(do)e(not)h(accept)g(an)n(y)p 2433 5318 24 4 v 53 w Fl(IMAGE)h
-Fm(or)p 2777 5318 V 54 w Fl(WORLD)g Fm(su\016x)1844 5753
-y Fv(29)p eop
-%%Page: 30 30
-30 29 bop 974 74 a Fs(ERRXY)82 b Fv(=)25 b(co)m(v)r(\()p
-1559 25 52 4 v Fk(x)q(;)p 1652 25 48 4 v 15 w(y)s Fv(\))g(=)1924
--157 y Fg(X)1925 27 y Fi(i)p Fj(2S)2059 -76 y Fk(\033)2114
--114 y Fo(2)2111 -54 y Fi(i)2154 -76 y Fv(\()p Fk(x)2241
--62 y Fi(i)2290 -76 y Fq(\000)p 2380 -125 52 4 v 19 w
-Fk(x)p Fv(\)\()p Fk(y)2547 -62 y Fi(i)2596 -76 y Fq(\000)p
-2687 -125 48 4 v 20 w Fk(y)s Fv(\))p 1924 53 847 4 v
-2160 82 a Fg( )2226 145 y(X)2226 329 y Fi(i)p Fj(2S)2361
-226 y Fk(I)2401 240 y Fi(i)2429 82 y Fg(!)2495 105 y
-Fo(2)2780 74 y Fk(:)813 b Fv(\(34\))0 473 y Fk(\033)52
-487 y Fi(i)110 473 y Fv(is)30 b(the)g(\015ux)g(uncertain)m(t)m(y)g
-(estimated)h(for)f(pixel)f Fk(i)p Fv(:)1592 683 y Fk(\033)1647
-646 y Fo(2)1644 706 y Fi(i)1712 683 y Fv(=)c Fk(\033)1860
-697 y Fi(B)1920 646 y Fo(2)1920 706 y Fi(i)1980 683 y
-Fv(+)2083 622 y Fk(I)2123 636 y Fi(i)p 2081 662 72 4
-v 2081 745 a Fk(g)2124 759 y Fi(i)2162 683 y Fk(;)1431
-b Fv(\(35\))0 895 y(where)32 b Fk(\033)317 909 y Fi(B)378
-913 y(i)439 895 y Fv(is)g(the)h(lo)s(cal)g(bac)m(kground)f(noise)h(and)
-f Fk(g)1855 909 y Fi(i)1917 895 y Fv(the)h(lo)s(cal)f(gain)h(|)f(con)m
-(v)m(ersion)i(factor)g(|)e(for)h(pixel)0 1008 y Fk(i)d
-Fv(\(see)h Fq(x)p Ft(??)h Fv(for)d(more)i(details\).)40
-b(Ma)5 b(jor)30 b(axis)g Fs(ERRA)p Fv(,)f(minor)g(axis)g
-Fs(ERRB)p Fv(,)h(and)f(p)s(osition)f(angle)i Fs(ERRTHETA)e
-Fv(of)0 1120 y(the)35 b(1)p Fk(\033)i Fv(p)s(osition)c(error)h(ellipse)
-e(are)j(computed)f(from)g(the)g(co)m(v)-5 b(ariance)36
-b(matrix)e(exactly)h(lik)m(e)f(in)f(9.1.5)j(for)0 1233
-y(shap)s(e)30 b(parameters:)846 1490 y Fs(ERRA)1037 1453
-y Fo(2)1159 1490 y Fv(=)1323 1429 y(v)-5 b(ar\()p 1482
-1380 52 4 v Fk(x)p Fv(\))21 b(+)f(v)-5 b(ar\()p 1840
-1380 48 4 v Fk(y)s Fv(\))p 1323 1469 601 4 v 1600 1553
-a(2)1953 1490 y(+)2044 1326 y Fg(s)p 2127 1326 1276 4
-v 45 x(\022)2198 1429 y Fv(v)g(ar\()p 2357 1380 52 4
-v Fk(x)q Fv(\))20 b Fq(\000)g Fv(v)-5 b(ar\()p 2715 1380
-48 4 v Fk(y)s Fv(\))p 2198 1469 601 4 v 2476 1553 a(2)2809
-1371 y Fg(\023)2870 1387 y Fo(2)2929 1490 y Fv(+)20 b(co)m(v)3153
-1464 y Fo(2)3192 1490 y Fv(\()p 3227 1441 52 4 v Fk(x)q(;)p
-3320 1441 48 4 v 15 w(y)s Fv(\))p Fk(;)190 b Fv(\(36\))846
-1776 y Fs(ERRB)1037 1738 y Fo(2)1159 1776 y Fv(=)1323
-1714 y(v)-5 b(ar\()p 1482 1665 52 4 v Fk(x)p Fv(\))21
-b(+)f(v)-5 b(ar\()p 1840 1665 48 4 v Fk(y)s Fv(\))p 1323
-1755 601 4 v 1600 1838 a(2)1953 1776 y Fq(\000)2044 1612
-y Fg(s)p 2127 1612 1276 4 v 45 x(\022)2198 1714 y Fv(v)g(ar\()p
-2357 1665 52 4 v Fk(x)q Fv(\))20 b Fq(\000)g Fv(v)-5
-b(ar\()p 2715 1665 48 4 v Fk(y)s Fv(\))p 2198 1755 601
-4 v 2476 1838 a(2)2809 1657 y Fg(\023)2870 1672 y Fo(2)2929
-1776 y Fv(+)20 b(co)m(v)3153 1750 y Fo(2)3192 1776 y
-Fv(\()p 3227 1727 52 4 v Fk(x)q(;)p 3320 1727 48 4 v
-15 w(y)s Fv(\))p Fk(;)190 b Fv(\(37\))336 2020 y(tan\(2)21
-b Fq(\002)f Fs(ERRTHETA)n Fv(\))83 b(=)g(2)1497 1959
-y(co)m(v)r(\()p 1664 1910 52 4 v Fk(x)q(;)p 1757 1910
-48 4 v 15 w(y)s Fv(\))p 1368 1999 601 4 v 1368 2083 a(v)-5
-b(ar\()p 1527 2034 52 4 v Fk(x)q Fv(\))20 b Fq(\000)g
-Fv(v)-5 b(ar\()p 1885 2034 48 4 v Fk(y)s Fv(\))1979 2020
-y Fk(:)1614 b Fv(\(38\))0 2237 y(And)29 b(the)i(ellipse)d(parameters)j
-(are:)324 2462 y Fs(ERRCXX)82 b Fv(=)857 2400 y(cos)979
-2367 y Fo(2)1034 2400 y Fs(ERRTHETA)p 857 2441 559 4
-v 1021 2524 a(ERRA)1212 2495 y Fo(2)1446 2462 y Fv(+)1546
-2400 y(sin)1658 2366 y Fo(2)1713 2400 y Fs(ERRTHETA)p
-1546 2441 549 4 v 1705 2524 a(ERRB)1896 2495 y Fo(2)2130
-2462 y Fv(=)2699 2400 y(v)-5 b(ar\()p 2858 2351 48 4
-v Fk(y)s Fv(\))p 2236 2441 1170 4 v 2236 2457 a Fg(r)p
-2319 2457 1087 4 v 37 x(\020)2378 2544 y Fo(v)l(ar\()p
-2501 2506 40 4 v Fi(x)p Fo(\))p Fj(\000)p Fo(v)l(ar)q(\()p
-2747 2506 38 4 v Fi(y)s Fo(\))p 2378 2567 434 4 v 2577
-2620 a(2)2822 2494 y Fg(\021)2872 2517 y Fo(2)2931 2588
-y Fv(+)20 b(co)m(v)3155 2562 y Fo(2)3194 2588 y Fv(\()p
-3229 2539 52 4 v Fk(x;)p 3321 2539 48 4 v 15 w(y)t Fv(\))3415
-2462 y Fk(;)178 b Fv(\(39\))324 2825 y Fs(ERRCYY)82 b
-Fv(=)857 2764 y(sin)969 2729 y Fo(2)1023 2764 y Fs(ERRTHETA)p
-857 2804 549 4 v 1016 2888 a(ERRA)1207 2858 y Fo(2)1435
-2825 y Fv(+)1536 2764 y(cos)1658 2731 y Fo(2)1713 2764
-y Fs(ERRTHETA)p 1536 2804 559 4 v 1700 2888 a(ERRB)1891
-2858 y Fo(2)2130 2825 y Fv(=)2697 2764 y(v)-5 b(ar\()p
-2856 2715 52 4 v Fk(x)p Fv(\))p 2236 2804 1170 4 v 2236
-2821 a Fg(r)p 2319 2821 1087 4 v 37 x(\020)2378 2908
-y Fo(v)l(ar\()p 2501 2869 40 4 v Fi(x)p Fo(\))p Fj(\000)p
-Fo(v)l(ar)q(\()p 2747 2869 38 4 v Fi(y)s Fo(\))p 2378
-2931 434 4 v 2577 2983 a(2)2822 2858 y Fg(\021)2872 2881
-y Fo(2)2931 2952 y Fv(+)20 b(co)m(v)3155 2926 y Fo(2)3194
-2952 y Fv(\()p 3229 2903 52 4 v Fk(x;)p 3321 2903 48
-4 v 15 w(y)t Fv(\))3415 2825 y Fk(;)178 b Fv(\(40\))324
-3172 y Fs(ERRCXY)82 b Fv(=)g(2)15 b(cos)i Fs(ERRTHETA)c
-Fv(sin)g Fs(ERRTHETA)1965 3053 y Fg(\022)2129 3111 y
-Fv(1)p 2037 3151 231 4 v 2037 3235 a Fs(ERRA)2227 3205
-y Fo(2)2297 3172 y Fq(\000)2490 3111 y Fv(1)p 2398 3151
-V 2398 3235 a Fs(ERRB)2589 3205 y Fo(2)2638 3053 y Fg(\023)3618
-3172 y Fv(\(41\))694 3412 y(=)82 b Fq(\000)p Fv(2)1386
-3351 y(co)m(v)s(\()p 1554 3302 52 4 v Fk(x;)p 1646 3302
-48 4 v 15 w(y)t Fv(\))p 973 3391 1170 4 v 973 3408 a
-Fg(r)p 1056 3408 1087 4 v 37 x(\020)1116 3494 y Fo(v)l(ar\()p
-1239 3456 40 4 v Fi(x)p Fo(\))p Fj(\000)p Fo(v)l(ar)q(\()p
-1485 3456 38 4 v Fi(y)r Fo(\))p 1116 3518 434 4 v 1315
-3570 a(2)1560 3445 y Fg(\021)1609 3468 y Fo(2)1669 3539
-y Fv(+)20 b(co)m(v)1893 3512 y Fo(2)1932 3539 y Fv(\()p
-1967 3490 52 4 v Fk(x;)p 2059 3490 48 4 v 15 w(y)s Fv(\))2153
-3412 y Fk(:)1440 b Fv(\(42\))0 3845 y Ft(9.1.9)105 b(Handling)36
-b(of)f(\\in\014nitely)f(thin")h(detections)0 4063 y Fv(Apart)i(from)g
-(the)g(mathematical)h(singularities)c(that)k(can)f(b)s(e)g(found)e(in)h
-(some)i(of)f(the)g(ab)s(o)m(v)m(e)i(equations)0 4176
-y(describing)33 b(shap)s(e)h(parameters)i(\(and)f(whic)m(h)f
-(SExtractor)i(handles,)f(of)g(course\),)i(some)f(detections)g(with)0
-4289 y(v)m(ery)e(sp)s(eci\014c)e(shap)s(es)h(ma)m(y)h(yield)d(quite)i
-(unph)m(ysical)e(parameters,)k(namely)e(n)m(ull)e(v)-5
-b(alues)33 b(for)h Fs(B)p Fv(,)f Fs(ERRB)p Fv(,)f(or)0
-4402 y(ev)m(en)25 b Fs(A)g Fv(and)f Fs(ERRA)p Fv(.)g(Suc)m(h)g
-(detections)h(include)d(single-pixel)g(ob)5 b(jects)26
-b(and)e(horizon)m(tal,)i(v)m(ertical)e(or)h(diagonal)0
-4515 y(lines)g(whic)m(h)h(are)i(1-pixel)e(wide.)38 b(They)27
-b(will)d(generally)j(originate)f(from)h(glitc)m(hes;)h(but)f(v)m(ery)g
-(undersampled)0 4628 y(and/or)j(lo)m(w)g(S/N)h(gen)m(uine)f(sources)g
-(ma)m(y)h(also)f(pro)s(duce)g(suc)m(h)g(shap)s(es.)39
-b(Ho)m(w)31 b(to)h(handle)d(them?)0 4788 y(F)-8 b(or)36
-b(basic)e(shap)s(e)g(parameters,)j(the)e(follo)m(wing)e(con)m(v)m(en)m
-(tion)k(w)m(as)e(adopted:)50 b(if)34 b(the)h(ligh)m(t)f(distribution)d
-(of)0 4901 y(the)d(ob)5 b(ject)28 b(falls)e(on)i(one)g(single)e(pixel,)
-g(or)i(lies)e(on)i(a)g(su\016cien)m(tly)e(thin)g(line)g(of)h(pixels,)g
-(whic)m(h)f(w)m(e)i(translate)0 5014 y(mathematically)i(b)m(y)p
-1551 5048 92 4 v 1551 5127 a Fk(x)1603 5101 y Fo(2)p
-1658 5048 88 4 v 1658 5127 a Fk(y)1706 5101 y Fo(2)1765
-5127 y Fq(\000)p 1856 5078 100 4 v 20 w Fk(xy)1956 5089
-y Fo(2)2021 5127 y Fk(<)25 b(\032)2164 5089 y Fo(2)2203
-5127 y Fk(;)1390 b Fv(\(43\))0 5278 y(then)p 217 5199
-92 4 v 40 w Fk(x)269 5252 y Fo(2)348 5278 y Fv(and)p
-535 5199 88 4 v 40 w Fk(y)583 5252 y Fo(2)662 5278 y
-Fv(are)41 b(incremen)m(ted)f(b)m(y)g Fk(\032)p Fv(.)70
-b Fk(\032)40 b Fv(is)f(arbitrarily)e(set)k(to)g(1)p Fk(=)p
-Fv(12:)62 b(this)39 b(is)g(the)i(v)-5 b(ariance)40 b(of)g(a)0
-5391 y(1-dimensional)g(top-hat)j(distribution)38 b(with)j(unit)f
-(width.)74 b(Therefore)42 b(1)p Fk(=)2694 5316 y Fq(p)p
-2771 5316 91 4 v 2771 5391 a Fv(12)h(represen)m(ts)f(the)g(t)m(ypical)0
-5504 y(minor-axis)29 b(v)-5 b(alues)29 b(assigned)h(\(in)f(pixels)g
-(units\))g(to)i(undersampled)d(sources)i(in)f(SExtractor.)1844
-5753 y(30)p eop
-%%Page: 31 31
-31 30 bop 0 -74 a Fv(P)m(ositional)27 b(errors)h(are)h(more)f
-(di\016cult)e(to)j(handle,)f(as)g(ob)5 b(jects)29 b(with)e(v)m(ery)i
-(high)e(signal-to-noise)h(can)g(yield)0 39 y(extremely)j(small)f(p)s
-(osition)g(uncertain)m(ties,)h(just)f(lik)m(e)h(singular)e(pro\014les)h
-(do.)43 b(Therefore)31 b(SExtractor)h(\014rst)0 152 y(c)m(hec)m(ks)g
-(that)f(\(43\))h(is)d(true.)41 b(If)30 b(this)f(is)g(the)i(case,)g(a)g
-(new)f(test)h(is)f(conducted:)1237 356 y(v)-5 b(ar\()p
-1396 307 52 4 v Fk(x)p Fv(\))15 b(v)-5 b(ar)q(\()p 1658
-307 48 4 v Fk(y)s Fv(\))20 b Fq(\000)g Fv(co)m(v)-5 b(ar)2060
-319 y Fo(2)2099 356 y Fv(\()p 2134 307 52 4 v Fk(x;)p
-2226 307 48 4 v 15 w(y)t Fv(\))25 b Fk(<)g(\032)2478
-319 y Fo(2)2478 379 y Fi(e)2518 356 y Fk(;)1075 b Fv(\(44\))0
-560 y(where)35 b Fk(\032)315 574 y Fi(e)387 560 y Fv(is)f(arbitrarily)f
-(set)j(to)1189 491 y Fg(\000)1227 496 y(P)1314 583 y
-Fi(i)p Fj(2S)1452 560 y Fk(\033)1507 527 y Fo(2)1504
-585 y Fi(i)1547 491 y Fg(\001)1600 560 y Fk(=)15 b Fv(\()1696
-496 y Fg(P)1784 583 y Fi(i)p Fj(2S)1922 560 y Fk(I)1962
-574 y Fi(i)1990 560 y Fv(\))2025 518 y Fo(2)2065 560
-y Fv(.)55 b(If)35 b(\(44\))i(is)d(true,)j(then)p 2970
-481 92 4 v 35 w Fk(x)3022 534 y Fo(2)3096 560 y Fv(and)p
-3278 481 88 4 v 35 w Fk(y)3326 534 y Fo(2)3400 560 y
-Fv(are)f(incre-)0 673 y(men)m(ted)31 b(b)m(y)f Fk(\032)494
-687 y Fi(e)531 673 y Fv(.)0 964 y Fp(9.2)112 b(Astrometry)36
-b(and)i Fd(WORLD)h Fp(co)s(ordinates)0 1183 y Fv(All)31
-b(SExtractor)i(measuremen)m(ts)g(related)g(to)g(p)s(ositions,)f
-(distances)g(and)g(areas)h(in)e(the)i(image,)h(lik)m(e)e(those)0
-1296 y(describ)s(ed)h(ab)s(o)m(v)m(e)k(can)f(also)f(b)s(e)g(expressed)g
-(in)g Fs(WORLD)f Fv(co)s(ordinates)h(in)f(the)i(output)f(catalog.)58
-b(These)35 b(pa-)0 1409 y(rameters)26 b(simply)d(ha)m(v)m(e)k(the)p
-1019 1409 29 4 v 60 w Fs(WORLD)e Fv(su\016x)f(instead)h(of)h(the)p
-2113 1409 V 60 w Fs(IMAGE)f Fv(app)s(ended)e(to)k(them.)39
-b(The)25 b(con)m(v)m(ersion)0 1522 y(from)43 b Fs(IMAGE)f
-Fv(to)j Fs(WORLD)d Fv(co)s(ordinates)h(is)g(presen)m(tly)g(p)s
-(erformed)f(b)m(y)i(using)e(information)g(found)g(in)g(the)0
-1634 y(FITS)31 b(header)g(of)h(the)g Fr(me)-5 b(asur)g(ement)33
-b Fv(image,)g(ev)m(en)f(if)e(the)i(parameter)g(is)f(originally)e
-(computed)i(from)g(the)0 1747 y Fr(dete)-5 b(ction)31
-b Fv(image)g(\(lik)m(e)f(the)h(basic)e(shap)s(e)h(parameters)h(for)f
-(instance\).)0 1908 y(T)-8 b(o)35 b(understand)f(ho)m(w)h(this)f(is)g
-(done)g(in)g(practice,)j(let's)e(ha)m(v)m(e)h(a)f(general)g(lo)s(ok)g
-(at)h(the)f(w)m(a)m(y)h(the)f(mapping)0 2020 y(from)29
-b Fs(IMAGE)g Fv(to)h Fs(WORLD)f Fv(co)s(ordinates)g(is)g(curren)m(tly)g
-(describ)s(ed)f(in)g(a)j(FITS)e(image)h(header.)40 b(First,)30
-b(a)g(linear)0 2133 y(transformation)h(\(in)m(v)m(olving)f(most)i(of)f
-(the)h(time)f(only)f(scaling)h(and)f(p)s(ossibly)f(rotation,)j(and)f
-(more)g(rarely)0 2246 y(shear\))k(allo)m(ws)g(one)g(to)h(con)m(v)m(ert)
-h(in)m(teger)e(pixel)f(p)s(ositions)f(\(1,2,...\))57
-b(for)35 b(eac)m(h)h(axis)f(to)h(some)f(\\pro)5 b(jected")0
-2359 y(co)s(ordinate)21 b(system.)37 b(This)19 b(is)h(where)g(y)m(ou)h
-(migh)m(t)g(w)m(an)m(t)g(to)h(stop)f(if)e(y)m(our)i Fs(WORLD)e
-Fv(system)i(is)f(just)g(some)h(kind)e(of)0 2472 y(simple)j(fo)s
-(cal-plane)h(co)s(ordinate-system)h(\(in)f(meters)i(for)e(instance\),)j
-(or)e(for)f(a)i(calibrated)e(w)m(a)m(v)m(elength)i(axis)0
-2585 y(\(sp)s(ectrum\).)51 b(No)m(w,)36 b(the)e(FITS)f(W)m(CS)h(\(W)-8
-b(orld)34 b(Co)s(ordinate)f(System\))h(con)m(v)m(en)m(tion)i(allo)m(ws)
-d(y)m(ou)h(to)h(apply)0 2698 y(to)i(these)g(\\pro)5 b(jected)37
-b(co)s(ordinates")g(a)g(non-linear)d(transformation,)k(whic)m(h)d(is)g
-(in)g(fact)j(a)f(de-pro)5 b(jection)0 2811 y(bac)m(k)34
-b(to)g(\\lo)s(cal")g(spherical)d(\(celestial\))j(co)s(ordinates.)49
-b(Man)m(y)34 b(t)m(yp)s(es)f(of)g(pro)5 b(jections)33
-b(are)h(allo)m(w)m(ed)f(b)m(y)g(the)0 2924 y(W)m(CS)k(con)m(v)m(en)m
-(tion,)j(but)c(the)h(traditional)e(tangen)m(tial)j(\(gnomonic\))f(pro)5
-b(jection)37 b(is)f(the)h(most)g(commonly)0 3037 y(used.)69
-b(The)39 b(last)h(step)g(of)g(the)g(transformation)f(is)g(to)i(con)m(v)
-m(ert)h(these)e(lo)s(cal)f(co)s(ordinates,)k(still)37
-b(relativ)m(e)0 3150 y(to)f(a)g(pro)5 b(jection)35 b(reference)h(p)s
-(oin)m(t,)h(to)f(an)f(absolute)h(p)s(osition)d(in)h(celestial)h
-(longitude)g(and)g(latitude,)h(for)0 3262 y(instance)30
-b(righ)m(t-ascension)g(and)g(declination.)39 b(F)-8 b(or)32
-b(this)d(one)i(needs)f(to)h(kno)m(w)g(the)f(reference)h(frame)g(of)f
-(the)0 3375 y(co)s(ordinate)f(system,)g(whic)m(h)e(often)i(requires)f
-(some)h(information)e(ab)s(out)h(the)h(equino)m(x)f(or)h(the)g(observ)
--5 b(ation)0 3488 y(date.)41 b(A)m(t)32 b(this)d(lev)m(el,)h(all)g
-(transformations)f(are)i(matters)g(of)f(spherical)f(trigonometry)-8
-b(.)0 3776 y Ft(9.2.1)105 b(Angular)36 b(co)s(ordinates)0
-3994 y Fv(W)-8 b(e)46 b(will)c(not)j(describ)s(e)f(here)g(the)h
-(transformations)g(\()p Fk(\013;)15 b(\016)s Fv(\))51
-b(=)f Fk(f)10 b Fv(\()p Fk(x;)15 b(y)s Fv(\))45 b(themselv)m(es.)84
-b(SExtractor)45 b(de-)0 4107 y(pro)5 b(jections)32 b(rely)f(on)h(the)g
-(W)m(CSlib)e(2.4)j(written)f(b)m(y)g(Mark)g(Calabretta,)h(and)f(all)f
-(the)h(details)f(concerning)0 4220 y(those)37 b(can)f(b)s(e)g(found)f
-(in)g(Greisen)g(&)h(Calabretta)h(\(1995\).)61 b(In)36
-b(addition)e(to)j(the)p 2927 4220 V 71 w Fs(WORLD)e Fv(parameters,)j(3)
-0 4333 y(purely)29 b(angular)g(\\w)m(orld")h(co)s(ordinates)g(are)h(a)m
-(v)-5 b(ailable)30 b(in)f(SExtractor,)i(expressed)f(in)f(decimal)g
-(degrees:)111 4568 y(1.)p 233 4568 V 81 w Fs(SKY)36 b
-Fv(co)s(ordinates:)54 b(strictly)36 b(iden)m(tical)g(to)p
-1788 4568 V 72 w Fs(WORLD)f Fv(co)s(ordinates,)k(except)f(that)g(the)f
-(units)e(are)j(ex-)227 4681 y(plicitely)27 b(degrees.)41
-b(They)29 b(corresp)s(ond)g(to)h(sky)f(co)s(ordinates)g(in)f(the)i
-(\\nativ)m(e")h(system)f(without)e(an)m(y)227 4794 y(precession)i
-(correction,)h(con)m(v)m(ersion,)g(etc.)111 4982 y(2.)p
-233 4982 V 81 w Fs(J2000)k Fv(co)s(ordinates:)54 b(precession)36
-b(corrections)h(are)h(applied)d(in)g(the)j(FK5)f(system)g(to)h(con)m(v)
-m(ert)h(to)227 5094 y(J2000)32 b(co)s(ordinates)e(if)g(necessary)-8
-b(.)111 5282 y(3.)p 233 5282 V 81 w Fs(B1950)27 b Fv(co)s(ordinates:)39
-b(precession)28 b(corrections)g(are)h(computed)g(in)e(the)h(FK5)h
-(system)g(and)f(transfor-)227 5395 y(mation)i(to)h(B1950)i(is)c
-(applied.)1844 5753 y(31)p eop
-%%Page: 32 32
-32 31 bop 0 -74 a Fv(T)-8 b(ransformation)33 b(to)h(J2000)h(or)e(B1950)
-j(is)d(done)g(without)g(taking)g(in)m(to)g(accoun)m(t)j(prop)s(er)c
-(motions,)i(whic)m(h)0 39 y(are)d(ob)m(viously)e(unkno)m(wn)g(for)h
-(the)g(detected)i(ob)5 b(jects.)41 b(In)30 b(b)s(oth)g(cases,)h(ep)s(o)
-s(c)m(h)f(2000.0)j(is)d(assumed.)0 199 y(Here)h(is)e(a)i(list)e(of)i
-(catalog)h(parameters)e(curren)m(tly)g(supp)s(orting)e(angular)h(co)s
-(ordinates:)41 b Ft(TBW)0 486 y(9.2.2)105 b(Use)36 b(of)f(the)f(FITS)h
-(k)m(eyw)m(ords)g(for)g(astrometry)0 705 y(TBW)0 996
-y Fp(9.3)112 b(Cross-iden)m(ti\014cation)36 b(within)g(SExtractor)0
-1215 y Fv(SExtractor)i(allo)m(ws)e(one)h(to)h(p)s(erform)e(on-line)f
-(cross-iden)m(ti\014cation)h(of)h(eac)m(h)i(detection)e(with)f(an)h
-Fs(ASCII)0 1328 y Fv(list.)50 b(Although)33 b(the)h(cross-iden)m
-(ti\014cation)f(algorithm)g(is)g(not)h(v)m(ery)g(sophisticated)f(|)h
-(it)f(w)m(orks)h(in)f(pixel-)0 1441 y(co)s(ordinates)22
-b(only)f(|,)i(it)f(is)f(particularly)e(con)m(v)m(enien)m(t)k(for)f
-(assessing)f(SExtractor)h(p)s(erformances,)h(on)f(image)0
-1554 y(sim)m(ulations)28 b(from)h(instance.)41 b(Con\014guration)28
-b(parameters)j(related)e(to)i(cross-iden)m(ti\014cation)e(are)i
-(pre\014xed)0 1667 y(with)e Fs(ASSOC)p Fv(.)0 1954 y
-Ft(9.3.1)105 b(The)35 b Fs(ASSOC)e Ft(list)0 2173 y Fv(The)40
-b Fs(ASSOC)e Fv(pro)s(cess)i(is)f(initiated)f(b)m(y)i(requesting)f(in)g
-(the)h(parameter)h(\014le)e(at)i(least)f(one)g(of)h(the)f
-Fs(ASSOC)0 2286 y Fv(catalog)32 b(parameters:)40 b Fs(VECTOR)p
-1112 2286 29 4 v 33 w(ASSOC)29 b Fv(and)g Fs(NUMBER)p
-1878 2286 V 32 w(ASSOC)p Fv(.)g(Then)g(SExtractor)h(lo)s(oks)g(for)f
-(an)h Fs(ASCII)e Fv(\014le)0 2399 y(\(let's)g(call)g(it)f(the)i
-Fs(ASSOC)d Fv(list\))h(whose)h(\014le)f(name)i(has)e(to)i(b)s(e)f(sp)s
-(eci\014ed)e(b)m(y)i(the)g Fs(ASSOC)p 3013 2399 V 33
-w(NAME)f Fv(con\014guration)0 2512 y(k)m(eyw)m(ord.)50
-b(The)33 b Fs(ASSOC)f Fv(list)f(m)m(ust)j(con)m(tain)f(columns)f(of)i
-(n)m(um)m(b)s(ers)d(separated)j(b)m(y)f(spaces)h(or)f(tabs.)50
-b(Eac)m(h)0 2624 y(line)22 b(describ)s(es)g(a)j(source)f(that)g(will)e
-(en)m(ter)i(the)g(cross-iden)m(ti\014cation)g(pro)s(cess.)38
-b(Lines)22 b(with)h(zero)i(c)m(haracters,)0 2737 y(or)30
-b(b)s(eginning)d(with)i(\\)p Fs(#)p Fv(")h(\(for)g(commen)m(ts\))h(are)
-f(ignored.)40 b(This)28 b(means)i(y)m(ou)g(ma)m(y)h(use)e(an)m(y)h
-Fs(ASCII)f Fv(catalog)0 2850 y(generated)i(b)m(y)g(a)f(previous)f
-(SExtractor)i(run)e(as)i(an)f Fs(ASSOC)f Fv(list.)0 3010
-y(T)-8 b(o)24 b(p)s(erform)e(the)i(cross-iden)m(ti\014cation,)g
-(SExtractor)g(needs)f(to)h(kno)m(w)f(what)h(are)f(the)h(columns)e(that)
-i(con)m(tain)0 3123 y(the)36 b Fk(x)f Fv(and)g Fk(y)k
-Fv(co)s(ordinates)968 3090 y Fo(16)1078 3123 y Fv(in)34
-b(the)i Fs(ASSOC)e Fv(list.)55 b(These)35 b(shall)f(b)s(e)h(sp)s
-(eci\014ed)f(using)g(the)i Fs(ASSOC)p 3466 3123 V 33
-w(PARAMS)0 3236 y Fv(con\014guration)h(parameter.)64
-b(The)37 b(syn)m(tax)i(is:)55 b(\\)p Fs(ASSOC)p 1977
-3236 V 33 w(PARAMS)36 b Fk(c)2367 3250 y Fi(x)2412 3236
-y Fv(,)p Fk(c)2476 3250 y Fi(y)2518 3236 y Fv([,)p Fk(c)2607
-3250 y Fi(Z)2664 3236 y Fv(]",)41 b(where)c Fk(c)3109
-3250 y Fi(x)3191 3236 y Fv(and)g Fk(c)3414 3250 y Fi(y)3494
-3236 y Fv(are)h(the)0 3349 y(p)s(ositions)32 b(of)i(the)g(columns)e
-(con)m(taining)i(the)g Fk(x)f Fv(and)h Fk(y)i Fv(co)s(ordinates)e
-(\(the)g(\014rst)f(column)g(has)h(p)s(osition)d(1\).)0
-3462 y Fk(c)39 3476 y Fi(Z)131 3462 y Fv(\(optional\))k(sp)s(eci\014es)
-f(an)i(extra)g(column)e(con)m(taining)h(some)g(\\)p Fk(Z)7
-b Fv(")36 b(parameter)g(that)g(ma)m(y)g(b)s(e)e(used)h(for)0
-3575 y(con)m(trolling)28 b(or)h(w)m(eigh)m(ting)g(the)g
-Fs(ASSOC)f Fv(pro)s(cess.)40 b Fk(Z)35 b Fv(will)27 b(t)m(ypically)h(b)
-s(e)g(a)i(\015ux)e(estimate.)41 b Fk(c)3195 3589 y Fi(Z)3281
-3575 y Fv(is)28 b(required)f(if)0 3688 y Fs(ASSOC)p 246
-3688 V 33 w(TYPE)i Fv(is)h Fs(MIN)p Fv(,)f Fs(MAX)p Fv(,)h
-Fs(MEAN)f Fv(or)i Fs(MAG)p 1466 3688 V 33 w(MEAN)e Fv(\(see)j(b)s(elo)m
-(w\).)0 3975 y Ft(9.3.2)105 b(Con)m(trolling)36 b(the)e
-Fs(ASSOC)g Ft(pro)s(cess)0 4194 y Fv(Tw)m(o)24 b(con\014guration)f
-(parameters)h(con)m(trol)g(the)f Fs(ASSOC)g Fv(pro)s(cess.)38
-b(The)23 b(\014rst)g(one,)i Fs(ASSOC)p 3060 4194 V 33
-w(RADIUS)p Fv(,)d(accepts)j(a)0 4307 y(decimal)e(n)m(um)m(b)s(er)g
-(whic)m(h)f(represen)m(ts)i(the)h(maxim)m(um)e(distance)g(\(in)g
-(pixels\))g(one)h(should)e(ha)m(v)m(e)k(b)s(et)m(w)m(een)e(the)0
-4420 y(barycen)m(ter)32 b(of)f(the)h(curren)m(t)f(SExtractor)h
-(detection)f(and)g(an)g Fs(ASSOC)p Fv(-list)e(mem)m(b)s(er)i(to)h
-(consider)e(a)h(matc)m(h.)0 4533 y(This)24 b(n)m(um)m(b)s(er)g(m)m(ust)
-i(of)g(course)g(accoun)m(t)h(for)e(p)s(ositional)f(uncertain)m(ties)h
-(in)f(b)s(oth)h(catalogs.)41 b(In)25 b(most)h(cases,)0
-4646 y(a)d(v)-5 b(alue)21 b(of)i(a)g(few)f(pixels)e(will)g(do)i(just)g
-(\014ne.)37 b(The)22 b(second)g(con\014guration)g(parameter,)j
-Fs(ASSOC)p 3226 4646 V 33 w(TYPE)p Fv(,)c(accepts)0 4759
-y(a)31 b(k)m(eyw)m(ord)g(as)f(argumen)m(t)h(and)f(selects)h(the)f(kind)
-f(of)h(iden)m(ti\014cation)f(pro)s(cedure)g(one)i(w)m(an)m(ts)g(to)g
-(op)s(erate:)136 4994 y Fq(\017)46 b Fs(FIRST)p Fv(:)36
-b(this)g(is)g(the)i(simplest)d(w)m(a)m(y)j(of)g(p)s(erforming)d(a)i
-(cross-iden)m(ti\014cation.)60 b(It)38 b(do)s(es)e(not)i(require)227
-5106 y(the)31 b Fk(c)423 5120 y Fi(Z)511 5106 y Fv(column)f(in)g
-Fs(ASSOC)p 1183 5106 V 33 w(PARAMS)p Fv(.)f(The)i(\014rst)f
-(geometrical)h(matc)m(h)h(encoun)m(tered)g(while)d(scanning)p
-0 5168 1512 4 v 73 5222 a Fn(16)138 5253 y Fm(The)d Fc(x)g
-Fm(and)g Fc(y)i Fm(co)r(ordinates)f(m)n(ust)e(comply)g(with)h(the)g
-(FITS)g(\(and)f(SExtractor\))h(con)n(v)n(en)n(tion:)35
-b(b)n(y)25 b(de\014nition,)h(the)g(cen)n(ter)0 5345 y(of)g(the)g
-(\014rst)f(pixel)h(in)f(the)h(image)g(arra)n(y)f(has)h(pixel-co)r
-(ordinates)h(\(1.0,1.0\).)1844 5753 y Fv(32)p eop
-%%Page: 33 33
-33 32 bop 227 -74 a Fv(the)29 b Fs(ASSOC)e Fv(list)h(is)f(retained)h
-(as)h(the)g(actual)g(matc)m(h.)41 b(This)27 b(can)i(used)f(for)g
-(catalogs)j(with)c(lo)m(w)h(spatial)227 39 y(densit)m(y)-8
-b(.)136 227 y Fq(\017)46 b Fs(NEAREST)p Fv(:)d(this)h(option)g(do)s(es)
-g(not)h(require)e(the)i Fk(c)2045 241 y Fi(Z)2146 227
-y Fv(column)f(in)f Fs(ASSOC)p 2845 227 29 4 v 33 w(PARAMS)p
-Fv(.)g(The)h(matc)m(h)h(is)227 340 y(p)s(erformed)33
-b(with)f(the)i Fs(ASSOC)p Fv(-list)e(mem)m(b)s(er)h(the)h(closest)h
-(\(in)e(p)s(osition\))f(to)j(the)f(curren)m(t)g(detection,)227
-452 y(pro)m(vided)29 b(that)i(it)f(lies)f(within)f(the)j
-Fs(ASSOC)p 1732 452 V 33 w(RADIUS)p Fv(.)136 640 y Fq(\017)46
-b Fs(SUM)p Fv(:)24 b(all)f(parameters)h(issued)f(from)g
-Fs(ASSOC)p Fv(-list)f(mem)m(b)s(ers)h(whic)m(h)g(geometrically)h(matc)m
-(h)h(the)g(curren)m(t)227 753 y(detection)31 b(are)g(summed.)39
-b Fk(c)1206 767 y Fi(Z)1294 753 y Fv(is)29 b(not)i(required.)136
-941 y Fq(\017)46 b Fs(MAG)p 377 941 V 34 w(SUM)p Fv(:)27
-b(all)g(parameters)h Fk(c)1232 955 y Fi(i)1288 941 y
-Fv(issued)e(from)i Fs(ASSOC)p Fv(-list)d(mem)m(b)s(ers)i(whic)m(h)g
-(geometrically)h(matc)m(h)g(the)227 1054 y(curren)m(t)i(detection)h
-(are)f(com)m(bined)g(using)e(the)i(follo)m(wing)f(la)m(w:)40
-b Fq(\000)p Fv(2)p Fk(:)p Fv(5)15 b(log)s(\()2826 989
-y Fg(P)2914 1076 y Fi(i)2957 1054 y Fv(10)3047 1021 y
-Fj(\000)p Fo(0)p Fi(:)p Fo(4)p Fi(c)3223 1031 y Fb(i)3254
-1054 y Fv(.)41 b(This)28 b(option)227 1166 y(allo)m(ws)i(one)h(to)g
-(sum)e(\015ux)g(con)m(tributions)g(from)h(magnitude)g(data.)41
-b Fk(c)2647 1180 y Fi(Z)2734 1166 y Fv(is)30 b(not)g(required.)136
-1354 y Fq(\017)46 b Fs(MIN)p Fv(:)26 b(among)g(all)f(geometrical)i
-(matc)m(hes,)i(retains)c(the)h Fs(ASSOC)p Fv(-list)e(mem)m(b)s(er)h
-(whic)m(h)g(has)h(the)g(smallest)227 1467 y Fk(Z)37 b
-Fv(parameter.)136 1655 y Fq(\017)46 b Fs(MAX)p Fv(:)30
-b(among)i(all)d(geometrical)j(matc)m(hes,)g(retains)f(the)g
-Fs(ASSOC)p Fv(-list)d(mem)m(b)s(er)i(whic)m(h)g(has)g(the)h(largest)227
-1767 y Fk(Z)37 b Fv(parameter.)136 1955 y Fq(\017)46
-b Fs(MEAN)p Fv(:)31 b(all)f(parameters)i(issued)e(from)h
-Fs(ASSOC)p Fv(-list)e(mem)m(b)s(ers)i(whic)m(h)f(geometrically)i(matc)m
-(h)g(the)g(cur-)227 2068 y(ren)m(t)f(detection)g(are)g(w)m(eigh)m
-(ted-a)m(v)m(eraged,)i(using)c(the)i Fk(Z)36 b Fv(parameter)31
-b(as)g(the)g(w)m(eigh)m(t.)136 2256 y Fq(\017)46 b Fs(MAG)p
-377 2256 V 34 w(MEAN)p Fv(:)31 b(all)h(parameters)h(issued)e(from)h
-Fs(ASSOC)p Fv(-list)e(mem)m(b)s(ers)i(whic)m(h)f(geometrically)i(matc)m
-(h)g(the)227 2369 y(curren)m(t)26 b(detection)g(are)f(w)m(eigh)m(ted-a)
-m(v)m(eraged,)30 b(using)24 b(10)2174 2336 y Fj(\000)p
-Fo(0)p Fi(:)p Fo(4)p Fi(Z)2402 2369 y Fv(as)i(the)f(w)m(eigh)m(t.)40
-b(This)24 b(option)h(is)f(useful)227 2481 y(for)30 b(w)m(eigh)m(ting)h
-(catalog)h(sources)e(with)f(magnitudes.)0 2769 y Ft(9.3.3)105
-b(Output)34 b(from)h Fs(ASSOC)0 2988 y Fv(No)m(w)e(that)f(w)m(e)h(ha)m
-(v)m(e)g(describ)s(ed)d(the)i(cross-iden)m(ti\014cation)f(pro)s(cess,)h
-(let's)g(see)h(ho)m(w)f(informations)e(coming)0 3101
-y(from)g(the)g(matc)m(hing)h(with)e(the)i Fs(ASSOC)e
-Fv(list)g(are)h(propagated)h(to)g(the)g(output)f(SExtractor)h(catalog.)
-0 3261 y(The)j(output)g(of)h Fs(ASSOC)e Fv(data)j(in)d(SExtractor)i
-(catalog)h(is)e(done)h(through)f(the)g Fs(VECTOR)p 3101
-3261 V 33 w(ASSOC\(\))f Fv(catalog)0 3374 y(parameter.)71
-b Fs(VECTOR)p 794 3374 V 33 w(ASSOC\(\))38 b Fv(is)i(a)h(v)m(ector,)j
-(eac)m(h)e(elemen)m(t)f(of)f(whic)m(h)f(refers)h(to)h(a)g(column)e
-(from)h(the)0 3487 y(input)28 b Fs(ASSOC)g Fv(list.)39
-b Fs(VECTOR)p 991 3487 V 33 w(ASSOC\(\))28 b Fv(con)m(tains)i(either)f
-Fs(ASSOC)p Fv(-list)e(mem)m(b)s(er)j(data)g(from)f(the)h(b)s(est)g
-(matc)m(h)0 3600 y(\(if)38 b Fs(ASSOC)p 373 3600 V 33
-w(TYPE)g Fv(is)g Fs(FIRST)p Fv(,)f Fs(NEAREST)p Fv(,)g
-Fs(MIN)h Fv(or)h Fs(MAX)p Fv(\),)f(or)h(a)g(com)m(bination)f(of)h
-Fs(ASSOC)p Fv(-list)e(mem)m(b)s(er)h(data)0 3712 y(\(if)f
-Fs(ASSOC)p 372 3712 V 33 w(TYPE)g Fv(is)g Fs(MEAN)p Fv(,)g
-Fs(MAG)p 1131 3712 V 33 w(MEAN)p Fv(,)g Fs(SUM)g Fv(or)h
-Fs(MAG)p 1862 3712 V 33 w(SUM)p Fv(\).)g(If)f(no)h(matc)m(h)h(has)e(b)s
-(een)h(found,)g(it)g(just)f(con-)0 3825 y(tains)c(zeros.)50
-b(The)33 b Fs(NUMBER)p 982 3825 V 33 w(ASSOC)e Fv(con)m(tains)j(the)g
-(n)m(um)m(b)s(er)e(of)h Fs(ASSOC)p Fv(-list)e(mem)m(b)s(ers)i(that)g
-(geometrically)0 3938 y(matc)m(h)42 b(the)e(curren)m(t)h(SExtractor)g
-(detection,)j(and)c(ob)m(viously)-8 b(,)43 b(if)d(di\013eren)m(t)g
-(from)g(zero,)k(indicates)c(that)0 4051 y Fs(VECTOR)p
-294 4051 V 33 w(ASSOC\(\))28 b Fv(has)i(a)h(meaningful)d(con)m(ten)m
-(t.)0 4211 y(The)g Fs(ASSOC)p 431 4211 V 33 w(DATA)f
-Fv(con\014guration)h(parameter)g(is)g(used)f(to)i(tell)f(SExtractor)g
-(to)h(whic)m(h)e(column)g(refers)h(eac)m(h)0 4324 y(elemen)m(t)42
-b(of)g Fs(VECTOR)p 756 4324 V 33 w(ASSOC\(\))p Fv(.)72
-b(The)41 b(syn)m(tax)i(of)e Fs(ASSOC)p 2077 4324 V 33
-w(DATA)g Fv(is)f(similar)f(to)k(that)f(of)g Fs(ASSOC)p
-3441 4324 V 33 w(PARAMS)p Fv(:)0 4437 y(\\)p Fs(ASSOC)p
-291 4437 V 33 w(DATA)33 b Fk(c)582 4451 y Fo(1)622 4437
-y Fv(,)p Fk(c)686 4451 y Fo(2)726 4437 y Fv(,)p Fk(c)790
-4451 y Fo(3)830 4437 y Fv(,...")54 b(where)33 b(the)i
-Fk(c)1495 4451 y Fi(i)1557 4437 y Fv(are)g(the)f(column)f(p)s(ositions)
-f(in)h(the)i Fs(ASSOC)d Fv(list.)51 b(The)34 b(sp)s(ecial)0
-4550 y(case)27 b(\\)p Fs(ASSOC)p 479 4550 V 33 w(DATA)e
-Fv(0")i(tells)e(SExtractor)h(to)g(propagate)h(all)e(columns)g(from)g
-(the)h Fs(ASSOC)e Fv(\014le)h(to)i(the)f(output)0 4663
-y(catalog.)0 4823 y(There)k(are)i(situations)d(where)i(it)f(migh)m(t)h
-(b)s(e)f(desirable)f(to)j(k)m(eep)f(in)f(the)h(output)f(SExtractor)i
-(catalog)g(only)0 4936 y(those)g(detections)g(that)g(w)m(ere)f(matc)m
-(hed)i(with)d(some)h Fs(ASSOC)p Fv(-list)e(mem)m(b)s(er.)43
-b(Suc)m(h)31 b(a)h(feature)f(is)g(con)m(trolled)0 5049
-y(b)m(y)45 b(the)g Fs(ASSOCSELEC)p 798 5049 V 31 w(TYPE)f
-Fv(con\014guration)g(parameter,)49 b(whic)m(h)43 b(accepts)j(one)f(of)g
-(the)g(three)g(follo)m(wing)0 5162 y(k)m(eyw)m(ords:)136
-5397 y Fq(\017)h Fs(ALL)p Fv(:)30 b(k)m(eep)h(all)e(SExtractor)i
-(detections,)g(regardless)f(of)h(matc)m(hing.)40 b(This)29
-b(is)g(the)i(default.)1844 5753 y(33)p eop
-%%Page: 34 34
-34 33 bop 136 -74 a Fq(\017)46 b Fs(MATCHED)p Fv(:)29
-b(k)m(eep)i(only)f(SExtractor)h(detections)g(that)g(w)m(ere)g(matc)m
-(hed)g(with)e(at)i(least)g(one)g Fs(ASSOC)p Fv(-list)227
-39 y(mem)m(b)s(er.)136 227 y Fq(\017)46 b Fs(-MATCHED)p
-Fv(:)39 b(k)m(eep)i(only)e(SExtractor)i(detections)g(that)g(w)m(ere)g
-(not)g(matc)m(hed)g(with)e(an)m(y)i Fs(ASSOC)p Fv(-list)227
-340 y(mem)m(b)s(er.)0 627 y Ft(Ac)m(kno)m(wledgmen)m(ts)0
-961 y Fu(References)45 1201 y Fv([1])47 b(Beard)31 b(S.M.,)f
-(McGillivra)m(y)f(H.T.,)i(Thanisc)m(h)e(P)-8 b(.F.,)32
-b(1990,)g Fr(MNRAS)e Ft(247)p Fv(,)h(311)45 1388 y([2])47
-b(Bertin)30 b(E.,)g(E.y)-8 b(.E)31 b(1.1,)h(User's)e(man)m(ual,)g
-(1997,)j(Leiden)45 1576 y([3])47 b(Bertin)30 b(E.,)g(W)-8
-b(eigh)m(tW)g(atc)m(her)34 b(1.2,)e(User's)e(man)m(ual,)g(1997,)j(ESO)
-45 1764 y([4])47 b(Bijaoui)29 b(A.,)i(Dan)m(tel)g(M.,)h(1991,)g
-Fr(A&A)d Ft(6)p Fv(,)i(51)45 1951 y([5])47 b(Bijaoui)42
-b(A.,)k(Slezak)c(E.,)k(V)-8 b(andame)44 b(B.,)i(1998,)i(in)41
-b Fr(Astr)-5 b(ophysics)46 b(and)f(A)n(lgorithms:)66
-b(a)44 b(DIMA)n(CS)187 2064 y(Workshop)34 b(on)f(Massive)g(Astr)-5
-b(onomic)g(al)35 b(Data)e(Sets)45 2252 y Fv([6])47 b(Dalcan)m(ton)31
-b(J.J.,)g(Sp)s(ergel)e(D.N.,)j(Gunn)d(J.E.,)h(Sc)m(hmidt)f(M.,)j(Sc)m
-(hneider)c(D.P)-8 b(.,)32 b(1997,)h Fr(AJ)p Fv(,)d Ft(114)p
-Fv(,)h(635)45 2440 y([7])47 b(Das)31 b(P)-8 b(.K.,)31
-b(1991,)h Fr(Optic)-5 b(al)34 b(Signal)f(Pr)-5 b(o)g(c)g(essing)p
-Fv(,)32 b(\(Springer-V)-8 b(erlag\))45 2627 y([8])47
-b(Greisen)30 b(E.W.,)h(Calabretta)g(M.,)g(1995,)h(A.D.A.S.S.)g(4,)f
-(233)g(\(\))45 2815 y([9])47 b(Infan)m(te)30 b(L.,)h(1987,)h
-Fr(A&A)e Ft(183)p Fv(,)h(177)0 3002 y([10])47 b(Irwin)28
-b(M.J.,)j(1985,)i Fr(MNRAS)c Ft(214)p Fv(,)i(575)0 3190
-y([11])47 b(Jarvis)29 b(J.J.,)i(T)m(yson)f(J.A.,)h(1981,)h
-Fr(AJ)p Fv(,)e Ft(86)p Fv(,)h(476)0 3378 y([12])47 b(Kaiser)29
-b(N.,)i(Squires)e(G.,)i(Broadh)m(urst)f(T.,)g(1995,)j
-Fr(ApJ)p Fv(,)d Ft(449)p Fv(,)i(460)0 3565 y([13])47
-b(Kendall)32 b(M.,)k(Stuart)d(K.,)i(1977,)i Fr(The)g(A)-5
-b(dvanc)g(e)g(d)37 b(The)-5 b(ory)37 b(of)g(Statistics)p
-Fv(,)f Ft(V)-9 b(ol.)40 b(1)p Fv(,)35 b(\(Charles)e(Gri\016n)187
-3678 y(&)d(Co.,)h(London\))0 3866 y([14])47 b(Kron)29
-b(R.G.,)j(1980,)g Fr(ApJS)e Ft(43)p Fv(,)h(305)0 4053
-y([15])47 b(Lutz)30 b(R.K.,)h(1979,)h Fr(The)h(Computer)h(Journal)e
-Ft(23)p Fv(,)f(262)0 4241 y([16])47 b(Mo\013at)32 b(A.F.J.,)f(1969,)0
-4429 y([17])47 b(W)-8 b(ells)30 b(D.C.,)h(Greisen)f(E.W.,)h(Harten)g
-(R.H.,)g(1981,)h Fr(A&AS)e Ft(44)p Fv(,)h(363)0 4762
-y Fu(A)134 b(App)t(endices)0 5016 y Fp(A.1)112 b(F)-12
-b(A)m(Q)37 b(\(F)-9 b(requen)m(tly)37 b(Ask)m(ed)g(Questions\))0
-5235 y Fv(F)-8 b(airly)35 b(often,)i(I)f(am)f(ask)m(ed)h(b)m(y)g(users)
-f(ab)s(out)g(the)h(reason)f(for)h(some)g(limitations)d(or)i(c)m(hoices)
-i(in)d(the)h(w)m(a)m(y)0 5348 y(things)29 b(are)i(done)f(in)f
-(SExtractor.)41 b(In)30 b(this)f(section,)i(I)f(try)h(to)g(justify)d
-(them.)1844 5753 y(34)p eop
-%%Page: 35 35
-35 34 bop 0 -74 a Fv(Q:)44 b Ft(SExtractor)51 b(supp)s(orts)g(W)m(CS.)g
-(So)g(wh)m(y)g(isn't)g(it)f(p)s(ossible)i(to)f(ha)m(v)m(e)g(the)f
-Fs(ASSOC)f Ft(cross-)0 39 y(iden)m(ti\014cation)35 b(w)m(orking)h(in)e
-Fk(\013;)15 b(\016)40 b Ft(\(or)35 b(an)m(y)g(other)g(w)m(orld-co)s
-(ordinates\)?)0 199 y Fv(A:)40 b(The)f Fs(ASSOC)f Fv(list)g(whic)m(h)g
-(is)g(used)h(for)g(cross-iden)m(ti\014cation)f(can)i(b)s(e)f(v)m(ery)h
-(long)f(\(100,000)j(ob)5 b(jects)40 b(or)0 312 y(more\).)54
-b(P)m(erforming)34 b(an)g(exhaustiv)m(e)h(cross-id)f(in)f(real-time)i
-(can)g(therefore)g(b)s(e)f(extremely)h(slo)m(w,)g(unless)0
-425 y(the)26 b Fs(ASSOC)e Fv(co)s(ordinates)i(are)g(sorted)g(in)e(some)
-i(w)m(a)m(y)h(b)s(eforehand.)38 b(In)25 b(pixel)f(co)s(ordinates,)j
-(suc)m(h)e(a)h(sorting)f(is)0 538 y(simple)k(and)i(v)m(ery)g(e\016cien)
-m(t,)h(as)f(SExtractor)h(w)m(orks)f(line-b)m(y-line;)e(but)h(it)h(w)m
-(ould)f(b)s(e)g(m)m(uc)m(h)h(more)g(di\016cult)0 651
-y(in)24 b(the)h(general)g(W)m(CS)g(con)m(text.)41 b(This)23
-b(is)h(wh)m(y)h(this)f(hasn't)h(b)s(een)f(implemen)m(ted,)h
-(considering)e(it)i(as)g(b)s(ey)m(ond)0 764 y(the)31
-b(scop)s(e)f(of)h(SExtractor.)0 924 y(Q:)39 b Ft(Wh)m(y)44
-b(isn't)h(the)f(detection)g(threshold)h(expressed)g(in)g(units)f(of)h
-(the)f(bac)m(kground)i(noise)0 1037 y(standard)35 b(deviation)g(in)g
-(the)f Fs(FILTER)p Fa(e)-5 b(d)33 b Ft(image)h(?)0 1197
-y Fv(A:)f(There)e(are)i(t)m(w)m(o)h(reasons)e(for)g(this.)45
-b(First,)33 b(it)e(mak)m(es)j(the)e(threshold)f(indep)s(enden)m(t)f(of)
-i(the)h(c)m(hoice)g(of)f(a)0 1310 y Fs(FILTER)p Fv(,)h(whic)m(h)g(is)h
-(a)g(go)s(o)s(d)h(thing.)51 b(Second,)36 b(ha)m(ving)e
-Fk(\033)j Fv(measured)d(on)g(the)h Fs(FILTER)p Fv(ed)e(image)h(ma)m(y)h
-(ha)m(v)m(e)0 1423 y(giv)m(en)d(un-informed)d(users)j(the)g(wrong)f
-(impression)f(that)i(increasing)f(\014ltering)f(systematically)i(impro)
-m(v)m(es)0 1536 y(the)f(detectabilit)m(y)f(of)g(an)m(y)h(source,)g
-(whereas)f(it)g(dep)s(ends)e(on)j(scale.)1844 5753 y(35)p
-eop
-%%Trailer
-end
-userdict /end-hook known{end-hook}if
-%%EOF
diff --git a/external/sextractor/m4macros/eso.m4 b/external/sextractor/m4macros/eso.m4
deleted file mode 100644
index 81f84b1..0000000
--- a/external/sextractor/m4macros/eso.m4
+++ /dev/null
@@ -1,902 +0,0 @@
-# ESO_PROG_CC_FLAG(FLAG, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#-----------------------------------------------------------------
-AC_DEFUN([ESO_PROG_CC_FLAG],
-[
- AC_REQUIRE([AC_PROG_CC])
-
- flag=`echo $1 | sed 'y%.=/+-%___p_%'`
- AC_CACHE_CHECK([whether $CC supports -$1],
- [eso_cv_prog_cc_$flag],
- [
- eval "eso_cv_prog_cc_$flag=no"
- AC_LANG_PUSH(C)
-
- echo 'int main() { return 0; }' >conftest.$ac_ext
-
- try_compile="`$CC -$1 -c conftest.$ac_ext 2>&1`"
- if test -z "$try_compile"; then
- try_link="`$CC -$1 -o conftest$ac_exeext \
- conftest.$ac_ext 2>&1`"
- if test -z "$try_link"; then
- eval "eso_cv_prog_cc_$flag=yes"
- fi
- fi
- rm -f conftest*
-
- AC_LANG_POP(C)
- ])
-
- if eval "test \"`echo '$eso_cv_prog_cc_'$flag`\" = yes"; then
- :
- $2
- else
- :
- $3
- fi
-])
-
-
-# ESO_ENABLE_DEBUG(debug=no)
-#---------------------------
-AC_DEFUN([ESO_ENABLE_DEBUG],
-[
- AC_REQUIRE([AC_PROG_CC])
-
- AC_ARG_ENABLE(debug,
- AC_HELP_STRING([--enable-debug],
- [creates debugging code [[default=$1]]]),
- eso_enable_debug=$enableval, eso_enable_debug=$1)
-
- AC_CACHE_CHECK([whether debugging code should be created],
- eso_cv_enable_debug,
- eso_cv_enable_debug=$eso_enable_debug)
-
- if test x"$eso_cv_enable_debug" = xyes; then
-
- eso_clean_CFLAGS="`echo $CFLAGS | sed -e 's/-O[[1-9]]//g' \
- -e 's/-O//g'`"
-
- if test x"$ac_cv_prog_cc_g" = xyes; then
- eso_clean_CFLAGS="`echo $eso_clean_CFLAGS | sed -e 's/-g//g'`"
- CFLAGS="-g"
- else
- CFLAGS=""
- fi
-
- ESO_PROG_CC_FLAG([Wall], [CFLAGS="$CFLAGS -Wall"])
- ESO_PROG_CC_FLAG([W], [CFLAGS="$CFLAGS -W"])
-
- CFLAGS="$CFLAGS $eso_clean_CFLAGS"
- ESO_DEBUG_FLAGS="-DESO_ENABLE_DEBUG"
- else
- CFLAGS="`echo $CFLAGS | sed -e 's/-g//g'`"
- ESO_DEBUG_FLAGS="-DNDEBUG"
- fi
-
- AC_SUBST(ESO_DEBUG_FLAGS)
-])
-
-
-# ESO_ENABLE_STRICT(strict=no)
-#-----------------------------
-AC_DEFUN([ESO_ENABLE_STRICT],
-[
- AC_REQUIRE([AC_PROG_CC])
-
- AC_ARG_ENABLE(strict,
- AC_HELP_STRING([--enable-strict],
- [compiles with strict compiler options (may not work!) [[default=$1]]]),
- eso_enable_strict=$enableval, eso_enable_strict=$1)
-
- AC_CACHE_CHECK([whether strict compiler options should be used],
- eso_cv_enable_strict,
- eso_cv_enable_strict=$eso_enable_strict)
-
-
- if test x"$eso_cv_enable_strict" = xyes; then
- ESO_PROG_CC_FLAG([ansi], [CFLAGS="$CFLAGS -ansi"])
- ESO_PROG_CC_FLAG([pedantic], [CFLAGS="$CFLAGS -pedantic"])
- fi
-])
-
-
-# ESO_CHECK_DOCTOOLS
-#-------------------
-AC_DEFUN([ESO_CHECK_DOCTOOLS],
-[
- AC_ARG_VAR([DOXYGEN], [doxygen command])
- AC_PATH_PROG([DOXYGEN], [doxygen])
-
- AC_ARG_VAR([LATEX], [latex command])
- AC_PATH_PROG([LATEX], [latex])
-
-
- if test -z "${DOXYGEN}"; then
- DOXYGEN=":"
- fi
-
- if test -z "${LATEX}"; then
- LATEX=":"
- fi
-
-])
-
-
-# ESO_PROG_AR
-#------------
-# Checks if ar is in the path
-AC_DEFUN([ESO_PROG_AR],
-[
- AC_CHECK_PROG(AR, ar, ar, NONE)
-
- if test x"$AR" = xNONE; then
- AC_MSG_ERROR([Cannot find \'ar\'])
- fi
-
-])
-
-
-# ESO_CHECK_EXTRA_LIBS
-#---------------------
-# Check for non-standard headers and libraries
-AC_DEFUN([ESO_CHECK_EXTRA_LIBS],
-[
-
- AC_ARG_WITH(extra-includes,
- AC_HELP_STRING([--with-extra-includes=DIR],
- [adds non standard include paths]),
- eso_with_extra_includes=$withval, eso_with_extra_includes=NONE)
-
- AC_ARG_WITH(extra-libs,
- AC_HELP_STRING([--with-extra-libs=DIR],
- [adds non standard library paths]),
- eso_with_extra_libs=$withval, eso_with_extra_libs=NONE)
-
- AC_MSG_CHECKING([for extra includes])
- AC_CACHE_VAL([eso_cv_with_extra_includes],
- [
- eso_cv_with_extra_includes=$eso_with_extra_includes
- ])
-
- if test x"$eso_cv_with_extra_includes" != xNONE; then
- eso_save_IFS=$IFS
- IFS=':'
-
- for dir in $eso_cv_with_extra_includes; do
- EXTRA_INCLUDES="$EXTRA_INCLUDES -I$dir"
- done
-
- IFS=$eso_save_IFS
- AC_MSG_RESULT(added)
- else
- AC_MSG_RESULT(no)
- fi
-
-
- AC_MSG_CHECKING([for extra libs])
- AC_CACHE_VAL([eso_cv_with_extra_libs],
- [
- eso_cv_with_extra_libs=$eso_with_extra_libs
- ])
-
- if test x"$eso_cv_with_extra_libs" != xNONE; then
- eso_save_IFS=$IFS
- IFS=':'
-
- for dir in $eso_cv_with_extra_libs; do
- EXTRA_LDFLAGS="$EXTRA_LDFLAGS -L$dir"
- done
-
- IFS=$eso_save_IFS
- AC_MSG_RESULT(added)
- else
- AC_MSG_RESULT(no)
- fi
-
-])
-
-
-# ESO_CHECK_FUNC(FUNCTION, INCLUDES, SYMBOL)
-#-------------------------------------------
-# Checks whether a function is available and declared.
-AC_DEFUN([ESO_CHECK_FUNC],
-[
-
- AC_LANG_PUSH(C)
-
- eso_save_CFLAGS="$CFLAGS"
-
- if test x"$GCC" = xyes; then
- CFLAGS="$CFLAGS -pedantic-errors"
- fi
-
- AC_CHECK_FUNC($1)
- AC_CHECK_DECL($1, [], [], [$2])
-
- CFLAGS="$eso_save_CFLAGS"
-
- AC_LANG_POP(C)
-
- if test x"$ac_cv_have_decl_$1" = xyes &&
- test x"$ac_cv_func_$1" = xyes; then
- AC_DEFINE($3)
- fi
-
-])
-
-
-# ESO_FUNC_VSNPRINTF_C99
-#-----------------------
-# Check whether vsnprintf() has C99 semantics.
-AC_DEFUN([ESO_FUNC_VSNPRINTF_C99],
-[
-
- AH_TEMPLATE([HAVE_VSNPRINTF_C99],
- [Define if you have the C99 `vsnprintf' function.])
-
- AC_CACHE_CHECK([whether vsnprintf has C99 semantics],
- [eso_cv_func_vsnprintf_c99],
- [
- AC_LANG_PUSH(C)
-
- eso_cppflags_save="$CPPFLAGS"
- eso_cflags_save="$CFLAGS"
- eso_ldflags_save="$LDFLAGS"
- eso_libs_save="$LIBS"
-
- if test x$GCC = xyes; then
- CFLAGS="$CFLAGS -pedantic-errors"
- CPPFLAGS="$CPPFLAGS $CFLAGS"
- fi
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <stdarg.h>
-
-int
-doit(char * s, ...)
-{
- char buffer[32];
- va_list args;
- int q, r;
-
- va_start(args, s);
- q = vsnprintf(NULL, 0, s, args);
- r = vsnprintf(buffer, 5, s, args);
- va_end(args);
-
- if (q != 7 || r != 7)
- exit(1);
-
- exit(0);
-}
-
-int
-main(void)
-{
- doit("1234567");
- exit(1);
-}
- ],
- eso_cv_func_vsnprintf_c99=yes,
- eso_cv_func_vsnprintf_c99=no,
- eso_cv_func_vsnprintf_c99=no)
-
- CPPFLAGS="$eso_cppflags_save"
- CFLAGS="$eso_cflags_save"
- LDFLAGS="$eso_ldflags_save"
- LIBS="$eso_libs_save"
-
- AC_LANG_POP(C)
- ])
-
-# Note that the default is to be pessimistic in the case of cross compilation.
-# If you know that the target has a C99 vsnprintf(), you can get around this
-# by setting eso_func_vsnprintf_c99 to yes, as described in the Autoconf
-# manual.
-
- if test x$eso_cv_func_vsnprintf_c99 = xyes; then
- AC_DEFINE(HAVE_VSNPRINTF_C99)
- fi
-
-])
-
-
-# ESO_CHECK_PRINTF_FORMATS
-#-------------------------
-# Checks for printf() format peculiarities.
-AC_DEFUN([ESO_CHECK_PRINTF_FORMATS],
-[
-
- # Check if string format for NULL is `(null)'
-
- AH_TEMPLATE([HAVE_PRINTF_STR_FMT_NULL],
- [Define if printf outputs `(null)' when printing NULL using
- `%s'])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <string.h>
-
-int main()
-{
- char s[128];
-
- sprintf(s, "%s", NULL);
- return strncmp(s, "(null)", 6) ? 1 : 0;
-}
- ],
- eso_have_printf_str_format_null=yes,
- eso_have_printf_str_format_null=no,
- eso_have_printf_str_format_null=no
- )
-
- if test x$eso_have_printf_str_format_null = xyes; then
- AC_DEFINE(HAVE_PRINTF_STR_FMT_NULL)
- fi
-
-
- # Check if pointer format for NULL is `(nil)'
-
- AH_TEMPLATE([HAVE_PRINTF_PTR_FMT_NIL],
- [Define if printf outputs `(nil)' when printing NULL using
- `%p'])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <string.h>
-
-int main()
-{
- char s[128];
-
- sprintf(s, "%p", NULL);
- return strncmp(s, "(nil)", 5) ? 1 : 0;
-}
- ],
- eso_have_printf_ptr_format_nil=yes,
- eso_have_printf_ptr_format_nil=no,
- eso_have_printf_ptr_format_nil=no
- )
-
- if test x$eso_have_printf_ptr_format_nil = xyes; then
- AC_DEFINE(HAVE_PRINTF_PTR_FMT_NIL)
- fi
-
-
- # Check if output for `%p' is the same as `%#x'
-
- AH_TEMPLATE([HAVE_PRINTF_PTR_FMT_ALTERNATE],
- [Define if printf format `%p' produces the same output as
- `%#x' or `%#lx'])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-#include <string.h>
-
-int main()
-{
- char s1[128], s2[128];
-
- sprintf(s1, "%p", s1);
- sprintf(s2, "%#x", s1);
- return strncmp(s1, s2, 3) ? 1 : 0;
-}
- ],
- eso_have_printf_ptr_format_alternate=yes,
- eso_have_printf_ptr_format_alternate=no,
- eso_have_printf_ptr_format_alternate=no
- )
-
- if test x$eso_have_printf_ptr_format_alternate = xyes; then
- AC_DEFINE(HAVE_PRINTF_PTR_FMT_ALTERNATE)
- fi
-
-
- # Check if pointers are treated as signed
-
- AH_TEMPLATE([HAVE_PRINTF_PTR_FMT_SIGNED],
- [Define if printf treats pointers as signed when using a sign
- flag])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-
-int main()
-{
- char s[128];
-
- sprintf(s, "%+p", s);
- return s[0] == '+' ? 0 : 1;
-}
- ],
- eso_have_printf_ptr_format_signed=yes,
- eso_have_printf_ptr_format_signed=no,
- eso_have_printf_ptr_format_signed=no
- )
-
- if test x$eso_have_printf_ptr_format_signed = xyes; then
- AC_DEFINE(HAVE_PRINTF_PTR_FMT_SIGNED)
- fi
-
-
- # Check if default precision for conversion specifier `g' is 1 (as
- # required by ISO C) or 6.
-
- AH_TEMPLATE([HAVE_PRINTF_FLT_FMT_G_STD],
- [Define if printf default precision for format `g' is 1
- (ISO C standard) or 6])
-
- AC_RUN_IFELSE([
-#include <stdio.h>
-
-int main()
-{
- char s1[128], s2[128];
- int n1, n2;
-
- sprintf(s1, "%g%n", 1.123456, &n1);
- sprintf(s2, "%.1g%n", 1.123456, &n2);
- return n1 > n2 ? 1 : 0;
-}
- ],
- eso_have_printf_flt_format_g_std=yes,
- eso_have_printf_flt_format_g_std=no,
- eso_have_printf_flt_format_g_std=no
- )
-
- if test x$eso_have_printf_flt_format_g_std = xyes; then
- AC_DEFINE(HAVE_PRINTF_FLT_FMT_G_STD)
- fi
-
-])
-
-
-# ESO_FUNC_VSNPRINTF
-#-------------------
-# Checks for vsnprintf and snprintf declaration and function.
-AC_DEFUN([ESO_FUNC_VSNPRINTF],
-[
-
- eso_compile_snprintf=no
-
- AH_TEMPLATE([HAVE_VSNPRINTF],
- [Define if you have the `vsnprintf' function])
- ESO_CHECK_FUNC(vsnprintf, [#include <stdio.h>], HAVE_VSNPRINTF)
-
- if test x$ac_cv_func_vsnprintf = xyes &&
- test x$ac_cv_have_decl_vsnprintf = xyes; then
-
- ESO_FUNC_VSNPRINTF_C99
-
- if test x$eso_cv_func_vsnprintf_c99 != xyes; then
- eso_compile_snprintf=yes
- fi
-
- else
- eso_compile_snprintf=yes
- fi
-
- if test x$eso_compile_snprintf = xyes; then
- if test -n "$LIBTOOL"; then
- SNPRINTF=snprintf.lo
- else
- SNPRINTF=snprintf.$ac_objext
- fi
- fi
-
- AC_SUBST(SNPRINTF)
-
- # The symbols defined by the following macro are only needed to setup the
- # vsnprintf() replacement. May be useless if the vsnprintf implementation
- # changes.
- ESO_CHECK_PRINTF_FORMATS
-
- AH_TEMPLATE([HAVE_SNPRINTF],
- [Define if you have the `snprintf' function])
- ESO_CHECK_FUNC(snprintf, [#include <stdio.h>], HAVE_SNPRINTF)
-
-])
-
-
-# ESO_FUNC_VASPRINTF
-#-------------------
-# Checks for vasprintf declaration and function.
-AC_DEFUN([ESO_FUNC_VASPRINTF],
-[
-
- AH_TEMPLATE([HAVE_VASPRINTF],
- [Define if you have the `vasprintf' function])
- ESO_CHECK_FUNC(vasprintf, [#include <stdio.h>], HAVE_VASPRINTF)
-
-])
-
-
-# ESO_FUNC_FPATHCONF
-#-------------------
-# Checks for fpathconf declaration and function.
-AC_DEFUN([ESO_FUNC_FPATHCONF],
-[
-
- AH_TEMPLATE([HAVE_FPATHCONF],
- [Define if you have the `fpathconf' function])
- ESO_CHECK_FUNC(fpathconf, [#include <unistd.h>], HAVE_FPATHCONF)
-
- # If we have fpathconf we should also have pathconf, but who knows.
- AH_TEMPLATE([HAVE_PATHCONF],
- [Define if you have the `pathconf' function])
- ESO_CHECK_FUNC(pathconf, [#include <unistd.h>], HAVE_PATHCONF)
-
-])
-
-
-# ESO_FUNC_SYSCONF
-#-----------------
-# Checks for sysconf declaration and function.
-AC_DEFUN([ESO_FUNC_SYSCONF],
-[
-
- AH_TEMPLATE([HAVE_SYSCONF],
- [Define if you have the `sysconf' function])
- ESO_CHECK_FUNC(sysconf, [#include <unistd.h>], HAVE_SYSCONF)
-
-])
-
-
-# ESO_FUNC_GETOPT
-#----------------
-# Checks for GNU getopt_long declaration and function.
-AC_DEFUN([ESO_FUNC_GETOPT],
-[
-
- AH_TEMPLATE([HAVE_GETOPT_LONG],
- [Define if you have the `getopt_long' function])
-
- ESO_CHECK_FUNC(getopt_long, [#include <getopt.h>], HAVE_GETOPT_LONG)
-
- if test x"$ac_cv_func_getopt_long" = xno ||
- test x"$eso_cv_have_decl_getopt_long" = xno; then
- if test -n "$LIBTOOL"; then
- GETOPT="getopt.lo getopt1.lo"
- else
- GETOPT="getopt.$ac_objext getopt1.$ac_objext"
- fi
- fi
-
- AC_SUBST(GETOPT)
-
-
-])
-
-
-# ESO_FUNC_GETPWUID
-#------------------
-# Checks for getpwuid declaration and function.
-AC_DEFUN([ESO_FUNC_GETPWUID],
-[
-
- AH_TEMPLATE([HAVE_GETPWUID],
- [Define if you have the `getpwuid' function])
-
- ESO_CHECK_FUNC(getpwuid, [#include <pwd.h>], HAVE_GETPWUID)
-
-])
-
-
-# ESO_FUNC_GETUID
-#----------------
-AC_DEFUN([ESO_FUNC_GETUID],
-[
-
- AH_TEMPLATE([HAVE_GETUID],
- [Define if you have the `getuid' function])
-
- ESO_CHECK_FUNC(getuid, [#include <unistd.h>], HAVE_GETUID)
-
-])
-
-
-# ESO_FUNC_LSTAT
-#---------------
-AC_DEFUN([ESO_FUNC_LSTAT],
-[
-
- AH_TEMPLATE([HAVE_LSTAT],
- [Define if you have the `lstat' function])
-
- ESO_CHECK_FUNC(lstat, [#include <sys/stat.h>], HAVE_LSTAT)
-
-])
-
-
-# ESO_FUNC_STRDUP
-#----------------
-AC_DEFUN([ESO_FUNC_STRDUP],
-[
-
- AH_TEMPLATE([HAVE_STRDUP],
- [Define if you have the `strdup' function])
-
- ESO_CHECK_FUNC(strdup, [#include <string.h>], HAVE_STRDUP)
-
- AH_BOTTOM([
-#ifndef HAVE_STRDUP
-# define strdup cx_strdup
-#endif
- ])
-])
-
-
-# ESO_FUNC_STPCPY
-#----------------
-AC_DEFUN([ESO_FUNC_STPCPY],
-[
-
- AH_TEMPLATE([HAVE_STPCPY],
- [Define if you have the `stpcpy' function])
-
- ESO_CHECK_FUNC(stpcpy, [#include <stpcpy.h>], HAVE_STPCPY)
-
-])
-
-
-# ESO_FUNC_SYMLINK
-#-----------------
-AC_DEFUN([ESO_FUNC_SYMLINK],
-[
-
- AH_TEMPLATE([HAVE_SYMLINK],
- [Define if you have the `symlink' function])
-
- ESO_CHECK_FUNC(symlink, [#include <unistd.h>], HAVE_SYMLINK)
-
-])
-
-
-# ESO_FUNC_WORDEXP
-#-----------------
-AC_DEFUN([ESO_FUNC_WORDEXP],
-[
-
- AH_TEMPLATE([HAVE_WORDEXP],
- [Define if you have the `wordexp' function])
-
- ESO_CHECK_FUNC(wordexp, [#include <wordexp.h>], HAVE_WORDEXP)
-
-])
-
-
-# ESO_FUNC_GETTIMEOFDAY
-#----------------------
-AC_DEFUN([ESO_FUNC_GETTIMEOFDAY],
-[
-
- AH_TEMPLATE([HAVE_GETTIMEOFDAY],
- [Define if you have the `gettimeofday' function])
-
- ESO_CHECK_FUNC(gettimeofday,
- [
- #include <unistd.h>
- #include <sys/time.h>
- ],
- HAVE_GETTIMEOFDAY)
-])
-
-
-# ESO_FUNC_VA_COPY(symbol)
-#-------------------------
-# Check for an implementation of va_copy(). The argument which must be
-# given is the preprocessor symbol that is defined to be either va_copy
-# or __va_copy depending on the available function, provided that an
-# implementation of va_copy is available at all.
-AC_DEFUN([ESO_FUNC_VA_COPY],
-[
-
- # Check for all three va_copy possibilities, so we get
- # all results in config.log for bug reports.
-
- # Check for availability of va_copy(). This is ISO C. Available with
- # gcc since version 3.0.
- AC_CACHE_CHECK([for an implementation of va_copy()], eso_cv_have_va_copy,
- [
- AC_RUN_IFELSE([
-#include <stdarg.h>
-
-void f(int i, ...)
-{
- va_list args1, args2;
- va_start (args1, i);
- va_copy (args2, args1);
-
- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
- exit (1);
-
- va_end (args1);
- va_end (args2);
-}
-
-int main() {
- f(0, 42);
- return 0;
-}
- ],
- eso_cv_have_va_copy=yes,
- eso_cv_have_va_copy=no,
- eso_cv_have_va_copy=no)
- ])
-
-
- # Check for availability of __va_copy(). Some compilers provide
- # this. Available with gcc since version 2.8.1.
- AC_CACHE_CHECK([for an implementation of __va_copy()],
- eso_cv_have__va_copy,
- [
- AC_RUN_IFELSE([
-#include <stdarg.h>
-
-void f(int i, ...)
-{
- va_list args1, args2;
-
- va_start (args1, i);
- __va_copy (args2, args1);
-
- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
- exit (1);
-
- va_end (args1);
- va_end (args2);
-}
-
-int main()
-{
- f(0, 42);
- return 0;
-}
- ],
- eso_cv_have__va_copy=yes,
- eso_cv_have__va_copy=no,
- eso_cv_have__va_copy=no)
-
- ])
-
- if test "x$eso_cv_have_va_copy" = "xyes"; then
- eso_func_va_copy=va_copy
- else
- if test "x$eso_cv_have__va_copy" = "xyes"; then
- eso_func_va_copy=__va_copy
- fi
- fi
-
- AH_TEMPLATE([HAVE_VA_COPY],
- [Define if you have an implementation of a `va_copy()' style
- function.])
- AH_TEMPLATE([$1], [A `va_copy()' style function])
-
- if test -n "x$eso_func_va_copy"; then
- AC_DEFINE_UNQUOTED([$1], $eso_func_va_copy)
- AC_DEFINE(HAVE_VA_COPY)
- fi
-
- # Check whether va_lists can be copied by value
- AC_CACHE_CHECK([whether va_lists can be copied by value],
- eso_cv_have_va_value_copy,
- [
- AC_RUN_IFELSE([
-#include <stdarg.h>
-
-void f(int i, ...)
-{
- va_list args1, args2;
- va_start (args1, i);
- args2 = args1;
-
- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42)
- exit (1);
-
- va_end (args1);
- va_end (args2);
-}
-
-int main()
-{
- f(0, 42);
- return 0;
-}
- ],
- eso_cv_have_va_value_copy=yes,
- eso_cv_have_va_val_copy=no,
- eso_cv_have_va_val_copy=no)
- ])
-
- AH_TEMPLATE([HAVE_VA_LIST_COPY_BY_VALUE],
- [Define if `va_lists' can be copied by value])
- if test "x$eso_cv_have_va_value_copy" = "xyes"; then
- AC_DEFINE(HAVE_VA_LIST_COPY_BY_VALUE)
- fi
-
-])
-
-
-# ESO_FUNC_REALLOC_SANITY
-#-------------------------
-# Check whether realloc(NULL,) works.
-AC_DEFUN([ESO_FUNC_REALLOC_SANITY],
-[
- AC_CACHE_CHECK([whether realloc(NULL,) works],
- eso_cv_have_sane_realloc,
- [
- AC_RUN_IFELSE([
-#include <stdlib.h>
-
-int main()
-{
- return realloc (0, sizeof (int)) == 0;
-}
- ],
- eso_cv_have_sane_realloc=yes,
- eso_cv_have_sane_realloc=no,
- eso_cv_have_sane_realloc=no)
- ])
-
- AH_TEMPLATE([HAVE_WORKING_REALLOC],
- [Define if realloc(NULL,) works])
-
- if test x$eso_cv_have_sane_realloc = xyes; then
- AC_DEFINE(HAVE_WORKING_REALLOC)
- fi
-
-])
-
-
-# ESO_FIND_FILE(file, directories, variable)
-#------------------------------------------
-# Search for file in directories. Set variable to the first location
-# where file was found, if file is not found at all variable is set to NO.
-AC_DEFUN([ESO_FIND_FILE],
-[
- $3=no
-
- for i in $2; do
- for j in $1; do
-
- echo "configure: __oline__: $i/$j" >&AC_FD_CC
-
- if test -r "$i/$j"; then
- echo "taking that" >&AC_FD_CC
- $3=$i
- break 2
- fi
- done
- done
-])
-
-
-# ESO_SET_LIBRARY_VERSION([CURRENT], [REVISION], [AGE])
-#------------------------------------------------------
-# Sets the libtool versioning symbols LT_CURRENT, LT_REVISION, LT_AGE.
-AC_DEFUN([ESO_SET_LIBRARY_VERSION],
-[
-
- if test -z "$1"; then
- LT_CURRENT=0
- else
- LT_CURRENT="$1"
- fi
-
- if test -z "$2"; then
- LT_REVISION=0
- else
- LT_REVISION="$2"
- fi
-
- if test -z "$3"; then
- LT_AGE=0
- else
- LT_AGE="$3"
- fi
-
- AC_SUBST(LT_CURRENT)
- AC_SUBST(LT_REVISION)
- AC_SUBST(LT_AGE)
-])
diff --git a/external/sextractor/source/Macrodefs. b/external/sextractor/source/Macrodefs.
deleted file mode 100644
index 3b4ef44..0000000
--- a/external/sextractor/source/Macrodefs.
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-# macro default definitions
-#
-# E.BERTIN 1999
-#
-SEXMACHINE=
-CD = cd
-CP = cp
-RM = rm -f
-
-default:
- @echo
- @echo "Please use: make SEXMACHINE=<machine_type>"
- @echo
- @echo "Where: <machine_type> = aix (for IBMs RS6000 running AIX)"
- @echo " alpha (for DEC-ALPHAs with Digital UNIX)"
- @echo " hpux (for HP/UX systems)"
- @echo " linuxpc (for PCs running LINUX, using gcc)"
- @echo " linuxp2 (for Pentium2 PCs running LINUX, using egcs)"
- @echo " sgi (for SGI platforms)"
- @echo " solaris (for SUN-Solaris machines)"
- @echo " sunos (for SUN-OS platforms)"
- @echo " ultrix (for DEC stations running ULTRIX)"
- @echo
- @echo "If your machine doesn't belong yet to the list above,"
- @echo "please drop me a mail (bertin at iap.fr)"
- @echo
- @echo "(Use make clean to remove products from a previous compilation)"
- @echo
-
diff --git a/external/sextractor/source/Macrodefs.aix b/external/sextractor/source/Macrodefs.aix
deleted file mode 100644
index 5e60d39..0000000
--- a/external/sextractor/source/Macrodefs.aix
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the IBM/RS6000 AIX ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= ibm
-CC = cc # the C compiler
-COPTS = -O -DIBM_AIX # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.alpha b/external/sextractor/source/Macrodefs.alpha
deleted file mode 100644
index b8b6b97..0000000
--- a/external/sextractor/source/Macrodefs.alpha
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the DEC-Alpha ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= alpha
-CC = cc # the C compiler
-COPTS = -O -DDEC_ALPHA # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.debug b/external/sextractor/source/Macrodefs.debug
deleted file mode 100644
index 90cc439..0000000
--- a/external/sextractor/source/Macrodefs.debug
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the SUN/Solaris ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE = linux
-CC = egcs # the C compiler
-COPTS = -g -Wall -DPC_LINUX -DMALLOC_CHECK_=2 # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.gcc b/external/sextractor/source/Macrodefs.gcc
deleted file mode 100644
index f26ea62..0000000
--- a/external/sextractor/source/Macrodefs.gcc
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the gcc ANSI-C Compiler on other systems
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= gcc
-CC = gcc # the C compiler
-COPTS = -O # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.hpux b/external/sextractor/source/Macrodefs.hpux
deleted file mode 100644
index 538df1f..0000000
--- a/external/sextractor/source/Macrodefs.hpux
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the HP/UX ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= hpux
-CC = cc # the C compiler
-COPTS = -Aa +O3 -DHP_UX # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.insure b/external/sextractor/source/Macrodefs.insure
deleted file mode 100644
index 129a24f..0000000
--- a/external/sextractor/source/Macrodefs.insure
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the egcs ANSI-C Compiler on PC-LINUX systems (Pentium-Pro and above)
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= linux
-CC = insure # the C compiler
-COPTS = -DPC_LINUX -g -O3 -m486 -funroll-loops # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.linux b/external/sextractor/source/Macrodefs.linux
deleted file mode 100644
index be6bd43..0000000
--- a/external/sextractor/source/Macrodefs.linux
+++ /dev/null
@@ -1,29 +0,0 @@
-#
-# macro default definitions
-#
-# E.BERTIN 1999
-#
-SEXMACHINE=
-CD = cd
-CP = cp
-RM = rm -f
-
-default:
- @echo
- @echo "Please use: make SEXMACHINE=<machine_type>"
- @echo
- @echo "Where: <machine_type> = alpha (for DEC-ALPHAs with Digital UNIX)"
- @echo " ultrix (for DEC stations running ULTRIX)"
- @echo " hpux (for HP/UX systems)"
- @echo " aix (for IBMs RS6000 running AIX)"
- @echo " linuxpc (for PCs running LINUX, using gcc)"
- @echo " linuxp2 (for Pentium2 PCs running LINUX, using egcs)"
- @echo " solaris (for SUN-Solaris machines)"
- @echo " sunos (for SUN-OS platforms)"
- @echo
- @echo "If your machine doesn't belong yet to the list above,"
- @echo "please drop me a mail (bertin at iap.fr)"
- @echo
- @echo "(Use make clean to remove products from a previous compilation)"
- @echo
-
diff --git a/external/sextractor/source/Macrodefs.linuxp2 b/external/sextractor/source/Macrodefs.linuxp2
deleted file mode 100644
index c7f1e7f..0000000
--- a/external/sextractor/source/Macrodefs.linuxp2
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the egcs ANSI-C Compiler on PC-LINUX systems (Pentium-Pro and above)
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= linuxp2
-CC = egcs # the C compiler
-COPTS = -DPC_LINUX -O3 -mcpu=pentiumpro -march=pentiumpro -funroll-loops # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.linuxpc b/external/sextractor/source/Macrodefs.linuxpc
deleted file mode 100644
index 9580bf1..0000000
--- a/external/sextractor/source/Macrodefs.linuxpc
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the gcc ANSI-C Compiler on PC-LINUX systems
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= linuxpc
-CC = gcc # the C compiler
-COPTS = -DPC_LINUX -O3 -funroll-loops # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.profile b/external/sextractor/source/Macrodefs.profile
deleted file mode 100644
index f0cf773..0000000
--- a/external/sextractor/source/Macrodefs.profile
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the SUN/Solaris ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= solaris
-CC = cc # the C compiler
-COPTS = -p -fast -xO5 -DSUN_SOLARIS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.purify b/external/sextractor/source/Macrodefs.purify
deleted file mode 100644
index 5a91cb5..0000000
--- a/external/sextractor/source/Macrodefs.purify
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for purify on Solaris
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= purify
-CC = purify cc # the C compiler
-COPTS = -fast -xO5 -DSUN_SOLARIS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.sgi b/external/sextractor/source/Macrodefs.sgi
deleted file mode 100644
index 579e8f9..0000000
--- a/external/sextractor/source/Macrodefs.sgi
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the cc compiler on SGI machines
-#
-# E.BERTIN 1999
-#
-SEXMACHINE= sgi
-CC = cc # the C compiler
-COPTS = -O # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.solaris b/external/sextractor/source/Macrodefs.solaris
deleted file mode 100644
index 2f54d4d..0000000
--- a/external/sextractor/source/Macrodefs.solaris
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the SUN/Solaris ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= solaris
-CC = cc # the C compiler
-COPTS = -fast -xO5 -DSUN_SOLARIS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.sunos b/external/sextractor/source/Macrodefs.sunos
deleted file mode 100644
index 14a2824..0000000
--- a/external/sextractor/source/Macrodefs.sunos
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the GCC ANSI-C Compiler with SUN/OS
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= sunos
-CC = gcc # the C compiler
-COPTS = -O -DSUN_OS # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Macrodefs.ultrix b/external/sextractor/source/Macrodefs.ultrix
deleted file mode 100644
index dd447ea..0000000
--- a/external/sextractor/source/Macrodefs.ultrix
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# macro definitions for the DEC-Alpha ANSI-C Compiler
-#
-# E.BERTIN 1997
-#
-SEXMACHINE= ultrix
-CC = cc # the C compiler
-COPTS = -O -DBSWAP # options for the C compiler
-CD = cd
-CP = cp
-RM = rm -f
diff --git a/external/sextractor/source/Makefile.am b/external/sextractor/source/Makefile.am
deleted file mode 100644
index abf7994..0000000
--- a/external/sextractor/source/Makefile.am
+++ /dev/null
@@ -1,150 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-## This file is part of the VIMOS Pipeline
-## Copyright (C) 2001-2004 European Southern Observatory
-
-## This program is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2 of the License, or
-## (at your option) any later version.
-
-## This program is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-
-## You should have received a copy of the GNU General Public License
-## along with this program; if not, write to the Free Software
-## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-
-DISTCLEANFILES = *~
-
-
-if MAINTAINER_MODE
-
-MAINTAINERCLEANFILES = Makefile.in
-
-endif
-
-
-SUBDIRS = wcs
-
-EXTRA_DIST = Macrodefs. Macrodefs.aix Macrodefs.alpha Macrodefs.debug \
- Macrodefs.gcc Macrodefs.hpux Macrodefs.insure Macrodefs.linux \
- Macrodefs.linuxp2 Macrodefs.linuxpc Macrodefs.profile \
- Macrodefs.purify Macrodefs.sgi Macrodefs.solaris Macrodefs.sunos \
- Macrodefs.ultrix Makefile.orig fitsfield.c sexchanges.log
-
-
-bin_PROGRAMS = sex
-
-noinst_HEADERS = assoc.h astrom.h back.h bpro.h check.h clean.h define.h \
- extract.h field.h filter.h fitscat.h fitscat_defs.h fitshead.h \
- fitsutil.h flag.h globals.h growth.h image.h interpolate.h key.h \
- neurro.h param.h photom.h plist.h poly.h prefs.h psf.h retina.h \
- sexhead.h sexhead1.h sexheadsc.h som.h types.h weight.h
-
-sex_SOURCES = analyse.c assoc.c astrom.c back.c bpro.c catout.c check.c \
- clean.c extract.c field.c filter.c fitscat.c fitsconv.c fitshead.c \
- fitskey.c fitsmisc.c fitsread.c fitstab.c fitsutil.c fitswrite.c \
- flag.c graph.c growth.c image.c interpolate.c main.c makeit.c \
- manobjlist.c misc.c neurro.c pc.c photom.c plist.c poly.c prefs.c \
- psf.c readimage.c refine.c retina.c scan.c som.c weight.c
-
-sex_LDFLAGS = -L./wcs
-sex_LDADD = -lwcs_c $(LIBM)
-
-
-STDH = define.h globals.h types.h
-STDO =
-
-COMPILE = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-
-
-analyse.o: $(STDH) $(STDO) analyse.c assoc.h back.h check.h growth.h image.h \
- photom.h plist.h growth.h psf.h
-
-assoc.o: $(STDH) $(STDO) assoc.c assoc.h
-
-astrom.o: $(STDH) $(STDO) astrom.c astrom.h
-
-back.o: $(STDH) $(STDO) back.c back.h field.h
-
-bpro.o: $(STDH) $(STDO) bpro.c bpro.h fitscat.h
-
-catout.o: $(STDH) $(STDO) catout.c param.h sexhead.h sexhead1.h sexheadsc.h
-
-check.o: $(STDH) $(STDO) check.c check.h
-
-clean.o: $(STDH) $(STDO) clean.c clean.h check.h
-
-extract.o: $(STDH) $(STDO) extract.c extract.h plist.h
-
-field.o: $(STDH) $(STDO) field.c field.h interpolate.h
-
-filter.o: $(STDH) $(STDO) filter.c bpro.h filter.h image.h
-
-fitscat.o: $(STDH) $(STDO) fitscat.c fitscat_defs.h fitscat.h
-
-fitsconv.o: $(STDH) $(STDO) fitsconv.c fitscat_defs.h fitscat.h
-
-fitshead.o: $(STDH) $(STDO) fitshead.c fitscat_defs.h fitscat.h
-
-fitskey.o: $(STDH) $(STDO) fitskey.c fitscat_defs.h fitscat.h
-
-fitsmisc.o: $(STDH) $(STDO) fitsmisc.c fitscat_defs.h fitscat.h
-
-fitsread.o: $(STDH) $(STDO) fitsread.c fitscat_defs.h fitscat.h
-
-fitstab.o: $(STDH) $(STDO) fitstab.c fitscat_defs.h fitscat.h
-
-fitsutil.o: $(STDH) $(STDO) fitsutil.c fitscat_defs.h fitscat.h
-
-fitswrite.o: $(STDH) $(STDO) fitswrite.c fitscat_defs.h fitscat.h
-
-flag.o: $(STDH) $(STDO) flag.c flag.h plist.h
-
-graph.o: $(STDH) $(STDO) graph.c
-
-growth.o: $(STDH) $(STDO) growth.c growth.h
-
-image.o: $(STDH) $(STDO) image.c
-
-interpolate.o: $(STDH) $(STDO) interpolate.c interpolate.h
-
-main.o: $(STDH) $(STDO) main.c
-
-makeit.o: $(STDH) $(STDO) makeit.c check.h growth.h interpolate.h psf.h \
- weight.h
-
-manobjlist.o: $(STDH) $(STDO) manobjlist.c plist.h
-
-misc.o: $(STDH) $(STDO) misc.c
-
-neurro.o: $(STDH) $(STDO) neurro.c neurro.h
-
-pc.o: $(STDH) $(STDO) pc.c image.h psf.h
-
-photom.o: $(STDH) $(STDO) photom.c photom.h
-
-plist.o: $(STDH) $(STDO) plist.c plist.h
-
-poly.o: $(STDH) $(STDO) poly.c poly.h
-
-prefs.o: $(STDH) $(STDO) prefs.c prefs.h
-
-psf.o: $(STDH) $(STDO) psf.c image.h psf.h
-
-readimage.o: $(STDH) $(STDO) readimage.c check.h interpolate.h weight.h
-
-refine.o: $(STDH) $(STDO) refine.c extract.h plist.h
-
-retina.o: $(STDH) $(STDO) retina.c image.h retina.h fitscat.h
-
-scan.o: $(STDH) $(STDO) scan.c check.h clean.h extract.h plist.h
-
-som.o: $(STDH) $(STDO) som.c som.h
-
-weight.o: $(STDH) $(STDO) weight.c weight.h field.h
diff --git a/external/sextractor/source/Makefile.in b/external/sextractor/source/Makefile.in
deleted file mode 100644
index c4924c1..0000000
--- a/external/sextractor/source/Makefile.in
+++ /dev/null
@@ -1,755 +0,0 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-
-VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
- esac; \
- test $$am__dry = yes; \
- }
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-bin_PROGRAMS = sex$(EXEEXT)
-subdir = source
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4macros/eso.m4 \
- $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-am__installdirs = "$(DESTDIR)$(bindir)"
-PROGRAMS = $(bin_PROGRAMS)
-am_sex_OBJECTS = analyse.$(OBJEXT) assoc.$(OBJEXT) astrom.$(OBJEXT) \
- back.$(OBJEXT) bpro.$(OBJEXT) catout.$(OBJEXT) check.$(OBJEXT) \
- clean.$(OBJEXT) extract.$(OBJEXT) field.$(OBJEXT) \
- filter.$(OBJEXT) fitscat.$(OBJEXT) fitsconv.$(OBJEXT) \
- fitshead.$(OBJEXT) fitskey.$(OBJEXT) fitsmisc.$(OBJEXT) \
- fitsread.$(OBJEXT) fitstab.$(OBJEXT) fitsutil.$(OBJEXT) \
- fitswrite.$(OBJEXT) flag.$(OBJEXT) graph.$(OBJEXT) \
- growth.$(OBJEXT) image.$(OBJEXT) interpolate.$(OBJEXT) \
- main.$(OBJEXT) makeit.$(OBJEXT) manobjlist.$(OBJEXT) \
- misc.$(OBJEXT) neurro.$(OBJEXT) pc.$(OBJEXT) photom.$(OBJEXT) \
- plist.$(OBJEXT) poly.$(OBJEXT) prefs.$(OBJEXT) psf.$(OBJEXT) \
- readimage.$(OBJEXT) refine.$(OBJEXT) retina.$(OBJEXT) \
- scan.$(OBJEXT) som.$(OBJEXT) weight.$(OBJEXT)
-sex_OBJECTS = $(am_sex_OBJECTS)
-am__DEPENDENCIES_1 =
-sex_DEPENDENCIES = $(am__DEPENDENCIES_1)
-sex_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(sex_LDFLAGS) $(LDFLAGS) -o \
- $@
-DEFAULT_INCLUDES = -I. at am__isrc@
-depcomp =
-am__depfiles_maybe =
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(sex_SOURCES)
-DIST_SOURCES = $(sex_SOURCES)
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- html-recursive info-recursive install-data-recursive \
- install-dvi-recursive install-exec-recursive \
- install-html-recursive install-info-recursive \
- install-pdf-recursive install-ps-recursive install-recursive \
- installcheck-recursive installdirs-recursive pdf-recursive \
- ps-recursive uninstall-recursive
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-HEADERS = $(noinst_HEADERS)
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
- distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- distdir
-ETAGS = etags
-CTAGS = ctags
-DIST_SUBDIRS = $(SUBDIRS)
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-am__relativize = \
- dir0=`pwd`; \
- sed_first='s,^\([^/]*\)/.*$$,\1,'; \
- sed_rest='s,^[^/]*/*,,'; \
- sed_last='s,^.*/\([^/]*\)$$,\1,'; \
- sed_butlast='s,/*[^/]*$$,,'; \
- while test -n "$$dir1"; do \
- first=`echo "$$dir1" | sed -e "$$sed_first"`; \
- if test "$$first" != "."; then \
- if test "$$first" = ".."; then \
- dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
- dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
- else \
- first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
- if test "$$first2" = "$$first"; then \
- dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
- else \
- dir2="../$$dir2"; \
- fi; \
- dir0="$$dir0"/"$$first"; \
- fi; \
- fi; \
- dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
- done; \
- reldir="$$dir2"
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EXEEXT = @EXEEXT@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
-LIBM = @LIBM@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MKDIR_P = @MKDIR_P@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SEXMACHINE = @SEXMACHINE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-DISTCLEANFILES = *~
- at MAINTAINER_MODE_TRUE@MAINTAINERCLEANFILES = Makefile.in
-SUBDIRS = wcs
-EXTRA_DIST = Macrodefs. Macrodefs.aix Macrodefs.alpha Macrodefs.debug \
- Macrodefs.gcc Macrodefs.hpux Macrodefs.insure Macrodefs.linux \
- Macrodefs.linuxp2 Macrodefs.linuxpc Macrodefs.profile \
- Macrodefs.purify Macrodefs.sgi Macrodefs.solaris Macrodefs.sunos \
- Macrodefs.ultrix Makefile.orig fitsfield.c sexchanges.log
-
-noinst_HEADERS = assoc.h astrom.h back.h bpro.h check.h clean.h define.h \
- extract.h field.h filter.h fitscat.h fitscat_defs.h fitshead.h \
- fitsutil.h flag.h globals.h growth.h image.h interpolate.h key.h \
- neurro.h param.h photom.h plist.h poly.h prefs.h psf.h retina.h \
- sexhead.h sexhead1.h sexheadsc.h som.h types.h weight.h
-
-sex_SOURCES = analyse.c assoc.c astrom.c back.c bpro.c catout.c check.c \
- clean.c extract.c field.c filter.c fitscat.c fitsconv.c fitshead.c \
- fitskey.c fitsmisc.c fitsread.c fitstab.c fitsutil.c fitswrite.c \
- flag.c graph.c growth.c image.c interpolate.c main.c makeit.c \
- manobjlist.c misc.c neurro.c pc.c photom.c plist.c poly.c prefs.c \
- psf.c readimage.c refine.c retina.c scan.c som.c weight.c
-
-sex_LDFLAGS = -L./wcs
-sex_LDADD = -lwcs_c $(LIBM)
-STDH = define.h globals.h types.h
-STDO =
-COMPILE = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-all: all-recursive
-
-.SUFFIXES:
-.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign source/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign source/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-install-binPROGRAMS: $(bin_PROGRAMS)
- @$(NORMAL_INSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- if test -n "$$list"; then \
- echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
- $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
- fi; \
- for p in $$list; do echo "$$p $$p"; done | \
- sed 's/$(EXEEXT)$$//' | \
- while read p p1; do if test -f $$p; \
- then echo "$$p"; echo "$$p"; else :; fi; \
- done | \
- sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
- -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
- sed 'N;N;N;s,\n, ,g' | \
- $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
- { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
- if ($$2 == $$4) files[d] = files[d] " " $$1; \
- else { print "f", $$3 "/" $$4, $$1; } } \
- END { for (d in files) print "f", d, files[d] }' | \
- while read type dir files; do \
- if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
- test -z "$$files" || { \
- echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
- $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
- } \
- ; done
-
-uninstall-binPROGRAMS:
- @$(NORMAL_UNINSTALL)
- @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
- files=`for p in $$list; do echo "$$p"; done | \
- sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
- -e 's/$$/$(EXEEXT)/' `; \
- test -n "$$list" || exit 0; \
- echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
- cd "$(DESTDIR)$(bindir)" && rm -f $$files
-
-clean-binPROGRAMS:
- -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
-sex$(EXEEXT): $(sex_OBJECTS) $(sex_DEPENDENCIES) $(EXTRA_sex_DEPENDENCIES)
- @rm -f sex$(EXEEXT)
- $(sex_LINK) $(sex_OBJECTS) $(sex_LDADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-.c.o:
- $(COMPILE) -c $<
-
-.c.obj:
- $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run 'make' without going through this Makefile.
-# To change the values of 'make' variables: instead of editing Makefiles,
-# (1) if the variable is set in 'config.status', edit 'config.status'
-# (which will cause the Makefiles to be regenerated when you run 'make');
-# (2) otherwise, pass the desired values on the 'make' command line.
-$(RECURSIVE_TARGETS) $(RECURSIVE_CLEAN_TARGETS):
- @fail= failcom='exit 1'; \
- for f in x $$MAKEFLAGS; do \
- case $$f in \
- *=* | --[!k]*);; \
- *k*) failcom='fail=yes';; \
- esac; \
- done; \
- dot_seen=no; \
- target=`echo $@ | sed s/-recursive//`; \
- case "$@" in \
- distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- *) list='$(SUBDIRS)' ;; \
- esac; \
- for subdir in $$list; do \
- echo "Making $$target in $$subdir"; \
- if test "$$subdir" = "."; then \
- dot_seen=yes; \
- local_target="$$target-am"; \
- else \
- local_target="$$target"; \
- fi; \
- ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- || eval $$failcom; \
- done; \
- if test "$$dot_seen" = "no"; then \
- $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
- fi; test -z "$$fail"
-tags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- done
-ctags-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- done
-cscopelist-recursive:
- list='$(SUBDIRS)'; for subdir in $$list; do \
- test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) cscopelist); \
- done
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
- include_option=--etags-include; \
- empty_fix=.; \
- else \
- include_option=--include; \
- empty_fix=; \
- fi; \
- list='$(SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- test ! -f $$subdir/TAGS || \
- set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
- fi; \
- done; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-cscopelist: cscopelist-recursive $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
- @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
- if test "$$subdir" = .; then :; else \
- $(am__make_dryrun) \
- || test -d "$(distdir)/$$subdir" \
- || $(MKDIR_P) "$(distdir)/$$subdir" \
- || exit 1; \
- dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
- $(am__relativize); \
- new_distdir=$$reldir; \
- dir1=$$subdir; dir2="$(top_distdir)"; \
- $(am__relativize); \
- new_top_distdir=$$reldir; \
- echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
- echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
- ($(am__cd) $$subdir && \
- $(MAKE) $(AM_MAKEFLAGS) \
- top_distdir="$$new_top_distdir" \
- distdir="$$new_distdir" \
- am__remove_distdir=: \
- am__skip_length_check=: \
- am__skip_mode_fix=: \
- distdir) \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-recursive
-all-am: Makefile $(PROGRAMS) $(HEADERS)
-installdirs: installdirs-recursive
-installdirs-am:
- for dir in "$(DESTDIR)$(bindir)"; do \
- test -z "$$dir" || $(MKDIR_P) "$$dir"; \
- done
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-recursive
-
-clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
-
-distclean: distclean-recursive
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am: install-binPROGRAMS
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am: uninstall-binPROGRAMS
-
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) \
- cscopelist-recursive ctags-recursive install-am install-strip \
- tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- all all-am check check-am clean clean-binPROGRAMS \
- clean-generic cscopelist cscopelist-recursive ctags \
- ctags-recursive distclean distclean-compile distclean-generic \
- distclean-tags distdir dvi dvi-am html html-am info info-am \
- install install-am install-binPROGRAMS install-data \
- install-data-am install-dvi install-dvi-am install-exec \
- install-exec-am install-html install-html-am install-info \
- install-info-am install-man install-pdf install-pdf-am \
- install-ps install-ps-am install-strip installcheck \
- installcheck-am installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
- uninstall uninstall-am uninstall-binPROGRAMS
-
-
-analyse.o: $(STDH) $(STDO) analyse.c assoc.h back.h check.h growth.h image.h \
- photom.h plist.h growth.h psf.h
-
-assoc.o: $(STDH) $(STDO) assoc.c assoc.h
-
-astrom.o: $(STDH) $(STDO) astrom.c astrom.h
-
-back.o: $(STDH) $(STDO) back.c back.h field.h
-
-bpro.o: $(STDH) $(STDO) bpro.c bpro.h fitscat.h
-
-catout.o: $(STDH) $(STDO) catout.c param.h sexhead.h sexhead1.h sexheadsc.h
-
-check.o: $(STDH) $(STDO) check.c check.h
-
-clean.o: $(STDH) $(STDO) clean.c clean.h check.h
-
-extract.o: $(STDH) $(STDO) extract.c extract.h plist.h
-
-field.o: $(STDH) $(STDO) field.c field.h interpolate.h
-
-filter.o: $(STDH) $(STDO) filter.c bpro.h filter.h image.h
-
-fitscat.o: $(STDH) $(STDO) fitscat.c fitscat_defs.h fitscat.h
-
-fitsconv.o: $(STDH) $(STDO) fitsconv.c fitscat_defs.h fitscat.h
-
-fitshead.o: $(STDH) $(STDO) fitshead.c fitscat_defs.h fitscat.h
-
-fitskey.o: $(STDH) $(STDO) fitskey.c fitscat_defs.h fitscat.h
-
-fitsmisc.o: $(STDH) $(STDO) fitsmisc.c fitscat_defs.h fitscat.h
-
-fitsread.o: $(STDH) $(STDO) fitsread.c fitscat_defs.h fitscat.h
-
-fitstab.o: $(STDH) $(STDO) fitstab.c fitscat_defs.h fitscat.h
-
-fitsutil.o: $(STDH) $(STDO) fitsutil.c fitscat_defs.h fitscat.h
-
-fitswrite.o: $(STDH) $(STDO) fitswrite.c fitscat_defs.h fitscat.h
-
-flag.o: $(STDH) $(STDO) flag.c flag.h plist.h
-
-graph.o: $(STDH) $(STDO) graph.c
-
-growth.o: $(STDH) $(STDO) growth.c growth.h
-
-image.o: $(STDH) $(STDO) image.c
-
-interpolate.o: $(STDH) $(STDO) interpolate.c interpolate.h
-
-main.o: $(STDH) $(STDO) main.c
-
-makeit.o: $(STDH) $(STDO) makeit.c check.h growth.h interpolate.h psf.h \
- weight.h
-
-manobjlist.o: $(STDH) $(STDO) manobjlist.c plist.h
-
-misc.o: $(STDH) $(STDO) misc.c
-
-neurro.o: $(STDH) $(STDO) neurro.c neurro.h
-
-pc.o: $(STDH) $(STDO) pc.c image.h psf.h
-
-photom.o: $(STDH) $(STDO) photom.c photom.h
-
-plist.o: $(STDH) $(STDO) plist.c plist.h
-
-poly.o: $(STDH) $(STDO) poly.c poly.h
-
-prefs.o: $(STDH) $(STDO) prefs.c prefs.h
-
-psf.o: $(STDH) $(STDO) psf.c image.h psf.h
-
-readimage.o: $(STDH) $(STDO) readimage.c check.h interpolate.h weight.h
-
-refine.o: $(STDH) $(STDO) refine.c extract.h plist.h
-
-retina.o: $(STDH) $(STDO) retina.c image.h retina.h fitscat.h
-
-scan.o: $(STDH) $(STDO) scan.c check.h clean.h extract.h plist.h
-
-som.o: $(STDH) $(STDO) som.c som.h
-
-weight.o: $(STDH) $(STDO) weight.c weight.h field.h
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/external/sextractor/source/Makefile.orig b/external/sextractor/source/Makefile.orig
deleted file mode 100644
index 002f133..0000000
--- a/external/sextractor/source/Makefile.orig
+++ /dev/null
@@ -1,157 +0,0 @@
-# SExtractor V2.0
-#
-# general makefile
-#
-# E.BERTIN 28/08/1998
-#
-include Macrodefs.$(SEXMACHINE)
-DEST = ${HOME}/bin
-LIBS = -L. -lwcs_c -lm
-ALL = analyse.o assoc.o astrom.o back.o bpro.o catout.o check.o clean.o \
- extract.o field.o filter.o fitscat.o fitsconv.o fitshead.o fitskey.o \
- fitsmisc.o fitsread.o fitstab.o fitsutil.o fitswrite.o flag.o graph.o \
- growth.o image.o interpolate.o main.o makeit.o manobjlist.o misc.o \
- neurro.o pc.o photom.o plist.o poly.o prefs.o psf.o readimage.o \
- refine.o retina.o scan.o som.o weight.o libwcs_c.a
-STDH = define.h globals.h types.h
-STDO =
-
-sex: $(ALL)
- $(CC) $(ALL) -o sex $(LIBS) $(COPTS)
- -$(CP) sex $(DEST)/sex
-
-clean:
- $(RM) $(ALL) sex
- ($(CD) wcs && $(MAKE) clean)
-
-analyse.o: $(STDH) $(STDO) analyse.c assoc.h back.h check.h growth.h image.h \
- photom.h plist.h growth.h psf.h
- $(CC) $(COPTS) -c analyse.c
-
-assoc.o: $(STDH) $(STDO) assoc.c assoc.h
- $(CC) $(COPTS) -c assoc.c
-
-astrom.o: $(STDH) $(STDO) astrom.c astrom.h
- $(CC) $(COPTS) -c astrom.c
-
-back.o: $(STDH) $(STDO) back.c back.h field.h
- $(CC) $(COPTS) -c back.c
-
-bpro.o: $(STDH) $(STDO) bpro.c bpro.h fitscat.h
- $(CC) $(COPTS) -c bpro.c
-
-catout.o: $(STDH) $(STDO) catout.c param.h sexhead.h sexhead1.h sexheadsc.h
- $(CC) $(COPTS) -c catout.c
-
-check.o: $(STDH) $(STDO) check.c check.h
- $(CC) $(COPTS) -c check.c
-
-clean.o: $(STDH) $(STDO) clean.c clean.h check.h
- $(CC) $(COPTS) -c clean.c
-
-extract.o: $(STDH) $(STDO) extract.c extract.h plist.h
- $(CC) $(COPTS) -c extract.c
-
-field.o: $(STDH) $(STDO) field.c field.h interpolate.h
- $(CC) $(COPTS) -c field.c
-
-filter.o: $(STDH) $(STDO) filter.c bpro.h filter.h image.h
- $(CC) $(COPTS) -c filter.c
-
-fitscat.o: $(STDH) $(STDO) fitscat.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitscat.c
-
-fitsconv.o: $(STDH) $(STDO) fitsconv.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitsconv.c
-
-fitshead.o: $(STDH) $(STDO) fitshead.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitshead.c
-
-fitskey.o: $(STDH) $(STDO) fitskey.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitskey.c
-
-fitsmisc.o: $(STDH) $(STDO) fitsmisc.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitsmisc.c
-
-fitsread.o: $(STDH) $(STDO) fitsread.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitsread.c
-
-fitstab.o: $(STDH) $(STDO) fitstab.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitstab.c
-
-fitsutil.o: $(STDH) $(STDO) fitsutil.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitsutil.c
-
-fitswrite.o: $(STDH) $(STDO) fitswrite.c fitscat_defs.h fitscat.h
- $(CC) $(COPTS) -c fitswrite.c
-
-flag.o: $(STDH) $(STDO) flag.c flag.h plist.h
- $(CC) $(COPTS) -c flag.c
-
-graph.o: $(STDH) $(STDO) graph.c
- $(CC) $(COPTS) -c graph.c
-
-growth.o: $(STDH) $(STDO) growth.c growth.h
- $(CC) $(COPTS) -c growth.c
-
-image.o: $(STDH) $(STDO) image.c
- $(CC) $(COPTS) -c image.c
-
-interpolate.o: $(STDH) $(STDO) interpolate.c interpolate.h
- $(CC) $(COPTS) -c interpolate.c
-
-main.o: $(STDH) $(STDO) main.c
- $(CC) $(COPTS) -c main.c
-
-makeit.o: $(STDH) $(STDO) makeit.c check.h growth.h interpolate.h psf.h \
- weight.h
- $(CC) $(COPTS) -c makeit.c
-
-manobjlist.o: $(STDH) $(STDO) manobjlist.c plist.h
- $(CC) $(COPTS) -c manobjlist.c
-
-misc.o: $(STDH) $(STDO) misc.c
- $(CC) $(COPTS) -c misc.c
-
-neurro.o: $(STDH) $(STDO) neurro.c neurro.h
- $(CC) $(COPTS) -c neurro.c
-
-pc.o: $(STDH) $(STDO) pc.c image.h psf.h
- $(CC) $(COPTS) -c pc.c
-
-photom.o: $(STDH) $(STDO) photom.c photom.h
- $(CC) $(COPTS) -c photom.c
-
-plist.o: $(STDH) $(STDO) plist.c plist.h
- $(CC) $(COPTS) -c plist.c
-
-poly.o: $(STDH) $(STDO) poly.c poly.h
- $(CC) $(COPTS) -c poly.c
-
-prefs.o: $(STDH) $(STDO) prefs.c prefs.h
- $(CC) $(COPTS) -c prefs.c
-
-psf.o: $(STDH) $(STDO) psf.c image.h psf.h
- $(CC) $(COPTS) -c psf.c
-
-readimage.o: $(STDH) $(STDO) readimage.c check.h interpolate.h weight.h
- $(CC) $(COPTS) -c readimage.c
-
-refine.o: $(STDH) $(STDO) refine.c extract.h plist.h
- $(CC) $(COPTS) -c refine.c
-
-retina.o: $(STDH) $(STDO) retina.c image.h retina.h fitscat.h
- $(CC) $(COPTS) -c retina.c
-
-scan.o: $(STDH) $(STDO) scan.c check.h clean.h extract.h plist.h
- $(CC) $(COPTS) -c scan.c
-
-som.o: $(STDH) $(STDO) som.c som.h
- $(CC) $(COPTS) -c som.c
-
-weight.o: $(STDH) $(STDO) weight.c weight.h field.h
- $(CC) $(COPTS) -c weight.c
-
-libwcs_c.a:
- ($(CD) wcs && $(MAKE))
-
diff --git a/external/sextractor/source/analyse.c b/external/sextractor/source/analyse.c
deleted file mode 100644
index ad490f6..0000000
--- a/external/sextractor/source/analyse.c
+++ /dev/null
@@ -1,657 +0,0 @@
- /*
- analyse.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: analyse(), endobject()...: measurements on detections.
-*
-* Last modify: 12/11/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "back.h"
-#include "check.h"
-#include "assoc.h"
-#include "astrom.h"
-#include "plist.h"
-#include "flag.h"
-#include "growth.h"
-#include "image.h"
-#include "photom.h"
-#include "psf.h"
-#include "retina.h"
-
-/********************************* analyse ***********************************/
-void analyse(picstruct *field, picstruct *dfield, int objnb,
- objliststruct *objlist)
-
- {
- objstruct *obj = objlist->obj+objnb;
-
-/* Do photometry on the detection image if no other image available */
- obj->number = ++cat.ndetect;
- obj->bkg = (float)back(field, (int)(obj->mx+0.5), (int)(obj->my+0.5));
- obj->dbkg = 0.0;
- if (prefs.pback_type == LOCAL)
- localback(field, obj);
- else
- obj->sigbkg = field->backsig;
-
- examineiso(field, dfield, obj, objlist->plist);
-
-
-/*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*/
-/* Put here your calls to custom functions related to isophotal measurements.
-Ex:
-
-compute_myparams(obj);
-
-*/
-
-/*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*/
-
-
- return;
- }
-
-
-/***************************** examineiso ********************************/
-/*
-compute some isophotal parameters IN THE MEASUREMENT image.
-*/
-void examineiso(picstruct *field, picstruct *dfield, objstruct *obj,
- pliststruct *pixel)
-
- {
- checkstruct *check;
- pliststruct *pixt;
- int i,j,k,h, photoflag,area,errflag, cleanflag,
- pospeakflag, profflag, minarea, gainflag;
- double tv,sigtv, ngamma,
- esum, emx2,emy2,emxy, err,gain,backnoise2,dbacknoise2,
- xm,ym, x,y,var,var2, profflux,proffluxvar;
- float *heap,*heapt,*heapj,*heapk, swap;
- PIXTYPE pix, cdpix, tpix, peak,cdpeak, thresh,dthresh;
- static PIXTYPE threshs[NISO];
-
-
- if (!dfield)
- dfield = field;
-
-/* Prepare computation of positional error */
- if (errflag=FLAG(obj.poserr_mx2))
- {
- dbacknoise2 = dfield->backsig*dfield->backsig;
- esum = emx2 = emy2 = emxy = 0.0;
- xm = obj->mx;
- ym = obj->my;
- }
-
- pospeakflag = FLAG(obj.peakx);
- profflag = FLAG(obj.flux_prof);
- gain = prefs.gain;
- ngamma = field->ngamma;
- photoflag = (prefs.detect_type==PHOTO);
- gainflag = PLISTEXIST(var) && prefs.weightgain_flag;
-
-/* Prepare selection of the heap selection for CLEANing */
- if (cleanflag = prefs.clean_flag)
- {
- if (obj->fdnpix < (minarea = prefs.ext_minarea))
- {
- obj->mthresh = 0.0;
- cleanflag = 0;
- }
- else
- {
- h = minarea = prefs.ext_minarea;
- QMALLOC(heap, float, minarea);
- heapt = heap;
- }
- }
- else
- obj->mthresh = 0.0;
-
-/* Measure essential isophotal parameters in the measurement image... */
- tv = sigtv = profflux = proffluxvar = 0.0;
- var = backnoise2 = field->backsig*field->backsig;
- peak = -BIG;
- cdpeak = -BIG;
- thresh = field->thresh;
- dthresh = dfield->dthresh;
- area = 0;
- for (pixt=pixel+obj->firstpix; pixt>=pixel; pixt=pixel+PLIST(pixt,nextpix))
- {
- pix = PLIST(pixt,value);
- if (pix>peak)
- peak = pix;
-
- cdpix=PLISTPIX(pixt,cdvalue);
- if (pospeakflag && cdpix>cdpeak)
- {
- cdpeak=cdpix;
- obj->peakx = PLIST(pixt,x) + 1;
- obj->peaky = PLIST(pixt,y) + 1;
- }
- if (PLISTEXIST(var))
- var = PLISTPIX(pixt, var);
- if (photoflag)
- {
- pix = exp(pix/ngamma);
- var2 = pix*pix*var;
- }
- else
- var2 = var;
-
- if (gainflag && pix>0.0 && gain>0.0)
- var2 += pix/gain*var/backnoise2;
-
- sigtv += var2;
-
- if (profflag && cdpix>0.0)
- {
- profflux += cdpix*pix;
- proffluxvar += cdpix*var2;
- }
-
- if (pix>thresh)
- area++;
- tv += pix;
- if (errflag)
- {
- err = dbacknoise2;
- if (gain>0.0 && cdpix>0.0)
- err += cdpix/gain;
- x = PLIST(pixt,x) - xm;
- y = PLIST(pixt,y) - ym;
- esum += err;
- emx2 += err*x*x;
- emy2 += err*y*y;
- emxy += err*x*y;
- }
-
-/*-- Find the minareath pixel in decreasing intensity for CLEANing */
- if (cleanflag)
- {
- tpix = PLISTPIX(pixt, cdvalue) - (PLISTEXIST(dthresh)?
- PLISTPIX(pixt, dthresh):dthresh);
- if (h>0)
- *(heapt++) = (float)tpix;
- else if (h)
- {
- if ((float)tpix>*heap)
- {
- *heap = (float)tpix;
- for (j=0; (k=(j+1)<<1)<=minarea; j=k)
- {
- heapk = heap+k;
- heapj = heap+j;
- if (k != minarea && *(heapk-1) > *heapk)
- {
- heapk++;
- k++;
- }
- if (*heapj <= *(--heapk))
- break;
- swap = *heapk;
- *heapk = *heapj;
- *heapj = swap;
- }
- }
- }
- else
- hmedian(heap, minarea);
- h--;
- }
- }
-
-/* Flagging from the flag-map */
- if (PLISTEXIST(flag))
- getflags(obj, pixel);
-
- if (cleanflag)
- {
- obj->mthresh = *heap;
- free(heap);
- }
-
- if (profflag)
- {
- obj->flux_prof = obj->fdflux>0.0? (float)(profflux/obj->fdflux) : 0.0;
- obj->fluxerr_prof = obj->fdflux>0.0? (float)(proffluxvar/obj->fdflux):0.0;
- }
-
- if (errflag)
- {
- double flux2;
-
- flux2 = obj->fdflux*obj->fdflux;
-/*-- Estimation of the error ellipse moments: we re-use previous variables */
- emx2 /= flux2; /* variance of xm */
- emy2 /= flux2; /* variance of ym */
- emxy /= flux2; /* covariance */
-
-/*-- Handle fully correlated profiles (which cause a singularity...) */
- esum *= 0.08333/flux2;
- if (obj->singuflag && (emx2*emy2-emxy*emxy) < esum*esum)
- {
- emx2 += esum;
- emy2 += esum;
- }
-
- obj->poserr_mx2 = emx2;
- obj->poserr_my2 = emy2;
- obj->poserr_mxy = emxy;
- }
-
- if (photoflag)
- {
- tv = ngamma*(tv-obj->fdnpix*exp(obj->dbkg/ngamma));
- sigtv /= ngamma*ngamma;
- }
- else
- {
- tv -= obj->fdnpix*obj->dbkg;
- if (!gainflag && gain > 0.0 && tv>0.0)
- sigtv += tv/gain;
- }
-
- obj->npix = area;
- obj->flux = tv;
- obj->fluxerr = sigtv;
- obj->peak = peak;
-
- obj->thresh -= obj->dbkg;
- obj->peak -= obj->dbkg;
-
-/* Initialize isophotal thresholds so as to sample optimally the full profile*/
-
- if (FLAG(obj.iso[0]))
- {
- int *iso;
- PIXTYPE *thresht;
-
- memset(obj->iso, 0, NISO*sizeof(int));
- if (prefs.detect_type == PHOTO)
- for (i=0; i<NISO; i++)
- threshs[i] = obj->thresh + (obj->peak-obj->thresh)*i/NISO;
- else
- {
- if (obj->peak>0.0)
- for (i=0; i<NISO; i++)
- threshs[i] = obj->thresh*pow(obj->peak/obj->thresh,
- (double)i/NISO);
- else
- for (i=0; i<NISO; i++)
- threshs[i] = 0.0;
- }
- for (pixt=pixel+obj->firstpix; pixt>=pixel; pixt=pixel+PLIST(pixt,nextpix))
- for (i=NISO,iso=obj->iso,thresht=threshs;
- i-- && PLIST(pixt,value)>*(thresht++);)
- (*(iso++))++;
- }
-
-/* Put objects in "segmentation check-image" */
-
- if (check = prefs.check[CHECK_SEGMENTATION])
- for (pixt=pixel+obj->firstpix; pixt>=pixel; pixt=pixel+PLIST(pixt,nextpix))
- ((USHORT *)check->pix)[check->width*PLIST(pixt,y)+PLIST(pixt,x)]
- = (USHORT)obj->number;
-
- if (check = prefs.check[CHECK_OBJECTS])
- for (pixt=pixel+obj->firstpix; pixt>=pixel; pixt=pixel+PLIST(pixt,nextpix))
- ((PIXTYPE *)check->pix)[check->width*PLIST(pixt,y)+PLIST(pixt,x)]
- = PLIST(pixt,value);
-
-/* Compute the FWHM of the object */
- if (FLAG(obj.fwhm))
- {
- PIXTYPE thresh0;
-
- thresh0 = obj->peak/5.0;
- if (thresh0<obj->thresh)
- thresh0 = obj->thresh;
- if (thresh0>0.0)
- {
- double mx,my, s,sx,sy,sxx,sxy, dx,dy,d2, lpix,pix, b, inverr2, sat,
- dbkg, d, bmax;
-
- mx = obj->mx;
- my = obj->my;
- dbkg = obj->dbkg;
- sat = (double)(prefs.satur_level - obj->bkg);
- s = sx = sy = sxx = sxy = 0.0;
- for (pixt=pixel+obj->firstpix;pixt>=pixel;pixt=pixel+PLIST(pixt,nextpix))
- {
- pix = PLIST(pixt,value)-dbkg;
- if (pix>thresh0 && pix<sat)
- {
- dx = PLIST(pixt,x) - mx;
- dy = PLIST(pixt,y) - my;
- lpix = log(pix);
- inverr2 = pix*pix;
- s += inverr2;
- d2 = dx*dx+dy*dy;
- sx += d2*inverr2;
- sxx += d2*d2*inverr2;
- sy += lpix*inverr2;
- sxy += lpix*d2*inverr2;
- }
- }
- d = s*sxx-sx*sx;
- if (fabs(d)>0.0)
- {
- b = -(s*sxy-sx*sy)/d;
- if (b<(bmax = 1/(13*obj->a*obj->b))) /* to have FWHM # 6 sigma */
- b = bmax;
- obj->fwhm = (float)(1.6651/sqrt(b));
-/*----- correction for undersampling effects (established from simulations) */
- if (obj->fwhm>0.0)
- obj->fwhm -= 1/(4*obj->fwhm);
- }
- else
- obj->fwhm = 0.0;
- }
- else
- obj->fwhm = 0.0;
- }
-
- return;
- }
-
-
-/******************************* endobject **********************************/
-/*
-Final processing of object data, just before saving it to the catalog.
-*/
-void endobject(picstruct *field, picstruct *dfield, picstruct *wfield,
- picstruct *dwfield, int n, objliststruct *objlist)
- {
- checkstruct *check;
- int i,j, ix,iy,selecflag, newnumber,nsub;
- objstruct *obj;
-
- obj = &objlist->obj[n];
-
-/* Source position */
- obj2->sposx = (float)(obj2->posx = obj->mx+1.0); /* That's standard FITS */
- obj2->sposy = (float)(obj2->posy = obj->my+1.0);
-
-/* Integer coordinates */
- ix=(int)(obj->mx+0.49999);
- iy=(int)(obj->my+0.49999);
-
-/* Association */
- if (prefs.assoc_flag)
- obj2->assoc_number = do_assoc(field, obj2->sposx, obj2->sposy);
-
- if (prefs.assoc_flag && prefs.assocselec_type!=ASSOCSELEC_ALL)
- selecflag = (prefs.assocselec_type==ASSOCSELEC_MATCHED)?
- obj2->assoc_number:!obj2->assoc_number;
- else
- selecflag = 1;
-
- if (selecflag)
- {
-/*-- Paste back to the image the object's pixels if BLANKing is on */
- if (prefs.blank_flag)
- {
- pasteimage(field, obj->blank, obj->subw, obj->subh,
- obj->subx, obj->suby);
- if (obj->dblank)
- pasteimage(dfield, obj->dblank, obj->subw, obj->subh,
- obj->subx, obj->suby);
- }
-
-
-/*------------------------------- Photometry -------------------------------*/
-
-/*-- Convert the father of photom. error estimates from variance to RMS */
- obj2->flux_iso = obj->flux;
- obj2->fluxerr_iso = sqrt(obj->fluxerr);
- if (FLAG(obj.flux_prof))
- {
- obj2->flux_prof = obj->flux_prof;
- obj2->fluxerr_prof = sqrt(obj->fluxerr_prof);
- }
-
- if (FLAG(obj2.flux_isocor))
- computeisocorflux(field, obj);
-
- if (FLAG(obj2.flux_aper))
- for (i=0; i<prefs.naper; i++)
- computeaperflux(field, wfield, obj, i);
-
- if (FLAG(obj2.flux_auto))
- computeautoflux(field, dfield, wfield, dwfield, obj);
-
-/*-- Growth curve */
- if (prefs.growth_flag)
- makeavergrowth(field, wfield, obj);
-
-/*-- What about the peak of the profile? */
- if (obj->peak+obj->bkg >= prefs.satur_level)
- obj->flag |= OBJ_SATUR;
-
-/*-- Check-image CHECK_APERTURES option */
-
- if (check = prefs.check[CHECK_APERTURES])
- {
- if (FLAG(obj2.flux_aper))
- for (i=0; i<prefs.naper; i++)
- sexcircle(check->pix, check->width, check->height,
- obj->mx, obj->my, prefs.apert[i]/2.0, check->overlay);
-
- if (FLAG(obj2.flux_auto))
- sexellips(check->pix, check->width, check->height,
- obj->mx, obj->my, obj->a*obj2->kronfactor,
- obj->b*obj2->kronfactor, obj->theta,
- check->overlay, obj->flag&OBJ_CROWDED);
- }
-
-/*-- Error ellipse parameters */
- if (FLAG(obj2.poserr_a))
- {
- double pmx2,pmy2,temp,theta;
-
- if (fabs(temp=obj->poserr_mx2-obj->poserr_my2) > 0.0)
- theta = atan2(2.0 * obj->poserr_mxy,temp) / 2.0;
- else
- theta = PI/4.0;
-
- temp = sqrt(0.25*temp*temp+obj->poserr_mxy*obj->poserr_mxy);
- pmy2 = pmx2 = 0.5*(obj->poserr_mx2+obj->poserr_my2);
- pmx2+=temp;
- pmy2-=temp;
-
- obj2->poserr_a = (float)sqrt(pmx2);
- obj2->poserr_b = (float)sqrt(pmy2);
- obj2->poserr_theta = theta*180.0/PI;
- }
-
- if (FLAG(obj2.poserr_cxx))
- {
- double xm2,ym2, xym, temp;
-
- xm2 = obj->poserr_mx2;
- ym2 = obj->poserr_my2;
- xym = obj->poserr_mxy;
- obj2->poserr_cxx = (float)(ym2/(temp=xm2*ym2-xym*xym));
- obj2->poserr_cyy = (float)(xm2/temp);
- obj2->poserr_cxy = (float)(-2*xym/temp);
- }
-
-/* ---- Aspect ratio */
-
- if (FLAG(obj2.elong))
- obj2->elong = obj->a/obj->b;
-
- if (FLAG(obj2.ellip))
- obj2->ellip = 1-obj->b/obj->a;
-
-/* ---- Star/Galaxy classification */
-
- if (FLAG(obj2.sprob))
- {
- int j;
- double fac2, input[10], output, fwhm;
-
- fwhm = prefs.seeing_fwhm;
-
- fac2 = fwhm/field->pixscale;
- fac2 *= fac2;
- input[j=0] = log10(obj->iso[0]? obj->iso[0]/fac2: 0.01);
- input[++j] = field->thresh>0.0?
- log10(obj->peak>0.0? obj->peak/field->thresh: 0.1)
- :-1.0;
- for (i=1; i<NISO; i++)
- input[++j] = log10(obj->iso[i]? obj->iso[i]/fac2: 0.01);
- input[++j] = log10(fwhm);
- neurresp(input, &output);
- obj2->sprob = (float)output;
- }
-
-/*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*/
-/*-- Put here your calls to "BLIND" custom functions. Ex:
-
- compute_myotherparams(obj);
-
---*/
-
-/*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*/
-
- newnumber = ++cat.ntotal;
-/*-- update segmentation map */
- if (check=prefs.check[CHECK_SEGMENTATION])
- {
- USHORT *pix;
- USHORT newsnumber = newnumber,
- oldsnumber = obj->number;
- int dx,dx0,dy,dpix;
-
- pix = (USHORT *)check->pix + check->width*obj->ymin + obj->xmin;
- dx0 = obj->xmax-obj->xmin+1;
- dpix = check->width-dx0;
- for (dy=obj->ymax-obj->ymin+1; dy--; pix += dpix)
- for (dx=dx0; dx--; pix++)
- if (*pix==oldsnumber)
- *pix = newsnumber;
- }
- obj->number = newnumber;
-
- if (FLAG(obj2.vignet))
- copyimage(field,outobj2.vignet,prefs.vignetsize[0],prefs.vignetsize[1],
- ix,iy);
-
- if (FLAG(obj2.vigshift))
- copyimage_center(field, outobj2.vigshift, prefs.vigshiftsize[0],
- prefs.vigshiftsize[1], obj->mx, obj->my);
-
-/*--- Express everything in magnitude units */
- computemags(field, obj);
-
-/*------------------------------- PSF fitting ------------------------------*/
- nsub = 1;
- if (prefs.psf_flag)
- {
- psf_fit(thepsf, field, wfield, obj);
- obj2->npsf = thepsfit->npsf;
- if (prefs.psfdisplay_type == PSFDISPLAY_SPLIT)
- {
- nsub = thepsfit->npsf;
- if (nsub<1)
- nsub = 1;
- }
- else
- for (j=0; j<thepsfit->npsf; j++)
- {
- if (FLAG(obj2.x_psf) && j<prefs.psf_xsize)
- obj2->x_psf[j] = thepsfit->x[j];
- if (FLAG(obj2.y_psf) && j<prefs.psf_ysize)
- obj2->y_psf[j] = thepsfit->y[j];
- if (FLAG(obj2.flux_psf) && j<prefs.psf_fluxsize)
- obj2->flux_psf[j] = thepsfit->flux[j];
- if (FLAG(obj2.mag_psf) && j<prefs.psf_magsize)
- obj2->mag_psf[j] = thepsfit->flux[j]>0.0?
- prefs.mag_zeropoint -2.5*log10(thepsfit->flux[j]) : 99.0;
- }
- }
-
-/*-------------------------------- Astrometry ------------------------------*/
- if (prefs.world_flag)
- computeastrom(field, obj);
-
-/*-- Go through each newly identified component */
- for (j=0; j<nsub; j++)
- {
- if (prefs.psf_flag && prefs.psfdisplay_type == PSFDISPLAY_SPLIT)
- {
- if (FLAG(obj2.x_psf))
- obj2->x_psf[0] = thepsfit->x[j];
- if (FLAG(obj2.y_psf))
- obj2->y_psf[0] = thepsfit->y[j];
- if (FLAG(obj2.flux_psf))
- obj2->flux_psf[0] = thepsfit->flux[j];
- if (FLAG(obj2.mag_psf))
- obj2->mag_psf[0] = thepsfit->flux[j]>0.0?
- prefs.mag_zeropoint -2.5*log10(thepsfit->flux[j]) : 99.0;
- if (j)
- obj->number = ++cat.ntotal;
- }
-
- FPRINTF(OUTPUT, "%8d %6.1f %6.1f %5.1f %5.1f %12g "
- "%c%c%c%c%c%c%c%c\n",
- obj->number, obj->mx+1.0, obj->my+1.0,
- obj->a, obj->b,
- obj->flux,
- obj->flag&OBJ_CROWDED?'C':'_',
- obj->flag&OBJ_MERGED?'M':'_',
- obj->flag&OBJ_SATUR?'S':'_',
- obj->flag&OBJ_TRUNC?'T':'_',
- obj->flag&OBJ_APERT_PB?'A':'_',
- obj->flag&OBJ_ISO_PB?'I':'_',
- obj->flag&OBJ_DOVERFLOW?'D':'_',
- obj->flag&OBJ_OVERFLOW?'O':'_');
- writecat(n, objlist);
- }
- }
-
-/* Remove again from the image the object's pixels if BLANKing is on ... */
-/*-- ... and free memory */
-
- if (prefs.blank_flag && obj->blank)
- {
- if (selecflag)
- {
- if (prefs.somfit_flag && (check=prefs.check[CHECK_MAPSOM]))
- blankcheck(check, obj->blank, obj->subw, obj->subh,
- obj->subx, obj->suby, (PIXTYPE)*(obj2->vector_somfit));
-
- }
- blankimage(field, obj->blank, obj->subw, obj->subh,
- obj->subx, obj->suby, -BIG);
- free(obj->blank);
- if (obj->dblank)
- {
- blankimage(dfield, obj->dblank, obj->subw, obj->subh,
- obj->subx, obj->suby, -BIG);
- free(obj->dblank);
- }
- }
-
- return;
- }
-
diff --git a/external/sextractor/source/assoc.c b/external/sextractor/source/assoc.c
deleted file mode 100644
index 479f3e3..0000000
--- a/external/sextractor/source/assoc.c
+++ /dev/null
@@ -1,362 +0,0 @@
- /*
- assoc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Routines for catalog-associations.
-*
-* Last modify: 27/01/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "assoc.h"
-
-/********************************* comp_assoc ********************************/
-/*
-Comparison function for sort_assoc().
-*/
-int comp_assoc(const void *i1, const void *i2)
- {
- float *f1,*f2;
-
- f1 = (float *)i1 + 1;
- f2 = (float *)i2 + 1;
- if (*f1<*f2)
- return -1;
- else return (*f1==*f2)?0:1;
- }
-
-
-/********************************* sort_assoc ********************************/
-/*
-Make the presentation histogram, order the assoc-list and build the hash-table.
-*/
-void sort_assoc(picstruct *field, assocstruct *assoc)
-
- {
- int comp_assoc(const void *i1, const void *i2);
- float *list, rad;
- int i,j, step,nobj, *hash;
-
- step = assoc->ncol;
- nobj = assoc->nobj;
- list = assoc->list;
- qsort(assoc->list, assoc->nobj, step*sizeof(float), comp_assoc);
-/* Build the hash table that contains the first object in the sorted list */
-/* which may be in reach from the current scanline */
- QMALLOC(assoc->hash, int, field->height);
- list = assoc->list+1; /* This is where the 1st y coordinate is stored */
- hash = assoc->hash;
- rad = assoc->radius;
- for (i=0, j=0; i<field->height; i++)
- {
-/*-- For safety, we keep a 1-pixel margin */
- for (;j<nobj && (int)(*list+rad+1.5)<i; j++, list+=step);
-/*-- We use -1 as a code identifying lines with no objects */
- *(hash++) = (j==nobj || (int)(*list-rad-0.5)>i) ? -1 : j;
- }
-
- return;
- }
-
-
-/********************************* load_assoc ********************************/
-/*
-Read an assoc-list, and returns a pointer to the new assoc struct (or NULL if
-no list was found).
-*/
-assocstruct *load_assoc(char *filename)
-
- {
- assocstruct *assoc;
- FILE *file;
- float *list, val;
- char str[MAXCHAR], str2[MAXCHAR], *sstr;
- int *data,
- i,ispoon,j,k,l, ncol, ndata, nlist, size,spoonsize,
- xindex,yindex,mindex;
-
- if (!(file = fopen(filename, "r")))
- return NULL;
-
- NFPRINTF(OUTPUT, "Reading ASSOC input-list...");
- for (i=0; fgets(str, MAXCHAR, file);)
- {
-/*-- Examine current input line (discard empty and comment lines) */
- if (!*str || strchr("#\t\n",*str))
- continue;
-
- if (!i)
- {
- strcpy(str2, str);
-/*---- Let's count the number of columns in the first line */
- for (ncol=0; strtok(ncol?NULL:str2, " \t\v\n\r\f"); ncol++);
- if (!ncol)
- error(EXIT_FAILURE, "*Error*: empty line in ", filename);
-/*---- Build a look-up table containing the ordering of column data */
- QCALLOC(data, int, ncol);
- k = 1;
- for (j=0; j<prefs.nassoc_data && k<=prefs.assoc_size; j++)
- if ((l=prefs.assoc_data[j]) && --l<ncol)
- data[l] = k++;
- ndata = k-1;
- if (!ndata)
- {
- ndata = ncol;
- if (prefs.assoc_size<ndata)
- ndata = prefs.assoc_size;
- for (j=0; j<ndata; j++)
- data[j] = j+1;
- }
- if (ndata<prefs.assoc_size)
- {
- sprintf(gstr, "no more than %d ASSOC parameters available: ", ncol);
- warning("VECTOR_ASSOC redimensioned: ", gstr);
- prefs.assoc_size = ndata;
- }
-
- if ((xindex = prefs.assoc_param[0]-1) >= ncol)
- error(EXIT_FAILURE, "*Error*: ASSOC_PARAMS #1 exceeds the number of ",
- "fields in the ASSOC file");
- if ((yindex = prefs.assoc_param[1]-1) >= ncol)
- error(EXIT_FAILURE, "*Error*: ASSOC_PARAMS #2 exceeds the number of ",
- "fields in the ASSOC file");
- if (prefs.nassoc_param>2)
- {
- if ((mindex = prefs.assoc_param[2]-1) >= ncol)
- error(EXIT_FAILURE,"*Error*: ASSOC_PARAMS #3 exceeds the number of ",
- "fields in the ASSOC file");
- }
- else
- {
- mindex = -1;
- prefs.assoc_type = ASSOC_FIRST;
- }
-
- nlist = ndata+3;
-
-/*---- Allocate memory for the ASSOC struct and the filtered list */
- QMALLOC(assoc, assocstruct, 1);
- ispoon = ASSOC_BUFINC/(nlist*sizeof(float));
- spoonsize = ispoon*nlist;
- QMALLOC(assoc->list, float, size = spoonsize);
- list = assoc->list;
- }
- else if (!(i%ispoon))
- {
- QREALLOC(assoc->list, float, size += spoonsize);
- list = assoc->list + i*nlist;
- }
-
- if (!(++i%1000))
- {
- sprintf(str2, "Reading input list... (%d objects)", i);
- NFPRINTF(OUTPUT, str2);
- }
-
-/*-- Read the data normally */
- *(list+2) = 0.0;
- for (sstr = str, j=0; j<ncol; j++)
- {
- val = (float)strtod(sstr, &sstr);
- if (j==xindex)
- *list = val;
- else if (j==yindex)
- *(list+1) = val;
- else if (j==mindex)
- *(list+2) = val;
- if (k=data[j])
- *(list+2+k) = val;
- }
- list += nlist;
- }
-
- fclose(file);
- free(data);
- QREALLOC(assoc->list, float, i*nlist);
- assoc->nobj = i;
- assoc->radius = prefs.assoc_radius;
- assoc->ndata = ndata;
- assoc->ncol = nlist;
-
- return assoc;
- }
-
-
-/********************************* init_assoc ********************************/
-/*
-Initialize the association procedure.
-*/
-void init_assoc(picstruct *field)
-
- {
- assocstruct *assoc;
-
-/* Load the assoc-list */
- if (!(assoc = field->assoc = load_assoc(prefs.assoc_name)))
- error(EXIT_FAILURE, "*Error*: Assoc-list file not found: ",
- prefs.assoc_name);
-
-/* Sort the assoc-list by y coordinates, and build the hash table */
- sort_assoc(field, assoc);
-
-/* Where data go for the current output pattern*/
- assoc->data = outobj2.assoc;
-
- return;
- }
-
-
-/********************************** end_assoc ********************************/
-/*
-Free memory related to the assoc operations.
-*/
-void end_assoc(picstruct *field)
-
- {
-/* Free the assoc-list */
- if (field->assoc)
- {
- free((field->assoc)->list);
- free((field->assoc)->hash);
- free(field->assoc);
- }
-
- return;
- }
-
-
-/********************************** do_assoc *********************************/
-/*
-Perform the association task for a source and return the number of IDs.
-*/
-int do_assoc(picstruct *field, float x, float y)
- {
- assocstruct *assoc;
- double aver;
- float dx,dy, dist, rad, rad2, comp, wparam,
- *list, *input, *data;
- int h, step, i, flag, iy, nobj;
-
- assoc = field->assoc;
-/* Need to initialize the array */
- memset(assoc->data, 0, prefs.assoc_size*sizeof(float));
- aver = 0.0;
-
- if (prefs.assoc_type == ASSOC_MIN || prefs.assoc_type == ASSOC_NEAREST)
- comp = BIG;
- else if (prefs.assoc_type == ASSOC_MAX)
- comp = -BIG;
-
- iy = (int)(y+0.499999);
- if (iy<0 || iy>=field->height)
- return 0;
-/* If there is already no candidate in hash table, no need to go further */
- if ((h=assoc->hash[iy])<0)
- return 0;
-/* Now loop over possible candidates */
- nobj = assoc->nobj;
- step = assoc->ncol;
- list = assoc->list + step*h;
- rad = assoc->radius;
- rad2 = rad*rad;
- for (flag = 0; (h++<nobj && *(list+1)-rad<y); list+=step)
- {
- dx = *list - x;
- dy = *(list+1) - y;
- if ((dist=dx*dx+dy*dy)<rad2)
- {
- flag++;
- input = list+3;
- if (prefs.assoc_type == ASSOC_FIRST)
- {
- memcpy(assoc->data, input, assoc->ndata*sizeof(float));
- return 1;
- }
- wparam = *(list+2);
- data = assoc->data;
- switch(prefs.assoc_type)
- {
- case ASSOC_NEAREST:
- if (dist<comp)
- {
- memcpy(data, input, assoc->ndata*sizeof(float));
- comp = dist;
- }
- break;
- case ASSOC_MEAN:
- aver += wparam;
- for (i=assoc->ndata; i--;)
- *(data++) += *(input++)*wparam;
- break;
- case ASSOC_MAGMEAN:
- wparam = fabs(wparam)<99.0?DEXP(-0.4*wparam): 0.0;
- aver += wparam;
- for (i=assoc->ndata; i--;)
- *(data++) += *(input++)*wparam;
- break;
- case ASSOC_SUM:
- for (i=assoc->ndata; i--;)
- *(data++) += *(input++);
- break;
- case ASSOC_MAGSUM:
- for (i=assoc->ndata; i--;)
- *(data++) += fabs(wparam=*(input++))<99.0? DEXP(-0.4*wparam):0.0;
- break;
- case ASSOC_MIN:
- if (wparam<comp)
- {
- memcpy(data, input, assoc->ndata*sizeof(float));
- comp = wparam;
- }
- break;
- case ASSOC_MAX:
- if (wparam>comp)
- {
- memcpy(data, input, assoc->ndata*sizeof(float));
- comp = wparam;
- }
- break;
- default:
- error(EXIT_FAILURE, "*Internal Error*: unknown ASSOC type in ",
- "pixlearn()");
- }
- }
- }
-
-/* No candidate found? exit! */
- if (!flag)
- return 0;
-
-/* Terminate the computation of the mean */
- if (prefs.assoc_type == ASSOC_MEAN || prefs.assoc_type == ASSOC_MAGMEAN)
- {
- if (aver<1e-30)
- return 0;
- data = assoc->data;
- for (i=assoc->ndata; i--;)
- *(data++) /= aver;
- }
-
- if (prefs.assoc_type == ASSOC_MAGSUM)
- {
- data = assoc->data;
- for (i=assoc->ndata; i--;)
- *(data++) = *data>0.0? -2.5*log10(*data):99.0;
- }
-
- return flag;
- }
-
diff --git a/external/sextractor/source/assoc.h b/external/sextractor/source/assoc.h
deleted file mode 100644
index fc39b13..0000000
--- a/external/sextractor/source/assoc.h
+++ /dev/null
@@ -1,41 +0,0 @@
- /*
- assoc.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Include file for assoc.c.
-*
-* Last modify: 25/06/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-
-#define ASSOC_BUFINC 65536 /* Assoc buffer increment (bytes) */
-
-/*--------------------------------- typedefs --------------------------------*/
-
-typedef struct structassoc
- {
- float *list; /* Pointer to the list of data */
- int nobj; /* Number of data rows */
- int ncol; /* Total number of columns per row */
- int ndata; /* Number of retained cols per row */
- int *hash; /* Pointer to the hash table */
- float *data; /* Copy of current parameters */
- float radius; /* Radius of search for association */
- } assocstruct;
-
-/*------------------------------ Prototypes ---------------------------------*/
-
-assocstruct *load_assoc(char *filename);
-
-int do_assoc(picstruct *field, float x, float y);
-
-void init_assoc(picstruct *field),
- end_assoc(picstruct *field),
- sort_assoc(picstruct *field, assocstruct *assoc);
diff --git a/external/sextractor/source/astrom.c b/external/sextractor/source/astrom.c
deleted file mode 100644
index 57c8f40..0000000
--- a/external/sextractor/source/astrom.c
+++ /dev/null
@@ -1,633 +0,0 @@
- /*
- astrom.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Astrometrical computations.
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <math.h>
-#include <stdlib.h>
-
-#include "wcs/wcs.h"
-#include "define.h"
-#include "globals.h"
-#include "astrom.h"
-
-
-/****************************** initastrom **********************************/
-/*
-Initialize astrometrical structures.
-*/
-void initastrom(picstruct *field)
-
- {
- astromstruct *as;
- double *lm;
- int l;
-
- as = field->astrom;
-
-/* Test if the WCS is in use */
- if (as->wcs_flag)
-/*-- ...Yes: launch the WCS stuff! */
- {
- QMALLOC(as->lin, struct linprm, 1);
- QMALLOC(as->cel, struct celprm, 1);
- QMALLOC(as->prj, struct prjprm, 1);
- QMALLOC(as->lin->cdelt, double, 2);
- QMALLOC(as->lin->crpix, double, 2);
- QMALLOC(as->lin->pc, double, 4);
- as->wcs->flag = as->lin->flag = as->cel->flag = as->prj->flag = 0;
- as->lin->naxis = as->naxis;
-
-/*-- linprm structure */
- for (l=0; l<2; l++)
- {
- as->lin->crpix[l] = as->crpix[l];
- as->lin->cdelt[l] = as->cdelt[l];
- as->cel->ref[l] = as->crval[l];
- }
- for (l=0; l<4; l++)
- as->lin->pc[l] = as->pc[l];
-
-/*-- celprm structure */
- as->cel->ref[2] = as->longpole;
- as->cel->ref[3] = as->latpole;
-
-/*-- prjprm structure */
- as->prj->r0 = 0.0;
- for (l=0; l<10; l++)
- as->prj->p[l] = as->projp[l];
-
-/*-- Compute an "average linear matrix" (at field center) */
- compute_wcs(field, (field->width+1)/2.0, (field->height+1)/2.0);
-
-/*---- Compute Pole coordinates in J2000 and/or B1950 for THETAs */
- if (FLAG(obj2.theta2000) || FLAG(obj2.theta1950)
- || FLAG(obj2.poserr_theta2000) || FLAG(obj2.poserr_theta1950))
- {
- if (fabs(as->equinox-2000.0)>0.003)
- precess(as->equinox, 0.0, 90.0, 2000.0, &as->ap2000, &as->dp2000);
- else
- {
- as->ap2000 = 0.0;
- as->dp2000 = 90.0;
- }
-
- if (FLAG(obj2.theta1950) || FLAG(obj2.poserr_theta1950))
- j2b(as->equinox, as->ap2000, as->dp2000, &as->ap1950, &as->dp1950);
- }
- }
- else
-/*-- ...No: compute only the determinant */
- {
-/*-- Simplify the original FITS PC matrix */
- lm = as->linmat;
- for (l=0; l<4; l++)
- lm[l] = as->pc[l]*as->cdelt[l%2];
- if ((as->lindet = lm[0]*lm[3] - lm[1]*lm[2]) == 0.0)
- warning ("Null determinant in the global distortion matrix:\n",
- " Some WORLD-parameters will be incorrect");
- }
-
-/* Override astrometric definitions only if user supplies a pixel-scale */
- if (prefs.pixel_scale == 0.0)
- {
- as->pixscale = sqrt(fabs(as->lindet));
- field->pixscale = 3600.0*as->pixscale; /* in arcsec2 */
- }
- else
- as->pixscale = (field->pixscale=prefs.pixel_scale)/3600.0;
-
- return;
- }
-
-
-/**************************** computeastrom *********************************/
-/*
-Compute real WORLD coordinates and dimensions according to FITS info.
-*/
-void computeastrom(picstruct *field, objstruct *obj)
-
- {
- astromstruct *as;
- double *lm, *wcspos;
-
- as = field->astrom;
- lm = as->linmat;
-
-/* If working with WCS, compute WORLD coordinates and local matrix */
- if (as->wcs_flag)
- {
- wcspos = compute_wcs(field, obj2->posx, obj2->posy);
- obj2->alphas = obj2->mxw = wcspos[0];
- obj2->deltas = obj2->myw = wcspos[1];
- if (FLAG(obj2.alpha2000))
- {
- if (fabs(as->equinox-2000.0)>0.003)
- precess(as->equinox, wcspos[0], wcspos[1],
- 2000.0, &obj2->alpha2000, &obj2->delta2000);
- else
- {
- obj2->alpha2000 = obj2->mxw;
- obj2->delta2000 = obj2->myw;
- }
- if (FLAG(obj2.alpha1950))
- j2b(as->equinox, obj2->alpha2000, obj2->delta2000,
- &obj2->alpha1950, &obj2->delta1950);
- }
- }
- else if (FLAG(obj2.mxw))
- {
- double dx,dy;
-
- dx = obj2->posx - as->crpix[0];
- dy = obj2->posy - as->crpix[1];
- obj2->mxw = as->crval[0]+ lm[0]*dx + lm[1]*dy; /* CDELT included! */
- obj2->myw = as->crval[1]+ lm[2]*dx + lm[3]*dy; /* CDELT included! */
- }
-
-/* Iden for peak-flux positions */
- if (as->wcs_flag)
- {
- wcspos = compute_wcs(field, (double)obj->peakx, (double)obj->peaky);
- obj2->peakalphas = obj2->peakxw = wcspos[0];
- obj2->peakdeltas = obj2->peakyw = wcspos[1];
- if (FLAG(obj2.peakalpha2000))
- {
- if (fabs(as->equinox-2000.0)>0.003)
- precess(as->equinox, wcspos[0], wcspos[1],
- 2000.0, &obj2->peakalpha2000, &obj2->peakdelta2000);
- else
- {
- obj2->peakalpha2000 = obj2->peakxw;
- obj2->peakdelta2000 = obj2->peakyw;
- }
- if (FLAG(obj2.peakalpha1950))
- j2b(as->equinox, obj2->peakalpha2000, obj2->peakdelta2000,
- &obj2->peakalpha1950, &obj2->peakdelta1950);
- }
- }
- else if (FLAG(obj2.peakxw))
- {
- double dx,dy;
-
- dx = obj->peakx - as->crpix[0];
- dy = obj->peaky - as->crpix[1];
- obj2->peakxw = as->crval[0]+ lm[0]*dx + lm[1]*dy; /* CDELT included! */
- obj2->peakyw = as->crval[1]+ lm[2]*dx + lm[3]*dy; /* CDELT included! */
- }
-
-/* Custom coordinate system for the MAMA machine */
- if (FLAG(obj2.mamaposx))
- {
- double dx,dy;
-
- dx = obj2->posx - 0.5;
- dy = obj2->posy - 0.5;
- obj2->mamaposx = (as->crval[1]+lm[2]*dx+lm[3]*dy)
- *(prefs.mama_corflex+1.0); /* CDELT included! */
- obj2->mamaposy = (as->crval[0]+lm[0]*dx+lm[1]*dy); /* CDELT included! */
- }
-
-/* Express shape parameters in WORLD frame */
- if (FLAG(obj2.mx2w))
- astrom_shapeparam(field, obj);
-
-/* Express position error parameters in WORLD frame */
- if (FLAG(obj2.poserr_mx2w))
- astrom_errparam(field, obj);
-
- if (FLAG(obj2.npixw))
- obj2->npixw = obj->npix*as->pixscale*as->pixscale;
- if (FLAG(obj2.fdnpixw))
- obj2->fdnpixw = obj->fdnpix*as->pixscale*as->pixscale;
-
- if (FLAG(obj2.fwhmw))
- obj2->fwhmw = obj->fwhm*as->pixscale;
-
- return;
- }
-
-
-/****************************** compute_wcs *********************************/
-/*
-Compute real WORLD coordinates and local distortion matrix according to the
-WCS info.
-*/
-double *compute_wcs(picstruct *field, double mx, double my)
-
- {
- astromstruct *as;
- static double pixpos[2], wcspos[2],wcspos0[2], imgcrd[2], phi,theta;
- double *lm, al,da,de,cde;
- int rcode;
-
- as = field->astrom;
- lm = as->linmat;
-
- pixpos[0] = mx;
- pixpos[1] = my;
-
- if (rcode=wcsrev((const char(*)[9])as->ctype, as->wcs, pixpos, as->lin,
- imgcrd, as->prj, &phi, &theta, as->crval, as->cel, wcspos0))
- error(EXIT_FAILURE, "*Error* in WCSlib: ", (char *)wcsrev_errmsg[rcode]);
-
-/* Compute the local distortion matrix */
- al = wcspos0[0];
- de = wcspos0[1];
-
-/* Get world coordinates for vector 1,0 */
- pixpos[0] = mx + 1;
- pixpos[1] = my;
- if (rcode=wcsrev((const char(*)[9])as->ctype, as->wcs, pixpos, as->lin,
- imgcrd, as->prj, &phi, &theta, as->crval, as->cel, wcspos))
- error(EXIT_FAILURE, "*Error* in WCSlib: ", (char *)wcsrev_errmsg[rcode]);
-
- da = wcspos[0]-al;
- if (da>180.0)
- da -= 360.0;
- else if (da<-180.0)
- da += 360.0;
-
- lm[0] = da*(cde=cos(de*DEG));
- lm[1] = wcspos[1] - de;
-
-/* Get world coordinates for vector 0,1 */
-/* Second one */
- pixpos[0] = mx;
- pixpos[1] = my + 1;
- if (rcode=wcsrev((const char(*)[9])as->ctype, as->wcs, pixpos, as->lin,
- imgcrd, as->prj, &phi, &theta, as->crval, as->cel, wcspos))
- error(EXIT_FAILURE, "*Error* in WCSlib: ", (char *)wcsrev_errmsg[rcode]);
-
- da = wcspos[0]-al;
- if (da>180.0)
- da -= 360.0;
- else if (da<-180.0)
- da += 360.0;
-
- lm[2] = da*cde;
- lm[3] = wcspos[1] - de;
-
- as->lindet = lm[0]*lm[3] - lm[1]*lm[2];
- if (as->lindet == 0.0)
- warning ("Null determinant in the local distortion matrix:\n",
- " Some WORLD-parameters will be incorrect");
-
- if (prefs.pixel_scale == 0.0)
- as->pixscale = sqrt(fabs(as->lindet));
-
- return wcspos0;
- }
-
-
-/****************************** astrom_shapeparam ****************************/
-/*
-Compute shape parameters in WORLD and SKY coordinates.
-*/
-void astrom_shapeparam(picstruct *field, objstruct *obj)
- {
- astromstruct *as;
- double *lm,
- dx2,dy2,dxy, xm2,ym2,xym, temp,pm2;
-
- as = field->astrom;
- lm = as->linmat;
-
-/* All WORLD params based on 2nd order moments have to pass through here */
- dx2 = obj->mx2;
- dy2 = obj->my2;
- dxy = obj->mxy;
- obj2->mx2w = xm2 = lm[0]*lm[0]*dx2 + lm[1]*lm[1]*dy2 + lm[0]*lm[1]*dxy;
- obj2->my2w = ym2 = lm[2]*lm[2]*dx2 + lm[3]*lm[3]*dy2 + lm[2]*lm[3]*dxy;
- obj2->mxyw = xym = lm[0]*lm[2]*dx2 + lm[1]*lm[3]*dy2
- + (lm[0]*lm[3]+lm[1]*lm[2])*dxy;
- temp=xm2-ym2;
- if (FLAG(obj2.thetaw))
- {
- obj2->thetaw = (temp == 0.0)? (45.0) : (0.5*atan2(2.0 * xym,temp)/DEG);
- if (as->wcs_flag && FLAG(obj2.thetas))
- obj2->thetas = obj2->thetaw + (obj2->thetaw>0.0?-90:90.0);
-
-/*-- Compute position angles in J2000 or B1950 reference frame */
- if (as->wcs_flag)
- {
- double da,dd;
-
- if (FLAG(obj2.theta2000))
- {
- da = as->ap2000 - obj2->alpha2000;
- dd = (sin(as->dp2000*DEG)
- -sin(obj2->delta2000*DEG)*sin(obj2->deltas*DEG))
- /(cos(obj2->delta2000*DEG)*cos(obj2->deltas*DEG));
- dd = dd<1.0? (dd>-1.0?acos(dd)/DEG:180.0) : 0.0;
- obj2->theta2000 = obj2->thetas
- + (((da>0.0 && da<180.0) || da<-180.0)?-dd:dd);
- }
-
- if (FLAG(obj2.theta1950))
- {
- da = as->ap1950 - obj2->alpha1950;
- dd = (sin(as->dp1950*DEG)
- -sin(obj2->delta1950*DEG)*sin(obj2->deltas*DEG))
- /(cos(obj2->delta1950*DEG)*cos(obj2->deltas*DEG));
- dd = dd<1.0? (dd>-1.0?acos(dd)/DEG:180.0) : 0.0;
- obj2->theta1950 = obj2->thetas
- + (((da>0.0 && da<180.0) || da<-180.0)?-dd:dd);
- }
- }
- }
-
- if (FLAG(obj2.aw))
- {
- temp = sqrt(0.25*temp*temp+xym*xym);
- pm2 = 0.5*(xm2+ym2);
- obj2->aw = (float)sqrt(pm2+temp);
- obj2->bw = (float)sqrt(pm2-temp);
- }
-
- if (FLAG(obj2.cxxw))
- {
-/*-- Handle large, fully correlated profiles (can cause a singularity...) */
- if ((temp=xm2*ym2-xym*xym)<1e-6)
- {
- temp = 1e-6;
- xym *= 0.99999;
- }
- obj2->cxxw = (float)(ym2/temp);
- obj2->cyyw = (float)(xm2/temp);
- obj2->cxyw = (float)(-2*xym/temp);
- }
-
- return;
- }
-
-
-/******************************* astrom_errparam *****************************/
-/*
-Compute error ellipse parameters in WORLD and SKY coordinates.
-*/
-void astrom_errparam(picstruct *field, objstruct *obj)
- {
- astromstruct *as;
- double *lm,
- dx2,dy2,dxy, xm2,ym2,xym, temp,pm2;
-
- as = field->astrom;
- lm = as->linmat;
-
-/* All WORLD params based on 2nd order moments have to pass through here */
- dx2 = obj->poserr_mx2;
- dy2 = obj->poserr_my2;
- dxy = obj->poserr_mxy;
- obj2->poserr_mx2w = xm2 = lm[0]*lm[0]*dx2+lm[1]*lm[1]*dy2+lm[0]*lm[1]*dxy;
- obj2->poserr_my2w = ym2 = lm[2]*lm[2]*dx2+lm[3]*lm[3]*dy2+lm[2]*lm[3]*dxy;
- obj2->poserr_mxyw = xym = lm[0]*lm[2]*dx2+lm[1]*lm[3]*dy2
- + (lm[0]*lm[3]+lm[1]*lm[2])*dxy;
- temp=xm2-ym2;
- if (FLAG(obj2.poserr_thetaw))
- {
- obj2->poserr_thetaw = (temp==0.0)? (45.0):(0.5*atan2(2.0*xym,temp)/DEG);
- if (as->wcs_flag && FLAG(obj2.poserr_thetas))
- obj2->poserr_thetas = obj2->poserr_thetaw
- + (obj2->poserr_thetaw>0.0? -90:90.0);
-
-/*-- Compute position angles in J2000 or B1950 reference frame */
- if (as->wcs_flag)
- {
- double da,dd;
-
- if (FLAG(obj2.poserr_theta2000))
- {
- da = as->ap2000 - obj2->alpha2000;
- dd = (sin(as->dp2000*DEG)
- -sin(obj2->delta2000*DEG)*sin(obj2->deltas*DEG))
- /(cos(obj2->delta2000*DEG)*cos(obj2->deltas*DEG));
- dd = dd<1.0? (dd>-1.0?acos(dd)/DEG:180.0) : 0.0;
- obj2->poserr_theta2000 = obj2->poserr_thetas
- + (((da>0.0 && da<180.0) || da<-180.0)?-dd:dd);
- }
-
- if (FLAG(obj2.poserr_theta1950))
- {
- da = as->ap1950 - obj2->alpha1950;
- dd = (sin(as->dp1950*DEG)
- -sin(obj2->delta1950*DEG)*sin(obj2->deltas*DEG))
- /(cos(obj2->delta1950*DEG)*cos(obj2->deltas*DEG));
- dd = dd<1.0? (dd>-1.0?acos(dd)/DEG:180.0) : 0.0;
- obj2->poserr_theta1950 = obj2->poserr_thetas
- + (((da>0.0 && da<180.0) || da<-180.0)?-dd:dd);
- }
- }
- }
-
- if (FLAG(obj2.poserr_aw))
- {
- temp = sqrt(0.25*temp*temp+xym*xym);
- pm2 = 0.5*(xm2+ym2);
- obj2->poserr_aw = (float)sqrt(pm2+temp);
- obj2->poserr_bw = (float)sqrt(pm2-temp);
- }
-
- if (FLAG(obj2.poserr_cxxw))
- {
-/*-- Handle large, fully correlated profiles (can cause a singularity...) */
- if ((temp=xm2*ym2-xym*xym)<1e-6)
- {
- temp = 1e-6;
- xym *= 0.99999;
- }
- obj2->poserr_cxxw = (float)(ym2/temp);
- obj2->poserr_cyyw = (float)(xm2/temp);
- obj2->poserr_cxyw = (float)(-2*xym/temp);
- }
-
- return;
- }
-
-
-/******************************* copyastrom *********************************/
-/*
-Copy astrometrical structures.
-*/
-void copyastrom(picstruct *infield, picstruct *outfield)
-
- {
- astromstruct *inas, *outas;
-
- if (infield->astrom)
- {
- QMEMCPY(infield->astrom, outfield->astrom, astromstruct, 1);
- inas = infield->astrom;
- outas = outfield->astrom;
- if (inas->wcs_flag)
- {
- QMEMCPY(inas->wcs, outas->wcs, struct wcsprm, 1);
- QMEMCPY(inas->lin, outas->lin, struct linprm, 1);
- QMEMCPY(inas->cel, outas->cel, struct celprm, 1);
- QMEMCPY(inas->prj, outas->prj, struct prjprm, 1);
- QMEMCPY(inas->lin->cdelt, outas->lin->cdelt, double, 2);
- QMEMCPY(inas->lin->crpix, outas->lin->crpix, double, 2);
- QMEMCPY(inas->lin->pc, outas->lin->pc, double, 4);
- }
- }
-
- return;
- }
-
-
-/******************************* endastrom ***********************************/
-/*
-Free astrometrical structures.
-*/
-void endastrom(picstruct *field)
-
- {
- astromstruct *as;
-
- as = field->astrom;
- if (as->wcs_flag)
- {
- free(as->lin->cdelt);
- free(as->lin->crpix);
- free(as->lin->pc);
- free(as->wcs);
- free(as->lin);
- free(as->cel);
- free(as->prj);
- }
-
- free(as);
-
- return;
- }
-
-
-/********************************* precess ***********************************/
-/*
-precess equatorial coordinates according to the equinox (from Ephemerides du
-Bureau des Longitudes 1992). Epoch for coordinates should be J2000
-(FK5 system).
-*/
-void precess(double yearin, double alphain, double deltain,
- double yearout, double *alphaout, double *deltaout)
-
- {
- double dzeta,theta,z, t1,t1t1, t2,t2t2,t2t2t2,
- cddsadz, cddcadz, cdd, sdd, adz, cdin,sdin,ct,st,caindz;
-
- alphain *= DEG;
- deltain *= DEG;
-
- t1 = (yearin - 2000.0)/1000.0;
- t2 = (yearout - yearin)/1000.0;
- t1t1 = t1*t1;
- t2t2t2 = (t2t2 = t2*t2)*t2;
- theta = (97171.735e-06 - 413.691e-06*t1 - 1.052e-06 * t1t1) * t2
- + (-206.846e-06 - 1.052e-06*t1) * t2t2 - 202.812e-06 * t2t2t2;
- dzeta = (111808.609e-06 + 677.071e-06*t1 - 0.674e-06 * t1t1) * t2
- + (146.356e-06 - 1.673e-06*t1) * t2t2 + 87.257e-06 * t2t2t2;
- z = (111808.609e-06 +677.071e-06*t1 - 0.674e-06 * t1t1) * t2
- + (530.716e-06 + 0.320e-06*t1) * t2t2 + 88.251e-06 * t2t2t2;
- cddsadz = (cdin=cos(deltain)) * sin(alphain+dzeta);
- cddcadz = -(sdin=sin(deltain))*(st=sin(theta))
- +cdin*(ct=cos(theta))*(caindz=cos(alphain+dzeta));
- sdd = sdin*ct + cdin*st*caindz;
- cdd = cos(*deltaout = asin(sdd));
- adz = asin(cddsadz/cdd);
- if (cddcadz<0.0)
- adz = PI - adz;
- if (adz<0.0)
- adz += 2.0*PI;
- adz += z;
- *alphaout = adz/DEG;
- *deltaout /= DEG;
-
- return;
- }
-
-
-/*********************************** j2b *************************************/
-/*
-conver equatorial coordinates from equinox and epoch J2000 to equinox and
-epoch B1950 for extragalactic sources (from Aoki et al. 1983, after
-inversion of their matrix and some custom arrangements).
-*/
-void j2b(double yearobs, double alphain, double deltain,
- double *alphaout, double *deltaout)
- {
- int i,j;
- static double a[3] = {-1.62557e-6, -0.31919e-6, -0.13843e-6},
- ap[3] = {1.245e-3, -1.580e-3, -0.659e-3},
- m[6][6] = {
- { 0.9999256794678425, 0.01118148281196562, 0.004859003848996022,
- -2.423898417033081e-06,-2.710547600126671e-08,-1.177738063266745e-08},
- {-0.01118148272969232, 0.9999374849247641, -2.717708936468247e-05,
- 2.710547578707874e-08,-2.423927042585208e-06, 6.588254898401055e-11},
- {-0.00485900399622881, -2.715579322970546e-05, 0.999988194643078,
- 1.177738102358923e-08, 6.582788892816657e-11,-2.424049920613325e-06},
- {-0.0005508458576414713, 0.2384844384742432, -0.4356144527773499,
- 0.9999043171308133, 0.01118145410120206, 0.004858518651645554},
- {-0.2385354433560954, -0.002664266996872802, 0.01225282765749546,
- -0.01118145417187502, 0.9999161290795875, -2.717034576263522e-05},
- { 0.4357269351676567, -0.008536768476441086, 0.002113420799663768,
- -0.004858518477064975, -2.715994547222661e-05, 0.9999668385070383}},
- a1[3], r[3], ro[3], r1[3], r2[3], v1[3], v[3];
- static double cai, sai, cdi, sdi, dotp, rmod, alpha, delta, t1;
-
-/* Convert Julian years from J2000.0 to tropic centuries from B1950.0 */
- t1 = ((yearobs - 2000.0) + (MJD2000 - MJD1950)/365.25)*JU2TROP/100.0;
- alphain *= DEG;
- deltain *= DEG;
- cai = cos(alphain);
- sai = sin(alphain);
- cdi = cos(deltain);
- sdi = sin(deltain);
- r[0] = cdi*cai;
- r[1] = cdi*sai;
- r[2] = sdi;
- for (i=0; i<3; i++)
- v[i] = r2[i] = v1[i] = 0.0;
- for (j=0; j<6; j++)
- for (i=0; i<6; i++)
- if (j<3)
- r2[j] += m[j][i]*(i<3?r[i]:v[i-3]);
- else
- v1[j-3] += m[j][i]*(i<3?r[i]:v[i-3]);
-
- for (i=0; i<3; i++)
- r1[i] = r2[i]+v1[i]*ARCSEC*t1;
-
- dotp = 0.0;
- for (i=0; i<3; i++)
- {
- a1[i] = a[i]+ap[i]*ARCSEC*t1;
- dotp += a1[i]*(r1[i]+a1[i]);
- }
- dotp = 2.0/(sqrt(1+4.0*dotp)+1.0);
- rmod = 0.0;
- for (i=0; i<3; i++)
- {
- ro[i] = dotp*(r1[i]+a1[i]);
- rmod += ro[i]*ro[i];
- }
- rmod = sqrt(rmod);
- delta = asin(ro[2]/rmod);
- alpha = acos(ro[0]/cos(delta)/rmod);
- if (ro[1]<0)
- alpha = 2.0*PI - alpha;
- *alphaout = alpha/DEG;
- *deltaout = delta/DEG;
-
- return;
- }
-
diff --git a/external/sextractor/source/astrom.h b/external/sextractor/source/astrom.h
deleted file mode 100644
index 464169e..0000000
--- a/external/sextractor/source/astrom.h
+++ /dev/null
@@ -1,63 +0,0 @@
- /*
- astrom.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Astrometrical stuff.
-*
-* Last modify: 01/06/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define DEG (PI/180.0) /* 1 deg in radians */
-#define ARCSEC (DEG/3600.0) /* 1 arcsec in radians */
-#define MJD2000 51544.50000 /* Modified Julian date for J2000.0 */
-#define MJD1950 33281.92346 /* Modified Julian date for B1950.0 */
-#define JU2TROP 1.0000214 /* 1 Julian century in tropical units*/
-
-/*------------------------------- structures --------------------------------*/
-
-typedef struct structastrom
- {
- int naxis; /* Number of image axes */
- char ctype[2][9]; /* FITS CTYPE strings */
- char cunit[2][32]; /* FITS CUNIT strings */
- double crval[2]; /* FITS CRVAL parameters */
- double cdelt[2]; /* FITS CDELT parameters */
- double crpix[2]; /* FITS CRPIX parameters */
- double projp[10]; /* FITS PROJP parameters */
- double longpole,latpole; /* FITS LONGPOLE and LATPOLE */
- double pc[4]; /* FITS PC matrix */
- double linmat[4]; /* Local linear mapping matrix */
- double lindet; /* Determinant of the local matrix */
- double pixscale; /* (Local) pixel scale */
- double ap2000,dp2000; /* J2000 coordinates of pole */
- double ap1950,dp1950; /* B1950 coordinates of pole */
- double equinox; /* Equinox of observations */
- enum {RDSYS_FK5, RDSYS_FK4, RDSYS_FK4_NO_E, RDSYS_GAPPT}
- radecsys; /* FITS RADECSYS reference frame */
- int wcs_flag; /* WCSLIB: can it be used? */
- struct wcsprm *wcs; /* WCSLIB's wcsprm structure */
- struct linprm *lin; /* WCSLIB's linprm structure */
- struct celprm *cel; /* WCSLIB's celprm structure */
- struct prjprm *prj; /* WCSLIB's prjprm structure */
- } astromstruct;
-
-/*------------------------------- functions ---------------------------------*/
-extern void astrom_errparam(picstruct *, objstruct *),
- astrom_shapeparam(picstruct *, objstruct *),
- computeastrom(picstruct *, objstruct *),
- copyastrom(picstruct *infield, picstruct *outfield),
- endastrom(picstruct *),
- initastrom(picstruct *),
- j2b(double, double, double, double *, double *),
- precess(double,double,double,double,double *,double *);
-
-extern double *compute_wcs(picstruct *, double, double);
diff --git a/external/sextractor/source/back.c b/external/sextractor/source/back.c
deleted file mode 100644
index 0b91be3..0000000
--- a/external/sextractor/source/back.c
+++ /dev/null
@@ -1,1286 +0,0 @@
- /*
- back.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: functions dealing with background computation.
-*
-* Last modify: 03/02/2000
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "back.h"
-#include "field.h"
-#include "weight.h"
-
-/******************************** makeback ***********************************/
-/*
-Background maps are established from the images themselves; thus we need to
-make at least one first pass through the data.
-*/
-void makeback(picstruct *field, picstruct *wfield)
-
- {
- backstruct *backmesh,*wbackmesh, *bm,*wbm;
- PIXTYPE *buf,*wbuf, *buft,*wbuft, *bufpos;
- size_t fcurpos,wfcurpos, wfcurpos2,fcurpos2, bufsize, bufsize2,
- bufshift, size,meshsize,jumpsize;
- int i,j,k,m,n, bin, step, nlines,
- lastbite, w,bw,bwx, bh, nx,ny,nb, x,y,h, offset, nlevels,
- lflag, nr;
- float *ratio,*ratiop, *weight, *sigma,
- qscale, cste, sratio;
-
-/* If the weight-map is not an external one, no stats are needed for it */
- if (wfield && wfield->flags&(INTERP_FIELD|BACKRMS_FIELD))
- wfield= NULL;
-
- w = field->width;
- bw = field->backw;
- bh = field->backh;
- nx = field->nbackx;
- ny = field->nbacky;
- nb = field->nback;
-
- NFPRINTF(OUTPUT, "Setting up background maps");
-
-/* Decide if it is worth displaying progress each 16 lines */
-
- lflag = (field->width*field->backh >= (size_t)65536);
-
-/* Save current positions in files */
-
- QFTELL(fcurpos, field->file, field->filename);
- if (wfield)
- QFTELL(wfcurpos, wfield->file, wfield->filename);
-
-/* Allocate a correct amount of memory to store pixels */
-
- bufsize = (size_t)w*bh;
- meshsize = bufsize;
- nlines = 0;
- if (bufsize > (size_t)BACK_BUFSIZE)
- {
- nlines = BACK_BUFSIZE/w;
- step = (field->backh-1)/nlines+1;
- bufsize = (size_t)(nlines = field->backh/step)*w;
- bufshift = (step/2)*(size_t)w;
- jumpsize = (step-1)*(size_t)w;
- }
-
-/* Allocate some memory */
- QMALLOC(backmesh, backstruct, nx); /* background information */
- QMALLOC(buf, PIXTYPE, bufsize); /* pixel buffer */
- free(field->back);
- QMALLOC(field->back, float, nb); /* background map */
- free(field->backline);
- QMALLOC(field->backline, PIXTYPE, w); /* current background line */
- free(field->sigma);
- QMALLOC(field->sigma, float, nb); /* sigma map */
- if (wfield)
- {
- QMALLOC(wbackmesh, backstruct, nx); /* background information */
- QMALLOC(wbuf, PIXTYPE, bufsize); /* pixel buffer */
- free(wfield->back);
- QMALLOC(wfield->back, float, nb); /* background map */
- free(wfield->backline);
- QMALLOC(wfield->backline, PIXTYPE, w); /* current background line */
- free(wfield->sigma);
- QMALLOC(wfield->sigma, float, nb); /* sigma map */
- wfield->sigfac = 1.0;
- }
- else
- {
- wbackmesh = NULL;
- wbuf = NULL;
- }
-
-/* Loop over the data packets */
-
- for (j=0; j<ny; j++)
- {
- if (lflag && j)
- NPRINTF(OUTPUT, "\33[1M> Setting up background map at line:%5d\n\33[1A",
- j*bh);
- if (!nlines)
- {
-/*---- The image is small enough so that we can make exhaustive stats */
- if (j == ny-1 && field->npix%bufsize)
- bufsize = field->npix%bufsize;
- readdata(field, buf, bufsize);
- if (wfield)
- {
- readdata(wfield, wbuf, bufsize);
- weight_to_var(wfield, wbuf, bufsize);
- }
-/*---- Build the histograms */
- backstat(backmesh, wbackmesh, buf, wbuf, bufsize,nx, w, bw,
- wfield?wfield->weight_thresh:0.0);
- bm = backmesh;
- for (m=nx; m--; bm++)
- if (bm->mean <= -BIG)
- bm->histo=NULL;
- else
- QCALLOC(bm->histo, LONG, bm->nlevels);
- if (wfield)
- {
- wbm = wbackmesh;
- for (m=nx; m--; wbm++)
- if (wbm->mean <= -BIG)
- wbm->histo=NULL;
- else
- QCALLOC(wbm->histo, LONG, wbm->nlevels);
- }
- backhisto(backmesh, wbackmesh, buf, wbuf, bufsize,nx, w, bw,
- wfield?wfield->weight_thresh:0.0);
- }
- else
- {
-/*---- Image size too big, we have to skip a few data !*/
- QFTELL(fcurpos2, field->file, field->filename);
- if (wfield)
- QFTELL(wfcurpos2, wfield->file, wfield->filename);
- if (j == ny-1 && (n=field->height%field->backh))
- {
- meshsize = n*(size_t)w;
- nlines = BACK_BUFSIZE/w;
- step = (n-1)/nlines+1;
- bufsize = (nlines = n/step)*(size_t)w;
- bufshift = (step/2)*(size_t)w;
- jumpsize = (step-1)*(size_t)w;
- free(buf);
- QMALLOC(buf, PIXTYPE, bufsize); /* pixel buffer */
- if (wfield)
- {
- free(wbuf);
- QMALLOC(wbuf, PIXTYPE, bufsize); /* pixel buffer */
- }
- }
-
-/*---- Read and skip, read and skip, etc... */
- QFSEEK(field->file, bufshift*field->bytepix, SEEK_CUR, field->filename);
- buft = buf;
- for (i=nlines; i--; buft += w)
- {
- readdata(field, buft, w);
- if (i)
- QFSEEK(field->file, jumpsize*field->bytepix, SEEK_CUR,
- field->filename);
- }
-
- if (wfield)
- {
-/*------ Read and skip, read and skip, etc... now on the weight-map */
- QFSEEK(wfield->file,bufshift*wfield->bytepix, SEEK_CUR,
- wfield->filename);
- wbuft = wbuf;
- for (i=nlines; i--; wbuft += w)
- {
- readdata(wfield, wbuft, w);
- weight_to_var(wfield, wbuft, w);
- if (i)
- QFSEEK(wfield->file, jumpsize*wfield->bytepix, SEEK_CUR,
- wfield->filename);
- }
- }
- backstat(backmesh, wbackmesh, buf, wbuf, bufsize, nx, w, bw,
- wfield?wfield->weight_thresh:0.0);
- QFSEEK(field->file, fcurpos2, SEEK_SET, field->filename);
- bm = backmesh;
- for (m=nx; m--; bm++)
- QCALLOC(bm->histo, LONG, bm->nlevels);
- if (wfield)
- {
- QFSEEK(wfield->file, wfcurpos2, SEEK_SET, wfield->filename);
- wbm = wbackmesh;
- for (m=nx; m--; wbm++)
- QCALLOC(wbm->histo, LONG, wbm->nlevels);
- }
-/*---- Build (progressively this time) the histograms */
- for(size=meshsize, bufsize2=bufsize; size>0; size -= bufsize2)
- {
- if (bufsize2>size)
- bufsize2 = size;
- readdata(field, buf, bufsize2);
- if (wfield)
- {
- readdata(wfield, wbuf, bufsize2);
- weight_to_var(wfield, wbuf, bufsize2);
- }
- backhisto(backmesh, wbackmesh, buf, wbuf, bufsize2, nx, w, bw,
- wfield?wfield->weight_thresh:0.0);
- }
- }
-
- /*-- Compute background statistics from the histograms */
- bm = backmesh;
- for (m=0; m<nx; m++, bm++)
- {
- k = m+nx*j;
- backguess(bm, field->back+k, field->sigma+k);
- free(bm->histo);
- }
- if (wfield)
- {
- wbm = wbackmesh;
- for (m=0; m<nx; m++, wbm++)
- {
- k = m+nx*j;
- backguess(wbm, wfield->back+k, wfield->sigma+k);
- free(wbm->histo);
- }
- }
- }
-
-/* Free memory */
- free(buf);
- free(backmesh);
- if (wfield)
- {
- free(wbackmesh);
- free(wbuf);
- }
-
-/* Go back to the original position */
- QFSEEK(field->file, fcurpos, SEEK_SET, field->filename);
- if (wfield)
- QFSEEK(wfield->file, wfcurpos, SEEK_SET, wfield->filename);
-
-/* Median-filter and check suitability of the background map */
- NFPRINTF(OUTPUT, "Filtering background map(s)");
- filterback(field);
- if (wfield)
- filterback(wfield);
-
-/* Compute normalization for variance- or weight-maps*/
- if (wfield && wfield->flags&(VAR_FIELD|WEIGHT_FIELD))
- {
- nr = 0;
- QMALLOC(ratio, float, wfield->nback);
- ratiop = ratio;
- weight = wfield->back;
- sigma = field->sigma;
- for (i=wfield->nback; i--; sigma++)
- if ((sratio=*(weight++)) > 0.0
- && (sratio = *sigma/sqrt(sratio)) > 0.0)
- {
- *(ratiop++) = sratio;
- nr++;
- }
- wfield->sigfac = hmedian(ratio, nr);
- for (i=0; i<nr && ratio[i]<=0.0; i++);
- if (i<nr)
- wfield->sigfac = hmedian(ratio+i, nr-i);
- else
- {
- warning("Null or negative global weighting factor:","defaulted to 1");
- wfield->sigfac = 1.0;
- }
-
- free(ratio);
- }
-
-/* Compute 2nd derivatives along the y-direction */
- NFPRINTF(OUTPUT, "Computing backgound d-map");
- free(field->dback);
- field->dback = makebackspline(field, field->back);
- NFPRINTF(OUTPUT, "Computing backgound-noise d-map");
- free(field->dsigma);
- field->dsigma = makebackspline(field, field->sigma);
-/* If asked for, force the backmean parameter to the supplied value */
- if (field->back_type == BACK_ABSOLUTE)
- field->backmean = (float)prefs.back_val[(field->flags&DETECT_FIELD)?0:1];
-
-/* Set detection/measurement threshold */
- if (prefs.ndthresh > 1)
- {
- double dval;
-
- if (fabs(dval=prefs.dthresh[0] - prefs.dthresh[1])> 70.0)
- error(EXIT_FAILURE,
- "*Error*: I cannot deal with such extreme thresholds!", "");
-
- field->dthresh = field->pixscale*field->pixscale*pow(10.0, -0.4*dval);
- }
- else if (prefs.thresh_type[0]==THRESH_ABSOLUTE)
- field->dthresh = prefs.dthresh[0];
- else
- field->dthresh = prefs.dthresh[0]*field->backsig;
- if (prefs.nthresh > 1)
- {
- double dval;
-
- if (fabs(dval=prefs.thresh[0] - prefs.thresh[1]) > 70.0)
- error(EXIT_FAILURE,
- "*Error*: I cannot deal with such extreme thresholds!", "");
-
- field->thresh = field->pixscale*field->pixscale*pow(10.0, -0.4*dval);
- }
- else if (prefs.thresh_type[1]==THRESH_ABSOLUTE)
- field->thresh = prefs.thresh[0];
- else
- field->thresh = prefs.thresh[0]*field->backsig;
-
-#ifdef QUALITY_CHECK
- printf("%-10g %-10g %-10g\n", field->backmean, field->backsig,
- (field->flags & DETECT_FIELD)? field->dthresh : field->thresh);
-#endif
- if (field->dthresh<=0.0 || field->thresh<=0.0)
- error(EXIT_FAILURE,
- "*Error*: I cannot deal with zero or negative thresholds!", "");
-
- if (prefs.detect_type == PHOTO
- && field->backmean+3*field->backsig > 50*field->ngamma)
- error(EXIT_FAILURE,
- "*Error*: The density range of this image is too large for ",
- "PHOTO mode");
-
- return;
- }
-
-
-/******************************** backstat **********************************/
-/*
-Compute robust statistical estimators in a row of meshes.
-*/
-void backstat(backstruct *backmesh, backstruct *wbackmesh,
- PIXTYPE *buf, PIXTYPE *wbuf, size_t bufsize,
- int n, int w, int bw, PIXTYPE wthresh)
-
- {
- backstruct *bm, *wbm;
- double pix,wpix, sig, mean,wmean, sigma,wsigma, step;
- PIXTYPE *buft,*wbuft, *bufpos, lcut,wlcut, hcut,whcut;
- int m,h,x,y, npix,wnpix, offset, lastbite, ngood;
-
- h = bufsize/w;
- bm = backmesh;
- wbm = wbackmesh;
- offset = w - bw;
- step = sqrt(2/PI)*QUANTIF_NSIGMA/QUANTIF_AMIN;
- for (m = n; m--; bm++,buf+=bw)
- {
- if (!m && (lastbite=w%bw))
- {
- bw = lastbite;
- offset = w-bw;
- }
- mean = sigma = 0.0;
- buft=buf;
-/*-- We separate the weighted case at this level to avoid penalty in CPU */
- if (wbackmesh)
- {
- wmean = wsigma = 0.0;
- ngood = 0;
- wbuft = wbuf;
- for (y=h; y--; buft+=offset,wbuft+=offset)
- for (x=bw; x--;)
- {
- pix = *(buft++);
- if ((wpix = *(wbuft++)) < wthresh)
- {
- wmean += wpix;
- wsigma += wpix*wpix;
- mean += pix;
- sigma += pix*pix;
- ngood++;
- }
- }
- }
- else
- for (y=h; y--; buft+=offset)
- for (x=bw; x--;)
- {
- mean += (pix = *(buft++));
- sigma += pix*pix;
- }
- npix = bw*h;
- if (wbackmesh)
- {
-/*---- If not enough valid pixels, discard this mesh */
- if ((float)ngood < (float)(npix*BACK_MINGOODFRAC))
- {
- bm->mean = bm->sigma = -BIG;
- if (wbackmesh)
- {
- wbm->mean = wbm->sigma = -BIG;
- wbm++;
- wbuf += bw;
- }
- continue;
- }
- else
- npix = ngood;
- wmean /= (double)npix;
- wsigma = (sig = wsigma/npix - wmean*wmean)>0.0? sqrt(sig):0.0;
- wlcut = wbm->lcut = (PIXTYPE)(mean - 2.0*sigma);
- whcut = wbm->hcut = (PIXTYPE)(mean + 2.0*sigma);
- }
- mean /= (double)npix;
- sigma = (sig = sigma/npix - mean*mean)>0.0? sqrt(sig):0.0;
- lcut = bm->lcut = (PIXTYPE)(mean - 2.0*sigma);
- hcut = bm->hcut = (PIXTYPE)(mean + 2.0*sigma);
- mean = sigma = 0.0;
- npix = 0;
- buft = buf;
- if (wbackmesh)
- {
- wmean = wsigma = 0.0;
- wnpix = 0;
- wbuft=wbuf;
- for (y=h; y--; buft+=offset, wbuft+=offset)
- for (x=bw; x--;)
- {
- pix = *(buft++);
- if ((wpix = *(wbuft++))<wthresh && pix<=hcut && pix>=lcut)
- {
- mean += pix;
- sigma += pix*pix;
- npix++;
- if (wpix<=whcut && wpix>=wlcut)
- {
- wmean += wpix;
- wsigma += wpix*wpix;
- wnpix++;
- }
- }
- }
- }
- else
- for (y=h; y--; buft+=offset)
- for (x=bw; x--;)
- {
- pix = *(buft++);
- if (pix<=hcut && pix>=lcut)
- {
- mean += pix;
- sigma += pix*pix;
- npix++;
- }
- }
-
- bm->npix = npix;
- mean /= (double)npix;
- sig = sigma/npix - mean*mean;
- sigma = sig>0.0 ? sqrt(sig):0.0;
- bm->mean = mean;
- bm->sigma = sigma;
- if ((bm->nlevels = (int)(step*npix+1)) > QUANTIF_NMAXLEVELS)
- bm->nlevels = QUANTIF_NMAXLEVELS;
- bm->qscale = sigma>0.0? 2*QUANTIF_NSIGMA*sigma/bm->nlevels : 1.0;
- bm->qzero = mean - QUANTIF_NSIGMA*sigma;
- if (wbackmesh)
- {
- wbm->npix = wnpix;
- wmean /= (double)wnpix;
- sig = wsigma/wnpix - wmean*wmean;
- wsigma = sig>0.0 ? sqrt(sig):0.0;
- wbm->mean = wmean;
- wbm->sigma = wsigma;
- if ((wbm->nlevels = (int)(step*wnpix+1)) > QUANTIF_NMAXLEVELS)
- wbm->nlevels = QUANTIF_NMAXLEVELS;
- wbm->qscale = wsigma>0.0? 2*QUANTIF_NSIGMA*wsigma/wbm->nlevels : 1.0;
- wbm->qzero = wmean - QUANTIF_NSIGMA*wsigma;
- wbm++;
- wbuf += bw;
- }
- }
-
- return;
- }
-
-
-/******************************** backhisto *********************************/
-/*
-Compute robust statistical estimators in a row of meshes.
-*/
-void backhisto(backstruct *backmesh, backstruct *wbackmesh,
- PIXTYPE *buf, PIXTYPE *wbuf, size_t bufsize,
- int n, int w, int bw, PIXTYPE wthresh)
- {
- backstruct *bm,*wbm;
- PIXTYPE *buft,*wbuft;
- float qscale,wqscale, cste,wcste, wpix;
- LONG *histo,*whisto;
- int h,m,x,y, nlevels,wnlevels, lastbite, offset, bin;
-
- h = bufsize/w;
- bm = backmesh;
- wbm = wbackmesh;
- offset = w - bw;
- for (m=0; m++<n; bm++ , buf+=bw)
- {
- if (m==n && (lastbite=w%bw))
- {
- bw = lastbite;
- offset = w-bw;
- }
-/*-- Skip bad meshes */
- if (bm->mean <= -BIG)
- {
- if (wbackmesh)
- {
- wbm++;
- wbuf += bw;
- }
- continue;
- }
- nlevels = bm->nlevels;
- histo = bm->histo;
- qscale = bm->qscale;
- cste = 0.499999 - bm->qzero/qscale;
- buft = buf;
- if (wbackmesh)
- {
- wnlevels = wbm->nlevels;
- whisto = wbm->histo;
- wqscale = wbm->qscale;
- wcste = 0.499999 - wbm->qzero/wqscale;
- wbuft = wbuf;
- for (y=h; y--; buft+=offset, wbuft+=offset)
- for (x=bw; x--;)
- {
- bin = (int)(*(buft++)/qscale + cste);
- if (wpix = *(wbuft++)<wthresh && bin<nlevels && bin>=0)
- {
- (*(histo+bin))++;
- bin = (int)(wpix/wqscale + wcste);
- if (bin>=0 && bin<wnlevels)
- (*(whisto+bin))++;
- }
- }
- wbm++;
- wbuf += bw;
- }
- else
- for (y=h; y--; buft += offset)
- for (x=bw; x--;)
- {
- bin = (int)(*(buft++)/qscale + cste);
- if (bin>=0 && bin<nlevels)
- (*(histo+bin))++;
- }
- }
-
- return;
- }
-
-/******************************* backguess **********************************/
-/*
-Estimate the background from a histogram;
-*/
-float backguess(backstruct *bkg, float *mean, float *sigma)
-
-#define EPS (1e-4) /* a small number */
-
- {
- LONG *histo, *hilow, *hihigh, *histot;
- unsigned long lowsum, highsum, sum;
- double ftemp, mea, sig, sig1, med, dpix;
- int i, n, lcut,hcut, nlevelsm1, pix;
-
-/* Leave here if the mesh is already classified as `bad' */
- if (bkg->mean<=-BIG)
- {
- *mean = *sigma = -BIG;
- return -BIG;
- }
-
- histo = bkg->histo;
- hcut = nlevelsm1 = bkg->nlevels-1;
- lcut = 0;
-
- sig = 10.0*nlevelsm1;
- sig1 = 1.0;
- for (n=100; n-- && (sig>=0.1) && (fabs(sig/sig1-1.0)>EPS);)
- {
- sig1 = sig;
- sum = mea = sig = 0.0;
- lowsum = highsum = 0;
- histot = hilow = histo+lcut;
- hihigh = histo+hcut;
- for (i=lcut; i<=hcut; i++)
- {
- if (lowsum<highsum)
- lowsum += *(hilow++);
- else
- highsum += *(hihigh--);
- sum += (pix = *(histot++));
- mea += (dpix = (double)pix*i);
- sig += dpix*i;
- }
-
- med = hihigh>=histo?
- ((hihigh-histo)+0.5+((double)highsum-lowsum)/(2.0*(*hilow>*hihigh?
- *hilow:*hihigh)))
- : 0.0;
-
- if (sum)
- {
- mea /= (double)sum;
- sig = sig/sum - mea*mea;
- }
- sig = sig>0.0?sqrt(sig):0.0;
- lcut = (ftemp=med-3.0*sig)>0.0 ?(int)(ftemp>0.0?ftemp+0.5:ftemp-0.5):0;
- hcut = (ftemp=med+3.0*sig)<nlevelsm1 ?(int)(ftemp>0.0?ftemp+0.5:ftemp-0.5)
- : nlevelsm1;
- }
-
- *mean = fabs(sig)>0.0? (fabs(bkg->sigma/(sig*bkg->qscale)-1) < 0.0 ?
- bkg->qzero+mea*bkg->qscale
- :(fabs((mea-med)/sig)< 0.3 ?
- bkg->qzero+(2.5*med-1.5*mea)*bkg->qscale
- :bkg->qzero+med*bkg->qscale))
- :bkg->qzero+mea*bkg->qscale;
-
- *sigma = sig*bkg->qscale;
-
-
- return *mean;
- }
-
-
-/******************************* filterback *********************************/
-/*
-Median filtering of the background map to remove the contribution from bright
-sources.
-*/
-void filterback(picstruct *field)
-
- {
- float *back,*sigma, *back2,*sigma2, *bmask,*smask, *sigmat,
- d2,d2min, fthresh, med, val,sval;
- int i,j,px,py, np, nx,ny, npxm,npxp, npym,npyp, dpx,dpy, x,y, nmin;
-
- fthresh = prefs.backfthresh;
- nx = field->nbackx;
- ny = field->nbacky;
- np = field->nback;
- npxm = field->nbackfx/2;
- npxp = field->nbackfx - npxm;
- npym = field->nbackfy/2;
- npyp = field->nbackfy - npym;
- npym *= nx;
- npyp *= nx;
-
- QMALLOC(bmask, float, field->nbackfx*field->nbackfy);
- QMALLOC(smask, float, field->nbackfx*field->nbackfy);
- QMALLOC(back2, float, np);
- QMALLOC(sigma2, float, np);
-
- back = field->back;
- sigma = field->sigma;
-
-/* Look for `bad' meshes and interpolate them if necessary */
- for (i=0,py=0; py<ny; py++)
- for (px=0; px<nx; px++,i++)
- if ((back2[i]=back[i])<=-BIG)
- {
-/*------ Seek the closest valid mesh */
- d2min = BIG;
- nmin = 0.0;
- for (j=0,y=0; y<ny; y++)
- for (x=0; x<nx; x++,j++)
- if (back[j]>-BIG)
- {
- d2 = (float)(x-px)*(x-px)+(y-py)*(y-py);
- if (d2<d2min)
- {
- val = back[j];
- sval = sigma[j];
- nmin = 1;
- d2min = d2;
- }
- else if (d2==d2min)
- {
- val += back[j];
- sval += sigma[j];
- nmin++;
- }
- }
- back2[i] = nmin? val/nmin: 0.0;
- sigma[i] = nmin? sval/nmin: 1.0;
- }
- memcpy(back, back2, (size_t)np*sizeof(float));
-
-/* Do the actual filtering */
- for (py=0; py<np; py+=nx)
- for (px=0; px<nx; px++)
- {
- i=0;
- for (dpy = -npym; dpy< npyp; dpy+=nx)
- for (dpx = -npxm; dpx < npxp; dpx++)
- {
- y = py+dpy;
- x = px+dpx;
- if (y>=0 && y<np && x>=0 && x<nx)
- {
- bmask[i] = back[x+y];
- smask[i++] = sigma[x+y];
- }
- }
- if (fabs((med=hmedian(bmask, i))-back[px+py])>=fthresh)
- {
- back2[px+py] = med;
- sigma2[px+py] = hmedian(smask, i);
- }
- else
- {
- back2[px+py] = back[px+py];
- sigma2[px+py] = sigma[px+py];
- }
- }
-
- free(bmask);
- free(smask);
- memcpy(back, back2, np*sizeof(float));
- field->backmean = hmedian(back2, np);
- free(back2);
- memcpy(sigma, sigma2, np*sizeof(float));
- field->backsig = hmedian(sigma2, np);
-
- if (field->backsig<=0.0)
- {
- sigmat = sigma2+np;
- for (i=np; i-- && *(--sigmat)>0.0;);
- if (i>=0 && i<(np-1))
- field->backsig = hmedian(sigmat+1, np-1-i);
- else
- {
- if (field->flags&(DETECT_FIELD|MEASURE_FIELD))
- warning("Image contains mainly constant data; ",
- "I'll try to cope with that...");
- field->backsig = 1.0;
- }
- }
-
- free(sigma2);
-
-
- return;
- }
-
-
-/******************************** localback *********************************/
-/*
-Compute Local background if possible.
-*/
-float localback(picstruct *field, objstruct *obj)
-
- {
- static backstruct backmesh;
- int bxmin,bxmax, bymin,bymax, ixmin,ixmax, iymin,iymax,
- bxnml,bynml, oxsize,oysize, npix,
- i, x,y, bin, w,sh, bmn, pbs;
- float bkg, bqs,cste;
- LONG *bmh;
- PIXTYPE *backpix, *bp, *strip, *st,
- pix;
-
- strip = field->strip;
- w = field->width;
- sh = field->stripheight;
- pbs = prefs.pback_size;
-
-/* Estimate background in a 'rectangular annulus' around the object */
- oxsize = obj->xmax - obj->xmin + 1;
- oysize = obj->ymax - obj->ymin + 1;
- bxnml = oxsize<w/2? oxsize/4 : (w-oxsize)/4;
- bynml = oysize<field->height/2? oysize/4 : (field->height-oysize)/4;
- bxmin = (ixmin = obj->xmin - bxnml) - pbs;
- bxmax = (ixmax = obj->xmax+1 + bxnml) + pbs;
- bymin = (iymin = obj->ymin - bynml) - pbs;
- bymax = (iymax = obj->ymax+1 + bynml) + pbs;
-
- if (bymin>=field->ymin && bymax<field->ymax
- && bxmin>=0 && bxmax<w)
- {
- npix = (bxmax-bxmin)*(bymax-bymin) - (ixmax-ixmin)*(iymax-iymin);
-
- QMALLOC(backpix, PIXTYPE, npix);
- bp = backpix;
-
-/*--store all the pixels*/
- npix = 0;
- for (y=bymin; y<bymax; y++)
- {
- st = strip + (y%sh)*w + bxmin;
- for (x=pbs; x--;)
- if ((pix=*(st++))>-BIG)
- {
- *(bp++) = pix;
- npix++;
- }
- st += ixmax-ixmin;
- for (x=pbs; x--;)
- if ((pix=*(st++))>-BIG)
- {
- *(bp++) = pix;
- npix++;
- }
- }
-
- for (y=bymin; y<iymin; y++)
- {
- st = strip + (y%sh)*w + ixmin;
- for (x=ixmax-ixmin; x--;)
- if ((pix=*(st++))>-BIG)
- {
- *(bp++) = pix;
- npix++;
- }
- }
- for (y=iymax; y<bymax; y++)
- {
- st = strip + (y%sh)*w + ixmin;
- for (x=ixmax-ixmin; x--;)
- if ((pix=*(st++))>-BIG)
- {
- *(bp++) = pix;
- npix++;
- }
- }
-
- if (npix)
- {
- backstat(&backmesh, NULL, backpix, NULL, npix, 1, 1, 1, 0.0);
- QCALLOC(backmesh.histo, LONG, backmesh.nlevels);
- bmh = backmesh.histo;
- bmn = backmesh.nlevels;
- cste = 0.499999 - backmesh.qzero/(bqs = backmesh.qscale);
- bp = backpix;
- for (i=npix; i--;)
- {
- bin = (int)(*(bp++)/bqs + cste);
- if (bin>=0 && bin<bmn)
- (*(bmh+bin))++;
- }
- backguess(&backmesh, &bkg, &obj->sigbkg);
- obj->bkg += (obj->dbkg = bkg);
- free(backmesh.histo);
- }
- else
- {
- obj->dbkg = 0.0;
- obj->sigbkg = field->backsig;
- }
- free(backpix);
- }
- else
- {
- obj->dbkg = bkg = 0.0;
- obj->sigbkg = field->backsig;
- }
-
- return bkg;
- }
-
-
-/************************************ back ***********************************/
-/*
-return background at position x,y (linear interpolation between background
-map vertices).
-*/
-PIXTYPE back(picstruct *field, int x, int y)
-
- {
- int nx,ny, xl,yl, pos;
- double dx,dy, cdx;
- float *b, b0,b1,b2,b3;
-
- b = field->back;
- nx = field->nbackx;
- ny = field->nbacky;
-
- dx = (double)x/field->backw - 0.5;
- dy = (double)y/field->backh - 0.5;
- dx -= (xl = (int)dx);
- dy -= (yl = (int)dy);
-
- if (xl<0)
- {
- xl = 0;
- dx -= 1.0;
- }
- else if (xl>=nx-1)
- {
- xl = nx<2 ? 0 : nx-2;
- dx += 1.0;
- }
-
- if (yl<0)
- {
- yl = 0;
- dy -= 1.0;
- }
- else if (yl>=ny-1)
- {
- yl = ny<2 ? 0 : ny-2;
- dy += 1.0;
- }
-
- pos = yl*nx + xl;
- cdx = 1 - dx;
-
- b0 = *(b+=pos); /* consider when nbackx or nbacky = 1 */
- b1 = nx<2? b0:*(++b);
- b2 = ny<2? *b:*(b+=nx);
- b3 = nx<2? *b:*(--b);
-
- return (PIXTYPE)((1-dy)*(cdx*b0 + dx*b1) + dy*(dx*b2 + cdx*b3));
- }
-
-
-/******************************* makebackspline ******************************/
-/*
-Pre-compute 2nd derivatives along the y direction at background nodes.
-*/
-float *makebackspline(picstruct *field, float *map)
-
- {
- int x,y, nbx,nby,nbym1;
- float *dmap,*dmapt,*mapt, *u, temp;
-
- nbx = field->nbackx;
- nby = field->nbacky;
- nbym1 = nby - 1;
- QMALLOC(dmap, float, field->nback);
- for (x=0; x<nbx; x++)
- {
- mapt = map+x;
- dmapt = dmap+x;
- if (nby>1)
- {
- QMALLOC(u, float, nbym1); /* temporary array */
- *dmapt = *u = 0.0; /* "natural" lower boundary condition */
- mapt += nbx;
- for (y=1; y<nbym1; y++, mapt+=nbx)
- {
- temp = -1/(*dmapt+4);
- *(dmapt += nbx) = temp;
- temp *= *(u++) - 6*(*(mapt+nbx)+*(mapt-nbx)-2**mapt);
- *u = temp;
- }
- *(dmapt+=nbx) = 0.0; /* "natural" upper boundary condition */
- for (y=nby-2; y--;)
- {
- temp = *dmapt;
- dmapt -= nbx;
- *dmapt = (*dmapt*temp+*(u--))/6.0;
- }
- free(u);
- }
- else
- *dmapt = 0.0;
- }
-
- return dmap;
- }
-
-
-/******************************* subbackline *********************************/
-/*
-Interpolate background at line y (bicubic spline interpolation between
-background map vertices) and subtract it from the current line.
-*/
-void subbackline(picstruct *field, int y, PIXTYPE *line)
-
- {
- int i,j,x,yl, nbx,nbxm1,nby, nx,width, ystep, changepoint;
- float dx,dx0,dy,dy3, cdx,cdy,cdy3, temp, xstep,
- *node,*nodep,*dnode, *blo,*bhi,*dblo,*dbhi, *u;
- PIXTYPE *backline, bval;
-
- width = field->width;
- backline = field->backline;
-
- if (field->back_type==BACK_ABSOLUTE)
- {
-/*-- In absolute background mode, just subtract a cste */
- bval = field->backmean;
- for (i=width; i--;)
- *(line++) -= ((*backline++)=bval);
- return;
- }
-
- nbx = field->nbackx;
- nbxm1 = nbx - 1;
- nby = field->nbacky;
- if (nby > 1)
- {
- dy = (float)y/field->backh - 0.5;
- dy -= (yl = (int)dy);
- if (yl<0)
- {
- yl = 0;
- dy -= 1.0;
- }
- else if (yl>=nby-1)
- {
- yl = nby<2 ? 0 : nby-2;
- dy += 1.0;
- }
-/*-- Interpolation along y for each node */
- cdy = 1 - dy;
- dy3 = (dy*dy*dy-dy);
- cdy3 = (cdy*cdy*cdy-cdy);
- ystep = nbx*yl;
- blo = field->back + ystep;
- bhi = blo + nbx;
- dblo = field->dback + ystep;
- dbhi = dblo + nbx;
- QMALLOC(node, float, nbx); /* Interpolated background */
- nodep = node;
- for (x=nbx; x--;)
- *(nodep++) = cdy**(blo++) + dy**(bhi++) + cdy3**(dblo++) + dy3**(dbhi++);
-
-/*-- Computation of 2nd derivatives along x */
- QMALLOC(dnode, float, nbx); /* 2nd derivative along x */
- if (nbx>1)
- {
- QMALLOC(u, float, nbxm1); /* temporary array */
- *dnode = *u = 0.0; /* "natural" lower boundary condition */
- nodep = node+1;
- for (x=nbxm1; --x; nodep++)
- {
- temp = -1/(*(dnode++)+4);
- *dnode = temp;
- temp *= *(u++) - 6*(*(nodep+1)+*(nodep-1)-2**nodep);
- *u = temp;
- }
- *(++dnode) = 0.0; /* "natural" upper boundary condition */
- for (x=nbx-2; x--;)
- {
- temp = *(dnode--);
- *dnode = (*dnode*temp+*(u--))/6.0;
- }
- free(u);
- dnode--;
- }
- }
- else
- {
-/*-- No interpolation and no new 2nd derivatives needed along y */
- node = field->back;
- dnode = field->dback;
- }
-
-/*-- Interpolation along x */
- if (nbx>1)
- {
- nx = field->backw;
- xstep = 1.0/nx;
- changepoint = nx/2;
- dx = (xstep - 1)/2; /* dx of the first pixel in the row */
- dx0 = ((nx+1)%2)*xstep/2; /* dx of the 1st pixel right to a bkgnd node */
- blo = node;
- bhi = node + 1;
- dblo = dnode;
- dbhi = dnode + 1;
- for (x=i=0,j=width; j--; i++, dx += xstep)
- {
- if (i==changepoint && x>0 && x<nbxm1)
- {
- blo++;
- bhi++;
- dblo++;
- dbhi++;
- dx = dx0;
- }
- cdx = 1 - dx;
- *(line++) -= (*(backline++) = (PIXTYPE)(cdx*(*blo+(cdx*cdx-1)**dblo)
- + dx*(*bhi+(dx*dx-1)**dbhi)));
- if (i==nx)
- {
- x++;
- i = 0;
- }
- }
- }
- else
- for (j=width; j--;)
- *(line++) -= (*(backline++) = (PIXTYPE)*node);
-
- if (nby>1)
- {
- free(node);
- free(dnode);
- }
-
- return;
- }
-
-
-/******************************* backrmsline ********************************
-PROTO void backrmsline(picstruct *field, int y, PIXTYPE *line)
-PURPOSE Bicubic-spline interpolation of the background noise along the current
- scanline (y).
-INPUT Measurement or detection field pointer,
- Current line position.
- Where to put the data.
-OUTPUT -.
-NOTES Most of the code is a copy of subbackline(), for optimization reasons.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 02/02/98
- ***/
-void backrmsline(picstruct *field, int y, PIXTYPE *line)
-
- {
- int i,j,x,yl, nbx,nbxm1,nby, nx,width, ystep, changepoint;
- float dx,dx0,dy,dy3, cdx,cdy,cdy3, temp, xstep,
- *node,*nodep,*dnode, *blo,*bhi,*dblo,*dbhi, *u;
-
- nbx = field->nbackx;
- nbxm1 = nbx - 1;
- nby = field->nbacky;
- if (nby > 1)
- {
- dy = (float)y/field->backh - 0.5;
- dy -= (yl = (int)dy);
- if (yl<0)
- {
- yl = 0;
- dy -= 1.0;
- }
- else if (yl>=nby-1)
- {
- yl = nby<2 ? 0 : nby-2;
- dy += 1.0;
- }
-/*-- Interpolation along y for each node */
- cdy = 1 - dy;
- dy3 = (dy*dy*dy-dy);
- cdy3 = (cdy*cdy*cdy-cdy);
- ystep = nbx*yl;
- blo = field->sigma + ystep;
- bhi = blo + nbx;
- dblo = field->dsigma + ystep;
- dbhi = dblo + nbx;
- QMALLOC(node, float, nbx); /* Interpolated background */
- nodep = node;
- for (x=nbx; x--;)
- *(nodep++) = cdy**(blo++) + dy**(bhi++) + cdy3**(dblo++) + dy3**(dbhi++);
-
-/*-- Computation of 2nd derivatives along x */
- QMALLOC(dnode, float, nbx); /* 2nd derivative along x */
- if (nbx>1)
- {
- QMALLOC(u, float, nbxm1); /* temporary array */
- *dnode = *u = 0.0; /* "natural" lower boundary condition */
- nodep = node+1;
- for (x=nbxm1; --x; nodep++)
- {
- temp = -1/(*(dnode++)+4);
- *dnode = temp;
- temp *= *(u++) - 6*(*(nodep+1)+*(nodep-1)-2**nodep);
- *u = temp;
- }
- *(++dnode) = 0.0; /* "natural" upper boundary condition */
- for (x=nbx-2; x--;)
- {
- temp = *(dnode--);
- *dnode = (*dnode*temp+*(u--))/6.0;
- }
- free(u);
- dnode--;
- }
- }
- else
- {
-/*-- No interpolation and no new 2nd derivatives needed along y */
- node = field->sigma;
- dnode = field->dsigma;
- }
-
-/*-- Interpolation along x */
- width = field->width;
- if (nbx>1)
- {
- nx = field->backw;
- xstep = 1.0/nx;
- changepoint = nx/2;
- dx = (xstep - 1)/2; /* dx of the first pixel in the row */
- dx0 = ((nx+1)%2)*xstep/2; /* dx of the 1st pixel right to a bkgnd node */
- blo = node;
- bhi = node + 1;
- dblo = dnode;
- dbhi = dnode + 1;
- for (x=i=0,j=width; j--; i++, dx += xstep)
- {
- if (i==changepoint && x>0 && x<nbxm1)
- {
- blo++;
- bhi++;
- dblo++;
- dbhi++;
- dx = dx0;
- }
- cdx = 1 - dx;
- *(line++) = (PIXTYPE)(cdx*(*blo+(cdx*cdx-1)**dblo)
- + dx*(*bhi+(dx*dx-1)**dbhi));
- if (i==nx)
- {
- x++;
- i = 0;
- }
- }
- }
- else
- for (j=width; j--;)
- *(line++) = (PIXTYPE)*node;
-
- if (nby>1)
- {
- free(node);
- free(dnode);
- }
-
- return;
- }
-
-
-/********************************* copyback **********************************/
-/*
-Copy sub-structures related to background procedures (mainly freeing memory).
-*/
-void copyback(picstruct *infield, picstruct *outfield)
-
- {
- QMEMCPY(infield->back, outfield->back, float, infield->nback);
- QMEMCPY(infield->dback, outfield->dback, float, infield->nback);
- QMEMCPY(infield->sigma, outfield->sigma, float, infield->nback);
- QMEMCPY(infield->dsigma, outfield->dsigma, float, infield->nback);
- QMEMCPY(infield->backline, outfield->backline, PIXTYPE, infield->width);
-
- return;
- }
-
-
-/********************************* endback ***********************************/
-/*
-Terminate background procedures (mainly freeing memory).
-*/
-void endback(picstruct *field)
-
- {
- free(field->back);
- free(field->dback);
- free(field->sigma);
- free(field->dsigma);
- free(field->backline);
-
- return;
- }
-
diff --git a/external/sextractor/source/back.h b/external/sextractor/source/back.h
deleted file mode 100644
index 5b58036..0000000
--- a/external/sextractor/source/back.h
+++ /dev/null
@@ -1,59 +0,0 @@
- /*
- back.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: functions dealing with background computation.
-*
-* Last modify: 02/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-#define BACK_BUFSIZE 1048576 /* bkgnd buffer */
-#define BACK_MINGOODFRAC 0.5 /* min frac with good weights*/
-#define QUANTIF_NSIGMA 5 /* histogram limits */
-#define QUANTIF_NMAXLEVELS 4096 /* max nb of quantif. levels */
-#define QUANTIF_AMIN 4 /* min nb of "mode pixels" */
-
-/* NOTES:
-One must have: BACK_BUFSIZE >= MAXPICSIZE
- 0 < QUANTIF_NSIGMA <= 10
- QUANTIF_AMIN > 0
-*/
-
-/*------------------------------- structures --------------------------------*/
-/* Background info */
-typedef struct structback
- {
- float mode, mean, sigma; /* Background mode, mean and sigma */
- LONG *histo; /* Pointer to a histogram */
- int nlevels; /* Nb of histogram bins */
- float qzero, qscale; /* Position of histogram */
- float lcut, hcut; /* Histogram cuts */
- int npix; /* Number of pixels involved */
- } backstruct;
-
-
-/*------------------------------- functions ---------------------------------*/
-void backhisto(backstruct *, backstruct *, PIXTYPE *, PIXTYPE *,
- size_t, int, int, int, PIXTYPE),
- backstat(backstruct *, backstruct *, PIXTYPE *, PIXTYPE *,
- size_t, int, int, int, PIXTYPE),
- backrmsline(picstruct *, int, PIXTYPE *),
- copyback(picstruct *infield, picstruct *outfield),
- endback(picstruct *),
- filterback(picstruct *),
- makeback(picstruct *, picstruct *),
- subbackline(picstruct *, int, PIXTYPE *);
-
-float backguess(backstruct *, float *, float *),
- localback(picstruct *, objstruct *),
- *makebackspline(picstruct *, float *);
-
-extern PIXTYPE back(picstruct *, int, int);
diff --git a/external/sextractor/source/bpro.c b/external/sextractor/source/bpro.c
deleted file mode 100644
index 3970aee..0000000
--- a/external/sextractor/source/bpro.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- bpro.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: Any back-propagation-ANN-oriented software
-*
-* Author: E.BERTIN, IAP/Leiden
-*
-* Contents: Routines for BP-neural network management ("read-only"
-* mode).
-*
-* Requirements: The LDACTools.
-*
-* Last modify: 21/12/96
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "bpro.h"
-
-/******************************** play_bpann *********************************/
-/*
-Single forward pass through the ANN.
-*/
-void play_bpann(bpannstruct *bpann, NFLOAT *invec, NFLOAT *outvec)
- {
- NFLOAT u, *neuroni,*neuronj, *weight;
- int i,j,l,lp,ll, lflag;
-
- ll = bpann->nlayers-1;
- memcpy(bpann->neuron[0], invec, bpann->nn[0]*sizeof(float));
- lflag = bpann->linearoutflag;
- for (lp=0,l=1; lp<ll; l++, lp++)
- {
- neuronj = bpann->neuron[l];
- weight = bpann->weight[lp];
- for (j=bpann->nn[l]; j--; neuronj++)
- { /* note we don't touch the "bias" neuron (=-1) */
- neuroni = bpann->neuron[lp];
- u = *(weight++)**(neuroni++);
- for (i=bpann->nn[lp]; i--;) /* The last one is the bias */
- u += *(weight++)**(neuroni++);
- if (l == ll)
- *(outvec++)= lflag?u:SIGMOID(u);
- else
- *neuronj = SIGMOID(u);
- }
- }
-
- return;
- }
-
-
-/******************************* loadtab_bpann *******************************/
-/*
-Load the relevant ANN structure (using the LDACTools).
-*/
-bpannstruct *loadtab_bpann(tabstruct *tab, char *filename)
- {
- bpannstruct *bpann;
- keystruct *key;
- char *head, str[80];
- int l;
-
-/* OK, we now allocate memory for the ANN structure itself */
- QCALLOC(bpann, bpannstruct, 1);
-/* Load important scalars (which are stored as FITS keywords) */
- head = tab->headbuf;
- if (fitsread(head, "BPNLAYER", &bpann->nlayers, H_INT, T_LONG) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: incorrect BP-ANN header in ", filename);
- if (fitsread(head, "BPLINEAR",&bpann->linearoutflag, H_INT,T_LONG)!=RETURN_OK)
- bpann->linearoutflag = 0;
-/* Load all vectors!! */
- read_keys(tab, NULL, NULL, 0, NULL);
-/* Now interpret the result */
- if (!(key = name_to_key(tab, "NNEUR_PER_LAYER")))
- error(EXIT_FAILURE, "*Error*: incorrect BP-ANN header in ", filename);
- bpann->nn = key->ptr; key->ptr = 0;
- QMALLOC(bpann->neuron, NFLOAT *, bpann->nlayers);
- QMALLOC(bpann->weight, NFLOAT *, bpann->nlayers-1);
- for (l=0; l<bpann->nlayers-1; l++)
- {
- QMALLOC(bpann->neuron[l], NFLOAT, bpann->nn[l]+1);
- bpann->neuron[l][bpann->nn[l]] = -1.0;
- sprintf(str, "WEIGHT_LAYER%d", l+1);
- if (!(key = name_to_key(tab, str)))
- error(EXIT_FAILURE, "*Error*: incorrect BP-ANN header in ", filename);
- bpann->weight[l] = key->ptr; key->ptr = 0;
- }
-
- QMALLOC(bpann->neuron[l], NFLOAT, bpann->nn[l]); /* no bias in this layer */
-
- return bpann;
- }
-
-
-/******************************** free_bpann *********************************/
-/*
-Free all memory modules allocated for a Back-Propagation ANN structure.*/
-void free_bpann(bpannstruct *bpann)
-
- {
- int i;
-
-/* Loop over the "true" layers */
- for (i=0; i<bpann->nlayers-1; i++)
- {
- free(bpann->neuron[i]);
- free(bpann->weight[i]);
- }
-
- free(bpann->neuron[i]); /* Because of the input layer */
-
-/* Then free pointers of pointers */
- free(bpann->neuron);
- free(bpann->weight);
- free(bpann->nn);
-
-/* And finally free the ANN structure itself */
- free(bpann);
-
- return;
- }
-
-
diff --git a/external/sextractor/source/bpro.h b/external/sextractor/source/bpro.h
deleted file mode 100644
index 685fc74..0000000
--- a/external/sextractor/source/bpro.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- bpro.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: Any back-propagation-ANN-oriented software
-*
-* Author: E.BERTIN, IAP/LDAC
-*
-* Contents: Routines for BP-neural network management ("read-only"
-* mode).
-*
-* Requirements: The LDACTools.
-*
-* Last modify: 08/10/96
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------------- definitions -------------------------------*/
-#define SIGMOID(u) ((u)<15.0?((u)>-15.0?1/(1+exp(-(u))):0.0):1.0)
- /* In-line activation function */
-
-/*---------------------------------- types ----------------------------------*/
-typedef float NFLOAT; /* Floating point units for neural data */
-
-/*------------------------------- structures --------------------------------*/
-typedef struct structbpann
- {
- int nlayers; /* Number of "active" layers */
- int *nn; /* Nb of neurons per "active" layer */
-/*------ The ANN itself */
- NFLOAT **neuron; /* Neuron array (layer,pos in layer) */
- NFLOAT **weight; /* Weight array (layer,pos in layer) */
- int linearoutflag; /* Flag: 0 if outputs are non-linear */
- } bpannstruct;
-
-
-/*------------------------------ Prototypes ---------------------------------*/
-
-bpannstruct *loadtab_bpann(tabstruct *tab, char *filename);
-
-void free_bpann(bpannstruct *bpann),
- play_bpann(bpannstruct *bpann, NFLOAT *invec, NFLOAT *outvec);
-
diff --git a/external/sextractor/source/catout.c b/external/sextractor/source/catout.c
deleted file mode 100644
index cac86a1..0000000
--- a/external/sextractor/source/catout.c
+++ /dev/null
@@ -1,479 +0,0 @@
-/*
- catout.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: functions for output of catalog data.
-*
-* Last modify: 20/07/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "param.h"
-#include "sexhead.h"
-#include "sexhead1.h"
-#include "sexheadsc.h"
-
-catstruct *fitscat;
-tabstruct *objtab;
-FILE *ascfile;
-
-/******************************* readcatparams *******************************/
-/*
-Read the catalog config file
-*/
-void readcatparams(char *filename)
- {
- keystruct *key;
- FILE *infile;
- char str[MAXCHAR], *keyword, *sstr;
- int i, size;
-
-/* Prepare the OBJECTS tables*/
- objtab = new_tab("OBJECTS");
-
- if ((infile = fopen(filename,"r")) == NULL)
- error(EXIT_FAILURE, "*ERROR*: can't read ", filename);
-
-/* Scan the catalog config file*/
- cat.nparam = 0;
- while (fgets(str, MAXCHAR, infile))
- {
- sstr = str + strspn(str," \t");
- if (*sstr!=(char)'#' && *sstr!=(char)'\n')
- {
- keyword = strtok(sstr, " \t{[(\n\r");
- if (keyword &&
- (i = findkey(keyword,(char *)objkey,sizeof(keystruct)))!=RETURN_ERROR)
- {
- key = objkey+i;
- add_key(key, objtab, 0);
- *((char *)key->ptr) = (char)'\1';
- cat.nparam++;
- if (key->naxis)
- {
- for (i=0; i<key->naxis; i++)
- key->naxisn[i] = 1;
- size=t_size[key->ttype];
- for (i=0; (sstr = strtok(NULL, " \t,;.)]}\r")) && *sstr!=(char)'#'
- && *sstr!=(char)'\n'; i++)
- {
- if (i>=key->naxis)
- error(EXIT_FAILURE, "*Error*: too many dimensions for keyword ",
- keyword);
- if (!(size*=(key->naxisn[i]=atoi(sstr))))
- error(EXIT_FAILURE, "*Error*: wrong array syntax for keyword ",
- keyword);
- }
- key->nbytes = size;
- }
- }
- else
- warning(keyword, " catalog parameter unknown");
- }
- }
-
- fclose(infile);
-
-/* Now we copy the flags to the proper structures */
-
- flagobj = outobj;
- flagobj2 = outobj2;
-/* Differentiate between outobj and outobj2 vectors */
- memset(&outobj2, 0, sizeof(outobj2));
- updateparamflags();
-
-/* Go back to multi-dimensional arrays for memory allocation */
- if (cat.nparam)
- for (i=objtab->nkey, key=objtab->key; i--; key = key->nextkey)
- if (key->naxis)
- {
-/*------ Only outobj2 vectors are dynamic */
- if (!*((char **)key->ptr))
- {
- QMALLOC(*((char **)key->ptr), char, key->nbytes);
- key->ptr = *((char **)key->ptr);
- key->allocflag = 1;
- }
- }
-
- return;
- }
-
-
-/***************************** updateparamflags ******************************/
-/*
-Update parameter flags according to their mutual dependencies.
-*/
-void updateparamflags()
-
- {
- int i;
-
-/*------------------------------ Astrometry ---------------------------------*/
- FLAG(obj2.poserr_aw) |= FLAG(obj2.poserr_bw);
- FLAG(obj2.poserr_cxxw) |= FLAG(obj2.poserr_cyyw) | FLAG(obj2.poserr_cxyw);
- FLAG(obj2.poserr_thetas) |= FLAG(obj2.poserr_theta1950)
- | FLAG(obj2.poserr_theta2000);
- FLAG(obj2.poserr_thetaw) |= FLAG(obj2.poserr_thetas);
-
- FLAG(obj2.poserr_mx2w) |= FLAG(obj2.poserr_my2w) | FLAG(obj2.poserr_mxyw)
- | FLAG(obj2.poserr_thetaw) | FLAG(obj2.poserr_aw)
- | FLAG(obj2.poserr_cxxw);
-
- FLAG(obj2.poserr_a) |= FLAG(obj2.poserr_b) | FLAG(obj2.poserr_theta);
- FLAG(obj2.poserr_cxx) |= FLAG(obj2.poserr_cyy) | FLAG(obj2.poserr_cxy);
- FLAG(obj.poserr_mx2) |= FLAG(obj.poserr_my2) | FLAG(obj.poserr_mxy)
- | FLAG(obj2.poserr_a) | FLAG(obj2.poserr_cxx)
- | FLAG(obj2.poserr_mx2w);
-
- FLAG(obj2.peakalpha1950) |= FLAG(obj2.peakdelta1950);
- FLAG(obj2.alpha1950) |= FLAG(obj2.delta1950) | FLAG(obj2.theta1950)
- | FLAG(obj2.poserr_theta1950);
- FLAG(obj2.peakalpha2000) |= FLAG(obj2.peakdelta2000)
- | FLAG(obj2.peakalpha1950);
- FLAG(obj2.alpha2000) |= FLAG(obj2.delta2000) | FLAG(obj2.alpha1950)
- | FLAG(obj2.theta2000)
- | FLAG(obj2.poserr_theta2000);
- FLAG(obj2.peakalphas) |= FLAG(obj2.peakdeltas) | FLAG(obj2.peakalpha2000);
- FLAG(obj2.alphas) |= FLAG(obj2.deltas) | FLAG(obj2.alpha2000);
- FLAG(obj2.thetas) |= FLAG(obj2.theta1950) | FLAG(obj2.theta2000);
- FLAG(obj2.thetaw) |= FLAG(obj2.thetas);
- FLAG(obj2.aw) |= FLAG(obj2.bw);
- FLAG(obj2.cxxw) |= FLAG(obj2.cyyw) | FLAG(obj2.cxyw);
-
- FLAG(obj2.mx2w) |= FLAG(obj2.my2w) | FLAG(obj2.mxyw)
- | FLAG(obj2.thetaw) | FLAG(obj2.aw) | FLAG(obj2.cxxw)
- | FLAG(obj2.npixw) | FLAG(obj2.fdnpixw)
- | FLAG(obj2.fwhmw);
-
- FLAG(obj2.peakxw) |= FLAG(obj2.peakyw) | FLAG(obj2.peakalphas);
- FLAG(obj.peakx) |= FLAG(obj.peaky) | FLAG(obj2.peakxw);
-
- FLAG(obj2.mxw) |= FLAG(obj2.myw) | FLAG(obj2.mx2w) | FLAG(obj2.alphas)
- | FLAG(obj2.poserr_mx2w);
- FLAG(obj2.mamaposx) |= FLAG(obj2.mamaposy);
-
-/*------------------------------ Photometry ---------------------------------*/
-
- FLAG(obj2.fluxerr_best) |= FLAG(obj2.magerr_best);
-
- FLAG(obj2.flux_best) |= FLAG(obj2.mag_best) | FLAG(obj2.fluxerr_best);
-
- FLAG(obj2.flux_auto) |= FLAG(obj2.mag_auto) | FLAG(obj2.magerr_auto)
- | FLAG(obj2.fluxerr_auto)
- | FLAG(obj2.kronfactor)
- | FLAG(obj2.flux_best)
- | FLAG(obj2.flux_radius);
-
- FLAG(obj2.fluxerr_isocor) |= FLAG(obj2.magerr_isocor)
- | FLAG(obj2.fluxerr_best);
-
- FLAG(obj2.flux_isocor) |= FLAG(obj2.mag_isocor) | FLAG(obj2.fluxerr_isocor)
- | FLAG(obj2.flux_best);
-
- FLAG(obj2.flux_aper) |= FLAG(obj2.mag_aper)|FLAG(obj2.magerr_aper)
- | FLAG(obj2.fluxerr_aper);
-
- FLAG(obj.flux_prof) |= FLAG(obj2.mag_prof)|FLAG(obj2.magerr_prof)
- | FLAG(obj2.flux_prof) | FLAG(obj2.fluxerr_prof);
-
- FLAG(obj2.flux_galfit) |= FLAG(obj2.mag_galfit) | FLAG(obj2.magerr_galfit)
- | FLAG(obj2.fluxerr_galfit);
-
-/*---------------------------- External flags -------------------------------*/
- VECFLAG(obj.imaflag) |= VECFLAG(obj.imanflag);
-
-/*------------------------------ PSF-fitting --------------------------------*/
- FLAG(obj2.poserraw_psf) |= FLAG(obj2.poserrbw_psf);
- FLAG(obj2.poserrcxxw_psf) |= FLAG(obj2.poserrcyyw_psf)
- | FLAG(obj2.poserrcxyw_psf);
- FLAG(obj2.poserrthetas_psf) |= FLAG(obj2.poserrtheta1950_psf)
- | FLAG(obj2.poserrtheta2000_psf);
- FLAG(obj2.poserrthetaw_psf) |= FLAG(obj2.poserrthetas_psf);
-
- FLAG(obj2.poserrmx2w_psf) |= FLAG(obj2.poserrmy2w_psf)
- | FLAG(obj2.poserrmxyw_psf)
- | FLAG(obj2.poserrthetaw_psf) | FLAG(obj2.poserraw_psf)
- | FLAG(obj2.poserrcxxw_psf);
-
- FLAG(obj2.poserra_psf) |= FLAG(obj2.poserrb_psf)
- | FLAG(obj2.poserrtheta_psf);
- FLAG(obj2.poserrcxx_psf) |= FLAG(obj2.poserrcyy_psf)
- | FLAG(obj2.poserrcxy_psf);
- FLAG(obj2.poserrmx2_psf) |= FLAG(obj2.poserrmy2_psf)
- | FLAG(obj2.poserrmxy_psf)
- | FLAG(obj2.poserra_psf) | FLAG(obj2.poserrcxx_psf)
- | FLAG(obj2.poserrmx2w_psf);
-
- FLAG(obj2.alpha1950_psf) |= FLAG(obj2.delta1950_psf)
- | FLAG(obj2.poserrtheta1950_psf);
- FLAG(obj2.alpha2000_psf) |= FLAG(obj2.delta2000_psf)
- | FLAG(obj2.alpha1950_psf)
- | FLAG(obj2.poserrtheta2000_psf);
- FLAG(obj2.alphas_psf) |= FLAG(obj2.deltas_psf) | FLAG(obj2.alpha2000_psf);
-
- FLAG(obj2.xw_psf) |= FLAG(obj2.yw_psf) | FLAG(obj2.poserrmx2w_psf)
- | FLAG(obj2.alphas_psf);
-
- FLAG(obj2.fluxerr_psf) |= FLAG(obj2.poserrmx2_psf) | FLAG(obj2.magerr_psf);
-
- FLAG(obj2.mx2_pc) |= FLAG(obj2.my2_pc) | FLAG(obj2.mxy_pc)
- | FLAG(obj2.a_pc) | FLAG(obj2.b_pc)
- | FLAG(obj2.theta_pc) | FLAG(obj2.vector_pc)
- | FLAG(obj2.gdposang) | FLAG(obj2.gdscale)
- | FLAG(obj2.gdaspect) | FLAG(obj2.flux_galfit)
- | FLAG(obj2.gde1) | FLAG(obj2.gde2)
- | FLAG(obj2.gbposang) | FLAG(obj2.gbscale)
- | FLAG(obj2.gbaspect) | FLAG(obj2.gbratio);
-
- FLAG(obj2.flux_psf) |= FLAG(obj2.mag_psf) | FLAG(obj2.x_psf)
- | FLAG(obj2.y_psf) | FLAG(obj2.xw_psf)
- | FLAG(obj2.fluxerr_psf)
- | FLAG(obj2.niter_psf)
- | FLAG(obj2.chi2_psf)
- | FLAG(obj2.mx2_pc);
-
-/*-------------------------------- Others -----------------------------------*/
- FLAG(obj.fwhm) |= FLAG(obj2.fwhmw);
-
- FLAG(obj.iso[0]) |= FLAG(obj2.sprob);
- for (i=0; i<NISO; i++)
- FLAG(obj.iso[0]) |= FLAG(obj.iso[i]);
-
- return;
- }
-
-
-/********************************** initcat **********************************/
-/*
-Initialize the catalog header
-*/
-void initcat(picstruct *field)
- {
- tabstruct *tab, *asctab;
- keystruct *key;
- int i, n;
-
- if (prefs.cat_type == CAT_NONE)
- return;
-
- if (prefs.cat_type == ASCII_HEAD || prefs.cat_type == ASCII
- || prefs.cat_type == ASCII_SKYCAT)
- {
- if (prefs.pipe_flag)
- ascfile = stdout;
- else
- if (!(ascfile = fopen(prefs.cat_name, "w+")))
- error(EXIT_FAILURE,"*Error*: cannot open ", prefs.cat_name);
- update_tab(objtab);
- if (prefs.cat_type == ASCII_HEAD && (key = objtab->key))
- for (i=0,n=1; i++<objtab->nkey; key=key->nextkey)
- {
- if (*key->unit)
- fprintf(ascfile, "# %3d %-15.15s %-47.47s [%s]\n",
- n, key->name,key->comment, key->unit);
- else
- fprintf(ascfile, "# %3d %-15.15s %.47s\n",
- n, key->name,key->comment);
- n += key->nbytes/t_size[key->ttype];
- }
- else if (prefs.cat_type == ASCII_SKYCAT && (key = objtab->key))
- {
- if (objtab->nkey<3)
- error(EXIT_FAILURE,"The SkyCat format requires at least 4 parameters:",
- " Id Ra Dec Mag");
-/*--- We add a tab between rows, as required by Skycat */
- fprintf(ascfile, skycathead, 8.0);
- for (i=1,key=key->nextkey; i++<objtab->nkey; key=key->nextkey)
- {
- if (i>4)
- fprintf(ascfile, "\t%s", key->name);
- sprintf(gstr, "\t%s", key->printf);
- strcpy(key->printf, gstr);
- }
- fprintf(ascfile, "\n------------------\n");
- }
- }
- else
- {
- fitscat = new_cat(1);
- init_cat(fitscat);
- strcpy(fitscat->filename, prefs.cat_name);
- if (open_cat(fitscat, WRITE_ONLY) != RETURN_OK)
- error(EXIT_FAILURE,"*Error*: cannot open for writing ",prefs.cat_name);
-
- switch(prefs.cat_type)
- {
- case FITS_LDAC:
-/*------ Save a "pure" primary HDU */
- save_tab(fitscat, fitscat->tab);
-/*------ We create a dummy table (only used through its header) */
- QCALLOC(asctab, tabstruct, 1);
- asctab->headnblock = field->fitsheadsize/FBSIZE;
- QMALLOC(asctab->headbuf, char, asctab->headnblock*FBSIZE);
- memcpy(asctab->headbuf, field->fitshead, asctab->headnblock*FBSIZE);
- key = headkey;
- while (*key->name)
- addkeyto_head(asctab, key++);
- tab = new_tab("LDAC_IMHEAD");
- add_tab(tab, fitscat, 0);
- key = new_key("Field Header Card");
- key->ptr = asctab->headbuf;
- asctab->headbuf = NULL;
- free_tab(asctab);
- key->htype = H_STRING;
- key->ttype = T_STRING;
- key->nobj = 1;
- key->nbytes = 80*(fitsfind(key->ptr, "END ")+1);
- key->naxis = 2;
- QMALLOC(key->naxisn, int, key->naxis);
- key->naxisn[0] = 80;
- key->naxisn[1] = key->nbytes/80;
- add_key(key, tab, 0);
- save_tab(fitscat, tab);
- strcpy(objtab->extname, "LDAC_OBJECTS");
- break;
-
- case FITS_BINIMHEAD:
- break;
-
- case FITS_NOIMHEAD:
- break;
-
- case FITS_10:
-/*------ Add to the primary HDU extraction parameters */
- key = headkey1;
- while (*key->name)
- addkeyto_head(fitscat->tab, key++);
- save_tab(fitscat, fitscat->tab);
- break;
-
- default:
- error (EXIT_FAILURE, "*Internal Error*: Unknown FITS type in ",
- "initcat()");
- }
-
- objtab->cat = fitscat;
- init_writeobj(fitscat, objtab);
- }
-
- return;
- }
-
-
-/********************************* writecat **********************************/
-/*
-Write out in the catalog each one object.
-*/
-void writecat(int n, objliststruct *objlist)
- {
- outobj = objlist->obj[n];
-
- switch(prefs.cat_type)
- {
- case FITS_10:
- case FITS_LDAC:
- write_obj(objtab);
- break;
-
- case ASCII:
- case ASCII_HEAD:
- case ASCII_SKYCAT:
- print_obj(ascfile, objtab);
- break;
-
- case CAT_NONE:
- break;
-
- default:
- error (EXIT_FAILURE, "*Internal Error*: Unknown catalog type", "");
- }
-
- return;
- }
-
-
-/********************************** endcat ***********************************/
-/*
-Terminate the catalog output.
-*/
-void endcat()
- {
- keystruct *key;
- tabstruct *tab;
- char *head;
- int i;
-
-/* Free allocated memory for arrays */
- key = objtab->key;
- for (i=objtab->nkey; i--; key=key->nextkey)
- if (key->naxis && key->allocflag)
- free(key->ptr);
-
- switch(prefs.cat_type)
- {
- case ASCII:
- case ASCII_HEAD:
- if (!prefs.pipe_flag)
- fclose(ascfile);
- break;
-
- case ASCII_SKYCAT:
- if (!prefs.pipe_flag)
- fclose(ascfile);
- fprintf(ascfile, skycattail);
- break;
-
- case FITS_LDAC:
- end_writeobj(fitscat, objtab);
- if (!(tab=name_to_tab(fitscat, "LDAC_IMHEAD", 0))
- || !(key=name_to_key(tab, "Field Header Card")))
- error(EXIT_FAILURE,"*Error*: cannot update table ", "ASCFIELD");
- head = key->ptr;
- fitswrite(head, "SEXNDET ", &cat.ndetect,H_INT,T_LONG);
- fitswrite(head, "SEXNFIN ", &cat.ntotal, H_INT,T_LONG);
- fitswrite(head, "SEXDATE ", cat.ext_date, H_STRING, 0);
- fitswrite(head, "SEXTIME ", cat.ext_time, H_STRING, 0);
- fitswrite(head, "SEXELAPS", &cat.ext_elapsed, H_FLOAT, T_DOUBLE);
- QFSEEK(fitscat->file, tab->bodypos-FBSIZE*tab->headnblock, SEEK_SET,
- fitscat->filename);
- save_tab(fitscat, tab);
- free_cat(fitscat,1);
- break;
-
- case FITS_10:
- end_writeobj(fitscat, objtab);
- fitswrite(fitscat->tab->headbuf, "SEXNDET ", &cat.ndetect,H_INT,T_LONG);
- fitswrite(fitscat->tab->headbuf, "SEXNFIN ", &cat.ntotal, H_INT,T_LONG);
- QFSEEK(fitscat->file, 0, SEEK_SET, fitscat->filename);
- save_tab(fitscat, fitscat->tab);
- free_cat(fitscat,1);
- break;
-
- case CAT_NONE:
- break;
-
- default:
- break;
- }
-
- objtab->key = NULL;
- objtab->nkey = 0;
- free_tab(objtab);
-
- return;
- }
-
diff --git a/external/sextractor/source/check.c b/external/sextractor/source/check.c
deleted file mode 100644
index 266a700..0000000
--- a/external/sextractor/source/check.c
+++ /dev/null
@@ -1,454 +0,0 @@
-/*
- check.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/Leiden.
-*
-* Contents: handling of "check-images".
-*
-* Last modify: 10/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "astrom.h"
-#include "check.h"
-
-/********************************* addcheck **********************************/
-/*
-Add a PSF to a CHECK-image (with a multiplicative factor).
-Outside boundaries are taken into account.
-*/
-void addcheck(checkstruct *check, float *psf,
- int w,int h, int ix,int iy, float amplitude)
- {
- PIXTYPE *pix;
- int x,y, xmin,xmax,ymin,ymax,w2, dwpsf;
-
-/* Set the image boundaries */
- w2 = w;
- ymin = iy-h/2;
- ymax = ymin + h;
- if (ymin<0)
- {
- psf -= ymin*w;
- ymin = 0;
- }
- if (ymax>check->height)
- ymax = check->height;
-
- xmin = ix-w/2;
- xmax = xmin + w;
- if (xmax>check->width)
- {
- w2 -= xmax-check->width;
- xmax = check->width;
- }
- if (xmin<0)
- {
- psf += -xmin;
- w2 -= -xmin;
- xmin = 0;
- }
-
- dwpsf = w-w2;
-/* Subtract the right pixels to the destination */
- for (y=ymin; y<ymax; y++, psf += dwpsf)
- {
- pix = (float *)check->pix+y*check->width+xmin;
- for (x=w2; x--;)
- *(pix++) += amplitude**(psf++);
- }
-
- return;
- }
-
-
-/********************************* blankcheck *******************************/
-/*
-Blank a part of the CHECK-image according to a mask.
-*/
-void blankcheck(checkstruct *check, PIXTYPE *mask, int w,int h,
- int xmin,int ymin, PIXTYPE val)
- {
- PIXTYPE *pixt;
- int x,y, xmax,ymax,w2,wc;
-
-/* Don't go further if out of frame!! */
- if (xmin+w<0 || xmin>=check->width
- || ymin+h<0 || ymin>=check->height)
- return;
-
-/* Set the image boundaries */
- w2 = w;
- ymax = ymin + h;
- if (ymin<0)
- {
- mask -= ymin*w;
- ymin = 0;
- }
- if (ymax>check->height)
- ymax = check->height;
-
- xmax = xmin + w;
- if (xmax>check->width)
- {
- w2 -= xmax - check->width;
- xmax = check->width;
- }
- if (xmin<0)
- {
- mask += -xmin;
- w2 -= -xmin;
- xmin = 0;
- }
-
- w -= w2;
- wc = check->width;
- ymin = ymin*wc+xmin;
- ymax = ymax*wc+xmin;
-
-/* Blank the right pixels in the image */
- for (y=ymin; y<ymax; y+=wc, mask += w)
- {
- pixt = (float *)check->pix + y;
- for (x=w2; x--; pixt++)
- if (*(mask++) > -BIG)
- *pixt = val;
- }
-
- return;
- }
-
-
-/******************************** initcheck **********************************/
-/*
-initialize check-image.
-*/
-checkstruct *initcheck(picstruct *field, char *filename,
- checkenum check_type)
-
- {
- astromstruct *as;
- checkstruct *check;
- char *buf;
- int i, ival;
- size_t padsize;
- double dval;
- USHORT *ptri;
- PIXTYPE *ptrf;
-
- QCALLOC(check, checkstruct, 1);
-
- strcpy(check->filename, filename);
- check->type = check_type;
- if (!(check->file = fopen(check->filename, "wb")))
- error(EXIT_FAILURE, "*Error*: Cannot open for output ", check->filename);
-
-/* Inherit the field FITS header */
- check->fitsheadsize = field->fitsheadsize;
- QMALLOC(check->fitshead, char, check->fitsheadsize);
- memcpy(check->fitshead, field->fitshead, check->fitsheadsize);
- check->y = 0;
-/* Neutralize possible scaling factors */
- dval = 1.0;fitswrite(check->fitshead, "BSCALE ", &dval, H_FLOAT, T_DOUBLE);
- dval = 0.0;fitswrite(check->fitshead, "BZERO ", &dval, H_FLOAT, T_DOUBLE);
- ival = 1;fitswrite(check->fitshead, "BITSGN ", &ival, H_INT, T_LONG);
- if (field->compress_type != COMPRESS_NONE)
- fitswrite(check->fitshead, "IMAGECOD", "NONE", H_STRING, T_STRING);
- fitswrite(check->fitshead, "ORIGIN ", BANNER, H_STRING, T_STRING);
-
- switch(check_type)
- {
- case CHECK_IDENTICAL:
- case CHECK_BACKGROUND:
- case CHECK_FILTERED:
- case CHECK_SUBTRACTED:
- ival = -32;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->width;
- check->height = field->height;
- check->npix = field->npix;
- QMALLOC(ptrf, PIXTYPE, check->width);
- check->pix = (void *)ptrf;
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
- break;
-
- case CHECK_BACKRMS:
- case CHECK_SUBOBJECTS:
- ival = -32;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->width;
- check->height = field->height;
- check->npix = field->npix;
- QMALLOC(ptrf, PIXTYPE, check->width);
- check->pix = (void *)ptrf;
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
-/*---- Allocate memory for replacing the blanked pixels by 0 */
- if (!check->line)
- QMALLOC(check->line, PIXTYPE, field->width);
- break;
-
- case CHECK_OBJECTS:
- case CHECK_APERTURES:
- case CHECK_SUBPSFPROTOS:
- case CHECK_PSFPROTOS:
- case CHECK_SUBPCPROTOS:
- case CHECK_PCPROTOS:
- case CHECK_PCOPROTOS:
- ival = -32;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->width;
- check->height = field->height;
- check->npix = field->npix;
- check->overlay = 30*field->backsig;
- QCALLOC(ptrf, PIXTYPE, check->npix);
- check->pix = (void *)ptrf;
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
- break;
-
- case CHECK_SEGMENTATION:
- ival = 16;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->width;
- check->height = field->height;
- check->npix = field->npix;
- QCALLOC(ptri, USHORT, check->npix);
- check->pix = (void *)ptri;
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
- break;
-
- case CHECK_ASSOC:
- ival = -32;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->width;
- check->height = field->height;
- check->npix = field->npix;
- QMALLOC(ptrf, PIXTYPE, check->npix);
- check->pix = (void *)ptrf;
-/*---- Initialize the pixmap to IEEE NaN */
- memset(ptrf, 0xFF, check->npix*sizeof(LONG));
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
- break;
-
- case CHECK_MINIBACKGROUND:
- case CHECK_MINIBACKRMS:
- ival = -32;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->nbackx;
- fitswrite(check->fitshead, "NAXIS1 ", &check->width, H_INT, T_LONG);
- check->height = field->nbacky;
- fitswrite(check->fitshead, "NAXIS2 ", &check->height, H_INT, T_LONG);
-/* Scale the WCS information if present */
- if (as=field->astrom)
- {
- dval = as->cdelt[0]*field->backw;
- fitswrite(check->fitshead, "CDELT1 ", &dval, H_EXPO, T_DOUBLE);
- dval = as->cdelt[1]*field->backh;
- fitswrite(check->fitshead, "CDELT2 ", &dval, H_EXPO, T_DOUBLE);
- dval = (as->crpix[0]-0.5)/field->backw + 0.5;
- fitswrite(check->fitshead, "CRPIX1 ", &dval, H_EXPO, T_DOUBLE);
- dval = (as->crpix[1]-0.5)/field->backh + 0.5;
- fitswrite(check->fitshead, "CRPIX2 ", &dval, H_EXPO, T_DOUBLE);
-
- dval = as->pc[0]*as->cdelt[0]*field->backw;
- fitswrite(check->fitshead, "CD1_1 ", &dval, H_EXPO, T_DOUBLE);
- dval = as->pc[1]*as->cdelt[1]*field->backh;
- fitswrite(check->fitshead, "CD1_2 ", &dval, H_EXPO, T_DOUBLE);
- dval = as->pc[2]*as->cdelt[0]*field->backw;
- fitswrite(check->fitshead, "CD2_1 ", &dval, H_EXPO, T_DOUBLE);
- dval = as->pc[3]*as->cdelt[1]*field->backh;
- fitswrite(check->fitshead, "CD2_2 ", &dval, H_EXPO, T_DOUBLE);
- }
- check->npix = check->width*check->height;
- QMALLOC(ptrf, PIXTYPE, check->npix);
- check->pix = (void *)ptrf;
- if (check_type==CHECK_MINIBACKRMS)
- memcpy(check->pix, field->sigma, check->npix*sizeof(float));
- else
- memcpy(check->pix, field->back, check->npix*sizeof(float));
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
-# ifdef BSWAP
- swapbytes(check->pix, sizeof(float), (int)check->npix);
-# endif
- QFWRITE(check->pix,check->npix*sizeof(float),check->file,
- check->filename);
-/*---- Put the buffer back to its original state */
-# ifdef BSWAP
- swapbytes(check->pix, sizeof(float), (int)check->npix);
-# endif
- free(check->pix);
- QCALLOC(buf, char, FBSIZE);
- padsize = (FBSIZE -((check->npix*sizeof(PIXTYPE))%FBSIZE))% FBSIZE;
- if (padsize)
- QFWRITE (buf, padsize, check->file, check->filename);
- fclose(check->file);
- free(buf);
- break;
-
- case CHECK_MAPSOM:
- ival = -32;
- fitswrite(check->fitshead, "BITPIX ", &ival, H_INT, T_LONG);
- check->width = field->width;
- check->height = field->height;
- check->npix = field->npix;
- QMALLOC(ptrf, PIXTYPE, check->npix);
- check->pix = (void *)ptrf;
- for (i=check->npix; i--;)
- *(ptrf++) = -10.0;
- QFWRITE(check->fitshead,check->fitsheadsize,check->file,check->filename);
- free(check->fitshead);
- break;
-
- default:
- error(EXIT_FAILURE, "*Internal Error* in ", "initcheck()!");
- }
-
-
- return check;
- }
-
-
-/******************************** writecheck *********************************/
-/*
-Write ONE line of npix pixels of a check-image.
-*/
-void writecheck(checkstruct *check, PIXTYPE *data, int w)
-
- {
- if (check->type == CHECK_APERTURES || check->type == CHECK_SUBPSFPROTOS
- || check->type == CHECK_SUBPCPROTOS || check->type == CHECK_PCOPROTOS)
- {
- memcpy((PIXTYPE *)check->pix + w*(check->y++), data, w*sizeof(PIXTYPE));
- return;
- }
- else if (check->type == CHECK_SUBOBJECTS)
- {
- int i;
- PIXTYPE *pixt;
-
- pixt = check->line;
- for (i=w; i--; data++)
- *(pixt++) = (*data>-BIG)? *data:0.0;
- data = check->line;
- }
-
-# ifdef BSWAP
- swapbytes(data, sizeof(PIXTYPE), w);
-# endif
- QFWRITE(data, w*sizeof(PIXTYPE), check->file, check->filename);
-# ifdef BSWAP
-/* Put the buffer back to its original state */
- swapbytes(data, sizeof(PIXTYPE), w);
-# endif
-
- return;
- }
-
-
-/********************************* endcheck **********************************/
-/*
-close check-image.
-*/
-void endcheck(picstruct *field, checkstruct *check)
- {
- char *buf;
- size_t padsize;
-
- switch(check->type)
- {
- case CHECK_MINIBACKGROUND:
- case CHECK_MINIBACKRMS:
- return;
-
- case CHECK_IDENTICAL:
- case CHECK_BACKGROUND:
- case CHECK_BACKRMS:
- case CHECK_FILTERED:
- case CHECK_SUBTRACTED:
- free(check->pix);
- free(check->line);
- check->line = NULL;
- padsize = (FBSIZE -((check->npix*sizeof(PIXTYPE))%FBSIZE)) % FBSIZE;
- break;
-
- case CHECK_OBJECTS:
- case CHECK_APERTURES:
- case CHECK_SUBPSFPROTOS:
- case CHECK_PSFPROTOS:
- case CHECK_SUBPCPROTOS:
- case CHECK_PCPROTOS:
- case CHECK_PCOPROTOS:
- case CHECK_ASSOC:
-# ifdef BSWAP
- swapbytes(check->pix, sizeof(PIXTYPE), (int)check->npix);
-# endif
- QFWRITE(check->pix,check->npix*sizeof(PIXTYPE),
- check->file,check->filename);
- free(check->pix);
- padsize = (FBSIZE-((check->npix*sizeof(PIXTYPE))%FBSIZE)) % FBSIZE;
- break;
-
- case CHECK_SEGMENTATION:
-# ifdef BSWAP
- swapbytes(check->pix, sizeof(USHORT), (int)check->npix);
-# endif
- QFWRITE(check->pix,check->npix*sizeof(USHORT),
- check->file,check->filename);
- free(check->pix);
- padsize = (FBSIZE -((check->npix*sizeof(USHORT))%FBSIZE)) % FBSIZE;
- break;
-
- case CHECK_SUBOBJECTS:
- {
- int y;
-
- for (y=field->ymin; y<field->ymax; y++)
- writecheck(check, &PIX(field, 0, y), field->width);
- free(check->pix);
- free(check->line);
- check->line = NULL;
- padsize = (FBSIZE -((check->npix*sizeof(PIXTYPE))%FBSIZE)) % FBSIZE;
- break;
- }
-
- case CHECK_MAPSOM:
-# ifdef BSWAP
- swapbytes(check->pix, sizeof(PIXTYPE), (int)check->npix);
-# endif
- QFWRITE(check->pix,check->npix*sizeof(PIXTYPE),
- check->file,check->filename);
- free(check->pix);
- padsize = (FBSIZE -((check->npix*sizeof(USHORT))%FBSIZE)) % FBSIZE;
- break;
-
- default:
- error(EXIT_FAILURE, "*Internal Error* in ", "endcheck()!");
- }
-
- QCALLOC(buf, char, FBSIZE);
- if (padsize)
- QFWRITE (buf, padsize, check->file, check->filename);
- fclose(check->file);
- free(buf);
- free(check);
-
- return;
- }
-
diff --git a/external/sextractor/source/check.h b/external/sextractor/source/check.h
deleted file mode 100644
index 03c01ff..0000000
--- a/external/sextractor/source/check.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- check.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/Leiden
-*
-* Contents: handling of "check-images".
-*
-* Last modify: 05/09/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- structures ------------------------------*/
-/* Check-image parameters */
-typedef struct structcheck
- {
- char filename[MAXCHAR]; /* ptr to check-image filename */
- FILE *file; /* ptr to check-image file structure */
- char *fitshead; /* ptr to check-image FITS header */
- int fitsheadsize; /* size of check-image FITS header */
- void *pix; /* ptr to check-image pixmap */
- int width, height; /* size of check-image */
- size_t npix; /* number of pixels in check-image */
- int y; /* current line in check-image */
- PIXTYPE overlay; /* intensity of the overlayed plots */
- PIXTYPE *line; /* buffered image line */
- checkenum type; /* CHECKIMAGE_TYPE */
- } checkstruct;
-
-/*------------------------------- functions ---------------------------------*/
-
-checkstruct *initcheck(picstruct *, char *, checkenum);
-
-void addcheck(checkstruct *, float *, int,int, int,int, float),
- blankcheck(checkstruct *, PIXTYPE *, int,int,int,int,PIXTYPE),
- endcheck(picstruct *field, checkstruct *),
- writecheck(checkstruct *, PIXTYPE *, int);
diff --git a/external/sextractor/source/clean.c b/external/sextractor/source/clean.c
deleted file mode 100644
index d1d5628..0000000
--- a/external/sextractor/source/clean.c
+++ /dev/null
@@ -1,315 +0,0 @@
- /*
- clean.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory & ESO
-*
-* Contents: functions that remove spurious detections from the
-* catalog
-*
-* Last modify: 21/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "check.h"
-#include "clean.h"
-
-/*------------------------------- variables ---------------------------------*/
-
-static LONG *cleanvictim;
-
-
-/******************************* initclean **********************************
-PROTO void initclean(void)
-PURPOSE Initialize things for CLEANing.
-INPUT -.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 03/07/97
- ***/
-void initclean(void)
- {
- if (prefs.clean_flag)
- QMALLOC(cleanvictim, LONG, prefs.clean_stacksize);
- QMALLOC(cleanobjlist, objliststruct, 1);
- cleanobjlist->obj = NULL;
- cleanobjlist->plist = NULL;
- cleanobjlist->nobj = cleanobjlist->npix = 0;
-
- return;
- }
-
-
-/******************************** endclean **********************************
-PROTO void endclean(void)
-PURPOSE End things related to CLEANing.
-INPUT -.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 03/07/97
- ***/
-void endclean(void)
- {
- if (prefs.clean_flag)
- free(cleanvictim);
- free(cleanobjlist);
- return;
- }
-
-
-/********************************** clean ***********************************
-PROTO int clean(int objnb, objliststruct *objlistin)
-PURPOSE Remove object from frame -buffer and put it in the "CLEANlist".
-INPUT Object number,
- Object list (source).
-OUTPUT 0 if the object was CLEANed, 1 otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden & ESO)
-VERSION 06/04/99
- ***/
-int clean(picstruct *field, picstruct *dfield, int objnb,
- objliststruct *objlistin)
- {
- objstruct *objin, *obj;
- int i,j,k;
- double amp,ampin,alpha,alphain, unitarea,unitareain,beta,val;
- float dx,dy,rlim;
-
- objin = objlistin->obj+objnb;
- beta = prefs.clean_param;
- unitareain = PI*objin->a*objin->b;
- ampin = objin->fdflux/(2*unitareain*objin->abcor);
- alphain = (pow(ampin/objin->dthresh, 1.0/beta)-1)*unitareain/objin->fdnpix;
- j=0;
- obj = cleanobjlist->obj;
- for (i=0; i<cleanobjlist->nobj; i++, obj++)
- {
- dx = objin->mx - obj->mx;
- dy = objin->my - obj->my;
- rlim = objin->a+obj->a;
- rlim *= rlim;
- if (dx*dx+dy*dy<rlim*CLEAN_ZONE*CLEAN_ZONE)
- {
- if (obj->fdflux < objin->fdflux)
- {
- val = 1+alphain*(objin->cxx*dx*dx+objin->cyy*dy*dy+objin->cxy*dx*dy);
- if (val<1e-6)
- val = 1e-6;
- if ((float)(val<1e10?ampin*pow(val, -beta) : 0.0) > obj->mthresh)
-/*------- the newcomer puts that object in its menu! */
- cleanvictim[j++] = i;
- }
- else
- {
- unitarea = PI*obj->a*obj->b;
- amp = obj->fdflux/(2*unitarea*obj->abcor);
- alpha = (pow(amp/obj->dthresh, 1.0/beta) - 1)*unitarea/obj->fdnpix;
- val = 1+alpha*(obj->cxx*dx*dx+obj->cyy*dy*dy+obj->cxy*dx*dy);
- if (val<1e-6)
- val = 1e-6;
- if ((float)(val<1e10?amp*pow(val, -beta) : 0.0) > objin->mthresh)
- {
-/*------- the newcomer is eaten!! */
- mergeobject(objin, obj);
- if (prefs.blank_flag)
- {
-/*---------- Paste back ``CLEANed'' object pixels before forgetting them */
- if (objin->blank)
- {
- pasteimage(field, objin->blank, objin->subw, objin->subh,
- objin->subx, objin->suby);
- free(objin->blank);
- }
- if (objin->dblank)
- {
- pasteimage(dfield, objin->dblank, objin->subw, objin->subh,
- objin->subx, objin->suby);
- free(objin->dblank);
- }
- }
-
- return 0;
- }
- }
- }
- }
-
-/* the newcomer eats the content of the menu */
- for (i=j; i--;)
- {
- k = cleanvictim[i];
- obj = cleanobjlist->obj + k;
- mergeobject(obj, objin);
- if (prefs.blank_flag)
- {
-/*---- Paste back ``CLEANed'' object pixels before forgetting them */
- if (obj->blank)
- {
- pasteimage(field, obj->blank, obj->subw, obj->subh,
- obj->subx, obj->suby);
- free(obj->blank);
- }
- if (obj->dblank)
- {
- pasteimage(dfield, obj->dblank, obj->subw, obj->subh,
- obj->subx, obj->suby);
- free(obj->dblank);
- }
- }
- subcleanobj(k);
- }
-
- return 1;
- }
-
-
-/******************************* addcleanobj ********************************/
-/*
-Add an object to the "cleanobjlist".
-*/
-void addcleanobj(objstruct *objin)
-
- {
- int margin, y;
- float hh1,hh2;
-
-/*Update the object list */
- if (cleanobjlist->nobj)
- {
- if (!(cleanobjlist->obj = (objstruct *)realloc(cleanobjlist->obj,
- (++cleanobjlist->nobj) * sizeof(objstruct))))
- error(EXIT_FAILURE, "Not enough memory for ", "CLEANing");
- }
- else
- {
- if (!(cleanobjlist->obj = (objstruct *)malloc((++cleanobjlist->nobj)
- * sizeof(objstruct))))
- error(EXIT_FAILURE, "Not enough memory for ", "CLEANing");
- }
-
-/* Compute the max. vertical extent of the object: */
-/* First from 2nd order moments, compute y-limit of the 3-sigma ellips... */
- hh1 = objin->cyy - objin->cxy*objin->cxy/(4.0*objin->cxx);
- hh1 = hh1 > 0.0 ? 1/sqrt(3*hh1) : 0.0;
-/* ... then from the isophotal limit, which should not be TOO different... */
- hh2 = (objin->ymax-objin->ymin+1.0);
- margin = (int)((hh1>hh2?hh1:hh2)*MARGIN_SCALE+1.49999);
- objin->ycmax = objin->ymax+margin;
-/* ... and finally compare with the predefined margin */
- if ((y=(int)(objin->my+0.49999)+prefs.cleanmargin)>objin->ycmax)
- objin->ycmax = y;
- objin->ycmin = objin->ymin-margin;
- if ((y=(int)(objin->my+0.49999)-prefs.cleanmargin)<objin->ycmin)
- objin->ycmin = y;
-
- cleanobjlist->obj[cleanobjlist->nobj-1] = *objin;
-
- return;
- }
-
-
-/******************************** mergeobject *******************************/
-/*
-Merge twos objects from "objlist".
-*/
-void mergeobject(objstruct *objslave,objstruct *objmaster)
-
- {
- checkstruct *check;
-
- if (check = prefs.check[CHECK_SEGMENTATION])
- {
- USHORT *pix;
- USHORT colorslave = (USHORT)objslave->number,
- colormaster = (USHORT)objmaster->number;
- int dx,dx0,dy,dpix;
-
- pix = (USHORT *)check->pix+check->width*objslave->ymin + objslave->xmin;
- dx0 = objslave->xmax-objslave->xmin+1;
- dpix = check->width-dx0;
- for (dy=objslave->ymax-objslave->ymin+1; dy--; pix += dpix)
- for (dx=dx0; dx--; pix++)
- if (*pix==colorslave)
- *pix = colormaster;
- }
-
- if (FLAG(obj.flux_prof))
- {
- objmaster->flux_prof = (objmaster->flux_prof*objmaster->fdflux
- + objslave->flux_prof*objslave->fdflux)
- / (objmaster->fdflux + objslave->fdflux);
- objmaster->fluxerr_prof = (objmaster->fluxerr_prof*objmaster->fdflux
- + objslave->fluxerr_prof*objslave->fdflux)
- / (objmaster->fdflux + objslave->fdflux);
- }
- objmaster->fdnpix += objslave->fdnpix;
- objmaster->dnpix += objslave->dnpix;
- objmaster->fdflux += objslave->fdflux;
- objmaster->dflux += objslave->dflux;
- objmaster->flux += objslave->flux;
- objmaster->fluxerr += objslave->fluxerr;
-
- if (objslave->fdpeak>objmaster->fdpeak)
- {
- objmaster->fdpeak = objslave->fdpeak;
- objmaster->peakx = objslave->peakx;
- objmaster->peaky = objslave->peaky;
- }
- if (objslave->dpeak>objmaster->dpeak)
- objmaster->dpeak = objslave->dpeak;
- if (objslave->peak>objmaster->peak)
- objmaster->peak = objslave->peak;
-
- if (objslave->xmin<objmaster->xmin)
- objmaster->xmin = objslave->xmin;
- if (objslave->xmax>objmaster->xmax)
- objmaster->xmax = objslave->xmax;
-
- if (objslave->ymin<objmaster->ymin)
- objmaster->ymin = objslave->ymin;
- if (objslave->ymax>objmaster->ymax)
- objmaster->ymax = objslave->ymax;
-
- objmaster->flag |= (objslave->flag & (~(OBJ_MERGED|OBJ_CROWDED)));
- mergeflags(objmaster, objslave);
-
- return;
- }
-
-
-/******************************* subcleanobj ********************************/
-/*
-remove an object from a "cleanobjlist".
-*/
-void subcleanobj(int objnb)
-
- {
-/* Update the object list */
- if (objnb>=cleanobjlist->nobj)
- error(EXIT_FAILURE, "*Internal Error*: no CLEAN object to remove ",
- "in subcleanobj()");
-
- if (--cleanobjlist->nobj)
- {
- cleanobjlist->obj[objnb] = cleanobjlist->obj[cleanobjlist->nobj];
- if (!(cleanobjlist->obj = (objstruct *)realloc(cleanobjlist->obj,
- cleanobjlist->nobj * sizeof(objstruct))))
- error(EXIT_FAILURE, "Not enough memory for ", "CLEANing");
- }
- else
- free(cleanobjlist->obj);
-
- return;
- }
-
diff --git a/external/sextractor/source/clean.h b/external/sextractor/source/clean.h
deleted file mode 100644
index 2a234c6..0000000
--- a/external/sextractor/source/clean.h
+++ /dev/null
@@ -1,36 +0,0 @@
- /*
- clean.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory & ESO
-*
-* Contents: functions that remove spurious detections from the
-* catalog
-*
-* Last modify: 06/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------------ definitions --------------------------------*/
-
-#define CLEAN_ZONE 10.0 /* zone (in sigma) to */
- /* consider for processing */
-
-/*------------------------------- variables ---------------------------------*/
-
-objliststruct *cleanobjlist; /* laconic, isn't it? */
-
-/*------------------------------- functions ---------------------------------*/
-
-extern void addcleanobj(objstruct *),
- endclean(void),
- initclean(void),
- subcleanobj(int);
-
-extern int clean(picstruct *field, picstruct *dfield,
- int, objliststruct *);
-
diff --git a/external/sextractor/source/define.h b/external/sextractor/source/define.h
deleted file mode 100644
index 22394b5..0000000
--- a/external/sextractor/source/define.h
+++ /dev/null
@@ -1,211 +0,0 @@
- /*
- define.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: global definitions.
-*
-* Last modify: 11/02/2000
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------ what, who, when and where ------------------------*/
-
-#define BANNER "SExtractor"
-#define VERSION "2.1.6 (Feb 11, 2000)"
-#define COPYRIGHT "Emmanuel BERTIN (bertin at iap.fr)"
-#define WEBSITE "http://terapix.iap.fr/sextractor"
-#define MAILINGLIST "sextractor at iap.fr"
-#define MAILINGLISTREQ "sextractor-request at iap.fr"
-#define INSTITUTE "IAP"
-
-/*--------------------------- Internal constants ----------------------------*/
-
-#define BIG 1e+30 /* a huge number */
-#define DATA_BUFSIZE 262144 /* data buffer size */
-#define MARGIN_SCALE 2.0 /* Margin / object height */
-#define MAXCHAR 512 /* max. number of characters */
-#define MAXCHECK 32 /* max. # of CHECKimages */
-#define MAXDEBAREA 3 /* max. area for deblending */
-#define MAXFLAG 4 /* max. # of FLAG-images */
-#define MAXIMAGE 2 /* max. # of input images */
-#define MAXNAPER 32 /* max. number of apertures */
-#define MAXNASSOC 32 /* max. number of assoc. */
-#define MAXPICSIZE 1048576 /* max. image size */
-#define NISO 8 /* number of isophotes */
-#define OUTPUT stderr /* where all msgs are sent */
-#define PSF_NPSFMAX 11 /* Max number of fitted PSFs */
-
-#ifndef PI
-#define PI 3.1415926535898 /* never met before? */
-#endif
-
-/* NOTES:
- *
- *One must have: BIG < the biggest element a float can store
- * DATA_BUFSIZE >= 2880 with DATA_BUFSIZE%8 = 0
- * MAXCHAR >= 16
- * 1 <= MAXCHECK <= MAXLIST (see prefs.h)
- * 1 <= MAXDEBAREA (see prefs.c & extract.c)
- * 1 <= MAXFLAG <= MAXLIST (see prefs.h)
- * 1 <= MAXIMAGE <= MAXLIST (see prefs.h)
- * 1 <= MAXNAPER <= MAXLIST (see prefs.h)
- * 1 <= MAXNASSOC <= MAXLIST (see prefs.h)
- * MAXPICSIZE > size of any image!!
- * NISO = 8 (otherwise need to change prefs.h)
- * 1 <= PSF_NPSFMAX
-*/
-
-/*---- Set defines according to machine's specificities and customizing -----*/
-
-#ifdef DEC_ALPHA
-#define BSWAP
-#define INT64
-#endif
-
-#ifdef HP_UX
-#define _HPUX_SOURCE
-#endif
-
-#ifdef PC_LINUX
-#define BSWAP
-#endif
-
-#ifdef SUN_ULTRASPARC
-#define INT64
-#endif
-
-#ifdef IBM_AIX
-#define INT64
-#endif
-
-#ifdef SUN_OS
-#endif
-
-#ifdef DEC_ULTRIX
-#define BSWAP
-#endif
-
-#ifdef MEMORY_LINK
-#define MEMORY_READ
-#endif
-
-/*--------------------- in case of missing constants ------------------------*/
-
-#ifndef SEEK_SET
-#define SEEK_SET 0
-#endif
-#ifndef SEEK_CUR
-#define SEEK_CUR 1
-#endif
-
-#ifndef EXIT_SUCCESS
-#define EXIT_SUCCESS 0
-#endif
-#ifndef EXIT_FAILURE
-#define EXIT_FAILURE -1
-#endif
-
-/*---------------------------- return messages ------------------------------*/
-
-#define RETURN_OK 0
-#define RETURN_ERROR (-1)
-#define RETURN_FATAL_ERROR (-2)
-
-/*------------------- a few definitions to read FITS parameters ------------*/
-
-#define FBSIZE 2880L /* size (in bytes) of one FITS block */
-
-#define FITSTOF(k, def) \
- (st[0]=0,((point = fitsnfind(buf, k, n))? \
- fixexponent(point), \
- atof(strncat(st, &point[10], 70)) \
- :(def)))
-
-#define FITSTOI(k, def) \
- (st[0]=0,(point = fitsnfind(buf, k, n))? \
- atoi(strncat(st, &point[10], 70)) \
- :(def))
-
-#define FITSTOS(k, str, def) \
- { if (fitsread(buf,k,str,H_STRING,T_STRING)!= RETURN_OK) \
- strcpy(str, (def)); \
- }
-
-/*------------------------------- Other Macros -----------------------------*/
-
-#define DEXP(x) exp(2.30258509299*(x)) /* 10^x */
-
-#define QFREAD(ptr, size, afile, fname) \
- if (fread(ptr, (size_t)(size), (size_t)1, afile)!=1) \
- error(EXIT_FAILURE, "*Error* while reading ", fname)
-
-#define QFWRITE(ptr, size, afile, fname) \
- if (fwrite(ptr, (size_t)(size), (size_t)1, afile)!=1) \
- error(EXIT_FAILURE, "*Error* while writing ", fname)
-
-#define QFSEEK(afile, offset, pos, fname) \
- if (fseek(afile, (offset), pos)) \
- error(EXIT_FAILURE,"*Error*: file positioning failed in ", \
- fname)
-
-#define QFTELL(pos, afile, fname) \
- if ((pos=ftell(afile))==-1) \
- error(EXIT_FAILURE,"*Error*: file position unknown in ", \
- fname)
-
-#define QCALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)calloc((size_t)(nel),sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QFREE(ptr) \
- {free(ptr); \
- ptr = NULL;}
-
-#define QREALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)realloc(ptr, (size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMEMCPY(ptrin, ptrout, typ, nel) \
- {if (ptrin) \
- {if (!(ptrout = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptrout " (" #nel " elements) !"); \
- memcpy(ptrout, ptrin, (size_t)(nel)*sizeof(typ));};}
-
-#define RINT(x) (int)(floor(x+0.5))
-
-#define PIX(pic, x, y) pic->strip[(((int)y)%pic->stripheight) \
- *pic->width +(int)x]
-
-#define NPRINTF if (prefs.verbose_type == NORM \
- || prefs.verbose_type==WARN) fprintf
-
-#define NFPRINTF(w,x) {if (prefs.verbose_type==NORM \
- || prefs.verbose_type==WARN) \
- fprintf(w, "\33[1M> %s\n\33[1A",x); \
- else if (prefs.verbose_type == FULL) \
- fprintf(w, "%s.\n", x);}
-
-#define QPRINTF if (prefs.verbose_type != QUIET) fprintf
-
-#define FPRINTF if (prefs.verbose_type == FULL) fprintf
-
-#define QWARNING if (prefs.verbose_type==WARN \
- || prefs.verbose_type==FULL) warning
-
-#define FLAG(x) (*((char *)&flag##x))
-
-#define VECFLAG(x) (*((char *)flag##x))
diff --git a/external/sextractor/source/extract.c b/external/sextractor/source/extract.c
deleted file mode 100644
index 7881d1d..0000000
--- a/external/sextractor/source/extract.c
+++ /dev/null
@@ -1,347 +0,0 @@
- /*
- extract.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory, & ESO)
-*
-* Contents: functions for extraction of connected pixels from
-* a bitmap.
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-
-#include <math.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "extract.h"
-#include "plist.h"
-
-/*------------------------- Static buffers for lutz() -----------------------*/
-
-static infostruct *info, *store;
-static char *marker;
-static status *psstack;
-static int *start, *end, *discan, xmin,ymin,xmax,ymax;
-
-
-/******************************* lutzalloc ***********************************/
-/*
-Allocate once for all memory space for buffers used by lutz().
-*/
-void lutzalloc(int width, int height)
- {
- int *discant,
- stacksize, i;
-
- stacksize = width+1;
- xmin = ymin = 0;
- xmax = width-1;
- ymax = height-1;
- QMALLOC(info, infostruct, stacksize);
- QMALLOC(store, infostruct, stacksize);
- QMALLOC(marker, char, stacksize);
- QMALLOC(psstack, status, stacksize);
- QMALLOC(start, int, stacksize);
- QMALLOC(end, int, stacksize);
- QMALLOC(discan, int, stacksize);
- discant = discan;
- for (i=stacksize; i--;)
- *(discant++) = -1;
-
- return;
- }
-
-
-/******************************* lutzfree ************************************/
-/*
-Free once for all memory space for buffers used by lutz().
-*/
-void lutzfree()
- {
- free(discan);
- free(info);
- free(store);
- free(marker);
- free(psstack);
- free(start);
- free(end);
-
- return;
- }
-
-
-/********************************** lutz *************************************/
-/*
-C implementation of R.K LUTZ' algorithm for the extraction of 8-connected pi-
-xels in an image
-*/
-int lutz(objliststruct *objlistroot, int nroot, objstruct *objparent,
- objliststruct *objlist)
-
- {
- static infostruct curpixinfo,initinfo;
- objstruct *obj, *objroot;
- pliststruct *plist,*pixel, *plistin, *plistint;
-
- char newmarker;
- int cn, co, luflag, objnb, pstop, xl,xl2,yl,
- out, minarea, stx,sty,enx,eny, step,
- nobjm = NOBJ,
- inewsymbol, *iscan;
- short trunflag;
- PIXTYPE thresh;
- status cs, ps;
-
- out = RETURN_OK;
-
- minarea = prefs.deb_maxarea;
- plistin = objlistroot->plist;
- objroot = &objlistroot->obj[nroot];
- stx = objparent->xmin;
- sty = objparent->ymin;
- enx = objparent->xmax;
- eny = objparent->ymax;
- thresh = objlist->dthresh;
- initinfo.pixnb = 0;
- initinfo.flag = 0;
- initinfo.firstpix = initinfo.lastpix = -1;
- cn = 0;
- iscan = objroot->submap + (sty-objroot->suby)*objroot->subw
- + (stx-objroot->subx);
-/* As we only analyse a fraction of the map, a step occurs between lines */
- step = objroot->subw - (++enx-stx);
- eny++;
-
-/*------Allocate memory to store object data */
-
- free(objlist->obj);
- if (!(obj=objlist->obj=(objstruct *)malloc(nobjm*sizeof(objstruct))))
- {
- out = RETURN_FATAL_ERROR;
- goto exit_lutz;
- }
-
-/*------Allocate memory for the pixel list */
-
- free(objlist->plist);
- if (!(objlist->plist
- = (pliststruct *)malloc((eny-sty)*(enx-stx)*plistsize)))
- {
- out = RETURN_FATAL_ERROR;
- goto exit_lutz;
- }
-
- pixel = plist = objlist->plist;
-
-/*----------------------------------------*/
-
- for (xl=stx; xl<=enx; xl++)
- marker[xl] = 0 ;
-
- objnb = objlist->nobj = 0;
- co = pstop = 0;
- curpixinfo.pixnb = 1;
-
- for (yl=sty; yl<=eny; yl++, iscan += step)
- {
- ps = COMPLETE;
- cs = NONOBJECT;
- trunflag = (yl==0 || yl==ymax) ? OBJ_TRUNC : 0;
- if (yl==eny)
- iscan = discan;
-
- for (xl=stx; xl<=enx; xl++)
- {
- newmarker = marker[xl];
- marker[xl] = 0;
- if ((inewsymbol = (xl!=enx)?*(iscan++):-1) < 0)
- luflag = 0;
- else
- {
- curpixinfo.flag = trunflag;
- plistint = plistin+inewsymbol;
- luflag = (PLISTPIX(plistint, cdvalue) > thresh?1:0);
- }
- if (luflag)
- {
- if (xl==0 || xl==xmax)
- curpixinfo.flag |= OBJ_TRUNC;
- memcpy(pixel, plistint, (size_t)plistsize);
- PLIST(pixel, nextpix) = -1;
- curpixinfo.lastpix = curpixinfo.firstpix = cn;
- cn += plistsize;
- pixel += plistsize;
- if (cs != OBJECT)
-/*------------------------------- Start Segment -----------------------------*/
- {
- cs = OBJECT;
- if (ps == OBJECT)
- {
- if (start[co] == UNKNOWN)
- {
- marker[xl] = 'S';
- start[co] = xl;
- }
- else marker[xl] = 's';
- }
- else
- {
- psstack[pstop++] = ps;
- marker[xl] = 'S';
- start[++co] = xl;
- ps = COMPLETE;
- info[co] = initinfo;
- }
- }
- }
-/*---------------------------------------------------------------------------*/
- if (newmarker)
-/*---------------------------- Process New Marker ---------------------------*/
-
- {
- if (newmarker == 'S')
- {
- psstack[pstop++] = ps;
- if (cs == NONOBJECT)
- {
- psstack[pstop++] = COMPLETE;
- info[++co] = store[xl];
- start[co] = UNKNOWN;
- }
- else
- update (&info[co],&store[xl], plist);
- ps = OBJECT;
- }
- else if (newmarker == 's')
- {
- if ((cs == OBJECT) && (ps == COMPLETE))
- {
- pstop--;
- xl2 = start[co];
- update (&info[co-1],&info[co], plist);
- if (start[--co] == UNKNOWN)
- start[co] = xl2;
- else
- marker[xl2] = 's';
- }
- ps = OBJECT;
- }
- else if (newmarker == 'f')
- ps = INCOMPLETE;
- else if (newmarker == 'F')
- {
- ps = psstack[--pstop];
- if ((cs == NONOBJECT) && (ps == COMPLETE))
- {
- if (start[co] == UNKNOWN)
- {
- if ((int)info[co].pixnb >= minarea)
- {
- if (objlist->nobj>=nobjm)
- if (!(obj = objlist->obj = (objstruct *)
- realloc(obj, (nobjm+=nobjm/2)* sizeof(objstruct))))
- {
- out = RETURN_FATAL_ERROR;
- goto exit_lutz;
- }
- lutzsort(&info[co], objlist);
- }
- }
- else
- {
- marker[end[co]] = 'F';
- store[start[co]] = info[co];
- }
- co--;
- ps = psstack[--pstop];
- }
- }
- }
-
-/*---------------------------------------------------------------------------*/
-
- if (luflag)
- update (&info[co],&curpixinfo, plist);
- else
- {
- if (cs == OBJECT)
-/*-------------------------------- End Segment ------------------------------*/
- {
- cs = NONOBJECT;
- if (ps != COMPLETE)
- {
- marker[xl] = 'f';
- end[co] = xl;
- }
- else
- {
- ps = psstack[--pstop];
- marker[xl] = 'F';
- store[start[co]] = info[co];
- co--;
- }
- }
- }
-/*---------------------------------------------------------------------------*/
- }
- }
-
-exit_lutz:
-
- if (objlist->nobj && out == RETURN_OK)
- {
- if (!(objlist->obj=(objstruct *)realloc(obj,
- objlist->nobj*sizeof(objstruct))))
- error(EXIT_FAILURE,"problem with mem. realloc. in lutz()","");
- }
- else
- {
- free(obj);
- objlist->obj = NULL;
- }
-
- if (cn && out == RETURN_OK)
- {
- if (!(objlist->plist=(pliststruct *)realloc(plist,cn)))
- error(EXIT_FAILURE,"problem with mem. realloc. in lutz()","");
- }
- else
- {
- free(objlist->plist);
- objlist->plist = NULL;
- }
-
- return out;
- }
-
-
-/********************************* lutzsort ***********************************/
-/*
-Build the object structure.
-*/
-void lutzsort(infostruct *info, objliststruct *objlist)
-
- {
- objstruct *obj = objlist->obj+objlist->nobj;
-
- memset(obj, 0, (size_t)sizeof(objstruct));
- obj->firstpix = info->firstpix;
- obj->lastpix = info->lastpix;
- obj->flag = info->flag;
- objlist->npix += info->pixnb;
-
- preanalyse(objlist->nobj, objlist, ANALYSE_FAST);
-
- objlist->nobj++;
-
- return;
- }
-
diff --git a/external/sextractor/source/extract.h b/external/sextractor/source/extract.h
deleted file mode 100644
index 97f26f6..0000000
--- a/external/sextractor/source/extract.h
+++ /dev/null
@@ -1,50 +0,0 @@
- /*
- extract.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: functions for extraction of connected pixels from
-* a bitmap.
-*
-* Last modify: 11/08/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------------ definitions --------------------------------*/
-
-#define NOBJ 256 /* starting number of obj. */
-#define UNKNOWN -1 /* flag for LUTZ */
-
-/*--------------------------------- typedefs --------------------------------*/
-
-typedef enum {COMPLETE, INCOMPLETE, NONOBJECT, OBJECT}
- status; /* Extraction status */
-
-/*--------------------------------- variables -------------------------------*/
-PIXTYPE *dumscan;
-
-/*------------------------------- structures --------------------------------*/
-/* Temporary object parameters during extraction */
-typedef struct structinfo
- {
- LONG pixnb; /* Number of pixels included */
- LONG firstpix; /* Pointer to first pixel of pixlist */
- LONG lastpix; /* Pointer to last pixel of pixlist */
- short flag; /* Extraction flag */
- } infostruct;
-
-
-/*------------------------------- functions ---------------------------------*/
-void lutzalloc(int, int),
- lutzfree(void),
- lutzsort(infostruct *, objliststruct *),
- sortit(picstruct *, picstruct *, picstruct *, picstruct *,
- infostruct *, objliststruct *),
- update(infostruct *, infostruct *, pliststruct *);
-
-int lutz(objliststruct *, int, objstruct *, objliststruct *);
diff --git a/external/sextractor/source/field.c b/external/sextractor/source/field.c
deleted file mode 100644
index f599a24..0000000
--- a/external/sextractor/source/field.c
+++ /dev/null
@@ -1,174 +0,0 @@
- /*
- field.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Handling of field structures.
-*
-* Last modify: 12/08/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "assoc.h"
-#include "astrom.h"
-#include "back.h"
-#include "field.h"
-#include "filter.h"
-#include "interpolate.h"
-
-/********************************* newfield **********************************/
-/*
-Returns a pointer to a new field, ready to go!
-*/
-picstruct *newfield(char *filename, int flags)
-
- {
- picstruct *field;
-
-/* First allocate memory for the new field (and nullify pointers) */
- QCALLOC(field, picstruct, 1);
- field->flags = flags;
- strcpy (field->filename, filename);
-/* A short, "relative" version of the filename */
- if (!(field->rfilename = strrchr(field->filename, '/')))
- field->rfilename = field->filename;
- else
- field->rfilename++;
-
- sprintf(gstr, "Looking for %s", field->rfilename);
- NFPRINTF(OUTPUT, gstr);
-/* Check the image exists and read important info (image size, etc...) */
- readimagehead(field);
- QPRINTF(OUTPUT, "%s \"%.20s\" / %d x %d / %d bits %s data\n",
- flags&FLAG_FIELD? "Flagging from:" :
- (flags&(RMS_FIELD|VAR_FIELD|WEIGHT_FIELD)?
- "Weighting from:" :
- (flags&MEASURE_FIELD? "Measuring from:" :
- "Detecting from:")),
- field->ident,
- field->width, field->height, field->bytepix*8,
- field->bitpix>0?
- (field->compress_type!=COMPRESS_NONE?"COMPRESSED":"INTEGER")
- :"FLOATING POINT");
-
-/* Provide a buffer for compressed data */
- if (field->compress_type != COMPRESS_NONE)
- QMALLOC(field->compress_buf, char, FBSIZE);
-
-/* Check the astrometric system and do the setup of the astrometric stuff */
- if (prefs.world_flag && (flags & (MEASURE_FIELD|DETECT_FIELD)))
- initastrom(field);
- else
- field->pixscale=prefs.pixel_scale;
-
-/* Background */
- if (flags & (DETECT_FIELD|MEASURE_FIELD|WEIGHT_FIELD|VAR_FIELD))
- {
- field->ngamma = prefs.mag_gamma/log(10.0);
-
- field->backw = prefs.backsize[0]<field->width ? prefs.backsize[0]
- : field->width;
- field->backh = prefs.backsize[1]<field->height ? prefs.backsize[1]
- : field->height;
- field->nbackp = field->backw * field->backh;
- if ((field->nbackx = (field->width-1)/field->backw + 1) < 1)
- field->nbackx = 1;
- if ((field->nbacky = (field->height-1)/field->backh + 1) < 1)
- field->nbacky = 1;
- field->nback = field->nbackx * field->nbacky;
- field->nbackfx = field->nbackx>1 ? prefs.backfsize[0] : 1;
- field->nbackfy = field->nbacky>1 ? prefs.backfsize[1] : 1;
-/*-- Set the back_type flag if absolute background is selected */
- if (((flags & DETECT_FIELD) && prefs.back_type[0]==BACK_ABSOLUTE)
- || ((flags & MEASURE_FIELD) && prefs.back_type[1]==BACK_ABSOLUTE))
- field->back_type = BACK_ABSOLUTE;
- }
-
-/* Compute the image buffer size */
-/* Basically, only one margin line is sufficient... */
- field->stripmargin = 1;
-/* ...but : */
- field->stripheight = prefs.mem_bufsize;
- if (field->stripheight>field->height)
- field->stripheight = field->height;
- if (prefs.filter_flag)
- {
-/*-- If filtering is on, one should consider the height of the conv. mask */
- int margin;
-
- if (field->stripheight < thefilter->convh)
- field->stripheight = thefilter->convh;
- if (field->stripmargin < (margin = (thefilter->convh-1)/2))
- field->stripmargin = margin;
- }
-
- return field;
- }
-
-
-/******************************* inheritfield *******************************/
-/*
-Make a copy of a field structure, e.g. for interpolation purposes.
-*/
-picstruct *inheritfield(picstruct *infield, int flags)
-
- {
- picstruct *field;
-
-/* First allocate memory for the new field (and nullify pointers) */
- QCALLOC(field, picstruct, 1);
-
-/* Copy what is important and reset the remaining */
- *field = *infield;
- field->flags = flags;
- copyastrom(infield, field);
- QMEMCPY(infield->fitshead, field->fitshead, char, infield->fitsheadsize);
- field->interp_flag = 0;
- field->assoc = NULL;
- field->strip = NULL;
- field->fstrip = NULL;
- field->reffield = infield;
- field->compress_buf = NULL;
- field->compress_type = COMPRESS_NONE;
- field->file = NULL;
-
- return field;
- }
-
-
-/********************************* endfield **********************************/
-/*
-Free and close everything related to a field structure.
-*/
-void endfield(picstruct *field)
-
- {
- if (field->file)
- fclose(field->file);
-
- free(field->fitshead);
- free(field->strip);
- free(field->fstrip);
- free(field->compress_buf);
- if (field->astrom)
- endastrom(field);
- if (field->interp_flag)
- end_interpolate(field);
- endback(field);
- free(field);
-
- return;
- }
-
diff --git a/external/sextractor/source/field.h b/external/sextractor/source/field.h
deleted file mode 100644
index c396514..0000000
--- a/external/sextractor/source/field.h
+++ /dev/null
@@ -1,27 +0,0 @@
- /*
- field.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Handling of field structures.
-*
-* Last modify: 22/03/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------------ field flags -------------------------------*/
-#define DETECT_FIELD 0x01 /* Detection */
-#define MEASURE_FIELD 0x02 /* Measurement */
-#define FLAG_FIELD 0x04 /* Flagging */
-#define RMS_FIELD 0x08 /* Weighting with std deviations */
-#define VAR_FIELD 0x10 /* Weighting with variances */
-#define WEIGHT_FIELD 0x20 /* Weighting with weights */
-#define BACKRMS_FIELD 0x40 /* Weighting from a backrms matrix */
-#define INTERP_FIELD 0x80 /* Purely interpolated data */
-
-
diff --git a/external/sextractor/source/filter.c b/external/sextractor/source/filter.c
deleted file mode 100644
index 4b4493f..0000000
--- a/external/sextractor/source/filter.c
+++ /dev/null
@@ -1,386 +0,0 @@
- /*
- filter.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden Sterrewacht.
-*
-* Contents: functions dealing with on-line filtering of the image
-* (for detection).
-*
-* Last modify: 15/12/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "bpro.h"
-#include "filter.h"
-#include "image.h"
-
-/******************************** convolve ***********************************/
-/*
-Convolve a scan line with an array.
-*/
-void convolve(picstruct *field, PIXTYPE *mscan)
-
- {
- int mw,mw2,m0,me,m,mx,dmx, y0,dy, sw,sh;
- float *mask;
- PIXTYPE *mscane, *s,*s0, *d,*de, mval;
-
- sw = field->width;
- sh = field->stripheight;
- mw = thefilter->convw;
- mw2 = mw/2;
- mscane = mscan+sw;
- y0 = field->y - (thefilter->convh/2);
- if ((dy = field->ymin-y0) > 0)
- {
- m0 = mw*dy;
- y0 = field->ymin;
- }
- else
- m0 = 0;
-
- if ((dy = field->ymax - y0) < thefilter->convh)
- me = mw*dy;
- else
- me = mw*thefilter->convh;
-
- memset(mscan, 0, sw*sizeof(PIXTYPE));
- mask = thefilter->conv+m0;
- for (m = m0, mx = 0; m<me; m++, mx++)
- {
- if (mx==mw)
- mx = 0;
- if (!mx)
- s0 = field->strip+sw*((y0++)%sh);
-
- if ((dmx = mx-mw2)>=0)
- {
- s = s0 + dmx;
- d = mscan;
- de = mscane - dmx;
- }
- else
- {
- s = s0;
- d = mscan - dmx;
- de = mscane;
- }
-
- mval = *(mask++);
- while (d<de)
- *(d++) += mval**(s++);
- }
-
- return;
- }
-
-
-/********************************* getconv **********************************/
-/*
-Read the convolution mask from a file.
-*/
-int getconv(char *filename)
-
- {
- FILE *file;
- char str[MAXCHAR], *sstr, *null = NULL;
- double sum, var, pix;
- int i,j, n, normflag;
-
-
-/* Open the file which may contain a convolution mask */
-
- if (!(file = fopen(filename, "r")))
- error(EXIT_FAILURE, "*Error*: cannot open ", filename);
-
-/* Check it is a convolution mask. Otherwise, exit */
- fgets(str,MAXCHAR,file);
- if (strncmp(str,"CONV",4))
- {
- fclose(file);
- return RETURN_ERROR;
- }
-
- if (strstr(str,"NORM"))
- normflag = strstr(str,"NONORM")?0:1;
- else
- {
- warning("No normalization info found in convolution file (old format?)\n",
- "> => I will assume you want the mask to be normalized...");
- normflag = 1;
- }
-/* Allocate memory for storing mask elements */
- QMALLOC(thefilter->conv, float, MAXMASK);
-
- for (i=0, n=0; fgets(str,MAXCHAR,file);)
- {
- j=0;
- sstr = strtok(str, " \t\n");
- if (sstr && sstr[0]!=(char)'#')
- do
- {
- j++;
- thefilter->conv[i++] = (float)atof(sstr);
- if (i>MAXMASK)
- error(EXIT_FAILURE, "*Error*: Convolution mask too large in ",
- filename);
- } while (sstr = strtok(null, " \t\n"));
- if (j>n)
- n = j;
- }
-
- fclose(file);
-
- if ((thefilter->convw = n)<1)
- error(EXIT_FAILURE, "*Error*: unappropriate convolution mask width in ",
- filename);
- if (i%n)
- error(EXIT_FAILURE, "*Error*: unappropriate convolution mask line in ",
- filename);
-
- QREALLOC(thefilter->conv, float, i);
-
- thefilter->convh = i/n;
- var = 0.0;
- for (j=0, sum=0.0; j<i; j++)
- {
- sum += fabs(pix = thefilter->conv[j]);
- var += pix*pix;
- }
-
- thefilter->varnorm = (float)(var=sqrt(var));
-
- if (normflag)
- {
- if (sum == 0.0)
- {
- warning("Zero-sum filter: ", "Normalization switched to variance-mode");
- sum = var;
- }
- for (j=0; j<i; j++)
- thefilter->conv[j] /= sum;
- }
-
- thefilter->nconv = thefilter->convw*thefilter->convh;
-
- return RETURN_OK;
- }
-
-
-/********************************* getfilter *********************************/
-/*
-Read either a convolution mask or an ANN file.
-*/
-void getfilter(char *filename)
-
- {
- QCALLOC(thefilter, filterstruct, 1);
- if (getconv(filename) != RETURN_OK && getneurfilter(filename) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: not a suitable filter in ", filename);
-
- return;
- }
-
-
-/******************************** getneurfilter ******************************/
-/*
-Read an ANN RETINA-filter file.
-*/
-int getneurfilter(char *filename)
-
- {
-#define FILTEST(x) \
- if (x != RETURN_OK) \
- error(EXIT_FAILURE, "*Error*: incorrect filter header in ", filename)
-
- catstruct *fcat;
- tabstruct *ftab;
- int ival;
-
-/* We first map the catalog */
- if (!(fcat = read_cat(filename)))
- return RETURN_ERROR;
-/* Test if the requested table is present */
- if (!(ftab = name_to_tab(fcat, "BP-ANN", 0)))
- error(EXIT_FAILURE, "*Error*: no BP-ANN info found in ", filename);
- FILTEST(fitsread(ftab->headbuf, "BPTYPE ", gstr,H_STRING,T_STRING));
- if (strcmp(gstr, "RETINA"))
- error(EXIT_FAILURE, "*Error*: not a retina-filter in ", filename);
- FILTEST(fitsread(ftab->headbuf, "RENAXIS ", &ival ,H_INT, T_LONG));
- if (ival != 2)
- error(EXIT_FAILURE, "*Error*: not a 2D retina in ", filename);
- FILTEST(fitsread(ftab->headbuf, "RENAXIS1", &thefilter->convw ,H_INT,T_LONG));
- FILTEST(fitsread(ftab->headbuf, "RENAXIS2", &thefilter->convh ,H_INT,T_LONG));
- thefilter->nconv = thefilter->convw*thefilter->convh;
- QMALLOC(thefilter->conv, float, thefilter->nconv);
- thefilter->bpann = loadtab_bpann(ftab, filename);
-
- close_cat(fcat);
- free_cat(fcat,1);
-
- return RETURN_OK;
- }
-
-
-/********************************* endfilter *********************************/
-/*
-Terminate filtering procedures.
-*/
-void endfilter()
-
- {
- free(thefilter->conv);
- if (thefilter->bpann)
- free_bpann(thefilter->bpann);
-
- free(thefilter);
-
- return;
- }
-
-
-/********************************** filter ***********************************/
-/*
-Switch to the appropriate filtering routine.
-*/
-void filter(picstruct *field, PIXTYPE *mscan)
-
- {
- if (thefilter->bpann)
- neurfilter(field, mscan);
- else
- convolve(field, mscan);
-
- return;
- }
-
-
-/******************************** neurfilter *********************************/
-/*
-Filter a scan line using an artificial retina.
-*/
-void neurfilter(picstruct *field, PIXTYPE *mscan)
-
- {
- PIXTYPE cval;
- float *pix, resp, sig, threshlow, threshhigh;
- int i,x, tflag;
-
- sig = field->backsig;
- if (tflag = (prefs.nfilter_thresh>0))
- {
- threshlow = prefs.filter_thresh[0]*field->backsig;
- threshhigh = (prefs.nfilter_thresh<2)?
- BIG : prefs.filter_thresh[1]*field->backsig;
- }
- for (x=0;x<field->width;x++)
- {
- if (tflag)
- {
- cval = PIX(field, x, field->y);
- if (cval<threshlow || cval>threshhigh)
- {
- *(mscan++) = cval;
- continue;
- }
- }
-
-/*-- Copy the surrounding image area to the retina */
- copyimage(field, thefilter->conv, thefilter->convw, thefilter->convh,
- x, field->y);
- pix = thefilter->conv;
-/*-- Apply a transform of the intensity scale */
- for (i=thefilter->nconv; i--;)
- *(pix++) = *pix>0.0?log(1+*pix/sig):-log(1-*pix/sig);
- play_bpann(thefilter->bpann, thefilter->conv, &resp);
- if (resp>70.0)
- resp = 70.0;
- else if (resp<-70.0)
- resp = -70.0;
-/*-- Recover the linear intensity scale */
- *(mscan++) = resp>0.0?sig*(exp(resp)-1):sig*(exp(-resp)-1);
- }
-
- return;
- }
-
-
-/******************************* convolve_image ******************************/
-/*
-Convolve a vignet with an array.
-*/
-void convolve_image(picstruct *field, double *vig1,
- double *vig2, int width, int height)
-
- {
- int mw,mw2,m0,me,m,mx,dmx, y, y0,dy;
- float *mask;
- double *mscane, *s,*s0, *vig3, *d,*de, mval, val;
-
-/* If no filtering, just return a copy of the input data */
- if (!thefilter || thefilter->bpann)
- {
- memcpy(vig2, vig1, width*height*sizeof(double));
- return;
- }
- mw = thefilter->convw;
- mw2 = mw/2;
- memset(vig2, 0, width*height*sizeof(double));
- vig3 = vig2;
- for (y=0; y<height; y++, vig3+=width)
- {
- mscane = vig3+width;
- y0 = y - (thefilter->convh/2);
- if (y0 < 0)
- {
- m0 = -mw*y0;
- y0 = 0;
- }
- else
- m0 = 0;
- if ((dy = height - y0) < thefilter->convh)
- me = mw*dy;
- else
- me = mw*thefilter->convh;
- mask = thefilter->conv+m0;
- for (m = m0, mx = 0; m<me; m++, mx++)
- {
- if (mx==mw)
- mx = 0;
- if (!mx)
- s0 = vig1+width*(y0++);
- if ((dmx = mx-mw2)>=0)
- {
- s = s0 + dmx;
- d = vig3;
- de = mscane - dmx;
- }
- else
- {
- s = s0;
- d = vig3 - dmx;
- de = mscane;
- }
-
- mval = *(mask++);
- while (d<de)
- *(d++) += ((val = *(s++))>-BIG? mval*val:0.0);
- }
- }
-
- return;
- }
-
-
diff --git a/external/sextractor/source/filter.h b/external/sextractor/source/filter.h
deleted file mode 100644
index 1b7b6aa..0000000
--- a/external/sextractor/source/filter.h
+++ /dev/null
@@ -1,47 +0,0 @@
- /*
- filter.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/Leiden
-*
-* Contents: functions dealing with on-line filtering of the image
-* (for detection).
-*
-* Last modify: 09/11/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------------- definitions -------------------------------*/
-
-#define MAXMASK 1024 /* Maximum number of mask elements (=32x32) */
-
-/*------------------------------- structures --------------------------------*/
-
-typedef struct structfilter
- {
-/*---- convolution */
- float *conv; /* pointer to the convolution mask */
- int nconv; /* total number of elements */
- int convw, convh; /* x,y size of the mask */
- float varnorm;
-/*---- neural filtering */
- struct structbpann *bpann;
- } filterstruct;
-
-filterstruct *thefilter;
-
-/*------------------------------- functions ---------------------------------*/
-void convolve(picstruct *, PIXTYPE *),
- convolve_image(picstruct *field, double *vig1,
- double *vig2, int width, int height),
- filter(picstruct *, PIXTYPE *),
- neurfilter(picstruct *, PIXTYPE *),
- endfilter(void),
- getfilter(char *filename);
-
-int getconv(char *filename),
- getneurfilter(char *filename);
diff --git a/external/sextractor/source/fitscat.c b/external/sextractor/source/fitscat.c
deleted file mode 100644
index 846ed9d..0000000
--- a/external/sextractor/source/fitscat.c
+++ /dev/null
@@ -1,394 +0,0 @@
-/*
- fitscat.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: low-level functions for handling LDAC FITS catalogs.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** about_cat **************************************************************
-PROTO int about_cat(catstruct *cat, FILE *stream)
-PURPOSE Print some info about a catalog.
-INPUT Catalog structure,
- output stream.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int about_cat(catstruct *cat, FILE *stream)
-
- {
- tabstruct *tab;
- int i;
-
- fprintf(stream,"\n");
-
-/*General info about the catalog itself*/
- fprintf(stream,
- "------------------Catalog information----------------\n");
- fprintf(stream,
- "Filename:..............%s\n", cat->filename);
- fprintf(stream,
- "Number of segments:....%d\n", cat->ntab);
- fprintf(stream,"\n");
-
-/*Now for each table*/
- tab = cat->tab;
- for (i=0; i<cat->ntab; i++)
- {
- fprintf(stream,
- "****** Table #%d\n", i+1);
- fprintf(stream,
- " Extension type:.........%s\n",
- tab->xtension[0]? tab->xtension: "(Primary HDU)");
- fprintf(stream,
- " Extension name:.........%s\n", tab->extname);
- if (tab->naxis)
- {
- fprintf(stream,
- " Number of dimensions:...%d\n", tab->naxis);
- fprintf(stream,
- " Number of elements:.....%d\n", tab->naxisn[1]);
- if (tab->tfields)
- fprintf(stream,
- " Number of data fields...%d\n", tab->tfields);
- fprintf(stream,
- " Body size:..............%d bytes\n", tab->tabsize);
- }
- fprintf(stream,"\n");
- while (!(tab=tab->nexttab)->nseg);
- }
-
- fprintf(stream,"\n");
-
- return RETURN_OK;
- }
-
-
-/****** addhistoryto_cat *******************************************************
-PROTO int addhistoryto_cat(catstruct *cat, char *str)
-PURPOSE Add a HISTORY line to a FITS catalog.
-INPUT A pointer to catalog structure, and the character string to insert.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-NOTES The pointer to the primary header might be reallocated if necessary.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int addhistoryto_cat(catstruct *cat, char *str)
-
- {
- static time_t thetime;
- static char str2[82];
- tabstruct *tab;
- int n, headpos;
-
- tab = cat->tab;
- n = tab->headnblock;
- headpos = fitsfind(tab->headbuf, "END ");
- if (headpos >= n*(FBSIZE/80) - 1)
- {
- QREALLOC(tab->headbuf, char, (n+1)*FBSIZE);
- memset(&tab->headbuf[n*FBSIZE], ' ', FBSIZE);
- tab->headnblock++;
- }
-
- if (time(&thetime)==-1)
- warning("No time available for history","");
-
- if (!strftime(str2, 16, "%d/%m/%y %H:%M", localtime(&thetime)))
- error(EXIT_FAILURE, "*Internal Error*: Time/date string too long in ",
- "addhistoryto_cat()");
- sprintf(str2, "%s %.65s", str2, str);
- fitsadd(tab->headbuf, "HISTORY ", str2);
-
- return RETURN_OK;
- }
-
-
-/****** close_cat **************************************************************
-PROTO int close_cat(catstruct *cat)
-PURPOSE Close a FITS catalog.
-INPUT catalog structure.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-NOTES the file structure member is set to NULL;
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int close_cat(catstruct *cat)
-
- {
-
- if (fclose(cat->file))
- {
- cat->file = NULL;
- return RETURN_ERROR;
- }
-
- cat->file = NULL;
-
- return RETURN_OK;
- }
-
-
-/****** free_cat ***************************************************************
-PROTO void free_cat(catstruct *cat, int ncat)
-PURPOSE Free all structures allocated for one or several FITS catalog.
-INPUT Pointer to a catalog structure,
- Number of catalogs.
-OUTPUT -.
-NOTES Unallocated pointers should have been put to NULL.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-void free_cat(catstruct *cat, int ncat)
-
- {
- catstruct *thecat;
- int i;
-
-/*--free memory allocated within each catalog */
- thecat = cat;
- for (i=ncat; i--;)
- {
- if (thecat->file)
- close_cat(thecat);
- remove_tabs(thecat++);
- }
-
- free(cat);
-
- return;
- }
-
-
-/****** inherit_cat ************************************************************
-PROTO int inherit_cat(catstruct *catin, catstruct *catout)
-PURPOSE Copy the primary table, and all other informations from one catalog
- to another, except those related to the associated file itself
- (filename, etc...),
-INPUT A pointer to both catalog structures.
-OUTPUT RETURN_OK if at least one table was copied, RETURN_ERROR otherwise.
-NOTES The output catalog should be ``cleaned'' before call.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-int inherit_cat(catstruct *catin, catstruct *catout)
-
- {
- tabstruct *tabin, *tabout, *prevtabout;
- int j;
-
- catout->ntab = 1;
- tabin = catin->tab;
-
-/*copy only one table: well it could be simpler, but let's stay general!*/
- prevtabout = NULL;
- for (j=tabin->nseg; j--;)
- {
- QCALLOC(tabout, tabstruct, 1);
- *tabout = *tabin;
- if (tabin->naxis)
- QMEMCPY(tabin->naxisn, tabout->naxisn, int, tabin->naxis);
- if (tabin->headbuf)
- QMEMCPY(tabin->headbuf, tabout->headbuf, char,
- tabin->headnblock*FBSIZE);
- if (tabin->bodybuf)
- QMEMCPY(tabin->bodybuf, tabout->bodybuf, char, tabin->tabsize);
- if (prevtabout)
- {
- tabout->prevtab = prevtabout;
- prevtabout->nexttab = tabout;
- }
- else
- {
- catout->tab = tabout;
- }
- prevtabout = tabout;
- tabin = tabin->nexttab;
- }
-
- if (prevtabout)
- {
- prevtabout->nexttab = catout->tab;
- catout->tab->prevtab = prevtabout;
- }
- else
- return RETURN_ERROR;
-
- return RETURN_OK;
- }
-
-/****** init_cat ***************************************************************
-PROTO int init_cat(catstruct *cat)
-PURPOSE Initialize a catalog, "cleaning" any content if present
- and adding the primary header "table".
-INPUT A pointer to the catalog structure.
-OUTPUT RETURN_OK if everything went as expected, RETURN_ERROR otherwise.
-NOTES The output catalog should be ``cleaned'' before call.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 19/08/96
- ***/
-int init_cat(catstruct *cat)
-
- {
- static char bintabtemplate[][80] = {
-"SIMPLE = T / LETS STAY SIMPLE",
-"BITPIX = 8 / ",
-"NAXIS = 0 / ",
-"EXTEND = T / MORE STUFF MAY FOLLOW",
-"END "};
- tabstruct *tab;
- char *buf;
- int i;
-
-/* Initialize the primary header itself */
- QCALLOC(tab, tabstruct, 1);
- tab->naxis = 0;
- tab->bitpix = 8;
- tab->bytepix = 1;
- tab->pcount = 0;
- tab->gcount = 1;
- tab->seg = 1;
- tab->nseg = 1;
-/* Provide a new header*/
- QCALLOC(tab->headbuf, char, FBSIZE);
- memcpy(tab->headbuf, bintabtemplate, sizeof(bintabtemplate));
- for (buf = tab->headbuf, i=0; i<FBSIZE; i++, buf++)
- if (!*buf)
- *buf = ' ';
- tab->headnblock = 1;
-/* Clean catalog and add the table to it */
- remove_tabs(cat);
- cat->tab = tab->prevtab = tab->nexttab = tab;
- cat->ntab = 1;
- addhistoryto_cat(cat, "Catalog created");
-
- return RETURN_OK;
- }
-
-
-/****** map_cat ****************************************************************
-PROTO int map_cat(catstruct *cat)
-PURPOSE Explores the whole FITS file
- and gets information for each of the FITS tables it contains.
-INPUT catalog structure.
-OUTPUT RETURN_OK if at least one table was found, RETURN_ERROR otherwise.
-NOTES Memory space for the array of fits structures is reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-int map_cat(catstruct *cat)
-
- {
- int ntab;
- tabstruct *tab, *prevtab;
-
-/*scan through the file until we reach the end*/
- prevtab = NULL;
- QCALLOC(tab, tabstruct, 1);
- tab->cat = cat;
- for (ntab=0; !get_head(tab); ntab++)
- {
- readbasic_head(tab);
- readbintabparam_head(tab);
- tab->bodypos = ftell(cat->file);
- tab->nseg = tab->seg = 1;
- if (tab->tabsize)
- QFSEEK(cat->file, PADTOTAL(tab->tabsize), SEEK_CUR, cat->filename);
- if (prevtab)
- {
- tab->prevtab = prevtab;
- prevtab->nexttab = tab;
- }
- else
- cat->tab = tab;
- prevtab = tab;
- QCALLOC(tab, tabstruct, 1);
- tab->cat = cat;
- }
-
- cat->ntab = ntab;
- free(tab);
- if (prevtab)
- {
- prevtab->nexttab = cat->tab;
- cat->tab->prevtab = prevtab;
- }
- else
- return RETURN_ERROR;
-
-/*rewind to the beginning*/
-/*
- QFSEEK(cat->file, 0, SEEK_SET, cat->filename);
-*/
-
- return RETURN_OK;
- }
-
-
-/****** new_cat ****************************************************************
-PROTO catstruct *new_cat(int ncat)
-PURPOSE Initialize a structure for a FITS catalog.
-INPUT Number of catalogs.
-OUTPUT A pointer to the catalog array.
-NOTES All fields are initialized to 0.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-catstruct *new_cat(int ncat)
-
- {
- catstruct *cat;
-
- QCALLOC(cat, catstruct, ncat);
-
- cat->access_type = WRITE_ONLY;
-
- return cat;
- }
-
-
-/****** open_cat ***************************************************************
-PROTO int open_cat(catstruct *cat, access_type at)
-PURPOSE Open a FITS catalog with name filename.
-INPUT catalog structure,
- access type (can be WRITE_ONLY or READ_ONLY).
-OUTPUT RETURN_OK if the cat is found, RETURN_ERROR otherwise.
-NOTES If the file was already opened by this catalog, nothing is done.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 22/08/96
- ***/
-int open_cat(catstruct *cat, access_type at)
-
- {
-
- if (cat->access_type == READ_ONLY && at == WRITE_ONLY)
- error(EXIT_FAILURE, "*Internal Error*: Trying to write to the "
- "READ_ONLY catalog ", cat->filename);
-
- if (!cat->file)
- {
- if ((cat->file = fopen(cat->filename, at==WRITE_ONLY?"wb":"rb")) == NULL)
- return RETURN_ERROR;
- cat->access_type = at;
- }
-
- return RETURN_OK;
- }
-
-
diff --git a/external/sextractor/source/fitscat.h b/external/sextractor/source/fitscat.h
deleted file mode 100644
index 4afc78b..0000000
--- a/external/sextractor/source/fitscat.h
+++ /dev/null
@@ -1,222 +0,0 @@
-/*
- fitscat.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Simplified versin of the LDACTools: main include file
-*
-* Last modify: 07/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#define MAXCHARS 256 /* max. number of characters */
-
-/*---------------------------- return messages ------------------------------*/
-
-#ifndef RETURN_OK
-#define RETURN_OK 0
-#endif
-#ifndef RETURN_ERROR
-#define RETURN_ERROR (-1)
-#endif
-#ifndef RETURN_FATAL_ERROR
-#define RETURN_FATAL_ERROR (-2)
-#endif
-
-/*--------------------------- FITS BitPix coding ----------------------------*/
-
-#define BP_BYTE 8
-#define BP_SHORT 16
-#define BP_LONG 32
-#define BP_FLOAT (-32)
-#define BP_DOUBLE (-64)
-
-/*-------------------------------- macros -----------------------------------*/
-
-/* size (in bytes) of one FITS block */
-
-#define FBSIZE 2880L
-
-/* FITS size after adding padding */
-
-#define PADTOTAL(x) (((x-1)/FBSIZE+1)*FBSIZE)
-
-/* extra size to add for padding */
-
-#define PADEXTRA(x) ((FBSIZE - (x%FBSIZE))% FBSIZE)
-
-/*--------------------------------- typedefs --------------------------------*/
-
-typedef enum {H_INT, H_FLOAT, H_EXPO, H_BOOL, H_STRING, H_COMMENT,
- H_HCOMMENT, H_KEY} h_type;
- /* type of FITS-header data */
-typedef enum {T_BYTE, T_SHORT, T_LONG, T_FLOAT, T_DOUBLE, T_STRING}
- t_type; /* Type of data */
-typedef enum {WRITE_ONLY, READ_ONLY}
- access_type; /* Type of access */
-typedef enum {SHOW_ASCII, SHOW_SKYCAT}
- output_type; /* Type of output */
-
-
-/*------------------------------- constants ---------------------------------*/
-
-static int t_size[] = {1, 2, 4, 4, 8, 1}; /* size in bytes per t_type */
-
-/*---------------------------------- key ------------------------------------*/
-
-typedef struct structkey
- {
- char name[80]; /* name */
- char comment[80]; /* a comment */
- void *ptr; /* pointer to the data */
- h_type htype; /* standard ``h_type'' (display) */
- t_type ttype; /* standard ``t_type'' (storage) */
- char printf[80]; /* printing format (C Convention) */
- char unit[80]; /* physical unit */
- int naxis; /* number of dimensions */
- int *naxisn; /* pointer to an array of dim. */
- int nobj; /* number of objects */
- int nbytes; /* number of bytes per element */
- int pos; /* position within file */
- struct structkey *prevkey; /* previous key within the chain */
- struct structkey *nextkey; /* next key within the chain */
- struct structtab *tab; /* (original) parent tab */
- int allocflag; /* true if ptr dynamically allocated */
- } keystruct;
-
-/*------------------------------- catalog ---------------------------------*/
-
-typedef struct structcat
- {
- char filename[MAXCHARS]; /* file name */
- FILE *file; /* pointer to the file structure */
- struct structtab *tab; /* pointer to the first table */
- int ntab; /* number of tables included */
- access_type access_type; /* READ_ONLY or WRITE_ONLY */
- } catstruct;
-
-/*-------------------------------- table ----------------------------------*/
-
-typedef struct structtab
- {
- int bitpix; /* Bits per element */
- int bytepix; /* Bytes per element */
- int naxis; /* number of dimensions */
- int *naxisn; /* array of dimensions */
- int tfields; /* number of fields */
- int pcount, gcount; /* alignment of the data */
- int tabsize; /* total table size (bytes) */
- char xtension[82]; /* FITS extension type */
- char extname[82]; /* FITS extension name */
- char *headbuf; /* buffer containing the header */
- int headnblock; /* number of FITS blocks */
- char *bodybuf; /* buffer containing the body */
- int bodypos; /* position of the body in the file */
- struct structcat *cat; /* (original) parent catalog */
- struct structtab *prevtab, *nexttab; /* previous and next tab in chain */
- int seg; /* segment position */
- int nseg; /* number of tab segments */
- keystruct *key; /* pointer to keys */
- int nkey; /* number of keys */
- } tabstruct;
-
-
-/*------------------------------- functions ---------------------------------*/
-
-extern catstruct *new_cat(int ncat),
- *read_cat(char *filename),
- *read_cats(char **filenames, int ncat);
-
-extern tabstruct *init_readobj(tabstruct *tab),
- *name_to_tab(catstruct *cat, char *tabname, int seg),
- *new_tab(char *tabname),
- *pos_to_tab(catstruct *cat, int pos, int seg),
- *asc2bin_tab(catstruct *catin, char *tabinname,
- catstruct *catout, char *taboutname);
-
-extern keystruct *name_to_key(tabstruct *tab, char *keyname),
- *new_key(char *keyname),
- *pos_to_key(tabstruct *tab, int pos),
- *read_key(tabstruct *tab, char *keyname);
-
-extern void end_readobj(tabstruct *keytab, tabstruct *tab),
- end_writeobj(catstruct *cat, tabstruct *tab),
- error(int, char *, char *),
- fixexponent(char *s),
- free_cat(catstruct *cat, int ncat),
- free_key(keystruct *key),
- free_tab(tabstruct *tab),
- init_writeobj(catstruct *cat, tabstruct *tab),
- print_obj(FILE *stream, tabstruct *tab),
- read_keys(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, unsigned char *mask),
- read_basic(tabstruct *tab),
- readbasic_head(tabstruct *tab),
- save_cat(catstruct *cat, char *filename),
- save_tab(catstruct *cat, tabstruct *tab),
- show_keys(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, unsigned char *mask, FILE *stream,
- int strflag,int banflag, int leadflag,
- output_type o_type),
- swapbytes(void *, int, int),
- *ttypeconv(void *ptr, t_type ttypein, t_type ttypeout),
- warning(char *, char *);
-
-extern char *tdisptoprintf(char *tdisp),
- *printftotdisp(char *cprintf),
- *fitsnfind(char *fitsbuf, char *str, int nblock),
- **tabs_list(catstruct *cat, int *n),
- **keys_list(tabstruct *tab, int *n);
-
-extern int about_cat(catstruct *cat, FILE *stream),
- about_tab(catstruct *cat, char *tabname, FILE *stream),
- addhistoryto_cat(catstruct *cat, char *str),
- add_key(keystruct *key, tabstruct *tab, int pos),
- addkeyto_head(tabstruct *tab, keystruct *key),
- add_tab(tabstruct *tab, catstruct *cat, int pos),
- blank_keys(tabstruct *tab),
- close_cat(catstruct *cat),
- copy_key(tabstruct *tabin, char *keyname, tabstruct *tabout,
- int pos),
- copy_tab(catstruct *catin, char *tabname, int seg,
- catstruct *catout, int pos),
- copy_tabs(catstruct *catin, catstruct *catout),
- findkey(char *, char *, int),
- findnkey(char *, char *, int, int),
- fitsadd(char *fitsbuf, char *keyword, char *comment),
- fitsfind(char *fitsbuf, char *keyword),
- fitspick(char *fitsbuf, char *keyword, void *ptr,
- h_type *htype, t_type *ttype, char *comment),
- fitsread(char *fitsbuf, char *keyword, void *ptr,
- h_type htype, t_type ttype),
- fitsremove(char *fitsbuf, char *keyword),
- fitswrite(char *fitsbuf, char *keyword, void *ptr,
- h_type htype, t_type ttype),
- get_head(tabstruct *tab),
- inherit_cat(catstruct *catin, catstruct *catout),
- init_cat(catstruct *cat),
- map_cat(catstruct *cat),
- open_cat(catstruct *cat, access_type at),
- readbintabparam_head(tabstruct *tab),
- read_field(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, int field, tabstruct *ftab),
- read_obj(tabstruct *keytab, tabstruct *tab),
- read_obj_at(tabstruct *keytab, tabstruct *tab, long pos),
- remove_key(tabstruct *tab, char *keyname),
- remove_keys(tabstruct *tab),
- remove_tab(catstruct *cat, char *tabname, int seg),
- remove_tabs(catstruct *cat),
- tab_row_len(char *, char *),
- tformof(char *str, t_type ttype, int n),
- tsizeof(char *str),
- update_head(tabstruct *tab),
- update_tab(tabstruct *tab),
- write_obj(tabstruct *tab),
- wstrncmp(char *, char *, int);
-
-extern t_type ttypeof(char *str);
diff --git a/external/sextractor/source/fitscat_defs.h b/external/sextractor/source/fitscat_defs.h
deleted file mode 100644
index 028e0ce..0000000
--- a/external/sextractor/source/fitscat_defs.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- fitscat_defs.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Simplified version of the LDACTools: internal defs
-*
-* Last modify: 23/01/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------ what, who, when and where ------------------------*/
-
-#define BANNER "LDACTools"
-#define VERSION "1.1 (Jan 23 97)"
-#define COPYRIGHT "Emmanuel BERTIN (bertin at iap.fr)"
-#define INSTITUTE "IAP/Leiden"
-
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define OUTPUT stderr /* where all msgs are sent */
-#define DATA_BUFSIZE (1024*1024)
-
-#ifndef PI
-#define PI 3.14159265359 /* never met before? */
-#endif
-
-/* NOTES:
-We must have: MAXCHARS >= 16
- DATA_BUFSIZE >= 2 although DATA_BUFSIZE >= 100000
- is better!!
-*/
-
-/*------------ Set defines according to machine's specificities -------------*/
-
-#ifdef DEC_ALPHA
-#define BSWAP
-#define INT64
-#endif
-
-#ifdef HP_UX
-#define _HPUX_SOURCE
-#endif
-
-#ifdef PC_LINUX
-#define BSWAP
-#endif
-
-#ifdef SUN_ULTRASPARC
-#define INT64
-#endif
-
-/*--------------------- in case of missing constants ------------------------*/
-
-#ifndef SEEK_SET
-#define SEEK_SET 0
-#endif
-#ifndef SEEK_CUR
-#define SEEK_CUR 1
-#endif
-
-#ifndef EXIT_SUCCESS
-#define EXIT_SUCCESS 0
-#endif
-#ifndef EXIT_FAILURE
-#define EXIT_FAILURE -1
-#endif
-
-/*--------------------------------- typedefs --------------------------------*/
-typedef unsigned char BYTE; /* a byte */
-typedef int LONG; /* for DEC-Alpha... */
-
-/*------------------------------- Other Macros -----------------------------*/
-
-#define QFREAD(ptr, size, file, fname) \
- {if (fread(ptr, (size_t)(size), (size_t)1, file)!=1) \
- error(EXIT_FAILURE, "*Error* while reading ", fname);;}
-
-#define QFWRITE(ptr, size, file, fname) \
- {if (fwrite(ptr, (size_t)(size), (size_t)1, file)!=1) \
- error(EXIT_FAILURE, "*Error* while writing ", fname);;}
-
-#define QFSEEK(file, offset, pos, fname) \
- {if (fseek(file, (long)(offset), pos)) \
- error(EXIT_FAILURE,"*Error*: File positioning failed in ", \
- fname);;}
-
-#define QFTELL(pos, file, fname) \
- {if ((pos=ftell(file))==-1) \
- error(EXIT_FAILURE,"*Error*: File position unknown in ", \
- fname);;}
-
-
-#define QFREE(x) {free(x); x = NULL;}
-
-#define QCALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)calloc((size_t)(nel),sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define QMEMCPY(ptrin, ptrout, typ, nel) \
- {if (!(ptrout = (typ *)malloc((size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptrout " (" #nel " elements) !"); \
- memcpy(ptrout, ptrin, (size_t)(nel)*sizeof(typ));}
-
-#define QREALLOC(ptr, typ, nel) \
- {if (!(ptr = (typ *)realloc(ptr, (size_t)(nel)*sizeof(typ)))) \
- error(EXIT_FAILURE, "Not enough memory for ", \
- #ptr " (" #nel " elements) !");;}
-
-#define RINT(x) (int)(floor(x+0.5))
-
-
-#define QPRINTF if (qflag) fprintf
-
-#define QFPRINTF(w,x) {if (qflag) \
- fprintf(w, "\33[1M> %s\n\33[1A",x);;}
-
-
-#define QGETKEY(tab, key, keyname, dest) \
- {if (!(key = name_to_key(tab, keyname))) \
- error(EXIT_FAILURE, "*Error*: No such parameter in catalog: ", \
- keyname); \
- dest = key->ptr;}
-
-#define MIN(a,b) (a<b?a:b)
diff --git a/external/sextractor/source/fitsconv.c b/external/sextractor/source/fitsconv.c
deleted file mode 100644
index 20d33c9..0000000
--- a/external/sextractor/source/fitsconv.c
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- fitsconv.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: functions for converting LDAC FITS catalogs.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** asc2bin_tab ***********************************************************
-PROTO tabstruct *asc2bin_tab(catstruct *catin, char *tabinname,
- catstruct *catout, char *taboutname)
-PURPOSE Convert an ASCII table to a BINARY table
- which is then stored in a destination catalog.
-INPUT Pointer to the input catalog,
- Name of the input ASCII table,
- Pointer to the output catalog,
- Name of the output binary table.
-OUTPUT RETURN_OK if the ASCII table was transformed, and RETURN_ERROR
- otherwise.
-NOTES This function can be used to stick the binary translation of
- similar ASCII tables.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-tabstruct *asc2bin_tab(catstruct *catin, char *tabinname, catstruct *catout,
- char *taboutname)
-
- {
- catstruct *tabcat;
- keystruct *key;
- tabstruct *tabin,*tabout;
- static char comment[82], keyword[16], ptr[82];
- h_type htype;
- t_type ttype;
- char *buf, *lptr;
- int i;
-
-/*Convert the table name to a pointer*/
- if (!(tabin = name_to_tab(catin, tabinname, 0)))
- return NULL;
-
-/*Get the original catalog*/
- tabcat = tabin->cat;
-
-/*Create a new binary table*/
- tabout = new_tab(taboutname);
-
-/*Alloc. mem. for the whole ASCII table at once (should not be very large)*/
- QMALLOC(buf, char, tabin->tabsize);
-/*Now read all the elements from the original table*/
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, tabin->bodypos, SEEK_SET, tabcat->filename);
- QFREAD(buf, tabin->tabsize, tabcat->file, tabcat->filename);
- if (close_cat(tabcat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing", tabcat->filename);
- lptr = buf;
- for (i=tabin->tabsize/80; i-- && strncmp(lptr, "END ", 8);)
- {
-/*Interprete the next FITS line */
- if (fitspick(lptr, keyword, ptr, &htype, &ttype, comment) != RETURN_OK) {
- char line[81];
- int qflag=1;
- strncpy(line, lptr, 80);
- line[80] = '\0';
- QFPRINTF(OUTPUT, line);
- warning("*Warning*: incorrect FITS field will be ignored in ",
- tabcat->filename);
- }
- if (htype != H_COMMENT)
- {
-/*----Create a new key and fill it with the right parameters*/
- key = new_key(keyword);
- strcpy(key->comment, comment+strspn(comment, " "));
- key->htype = htype;
- key->ttype = ttype;
- key->nbytes = t_size[ttype];
-/*----!!Temporary (?) solution for STRINGS*/
- if (htype==H_STRING)
- {
- key->naxis = 1;
- QMALLOC(key->naxisn, int, 1);
- key->naxisn[0] = 32;
- key->nbytes *= key->naxisn[0];
- }
- key->nobj = 1;
-/*----Allocate memory and copy data in the same time*/
- QMEMCPY(ptr, key->ptr, char, key->nbytes);
- if (add_key(key, tabout, 0)==RETURN_ERROR)
- {
- sprintf(comment, "%s keyword found twice in ",
- keyword);
- warning(comment, tabcat->filename);
- }
- }
- lptr += 80;
- }
-
- free(buf);
-
- update_tab(tabout);
- return tabout;
- }
-
-
-/****** ttypeconv ************************************************************
-PROTO void *ttypeconv(void *ptr, t_type ttypein, t_type ttypeout)
-PURPOSE Convert data from one type to another.
-INPUT Pointer to element to convert,
- t_type of the element to convert,
- t_type of the converted element.
-OUTPUT Pointer to the converted element.
-NOTES ttypeconv does not yet handle arrays.
- A NULL vector is returned if the conversion was unsuccessful.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 15/01/98
- ***/
-
-void *ttypeconv(void *ptr, t_type ttypein, t_type ttypeout)
-
- {
- static union {char tbyte; short tshort; int tlong; float tfloat;
- double tdouble; char tstring;} ival, oval;
-
-#define OUTCONV(x, y) \
- switch(y) \
- { \
- case T_BYTE: \
- case T_STRING: \
- oval.tbyte = (char)x; \
- case T_SHORT: \
- oval.tshort = (short)x; \
- return (void *)&oval; \
- case T_LONG: \
- oval.tlong = (int)x; \
- return (void *)&oval; \
- case T_FLOAT: \
- oval.tfloat = (float)x; \
- return (void *)&oval; \
- case T_DOUBLE: \
- oval.tdouble = (double)x; \
- return (void *)&oval; \
- default: \
- return NULL; \
- }
-
- if (ttypein == ttypeout)
- return ptr;
-
- switch(ttypein)
- {
- case T_BYTE:
- case T_STRING:
- ival.tbyte = *(char *)ptr;
- OUTCONV(ival.tbyte, ttypeout);
- case T_SHORT:
- ival.tshort = *(short *)ptr;
- OUTCONV(ival.tshort, ttypeout);
- case T_LONG:
- ival.tlong = *(int *)ptr;
- OUTCONV(ival.tlong, ttypeout);
- case T_FLOAT:
- ival.tfloat = *(float *)ptr;
- OUTCONV(ival.tfloat, ttypeout);
- case T_DOUBLE:
- ival.tdouble = *(double *)ptr;
- OUTCONV(ival.tdouble, ttypeout);
- default:
- return NULL;
- }
-
- }
-
diff --git a/external/sextractor/source/fitsfield.c b/external/sextractor/source/fitsfield.c
deleted file mode 100644
index 4b0b78c..0000000
--- a/external/sextractor/source/fitsfield.c
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- fitsfield.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Functions related to the management of fields.
-*
-* Last modify: 25/04/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** read_field *************************************************************
-PROTO int read_field(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, int field, tabstruct *ftab)
-PURPOSE Read several columns from a FITS binary table for only one field.
-INPUT pointer to the OBJECTS table,
- pointer to an array of char *,
- pointer to an array of keystruct * (memory must have been allocated),
- number of keys to read,
- the field to be read,
- pointer to the FIELDS table.
-OUTPUT The number of objects read.
-NOTES The array of pointers pointed by keys is filled with pointers
- to the relevant keys (a NULL means NO key with such name was found).
- A NULL keys pointer can be given (no info returned of course).
- A NULL keynames pointer means read ALL keys belonging to the table.
- A NULL FIELDS table pointer means sequential access to the OBJECTS
- table (much slower).
- Obviously, the FIELD_NUMBER key is required in the table to be read.
-AUTHOR E. Bertin (IAP & Leiden observatory)
- E.R. Deul (Leiden Observatory)
-VERSION 25/04/97
- 28/08/97 Extended read_field() warning message to print field nr
- ***/
-int read_field(tabstruct *tab, char **keynames, keystruct **keys,
- int nkeys, int field, tabstruct *ftab)
-
- {
-#define DEFAULT_NUMBER 2048 /* default number of objects */
- /* to use when allocating memory */
- catstruct *cat;
- keystruct *key, *fkey, *fposkey, **ckeys;
- char *buf, *ptr, *fptr;
- int rfield, ok;
- int i,j,k,n, larray,narray,nfields, nb, kflag = 0, size;
-#ifdef BSWAP
- int esize;
-#endif
-
-/*!! It is not necessarily the original table */
- tab = tab->key->tab;
- cat = tab->cat;
-
-/* We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
-/* Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- nfields= tab->tfields;
- narray = tab->naxisn[1];
-
-/* Check if field is not too large*/
- if (ftab && (field>ftab->naxisn[1] || field<1))
- error(EXIT_FAILURE, "*Error*: field not found in ", cat->filename);
-
- if (!keynames)
- nkeys = tab->nkey;
-
-/* Allocate memory to store the list of keys to be read */
- if (!keys)
- {
- QMALLOC(keys, keystruct *, nkeys);
- kflag = 1;
- }
-
- if (!(fposkey = name_to_key(tab, "FIELD_POS"))) {
- if (!(fposkey = name_to_key(tab, "FIELD_NUMBER"))) {
- error(EXIT_FAILURE, "*Error*: No Field number in ", cat->filename);
- }
- }
-/* Get information from the FIELDS table if possible and if necessary*/
- fkey = name_to_key(ftab, "OBJECT_COUNT");
- if (fkey == NULL || fkey->ptr == NULL) {
- if ((key=read_key(ftab, "OBJECT_COUNT")) == NULL) {
- if ((key=read_key(ftab, "OBJECT_NUMBER")) == NULL) {
- error(EXIT_FAILURE,"*Error*: No OBJECT_COUNT in ", cat->filename);
- }
- }
- } else {
- key = fkey;
- }
-
- if (ftab)
- nb = narray = ((int *)key->ptr)[field-1];
- else
- nb = DEFAULT_NUMBER; /* Some value to start with */
-
-/*allocate memory for the arrays*/
- ckeys = keys;
- if (keynames)
- for (i=nkeys; i--;)
- {
- if ((key = name_to_key(tab, *(keynames++))))
- {
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- }
- else
- *(ckeys++) = NULL;
- }
- else
- {
- key = tab->key;
- for (i=nkeys; i--;)
- {
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- key = key->nextkey;
- }
- }
-
-/*allocate memory for the buffer where we put one line of data*/
- QMALLOC(buf, char, larray);
-
-/*Positioning to the first element*/
- open_cat(cat, READ_ONLY);
-
-/*Get information from the FIELDS table if possible*/
- if (ftab)
- {
- fkey = name_to_key(ftab, "OBJECT_POS");
- key = (fkey && fkey->ptr) ? fkey : read_key(ftab, "OBJECT_POS");
- QFSEEK(cat->file, tab->bodypos+((((int *)key->ptr)[field-1])-1)*larray,
- SEEK_SET, cat->filename)
- }
- else
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*read line by line*/
- n = 0;
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
-/*--Check that current line corresponds to the right field*/
- /*
- * Allow for short and long int FIELD_POS types
- */
- if (fposkey->ttype == T_LONG)
- {
- memcpy(&rfield,buf+fposkey->pos,sizeof(LONG));
-#ifdef BSWAP
- swapbytes(&rfield, sizeof(LONG), 1);
-#endif
- ok = (field == *((LONG *)&rfield));
- }
- else
- {
- memcpy(&rfield,buf+fposkey->pos,sizeof(short));
-#ifdef BSWAP
- swapbytes(&rfield, sizeof(short), 1);
-#endif
- ok = (field == *((short *)&rfield));
- }
-
- if (ok)
- {
-/*---- Check if there's still enough memory*/
- if (n>=nb)
- {
- nb *= 2; /* Geometric progression; can be put to a */
- /* milder progression if necessary */
- ckeys = keys;
- for (j=nkeys; j--;)
- if ((key = *(ckeys++)))
- QREALLOC(key->ptr, char, key->nbytes*nb);
- }
-
- ckeys = keys;
- for (k=nkeys; k--;)
- if ((key = *(ckeys++)))
- {
- fptr = buf+key->pos;
- ptr = (char *)key->ptr+n*(size=key->nbytes);
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(fptr, esize, size/esize);
-#endif
- for (j=size; j--;)
- *(ptr++) = *(fptr++);
- }
- n++;
- }
- }
-
-/* Finally, only keep what is needed*/
- ckeys = keys;
- if (!n)
- {
- char mess[80];
- sprintf(&mess[0],"No element read in field %d of ",field);
- warning(mess, cat->filename);
- ckeys = keys;
- for (i=nkeys; i--;)
- if ((key = *(ckeys++)))
- QFREE(key->ptr);
- }
- else {
- for (i=nkeys; i--;)
- if ((key = *(ckeys++)))
- QREALLOC(key->ptr, char, key->nbytes*n);
- }
- free(buf);
- if (kflag)
- free(keys);
-
- return n;
- }
-
diff --git a/external/sextractor/source/fitshead.c b/external/sextractor/source/fitshead.c
deleted file mode 100644
index 7b1e2ad..0000000
--- a/external/sextractor/source/fitshead.c
+++ /dev/null
@@ -1,723 +0,0 @@
-/*
- fitshead.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: general functions for handling FITS file headers.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/******* get_head **************************************************************
-PROTO int get_head(tabstruct *tab)
-PURPOSE Read a FITS header.
-INPUT Table structure.
-OUTPUT RETURN_OK if a FITS header has been found and loaded, or RETURN_ERROR
- otherwise.
-NOTES The file must be opened, and the file pointer must be located at
- the beginning of a header.
- The headbuf pointer in the catstruct is reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-int get_head(tabstruct *tab)
-
- {
- catstruct *cat;
- int i;
- char *buf;
-
- buf = tab->headbuf;
- if (!(cat = tab->cat))
- error(EXIT_FAILURE, "*Internal Error*: Table has no parent catalog","!");
-
- QFREE(buf);
- QMALLOC(buf, char, FBSIZE);
-
-/*Read the first block and check that it is FITS */
- if (!fread(buf, FBSIZE, 1, cat->file))
- {
- QFREE(buf);
- return RETURN_ERROR;
- }
-
- if (strncmp(buf, "SIMPLE ", 8) && strncmp(buf, "XTENSION", 8))
- {
- QFREE(buf);
- return RETURN_ERROR;
- }
-
-/*Find the number of FITS blocks of the header while reading it */
- for (i=1; !fitsnfind(buf,"END ", i); i++)
- {
- QREALLOC(buf, char, FBSIZE*(i+1));
- QFREAD(&buf[FBSIZE*i], FBSIZE, cat->file, cat->filename);
- }
-
- tab->headnblock = i;
- tab->headbuf = buf;
-
- return RETURN_OK;
- }
-
-
-/****** read_fitsbasic *********************************************************
-PROTO void readbasic_head(tabstruct *tab)
-PURPOSE Read the current FITS header basic keywords.
-INPUT pointer to catstruct.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-void readbasic_head(tabstruct *tab)
-
- {
- catstruct *cat;
- char key[12];
- int i, tabsize;
-
- if (!(cat = tab->cat))
- error(EXIT_FAILURE, "*Internal Error*: Table has no parent catalog","!");
-
- if (fitsread(tab->headbuf, "BITPIX ", &tab->bitpix, H_INT, T_LONG)
- ==RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Corrupted FITS header in ", cat->filename);
-
- tab->bytepix = tab->bitpix>0?(tab->bitpix/8):(-tab->bitpix/8);
-
- if (fitsread(tab->headbuf, "NAXIS ", &tab->naxis, H_INT, T_LONG)
- ==RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: Corrupted FITS header in ", cat->filename);
-
- tabsize = 0;
- if (tab->naxis>0)
- {
- QFREE(tab->naxisn);
- QMALLOC(tab->naxisn, int, tab->naxis);
-/*--get the size of the array*/
- tabsize = 1;
- for (i=0; i<tab->naxis && i<999; i++)
- {
- sprintf(key,"NAXIS%-3d", i+1);
- if (fitsread(tab->headbuf, key, &tab->naxisn[i], H_INT, T_LONG)
- ==RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: incoherent FITS header in ",
- cat->filename);
- tabsize *= tab->naxisn[i];
- }
- }
-
-/*random groups parameters (optional)*/
- tab->pcount = 0;
- fitsread(tab->headbuf, "PCOUNT ", &tab->pcount, H_INT, T_LONG);
- tab->gcount = 1;
- fitsread(tab->headbuf, "GCOUNT ", &tab->gcount, H_INT, T_LONG);
-
-/*number of fields (only for tables)*/
- tab->tfields = 0;
- fitsread(tab->headbuf, "TFIELDS ", &tab->tfields, H_INT, T_LONG);
-
-/*in case of a non-primary header*/
- tab->xtension[0] = (char)'\0';
- fitsread(tab->headbuf, "XTENSION", tab->xtension, H_STRING, T_STRING);
- tab->extname[0] = (char)'\0';
- fitsread(tab->headbuf, "EXTNAME ", tab->extname, H_STRING, T_STRING);
-
- tab->tabsize = tab->bytepix*tab->gcount*(tab->pcount+tabsize);
-
- return;
- }
-
-
-/******* readbintabparam_head **************************************************
-PROTO int readbintabparam_head(tabstruct *tab)
-PURPOSE Read the current FITS header parameters concerning the binary-table.
-INPUT pointer to tabstruct.
-OUTPUT RETURN_OK if a binary table was found and mapped, RETURN_ERROR
- otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 30/04/97
- ***/
-int readbintabparam_head(tabstruct *tab)
-
- {
- catstruct *cat;
- keystruct *key, *prevkey;
- static char strf[82], strk[12];
- char *str;
- static int naxisn[32];
- int i,j, larray, nfields,narray, pos;
-
- if (!(cat = tab->cat))
- error(EXIT_FAILURE, "*Internal Error*: Table has no parent catalog","!");
-
-/*We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- return RETURN_ERROR;
-
-/*Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- nfields= tab->nkey = tab->tfields;
- narray = tab->naxisn[1];
-
- prevkey = NULL;
-/*For each of the data fields...*/
- pos = 0;
- for (i=0; i<nfields; i++)
- {
-/*--manage the chaining of keys*/
- QCALLOC(key, keystruct, 1);
- if (prevkey)
- {
- prevkey->nextkey = key;
- key->prevkey = prevkey;
- }
- else
- tab->key = key;
- prevkey = key;
-
-/*--map binary-table fields*/
-
- sprintf(strk, "TTYPE%-3d", i+1);
- if (fitsread(tab->headbuf, strk, key->name, H_STRING, T_STRING)
- != RETURN_OK) {
- error(EXIT_FAILURE,
- "*Error*: Incorrect FITS binary-table header in ", cat->filename);
- }
- fitsread(tab->headbuf, strk, key->comment, H_HCOMMENT, T_STRING);
-
- sprintf(strk, "TUNIT%-3d", i+1);
- fitsread(tab->headbuf, strk, key->unit, H_STRING, T_STRING);
- sprintf(strk, "TDISP%-3d", i+1);
- fitsread(tab->headbuf, strk, key->printf, H_STRING, T_STRING);
- if (*key->printf)
- strcpy(key->printf,tdisptoprintf(key->printf));
-
- sprintf(strk, "TFORM%-3d", i+1);
- if (fitsread(tab->headbuf, strk, strf, H_STRING, T_STRING) != RETURN_OK) {
- error(EXIT_FAILURE,
- "*Error*: Incorrect FITS binary-table header in ", cat->filename);
- }
- key->pos = pos;
- pos += (key->nbytes = tsizeof(strf));
- key->ttype = ttypeof(strf);
- switch(key->ttype)
- {
- case T_BYTE:
- case T_SHORT:
- case T_LONG:
- key->htype = H_INT;
- break;
- case T_FLOAT:
- case T_DOUBLE:
- key->htype = H_EXPO;
- break;
- case T_STRING:
- key->htype = H_STRING;
- break;
- default:
- error(EXIT_FAILURE, "*Internal Error*: Unkwown T_TYPE for ", str);
- }
-
-/*--handle the special case of multimensional arrays*/
- if ((naxisn[0] = key->nbytes/t_size[key->ttype]) > 1)
- {
- sprintf(strk, "TDIM%-3d", i+1);
- if (fitsread(tab->headbuf, strk, strf, H_STRING, T_STRING) == RETURN_OK)
- {
- str = strf;
- for (j=0; (naxisn[j]=(int)strtol(str+1, &str, 10)); j++);
- key->naxis = j;
- }
- else
- key->naxis = 1;
- QMALLOC(key->naxisn, int, key->naxis);
- for (j=0; j<key->naxis; j++)
- key->naxisn[j] = naxisn[j];
- }
- else
- key->naxis = 0;
-
- key->nobj = narray;
- key->tab = tab;
- }
-
- if (pos != larray)
- error(EXIT_FAILURE,
- "*Error*: Malformed FITS binary-table header in ", cat->filename);
-
-/*make both ends of the chain meet*/
- prevkey->nextkey = tab->key;
- tab->key->prevkey = prevkey;
-
- return RETURN_OK;
- }
-
-
-/****** update_head ************************************************************
-PROTO int update_head(tabstruct *tab)
-PURPOSE Update a FITS header according to what's in the table.
-INPUT Table structure.
-OUTPUT RETURN_OK if tab is a binary table, or RETURN_ERROR otherwise.
-NOTES The headbuf pointer in the tabstruct might be reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 12/05/97
- ***/
-int update_head(tabstruct *tab)
-
- {
- keystruct *key;
- tabstruct *ctab;
- int i,j,n, endpos, naxis1;
- static char strk[82], str[82];
-
-/* If not a binary table, do only a few basic things */
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- {
- fitsadd(tab->headbuf, "BITPIX ", "BITS PER PIXEL");
- fitswrite(tab->headbuf, "BITPIX ", &tab->bitpix, H_INT, T_LONG);
- fitsadd(tab->headbuf,"NAXIS ", "NUMBER OF AXES");
- fitswrite(tab->headbuf, "NAXIS ", &tab->naxis, H_INT, T_LONG);
- for (i=0; i<tab->naxis; i++)
- {
- sprintf(strk, "NAXIS%-3d", i+1);
- if (fitsfind(tab->headbuf, strk) == RETURN_ERROR
- && (fitsfind(tab->headbuf, "END ")+1)*80 >= tab->headnblock*FBSIZE)
- {
- tab->headnblock++;
- QREALLOC(tab->headbuf, char, tab->headnblock*FBSIZE);
- memset(tab->headbuf + (tab->headnblock-1)*FBSIZE, ' ', FBSIZE);
- }
- fitsadd(tab->headbuf, strk, "NUMBER OF ELEMENTS ALONG THIS AXIS");
- fitswrite(tab->headbuf, strk, &tab->naxisn[i], H_INT, T_LONG);
- }
- return RETURN_ERROR;
- }
-
-/*First, remove all existing TTYPE, TFORM, etc...*/
- fitsremove(tab->headbuf, "TTYPE???");
- fitsremove(tab->headbuf, "TFORM???");
- fitsremove(tab->headbuf, "TUNIT???");
- fitsremove(tab->headbuf, "TZERO???");
- fitsremove(tab->headbuf, "TSCAL???");
- fitsremove(tab->headbuf, "TDIM???");
- fitsremove(tab->headbuf, "TDISP???");
-
-/*Update EXTNAME, the table name */
- if (*tab->extname)
- {
- fitsadd(tab->headbuf, "EXTNAME ", "TABLE NAME");
- fitswrite(tab->headbuf, "EXTNAME ", tab->extname, H_STRING, T_STRING);
- }
-
-/*Change NAXIS1 in order to take into account changes in width*/
- naxis1 = 0;
- key = tab->key;
- if (tab->nkey>1000) {
- for (i=0; i<MIN(999,tab->nkey); i++) {
- naxis1 += key->nbytes;
- key = key->nextkey;
- }
- fitswrite(tab->headbuf, "NAXIS1 ", &naxis1, H_INT, T_LONG);
- } else {
- fitswrite(tab->headbuf, "NAXIS1 ", &tab->naxisn[0], H_INT, T_LONG);
- }
-
-/*Change NAXIS1 in the number of fields */
- tab->tfields = MIN(999,tab->tfields);
- fitswrite(tab->headbuf, "TFIELDS ", &tab->tfields, H_INT, T_LONG);
-
-/*Changes in the number of elements (look for possible segments)*/
- for (ctab = tab, n = ctab->naxisn[1];
- (ctab=ctab->nexttab) && !ctab->nseg;)
- n += ctab->naxisn[1];
- fitswrite(tab->headbuf, "NAXIS2 ", &n, H_INT, T_LONG);
-
- key = tab->key;
- if (!key)
- return RETURN_ERROR;
-
- endpos = fitsfind(tab->headbuf, "END ");
- if (tab->nkey>1000)
- warning("Too many output keys, trashing the ones bejond 999", "");
- for (i=0; i<MIN(999,tab->nkey); i++)
- {
-/*--Check that the new parameters will fit in the allocated memory space*/
- endpos += 2;
- if (*key->unit)
- endpos++;
- if (*key->printf)
- endpos++;
- if (key->naxis>1)
- endpos++;
- if (endpos >= (n=tab->headnblock)*(FBSIZE/80))
- {
- QREALLOC(tab->headbuf, char, (n+1)*FBSIZE);
- memset(tab->headbuf + n*FBSIZE, ' ', FBSIZE);
- tab->headnblock++;
- }
- sprintf(strk, "TTYPE%-3d", i+1);
- fitsadd(tab->headbuf, strk, key->comment);
- fitswrite(tab->headbuf, strk, key->name, H_STRING, T_STRING);
- sprintf(strk, "TFORM%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- tformof(str, key->ttype, key->nbytes/t_size[key->ttype]);
- fitswrite(tab->headbuf, strk, str, H_STRING, T_STRING);
- if (key->naxis>1)
- {
- char *str2, *str2lim;
-
- sprintf(strk, "TDIM%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- sprintf(str, "(");
- str2 = str+1;
- str2lim = str+70; /* Prevent an excessively large string */
- for (n=0; n<key->naxis && str2<str2lim; n++)
- {
- sprintf(str2, n?", %d%n":"%d%n", key->naxisn[n],&j);
- str2 += j;
- }
- sprintf(str2, ")");
- fitswrite(tab->headbuf, strk, str, H_STRING, T_STRING);
- }
- if (*key->unit)
- {
- sprintf(strk, "TUNIT%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- fitswrite(tab->headbuf, strk, key->unit, H_STRING, T_STRING);
- }
- if (*key->printf)
- {
- sprintf(strk, "TDISP%-3d", i+1);
- fitsadd(tab->headbuf, strk, "");
- fitswrite(tab->headbuf, strk, printftotdisp(key->printf),
- H_STRING, T_STRING);
- }
- key = key->nextkey;
- }
-
-/*Remove any memory allocated in excess (and correct headnblock by the way)*/
- if ((n = endpos/(FBSIZE/80)+1) < tab->headnblock)
- QREALLOC(tab->headbuf, char, (tab->headnblock = n)*FBSIZE);
-
-/*That may be enough for now; to be continued...*/
-
- return RETURN_OK;
- }
-
-
-/****** addkeyto_head **********************************************************
-PROTO int addkeyto_head(tabstruct *tab, keystruct *key)
-PURPOSE Add a keyword and its value to a table header.
-INPUT Table structure,
- Key containing the keyword and its value.
-OUTPUT Line position in the FITS header.
-NOTES The headbuf pointer in the tabstruct might be reallocated.
- Pre-existing keywords are overwritten (but not their comments).
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 05/02/97
- ***/
-int addkeyto_head(tabstruct *tab, keystruct *key)
-
- {
- int n;
-
- if (fitsfind(tab->headbuf, key->name) == RETURN_ERROR
- && (fitsfind(tab->headbuf, "END ")+1)*80 >= tab->headnblock*FBSIZE)
- {
- tab->headnblock++;
- QREALLOC(tab->headbuf, char, tab->headnblock*FBSIZE);
- memset(tab->headbuf + (tab->headnblock-1)*FBSIZE, ' ', FBSIZE);
- }
-
- n = fitsadd(tab->headbuf, key->name, key->comment);
- fitswrite(tab->headbuf, key->name, key->ptr, key->htype, key->ttype);
-
- return n;
- }
-
-
-/****** tformof ****************************************************************
-PROTO int tformof(char *str, t_type ttype, int n)
-PURPOSE Return the ``TFORM'' string corresponding to a t_type
- and the number of elements.
-INPUT a char pointer (to be filled with the T_FORM string),
- t_type,
- Number of elements.
-OUTPUT RETURN_OK if everything went as expected, or RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-int tformof(char *str, t_type ttype, int n)
-
- {
- char t;
-
- switch (ttype)
- {
- case T_BYTE: t = 'B';
- break;
- case T_SHORT: t = 'I';
- break;
- case T_LONG: t = 'J';
- break;
- case T_FLOAT: t = 'E';
- break;
- case T_DOUBLE: t = 'D';
- break;
- case T_STRING: t = 'A';
- break;
- default: return RETURN_ERROR;
- }
-
- sprintf(str, "%d%c", n, t);
-
- return RETURN_OK;
- }
-
-
-/****** tsizeof ****************************************************************
-PROTO int tsizeof(char *str)
-PURPOSE Return the size of a binary-table field from its ``TFORM''.
-INPUT TFORM string (see the FITS documentation).
-OUTPUT size in bytes, or RETURN_ERROR if the TFORM is unknown.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/96
- ***/
-int tsizeof(char *str)
-
- {
- int n;
- char *str2;
-
- str2 = str;
- if (!(n = strtol(str, &str2, 10)))
- n = 1;
-
- switch ((int)*str2)
- {
- case 'L': case 'B': case 'A': return n;
- case 'X': return (n-1)/8+1;
- case 'I': return 2*n;
- case 'J': case 'E': return 4*n;
- case 'C': case 'D': case 'P': return 8*n;
- case 'M': return 16*n;
- default: return RETURN_ERROR;
- }
-
- }
-
-
-/****** ttypeof ****************************************************************
-PROTO t_type ttypeof(char *str)
-PURPOSE Give the ``t_type'' of a binary-table field from its ``TFORM''.
-INPUT TFORM string (see the FITS documentation).
-OUTPUT size in bytes, or RETURN_ERROR if the TFORM is unknown.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-t_type ttypeof(char *str)
-
- {
- char *str2;
-
- str2 = str;
- strtol(str, &str2, 10);
- switch ((int)*str2)
- {
- case 'L': case 'B': case 'X': return T_BYTE;
- case 'I': return T_SHORT;
- case 'J': return T_LONG;
- case 'E': return T_FLOAT;
- case 'D': return T_DOUBLE;
- case 'A': return T_STRING;
- default: return RETURN_ERROR;
- }
-
- }
-
-
-/****** tdisptoprintf **********************************************************
-PROTO char *tdisptoprintf(char *tdisp)
-PURPOSE Convert the ``TDISP'' FITS format to the printf() format.
-INPUT TDISP format string (see the FITS documentation).
-OUTPUT printf() format string (see e.g. K&R).
-NOTES The present conversion does not handle binary or engineer notations.
- A NULL vector is returned if the conversion was unsuccessful.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/08/97
- ***/
-char *tdisptoprintf(char *tdisp)
-
- {
- static char str[16], control[4];
- int w,d, n;
-
- w = d = 0;
- n = 0;
- n=sscanf(tdisp,"%[ALIBOZFENSGD]%d.%d", control, &w, &d)-1;
- if (!w)
- {
- warning("Strange TDISP format: ", tdisp);
- return NULL;
- }
- switch ((int)*control)
- {
- case 'A':
- sprintf(str, "%%%dc",w);
- break;
- case 'L':
- sprintf(str, "%%%dd",w);
- break;
- case 'I':
- if (n>1)
- sprintf(str, "%%%d.%dd",w,d);
- else
- sprintf(str, "%%%dd",w);
- break;
- case 'B': case 'Z':
- if (n>1)
- sprintf(str, "%%%d.%dx",w,d);
- else
- sprintf(str, "%%%dx",w);
- break;
- case 'O':
- if (n>1)
- sprintf(str, "%%%d.%do",w,d);
- else
- sprintf(str, "%%%do",w);
- break;
- case 'F':
- if (n>1)
- sprintf(str, "%%%d.%df",w,d);
- else
- sprintf(str, "%%%df",w);
- break;
- case 'E': case 'D':
- if (n>1)
- sprintf(str, "%%%d.%dE",w,d);
- else
- sprintf(str, "%%%dE",w);
- break;
- case 'G':
- if (n>1)
- sprintf(str, "%%%d.%dG",w,d);
- else
- sprintf(str, "%%%dG",w);
- break;
- default:
- warning("Unknown TDISP format: ", tdisp);
- return NULL;
- }
-
- return str;
- }
-
-
-/****** printftotdisp **********************************************************
-PROTO char *printftotdisp(char *tdisp)
-PURPOSE Convert the printf() format to the ``TDISP'' FITS format.
-INPUT printf() format string (see e.g. K&R).
-OUTPUT TDISP format string (see the FITS documentation).
-NOTES The handling of C string formatting does not include the precision.
- NULL is returned in case of unsucessful conversion.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/08/97
- ***/
-char *printftotdisp(char *cprintf)
-
- {
- static char str[16], *control;
- int w,d,n;
-
- *str = 0;
- w = d = 0;
- if (!(control = strpbrk(cprintf, "cdueERfFgGoOxXs")))
- {
- warning("Unknown printf() format: ", cprintf);
- return NULL;
- }
-
- n = sscanf(cprintf,"%%%d.%d", &w, &d);
- w = abs(w);
- if (!n)
- {
- warning("Unconvertible printf() format: ", cprintf);
- return NULL;
- }
-
- switch ((int)*control)
- {
- case 'c':
- sprintf(str, "A%d",w);
- break;
- case 's':
- sprintf(str, "A%d",w);
- break;
- case 'd': case 'u':
- if (n>1)
- sprintf(str, "I%d.%d",w,d);
- else
- sprintf(str, "I%d",w);
- break;
- case 'o': case 'O':
- if (n>1)
- sprintf(str, "O%d.%d",w,d);
- else
- sprintf(str, "O%d",w);
- break;
- case 'x': case 'X':
- if (n>1)
- sprintf(str, "Z%d.%d",w,d);
- else
- sprintf(str, "Z%d",w);
- break;
- case 'f': case 'F':
- if (n>1)
- sprintf(str, "F%d.%d",w,d);
- else
- sprintf(str, "F%d",w);
- break;
- case 'e': case 'E':
- if (n>1)
- sprintf(str, "E%d.%d",w,d);
- else
- sprintf(str, "E%d",w);
- break;
- case 'g': case 'G':
- if (n>1)
- sprintf(str, "G%d.%d",w,d);
- else
- sprintf(str, "G%d",w);
- break;
- default:
- warning("Unknown printf() format: ", cprintf);
- return NULL;
- }
-
- return str;
- }
-
diff --git a/external/sextractor/source/fitshead.h b/external/sextractor/source/fitshead.h
deleted file mode 100644
index 6830401..0000000
--- a/external/sextractor/source/fitshead.h
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- fitshead.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, DeNIS/LDAC.
-*
-* Contents: header structure and templates for catalog data.
-*
-* Last modify: 18/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-paramstruct extpar[] = {
- {"XDATE ", 0, sex.ext_date, "%-18s", H_STRING},
- {"XTIME ", 0, sex.ext_time, "%-18s", H_STRING},
- {"XELAPSED", T_DOUBLE, &sex.ext_elapsed, "%7.1f", H_FLOAT},
- {"XSOFTVER", 0, sex.soft_name, "%-18s", H_STRING},
-/*
- {"SEXSTRSY", T_LONG, &field.stripheight, "%5d", H_INT},
- {"SEXPIXS ", T_DOUBLE, &field.pixscale, "%-15G", H_EXPO},
-*/
- {"SEXSFWHM", T_DOUBLE, &prefs.seeing_fwhm, "%-13G", H_EXPO},
- {"SEXNNWF ", 0, sex.nnw_name, "%-18s", H_STRING},
- {"SEXGAIN ", T_DOUBLE, &prefs.gain, "%6.2f", H_EXPO},
-/*
- {"XDBKGLEV", T_FLOAT, &field.backmean, "%-13G", H_EXPO},
- {"XDBKGDEV", T_FLOAT, &field.backsig, "%-13G", H_EXPO},
- {"XDTHRESH", T_DOUBLE, &field.thresh, "%-15G", H_EXPO},
-*/
- {"SEXCONFF", 0, sex.prefs_name, "%-18s", H_STRING},
- {"SEXDETT ", 0, &prefs.detect_type, "%-18s", H_KEY},
- {"SEXTHLD ", T_DOUBLE, &prefs.threshold, "%-13G", H_EXPO},
- {"XMINAREA", T_LONG, &prefs.ext_minarea, "%5d", H_INT},
- {"SEXCONV ", T_LONG, &prefs.filter_flag, "%1s", H_BOOL},
- {"SEXCONVN", T_LONG, &prefs.convnorm_flag, "%1s", H_BOOL},
- {"SEXCONVF", 0, sex.filter_name, "%-18s", H_STRING},
- {"XNTHRESH", T_LONG, &prefs.deblend_nthresh, "%3d", H_INT},
- {"XMINCONT", T_DOUBLE, &prefs.deblend_mincont, "%8f", H_FLOAT},
- {"SEXCLN ", T_LONG, &prefs.clean_flag, "%1s", H_BOOL},
- {"SEXCLNPA", T_DOUBLE, &prefs.clean_param, "%5.2f", H_FLOAT},
- {"SEXCLNST", T_LONG, &prefs.clean_stacksize, "%6d", H_INT},
- {"XAPERTD ", T_LONG, &prefs.apert[0], "%7.1f", H_FLOAT},
- {"XAPERTD2", T_LONG, &prefs.apert[1], "%7.1f", H_FLOAT},
- {"SEXAPEK1", T_DOUBLE, &prefs.kron_fact, "%4.1f", H_FLOAT},
- {"SEXAPEK2", T_DOUBLE, &prefs.kron_nsig, "%4.1f", H_FLOAT},
- {"SEXAPEK3", T_DOUBLE, &prefs.kron_minsig, "%4.1f", H_FLOAT},
- {"XSATLEV ", T_DOUBLE, &prefs.satur_level, "%-13G", H_EXPO},
- {"XMAGZPT ", T_DOUBLE, &prefs.mag_zeropoint, "%8.4f", H_FLOAT},
- {"SEXMGGAM", T_DOUBLE, &prefs.mag_gamma, "%4.2f", H_FLOAT},
-/*
- {"XBKGNDSX", T_LONG, &field.backw, "%5d", H_INT},
- {"XBKGNDSY", T_LONG, &field.backh, "%5d", H_INT},
- {"SEXBKGFX", T_LONG, &field.nbackfx, "%3d", H_INT},
- {"SEXBKGFY", T_LONG, &field.nbackfy, "%3d", H_INT},
-*/
- {"SEXPBKGT", 0, &prefs.pback_type, "-18s", H_KEY},
- {"SEXPBKGS", T_LONG, &prefs.pback_size, "%3d", H_INT},
- {"SEXPIXSK", T_LONG, &prefs.mem_pixstack, "%8d", H_INT},
- {"SEXFBUFS", T_LONG, &prefs.mem_bufsize, "%5d", H_INT},
- {"SEXISAPR", T_DOUBLE, &prefs.scan_isoapratio, "%4.2f", H_FLOAT},
- {"SEXNDET ", T_LONG, &cat.ndetect, "%9d", H_INT},
- {"SEXNFIN ", T_LONG, &cat.ntotal, "%9d", H_INT},
- {"SEXNPARA", T_LONG, &cat.nparam, "%3d", H_INT},
- {""}
- };
-
-/*------------------------- start of primary header -------------------------*/
-char primhead[36][80] = {
- "SIMPLE = T / Well this is standard FITS",
- "BITPIX = 8 /",
- "NAXIS = 0 /",
- "EXTEND = T / Extension(s) may be present",
- "COMMENT This is an individual LDAC-SEx catalog",
- "END "};
-
-/*---------------- classical `ASCFIELD' binary table header -----------------*/
-char ascfieldhead[36][80] = {
- "XTENSION= 'BINTABLE' / This is a binary table",
- "BITPIX = 8 /",
- "NAXIS = 2 /",
- "NAXIS1 = 0 / Number of FIELD entries",
- "NAXIS2 = 1 / Only one big row",
- "PCOUNT = 0 /",
- "GCOUNT = 1 /",
- "TFIELDS = 1 /",
- "EXTNAME = 'ASCFIELD' / ASCII data for the current FIELD",
- "TTYPE1 = 'Field Header Card' / Label",
- "TFORM1 = '0A80' / Data format: ASCII",
- "END "};
-
-/*----------------- SEx contribution to the `ASCFIELD' table ----------------*/
-char extparmodel[][80] = {
- "XSOFTVER= 'SExtractor 1.1' / Software used for data reduction",
- "XDATE = '00/00/00' / Date at the end of extraction",
- "XTIME = '00:00:00' / Time at the end of extraction",
- "XELAPSED= 0.0 / Elapsed time (s) during extraction",
- "XMINAREA= 0 / Minimum area for extraction (pixels)",
- "XNTHRESH= 0 / Number of sub-thresholds",
- "XMINCONT= 0.0 / Contrast parameter for deblending",
- "XSATLEV = 0.0 / Saturation (ADU)",
- "XBKGNDSX= 0 / Background mesh width (pixels)",
- "XBKGNDSY= 0 / Background mesh height (pixels)",
- "SEXPIXS = 1 / Pixel scale used (arcsec)",
- "SEXSFWHM= 1.0 / Seeing FWHM used (arcsec)",
- "SEXNNWF = 'Default.nnw' / NNW filename for classification",
- "SEXGAIN = 0.0 / Gain (in e- per ADU)",
- "XDBKGLEV= 0.0 / Median background (ADU)",
- "XDBKGDEV= 0.0 / Median background rms (ADU)",
- "XDTHRESH= 0.0 / Threshold computed from background (ADU)",
- "SEXCONFF= 'Default.sex' / Configuration filename",
- "SEXDET = 'CCD' / Detection type",
- "SEXTHLDT= 'SIGMA' / Threshold type",
- "SEXTHLD = 0.0 / Basic threshold used for extraction (ADU)",
- "SEXCONV = F / Convolution flag",
- "SEXCONVN= F / Convolution normalisation flag",
- "SEXCONVF= 'Default.conv' / Convolution filename",
- "SEXCLN = F / Cleaning flag",
- "SEXCLNPA= 0.0 / Cleaning parameter",
- "SEXCLNST= 0 / Cleaning object stack-size (# of objects)",
- "XAPERTD = 0.0 / Fixed aperture diameter (pixels)",
- "XAPERTD2= 0.0 / Second fixed aperture diameter (pixels)",
- "SEXAPEK1= 0.0 / Kron parameter",
- "SEXAPEK2= 0.0 / Kron radius for analysis",
- "SEXAPEK3= 0.0 / Kron minimum radius",
- "XMAGZPT = 0.0 / Magnitude zero-point",
- "SEXMGGAM= 0.0 / Magnitude gamma",
- "SEXBKGFX= 0 / Background filter width",
- "SEXBKGFY= 0 / Background filter height",
- "SEXPBKGT= 'GLOBAL' / Background type",
- "SEXPBKGS= 0 / Local area thickness (pixels)",
- "SEXPIXSK= 0 / Pixel stack-size (pixels)",
- "SEXFBUFS= 0 / Frame-buffer size (scanlines)",
- "SEXISAPR= 0 / Iso/aper ratio",
- "SEXNDET = 0 / Number of detections",
- "SEXNFIN = 0 / Number of final extracted objects",
- "SEXNPARA= 0 / Number of parameters per object",
- "END "}; /* don't remove the END!!! */
-
-
-/*----------------------- `OBJECTS' binary table header ---------------------*/
-
-char objheadmodel[][80] = {
- "XTENSION= 'BINTABLE' / This is a binary table",
- "BITPIX = 8 /",
- "NAXIS = 2 /",
- "NAXIS1 = 0 /",
- "NAXIS2 = 0 / Number of catalog entries",
- "PCOUNT = 0 /",
- "GCOUNT = 1 /",
- "TFIELDS = 0 /",
- "EXTNAME = 'OBJECTS' / Object data",
- "END "};
-
-
-/*---------------- FITS keyword to exclude from IMAGE header ----------------*/
-
-char blacklist[][16] = {
-
- "SIMPLE ",
- "NAXIS ",
- "PCOUNT ",
- "GCOUNT ",
- "TFIELDS ",
- "END ",
- ""
- };
-
diff --git a/external/sextractor/source/fitskey.c b/external/sextractor/source/fitskey.c
deleted file mode 100644
index 0790df4..0000000
--- a/external/sextractor/source/fitskey.c
+++ /dev/null
@@ -1,951 +0,0 @@
-/*
- fitskey.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Functions related to the management of keys.
-*
-* Last modify: 13/03/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** add_key ****************************************************************
-PROTO int add_key(keystruct *key, tabstruct *tab, int pos)
-PURPOSE Copy a key from one table to another.
-INPUT Pointer to the key,
- Pointer to the table,
- Pointer to the destination table,
- Position (1= first, <=0 = at the end)
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES A preexisting key in the destination table yields a RETURN_ERROR.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 26/03/96
- ***/
-int add_key(keystruct *key, tabstruct *tab, int pos)
-
- {
-
-/*Check if a similar key doesn't already exist in the dest. cat */
- if (name_to_key(tab, key->name))
- return RETURN_ERROR;
-
-/*Update links (portion of code similar to that of copy_key below) */
- if ((key->nextkey = pos_to_key(tab, pos)))
- {
- (key->prevkey = key->nextkey->prevkey)->nextkey = key;
- key->nextkey->prevkey = key;
-/*--the first place has a special meaning*/
- if (pos==1)
- tab->key = key;
- }
- else
-/*There was no no key before*/
- tab->key = key->nextkey = key->prevkey = key;
-
- tab->nkey++;
-
- return RETURN_OK;
- }
-
-
-/****** blank_keys *************************************************************
-PROTO int blank_keys(tabstruct *tab)
-PURPOSE Put the array pointers from all keys in a table to NULL.
-INPUT Pointer to the table.
-OUTPUT RETURN_OK if keys were found, and RETURN_ERROR otherwise.
-Notes: -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int blank_keys(tabstruct *tab)
-
- {
- keystruct *key;
- int k;
-
- if (!(key = tab->key))
- return RETURN_ERROR;
-
- for (k=tab->nkey; k--;)
- {
- key->ptr = NULL;
- key = key->nextkey;
- }
-
- return RETURN_OK;
- }
-
-
-/****** copy_key ***************************************************************
-PROTO int copy_key(tabstruct *tabin, char *keyname, tabstruct *tabout, int pos)
-PURPOSE Copy a key from one table to another.
-INPUT Pointer to the original table,
- Name of the key,
- Pointer to the destination table,
- Position (1= first, <=0 = at the end)
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES A preexisting key in the destination table yields a RETURN_ERROR,
- the ptr member is NOT COPIED.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 19/08/96
- ***/
-int copy_key(tabstruct *tabin, char *keyname, tabstruct *tabout, int pos)
-
- {
- keystruct *keyin, *keyout;
-
-/*Convert the key name to a pointer*/
- if (!(keyin = name_to_key(tabin, keyname)))
- return RETURN_ERROR;
-
-/*Check if a similar key doesn't already exist in the dest. cat */
- if (name_to_key(tabout, keyname))
- return RETURN_ERROR;
-
- tabout->nkey++;
-
-/*First, allocate memory and copy data */
- QCALLOC(keyout, keystruct, 1);
- *keyout = *keyin;
- keyout->ptr = NULL;
- if (keyin->naxis)
- QMEMCPY(keyin->naxisn, keyout->naxisn, int, keyin->naxis);
-
-/*Then, update the links */
- if ((keyout->nextkey = pos_to_key(tabout, pos)))
- {
- (keyout->prevkey = keyout->nextkey->prevkey)->nextkey = keyout;
- keyout->nextkey->prevkey = keyout;
-/*--the first place has a special meaning*/
- if (pos==1)
- tabout->key = keyout;
- }
- else
-/*There was no no key before*/
- tabout->key = keyout->nextkey = keyout->prevkey = keyout;
-
- return RETURN_OK;
- }
-
-
-/****** free_key ***************************************************************
-PROTO void free_key(keystruct *key)
-PURPOSE Free memory associated to a key ptr.
-INPUT Pointer to the key.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 19/08/96
- ***/
-void free_key(keystruct *key)
-
- {
- free(key->naxisn);
- free(key->ptr);
- free(key);
-
- return;
- }
-
-
-/****** new_key ****************************************************************
-PROTO keystruct *new_key(char *keyname)
-PURPOSE Create a new key.
-INPUT Name of the key.
-OUTPUT A pointer to the new keystruct.
-NOTES This function is only provided as a counterpart to new_tab() and
- new_cat(): in order to be usable, other key parameters MUST be
- handled by the user.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 26/03/96
- ***/
-keystruct *new_key(char *keyname)
-
- {
- keystruct *key;
-
- QCALLOC(key, keystruct, 1);
- strcpy(key->name, keyname);
-
- return key;
- }
-
-
-/****** read_key ***************************************************************
-PROTO keystruct *read_key(tabstruct *tab, char *keyname)
-PURPOSE Read one simple column from a FITS binary table.
-INPUT pointer to the table,
- name of the key,
-OUTPUT A pointer to the relevant key, or NULL if the desired key is not
- found in the table.
-NOTES If key->ptr is not NULL, the function doesn't do anything.
-AUTHOR E. Bertin (IAP & Leiden observatory)
- E.R. Deul (Sterrewacht Leiden) (Added open_cat error checking)
-VERSION 13/03/99
- ***/
-keystruct *read_key(tabstruct *tab, char *keyname)
-
- {
- catstruct *cat;
- keystruct *key;
- char *buf, *ptr, *fptr,*fptr0;
- int i,j, larray,narray,size;
-#ifdef BSWAP
- int esize;
-#endif
-
- if (!(key = name_to_key(tab, keyname)))
- return NULL;
-
-/*If ptr is not NULL, there is already something loaded there: let's free mem */
- QFREE(key->ptr);
-
-/*!! It is not necessarily the original table */
- tab = key->tab;
- cat = tab->cat;
-
-/*We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
-/*Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- narray = tab->naxisn[1];
-
-/*Positioning to the first element*/
- if (open_cat(cat, READ_ONLY) == RETURN_ERROR)
- error(EXIT_FAILURE, "*Error*: opening catalog ",cat->filename);
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*allocate memory for the buffer where we put one line of data*/
- QMALLOC(buf, char, larray);
-
- fptr0 = buf+key->pos;
- size = key->nbytes;
-
-/*allocate memory for the array*/
- QMALLOC(ptr, char, size*narray);
- key->ptr = ptr;
-
-/*read line by line*/
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
- fptr = fptr0;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(fptr0, esize, size/esize);
-#endif
- for (j = size; j--;)
- *(ptr++) = *(fptr++);
- }
-
- free(buf);
- return key;
- }
-
-
-/****** read_keys **************************************************************
-PURPOSE Read several columns from a FITS binary table.
-INPUT pointer to the table,
- pointer to an array of char *,
- pointer to an array of keystruct * (memory must have been allocated),
- number of keys to read,
- an optional mask pointer.
-OUTPUT -.
-NOTES The array of pointers pointed by keys is filled with pointers
- to the relevant keys (a NULL means NO key with such name was found).
- A NULL keys pointer can be given (no info returned of course).
- A NULL keynames pointer means read ALL keys belonging to the table.
- A NULL mask pointer means NO selection for reading.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-void read_keys(tabstruct *tab, char **keynames, keystruct **keys, int nkeys,
- BYTE *mask)
-
- {
- catstruct *cat;
- keystruct *key, **ckeys;
- BYTE *mask2;
- char *buf, *ptr, *fptr;
- int i,j,k,n, larray,narray, nb, kflag = 0, size;
-#ifdef BSWAP
- int esize;
-#endif
-
-/*!! It is not necessarily the original table */
- tab = tab->key->tab;
- cat = tab->cat;
-
-/*We are expecting a 2D binary-table, and nothing else*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: No binary table in ", cat->filename);
-
-/*Size and number of lines in the binary table*/
- larray = tab->naxisn[0];
- narray = tab->naxisn[1];
-
- nb = 0;
- if ((mask2 = mask))
- {
- for (i=narray; i--;)
- if (*(mask2++))
- nb++;
- }
-
- if (!keynames)
- nkeys = tab->nkey;
-
-/*Allocate memory to store the list of keys to be read */
- if (!keys)
- {
- QMALLOC(keys, keystruct *, nkeys);
- kflag = 1;
- }
-
-/*allocate memory for the arrays*/
- ckeys = keys;
- if (keynames)
- for (i=nkeys; i--;)
- {
- if ((key = name_to_key(tab, *(keynames++))))
- {
- QFREE(key->ptr);
- if (nb)
- key->nobj = nb;
- else
- nb=key->nobj;
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- }
- else
- *(ckeys++) = NULL;
- }
- else
- {
- key = tab->key;
- for (i=nkeys; i--;)
- {
- QFREE(key->ptr);
- if (nb)
- key->nobj = nb;
- else
- nb=key->nobj;
- QMALLOC(key->ptr, char, key->nbytes*nb);
- *(ckeys++) = key;
- key = key->nextkey;
- }
- }
-
-/*allocate memory for the buffer where we put one line of data*/
- QMALLOC(buf, char, larray);
-
-/*Positioning to the first element*/
- open_cat(cat, READ_ONLY);
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*read line by line*/
- n = 0;
- mask2 = mask;
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
- if (!mask || *(mask2++))
- {
- ckeys = keys;
- for (j=nkeys; j--;)
- if (key = *(ckeys++))
- {
- fptr = buf+key->pos;
- ptr = (char *)key->ptr+n*(size=key->nbytes);
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(fptr, esize, size/esize);
-#endif
- for (k = size; k--;)
- *(ptr++) = *(fptr++);
- }
- n++;
- }
- }
-
- free(buf);
- if (kflag)
- free(keys);
-
- return;
- }
-
-/****** remove_key *************************************************************
-PROTO int remove_key(tabstruct *tab, char *keyname)
-PURPOSE Remove a key from a table.
-INPUT Pointer to the table,
- Name of the key.
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES If keyname = "", the last key from the list is removed.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/01/97
- ***/
-int remove_key(tabstruct *tab, char *keyname)
-
- {
- keystruct *key, *prevkey, *nextkey;
-
- if (!keyname || !tab->nkey || !tab->key)
- return RETURN_ERROR;
-
- if (keyname[0])
- {
-/*--Convert the key name to a pointer*/
- if (!(key = name_to_key(tab, keyname)))
- return RETURN_ERROR;
- }
- else
- key = tab->key->prevkey;
-
- prevkey = key->prevkey;
-/*Free memory*/
- nextkey = key->nextkey;
- if (tab->key==key)
- tab->key = nextkey;
- free_key(key);
-
- if (--tab->nkey)
- {
-/*--update the links of neighbours*/
- nextkey->prevkey = prevkey;
- prevkey->nextkey = nextkey;
- }
- else
- tab->key = NULL;
-
- return RETURN_OK;
- }
-
-
-/****** remove_keys ************************************************************
-PROTO int remove_keys(tabstruct *tab)
-PURPOSE Remove all keys from a table.
-INPUT Pointer to the table.
-OUTPUT RETURN_OK if keys were found, and RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-int remove_keys(tabstruct *tab)
-
- {
- int k;
-
- if (!tab->key)
- return RETURN_ERROR;
-
- for (k=tab->nkey; k--;)
- remove_key(tab, "");
-
- return RETURN_OK;
- }
-
-
-/****** name_to_key ************************************************************
-PROTO keystruct *name_to_key(tabstruct *tab, char *keyname)
-PURPOSE Name search of a key in a table.
-INPUT Pointer to the table,
- Key name.
-OUTPUT The key pointer if the name was matched, and NULL otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-keystruct *name_to_key(tabstruct *tab, char *keyname)
-
- {
- keystruct *key;
- int i;
-
- if (!(key=tab->key))
- return NULL;
-
- for (i=tab->nkey; strcmp(keyname, key->name) && i--; key=key->nextkey);
-
- return i<0? NULL:key;
- }
-
-/****** keys_list **************************************************************
-PROTO char **keys_list(catstruct *tab, int *n)
-PURPOSE List all keys in a table.
-INPUT Pointer to the table,
- Pointer to the number of names in that list.
-OUTPUT A list of all key names.
-NOTES -.
-AUTHOR E.R. Deul (Leiden observatory)
-VERSION ??/??/96
- ***/
-char **keys_list(tabstruct *tab, int *n)
-
- {
- keystruct *key;
- int i;
- char **names;
-
- QCALLOC(names, char *, tab->nkey);
- key = tab->key;
- for (i=0; i<tab->nkey; i++) {
- QCALLOC(names[i], char, MAXCHARS);
- strcpy(names[i],key->name);
- key = key->nextkey;
- }
- *n = tab->nkey;
- return names;
- }
-
-
-/****** pos_to_key *************************************************************
-PROTO keystruct *pos_to_key(tabstruct *tab, int pos)
-PURPOSE Position search of a key in a table.
-INPUT Pointer to the table,
- Position of the key.
-OUTPUT The key pointer if a key exists at the given position, and the
- pointer to the first key otherwise.
-NOTES pos = 0 or 1 means the first key.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 20/03/96
- ***/
-keystruct *pos_to_key(tabstruct *tab, int pos)
-
- {
- keystruct *key;
- int i;
-
- if (!(key=tab->key))
- return NULL;
-
- if ((pos--)==1)
- return tab->key;
-
- for (i=0; i!=pos && i<tab->nkey; i++, key=key->nextkey);
-
- return i<tab->nkey?key:tab->key;
- }
-
-
-/****** show_keys **************************************************************
-PROTO void show_keys(tabstruct *tab, char **keynames,
- keystruct **keys, int nkeys,
- BYTE *mask, FILE *stream,
- int strflag, int banflag, int leadflag,
- output_type o_type)
-PURPOSE Convert a binary table to an ASCII file.
-INPUT pointer to the table,
- pointer to an array of char *,
- pointer to an array of keystruct * (memory must have been allocated),
- number of keys to read,
- an optional mask pointer,
- a stream,
- a flag to indicate if arrays should be displayed (0=NO),
- a flag to indicate if a banner with keynames should be added (0=NO).
- a flag to indicate if a leading row number should be added (0=NO).
- the output type
-OUTPUT -.
-NOTES This is approximately the same code as for read_keys.
- The array of pointers pointed by keys is filled with pointers
- to the relevant keys (a NULL means NO key with such name was found).
- A NULL keys pointer can be given (no info returned of course).
- A NULL keynames pointer means read ALL keys belonging to the table.
- A NULL mask pointer means NO selection for reading.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/03/99
- ***/
-void show_keys(tabstruct *tab, char **keynames, keystruct **keys, int nkeys,
- BYTE *mask, FILE *stream,
- int strflag, int banflag, int leadflag, output_type o_type)
-
- {
- catstruct *cat;
- keystruct *key, **ckeys;
- BYTE *mask2;
- char *buf, *rfield, *ptr;
- int i,j,k,n,c, larray,narray, nb, kflag, maxnbytes, nelem,
- esize, *key_col;
- typedef struct structreq_keyname
- {
- char oldname[80]; /* Name of the original pipeline key */
- char newname[80]; /* Name of the skycat required key */
- } req_keynamestruct;
-
- req_keynamestruct objectmap[] =
- {
- {"SeqNr", "id"},
- {"Ra", "ra"},
- {"Dec", "dec"},
- {"MAG_ISO", "Mag"},
- {"", ""}
- };
- req_keynamestruct *map;
-
- char skycathead[] = "QueryResult\n\n"
- "# Config entry for original catalog server:\n"
- "serv_type: catalog\n"
- "long_name: ldactoskycat catalog\n"
- "short_name: ldactoaskycat\n"
- "symbol: id circle %4.1f\n"
- "search_cols: mag {Brightest (min)} {Faintest (max)}\n"
- "# End config entry\n\n";
-
- char *t, skycattail[] = "";
-
-
-/* !! It is not necessarily the original table */
- if (tab->key)
- tab = tab->key->tab;
- cat = tab->cat;
-
-/* We are expecting a 2D binary-table, and nothing else */
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || (tab->tfields == 0)
- || strncmp(tab->xtension, "BINTABLE", 8))
- error(EXIT_FAILURE, "*Error*: Not a binary table in ", cat->filename);
-
-/* Size and number of lines in the binary table */
- larray = tab->naxisn[0];
- narray = tab->naxisn[1];
-
- nb = 0;
- if ((mask2 = mask))
- {
- for (i=narray; i--;)
- if (*(mask2++))
- nb++;
- }
-
- if (!keynames)
- nkeys = tab->nkey;
- QCALLOC(key_col, int, nkeys);
- if (keynames) {
- for (i=0;i<nkeys;i++)
- if ((t=strchr(keynames[i], ')'))!=NULL) {
- *t='\0';
- t=strchr(keynames[i], '(');
- *t='\0';
- key_col[i] = atoi(++t);
- }
- }
-/* Allocate memory to store the list of keys to be read */
- kflag = 0;
- if (!keys)
- {
- QMALLOC(keys, keystruct *, nkeys);
- kflag = 1;
- }
-
- n=1;
- switch (o_type) {
- case SHOW_ASCII:
- if (leadflag)
- fprintf(stream, "# %3d %-15.15s %.47s\n", n++,
- "(row_pos)", "running row");
- break;
- case SHOW_SKYCAT:
- fprintf(stream, skycathead, 6.0);
- break;
- }
-
-/* Allocate memory for the arrays */
- maxnbytes = 0;
- ckeys = keys;
- if (keynames)
- for (i=nkeys; i--;)
- {
- if ((key = name_to_key(tab, *(keynames++))))
- {
- for (map=objectmap; map->oldname[0]&&o_type == SHOW_SKYCAT; map++) {
- if (strcmp(key->name, map->oldname) == 0) {
- strcpy(key->name, map->newname);
- }
- }
- *(ckeys++) = key;
- switch (o_type) {
- case SHOW_ASCII:
- if (banflag)
- {
- if (*key->unit)
- fprintf(stream, "# %3d %-19.19s %-47.47s [%s]\n",
- n, key->name,key->comment, key->unit);
- else
- fprintf(stream, "# %3d %-19.19s %.47s\n",
- n, key->name,key->comment);
- n += key->nbytes/t_size[key->ttype];
- }
- break;
- case SHOW_SKYCAT:
- if (key->nbytes/t_size[key->ttype] > 1)
- for (j=0;j<key->nbytes/t_size[key->ttype];j++)
- fprintf(stream, "%s(%d)\t", key->name,j+1);
- else
- fprintf(stream, "%s\t", key->name);
- break;
- }
- if (key->nbytes>maxnbytes)
- maxnbytes = key->nbytes;
- }
- else
- *(ckeys++) = NULL;
- }
- else
- {
- key = tab->key;
- for (i=nkeys; i--; key = key->nextkey)
- if (strflag || key->naxis==0)
- {
- for (map=objectmap; map->oldname[0]&&o_type == SHOW_SKYCAT; map++) {
- if (strcmp(key->name, map->oldname) == 0) {
- strcpy(key->name, map->newname);
- }
- }
- *(ckeys++) = key;
- switch (o_type) {
- case SHOW_ASCII:
- if (banflag)
- {
- if (*key->unit)
- fprintf(stream, "# %3d %-19.19s %-47.47s [%s]\n",
- n, key->name,key->comment, key->unit);
- else
- fprintf(stream, "# %3d %-19.19s %.47s\n",
- n, key->name,key->comment);
- n += key->nbytes/t_size[key->ttype];
- }
- break;
- case SHOW_SKYCAT:
- if (key->nbytes/t_size[key->ttype] > 1)
- for (j=0;j<key->nbytes/t_size[key->ttype];j++)
- fprintf(stream, "%s(%d)\t", key->name,j+1);
- else
- fprintf(stream, "%s\t", key->name);
- break;
- }
- if (key->nbytes>maxnbytes)
- maxnbytes = key->nbytes;
- }
- else
- {
- switch (o_type) {
- case SHOW_ASCII:
- if (*key->unit)
- fprintf(stream, "# %-19.19s %-47.47s [%s]\n",
- key->name,key->comment, key->unit);
- else
- fprintf(stream, "# %-19.19s %.47s\n",
- key->name,key->comment);
- break;
- case SHOW_SKYCAT:
- break;
- }
- *(ckeys++) = NULL;
- }
- }
- if (o_type == SHOW_SKYCAT)
- fprintf(stream, "\n------------------\n");
-
-/* Allocate memory for the buffer where we put one line of data */
- QMALLOC(buf, char, larray);
-
-/* Allocate memory for the buffer where we put one element */
- QMALLOC(rfield, char, maxnbytes);
-
-/* Positioning to the first element */
- open_cat(cat, READ_ONLY);
- QFSEEK(cat->file, tab->bodypos , SEEK_SET, cat->filename);
-
-/*read line by line*/
- n = 0;
- mask2 = mask;
- for (i=narray; i--;)
- {
- QFREAD(buf, larray, cat->file, cat->filename);
- if (!mask || *(mask2++))
- {
- ckeys = keys;
- if (leadflag)
- {
- fprintf(stream, "%d", ++n);
- if (k)
- putc(' ', stream);
- }
- for (k=0; k<nkeys; k++)
- {
- if ((key = *(ckeys++)) && (strflag || key->naxis==0))
- {
- ptr = memcpy(rfield, buf+key->pos, key->nbytes);
- esize = t_size[key->ttype];
- nelem = key->nbytes/esize;
-#ifdef BSWAP
- swapbytes(ptr, esize, nelem);
-#endif
- switch(key->ttype)
- {
- case T_SHORT:
- for (j = 0; j<nelem; j++, ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%d",
- *(short *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case SHOW_ASCII:
- putc(' ', stream);
- break;
- case SHOW_SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_LONG:
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%d",
- *(int *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case SHOW_ASCII:
- putc(' ', stream);
- break;
- case SHOW_SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_FLOAT:
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%g",
- *(float *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case SHOW_ASCII:
- putc(' ', stream);
- break;
- case SHOW_SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_DOUBLE:
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%f",
- *(double *)ptr);
- if (j < nelem-1) {
- switch (o_type) {
- case SHOW_ASCII:
- putc(' ', stream);
- break;
- case SHOW_SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_BYTE:
- if (key->htype==H_BOOL)
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- if (*(char *)ptr)
- fprintf(stream, "T");
- else
- fprintf(stream, "F");
- }
- }
- else
- for (j = 0; j<nelem; j++,ptr += esize)
- {
- if (key_col[k] == 0 || key_col[k] == j+1) {
- fprintf(stream, *key->printf?key->printf:"%d",
- (int)*((unsigned char *)ptr));
- if (j) {
- switch (o_type) {
- case SHOW_ASCII:
- putc(' ', stream);
- break;
- case SHOW_SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- break;
-
- case T_STRING:
- for (j = nelem; j-- && (c=(int)*ptr); ptr += esize)
- fprintf(stream, "%c", c);
- break;
-
- default:
- error(EXIT_FAILURE, "*FATAL ERROR*: Unknown FITS type in ",
- "show_keys()");
- break;
- }
- if (k < nkeys - 1) {
- switch (o_type) {
- case SHOW_ASCII:
- putc(' ', stream);
- break;
- case SHOW_SKYCAT:
- putc('\t', stream);
- break;
- }
- }
- }
- }
- putc('\n', stream);
- }
- }
- free(key_col);
- free(buf);
- if (kflag)
- free(keys);
- if (o_type == SHOW_SKYCAT)
- fprintf(stream, skycattail);
- return;
- }
-
diff --git a/external/sextractor/source/fitsmisc.c b/external/sextractor/source/fitsmisc.c
deleted file mode 100644
index f639ada..0000000
--- a/external/sextractor/source/fitsmisc.c
+++ /dev/null
@@ -1,102 +0,0 @@
- /*
- fitsmisc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: miscellaneous functions.
-*
-* Last modify: 20/04/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** wstrncmp ***************************************************************
-PROTO int wstrncmp(char *cs, char *ct, int n)
-PURPOSE simple wildcard strcmp.
-INPUT character string 1,
- character string 2,
- maximum number of characters to be compared.
-OUTPUT comparison integer (same meaning as strcmp).
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int wstrncmp(char *cs, char *ct, int n)
-
- {
- int diff,i;
-
- i = n;
- diff = 0;
- do
- {
- diff = ((*cs=='?'&&*ct)||(*ct=='?'&&*cs))?0:*cs-*ct;
- } while (!diff && --i && *(cs++) && *(ct++));
-
- return diff;
- }
-
-
-/****** findkey ****************************************************************
-PROTO int findkey(char *str, char *key, int size)
-PURPOSE Find an item within a list of keywords.
-INPUT character string,
- an array of character strings containing the list of keywords,
- offset (in char) between each keyword.
-OUTPUT position in the list (0 = first) if keyword matched,
- RETURN_ERROR otherwise.
-NOTES the matching is case-sensitive.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int findkey(char *str, char *key, int size)
-
- {
- int i;
-
- for (i=0; key[0]; i++, key += size)
- if (!strcmp(str, key))
- return i;
-
- return RETURN_ERROR;
- }
-
-
-/********************************* findnkey **********************************
-PROTO int findnkey(char *str, char *key, int size, int nkey)
-PURPOSE Find an item within a list of nkey keywords.
-INPUT character string,
- an array of character strings containing the list of keywords,
- offset (in char) between each keyword.
- number of keywords.
-OUTPUT position in the list (0 = first) if keyword matched,
- RETURN_ERROR otherwise.
-NOTES the matching is case-sensitive.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int findnkey(char *str, char *key, int size, int nkey)
-
- {
- int i;
-
- for (i=0; i<nkey; i++, key += size)
- if (!strcmp(str, key))
- return i;
-
- return RETURN_ERROR;
- }
-
-
diff --git a/external/sextractor/source/fitsread.c b/external/sextractor/source/fitsread.c
deleted file mode 100644
index a65bf46..0000000
--- a/external/sextractor/source/fitsread.c
+++ /dev/null
@@ -1,260 +0,0 @@
-/*
- fitsread.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: low-level functions for reading LDAC FITS catalogs.
-*
-* Last modify: 13/11/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-char *linein_buf, padbuf[FBSIZE];
-int linein_size, nlinein;
-
-/****** read_cat ***************************************************************
-PROTO catstruct read_cat(char *filename)
-PURPOSE ``Read'' a FITS catalog with name filename.
-INPUT Filename,
-OUTPUT catstruct pointer.
-NOTES Returns NULL if no file with name \<filename\> is found.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 22/08/96
- ***/
-catstruct *read_cat(char *filename)
-
- {
- catstruct *cat;
-
- if (!(cat = new_cat(1)))
- error (EXIT_FAILURE, "Not enough memory to read ", filename);
-
- strcpy(cat->filename, filename);
- if (open_cat(cat, READ_ONLY) != RETURN_OK)
- {
- free_cat(cat, 1);
- return NULL;
- }
-
- if (map_cat(cat) != RETURN_OK)
- error (EXIT_FAILURE, "Cannot map ", filename);
-
- return cat;
- }
-
-
-/****** read_cats **************************************************************
-PROTO read_cats(char **filenames, int ncat)
-PURPOSE ``Read'' several FITS catalogs.
-INPUT A pointer to pointers of char,
- The number of catalogs.
-OUTPUT catstruct pointer.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-catstruct *read_cats(char **filenames, int ncat)
-
- {
- catstruct *cat, *ccat;
- int i;
-
- if (!(cat = new_cat(ncat)))
- error (EXIT_FAILURE, "Not enough memory to read ", "catalogs");
-
- for (i=ncat, ccat = cat; i--; ccat++, filenames++)
- {
- strcpy(ccat->filename, *filenames);
- if (open_cat(ccat, READ_ONLY) != RETURN_OK)
- error (EXIT_FAILURE, "Cannot open ", *filenames);
- if (map_cat(ccat) != RETURN_OK)
- error (EXIT_FAILURE, "Cannot map ", *filenames);
- close_cat(ccat);
- }
-
- return cat;
- }
-
-
-/****** init_readobj **********************************************************
-PROTO tabstruct *init_readobj(tabstruct *tab)
-PURPOSE Prepare the reading of individual sources in a FITS table
-INPUT Table structure.
-OUTPUT Pointer to the table structure from which the data will be read.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 07/04/97
- ***/
-tabstruct *init_readobj(tabstruct *tab)
-
- {
- catstruct *tabcat;
- tabstruct *keytab;
- keystruct *key;
- int k;
-
-/* Scan keys to find the reference tab and other things*/
- keytab = NULL;
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (!key->ptr)
- {
- keytab = key->tab;
- tabcat = keytab->cat;
- QMALLOC(key->ptr, char, key->nbytes);
- }
- else
- key->pos = -1;
-
- if (!keytab)
- error(EXIT_FAILURE,"*Error*: no original table found among keys in table ",
- tab->extname);
-
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, keytab->bodypos, SEEK_SET, tabcat->filename);
-
-/* Allocate memory for the input buffer (or increase it if done already) */
- if (linein_buf)
- {
- if (linein_size < tab->naxisn[0])
- {
- QREALLOC(linein_buf, char, tab->naxisn[0]);
- linein_size = tab->naxisn[0];
- }
- }
- else
- {
- QMALLOC(linein_buf, char, tab->naxisn[0]);
- linein_size = tab->naxisn[0];
- }
-
- nlinein++;
-
- return keytab;
- }
-
-
-/****** read_obj **************************************************************
-PROTO int read_obj(tabstruct *keytab, tabstruct *tab)
-PURPOSE Read one individual source at the current position in a FITS table.
-INPUT Table which will be accessed from disk (provided by init_readobj()),
- Table containing the keys that will be read.
-OUTPUT The number of table lines that remain to be read.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 07/04/97
- ***/
-int read_obj(tabstruct *keytab, tabstruct *tab)
-
- {
- keystruct *key;
- char *pin, *pout;
- int b,k;
-#ifdef BSWAP
- int esize;
-#endif
-
- QFREAD(linein_buf,keytab->naxisn[0],keytab->cat->file,keytab->cat->filename);
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (key->pos>=0)
- {
- pin = linein_buf+key->pos;
- pout = key->ptr;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(pin, esize, key->nbytes/esize);
-#endif
- for (b=key->nbytes; b--;)
- *(pout++) = *(pin++);
- }
-
- return --keytab->naxisn[1];
- }
-
-
-/****** read_obj_at ***********************************************************
-PROTO int read_obj_at(tabstruct *keytab, tabstruct *tab, long pos)
-PURPOSE Get one source at a specific position in a FITS table.
-INPUT Table which will be accessed from disk (provided by init_readobj()),
- Table containing the keys that will be read.
- Position number in table.
-OUTPUT RETURN_OK if the object has been accessed, RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 23/06/97
- ***/
-int read_obj_at(tabstruct *keytab, tabstruct *tab, long pos)
-
- {
- keystruct *key;
- char *pin, *pout;
- size_t n;
- int b,k;
-#ifdef BSWAP
- int esize;
-#endif
-
- if ((n=keytab->naxisn[0]*pos) >= keytab->tabsize)
- return RETURN_ERROR;
- QFSEEK(keytab->cat->file,keytab->bodypos+n, SEEK_SET, keytab->cat->filename);
- QFREAD(linein_buf,keytab->naxisn[0],keytab->cat->file,keytab->cat->filename);
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (key->pos>=0)
- {
- pin = linein_buf+key->pos;
- pout = key->ptr;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(pin, esize, key->nbytes/esize);
-#endif
- for (b=key->nbytes; b--;)
- *(pout++) = *(pin++);
- }
-
- return RETURN_OK;
- }
-
-
-/****** end_readobj **********************************************************
-PROTO void end_readobj(tabstruct *keytab, tabstruct *tab)
-PURPOSE End the writing of individual sources in a FITS table
-INPUT Table which will be accessed from disk (provided by init_readobj()),
- Table containing the keys that have been read.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/11/97
- ***/
-void end_readobj(tabstruct *keytab, tabstruct *tab)
-
- {
-
- if (close_cat(keytab->cat) != RETURN_OK)
- error(EXIT_FAILURE,"*Error*: Problem while closing",keytab->cat->filename);
-
-/* Recover the original state of the original table */
- update_tab(keytab);
- if (!(--nlinein))
- {
- free(linein_buf);
- linein_buf = NULL;
- linein_size = 0;
- }
-
- return;
- }
-
diff --git a/external/sextractor/source/fitstab.c b/external/sextractor/source/fitstab.c
deleted file mode 100644
index ce45345..0000000
--- a/external/sextractor/source/fitstab.c
+++ /dev/null
@@ -1,616 +0,0 @@
-/*
- fitstab.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: general functions for handling LDAC FITS catalogs.
-*
-* Last modify: 30/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** about_tab **************************************************************
-PROTO int about_tab(catstruct *cat, char *tabname, FILE *stream)
-PURPOSE Print information concerning a tab structure.
-INPUT Pointer to the input catalog,
- table name,
- an output stream.
-OUTPUT RETURN_OK if the table was found, RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E.R. Deul(Leiden observatory),
- E. Bertin (IAP & Leiden observatory): return value modified.
- E.R. Deul(Leiden observatory): output units
-VERSION 29/07/97
- ***/
-int about_tab(catstruct *cat, char *tabname, FILE *stream)
-{
- tabstruct *tab;
- keystruct *key;
- int i, j;
-
- if (tab = name_to_tab(cat, tabname, 0)) {
- fprintf(stream, "Table %s\n", tabname);
- for (i=0, key=tab->key; i<tab->nkey; i++,key=key->nextkey)
- {
- fprintf(stream,
- "****** Key #%d\n", i+1);
- fprintf(stream,
- " Key name:...............%s\n", key->name);
- fprintf(stream,
- " Key comment:............%s\n", key->comment);
- fprintf(stream,
- " Key type:...............");
- switch (key->ttype) {
- case T_BYTE: fprintf(stream,"Byte"); break;
- case T_SHORT: fprintf(stream,"Short Int"); break;
- case T_LONG: fprintf(stream,"Long Int"); break;
- case T_FLOAT: fprintf(stream,"Float"); break;
- case T_DOUBLE: fprintf(stream,"Double"); break;
- case T_STRING: fprintf(stream,"String"); break;
- }
- fprintf(stream,"\n");
- fprintf(stream,
- " Key dimension:..........%d ", key->naxis);
- if (key->naxis) fprintf(stream, "(");
- for (j=0;j<key->naxis;j++) {
- if (j>0) fprintf(stream, " ");
- fprintf(stream, "%d", key->naxisn[j]);
- }
- if (key->naxis) fprintf(stream, ")");
- fprintf(stream, "\n");
- if (key->unit[0] != '\0')
- fprintf(stream,
- " Key unit:...............%s\n", key->unit);
- }
- } else return RETURN_ERROR;
-
- return RETURN_OK;
-}
-
-/****** add_tab ****************************************************************
-PROTO int add_tab(tabstruct *tab, catstruct *cat, int pos)
-PURPOSE Add a table to a catalog.
-INPUT Pointer to the table,
- Pointer to the destination catalog,
- Position (1= first after the primary HDU, <=0 = at the end).
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES Only 1-segment tables are accepted. To copy multi-segment tables,
- use copy_tab() instead.
- If a table with the same name and basic attributes already exists in
- the destination catalog, then the new table is appended to it.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int add_tab(tabstruct *tab, catstruct *cat, int pos)
-
- {
- tabstruct *outtab, *prevtab;
- int i;
-
-/*Check if a similar table doesn't already exist in the dest. cat */
- if ((outtab = name_to_tab(cat, tab->extname, 0)))
- {
- if ((outtab->naxis != 2)
- || (outtab->bitpix!=8)
- || strcmp(outtab->xtension,tab->xtension)
- || (outtab->tfields != tab->tfields)
- || (outtab->naxisn[0] != tab->naxisn[0]))
- return RETURN_ERROR;
-
- prevtab = outtab;
- for (i=outtab->nseg-1; i--;)
- prevtab = prevtab->nexttab;
- tab->seg = prevtab->seg+1;
- tab->nseg = 0;
- outtab->nseg++;
- }
- else
- {
- prevtab = pos_to_tab(cat, pos, 0)->prevtab;
- cat->ntab++;
- }
-
- (tab->nexttab = (tab->prevtab = prevtab)->nexttab)->prevtab = tab;
- prevtab->nexttab = tab;
-
- return RETURN_OK;
- }
-
-
-/****** copy_tab ***************************************************************
-PROTO int copy_tab(catstruct *catin, char *tabname, int seg,
- catstruct *catout, int pos)
-PURPOSE Copy a table from one catalog to another.
-INPUT Pointer to the original catalog,
- Name of the table,
- Table segment (0 = all),
- Pointer to the destination catalog,
- Position (1= first after the primary HDU, <=0 = at the end)
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES If a table with the same name and basic attributes already exists in
- the destination catalog, then the original table is appended to it.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int copy_tab(catstruct *catin, char *tabname, int seg,
- catstruct *catout, int pos)
-
- {
- keystruct *key;
- tabstruct *outtab, *prevtab, *nexttab, *tabin,*tabout;
- int i,j, nseg;
-
-/*Convert the table name to a pointer*/
- if (!(tabin = name_to_tab(catin, tabname, seg)))
- return RETURN_ERROR;
-
- nseg = seg?1:tabin->nseg;
-
-/*Check if a similar table doesn't already exist in the dest. cat */
- if ((outtab = name_to_tab(catout, tabname, 0)))
- {
- if ((outtab->naxis != 2)
- || (outtab->bitpix!=8)
- || strcmp(outtab->xtension,tabin->xtension)
- || (outtab->tfields != tabin->tfields)
- || (outtab->naxisn[0] != tabin->naxisn[0]))
- return RETURN_ERROR;
- prevtab = outtab;
- for (i=0; i<outtab->nseg-1; i++)
- prevtab = prevtab->nexttab;
- nexttab = prevtab->nexttab;
- outtab->nseg += nseg;
- }
- else
- {
- prevtab = nexttab = NULL;
- catout->ntab++;
- }
-
-/*Now copy each segment of the original table*/
- for (i=nseg; i--;)
- {
-/*---First, allocate memory and copy data */
- QCALLOC(tabout, tabstruct, 1);
- *tabout = *tabin;
- if (tabin->naxis)
- QMEMCPY(tabin->naxisn, tabout->naxisn, int, tabin->naxis);
- if (tabin->headbuf)
- QMEMCPY(tabin->headbuf, tabout->headbuf, char, tabin->headnblock*FBSIZE);
- if (tabin->bodybuf)
- QMEMCPY(tabin->bodybuf, tabout->bodybuf, char, tabin->tabsize);
-
- key = tabin->key;
- tabout->key = NULL;
- tabout->nkey = 0;
- for (j=tabin->nkey; j--;)
- {
- copy_key(tabin, key->name, tabout, 0);
- key = key->nextkey;
- }
-
-/*---Then, update the links */
- if (prevtab)
- {
- prevtab->nexttab = tabout;
- tabout->prevtab = prevtab;
- tabout->seg = prevtab->seg+1;
- tabout->nseg = 0;
- }
- else
- {
- outtab = tabout;
- outtab->prevtab = NULL;
- tabout->seg = 1;
- }
- tabin = tabin->nexttab;
- prevtab = tabout;
- }
-
-/*place the new chain of table-segments within the catalog (tricky, isn't it?)*/
- if (!nexttab)
-/*--if the table is new */
- {
- nexttab = pos_to_tab(catout, pos, 0);
- outtab->prevtab = nexttab->prevtab;
- nexttab->prevtab->nexttab = outtab;
- }
-
- prevtab->nexttab = nexttab;
- nexttab->prevtab = prevtab;
-
- return RETURN_OK;
- }
-
-
-/****** copy_tabs **************************************************************
-PROTO int copy_tabs(catstruct *catin, catstruct *catout)
-PURPOSE Copy all tables from one catalog to another.
-INPUT Pointer to the original catalog,
- Pointer to the destination catalog,
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise
- (for instance if there were tabs that were not binary-tables, and
- therefore that were not copied).
-NOTES If a table with the same name and basic attributes already exists in
- the destination catalog, then the original table is appended to it.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-int copy_tabs(catstruct *catin, catstruct *catout)
-
- {
- tabstruct *tab;
- int i, flag;
-
- if (!catin->tab)
- return RETURN_ERROR;
-
- tab = catin->tab->nexttab; /* skip the primary header */
- flag = RETURN_OK;
- for (i=catin->ntab-1; i--;)
- {
- flag |= copy_tab(catin, tab->extname, 0, catout, 0);
- while (!(tab=tab->nexttab)->nseg);
- }
-
- return flag;
- }
-
-/****** free_tab ***************************************************************
-PROTO void free_tab(tabstruct *tab)
-PURPOSE Free memory associated to a table pointer.
-INPUT Pointer to the table.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-void free_tab(tabstruct *tab)
-
- {
-
- free(tab->naxisn);
- free(tab->headbuf);
- free(tab->bodybuf);
- remove_keys(tab);
- free(tab);
-
- return;
- }
-
-
-/****** new_tab ****************************************************************
-PROTO tabstruct *new_tab(char *tabname)
-PURPOSE Create a new binary table.
-INPUT Name.
-OUTPUT A pointer to the new table.
-NOTES A defaut header is also created.
- No links are initialized.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-tabstruct *new_tab(char *tabname)
-
- {
- static char bintabtemplate[][80] = {
-"XTENSION= 'BINTABLE' / THIS IS A BINARY TABLE (FROM THE LDACTOOLS)",
-"BITPIX = 8 / ",
-"NAXIS = 2 / ",
-"NAXIS1 = 0 / BYTES PER ROW",
-"NAXIS2 = 0 / NUMBER OF ROWS",
-"PCOUNT = 0 / RANDOM PARAMETER COUNT",
-"GCOUNT = 1 / GROUP COUNT",
-"TFIELDS = 0 / FIELDS PER ROWS",
-"EXTNAME = 'WHOCARES' / TABLE NAME",
-"END "};
- tabstruct *tab;
- char *buf;
- int i;
-
- QCALLOC(tab, tabstruct, 1);
- strcpy(tab->xtension, "BINTABLE");
- strcpy(tab->extname, tabname);
- tab->naxis = 2;
- QCALLOC(tab->naxisn, int, tab->naxis);
- tab->bitpix = 8;
- tab->bytepix = 1;
- tab->pcount = 0;
- tab->gcount = 1;
- tab->seg = 1;
- tab->nseg = 1;
-/*Provide a new header*/
- QCALLOC(tab->headbuf, char, FBSIZE);
- memcpy(tab->headbuf, bintabtemplate, sizeof(bintabtemplate));
- for (buf = tab->headbuf, i=FBSIZE; i--; buf++)
- if (!*buf)
- *buf = ' ';
- tab->headnblock = 1;
-
- return tab;
- }
-
-
-/****** remove_tab *************************************************************
-PROTO int remove_tab(catstruct *cat, char *tabname, int seg)
-PURPOSE Remove a table from a catalog.
-INPUT Pointer to the catalog,
- Name of the table,
- Table segment (0 = all).
-OUTPUT RETURN_OK if everything went as expected, and RETURN_ERROR otherwise.
-NOTES If tabname = "", the last table from the list is removed.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 30/11/98
- ***/
-int remove_tab(catstruct *cat, char *tabname, int seg)
-
- {
- tabstruct *tab, *prevtab, *nexttab;
- int i,nseg;
-
- if (!tabname || !cat->ntab || !cat->tab)
- return RETURN_ERROR;
-
- if (tabname[0])
- {
-/*--Convert the table name to a pointer*/
- if (!(tab = name_to_tab(cat, tabname, seg)))
- return RETURN_ERROR;
-/*--a small trick to simplify decisions afterwards*/
- if (seg && tab->nseg==1)
- seg = 0;
- }
- else
- {
- tab = cat->tab->prevtab;
- if (!seg)
- for (;!tab->nseg; tab = tab->prevtab);
- }
-
- prevtab = tab->prevtab;
- nseg = seg?1:tab->nseg;
-
-/*Free memory for each table segment*/
- for (i=nseg; i--;)
- {
- nexttab = tab->nexttab;
- if (cat->tab == tab)
- cat->tab = nexttab;
- free_tab(tab);
- tab = nexttab;
- }
-
- if (!seg)
- if (!--cat->ntab)
- {
- cat->tab = NULL;
- return RETURN_OK;
- }
-
-/*update the links of neighbours*/
- nexttab->prevtab = prevtab;
- prevtab->nexttab = nexttab;
-
- if (seg)
-/*--update status for each table segment*/
- {
- for (tab=prevtab;!tab->nseg; tab = tab->prevtab);
- for (nexttab=tab->nexttab,i=2;!nexttab->nseg;nexttab=nexttab->nexttab,i++);
- nexttab->seg = i;
- tab->nseg = i;
- tab->seg = 1;
- }
-
- return RETURN_OK;
- }
-
-
-/****** remove_tabs ************************************************************
-PROTO int remove_tabs(catstruct *cat)
-PURPOSE Remove all tables from a catalog.
-INPUT Pointer to the catalog.
-OUTPUT RETURN_OK if tabs were found, and RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/05/97
- ***/
-int remove_tabs(catstruct *cat)
-
- {
- int t;
-
- if (!cat->tab)
- return RETURN_ERROR;
-
- for (t=cat->ntab; t--;)
- remove_tab(cat, "",0);
-
- return RETURN_OK;
- }
-
-
-/****** update_tab *************************************************************
-PROTO int update_tab(tabstruct *tab)
-PURPOSE Update a table according to what's in the keys.
-INPUT Table structure.
-OUTPUT RETURN_OK if tab is a binary table, or RETURN_ERROR otherwise.
-NOTES The headbuf pointer in the catstruct might be reallocated.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/02/97
- ***/
-int update_tab(tabstruct *tab)
-
- {
- tabstruct *keytab;
- keystruct *key;
- int i,j, nobj, nbytes;
-
-/*Just pass if not a binary table*/
- if ((tab->naxis != 2)
- || (tab->bitpix!=8)
- || strncmp(tab->xtension, "BINTABLE", 8))
- return RETURN_ERROR;
-
-/*Well, not much to do if there are no keys!*/
- if (!(key = tab->key))
- return RETURN_OK;
-
- nobj = -1;
- keytab = NULL;
- nbytes = 0;
- for (i=tab->nkey; i--;)
- {
- if (keytab && !key->ptr && key->tab != keytab)
- error(EXIT_FAILURE, "*Error*: wrong reference table in ",
- key->name);
- if (nobj!=-1 && (nobj != key->nobj))
- error(EXIT_FAILURE, "*Error*: wrong number of elements in key ",
- key->name);
- keytab = key->tab;
- nobj = key->nobj;
-/*-- If the number of bytes per element is not set, recover it */
- if (!key->nbytes)
- {
- key->nbytes = t_size[key->ttype];
- for (j=key->naxis; j--;)
- key->nbytes *= key->naxisn[j];
- }
- nbytes += key->nbytes;
- key = key->nextkey;
- }
-
- tab->tabsize = nobj*nbytes;
- tab->naxisn[0] = nbytes;
- tab->naxisn[1] = nobj;
- tab->tfields = tab->nkey;
-
- return RETURN_OK;
- }
-
-
-/****** name_to_tab ************************************************************
-PROTO tabstruct *name_to_tab(catstruct *cat, char *tabname, int seg)
-PURPOSE Name search of a table in a catalog.
-INPUT Pointer to the catalog,
- Table name,
- Table segment (0 = first).
-OUTPUT The table pointer if the name was matched, and NULL otherwise.
-NOTES -
-VERSION 25/04/97
- ***/
-tabstruct *name_to_tab(catstruct *cat, char *tabname, int seg)
-
- {
- tabstruct *tab;
- int i;
-
- tab = cat->tab;
- for (i=cat->ntab; strcmp(tabname,tab->extname) && i--;)
- while (!(tab=tab->nexttab)->nseg);
-
- if (i<0)
- return NULL;
-
- if (seg)
- {
- for (;tab->seg!=seg && !tab->nexttab->nseg; tab=tab->nexttab);
- return tab->seg==seg?tab:NULL;
- }
-
- return tab;
- }
-
-
-/****** pos_to_tab *************************************************************
-PROTO tabstruct *pos_to_tab(catstruct *cat, int pos, int seg)
-PURPOSE Position search of a table in a catalog.
-INPUT Pointer to the catalog,
- Position of the table,
- Table segment (0 = first).
-OUTPUT The table pointer if the table exists at the given position, and the
- pointer to the primary ``table'' otherwise.
-NOTES pos = 1 means the first table after the primary one.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-tabstruct *pos_to_tab(catstruct *cat, int pos, int seg)
-
- {
- tabstruct *tab;
- int i;
-
- tab = cat->tab;
- for (i=0; i!=pos && i<cat->ntab; i++)
- while (!(tab=tab->nexttab)->nseg);
-
- if (seg)
- for (;tab->seg!=seg && !tab->nexttab->nseg; tab=tab->nexttab);
-
- return i<cat->ntab?tab:cat->tab;
- }
-
-/****** tabs_list **************************************************************
-PROTO char **tabs_list(catstruct *cat, int *n)
-PURPOSE List all tables in a catalog.
-INPUT Pointer to the catalog,
- Pointer to the number of names in that list.
-OUTPUT A list of all table names.
-NOTES -.
-AUTHOR E.R. Deul (Leiden observatory)
-VERSION ??/??/96
- ***/
-char **tabs_list(catstruct *cat, int *n)
-
- {
- tabstruct *tab;
- int i;
- char **names;
-
- tab = cat->tab;
- QCALLOC(names, char *, cat->ntab);
- for (i=0; i<cat->ntab; i++) {
- QCALLOC(names[i], char, MAXCHARS);
- strcpy(names[i],tab->extname);
- while (!(tab=tab->nexttab)->nseg);
- }
- *n = cat->ntab;
- return names;
- }
-
-/****** tabs_row_len ***********************************************************
-PROTO int tab_row_len(char *file, char *tabname)
-PURPOSE Return the row length in bytes of a given table in a given catalog.
-INPUT File pointer.
-OUTPUT Table size (bytes)
-NOTES -.
-AUTHOR E.R. Deul (Leiden observatory)
-VERSION ??/??/96
- ***/
-int tab_row_len(char *file, char *tabname)
-
-{
- catstruct *tcat;
- tabstruct *tab;
- int retcode = -1;
-
- if ((tcat = read_cat(file)) != NULL) {
- if ((tab = name_to_tab(tcat, tabname, 0)) != NULL) {
- retcode = tab->naxisn[0];
- free_tab(tab);
- }
- close_cat(tcat);
- free_cat(tcat,1);
- }
- return retcode;
-}
-
diff --git a/external/sextractor/source/fitsutil.c b/external/sextractor/source/fitsutil.c
deleted file mode 100644
index eb7013a..0000000
--- a/external/sextractor/source/fitsutil.c
+++ /dev/null
@@ -1,476 +0,0 @@
-/*
- fitsutil.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: functions for handling FITS keywords.
-*
-* Last modify: 30/09/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-/****** fitsadd ***************************************************************
-PROTO int fitsadd(char *fitsbuf, char *keyword, char *comment)
-PURPOSE Write a FITS keyword in a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be created,
- a comment to put beyond the slash, or next to a COMMENT or HISTORY.
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES For all keywords except commentary ones (like COMMENT, HISTORY or
- blank), it is checked that they do not exist already.
- Enough memory should be provided for the FITS header to contain one
- more line of 80 char.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int fitsadd(char *fitsbuf, char *keyword, char *comment)
-
- {
- static char histokeys[][12] = {"COMMENT ", "HISTORY ", " ", ""};
- char *key_ptr;
- static char str[82];
- int headpos, commentflag;
-
-
- commentflag = findkey(keyword, (char *)histokeys, 12)==RETURN_ERROR?0:1;
- if (commentflag || (headpos = fitsfind(fitsbuf, keyword)) < 0)
- {
- headpos = fitsfind(fitsbuf, "END ");
- key_ptr = fitsbuf+80*headpos;
- memcpy(key_ptr+80, key_ptr, 80);
-
- if (commentflag)
- sprintf(str, "%-8.8s%-72.72s",
- keyword, comment?comment:" ");
- else
- sprintf(str, "%-8.8s= / %-47.47s",
- keyword, comment?comment:" ");
-
- memcpy(key_ptr, str, 80);
- }
-
- return headpos;
- }
-
-
-/****** fitsfind **************************************************************
-PROTO int fitsfind(char *fitsbuf, char *keyword)
-PURPOSE Search for a FITS keyword in a FITS header.
-INPUT pointer to the FITS buffer,
- name of the keyword to search for.
-OUTPUT position in lines of 80 char (0=first) of the keyword if it was
- found, RETURN_ERROR otherwise.
-NOTES The buffer MUST contain the ``END '' keyword.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 15/02/96
- ***/
-int fitsfind(char *fitsbuf, char *keyword)
-
- {
- char *ptr;
- int i, len;
-
- len = strlen(keyword);
- for (i=0; strncmp(ptr=&fitsbuf[80*i], "END ", 8); i++)
- if (!wstrncmp(ptr, keyword, len))
- return i;
- if (strncmp(keyword, "END ", 8))
- return RETURN_ERROR;
- else
- return i;
- }
-
-
-/****** fitsnfind *************************************************************
-PROTO char *fitsnfind(char *fitsbuf, char *str, int nblock)
-PURPOSE Search for a FITS keyword in a fits header of nblock blocks.
-INPUT pointer to the FITS buffer,
- name of the keyword to search for,
- number of FITS blocks (2880 bytes each).
-OUTPUT pointer at the keyword position if it was found, NULL otherwise.
-NOTES No need for an ``END '' keyword.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-char *fitsnfind(char *fitsbuf, char *str, int nblock)
- {
- int i;
-
- for (i=36*nblock;i--; fitsbuf+=80)
- if (!strncmp(fitsbuf, str, strlen(str)))
- return fitsbuf;
-
- return (char *)NULL;
- }
-
-
-/****** fitspick **************************************************************
-PROTO int fitspick(char *fitsline, char *keyword, void *ptr, h_type *htype,
- t_type *ttype, char *comment)
-
-PURPOSE Pick up FITS keyword,content,type and comment in a fits header line.
-INPUT pointer to the current line of FITS buffer,
- pointer to a char * (where to put the keyword),
- pointer to ``where to put the data'',
- pointer to ``where to put the h_type'',
- pointer to ``where to put the t_type'',
- pointer to a char * (where to put the comment).
-OUTPUT RETURN_OK if something was found, RETURN_ERROR otherwise.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory),
- E.R. Deul
- E.R. Deul - Handling of NaN
-VERSION 15/09/97
- ***/
-int fitspick(char *fitsline, char *keyword, void *ptr, h_type *htype,
- t_type *ttype, char *comment)
-
- {
- char *fptr, *cptr;
- int i;
-
-/*First, get the keyword*/
- memcpy(keyword, fitsline, 8);
- keyword[8] = 0;
-
-/*Handle comments*/
- if ((int)fitsline[8] != '=')
- {
- if (strncmp(keyword, "COMMENT ", 8)
- && strncmp(keyword, "HISTORY ", 8)
- && strncmp(keyword, "HIERARCH", 8)
- && strncmp(keyword, " ", 8))
- return RETURN_ERROR;
- memcpy(comment, fitsline+8, 72);
- comment[72] = 0;
- *htype = H_COMMENT;
- *ttype = T_STRING;
- return RETURN_OK;
- }
-
-/*Handle character strings*/
- if ((int)fitsline[10] == '\'')
- {
- cptr = ptr;
- for (fptr = fitsline + (i=11); i<80 && *fptr!=(char)'\''; i++)
- *cptr++ = *fptr++;
- *cptr = 0;
- *htype = H_STRING;
- *ttype = T_STRING;
- }
-/*Handle booleans*/
- else if (fitsline[29] == (char)'T' || fitsline[29] == (char)'F')
- {
- *((BYTE *)ptr) = fitsline[29]==(char)'T'?1:0;
- *htype = H_BOOL;
- *ttype = T_BYTE;
- }
- else
- {
- for (fptr = fitsline + (i=10); i<30 && *(fptr++)!=(char)'.'; i++);
-/*Handle floats*/
- if (i<30
- || !strncmp(keyword, "CRVAL",5)
- || !strncmp(keyword, "2MULST",6)
- || !strncmp(keyword, "2MUUTIME",8)
- || !strncmp(keyword, "2MUAZIMU",8)
- || strncmp(fitsline+11, "NaN", 3) == 0)
- /* ^--- He!! temporary fix EB 20/03/96*/
- /* ^--- He!! temporary fix ED 24/12/96*/
- {
- if (strncmp(fitsline+11, "NaN", 3) == 0) {
- *((double *)ptr) = -1.e-100;
- } else {
- fixexponent(fitsline);
- *((double *)ptr) = atof(fitsline+10);
- }
- *htype = H_FLOAT;
- *ttype = T_DOUBLE;
- }
- else
-/*Handle ints*/
- {
- *((int *)ptr) = atoi(fitsline+10);
- *htype = H_INT;
- *ttype = T_LONG;
- }
- }
-
-/*Store comment if it is found*/
- for (fptr = fitsline + (i=30); i<80; i++)
- if (*(fptr++) == (char)'/')
- while (++i<80)
- *(comment++) = *(fptr++);
-
- *comment = 0;
-
- return RETURN_OK;
- }
-
-
-/****** fitsread **************************************************************
-PROTO int fitsread(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-PURPOSE Read a FITS keyword in a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be read,
- pointer where to put the read data,
- h_type of the data to be read (see fitscat.h),
- t_type of the data to be read (see fitscat.h).
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES The buffer MUST contain the ``END '' keyword.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 29/09/99
- ***/
-int fitsread(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-
- {
- int i,pos;
- static char s[4], str[82];
- char *st, *st2;
-
- if ((pos = fitsfind(fitsbuf, keyword)) < 0)
- return RETURN_ERROR;
-
- strncpy(str,fitsbuf+80*pos,80);
- str[80] = '\0';
-
- switch(htype)
- {
- case H_INT: if (ttype == T_SHORT)
- sscanf(str+10, " %hd", (short *)ptr);
- else
- sscanf(str+10, " %d", (LONG *)ptr);
- break;
-
- case H_FLOAT:
- case H_EXPO: fixexponent(str);
- if (ttype == T_DOUBLE)
- sscanf(str+10, " %lf", (double *)ptr);
- else
- sscanf(str+10, " %f", (float *)ptr);
- break;
-
- case H_BOOL: sscanf(str+10, "%1s", s);
- *(int *)ptr = ((int)s[0] == 'T') ? 1 : 0;
- break;
-
- case H_STRING: st = ptr;
- st2= str+10;
- for (i=70; i-- && *(st2++)!=(char)'\'';);
- while (i-->0)
- {
- if (*st2 == '\'' && *(++st2) != '\'')
- break;
- *(st++) = *(st2++);
- }
- do
- {
- *(st--) = (char)'\0';
- } while (st>(char *)ptr && (*st == (char)' '));
- break;
-
- case H_COMMENT: strcpy(ptr,str+9);
- break;
-
- case H_HCOMMENT: strcpy(ptr,str+33);
- break;
-
- default: error(EXIT_FAILURE,
- "*Internal Error*: Unknown FITS type in ",
- "fitsread()");
- break;
- }
-
- return RETURN_OK;
- }
-
-
-/****** fitsremove ************************************************************
-PROTO int fitsremove(char *fitsbuf, char *keyword)
-PURPOSE Remove one (or more) FITS keyword from a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be created.
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES '?' wildcard allowed;
- Don't remove the ``END'' keyword with this!!!
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 08/04/99
- ***/
-
-int fitsremove(char *fitsbuf, char *keyword)
-
- {
- char *cp1,*cp2;
- int endpos,pos, i,n;
-
- endpos = fitsfind(fitsbuf, "END ");
- for (n=0; (pos = fitsfind(fitsbuf, keyword))>=0; n++, endpos--)
- for (cp1=fitsbuf+80*(pos+1), cp2=fitsbuf+80*pos, i=80*(endpos - pos); i--;)
- *(cp2++) = *(cp1++);
-
- if (!n)
- return RETURN_ERROR;
-
- memset(fitsbuf+80*(endpos+1), ' ', 80*n);
-
- return RETURN_OK;
- }
-
-
-/****** fitswrite *************************************************************
-PROTO int fitswrite(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-PURPOSE Write a FITS keyword in a fits header.
-INPUT pointer to the FITS buffer,
- name of the keyword to be written,
- pointer where to retrieve the data,
- h_type of the data to be written (see fitscat.h),
- t_type of the data to be written (see fitscat.h).
-OUTPUT RETURN_OK if the keyword was found, RETURN_ERROR otherwise.
-NOTES The buffer MUST contain the ``END '' keyword.
- The keyword must already exist in the buffer (use fitsadd()).
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 29/09/99
- ***/
-int fitswrite(char *fitsbuf, char *keyword, void *ptr, h_type htype,
- t_type ttype)
-
- {
- int i, l, pos, posoff, flag;
- static char str[81],str2[81];
- char *cstr, *cstr1,*cstr2,
- c;
-
- if ((pos = fitsfind(fitsbuf, keyword)) < 0)
- return RETURN_ERROR;
- posoff = 10;
- fitsbuf += 80*pos;
- switch(htype)
- {
- case H_INT: sprintf(str, "%20d", (ttype==T_SHORT)?
- *(short *)ptr: *(int *)ptr);
- break;
-
- case H_FLOAT: sprintf(str, " %12.4f", (ttype==T_DOUBLE)?
- *(double *)ptr: *(float *)ptr);
- break;
-
- case H_EXPO: sprintf(str, " %16.9e", (ttype==T_DOUBLE)?
- *(double *)ptr: *(float *)ptr);
- break;
-
- case H_BOOL: if (*(int *)ptr)
- sprintf(str, " T");
- else
- sprintf(str, " F");
- break;
-
- case H_STRING: /* Handle the famous quote */
- cstr1 = (char *)ptr;
- cstr2 = str2;
- for (i=0; i<80; i++)
- if (!(c=*(cstr2++) = *(cstr1++)))
- break;
- else if (c == '\'')
- {
- *(cstr2++) = '\'';
- i++;
- }
- if (strlen(str2)<=18)
- {
- sprintf(str, "'%-18.18s ", str2);
- cstr = str+18;
- i = 10;
- }
- else
- {
- sprintf(str, "'%-68.68s ", str2);
- cstr = str+68;
- i = 60;
- }
- for (; i-- && *cstr==(char)' '; cstr--);
- *(++cstr) = (char)'\'';
- if (i>9)
- *(++cstr) = 0;
- break;
-
- case H_COMMENT: sprintf(str, "%-70s", (char *)ptr);
- posoff = 9;
- break;
-
- /* Special case of ``half-comments'' */
- case H_HCOMMENT: sprintf(str, " / %-47s", (char *)ptr);
- posoff = 30;
- break;
-
- default: error(EXIT_FAILURE,
- "*FATAL ERROR*: Unknown FITS type in ",
- "fitswrite()");
- break;
- }
-
-
-/* Now the tricky problem of (former) comments */
- flag=1;
- cstr = fitsbuf+10;
- for (i=71; --i; cstr++)
- {
- if (*cstr=='\'')
- flag ^= 1;
- else if (flag && *cstr=='/')
- break;
- }
- if (posoff==10 && i && (l=69-strlen(str))>0)
- {
- strncpy(str2, cstr, i);
- str2[i+1] = 0;
- strcat(str, " ");
- strncat(str, str2, l);
- }
-
- memset(fitsbuf+9, ' ', 71);
- fitsbuf += posoff;
-
-/* Finally copy the result to the right place (except the trailing zero) */
- for (cstr = str; *cstr; *(fitsbuf++) = *(cstr++));
-
- return RETURN_OK;
- }
-
-
-/****** fixexponent ***********************************************************
-PROTO void fixexponent(char *s)
-PURPOSE Replaces the FORTRAN 'D' exponent sign to 'E' in a FITS line.
-INPUT FITS line
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-void fixexponent(char *s)
-
- {
- int i;
-
- s += 9;
- for (i=71; (int)*s != '/' && i--; s++)
- if ((int)*s == 'D' || (int)*s == 'd')
- *s = (char)'E';
-
- return;
- }
-
-
diff --git a/external/sextractor/source/fitsutil.h b/external/sextractor/source/fitsutil.h
deleted file mode 100644
index 9e6ea1f..0000000
--- a/external/sextractor/source/fitsutil.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- fitsutil.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: Specific definitions for FITS functions
-*
-* Last modify: 21/12/95
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-
-/*--------------------------- FITS BitPix coding ----------------------------*/
-
-#define BP_BYTE 8
-#define BP_SHORT 16
-#define BP_LONG 32
-#define BP_FLOAT (-32)
-#define BP_DOUBLE (-64)
-
-/*--------------------------------- flags -----------------------------------*/
-
-/* access flag within a catalog */
-
-#define FROM_START 0 /* operation should start from the
- beginning of the file */
-#define FROM_HERE 1 /* operation should start from the
- current location within the file */
-
-/*-------------------------------- macros -----------------------------------*/
-
-/* size (in bytes) of one FITS block */
-
-#define FBSIZE 2880L
-
-/* FITS size after adding padding */
-
-#define PADTOTAL(x) (((x-1)/FBSIZE+1)*FBSIZE)
-
-/* extra size to add for padding */
-
-#define PADEXTRA(x) ((FBSIZE - (x%FBSIZE))% FBSIZE)
-
-
diff --git a/external/sextractor/source/fitswrite.c b/external/sextractor/source/fitswrite.c
deleted file mode 100644
index 518912d..0000000
--- a/external/sextractor/source/fitswrite.c
+++ /dev/null
@@ -1,419 +0,0 @@
-/*
- fitswrite.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: The LDAC Tools
-*
-* Author: E.BERTIN, DeNIS/LDAC
-*
-* Contents: low-level functions for writing LDAC FITS catalogs.
-*
-* Last modify: 13/11/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-
-#include "fitscat_defs.h"
-#include "fitscat.h"
-
-char *lineout_buf, padbuf[FBSIZE];
-int lineout_size, nlineout;
-
-/****** save_cat ***************************************************************
-PROTO void save_cat(catstruct *cat, char *filename)
-PURPOSE Save a FITS catalog with name filename.
-INPUT catalog structure,
- filename.
-OUTPUT -.
-NOTES Any preexisting file with name filename is overwritten.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 07/04/97
- ***/
-void save_cat(catstruct *cat, char *filename)
-
- {
- tabstruct *tab;
- int i;
-
- strcpy(cat->filename, filename);
- if (open_cat(cat, WRITE_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: cannot open for writing ", filename);
-
- tab = cat->tab;
-/*Go through each segment in the right order to save data*/
- for (i=cat->ntab; i--;)
- {
- save_tab(cat, tab);
- while (!((tab=tab->nexttab)->nseg));
- }
-
- if (close_cat(cat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing", cat->filename);
-
- return;
- }
-
-
-/****** save_tab **************************************************************
-PROTO void save_tab(catstruct *cat, tabstruct *tab)
-PURPOSE Save a FITS catalog with name filename.
-INPUT catalog structure,
- filename.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 25/04/97
- ***/
-void save_tab(catstruct *cat, tabstruct *tab)
-
- {
- catstruct *tabcat;
- keystruct *key;
- tabstruct *keytab;
- int b,j,k,o, nbytes,nkey,nobj,spoonful,
- size,tabsize, tabflag, larrayin,larrayout;
- char *buf, *inbuf, *outbuf, *fptr,*ptr;
-#ifdef BSWAP
- int esize;
-#endif
-
-/* Make the table parameters reflect its content*/
- update_tab(tab);
-/* The header itself*/
- tabflag = update_head(tab)==RETURN_OK?1:0;
- QFWRITE(tab->headbuf, tab->headnblock*FBSIZE, cat->file, cat->filename);
- tab->bodypos = ftell(cat->file);
-/* Allocate memory for the output buffer */
- tabsize = 0;
- if (tabflag)
- {
-/*-- If segment is a binary table, save it row by row */
- QMALLOC(outbuf, char, (larrayout = tab->naxisn[0]));
- nkey = tab->nkey;
- tabsize = 0;
- for (j=tab->nseg; j--;)
- {
- update_tab(tab);
-/*---- Scan keys to find the reference tab and other things*/
- keytab = NULL;
- key = tab->key;
- for (k=nkey; k--; key = key->nextkey)
- if (!key->ptr)
- {
- keytab = key->tab;
- tabcat = keytab->cat;
- }
-/*---- If table contains some keys with no ptrs, we have to access a file */
- if (keytab)
- {
- QMALLOC(inbuf, char, (larrayin = keytab->naxisn[0]));
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, keytab->bodypos, SEEK_SET, tabcat->filename);
- }
- nobj = tab->naxisn[1];
- for (o=0; o<nobj; o++)
- {
- if (keytab)
- QFREAD(inbuf, larrayin, tabcat->file, tabcat->filename);
- fptr = outbuf;
- for (k=nkey; k--; key = key->nextkey)
- {
- nbytes = key->nbytes;
- ptr = key->ptr? (char *)key->ptr+nbytes*o:inbuf+key->pos;
- for (b=nbytes; b--;)
- *(fptr++) = *(ptr++);
-#ifdef BSWAP
- if (key->ptr)
- {
- esize = t_size[key->ttype];
- swapbytes(fptr-nbytes, esize, nbytes/esize);
- }
-#endif
- }
- QFWRITE(outbuf, larrayout, cat->file, cat->filename);
- }
- if (keytab)
- {
- free(inbuf);
- if (close_cat(tabcat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing",
- tabcat->filename);
- }
- tabsize += tab->tabsize;
- tab = tab->nexttab;
- }
- free(outbuf);
- }
- else
- {
-/*-- If segment is not a binary table, save it ``as it is'' */
-/*-- We use a limited-size buffer ``in case of'' */
- tabsize = size = tab->tabsize;
- if (tabsize)
- {
- if (tab->bodybuf)
- {
-/*------ A body is present in memory and needs to be written */
-#ifdef BSWAP
- swapbytes(tab->bodybuf, tab->bytepix, tabsize/tab->bytepix);
-#endif
- QFWRITE(tab->bodybuf, tabsize, cat->file, cat->filename);
-#ifdef BSWAP
- swapbytes(tab->bodybuf, tab->bytepix, tabsize/tab->bytepix);
-#endif
- }
- else
-/*------ The body should be copied from the source tab */
- {
- tabcat = tab->cat;
- spoonful = size<DATA_BUFSIZE?size:DATA_BUFSIZE;
- QMALLOC(buf, char, spoonful);
- if (open_cat(tabcat, READ_ONLY) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Cannot access ", tabcat->filename);
- QFSEEK(tabcat->file, tab->bodypos, SEEK_SET, tabcat->filename);
- for (;size>0; size -= spoonful)
- {
- if (spoonful>size)
- spoonful = size;
- QFREAD(buf, spoonful, tabcat->file, tabcat->filename);
- QFWRITE(buf, spoonful, cat->file, cat->filename);
- }
- free(buf);
- if (close_cat(tabcat) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Problem while closing",
- tabcat->filename);
- }
- }
- }
-
-/* FITS padding*/
- size = PADEXTRA(tabsize);
- if (size)
- QFWRITE(padbuf, size, cat->file, cat->filename);
-
- return;
- }
-
-
-/****** init_writeobj *********************************************************
-PROTO void init_writeobj(catstruct *cat, tabstruct *tab)
-PURPOSE Prepare the writing of individual sources in a FITS table
-INPUT catalog structure,
- table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 23/01/97
- ***/
-void init_writeobj(catstruct *cat, tabstruct *tab)
-
- {
- keystruct *key;
- int k;
-
-/* Make the table parameters reflect its content*/
- update_tab(tab);
-/* The header itself */
- if (update_head(tab) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Not a binary table: ", tab->extname);
-
- QFWRITE(tab->headbuf, tab->headnblock*FBSIZE, cat->file, cat->filename);
-/* Store the current position */
- tab->bodypos = ftell(cat->file);
-
-/* Allocate memory for the output buffer (or increase it if done already) */
- if (lineout_buf)
- {
- if (lineout_size < tab->naxisn[0])
- {
- QREALLOC(lineout_buf, char, tab->naxisn[0]);
- lineout_size = tab->naxisn[0];
- }
- }
- else
- {
- QMALLOC(lineout_buf, char, tab->naxisn[0]);
- lineout_size = tab->naxisn[0];
- }
-
- nlineout++;
-
-/* Scan keys to check that memory has been allocated */
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- if (!key->ptr)
- error(EXIT_FAILURE, "*Error*: no memory allocated for ", key->name);
-
-/* No object written yet: initialize counter */
- tab->naxisn[1] = 0;
-
- return;
- }
-
-
-/****** write_obj *************************************************************
-PROTO int write_obj(tabstruct *tab)
-PURPOSE Write one individual source in a FITS table
-INPUT Destination catalog
- Table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 23/01/97
- ***/
-int write_obj(tabstruct *tab)
-
- {
- keystruct *key;
- char *pin, *pout;
- int b,k;
-#ifdef BSWAP
- int esize;
-#endif
-
- key = tab->key;
- pout = lineout_buf;
- for (k=tab->nkey; k--; key = key->nextkey)
- {
- pin = key->ptr;
-#ifdef BSWAP
- esize = t_size[key->ttype];
- swapbytes(pin, esize, key->nbytes/esize);
-#endif
- for (b=key->nbytes; b--;)
- *(pout++) = *(pin++);
- }
-
- QFWRITE(lineout_buf, *tab->naxisn, tab->cat->file, tab->cat->filename);
-
- return ++tab->naxisn[1];
- }
-
-
-/****** end_writeobj **********************************************************
-PROTO void end_writeobj(catstruct *cat, tabstruct *tab)
-PURPOSE End the writing of individual sources in a FITS table
-INPUT catalog structure,
- table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/11/97
- ***/
-void end_writeobj(catstruct *cat, tabstruct *tab)
-
- {
- keystruct *key;
- int k, pos, size;
-
-/* Make the table parameters reflect its content*/
- key = tab->key;
- for (k=tab->nkey; k--; key = key->nextkey)
- key->nobj = tab->naxisn[1];
- update_tab(tab);
-/* The header itself */
- if (update_head(tab) != RETURN_OK)
- error(EXIT_FAILURE, "*Error*: Not a binary table: ", tab->extname);
-
-/*--FITS padding*/
- size = PADEXTRA(tab->tabsize);
- if (size)
- QFWRITE(padbuf, size, cat->file, cat->filename);
- pos = ftell(cat->file);
- QFSEEK(cat->file,tab->bodypos-FBSIZE*tab->headnblock,SEEK_SET,cat->filename);
- QFWRITE(tab->headbuf, FBSIZE*tab->headnblock, cat->file, cat->filename);
- QFSEEK(cat->file, pos, SEEK_SET, cat->filename);
-
- if (!(--nlineout))
- {
- free(lineout_buf);
- lineout_buf = NULL;
- lineout_size = 0;
- }
-
- return;
- }
-
-
-/****** print_obj *************************************************************
-PROTO void print_obj(FILE *stream, tabstruct *tab)
-PURPOSE Print one individual source to the output stream.
-INPUT Output stream
- Table structure.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden observatory)
-VERSION 13/06/97
- ***/
-void print_obj(FILE *stream, tabstruct *tab)
-
- {
- keystruct *key;
- char *ptr;
- int i,k, esize;
-
- if (!(key = tab->key))
- error(EXIT_FAILURE, "*Error*: no key to print in table ", tab->extname);
-
- for (k=tab->nkey; k--; key = key->nextkey)
- {
- esize = t_size[key->ttype];
- ptr = key->ptr;
- for (i = key->nbytes/esize; i--; ptr += esize)
- switch(key->ttype)
- {
- case T_SHORT:
- fprintf(stream, *key->printf?key->printf:"%d", *(short *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_LONG:
- fprintf(stream, *key->printf?key->printf:"%d", *(int *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_FLOAT:
- fprintf(stream, *key->printf?key->printf:"%g", *(float *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_DOUBLE:
- fprintf(stream, *key->printf?key->printf:"%f", *(double *)ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_BYTE:
- if (key->htype==H_BOOL)
- {
- if (*ptr)
- fprintf(stream, "T");
- else
- fprintf(stream, "F");
- }
- else
- fprintf(stream, key->printf?key->printf:"%d", (int)*ptr);
- if (i)
- putc(' ', stream);
- break;
- case T_STRING:
- fprintf(stream, "%c", (int)*ptr);
- break;
- default:
- error(EXIT_FAILURE, "*FATAL ERROR*: Unknown FITS type in ",
- "show_keys()");
- }
- if (k)
- putc(' ', stream);
- }
-
- putc('\n', stream);
-
- return;
- }
-
diff --git a/external/sextractor/source/flag.c b/external/sextractor/source/flag.c
deleted file mode 100644
index c6a92c2..0000000
--- a/external/sextractor/source/flag.c
+++ /dev/null
@@ -1,222 +0,0 @@
- /*
- flag.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Function related to external flagging.
-*
-* Last modify: 18/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <limits.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "plist.h"
-#include "flag.h"
-
-/********************************* getflags *********************************
-PROTO void getflags(objstruct *obj, pliststruct *pixel)
-PURPOSE Return the composited flags extracted from the flag-maps.
-INPUT obj structure,
- pixel list.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 18/11/98
- ***/
-void getflags(objstruct *obj, pliststruct *pixel)
- {
- pliststruct *pixt;
- FLAGTYPE imaflag,cimaflag,
- *flagstack, *fs;
- int i,n,nmax,nc,nflag,nflag0,
- *nflagstack, *nfs;
-
- for (i=0; i<prefs.nimaisoflag; i++)
- {
- nmax = 0;
- imaflag = 0;
- switch(prefs.flag_type[i])
- {
- case FLAG_OR:
- for (pixt=pixel+obj->firstpix;pixt>=pixel;
- pixt=pixel+PLIST(pixt,nextpix))
- if (cimaflag = PLISTFLAG(pixt,flag[i]))
- {
- imaflag |= cimaflag;
- nmax++;
- }
- break;
- case FLAG_AND:
- for (pixt=pixel+obj->firstpix;pixt>=pixel;
- pixt=pixel+PLIST(pixt,nextpix))
- if (cimaflag = PLISTFLAG(pixt,flag[i]))
- {
- imaflag &= cimaflag;
- nmax++;
- }
- break;
- case FLAG_MIN:
- imaflag = UINT_MAX;
- for (pixt=pixel+obj->firstpix;pixt>=pixel;
- pixt=pixel+PLIST(pixt,nextpix))
- if (cimaflag = PLISTFLAG(pixt,flag[i]))
- {
- if (cimaflag<imaflag)
- {
- imaflag = cimaflag;
- nmax = 1;
- }
- else if (cimaflag==imaflag)
- nmax++;
- }
- if (!nmax)
- imaflag = 0;
- break;
- case FLAG_MAX:
- imaflag = 0;
- for (pixt=pixel+obj->firstpix;pixt>=pixel;
- pixt=pixel+PLIST(pixt,nextpix))
- if (cimaflag = PLISTFLAG(pixt,flag[i]))
- {
- if (cimaflag>imaflag)
- {
- imaflag = cimaflag;
- nmax = 1;
- }
- else if (cimaflag==imaflag)
- nmax++;
- }
- if (!nmax)
- imaflag = 0;
- break;
- case FLAG_MOST:
-/*------ Allocate memory for the buffers */
- nflag = FLAG_BUFSIZE;
- QCALLOC(flagstack, FLAGTYPE, nflag);
- QCALLOC(nflagstack, int, nflag);
-/*------ Count flag values */
- for (pixt=pixel+obj->firstpix;pixt>=pixel;
- pixt=pixel+PLIST(pixt,nextpix))
- if (cimaflag = PLISTFLAG(pixt,flag[i]))
- {
- for (n=nflag, fs=flagstack, nfs=nflagstack; n-- && *nfs; nfs++)
- if (*(fs++) == cimaflag)
- {
- (*nfs)++;
- break;
- }
- if (n<0)
- {
- nflag0 = nflag;
- nflag += FLAG_BUFSIZE;
- QREALLOC(flagstack, FLAGTYPE, nflag)
- fs = flagstack + nflag0;
- memset(fs, 0, (size_t)FLAG_BUFSIZE*sizeof(FLAGTYPE));
- QREALLOC(nflagstack, int, nflag)
- nfs = nflagstack + nflag0;
- memset(nfs, 0, (size_t)FLAG_BUFSIZE*sizeof(int));
- }
- if (!*nfs)
- {
- *fs = cimaflag;
- *nfs = 1;
- }
- }
-
-/*------ Explore the list we have built and search for most frequent flags */
- for (n=nflag, fs=flagstack, nfs=nflagstack; n-- && *nfs; fs++)
- if ((nc=*(nfs++))>nmax)
- {
- nmax = nc;
- imaflag = *fs;
- }
-
-/*------ Free memory allocated for the buffers */
- free(flagstack);
- free(nflagstack);
- break;
- default:
- error(EXIT_FAILURE, "*Internal Error*: Unknown FLAG_TYPE","");
- }
-
- if (i<prefs.imaflag_size)
- obj->imaflag[i] = imaflag;
- if (i<prefs.imanflag_size)
- obj->imanflag[i] = nmax;
- }
-
- return;
- }
-
-/******************************* mergeflags *********************************
-PROTO void mergeflags(objstruct *objmaster, objstruct *objslave)
-PURPOSE Composite flag extracted from the flag-maps.
-INPUT obj structure (,
- pixel list.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 29/04/98
- ***/
-void mergeflags(objstruct *objmaster, objstruct *objslave)
- {
- FLAGTYPE *masterflag,*slaveflag;
- int i, *masternflag,*slavenflag;
-
- masterflag = objmaster->imaflag;
- masternflag = objmaster->imanflag;
- slaveflag = objslave->imaflag;
- slavenflag = objslave->imanflag;
- for (i=0; i<prefs.nimaisoflag; i++,
- masterflag++,masternflag++,slaveflag++,slavenflag++)
- switch(prefs.flag_type[i])
- {
- case FLAG_OR:
- *masterflag |= *slaveflag;
- *masternflag += *slavenflag;
- break;
- case FLAG_AND:
- *masterflag &= *slaveflag;
- *masternflag += *slavenflag;
- break;
- case FLAG_MIN:
- if (*slaveflag == *masterflag)
- *masternflag += *slavenflag;
- else if (*slaveflag<*masterflag)
- {
- *masterflag = *slaveflag;
- *masternflag = *slavenflag;
- }
- break;
- case FLAG_MAX:
- if (*slaveflag == *masterflag)
- *masternflag += *slavenflag;
- else if (*slaveflag>*masterflag)
- {
- *masterflag = *slaveflag;
- *masternflag = *slavenflag;
- }
- break;
- case FLAG_MOST:
- if (*slavenflag>*masternflag)
- {
- *masterflag = *slaveflag;
- *masternflag = *slavenflag;
- }
- break;
- default:
- error(EXIT_FAILURE, "*Internal Error*: Unknown FLAG_TYPE","");
- }
-
- return;
- }
-
diff --git a/external/sextractor/source/flag.h b/external/sextractor/source/flag.h
deleted file mode 100644
index a51bfd3..0000000
--- a/external/sextractor/source/flag.h
+++ /dev/null
@@ -1,25 +0,0 @@
- /*
- flag.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: include to flag.c (external flagging).
-*
-* Last modify: 28/04/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------- Internal constants ----------------------------*/
-
-#define FLAG_BUFSIZE 32 /* Flag-stacksize at start */
-
-/*------------------------------- functions ---------------------------------*/
-
-void getflags(objstruct *obj, pliststruct *pixel),
- mergeflags(objstruct *objmaster, objstruct *objslave);
-
diff --git a/external/sextractor/source/globals.h b/external/sextractor/source/globals.h
deleted file mode 100644
index f7d9726..0000000
--- a/external/sextractor/source/globals.h
+++ /dev/null
@@ -1,89 +0,0 @@
- /*
- globals.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: global declarations.
-*
-* Last modify: 25/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include "types.h"
-
-/*----------------------- miscellaneous variables ---------------------------*/
-
-sexcatstruct cat;
-prefstruct prefs;
-picstruct thefield1,thefield2, thewfield1,thewfield2;
-objstruct flagobj;
-obj2struct flagobj2;
-extern obj2struct outobj2;
-static obj2struct *obj2 = &outobj2;
-float ctg[37], stg[37];
-char gstr[MAXCHAR];
-static const char notokstr[] = {" \t=,;\n\r\""};
-
-/*------------------------------- functions ---------------------------------*/
-extern void analyse(picstruct *, picstruct *, int, objliststruct *),
- blankit(char *, int),
- endcat(void),
- closecheck(void),
- copydata(picstruct *, int, int),
- endfield(picstruct *),
- endobject(picstruct *, picstruct *, picstruct *, picstruct *,
- int, objliststruct *),
- error(int, char *, char *),
- examineiso(picstruct *, picstruct *, objstruct *,
- pliststruct *),
- fixexponent(char *),
- flagcleancrowded(int, objliststruct *),
- freeparcelout(void),
- getnnw(void),
- initcat(picstruct *),
- initglob(void),
- makeit(void),
- mergeobject(objstruct *, objstruct *),
- neurinit(void),
- neurclose(void),
- neurresp(double *, double *),
- preanalyse(int, objliststruct *, int),
- readcatparams(char *),
- readdata(picstruct *, PIXTYPE *, int),
- readidata(picstruct *, FLAGTYPE *, int),
- readimagehead(picstruct *),
- readprefs(char *, char **, char **, int),
- scanimage(picstruct *, picstruct *, picstruct **, int,
- picstruct *, picstruct *),
- sexcircle(PIXTYPE *bmp, int, int, double, double, double,
- PIXTYPE),
- sexdraw(PIXTYPE *bmp, int, int, double, double, PIXTYPE),
- sexellips(PIXTYPE *bmp, int, int, double, double, double,
- double, double, PIXTYPE, int),
- sexmove(double, double),
- swapbytes(void *, int, int),
- updateparamflags(void),
- useprefs(void),
- warning(char *, char *),
- writecat(int, objliststruct *);
-
-extern float hmedian(float *, int);
-
-extern int addobj(int, objliststruct *, objliststruct *),
- belong(int, objliststruct *, int, objliststruct *),
- cistrcmp(char *, char *, int),
- gatherup(objliststruct *, objliststruct *),
- parcelout(objliststruct *, objliststruct *);
-
-extern void *loadstrip(picstruct *, picstruct *);
-
-extern char *readfitshead(FILE *, char *, int *);
-
-extern picstruct *inheritfield(picstruct *infield, int flags),
- *newfield(char *, int );
-
diff --git a/external/sextractor/source/graph.c b/external/sextractor/source/graph.c
deleted file mode 100644
index 8d67123..0000000
--- a/external/sextractor/source/graph.c
+++ /dev/null
@@ -1,154 +0,0 @@
- /*
- graph.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/ESO
-*
-* Contents: simple graphical functions.
-*
-* Last modify: 22/11/94
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-
-double sexx1, sexy1;
-
-/********************************* sexmove **********************************/
-/*
-Move function (related to sexdraw)..
-*/
-void sexmove(double x, double y)
-
- {
- sexx1 = x;
- sexy1 = y;
-
- return;
- }
-
-
-/********************************* sexdraw **********************************/
-/*
-Draw a line in a PIXTYPE bitmap.
-*/
-void sexdraw(PIXTYPE *bmp, int w, int h, double sexx2, double sexy2,
- PIXTYPE val)
-
- {
- double dx,dy, slope;
- int ix1,iy1, ix2,iy2, ix,iy;
-
- dx = sexx2-sexx1;
- dy = sexy2-sexy1;
- if (fabs(dx) > fabs(dy))
- {
- slope = dy/dx;
- ix1 = RINT(sexx1);
- ix2 = RINT(sexx2);
- if (ix2>ix1)
- {
- for (ix=ix1+1; ix<=ix2; ix++)
- if (ix>=0 && ix<w)
- {
- iy = RINT(sexy1+(ix-sexx1)*slope);
- if (iy>=0 && iy<h)
- bmp[ix+w*iy] += val;
- }
- }
- else
- {
- for (ix=ix1-1; ix>=ix2; ix--)
- if (ix>=0 && ix<w)
- {
- iy = RINT(sexy1+(ix-sexx1)*slope);
- if (iy>=0 && iy<h)
- bmp[ix+w*iy] += val;
- }
- }
- }
- else
- {
- slope = dx/(dy == 0.0? 1.0:dy);
- iy1 = RINT(sexy1);
- iy2 = RINT(sexy2);
- if (iy2>iy1)
- {
- for (iy=iy1+1; iy<=iy2; iy++)
- if (iy>=0 && iy<h)
- {
- ix = RINT(sexx1+(iy-sexy1)*slope);
- if (ix>=0 && ix<w)
- bmp[ix+w*iy] += val;
- }
- }
- else
- for (iy=iy1-1; iy>=iy2; iy--)
- {
- if (iy>=0 && iy<h)
- {
- ix = RINT(sexx1+(iy-sexy1)*slope);
- if (ix>=0 && ix<w)
- bmp[ix+w*iy] += val;
- }
- }
- }
-
- sexx1 = sexx2;
- sexy1 = sexy2;
- return;
- }
-
-
-/******************************** sexcircle *********************************/
-/*
-Draw a circle in a PIXTYPE bitmap.
-*/
-void sexcircle(PIXTYPE *bmp, int w, int h, double x, double y, double r,
- PIXTYPE val)
-
- {
- int i;
-
- sexmove(x+r, y);
- for (i=0; i<37; i++)
- sexdraw(bmp,w,h, x+r*ctg[i], y+r*stg[i], val);
-
- return;
- }
-
-
-/******************************** sexellips *********************************/
-/*
-Draw an ellips in a PIXTYPE bitmap.
-*/
-void sexellips(PIXTYPE *bmp, int w, int h, double x, double y, double a,
- double b, double theta, PIXTYPE val, int dotflag)
-
- {
- int i;
- double ct, st;
-
- ct = cos(PI*theta/180);
- st = sin(PI*theta/180);
-
- sexmove(x+a*ct, y+a*st);
- for (i=1; i<37; i++)
- if (dotflag && !(i&1))
- sexmove(x + a*ctg[i]*ct - b*stg[i]*st,
- y + a*ctg[i]*st + b*stg[i]*ct);
- else
- sexdraw(bmp,w,h, x + a*ctg[i]*ct - b*stg[i]*st,
- y + a*ctg[i]*st + b*stg[i]*ct, val);
-
- return;
- }
-
diff --git a/external/sextractor/source/growth.c b/external/sextractor/source/growth.c
deleted file mode 100644
index 30289c9..0000000
--- a/external/sextractor/source/growth.c
+++ /dev/null
@@ -1,325 +0,0 @@
- /*
- growth.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Make growth curves.
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "growth.h"
-
-/*------------------------------- variables ---------------------------------*/
-
-static double *growth;
-static int ngrowth;
-
-/******************************** initgrowth *********************************/
-/*
-Allocate memory for growth curve stuff.
-*/
-void initgrowth()
- {
-
- QMALLOC(growth, double, GROWTH_NSTEP);
-
- return;
- }
-
-
-/******************************** endgrowth **********************************/
-/*
-Free memory occupied by growth curve stuff.
-*/
-void endgrowth()
- {
- free(growth);
-
- return;
- }
-
-
-/****************************** makeavergrowth *******************************/
-/*
-Build growth curve based on averages.
-*/
-void makeavergrowth(picstruct *field, picstruct *wfield, objstruct *obj)
-
- {
- float *fgrowth;
- double *growtht,
- dx,dx1,dy,dy2,mx,my, r2,r,rlim, d, rextlim2, raper,
- offsetx,offsety,scalex,scaley,scale2, ngamma, locarea,
- tv, sigtv, area, pix, var, gain, dpos,step,step2, dg,
- stepdens, backnoise2, prevbinmargin, nextbinmargin;
- int i,j,n, x,y, x2,y2, xmin,xmax,ymin,ymax, sx,sy, w,h,
- fymin,fymax, pflag,corrflag, ipos;
- LONG pos;
- PIXTYPE *strip,*stript, *wstrip,*wstript,
- pdbkg, wthresh;
-
-
- if (wfield)
- wthresh = wfield->weight_thresh;
-
-/* Clear the growth-curve buffer */
- memset(growth, 0, (size_t)(GROWTH_NSTEP*sizeof(double)));
-
- mx = obj->mx;
- my = obj->my;
- w = field->width;
- h = field->stripheight;
- fymin = field->ymin;
- fymax = field->ymax;
- pflag = (prefs.detect_type==PHOTO)? 1:0;
- corrflag = (prefs.mask_type==MASK_CORRECT);
- var = backnoise2 = field->backsig*field->backsig;
- gain = prefs.gain;
-
-/* Integration radius */
- rlim = GROWTH_NSIG*obj->a;
- if (rlim<prefs.autoaper[0])
- rlim = prefs.autoaper[0];
- raper = rlim+1.5; /* margin for interpolation */
-/* External radius */
- rextlim2 = raper*raper;
-
- stepdens = GROWTH_NSTEP/rlim;
-/* It is useless to oversample too much! */
- if (0/*stepdens>GROWTH_OVERSAMP*/)
- {
- ngrowth = (int)(rlim*GROWTH_OVERSAMP);
- stepdens = ngrowth/rlim;
- }
- else
- ngrowth = GROWTH_NSTEP;
- step = 1/stepdens;
-
-/* Critical distances (in pixels) from bin boundaries */
- prevbinmargin = 0.75; /* > 1/sqrt(2) */
- nextbinmargin = step - 0.75; /* <step - sqrt(2) */
-/* For photographic data */
- if (pflag)
- {
- ngamma = field->ngamma;
- pdbkg = exp(obj->dbkg/ngamma);
- }
-
- tv = sigtv = area = 0.0;
- scaley = scalex = 1.0/GROWTH_OVERSAMP;
- scale2 = scalex*scaley;
- offsetx = 0.5*(scalex-1.0);
- offsety = 0.5*(scaley-1.0);
- xmin = (int)(mx-raper+0.499999);
- xmax = (int)(mx+raper+1.499999);
- ymin = (int)(my-raper+0.499999);
- ymax = (int)(my+raper+1.499999);
-
- if (xmin < 0)
- {
- xmin = 0;
- obj->flag |= OBJ_APERT_PB;
- }
- if (xmax > w)
- {
- xmax = w;
- obj->flag |= OBJ_APERT_PB;
- }
- if (ymin < fymin)
- {
- ymin = fymin;
- obj->flag |= OBJ_APERT_PB;
- }
- if (ymax > fymax)
- {
- ymax = fymax;
- obj->flag |= OBJ_APERT_PB;
- }
-
- strip = field->strip;
- if (wfield)
- wstrip = wfield->strip;
- for (y=ymin; y<ymax; y++)
- {
- stript = strip + (pos = (y%h)*w + xmin);
- if (wfield)
- wstript = wstrip + pos;
- for (x=xmin; x<xmax; x++, stript++, wstript++)
- {
- dx = x - mx;
- dy = y - my;
- if ((r2=dx*dx+dy*dy)<rextlim2)
- {
-/*------ Here begin tests for pixel and/or weight overflows. Things are a */
-/*------ bit intricated to have it running as fast as possible in the most */
-/*------ common cases */
- if ((pix=*stript)<=-BIG || (wfield && (var=*wstript)>=wthresh))
- {
- if (corrflag
- && (x2=(int)(2*mx+0.49999-x))>=0 && x2<w
- && (y2=(int)(2*my+0.49999-y))>=fymin && y2<fymax
- && (pix=*(strip + (pos = (y2%h)*w + x2)))>-BIG)
- {
- if (wfield)
- {
- var = *(wstrip + pos);
- if (var>=wthresh)
- pix = var = 0.0;
- }
- }
- else
- {
- pix = 0.0;
- if (wfield)
- var = 0.0;
- }
- }
- if (pflag)
- pix = exp(pix/ngamma) - pdbkg;
-
-/*------ Check if oversampling is needed (close enough to a bin boundary) */
- d = fmod(r=sqrt(r2),step);
- if (d<prevbinmargin || d>nextbinmargin)
- {
- dx += offsetx;
- dy += offsety;
- locarea = 0.0;
- for (sy=GROWTH_OVERSAMP; sy--; dy+=scaley)
- {
- dx1 = dx;
- dy2 = dy*dy;
- for (sx=GROWTH_OVERSAMP; sx--; dx1+=scalex)
- {
- j = (int)(sqrt(dx1*dx1+dy2)*stepdens);
- if (j<ngrowth)
- {
- growth[j] += scale2*pix;
- locarea += scale2;
- }
- }
- }
- }
- else
- {
- j = (int)(r*stepdens);
- if (j<ngrowth)
- {
- growth[j] += pix;
- locarea = 1.0;
- }
- }
- area += locarea;
-/*
- if (pflag)
- sigtv += var*locarea*pix*pix;
- else
- sigtv += var*locarea;
- tv += locarea*pix;
- if (wfield && pix>0.0 && gain>0.0)
- sigtv += pix/gain*var/backnoise2;
-*/
- }
- }
- }
-
-/*
- if (pflag)
- {
- tv = ngamma*(tv-area*exp(obj->dbkg/ngamma));
- sigtv /= ngamma*ngamma;
- }
- else
- {
- tv -= area*obj->dbkg;
- if (!wfield && gain > 0.0 && tv>0.0)
- sigtv += tv/gain;
- }
-*/
-
-/* Integrate the growth curve */
- pix = 0.0;
- growtht = growth;
- for (i=ngrowth; i--;)
- {
- *growtht += pix;
- pix = *(growtht++);
- }
-
-/* Now let's remap the growth-curve to match user's choice */
- if (FLAG(obj2.flux_growth))
- {
- n = prefs.flux_growthsize;
- if (FLAG(obj2.flux_growthstep))
- obj2->flux_growthstep = rlim/n;
- fgrowth = obj2->flux_growth;
- step2 = (double)GROWTH_NSTEP/n;
- j = 1;
- for (i=n; i--; j++)
- {
- ipos = (int)(dpos=step2*j-0.99999);
- if (dpos<0.0)
- *(fgrowth++) = (float)(*growth*(0.99999+dpos));
- else
- {
- growtht = growth + ipos;
- *(fgrowth++) = (float)(*growtht+(*(growtht+1)-*growtht)*(dpos-ipos));
- }
- }
- }
-
- if (FLAG(obj2.mag_growth))
- {
- n = prefs.mag_growthsize;
- if (FLAG(obj2.mag_growthstep))
- obj2->mag_growthstep = rlim/n;
- fgrowth = obj2->mag_growth;
- step2 = (double)GROWTH_NSTEP/n;
- j = 1;
- for (i=n; i--; j++)
- {
- ipos = (int)(dpos=step2*j-0.99999);
- if (dpos<0.0)
- pix = *growth*(0.99999+dpos);
- else
- {
- growtht = growth + ipos;
- pix = *growtht+(*(growtht+1)-*growtht)*(dpos-ipos);
- }
- *(fgrowth++) = pix>0.0?(prefs.mag_zeropoint-2.5*log10(pix)):99.0;
- }
- }
-
- if (FLAG(obj2.flux_radius))
- {
- n = ngrowth-1;
- for (j=0; j<prefs.nflux_frac; j++)
- {
- tv = prefs.flux_frac[j]*obj2->flux_auto;
- growtht = growth-1;
- for (i=0; i<n && *(++growtht)<tv; i++);
- obj2->flux_radius[j] = step
- *(i? ((dg=*growtht - *(growtht-1)) != 0.0 ?
- i + (tv - *(growtht-1))/dg
- : i)
- : (*growth !=0.0 ?tv/(*growth) : 0.0));
- }
- }
-
- return;
- }
-
-
-
diff --git a/external/sextractor/source/growth.h b/external/sextractor/source/growth.h
deleted file mode 100644
index fd79452..0000000
--- a/external/sextractor/source/growth.h
+++ /dev/null
@@ -1,36 +0,0 @@
- /*
- growth.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Include file for growth.c.
-*
-* Last modify: 04/05/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define GROWTH_NSTEP 64 /* number of growth curve samples */
-#define GROWTH_OVERSAMP 5 /* pixel oversampling in each dimension */
-#define GROWTH_NSIG 3*MARGIN_SCALE /* MAG_AUTO analysis range (number */
- /* of sigma) */
-
-/* NOTES:
-One must have: GROWTH_SAMP >= 1
- GROWTH_OVERSAMP >= 1
- GROWTH_OVERSAMPRADIUS >= 0
- GROWTH_NSIG > 0.0
-*/
-
-/*------------------------------- functions ---------------------------------*/
-extern void endgrowth(void),
- initgrowth(void),
- makeavergrowth(picstruct *field, picstruct *wfield,
- objstruct *obj);
-
diff --git a/external/sextractor/source/image.c b/external/sextractor/source/image.c
deleted file mode 100644
index 17e8756..0000000
--- a/external/sextractor/source/image.c
+++ /dev/null
@@ -1,638 +0,0 @@
- /*
- image.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/ESO
-*
-* Contents: Function related to image manipulations.
-*
-* Last modify: 06/01/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "image.h"
-
-static float interpm[INTERPW*INTERPH];
-
-/********************************* copyimage *********************************/
-/*
-Copy a small part of the image. Image parts which lie outside boundaries are
-set to -BIG.
-*/
-int copyimage(picstruct *field, PIXTYPE *dest, int w,int h, int ix,int iy)
- {
- PIXTYPE *destt;
- int i,y, xmin,xmax,ymin,ymax,w2;
-
-/* First put the retina background to -BIG */
- destt = dest;
- for (i=w*h; i--;)
- *(destt++) = -BIG;
-
-/* Don't go further if out of frame!! */
- if (ix<0 || ix>=field->width || iy<field->ymin || iy>=field->ymax)
- return RETURN_ERROR;
-
-/* Set the image boundaries */
- w2 = w;
- ymin = iy-h/2;
- ymax = ymin + h;
- if (ymin<field->ymin)
- {
- dest += (field->ymin-ymin)*w;
- ymin = field->ymin;
- }
- if (ymax>field->ymax)
- ymax = field->ymax;
-
- xmin = ix-w/2;
- xmax = xmin + w;
- if (xmax>field->width)
- {
- w2 -= xmax-field->width;
- xmax = field->width;
- }
- if (xmin<0)
- {
- dest += -xmin;
- w2 -= -xmin;
- xmin = 0;
- }
-
-/* Copy the right pixels to the destination */
- for (y=ymin; y<ymax; y++, dest += w)
- memcpy(dest, &PIX(field, xmin, y), w2*sizeof(PIXTYPE));
-
- return RETURN_OK;
- }
-
-
-/********************************* addimage **********************************/
-/*
-Add a PSF to a part of the image (with a multiplicative factor).
-Outside boundaries are taken into account.
-*/
-void addimage(picstruct *field, float *psf,
- int w,int h, int ix,int iy, float amplitude)
- {
- PIXTYPE *pix;
- int x,y, xmin,xmax,ymin,ymax,w2, dwpsf;
-
-/* Set the image boundaries */
- w2 = w;
- ymin = iy-h/2;
- ymax = ymin + h;
- if (ymin<field->ymin)
- {
- psf += (field->ymin-ymin)*w;
- ymin = field->ymin;
- }
- if (ymax>field->ymax)
- ymax = field->ymax;
-
- xmin = ix-w/2;
- xmax = xmin + w;
- if (xmax>field->width)
- {
- w2 -= xmax-field->width;
- xmax = field->width;
- }
- if (xmin<0)
- {
- psf += -xmin;
- w2 -= -xmin;
- xmin = 0;
- }
-
- dwpsf = w-w2;
-/* Subtract the right pixels to the destination */
- for (y=ymin; y<ymax; y++, psf += dwpsf)
- {
- pix = &PIX(field, xmin, y);
- for (x=w2; x--;)
- *(pix++) += amplitude**(psf++);
- }
-
- return;
- }
-
-
-/***************************** copyimage_center ******************************/
-/*
-Copy a small part of the image and recenter it through sinc interpolation.
-Image parts which lie outside boundaries are set to 0.
-*/
-int copyimage_center(picstruct *field, PIXTYPE *dest, int w,int h,
- float x,float y)
- {
- PIXTYPE *s,*s0, *dt,*dt0,*dt2;
- float *m,
- dx,dy, ddx0,ddx,ddy,sum, fy, mval;
- int i,ix,iy, idmx,idmy, mx,my, xmin,ymin,xmin2,x0,y0,y2, w2,h2,
- sw,sh, idx,idy;
-
- dx = x - (ix=(int)x);
- dy = y - (iy=(int)y);
-
-/* Initialize destination buffer to zero */
- memset(dest, 0, w*h*sizeof(PIXTYPE));
-
-/* Don't go further if out of frame!! */
- if (ix<0 || ix>=field->width || iy<field->ymin || iy>=field->ymax)
- return RETURN_ERROR;
-
-/* Compute the interpolation mask */
- ddx0 = -(idmx=(INTERPW-(dx>0.0?1:0))/2)-dx;
- ddy = -(idmy=(INTERPH-(dy>0.0?1:0))/2)-dy;
- sum = 0.0;
- m = interpm;
- for (my=INTERPH; my--; ddy+=1.0)
- {
- ddx = ddx0;
- fy = INTERPF(ddy);
- for (mx=INTERPW; mx--;ddx+=1.0)
- sum += *(m++) = fy*INTERPF(ddx);
- }
-
-/* Normalize it */
- m = interpm;
- for (i=INTERPW*INTERPH; i--;)
- *(m++) /= sum;
-
-/* Do the interpolation */
- m = interpm;
- xmin = ix - w/2 - idmx;
- ymin = iy - h/2 - idmy;
- sw = field->width;
- sh = field->stripheight;
- for (my=INTERPH; my--; ymin++)
- {
-/*-- Set the image boundaries in y */
- if ((idy = field->ymin-ymin) > 0)
- {
- dt0 = dest + w*idy;
- y0 = field->ymin;
- h2 = (idy<h ? (h - idy) : 0);
- }
- else
- {
- dt0 = dest;
- y0 = ymin;
- h2 = h;
- }
- if ((idy = field->ymax - y0) < h2)
- h2 = idy;
- xmin2 = xmin;
- for (mx=INTERPW; mx--; xmin2++)
- {
- mval = *(m++);
-/*---- Set the image boundaries in x */
- if (xmin2 < 0)
- {
- dt = dt0 - xmin2;
- x0 = 0;
- if ((w2 = w + xmin2) < 0)
- w2 = 0;
- }
- else
- {
- dt = dt0;
- x0 = xmin2;
- w2 = w;
- }
- if ((idx = sw - x0) < w2)
- w2 = idx;
-
- if (h2 >= 0 && w2 >= 0)
- {
- s0 = field->strip + x0;
- y2 = y0;
- for (iy=h2; iy--; dt+=w)
- {
- dt2 = dt;
- s = s0+sw*((y2++)%sh);
- for (ix=w2; ix--;)
- *(dt2++) += mval**(s++);
- }
- }
- }
- }
-
- return RETURN_OK;
- }
-
-
-/****************************** addimage_center ******************************/
-/*
-Add a vignet to an image (with a multiplicative factor), recentered through
-sinc interpolation.
-*/
-void addimage_center(picstruct *field, float *psf, int w,int h,
- float x,float y, float amplitude)
- {
- PIXTYPE *s,*s0, *dt,*dt0,*dt2;
- float *m,
- dx,dy, ddx0,ddx,ddy,sum, fy, mval;
- int i,ix,iy, idmx,idmy, mx,my, xmin,ymin,xmin2,x0,y0,y2, w2,h2,
- sw,sh, idx,idy;
-
-/*
-QMALLOC(psf2, float, w*h);
-copyimage_center(field, psf2, w, h, x, y)
-dt = psf;
-dt2 = psf2;
-for (i=w*h; i--; dt++)
-*dt = amplitude*(dt++) - *(dt2++);
-free(psf2);
-*/
- dx = x - (ix=(int)x);
- dy = y - (iy=(int)y);
-
-/* Don't go further if out of frame!! */
- if (ix<0 || ix>=field->width || iy<field->ymin || iy>=field->ymax)
- return;
-
-/* Compute the interpolation mask */
- ddx0 = -(idmx=(INTERPW-(dx>0.0?1:0))/2)-dx;
- ddy = -(idmy=(INTERPH-(dy>0.0?1:0))/2)-dy;
- sum = 0.0;
- m = interpm;
- for (my=INTERPH; my--; ddy+=1.0)
- {
- ddx = ddx0;
- fy = INTERPF(ddy);
- for (mx=INTERPW; mx--;ddx+=1.0)
- sum += *(m++) = fy*INTERPF(ddx);
- }
-
-/* Normalize it */
- m = interpm;
- for (i=INTERPW*INTERPH; i--;)
- *(m++) /= sum;
-
-/* Do the interpolation */
- m = interpm;
- xmin = ix - w/2 - idmx;
- ymin = iy - h/2 - idmy;
- sw = field->width;
- sh = field->stripheight;
- for (my=INTERPH; my--; ymin++)
- {
-/*-- Set the image boundaries in y */
- if ((idy = field->ymin-ymin) > 0)
- {
- dt0 = psf + w*idy;
- y0 = field->ymin;
- h2 = (idy<h ? (h - idy) : 0);
- }
- else
- {
- dt0 = psf;
- y0 = ymin;
- h2 = h;
- }
- if ((idy = field->ymax - y0) < h2)
- h2 = idy;
- xmin2 = xmin;
- for (mx=INTERPW; mx--; xmin2++)
- {
- mval = *(m++);
-/*---- Set the image boundaries in x */
- if (xmin2 < 0)
- {
- dt = dt0 - xmin2;
- x0 = 0;
- if ((w2 = w + xmin2) < 0)
- w2 = 0;
- }
- else
- {
- dt = dt0;
- x0 = xmin2;
- w2 = w;
- }
- if ((idx = sw - x0) < w2)
- w2 = idx;
-
- if (h2 >= 0 && w2 >= 0)
- {
- s0 = field->strip + x0;
- y2 = y0;
- for (iy=h2; iy--; dt+=w)
- {
- dt2 = dt;
- s = s0+sw*((y2++)%sh);
- for (ix=w2; ix--;)
- *(s++) += amplitude*mval**(dt2++);
- }
- }
- }
- }
-
- return;
- }
-
-
-/********************************* blankimage *******************************/
-/*
-Blank a small part of the image according to a mask.
-*/
-void blankimage(picstruct *field, PIXTYPE *mask, int w,int h,
- int xmin,int ymin, PIXTYPE val)
- {
- PIXTYPE *pixt;
- int x,y, xmax,ymax,w2;
-
-/* Don't go further if out of frame!! */
- if (xmin+w<0 || xmin>=field->width
- || ymin+h<field->ymin || ymin>=field->ymax)
- return;
-
-/* Set the image boundaries */
- w2 = w;
- ymax = ymin + h;
- if (ymin<field->ymin)
- {
- mask += (field->ymin-ymin)*w;
- ymin = field->ymin;
- }
- if (ymax>field->yblank)
- ymax = field->yblank;
-
- xmax = xmin + w;
- if (xmax>field->width)
- {
- w2 -= xmax-field->width;
- xmax = field->width;
- }
- if (xmin<0)
- {
- mask += -xmin;
- w2 -= -xmin;
- xmin = 0;
- }
-
- w -= w2;
-
-/* Blank the right pixels in the image */
- for (y=ymin; y<ymax; y++, mask += w)
- {
- pixt = &PIX(field, xmin,y);
- for (x=w2; x--; pixt++)
- if (*(mask++) > -BIG)
- *pixt = val;
- }
-
- return;
- }
-
-
-/********************************* pasteimage *******************************/
-/*
-Paste a mask onto an image.
-*/
-void pasteimage(picstruct *field, PIXTYPE *mask, int w,int h,
- int xmin,int ymin)
- {
- PIXTYPE *pixt, val;
- int x,y, xmax,ymax,w2;
-
-/* Don't go further if out of frame!! */
- if (xmin+w<0 || xmin>=field->width
- || ymin+h<field->ymin || ymin>=field->ymax)
- return;
-
-/* Set the image boundaries */
- w2 = w;
- ymax = ymin + h;
- if (ymin<field->ymin)
- {
- mask += (field->ymin-ymin)*w;
- ymin = field->ymin;
- }
- if (ymax>field->ymax)
- ymax = field->ymax;
-
- xmax = xmin + w;
- if (xmax>field->width)
- {
- w2 -= xmax-field->width;
- xmax = field->width;
- }
- if (xmin<0)
- {
- mask += -xmin;
- w2 -= -xmin;
- xmin = 0;
- }
-
- w -= w2;
-
-/* Blank the right pixels in the image */
- for (y=ymin; y<ymax; y++, mask += w)
- {
- pixt = &PIX(field, xmin,y);
- for (x=w2; x--; pixt++)
- if ((val = *(mask++)) > -BIG)
- *pixt = val;
- }
-
- return;
- }
-
-
-/****************************** vignet_resample ******************************/
-/*
-Scale and shift a small image through sinc interpolation.
-Image parts which lie outside boundaries are set to 0.
-*/
-int vignet_resample(double *pix1, int w1, int h1,
- double *pix2, int w2, int h2,
- double dx, double dy, double step2)
- {
- double *mask,*maskt, xc1,xc2,yc1,yc2, xs1,ys1, x1,y1, x,y, dxm,dym,
- val,
- *pix12, *pixin,*pixin0, *pixout,*pixout0;
- int i,j,k,n,t, *start,*startt, *nmask,*nmaskt,
- ixs2,iys2, ix2,iy2, dix2,diy2, nx2,ny2, iys1a, ny1, hmw,hmh,
- ix,iy, ix1,iy1;
-
-
-/* Initialize destination buffer to zero */
- memset(pix2, 0, w2*h2*sizeof(double));
-
- xc1 = (double)(w1/2); /* Im1 center x-coord*/
- xc2 = (double)(w2/2); /* Im2 center x-coord*/
- xs1 = xc1 + dx - xc2*step2; /* Im1 start x-coord */
-
- if ((int)xs1 >= w1)
- return RETURN_ERROR;
- ixs2 = 0; /* Int part of Im2 start x-coord */
- if (xs1<0.0)
- {
- dix2 = (int)(1-xs1/step2);
-/*-- Simply leave here if the images do not overlap in x */
- if (dix2 >= w2)
- return RETURN_ERROR;
- ixs2 += dix2;
- xs1 += dix2*step2;
- }
- nx2 = (int)((w1-1-xs1)/step2+1);/* nb of interpolated Im2 pixels along x */
- if (nx2>(ix2=w2-ixs2))
- nx2 = ix2;
- if (nx2<=0)
- return RETURN_ERROR;
- yc1 = (double)(h1/2); /* Im1 center y-coord */
- yc2 = (double)(h2/2); /* Im2 center y-coord */
- ys1 = yc1 + dy - yc2*step2; /* Im1 start y-coord */
- if ((int)ys1 >= h1)
- return RETURN_ERROR;
- iys2 = 0; /* Int part of Im2 start y-coord */
- if (ys1<0.0)
- {
- diy2 = (int)(1-ys1/step2);
-/*-- Simply leave here if the images do not overlap in y */
- if (diy2 >= h2)
- return RETURN_ERROR;
- iys2 += diy2;
- ys1 += diy2*step2;
- }
- ny2 = (int)((h1-1-ys1)/step2+1);/* nb of interpolated Im2 pixels along y */
- if (ny2>(iy2=h2-iys2))
- ny2 = iy2;
- if (ny2<=0)
- return RETURN_ERROR;
-
-/* Set the yrange for the x-resampling with some margin for interpolation */
- iys1a = (int)ys1; /* Int part of Im1 start y-coord with margin */
- hmh = INTERPH/2 - 1; /* Interpolant start */
- if (iys1a<0 || ((iys1a -= hmh)< 0))
- iys1a = 0;
- ny1 = (int)(ys1+ny2*step2)+INTERPW-hmh; /* Interpolated Im1 y size */
- if (ny1>h1) /* with margin */
- ny1 = h1;
-/* Express everything relative to the effective Im1 start (with margin) */
- ny1 -= iys1a;
- ys1 -= (double)iys1a;
-
-/* Allocate interpolant stuff for the x direction */
- QMALLOC(mask, double, nx2*INTERPW); /* Interpolation masks */
- QMALLOC(nmask, int, nx2); /* Interpolation mask sizes */
- QMALLOC(start, int, nx2); /* Int part of Im1 conv starts */
-/* Compute the local interpolant and data starting points in x */
- hmw = INTERPW/2 - 1;
- x1 = xs1;
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- for (j=nx2; j--; x1+=step2)
- {
- ix = (ix1=(int)x1) - hmw;
- dxm = ix1 - x1 - hmw; /* starting point in the interpolation func */
- if (ix < 0)
- {
- n = INTERPW+ix;
- dxm -= (double)ix;
- ix = 0;
- }
- else
- n = INTERPW;
- if (n>(t=w1-ix))
- n=t;
- *(startt++) = ix;
- *(nmaskt++) = n;
- for (x=dxm, i=n; i--; x+=1.0)
- *(maskt++) = INTERPF(x);
- }
-
- QCALLOC(pix12, double, nx2*ny1); /* Intermediary frame-buffer */
-
-/* Make the interpolation in x (this includes transposition) */
- pixin0 = pix1+iys1a*w1;
- pixout0 = pix12;
- for (k=ny1; k--; pixin0+=w1, pixout0++)
- {
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- pixout = pixout0;
- for (j=nx2; j--; pixout+=ny1)
- {
- pixin = pixin0+*(startt++);
- val = 0.0;
- for (i=*(nmaskt++); i--;)
- val += *(maskt++)**(pixin++);
- *pixout = val;
- }
- }
-
-/* Reallocate interpolant stuff for the y direction */
- QREALLOC(mask, double, ny2*INTERPH); /* Interpolation masks */
- QREALLOC(nmask, int, ny2); /* Interpolation mask sizes */
- QREALLOC(start, int, ny2); /* Int part of Im1 conv starts */
-
-/* Compute the local interpolant and data starting points in y */
- hmh = INTERPH/2 - 1;
- y1 = ys1;
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- for (j=ny2; j--; y1+=step2)
- {
- iy = (iy1=(int)y1) - hmh;
- dym = iy1 - y1 - hmh; /* starting point in the interpolation func */
- if (iy < 0)
- {
- n = INTERPH+iy;
- dym -= (double)iy;
- iy = 0;
- }
- else
- n = INTERPH;
- if (n>(t=ny1-iy))
- n=t;
- *(startt++) = iy;
- *(nmaskt++) = n;
- for (y=dym, i=n; i--; y+=1.0)
- *(maskt++) = INTERPF(y);
- }
-
-/* Make the interpolation in y and transpose once again */
- pixin0 = pix12;
- pixout0 = pix2+ixs2+iys2*w2;
- for (k=nx2; k--; pixin0+=ny1, pixout0++)
- {
- maskt = mask;
- nmaskt = nmask;
- startt = start;
- pixout = pixout0;
- for (j=ny2; j--; pixout+=w2)
- {
- pixin = pixin0+*(startt++);
- val = 0.0;
- for (i=*(nmaskt++); i--;)
- val += *(maskt++)**(pixin++);
- *pixout = val;
- }
- }
-
-/* Free memory */
- free(pix12);
- free(mask);
- free(nmask);
- free(start);
-
- return RETURN_OK;
- }
-
-
diff --git a/external/sextractor/source/image.h b/external/sextractor/source/image.h
deleted file mode 100644
index 53afcc4..0000000
--- a/external/sextractor/source/image.h
+++ /dev/null
@@ -1,42 +0,0 @@
- /*
- image.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include file for image.c.
-*
-* Last modify: 29/08/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define INTERPW 6 /* Interpolation function range (x) */
-#define INTERPH 6 /* Interpolation function range (y) */
-
-#define INTERPF(x) (x==0.0?1.0:sin(PI*x)*sin(PI*x/3.0)/(PI*PI/3.0*x*x))
- /* Lanczos approximation */
-
-/*--------------------------- structure definitions -------------------------*/
-
-
-/*----------------------------- Global variables ----------------------------*/
-
-/*------------------------------- functions ---------------------------------*/
-extern void addimage(picstruct *field, float *psf,
- int w,int h, int ix,int iy, float amplitude),
- addimage_center(picstruct *field, float *psf,
- int w,int h, float x, float y, float amplitude),
- blankimage(picstruct *, PIXTYPE *, int,int, int,int, PIXTYPE),
- pasteimage(picstruct *, PIXTYPE *, int ,int, int, int);
-
-extern int copyimage(picstruct *, PIXTYPE *, int, int, int, int),
- copyimage_center(picstruct *, PIXTYPE *, int,int, float,float),
- vignet_resample(double *pix1, int w1, int h1, double *pix2,
- int w2, int h2, double dx, double dy, double step2);
-
diff --git a/external/sextractor/source/interpolate.c b/external/sextractor/source/interpolate.c
deleted file mode 100644
index 8be5d9a..0000000
--- a/external/sextractor/source/interpolate.c
+++ /dev/null
@@ -1,120 +0,0 @@
- /*
- interpolate.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Interpolation of input data.
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "field.h"
-#include "interpolate.h"
-
-
-/****************************** init_interpolate ****************************/
-/*
-Init resources required for data interpolation.
-*/
-void init_interpolate(picstruct *field, int xtimeout, int ytimeout)
-
- {
- QMALLOC(field->interp_backup, PIXTYPE, field->width);
-/* ytimeout < 0 means we don't need a timeout buffer (it won't be used) */
- if (ytimeout>=0)
- {
- QMALLOC(field->interp_ytimeoutbuf, int, field->width);
- memset(field->interp_ytimeoutbuf, 0, (size_t)(field->width*sizeof(int)));
- }
-
- field->interp_xtimeout = xtimeout;
- field->interp_ytimeout = ytimeout;
-
- field->interp_flag = 1;
-
- return;
- }
-
-
-/******************************** interpolate *******************************/
-/*
-Interpolate (crudely) input data.
-*/
-void interpolate(picstruct *field, picstruct *wfield,
- PIXTYPE *data, PIXTYPE *wdata)
-
- {
- PIXTYPE *backup,*wbackup,
- thresh;
- int *ytimeout,
- xtimeout,xtimeout0,ytimeout0, allflag, i;
-
- thresh = wfield->weight_thresh;
- backup = field->interp_backup;
- wbackup = wfield->interp_backup;
- ytimeout = wfield->interp_ytimeoutbuf;
- xtimeout0 = wfield->interp_xtimeout;
- ytimeout0 = wfield->interp_ytimeout;
- xtimeout = 0; /* Start as if the previous pixel was already interpolated */
- allflag = field->interp_flag;
- for (i=field->width; i--; ytimeout++)
- {
-/*-- Check if interpolation is needed */
- if (*wdata>=thresh) /* It's a variance map: the bigger the worse */
- {
-/*---- Check if the previous pixel was already interpolated */
- if (!xtimeout)
- {
- if (*ytimeout)
- {
- (*ytimeout)--;
- *wdata = *wbackup;
- if (allflag)
- *data = *backup;
- }
- }
- else
- {
- xtimeout--;
- *wdata = *(wdata-1);
- if (allflag)
- *data = *(data-1);
- }
- }
- else
- {
- xtimeout = xtimeout0;
- *ytimeout = ytimeout0;
- }
- *(wbackup++) = *(wdata++);
- if (allflag)
- *(backup++) = *(data++);
- }
-
- return;
- }
-
-
-/******************************* end_interpolate ****************************/
-/*
-Free memory allocated for data interpolation.
-*/
-void end_interpolate(picstruct *field)
-
- {
- free(field->interp_backup);
- free(field->interp_ytimeoutbuf);
-
- return;
- }
-
diff --git a/external/sextractor/source/interpolate.h b/external/sextractor/source/interpolate.h
deleted file mode 100644
index 8ac7823..0000000
--- a/external/sextractor/source/interpolate.h
+++ /dev/null
@@ -1,24 +0,0 @@
- /*
- interpolate.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Include file for interpolate.c.
-*
-* Last modify: 29/04/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*---------------------------------- protos --------------------------------*/
-
-extern void end_interpolate(picstruct *field),
- init_interpolate(picstruct *field,
- int xtimeout, int ytimeout),
- interpolate(picstruct *field, picstruct *wfield,
- PIXTYPE *data, PIXTYPE *wdata);
-
diff --git a/external/sextractor/source/key.h b/external/sextractor/source/key.h
deleted file mode 100644
index 981a512..0000000
--- a/external/sextractor/source/key.h
+++ /dev/null
@@ -1,42 +0,0 @@
- /*
- key.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden & ESO)
-*
-* Contents: Keyword structure.
-*
-* Last modify: 04/11/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants -------------------------------*/
-
-#define FIND_STRICT 0
-#define FIND_NOSTRICT 1
-
-/*--------------------------- structure definitions -------------------------*/
-/* Preference keyword */
-typedef struct
- {
- char name[16];
- enum {P_FLOAT, P_INT, P_STRING, P_BOOL, P_KEY, P_INTLIST, P_FLOATLIST,
- P_KEYLIST, P_STRINGLIST} type;
- void *ptr; /* Pointer to the keyword value */
- int imin, imax; /* Range for int's */
- double dmin, dmax; /* Range for doubles */
- char keylist[32][16]; /* List of keywords */
- int nlistmin; /* Minimum number of list members */
- int nlistmax; /* Maximum number of list members */
- int *nlistptr; /* Ptr to store the nb of read params*/
- int flag;
- } pkeystruct;
-
-/*---------------------------------- protos --------------------------------*/
-
-int findkeys(char *str, char key[][16], int mode);
-
diff --git a/external/sextractor/source/main.c b/external/sextractor/source/main.c
deleted file mode 100644
index fd8b98f..0000000
--- a/external/sextractor/source/main.c
+++ /dev/null
@@ -1,100 +0,0 @@
- /*
- main.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Command-line parsing.
-*
-* Last modify: 15/05/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-
-#define SYNTAX \
-"sex <image_name> [-c <configuration_file>] [-<keyword> <value>]"
-
-/********************************** main ************************************/
-int main(int argc, char *argv[])
-
- {
- int a, narg, nim;
- char **argkey, **argval, *str;
-
- if (argc<2)
- {
- fprintf(OUTPUT, "\n %s Version %s\n", BANNER, VERSION);
- fprintf(OUTPUT, "\nby %s\n", COPYRIGHT);
- fprintf(OUTPUT, "\nFor more information: %s\n", WEBSITE);
- fprintf(OUTPUT, "Questions or suggestions? %s\n", MAILINGLIST);
- fprintf(OUTPUT, "Mailing-list requests: %s\n", MAILINGLISTREQ);
- error(EXIT_SUCCESS, "SYNTAX: ", SYNTAX);
- }
-
- QMALLOC(argkey, char *, argc);
- QMALLOC(argval, char *, argc);
-
-/*default parameters */
-
- prefs.pipe_flag = 0;
- prefs.nimage_name = 1;
- prefs.image_name[0] = "image";
- strcpy(prefs.prefs_name, "default.sex");
- narg = nim = 0;
-
- for (a=1; a<argc; a++)
- {
- if (argv[a][0] == '-' && a<(argc-1))
- {
- if (strlen(argv[a])<3)
- switch((int)tolower((int)argv[a][1]))
- {
-/*-------- Config filename */
- case 'c': strcpy(prefs.prefs_name, argv[++a]);
- break;
- default: error(EXIT_SUCCESS,"SYNTAX: ", SYNTAX);
- }
- else
- {
-/*------ Config parameters */
- argkey[narg] = &argv[a][1];
- argval[narg++] = argv[++a];
- }
- }
- else
- {
-/*---- The input image filename(s) */
- for(; (a<argc) && (*argv[a]!='-'); a++)
- for (str=NULL;str=strtok(str?NULL:argv[a], notokstr); nim++)
- if (nim<MAXIMAGE)
- prefs.image_name[nim] = str;
- else
- error(EXIT_FAILURE, "*Error*: Too many input images: ", str);
- prefs.nimage_name = nim;
- a--;
- }
- }
-
- readprefs(prefs.prefs_name, argkey, argval, narg);
-
- free(argkey);
- free(argval);
-
- makeit();
-
- NFPRINTF(OUTPUT, "All done");
- NPRINTF(OUTPUT, "\n");
-
- exit(EXIT_SUCCESS);
- }
diff --git a/external/sextractor/source/makeit.c b/external/sextractor/source/makeit.c
deleted file mode 100644
index cce8d4c..0000000
--- a/external/sextractor/source/makeit.c
+++ /dev/null
@@ -1,366 +0,0 @@
-/*
- makeit.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: main program.
-*
-* Last modify: 10/09/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <time.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "check.h"
-#include "field.h"
-#include "filter.h"
-#include "growth.h"
-#include "interpolate.h"
-#include "psf.h"
-#include "retina.h"
-#include "som.h"
-#include "weight.h"
-
-/******************************** makeit *************************************/
-/*
-Manage the whole stuff.
-*/
-void makeit()
-
- {
- checkstruct *check;
- picstruct *dfield, *field,*pffield[MAXFLAG], *wfield,*dwfield;
- static time_t thetime1, thetime2;
- int i;
-
-/*Initial time measurement*/
- time(&thetime1);
-
- dfield = field = wfield = dwfield = NULL;
-
-/* Initialize globals variables */
- initglob();
-
- NFPRINTF(OUTPUT, "Setting catalog parameters");
- readcatparams(prefs.param_name);
- useprefs(); /* update things accor. to prefs parameters */
-
- if (prefs.psf_flag)
- {
- NFPRINTF(OUTPUT, "Reading PSF information");
- thepsf = psf_load(prefs.psf_name);
- /*-- Need to check things up because of PSF context parameters */
- updateparamflags();
- useprefs();
- }
-
- if (prefs.filter_flag)
- {
- NFPRINTF(OUTPUT, "Reading detection filter");
- getfilter(prefs.filter_name); /* get the detection filter */
- }
-
- if (FLAG(obj2.sprob))
- {
- NFPRINTF(OUTPUT, "Initializing Neural Network");
- neurinit();
- NFPRINTF(OUTPUT, "Reading Neural Network Weights");
- getnnw();
- }
-
- if (prefs.somfit_flag)
- {
- int margin;
-
- thesom = som_load(prefs.som_name);
- if ((margin=(thesom->inputsize[1]+1)/2) > prefs.cleanmargin)
- prefs.cleanmargin = margin;
- if (prefs.somfit_vectorsize>thesom->neurdim)
- {
- prefs.somfit_vectorsize = thesom->neurdim;
- sprintf(gstr,"%d", prefs.somfit_vectorsize);
- warning("Dimensionality of the SOM-fit vector limited to ", gstr);
- }
- }
-
-/* Prepare growth-curve buffer */
- if (prefs.growth_flag)
- initgrowth();
-
-/* Init the Detection and Measurement-images */
- if (prefs.dimage_flag)
- {
- dfield = newfield(prefs.image_name[0], DETECT_FIELD);
- field = newfield(prefs.image_name[1], MEASURE_FIELD);
- if ((field->width!=dfield->width) || (field->height!=dfield->height))
- error(EXIT_FAILURE, "*Error*: Frames have different sizes","");
-/*-- Prepare interpolation */
- if (prefs.dweight_flag && prefs.interp_type[0] == INTERP_ALL)
- init_interpolate(dfield, -1, -1);
- if (prefs.interp_type[1] == INTERP_ALL)
- init_interpolate(field, -1, -1);
- }
- else
- {
- field = newfield(prefs.image_name[0], DETECT_FIELD | MEASURE_FIELD);
-/*-- Prepare interpolation */
- if ((prefs.dweight_flag || prefs.weight_flag)
- && prefs.interp_type[0] == INTERP_ALL)
- init_interpolate(field, -1, -1); /* 0.0 or anything else */
- }
-
-/* Init the WEIGHT-images */
- if (prefs.dweight_flag || prefs.weight_flag)
- {
- weightenum wtype;
- PIXTYPE interpthresh;
-
- if (prefs.nweight_type>1)
- {
-/*---- Double-weight-map mode */
- if (prefs.weight_type[1] != WEIGHT_NONE)
- {
-/*------ First: the "measurement" weights */
- wfield = newweight(prefs.wimage_name[1],field,prefs.weight_type[1]);
- wtype = prefs.weight_type[1];
- interpthresh = prefs.weight_thresh[1];
-/*------ Convert the interpolation threshold to variance units */
- weight_to_var(wfield, &interpthresh, 1);
- wfield->weight_thresh = interpthresh;
- if (prefs.interp_type[1] != INTERP_NONE)
- init_interpolate(wfield,
- prefs.interp_xtimeout[1], prefs.interp_ytimeout[1]);
- }
-/*---- The "detection" weights */
- if (prefs.weight_type[0] != WEIGHT_NONE)
- {
- interpthresh = prefs.weight_thresh[0];
- if (prefs.weight_type[0] == WEIGHT_FROMINTERP)
- {
- dwfield=newweight(prefs.wimage_name[0],wfield,prefs.weight_type[0]);
- weight_to_var(wfield, &interpthresh, 1);
- }
- else
- {
- dwfield = newweight(prefs.wimage_name[0], dfield?dfield:field,
- prefs.weight_type[0]);
- weight_to_var(dwfield, &interpthresh, 1);
- }
- dwfield->weight_thresh = interpthresh;
- if (prefs.interp_type[0] != INTERP_NONE)
- init_interpolate(dwfield,
- prefs.interp_xtimeout[0], prefs.interp_ytimeout[0]);
- }
- }
- else
- {
-/*---- Single-weight-map mode */
- wfield = newweight(prefs.wimage_name[0], dfield?dfield:field,
- prefs.weight_type[0]);
- wtype = prefs.weight_type[0];
- interpthresh = prefs.weight_thresh[0];
-/*---- Convert the interpolation threshold to variance units */
- weight_to_var(wfield, &interpthresh, 1);
- wfield->weight_thresh = interpthresh;
- if (prefs.interp_type[0] != INTERP_NONE)
- init_interpolate(wfield,
- prefs.interp_xtimeout[0], prefs.interp_ytimeout[0]);
- }
- }
-
-/* Init the FLAG-images */
- for (i=0; i<prefs.nimaflag; i++)
- {
- pffield[i] = newfield(prefs.fimage_name[i], FLAG_FIELD);
- if ((pffield[i]->width!=field->width)
- || (pffield[i]->height!=field->height))
- error(EXIT_FAILURE,
- "*Error*: Incompatible FLAG-map size in ", prefs.fimage_name[i]);
- }
-
-/* Compute background maps for `standard' fields */
- QPRINTF(OUTPUT, dfield? "Measurement image:"
- : "Detection+Measurement image: ");
- makeback(field, wfield);
- QPRINTF(OUTPUT, (dfield || (dwfield&&dwfield->flags^INTERP_FIELD))? "(M) "
- "Background: %-10g RMS: %-10g / Threshold: %-10g \n"
- : "(M+D) "
- "Background: %-10g RMS: %-10g / Threshold: %-10g \n",
- field->backmean, field->backsig, (field->flags & DETECT_FIELD)?
- field->dthresh: field->thresh);
- if (dfield)
- {
- QPRINTF(OUTPUT, "Detection image: ");
- makeback(dfield, dwfield? dwfield
- : (prefs.weight_type[0] == WEIGHT_NONE?NULL:wfield));
- QPRINTF(OUTPUT, "(D) "
- "Background: %-10g RMS: %-10g / Threshold: %-10g \n",
- dfield->backmean, dfield->backsig, dfield->dthresh);
- }
- else if (dwfield && dwfield->flags^INTERP_FIELD)
- {
- makeback(field, dwfield);
- QPRINTF(OUTPUT, "(D) "
- "Background: %-10g RMS: %-10g / Threshold: %-10g \n",
- field->backmean, field->backsig, field->dthresh);
- }
-
-/* For interpolated weight-maps, copy the background structure */
- if (dwfield && dwfield->flags&(INTERP_FIELD|BACKRMS_FIELD))
- copyback(dwfield->reffield, dwfield);
- if (wfield && wfield->flags&(INTERP_FIELD|BACKRMS_FIELD))
- copyback(wfield->reffield, wfield);
-
-/* Prepare learn and/or associations */
- if (prefs.assoc_flag)
- init_assoc(field); /* initialize assoc tasks */
-
-/* Init the CHECK-images */
- if (prefs.check_flag)
- {
- checkenum c;
-
- NFPRINTF(OUTPUT, "Initializing check-image(s)");
- for (i=0; i<prefs.ncheck_type; i++)
- if ((c=prefs.check_type[i]) != CHECK_NONE)
- {
- if (prefs.check[c])
- error(EXIT_FAILURE, "*Error*: 2 CHECK_IMAGEs cannot have the same ",
- " CHECK_IMAGE_TYPE");
- prefs.check[c] = initcheck(field,prefs.check_name[i],
- prefs.check_type[i]);
- free(prefs.check_name[i]);
- }
- }
-
-/* Initialize PSF contexts and workspace */
- if (prefs.psf_flag)
- {
- psf_readcontext(thepsf, field);
- psf_init(thepsf);
- }
-
-/* Copy field structures to static ones (for catalog info) */
- if (dfield)
- {
- thefield1 = *field;
- thefield2 = *dfield;
- }
- else
- thefield1 = thefield2 = *field;
-
- if (wfield)
- {
- thewfield1 = *wfield;
- thewfield2 = dwfield? *dwfield: *wfield;
- }
- else if (dwfield)
- thewfield2 = *dwfield;
-
- NFPRINTF(OUTPUT, "Initializing catalog");
- initcat(field);
-
-/* Start the extraction pipeline */
- NFPRINTF(OUTPUT, "Scanning image");
- scanimage(field, dfield, pffield, prefs.nimaflag, wfield, dwfield);
-
- NFPRINTF(OUTPUT, "Closing files");
-
-/* End the CHECK-image processing */
- if (prefs.check_flag)
- for (i=0; i<MAXCHECK; i++)
- if (check=prefs.check[i])
- endcheck(field, check);
-
-/*Final time measurements*/
- if (time(&thetime2)!=-1)
- {
- if (!strftime(cat.ext_date, 10, "%d/%m/%y", localtime(&thetime2)))
- error(EXIT_FAILURE, "*Internal Error*: Date string too long ","");
- if (!strftime(cat.ext_time, 10, "%H:%M:%S", localtime(&thetime2)))
- error(EXIT_FAILURE, "*Internal Error*: Time/date string too long ","");
-#ifdef SUN_OS
- cat.ext_elapsed = (double)thetime2 - (double)thetime1;
-#else
- cat.ext_elapsed = difftime(thetime2, thetime1);
-#endif
- }
-
- endcat();
-
-/* Close ASSOC routines */
- end_assoc(field);
-
- for (i=0; i<prefs.nimaflag; i++)
- endfield(pffield[i]);
- endfield(field);
- if (dfield)
- endfield(dfield);
- if (wfield)
- endfield(wfield);
- if (dwfield)
- endfield(dwfield);
-
- if (prefs.filter_flag)
- endfilter();
-
- if (prefs.somfit_flag)
- som_end(thesom);
-
- if (prefs.growth_flag)
- endgrowth();
-
- if (prefs.psf_flag)
- psf_end(thepsf);
-
- if (FLAG(obj2.sprob))
- neurclose();
-
- QPRINTF(OUTPUT, "Objects: detected %-8d / sextracted %-8d\n",
- cat.ndetect, cat.ntotal);
-/*
- if (FLAG(obj.retinout))
- endretina(theretina);
-*/
- return;
- }
-
-
-/******************************** initglob ***********************************/
-/*
-Initialize a few global variables
-*/
-void initglob()
- {
- int i;
-
- for (i=0; i<37; i++)
- {
- ctg[i] = cos(i*PI/18);
- stg[i] = sin(i*PI/18);
- }
-
-
- return;
- }
-
-/*
-int matherr(struct exception *x)
-{
-printf("***MATH ERROR***: %d %s %f %f\n",
-x->type, x->name, x->arg1, x->retval);
-return (0);
-}
-
-*/
diff --git a/external/sextractor/source/manobjlist.c b/external/sextractor/source/manobjlist.c
deleted file mode 100644
index f24809f..0000000
--- a/external/sextractor/source/manobjlist.c
+++ /dev/null
@@ -1,108 +0,0 @@
- /*
- manobjlist.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: functions for the management of object lists.
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "plist.h"
-
-/********************************* belong ************************************/
-/*
-say if an object is "included" in another.
-*/
-int belong(int corenb, objliststruct *coreobjlist,
- int shellnb, objliststruct *shellobjlist)
-
- {
- objstruct *cobj = &(coreobjlist->obj[corenb]),
- *sobj = &(shellobjlist->obj[shellnb]);
- pliststruct *cpl = coreobjlist->plist, *spl = shellobjlist->plist, *pixt;
-
- int xc=PLIST(cpl+cobj->firstpix,x), yc=PLIST(cpl+cobj->firstpix,y);
-
- for (pixt = spl+sobj->firstpix; pixt>=spl; pixt = spl+PLIST(pixt,nextpix))
- if ((PLIST(pixt,x) == xc) && (PLIST(pixt,y) == yc))
- return 1;
-
- return 0;
- }
-
-
-/********************************* addobj ************************************/
-/*
-Add an object to an objlist.
-*/
-int addobj(int objnb, objliststruct *objl1, objliststruct *objl2)
-
- {
- objstruct *objl2obj;
- pliststruct *plist1 = objl1->plist, *plist2 = objl2->plist;
- int fp, i, j, npx, objnb2;
-
- j = (fp = objl2->npix)*plistsize;
- objnb2 = objl2->nobj;
-
-/* Update the object list */
- if (objl2->nobj)
- {
- if (!(objl2obj = (objstruct *)realloc(objl2->obj,
- (++objl2->nobj) * sizeof(objstruct))))
- goto exit_addobj;
- }
- else
- if (!(objl2obj = (objstruct *)malloc((++objl2->nobj)*sizeof(objstruct))))
- goto exit_addobj;
-
-/* Update the pixel list */
- npx = objl1->obj[objnb].fdnpix;
- if (fp)
- {
- if (!(plist2 = (pliststruct *)realloc(plist2,
- (objl2->npix+=npx) * plistsize)))
- goto exit_addobj;
- }
- else
- if (!(plist2=(pliststruct *)malloc((objl2->npix=npx)*plistsize)))
- goto exit_addobj;
-
- objl2->obj = objl2obj;
- objl2->plist = plist2;
-
- plist2 += j;
- for(i=objl1->obj[objnb].firstpix; i!=-1; i=PLIST(plist1+i,nextpix))
- {
- memcpy(plist2, plist1+i, (size_t)plistsize);
- PLIST(plist2,nextpix) = (j+=plistsize);
- plist2 += plistsize;
- }
-
- PLIST(plist2-=plistsize, nextpix) = -1;
-
- objl2->obj[objnb2] = objl1->obj[objnb];
- objl2->obj[objnb2].firstpix = fp*plistsize;
- objl2->obj[objnb2].lastpix = j-plistsize;
- return objnb2;
-
-exit_addobj:
-
- objl2->nobj--;
- objl2->npix = fp;
- return RETURN_FATAL_ERROR;
- }
-
-
-
diff --git a/external/sextractor/source/misc.c b/external/sextractor/source/misc.c
deleted file mode 100644
index cab155c..0000000
--- a/external/sextractor/source/misc.c
+++ /dev/null
@@ -1,168 +0,0 @@
- /*
- misc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/ESO
-*
-* Contents: miscellaneous functions.
-*
-* Last modify: 31/05/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-
-
-/********************************* error ************************************/
-/*
-I hope it will never be used!
-*/
-void error(int num, char *msg1, char *msg2)
- {
- fprintf(stderr, "\n> %s%s\n\n",msg1,msg2);
- exit(num);
- }
-
-
-/******************************* cistrcmp ***********************************/
-/*
-case-insensitive strcmp.
-*/
-int cistrcmp(char *cs, char *ct, int mode)
-
- {
- int diff;
-
- if (mode)
- {
- while (*cs && *ct)
- if (diff=tolower((int)*(cs++))-tolower((int)*(ct++)))
- return diff;
- }
- else
- {
- while (*cs || *ct)
- if (diff=tolower((int)*(cs++))-tolower((int)*(ct++)))
- return diff;
- }
-
- return 0;
- }
-
-
-/******************************** hmedian ***********************************/
-/*
-Median using Heapsort algorithm (for float arrays) (based on Num.Rec algo.).
-Warning: changes the order of data!
-*/
-float hmedian(float *ra, int n)
-
- {
- int l, j, ir, i;
- float rra;
-
-
- if (n<2)
- return *ra;
- ra--;
- for (l = ((ir=n)>>1)+1;;)
- {
- if (l>1)
- rra = ra[--l];
- else
- {
- rra = ra[ir];
- ra[ir] = ra[1];
- if (--ir == 1)
- {
- ra[1] = rra;
- return n&1? ra[n/2+1] : (float)((ra[n/2]+ra[n/2+1])/2.0);
- }
- }
- for (j = (i=l)<<1; j <= ir;)
- {
- if (j < ir && ra[j] < ra[j+1])
- ++j;
- if (rra < ra[j])
- {
- ra[i] = ra[j];
- j += (i=j);
- }
- else
- j = ir + 1;
- }
- ra[i] = rra;
- }
-
-/* (the 'return' is inside the loop!!) */
- }
-
-
-/********************************* warning **********************************/
-/*
-Print a warning message on screen.
-*/
-void warning(char *msg1, char *msg2)
- {
- fprintf(OUTPUT, "\n> WARNING: %s%s\n\n",msg1,msg2);
- return;
- }
-
-
-/******************************* swapbytes **********************************/
-/*
-Swap bytes for doubles, longs and shorts (for DEC machines or PC for inst.).
-*/
-void swapbytes(void *ptr, int nb, int n)
- {
- char *cp;
- int j;
-
- cp = (char *)ptr;
-
- if (nb&4)
- {
- for (j=n; j--; cp+=4)
- {
- cp[0] ^= (cp[3]^=(cp[0]^=cp[3]));
- cp[1] ^= (cp[2]^=(cp[1]^=cp[2]));
- }
- return;
- }
-
- if (nb&2)
- {
- for (j=n; j--; cp+=2)
- cp[0] ^= (cp[1]^=(cp[0]^=cp[1]));
- return;
- }
-
- if (nb&1)
- return;
-
- if (nb&8)
- {
- for (j=n; j--; cp+=8)
- {
- cp[0] ^= (cp[7]^=(cp[0]^=cp[7]));
- cp[1] ^= (cp[6]^=(cp[1]^=cp[6]));
- cp[2] ^= (cp[5]^=(cp[2]^=cp[5]));
- cp[3] ^= (cp[4]^=(cp[3]^=cp[4]));
- }
- return;
- }
-
- error(EXIT_FAILURE, "*Internal Error*: Unknown size in ", "swapbytes()");
-
- return;
- }
-
diff --git a/external/sextractor/source/neurro.c b/external/sextractor/source/neurro.c
deleted file mode 100644
index 71da741..0000000
--- a/external/sextractor/source/neurro.c
+++ /dev/null
@@ -1,182 +0,0 @@
- /*
- neurro.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using neural networks.
-*
-* Author: E.BERTIN, Institut d'Astrophysique de Paris.
-*
-* Contents: run only version of the neural network.
-*
-* Last modify: 30/03/95
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "neurro.h"
-
-brainstruct *brain;
-
-/******************************** neurinit **********************************/
-/*
-Initialization of the "brain".
-*/
-void neurinit()
- {
- QMALLOC(brain, brainstruct, 1);
-
- return;
- }
-
-/********************************* neurend **********************************/
-/*
-Close the "brain".
-*/
-void neurclose()
- {
- free(brain);
-
- return;
- }
-
-/******************************** neurresp **********************************/
-/*
-Neural network response to an input vector.
-*/
-void neurresp(double *input, double *output)
-
- {
- int i, j, l, lastlay = brain->layersnb-1;
- double neursum;
-
- for (i=0; i<brain->nn[0]; i++)
- brain->n[0][i] = input[i]*brain->inscale[i] + brain->inbias[i];
- for (l=0; l<lastlay; l++)
- for (j=0; j<brain->nn[l+1]; j++)
- {
- neursum = brain->b[l][j];
- for (i=0; i<brain->nn[l]; i++)
- neursum += brain->w[l][i][j] * brain->n[l][i];
- brain->n[l+1][j] = f(neursum);
- }
- for (i=0; i<brain->nn[lastlay]; i++)
- output[i] = (brain->n[lastlay][i]-brain->outbias[i])
- / brain->outscale[i];
-
- return;
- }
-
-
-/************************************ f *************************************/
-/*
-Sigmoid function for a neural network.
-*/
-double f(double x)
-
- {
- return 1.0 / (1.0 + exp(-x));
- }
-
-
-/********************************* getnnw ***********************************/
-/*
-Read the NNW table that contains the weights.
-*/
-void getnnw()
-
- {
- FILE *infile;
- int i, j, k, step;
- char str[MAXCHAR], *sstr, *null;
-
- if ((infile = fopen(prefs.nnw_name,"r")) == NULL)
- error(EXIT_FAILURE,"*ERROR*: can't read ", prefs.nnw_name);
-
- fgets(str, MAXCHAR, infile);
- if (strncmp(str,"NNW",3))
- error(EXIT_FAILURE, prefs.nnw_name, " is NOT a NNW table!");
-
- step = 1;
- while (fgets(str, MAXCHAR, infile))
- {
- sstr = &str[(int)strspn(str," \t")];
- if (sstr[0]!=(char)'#' && sstr[0]!=(char)'\n')
- {
- null = sstr;
- switch(step)
- {
- case 1: brain->layersnb = atoi(strtok(sstr, " \t\n"));
- for (i=0; i<brain->layersnb; i++)
- brain->nn[i] = atoi(strtok(NULL, " \t\n"));
- step++;
- break;
-
- case 2: for (i=0; i<brain->nn[0]; i++)
- {
- brain->inbias[i] = atof(strtok(null, " \t\n"));
- null = NULL;
- }
- step++;
- break;
-
- case 3: for (i=0; i<brain->nn[0]; i++)
- {
- brain->inscale[i] = atof(strtok(null, " \t\n"));
- null = NULL;
- }
- i=j=0;
- step++;
- break;
-
- case 4: if (j == brain->nn[i+1])
- {
- j = 0;
- i++;
- }
- if (i < brain->layersnb-1)
- {
- for (k=0; k<brain->nn[i]; k++)
- {
- brain->w[i][k][j] = atof(strtok(null, " \t\n"));
- null = NULL;
- }
- brain->b[i][j] = atof(strtok(NULL, " \t\n"));
- j++;
- break;
- }
- else
- step++;
-
- case 5: for (i=0; i<brain->nn[brain->layersnb-1]; i++)
- {
- brain->outbias[i] = atof(strtok(null, " \t\n"));
- null = NULL;
- }
- step++;
- break;
- case 6: for (i=0; i<brain->nn[brain->layersnb-1]; i++)
- {
- brain->outscale[i] = atof(strtok(null, " \t\n"));
- null = NULL;
- }
- step++;
- break;
- default:error(EXIT_FAILURE, "*Error*: inconsistency in ", prefs.nnw_name);
- }
-
- }
- }
-
- fclose(infile);
-
- return;
- }
-
diff --git a/external/sextractor/source/neurro.h b/external/sextractor/source/neurro.h
deleted file mode 100644
index 1747723..0000000
--- a/external/sextractor/source/neurro.h
+++ /dev/null
@@ -1,40 +0,0 @@
- /*
- neurro.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: neurro.c
-*
-* Author: E.BERTIN, Institut d'Astrophysique de Paris.
-*
-* Contents: global definitions.
-*
-* Last modify: 30/03/95
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------- Neural Network parameters ---------------------*/
-#define LAYERS 3 /* max. number of hidden+i/o layers */
-#define CONNEX LAYERS-1
-#define NEURONS 10 /* maximum number of neurons/layer */
-
-/*------------------------------- structures --------------------------------*/
-typedef struct
- {
- int layersnb;
- int nn[LAYERS];
- double inbias[NEURONS];
- double inscale[NEURONS];
- double outbias[NEURONS];
- double outscale[NEURONS];
- double ni[NEURONS];
- double no[NEURONS];
- double n[LAYERS][NEURONS];
- double w[CONNEX][NEURONS][NEURONS];
- double b[CONNEX][NEURONS];
- } brainstruct;
-
-/*------------------------------- globals ----------------------------------*/
-
-extern double f(double);
diff --git a/external/sextractor/source/param.h b/external/sextractor/source/param.h
deleted file mode 100644
index 41023f3..0000000
--- a/external/sextractor/source/param.h
+++ /dev/null
@@ -1,490 +0,0 @@
-/*
- param.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: parameter list for catalog data.
-*
-* Last modify: 20/07/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-objstruct outobj;
-obj2struct outobj2;
-
-/*--------------------------------- initialization --------------------------*/
-keystruct objkey[] = {
- {"NUMBER", "Running object number",
- &outobj.number, H_INT, T_LONG, "%10d"},
-
- {"FLUX_ISO", "Isophotal flux",
- &outobj2.flux_iso, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUXERR_ISO", "RMS error for isophotal flux",
- &outobj2.fluxerr_iso, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"MAG_ISO", "Isophotal magnitude",
- &outobj2.mag_iso, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"MAGERR_ISO", "RMS error for isophotal magnitude",
- &outobj2.magerr_iso, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
-
- {"FLUX_ISOCOR", "Corrected isophotal flux",
- &outobj2.flux_isocor, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUXERR_ISOCOR", "RMS error for corrected isophotal flux",
- &outobj2.fluxerr_isocor, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"MAG_ISOCOR", "Corrected isophotal magnitude",
- &outobj2.mag_isocor, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"MAGERR_ISOCOR", "RMS error for corrected isophotal magnitude",
- &outobj2.magerr_isocor, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
-
- {"FLUX_APER", "Flux vector within fixed circular aperture(s)",
- &outobj2.flux_aper, H_FLOAT, T_FLOAT, "%12g", "count", 1,
- &prefs.flux_apersize},
- {"FLUXERR_APER", "RMS error vector for aperture flux(es)",
- &outobj2.fluxerr_aper, H_FLOAT, T_FLOAT, "%12g", "count", 1,
- &prefs.fluxerr_apersize},
- {"MAG_APER", "Fixed aperture magnitude vector",
- &outobj2.mag_aper, H_FLOAT, T_FLOAT, "%8.4f", "mag", 1,
- &prefs.mag_apersize},
- {"MAGERR_APER", "RMS error vector for fixed aperture mag.",
- &outobj2.magerr_aper, H_FLOAT, T_FLOAT, "%8.4f", "mag", 1,
- &prefs.magerr_apersize},
-
- {"FLUX_AUTO", "Flux within a Kron-like elliptical aperture",
- &outobj2.flux_auto, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUXERR_AUTO", "RMS error for AUTO flux",
- &outobj2.fluxerr_auto, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"MAG_AUTO", "Kron-like elliptical aperture magnitude",
- &outobj2.mag_auto, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"MAGERR_AUTO", "RMS error for AUTO magnitude",
- &outobj2.magerr_auto, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
-
- {"FLUX_BEST", "Best of FLUX_AUTO and FLUX_ISOCOR",
- &outobj2.flux_best, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUXERR_BEST", "RMS error for BEST flux",
- &outobj2.fluxerr_best, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"MAG_BEST", "Best of MAG_AUTO and MAG_ISOCOR",
- &outobj2.mag_best, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"MAGERR_BEST", "RMS error for MAG_BEST",
- &outobj2.magerr_best, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
-
- {"FLUX_PROFILE", "Flux weighted by the FILTERed profile",
- &outobj2.flux_prof, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUXERR_PROFILE", "RMS error for PROFILE flux",
- &outobj2.fluxerr_prof, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"MAG_PROFILE", "Magnitude weighted by the FILTERed profile",
- &outobj2.mag_prof, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"MAGERR_PROFILE", "RMS error for MAG_PROFILE",
- &outobj2.magerr_prof, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
-
- {"FLUX_SOMFIT", "Flux derived from SOM fit",
- &outobj2.flux_somfit, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUXERR_SOMFIT", "RMS error for SOMFIT flux",
- &outobj2.fluxerr_somfit, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"MAG_SOMFIT", "Magnitude derived from SOM fit",
- &outobj2.mag_somfit, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"MAGERR_SOMFIT", "Magnitude error derived from SOM fit",
- &outobj2.magerr_somfit, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"ERROR_SOMFIT", "Reduced Chi-square error of the SOM fit",
- &outobj2.stderr_somfit, H_FLOAT, T_FLOAT, "%10g", ""},
- {"VECTOR_SOMFIT", "Position vector of the winning SOM node",
- &outobj2.vector_somfit, H_FLOAT, T_FLOAT, "%5.2f", "", 1,
- &prefs.somfit_vectorsize},
-
- {"FLUX_GALFIT", "Flux derived from the galaxy fit",
- &outobj2.flux_galfit, H_FLOAT, T_FLOAT, "%12g", "count"},
-/*
- {"FLUXERR_GALFIT", "RMS error for GALFIT flux",
- &outobj2.fluxerr_galfit, H_FLOAT, T_FLOAT, "%12g", "count"},
-*/
- {"MAG_GALFIT", "Magnitude derived from galaxy fit",
- &outobj2.mag_galfit, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
-
-/*
- {"MAGERR_GALFIT", "Magnitude error derived from galaxy fit",
- &outobj2.magerr_galfit, H_FLOAT, T_FLOAT, "%8.4f", "mag"},
- {"ERROR_GALFIT", "Reduced Chi-square error of the galaxy fit",
- &outobj2.stderr_galfit, H_FLOAT, T_FLOAT, "%10g", ""},
-*/
- {"GALDANG_IMAGE", "Galaxy disk position angle from the galaxy fit",
- &outobj2.gdposang, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"GALDSCALE_IMAGE", "Galaxy disk-scale from the galaxy fit",
- &outobj2.gdscale, H_FLOAT, T_FLOAT, "%9.3f", "pixel"},
- {"GALDASPEC_IMAGE", "Galaxy disk aspect ratio from the galaxy fit",
- &outobj2.gdaspect, H_FLOAT, T_FLOAT, "%5.3f", ""},
- {"GALDE1_IMAGE", "Galaxy disk ellipticity #1 from the galaxy fit",
- &outobj2.gde1, H_FLOAT, T_FLOAT, "%6.4f", ""},
- {"GALDE2_IMAGE", "Galaxy disk ellipticity #2 from the galaxy fit",
- &outobj2.gde2, H_FLOAT, T_FLOAT, "%6.4f", ""},
- {"GALBRATIO_IMAGE", "Galaxy bulge ratio from the galaxy fit",
- &outobj2.gbratio, H_FLOAT, T_FLOAT, "%5.3f", ""},
- {"GALBANG_IMAGE", "Galaxy bulge position angle from the galaxy fit",
- &outobj2.gbposang, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"GALBSCALE_IMAGE", "Galaxy bulge-scale from the galaxy fit",
- &outobj2.gbscale, H_FLOAT, T_FLOAT, "%9.3f", "pixel"},
- {"GALBASPEC_IMAGE", "Galaxy bulge aspect ratio from the galaxy fit",
- &outobj2.gbaspect, H_FLOAT, T_FLOAT, "%5.3f", ""},
-
- {"KRON_RADIUS", "Kron apertures in units of A or B",
- &outobj2.kronfactor, H_FLOAT, T_FLOAT, "%5.2f", ""},
- {"BACKGROUND", "Background at centroid position",
- &outobj.bkg, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"THRESHOLD", "Detection threshold above background",
- &outobj.dthresh, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"FLUX_MAX", "Peak flux above background",
- &outobj.peak, H_FLOAT, T_FLOAT, "%12g", "count"},
- {"ISOAREA_IMAGE", "Isophotal area above Analysis threshold",
- &outobj.npix, H_INT, T_LONG, "%9d", "pixel**2"},
- {"ISOAREAF_IMAGE", "Isophotal area (filtered) above Detection threshold",
- &outobj.fdnpix, H_INT, T_LONG, "%9d", "pixel**2"},
-
- {"XMIN_IMAGE", "Minimum x-coordinate among detected pixels",
- &outobj.xmin, H_INT, T_LONG, "%10d", "pixel"},
- {"YMIN_IMAGE", "Minimum y-coordinate among detected pixels",
- &outobj.ymin, H_INT, T_LONG, "%10d", "pixel"},
- {"XMAX_IMAGE", "Maximum x-coordinate among detected pixels",
- &outobj.xmax, H_INT, T_LONG, "%10d", "pixel"},
- {"YMAX_IMAGE", "Maximum y-coordinate among detected pixels",
- &outobj.ymax, H_INT, T_LONG, "%10d", "pixel"},
-
- {"XPEAK_IMAGE", "x-coordinate of the brightest pixel",
- &outobj.peakx, H_INT, T_LONG, "%10d", "pixel"},
- {"YPEAK_IMAGE", "y-coordinate of the brightest pixel",
- &outobj.peaky, H_INT, T_LONG, "%10d", "pixel"},
- {"XPEAK_WORLD", "World-x coordinate of the brightest pixel",
- &outobj2.peakxw, H_FLOAT, T_DOUBLE, "%15e", "deg"},
- {"YPEAK_WORLD", "World-y coordinate of the brightest pixel",
- &outobj2.peakyw, H_FLOAT, T_DOUBLE, "%15e", "deg"},
-
- {"ALPHAPEAK_SKY", "Right ascension of brightest pix (native)",
- &outobj2.peakalphas, H_FLOAT, T_DOUBLE, "%11.7f", "deg"},
- {"DELTAPEAK_SKY", "Declination of brightest pix (native)",
- &outobj2.peakdeltas, H_FLOAT, T_DOUBLE, "%+11.7f", "deg"},
-
- {"ALPHAPEAK_J2000", "Right ascension of brightest pix (J2000)",
- &outobj2.peakalpha2000, H_FLOAT, T_DOUBLE, "%11.7f", "deg"},
- {"DELTAPEAK_J2000", "Declination of brightest pix (J2000)",
- &outobj2.peakdelta2000, H_FLOAT, T_DOUBLE, "%+11.7f", "deg"},
-
- {"ALPHAPEAK_B1950", "Right ascension of brightest pix (B1950)",
- &outobj2.peakalpha1950, H_FLOAT, T_DOUBLE, "%11.7f", "deg"},
- {"DELTAPEAK_B1950", "Declination of brightest pix (B1950)",
- &outobj2.peakdelta1950, H_FLOAT, T_DOUBLE, "%+11.7f", "deg"},
-
- {"X_IMAGE", "Object position along x",
- &outobj2.sposx, H_FLOAT, T_FLOAT, "%10.3f", "pixel"},
- {"Y_IMAGE", "Object position along y",
- &outobj2.sposy, H_FLOAT, T_FLOAT, "%10.3f", "pixel"},
- {"X_IMAGE_DBL", "Object position along x (double precision)",
- &outobj2.posx, H_FLOAT, T_DOUBLE, "%10.3f", "pixel"},
- {"Y_IMAGE_DBL", "Object position along y (double precision)",
- &outobj2.posy, H_FLOAT, T_DOUBLE, "%10.3f", "pixel"},
- {"X_WORLD", "Barycenter position along world x axis",
- &outobj2.mxw, H_FLOAT, T_DOUBLE, "%15e", "deg"},
- {"Y_WORLD", "Barycenter position along world y axis",
- &outobj2.myw, H_FLOAT, T_DOUBLE, "%15e", "deg"},
- {"X_MAMA", "Barycenter position along MAMA x axis",
- &outobj2.mamaposx, H_FLOAT, T_DOUBLE, "%8.1f", "m**(-6)"},
- {"Y_MAMA", "Barycenter position along MAMA y axis",
- &outobj2.mamaposy, H_FLOAT, T_DOUBLE, "%8.1f", "m**(-6)"},
-
- {"ALPHA_SKY", "Right ascension of barycenter (native)",
- &outobj2.alphas, H_FLOAT, T_DOUBLE, "%11.7f", "deg"},
- {"DELTA_SKY", "Declination of barycenter (native)",
- &outobj2.deltas, H_FLOAT, T_DOUBLE, "%+11.7f", "deg"},
-
- {"ALPHA_J2000", "Right ascension of barycenter (J2000)",
- &outobj2.alpha2000, H_FLOAT, T_DOUBLE, "%11.7f", "deg"},
- {"DELTA_J2000", "Declination of barycenter (J2000)",
- &outobj2.delta2000, H_FLOAT, T_DOUBLE, "%+11.7f", "deg"},
-
- {"ALPHA_B1950", "Right ascension of barycenter (B1950)",
- &outobj2.alpha1950, H_FLOAT, T_DOUBLE, "%11.7f", "deg"},
- {"DELTA_B1950", "Declination of barycenter (B1950)",
- &outobj2.delta1950, H_FLOAT, T_DOUBLE, "%+11.7f", "deg"},
-
- {"X2_IMAGE", "Variance along x",
- &outobj.mx2, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"Y2_IMAGE", "Variance along y",
- &outobj.my2, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"XY_IMAGE", "Covariance between x and y",
- &outobj.mxy, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"X2_WORLD", "Variance along X-WORLD (alpha)",
- &outobj2.mx2w, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
- {"Y2_WORLD", "Variance along Y-WORLD (delta)",
- &outobj2.my2w, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
- {"XY_WORLD", "Covariance between X-WORLD and Y-WORLD",
- &outobj2.mxyw, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
-
- {"CXX_IMAGE", "Cxx object ellipse parameter",
- &outobj.cxx, H_EXPO, T_FLOAT, "%12e", "pixel**(-2)"},
- {"CYY_IMAGE", "Cyy object ellipse parameter",
- &outobj.cyy, H_EXPO, T_FLOAT, "%12e", "pixel**(-2)"},
- {"CXY_IMAGE", "Cxy object ellipse parameter",
- &outobj.cxy, H_EXPO, T_FLOAT, "%12e", "pixel**(-2)"},
- {"CXX_WORLD", "Cxx object ellipse parameter (WORLD units)",
- &outobj2.cxxw, H_EXPO, T_FLOAT, "%12e", "deg**(-2)"},
- {"CYY_WORLD", "Cyy object ellipse parameter (WORLD units)",
- &outobj2.cyyw, H_EXPO, T_FLOAT, "%12e", "deg**(-2)"},
- {"CXY_WORLD", "Cxy object ellipse parameter (WORLD units)",
- &outobj2.cxyw, H_EXPO, T_FLOAT, "%12e", "deg**(-2)"},
-
- {"A_IMAGE", "Profile RMS along major axis",
- &outobj.a, H_FLOAT, T_FLOAT, "%9.3f", "pixel"},
- {"B_IMAGE", "Profile RMS along minor axis",
- &outobj.b, H_FLOAT, T_FLOAT, "%9.3f", "pixel"},
- {"THETA_IMAGE", "Position angle (CCW/x)",
- &outobj.theta, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"A_WORLD", "Profile RMS along major axis (world units)",
- &outobj2.aw, H_FLOAT, T_FLOAT, "%12g", "deg"},
- {"B_WORLD", "Profile RMS along minor axis (world units)",
- &outobj2.bw, H_FLOAT, T_FLOAT, "%12g", "deg"},
- {"THETA_WORLD", "Position angle (CCW/world-x)",
- &outobj2.thetaw, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"THETA_SKY", "Position angle (east of north) (native)",
- &outobj2.thetas, H_FLOAT, T_FLOAT, "%+6.2f", "deg"},
- {"THETA_J2000", "Position angle (east of north) (J2000)",
- &outobj2.theta2000, H_FLOAT, T_FLOAT, "%+6.2f", "deg"},
- {"THETA_B1950", "Position angle (east of north) (B1950)",
- &outobj2.theta1950, H_FLOAT, T_FLOAT, "%+6.2f", "deg"},
-
- {"ERRX2_IMAGE", "Variance of position along x",
- &outobj.poserr_mx2, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"ERRY2_IMAGE", "Variance of position along y",
- &outobj.poserr_my2, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"ERRXY_IMAGE", "Covariance of position between x and y",
- &outobj.poserr_mxy, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"ERRX2_WORLD", "Variance of position along X-WORLD (alpha)",
- &outobj2.poserr_mx2w, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
- {"ERRY2_WORLD", "Variance of position along Y-WORLD (delta)",
- &outobj2.poserr_my2w, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
- {"ERRXY_WORLD", "Covariance of position X-WORLD/Y-WORLD",
- &outobj2.poserr_mxyw, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
-
- {"ERRCXX_IMAGE", "Cxx error ellipse parameter",
- &outobj2.poserr_cxx, H_EXPO, T_FLOAT, "%12g", "pixel**(-2)"},
- {"ERRCYY_IMAGE", "Cyy error ellipse parameter",
- &outobj2.poserr_cyy, H_EXPO, T_FLOAT, "%12g", "pixel**(-2)"},
- {"ERRCXY_IMAGE", "Cxy error ellipse parameter",
- &outobj2.poserr_cxy, H_EXPO, T_FLOAT, "%12g", "pixel**(-2)"},
- {"ERRCXX_WORLD", "Cxx error ellipse parameter (WORLD units)",
- &outobj2.poserr_cxxw, H_EXPO, T_FLOAT, "%12g", "deg**(-2)"},
- {"ERRCYY_WORLD", "Cyy error ellipse parameter (WORLD units)",
- &outobj2.poserr_cyyw, H_EXPO, T_FLOAT, "%12g", "deg**(-2)"},
- {"ERRCXY_WORLD", "Cxy error ellipse parameter (WORLD units)",
- &outobj2.poserr_cxyw, H_EXPO, T_FLOAT, "%12g", "deg**(-2)"},
-
- {"ERRA_IMAGE", "RMS position error along major axis",
- &outobj2.poserr_a, H_FLOAT, T_FLOAT, "%8.4f", "pixel"},
- {"ERRB_IMAGE", "RMS position error along minor axis",
- &outobj2.poserr_b, H_FLOAT, T_FLOAT, "%8.4f", "pixel"},
- {"ERRTHETA_IMAGE", "Error ellipse position angle (CCW/x)",
- &outobj2.poserr_theta, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRA_WORLD", "World RMS position error along major axis",
- &outobj2.poserr_aw, H_FLOAT, T_FLOAT, "%12g", "pixel"},
- {"ERRB_WORLD", "World RMS position error along minor axis",
- &outobj2.poserr_bw, H_FLOAT, T_FLOAT, "%12g", "pixel"},
- {"ERRTHETA_WORLD", "Error ellipse pos. angle (CCW/world-x)",
- &outobj2.poserr_thetaw, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRTHETA_SKY", "Native error ellipse pos. angle (east of north)",
- &outobj2.poserr_thetas, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRTHETA_J2000", "J2000 error ellipse pos. angle (east of north)",
- &outobj2.poserr_theta2000, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRTHETA_B1950", "B1950 error ellipse pos. angle (east of north)",
- &outobj2.poserr_theta1950, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
-
- {"MU_THRESHOLD", "Detection threshold above background",
- &outobj2.threshmu, H_FLOAT, T_FLOAT, "%8.4f", "mag * arcsec**(-2)"},
- {"MU_MAX", "Peak surface brightness above background",
- &outobj2.maxmu, H_FLOAT, T_FLOAT, "%8.4f", "mag * arcsec**(-2)"},
- {"ISOAREA_WORLD", "Isophotal area above Analysis threshold",
- &outobj2.npixw, H_FLOAT, T_FLOAT, "%12g", "deg**2"},
- {"ISOAREAF_WORLD", "Isophotal area (filtered) above Detection threshold",
- &outobj2.fdnpixw, H_FLOAT, T_FLOAT, "%12g", "deg**2"},
- {"ISO0", "Isophotal area at level 0",
- &outobj.iso[0], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO1", "Isophotal area at level 1",
- &outobj.iso[1], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO2", "Isophotal area at level 2",
- &outobj.iso[2], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO3", "Isophotal area at level 3",
- &outobj.iso[3], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO4", "Isophotal area at level 4",
- &outobj.iso[4], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO5", "Isophotal area at level 5",
- &outobj.iso[5], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO6", "Isophotal area at level 6",
- &outobj.iso[6], H_INT, T_LONG, "%8d", "pixel**2"},
- {"ISO7", "Isophotal area at level 7",
- &outobj.iso[7], H_INT, T_LONG, "%8d", "pixel**2"},
-
- {"FLAGS", "Extraction flags",
- &outobj.flag, H_INT, T_SHORT, "%3d", ""},
- {"IMAFLAGS_ISO", "FLAG-image flags OR'ed over the iso. profile",
- outobj.imaflag, H_INT, T_LONG, "%9u", "",
- 1, &prefs.imaflag_size},
- {"NIMAFLAGS_ISO", "Number of flagged pixels entering IMAFLAGS_ISO",
- outobj.imanflag, H_INT, T_LONG, "%9d", "",
- 1, &prefs.imanflag_size},
-
- {"FWHM_IMAGE", "FWHM assuming a gaussian core",
- &outobj.fwhm, H_FLOAT, T_FLOAT, "%8.2f", "pixel"},
- {"FWHM_WORLD", "FWHM assuming a gaussian core",
- &outobj2.fwhmw, H_FLOAT, T_FLOAT, "%12g", "deg"},
- {"ELONGATION", "A_IMAGE/B_IMAGE",
- &outobj2.elong, H_FLOAT, T_FLOAT, "%8.3f", ""},
- {"ELLIPTICITY", "1 - B_IMAGE/A_IMAGE",
- &outobj2.ellip, H_FLOAT, T_FLOAT, "%8.3f", ""},
- {"CLASS_STAR", "S/G classifier output",
- &outobj2.sprob, H_FLOAT, T_FLOAT, "%5.2f", ""},
- {"VIGNET", "Pixel data around detection",
- &outobj2.vignet, H_FLOAT, T_FLOAT, "%12g", "count", 2,
- prefs.vignetsize},
- {"VIGNET_SHIFT", "Pixel data around detection, corrected for shift",
- &outobj2.vigshift, H_FLOAT, T_FLOAT, "%12g", "count", 2,
- prefs.vigshiftsize},
- {"VECTOR_ASSOC", "ASSOCiated parameter vector",
- &outobj2.assoc, H_FLOAT, T_FLOAT, "%12g", "", 1,
- &prefs.assoc_size},
- {"NUMBER_ASSOC", "Number of ASSOCiated IDs",
- &outobj2.assoc_number, H_INT, T_LONG, "%10d", ""},
-
- {"THRESHOLDMAX", "Maximum threshold possible for detection",
- &outobj.dthresh, H_FLOAT, T_FLOAT, "%12g", "count"},
-
- {"FLUX_GROWTH", "Cumulated growth-curve",
- &outobj2.flux_growth, H_FLOAT, T_FLOAT, "%12g", "count", 1,
- &prefs.flux_growthsize},
- {"FLUX_GROWTHSTEP", "Step for growth-curves",
- &outobj2.flux_growthstep, H_FLOAT, T_FLOAT, "%10.3f", "pixel"},
- {"MAG_GROWTH", "Cumulated magnitude growth-curve",
- &outobj2.mag_growth, H_FLOAT, T_FLOAT, "%8.4f", "mag",
- 1, &prefs.mag_growthsize},
- {"MAG_GROWTHSTEP", "Step for growth-curves",
- &outobj2.mag_growthstep, H_FLOAT, T_FLOAT, "%10.3f", "pixel"},
- {"FLUX_RADIUS", "Fraction-of-light radii",
- &outobj2.flux_radius, H_FLOAT, T_FLOAT, "%10.3f", "pixel",
- 1, &prefs.flux_radiussize},
-
- {"XPSF_IMAGE", "X coordinate from PSF-fitting",
- &outobj2.x_psf, H_FLOAT, T_FLOAT, "%10.3f", "pixel",
- 1, &prefs.psf_xsize},
- {"YPSF_IMAGE", "Y coordinate from PSF-fitting",
- &outobj2.y_psf, H_FLOAT, T_FLOAT, "%10.3f", "pixel",
- 1, &prefs.psf_ysize},
- {"XPSF_WORLD", "PSF position along world x axis",
- &outobj2.xw_psf, H_FLOAT, T_DOUBLE, "%15e", "deg",
- 1, &prefs.psf_xwsize},
- {"YPSF_WORLD", "PSF position along world y axis",
- &outobj2.yw_psf, H_FLOAT, T_DOUBLE, "%15e", "deg",
- 1, &prefs.psf_ywsize},
-
- {"ALPHAPSF_SKY", "Right ascension of the fitted PSF (native)",
- &outobj2.alphas_psf, H_FLOAT, T_DOUBLE, "%11.7f", "deg",
- 1, &prefs.psf_alphassize},
- {"DELTAPSF_SKY", "Declination of the fitted PSF (native)",
- &outobj2.deltas_psf, H_FLOAT, T_DOUBLE, "%+11.7f", "deg",
- 1, &prefs.psf_deltassize},
-
- {"ALPHAPSF_J2000", "Right ascension of the fitted PSF (J2000)",
- &outobj2.alpha2000_psf, H_FLOAT, T_DOUBLE, "%11.7f", "deg",
- 1, &prefs.psf_alpha2000size},
- {"DELTAPSF_J2000", "Declination of the fitted PSF (J2000)",
- &outobj2.delta2000_psf, H_FLOAT, T_DOUBLE, "%+11.7f", "deg",
- 1, &prefs.psf_delta2000size},
-
- {"ALPHAPSF_B1950", "Right ascension of the fitted PSF (B1950)",
- &outobj2.alpha1950_psf, H_FLOAT, T_DOUBLE, "%11.7f", "deg",
- 1, &prefs.psf_alpha1950size},
- {"DELTAPSF_B1950", "Declination of the fitted PSF (B1950)",
- &outobj2.delta1950_psf, H_FLOAT, T_DOUBLE, "%+11.7f", "deg",
- 1, &prefs.psf_delta1950size},
-
- {"FLUX_PSF", "Flux from PSF-fitting",
- &outobj2.flux_psf, H_FLOAT, T_FLOAT, "%12g", "count",
- 1, &prefs.psf_fluxsize},
- {"FLUXERR_PSF", "RMS flux error for PSF-fitting",
- &outobj2.fluxerr_psf, H_FLOAT, T_FLOAT, "%12g", "count",
- 1, &prefs.psf_fluxerrsize},
- {"MAG_PSF", "Magnitude from PSF-fitting",
- &outobj2.mag_psf, H_FLOAT, T_FLOAT, "%8.4f", "mag",
- 1, &prefs.psf_magsize},
- {"MAGERR_PSF", "RMS magnitude error from PSF-fitting",
- &outobj2.magerr_psf, H_FLOAT, T_FLOAT, "%8.4f", "mag",
- 1, &prefs.psf_magsize},
-
- {"NITER_PSF", "Number of iterations for PSF-fitting",
- &outobj2.niter_psf, H_INT, T_SHORT, "%3d", ""},
- {"CHI2_PSF", "Reduced chi2 from PSF-fitting",
- &outobj2.chi2_psf, H_FLOAT, T_FLOAT, "%9g", ""},
-
- {"ERRX2PSF_IMAGE", "Variance of PSF position along x",
- &outobj2.poserrmx2_psf, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"ERRY2PSF_IMAGE", "Variance of PSF position along y",
- &outobj2.poserrmy2_psf, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"ERRXYPSF_IMAGE", "Covariance of PSF position between x and y",
- &outobj2.poserrmxy_psf, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"ERRX2PSF_WORLD", "Variance of PSF position along X-WORLD (alpha)",
- &outobj2.poserrmx2w_psf, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
- {"ERRY2PSF_WORLD", "Variance of PSF position along Y-WORLD (delta)",
- &outobj2.poserrmy2w_psf, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
- {"ERRXYPSF_WORLD", "Covariance of PSF position X-WORLD/Y-WORLD",
- &outobj2.poserrmxyw_psf, H_EXPO, T_DOUBLE, "%15e", "deg**2"},
-
- {"ERRCXXPSF_IMAGE", "Cxx PSF error ellipse parameter",
- &outobj2.poserrcxx_psf, H_EXPO, T_FLOAT, "%12g", "pixel**(-2)"},
- {"ERRCYYPSF_IMAGE", "Cyy PSF error ellipse parameter",
- &outobj2.poserrcyy_psf, H_EXPO, T_FLOAT, "%12g", "pixel**(-2)"},
- {"ERRCXYPSF_IMAGE", "Cxy PSF error ellipse parameter",
- &outobj2.poserrcxy_psf, H_EXPO, T_FLOAT, "%12g", "pixel**(-2)"},
- {"ERRCXXPSF_WORLD", "Cxx PSF error ellipse parameter (WORLD units)",
- &outobj2.poserrcxxw_psf, H_EXPO, T_FLOAT, "%12g", "deg**(-2)"},
- {"ERRCYYPSF_WORLD", "Cyy PSF error ellipse parameter (WORLD units)",
- &outobj2.poserrcyyw_psf, H_EXPO, T_FLOAT, "%12g", "deg**(-2)"},
- {"ERRCXYPSF_WORLD", "Cxy PSF error ellipse parameter (WORLD units)",
- &outobj2.poserrcxyw_psf, H_EXPO, T_FLOAT, "%12g", "deg**(-2)"},
-
- {"ERRAPSF_IMAGE", "PSF RMS position error along major axis",
- &outobj2.poserra_psf, H_FLOAT, T_FLOAT, "%8.4f", "pixel"},
- {"ERRBPSF_IMAGE", "PSF RMS position error along minor axis",
- &outobj2.poserrb_psf, H_FLOAT, T_FLOAT, "%8.4f", "pixel"},
- {"ERRTHTPSF_IMAGE", "PSF error ellipse position angle (CCW/x)",
- &outobj2.poserrtheta_psf, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRAPSF_WORLD", "World PSF RMS position error along major axis",
- &outobj2.poserraw_psf, H_FLOAT, T_FLOAT, "%12g", "pixel"},
- {"ERRBPSF_WORLD", "World PSF RMS position error along minor axis",
- &outobj2.poserrbw_psf, H_FLOAT, T_FLOAT, "%12g", "pixel"},
- {"ERRTHTPSF_WORLD", "PSF error ellipse pos. angle (CCW/world-x)",
- &outobj2.poserrthetaw_psf, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRTHTPSF_SKY", "Native PSF error ellipse pos. angle (east of north)",
- &outobj2.poserrthetas_psf, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRTHTPSF_J2000", "J2000 PSF error ellipse pos. angle (east of north)",
- &outobj2.poserrtheta2000_psf, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"ERRTHTPSF_B1950", "B1950 PSF error ellipse pos. angle (east of north)",
- &outobj2.poserrtheta1950_psf, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
-
- {"X2PC_IMAGE", "PC variance along x",
- &outobj2.mx2_pc, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"Y2PC_IMAGE", "PC variance along y",
- &outobj2.my2_pc, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
- {"XYPC_IMAGE", "PC covariance between x and y",
- &outobj2.mxy_pc, H_EXPO, T_DOUBLE, "%15e", "pixel**2"},
-
- {"APC_IMAGE", "PC profile RMS along major axis",
- &outobj2.a_pc, H_FLOAT, T_FLOAT, "%8.2f", "pixel"},
- {"BPC_IMAGE", "PC profile RMS along minor axis",
- &outobj2.b_pc, H_FLOAT, T_FLOAT, "%8.2f", "pixel"},
- {"THETAPC_IMAGE", "PC position angle (CCW/x)",
- &outobj2.theta_pc, H_FLOAT, T_FLOAT, "%5.1f", "deg"},
- {"PC", "Principal components",
- &outobj2.vector_pc, H_FLOAT, T_FLOAT, "%15e", "",
- 1, &prefs.pc_vectorsize},
-/*
- {"RETINOUT", T_FLOAT, &outobj.retinout, "%13g "},
-*/
- {""}
- };
-
diff --git a/external/sextractor/source/pc.c b/external/sextractor/source/pc.c
deleted file mode 100644
index 0ad9f56..0000000
--- a/external/sextractor/source/pc.c
+++ /dev/null
@@ -1,470 +0,0 @@
- /*
- pc.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Stuff related to Principal Component Analysis (PCA).
-*
-* Last modify: 06/09/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "check.h"
-#include "image.h"
-#include "poly.h"
-#include "psf.h"
-
-/****** pc_end ***************************************************************
-PROTO void pc_end(pcstruct *pc)
-PURPOSE Free a PC structure and everything it contains.
-INPUT pcstruct pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 15/07/99
- ***/
-void pc_end(pcstruct *pc)
- {
- int i;
-
- free(pc->maskcomp);
- free(pc->omaskcomp);
- free(pc->omasksize);
- free(pc->maskcurr);
- free(pc->masksize);
- free(pc->mx2);
- free(pc->my2);
- free(pc->mxy);
- free(pc->flux);
- free(pc->bt);
- if (pc->code)
- {
- free(pc->code->pc);
- for (i=0; i<pc->code->nparam;i++)
- free(pc->code->param[i]);
- free(pc->code->param);
- free(pc->code);
- }
- free(pc);
-
- return;
- }
-
-
-/********************************** pc_load **********************************/
-/*
-Load the PC data from a FITS file.
-*/
-pcstruct *pc_load(catstruct *cat)
- {
- pcstruct *pc;
- tabstruct *tab;
- keystruct *key;
- codestruct *code;
- char *head, str[80], *ci, *filename;
- int i, ncode,nparam;
-
- if (!(tab = name_to_tab(cat, "PC_DATA", 0)))
- return NULL;
-
- filename = cat->filename;
-
-/* OK, we now allocate memory for the PC structure itself */
- QCALLOC(pc, pcstruct, 1);
-
-/* Store a short copy of the PC filename */
- if (ci=strrchr(filename, '/'))
- strcpy(pc->name, ci+1);
- else
- strcpy(pc->name, filename);
-
-/* Load important scalars (which are stored as FITS keywords) */
- head = tab->headbuf;
-
-/* Dimensionality of the PC mask */
- if (fitsread(head, "PCNAXIS", &pc->maskdim, H_INT, T_LONG) != RETURN_OK)
- return NULL;
- if (pc->maskdim<2 || pc->maskdim>4)
- error(EXIT_FAILURE, "*Error*: wrong dimensionality for the PC "
- "mask in ", filename);
- QMALLOC(pc->masksize, int, pc->maskdim);
- for (i=0; i<pc->maskdim; i++)
- pc->masksize[i] = 1;
- pc->masknpix = 1;
- for (i=0; i<pc->maskdim; i++)
- {
- sprintf(str, "PCAXIS%1d ", i+1);
- if (fitsread(head, str, &pc->masksize[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
- pc->masknpix *= pc->masksize[i];
- }
-
- pc->npc = pc->masksize[pc->maskdim-1];
-
- ncode = 0;
- fitsread(head, "NCODE", &ncode, H_INT, T_LONG);
- fitsread(head, "NCODEPAR", &nparam, H_INT, T_LONG);
-
-/* Load the PC mask data */
- key = read_key(tab, "PC_CONVMASK");
- pc->maskcomp = key->ptr;
-
- key = read_key(tab, "PC_MASK");
- pc->omaskcomp = key->ptr;
- pc->omaskdim = key->naxis;
- pc->omasknpix = 1;
- QMALLOC(pc->omasksize, int, pc->omaskdim);
- for (i=0; i<pc->omaskdim; i++)
- pc->omasknpix *= (pc->omasksize[i] = key->naxisn[i]);
-
- key = read_key(tab, "PC_MX2");
- pc->mx2 = key->ptr;
-
- key = read_key(tab, "PC_MY2");
- pc->my2 = key->ptr;
-
- key = read_key(tab, "PC_MXY");
- pc->mxy = key->ptr;
-
- key = read_key(tab, "PC_FLUX");
- pc->flux = key->ptr;
-
- key = read_key(tab, "PC_BRATIO");
- pc->bt = key->ptr;
-
- if (ncode)
- {
- QMALLOC(pc->code, codestruct, 1);
- code = pc->code;
- QMALLOC(code->param, float *, nparam);
- QMALLOC(code->parammod, int, nparam);
- code->ncode = ncode;
- code->nparam = nparam;
- key = read_key(tab, "CODE_PC");
- code->pc = (float *)key->ptr;
- for (i=0; i<nparam; i++)
- {
- sprintf(str, "CODE_P%d", i+1);
- key = read_key(tab, str);
- code->param[i] = (float *)key->ptr;
- sprintf(str, "CODE_M%d", i+1);
- fitsread(head, str, &code->parammod[i], H_INT, T_LONG);
- }
- }
-
- QMALLOC(pc->maskcurr, double, pc->masksize[0]*pc->masksize[1]*pc->npc);
-
-/* But don't touch my arrays!! */
- blank_keys(tab);
-
- return pc;
-
-headerror:
- error(EXIT_FAILURE, "*Error*: Incorrect or obsolete PC data in ", filename);
- }
-
-
-/********************************** pc_fit **********************************/
-/*
-Fit the PC data to the current data.
-*/
-void pc_fit(psfstruct *psf, double *data, double *weight,
- int width, int height,int ix, int iy,
- double dx, double dy, int npc, float backrms)
- {
- pcstruct *pc;
- checkstruct *check;
- codestruct *code;
- double *basis,*basis0, *cpix,*cpix0, *pcshift,*wpcshift,
- *spix,*wspix, *w, *sumopc,*sumopct, *sumwspix, *checkbuf,
- *sol,*solt, *cxm2,*cym2,*cxym,*cflux, *datat,
- *mx2t, *my2t, *mxyt,
- val,val2, xm2,ym2,xym,flux, temp,temp2, theta, pmx2,pmy2,
- wnorm, ellip, norm, snorm;
- float **param, *ppix, *ospix, *cpc,*cpc2, *fparam,
- pixstep, fval, fvalmax, fscale, dparam;
- int *parammod,
- i,c,n,p, npix,npix2,nopix, ncoeff, nparam, nmax,nmax2, ncode;
-
- pc = psf->pc;
-/* Build the "local PCs", using the basis func. coeffs computed in psf_fit() */
- if (npc > pc->npc)
- npc = pc->npc;
- npix = pc->masksize[0]*pc->masksize[1];
- npix2 = width*height;
- ncoeff = psf->poly->ncoeff;
- pixstep = 1.0/psf->pixstep;
- dx *= pixstep;
- dy *= pixstep;
-
- memset(pc->maskcurr, 0, npix*npc*sizeof(double));
- basis0 = psf->poly->basis;
- cpix0 = pc->maskcurr;
- ppix = pc->maskcomp;
-
-/* Sum each (PSF-dependent) component */
- for (c=npc; c--; cpix0 += npix)
- {
- basis = basis0;
- for (n = ncoeff; n--;)
- {
- cpix = cpix0;
- val = *(basis++);
- for (p=npix; p--;)
- *(cpix++) += val*(double)*(ppix++);
- }
- }
-
-/* Allocate memory for temporary buffers */
- QMALLOC(pcshift, double, npix2*npc);
- QMALLOC(wpcshift, double, npix2*npc);
- QMALLOC(sol, double, npc);
-
-/* Now shift and scale to the right position, and weight the PCs */
- cpix = pc->maskcurr;
- spix = pcshift;
- wspix = wpcshift;
- for (c=npc; c--; cpix += npix)
- {
- vignet_resample(cpix, pc->masksize[0], pc->masksize[1],
- spix, width, height, -dx, -dy, pixstep);
- w = weight;
- for (p=npix2; p--;)
- *(wspix++) = *(spix++)**(w++);
- }
-
-/* Compute the weight normalization */
- wnorm = 0.0;
- w = weight;
- for (p=npix2; p--;)
- {
- val = *(w++);
- wnorm += val*val;
- }
-
-/* Scalar product of data and (approximately orthogonal) basis functions */
- wspix = wpcshift;
- solt = sol;
- snorm = 0.0;
- for (c=npc; c--;)
- {
- datat = data;
- val = 0.0;
- for (p=npix2; p--;)
- val += *(datat++)**(wspix++);
- val2 = *(solt++) = val*npix2/wnorm;
- snorm += val2*val2;
- }
-
-
-/* Normalize solution vector */
- snorm = sqrt(snorm);
- solt = sol;
- for (c=npc; c--;)
- *(solt++) /= snorm;
-
- if (code = pc->code)
- {
- ncode = code->ncode;
-/*-- Codebook search */
- cpc = code->pc;
- fvalmax = -BIG;
- nmax = 0;
- for (n=ncode; n--;)
- {
- fval = 0.0;
- solt = sol;
- for (p=npc; p--;)
- fval += *(solt++)**(cpc++);
- if (fval>fvalmax)
- {
- fvalmax = fval;
- nmax = n;
- }
- }
- nmax = ncode - 1 - nmax;
-
-/*-- Interpolation */
- param = code->param;
- parammod = code->parammod;
- nparam = code->nparam;
- QMALLOC(fparam, float, nparam);
- for (p=0; p<nparam; p++)
- {
- dparam = 0.0;
- if (parammod[p])
- {
- val2 = 0.0;
- if ((nmax2 = nmax+parammod[p]) < ncode)
- {
- cpc = code->pc+npc*nmax;
- cpc2 = code->pc+npc*nmax2;
- solt = sol;
- norm = 0.0;
- for (c=npc; c--;)
- {
- val = *(cpc2++)-*cpc;
- val2 += val*(*(solt++) - *(cpc++));
- norm += val*val;
- }
- if (norm>0.0)
- dparam = val2/norm*(param[p][nmax2]-param[p][nmax]);
- else
- val2 = 0.0;
- }
-/*------ If dot product negative of something went wrong, try other side */
- if (val2<=0.0 && (nmax2 = nmax-parammod[p]) >= 0)
- {
- cpc = code->pc+npc*nmax;
- cpc2 = code->pc+npc*nmax2;
- solt = sol;
- norm = val2 = 0.0;
- for (c=npc; c--;)
- {
- val = *(cpc2++)-*cpc;
- val2 += val*(*(solt++) - *(cpc++));
- norm += val*val;
- }
- if (norm>0.0)
- dparam = val2/norm*(param[p][nmax2]-param[p][nmax]);
- }
- fparam[p] = param[p][nmax] + dparam;
- }
- }
-
- solt = sol;
- cpc = code->pc+npc*nmax;
- fscale = fvalmax*code->param[0][nmax]*snorm;
- for (p=npc; p--;)
- *(solt++) = fscale**(cpc++);
-
-/*-- Copy the derived physical quantities to output parameters */
-/*-- (subject to changes) */
- obj2->flux_galfit = fscale;
- obj2->gdposang = fparam[1];
- if (obj2->gdposang>90.0)
- obj2->gdposang -= 180.0;
- else if (obj2->gdposang<-90.0)
- obj2->gdposang += 180.0;
- obj2->gdscale = fparam[2];
- obj2->gdaspect = fparam[3];
- ellip = (1.0 - obj2->gdaspect)/(1.0 + obj2->gdaspect);
- obj2->gde1 = (float)(ellip*cos(2*obj2->gdposang*PI/180.0));
- obj2->gde2 = (float)(ellip*sin(2*obj2->gdposang*PI/180.0));
-/*---- Copy the best-fitting PCs to the VECTOR_PC output vector */
- if (FLAG(obj2.vector_pc))
- {
- solt = sol;
- ppix = obj2->vector_pc;
- for (c=prefs.pc_vectorsize>npc?npc:prefs.pc_vectorsize; c--;)
- *(ppix++) = *(solt++);
- }
-
- free(fparam);
- }
-
- xm2 = ym2 = xym = flux = 0.0;
- solt = sol;
- mx2t = pc->mx2;
- my2t = pc->my2;
- mxyt = pc->mxy;
- for (c=npc; c--;)
- {
- val = *(solt++);
- xm2 += val**(mx2t++);
- ym2 += val**(my2t++);
- xym += val**(mxyt++);
- }
-
- obj2->mx2_pc = xm2;
- obj2->my2_pc = ym2;
- obj2->mxy_pc = xym;
-
- if (FLAG(obj2.a_pc))
- {
-/* Handle fully correlated x/y (which cause a singularity...) */
- if ((temp2=xm2*ym2-xym*xym)<0.00694)
- {
- xm2 += 0.0833333;
- ym2 += 0.0833333;
- temp2 = xm2*ym2-xym*xym;
- }
-
- if ((fabs(temp=xm2-ym2)) > 0.0)
- theta = atan2(2.0 * xym,temp) / 2.0;
- else
- theta = PI/4.0;
-
- temp = sqrt(0.25*temp*temp+xym*xym);
- pmy2 = pmx2 = 0.5*(xm2+ym2);
- pmx2 += temp;
- pmy2 -= temp;
-
- obj2->a_pc = (float)sqrt(pmx2);
- obj2->b_pc = (float)sqrt(pmy2);
- obj2->theta_pc = (float)(theta*180.0/PI);
- }
-
-/* CHECK-Images */
- if (prefs.check[CHECK_SUBPCPROTOS] || prefs.check[CHECK_PCPROTOS])
- {
- spix = pcshift;
- solt = sol;
- for (c=npc; c--; solt++)
- {
- ppix = checkmask;
- for (p=npix2; p--;)
- *(ppix++) = (PIXTYPE)*(spix++);
- if (check = prefs.check[CHECK_SUBPCPROTOS])
- addcheck(check, checkmask, width,height, ix,iy, -*solt);
- if (check = prefs.check[CHECK_PCPROTOS])
- addcheck(check, checkmask, width,height, ix,iy, *solt);
- }
- }
- if (check = prefs.check[CHECK_PCOPROTOS])
- {
-/*- Reconstruct the unconvolved profile */
- nopix = pc->omasksize[0]*pc->omasksize[1];
- QCALLOC(sumopc, double, nopix);
- solt = sol;
- ospix = pc->omaskcomp;
- for (c=npc; c--;)
- {
- val = *(solt++);
- sumopct = sumopc;
- for (p=nopix; p--;)
- *(sumopct++) += val*(double)*(ospix++);
- }
- QMALLOC(checkbuf, double, npix2);
- vignet_resample(sumopc, pc->omasksize[0], pc->omasksize[1],
- checkbuf, width, height, -dx, -dy, pixstep);
- ppix = checkmask;
- spix = checkbuf;
- for (p=npix2; p--;)
- *(ppix++) = (PIXTYPE)*(spix++);
- addcheck(check, checkmask, width,height, ix,iy, 1.0);
- free(checkbuf);
- free(sumopc);
- }
-
-/* Free memory */
- free(pcshift);
- free(wpcshift);
- free(sol);
-
- return;
- }
-
diff --git a/external/sextractor/source/photom.c b/external/sextractor/source/photom.c
deleted file mode 100644
index 0373b10..0000000
--- a/external/sextractor/source/photom.c
+++ /dev/null
@@ -1,594 +0,0 @@
- /*
- photom.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Compute magnitudes and other photometrical parameters.
-*
-* Last modify: 11/02/2000
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "photom.h"
-#include "plist.h"
-
-/***************************** computeaperflux********************************/
-/*
-Compute the total flux within a circular aperture.
-*/
-void computeaperflux(picstruct *field, picstruct *wfield,
- objstruct *obj, int i)
-
- {
- float r2, raper,raper2, rintlim,rintlim2,rextlim2,
- mx,my,dx,dx1,dy,dy2,
- offsetx,offsety,scalex,scaley,scale2, ngamma, locarea;
- double tv, sigtv, area, pix, var, backnoise2, gain;
- int x,y, x2,y2, xmin,xmax,ymin,ymax, sx,sy, w,h,
- fymin,fymax, pflag,corrflag, gainflag;
- long pos;
- PIXTYPE *strip,*stript, *wstrip,*wstript,
- wthresh;
-
- if (wfield)
- wthresh = wfield->weight_thresh;
- mx = obj->mx;
- my = obj->my;
- w = field->width;
- h = field->stripheight;
- fymin = field->ymin;
- fymax = field->ymax;
- ngamma = field->ngamma;
- pflag = (prefs.detect_type==PHOTO)? 1:0;
- corrflag = (prefs.mask_type==MASK_CORRECT);
- gainflag = wfield && prefs.weightgain_flag;
- var = backnoise2 = field->backsig*field->backsig;
- gain = prefs.gain;
-/* Integration radius */
- raper = prefs.apert[i]/2.0;
- raper2 = raper*raper;
-/* Internal radius of the oversampled annulus (<r-sqrt(2)/2) */
- rintlim = raper - 0.75;
- rintlim2 = (rintlim>0.0)? rintlim*rintlim: 0.0;
-/* External radius of the oversampled annulus (>r+sqrt(2)/2) */
- rextlim2 = (raper + 0.75)*(raper + 0.75);
- tv = sigtv = area = 0.0;
- scaley = scalex = 1.0/APER_OVERSAMP;
- scale2 = scalex*scaley;
- offsetx = 0.5*(scalex-1.0);
- offsety = 0.5*(scaley-1.0);
-
- xmin = (int)(mx-raper+0.499999);
- xmax = (int)(mx+raper+1.499999);
- ymin = (int)(my-raper+0.499999);
- ymax = (int)(my+raper+1.499999);
-
- if (xmin < 0)
- {
- xmin = 0;
- obj->flag |= OBJ_APERT_PB;
- }
- if (xmax > w)
- {
- xmax = w;
- obj->flag |= OBJ_APERT_PB;
- }
- if (ymin < fymin)
- {
- ymin = fymin;
- obj->flag |= OBJ_APERT_PB;
- }
- if (ymax > fymax)
- {
- ymax = fymax;
- obj->flag |= OBJ_APERT_PB;
- }
-
- strip = field->strip;
- if (wfield)
- wstrip = wfield->strip;
- for (y=ymin; y<ymax; y++)
- {
- stript = strip + (pos = (y%h)*w + xmin);
- if (wfield)
- wstript = wstrip + pos;
- for (x=xmin; x<xmax; x++, stript++, wstript++)
- {
- dx = x - mx;
- dy = y - my;
- if ((r2=dx*dx+dy*dy) < rextlim2)
- {
- if (r2> rintlim2)
- {
- dx += offsetx;
- dy += offsety;
- locarea = 0.0;
- for (sy=APER_OVERSAMP; sy--; dy+=scaley)
- {
- dx1 = dx;
- dy2 = dy*dy;
- for (sx=APER_OVERSAMP; sx--; dx1+=scalex)
- if (dx1*dx1+dy2<raper2)
- locarea += scale2;
- }
- }
- else
- locarea = 1.0;
- area += locarea;
-/*------ Here begin tests for pixel and/or weight overflows. Things are a */
-/*------ bit intricated to have it running as fast as possible in the most */
-/*------ common cases */
- if ((pix=*stript)<=-BIG || (wfield && (var=*wstript)>=wthresh))
- {
- if (corrflag
- && (x2=(int)(2*mx+0.49999-x))>=0 && x2<w
- && (y2=(int)(2*my+0.49999-y))>=fymin && y2<fymax
- && (pix=*(strip + (pos = (y2%h)*w + x2)))>-BIG)
- {
- if (wfield)
- {
- var = *(wstrip + pos);
- if (var>=wthresh)
- pix = var = 0.0;
- }
- }
- else
- {
- pix = 0.0;
- if (wfield)
- var = 0.0;
- }
- }
- if (pflag)
- {
- pix=exp(pix/ngamma);
- sigtv += var*locarea*pix*pix;
- }
- else
- sigtv += var*locarea;
- tv += locarea*pix;
- if (gainflag && pix>0.0 && gain>0.0)
- sigtv += pix/gain*var/backnoise2;
- }
- }
- }
-
- if (pflag)
- {
- tv = ngamma*(tv-area*exp(obj->dbkg/ngamma));
- sigtv /= ngamma*ngamma;
- }
- else
- {
- tv -= area*obj->dbkg;
- if (!gainflag && gain > 0.0 && tv>0.0)
- sigtv += tv/gain;
- }
-
- if (i<prefs.flux_apersize)
- obj2->flux_aper[i] = tv;
- if (i<prefs.fluxerr_apersize)
- obj2->fluxerr_aper[i] = sqrt(sigtv);
- if (i<prefs.mag_apersize)
- obj2->mag_aper[i] = tv>0.0? -2.5*log10(tv) + prefs.mag_zeropoint : 99.0;
- if (i<prefs.magerr_apersize)
- obj2->magerr_aper[i] = tv>0.0? 1.086*sqrt(sigtv)/tv:99.0;
-
- return;
- }
-
-
-/***************************** computeautoflux********************************/
-/*
-Compute the total flux within an automatic elliptical aperture.
-*/
-void computeautoflux(picstruct *field, picstruct *dfield, picstruct *wfield,
- picstruct *dwfield, objstruct *obj)
-
- {
- double sigtv, tv, r1, v1,var,gain,backnoise2;
- float bkg, ngamma, mx,my, dx,dy, cx2,cy2,cxy, r2,klim2,
- dxlim, dylim;
- int area,areab, x,y, x2,y2, xmin,xmax,ymin,ymax,
- fymin,fymax, w,h,
- pflag, corrflag, gainflag, pos;
- PIXTYPE *strip,*stript, *dstrip,*dstript, *wstrip,*wstript,
- *dwstrip,*dwstript,
- pix, wthresh,dwthresh;
-
-
-/* Let's initialize some variables */
- if (!dfield)
- dfield = field;
- if (dwfield)
- dwthresh = dwfield->weight_thresh;
- if (wfield)
- wthresh = wfield->weight_thresh;
- wstript = dwstript = NULL;
- w = field->width;
- h = field->stripheight;
- fymin = field->ymin;
- fymax = field->ymax;
- ngamma = field->ngamma;
- bkg = (double)obj->dbkg;
- mx = obj->mx;
- my = obj->my;
- var = backnoise2 = field->backsig*field->backsig;
- gain = prefs.gain;
- pflag = (prefs.detect_type==PHOTO)? 1:0;
- corrflag = (prefs.mask_type==MASK_CORRECT);
- gainflag = wfield && prefs.weightgain_flag;
-
-/* First step: find the extent of the ellipse (the kron factor r1) */
-/* Clip boundaries in x and y */
-/* We first check that the search ellipse is large enough... */
- if (KRON_NSIG*sqrt(obj->a*obj->b)>prefs.autoaper[0]/2.0)
- {
- cx2 = obj->cxx;
- cy2 = obj->cyy;
- cxy = obj->cxy;
- dxlim = cx2 - cxy*cxy/(4.0*cy2);
- dxlim = dxlim>0.0 ? KRON_NSIG/sqrt(dxlim) : 0.0;
- dylim = cy2 - cxy*cxy/(4.0*cx2);
- dylim = dylim > 0.0 ? KRON_NSIG/sqrt(dylim) : 0.0;
- klim2 = KRON_NSIG*KRON_NSIG;
- }
- else
-/*-- ...if not, use the circular aperture provided by the user */
- {
- cx2 = cy2 = 1.0;
- cxy = 0.0;
- dxlim = dylim = prefs.autoaper[0]/2.0;
- klim2 = dxlim*dxlim;
- }
-
- if ((xmin = RINT(mx-dxlim)) < 0)
- {
- xmin = 0;
- obj->flag |= OBJ_APERT_PB;
- }
- if ((xmax = RINT(mx+dxlim)+1) > w)
- {
- xmax = w;
- obj->flag |= OBJ_APERT_PB;
- }
- if ((ymin = RINT(my-dylim)) < field->ymin)
- {
- ymin = field->ymin;
- obj->flag |= OBJ_APERT_PB;
- }
- if ((ymax = RINT(my+dylim)+1) > field->ymax)
- {
- ymax = field->ymax;
- obj->flag |= OBJ_APERT_PB;
- }
-
- v1 = r1 = 0.0;
- area = areab = 0;
- dstrip = dfield->strip;
- if (dwfield)
- dwstrip = dwfield->strip;
- for (y=ymin; y<ymax; y++)
- {
- dstript = dstrip + (pos = xmin + (y%h)*w);
- if (dwfield)
- dwstript = dwstrip + pos;
- for (x=xmin; x<xmax; x++, dstript++, dwstript++)
- {
- dx = x - mx;
- dy = y - my;
- if ((r2=cx2*dx*dx + cy2*dy*dy + cxy*dx*dy) <= klim2)
- {
- if ((pix=*dstript)>-BIG && (!dwfield || (dwfield&&*dwstript<dwthresh)))
- {
- area++;
- r1 += sqrt(r2)*pix;
- v1 += pix;
- }
- else
- areab++;
- }
- }
- }
-
- area += areab;
- if (area)
- {
-/*-- Go further only if some pixels are available !! */
- if (r1>0.0 && v1>0.0)
- {
- obj2->kronfactor = prefs.autoparam[0]*r1/v1;
- if (obj2->kronfactor < prefs.autoparam[1])
- obj2->kronfactor = prefs.autoparam[1];
- }
- else
- obj2->kronfactor = prefs.autoparam[1];
-
-/*-- Flag if the Kron photometry can be strongly affected by neighhours */
- if ((float)areab/area > CROWD_THRESHOLD)
- obj->flag |= OBJ_CROWDED;
-
-/*-- Second step: integrate within the ellipse */
-/*-- Clip boundaries in x and y (bis) */
-/*-- We first check that the derived ellipse is large enough... */
- if (obj2->kronfactor*sqrt(obj->a*obj->b)>prefs.autoaper[1]/2.0)
- {
- cx2 = obj->cxx;
- cy2 = obj->cyy;
- cxy = obj->cxy;
- dxlim = cx2 - cxy*cxy/(4.0*cy2);
- dxlim = dxlim>0.0 ? obj2->kronfactor/sqrt(dxlim) : 0.0;
- dylim = cy2 - cxy*cxy/(4.0*cx2);
- dylim = dylim > 0.0 ? obj2->kronfactor/sqrt(dylim) : 0.0;
- klim2 = obj2->kronfactor*obj2->kronfactor;
- }
- else
-/*---- ...if not, use the circular aperture provided by the user */
- {
- cx2 = cy2 = 1.0;
- cxy = 0.0;
- dxlim = dylim = prefs.autoaper[1]/2.0;
- klim2 = dxlim*dxlim;
- obj2->kronfactor = 0.0;
- }
-
- if ((xmin = RINT(mx-dxlim)) < 0)
- {
- xmin = 0;
- obj->flag |= OBJ_APERT_PB;
- }
- if ((xmax = RINT(mx+dxlim)+1) > w)
- {
- xmax = w;
- obj->flag |= OBJ_APERT_PB;
- }
- if ((ymin = RINT(my-dylim)) < field->ymin)
- {
- ymin = field->ymin;
- obj->flag |= OBJ_APERT_PB;
- }
- if ((ymax = RINT(my+dylim)+1) > field->ymax)
- {
- ymax = field->ymax;
- obj->flag |= OBJ_APERT_PB;
- }
-
- area = areab = 0;
- tv = sigtv = 0.0;
- strip = field->strip;
- if (wfield)
- wstrip = wfield->strip;
- for (y=ymin; y<ymax; y++)
- {
- stript = strip + (pos = xmin + (y%h)*w);
- if (wfield)
- wstript = wstrip + pos;
- for (x=xmin; x<xmax; x++, stript++, wstript++)
- {
- dx = x - mx;
- dy = y - my;
- if ((cx2*dx*dx + cy2*dy*dy + cxy*dx*dy) <= klim2)
- {
- area++;
-/*-------- Here begin tests for pixel and/or weight overflows. Things are a */
-/*-------- bit intricated to have it running as fast as possible in the most */
-/*-------- common cases */
- if ((pix=*stript)<=-BIG || (wfield && (var=*wstript)>=wthresh))
- {
- areab++;
- if (corrflag
- && (x2=(int)(2*mx+0.49999-x))>=0 && x2<w
- && (y2=(int)(2*my+0.49999-y))>=fymin && y2<fymax
- && (pix=*(strip + (pos = (y2%h)*w + x2)))>-BIG)
- {
- if (wfield)
- {
- var = *(wstrip + pos);
- if (var>=wthresh)
- pix = var = 0.0;
- }
- }
- else
- {
- pix = 0.0;
- if (wfield)
- var = 0.0;
- }
- }
- if (pflag)
- {
- pix = exp(pix/ngamma);
- sigtv += var*pix*pix;
- }
- else
- sigtv += var;
- tv += pix;
- if (gainflag && pix>0.0 && gain>0.0)
- sigtv += pix/gain*var/backnoise2;
- }
- }
- }
-
-/*-- Flag if the Kron photometry can be strongly affected by neighhours */
- if ((float)areab > CROWD_THRESHOLD*area)
- obj->flag |= OBJ_CROWDED;
-
- if (pflag)
- {
- tv = ngamma*(tv-area*exp(bkg/ngamma));
- sigtv /= ngamma*ngamma;
- }
- else
- {
- tv -= area*bkg;
- if (!gainflag && gain > 0.0 && tv>0.0)
- sigtv += tv/gain;
- }
- }
- else
-/*-- No available pixels: set the flux to zero */
- tv = sigtv = 0.0;
-
-
- obj2->flux_auto = tv;
- obj2->fluxerr_auto = sqrt(sigtv);
-
- if (FLAG(obj2.mag_auto))
- obj2->mag_auto = obj2->flux_auto>0.0?
- -2.5*log10(obj2->flux_auto) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_auto))
- obj2->magerr_auto = obj2->flux_auto>0.0?
- 1.086*obj2->fluxerr_auto/obj2->flux_auto
- :99.0;
- if (tv<=0.0)
- obj2->kronfactor = 0.0;
-
- return;
- }
-
-
-/****************************** computeisocorflux ****************************/
-/*
-Compute the (corrected) isophotal flux.
-*/
-void computeisocorflux(picstruct *field, objstruct *obj)
-
- {
- double ati;
-
- ati = (obj->flux>0.0)? (obj->fdnpix*obj->dthresh/obj->flux) : 0.0;
- if (ati>1.0)
- ati = 1.0;
- else if (ati<0.0)
- ati = 0.0;
- obj2->flux_isocor = obj->flux/(1.0-0.196099*ati-0.751208*ati*ati);
- if (FLAG(obj2.fluxerr_isocor))
- {
- if (obj->flux>0.0)
- {
- double dati, sigtv;
-
- sigtv = obj->fluxerr/(obj->flux*obj->flux);
- dati = obj->fdnpix?ati*sqrt(sigtv+1.0/obj->fdnpix): 0.0;
- dati = 0.196099*dati + 0.751208*2*ati*dati;
- obj2->fluxerr_isocor = sqrt(sigtv+dati*dati)*obj->flux;
- }
- else
- obj2->fluxerr_isocor = sqrt(obj->fluxerr);
- }
-
- return;
- }
-
-
-/******************************* computemags *********************************/
-/*
-Compute magnitude parameters.
-*/
-void computemags(picstruct *field, objstruct *obj)
-
- {
-/* Mag. isophotal */
- if (FLAG(obj2.mag_iso))
- obj2->mag_iso = obj2->flux_iso>0.0?
- -2.5*log10(obj2->flux_iso) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_iso))
- obj2->magerr_iso = obj2->flux_iso>0.0?
- 1.086*obj2->fluxerr_iso/obj2->flux_iso
- :99.0;
-
-/* Mag. isophotal corrected */
- if (FLAG(obj2.mag_isocor))
- obj2->mag_isocor = obj2->flux_isocor>0.0?
- -2.5*log10(obj2->flux_isocor) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_isocor))
- obj2->magerr_isocor = obj2->flux_isocor>0.0?
- 1.086*obj2->fluxerr_isocor/obj2->flux_isocor
- :99.0;
-
-/* Choose the ``best'' flux according to the local crowding */
-
- if (FLAG(obj2.flux_best))
- {
- if (obj->flag&OBJ_CROWDED)
- {
- obj2->flux_best = obj2->flux_isocor;
- obj2->fluxerr_best = obj2->fluxerr_isocor;
- }
- else
- {
- obj2->flux_best = obj2->flux_auto;
- obj2->fluxerr_best = obj2->fluxerr_auto;
- }
- }
-
-/* Mag. Best */
- if (FLAG(obj2.mag_best))
- obj2->mag_best = obj2->flux_best>0.0?
- -2.5*log10(obj2->flux_best) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_best))
- obj2->magerr_best = obj2->flux_best>0.0?
- 1.086*obj2->fluxerr_best/obj2->flux_best
- :99.0;
-
-/* Mag. SOM-fit */
- if (FLAG(obj2.mag_somfit))
- obj2->mag_somfit = obj2->flux_somfit>0.0?
- -2.5*log10(obj2->flux_somfit) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_somfit))
- obj2->magerr_somfit = obj2->flux_somfit>0.0?
- 1.086*obj2->fluxerr_somfit/obj2->flux_somfit
- :99.0;
-
-/* Mag. PROFILE */
- if (FLAG(obj2.mag_prof))
- obj2->mag_prof = obj2->flux_prof>0.0?
- -2.5*log10(obj2->flux_prof) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_prof))
- obj2->magerr_prof = obj2->flux_prof>0.0?
- 1.086*obj2->fluxerr_prof/obj2->flux_prof
- :99.0;
-
-/* Mag. GALFIT */
- if (FLAG(obj2.mag_galfit))
- obj2->mag_galfit = obj2->flux_galfit>0.0?
- -2.5*log10(obj2->flux_galfit) + prefs.mag_zeropoint
- :99.0;
- if (FLAG(obj2.magerr_galfit))
- obj2->magerr_galfit = obj2->flux_galfit>0.0?
- 1.086*obj2->fluxerr_galfit/obj2->flux_galfit
- :99.0;
-
-/* SB units */
- if (FLAG(obj2.maxmu))
- outobj2.maxmu = obj->peak > 0.0 ?
- -2.5*log10((obj->peak)
- / (field->pixscale * field->pixscale)) + prefs.mag_zeropoint
- : 99.0;
-
- if (FLAG(obj2.threshmu))
- obj2->threshmu = obj->thresh > 0.0 ?
- -2.5*log10((obj->thresh)
- / (field->pixscale * field->pixscale)) + prefs.mag_zeropoint
- : 99.0;
-
- return;
- }
-
-
diff --git a/external/sextractor/source/photom.h b/external/sextractor/source/photom.h
deleted file mode 100644
index a31de7a..0000000
--- a/external/sextractor/source/photom.h
+++ /dev/null
@@ -1,38 +0,0 @@
- /*
- photom.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: Include file for photom.h.
-*
-* Last modify: 17/04/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define APER_OVERSAMP 5 /* oversampling in each dimension (MAG_APER) */
-#define KRON_NSIG 3*MARGIN_SCALE /* MAG_AUTO analysis range (number */
- /* of sigma) */
-#define CROWD_THRESHOLD 0.1 /* The OBJ_CROWDED flag is set if photometric*/
- /* contamination may exceed this fraction of */
- /* flux */
-
-/* NOTES:
-One must have: APER_OVERSAMP >= 1
- KRON_NSIG > 0.0
- CROWD_THRESHOLD >= 0
-*/
-
-/*------------------------------- functions ---------------------------------*/
-extern void computeaperflux(picstruct *, picstruct *, objstruct *, int),
- computeautoflux(picstruct *, picstruct *, picstruct *,
- picstruct *, objstruct *),
- computeisocorflux(picstruct *, objstruct *),
- computemags(picstruct *, objstruct *);
-
diff --git a/external/sextractor/source/plist.c b/external/sextractor/source/plist.c
deleted file mode 100644
index c7eff8b..0000000
--- a/external/sextractor/source/plist.c
+++ /dev/null
@@ -1,201 +0,0 @@
- /*
- plist.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, (IAP, Leiden observatory & ESO)
-*
-* Contents: functions dealing with the handling of pixel lists.
-*
-* Last modify: 30/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "plist.h"
-
-
-/******************************** createblank *******************************
-PROTO int createblank(int no, objliststruct *objlist)
-PURPOSE Create pixel map for BLANKing.
-INPUT objlist number,
- objlist pointer,
-OUTPUT RETURN_OK if success, RETURN_FATAL_ERROR otherwise (memory overflow).
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 30/11/98
- ***/
-int createblank(objliststruct *objlist, int no)
-
- {
- objstruct *obj;
- pliststruct *pixel, *pixt;
- int i, n, pos, xmin,ymin, w, dflag;
- PIXTYPE *pix, *dpix, *pt;
-
- obj = objlist->obj+no;
- pixel = objlist->plist;
- dflag = prefs.dimage_flag;
-
- obj->subx = xmin = obj->xmin;
- obj->suby = ymin = obj->ymin;
- obj->subw = w = obj->xmax - xmin + 1;
- obj->subh = obj->ymax - ymin + 1;
-
- n = w*obj->subh;
- if (!(obj->blank = pix = (PIXTYPE *)malloc(n*sizeof(PIXTYPE))))
- return RETURN_FATAL_ERROR;
- pt = pix;
- for (i=n; i--;)
- *(pt++) = -BIG;
-
- if (dflag)
- {
- if (!(obj->dblank = dpix = (PIXTYPE *)malloc(n*sizeof(PIXTYPE))))
- {
- free(pix);
- return RETURN_FATAL_ERROR;
- }
- pt = dpix;
- for (i=n; i--;)
- *(pt++) = -BIG;
- }
- else
- obj->dblank = NULL;
-
- for (i=obj->firstpix; i!=-1; i=PLIST(pixt,nextpix))
- {
- pixt = pixel+i;
- pos = (PLIST(pixt,x)-xmin) + (PLIST(pixt,y)-ymin)*w;
- *(pix+pos) = PLIST(pixt, value);
- if (dflag)
- *(dpix+pos) = PLISTPIX(pixt, dvalue);
- }
-
- return RETURN_OK;
- }
-
-
-/******************************** createsubmap *******************************
-PROTO int createpixmap(int no, objliststruct *objlist)
-PURPOSE Create pixel-index submap for deblending.
-INPUT objlist number,
- objlist pointer,
-OUTPUT RETURN_OK if success, RETURN_FATAL_ERROR otherwise (memory overflow).
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 08/10/97
- ***/
-int createsubmap(objliststruct *objlist, int no)
-
- {
- objstruct *obj;
- pliststruct *pixel, *pixt;
- int i, n, xmin,ymin, w, *pix, *pt;
-
- obj = objlist->obj+no;
- pixel = objlist->plist;
-
- obj->subx = xmin = obj->xmin;
- obj->suby = ymin = obj->ymin;
- obj->subw = w = obj->xmax - xmin + 1;
- obj->subh = obj->ymax - ymin + 1;
- n = w*obj->subh;
- if (!(obj->submap = pix = (int *)malloc(n*sizeof(int))))
- return RETURN_FATAL_ERROR;
- pt = pix;
- for (i=n; i--;)
- *(pt++) = -1;
-
- for (i=obj->firstpix; i!=-1; i=PLIST(pixt,nextpix))
- {
- pixt = pixel+i;
- *(pix+(PLIST(pixt,x)-xmin) + (PLIST(pixt,y)-ymin)*w) = i;
- }
-
- return RETURN_OK;
- }
-
-
-/****************************** init_plist ************************************
-PROTO pliststruct *init_plist(void)
-PURPOSE initialize a pixel-list and its components.
-INPUT -.
-OUTPUT -.
-NOTES The preparation of components relies on the preferences.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 29/04/98
- ***/
-void init_plist(void)
-
- {
- pbliststruct *pbdum = NULL;
- int i;
-
- plistsize = sizeof(pbliststruct);
- plistoff_value = (char *)&pbdum->value - (char *)pbdum;
-
- if (prefs.dimage_flag)
- {
- plistexist_dvalue = 1;
- plistoff_dvalue = plistsize;
- plistsize += sizeof(PIXTYPE);
- }
- else
- {
- plistexist_dvalue = 0;
- plistoff_dvalue = plistoff_value;
- }
-
- if (prefs.filter_flag)
- {
- plistexist_cdvalue = 1;
- plistoff_cdvalue = plistsize;
- plistsize += sizeof(PIXTYPE);
- }
- else
- {
- plistexist_cdvalue = 0;
- plistoff_cdvalue = plistoff_dvalue;
- }
-
- if (VECFLAG(obj.imaflag))
- {
- plistexist_flag = 1;
- for (i=0; i<prefs.nimaisoflag; i++)
- {
- plistoff_flag[i] = plistsize;
- plistsize += sizeof(FLAGTYPE);
- }
- }
- else
- plistexist_flag = 0;
-
- if (prefs.weight_flag)
- {
- plistexist_var = 1;
- plistoff_var = plistsize;
- plistsize += sizeof(PIXTYPE);
- }
- else
- plistexist_var = 0;
-
- if (prefs.dweight_flag)
- {
- plistexist_dthresh = 1;
- plistoff_dthresh = plistsize;
- plistsize += sizeof(PIXTYPE);
- }
- else
- plistexist_dthresh = 0;
-
- return;
- }
-
diff --git a/external/sextractor/source/plist.h b/external/sextractor/source/plist.h
deleted file mode 100644
index b621ccb..0000000
--- a/external/sextractor/source/plist.h
+++ /dev/null
@@ -1,49 +0,0 @@
- /*
- plist.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP/Leiden
-*
-* Contents: functions dealing with the handling of pixel lists.
-*
-* Last modify: 28/04/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*------------------------------- definitions -------------------------------*/
-
-#define PLIST(ptr, elem) (((pbliststruct *)(ptr))->elem)
-
-#define PLISTEXIST(elem) (plistexist_##elem)
-
-#define PLISTPIX(ptr, elem) (*((PIXTYPE *)((ptr)+plistoff_##elem)))
-
-#define PLISTFLAG(ptr, elem) (*((FLAGTYPE *)((ptr)+plistoff_##elem)))
-
-/*------------------------------- structures --------------------------------*/
-
-typedef struct
- {
- int nextpix;
- int x, y;
- PIXTYPE value;
- } pbliststruct;
-
-/*-------------------------------- globals ----------------------------------*/
-
-int plistexist_value, plistexist_dvalue, plistexist_cdvalue,
- plistexist_flag, plistexist_dthresh, plistexist_var,
- plistoff_value, plistoff_dvalue,plistoff_cdvalue,
- plistoff_flag[MAXFLAG], plistoff_dthresh, plistoff_var,
- plistsize;
-
-/*------------------------------- functions ---------------------------------*/
-
-void init_plist(void);
-
-int createblank(objliststruct *objlist, int n),
- createsubmap(objliststruct *objlist, int n);
diff --git a/external/sextractor/source/poly.c b/external/sextractor/source/poly.c
deleted file mode 100644
index 167d209..0000000
--- a/external/sextractor/source/poly.c
+++ /dev/null
@@ -1,346 +0,0 @@
- /*
- poly.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using Polynomials
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Polynomial fitting
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "poly.h"
-
-
-/****** poly_init ************************************************************
-PROTO polystruct *poly_init(int *group, int ndim, int *degree, int ngroup)
-PURPOSE Allocate and initialize a polynom structure.
-INPUT 1D array containing the group for each parameter,
- number of dimensions (parameters),
- 1D array with the polynomial degree for each group,
- number of groups.
-OUTPUT polystruct pointer.
-NOTES -.
-AUTHOR E. Bertin (IAP)
-VERSION 11/02/99
- ***/
-polystruct *poly_init(int *group, int ndim, int *degree, int ngroup)
- {
- polystruct *poly;
- char str[MAXCHAR];
- static int nd[POLY_MAXDIM];
- int *groupt,
- d,g,n,num,den;
-
- QCALLOC(poly, polystruct, 1);
- if ((poly->ndim=ndim) > POLY_MAXDIM)
- {
- sprintf(str, "The dimensionality of the polynom (%d) exceeds the maximum\n"
- "allowed one (%d)", ndim, POLY_MAXDIM);
- error(EXIT_FAILURE, "*Error*: ", str);
- }
-
- if (ndim)
- QMALLOC(poly->group, int, poly->ndim);
- for (groupt=poly->group, d=ndim; d--;)
- *(groupt++) = *(group++)-1;
-
- poly->ngroup = ngroup;
- if (ngroup)
- {
- group = poly->group; /* Forget the original *group */
-
- QMALLOC(poly->degree, int, poly->ngroup);
-
-/*-- Compute the number of context parameters for each group */
- memset(nd, 0, ngroup*sizeof(int));
- for (d=0; d<ndim; d++)
- {
- if ((g=group[d])>ngroup)
- error(EXIT_FAILURE, "*Error*: polynomial GROUP out of range", "");
- nd[g]++;
- }
- }
-
-/* Compute the total number of coefficients */
- poly->ncoeff = 1;
- for (g=0; g<ngroup; g++)
- {
- if ((d=poly->degree[g]=*(degree++))>POLY_MAXDEGREE)
- {
- sprintf(str, "The degree of the polynom (%d) exceeds the maximum\n"
- "allowed one (%d)", poly->degree[g], POLY_MAXDEGREE);
- error(EXIT_FAILURE, "*Error*: ", str);
- }
-
-/*-- There are (n+d)!/(n!d!) coeffs per group, that is Prod_(i<=d) (n+i)/i */
- for (num=den=1, n=nd[g]; d; num*=(n+d), den*=d--);
- poly->ncoeff *= num/den;
- }
-
- QMALLOC(poly->basis, double, poly->ncoeff);
- QCALLOC(poly->coeff, double, poly->ncoeff);
-
- return poly;
- }
-
-
-/****** poly_end *************************************************************
-PROTO void poly_end(polystruct *poly)
-PURPOSE Free a polynom structure and everything it contains.
-INPUT polystruct pointer.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 28/01/99
- ***/
-void poly_end(polystruct *poly)
- {
- free(poly->coeff);
- free(poly->basis);
- free(poly->degree);
- free(poly->group);
- free(poly);
- }
-
-
-/****** poly_func ************************************************************
-PROTO double poly_func(polystruct *poly, double *pos)
-PURPOSE Evaluate a multidimensional polynom.
-INPUT polystruct pointer,
- pointer to the 1D array of input vector data.
-OUTPUT Polynom value.
-NOTES Values of the basis functions are updated in poly->basis.
-AUTHOR E. Bertin (IAP)
-VERSION 11/02/99
- ***/
-double poly_func(polystruct *poly, double *pos)
- {
- static double xpol[POLY_MAXDIM+1];
- double *post, *xpolt, *basis, *coeff, val, xval;
- static int expo[POLY_MAXDIM+1], gexpo[POLY_MAXDIM+1];
- int *expot, *degree,*degreet, *group,*groupt, *gexpot,
- d,g,t, ndim;
-
-/* Prepare the vectors and counters */
- ndim = poly->ndim;
- basis = poly->basis;
- coeff = poly->coeff;
- group = poly->group;
- degree = poly->degree;
- if (ndim)
- {
- for (xpolt=xpol, expot=expo, post=pos, d=ndim; --d;)
- {
- *(++xpolt) = 1.0;
- *(++expot) = 0;
- }
- for (gexpot=gexpo, degreet=degree, g=poly->ngroup; g--;)
- *(gexpot++) = *(degreet++);
- if (gexpo[*group])
- gexpo[*group]--;
- }
-
-/*
-*pos=1.001;*(pos+1)=1.0001;*(pos+2)=1.00001;
-*/
-/* The constant term is handled separately */
- val = *(coeff++);
- *(basis++) = 1.0;
- *expo = 1;
- *xpol = *pos;
-
-/* Compute the rest of the polynom */
- for (t=poly->ncoeff; --t; )
- {
-/*-- xpol[0] contains the current product of the x^n's */
- val += (*(basis++)=*xpol)**(coeff++);
-/*-- A complex recursion between terms of the polynom speeds up computations */
- post = pos;
- groupt = group;
- expot = expo;
- xpolt = xpol;
-/*
-printf("%d%d%d %7.5f %7.5f %7.5f %d %d\n",
- *expo, *(expo+1), *(expo+2), *xpol,
- *(xpol+1), *(xpol+2) , *gexpo, *(gexpo+1));
-*/
- for (d=0; d<ndim; d++, groupt++)
- if (gexpo[*groupt]--)
- {
- ++*(expot++);
- xval = (*(xpolt--) *= *post);
- while (d--)
- *(xpolt--) = xval;
- break;
- }
- else
- {
- gexpo[*groupt] = *expot;
- *(expot++) = 0;
- *(xpolt++) = 1.0;
- post++;
- }
- }
-
- return val;
- }
-
-
-/****** poly_fit *************************************************************
-PROTO double poly_fit(polystruct *poly, double *x, double *y, double *w,
- int ndata, double *extbasis)
-PURPOSE Least-Square fit of a multidimensional polynom to weighted data.
-INPUT polystruct pointer,
- pointer to the (pseudo)2D array of inputs to basis functions,
- pointer to the 1D array of data values,
- pointer to the 1D array of data weights,
- number of data points,
- pointer to a (pseudo)2D array of computed basis function values.
-OUTPUT Chi2 of the fit.
-NOTES If different from NULL, extbasis can be provided to store the
- values of the basis functions. If x==NULL and extbasis!=NULL, the
- precomputed basis functions stored in extbasis are used (which saves
- CPU).
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 05/04/99
- ***/
-void poly_fit(polystruct *poly, double *x, double *y, double *w, int ndata,
- double *extbasis)
- {
- double *alpha,*alphat, *beta,*betat, *basis,*basis1,*basis2, *coeff,
- *extbasist,
- val,wval,yval;
- int ncoeff, ndim, matsize,
- i,j,n;
-
- if (!x && !extbasis)
- error(EXIT_FAILURE, "*Internal Error*: One of x or extbasis should be "
- "different from NULL\nin ", "poly_func()");
- ncoeff = poly->ncoeff;
- ndim = poly->ndim;
- matsize = ncoeff*ncoeff;
- basis = poly->basis;
- extbasist = extbasis;
- QCALLOC(alpha, double, matsize);
- QCALLOC(beta, double, ncoeff);
-
-/* Build the covariance matrix */
- for (n=ndata; n--;)
- {
- if (x)
- {
-/*---- If x!=NULL, compute the basis functions */
- poly_func(poly, x);
- x+=ndim;
-/*---- If, in addition, extbasis is provided, then fill it */
- if (extbasis)
- for (basis1=basis,j=ncoeff; j--;)
- *(extbasist++) = *(basis1++);
- }
- else
-/*---- If x==NULL, then rely on pre-computed basis functions */
- for (basis1=basis,j=ncoeff; j--;)
- *(basis1++) = *(extbasist++);
-
- basis1 = basis;
- wval = *(w++);
- yval = *(y++);
- betat = beta;
- alphat = alpha;
- for (j=ncoeff; j--;)
- {
- val = *(basis1++)*wval;
- *(betat++) += val*yval;
- for (basis2=basis,i=ncoeff; i--;)
- *(alphat++) += val**(basis2++);
- }
- }
-
-/* Solve the system */
- cholsolve(alpha,beta,ncoeff);
-
- free(alpha);
-
-/* Now fill the coeff array with the result of the fit */
- betat = beta;
- coeff = poly->coeff;
- for (j=ncoeff; j--;)
- *(coeff++) = *(betat++);
-
- free(beta);
-
- return;
- }
-
-
-/****** cholsolve *************************************************************
-PROTO void cholsolve(double *a, double *b, int n)
-PURPOSE Solve a system of linear equations, using Cholesky decomposition.
-INPUT Pointer to the (pseudo 2D) matrix of coefficients,
- pointer to the 1D column vector,
- matrix size.
-OUTPUT -.
-NOTES Based on Numerical Recipes, 2nd ed. (Chap 2.9). The matrix of
- coefficients must be symmetric and positive definite.
-AUTHOR E. Bertin (IAP, Leiden observatory & ESO)
-VERSION 13/12/98
- ***/
-void cholsolve(double *a, double *b, int n)
- {
- double *p, *x, sum;
- int i,j,k;
-
-/* Allocate memory to store the diagonal elements */
- QMALLOC(p, double, n);
-
-/* Cholesky decomposition */
- for (i=0; i<n; i++)
- for (j=i; j<n; j++)
- {
- for (sum=a[i*n+j],k=i-1; k>=0; k--)
- sum -= a[i*n+k]*a[j*n+k];
- if (i==j)
- {
- if (sum <= 0.0)
- error(EXIT_FAILURE, "*Error*: Non positive definite matrix in ",
- "cholsolve()");
- p[i] = sqrt(sum);
- }
- else
- a[j*n+i] = sum/p[i];
- }
-
-/* Solve the system */
- x = b; /* Just to save memory: the solution replaces b */
- for (i=0; i<n; i++)
- {
- for (sum=b[i],k=i-1; k>=0; k--)
- sum -= a[i*n+k]*x[k];
- x[i] = sum/p[i];
- }
-
- for (i=n-1; i>=0; i--)
- {
- for (sum=x[i],k=i+1; k<n; k++)
- sum -= a[k*n+i]*x[k];
- x[i] = sum/p[i];
- }
-
- free(p);
-
- return;
- }
-
diff --git a/external/sextractor/source/poly.h b/external/sextractor/source/poly.h
deleted file mode 100644
index a89272f..0000000
--- a/external/sextractor/source/poly.h
+++ /dev/null
@@ -1,47 +0,0 @@
- /*
- poly.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using polynomial fits
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include for poly.c
-*
-* Last modify: 05/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants -------------------------------*/
-
-#define POLY_MAXDIM 4 /* Max dimensionality of polynom */
-#define POLY_MAXDEGREE 10 /* Max degree of the polynom */
-
-/*---------------------------------- macros ---------------------------------*/
-
-/*--------------------------- structure definitions -------------------------*/
-
-typedef struct poly
- {
- double *basis; /* Current values of the basis functions */
- double *coeff; /* Polynom coefficients */
- int ncoeff; /* Number of coefficients */
- int *group; /* Groups */
- int ndim; /* dimensionality of the polynom */
- int *degree; /* Degree in each group */
- int ngroup; /* Number of different groups */
- } polystruct;
-
-/*---------------------------------- protos --------------------------------*/
-
-extern polystruct *poly_init(int *group,int ndim,int *degree,int ngroup);
-
-extern double poly_func(polystruct *poly, double *pos);
-
-extern void cholsolve(double *a, double *b, int n),
- poly_end(polystruct *poly),
- poly_fit(polystruct *poly, double *x, double *y,
- double *w, int ndata, double *extbasis);
-
diff --git a/external/sextractor/source/prefs.c b/external/sextractor/source/prefs.c
deleted file mode 100644
index 4ebebeb..0000000
--- a/external/sextractor/source/prefs.c
+++ /dev/null
@@ -1,508 +0,0 @@
- /*
- prefs.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Functions to handle the configuration file.
-*
-* Last modify: 25/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <ctype.h>
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "key.h"
-#include "prefs.h"
-
-
-/********************************* readprefs ********************************/
-/*
-Read a configuration file in ``standard'' format (see the SExtractor
-documentation)
-*/
-void readprefs(char *filename, char **argkey, char **argval, int narg)
-
- {
- FILE *infile;
- char *cp, str[MAXCHAR], *keyword, *value, **dp;
- int i, ival, nkey, warn, argi, flagc, flagd, flagz;
- double dval;
-#ifndef NO_ENVVAR
- static char value2[MAXCHAR],envname[MAXCHAR];
- char *dolpos;
-#endif
-
-
- if ((infile = fopen(filename,"r")) == NULL)
- error(EXIT_FAILURE,"*ERROR*: can't read ", filename);
-
-/*Build the keyword-list from pkeystruct-array */
-
- for (i=0; key[i].name[0]; i++)
- strcpy(keylist[i], key[i].name);
- keylist[i][0] = '\0';
-
-
-/*Scan the configuration file*/
-
- argi=0;
- flagc = 0;
- flagd = 1;
- dp = default_prefs;
- for (warn=0;;)
- {
- if (flagd)
- {
- if (**dp)
- strcpy(str, *(dp++));
- else
- flagd = 0;
- }
- if (!flagc && !flagd)
- if (!fgets(str, MAXCHAR, infile))
- flagc=1;
-
- if (flagc)
- {
- if (argi<narg)
- {
- if (strlen(argval[argi])>=MAXCHAR)
- error(EXIT_FAILURE, "*Error*: maximum string-size exceeded in "
- "command-line for argument to ", argkey[argi]);
- sprintf(str, "%s %s", argkey[argi], argval[argi]);
- argi++;
- }
- else
- break;
- }
-
- keyword = strtok(str, notokstr);
- if (keyword && keyword[0]!=0 && keyword[0]!=(char)'#')
- {
- if (warn>=10)
- error(EXIT_FAILURE, "*Error*: No valid keyword found in ", filename);
- nkey = findkeys(keyword, keylist, FIND_STRICT);
- if (nkey!=RETURN_ERROR)
- {
- value = strtok((char *)NULL, notokstr);
-#ifndef NO_ENVVAR
-/*------ Expansion of environment variables (preceded by '$') */
- if (value && (dolpos=strchr(value, '$')))
- {
- int nc;
- char *valuet,*value2t, *envval;
-
- value2t = value2;
- valuet = value;
- while (dolpos)
- {
- while (valuet<dolpos)
- *(value2t++) = *(valuet++); /* verbatim copy before '$' */
- if (*(++valuet) == (char)'{')
- valuet++;
- strncpy(envname, valuet, nc=strcspn(valuet,"}/:\"\'\\"));
- *(envname+nc) = (char)'\0';
- if (*(valuet+=nc) == (char)'}')
- valuet++;
- if (!(envval=getenv(envname)))
- error(EXIT_FAILURE, "Environment variable not found: ",
- envname);
- while(*envval) /* Copy the ENV content */
- *(value2t++) = *(envval++);
- while(*valuet && *valuet!=(char)'$')/* Continue verbatim copy */
- *(value2t++) = *(valuet++);
- if (*valuet)
- dolpos = valuet;
- else
- {
- dolpos = NULL;
- *value2t = (char)'\0';
- }
- }
-
- value = value2;
- }
-#endif
- switch(key[nkey].type)
- {
- case P_FLOAT:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- dval = atof(value);
- if (dval>=key[nkey].dmin && dval<=key[nkey].dmax)
- *(double *)(key[nkey].ptr) = dval;
- else
- error(EXIT_FAILURE, keyword," keyword out of range");
- break;
-
- case P_INT:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- ival = atoi(value);
- if (ival>=key[nkey].imin && ival<=key[nkey].imax)
- *(int *)(key[nkey].ptr) = ival;
- else
- error(EXIT_FAILURE, keyword, " keyword out of range");
- break;
-
- case P_STRING:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," string is empty!");
- strcpy((char *)key[nkey].ptr, value);
- break;
-
- case P_BOOL:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- if (cp = strchr("yYnN", (int)value[0]))
- *(int *)(key[nkey].ptr) = (tolower((int)*cp)=='y')?1:0;
- else
- error(EXIT_FAILURE, keyword, " value must be Y or N");
- break;
-
- case P_KEY:
- if (!value || value[0]==(char)'#')
- error(EXIT_FAILURE, keyword," keyword has no value!");
- if ((ival = findkeys(value, key[nkey].keylist,FIND_STRICT))
- != RETURN_ERROR)
- *(int *)(key[nkey].ptr) = ival;
- else
- error(EXIT_FAILURE, keyword, " set to an unknown keyword");
- break;
-
- case P_INTLIST:
- for (i=0; i<MAXLIST&&value&&value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- ival = strtol(value, NULL, 0);
- if (ival>=key[nkey].imin && ival<=key[nkey].imax)
- ((int *)key[nkey].ptr)[i] = ival;
- else
- error(EXIT_FAILURE, keyword, " keyword out of range");
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = i;
- break;
-
- case P_FLOATLIST:
- for (i=0; i<MAXLIST&&value&&value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- dval = atof(value);
- if (dval>=key[nkey].dmin && dval<=key[nkey].dmax)
- ((double *)key[nkey].ptr)[i] = dval;
- else
- error(EXIT_FAILURE, keyword, " keyword out of range");
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = i;
- break;
-
- case P_KEYLIST:
- for (i=0; i<MAXLIST && value && value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- if ((ival = findkeys(value, key[nkey].keylist, FIND_STRICT))
- != RETURN_ERROR)
- ((int *)(key[nkey].ptr))[i] = ival;
- else
- error(EXIT_FAILURE, keyword, " set to an unknown keyword");
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = i;
- break;
-
- case P_STRINGLIST:
- if (!value || value[0]==(char)'#')
- {
- value = "";
- flagz = 1;
- }
- else
- flagz = 0;
- for (i=0; i<MAXLIST && value && value[0]!=(char)'#'; i++)
- {
- if (i>=key[nkey].nlistmax)
- error(EXIT_FAILURE, keyword, " has too many members");
- free(((char **)key[nkey].ptr)[i]);
- QMALLOC(((char **)key[nkey].ptr)[i], char, MAXCHAR);
- strcpy(((char **)key[nkey].ptr)[i], value);
- value = strtok((char *)NULL, notokstr);
- }
- if (i<key[nkey].nlistmin)
- error(EXIT_FAILURE, keyword, " list has not enough members");
- *(key[nkey].nlistptr) = flagz?0:i;
- break;
-
- default:
- error(EXIT_FAILURE, "*Internal ERROR*: Type Unknown",
- " in readprefs()");
- break;
- }
- key[nkey].flag = 1;
- }
- else
- {
- warning(keyword, " keyword unknown");
- warn++;
- }
- }
- }
-
- for (i=0; key[i].name[0]; i++)
- if (!key[i].flag)
- error(EXIT_FAILURE, key[i].name, " configuration keyword missing");
- fclose(infile);
-
- return;
- }
-
-
-/********************************** findkeys **********************************/
-/*
- find an item within a list of keywords, SExtractor version.
-*/
-int findkeys(char *str, char keyw[][16], int mode)
-
- {
- int i;
-
- for (i=0; keyw[i][0]; i++)
- if (!cistrcmp(str, keyw[i], mode))
- return i;
-
- return RETURN_ERROR;
- }
-
-
-/********************************* useprefs **********************************/
-/*
-Update various structures according to the prefs.
-*/
-void useprefs()
-
- {
- int i, margin, naper;
- char *str;
-
-/*-------------------------------- Images ----------------------------------*/
- prefs.dimage_flag = (prefs.nimage_name>1);
-
-/*--------------------------------- ASSOC ----------------------------------*/
- prefs.assoc_flag = FLAG(obj2.assoc) || FLAG(obj2.assoc_number);
-
-/*-------------------------------- Extracting ------------------------------*/
- if (prefs.nthresh_type<2)
- prefs.thresh_type[1] = prefs.thresh_type[0];
-
-/*-------------------------------- Deblending ------------------------------*/
- prefs.deb_maxarea = (prefs.ext_minarea<MAXDEBAREA ?
- prefs.ext_minarea:MAXDEBAREA);
-
-/*-------------------------------- Astrometry ------------------------------*/
- prefs.world_flag = FLAG(obj2.mxw) || FLAG(obj2.mamaposx)
- || FLAG(obj2.peakxw);
-
-/*-------------------------------- Photometry ------------------------------*/
-
-/* Find the largest APERture-photometry vector */
- if (FLAG(obj2.flux_aper))
- {
- naper = prefs.flux_apersize;
- if (prefs.fluxerr_apersize>naper)
- naper = prefs.fluxerr_apersize;
- if (prefs.mag_apersize>naper)
- naper = prefs.mag_apersize;
- if (prefs.magerr_apersize>naper)
- naper = prefs.magerr_apersize;
- if (naper>prefs.naper)
- {
- warning("Not enough apertures provided in config.:\n",
- " some APER photometric values will remain blank ");
- naper = prefs.naper;
- }
- else
- prefs.naper = naper;
- }
-
-/* Find the largest "minimum margin" necessary for apertures */
- prefs.cleanmargin = 0;
- if (FLAG(obj2.vignet)
- && (margin=(prefs.vignetsize[1]+1)/2) > prefs.cleanmargin)
- prefs.cleanmargin = margin;
- if (FLAG(obj2.vigshift)
- && (margin=(prefs.vigshiftsize[1]+1)/2+3)>prefs.cleanmargin)
- prefs.cleanmargin = margin;
- if (FLAG(obj2.flux_aper))
- for (i=0; i<naper; i++)
- if ((margin=(int)((prefs.apert[i]+1)/2)+1) > prefs.cleanmargin)
- prefs.cleanmargin = margin;
-
-/* Growth-curve flag */
- if (FLAG(obj2.flux_growth)
- || FLAG(obj2.mag_growth)
- || FLAG(obj2.flux_radius)
- || FLAG(obj2.flux_growthstep)
- || FLAG(obj2.mag_growthstep))
- prefs.growth_flag = 1;
-
- if (FLAG(obj2.flux_radius))
- if (prefs.nflux_frac>prefs.flux_radiussize)
- prefs.nflux_frac = prefs.flux_radiussize;
-
-/*------------------------------- MASKing ----------------------------------*/
- prefs.blank_flag = (prefs.mask_type!=MASK_NONE);
-
-/*--------------------------- SOM-fitting ----------------------------------*/
- prefs.somfit_flag = FLAG(obj2.flux_somfit);
-
-/*------------------------------ Background --------------------------------*/
- if (prefs.nbacksize<2)
- prefs.backsize[1] = prefs.backsize[0];
- if (prefs.nbackfsize<2)
- prefs.backfsize[1] = prefs.backfsize[0];
- if (prefs.nback_type<2)
- prefs.back_type[1] = prefs.back_type[0];
-
-/*------------------------------ FLAG-images -------------------------------*/
- prefs.nimaisoflag = (prefs.imaflag_size > prefs.imanflag_size) ?
- prefs.imaflag_size : prefs.imanflag_size;
- prefs.nimaflag = (prefs.nimaisoflag < prefs.nfimage_name) ?
- prefs.nimaisoflag : prefs.nfimage_name;
-
-/*----------------------------- CHECK-images -------------------------------*/
- prefs.check_flag = 0;
- for (i=0; i<prefs.ncheck_type; i++)
- if (prefs.check_type[i] != CHECK_NONE) /* at least 1 is not NONE */
- prefs.check_flag = 1;
-
- if (prefs.check_flag && prefs.ncheck_name!=prefs.ncheck_type)
- error(EXIT_FAILURE, "*Error*: CHECKIMAGE_NAME(s) and CHECKIMAGE_TYPE(s)",
- " are not in equal number");
-
-/*---------------------------- PSF-fitting ---------------------------------*/
- if (FLAG(obj2.flux_psf))
- prefs.psf_flag = 1;
- if (prefs.check_flag)
- for (i=0; i<prefs.ncheck_type; i++)
- if (prefs.check_type[i] == CHECK_SUBPSFPROTOS
- || prefs.check_type[i] == CHECK_PSFPROTOS)
- prefs.psf_flag = 1;
-
-/*---------------------------- PC-fitting ----------------------------------*/
-/* PC-fitting is possible only if a PSF file is loaded */
- if (prefs.psf_flag)
- {
- prefs.pc_flag = FLAG(obj2.mx2_pc);
- if (prefs.check_flag)
- for (i=0; i<prefs.ncheck_type; i++)
- if (prefs.check_type[i] == CHECK_SUBPCPROTOS
- || prefs.check_type[i] == CHECK_PCPROTOS
- || prefs.check_type[i] == CHECK_PCOPROTOS)
- prefs.pc_flag = 1;
- }
-
-/*----------------------------- WEIGHT-images ------------------------------*/
- if (prefs.nweight_type<2)
- prefs.weight_type[1] = prefs.weight_type[0];
-
- prefs.dweight_flag = (prefs.weight_type[0]!= WEIGHT_NONE);
- prefs.weight_flag = (prefs.weight_type[1]!= WEIGHT_NONE);
-
- if (prefs.dweight_flag || prefs.weight_flag)
- {
-/*-- Handle the default weight-threshold values */
- if (prefs.nweight_thresh<2)
- for (i=2; --i >= prefs.nweight_thresh;)
- prefs.weight_thresh[i] = (prefs.weight_type[i]==WEIGHT_FROMWEIGHTMAP)?
- 0.0 : BIG;
-/*-- Check WEIGHT_IMAGE parameter(s) */
- if ((!prefs.nwimage_name
- && ((prefs.weight_type[0]!=WEIGHT_FROMBACK
- && prefs.weight_type[0]!=WEIGHT_NONE)
- || (prefs.weight_type[1]!=WEIGHT_FROMBACK
- && prefs.weight_type[1]!=WEIGHT_NONE)))
- || (prefs.nwimage_name<2
- && prefs.weight_type[0]!=WEIGHT_FROMBACK
- && prefs.weight_type[0]!=WEIGHT_NONE
- && prefs.weight_type[1]!=WEIGHT_FROMBACK
- && prefs.weight_type[1]!=WEIGHT_NONE
- && prefs.weight_type[0]!=prefs.weight_type[1]))
- error(EXIT_FAILURE, "*Error*: WEIGHT_IMAGE missing","");
-
- if (prefs.nwimage_name && prefs.nwimage_name<2)
- prefs.wimage_name[1] = prefs.wimage_name[0];
- if (prefs.nwimage_name==2 && prefs.nweight_type==1)
- prefs.nweight_type = 2;
-
-/*-- If detection-only interpolation is needed with 1 Weight image... */
-/*-- ...pretend we're using 2, with only one being interpolated */
- if (prefs.nweight_type==1
- && prefs.nwimage_name && prefs.wimage_name[1]==prefs.wimage_name[0]
- && prefs.interp_type[0]==INTERP_VARONLY )
- {
- prefs.nweight_type = 2;
- prefs.weight_type[1] = prefs.weight_type[0];
- prefs.weight_type[0] = WEIGHT_FROMINTERP;
- prefs.wimage_name[1] = prefs.wimage_name[0];
- prefs.interp_type[1] = INTERP_NONE;
- prefs.dweight_flag = 1;
- if (prefs.nweight_thresh<2)
- {
- prefs.nweight_thresh = 2;
- prefs.weight_thresh[1] = prefs.weight_thresh[0];
- }
- }
- }
-
-/*------------------------------ Catalogue ---------------------------------*/
-
- if (!strcmp(prefs.cat_name, "STDOUT"))
- prefs.pipe_flag = 1;
-
- if (str=strrchr(prefs.filter_name, '/'))
- strcpy(cat.filter_name, str+1);
- else
- strcpy(cat.filter_name, prefs.filter_name);
-
- if (str=strrchr(prefs.prefs_name, '/'))
- strcpy(cat.prefs_name, str+1);
- else
- strcpy(cat.prefs_name, prefs.prefs_name);
-
- if (str=strrchr(prefs.nnw_name, '/'))
- strcpy(cat.nnw_name, str+1);
- else
- strcpy(cat.nnw_name, prefs.nnw_name);
-
- if (str=strrchr(prefs.image_name[prefs.nimage_name-1], '/'))
- strcpy(cat.image_name, str+1);
- else
- strcpy(cat.image_name, prefs.image_name[prefs.nimage_name-1]);
-
- sprintf(cat.soft_name, "%s%s", BANNER, VERSION);
-
- return;
- }
-
-
diff --git a/external/sextractor/source/prefs.h b/external/sextractor/source/prefs.h
deleted file mode 100644
index 5816e3f..0000000
--- a/external/sextractor/source/prefs.h
+++ /dev/null
@@ -1,177 +0,0 @@
- /*
- prefs.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Keywords for the configuration file.
-*
-* Last modify: 12/11/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define MAXLIST 32 /* max. nb of list members */
-
-/* NOTES:
-One must have: MAXLIST >= 1 (preferably >= 16!)
-*/
-/*-------------------------------- initialization ---------------------------*/
-int idummy;
-
-pkeystruct key[] =
- {
- {"ANALYSIS_THRESH", P_FLOATLIST, prefs.thresh, 0,0, -BIG, BIG,
- {""}, 1, 2, &prefs.nthresh},
- {"ASSOC_DATA", P_INTLIST, prefs.assoc_data, 0, 1000000,0.0,0.0,
- {""}, 1,MAXLIST, &prefs.nassoc_data},
- {"ASSOC_NAME", P_STRING, prefs.assoc_name},
- {"ASSOC_PARAMS", P_INTLIST, prefs.assoc_param, 1, 1000000,0.0,0.0,
- {""}, 2,3, &prefs.nassoc_param},
- {"ASSOC_RADIUS", P_FLOAT, &prefs.assoc_radius, 0,0, 1e-10,1e+10},
- {"ASSOC_TYPE", P_KEY, &prefs.assoc_type, 0,0, 0.0,0.0,
- {"FIRST", "NEAREST", "MEAN", "MAG_MEAN", "SUM", "MAG_SUM",
- "MIN", "MAX", ""}},
- {"ASSOCSELEC_TYPE", P_KEY, &prefs.assocselec_type, 0,0, 0.0,0.0,
- {"ALL","MATCHED","-MATCHED",""}},
- {"BACK_FILTERSIZE", P_INTLIST, prefs.backfsize, 1,7, 0.0,0.0,
- {""}, 1,2, &prefs.nbackfsize},
- {"BACK_FILTTHRESH", P_FLOAT, &prefs.backfthresh, 0,0, 0.0,BIG},
- {"BACKPHOTO_THICK", P_INT, &prefs.pback_size, 1, 256},
- {"BACKPHOTO_TYPE", P_KEY, &prefs.pback_type, 0,0, 0.0,0.0,
- {"GLOBAL","LOCAL",""}},
- {"BACK_SIZE", P_INTLIST, prefs.backsize, 1,2000000000, 0.0,0.0,
- {""}, 1,2, &prefs.nbacksize},
- {"BACK_TYPE", P_KEYLIST, prefs.back_type, 0,0, 0.0,0.0,
- {"AUTO","MANUAL",""},
- 1, 2, &prefs.nback_type},
- {"BACK_VALUE", P_FLOATLIST, prefs.back_val, 0,0, -BIG,BIG,
- {""}, 1, 2, &prefs.nback_val},
- {"CATALOG_NAME", P_STRING, prefs.cat_name},
- {"CATALOG_TYPE", P_KEY, &prefs.cat_type, 0,0, 0.0,0.0,
- {"NONE", "ASCII","ASCII_HEAD", "ASCII_SKYCAT", "FITS_LDAC",
- "FITS_BINIMHEAD","FITS_NOIMHEAD","FITS_1.0",""}},
- {"CHECKIMAGE_NAME", P_STRINGLIST, prefs.check_name, 0,0,0.0,0.0,
- {""}, 0, MAXCHECK, &prefs.ncheck_name},
- {"CHECKIMAGE_TYPE", P_KEYLIST, prefs.check_type, 0,0, 0.0,0.0,
- {"NONE", "IDENTICAL",
- "BACKGROUND", "BACKGROUND_RMS", "MINIBACKGROUND",
- "MINIBACK_RMS", "-BACKGROUND",
- "FILTERED", "OBJECTS", "APERTURES", "SEGMENTATION", "ASSOC",
- "-OBJECTS", "-PSF_PROTOS", "PSF_PROTOS",
- "-PC_CONVPROTOS", "PC_CONVPROTOS", "PC_PROTOS", ""},
- 0, 17, &prefs.ncheck_type},
- {"CLEAN", P_BOOL, &prefs.clean_flag},
- {"CLEAN_PARAM", P_FLOAT, &prefs.clean_param, 0,0, 0.1,10.0},
- {"DEBLEND_MINCONT", P_FLOAT, &prefs.deblend_mincont, 0,0, 0.0,1.0},
- {"DEBLEND_NTHRESH", P_INT, &prefs.deblend_nthresh, 1,64},
- {"DETECT_MINAREA", P_INT, &prefs.ext_minarea, 1,1000000},
- {"DETECT_THRESH", P_FLOATLIST, prefs.dthresh, 0,0, -BIG, BIG,
- {""}, 1, 2, &prefs.ndthresh},
- {"DETECT_TYPE", P_KEY, &prefs.detect_type, 0,0, 0.0,0.0,
- {"CCD","PHOTO",""}},
- {"FILTER", P_BOOL, &prefs.filter_flag},
- {"FILTER_NAME", P_STRING, prefs.filter_name},
- {"FILTER_THRESH", P_FLOATLIST, prefs.filter_thresh, 0,0,-BIG,BIG,
- {""}, 0, 2, &prefs.nfilter_thresh},
- {"FITS_UNSIGNED", P_BOOL, &prefs.fitsunsigned_flag},
- {"FLAG_IMAGE", P_STRINGLIST, prefs.fimage_name, 0,0,0.0,0.0,
- {""}, 0, MAXFLAG, &prefs.nfimage_name},
- {"FLAG_TYPE", P_KEYLIST, prefs.flag_type, 0,0, 0.0,0.0,
- {"OR","AND","MIN", "MAX", "MOST",""}, 0, MAXFLAG, &idummy},
- {"GAIN", P_FLOAT, &prefs.gain, 0,0, 0.0, 1e+30},
- {"INTERP_MAXXLAG", P_INTLIST, prefs.interp_xtimeout, 1,1000000, 0.0,0.0,
- {""}, 1, 2, &prefs.ninterp_xtimeout},
- {"INTERP_MAXYLAG", P_INTLIST, prefs.interp_ytimeout, 1,1000000, 0.0,0.0,
- {""}, 1, 2, &prefs.ninterp_ytimeout},
- {"INTERP_TYPE", P_KEYLIST, prefs.interp_type, 0,0, 0.0,0.0,
- {"NONE","VAR_ONLY","ALL",""}, 1, 2, &prefs.ninterp_type},
- {"MAG_GAMMA", P_FLOAT, &prefs.mag_gamma, 0,0, 1e-10,1e+30},
- {"MAG_ZEROPOINT", P_FLOAT, &prefs.mag_zeropoint, 0,0, -100.0, 100.0},
- {"MAMA_CORFLEX", P_FLOAT, &prefs.mama_corflex, 0,0, -1.0,1.0},
- {"MASK_TYPE", P_KEY, &prefs.mask_type, 0,0, 0.0,0.0,
- {"NONE","BLANK","CORRECT",""}},
- {"MEMORY_BUFSIZE", P_INT, &prefs.mem_bufsize, 8, 65534},
- {"MEMORY_OBJSTACK", P_INT, &prefs.clean_stacksize, 16,65536},
- {"MEMORY_PIXSTACK", P_INT, &prefs.mem_pixstack, 1000, 10000000},
- {"PARAMETERS_NAME", P_STRING, prefs.param_name},
- {"PHOT_APERTURES", P_FLOATLIST, prefs.apert, 0,0, 0.0,2*MAXPICSIZE,
- {""}, 1, MAXNAPER, &prefs.naper},
- {"PHOT_AUTOPARAMS", P_FLOATLIST, prefs.autoparam, 0,0, 0.0,10.0,
- {""}, 2,2, &prefs.nautoparam},
- {"PHOT_AUTOAPERS", P_FLOATLIST, prefs.autoaper, 0,0, 0.0,1e6,
- {""}, 2,2, &prefs.nautoaper},
- {"PHOT_FLUXFRAC", P_FLOATLIST, prefs.flux_frac, 0,0, 1e-6, 1.0,
- {""}, 1, MAXNAPER, &prefs.nflux_frac},
- {"PIXEL_SCALE", P_FLOAT, &prefs.pixel_scale, 0,0, 0.0, 1e+10},
- {"PSF_NAME", P_STRING, prefs.psf_name},
- {"PSF_NMAX", P_INT, &prefs.psf_npsfmax, 1, PSF_NPSFMAX},
- {"PSFDISPLAY_TYPE", P_KEY, &prefs.psfdisplay_type, 0,0, 0.0,0.0,
- {"SPLIT","VECTOR",""}},
- {"SATUR_LEVEL", P_FLOAT, &prefs.satur_level, 0,0, -1e+30, 1e+30},
- {"SEEING_FWHM", P_FLOAT, &prefs.seeing_fwhm, 0,0, 1e-10, 1e+10},
- {"SOM_NAME", P_STRING, prefs.som_name},
- {"STARNNW_NAME", P_STRING, prefs.nnw_name},
- {"THRESH_TYPE", P_KEYLIST, prefs.thresh_type, 0,0, 0.0,0.0,
- {"RELATIVE","ABSOLUTE"},
- 1, 2, &prefs.nthresh_type},
- {"VERBOSE_TYPE", P_KEY, &prefs.verbose_type, 0,0, 0.0,0.0,
- {"QUIET","NORMAL", "EXTRA_WARNINGS", "FULL",""}},
- {"WEIGHT_GAIN", P_BOOL, &prefs.weightgain_flag},
- {"WEIGHT_IMAGE", P_STRINGLIST, prefs.wimage_name, 0,0,0.0,0.0,
- {""}, 0, MAXIMAGE, &prefs.nwimage_name},
- {"WEIGHT_THRESH", P_FLOATLIST, prefs.weight_thresh, 0,0, 0.0, BIG,
- {""}, 0, 2, &prefs.nweight_thresh},
- {"WEIGHT_TYPE", P_KEYLIST, prefs.weight_type, 0,0, 0.0,0.0,
- {"NONE","BACKGROUND", "MAP_RMS", "MAP_VAR","MAP_WEIGHT", ""},
- 0, MAXIMAGE, &prefs.nweight_type},
- {""}
- };
-
-char keylist[sizeof(key)/sizeof(pkeystruct)][16];
-
-char *default_prefs[] =
- {
- "ASSOC_DATA 2,3,4",
- "ASSOC_NAME sky.list",
- "ASSOC_PARAMS 2,3,4",
- "ASSOC_RADIUS 2.0",
- "ASSOC_TYPE MAG_SUM",
- "ASSOCSELEC_TYPE MATCHED",
- "BACK_FILTTHRESH 0.0",
- "BACK_TYPE AUTO",
- "BACK_VALUE 0.0",
- "BACKPHOTO_THICK 24",
- "BACKPHOTO_TYPE GLOBAL",
- "CHECKIMAGE_NAME check.fits",
- "CHECKIMAGE_TYPE NONE",
- "DETECT_TYPE CCD",
- "FILTER_THRESH ",
- "FITS_UNSIGNED N",
- "FLAG_IMAGE flag.fits",
- "FLAG_TYPE OR",
- "INTERP_MAXXLAG 16",
- "INTERP_MAXYLAG 16",
- "INTERP_TYPE ALL",
- "MAMA_CORFLEX 3.3e-5",
- "MASK_TYPE CORRECT",
- "PHOT_AUTOAPERS 0.0,0.0",
- "PHOT_FLUXFRAC 0.5",
- "PSF_NAME default.psf",
- "PSF_NMAX 11",
- "PSFDISPLAY_TYPE SPLIT",
- "SOM_NAME default.som",
- "THRESH_TYPE RELATIVE",
- "VERBOSE_TYPE NORMAL",
- "WEIGHT_GAIN Y",
- "WEIGHT_IMAGE weight.fits",
- "WEIGHT_TYPE NONE",
- "WEIGHT_THRESH ",
- ""
- };
-
diff --git a/external/sextractor/source/psf.c b/external/sextractor/source/psf.c
deleted file mode 100644
index 2fa2417..0000000
--- a/external/sextractor/source/psf.c
+++ /dev/null
@@ -1,1159 +0,0 @@
- /*
- psf.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Fit the PSF to a detection.
-*
-* Last modify: 12/11/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "check.h"
-#include "filter.h"
-#include "image.h"
-#include "poly.h"
-#include "psf.h"
-
-/*------------------------------- variables ---------------------------------*/
-
-
-extern keystruct objkey[];
-extern objstruct outobj;
-extern obj2struct outobj2;
-
-/********************************* psf_init **********************************/
-/*
-Allocate memory and stuff for the PSF-fitting.
-*/
-void psf_init(psfstruct *psf)
- {
- QMALLOC(thepsfit, psfitstruct, 1);
- QMALLOC(thepsfit->x, float, prefs.psf_npsfmax);
- QMALLOC(thepsfit->y, float, prefs.psf_npsfmax);
- QMALLOC(thepsfit->flux, float, prefs.psf_npsfmax);
-
- return;
- }
-
-
-/********************************* psf_end ***********************************/
-/*
-Free memory occupied by the PSF-fitting stuff.
-*/
-void psf_end(psfstruct *psf)
- {
- int i, d, ndim;
-
- if (psf->pc)
- pc_end(psf->pc);
-
- ndim = psf->poly->ndim;
- for (d=0; d<ndim; d++)
- free(psf->contextname[d]);
- free(psf->context);
- free(psf->contextname);
- free(psf->contextoffset);
- free(psf->contextscale);
- free(psf->contexttyp);
- poly_end(psf->poly);
- free(psf->maskcomp);
- free(psf->maskloc);
- free(psf->masksize);
- free(psf);
-
- free(thepsfit->x);
- free(thepsfit->y);
- free(thepsfit->flux);
- free(thepsfit);
-
- return;
- }
-
-
-/********************************* psf_load *********************************/
-/*
-Read the PSF data from a FITS file.
-*/
-psfstruct *psf_load(char *filename)
- {
- static objstruct saveobj;
- static obj2struct saveobj2;
- psfstruct *psf;
- catstruct *cat;
- tabstruct *tab;
- keystruct *key;
- char *head, *ci,*co;
- int deg[POLY_MAXDIM], group[POLY_MAXDIM], ndim, ngroup,
- i,k;
-
-/* Open the cat (well it is not a "cat", but simply a FITS file */
- if (!(cat = read_cat(filename)))
- error(EXIT_FAILURE, "*Error*: PSF file not found: ", filename);
-
-/* OK, we now allocate memory for the PSF structure itself */
- QCALLOC(psf, psfstruct, 1);
-
-/* Store a short copy of the PSF filename */
- if (ci=strrchr(filename, '/'))
- strcpy(psf->name, ci+1);
- else
- strcpy(psf->name, filename);
-
- if (!(tab = name_to_tab(cat, "PSF_DATA", 0)))
- error(EXIT_FAILURE, "*Error*: PSF_DATA table not found in catalog ",
- filename);
-
- head = tab->headbuf;
-
-/*-- Dimension of the polynomial */
- if (fitsread(head, "POLNAXIS", &ndim, H_INT,T_LONG) == RETURN_OK
- && ndim)
- {
-/*-- So we have a polynomial description of the PSF variations */
- if (ndim > POLY_MAXDIM)
- {
- sprintf(gstr, "*Error*: The POLNAXIS parameter in %s exceeds %d",
- psf->name, POLY_MAXDIM);
- error(EXIT_FAILURE, gstr, "");
- }
-
- QMALLOC(psf->contextname, char *, ndim);
- QMALLOC(psf->context, double *, ndim);
- QMALLOC(psf->contexttyp, t_type, ndim);
- QMALLOC(psf->contextoffset, double, ndim);
- QMALLOC(psf->contextscale, double, ndim);
-
-/*-- We will have to use the outobj structs, so we first save their content */
- saveobj = outobj;
- saveobj2 = outobj2;
-/*-- outobj's are used as FLAG arrays, so we initialize them to 0 */
- memset(&outobj, 0, sizeof(outobj));
- memset(&outobj2, 0, sizeof(outobj2));
- for (i=0; i<ndim; i++)
- {
-/*---- Polynomial groups */
- sprintf(gstr, "POLGRP%1d", i+1);
- if (fitsread(head, gstr, &group[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
-
-/*---- Contexts */
- QMALLOC(psf->contextname[i], char, 80);
- sprintf(gstr, "POLNAME%1d", i+1);
- if (fitsread(head,gstr,psf->contextname[i],H_STRING,T_STRING)!=RETURN_OK)
- goto headerror;
- if (*psf->contextname[i]==(char)':')
-/*------ It seems we're facing a FITS header parameter */
- psf->context[i] = NULL; /* This is to tell we'll have to load */
- /* a FITS header context later on */
- else
-/*------ The context element is a dynamic object parameter */
- {
- if ((k = findkey(psf->contextname[i], (char *)objkey,
- sizeof(keystruct)))==RETURN_ERROR)
- {
- sprintf(gstr, "*Error*: %s CONTEXT parameter in %s unknown",
- psf->contextname[i], psf->name);
- error(EXIT_FAILURE, gstr, "");
- }
- key = objkey+k;
- psf->context[i] = key->ptr;
- psf->contexttyp[i] = key->ttype;
-/*------ Declare the parameter "active" to trigger computation by SExtractor */
- *((char *)key->ptr) = (char)'\1';
- }
-/*---- Scaling of the context parameter */
- sprintf(gstr, "POLZERO%1d", i+1);
- if (fitsread(head, gstr, &psf->contextoffset[i], H_EXPO, T_DOUBLE)
- !=RETURN_OK)
- goto headerror;
- sprintf(gstr, "POLSCAL%1d", i+1);
- if (fitsread(head, gstr, &psf->contextscale[i], H_EXPO, T_DOUBLE)
- !=RETURN_OK)
- goto headerror;
- }
-
-/*-- Number of groups */
- if (fitsread(head, "POLNGRP ", &ngroup, H_INT, T_LONG) != RETURN_OK)
- goto headerror;
-
- for (i=0; i<ngroup; i++)
- {
-/*---- Polynomial degree for each group */
- sprintf(gstr, "POLDEG%1d", i+1);
- if (fitsread(head, gstr, °[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
- }
-
- psf->poly = poly_init(group, ndim, deg, ngroup);
-
-/*-- Update the permanent FLAG arrays (that is, perform an "OR" on them) */
- for (ci=(char *)&outobj,co=(char *)&flagobj,i=sizeof(objstruct); i--;)
- *(co++) |= *(ci++);
- for (ci=(char *)&outobj2,co=(char *)&flagobj2,i=sizeof(obj2struct); i--;)
- *(co++) |= *(ci++);
-
-/*-- Restore previous outobj contents */
- outobj = saveobj;
- outobj2 = saveobj2;
- }
- else
- {
-/*-- This is a simple, constant PSF */
- psf->poly = poly_init(group, 0, deg, 0);
- psf->context = NULL;
- }
-
-/* Dimensionality of the PSF mask */
- if (fitsread(head, "PSFNAXIS", &psf->maskdim, H_INT, T_LONG) != RETURN_OK)
- goto headerror;
- if (psf->maskdim<2 || psf->maskdim>3)
- error(EXIT_FAILURE, "*Error*: wrong dimensionality for the PSF "
- "mask in ", filename);
- QMALLOC(psf->masksize, int, psf->maskdim);
- for (i=0; i<psf->maskdim; i++)
- psf->masksize[i] = 1;
- psf->masknpix = 1;
- for (i=0; i<psf->maskdim; i++)
- {
- sprintf(gstr, "PSFAXIS%1d", i+1);
- if (fitsread(head, gstr, &psf->masksize[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
- psf->masknpix *= psf->masksize[i];
- }
-
-/* PSF FWHM: defaulted to 3 pixels */
- if (fitsread(head, "PSF_FWHM", &psf->fwhm, H_FLOAT,T_DOUBLE) != RETURN_OK)
- psf->fwhm = 3.0;
-
-/* PSF oversampling: defaulted to 1 */
- if (fitsread(head, "PSF_SAMP", &psf->pixstep,H_FLOAT,T_FLOAT) != RETURN_OK)
- psf->pixstep = 1.0;
-
-/* Load the PSF mask data */
- key = read_key(tab, "PSF_MASK");
- psf->maskcomp = key->ptr;
-
- psf->pc = pc_load(cat);
-
- QMALLOC(psf->maskloc, double, psf->masksize[0]*psf->masksize[1]);
-
-/* But don't touch my arrays!! */
- blank_keys(tab);
-
- free_cat(cat, 1);
-
- return psf;
-
-headerror:
- error(EXIT_FAILURE, "*Error*: Incorrect or obsolete PSF data in ", filename);
- }
-
-
-/***************************** psf_readcontext *******************************/
-/*
-Read the PSF context parameters in the FITS header.
-*/
-void psf_readcontext(psfstruct *psf, picstruct *field)
- {
- static double contextval[POLY_MAXDIM];
- int i, ndim;
-
- ndim = psf->poly->ndim;
- for (i=0; i<ndim; i++)
- if (!psf->context[i])
- {
- psf->context[i] = &contextval[i];
- psf->contexttyp[i] = T_DOUBLE;
- if (fitsread(field->fitshead, psf->contextname[i]+1, &contextval[i],
- H_FLOAT,T_DOUBLE) == RETURN_ERROR)
- {
- sprintf(gstr, "*Error*: %s parameter not found in the header of ",
- psf->contextname[i]+1);
- error(EXIT_FAILURE, gstr, field->rfilename);
- }
- }
-
- return;
- }
-
-
-/******************************** psf_fit ***********************************/
-void psf_fit(psfstruct *psf, picstruct *field, picstruct *wfield,
- objstruct *obj)
- {
- checkstruct *check;
- static double x2[PSF_NPSFMAX],y2[PSF_NPSFMAX],xy[PSF_NPSFMAX],
- sum[PSF_NPSFMAX], deltax[PSF_NPSFMAX],
- deltay[PSF_NPSFMAX],flux[PSF_NPSFMAX],
- deltaxb[PSF_NPSFMAX],deltayb[PSF_NPSFMAX],
- fluxb[PSF_NPSFMAX],
- sol[PSF_NTOT], covmat[PSF_NTOT*PSF_NTOT],
- vmat[PSF_NTOT*PSF_NTOT], wmat[PSF_NTOT];
- double **psfmasks, **psfmaskx,**psfmasky,
- *data, *data2, *data3, *weight, *mat, *checkdata,
- *d, *m, *w, *ps,*dps,*pps,*px, *py,
- dx,dy, x1,y1, mx,my,mflux,pix,pix2, wthresh,val,dflux,
- backnoise2, gain, radmin2,radmax2,satlevel, chi2, mr,
- r2, valmax, psf_fwhm;
- float *dh, *wh,
- pixstep;
- PIXTYPE *datah, *weighth, *cpix;
- int i,j,k,p, npsf,npsfmax, npix, nppix, ix,iy,niter,
- width, height, pwidth,pheight,hw,hh,
- x,y,yb,xmax,ymax, wbad, gainflag, convflag, npsfflag,
- ival;
-
- npsfmax = prefs.psf_npsfmax;
- pixstep = 1.0/psf->pixstep;
- gain = prefs.gain;
- backnoise2 = field->backsig*field->backsig;
- satlevel = prefs.satur_level - obj->bkg;
- wthresh = wfield?wfield->weight_thresh:BIG;
- gainflag = prefs.weightgain_flag;
- psf_fwhm = psf->fwhm*psf->pixstep;
-
-/* Initialize outputs */
- thepsfit->niter = 0;
- thepsfit->npsf = 0;
- for (j=0; j<npsfmax; j++)
- {
- thepsfit->x[j] = 999999.0;
- thepsfit->y[j] = 999999.0;
- thepsfit->flux[j] = 0.0;
- }
-
-/* Scale data area with object "size" */
- ix = (obj->xmax+obj->xmin+1)/2;
- iy = (obj->ymax+obj->ymin+1)/2;
- width = obj->xmax-obj->xmin+1+psf_fwhm;
- if (width < (ival=(int)(psf_fwhm*2)))
- width = ival;
- height = obj->ymax-obj->ymin+1+psf_fwhm;
- if (height < (ival=(int)(psf_fwhm*2)))
- height = ival;
- npix = width*height;
- radmin2 = PSF_MINSHIFT*PSF_MINSHIFT;
- radmax2 = npix/2.0;
-
-/* Scale total area with PSF FWHM */
- pwidth = (int)(psf->masksize[0]*psf->pixstep)+width;;
- pheight = (int)(psf->masksize[1]*psf->pixstep)+height;
- nppix = pwidth*pheight;
-
-/* Allocate working space */
- QMALLOC(weighth, PIXTYPE, npix);
- QMALLOC(weight, double, npix);
- QMALLOC(datah, PIXTYPE, npix);
- QMALLOC(data, double, npix);
- QMALLOC(data2, double, npix);
- QMALLOC(data3, double, npix);
- QMALLOC(mat, double, npix*PSF_NTOT);
- if (prefs.check[CHECK_SUBPSFPROTOS] || prefs.check[CHECK_PSFPROTOS]
- || prefs.check[CHECK_SUBPCPROTOS] || prefs.check[CHECK_PCPROTOS]
- || prefs.check[CHECK_PCOPROTOS])
- {
- QMALLOC(checkdata, double, nppix);
- QMALLOC(checkmask, PIXTYPE, nppix);
- }
-
- QMALLOC(psfmasks, double *, npsfmax);
- QMALLOC(psfmaskx, double *, npsfmax);
- QMALLOC(psfmasky, double *, npsfmax);
- for (i=0; i<npsfmax; i++)
- {
- QMALLOC(psfmasks[i], double, npix);
- QMALLOC(psfmaskx[i], double, npix);
- QMALLOC(psfmasky[i], double, npix);
- }
-
- copyimage(field, datah, width, height, ix, iy);
-
-/* Compute weights */
- wbad = 0;
- if (wfield)
- {
- copyimage(wfield, weighth, width, height, ix, iy);
- for (wh=weighth, w=weight, dh=datah,p=npix; p--;)
- if ((pix=*(wh++)) < wthresh && pix>0
- && (pix2=*(dh++))>-BIG
- && pix2<satlevel)
- *(w++) = 1/sqrt(pix+(pix2>0.0?
- (gainflag? pix2*pix/backnoise2:pix2)/gain
- :0.0));
- else
- {
- *(w++) = 0.0;
- wbad++;
- }
- }
- else
- for (w=weight, dh=datah, p=npix; p--;)
- if ((pix=*(dh++))>-BIG && pix<satlevel)
- *(w++) = 1.0/sqrt(backnoise2+(pix>0.0?pix/gain:0.0));
- else
- {
- *(w++) = 0.0;
- wbad++;
- }
-
-/* Special action if most of the weights are zero!! */
- if (wbad>=npix-3)
- return;
-
-/* Weight the data */
- dh = datah;
- val = obj->dbkg; /* Take into account a local background change */
- d = data;
- w = weight;
- for (p=npix; p--;)
- *(d++) = (*(dh++)-val)**(w++);
-
-/* Get the local PSF */
- psf_build(psf);
-
- npsfflag = 1;
- r2 = psf_fwhm*psf_fwhm/2.0;
- fluxb[0] = deltaxb[0] = deltayb[0] = 0.0;
- for (npsf=1; npsf<=npsfmax && npsfflag; npsf++)
- {
-/*-- First compute an optimum initial guess for the positions of components */
- if (npsf>1)
- {
-/*---- Subtract previously fitted components */
- d = data2;
- dh = datah;
- for (p=npix; p--;)
- *(d++) = (double)*(dh++);
- for (j=0; j<npsf-1; j++)
- {
- d = data2;
- ps = psfmasks[j];
- for (p=npix; p--;)
- *(d++) -= flux[j]**(ps++);
- }
- convolve_image(field, data2, data3, width,height);
-/*---- Ignore regions too close to stellar cores */
- for (j=0; j<npsf-1; j++)
- {
- d = data3;
- dy = -((double)(height/2)+deltay[j]);
- for (y=height; y--; dy += 1.0)
- {
- dx = -((double)(width/2)+deltax[j]);
- for (x=width; x--; dx+= 1.0, d++)
- if (dx*dx+dy*dy<r2)
- *d = -BIG;
- }
- }
-/*---- Now find the brightest pixel (poor man's guess, to be refined later) */
- d = data3;
- valmax = -BIG;
- xmax = width/2;
- ymax = height/2;
- for (y=0; y<height; y++)
- for (x=0; x<width; x++)
- {
- if ((val = *(d++))>valmax)
- {
- valmax = val;
- xmax = x;
- ymax = y;
- }
- }
- deltax[npsf-1] = (double)(xmax - width/2);
- deltay[npsf-1] = (double)(ymax - height/2);
- }
- else
- {
-/*---- Only one component to fit: simply use the barycenter as a guess */
- deltax[npsf-1] = obj->mx - ix;
- deltay[npsf-1] = obj->my - iy;
- }
- niter = 0;
- convflag = 1;
- for (i=0; i<PSF_NITER && convflag; i++)
- {
- convflag = 0;
- niter++;
- m = mat;
- for (j=0; j<npsf; j++)
- {
-/*------ Resample the PSFs here for the 1st iteration */
- vignet_resample(psf->maskloc, psf->masksize[0], psf->masksize[1],
- psfmasks[j], width, height,
- -deltax[j]*pixstep, -deltay[j]*pixstep,
- pixstep);
-/*------ 0th order (weighted) */
- ps = psfmasks[j];
- w = weight;
- for (y=0; y<height; y++)
- for (x=0; x<width; x++, ps++, w++)
- *(m++) = y?(y>=(height-1)?0:(x?(x>=(width-1)?0:*ps**w):0)):0;
-/*------ 1st order (weighted) moment in x */
- ps = psfmasks[j];
- px = psfmaskx[j];
- w = weight;
- for (y=0; y<height; y++)
- for (x=0; x<width; x++, ps++, w++)
- *(m++) = ((*px++) = (x?(x>=(width-1)?0:*(ps+1)-*(ps-1)):0))**w/2;
-/*------ 1st order (weighted) moment in y */
- ps = psfmasks[j];
- py = psfmasky[j];
- w = weight;
- for (y=0; y<height; y++)
- for (x=0; x<width; x++, ps++, w++)
- *(m++) = (*(py++)=(y?(y>=(height-1)?0:*(ps+width)-*(ps-width)):0))
- **w/2;
- }
-
- svdfit(mat, data, npix, npsf*PSF_NA, sol, vmat, wmat);
-
- for (j=0; j<npsf; j++)
- {
- flux[j] = sol[j*PSF_NA];
-/*------ Update the PSF shifts */
- if (fabs(flux[j])>0.0)
- {
- dx = -sol[j*PSF_NA+1]/((npsf>1?2:1)*flux[j]);
- dy = -sol[j*PSF_NA+2]/((npsf>1?2:1)*flux[j]);
- }
-
- deltax[j] += dx;
- deltay[j] += dy;
-/*------ Continue until all PSFs have come to a complete stop */
- if ((dx*dx+dy*dy) > radmin2)
- convflag = 1;
-
-/*------ Exit if too much decentering or negative flux */
- for (k=j+1; k<npsf; k++)
- {
- dx = deltax[j]-deltax[k];
- dy = deltay[j]-deltay[k];
- if (dx*dx+dy*dy<r2/4.0)
- {
- flux[j] = -BIG;
- break;
-
- }
- }
- if (flux[j]<0.0
- || (deltax[j]*deltax[j] + deltay[j]*deltay[j]) > radmax2)
- {
- npsfflag = 0;
- convflag = 0;
- npsf--;
- break;
- }
- }
- }
- if (npsfflag)
- {
-/*--- If we reach this point we know the data are worth backuping */
- for (j=0; j<npsf; j++)
- {
- deltaxb[j] = deltax[j];
- deltayb[j] = deltay[j];
- fluxb[j] = flux[j];
- }
- }
- }
-
- npsf--;
-/* Now keep only fitted stars that fall within the current detection area */
- i = 0;
- for (j=0; j<npsf; j++)
- {
- x = (int)(deltaxb[j]+0.4999)+width/2;
- y = (int)(deltayb[j]+0.4999)+height/2;
- if (x<0 || x>=width || y<0 || y>=height)
- continue;
- if (weight[y*width+x] < 1/BIG)
- continue;
- deltax[i] = deltaxb[j];
- deltay[i] = deltayb[j];
- flux[i++] = fluxb[j];
- }
- npsf = i;
-
-/* Compute chi2 if asked to */
-/*
- if (FLAG(obj2.chi2_psf))
- {
- chi2 = 0.0;
- val = obj2->flux_psf;
- for (d=data,w=weight,p=0; p<npix; p++)
- {
- pix = *(d++);
- val = *(w++);
- for (j=0; j<npsf; j++)
- pix -= psfmasks[j][p]*flux[j];
- chi2 += pix*pix;
- obj2->chi2_psf = chi2/(npix - 3*npsf);
- }
- }
-*/
-/* Error estimates on parameters */
-/*
- if (FLAG(obj2.fluxerr_psf))
- {
- double *var, vara,varb,covab;
-
--- Compute variances and covariances if asked to
- svdvar(vmat, wmat, npsf*PSF_NA, covmat);
- var = covmat;
- for (j=0; j<npsf; j++)
- {
----- First, the error on the flux estimate
- obj2->fluxerr_psf = sqrt(*var);
- if (FLAG(obj2.poserrmx2_psf))
- {
------- Variances and covariance along x and y
- vara = *(var += PSF_NA+1);
- covab = *(++var);
- varb = *(var += PSF_NA);
- var += PSF_NA+1;
- obj2->poserrmx2_psf = (vara*x2[j]*x2[j]+varb*xy[j]*xy[j]
- +2*covab*x2[j]*xy[j])/(sol[0]*sol[0]);
- obj2->poserrmy2_psf = (varb*y2[j]*y2[j]+vara*xy[j]*xy[j]
- +2*covab*y2[j]*xy[j])/(sol[0]*sol[0]);
- obj2->poserrmxy_psf = (vara*x2[j]*xy[j]+varb*y2[j]*xy[j]
- +covab*(x2[j]*y2[j]+xy[j]*xy[j]))
- /(sol[0]*sol[0]);
-
------- If requested, translate variances to major and minor error axes...
- if (FLAG(obj2.poserra_psf))
- {
- double pmx2,pmy2,temp,theta;
-
- if (fabs(temp=obj2->poserrmx2_psf-obj2->poserrmy2_psf) > 0.0)
- theta = atan2(2.0 * obj2->poserrmxy_psf,temp) / 2.0;
- else
- theta = PI/4.0;
-
- temp = sqrt(0.25*temp*temp+obj2->poserrmxy_psf*obj2->poserrmxy_psf);
- pmy2 = pmx2 = 0.5*(obj2->poserrmx2_psf+obj2->poserrmy2_psf);
- pmx2+=temp;
- pmy2-=temp;
-
- obj2->poserra_psf = (float)sqrt(pmx2);
- obj2->poserrb_psf = (float)sqrt(pmy2);
- obj2->poserrtheta_psf = theta*180.0/PI;
- }
-
------- ...Or ellipse parameters
- if (FLAG(obj2.poserr_cxx))
- {
- double xm2,ym2, xym, temp;
-
- xm2 = obj2->poserrmx2_psf;
- ym2 = obj2->poserrmy2_psf;
- xym = obj2->poserrmxy_psf;
- obj2->poserrcxx_psf = (float)(ym2/(temp=xm2*ym2-xym*xym));
- obj2->poserrcyy_psf = (float)(xm2/temp);
- obj2->poserrcxy_psf = (float)(-2*xym/temp);
- }
- }
- else
- var += 3*PSF_NA+3;
- }
- }
-
-/* CHECK images */
- if (prefs.check[CHECK_SUBPSFPROTOS] || prefs.check[CHECK_PSFPROTOS])
- for (j=0; j<npsf; j++)
- {
- vignet_resample(psf->maskloc, psf->masksize[0], psf->masksize[1],
- checkdata, pwidth, pheight,
- -deltax[j]*pixstep, -deltay[j]*pixstep, pixstep);
- cpix = checkmask;
- d = checkdata;
- for (p=nppix; p--;)
- *(cpix++) = (PIXTYPE)*(d++);
- if (check = prefs.check[CHECK_SUBPSFPROTOS])
- addcheck(check, checkmask, pwidth,pheight, ix,iy,-flux[j]);
- if (check = prefs.check[CHECK_PSFPROTOS])
- addcheck(check, checkmask, pwidth,pheight, ix,iy,flux[j]);
- }
-
- thepsfit->niter = niter;
- thepsfit->npsf = npsf;
- for (j=0; j<npsf; j++)
- {
- thepsfit->x[j] = ix+deltax[j]+1.0;
- thepsfit->y[j] = iy+deltay[j]+1.0;
- thepsfit->flux[j] = flux[j];
- }
-
-/* Now the morphology stuff */
- if (prefs.pc_flag)
- {
- width = pwidth-1;
- height = pheight-1;
- npix = width*height;
- copyimage(field, datah, width, height, ix, iy);
-
-/*-- Re-compute weights */
- if (wfield)
- {
- copyimage(wfield, weighth, width, height, ix, iy);
- for (wh=weighth ,w=weight, p=npix; p--;)
- *(w++) = (pix=*(wh++))<wthresh? sqrt(pix): 0.0;
- }
- else
- for (w=weight, dh=datah, p=npix; p--;)
- *(w++) = ((pix = *(dh++))>-BIG && pix<satlevel)?
- 1.0/sqrt(backnoise2+(pix>0.0?pix/gain:0.0))
- :0.0;
-
-/*-- Weight the data */
- dh = datah;
- d = data;
- w = weight;
- for (p=npix; p--;)
- *(d++) = *(dh++)*(*(w++));
-
- pc_fit(psf, data, weight, width, height, ix,iy, dx,dy, npix,
- field->backsig);
-
- }
-
- for (i=0; i<npsfmax; i++)
- {
- QFREE(psfmasks[i]);
- QFREE(psfmaskx[i]);
- QFREE(psfmasky[i]);
- }
-
- QFREE(psfmasks);
- QFREE(psfmaskx);
- QFREE(psfmasky);
- QFREE(datah);
- QFREE(data);
- QFREE(data2);
- QFREE(data3);
- QFREE(weighth);
- QFREE(weight);
- QFREE(data);
- QFREE(mat);
-
- if (prefs.check[CHECK_SUBPSFPROTOS] || prefs.check[CHECK_PSFPROTOS]
- || prefs.check[CHECK_SUBPCPROTOS] || prefs.check[CHECK_PCPROTOS]
- || prefs.check[CHECK_PCOPROTOS])
- {
- QFREE(checkdata);
- QFREE(checkmask);
- }
-
- return;
- }
-
-
-/******************************* psf_build **********************************/
-/*
-Build the local PSF (function of "context").
-*/
-void psf_build(psfstruct *psf)
- {
- static double pos[POLY_MAXDIM];
- double *pl, *basis, fac;
- float *ppc;
- int i,n,p, ndim, npix;
-
- npix = psf->masksize[0]*psf->masksize[1];
-
-/* Reset the Local PSF mask */
- memset(psf->maskloc, 0, npix*sizeof(double));
-
-/* Grab the context vector */
- ndim = psf->poly->ndim;
- for (i=0; i<ndim; i++)
- pos[i] = (*(double *)ttypeconv(psf->context[i],psf->contexttyp[i],T_DOUBLE)
- - psf->contextoffset[i]) / psf->contextscale[i];
-
- poly_func(psf->poly, pos);
-
- basis = psf->poly->basis;
-
- ppc = psf->maskcomp;
-/* Sum each component */
- for (n = (psf->maskdim>2?psf->masksize[2]:1); n--;)
- {
- pl = psf->maskloc;
- fac = *(basis++);
- for (p=npix; p--;)
- *(pl++) += fac**(ppc++);
- }
-
- return;
- }
-
-
-/******************************** svdfit ************************************/
-/*
-General least-square fit A.x = b, based on Singular Value Decomposition (SVD).
-Loosely adapted from Numerical Recipes in C, 2nd Ed. (p. 671).
-Note: the a and v matrices are transposed with respect to the N.R. convention.
-*/
-void svdfit(double *a, double *b, int m, int n, double *sol,
- double *vmat, double *wmat)
- {
-#define MAX(a,b) (maxarg1=(a),maxarg2=(b),(maxarg1) > (maxarg2) ?\
- (maxarg1) : (maxarg2))
-#define PYTHAG(a,b) ((at=fabs(a)) > (bt=fabs(b)) ? \
- (ct=bt/at,at*sqrt(1.0+ct*ct)) \
- : (bt ? (ct=at/bt,bt*sqrt(1.0+ct*ct)): 0.0))
-#define SIGN(a,b) ((b) >= 0.0 ? fabs(a) : -fabs(a))
-#define TOL 1.0e-11
-
- int flag,i,its,j,jj,k,l,nm,mmi,nml;
- double c,f,h,s,x,y,z,
- anorm, g, scale,
- at,bt,ct,maxarg1,maxarg2,
- thresh, wmax,
- *w,*ap,*ap0,*ap1,*ap10,*rv1p,*vp,*vp0,*vp1,*vp10,
- *bp,*tmpp, *rv1,*tmp;
-
- anorm = g = scale = 0.0;
- if (m < n)
- error(EXIT_FAILURE, "*Error*: Not enough rows for solving the system ",
- "in svdfit()");
-
- QMALLOC(rv1, double, n);
- QMALLOC(tmp, double, n);
- for (i=0;i<n;i++)
- {
- l = i+1;
- nml = n-l;
- rv1[i] = scale*g;
- g = s = scale = 0.0;
- if ((mmi = m - i) > 0)
- {
- ap = ap0 = a+i*(m+1);
- for (k=mmi;k--;)
- scale += fabs(*(ap++));
- if (scale)
- {
- for (ap=ap0,k=mmi; k--; ap++)
- {
- *ap /= scale;
- s += *ap**ap;
- }
- f = *ap0;
- g = -SIGN(sqrt(s),f);
- h = f*g-s;
- *ap0 = f-g;
- ap10 = a+l*m+i;
- for (j=nml;j--; ap10+=m)
- {
- for (s=0.0,ap=ap0,ap1=ap10,k=mmi; k--;)
- s += *(ap1++)**(ap++);
- f = s/h;
- for (ap=ap0,ap1=ap10,k=mmi; k--;)
- *(ap1++) += f**(ap++);
- }
- for (ap=ap0,k=mmi; k--;)
- *(ap++) *= scale;
- }
- }
- wmat[i] = scale*g;
- g = s = scale = 0.0;
- if (i < m && i+1 != n)
- {
- ap = ap0 = a+i+m*l;
- for (k=nml;k--; ap+=m)
- scale += fabs(*ap);
- if (scale)
- {
- for (ap=ap0,k=nml;k--; ap+=m)
- {
- *ap /= scale;
- s += *ap**ap;
- }
- f=*ap0;
- g = -SIGN(sqrt(s),f);
- h=f*g-s;
- *ap0=f-g;
- rv1p = rv1+l;
- for (ap=ap0,k=nml;k--; ap+=m)
- *(rv1p++) = *ap/h;
- ap10 = a+l+m*l;
- for (j=m-l; j--; ap10++)
- {
- for (s=0.0,ap=ap0,ap1=ap10,k=nml; k--; ap+=m,ap1+=m)
- s += *ap1**ap;
- rv1p = rv1+l;
- for (ap1=ap10,k=nml;k--; ap1+=m)
- *ap1 += s**(rv1p++);
- }
- for (ap=ap0,k=nml;k--; ap+=m)
- *ap *= scale;
- }
- }
- anorm=MAX(anorm,(fabs(wmat[i])+fabs(rv1[i])));
- }
-
- for (i=n-1;i>=0;i--)
- {
- if (i < n-1)
- {
- if (g)
- {
- ap0 = a+l*m+i;
- vp0 = vmat+i*n+l;
- vp10 = vmat+l*n+l;
- g *= *ap0;
- for (ap=ap0,vp=vp0,j=nml; j--; ap+=m)
- *(vp++) = *ap/g;
- for (j=nml; j--; vp10+=n)
- {
- for (s=0.0,ap=ap0,vp1=vp10,k=nml; k--; ap+=m)
- s += *ap**(vp1++);
- for (vp=vp0,vp1=vp10,k=nml; k--;)
- *(vp1++) += s**(vp++);
- }
- }
- vp = vmat+l*n+i;
- vp1 = vmat+i*n+l;
- for (j=nml; j--; vp+=n)
- *vp = *(vp1++) = 0.0;
- }
- vmat[i*n+i]=1.0;
- g=rv1[i];
- l=i;
- nml = n-l;
- }
-
- for (i=(m<n?m:n); --i>=0;)
- {
- l=i+1;
- nml = n-l;
- mmi=m-i;
- g=wmat[i];
- ap0 = a+i*m+i;
- ap10 = ap0 + m;
- for (ap=ap10,j=nml;j--;ap+=m)
- *ap=0.0;
- if (g)
- {
- g=1.0/g;
- for (j=nml;j--; ap10+=m)
- {
- for (s=0.0,ap=ap0,ap1=ap10,k=mmi; --k;)
- s += *(++ap)**(++ap1);
- f = (s/(*ap0))*g;
- for (ap=ap0,ap1=ap10,k=mmi;k--;)
- *(ap1++) += f**(ap++);
- }
- for (ap=ap0,j=mmi;j--;)
- *(ap++) *= g;
- }
- else
- for (ap=ap0,j=mmi;j--;)
- *(ap++)=0.0;
- ++(*ap0);
- }
-
- for (k=n; --k>=0;)
- {
- for (its=0;its<100;its++)
- {
- flag=1;
- for (l=k;l>=0;l--)
- {
- nm=l-1;
- if (fabs(rv1[l])+anorm == anorm)
- {
- flag=0;
- break;
- }
- if (fabs(wmat[nm])+anorm == anorm)
- break;
- }
- if (flag)
- {
- c=0.0;
- s=1.0;
- ap0 = a+nm*m;
- ap10 = a+l*m;
- for (i=l; i<=k; i++,ap10+=m)
- {
- f=s*rv1[i];
- if (fabs(f)+anorm == anorm)
- break;
- g=wmat[i];
- h=PYTHAG(f,g);
- wmat[i]=h;
- h=1.0/h;
- c=g*h;
- s=(-f*h);
- for (ap=ap0,ap1=ap10,j=m; j--;)
- {
- z = *ap1;
- y = *ap;
- *(ap++) = y*c+z*s;
- *(ap1++) = z*c-y*s;
- }
- }
- }
- z=wmat[k];
- if (l == k)
- {
- if (z < 0.0)
- {
- wmat[k] = -z;
- vp = vmat+k*n;
- for (j=n; j--; vp++)
- *vp = (-*vp);
- }
- break;
- }
- if (its == 99)
- error(EXIT_FAILURE, "*Error*: No convergence in 100 SVD iterations ",
- "in svdfit()");
- x=wmat[l];
- nm=k-1;
- y=wmat[nm];
- g=rv1[nm];
- h=rv1[k];
- f=((y-z)*(y+z)+(g-h)*(g+h))/(2.0*h*y);
- g=PYTHAG(f,1.0);
- f=((x-z)*(x+z)+h*((y/(f+SIGN(g,f)))-h))/x;
- c=s=1.0;
- ap10 = a+l*m;
- vp10 = vmat+l*n;
- for (j=l;j<=nm;j++,ap10+=m,vp10+=n)
- {
- i=j+1;
- g=rv1[i];
- y=wmat[i];
- h=s*g;
- g=c*g;
- z=PYTHAG(f,h);
- rv1[j]=z;
- c=f/z;
- s=h/z;
- f=x*c+g*s;
- g=g*c-x*s;
- h=y*s;
- y=y*c;
- for (vp=(vp1=vp10)+n,jj=n; jj--;)
- {
- z = *vp;
- x = *vp1;
- *(vp1++) = x*c+z*s;
- *(vp++) = z*c-x*s;
- }
- z=PYTHAG(f,h);
- wmat[j]=z;
- if (z)
- {
- z=1.0/z;
- c=f*z;
- s=h*z;
- }
- f=c*g+s*y;
- x=c*y-s*g;
- for (ap=(ap1=ap10)+m,jj=m; jj--;)
- {
- z = *ap;
- y = *ap1;
- *(ap1++) = y*c+z*s;
- *(ap++) = z*c-y*s;
- }
- }
- rv1[l]=0.0;
- rv1[k]=f;
- wmat[k]=x;
- }
- }
-
- wmax=0.0;
- w = wmat;
- for (j=n;j--; w++)
- if (*w > wmax)
- wmax=*w;
- thresh=TOL*wmax;
- w = wmat;
- for (j=n;j--; w++)
- if (*w < thresh)
- *w = 0.0;
-
- w = wmat;
- ap = a;
- tmpp = tmp;
- for (j=n; j--; w++)
- {
- s=0.0;
- if (*w)
- {
- bp = b;
- for (i=m; i--;)
- s += *(ap++)**(bp++);
- s /= *w;
- }
- else
- ap += m;
- *(tmpp++) = s;
- }
-
- vp0 = vmat;
- for (j=0; j<n; j++,vp0++)
- {
- s=0.0;
- tmpp = tmp;
- for (vp=vp0,jj=n; jj--; vp+=n)
- s += *vp**(tmpp++);
- sol[j]=s;
- }
-
-/* Free temporary arrays */
- free(tmp);
- free(rv1);
-
- return;
- }
-
-#undef SIGN
-#undef MAX
-#undef PYTHAG
-#undef TOL
-
-/******************************** svdvar ************************************/
-/*
-Computation of the covariance matrix from the SVD vmat and wmat matrices.A
-dapted from Numerical Recipes in C, 2nd Ed. (p. 679).
-*/
-void svdvar(double *v, double *w, int n, double *cov)
- {
- static double wti[PSF_NTOT];
- double sum;
- int i,j,k;
-
- for (i=0; i<n; i++)
- wti[i] = w[i]? 1.0/(w[i]*w[i]) : 0.0;
-
- for (i=0; i<n; i++)
- for (j=0; j<=i; j++)
- {
- for (sum=0.0,k=0; k<n; k++)
- sum += v[k*n+i]*v[k*n+j]*wti[k];
- cov[j*n+i] = cov[i*n+j] = sum;
- }
-
- return;
- }
-
diff --git a/external/sextractor/source/psf.h b/external/sextractor/source/psf.h
deleted file mode 100644
index 5afc6df..0000000
--- a/external/sextractor/source/psf.h
+++ /dev/null
@@ -1,112 +0,0 @@
- /*
- psf.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: Include file for psffit.c.
-*
-* Last modify: 11/11/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*----------------------------- Internal constants --------------------------*/
-
-#define PSF_MAXSHIFT 20.0 /* Max shift from initial guess (pixels)*/
-#define PSF_MINSHIFT 1e-3 /* Min shift from previous guess (pixels)*/
-#define PSF_NITER 20 /* Maximum number of iterations in fit */
-#define PSF_NA 3 /* Number of fitted parameters per component */
-#define PSF_NTOT (PSF_NA*PSF_NPSFMAX) /* Number of fitted parameters */
-#define PC_NITER 1 /* Maximum number of iterations in PC fit */
-
-/* NOTES:
-One must have: PSF_MAXSHIFT > 0.0
- PSF_NPSF >= 1
- PSF_NITER >= 1
-*/
-
-/*--------------------------- structure definitions -------------------------*/
-
-typedef struct code
- {
- float *pc;
- float **param;
- int *parammod;
- int ncode;
- int nparam;
- } codestruct;
-
-typedef struct pc
- {
- char name[MAXCHAR]; /* PC filename */
- int npc; /* Number of Principal Components */
- int maskdim; /* Dimensionality of the tabulated data */
- int *masksize; /* PC mask dimensions */
- int masknpix; /* Total number of involved PC pixels */
- float *maskcomp; /* Convolved pix data (principal components) */
- int omaskdim; /* Dimensionality of the tabulated data */
- int *omasksize; /* PC mask dimensions */
- int omasknpix; /* Total number of involved PC pixels */
- float *omaskcomp; /* Original pix data (principal components) */
- double *maskcurr; /* Current model */
- double *mx2,*my2,*mxy; /* 2nd order moments for each component */
- double *flux; /* Flux of each component */
- double *bt; /* B/T for each component */
- codestruct *code;
- } pcstruct;
-
-typedef struct
- {
- char name[MAXCHAR]; /* Name of the file containing the PSF data */
- int maskdim; /* Dimensionality of the tabulated data */
- int *masksize; /* PSF mask dimensions */
- int masknpix; /* Total number of involved PSF pixels */
- float *maskcomp; /* Complete pix. data (PSF components) */
- double *maskloc; /* Local PSF */
- double **context; /* Contexts */
- t_type *contexttyp; /* Context types */
- char **contextname; /* Array of context key-names */
- double *contextoffset; /* Offset to apply to context data */
- double *contextscale; /* Scaling to apply to context data */
- struct poly *poly; /* Polynom describing the PSF variations */
- pcstruct *pc; /* PC components */
- double fwhm; /* Typical PSF FWHM */
- float pixstep; /* PSF sampling step */
- } psfstruct;
-
-typedef struct
- {
- int niter; /* Number of iterations required */
- int npsf; /* Number of fitted stars for this detection */
- float *x,*y; /* Position derived from the PSF-fitting */
- float *flux; /* Flux derived from the PSF-fitting */
- } psfitstruct;
-
-/*----------------------------- Global variables ----------------------------*/
-psfstruct *thepsf;
-psfitstruct *thepsfit;
-PIXTYPE *checkmask;
-
-/*-------------------------------- functions --------------------------------*/
-extern void psf_build(psfstruct *psf),
- psf_end(psfstruct *psf),
- psf_init(psfstruct *psf),
- svdfit(double *a, double *b, int m, int n, double *sol,
- double *vmat, double *wmat),
- svdvar(double *vmat, double *wmat, int n, double *covmat);
-
-extern psfstruct *psf_load(char *filename);
-
-extern void pc_end(pcstruct *pc),
- pc_fit(psfstruct *psf, double *data, double *weight,
- int width, int height, int ix, int iy, double dx, double dy,
- int npc, float backrms),
- psf_fit(psfstruct *psf, picstruct *field, picstruct *wfield,
- objstruct *obj),
- psf_readcontext(psfstruct *psf, picstruct *field);
-
-extern pcstruct *pc_load(catstruct *cat);
diff --git a/external/sextractor/source/readimage.c b/external/sextractor/source/readimage.c
deleted file mode 100644
index 453af12..0000000
--- a/external/sextractor/source/readimage.c
+++ /dev/null
@@ -1,811 +0,0 @@
-/*
- readimage.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: functions for input of image data.
-*
-* Last modify: 06/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "wcs/wcs.h"
-#include "define.h"
-#include "globals.h"
-#include "check.h"
-#include "field.h"
-#include "fitscat.h"
-#include "interpolate.h"
-#include "back.h"
-#include "astrom.h"
-#include "weight.h"
-
-/******************************* loadstrip ***********************************/
-/*
-Load a new strip of pixel data into the buffer.
-*/
-void *loadstrip(picstruct *field, picstruct *wfield)
-
- {
- checkstruct *check;
- int y, w, flags, interpflag;
- PIXTYPE *data, *wdata, *rmsdata;
-
- w = field->width;
- flags = field->flags;
- interpflag = (wfield && wfield->interp_flag);
-
- if (!field->y)
- {
-/*- First strip */
- int nbpix;
-
- nbpix = w*field->stripheight;
-
- if (flags ^ FLAG_FIELD)
- {
-/*---- Allocate space for the frame-buffer */
- if (!(field->strip=(PIXTYPE *)malloc(field->stripheight*field->width
- *sizeof(PIXTYPE))))
- error(EXIT_FAILURE,"Not enough memory for the image buffer of ",
- field->rfilename);
-
- data = field->strip;
-/*---- We assume weight data have been read just before */
- if (interpflag)
- wdata = wfield->strip;
- if (flags & BACKRMS_FIELD)
- for (y=0, rmsdata=data; y<field->stripheight; y++, rmsdata += w)
- backrmsline(field, y, rmsdata);
- else if (flags & INTERP_FIELD)
- copydata(field, 0, nbpix);
- else
- readdata(field, data, nbpix);
- if (flags & (WEIGHT_FIELD|RMS_FIELD|BACKRMS_FIELD|VAR_FIELD))
- weight_to_var(field, data, nbpix);
- if ((flags & MEASURE_FIELD) && (check=prefs.check[CHECK_IDENTICAL]))
- writecheck(check, data, nbpix);
- for (y=0; y<field->stripheight; y++, data += w)
- {
-/*------ This is the only place where one can pick-up safely the current bkg */
- if (flags & (MEASURE_FIELD|DETECT_FIELD))
- subbackline(field, y, data);
-/*------ Go to interpolation process */
- if (interpflag)
- {
- interpolate(field,wfield, data, wdata);
- wdata += w;
- }
-/*------ Check-image stuff */
- if (prefs.check_flag)
- {
- if (flags & MEASURE_FIELD)
- {
- if (check = prefs.check[CHECK_BACKGROUND])
- writecheck(check, field->backline, w);
- if (check = prefs.check[CHECK_SUBTRACTED])
- writecheck(check, data, w);
- if (check = prefs.check[CHECK_APERTURES])
- writecheck(check, data, w);
- if (check = prefs.check[CHECK_SUBPSFPROTOS])
- writecheck(check, data, w);
- if (check = prefs.check[CHECK_SUBPCPROTOS])
- writecheck(check, data, w);
- }
- if ((flags&DETECT_FIELD) && (check=prefs.check[CHECK_BACKRMS]))
- {
- backrmsline(field, y, (PIXTYPE *)check->pix);
- writecheck(check, check->pix, w);
- }
- }
- }
- }
- else
- {
- if (!(field->fstrip=(FLAGTYPE *)malloc(field->stripheight*field->width
- *sizeof(FLAGTYPE))))
- error(EXIT_FAILURE,"Not enough memory for the flag buffer of ",
- field->rfilename);
- readidata(field, field->fstrip, nbpix);
- }
-
- field->ymax = field->stripheight;
- if (field->ymax < field->height)
- field->stripysclim = field->stripheight - field->stripmargin;
- }
- else
- {
-/*- other strips */
- if (flags ^ FLAG_FIELD)
- {
- data = field->strip + field->stripylim*w;
-/*---- We assume weight data have been read just before */
- if (interpflag)
- wdata = wfield->strip + field->stripylim*w;
-
-/*---- copy to Check-image the "oldest" line before it is replaced */
- if ((flags & MEASURE_FIELD) && (check=prefs.check[CHECK_SUBOBJECTS]))
- writecheck(check, data, w);
-
- if (flags & BACKRMS_FIELD)
- backrmsline(field, field->ymax, data);
- else if (flags & INTERP_FIELD)
- copydata(field, field->stripylim*w, w);
- else
- readdata(field, data, w);
- if (flags & (WEIGHT_FIELD|RMS_FIELD|BACKRMS_FIELD|VAR_FIELD))
- weight_to_var(field, data, w);
-
- if ((flags & MEASURE_FIELD) && (check=prefs.check[CHECK_IDENTICAL]))
- writecheck(check, data, w);
-/*---- Interpolate and subtract the background at current line */
- if (flags & (MEASURE_FIELD|DETECT_FIELD))
- subbackline(field, field->ymax, data);
- if (interpflag)
- interpolate(field,wfield, data, wdata);
-/*---- Check-image stuff */
- if (prefs.check_flag)
- {
- if (flags & MEASURE_FIELD)
- {
- if (check = prefs.check[CHECK_BACKGROUND])
- writecheck(check, field->backline, w);
- if (check = prefs.check[CHECK_SUBTRACTED])
- writecheck(check, data, w);
- if (check = prefs.check[CHECK_APERTURES])
- writecheck(check, data, w);
- if (check = prefs.check[CHECK_SUBPSFPROTOS])
- writecheck(check, data, w);
- if (check = prefs.check[CHECK_SUBPCPROTOS])
- writecheck(check, data, w);
- }
- if ((flags&DETECT_FIELD) && (check=prefs.check[CHECK_BACKRMS]))
- {
- backrmsline(field, field->ymax, (PIXTYPE *)check->pix);
- writecheck(check, check->pix, w);
- }
- }
- }
- else
- readidata(field, field->fstrip + field->stripylim*w, w);
-
- field->stripylim = (++field->ymin)%field->stripheight;
- if ((++field->ymax)<field->height)
- field->stripysclim = (++field->stripysclim)%field->stripheight;
- }
-
- return (flags ^ FLAG_FIELD)?
- (void *)(field->strip + field->stripy*w)
- : (void *)(field->fstrip + field->stripy*w);
- }
-
-
-/******************************** copydata **********************************/
-/*
-Copy image data from one field to the other.
-*/
-void copydata(picstruct *field, int offset, int size)
- {
- memcpy(field->strip+offset, field->reffield->strip+offset,
- size*sizeof(PIXTYPE));
- return;
- }
-
-
-/******************************** readdata **********************************/
-/*
-read and convert input data stream in PIXTYPE (float) format.
-*/
-void readdata(picstruct *field, PIXTYPE *ptr, int size)
- {
- static char bufdata0[DATA_BUFSIZE];
- char *bufdata;
- short val16;
- int i, bowl, spoonful, npix, curval, dval;
- PIXTYPE bs,bz;
-
- bs = (PIXTYPE)field->bscale;
- bz = (PIXTYPE)field->bzero;
- switch(field->compress_type)
- {
-/*-- Uncompressed image */
- case COMPRESS_NONE:
- bowl = DATA_BUFSIZE/field->bytepix;
- spoonful = size<bowl?size:bowl;
- for(; size>0; size -= spoonful)
- {
- if (spoonful>size)
- spoonful = size;
- bufdata = bufdata0;
- QFREAD(bufdata, spoonful*field->bytepix, field->file,field->filename);
- switch(field->bitpix)
- {
- case BP_BYTE:
- if (field->bitsgn)
- for (i=spoonful; i--;)
- *(ptr++) = *(bufdata++)*bs + bz;
- else
- for (i=spoonful; i--;)
- *(ptr++) = *((unsigned char *)bufdata++)*bs + bz;
- break;
-
- case BP_SHORT:
-# ifdef BSWAP
- swapbytes(bufdata, 2, spoonful);
-# endif
- if (field->bitsgn)
- for (i=spoonful; i--; bufdata += sizeof(short))
- *(ptr++) = *((short *)bufdata)*bs + bz;
- else
- for (i=spoonful; i--; bufdata += sizeof(USHORT))
- *(ptr++) = *((USHORT *)bufdata)*bs + bz;
- break;
-
- case BP_LONG:
-# ifdef BSWAP
- swapbytes(bufdata, 4, spoonful);
-# endif
- if (field->bitsgn)
- for (i=spoonful; i--; bufdata += sizeof(LONG))
- *(ptr++) = *((LONG *)bufdata)*bs + bz;
- else
- for (i=spoonful; i--; bufdata += sizeof(ULONG))
- *(ptr++) = *((ULONG *)bufdata)*bs + bz;
- break;
-
- case BP_FLOAT:
-# ifdef BSWAP
- swapbytes(bufdata, 4, spoonful);
-# endif
- for (i=spoonful; i--; bufdata += sizeof(float))
- *(ptr++) = *((float *)bufdata)*bs + bz;
- break;
-
- case BP_DOUBLE:
-# ifdef BSWAP
- swapbytes(bufdata, 8, spoonful);
-# endif
- for (i=spoonful; i--; bufdata += sizeof(double))
- *(ptr++) = *((double *)bufdata)*bs + bz;
- break;
-
- default:
- error(EXIT_FAILURE,"*FATAL ERROR*: unknown BITPIX type in ",
- "readdata()");
- break;
- }
- }
- break;
-
-/*-- Compressed image */
- case COMPRESS_BASEBYTE:
- bufdata = field->compress_bufptr;
- curval = field->compress_curval;
- npix = field->compress_npix;
- while (size--)
- {
- if (!(npix--))
- {
- if (curval != field->compress_checkval)
- error(EXIT_FAILURE, "*Error*: invalid BASEBYTE checksum in ",
- field->filename);
- bufdata = field->compress_buf;
- QFREAD(bufdata, FBSIZE, field->file, field->filename);
- curval = 0;
-# ifdef BSWAP
- swapbytes(bufdata, 4, 1);
-# endif
- field->compress_checkval = *((int *)bufdata);
- bufdata += 4;
-# ifdef BSWAP
- swapbytes(bufdata, 2, 1);
-# endif
- npix = (int)(*((short *)bufdata))-1;
- bufdata+=2;
- }
- if ((dval=(int)*(bufdata++))==-128)
- {
-# ifdef BSWAP
- swapbytes(bufdata, 2, 1);
-# endif
- memcpy(&val16, bufdata, 2);
- dval = (int)val16;
- if (dval==-32768)
- {
- bufdata += 2;
-# ifdef BSWAP
- swapbytes(bufdata, 4, 1);
-# endif
- memcpy(&dval,bufdata,4);
- bufdata += 4;
- }
- else
- bufdata += 2;
- }
- *(ptr++) = dval*bs + bz;
- curval += dval;
- }
- field->compress_curval = curval;
- field->compress_bufptr = bufdata;
- field->compress_npix = npix;
- break;
-
- case COMPRESS_PREVPIX:
- bufdata = field->compress_bufptr;
- curval = field->compress_curval;
- npix = field->compress_npix;
- while (size--)
- {
- if (!(npix--))
- {
- if (curval != field->compress_checkval)
- error(EXIT_FAILURE, "*Error*: invalid PREV_PIX checksum in ",
- field->filename);
- bufdata = field->compress_buf;
- QFREAD(bufdata, FBSIZE, field->file, field->filename);
-# ifdef BSWAP
- swapbytes(bufdata, 2, 3);
-# endif
- curval = (int)*(short *)bufdata;
- npix = (int)*(short *)(bufdata+=2)-1;
- field->compress_checkval = (int)(*(short *)(bufdata+=2));
- bufdata+=4;
- }
- if ((dval=(int)*(bufdata++))==-128)
- {
-# ifdef BSWAP
- swapbytes(bufdata, 2, 1);
-# endif
- memcpy(&val16, bufdata, 2);
- curval = (int)val16;
- bufdata += 2;
- }
- else
- curval += dval;
- *(ptr++) = curval*bs + bz;
- }
- field->compress_curval = curval;
- field->compress_bufptr = bufdata;
- field->compress_npix = npix;
- break;
-
- default:
- error(EXIT_FAILURE,"*Internal Error*: unknown compression mode in ",
- "readdata()");
- }
-
- return;
- }
-
-
-/******************************** readidata *********************************/
-/*
-read and convert input data stream in FLAGTYPE (unsigned int) format.
-*/
-void readidata(picstruct *field, FLAGTYPE *ptr, int size)
- {
- static char bufdata0[DATA_BUFSIZE];
- char *bufdata;
- short val16;
- int i, bowl, spoonful, npix, curval, dval;
-
- switch(field->compress_type)
- {
-/*-- Uncompressed image */
- case COMPRESS_NONE:
- bowl = DATA_BUFSIZE/field->bytepix;
- spoonful = size<bowl?size:bowl;
- for(; size>0; size -= spoonful)
- {
- if (spoonful>size)
- spoonful = size;
- bufdata = bufdata0;
- QFREAD(bufdata, spoonful*field->bytepix, field->file, field->filename);
- switch(field->bitpix)
- {
- case BP_BYTE:
- for (i=spoonful; i--;)
- *(ptr++) = (FLAGTYPE)*((unsigned char *)bufdata++);
- break;
-
- case BP_SHORT:
-# ifdef BSWAP
- swapbytes(bufdata, 2, spoonful);
-# endif
- for (i=spoonful; i--; bufdata += sizeof(USHORT))
- *(ptr++) = (FLAGTYPE)*((USHORT *)bufdata);
- break;
-
- case BP_LONG:
-# ifdef BSWAP
- swapbytes(bufdata, 4, spoonful);
-# endif
- for (i=spoonful; i--; bufdata += sizeof(ULONG))
- *(ptr++) = (FLAGTYPE)*((ULONG *)bufdata);
- break;
-
- case BP_FLOAT:
- case BP_DOUBLE:
- error(EXIT_FAILURE,"*Error*: I was expecting integers in ",
- field->filename);
- break;
- default:
- error(EXIT_FAILURE,"*FATAL ERROR*: unknown BITPIX type in ",
- "readdata()");
- break;
- }
- }
- break;
-
-/*-- Compressed image */
- case COMPRESS_BASEBYTE:
- bufdata = field->compress_bufptr;
- curval = field->compress_curval;
- npix = field->compress_npix;
- while (size--)
- {
- if (!(npix--))
- {
- if (curval != field->compress_checkval)
- error(EXIT_FAILURE, "*Error*: invalid BASEBYTE checksum in ",
- field->filename);
- bufdata = field->compress_buf;
- QFREAD(bufdata, FBSIZE, field->file, field->filename);
- curval = 0;
-# ifdef BSWAP
- swapbytes(bufdata, 4, 1);
-# endif
- field->compress_checkval = *((int *)bufdata);
- bufdata += 4;
-# ifdef BSWAP
- swapbytes(bufdata, 2, 1);
-# endif
- npix = (int)(*((short *)bufdata))-1;
- bufdata+=2;
- }
- if ((dval=(int)*(bufdata++))==-128)
- {
-# ifdef BSWAP
- swapbytes(bufdata, 2, 1);
-# endif
- memcpy(&val16, bufdata, 2);
- dval = (int)val16;
- if (dval==-32768)
- {
- bufdata += 2;
-# ifdef BSWAP
- swapbytes(bufdata, 4, 1);
-# endif
- memcpy(&dval,bufdata,4);
- bufdata += 4;
- }
- else
- bufdata += 2;
- }
- *(ptr++) = (FLAGTYPE)dval;
- curval += dval;
- }
- field->compress_curval = curval;
- field->compress_bufptr = bufdata;
- field->compress_npix = npix;
- break;
-
- case COMPRESS_PREVPIX:
- bufdata = field->compress_bufptr;
- curval = field->compress_curval;
- npix = field->compress_npix;
- while (size--)
- {
- if (!(npix--))
- {
- if (curval != field->compress_checkval)
- error(EXIT_FAILURE, "*Error*: invalid PREV_PIX checksum in ",
- field->filename);
- bufdata = field->compress_buf;
- QFREAD(bufdata, FBSIZE, field->file, field->filename);
-# ifdef BSWAP
- swapbytes(bufdata, 2, 3);
-# endif
- curval = (int)*(short *)bufdata;
- npix = (int)*(short *)(bufdata+=2)-1;
- field->compress_checkval = (int)(*(short *)(bufdata+=2));
- bufdata+=4;
- }
- if ((dval=(int)*(bufdata++))==-128)
- {
-# ifdef BSWAP
- swapbytes(bufdata, 2, 1);
-# endif
- memcpy(&val16, bufdata, 2);
- curval = (int)val16;
- bufdata += 2;
- }
- else
- curval += dval;
- *(ptr++) = (FLAGTYPE)curval;
- }
- field->compress_curval = curval;
- field->compress_bufptr = bufdata;
- field->compress_npix = npix;
- break;
-
- default:
- error(EXIT_FAILURE,"*Internal Error*: unknown compression mode in ",
- "readdata()");
- }
-
- return;
- }
-
-
-/******************************* readimagehead *******************************/
-/*
-extract some data from the FITS-file header
-*/
-void readimagehead(picstruct *field)
- {
- int j,l, n;
- char *buf, st[80], str[80], *point;
-
-/* Open the file */
- if (!(field->file = fopen(field->filename, "rb")))
- error(EXIT_FAILURE,"*Error*: cannot open ", field->filename);
- buf = readfitshead(field->file, field->filename, &n);
- if(FITSTOI("NAXIS ", 0) < 2)
- error(EXIT_FAILURE, field->filename, " does NOT contain 2D-data!");
-
-/*---------------------------- Basic keywords ------------------------------*/
- field->bitpix = FITSTOI("BITPIX ", 0);
- if (field->bitpix != BP_BYTE
- && field->bitpix != BP_SHORT
- && field->bitpix != BP_LONG
- && field->bitpix != BP_FLOAT
- && field->bitpix != BP_DOUBLE)
- error(EXIT_FAILURE, "Sorry, I don't know that kind of data.", "");
-
- field->bytepix = (field->bitpix>0?field->bitpix:-field->bitpix)>>3;
- field->width = FITSTOI("NAXIS1 ", 0);
- field->height = FITSTOI("NAXIS2 ", 0);
- field->npix = (size_t)field->width*field->height;
- field->bscale = FITSTOF("BSCALE ", 1.0);
-
- field->bzero = FITSTOF("BZERO ", 0.0);
- field->bitsgn = FITSTOI("BITSGN ", 1);
- if (field->bitsgn && prefs.fitsunsigned_flag)
- field->bitsgn = 0;
-
- FITSTOS("OBJECT ", field->ident, "Unnamed");
-
-/*----------------------------- Compression --------------------------------*/
- if (fitsread(buf, "IMAGECOD", st, H_STRING, T_STRING)==RETURN_OK)
- {
- if (!strcmp(st, "NONE"))
- field->compress_type = COMPRESS_NONE;
- else if (!strcmp(st, "BASEBYTE"))
- field->compress_type = COMPRESS_BASEBYTE;
- else if (!strcmp(st, "PREV_PIX"))
- field->compress_type = COMPRESS_PREVPIX;
- else
- warning("Compression skipped: unknown IMAGECOD parameter:", st);
- }
-
-/*----------------------------- Astrometry ---------------------------------*/
-/* Presently, astrometry is done only on the measurement and detect images */
- if (field->flags&(MEASURE_FIELD|DETECT_FIELD))
- {
- astromstruct *as;
- double drota, s;
- int naxis;
-
- QCALLOC(as, astromstruct, 1);
- field->astrom = as;
-
- naxis = as->naxis = 2;
- for (l=0; l<naxis; l++)
- {
- sprintf(str, "CTYPE%-3d", l+1);
- FITSTOS(str, str, "");
- strncpy(as->ctype[l], str, 8);
- sprintf(str, "CUNIT%-3d", l+1);
- FITSTOS(str, str, "deg");
- strncpy(as->cunit[l], str, 32);
- sprintf(str, "CRVAL%-3d", l+1);
- as->crval[l] = FITSTOF(str, 0.0);
- sprintf(str, "CRPIX%-3d", l+1);
- as->crpix[l] = FITSTOF(str, 1.0);
- sprintf(str, "CDELT%-3d", l+1);
- as->cdelt[l] = FITSTOF(str, 1.0);
- if (fabs(as->cdelt[l]) < 1/BIG)
- error(EXIT_FAILURE, "*Error*: CDELT parameters out of range in ",
- field->filename);
- }
- if (fitsnfind(buf, "CD1_1", n))
- {
-/*---- If CD keywords exist, use them for the linear mapping terms... */
-
- for (l=0; l<naxis; l++)
- for (j=0; j<naxis; j++)
- {
- sprintf(str, "CD%d_%d", l+1, j+1);
- as->pc[l*naxis+j] = FITSTOF(str, l==j?1.0:0.0)/as->cdelt[j];
- }
- }
- else if (fitsnfind(buf, "PC001001", n))
-/*---- ...If PC keywords exist, use them for the linear mapping terms... */
- for (l=0; l<naxis; l++)
- for (j=0; j<naxis; j++)
- {
- sprintf(str, "PC%03d%03d", l+1, j+1);
- as->pc[l*naxis+j] = FITSTOF(str, l==j?1.0:0.0);
- }
- else
- {
-/*---- ...otherwise take the obsolete CROTA2 parameter */
- s = as->cdelt[1]/as->cdelt[0];
- drota = FITSTOF("CROTA2 ", 0.0);
- as->pc[3] = as->pc[0] = cos(drota*DEG);
- as->pc[1] = -(as->pc[2] = sin(drota*DEG));
- as->pc[1] *= s;
- as->pc[2] /= s;
- }
-
- QMALLOC(as->wcs, struct wcsprm, 1);
-/*-- Test if the WCS is recognized and a celestial pair is found */
- if (prefs.world_flag
- && !wcsset(as->naxis,(const char(*)[9])as->ctype, as->wcs)
- && as->wcs->flag<999)
- {
- char *pstr;
- double date;
- int biss, dpar[3];
-
- as->wcs_flag = 1;
-/*---- Coordinate reference frame */
-/*---- Search for an observation date expressed in Julian days */
- date = FITSTOF("MJD-OBS ", -1.0);
-/*---- Precession date (defined from Ephemerides du Bureau des Longitudes) */
-/*---- in Julian years from 2000.0 */
- if (date>0.0)
- as->equinox = 2000.0 - (MJD2000 - date)/365.25;
- else
- {
-/*------ Search for an observation date expressed in "civil" format */
- FITSTOS("DATE-OBS", str, "");
- if (*str)
- {
-/*-------- Decode DATE-OBS format: DD/MM/YY or YYYY-MM-DD */
- for (l=0; l<3 && (pstr = strtok(l?NULL:str,"/- ")); l++)
- dpar[l] = atoi(pstr);
- if (l<3 || !dpar[0] || !dpar[1] || !dpar[2])
- {
-/*---------- If DATE-OBS value corrupted or incomplete, assume 2000-1-1 */
- warning("Invalid DATE-OBS value in header: ", str);
- dpar[0] = 2000; dpar[1] = 1; dpar[2] = 1;
- }
- else if (strchr(str, '/') && dpar[0]<32 && dpar[2]<100)
- {
- j = dpar[0];
- dpar[0] = dpar[2]+1900;
- dpar[2] = j;
- }
-
- biss = (dpar[0]%4)?0:1;
-/*-------- Convert date to MJD */
- date = -678956 + (365*dpar[0]+dpar[0]/4) - biss
- + ((dpar[1]>2?((int)((dpar[1]+1)*30.6)-63+biss)
- :((dpar[1]-1)*(63+biss))/2) + dpar[2]);
- as->equinox = 2000.0 - (MJD2000 - date)/365.25;
- }
- else
-/*-------- Well if really no date is found */
- as->equinox = 2000.0;
- }
- as->equinox = FITSTOF("EQUINOX ", FITSTOF("EPOCH ", as->equinox));
- FITSTOS("RADECSYS", str, as->equinox<1984.0?"FK4":"FK5");
- if (!strcmp(str, "FK5"))
- as->radecsys = RDSYS_FK5;
- else if (!strcmp(str, "FK4"))
- {
- if (as->equinox == 2000.0)
- as->equinox = FITSTOF("EQUINOX ", FITSTOF("EPOCH ", 1950.0));
- as->radecsys = RDSYS_FK4;
- warning("FK4 precession formulae not yet implemented:\n",
- " Astrometry may be slightly inaccurate");
- }
- else if (!strcmp(str, "FK4-NO-E"))
- {
- if (as->equinox == 2000.0)
- as->equinox = FITSTOF("EQUINOX ", FITSTOF("EPOCH ", 1950.0));
- as->radecsys = RDSYS_FK4_NO_E;
- warning("FK4 precession formulae not yet implemented:\n",
- " Astrometry may be slightly inaccurate");
- }
- else if (!strcmp(str, "GAPPT"))
- {
- as->radecsys = RDSYS_GAPPT;
- warning("GAPPT reference frame not yet implemented:\n",
- " Astrometry may be slightly inaccurate");
- }
- else
- {
- warning("Using FK5 instead of unknown astrometric reference frame: ",
- str);
- as->radecsys = RDSYS_FK5;
- }
-
-/*---- Projection parameters */
- as->longpole = FITSTOF("LONGPOLE", 999.0);
- as->latpole = FITSTOF("LATPOLE ", 999.0);
- if (fitsnfind(buf, "PROJP1 ", n))
- for (l=0; l<10; l++)
- {
- sprintf(str, "PROJP%-3d", l);
- as->projp[l] = FITSTOF(str, 0.0);
- }
- }
- else
- {
-/*---- No need to keep memory allocated for a useless WCS structure */
- free(as->wcs);
- as->wcs_flag = 0;
- }
- }
-
-/*---------------------------------------------------------------------------*/
-
- field->fitshead = buf;
- field->fitsheadsize = n*FBSIZE;
-
- return;
- }
-
-
-/******************************* readfitshead ********************************/
-/*
-read data from the FITS-file header
-*/
-char *readfitshead(FILE *file, char *filename, int *nblock)
-
- {
- int n;
- char *buf;
-
- if (!(buf=(char *)malloc((size_t)FBSIZE)))
- error(EXIT_FAILURE, "*Error*: Not enough memory in ", "readfitshead()");
-
-/* Find the number of FITS blocks of the header while reading it */
- QFREAD(buf, FBSIZE, file, filename);
-
- if (strncmp(buf, "SIMPLE ", 8))
- {
-/* Ugly but necessary patch to handle this stupid DeNIS compressed format! */
- if (strncmp(buf, "XTENSION", 8))
- error(EXIT_FAILURE, filename, " is NOT a FITS file!");
- else
- {
- memset(buf, ' ', 80);
- strncpy(buf,
- "SIMPLE = T / Decompressed by SExtractor", 59);
- }
- }
-
- for (n=1; !fitsnfind(buf,"END ", n); n++)
- {
- if (!(buf=(char *)realloc(buf, (size_t)(FBSIZE*(n+1)))))
- error(EXIT_FAILURE, "*Error*: Not enough memory in ", "readfitshead()");
- QFREAD(buf+n*FBSIZE, FBSIZE, file, filename);
- }
-
- *nblock = n;
- return buf;
- }
-
-
diff --git a/external/sextractor/source/refine.c b/external/sextractor/source/refine.c
deleted file mode 100644
index 7fa79e6..0000000
--- a/external/sextractor/source/refine.c
+++ /dev/null
@@ -1,334 +0,0 @@
- /*
- refine.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden observatory
-*
-* Contents: functions to refine extraction of objects.
-*
-* Last modify: 11/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "plist.h"
-#include "extract.h"
-
-#ifndef RAND_MAX
-#define RAND_MAX 2147483647
-#endif
-#define NSONMAX 1024 /* max. number per level */
-#define NBRANCH 16 /* starting number per branch */
-
-static objliststruct *objlist = NULL;
-static short *son = NULL, *ok = NULL;
-
-/******************************** parcelout **********************************
-PROTO parcelout(objliststruct *objlistin, objliststruct *objlistout)
-PURPOSE Divide a list of isophotal detections in several parts (deblending).
-INPUT input objlist,
- output objlist,
-OUTPUT RETURN_OK if success, RETURN_FATAL_ERROR otherwise (memory overflow).
-NOTES Even if the object is not deblended, the output objlist threshold is
- recomputed if a variable threshold is used.
-AUTHOR E. Bertin (IAP, Leiden & ESO)
-VERSION 15/03/98
- ***/
-int parcelout(objliststruct *objlistin, objliststruct *objlistout)
-
- {
- objstruct *obj;
- static objliststruct debobjlist, debobjlist2;
- double dthresh, dthresh0, value0;
- int h,i,j,k,l,m,
- xn,
- nbm = NBRANCH,
- out;
-
-
- out = RETURN_OK;
-
- xn = prefs.deblend_nthresh;
-
-/*----- allocate some memory */
-
- if (!son)
- if (!(son = (short *)malloc(xn*NSONMAX*nbm*sizeof(short))))
- error(EXIT_FAILURE, "Not enough memory in ", "parcelout()");
- if (!ok)
- if (!(ok = (short *)malloc(xn*NSONMAX*sizeof(short))))
- error(EXIT_FAILURE, "Not enough memory in ", "parcelout()");
-
- if (!objlist)
- if (!(objlist = (objliststruct *)malloc(xn*sizeof(objliststruct))))
- error(EXIT_FAILURE, "Not enough memory in ", "parcelout()");
-
-
-/* ---- initialize lists of objects */
-
- debobjlist.obj = debobjlist2.obj = NULL;
- debobjlist.plist = debobjlist2.plist = NULL;
- debobjlist.nobj = debobjlist2.nobj = 0;
- debobjlist.npix = debobjlist2.npix = 0;
- objlistout->thresh = debobjlist2.thresh = objlistin->thresh;
- memset(objlist, 0, (size_t)xn*sizeof(objliststruct));
-
- for (l=0; l<objlistin->nobj && out==RETURN_OK; l++)
- {
- dthresh0 = objlistin->obj[l].dthresh;
-
- objlistout->dthresh = debobjlist2.dthresh = dthresh0;
- if ((out = addobj(l, objlistin, &objlist[0])) == RETURN_FATAL_ERROR)
- goto exit_parcelout;
- if ((out = addobj(l, objlistin, &debobjlist2)) == RETURN_FATAL_ERROR)
- goto exit_parcelout;
- value0 = objlist[0].obj[0].fdflux*prefs.deblend_mincont;
- ok[0] = (short)1;
- for (k=1; k<xn; k++)
- {
-/*------ Calculate threshold */
- dthresh = objlistin->obj[l].fdpeak;
- if (dthresh>0.0)
- {
- if (prefs.detect_type == PHOTO)
- debobjlist.dthresh= dthresh0 + (dthresh-dthresh0) * (double)k/xn;
- else
- debobjlist.dthresh = dthresh0 * pow(dthresh/dthresh0,(double)k/xn);
- }
- else
- debobjlist.dthresh = dthresh0;
-
-/*--------- Build tree (bottom->up) */
- if (objlist[k-1].nobj>=NSONMAX)
- {
- out = RETURN_FATAL_ERROR;
- goto exit_parcelout;
- }
-
- for (i=0; i<objlist[k-1].nobj; i++)
- {
- if (out=lutz(objlistin,l,&objlist[k-1].obj[i], &debobjlist)
- ==RETURN_FATAL_ERROR)
- goto exit_parcelout;
-
- for (j=h=0; j<debobjlist.nobj; j++)
- if (belong(j, &debobjlist, i, &objlist[k-1]))
- {
- debobjlist.obj[j].dthresh = debobjlist.dthresh;
- m = addobj(j, &debobjlist, &objlist[k]);
- if (m==RETURN_FATAL_ERROR || m>=NSONMAX)
- {
- out = RETURN_FATAL_ERROR;
- goto exit_parcelout;
- }
- if (h>=nbm-1)
- if (!(son = (short *)realloc(son,
- xn*NSONMAX*(nbm+=16)*sizeof(short))))
- {
- out = RETURN_FATAL_ERROR;
- goto exit_parcelout;
- }
- son[k-1+xn*(i+NSONMAX*(h++))] = (short)m;
- ok[k+xn*m] = (short)1;
- }
- son[k-1+xn*(i+NSONMAX*h)] = (short)-1;
- }
- }
-
-/*------- cut the right branches (top->down) */
-
- for (k = xn-2; k>=0; k--)
- {
- obj = objlist[k+1].obj;
- for (i=0; i<objlist[k].nobj; i++)
- {
- for (m=h=0; (j=(int)son[k+xn*(i+NSONMAX*h)])!=-1; h++)
- {
- if (obj[j].fdflux - obj[j].dthresh*obj[j].fdnpix > value0)
- m++;
- ok[k+xn*i] &= ok[k+1+xn*j];
- }
- if (m>1)
- {
- for (h=0; (j=(int)son[k+xn*(i+NSONMAX*h)])!=-1; h++)
- if (ok[k+1+xn*j] && obj[j].fdflux-obj[j].dthresh*obj[j].fdnpix
- > value0)
- {
- objlist[k+1].obj[j].flag |= OBJ_MERGED /* Merge flag on */
- | ((OBJ_ISO_PB|OBJ_APERT_PB|OBJ_OVERFLOW)
- &debobjlist2.obj[0].flag);
- if ((out = addobj(j, &objlist[k+1], &debobjlist2))
- == RETURN_FATAL_ERROR)
- goto exit_parcelout;
- }
- ok[k+xn*i] = (short)0;
- }
- }
- }
-
- if (ok[0])
- out = addobj(0, &debobjlist2, objlistout);
- else
- out = gatherup(&debobjlist2, objlistout);
-
-exit_parcelout:
-
- free(debobjlist2.obj);
- free(debobjlist2.plist);
-
- for (k=0; k<xn; k++)
- {
- free(objlist[k].obj);
- free(objlist[k].plist);
- }
- }
-
- free(debobjlist.obj);
- free(debobjlist.plist);
-
- return out;
- }
-
-/******************************* freeparcelout *******************************/
-/*
-free the memory allocated by global pointers in refine.c
-*/
-void freeparcelout(void)
- {
- free(son);
- free(ok);
- free(objlist);
- return;
- }
-
-/********************************* gatherup **********************************/
-/*
-Collect faint remaining pixels and allocate them to their most probable
-progenitor.
-*/
-int gatherup(objliststruct *objlistin, objliststruct *objlistout)
-
- {
- char *bmp;
- float *amp, *p, dx,dy, drand, dist, distmin;
- objstruct *objin = objlistin->obj, *objout, *objt;
-
- pliststruct *pixelin = objlistin->plist, *pixelout, *pixt,*pixt2;
-
- int i,k,l, *n, iclst, npix, bmwidth,
- nobj = objlistin->nobj, xs,ys, x,y, out;
-
- out = RETURN_OK;
-
- objlistout->dthresh = objlistin->dthresh;
- objlistout->thresh = objlistin->thresh;
-
- QMALLOC(amp, float, nobj);
- QMALLOC(p, float, nobj);
- QMALLOC(n, int, nobj);
-
- for (i=1; i<nobj; i++)
- preanalyse(i, objlistin, ANALYSE_FULL);
-
- p[0] = 0.0;
- bmwidth = objin->xmax - (xs=objin->xmin) + 1;
- npix = bmwidth * (objin->ymax - (ys=objin->ymin) + 1);
- if (!(bmp = (char *)calloc(1, npix*sizeof(char))))
- {
- bmp = 0;
- out = RETURN_FATAL_ERROR;
- goto exit_gatherup;
- }
-
- for (objt = objin+(i=1); i<nobj; i++, objt++)
- {
-/*-- Now we have passed the deblending section, reset thresholds */
- objt->dthresh = objlistin->dthresh;
- objt->thresh = objlistin->thresh;
-
-/* ------------ flag pixels which are already allocated */
- for (pixt=pixelin+objin[i].firstpix; pixt>=pixelin;
- pixt=pixelin+PLIST(pixt,nextpix))
- bmp[(PLIST(pixt,x)-xs) + (PLIST(pixt,y)-ys)*bmwidth] = '\1';
-
- if ((n[i] = addobj(i, objlistin, objlistout)) == RETURN_FATAL_ERROR)
- {
- out = RETURN_FATAL_ERROR;
- goto exit_gatherup;
- }
- dist = objt->fdnpix/(2*PI*objt->abcor*objt->a*objt->b);
- amp[i] = dist<70.0? objt->thresh*exp(dist) : 4.0*objt->fdpeak;
-
-/* ------------ limitate expansion ! */
- if (amp[i]>4.0*objt->fdpeak)
- amp[i] = 4.0*objt->fdpeak;
- }
-
- objout = objlistout->obj; /* DO NOT MOVE !!! */
-
- if (!(pixelout=(pliststruct *)realloc(objlistout->plist,
- (objlistout->npix + npix)*plistsize)))
- {
- out = RETURN_FATAL_ERROR;
- goto exit_gatherup;
- }
-
- objlistout->plist = pixelout;
- k = objlistout->npix;
- for (pixt=pixelin+objin->firstpix; pixt>=pixelin;
- pixt=pixelin+PLIST(pixt,nextpix))
- {
- x = PLIST(pixt,x);
- y = PLIST(pixt,y);
- if (!bmp[(x-xs) + (y-ys)*bmwidth])
- {
- pixt2 = pixelout + (l=(k++*plistsize));
- memcpy(pixt2, pixt, (size_t)plistsize);
- PLIST(pixt2, nextpix) = -1;
- distmin = 1e+31;
- for (objt = objin+(i=1); i<nobj; i++, objt++)
- {
- dx = x - objt->mx;
- dy = y - objt->my;
- dist=0.5*(objt->cxx*dx*dx+objt->cyy*dy*dy+objt->cxy*dx*dy)/objt->abcor;
- p[i] = p[i-1] + (dist<70.0?amp[i]*exp(-dist) : 0.0);
- if (dist<distmin)
- {
- distmin = dist;
- iclst = i;
- }
- }
- if (p[nobj-1] > 1.0e-31)
- {
- drand = p[nobj-1]*rand()/RAND_MAX;
- for (i=1; p[i]<drand; i++);
- }
- else
- i = iclst;
- objout[n[i]].lastpix=PLIST(pixelout+objout[n[i]].lastpix,nextpix)=l;
- }
- }
-
- objlistout->npix = k;
- if (!(objlistout->plist = (pliststruct *)realloc(pixelout,
- objlistout->npix*plistsize)))
- error (-1, "Not enough memory to update pixel list in ", "gatherup()");
-
-exit_gatherup:
-
- free(bmp);
- free(amp);
- free(p);
- free(n);
-
- return out;
- }
-
diff --git a/external/sextractor/source/retina.c b/external/sextractor/source/retina.c
deleted file mode 100644
index 538442e..0000000
--- a/external/sextractor/source/retina.c
+++ /dev/null
@@ -1,114 +0,0 @@
- /*
- retina.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: functions dealing with retinal analysis of the data.
-*
-* Last modify: 28/08/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "bpro.h"
-#include "image.h"
-#include "retina.h"
-
-
-/******************************** readretina *********************************/
-/*
-Return the response of the retina at a given image position.
-*/
-float readretina(picstruct *field, retistruct *retina, float x, float y)
- {
- float *pix, resp, norm;
- int i, ix,iy;
-
- ix = (int)(x+0.499999);
- iy = (int)(y+0.499999);
- if (ix>=0 && ix<field->width && iy>=field->ymin && iy<field->ymax)
- norm = field->strip[ix+(iy%field->stripheight)*field->width];
- else
- norm = retina->minnorm;
- if (norm<retina->minnorm)
- norm = retina->minnorm;
-/* Copy the right pixels to the retina */
- pix = retina->pix;
- copyimage(field, pix, retina->width, retina->height, ix,iy);
- for (i=retina->npix; i--;)
- *(pix++) /= norm;
- *pix = -2.5*log10(norm/retina->minnorm);
- play_bpann(retina->bpann, retina->pix, &resp);
-
- return resp;
- }
-
-
-/********************************** getretina ********************************/
-/*
-Read an ANN retina file.
-*/
-retistruct *getretina(char *filename)
-
- {
-#define FILTEST(x) \
- if (x != RETURN_OK) \
- error(EXIT_FAILURE, "*Error*: RETINA header in ", filename)
-
- retistruct *retina;
- catstruct *fcat;
- tabstruct *ftab;
- int ival;
-
- QMALLOC(retina, retistruct, 1);
-/* We first map the catalog */
- if (!(fcat = read_cat(filename)))
- error(EXIT_FAILURE, "*Error*: retina file not found: ", filename);
-/* Test if the requested table is present */
- if (!(ftab = name_to_tab(fcat, "BP-ANN", 0)))
- error(EXIT_FAILURE, "*Error*: no BP-ANN info found in ", filename);
- FILTEST(fitsread(ftab->headbuf, "BPTYPE ", gstr,H_STRING,T_STRING));
- if (strcmp(gstr, "RETINA_2D"))
- error(EXIT_FAILURE, "*Error*: not a suitable retina in ", filename);
- FILTEST(fitsread(ftab->headbuf, "RENAXIS ", &ival ,H_INT, T_LONG));
- if (ival != 2)
- error(EXIT_FAILURE, "*Error*: not a 2D retina in ", filename);
- FILTEST(fitsread(ftab->headbuf, "RENAXIS1", &retina->width ,H_INT, T_LONG));
- FILTEST(fitsread(ftab->headbuf, "RENAXIS2", &retina->height ,H_INT, T_LONG));
- retina->npix = retina->width*retina->height;
- FILTEST(fitsread(ftab->headbuf, "RENORM ",&retina->minnorm,H_FLOAT,T_FLOAT));
- retina->bpann = loadtab_bpann(ftab, filename);
- QMALLOC(retina->pix, float, retina->bpann->nn[0]);
-
- close_cat(fcat);
- free_cat(fcat,1);
-
- return retina;
- }
-
-
-/********************************** endretina ********************************/
-/*
-Free a retina structure.
-*/
-void endretina(retistruct *retina)
-
- {
- free(retina->pix);
- free_bpann(retina->bpann);
- free(retina);
-
- return;
- }
-
diff --git a/external/sextractor/source/retina.h b/external/sextractor/source/retina.h
deleted file mode 100644
index c95c25c..0000000
--- a/external/sextractor/source/retina.h
+++ /dev/null
@@ -1,35 +0,0 @@
- /*
- retina.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, IAP & Leiden Sterrewacht.
-*
-* Contents: include file related to retina.c.
-*
-* Last modify: 07/12/96
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-/*------------------------------- structures --------------------------------*/
-
-typedef struct structreti
- {
-/*---- convolution */
- float *pix; /* Pointer to the copy of the pixel array */
- int width, height; /* x,y size of the mask */
- int npix; /* Number of pixels in the retina */
- float minnorm; /* Minimum normalisation factor */
- struct structbpann *bpann; /* The neural network */
- } retistruct;
-
-retistruct *theretina;
-
-/*------------------------------- functions ---------------------------------*/
-
-retistruct *getretina(char *filename);
-float readretina(picstruct *, retistruct *, float, float);
-void endretina(retistruct *retina);
-
diff --git a/external/sextractor/source/scan.c b/external/sextractor/source/scan.c
deleted file mode 100644
index af0f00d..0000000
--- a/external/sextractor/source/scan.c
+++ /dev/null
@@ -1,894 +0,0 @@
- /*
- scan.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: functions for extraction of connected pixels from
-* a pixmap.
-*
-* Last modify: 07/10/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-
-#include "define.h"
-#include "globals.h"
-#include "back.h"
-#include "check.h"
-#include "clean.h"
-#include "extract.h"
-#include "filter.h"
-#include "image.h"
-#include "plist.h"
-
-/****************************** scanimage ************************************
-PROTO void scanimage(picstruct *field, picstruct *dfield, picstruct *ffield,
- picstruct *wfield, picstruct *dwfield)
-PURPOSE Scan of the large pixmap(s). Main loop and heart of the program.
-INPUT Measurement field pointer,
- Detection field pointer,
- Flag field pointer,
- Measurement weight-map field pointer,
- Detection weight-map field pointer,
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 28/11/98
- ***/
-void scanimage(picstruct *field, picstruct *dfield, picstruct **pffield,
- int nffield, picstruct *wfield, picstruct *dwfield)
-
- {
- static infostruct curpixinfo, *info, *store,
- initinfo, freeinfo, *victim;
- picstruct *ffield;
- checkstruct *check;
- objliststruct objlist;
- objstruct *cleanobj;
- pliststruct *pixel, *pixt;
- picstruct *cfield, *cdwfield;
-
- char *marker, newmarker, *blankpad, *bpt,*bpt0;
- int co, i,j, flag, luflag,pstop, xl,xl2,yl, cn,
- nposize, stacksize, w, h, blankh, maxpixnb,
- varthreshflag;
- short trunflag;
- PIXTYPE thresh, relthresh, cdnewsymbol, cdvar,
- *scan,*dscan,*cdscan,*dwscan,*cdwscan,*scant,*wscan;
- FLAGTYPE *pfscan[MAXFLAG];
- status cs, ps, *psstack;
- int *start, *end, ymax;
-
-/*----- Beginning of the main loop: Initialisations */
- cat.ntotal = cat.ndetect = 0;
-
-/* cfield is the detection field in any case */
- cfield = dfield? dfield:field;
-
-/* cdwfield is the detection weight-field if available */
- cdwfield = dwfield? dwfield:(prefs.dweight_flag?wfield:NULL);
-
-/* If WEIGHTing and no absolute thresholding, activate threshold scaling */
- varthreshflag = (cdwfield && prefs.thresh_type[0]!=THRESH_ABSOLUTE);
-
- if (varthreshflag)
- relthresh = prefs.dthresh[0];
-
- w = cfield->width;
- h = cfield->height;
- objlist.dthresh = cfield->dthresh;
- objlist.thresh = cfield->thresh;
- cfield->yblank = 1;
- field->y = field->stripy = 0;
- field->ymin = field->stripylim = 0;
- field->stripysclim = 0;
- if (dfield)
- {
- dfield->y = dfield->stripy = 0;
- dfield->ymin = dfield->stripylim = 0;
- dfield->stripysclim = 0;
- }
- if (nffield)
- for (i=0; i<nffield; i++)
- {
- ffield = pffield[i];
- ffield->y = ffield->stripy = 0;
- ffield->ymin = ffield->stripylim = 0;
- ffield->stripysclim = 0;
- }
- if (wfield)
- {
- wfield->y = wfield->stripy = 0;
- wfield->ymin = wfield->stripylim = 0;
- wfield->stripysclim = 0;
- }
- if (dwfield)
- {
- dwfield->y = dwfield->stripy = 0;
- dwfield->ymin = dwfield->stripylim = 0;
- dwfield->stripysclim = 0;
- }
-
-/*Allocate memory for buffers */
- stacksize = w+1;
- QMALLOC(info, infostruct, stacksize);
- QMALLOC(store, infostruct, stacksize);
- QMALLOC(marker, char, stacksize);
- QMALLOC(dumscan, PIXTYPE, stacksize);
- QMALLOC(psstack, status, stacksize);
- QMALLOC(start, int, stacksize);
- QMALLOC(end, int, stacksize);
- lutzalloc(w,h);
- if (prefs.filter_flag)
- {
- QMALLOC(cdscan, PIXTYPE, stacksize);
- if (cdwfield)
- QMALLOC(cdwscan, PIXTYPE, stacksize);
-/*-- One needs a buffer to protect filtering if source-blanking applies */
- if (prefs.blank_flag)
- {
- blankh = thefilter->convh/2+1;
- QMALLOC(blankpad, char, w*blankh);
- cfield->yblank -= blankh;
- if (dfield)
- field->yblank = cfield->yblank;
- bpt = blankpad;
- }
- }
-
-/* Some initializations */
-
- thresh = objlist.dthresh;
- initinfo.pixnb = 0;
- initinfo.flag = 0;
- initinfo.firstpix = initinfo.lastpix = -1;
-
- for (xl=0; xl<stacksize; xl++)
- {
- marker[xl] = 0 ;
- dumscan[xl] = -BIG ;
- }
-
- co = pstop = 0;
- objlist.nobj = 1;
- curpixinfo.pixnb = 1;
-
-/* Init cleaning procedure */
- initclean();
-
-/*----- Allocate memory for the pixel list */
- init_plist();
- if (!(pixel = objlist.plist = malloc(nposize=prefs.mem_pixstack*plistsize)))
- error(EXIT_FAILURE, "Not enough memory to store the pixel stack:\n",
- " Try to decrease MEMORY_PIXSTACK");
-
-/*----- at the beginning, "free" object fills the whole pixel list */
- freeinfo.firstpix = 0;
- freeinfo.lastpix = nposize-plistsize;
- pixt = pixel;
- for (i=plistsize; i<nposize; i += plistsize, pixt += plistsize)
- PLIST(pixt, nextpix) = i;
- PLIST(pixt, nextpix) = -1;
-
-/*----- Here we go */
- for (yl=0; yl<=h;)
- {
- ps = COMPLETE;
- cs = NONOBJECT;
- if (yl==h)
- {
-/*---- Need an empty line for Lutz' algorithm to end gracely */
- if (prefs.filter_flag)
- {
- free(cdscan);
- if (cdwfield)
- free(cdwscan);
- }
- cdwscan = cdscan = dumscan;
- }
- else
- {
- if (nffield)
- for (i=0; i<nffield; i++)
- {
- ffield = pffield[i];
- pfscan[i] = (ffield->stripy==ffield->stripysclim)?
- (FLAGTYPE *)loadstrip(ffield, (picstruct *)NULL)
- : &ffield->fstrip[ffield->stripy*ffield->width];
- }
- if (wfield)
- wscan = (wfield->stripy==wfield->stripysclim)?
- (PIXTYPE *)loadstrip(wfield, (picstruct *)NULL)
- : &wfield->strip[wfield->stripy*wfield->width];
- else
- wscan = NULL;
- scan = (field->stripy==field->stripysclim)?
- (PIXTYPE *)loadstrip(field, wfield)
- : &field->strip[field->stripy*field->width];
- if (dwfield)
- dwscan = (dwfield->stripy==dwfield->stripysclim)?
- (PIXTYPE *)loadstrip(dwfield,
- dfield?(picstruct *)NULL:dwfield)
- : &dwfield->strip[dwfield->stripy*dwfield->width];
- else
- dwscan = wscan;
- if (dfield)
- dscan = (dfield->stripy==dfield->stripysclim)?
- (PIXTYPE *)loadstrip(dfield, dwfield)
- : &dfield->strip[dfield->stripy*dfield->width];
- else
- dscan = scan;
-
- if (prefs.filter_flag)
- {
- filter(cfield, cdscan);
- if (cdwfield)
- filter(cdwfield, cdwscan);
- }
- else
- {
- cdscan = dscan;
- cdwscan = dwscan;
- }
-
- if (check=prefs.check[CHECK_FILTERED])
- writecheck(check, cdscan, w);
- }
-
- trunflag = (yl==0 || yl==h-1)? OBJ_TRUNC:0;
-
- for (xl=0; xl<=w; xl++)
- {
- if (xl == w)
- cdnewsymbol = -BIG;
- else
- cdnewsymbol = cdscan[xl];
-
- newmarker = marker[xl];
- marker[xl] = 0;
-
- curpixinfo.flag = trunflag;
- if (varthreshflag)
- thresh = relthresh*sqrt(cdvar = ((xl==w || yl==h)? 0.0:cdwscan[xl]));
- luflag = cdnewsymbol > thresh?1:0;
-
- if (luflag)
- {
- if (xl==0 || xl==w-1)
- curpixinfo.flag |= OBJ_TRUNC;
- pixt = pixel + (cn=freeinfo.firstpix);
- freeinfo.firstpix = PLIST(pixt, nextpix);
-
-/*------- Running out of pixels, the largest object becomes a "victim" ------*/
-
- if (freeinfo.firstpix==freeinfo.lastpix)
- {
- sprintf(gstr, "%d,%d", xl+1, yl+1);
- warning("Pixel stack overflow at position ", gstr);
- maxpixnb = 0;
- for (i=0; i<=w; i++)
- if (store[i].pixnb>maxpixnb)
- if (marker[i]=='S' || (newmarker=='S' && i==xl))
- {
- flag = 0;
- if (i<xl)
- for (j=0; j<=co; j++)
- flag |= (start[j]==i);
- if (!flag)
- maxpixnb = (victim = &store[i])->pixnb;
- }
- for (j=1; j<=co; j++)
- if (info[j].pixnb>maxpixnb)
- maxpixnb = (victim = &info[j])->pixnb;
-
- if (!maxpixnb)
- error(EXIT_FAILURE, "*Fatal Error*: something is badly bugged in ",
- "scanimage()!");
- if (maxpixnb <= 1)
- error(EXIT_FAILURE, "Pixel stack overflow in ", "scanimage()");
- freeinfo.firstpix = PLIST(pixel+victim->firstpix, nextpix);
- PLIST(pixel+victim->lastpix, nextpix) = freeinfo.lastpix;
- PLIST(pixel+(victim->lastpix=victim->firstpix), nextpix) = -1;
- victim->pixnb = 1;
- victim->flag |= OBJ_OVERFLOW;
- }
-
-/*---------------------------------------------------------------------------*/
- curpixinfo.lastpix = curpixinfo.firstpix = cn;
- PLIST(pixt, nextpix) = -1;
- PLIST(pixt, x) = xl;
- PLIST(pixt, y) = yl;
- PLIST(pixt, value) = scan[xl];
- if (PLISTEXIST(dvalue))
- PLISTPIX(pixt, dvalue) = dscan[xl];
- if (PLISTEXIST(cdvalue))
- PLISTPIX(pixt, cdvalue) = cdnewsymbol;
- if (PLISTEXIST(flag))
- for (i=0; i<nffield; i++)
- PLISTFLAG(pixt, flag[i]) = pfscan[i][xl];
- if (PLISTEXIST(dthresh))
- PLISTPIX(pixt, dthresh) = thresh;
- if (PLISTEXIST(var))
- PLISTPIX(pixt, var) = wscan[xl];
-
- if (cs != OBJECT)
-/*------------------------------- Start Segment -----------------------------*/
-
- {
- cs = OBJECT;
- if (ps == OBJECT)
- {
- if (start[co] == UNKNOWN)
- {
- marker[xl] = 'S';
- start[co] = xl;
- }
- else
- marker[xl] = 's';
- }
- else
- {
- psstack[pstop++] = ps;
- marker[xl] = 'S';
- start[++co] = xl;
- ps = COMPLETE;
- info[co] = initinfo;
- }
- }
-
-/*---------------------------------------------------------------------------*/
- }
-
- if (newmarker)
-
-/*---------------------------- Process New Marker ---------------------------*/
-
- {
- if (newmarker == 'S')
- {
- psstack[pstop++] = ps;
- if (cs == NONOBJECT)
- {
- psstack[pstop++] = COMPLETE;
- info[++co] = store[xl];
- start[co] = UNKNOWN;
- }
- else
- update (&info[co],&store[xl], pixel);
- ps = OBJECT;
- }
- else if (newmarker == 's')
- {
- if ((cs == OBJECT) && (ps == COMPLETE))
- {
- pstop--;
- xl2 = start[co];
- update (&info[co-1],&info[co], pixel);
- if (start[--co] == UNKNOWN)
- start[co] = xl2;
- else
- marker[xl2] = 's';
- }
- ps = OBJECT;
- }
- else if (newmarker == 'f')
- ps = INCOMPLETE;
- else if (newmarker == 'F')
- {
- ps = psstack[--pstop];
- if ((cs == NONOBJECT) && (ps == COMPLETE))
- {
- if (start[co] == UNKNOWN)
- {
- if ((int)info[co].pixnb >= prefs.ext_minarea)
- sortit(field, dfield, wfield, cdwfield, &info[co], &objlist);
-/* ------------------------------------ free the chain-list */
-
- PLIST(pixel+info[co].lastpix, nextpix) = freeinfo.firstpix;
- freeinfo.firstpix = info[co].firstpix;
- }
- else
- {
- marker[end[co]] = 'F';
- store[start[co]] = info[co];
- }
- co--;
- ps = psstack[--pstop];
- }
- }
- }
-/*---------------------------------------------------------------------------*/
-
- if (luflag)
- update (&info[co],&curpixinfo, pixel);
- else
- {
- if (cs == OBJECT)
-/*-------------------------------- End Segment ------------------------------*/
- {
- cs = NONOBJECT;
- if (ps != COMPLETE)
- {
- marker[xl] = 'f';
- end[co] = xl;
- }
- else
- {
- ps = psstack[--pstop];
- marker[xl] = 'F';
- store[start[co]] = info[co];
- co--;
- }
- }
- }
-
- if (prefs.blank_flag && xl<w)
- {
- if (prefs.filter_flag)
- *(bpt++) = (luflag)?1:0;
- else if (luflag)
- dscan[xl] = -BIG;
- if (dfield && luflag)
- scan[xl] = -BIG;
- }
-/*--------------------- End of the loop over the x's -----------------------*/
- }
-
-/* Detected pixel removal at the end of each line */
- if (prefs.blank_flag && yl<h)
- {
- if (prefs.filter_flag)
- {
- bpt = bpt0 = blankpad + w*((yl+1)%blankh);
- if (cfield->yblank >= 0)
- {
- scant = &PIX(cfield, 0, cfield->yblank);
- for (i=w; i--; scant++)
- if (*(bpt++))
- *scant = -BIG;
- if (dfield)
- {
- bpt = bpt0;
- scant = &PIX(field, 0, cfield->yblank);
- for (i=w; i--; scant++)
- if (*(bpt++))
- *scant = -BIG;
- }
- bpt = bpt0;
- }
- }
- cfield->yblank++;
- if (dfield)
- field->yblank = cfield->yblank;
- }
-
-/*-- Prepare markers for the next line */
- yl++;
- field->stripy = (field->y=yl)%field->stripheight;
- if (dfield)
- dfield->stripy = (dfield->y=yl)%dfield->stripheight;
- if (nffield)
- for (i=0; i<nffield; i++)
- {
- ffield = pffield[i];
- ffield->stripy = (ffield->y=yl)%ffield->stripheight;
- }
- if (wfield)
- wfield->stripy = (wfield->y=yl)%wfield->stripheight;
- if (dwfield)
- dwfield->stripy = (dwfield->y=yl)%dwfield->stripheight;
-
-/*-- Remove objects close to the ymin limit if ymin is ready to increase */
- if (cfield->stripy==cfield->stripysclim)
- {
- cleanobj = cleanobjlist->obj+cleanobjlist->nobj-1;
- for (i=cleanobjlist->nobj; i--; cleanobj--)
- {
- if (cleanobj->ycmin <= cfield->ymin)
- {
-/*-------- Warn if there is a possibility for any aperture to be truncated */
- if ((ymax=cleanobj->ycmax) > cfield->ymax)
- {
- sprintf(gstr, "Object at position %.0f,%.0f ",
- cleanobj->mx+1, cleanobj->my+1);
- QWARNING(gstr, "may have some apertures truncated:\n"
- " You might want to increase MEMORY_BUFSIZE");
- }
- else if (ymax>cfield->yblank && prefs.blank_flag)
- {
- sprintf(gstr, "Object at position %.0f,%.0f ",
- cleanobj->mx+1, cleanobj->my+1);
- QWARNING(gstr, "may have some unBLANKed neighbours:\n"
- " You might want to increase MEMORY_PIXSTACK");
- }
- endobject(field, dfield, wfield, cdwfield, i, cleanobjlist);
- subcleanobj(i);
- cleanobj = cleanobjlist->obj+i; /* realloc in subcleanobj() */
- }
- }
- }
-
- if (!((yl+1)%16))
- NPRINTF(OUTPUT, "\33[1M> Line:%5d "
- "Objects: %8d detected / %8d sextracted\n\33[1A",
- yl+1, cat.ndetect, cat.ntotal);
-/*--------------------- End of the loop over the y's -----------------------*/
- }
-
-/* Removal or the remaining pixels */
- if (prefs.blank_flag && prefs.filter_flag && (cfield->yblank >= 0))
- for (j=blankh-1; j--; yl++)
- {
- bpt = bpt0 = blankpad + w*(yl%blankh);
- scant = &PIX(cfield, 0, cfield->yblank);
- for (i=w; i--; scant++)
- if (*(bpt++))
- *scant = -BIG;
- if (dfield)
- {
- bpt = bpt0;
- scant = &PIX(field, 0, cfield->yblank);
- for (i=w; i--; scant++)
- if (*(bpt++))
- *scant = -BIG;
- }
- cfield->yblank++;
- if (dfield)
- field->yblank = cfield->yblank;
- }
-
-/* Now that all "detected" pixels have been removed, analyse detections */
- for (j=cleanobjlist->nobj; j--;)
- {
- endobject(field, dfield, wfield, cdwfield, 0, cleanobjlist);
- subcleanobj(0);
- }
-
- endclean();
-
-/*Free memory */
-
- freeparcelout();
- free(pixel);
- lutzfree();
- free(info);
- free(store);
- free(marker);
- free(dumscan);
- free(psstack);
- free(start);
- free(end);
- if (prefs.blank_flag && prefs.filter_flag)
- free(blankpad);
-
- return;
- }
-
-
-/********************************* update ************************************/
-/*
-update object's properties each time one of its pixels is scanned by lutz()
-*/
-void update(infostruct *infoptr1, infostruct *infoptr2, pliststruct *pixel)
-
- {
- infoptr1->pixnb += infoptr2->pixnb;
- infoptr1->flag |= infoptr2->flag;
- if (infoptr1->firstpix == -1)
- {
- infoptr1->firstpix = infoptr2->firstpix;
- infoptr1->lastpix = infoptr2->lastpix;
- }
- else if (infoptr2->lastpix != -1)
- {
- PLIST(pixel+infoptr1->lastpix, nextpix) = infoptr2->firstpix;
- infoptr1->lastpix = infoptr2->lastpix;
- }
-
- return;
- }
-
-/********************************* sortit ************************************/
-/*
-build the object structure.
-*/
-void sortit(picstruct *field, picstruct *dfield, picstruct *wfield,
- picstruct *dwfield, infostruct *info, objliststruct *objlist)
-
- {
- picstruct *cfield;
- objliststruct objlistout, *objlist2;
- static objstruct obj;
- objstruct *cobj;
- pliststruct *pixel;
- int i,j,n;
-
- cfield = dfield? dfield: field;
-
- pixel = objlist->plist;
- objlistout.obj = NULL;
- objlistout.plist = NULL;
- objlistout.nobj = objlistout.npix = 0;
-
-/*----- Allocate memory to store object data */
-
- objlist->obj = &obj;
- objlist->nobj = 1;
-
- memset(&obj, 0, (size_t)sizeof(objstruct));
- objlist->npix = info->pixnb;
- obj.firstpix = info->firstpix;
- obj.lastpix = info->lastpix;
- obj.flag = info->flag;
- obj.dthresh = objlist->dthresh;
- obj.thresh = objlist->thresh;
-
- preanalyse(0, objlist, ANALYSE_FAST);
-
-/*----- Check if the current strip contains the lower isophote... */
- if ((int)obj.ymin < cfield->ymin)
- obj.flag |= OBJ_ISO_PB;
-
- if (!(obj.flag & OBJ_OVERFLOW) && (createsubmap(objlist, 0) == RETURN_OK))
- {
- if (parcelout(objlist, &objlistout) == RETURN_OK)
- objlist2 = &objlistout;
- else
- {
- objlist2 = objlist;
- for (i=0; i<objlist2->nobj; i++)
- objlist2->obj[i].flag |= OBJ_DOVERFLOW;
- sprintf(gstr, "%.0f,%.0f", obj.mx+1, obj.my+1);
- warning("Deblending overflow for detection at ", gstr);
- }
- free(obj.submap);
- }
- else
- objlist2 = objlist;
-
- for (i=0; i<objlist2->nobj; i++)
- {
- preanalyse(i, objlist2, ANALYSE_FULL|ANALYSE_ROBUST);
- analyse(field, dfield, i, objlist2);
- cobj = objlist2->obj + i;
- if (prefs.blank_flag)
- {
- if (createblank(objlist2,i) != RETURN_OK)
- {
-/*------ Not enough mem. for the BLANK vignet: flag the object now */
- cobj->flag |= OBJ_OVERFLOW;
- cobj->blank = cobj->dblank = NULL;
- sprintf(gstr, "%.0f,%.0f", cobj->mx+1, cobj->my+1);
- warning("Memory overflow during masking for detection at ", gstr);
- }
- }
-
- if ((n=cleanobjlist->nobj) >= prefs.clean_stacksize)
- {
- objstruct *cleanobj;
- int ymin, ymax, victim;
-
- ymin = 2000000000; /* No image is expected to be that tall ! */
- cleanobj = cleanobjlist->obj;
- for (j=0; j<n; j++, cleanobj++)
- if (cleanobj->ycmax < ymin)
- {
- victim = j;
- ymin = cleanobj->ycmax;
- }
-
-/*---- Warn if there is a possibility for any aperture to be truncated */
- if (field->ymax < field->height)
- {
- cleanobj = &cleanobjlist->obj[victim];
- if ((ymax=cleanobj->ycmax) > field->ymax)
- {
- sprintf(gstr, "Object at position %.0f,%.0f ",
- cleanobj->mx+1, cleanobj->my+1);
- QWARNING(gstr, "may have some apertures truncated:\n"
- " You might want to increase MEMORY_OBJSTACK");
- }
- else if (ymax>field->yblank && prefs.blank_flag)
- {
- sprintf(gstr, "Object at position %.0f,%.0f ",
- cleanobj->mx+1, cleanobj->my+1);
- QWARNING(gstr, "may have some unBLANKed neighbours\n"
- " You might want to increase MEMORY_OBJSTACK");
- }
- }
-
- endobject(field, dfield, wfield, dwfield, victim, cleanobjlist);
- subcleanobj(victim);
- }
-
-/* Only add the object if it is not swallowed by cleaning */
- if (!prefs.clean_flag || clean(field, dfield, i, objlist2))
- addcleanobj(cobj);
- }
-
- free(objlistout.plist);
- free(objlistout.obj);
-
- return;
- }
-
-
-/******************************** preanalyse *********************************
-PROTO void preanalyse(int no, objliststruct *objlist, int analyse_type)
-PURPOSE Compute basic image parameters from the pixel-list for each detection.
-INPUT objlist number,
- objlist pointer,
- analysis switch flag.
-OUTPUT -.
-NOTES -.
-AUTHOR E. Bertin (IAP & Leiden & ESO)
-VERSION 28/11/98
- ***/
-void preanalyse(int no, objliststruct *objlist, int analyse_type)
-
- {
- objstruct *obj = &objlist->obj[no];
- pliststruct *pixel = objlist->plist, *pixt;
- PIXTYPE peak, cpeak, val, cval, minthresh, thresht;
- double thresh,thresh2, t1t2,darea,
- mx,my, mx2,my2,mxy, rv, tv,
- xm,ym, xm2,ym2,xym,
- temp,temp2, theta,pmx2,pmy2;
- int x, y, xmin,xmax, ymin,ymax,area2, fdnpix, dnpix;
-
-
-/*----- initialize stacks and bounds */
- thresh = obj->dthresh;
- if (PLISTEXIST(dthresh))
- minthresh = BIG;
- fdnpix = dnpix = 0;
- rv = 0.0;
- peak = cpeak = -BIG;
- ymin = xmin = 2*MAXPICSIZE; /* to be really sure!! */
- ymax = xmax = 0;
-
-/*----- integrate results */
- for (pixt=pixel+obj->firstpix; pixt>=pixel; pixt=pixel+PLIST(pixt,nextpix))
- {
- x = PLIST(pixt, x);
- y = PLIST(pixt, y);
- val=PLISTPIX(pixt, dvalue);
- if (cpeak < (cval=PLISTPIX(pixt, cdvalue)))
- cpeak = cval;
- if (PLISTEXIST(dthresh) && (thresht=PLISTPIX(pixt, dthresh))<minthresh)
- minthresh = thresht;
- if (peak < val)
- peak = val;
- rv += cval;
- if (xmin > x)
- xmin = x;
- if (xmax < x)
- xmax = x;
- if (ymin > y)
- ymin = y;
- if (ymax < y)
- ymax = y;
- fdnpix++;
- }
-
- if (PLISTEXIST(dthresh))
- obj->dthresh = thresh = minthresh;
-
-/* copy some data to "obj" structure */
-
- obj->fdnpix = (LONG)fdnpix;
- obj->fdflux = (float)rv;
- obj->fdpeak = cpeak;
- obj->dpeak = peak;
- obj->xmin = xmin;
- obj->xmax = xmax;
- obj->ymin = ymin;
- obj->ymax = ymax;
-
- if (analyse_type & ANALYSE_FULL)
- {
- mx = my = tv = 0.0;
- mx2 = my2 = mxy = 0.0;
- thresh2 = (thresh + peak)/2.0;
- area2 = 0;
- for (pixt=pixel+obj->firstpix; pixt>=pixel; pixt=pixel+PLIST(pixt,nextpix))
- {
- x = PLIST(pixt,x)-xmin; /* avoid roundoff errors on big images */
- y = PLIST(pixt,y)-ymin; /* avoid roundoff errors on big images */
- cval = PLISTPIX(pixt, cdvalue);
- tv += (val = PLISTPIX(pixt, dvalue));
- if (val>thresh)
- dnpix++;
- if (val > thresh2)
- area2++;
- mx += cval * x;
- my += cval * y;
- mx2 += cval * x*x;
- my2 += cval * y*y;
- mxy += cval * x*y;
- }
-
-/*----- compute object's properties */
- xm = mx / rv; /* mean x */
- ym = my / rv; /* mean y */
-
-/*-- In case of blending, use previous barycenters */
- if ((analyse_type&ANALYSE_ROBUST) && (obj->flag&OBJ_MERGED))
- {
- double xn,yn;
-
- xn = obj->mx-xmin;
- yn = obj->my-ymin;
- xm2 = mx2 / rv + xn*xn - 2*xm*xn;
- ym2 = my2 / rv + yn*yn - 2*ym*yn;
- xym = mxy / rv + xn*yn - xm*yn - xn*ym;
- xm = xn;
- ym = yn;
- }
- else
- {
- xm2 = mx2 / rv - xm * xm; /* variance of x */
- ym2 = my2 / rv - ym * ym; /* variance of y */
- xym = mxy / rv - xm * ym; /* covariance */
- }
-
-/* Handle fully correlated x/y (which cause a singularity...) */
- if ((temp2=xm2*ym2-xym*xym)<0.00694)
- {
- xm2 += 0.0833333;
- ym2 += 0.0833333;
- temp2 = xm2*ym2-xym*xym;
- obj->singuflag = 1;
- }
- else
- obj->singuflag = 0;
-
- if ((fabs(temp=xm2-ym2)) > 0.0)
- theta = atan2(2.0 * xym,temp) / 2.0;
- else
- theta = PI/4.0;
-
- temp = sqrt(0.25*temp*temp+xym*xym);
- pmy2 = pmx2 = 0.5*(xm2+ym2);
- pmx2+=temp;
- pmy2-=temp;
-
- obj->dnpix = (obj->flag & OBJ_OVERFLOW)? obj->fdnpix:(LONG)dnpix;
- obj->dflux = tv;
- obj->mx = xm+xmin; /* add back xmin */
- obj->my = ym+ymin; /* add back ymin */
- obj->mx2 = xm2;
- obj->my2 = ym2;
- obj->mxy = xym;
- obj->a = (float)sqrt(pmx2);
- obj->b = (float)sqrt(pmy2);
- obj->theta = theta*180.0/PI;
-
- obj->cxx = (float)(ym2/temp2);
- obj->cyy = (float)(xm2/temp2);
- obj->cxy = (float)(-2*xym/temp2);
-
- darea = (double)area2 - dnpix;
- t1t2 = thresh/thresh2;
- if (t1t2>0.0 && !prefs.dweight_flag)
- {
- obj->abcor = (darea<0.0?darea:-1.0)/(2*PI*log(t1t2<1.0?t1t2:0.99)
- *obj->a*obj->b);
- if (obj->abcor>1.0)
- obj->abcor = 1.0;
- }
- else
- obj->abcor = 1.0;
- }
-
- return;
- }
-
diff --git a/external/sextractor/source/sexchanges.log b/external/sextractor/source/sexchanges.log
deleted file mode 100644
index 80af81f..0000000
--- a/external/sextractor/source/sexchanges.log
+++ /dev/null
@@ -1,333 +0,0 @@
-/*
- sexchanges.log
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E. BERTIN (IAP)
-*
-* Contents: log of changes made to the SExtractor source
-*
-* Last modify: 11/02/2000
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-Who When Where(mostly) What
-
-EB 03/07/97 clean.c Make removal of LSB sources optional.
- scanimage() Idem.
- clean.h
- types.h Move prototypes from types.h to clean.h
-
-EB 23/07/97 - Blanking of detections. Major update.
- outobj2 components are now handled
- through the obj2 pointer.
-
-EB 31/07/97 photom.c MAGERR_APER bug introduced during the
- add of blanking fixed.
-
-EB 01/08/97 LDACTools Upgraded from the EIS version.
-
-EB 04/08/97 - Added handling of external FLAG-maps.
- read_prefs() Upgraded from the WeightWatcher code.
- newfield() Changed slightly the frame description
- display.
-EB 13/08/97 filterback() Fixed bug with even BACK_FILTERSIZE
- localback() Fixed bug with LOCAL backgrounds for
- BLANKed detections.
-
-EB 27/08/97 - Added handling of external WEIGHT-maps.
-
-EB 02/09/97 makeback() Added display of currently processed
- line.
- sexheadsc.h
- catout.c New ASCII_SKYCAT catalog format.
-
-EB 05/09/97 - Fixed -PROTOTYPES check-image bug.
-
-EB 13/09/97 filter.c Added FILTER_THRESH option.
- scan.c Fixed WEIGHT-map detection bug.
-
-EB 10/10/97 examine_iso()
- clean() Improve CLEANing and take into account
- variable S/N.
- plist.[c,h] New memory-friendly propagation of
- information through deblending.
-
-EB 16/10/97 main() New syntax for dual-image mode.
-
-EB 18/10/97 analyse.c
- photom.c Exact computation of photometric errors
- in the context of variable S/N.
-
-EB 20/10/97 prefs.h new MAMA_CORFLEX preferences parameter,
- astrom.c
- param.h new X_MAMA and Y_MAMA output parameters
-
-EB 21/10/97 createblank() Bug in single-image mode fixed.
- sortit() Bug in dual-image + BLANKing mode.
-
-EB 24/10/97 astrom.c X_MAMA and Y_MAMA computed differently
- addcleanobj() Bug in the automag flagging fixed by
- modifying the margin computations
-
-EB 26/10/97 analyse() ASSOC selection added.
- photom.c MASKing with photometric CORRECTion
- added.
-
-EB 04/11/97 readprefs() Added support for ENV variables within
- .sex config file.
-
-EB 06/11/97 photom.c Bug in FLUXERR_ISOCOR fixed.
-
-EB 13/11/97 end_readobj()
- end_writeobj() "Potential bug" fixed.
-
-EB 18/11/97 flag.[c,h] New module for computing flags from
- flag-map.
-
-EB 21/11/97 newfield() PIXEL_SCALE pb with non-WCS images
- fixed.
-
-EB 24/11/97 prefs.h CROSS_ID keyval changed to MATCHED.
- initcheck() WCS rescaling for MINIBACKGROUND and
- MINIBACKRMS added.
-
-EB 28/11/97 initcheck() Bug fixed in WCS coordinates of MINIs.
-
-EB 29/11/97 initcheck() Another bug added in MINIs fixed.
- sexhead.h Corrected SEXTHLD value.
-
-EB 19/12/97 readprefs() Test length of command-line arguments
-
-EB 21/12/97 endobject() Replace prefs pixel-scale by field
- pixel-scale for S/G separation.
-
-EB 06/01/98 readimagehead() Load basic WCS infos even if no astrom
- parameter is requested (for MINIBACKs).
- Added handling of CDxx_xx (thanks to
- D. Mink)
-
-EB 29/01/98 - Added crude interpolation scheme in
- presence of image weighting: new
- interpolate.c module.
-
-EB 30/01/98 preanalyse()
- examineiso() Changed the rules concerning the
- handling of "infinitely thin"
- detections (B_IMAGE=0).
-
-EB 31/01/98 parcelout() Fixed a big (but intermittent) bug
- preventing proper deblending in
- weighted images.
-
-EB 07/02/98 photom.c
- scan.c
- makeit.c Revisited completely the handling of
- bad pixels for the photometry.
-
-EB 10/02/98 endobject() (De)blanking strategy slightly changed.
-
-EB 16/02/98 - New parameters XPEAK_ and YPEAK_ added.
-
-EB 13/03/98 - Finalization of the handling of weights
- (Background RMS, weight threshold).
- endobject() SEGMENTATION check-image bug fixed.
-
-EB 16/03/98 readprefs() Management of the conflicts between
- weight-types seriously updated.
-
-EB 20/03/98 photom.c MAGERR bug in presence of weighting
- fixed.
-
-EB 23/03/98 clean() Wrong handling of abcor factor
- corrected.
-
-EB 25/03/98 clean() realloc() bug in CLEANing with Linux
- scan.c fixed.
-
-EB 26/03/98 readimagehead() Typo in OBS-DATE FITS keyword reading.
-
-EB 27/03/98 sortit() Bug that prevented some faint
- detections to be CLEANed fixed.
- - Add a new EXTRA_WARNINGS prefs option.
-
-EB 11/04/98 - Added FITS_UNSIGNED option.
- filterback() Bug with empty images fixed.
- main() New banner.
-
-EB 15/04/98 getflag() Potential bug for big objects with
- FLAGTYPE MOST fixed.
- examineiso() Wrong detection threshold for CLEANing
- in multi-image mode replaced with
- correct one.
-EB 29/04/98 - Allow multiple FLAG-MAPs (up to 4
- currently): IMAFLAG_ISO and
- NIMAFLAG_ISO have become vectors.
- getflags() Bug with FLAG_TYPEs MIN and MAX fixed.
-
-EB 30/04/98 copyastrom() Fixed a bug with INTERP_TYPE VAR_ONLY.
- - Simplified access init_interpolate.
-
-EB 02/05/98 define.h
- fitsread() Improve stability with incorrect FITS
- headers.
-
-EB 03/05/98 filterback() RMS determination more tolerant towards
- constant weight-maps.
- BACK_FILTERing anisotropy bug fixed.
- makeit() Bad closing of CHECKIMAGEs fixed.
- - New CATALOG_TYPE NONE option.
- - APER measurements functional again
- (recently introduced bug).
-
-EB 06/05/98 readimagehead() Pb with FITS astrometric strings fixed.
-
-EB 07/05/98 getconv() Uninitialized variable pb fixed.
-
-EB 12/05/98 loadstrip() Bug in the production of BACKGROUND
- CHECK-image fixed.
-
-EB 28/05/98 define.h new VECFLAG() macro for flagging
- arrays.
- prefs.h Remove "&" before ptrs to static
- arrays.
-
-EB 13/06/98 initastrom() Wrong mapping of PC components fixed.
- readimagehead() Wrong mapping of CD components fixed.
-
-EB 29/06/98 makeit() Handling of weight-maps+interpolation
- simplified.
- scanimage() Missing reference field in the reading
- of dwscan added.
- useprefs() Bad default threshold in VAR_ONLY
- interpolation mode fixed.
-
-EB 30/06/98 backguess() Missing scaling of "sig" in the
- computation of "*mean" added, but
- threshold changed from 0.2 to 0.0,
- awaiting for more tests.
-
-EB 08/07/98 readimagehead() CDx_x FITS WCS parameters are now
- given priority before PCxxxx.
-
-EB 09/07/98 filterback() Filtering bug at image borders fixed.
-
-EB 21/07/98 photom.c Division by zero for unphotometrable
- objects fixed.
-
-EB 23/07/98 fitswrite() Pb with very long strings fixed.
- readcatparams() Reading of .param files more robust.
- Comments starting with '#' now allowed.
-
-EB 27/07/98 readimagehead()
- initcheck() Changed the handling of CDELTx params
- when CDx_x are used. Now works with
- MINIBACKGROUND check-images.
-
-EB 11/08/98 photom.c Purify warning fixed in
- computeautoflux()
- scan.c Purify warning fixed in scanimage().
- BLANKing procedure of CLEANed pixels
- fixed. Memory leaks fixed.
-
-EB 18/11/98 - New BACK_TYPE, BACK_VALUE, and
- THRESH_TYPE config parameters.
- flag.c Fixed initialization bug in FLAG_TYPE
- MAX mode (thanks to T.Erben).
-
-EB 20/11/98 back.c New BACK_FILTTHRESH parameter.
-
-EB 23/11/98 prefs.c
- weight.c Quick fix of MAP_RMS measurement mode.
-
-EB 26/11/98 - New key->alloc flag to distinguish
- between constant and dynamic pointers.
-
-EB 28/11/98 - lint warnings fixed.
-
-EB 29/11/98 assoc.c New ASSOC_TYPE NEAREST option.
-
-EB 28/12/98 catout.c Added dependency between flux_auto and
- flux_radius
-
-EB 13/01/99 endobject() Fixed numbering problem in SEGMENTATION
- maps when CLEAN is N.
-
-EB 27/01/99 load_assoc() Stupid bug in 2 ASSOC_PARAMS mode
- fixed.
-
-EB 19/02/99 examineiso() Variable thresholding is now taken into
- account for S/G classification and
- FWHMs.
-
-EB 25/02/99 types.h Wrong data-type for BACK_VALUE fixed.
-
-EB 02/03/99 examineiso() XPEAK and YPEAK offset bug fixed.
-
-EB 06/04/99 - Unused variables removed.
- clean.c
- scan.c New handling of CLEANed blanked
- detections.
-
-EB 08/04/99 - Various memory leaks fixed
- readimage() BACKGROUND_RMS check-images now
- operational in single-image mode.
-
-EB 15/04/99 param.h Remove the 0's from the formatting
- of flags.
-
-EB 21/04/99 - New _PROFILE photometric parameters.
-
-EB 06/05/99 examineiso() Potential bug in the threshs[i] fixed.
- readimage() Bug in BACKGROUND_RMS mode fixed.
-
-EB 11/05/99 - Major change: handling of weight-maps
- during the background processing.
- New WEIGHT_GAIN parameter.
-
-EB 19/05/99 scanimage() Important "bug" fix: slight differences
- between single- and double-image modes
- supressed.
-
-EB 24/05/99 makeback() Memory leak in double-weight/single-
- image mode fixed.
- makeit() New info display.
- inheritfield() Interpolation flag is no longer
- inherited (fixes a bug in some weird
- double-weight-maps configs).
-
-EB 12/08/99 endfield() Fixed segmentation fault at the end
- of processing when ASSOC is used.
- psf_load() Remove malloc() of null-size data
- with constant PSFs.
-
-EB 10/09/99 makeit() Background pb in WEIGHT_TYPE NONE,...
- fixed.
-
-EB 14/09/99 back() Replacement value for bad variance map
- background meshes changed to 1.0
- scanimage() Bug with THRESH_TYPE ABSOLUTE in
- WEIGHTing mode fixed.
-
-EB 30/09/99 fitsread() The quote (') symbol is now properly
- handled in FITS headers.
-
-EB 07/10/99 scanimage() Removed debug information inadvertently
- left in the previous release.
-
-EB 24/01/2000 computeautoflux()
- Small inaccuracy in crowding-flag
- positioning fixed.
-
-EB 01/02/2000 localback() Fixed division by zero in local background
- estimates of some heavily deblended
- detections in MASK_TYPE CORRECT mode.
-EB 03/02/2000 makeback() Risk of segmentation fault with huge weight
- maps fixed.
-
-EB 11/02/2000 computeautoflux()
- Wrong version of photom.c in release V2.1.5
- fixed.
diff --git a/external/sextractor/source/sexhead.h b/external/sextractor/source/sexhead.h
deleted file mode 100644
index ee1c0e0..0000000
--- a/external/sextractor/source/sexhead.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- sexhead.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, DeNIS/LDAC.
-*
-* Contents: header structure and templates for catalog data.
-*
-* Last modify: 25/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-keystruct headkey[] = {
- {"FITSFILE", "File name of the analysed image",
- cat.image_name, H_STRING, T_STRING, "%-18s"},
- {"SEXVERS ", "Extraction software",
- cat.soft_name, H_STRING, T_STRING, "%-18s"},
- {"SEXDATE ", "Extraction date",
- cat.ext_date, H_STRING, T_STRING, "%-18s"},
- {"SEXTIME ", "Extraction time",
- cat.ext_time, H_STRING, T_STRING, "%-18s"},
- {"SEXELAPS", "Elapsed time during extraction (s)",
- &cat.ext_elapsed, H_FLOAT, T_DOUBLE, "%7.1f"},
- {"SEXBKGND", "Median background level (ADU)",
- &thefield1.backmean, H_EXPO, T_FLOAT, "%-13G"},
- {"SEXBKDEV", "Median background RMS (ADU)",
- &thefield1.backsig, H_EXPO, T_FLOAT, "%-13G"},
- {"SEXTHLD ", "Extraction threshold (ADU)",
- &thefield2.dthresh, H_EXPO, T_FLOAT, "%-15G"},
- {"SEXATHLD", "Analysis threshold (ADU)",
- &thefield1.thresh, H_EXPO, T_FLOAT, "%-15G"},
- {"SEXNDET ", "Number of raw detections",
- &cat.ndetect, H_INT, T_LONG, "%9d"},
- {"SEXNFIN ", "Final number of extracted sources",
- &cat.ntotal, H_INT, T_LONG, "%9d"},
- {"SEXNPARA", "Number of parameters per source",
- &cat.nparam, H_INT, T_LONG, "%3d"},
- {"SEXPXSCL", "Pixel scale used for measurements (arcsec)",
- &thefield1.pixscale, H_EXPO, T_DOUBLE, "%-15G"},
- {"SEXSFWHM", "Source FWHM used for measurements (arcsec)",
- &prefs.seeing_fwhm, H_EXPO, T_DOUBLE, "%-13G"},
- {"SEXNNWF ", "S/G classification NNW filename",
- cat.nnw_name, H_STRING, T_STRING, "%-18s"},
- {"SEXGAIN ", "Gain used (e-/ADU)",
- &prefs.gain, H_EXPO, T_DOUBLE, "%6.2f"},
- {"SEXFLTR ", "Detection filtering activated (flag)",
- &prefs.filter_flag, H_BOOL, T_LONG, "%1s"},
- {"SEXFILTN", "Filter filename",
- cat.filter_name, H_STRING, T_STRING, "%-18s"},
-/*
- {"SEXDETT ", "Detection type",
- &prefs.detect_type, H_STRING, T_STRING, "%-18s"},
-*/
- {"SEXMINAR", "Minimum area used for detection (pixels)",
- &prefs.ext_minarea, H_INT, T_LONG, "%5d"},
- {"SEXDBLDN", "Number of deblending thresholds",
- &prefs.deblend_nthresh, H_INT, T_LONG, "%3d"},
- {"SEXDBLDC", "Minimum contrast used for deblending",
- &prefs.deblend_mincont, H_FLOAT, T_DOUBLE, "%8f"},
- {"SEXCLN ", "Cleaning activated (flag)",
- &prefs.clean_flag, H_BOOL, T_LONG, "%1s"},
- {"SEXCLNPA", "Cleaning parameter",
- &prefs.clean_param, H_FLOAT, T_DOUBLE, "%5.2f"},
- {"SEXCLNST", "Cleaning stack-size",
- &prefs.clean_stacksize, H_INT, T_LONG, "%6d"},
- {"SEXAPED1", "Fixed photometric aperture #1 (pixels)",
- &prefs.apert[0], H_FLOAT, T_DOUBLE, "%7.1f"},
- {"SEXAPED2", "Fixed photometric aperture #2 (pixels)",
- &prefs.apert[1], H_FLOAT, T_DOUBLE, "%7.1f"},
- {"SEXAPED3", "Fixed photometric aperture #3 (pixels)",
- &prefs.apert[2], H_FLOAT, T_DOUBLE, "%7.1f"},
- {"SEXAPED4", "Fixed photometric aperture #4 (pixels)",
- &prefs.apert[3], H_FLOAT, T_DOUBLE, "%7.1f"},
- {"SEXAUTP1", "Parameter #1 used for automatic magnitudes",
- &prefs.autoparam[0], H_FLOAT, T_DOUBLE, "%4.1f"},
- {"SEXAUTP2", "Parameter #2 used for automatic magnitudes",
- &prefs.autoparam[1], H_FLOAT, T_DOUBLE, "%4.1f"},
- {"SEXSATLV", "Saturation level used for flagging (ADU)",
- &prefs.satur_level, H_EXPO, T_DOUBLE, "%-13G"},
- {"SEXMGZPT", "Zero-point used for magnitudes",
- &prefs.mag_zeropoint, H_FLOAT, T_DOUBLE, "%8.4f"},
- {"SEXMGGAM", "Gamma used for photographic photometry",
- &prefs.mag_gamma, H_FLOAT, T_DOUBLE, "%4.2f"},
- {"SEXBKGSX", "Mesh width used for background mapping (pixels)",
- &thefield1.backw, H_INT, T_LONG, "%5d"},
- {"SEXBKGSY", "Mesh height used for background mapping (pixels)",
- &thefield1.backh, H_INT, T_LONG, "%5d"},
- {"SEXBKGFX", "Mask width used for background map filtering",
- &thefield1.nbackfx, H_INT, T_LONG, "%3d"},
- {"SEXBKGFY", "Mask height used for background map filtering",
- &thefield1.nbackfy, H_INT, T_LONG, "%3d"},
-/*
- {"SEXPBKGT", "Background type for photometry",
- &prefs.pback_type, H_STRING, T_STRING, "-18s"},
-*/
- {"SEXPBKGS", "Thickness used for local background (pixels)",
- &prefs.pback_size, H_INT, T_LONG, "%3d"},
- {"SEXPIXSK", "Pixel stack-size (pixels)",
- &prefs.mem_pixstack, H_INT, T_LONG, "%8d"},
- {"SEXFBUFS", "Image-buffer height (scanlines)",
- &prefs.mem_bufsize, H_INT, T_LONG, "%5d"},
- {"SEXMWSCL", "Measurement-weight re-scaling factor",
- &thewfield1.sigfac, H_EXPO, T_FLOAT, "%-13G"},
- {"SEXDWSCL", "Detection-weight re-scaling factor",
- &thewfield2.sigfac, H_EXPO, T_FLOAT, "%-13G"},
- {""}};
-
diff --git a/external/sextractor/source/sexhead1.h b/external/sextractor/source/sexhead1.h
deleted file mode 100644
index e388d63..0000000
--- a/external/sextractor/source/sexhead1.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- sexhead1.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, DeNIS/LDAC.
-*
-* Contents: header (FITS format #1) and templates for catalog data.
-*
-* Last modify: 24/10/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-
-int idummy;
-double ddummy;
-
-keystruct headkey1[] = {
- {"EPOCH ", "",
- &thefield1.epoch, H_FLOAT, T_DOUBLE, "%7.2f"},
- {"OBJECT ", "",
- thefield1.ident, H_STRING, T_STRING, "%18s"},
- {"ORIGIN ", "",
- "SExtractor", H_STRING, T_STRING, "%18s"},
- {"CRVAL1", "WORLD X COORD. OF REFERENCE PIXEL",
- &ddummy, H_EXPO, T_DOUBLE, "%15G"},
- {"CRVAL2", "WORLD Y COORD. OF REFERENCE PIXEL",
- &ddummy, H_EXPO, T_DOUBLE, "%15G"},
- {"CRPIX1", "IMAGE X COORD. OF REFERENCE PIXEL",
- &idummy, H_INT, T_LONG, "%5d"},
- {"CRPIX2", "IMAGE Y COORD. OF REFERENCE PIXEL",
- &idummy, H_INT, T_LONG, "%5d"},
- {"CDELT1", "WORLD PIXEL STEP ALONG X",
- &ddummy, H_EXPO, T_DOUBLE, "%15G"},
- {"CDELT2", "WORLD PIXEL STEP ALONG Y",
- &ddummy, H_EXPO, T_DOUBLE, "%15G"},
- {"CROTA1", "CCW ANGLE FROM X-IMAGE TO X-WORLD",
- &ddummy, H_EXPO, T_DOUBLE, "%15G"},
- {"CROTA2", "CCW ANGLE FROM Y-IMAGE TO Y-WORLD",
- &ddummy, H_EXPO, T_DOUBLE, "%15G"},
- {"SEXIMASX", "IMAGE WIDTH (PIXELS)",
- &thefield1.width, H_INT, T_LONG, "%10d"},
- {"SEXIMASY", "IMAGE HEIGHT (PIXELS)",
- &thefield1.height, H_INT, T_LONG, "%10d"},
- {"SEXSTRSY", "STRIP HEIGHT (LINES)",
- &thefield1.stripheight, H_INT, T_LONG, "%10d"},
- {"SEXIMABP", "FITS IMAGE BITPIX",
- &thefield1.bitpix, H_INT, T_LONG, "%3d"},
- {"SEXPIXS", "PIXEL SCALE (ARCSEC)",
- &thefield1.pixscale, H_EXPO, T_DOUBLE, "%12G"},
- {"SEXSFWHM", "SEEING FWHM (ARCSEC)",
- &prefs.seeing_fwhm, H_EXPO, T_DOUBLE, "%12G"},
- {"SEXNNWF ", "CLASSIFICATION NNW FILENAME",
- cat.nnw_name, H_STRING, T_STRING, "%18s"},
- {"SEXGAIN ", "GAIN (IN E- PER ADU)",
- &prefs.gain, H_EXPO, T_DOUBLE, "%7.3F"},
- {"SEXBKGND", "MEDIAN BACKGROUND (ADU)",
- &thefield1.backmean, H_EXPO, T_FLOAT, "%12G"},
- {"SEXBKDEV", "MEDIAN RMS (ADU)",
- &thefield1.backsig, H_EXPO, T_FLOAT, "%12G"},
- {"SEXBKTHD", "EXTRACTION THRESHOLD (ADU)",
- &thefield2.thresh, H_EXPO, T_FLOAT, "%12G"},
- {"SEXCONFF", "CONFIGURATION FILENAME",
- cat.prefs_name, H_STRING, T_STRING, "%18s"},
- {"SEXDETT ", "DETECTION TYPE",
- "CCD", H_STRING, T_STRING, "%s"},
- {"SEXTHLDT", "THRESHOLD TYPE",
- "SIGMA", H_STRING, T_STRING, "%s"},
- {"SEXTHLD ", "THRESHOLD",
- &prefs.dthresh[0], H_EXPO, T_DOUBLE, "%12G"},
- {"SEXMINAR", "EXTRACTION MINIMUM AREA (PIXELS)",
- &prefs.ext_minarea, H_INT, T_LONG, "%6d"},
- {"SEXCONV ", "CONVOLUTION FLAG",
- &prefs.filter_flag, H_BOOL, T_LONG, "%1s"},
- {"SEXCONVN", "CONVOLUTION NORM. FLAG",
- &prefs.filter_flag, H_BOOL, T_LONG, "%1s"},
- {"SEXCONVF", "CONVOLUTION FILENAME",
- cat.filter_name, H_STRING, T_STRING, "%18s"},
- {"SEXDBLDN", "NUMBER OF SUB-THRESHOLDS",
- &prefs.deblend_nthresh, H_INT, T_LONG, "%3d"},
- {"SEXDBLDC", "CONTRAST PARAMETER",
- &prefs.deblend_mincont, H_FLOAT, T_DOUBLE, "%8f"},
- {"SEXCLN ", "CLEANING FLAG",
- &prefs.clean_flag, H_BOOL, T_LONG, "%1s"},
- {"SEXCLNPA", "CLEANING PARAMETER",
- &prefs.clean_param, H_FLOAT, T_DOUBLE, "%8f"},
- {"SEXCLNST", "CLEANING OBJECT-STACK",
- &prefs.deblend_nthresh, H_INT, T_LONG, "%6d"},
- {"SEXAPERD", "APERTURE DIAMETER (PIXELS)",
- &prefs.apert[0], H_INT, T_LONG, "%7.1f"},
- {"SEXAPEK1", "KRON PARAMETER",
- &prefs.autoparam[0], H_FLOAT, T_DOUBLE, "%4.1f"},
- {"SEXAPEK2", "KRON ANALYSIS RADIUS",
- &prefs.autoparam[0], H_FLOAT, T_DOUBLE, "%4.1f"},
- {"SEXAPEK3", "KRON MINIMUM RADIUS",
- &prefs.autoparam[1], H_FLOAT, T_DOUBLE, "%4.1f"},
- {"SEXSATLV", "SATURATION LEVEL (ADU)",
- &prefs.satur_level, H_EXPO, T_DOUBLE, "%12G"},
- {"SEXMGZPT", "MAGNITUDE ZERO-POINT",
- &prefs.mag_zeropoint, H_FLOAT, T_DOUBLE, "%8.4f"},
- {"SEXMGGAM", "MAGNITUDE GAMMA",
- &prefs.mag_gamma, H_FLOAT, T_DOUBLE, "%4.2f"},
- {"SEXBKGSX", "BACKGROUND MESH WIDTH (PIXELS)",
- &thefield1.backw, H_INT, T_LONG, "%5d"},
- {"SEXBKGSY", "BACKGROUND MESH HEIGHT (PIXELS)",
- &thefield1.backh, H_INT, T_LONG, "%5d"},
- {"SEXBKGFX", "BACKGROUND FILTER WIDTH",
- &thefield1.nbackfx, H_INT, T_LONG, "%3d"},
- {"SEXBKGFY", "BACKGROUND FILTER HEIGHT",
- &thefield1.nbackfy, H_INT, T_LONG, "%3d"},
- {"SEXPBKGT", "PHOTOM BACKGROUND TYPE",
- "GLOBAL", H_STRING, T_STRING, "%s"},
- {"SEXPBKGS", "LOCAL AREA THICKNESS (PIXELS)",
- &prefs.pback_size, H_INT, T_LONG, "%3d"},
- {"SEXPIXSK", "PIXEL STACKSIZE (PIXELS)",
- &prefs.mem_pixstack, H_INT, T_LONG, "%8d"},
- {"SEXFBUFS", "FRAME-BUFFER SIZE (LINES)",
- &prefs.mem_bufsize, H_INT, T_LONG, "%5d"},
- {"SEXISAPR", "ISO-APER RATIO",
- &ddummy, H_FLOAT, T_DOUBLE, "%4.2f"},
- {"SEXNDET ", "NB OF DETECTIONS",
- &cat.ndetect, H_INT, T_LONG, "%9d"},
- {"SEXNFIN ", "NB OF FINAL EXTRACTED OBJECTS",
- &cat.ntotal, H_INT, T_LONG, "%9d"},
- {"SEXNPARA", "NB OF PARAMETERS PER OBJECT",
- &cat.nparam, H_INT, T_LONG, "%3d"},
- {""}};
-
diff --git a/external/sextractor/source/sexheadsc.h b/external/sextractor/source/sexheadsc.h
deleted file mode 100644
index 3d9a828..0000000
--- a/external/sextractor/source/sexheadsc.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- sexheadsc.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN, DeNIS/LDAC.
-*
-* Contents: header structure and templates for SkyCat output.
-*
-* Last modify: 02/09/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-char skycathead[] = "QueryResult\n\n"
- "# Config entry for original catalog server:\n"
- "serv_type: catalog\n"
- "long_name: SExtractor catalog\n"
- "short_name: SExCat\n"
- "symbol: id diamond %4.1f\n"
- "# End config entry\n\n"
- "id\tra\tdec\tmag";
-
-char skycattail[] = "[EOD]";
-
diff --git a/external/sextractor/source/som.c b/external/sextractor/source/som.c
deleted file mode 100644
index e53b69b..0000000
--- a/external/sextractor/source/som.c
+++ /dev/null
@@ -1,681 +0,0 @@
- /*
- som.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using neural networks.
-*
-* Author: E.BERTIN, Institut d'Astrophysique de Paris.
-*
-* Contents: Implementation of Kohonen's Self Organizing Map (V3.0).
-*
-* Last modify: 28/11/98
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "fitscat.h"
-#include "som.h"
-
-/********************************* som_phot **********************************/
-/*
-Perform SOM-fitting on a detected source: returns node number of the
-best-fitting prototype.
-*/
-void som_phot(somstruct *som, float back, float backnoise, float gain,
- float dx0, float dy0, float *vector, float clip)
- {
- float err, errmin, *xnt;
- int i,j,nd,jmin, *nx, *mul;
-
- nd = som->neurdim;
-/* First we compute the error map */
- if (clip!=0.0)
- if (!som_mkweight(som, back, backnoise, gain))
- {
-/*---- If all weights to zero, don't go further! */
- som->stderror = -1.0;
- som->amp = som->sigamp = 0.0;
- if (vector)
- {
- xnt = som->vector;
- for (i=nd; i--;)
- *(vector++) = 99.0;
- }
- return;
- }
-
-/* Use a sound starting point for the gradient search */
-/*
- i = nd-1;
- som->vector[i--] = (dy0+0.5)*som->neursize[i]+0.4999;
- som->vector[i] = (dx0+0.5)*som->neursize[i]+0.4999;
- while (i--)
- som->vector[i] = (som->neursize[i]-1)/2.0;
-*/
- errmin=BIG;
- for (j=0; j<som->nneur; j++)
- {
- if ((err=som_err(som, (float)j, SOM_NODE))<errmin)
- {
- errmin = err;
- jmin = j;
- }
- }
-
- mul = som->neurstep;
- nx = som->neursize;
- xnt = som->vector;
- for (i=nd; i--;)
- *(xnt++) = (float)((jmin/(*(mul++)))%(*(nx++)));
-
-/* Gradient search */
- som_conjgrad(som, 1e-6);
-
-/* Now perform the true photometry */
- som->stderror = (float)sqrt(som_err(som, 0.0, SOM_PHOTOM));
-
-/* Store final position vector if requested */
- if (vector)
- {
- xnt = som->vector;
- for (i=nd; i--;)
- *(vector++) = *(xnt++);
- }
-
- if (clip>0.0)
- {
-/*-- Clip deviant pixels if requested */
- float *input, *inputw, *proto, diff;
-
- proto = som->proto;
- input = som->input;
- inputw = som->inputw;
- for (i=som->ninput-som->nextrainput;i--; inputw++)
- {
- diff = *(input++)-*(proto++);
- if (*inputw>0.0 && (diff*diff>clip/(*inputw)))
- *inputw /= clip;
- }
- }
-
- return;
- }
-
-
-/****************************** som_mkweight *********************************/
-/*
-Compute weights associated to pixels in a vignet.
-*/
-int som_mkweight(somstruct *som, float back, float backnoise, float gain)
- {
- float *yt, *wt, wstiff, pix, llim,hlim;
- int i, nima, ngood;
-
- yt = som->input;
- wt = som->inputw;
- nima = som->ninput-som->nextrainput;
- llim = -5.0*backnoise;
- hlim = prefs.satur_level-back;
- backnoise *= backnoise;
- ngood = 0;
- for (i=nima; i--;)
- {
- pix = *(yt++);
-/*-- look if pixel is in the "reasonable" range */
- if (pix>llim && pix<hlim)
- {
- *(wt++) = 1/((pix>0.0?pix/gain:0.0)+backnoise);
- ngood++;
- }
- else
- *(wt++) = 0.0;
- }
-
- wstiff = 1/(som->xy_stiff*som->xy_stiff);
- for (i=som->nextrainput; i--;)
- *(wt++) = wstiff;
-
- return ngood;
- }
-
-
-/********************************** som_err **********************************/
-/*
-Return the reduced RMS error at some (non-integer) position in the SOM.
-1 degree of freedom is left: the amplitude of the prototype.
-*/
-float som_err(somstruct *som, float dist, int flags)
- {
- static float dx[SOM_MAXDIM];
- double s,sx,sxx,sy,syy,sxy,b,err,ds;
- float *psft, *dxt, *wt,*xt,*yt,xi,yi,wi,wxi,wyi, diff,dd;
- int i,j,k,n, nd, *nx, *mult, ix, pos,post, nima;
-
-/* Is the requested position lying on a node? */
- if (flags & SOM_NODE)
-/*-- Yes: just use the prototype at that node */
- xt = som->weight+som->ninput*(int)dist;
- else
- {
-/*-- ...No: compute offsets and fractional parts for each dimension */
- nd = som->neurdim;
- nx = som->neursize;
- xt = som->vector;
- if (flags & SOM_LINE)
- yt = som->dvector;
- pos = 0;
- dxt = dx;
- mult = som->neurstep;
-
- for (i=nd; i--; nx++)
- {
- xi = *(xt++);
- if (flags & SOM_LINE)
- xi += dist**(yt++);
- ix = (int)xi;
- if (ix<0)
- ix = 0;
- else if (ix>=*nx-1)
- ix = *nx-2;
- if (ix<0)
- {
- ix = 0;
- *(dxt++) = 0.0;
- }
- else
- *(dxt++) = xi - ix;
- pos += ix**(mult++);
- }
-
- memset(som->proto, 0, som->ninput*sizeof(float));
- n = 1<<nd; /* OK until the SOM has less than 32 dimensions... */
- for (j=0; j<n; j++)
- {
- post = pos;
- dd = 1.0;
- dxt = dx;
- nx = som->neursize;
- mult = som->neurstep;
- for (i=0; i<nd; mult++, nx++)
- {
- if (((1<<(i++)) & j) && *nx>1)
- {
- post += *mult;
- dd *= *(dxt++);
- }
- else
- dd *= (1-*(dxt++));
- }
- psft = som->proto;
- wt = som->weight + som->ninput*post;
- for (i=som->ninput; i--;)
- *(psft++) += dd**(wt++);
- }
- xt = som->proto;
- }
-
- yt = som->input;
- wt = som->inputw;
- nima = som->ninput-som->nextrainput;
-
-/* Test if we need to derive photometry, or just compute the error */
- if (flags & SOM_PHOTOM)
- {
-/*-- Yes: photometry */
- s = sx = sy = sxx = syy = sxy = 0.0;
- for (i=nima; i--;)
- {
- s += (wi = *(wt++));
- sx += (wxi = wi*(xi=*(xt++)));
- sxx += wxi*xi;
- sy += (wyi = wi*(yi=*(yt++)));
- syy += wyi*yi;
- sxy += wxi*yi;
- }
-
-/*-- First, the error from the image-fitting */
- som->amp = b = sxy/sxx;
- err = (syy - b*sxy)/(nima-1);
- som->sigamp = sqrt(err*s/(s*sxx-sx*sx));
-
-/*-- Second, the error of non-pixel parameters */
- for (i=som->nextrainput; i--;)
- {
- diff = *(yt++) - *(xt++);
- err += (diff*diff*(double)*(wt++))/(double)som->nextrainput;
- }
- }
- else
- {
-/*-- No: just an estimate of error */
- sxx = sxy = 0.0;
- for (i=nima; i--;)
- {
- sxy += (wxi = *(wt++)*(xi=*(xt++)))**(yt++);
- sxx += wxi*xi;
- }
-
-/*-- First, the error from the image-fitting */
- err = -sxy*sxy/sxx/(nima-1);
-
-/*-- Second, the error of non-pixel parameters */
- for (i=som->nextrainput; i--;)
- {
- diff = *(yt++) - *(xt++);
- err += (diff*diff*(double)*(wt++))/(double)som->nextrainput;
- }
- }
-
-/* Compute error gradients if requested */
- if (flags & SOM_GRADIENT)
- {
- for (k=0; k<nd; k++)
- {
- memset(som->dproto, 0, som->ninput*sizeof(float));
- for (j=0; j<n; j++)
- {
- dd = 1.0;
- post = pos;
- dxt = dx;
- mult = som->neurstep;
- nx = som->neursize;
- for (i=0; i<nd; mult++, dxt++, nx++)
- {
- if (((1<<i) & j) && *nx>1)
- {
- post += *mult;
- if ((i++)!=k)
- dd *= *dxt;
- }
- else
- dd *= ((i++)==k ? (*nx>1?-1.0:0.0) : (1-*dxt));
- }
- psft = som->dproto;
- wt = som->weight + som->ninput*post;
- for (i=som->ninput; i--;)
- *(psft++) += dd**(wt++);
- }
- ds = 0.0;
- psft = som->dproto;
- xt = som->proto;
- yt = som->input;
- wt = som->inputw;
- for (i=nima; i--;)
- ds += *(wt++)*(sxy**(xt++)-sxx**(yt++))**(psft++);
- ds *= 2*sxy/(sxx*sxx)/(nima-1);
- for (i=som->nextrainput; i--;)
- ds += 2**(wt++)**(psft++)*(*(xt++)-*(yt++))/(double)som->nextrainput;
- som->dvector[k] = (float)ds;
- }
- }
-
- return (float)err;
- }
-
-
-/******************************** som_linmin *********************************/
-/*
-Perform minimisation through line-search using two routines from Numerical
-Recipes in C: mnbrak() and brent() (pp. 297 and 301).
-*/
-
-#define SHFT(a,b,c,d) {(a)=(b);(b)=(c);(c)=(d);} /* For line-search */
-#define SIGN(a,b) ((b)>0.0? fabs(a) : -fabs(a)) /* For line-search */
-
-#define GOLD 1.6180340 /* Golden section for line-search */
-#define CGOLD 0.3819660 /* Complement to the golden section */
-#define TINY 1e-20 /* Almost nothing */
-#define GLIMIT 100.0 /* Max. magnification in line-search */
-#define ITMAX 100 /* Max. nb of iter. in line-search */
-#define TOL 1e-1 /* Fract. tolerance in line-search */
-
-float som_linmin(somstruct *som)
- {
- float ax,bx,cx, fa,fb,fc, u,r,q,fu,dum,ulim, qmr, a,b,d,e,etemp,
- fv,fw,fx, p, tol1,tol2,v,w,x,xm, *vt,*dvt;
- int i,iter;
-
-/* Normalize the gradient */
-/*
- dvt = som->dvector;
- for (i=som->neurdim; i--; dvt++)
- dum += *dvt**dvt;
- if (dum>0.0)
- {
- dum = sqrt(dum);
- dvt = som->dvector;
- for (i=som->neurdim; i--;)
- *(dvt++) /= dum;
- }
-*/
-/* Begin by bracketing a minimum of the function */
- ax = 0.0; /* Initial guesses */
- bx = 1.0;
- if ((fb=som_err(som, bx, SOM_LINE)) > (fa=som_err(som, ax, SOM_LINE)))
- {
- SHFT(dum, ax, bx, dum);
- SHFT(dum, fb, fa, dum);
- }
- fc = som_err(som, cx = bx+GOLD*(bx-ax), SOM_LINE);
- while (fb > fc)
- {
- r = (bx-ax)*(fb-fc);
- q = (bx-cx)*(fb-fa);
- if (fabs(qmr = q-r)<TINY)
- qmr = qmr>0.0?TINY:-TINY;
- u = bx-((bx-cx)*q - (bx-ax)*r) / (2.0*qmr);
- ulim= bx + GLIMIT*(cx-bx);
- if ((bx-u)*(u-cx) > 0.0)
- {
- if ((fu=som_err(som, u, SOM_LINE)) < fc)
- {
- ax = bx;
- bx = u;
- fa = fb;
- fb = fu;
- break;
- }
- else if (fu > fb)
- {
- cx = u;
- fc = fu;
- break;
- }
- fu = som_err(som, u = cx + GOLD*(cx-bx), SOM_LINE);
- }
- else if ((cx-u)*(u-ulim) > 0.0)
- {
- if ((fu=som_err(som, u, SOM_LINE)) < fc)
- {
- SHFT(bx, cx, u, cx+GOLD*(cx-bx));
- SHFT(fb, fc, fu, som_err(som, u, SOM_LINE));
- }
- }
- else if ((u-ulim)*(ulim-cx) >= 0.0)
- fu = som_err(som, u=ulim, SOM_LINE);
- else
- fu = som_err(som, u = cx + GOLD*(cx-bx), SOM_LINE);
- SHFT(ax, bx, cx, u);
- SHFT(fa, fb, fc, fu);
- }
-
-/* Now we step to Brent's algorithm for finding the minimum */
- e = 0.0;
- a = (ax < cx) ? ax : cx;
- b = (ax > cx) ? ax : cx;
- x = w = v = bx;
- fw = fv = fx = som_err(som, x, SOM_LINE);
- for (iter=ITMAX; iter--;)
- {
- xm = 0.5*(a+b);
- tol2 = 2 * (tol1=TOL*fabs(x)+TINY);
- if (fabs(x-xm) <= (tol2-0.5*(b-a)))
- goto linmin_end;
- if (fabs(e) > tol1)
- {
- r = (x-w) * (fx-fv);
- q = (x-v) * (fx-fw);
- p = (x-v)*q - (x-w)*r;
- q = 2*(q-r);
- if (q > 0.0)
- p = -p;
- q = fabs(q);
- etemp = e;
- e = d;
- if (fabs(p) >= fabs(0.5*q*etemp) || p <= q*(a-x) || p >= q*(b-x))
- d = CGOLD*(e=(x >= xm ? a-x : b-x));
- else
- {
- d = p/q;
- u = x+d;
- if (u-a < tol2 || b-u < tol2)
- d = SIGN(tol1,xm-x);
- }
- }
- else
- d = CGOLD*(e=(x >= xm ? a-x : b-x));
- u = (fabs(d) >= tol1 ? x+d : x+SIGN(tol1,d));
- if ((fu=som_err(som, u, SOM_LINE)) <= fx)
- {
- if (u >= x)
- a = x;
- else
- b = x;
- SHFT(v, w, x, u);
- SHFT(fv, fw, fx, fu);
- }
- else
- {
- if (u < x)
- a = u;
- else
- b = u;
- if (fu <= fw || w == x)
- {
- v = w;
- w = u;
- fv = fw;
- fw = fu;
- }
- else if (fu <= fv || v == x || v == w)
- {
- v = u;
- fv = fu;
- }
- }
- }
-
- warning("Too many iterations in ", "som_linmin()");
-
-/* Finally we set the SOM vector to the new minimum */
-linmin_end:
- vt = som->vector;
- dvt = som->dvector;
- for (i=som->neurdim; i--;)
- *(vt++) += x**(dvt++);
-
- return fx;
- }
-
-#undef SHFT
-#undef SIGN
-#undef GOLD
-#undef CGOLD
-#undef TINY
-#undef GLIMIT
-#undef ITMAX
-#undef TOL
-
-/******************************** som_conjgrad *******************************/
-/*
-Perform Polak-Ribiere minimization (adapted from Numerical Recipes in C,p.432).
-*/
-
-#define ITMAX 100
-#define EPS 1.0e-10
-
-void som_conjgrad(somstruct *som, float ftol)
- {
- static float g[SOM_MAXDIM], h[SOM_MAXDIM];
- int j, nd, its;
- float *xi, *xit,*gt,*ht,tmp,tmp2,
- gg,gam,fp,fret,dgg;
-
- nd = som->neurdim;
- xi = som->dvector;
- fp = som_err(som, 0.0, SOM_GRADIENT);
- gt = g;
- xit = xi;
- ht = h;
- for (j=nd;j--;)
- tmp = -*xit, *(xit++) = *(ht++)= *(gt++) = tmp;
- for (its=ITMAX;its--;)
- {
- fret = som_linmin(som);
- if (2.0*fabs(fret-fp) <= ftol*(fabs(fret)+fabs(fp)+EPS))
- return;
- fp=som_err(som, 0.0, SOM_GRADIENT);
- dgg=gg=0.0;
- gt = g;
- xit = xi;
- for (j=nd;j--; xit++)
- {
- gg += *gt**gt;
- dgg += (*xit+*(gt++))**xit;
- }
- if (gg == 0.0)
- return;
- gam=dgg/gg;
- gt = g;
- xit = xi;
- ht = h;
- for (j=nd;j--;)
- tmp = -*xit,tmp2 = *ht, *(xit++) = *(ht++) = (*(gt++) = tmp) + gam*tmp2;
- }
- warning("Too many iterations during SOM-Fitting","");
- }
-
-#undef ITMAX
-#undef EPS
-
-/********************************* som_end ***********************************/
-/*
-Terminate SOM.
-*/
-void som_end(somstruct *som)
- {
-/* Free memory*/
- free(som->weight);
- free(som->input);
- free(som->inputw);
- free(som->proto);
- free(som->dproto);
- free(som->vector);
- free(som->dvector);
- free(som->freq);
- free(som->inputsize);
- free(som->neursize);
- free(som->neurstep);
- free(som);
-
-/* locals */
-
- return;
- }
-
-
-/********************************* som_load **********************************/
-/*
-Read the SOM weights in a FITS file.
-*/
-somstruct *som_load(char *filename)
- {
- somstruct *som;
- catstruct *cat;
- tabstruct *tab;
- keystruct *key;
- char *head, str[80];
- int i;
-
-/* Open the cat (well it is not a "cat", but simply a FITS file */
- if (!(cat = read_cat(filename)))
- error(EXIT_FAILURE, "*Error*: SOM file not found: ", filename);
-
- if (!(tab = name_to_tab(cat, "SOM", 0)))
- error(EXIT_FAILURE, "*Error*: SOM table not found in catalog ",
- filename);
-
-/* OK, we now allocate memory for the SOM structure itself */
- QCALLOC(som, somstruct, 1);
-
-/* Load important scalars (which are stored as FITS keywords) */
- head = tab->headbuf;
-
-/* Dimensionality of the input */
- if (fitsread(head, "INPNAXIS", &som->inputdim, H_INT, T_LONG) != RETURN_OK)
- goto headerror;
- if (som->inputdim>INPUT_MAXDIM)
- {
- sprintf(str, "%d", INPUT_MAXDIM);
- error(EXIT_FAILURE, "*Error*: This package is presently limited to inputs"
- "with dimensionality less or equal to ", str);
- }
- QMALLOC(som->inputsize, int, INPUT_MAXDIM);
- for (i=0; i<INPUT_MAXDIM; i++)
- som->inputsize[i] = 1;
- som->ninput = 1;
- for (i=0; i<som->inputdim; i++)
- {
- sprintf(str, "INPAXIS%1d", i+1);
- if (fitsread(head, str, &som->inputsize[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
- som->ninput *= som->inputsize[i];
- }
-
- if (fitsread(head,"INPNEXTR",&som->nextrainput,H_INT,T_LONG) != RETURN_OK)
- som->nextrainput = 0;
- som->ninput += som->nextrainput;
-
-/* Dimensionality of the SOM */
- if (fitsread(head, "SOMNAXIS", &som->neurdim, H_INT, T_LONG) != RETURN_OK)
- goto headerror;
- QMALLOC(som->neursize, int, som->neurdim);
- QMALLOC(som->neurstep, int, som->neurdim);
- QCALLOC(som->vector, float, som->neurdim);
- QCALLOC(som->dvector, float, som->neurdim);
- for (i=0; i<som->neurdim; i++)
- som->neursize[i] = 1;
- som->nneur = 1;
- for (i=0; i<som->neurdim; i++)
- {
- sprintf(str, "SOMAXIS%1d", i+1);
- if (fitsread(head, str, &som->neursize[i], H_INT,T_LONG) != RETURN_OK)
- goto headerror;
- som->neurstep[i] = som->nneur;
- som->nneur *= som->neursize[i];
- }
-
-/* Other scalars */
- if (fitsread(head, "SOMLRATE", &som->learnrate,H_FLOAT,T_FLOAT) != RETURN_OK)
- goto headerror;
- som->clearnrate = som->learnrate;
- if (fitsread(head, "SOMKERNW", &som->kernw, H_FLOAT,T_FLOAT) != RETURN_OK)
- goto headerror;
- som->ckernw = som->kernw;
- if (fitsread(head, "SOMNPASS", &som->ntrain , H_INT, T_LONG) != RETURN_OK)
- goto headerror;
- if (fitsread(head, "SOMNSWEE", &som->nsweep , H_INT, T_LONG) != RETURN_OK)
- goto headerror;
-
- som->nweight = som->nneur*som->ninput;
- QMALLOC(som->weight, float, som->nneur*som->ninput);
- QMALLOC(som->input, float, som->ninput);
- QMALLOC(som->inputw, float, som->ninput);
- QMALLOC(som->proto, float, som->ninput);
- QMALLOC(som->dproto, float, som->ninput);
- QCALLOC(som->freq, int, som->nneur);
-/* Locals */
-
-/* Load the weight vector */
- key = read_key(tab, "WEIGHTS");
- som->weight = key->ptr;
-
-/* But don't touch my arrays!! */
- blank_keys(tab);
- free_cat(cat, 1);
-
- return som;
-
-headerror:
- error(EXIT_FAILURE, "*Error*: Incorrect or obsolete SOM data in ", filename);
- }
-
-
diff --git a/external/sextractor/source/som.h b/external/sextractor/source/som.h
deleted file mode 100644
index eba1ea4..0000000
--- a/external/sextractor/source/som.h
+++ /dev/null
@@ -1,79 +0,0 @@
- /*
- som.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: A program using neural networks.
-*
-* Author: E.BERTIN, IAP & Leiden observatory.
-*
-* Contents: Include for Kohonen's Self Organizing Map (V2.0).
-*
-* Last modify: 17/12/97
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*--------------------------------- constants ------------------------------*/
-
-#define INPUT_MAXDIM 9 /* Maximum dimensionality of input */
-#define SOM_MAXDIM 6 /* Maximum dimensionality of the SOM */
-
-/*------------------------------- SOM flags --------------------------------*/
-
-#define SOM_NODE 0x01 /* Compute at some exact node pos */
-#define SOM_PHOTOM 0x02 /* Do photometry */
-#define SOM_GRADIENT 0x04 /* Compute interpolated SOM gradient */
-#define SOM_LINE 0x08 /* Proceed along a specific line */
-
-/*--------------------------- structure definitions -------------------------*/
-
-typedef struct
- {
- int inputdim; /* Dimensionality of input vector */
- int *inputsize; /* Dimensions of the input vector */
- int ninput; /* Total number of inputs */
- int nextrainput; /* Number of extra inputs */
- int neurdim; /* Dimensionality of the SOM */
- int *neursize; /* Dimensions of the SOM */
- int nneur; /* Total number of neurons */
- int *neurstep; /* Stepping through the SOM */
- float *weight; /* Weights */
- int nweight; /* Total number of weights */
- float *input; /* Input data */
- float *inputw; /* Input data weighting */
- float *proto; /* Current composite prototype */
- float *dproto; /* Current composite gradients */
- float *vector; /* Current SOM coordinates */
- float *dvector; /* Current SOM search direction */
- float learnrate, clearnrate; /* Starting and current learn. rates */
- float learndecay; /* Learning decay rate */
- float kernw, ckernw; /* Starting and current kernel width */
- float kernwdecay; /* Kernel width decay rate */
- float xy_stiff; /* Stiffness of the X/Y mapping */
- int *freq; /* Number of winning times per node */
- int ntrain; /* # of training examples so far */
- int nsweep; /* # of sweeps through the whole set */
- float amp, sigamp; /* Best fitting amplitude and error */
- float stderror; /* Global reduced error */
- } somstruct;
-
-somstruct *thesom;
-
-/*---------------------------------- protos --------------------------------*/
-
-extern somstruct *som_load(char *filename);
-
-extern float som_err(somstruct *som, float dist, int flag),
- som_linmin(somstruct *som);
-
-extern int som_mkweight(somstruct *som,float back,float backnoise,
- float gain);
-
-extern void som_conjgrad(somstruct *som, float ftol),
- som_end(somstruct *som),
- som_phot(somstruct *som, float back,float backnoise,
- float gain, float dx, float dy,
- float *vector, float clip),
- som_start(somstruct *som, float *context,
- int ncontext, float x, float y);
diff --git a/external/sextractor/source/types.h b/external/sextractor/source/types.h
deleted file mode 100644
index bcf91c7..0000000
--- a/external/sextractor/source/types.h
+++ /dev/null
@@ -1,513 +0,0 @@
- /*
- types.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP)
-*
-* Contents: global type definitions.
-*
-* Last modify: 11/11/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <stdio.h>
-
-/*-------------------------------- flags ------------------------------------*/
-
-#define OBJ_CROWDED 0x0001
-#define OBJ_MERGED 0x0002
-#define OBJ_SATUR 0x0004
-#define OBJ_TRUNC 0x0008
-#define OBJ_APERT_PB 0x0010
-#define OBJ_ISO_PB 0x0020
-#define OBJ_DOVERFLOW 0x0040
-#define OBJ_OVERFLOW 0x0080
-
-/*---------------------------- preanalyse flags -----------------------------*/
-
-#define ANALYSE_FAST 0
-#define ANALYSE_FULL 1
-#define ANALYSE_ROBUST 2
-
-/*--------------------------------- typedefs --------------------------------*/
-typedef unsigned char BYTE; /* a byte */
-typedef unsigned short USHORT; /* 0 to 65535 integers */
-typedef float PIXTYPE; /* pixel type */
-typedef unsigned int FLAGTYPE; /* flag type */
-typedef char pliststruct; /* Dummy type for plist */
-
-#ifdef INT64
-typedef int LONG;
-typedef unsigned int ULONG;
-#else
-typedef long LONG;
-typedef unsigned long ULONG;
-#endif
-
-typedef enum {BACK_RELATIVE, BACK_ABSOLUTE}
- backenum; /* BACK_TYPE */
-
-typedef enum {CHECK_NONE, CHECK_IDENTICAL, CHECK_BACKGROUND,
- CHECK_BACKRMS, CHECK_MINIBACKGROUND, CHECK_MINIBACKRMS,
- CHECK_SUBTRACTED, CHECK_FILTERED, CHECK_OBJECTS, CHECK_APERTURES,
- CHECK_SEGMENTATION, CHECK_ASSOC, CHECK_SUBOBJECTS,
- CHECK_SUBPSFPROTOS, CHECK_PSFPROTOS,
- CHECK_SUBPCPROTOS, CHECK_PCPROTOS, CHECK_PCOPROTOS,
- CHECK_MAPSOM} checkenum;
- /* CHECK_IMAGE type */
-
-typedef enum {WEIGHT_NONE, WEIGHT_FROMBACK, WEIGHT_FROMRMSMAP,
- WEIGHT_FROMVARMAP, WEIGHT_FROMWEIGHTMAP, WEIGHT_FROMINTERP}
- weightenum; /* WEIGHT_IMAGE type */
-
-/*--------------------------------- objects ---------------------------------*/
-/* I: "PIXEL" parameters */
-
-typedef struct
- {
-/* ---- basic parameters */
- int number; /* ID */
- int fdnpix; /* nb of extracted pix */
- int dnpix; /* nb of pix above thresh */
- int npix; /* "" in measured frame */
- float fdflux; /* integrated ext. flux */
- float dflux; /* integrated det. flux */
- float flux; /* integrated mes. flux */
- float fluxerr; /* integrated variance */
- float flux_prof; /* PROFILE flux*/
- float fluxerr_prof; /* PROFILE flux variance */
- PIXTYPE fdpeak; /* peak intensity (ADU) */
- PIXTYPE dpeak; /* peak intensity (ADU) */
- PIXTYPE peak; /* peak intensity (ADU) */
-/* ---- astrometric data */
- int peakx,peaky; /* pos of brightest pix */
- double mx, my; /* barycenter */
- double poserr_mx2, poserr_my2,
- poserr_mxy; /* Error ellips moments */
-/* ---- morphological data */
- int xmin,xmax,ymin,ymax,ycmin,ycmax;/* x,y limits */
- PIXTYPE *blank, *dblank; /* BLANKing sub-images */
- int *submap; /* Pixel-index sub-map */
- int subx,suby, subw,subh; /* sub-image pos. and size */
- short flag; /* extraction flags */
- FLAGTYPE imaflag[MAXFLAG]; /* flags from FLAG-images */
- BYTE singuflag; /* flags for singularities */
- int imanflag[MAXFLAG]; /* number of MOST flags */
- double mx2,my2,mxy; /* variances and covariance */
- float a, b, theta, abcor; /* moments and angle */
- float cxx,cyy,cxy; /* ellipse parameters */
- int firstpix; /* ptr to first pixel */
- int lastpix; /* ptr to last pixel */
- float bkg, dbkg, sigbkg; /* Background stats (ADU) */
- float thresh; /* measur. threshold (ADU) */
- float dthresh; /* detect. threshold (ADU) */
- float mthresh; /* max. threshold (ADU) */
- int iso[NISO]; /* isophotal areas */
- float fwhm; /* IMAGE FWHM */
- } objstruct;
-
-/* II: "BLIND" parameters */
-typedef struct
- {
-/* ---- photometric data */
- float flux_iso; /* ISO integrated flux */
- float fluxerr_iso; /* RMS error on ISO flux */
- float mag_iso; /* ISO mag */
- float magerr_iso; /* ISO mag uncertainty */
- float flux_isocor; /* ISOCOR integrated flux */
- float fluxerr_isocor; /* RMS error on ISOCOR flux */
- float mag_isocor; /* ISOCOR mag */
- float magerr_isocor; /* ISOCOR mag uncertainty */
- float kronfactor; /* kron parameter */
- float flux_auto; /* AUTO integrated flux */
- float fluxerr_auto; /* RMS error on AUTO flux */
- float mag_auto; /* AUTO mag */
- float magerr_auto; /* AUTO mag uncertainty */
- float flux_best; /* BEST integrated flux */
- float fluxerr_best; /* RMS error on BEST flux */
- float mag_best; /* BEST mag */
- float magerr_best; /* BEST mag uncertainty */
- float *flux_aper; /* APER flux vector */
- float *fluxerr_aper; /* APER flux error vector */
- float *mag_aper; /* APER magnitude vector */
- float *magerr_aper; /* APER mag error vector */
- float flux_prof; /* PROFILE flux*/
- float fluxerr_prof; /* PROFILE flux error */
- float mag_prof; /* PROFILE magnitude */
- float magerr_prof; /* PROFILE magnitude error */
-/* ---- astrometric data */
- double posx,posy; /* "FITS" pos. in pixels */
- double mamaposx,mamaposy; /* "MAMA" pos. in pixels */
- float sposx,sposy; /* single precision pos. */
- float poserr_a, poserr_b,
- poserr_theta; /* Error ellips parameters */
- float poserr_cxx, poserr_cyy,
- poserr_cxy; /* pos. error ellipse */
- double poserr_mx2w, poserr_my2w,
- poserr_mxyw; /* WORLD error moments */
- float poserr_aw, poserr_bw,
- poserr_thetaw; /* WORLD error parameters */
- float poserr_thetas; /* native error pos. angle */
- float poserr_theta2000; /* J2000 error pos. angle */
- float poserr_theta1950; /* B1950 error pos. angle */
- float poserr_cxxw, poserr_cyyw,
- poserr_cxyw; /* WORLD error ellipse */
- double mx2w,my2w,mxyw; /* WORLD var. and covar. */
- double peakxw, peakyw; /* WORLD of brightest pix */
- double mxw, myw; /* WORLD barycenters */
- double alphas, deltas; /* native alpha, delta */
- float thetas; /* native position angle E/N*/
- double peakalphas, peakdeltas; /* native for brightest pix */
- double peakalpha2000, peakdelta2000; /* J2000 for brightest pix */
- double peakalpha1950, peakdelta1950; /* B1950 for brightest pix */
- double alpha2000, delta2000; /* J2000 alpha, delta */
- float theta2000; /* J2000 position angle E/N */
- double alpha1950, delta1950; /* B1950 alpha, delta */
- float theta1950; /* B1950 position angle E/N */
- float aw, bw; /* WORLD ellipse size */
- float thetaw; /* WORLD position angle */
- float cxxw,cyyw,cxyw; /* WORLD ellipse parameters */
- float npixw, fdnpixw; /* WORLD isophotal areas */
- float threshmu; /* det. surface brightnees */
- float maxmu; /* max. surface brightnees */
- float elong; /* elongation */
- float ellip; /* ellipticity */
- float sprob; /* Stellarity index */
- float fwhmw; /* WORLD FWHM */
- float *assoc; /* ASSOCiated data */
- int assoc_number; /* nb of ASSOCiated objects */
- float *vignet; /* Pixel data */
- float *vigshift; /* (Shifted) pixel data */
-/* ---- SOM fitting */
- float flux_somfit; /* Fitted amplitude */
- float fluxerr_somfit; /* RMS error on SOM flux */
- float mag_somfit; /* Magnitude from SOM fit */
- float magerr_somfit; /* Mag. err. from SOM fit */
- float stderr_somfit; /* Fitting reduced error */
- float *vector_somfit; /* SOM fit vector position */
-/* ---- Growth curves and stuff */
- float *flux_growth; /* Cumulated growth_curve */
- float flux_growthstep; /* Growth-curve step */
- float *mag_growth; /* Cumulated growth_curve */
- float mag_growthstep; /* Growth-curve step */
- float *flux_radius; /* f-light-radii */
-/* ---- PSF-fitting */
- float *flux_psf; /* Flux from PSF-fitting */
- float *fluxerr_psf; /* RMS error on PSF flux */
- float *mag_psf; /* Mag from PSF-fitting */
- float *magerr_psf; /* RMS mag from PSF-fitting */
- float *x_psf, *y_psf; /* Coords from PSF-fitting */
- short niter_psf; /* # of PSF-fitting iterat. */
- short npsf; /* # of fitted PSFs */
- float chi2_psf; /* Red. chi2 of PSF-fitting */
- double xw_psf, yw_psf; /* WORLD coords */
- double alphas_psf, deltas_psf; /* native alpha, delta */
- double alpha2000_psf, delta2000_psf; /* J2000 alpha, delta */
- double alpha1950_psf, delta1950_psf; /* B1950 alpha, delta */
- double poserrmx2_psf, poserrmy2_psf,
- poserrmxy_psf; /* Error ellips moments */
- float poserra_psf, poserrb_psf,
- poserrtheta_psf; /* Error ellips parameters */
- float poserrcxx_psf, poserrcyy_psf,
- poserrcxy_psf; /* pos. error ellipse */
- double poserrmx2w_psf, poserrmy2w_psf,
- poserrmxyw_psf; /* WORLD error moments */
- float poserraw_psf, poserrbw_psf,
- poserrthetaw_psf; /* WORLD error parameters */
- float poserrthetas_psf; /* native error pos. angle */
- float poserrtheta2000_psf; /* J2000 error pos. angle */
- float poserrtheta1950_psf; /* B1950 error pos. angle */
- float poserrcxxw_psf, poserrcyyw_psf,
- poserrcxyw_psf; /* WORLD error ellipse */
-/* ---- PC-fitting */
- double mx2_pc,my2_pc,mxy_pc; /* PC 2nd-order parameters */
- float a_pc,b_pc,theta_pc; /* PC shape parameters */
- float *vector_pc; /* Principal components */
- float gdposang; /* Gal. disk position angle */
- float gdscale; /* Gal. disk scalelength */
- float gdaspect; /* Gal. disk aspect-ratio */
- float gde1,gde2; /* Gal. disk ellipticities */
- float gbratio; /* Galaxy B/T */
- float gbposang; /* Gal. bulge position angle */
- float gbscale; /* Gal. bulge scalelength */
- float gbaspect; /* Gal. bulge aspect-ratio */
- float gbe1,gbe2; /* Gal. bulge ellipticities */
- float flux_galfit; /* Galaxy tot. flux from fit */
- float fluxerr_galfit; /* RMS error on galfit flux */
- float mag_galfit; /* Galaxy tot. mag from fit */
- float magerr_galfit; /* RMS error on galfit mag */
- } obj2struct;
-
-/*----------------------------- lists of objects ----------------------------*/
-typedef struct
- {
- int nobj; /* number of objects in list */
- objstruct *obj; /* pointer to the object array */
- int npix; /* number of pixels in pixel-list */
- pliststruct *plist; /* pointer to the pixel-list */
- PIXTYPE dthresh; /* detection threshold */
- PIXTYPE thresh; /* analysis threshold */
- } objliststruct;
-
-
-/*----------------------------- image parameters ----------------------------*/
-typedef struct pic
- {
- char filename[MAXCHAR]; /* pointer to the image filename */
- char *rfilename; /* pointer to the reduced image name */
- char ident[MAXCHAR]; /* field identifier (read from FITS)*/
- char rident[MAXCHAR]; /* field identifier (relative) */
- FILE *file; /* pointer the image file structure */
- char *fitshead; /* pointer to the FITS header */
- int fitsheadsize; /* FITS header size */
-/* ---- main image parameters */
- int bitpix, bytepix; /* nb of bits and bytes per pixel */
- int bitsgn; /* non-zero if signed integer data */
- int width, height; /* x,y size of the field */
- size_t npix; /* total number of pixels */
- double bscale, bzero; /* FITS scale and offset */
- double ngamma; /* normalized photo gamma */
- int nlevels; /* nb of quantification levels */
- float pixmin, pixmax; /* min and max values in frame */
- int y; /* y current position in field */
- int ymin; /* y limit (lowest accessible) */
- int ymax; /* y limit (highest accessible+1) */
- int yblank; /* y blanking limit (highest+1) */
- PIXTYPE *strip; /* pointer to the image buffer */
- FLAGTYPE *fstrip; /* pointer to the FLAG buffer */
- int stripheight; /* height of a strip (in lines) */
- int stripmargin; /* number of lines in margin */
- int stripstep; /* number of lines at each read */
- int stripy; /* y position in buffer */
- int stripylim; /* y limit in buffer */
- int stripysclim; /* y scroll limit in buffer */
-/* ---- image (de-)compression */
- enum {COMPRESS_NONE, COMPRESS_BASEBYTE, COMPRESS_PREVPIX}
- compress_type; /* image compression type */
- char *compress_buf; /* de-compression buffer */
- char *compress_bufptr; /* present pixel in buffer */
- int compress_curval; /* current pixel or checksum value */
- int compress_checkval; /* foreseen pixel or checksum value */
- int compress_npix; /* remaining pixels in buffer */
-/* ---- basic astrometric parameters */
- double pixscale; /* pixel size in arcsec.pix-1 */
- double epoch; /* epoch of coordinates */
-/* ---- background parameters */
- float *back; /* ptr to the background map in mem */
- float *dback; /* ptr to the background deriv. map */
- float *sigma; /* ptr to the sigma map */
- float *dsigma; /* Ptr to the sigma deriv. map */
- int backw, backh; /* x,y size of a bkgnd mesh */
- int nbackp; /* total nb of pixels per bkgnd mesh */
- int nbackx, nbacky; /* x,y number of bkgnd meshes */
- int nback; /* total number of bkgnd meshes */
- int nbackfx, nbackfy; /* x,y size of bkgnd filtering mask */
- float backmean; /* median bkgnd value in image */
- float backsig; /* median bkgnd rms in image */
- float sigfac; /* scaling RMS factor (for WEIGHTs) */
- PIXTYPE *backline; /* current interpolated bkgnd line */
- PIXTYPE dthresh; /* detection threshold */
- PIXTYPE thresh; /* analysis threshold */
- backenum back_type; /* Background type */
-/* ---- astrometric parameters */
- struct structastrom *astrom; /* astrometric data */
- struct structassoc *assoc; /* ptr to the assoc-list */
- int flags; /* flags defining the field type */
-/* ---- image interpolation */
- int interp_flag; /* interpolation for this field? */
- PIXTYPE *interp_backup; /* backup line for interpolation */
- PIXTYPE weight_thresh; /* interpolation threshold */
- int *interp_ytimeoutbuf; /* interpolation timeout line buffer */
- int interp_xtimeout; /* interpolation timeout value in x */
- int interp_ytimeout; /* interpolation timeout value in y */
- struct pic *reffield; /* pointer to a reference field */
- } picstruct;
-
-
-/*------------------------------- preferences -------------------------------*/
-typedef struct
- {
- char prefs_name[MAXCHAR]; /* prefs filename*/
- char *(image_name[2]); /* image filenames */
- int nimage_name; /* nb of params */
- char cat_name[MAXCHAR]; /* catalog filename*/
-/*----- thresholding */
- double dthresh[2]; /* detect. threshold */
- int ndthresh; /* (1 or 2 entries) */
- double thresh[2]; /* analysis thresh. */
- int nthresh; /* (1 or 2 entries) */
- enum {THRESH_RELATIVE, THRESH_ABSOLUTE}
- thresh_type[2]; /* bkgnd type */
- int nthresh_type; /* nb of params */
-/*----- extraction */
- int dimage_flag; /* detect. image ? */
- int ext_minarea; /* min area in pix. */
- int deb_maxarea; /* max deblend. area */
- int filter_flag; /* smoothing on/off */
- char filter_name[MAXCHAR]; /* mask filename */
- double filter_thresh[2]; /* Filter thresholds */
- int nfilter_thresh; /* nb of params */
- int deblend_nthresh; /* threshold number */
- double deblend_mincont; /* minimum contrast */
- double satur_level; /* saturation level */
- enum {CCD, PHOTO} detect_type; /* detection type */
-/*----- Flagging */
- char *(fimage_name[MAXFLAG]); /* flagmap filenames */
- int nfimage_name; /* nb of params */
- enum {FLAG_OR, FLAG_AND, FLAG_MIN, FLAG_MAX, FLAG_MOST}
- flag_type[MAXFLAG]; /* flag combination */
- int imaflag_size; /* requested iso nb1 */
- int imanflag_size; /* requested iso nb2 */
- int nimaisoflag; /* effective iso nb */
- int nimaflag; /* effective ima nb */
-/*----- cleaning */
- int clean_flag; /* allow cleaning ? */
- double clean_param; /* cleaning effic. */
-/*----- Weighting */
- char *(wimage_name[2]); /* weight filenames */
- int nwimage_name; /* nb of params */
- weightenum weight_type[2]; /* weighting scheme */
- int nweight_type; /* nb of params */
- int weight_flag; /* do we weight ? */
- int dweight_flag; /* detection weight? */
- int weightgain_flag; /* weight gain? */
-/*----- photometry */
- enum {CAT_NONE, ASCII, ASCII_HEAD, ASCII_SKYCAT,
- FITS_LDAC, FITS_BINIMHEAD, FITS_NOIMHEAD, FITS_10}
- cat_type; /* type of catalog */
- enum {PNONE, FIXED, AUTO} apert_type; /* type of aperture */
- double apert[MAXNAPER]; /* apert size (pix) */
- int naper; /* effective apert. */
- int flux_apersize, fluxerr_apersize; /* requested apert. */
- int mag_apersize, magerr_apersize; /* requested apert. */
- double autoparam[2]; /* Kron parameters */
- int nautoparam; /* nb of Kron params */
- double autoaper[2]; /* minimum apertures */
- int nautoaper; /* nb of min. aperts */
- double mag_zeropoint; /* magnitude offsets */
- double mag_gamma; /* for emulsions */
- double gain; /* only for CCD */
-/*----- S/G separation */
- double pixel_scale; /* in arcsec */
- double seeing_fwhm; /* in arcsec */
- char nnw_name[MAXCHAR]; /* nnw filename */
-/*----- background */
- enum {IMAGE, AFILE} back_origin; /* origin of bkgnd */
- char back_name[MAXCHAR]; /* bkgnd filename */
- backenum back_type[2]; /* bkgnd type */
- int nback_type; /* nb of params */
- double back_val[2]; /* user-def. bkg */
- int nback_val; /* nb of params */
- int backsize[2]; /* bkgnd mesh size */
- int nbacksize; /* nb of params */
- int backfsize[2]; /* bkgnd filt. size */
- int nbackfsize; /* nb of params */
- double backfthresh; /* bkgnd fil. thresh */
- enum {GLOBAL, LOCAL} pback_type; /* phot. bkgnd type */
- int pback_size; /* rect. ann. width */
-/*----- memory */
- int clean_stacksize; /* size of buffer */
- int mem_pixstack; /* pixel stack size */
- int mem_bufsize; /* strip height */
-/*----- catalog output */
- char param_name[MAXCHAR]; /* param. filename */
-/*----- miscellaneous */
- int pipe_flag; /* allow piping ? */
- enum {QUIET, NORM, WARN, FULL} verbose_type; /* display type */
-/*----- CHECK-images */
- int check_flag; /* CHECK-image flag */
- checkenum check_type[MAXCHECK]; /* check-image types */
- int ncheck_type; /* nb of params */
- char *(check_name[MAXCHECK]); /* check-image names */
- int ncheck_name; /* nb of params */
- struct structcheck *(check[MAXCHECK]); /* check-image ptrs */
-/*----- ASSOCiation */
- int assoc_flag; /* ASSOCiation flag */
- char assoc_name[MAXCHAR]; /* ASSOC-list name */
- int assoc_param[3]; /* ASSOC param cols */
- int nassoc_param; /* nb of params */
- int assoc_data[MAXNASSOC]; /* ASSOC data cols */
- int nassoc_data; /* nb of params */
- enum {ASSOC_FIRST, ASSOC_NEAREST, ASSOC_MEAN, ASSOC_MAGMEAN,
- ASSOC_SUM, ASSOC_MAGSUM, ASSOC_MIN, ASSOC_MAX}
- assoc_type; /* type of assoc. */
- enum {ASSOCSELEC_ALL, ASSOCSELEC_MATCHED, ASSOCSELEC_NOMATCHED}
- assocselec_type; /* type of assoc. */
- double assoc_radius; /* ASSOC range */
- int assoc_size; /* nb of parameters */
- char retina_name[MAXCHAR]; /* retina filename */
- int vignetsize[2]; /* vignet size */
- int vigshiftsize[2]; /* shift-vignet size */
- int cleanmargin; /* CLEANing margin */
- char som_name[MAXCHAR]; /* SOM filename */
- int somfit_flag; /* ASSOCiation flag */
- int somfit_vectorsize; /* SOMfit vec. size */
-/*----- masking */
- enum {MASK_NONE, MASK_BLANK, MASK_CORRECT}
- mask_type; /* type of masking */
- int blank_flag; /* BLANKing flag */
- double weight_thresh[2]; /* weight threshlds */
- int nweight_thresh; /* nb of params */
-/*----- interpolation */
- enum {INTERP_NONE, INTERP_VARONLY, INTERP_ALL}
- interp_type[2]; /* interpolat. type */
- int ninterp_type; /* nb of params */
- int interp_xtimeout[2]; /* interp. x timeout */
- int ninterp_xtimeout; /* nb of params */
- int interp_ytimeout[2]; /* interp. y timeout */
- int ninterp_ytimeout; /* nb of params */
-/*----- astrometry */
- int world_flag; /* WORLD required */
-/*----- growth curve */
- int growth_flag; /* gr. curve needed */
- int flux_growthsize; /* number of elem. */
- int mag_growthsize; /* number of elem. */
- int flux_radiussize; /* number of elem. */
- double growth_step; /* step size (pix) */
- double flux_frac[MAXNAPER]; /* for FLUX_RADIUS */
- int nflux_frac; /* number of elem. */
-/*----- PSF-fitting */
- int psf_flag; /* PSF-fit needed */
- char psf_name[MAXCHAR]; /* PSF filename */
- int psf_npsfmax; /* Max # of PSFs */
- enum {PSFDISPLAY_SPLIT, PSFDISPLAY_VECTOR}
- psfdisplay_type; /* PSF display type */
- int psf_xsize,psf_ysize; /* nb of params */
- int psf_xwsize,psf_ywsize; /* nb of params */
- int psf_alphassize,psf_deltassize; /* nb of params */
- int psf_alpha2000size,psf_delta2000size; /* nb of params */
- int psf_alpha1950size,psf_delta1950size; /* nb of params */
- int psf_fluxsize; /* nb of params */
- int psf_fluxerrsize; /* nb of params */
- int psf_magsize; /* nb of params */
- int psf_magerrsize; /* nb of params */
- int pc_flag; /* PC-fit needed */
- int pc_vectorsize; /* nb of params */
-/*----- customize */
- double mama_corflex;
- int fitsunsigned_flag; /* Force unsign FITS */
- } prefstruct;
-
-
-/*-------------------------------- catalog ---------------------------------*/
-
-typedef struct
- {
- int ndetect; /* nb of detections */
- int ntotal; /* Total object nb */
- int nparam; /* Nb of parameters */
-/*----- Misc. strings defining the extraction */
- char prefs_name[MAXCHAR]; /* Prefs filename*/
- char image_name[MAXCHAR]; /* image filename*/
- char nnw_name[MAXCHAR]; /* NNW name */
- char filter_name[MAXCHAR]; /* Filter name */
- char soft_name[MAXCHAR]; /* Sextractor version */
-/*----- time */
- char ext_date[12],ext_time[12]; /* date and time */
- double ext_elapsed; /* processing time */
- } sexcatstruct;
-
diff --git a/external/sextractor/source/wcs/Makefile.am b/external/sextractor/source/wcs/Makefile.am
deleted file mode 100644
index a23a5ec..0000000
--- a/external/sextractor/source/wcs/Makefile.am
+++ /dev/null
@@ -1,44 +0,0 @@
-## Process this file with automake to produce Makefile.in
-
-## This file is part of the VIMOS Pipeline
-## Copyright (C) 2001-2004 European Southern Observatory
-
-## This program is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2 of the License, or
-## (at your option) any later version.
-
-## This program is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-
-## You should have received a copy of the GNU General Public License
-## along with this program; if not, write to the Free Software
-## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-
-DISTCLEANFILES = *~
-
-
-if MAINTAINER_MODE
-
-MAINTAINERCLEANFILES = Makefile.in
-
-endif
-
-
-EXTRA_DIST = $(SEXTRACTOR_EXTRAS)
-
-
-noinst_LIBRARIES = libwcs_c.a
-
-noinst_HEADERS = cel.h lin.h proj.h wcs.h wcstrig.h
-
-libwcs_c_a_SOURCES = cel.c lin.c proj.c sph.c wcs.c wcstrig.c
-
-DEFS = -I. -I$(srcdir) -DCOPYSIGN -DSIGNBIT
-
-SEXTRACTOR_EXTRAS = wcs_ori README.SEX Makefile.orig tcel.c tlin.c tpgc.c
- tproj1.c tproj2.c tsph.c twcs1.c twcs2.c tca.map
diff --git a/external/sextractor/source/wcs/Makefile.in b/external/sextractor/source/wcs/Makefile.in
deleted file mode 100644
index 58e0ec1..0000000
--- a/external/sextractor/source/wcs/Makefile.in
+++ /dev/null
@@ -1,471 +0,0 @@
-# Makefile.in generated by automake 1.12.2 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2012 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
- at SET_MAKE@
-
-
-VPATH = @srcdir@
-am__make_dryrun = \
- { \
- am__dry=no; \
- case $$MAKEFLAGS in \
- *\\[\ \ ]*) \
- echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
- | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
- *) \
- for am__flg in $$MAKEFLAGS; do \
- case $$am__flg in \
- *=*|--*) ;; \
- *n*) am__dry=yes; break;; \
- esac; \
- done;; \
- esac; \
- test $$am__dry = yes; \
- }
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-target_triplet = @target@
-subdir = source/wcs
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.am \
- $(srcdir)/Makefile.in
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4macros/eso.m4 \
- $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(install_sh) -d
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-ARFLAGS = cru
-libwcs_c_a_AR = $(AR) $(ARFLAGS)
-libwcs_c_a_LIBADD =
-am_libwcs_c_a_OBJECTS = cel.$(OBJEXT) lin.$(OBJEXT) proj.$(OBJEXT) \
- sph.$(OBJEXT) wcs.$(OBJEXT) wcstrig.$(OBJEXT)
-libwcs_c_a_OBJECTS = $(am_libwcs_c_a_OBJECTS)
-DEFAULT_INCLUDES = -I. at am__isrc@
-depcomp =
-am__depfiles_maybe =
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(libwcs_c_a_SOURCES)
-DIST_SOURCES = $(libwcs_c_a_SOURCES)
-am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
- *) (install-info --version) >/dev/null 2>&1;; \
- esac
-HEADERS = $(noinst_HEADERS)
-ETAGS = etags
-CTAGS = ctags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AR = @AR@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-CYGPATH_W = @CYGPATH_W@
-DEFS = -I. -I$(srcdir) -DCOPYSIGN -DSIGNBIT
-DEPDIR = @DEPDIR@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EXEEXT = @EXEEXT@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
-LIBM = @LIBM@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MKDIR_P = @MKDIR_P@
-OBJEXT = @OBJEXT@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-SET_MAKE = @SET_MAKE@
-SEXMACHINE = @SEXMACHINE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-VERSION = @VERSION@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_CC = @ac_ct_CC@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target = @target@
-target_alias = @target_alias@
-target_cpu = @target_cpu@
-target_os = @target_os@
-target_vendor = @target_vendor@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-AUTOMAKE_OPTIONS = 1.8 foreign no-dependencies
-DISTCLEANFILES = *~
- at MAINTAINER_MODE_TRUE@MAINTAINERCLEANFILES = Makefile.in
-EXTRA_DIST = $(SEXTRACTOR_EXTRAS)
-noinst_LIBRARIES = libwcs_c.a
-noinst_HEADERS = cel.h lin.h proj.h wcs.h wcstrig.h
-libwcs_c_a_SOURCES = cel.c lin.c proj.c sph.c wcs.c wcstrig.c
-SEXTRACTOR_EXTRAS = wcs_ori README.SEX Makefile.orig tcel.c tlin.c tpgc.c
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
- && { if test -f $@; then exit 0; else break; fi; }; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign source/wcs/Makefile'; \
- $(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign source/wcs/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-libwcs_c.a: $(libwcs_c_a_OBJECTS) $(libwcs_c_a_DEPENDENCIES) $(EXTRA_libwcs_c_a_DEPENDENCIES)
- -rm -f libwcs_c.a
- $(libwcs_c_a_AR) libwcs_c.a $(libwcs_c_a_OBJECTS) $(libwcs_c_a_LIBADD)
- $(RANLIB) libwcs_c.a
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-.c.o:
- $(COMPILE) -c $<
-
-.c.obj:
- $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- set x; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- shift; \
- if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- if test $$# -gt 0; then \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- "$$@" $$unique; \
- else \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$unique; \
- fi; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && $(am__cd) $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) "$$here"
-
-cscopelist: $(HEADERS) $(SOURCES) $(LISP)
- list='$(SOURCES) $(HEADERS) $(LISP)'; \
- case "$(srcdir)" in \
- [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
- *) sdir=$(subdir)/$(srcdir) ;; \
- esac; \
- for i in $$list; do \
- if test -f "$$i"; then \
- echo "$(subdir)/$$i"; \
- else \
- echo "$$sdir/$$i"; \
- fi; \
- done >> $(top_builddir)/cscope.files
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-
-distdir: $(DISTFILES)
- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
- list='$(DISTFILES)'; \
- dist_files=`for file in $$list; do echo $$file; done | \
- sed -e "s|^$$srcdirstrip/||;t" \
- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
- case $$dist_files in \
- */*) $(MKDIR_P) `echo "$$dist_files" | \
- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
- sort -u` ;; \
- esac; \
- for file in $$dist_files; do \
- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
- if test -d $$d/$$file; then \
- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
- if test -d "$(distdir)/$$file"; then \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
- fi; \
- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
- else \
- test -f "$(distdir)/$$file" \
- || cp -p $$d/$$file "$(distdir)/$$file" \
- || exit 1; \
- fi; \
- done
-check-am: all-am
-check: check-am
-all-am: Makefile $(LIBRARIES) $(HEADERS)
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- if test -z '$(STRIP)'; then \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- install; \
- else \
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
- fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
- -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-clean: clean-am
-
-clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-noinstLIBRARIES cscopelist ctags distclean \
- distclean-compile distclean-generic distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-data install-data-am install-dvi install-dvi-am \
- install-exec install-exec-am install-html install-html-am \
- install-info install-info-am install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installdirs maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-compile \
- mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
- uninstall-am
-
- tproj1.c tproj2.c tsph.c twcs1.c twcs2.c tca.map
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/external/sextractor/source/wcs/Makefile.orig b/external/sextractor/source/wcs/Makefile.orig
deleted file mode 100644
index 454ee0b..0000000
--- a/external/sextractor/source/wcs/Makefile.orig
+++ /dev/null
@@ -1,25 +0,0 @@
-# Custom makefile for the WCS library
-# E. Bertin 27/05/97
-#
-#
-# where to put the result
-DEST = ..
-include $(DEST)/Macrodefs.$(SEXMACHINE)
-DEFINES = -DCOPYSIGN -DSIGNBIT
-LIBS = -lm
-SOURCES = cel.c lin.c proj.c sph.c wcs.c wcstrig.c
-OBJECTS = $(SOURCES:.c=.o)
-INCLUDES= cel.h lin.h proj.h wcs.h wcstrig.h
-LIBRARY = $(DEST)/libwcs_c.a
-
-$(LIBRARY): $(OBJECTS)
- $(RM) $@
- ar rc $@ $(OBJECTS)
- -ranlib $@
-
-.c.o: $(INCLUDES)
- $(CC) $(COPTS) $(DEFINES) -c $*.c
-
-clean:
- $(RM) $(OBJECTS) $(LIBRARY)
-
diff --git a/external/sextractor/source/wcs/README.SEX b/external/sextractor/source/wcs/README.SEX
deleted file mode 100644
index 7e8c855..0000000
--- a/external/sextractor/source/wcs/README.SEX
+++ /dev/null
@@ -1,11 +0,0 @@
-This directory contains the C portion of the WCS library. It was
-downloaded from ftp://ftp.cv.nrao.edu/fits/src/wcs/. The WCS library is used in
-SExtractor for converting pixel (IMAGE) coordinates to world coordinates.
-All I did here is to change theMmakefile and the names of a few functions to
-avoid conflicts with preexisting functions on some systems. The original
-distribution can be found in the wcs_ori/ subdirectory.
-
-The proposed "World Coordinate System" (WCS) convention in FITS (Flexible Image
-Transport System) is described in "Representations of Celestial Coordinates in
-FITS" by Eric W. Greisen and Mark Calabretta. A draft of this document is
-available at ftp://fits.cv.nrao.edu/fits/documents/wcs/.
diff --git a/external/sextractor/source/wcs/cel.c b/external/sextractor/source/wcs/cel.c
deleted file mode 100644
index 25eba51..0000000
--- a/external/sextractor/source/wcs/cel.c
+++ /dev/null
@@ -1,567 +0,0 @@
-/*=============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines which implement the FITS World Coordinate System (WCS)
-* convention.
-*
-* Summary of routines
-* -------------------
-* These routines are provided as drivers for the lower level spherical
-* coordinate transformation and projection routines. There are separate
-* driver routines for the forward, celfwd(), and reverse, celrev(),
-* transformations.
-*
-* An initialization routine, celset(), computes intermediate values from
-* the transformation parameters but need not be called explicitly - see the
-* explanation of cel.flag below.
-*
-*
-* Initialization routine; celset()
-* --------------------------------
-* Initializes members of a celprm data structure which hold intermediate
-* values. Note that this routine need not be called directly; it will be
-* invoked by celfwd() and celrev() if the "flag" structure member is
-* anything other than a predefined magic value.
-*
-* Given:
-* pcode[4] const char
-* WCS projection code (see below).
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (see below).
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Ill-conditioned coordinate transformation
-* parameters.
-*
-* Forward transformation; celfwd()
-* --------------------------------
-* Compute (x,y) coordinates in the plane of projection from celestial
-* coordinates (lng,lat).
-*
-* Given:
-* pcode[4] const char
-* WCS projection code (see below).
-* lng,lat const double
-* Celestial longitude and latitude of the projected
-* point, in degrees.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (see below).
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* x,y double* Projected coordinates, "degrees".
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid value of (lng,lat).
-*
-* Reverse transformation; celrev()
-* --------------------------------
-* Compute the celestial coordinates (lng,lat) of the point with projected
-* coordinates (x,y).
-*
-* Given:
-* pcode[4] const char
-* WCS projection code (see below).
-* x,y const double
-* Projected coordinates, "degrees".
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (see below).
-*
-* Returned:
-* lng,lat double* Celestial longitude and latitude of the projected
-* point, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid value of (x,y).
-*
-* Coordinate transformation parameters
-* ------------------------------------
-* The celprm struct consists of the following:
-*
-* int flag
-* The celprm struct contains pointers to the forward and reverse
-* projection routines as well as intermediaries computed from the
-* reference coordinates (see below). Whenever the projection code
-* (pcode) or any of ref[4] are set or changed then this flag must be
-* set to zero to signal the initialization routine, celset(), to
-* redetermine the function pointers and recompute intermediaries.
-* Once this has been done pcode itself is ignored.
-*
-* double ref[4]
-* The first pair of values should be set to the celestial longitude
-* and latitude (usually right ascension and declination) of the
-* reference point of the projection.
-*
-* The second pair of values are the native longitude and latitude of
-* the pole of the celestial coordinate system and correspond to the
-* FITS keywords LONGPOLE and LATPOLE.
-*
-* LONGPOLE defaults to 0 degrees if the celestial latitude of the
-* reference point of the projection is greater than the native
-* latitude, otherwise 180 degrees. (This is the condition for the
-* celestial latitude to increase in the same direction as the native
-* latitude at the reference point.) ref[2] may be set to 999.0 to
-* indicate that the correct default should be substituted.
-*
-* In some circumstances the latitude of the native pole may be
-* determined by the first three values only to within a sign and
-* LATPOLE is used to choose between the two solutions. LATPOLE is
-* set in ref[3] and the solution closest to this value is used to
-* reset ref[3]. It is therefore legitimate, for example, to set
-* ref[3] to 999.0 to choose the more northerly solution - the default
-* if the LATPOLE card is omitted from the FITS header. For the
-* special case where the reference point of the projection is at
-* native latitude zero, its celestial latitude is zero, and
-* LONGPOLE = +/- 90 then the native latitude of the pole is not
-* determined by the first three reference values and LATPOLE
-* specifies it completely.
-*
-* The remaining members of the celprm struct are maintained by the
-* initialization routines and should not be modified. This is done for the
-* sake of efficiency and to allow an arbitrary number of contexts to be
-* maintained simultaneously.
-*
-* double euler[5]
-* Euler angles and associated intermediaries derived from the
-* coordinate reference values.
-* int (*prjfwd)()
-* int (*prjrev)()
-* Pointers to the forward and reverse projection routines.
-*
-*
-* WCS projection codes
-* --------------------
-* Zenithals/azimuthals:
-* AZP: zenithal/azimuthal perspective
-* TAN: gnomonic
-* SIN: synthesis (generalized orthographic)
-* STG: stereographic
-* ARC: zenithal/azimuthal equidistant
-* ZPN: zenithal/azimuthal polynomial
-* ZEA: zenithal/azimuthal equal area
-* AIR: Airy
-*
-* Cylindricals:
-* CYP: cylindrical perspective
-* CAR: Cartesian
-* MER: Mercator
-* CEA: cylindrical equal area
-*
-* Conics:
-* COP: conic perspective
-* COD: conic equidistant
-* COE: conic equal area
-* COO: conic orthomorphic
-*
-* Polyconics:
-* BON: Bonne
-* PCO: polyconic
-*
-* Pseudo-cylindricals:
-* GLS: Sanson-Flamsteed (global sinusoidal)
-* PAR: parabolic
-* MOL: Mollweide
-*
-* Conventional:
-* AIT: Hammer-Aitoff
-*
-* Quad-cubes:
-* CSC: COBE quadrilateralized spherical cube
-* QSC: quadrilateralized spherical cube
-* TSC: tangential spherical cube
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: cel.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "cel.h"
-
-int npcode = 25;
-char pcodes[25][4] =
- {"AZP", "TAN", "SIN", "STG", "ARC", "ZPN", "ZEA", "AIR", "CYP", "CAR",
- "MER", "CEA", "COP", "COD", "COE", "COO", "BON", "PCO", "GLS", "PAR",
- "AIT", "MOL", "CSC", "QSC", "TSC"};
-
-/* Map error number to error message for each function. */
-const char *celset_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Ill-conditioned coordinate transformation parameters"};
-
-const char *celfwd_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid value of (lng,lat)"};
-
-const char *celrev_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid value of (x,y)"};
-
-
-int celset(pcode, cel, prj)
-
-const char pcode[4];
-struct celprm *cel;
-struct prjprm *prj;
-
-{
- int dophip;
- const double tol = 1.0e-10;
- double clat0, cphip, cthe0, theta0, slat0, sphip, sthe0;
- double latp, latp1, latp2;
- double u, v, x, y, z;
-
- /* Set pointers to the forward and reverse projection routines. */
- if (strcmp(pcode, "AZP") == 0) {
- cel->prjfwd = azpfwd;
- cel->prjrev = azprev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "TAN") == 0) {
- cel->prjfwd = tanfwd;
- cel->prjrev = tanrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "SIN") == 0) {
- cel->prjfwd = sinfwd;
- cel->prjrev = sinrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "STG") == 0) {
- cel->prjfwd = stgfwd;
- cel->prjrev = stgrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "ARC") == 0) {
- cel->prjfwd = arcfwd;
- cel->prjrev = arcrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "ZPN") == 0) {
- cel->prjfwd = zpnfwd;
- cel->prjrev = zpnrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "ZEA") == 0) {
- cel->prjfwd = zeafwd;
- cel->prjrev = zearev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "AIR") == 0) {
- cel->prjfwd = airfwd;
- cel->prjrev = airrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "CYP") == 0) {
- cel->prjfwd = cypfwd;
- cel->prjrev = cyprev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "CAR") == 0) {
- cel->prjfwd = carfwd;
- cel->prjrev = carrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "MER") == 0) {
- cel->prjfwd = merfwd;
- cel->prjrev = merrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "CEA") == 0) {
- cel->prjfwd = ceafwd;
- cel->prjrev = cearev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "COP") == 0) {
- cel->prjfwd = copfwd;
- cel->prjrev = coprev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "COD") == 0) {
- cel->prjfwd = codfwd;
- cel->prjrev = codrev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "COE") == 0) {
- cel->prjfwd = coefwd;
- cel->prjrev = coerev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "COO") == 0) {
- cel->prjfwd = coofwd;
- cel->prjrev = coorev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "BON") == 0) {
- cel->prjfwd = bonfwd;
- cel->prjrev = bonrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "PCO") == 0) {
- cel->prjfwd = pcofwd;
- cel->prjrev = pcorev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "GLS") == 0) {
- cel->prjfwd = glsfwd;
- cel->prjrev = glsrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "PAR") == 0) {
- cel->prjfwd = parfwd;
- cel->prjrev = parrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "AIT") == 0) {
- cel->prjfwd = aitfwd;
- cel->prjrev = aitrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "MOL") == 0) {
- cel->prjfwd = molfwd;
- cel->prjrev = molrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "CSC") == 0) {
- cel->prjfwd = cscfwd;
- cel->prjrev = cscrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "QSC") == 0) {
- cel->prjfwd = qscfwd;
- cel->prjrev = qscrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "TSC") == 0) {
- cel->prjfwd = tscfwd;
- cel->prjrev = tscrev;
- theta0 = 0.0;
- } else {
- /* Unrecognized projection code. */
- return 1;
- }
-
- /* Set default for native longitude of the celestial pole? */
- dophip = (cel->ref[2] == 999.0);
-
- /* Compute celestial coordinates of the native pole. */
- if (theta0 == 90.0) {
- /* Reference point is at the native pole. */
-
- if (dophip) {
- /* Set default for longitude of the celestial pole. */
- cel->ref[2] = 180.0;
- }
-
- latp = cel->ref[1];
- cel->ref[3] = latp;
-
- cel->euler[0] = cel->ref[0];
- cel->euler[1] = 90.0 - latp;
- } else {
- /* Reference point away from the native pole. */
-
- /* Set default for longitude of the celestial pole. */
- if (dophip) {
- cel->ref[2] = (cel->ref[1] < theta0) ? 180.0 : 0.0;
- }
-
- clat0 = wcs_cosd(cel->ref[1]);
- slat0 = wcs_sind(cel->ref[1]);
- cphip = wcs_cosd(cel->ref[2]);
- sphip = wcs_sind(cel->ref[2]);
- cthe0 = wcs_cosd(theta0);
- sthe0 = wcs_sind(theta0);
-
- x = cthe0*cphip;
- y = sthe0;
- z = sqrt(x*x + y*y);
- if (z == 0.0) {
- if (slat0 != 0.0) {
- return 1;
- }
-
- /* latp determined by LATPOLE in this case. */
- latp = cel->ref[3];
- } else {
- if (fabs(slat0/z) > 1.0) {
- return 1;
- }
-
- u = wcs_atan2d(y,x);
- v = wcs_acosd(slat0/z);
-
- latp1 = u + v;
- if (latp1 > 180.0) {
- latp1 -= 360.0;
- } else if (latp1 < -180.0) {
- latp1 += 360.0;
- }
-
- latp2 = u - v;
- if (latp2 > 180.0) {
- latp2 -= 360.0;
- } else if (latp2 < -180.0) {
- latp2 += 360.0;
- }
-
- if (fabs(cel->ref[3]-latp1) < fabs(cel->ref[3]-latp2)) {
- if (fabs(latp1) < 90.0+tol) {
- latp = latp1;
- } else {
- latp = latp2;
- }
- } else {
- if (fabs(latp2) < 90.0+tol) {
- latp = latp2;
- } else {
- latp = latp1;
- }
- }
-
- cel->ref[3] = latp;
- }
-
- cel->euler[1] = 90.0 - latp;
-
- z = wcs_cosd(latp)*clat0;
- if (fabs(z) < tol) {
- if (fabs(clat0) < tol) {
- /* Celestial pole at the reference point. */
- cel->euler[0] = cel->ref[0];
- cel->euler[1] = 90.0 - theta0;
- } else if (latp > 0.0) {
- /* Celestial pole at the native north pole.*/
- cel->euler[0] = cel->ref[0] + cel->ref[2] - 180.0;
- cel->euler[1] = 0.0;
- } else if (latp < 0.0) {
- /* Celestial pole at the native south pole. */
- cel->euler[0] = cel->ref[0] - cel->ref[2];
- cel->euler[1] = 180.0;
- }
- } else {
- x = (sthe0 - wcs_sind(latp)*slat0)/z;
- y = sphip*cthe0/clat0;
- if (x == 0.0 && y == 0.0) {
- return 1;
- }
- cel->euler[0] = cel->ref[0] - wcs_atan2d(y,x);
- }
-
- /* Make euler[0] the same sign as ref[0]. */
- if (cel->ref[0] >= 0.0) {
- if (cel->euler[0] < 0.0) cel->euler[0] += 360.0;
- } else {
- if (cel->euler[0] > 0.0) cel->euler[0] -= 360.0;
- }
- }
-
- cel->euler[2] = cel->ref[2];
- cel->euler[3] = wcs_cosd(cel->euler[1]);
- cel->euler[4] = wcs_sind(cel->euler[1]);
- cel->flag = CELSET;
-
- /* Check for ill-conditioned parameters. */
- if (fabs(latp) > 90.0+tol) {
- return 2;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int celfwd(pcode, lng, lat, cel, phi, theta, prj, x, y)
-
-const char pcode[4];
-const double lng, lat;
-struct celprm *cel;
-double *phi, *theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int err;
-
- if (cel->flag != CELSET) {
- if (celset(pcode, cel, prj)) return 1;
- }
-
- /* Compute native coordinates. */
- sphfwd(lng, lat, cel->euler, phi, theta);
-
- /* Apply forward projection. */
- if (err = cel->prjfwd(*phi, *theta, prj, x, y)) {
- return err == 1 ? 2 : 3;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int celrev(pcode, x, y, prj, phi, theta, cel, lng, lat)
-
-const char pcode[4];
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-struct celprm *cel;
-double *lng, *lat;
-
-{
- int err;
-
- if (cel->flag != CELSET) {
- if(celset(pcode, cel, prj)) return 1;
- }
-
- /* Apply reverse projection. */
- if (err = cel->prjrev(x, y, prj, phi, theta)) {
- return err == 1 ? 2 : 3;
- }
-
- /* Compute native coordinates. */
- sphrev(*phi, *theta, cel->euler, lng, lat);
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/cel.h b/external/sextractor/source/wcs/cel.h
deleted file mode 100644
index 310fc8c..0000000
--- a/external/sextractor/source/wcs/cel.h
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef CEL
-#define CEL
-
-#include "proj.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern int npcode;
-extern char pcodes[25][4];
-
-struct celprm {
- int flag;
- double ref[4];
- double euler[5];
-
-#if __STDC__ || defined(__cplusplus)
- int (*prjfwd)(const double, const double,
- struct prjprm *,
- double *, double *);
- int (*prjrev)(const double, const double,
- struct prjprm *,
- double *, double *);
-#else
- int (*prjfwd)();
- int (*prjrev)();
-#endif
-};
-
-#if __STDC__ || defined(__cplusplus)
- int celset(const char *, struct celprm *, struct prjprm *);
- int celfwd(const char *,
- const double, const double,
- struct celprm *,
- double *, double *,
- struct prjprm *,
- double *, double *);
- int celrev(const char *,
- const double, const double,
- struct prjprm *,
- double *, double *,
- struct celprm *,
- double *, double *);
-#else
- int celset(), celfwd(), celrev();
-#endif
-
-extern const char *celset_errmsg[];
-extern const char *celfwd_errmsg[];
-extern const char *celrev_errmsg[];
-
-#define CELSET 137
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* CEL */
diff --git a/external/sextractor/source/wcs/lin.c b/external/sextractor/source/wcs/lin.c
deleted file mode 100644
index 6a38b3a..0000000
--- a/external/sextractor/source/wcs/lin.c
+++ /dev/null
@@ -1,423 +0,0 @@
-/*=============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines which implement the FITS World Coordinate System (WCS)
-* convention.
-*
-* Summary of routines
-* -------------------
-* These utility routines apply the linear transformation defined by the WCS
-* FITS header cards. There are separate routines for the image-to-pixel,
-* linfwd(), and pixel-to-image, linrev(), transformations.
-*
-* An initialization routine, linset(), computes intermediate values from
-* the transformation parameters but need not be called explicitly - see the
-* explanation of lin.flag below.
-*
-* An auxiliary matrix inversion routine, matinv(), is included. It uses
-* LU-triangular factorization with scaled partial pivoting.
-*
-*
-* Initialization routine; linset()
-* --------------------------------
-* Initializes members of a linprm data structure which hold intermediate
-* values. Note that this routine need not be called directly; it will be
-* invoked by linfwd() and linrev() if the "flag" structure member is
-* anything other than a predefined magic value.
-*
-* Given and/or returned:
-* lin linprm* Linear transformation parameters (see below).
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Memory allocation error.
-* 2: PC matrix is singular.
-*
-* Forward transformation; linfwd()
-* --------------------------------
-* Compute pixel coordinates from image coordinates. Note that where
-* celestial coordinate systems are concerned the image coordinates
-* correspond to (x,y) in the plane of projection, not celestial (lng,lat).
-*
-* Given:
-* imgcrd const double[]
-* Image (world) coordinate.
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (see below).
-*
-* Returned:
-* pixcrd d[] Pixel coordinate.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: The transformation is not invertible.
-*
-* Reverse transformation; linrev()
-* --------------------------------
-* Compute image coordinates from pixel coordinates. Note that where
-* celestial coordinate systems are concerned the image coordinates
-* correspond to (x,y) in the plane of projection, not celestial (lng,lat).
-*
-* Given:
-* pixcrd const double[]
-* Pixel coordinate.
-*
-* Given and/or returned:
-* lin linprm* Linear transformation parameters (see below).
-*
-* Returned:
-* imgcrd d[] Image (world) coordinate.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Error.
-*
-* Linear transformation parameters
-* --------------------------------
-* The linprm struct consists of the following:
-*
-* int flag
-* This flag must be set to zero whenever any of the following members
-* are set or modified. This signals the initialization routine,
-* linset(), to recompute intermediaries.
-* int naxis
-* Number of image axes.
-* double *crpix
-* Pointer to the first element of an array of double containing the
-* coordinate reference pixel, CRPIXn.
-* double *pc
-* Pointer to the first element of the PC (pixel coordinate)
-* transformation matrix.
-* double *cdelt
-* Pointer to the first element of an array of double containing the
-* coordinate increments, CDELTn.
-*
-* The remaining members of the linprm struct are maintained by the
-* initialization routine and should not be modified.
-*
-* double *piximg
-* Pointer to the first element of the matrix containing the product
-* of the CDELTn diagonal matrix and the PC matrix.
-* double *imgpix
-* Pointer to the first element of the inverse of the piximg matrix.
-*
-* linset allocates storage for the above arrays using malloc(). Note,
-* however, that these routines do not free this storage so if a linprm
-* variable has itself been malloc'd then these structure members must be
-* explicitly freed before the linprm variable is free'd otherwise a memory
-* leak will result.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: lin.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include <math.h>
-#include "lin.h"
-
-/* Map error number to error message for each function. */
-const char *linset_errmsg[] = {
- 0,
- "Memory allocation error",
- "PC matrix is singular"};
-
-const char *linfwd_errmsg[] = {
- 0,
- "Memory allocation error",
- "PC matrix is singular"};
-
-const char *linrev_errmsg[] = {
- 0,
- "Memory allocation error",
- "PC matrix is singular"};
-
-
-#ifdef __convexc__
-#include <stdlib.h>
-#else
-#include <stdlib.h>
-/*#include <malloc.h>*/
-#endif
-
-int linset(lin)
-
-struct linprm *lin;
-
-{
- int i, ij, j, mem, n;
-
- n = lin->naxis;
-
- /* Allocate memory for internal arrays. */
- mem = n * n * sizeof(double);
- lin->piximg = (double*)malloc(mem);
- if (lin->piximg == (double*)0) return 1;
-
- lin->imgpix = (double*)malloc(mem);
- if (lin->imgpix == (double*)0) {
- free(lin->piximg);
- return 1;
- }
-
- /* Compute the pixel-to-image transformation matrix. */
- for (i = 0, ij = 0; i < n; i++) {
- for (j = 0; j < n; j++, ij++) {
- lin->piximg[ij] = lin->cdelt[i] * lin->pc[ij];
- }
- }
-
- /* Compute the image-to-pixel transformation matrix. */
- if (matinv(n, lin->piximg, lin->imgpix)) return 2;
-
- lin->flag = LINSET;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int linfwd(imgcrd, lin, pixcrd)
-
-const double imgcrd[];
-struct linprm *lin;
-double pixcrd[];
-
-{
- int i, ij, j, n;
-
- n = lin->naxis;
-
- if (lin->flag != LINSET) {
- if (linset(lin)) return 1;
- }
-
- for (i = 0, ij = 0; i < n; i++) {
- pixcrd[i] = 0.0;
- for (j = 0; j < n; j++, ij++) {
- pixcrd[i] += lin->imgpix[ij] * imgcrd[j];
- }
- }
-
- for (j = 0; j < n; j++) {
- pixcrd[j] += lin->crpix[j];
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int linrev(pixcrd, lin, imgcrd)
-
-const double pixcrd[];
-struct linprm *lin;
-double imgcrd[];
-
-{
- int i, ij, j, n;
- double temp;
-
- n = lin->naxis;
-
- if (lin->flag != LINSET) {
- if (linset(lin)) return 1;
- }
-
- for (i = 0; i < n; i++) {
- imgcrd[i] = 0.0;
- }
-
- for (j = 0; j < n; j++) {
- temp = pixcrd[j] - lin->crpix[j];
- for (i = 0, ij = j; i < n; i++, ij+=n) {
- imgcrd[i] += lin->piximg[ij] * temp;
- }
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int matinv(n, mat, inv)
-
-const int n;
-const double mat[];
-double inv[];
-
-{
- register int i, ij, ik, j, k, kj, pj;
- int itemp, mem, *mxl, *lxm, pivot;
- double colmax, *lu, *rowmax, dtemp;
-
-
- /* Allocate memory for internal arrays. */
- mem = n * sizeof(int);
- if ((mxl = (int*)malloc(mem)) == (int*)0) return 1;
- if ((lxm = (int*)malloc(mem)) == (int*)0) {
- free(mxl);
- return 1;
- }
-
- mem = n * sizeof(double);
- if ((rowmax = (double*)malloc(mem)) == (double*)0) {
- free(mxl);
- free(lxm);
- return 1;
- }
-
- mem *= n;
- if ((lu = (double*)malloc(mem)) == (double*)0) {
- free(mxl);
- free(lxm);
- free(rowmax);
- return 1;
- }
-
-
- /* Initialize arrays. */
- for (i = 0, ij = 0; i < n; i++) {
- /* Vector which records row interchanges. */
- mxl[i] = i;
-
- rowmax[i] = 0.0;
-
- for (j = 0; j < n; j++, ij++) {
- dtemp = fabs(mat[ij]);
- if (dtemp > rowmax[i]) rowmax[i] = dtemp;
-
- lu[ij] = mat[ij];
- }
-
- /* A row of zeroes indicates a singular matrix. */
- if (rowmax[i] == 0.0) {
- free(mxl);
- free(lxm);
- free(rowmax);
- free(lu);
- return 2;
- }
- }
-
-
- /* Form the LU triangular factorization using scaled partial pivoting. */
- for (k = 0; k < n; k++) {
- /* Decide whether to pivot. */
- colmax = fabs(lu[k*n+k]) / rowmax[k];
- pivot = k;
-
- for (i = k+1; i < n; i++) {
- ik = i*n + k;
- dtemp = fabs(lu[ik]) / rowmax[i];
- if (dtemp > colmax) {
- colmax = dtemp;
- pivot = i;
- }
- }
-
- if (pivot > k) {
- /* We must pivot, interchange the rows of the design matrix. */
- for (j = 0, pj = pivot*n, kj = k*n; j < n; j++, pj++, kj++) {
- dtemp = lu[pj];
- lu[pj] = lu[kj];
- lu[kj] = dtemp;
- }
-
- /* Amend the vector of row maxima. */
- dtemp = rowmax[pivot];
- rowmax[pivot] = rowmax[k];
- rowmax[k] = dtemp;
-
- /* Record the interchange for later use. */
- itemp = mxl[pivot];
- mxl[pivot] = mxl[k];
- mxl[k] = itemp;
- }
-
- /* Gaussian elimination. */
- for (i = k+1; i < n; i++) {
- ik = i*n + k;
-
- /* Nothing to do if lu[ik] is zero. */
- if (lu[ik] != 0.0) {
- /* Save the scaling factor. */
- lu[ik] /= lu[k*n+k];
-
- /* Subtract rows. */
- for (j = k+1; j < n; j++) {
- lu[i*n+j] -= lu[ik]*lu[k*n+j];
- }
- }
- }
- }
-
-
- /* mxl[i] records which row of mat corresponds to row i of lu. */
- /* lxm[i] records which row of lu corresponds to row i of mat. */
- for (i = 0; i < n; i++) {
- lxm[mxl[i]] = i;
- }
-
-
- /* Determine the inverse matrix. */
- for (i = 0, ij = 0; i < n; i++) {
- for (j = 0; j < n; j++, ij++) {
- inv[ij] = 0.0;
- }
- }
-
- for (k = 0; k < n; k++) {
- inv[lxm[k]*n+k] = 1.0;
-
- /* Forward substitution. */
- for (i = lxm[k]+1; i < n; i++) {
- for (j = lxm[k]; j < i; j++) {
- inv[i*n+k] -= lu[i*n+j]*inv[j*n+k];
- }
- }
-
- /* Backward substitution. */
- for (i = n-1; i >= 0; i--) {
- for (j = i+1; j < n; j++) {
- inv[i*n+k] -= lu[i*n+j]*inv[j*n+k];
- }
- inv[i*n+k] /= lu[i*n+i];
- }
- }
-
- free(mxl);
- free(lxm);
- free(rowmax);
- free(lu);
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/lin.h b/external/sextractor/source/wcs/lin.h
deleted file mode 100644
index ee730b9..0000000
--- a/external/sextractor/source/wcs/lin.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef LIN
-#define LIN
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if !defined(__STDC__) && !defined(__cplusplus)
-#ifndef const
-#define const
-#endif
-#endif
-
-struct linprm {
- int flag;
- int naxis;
- double *crpix;
- double *pc;
- double *cdelt;
-
- /* Intermediates. */
- double *piximg;
- double *imgpix;
-};
-
-#if __STDC__ || defined(__cplusplus)
- int linset(struct linprm *);
- int linfwd(const double[], struct linprm *, double[]);
- int linrev(const double[], struct linprm *, double[]);
- int matinv(const int, const double [], double []);
-#else
- int linset(), linfwd(), linrev(), matinv();
-#endif
-
-extern const char *linset_errmsg[];
-extern const char *linfwd_errmsg[];
-extern const char *linrev_errmsg[];
-
-#define LINSET 137
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* LIN */
diff --git a/external/sextractor/source/wcs/proj.c b/external/sextractor/source/wcs/proj.c
deleted file mode 100644
index 9a591a4..0000000
--- a/external/sextractor/source/wcs/proj.c
+++ /dev/null
@@ -1,3434 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C implementation of the spherical map projections recognized by the FITS
-* "World Coordinate System" (WCS) convention.
-*
-* Summary of routines
-* -------------------
-* Each projection is implemented via separate functions for the forward,
-* *fwd(), and reverse, *rev(), transformation.
-*
-* Initialization routines, *set(), compute intermediate values from the
-* projection parameters but need not be called explicitly - see the
-* explanation of prj.flag below.
-*
-* azpset azpfwd azprev AZP: zenithal/azimuthal perspective
-* tanset tanfwd tanrev TAN: gnomonic
-* sinset sinfwd sinrev SIN: orthographic/synthesis
-* stgset stgfwd stgrev STG: stereographic
-* arcset arcfwd arcrev ARC: zenithal/azimuthal equidistant
-* zpnset zpnfwd zpnrev ZPN: zenithal/azimuthal polynomial
-* zeaset zeafwd zearev ZEA: zenithal/azimuthal equal area
-* airset airfwd airrev AIR: Airy
-* cypset cypfwd cyprev CYP: cylindrical perspective
-* carset carfwd carrev CAR: Cartesian
-* merset merfwd merrev MER: Mercator
-* ceaset ceafwd cearev CEA: cylindrical equal area
-* copset copfwd coprev COP: conic perspective
-* codset codfwd codrev COD: conic equidistant
-* coeset coefwd coerev COE: conic equal area
-* cooset coofwd coorev COO: conic orthomorphic
-* bonset bonfwd bonrev BON: Bonne
-* pcoset pcofwd pcorev PCO: polyconic
-* glsset glsfwd glsrev GLS: Sanson-Flamsteed (global sinusoidal)
-* parset parfwd parrev PAR: parabolic
-* aitset aitfwd aitrev AIT: Hammer-Aitoff
-* molset molfwd molrev MOL: Mollweide
-* cscset cscfwd cscrev CSC: COBE quadrilateralized spherical cube
-* qscset qscfwd qscrev QSC: quadrilateralized spherical cube
-* tscset tscfwd tscrev TSC: tangential spherical cube
-*
-*
-* Initialization routine; *set()
-* ------------------------------
-* Initializes members of a prjprm data structure which hold intermediate
-* values. Note that this routine need not be called directly; it will be
-* invoked by prjfwd() and prjrev() if the "flag" structure member is
-* anything other than a predefined magic value.
-*
-* Given and/or returned:
-* prj prjprm* Projection parameters (see below).
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid projection parameters.
-*
-* Forward transformation; *fwd()
-* -----------------------------
-* Compute (x,y) coordinates in the plane of projection from native spherical
-* coordinates (phi,theta).
-*
-* Given:
-* phi, const double
-* theta Longitude and latitude of the projected point in
-* native spherical coordinates, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (see below).
-*
-* Returned:
-* x,y double* Projected coordinates.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid projection parameters.
-* 2: Invalid value of (phi,theta).
-*
-* Reverse transformation; *rev()
-* -----------------------------
-* Compute native spherical coordinates (phi,theta) from (x,y) coordinates in
-* the plane of projection.
-*
-* Given:
-* x,y const double
-* Projected coordinates.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (see below).
-*
-* Returned:
-* phi, double* Longitude and latitude of the projected point in
-* theta native spherical coordinates, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid projection parameters.
-* 2: Invalid value of (x,y).
-*
-* Projection parameters
-* ---------------------
-* The prjprm struct consists of the following:
-*
-* int flag
-* This flag must be set to zero whenever any of p[10] or r0 are set
-* or changed. This signals the initialization routine to recompute
-* intermediaries.
-* double r0
-* r0; The radius of the generating sphere for the projection, a linear
-* scaling parameter. If this is zero, it will be reset to the default
-* value of 180/pi (the value for FITS WCS).
-* double p[10]
-* The first 10 elements contain projection parameters which correspond
-* to the PROJPn keywords in FITS, so p[0] is PROJP0, and p[9] is
-* PROJP9. Many projections use p[1] (PROJP1) and some also use p[2]
-* (PROJP2). ZPN is the only projection which uses any of the others.
-*
-* The remaining members of the prjprm struct are maintained by the
-* initialization routines and should not be modified. This is done for the
-* sake of efficiency and to allow an arbitrary number of contexts to be
-* maintained simultaneously.
-*
-* int n
-* double w[10]
-* Intermediate values derived from the projection parameters.
-*
-* Usage of the p[] array as it applies to each projection is described in
-* the prologue to each trio of projection routines.
-*
-* Argument checking
-* -----------------
-* Forward routines:
-*
-* The values of phi and theta (the native longitude and latitude)
-* normally lie in the range [-180,180] for phi, and [-90,90] for theta.
-* However, all forward projections will accept any value of phi and will
-* not normalize it.
-*
-* Although many of the forward projections will accept values of theta
-* outside the range [-90,90] such latitudes are not meaningful and should
-* normally be marked as an error. However, in the interests of
-* efficiency, the forward projection routines do not check for this,
-* although they do check for any invalid values of theta within the
-* range [-90,90].
-*
-* Reverse routines:
-*
-* Error checking on the projected coordinates (x,y) is limited to that
-* required to ascertain whether a solution exists. Where a solution does
-* exist no check is made that the value of phi and theta obtained lie
-* within the ranges [-180,180] for phi, and [-90,90] for theta.
-*
-* Accuracy
-* --------
-* Closure to a precision of at least 1.0-10 degree of longitude and latitude
-* has been verified for typical projection parameters on the 1 degree grid
-* of native longitude and latitude (to within 5 degrees of any latitude
-* where the projection may diverge).
-*
-* Notwithstanding this, absolutely no claim is made for the accuracy or
-* reliability of these routines. They are supplied as is, with no warranty
-* of fitness for any purpose.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: proj.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "proj.h"
-
-/* Map error number to error message for each function. */
-const char *prjset_errmsg[] = {
- 0,
- "Invalid projection parameters"};
-
-const char *prjfwd_errmsg[] = {
- 0,
- "Invalid projection parameters",
- "Invalid value of (phi,theta)"};
-
-const char *prjrev_errmsg[] = {
- 0,
- "Invalid projection parameters",
- "Invalid value of (x,y)"};
-
-
-#ifdef COPYSIGN
-#define wcs_copysign(X, Y) ((Y) < 0.0 ? -fabs(X) : fabs(X))
-#endif
-
-
-/*============================================================================
-* AZP: zenithal/azimuthal perspective projection.
-*
-* Given:
-* prj->p[1] AZP distance parameter, mu in units of r0.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(mu+1)
-* prj->w[1] 1/prj->w[0]
-*===========================================================================*/
-
-int azpset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = prj->r0*(prj->p[1] + 1.0);
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int azpfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r, s;
-
- if (prj->flag != PRJSET) {
- if (azpset(prj)) return 1;
- }
-
- s = prj->p[1] + wcs_sind(theta);
- if (s == 0.0) {
- return 2;
- }
-
- r = prj->w[0]*wcs_cosd(theta)/s;
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int azprev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r, rho, s;
- const double tol = 1.0e-13;
-
- if (prj->flag != PRJSET) {
- if (azpset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
-
- rho = r*prj->w[1];
- s = rho*prj->p[1]/sqrt(rho*rho+1.0);
- if (fabs(s) > 1.0) {
- if (fabs(s) > 1.0+tol) {
- return 2;
- }
- *theta = wcs_atan2d(1.0,rho) - wcs_copysign(90.0,s);
- } else {
- *theta = wcs_atan2d(1.0,rho) - wcs_asind(s);
- }
-
- return 0;
-}
-
-/*============================================================================
-* TAN: gnomonic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-*===========================================================================*/
-
-int tanset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tanfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r, s;
-
- if (prj->flag != PRJSET) {
- if(tanset(prj)) return 1;
- }
-
- s = wcs_sind(theta);
- if (s == 0.0) return 2;
-
- r = prj->r0*wcs_cosd(theta)/s;
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tanrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (tanset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
- *theta = wcs_atan2d(prj->r0, r);
-
- return 0;
-}
-
-/*============================================================================
-* SIN: orthographic/synthesis projection.
-*
-* Given:
-* prj->p[1:2] SIN obliqueness parameters, alpha and beta.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 1/r0
-* prj->w[1] alpha**2 + beta**2
-* prj->w[2] 2*(alpha**2 + beta**2)
-* prj->w[3] 2*(alpha**2 + beta**2 + 1)
-* prj->w[4] alpha**2 + beta**2 - 1
-*===========================================================================*/
-
-int sinset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = 1.0/prj->r0;
- prj->w[1] = prj->p[1]*prj->p[1] + prj->p[2]*prj->p[2];
- prj->w[2] = 2.0*prj->w[1];
- prj->w[3] = prj->w[2] + 2.0;
- prj->w[4] = prj->w[1] - 1.0;
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int sinfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double cthe, t, z;
-
- if (prj->flag != PRJSET) {
- if (sinset(prj)) return 1;
- }
-
- t = (90.0 - fabs(theta))*D2R;
- if (t < 1.0e-5) {
- if (theta > 0.0) {
- z = -t*t/2.0;
- } else {
- z = 2.0 - t*t/2.0;
- }
- cthe = t;
- } else {
- z = wcs_sind(theta) - 1.0;
- cthe = wcs_cosd(theta);
- }
-
- *x = prj->r0*(cthe*wcs_sind(phi) + prj->p[1]*z);
- *y = -prj->r0*(cthe*wcs_cosd(phi) + prj->p[2]*z);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int sinrev (x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- const double tol = 1.0e-13;
- double a, b, c, d, r2, sth, sth1, sth2, sxy, x0, xp, y0, yp, z;
-
- if (prj->flag != PRJSET) {
- if (sinset(prj)) return 1;
- }
-
- /* Compute intermediaries. */
- x0 = x*prj->w[0];
- y0 = y*prj->w[0];
- r2 = x0*x0 + y0*y0;
-
- if (prj->w[1] == 0.0) {
- /* Orthographic projection. */
- if (r2 != 0.0) {
- *phi = wcs_atan2d(x0, -y0);
- } else {
- *phi = 0.0;
- }
-
- if (r2 < 0.5) {
- *theta = wcs_acosd(sqrt(r2));
- } else if (r2 <= 1.0) {
- *theta = wcs_asind(sqrt(1.0 - r2));
- } else {
- return 2;
- }
-
- } else {
- /* "Synthesis" projection. */
- if (r2 < 1.0e-10) {
- /* Use small angle formula. */
- z = -r2/2.0;
- *theta = 90.0 - R2D*sqrt(r2/(1.0 - x0*prj->p[1] + y0*prj->p[2]));
-
- } else {
- sxy = 2.0*(prj->p[1]*x0 - prj->p[2]*y0);
-
- a = prj->w[3];
- b = -(sxy + prj->w[2]);
- c = r2 + sxy + prj->w[4];
- d = b*b - 2.0*a*c;
-
- /* Check for a solution. */
- if (d < 0.0) {
- return 2;
- }
- d = sqrt(d);
-
- /* Choose solution closest to pole. */
- sth1 = (-b + d)/a;
- sth2 = (-b - d)/a;
- sth = (sth1>sth2) ? sth1 : sth2;
- if (sth > 1.0) {
- if (sth-1.0 < tol) {
- sth = 1.0;
- } else {
- sth = (sth1<sth2) ? sth1 : sth2;
- }
- }
- if (sth > 1.0 || sth < -1.0) {
- return 2;
- }
-
- *theta = wcs_asind(sth);
- z = sth - 1.0;
- }
-
- xp = -y0 - prj->p[2]*z;
- yp = x0 - prj->p[1]*z;
- if (xp == 0.0 && yp == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(yp,xp);
- }
- }
-
- return 0;
-}
-
-/*============================================================================
-* STG: stereographic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 2*r0
-* prj->w[1] 1/(2*r0)
-*===========================================================================*/
-
-int stgset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 360.0/PI;
- prj->w[1] = PI/360.0;
- } else {
- prj->w[0] = 2.0*prj->r0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int stgfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r, s;
-
- if (prj->flag != PRJSET) {
- if (stgset(prj)) return 1;
- }
-
- s = 1.0 + wcs_sind(theta);
- if (s == 0.0) {
- return 2;
- }
-
- r = prj->w[0]*wcs_cosd(theta)/s;
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int stgrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (stgset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
- *theta = 90.0 - 2.0*wcs_atand(r*prj->w[1]);
-
- return 0;
-}
-
-/*============================================================================
-* ARC: zenithal/azimuthal equidistant projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int arcset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int arcfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (arcset(prj)) return 1;
- }
-
- r = prj->w[0]*(90.0 - theta);
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int arcrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (arcset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
- *theta = 90.0 - r*prj->w[1];
-
- return 0;
-}
-
-/*============================================================================
-* ZPN: zenithal/azimuthal polynomial projection.
-*
-* Given:
-* prj->p[0:9] Polynomial coefficients.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->n Degree of the polynomial, N.
-* prj->w[0] Co-latitude of the first point of inflection (N > 2).
-* prj->w[1] Radius of the first point of inflection (N > 2).
-*===========================================================================*/
-
-int zpnset(prj)
-
-struct prjprm *prj;
-
-{
- int i, j, k;
- double d, d1, d2, r, zd, zd1, zd2;
- const double tol = 1.0e-13;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- /* Find the highest non-zero coefficient. */
- for (k = 9; k >= 0 && prj->p[k] == 0.0; k--);
- if (k < 0) return 1;
-
- prj->n = k;
-
- if (k >= 3) {
- /* Find the point of inflection closest to the pole. */
- zd1 = 0.0;
- d1 = prj->p[1];
- if (d1 <= 0.0) {
- return 1;
- }
-
- /* Find the point where the derivative first goes negative. */
- for (i = 0; i < 180; i++) {
- zd2 = i*D2R;
- d2 = 0.0;
- for (j = k; j > 0; j--) {
- d2 = d2*zd2 + j*prj->p[j];
- }
-
- if (d2 <= 0.0) break;
- zd1 = zd2;
- d1 = d2;
- }
-
- if (i == 180) {
- /* No negative derivative -> no point of inflection. */
- zd = PI;
- } else {
- /* Find where the derivative is zero. */
- for (i = 1; i <= 10; i++) {
- zd = zd1 - d1*(zd2-zd1)/(d2-d1);
-
- d = 0.0;
- for (j = k; j > 0; j--) {
- d = d*zd + j*prj->p[j];
- }
-
- if (fabs(d) < tol) break;
-
- if (d < 0.0) {
- zd2 = zd;
- d2 = d;
- } else {
- zd1 = zd;
- d1 = d;
- }
- }
- }
-
- r = 0.0;
- for (j = k; j >= 0; j--) {
- r = r*zd + prj->p[j];
- }
- prj->w[0] = zd;
- prj->w[1] = r;
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zpnfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int j;
- double r, s;
-
- if (prj->flag != PRJSET) {
- if (zpnset(prj)) return 1;
- }
-
- s = (90.0 - theta)*D2R;
- r = 0.0;
- for (j = 9; j >= 0; j--) {
- r = r*s + prj->p[j];
- }
- r = prj->r0*r;
-
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zpnrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int i, j, k;
- double a, b, c, d, lambda, r, r1, r2, rt, zd, zd1, zd2;
- const double tol = 1.0e-13;
-
- if (prj->flag != PRJSET) {
- if (zpnset(prj)) return 1;
- }
-
- k = prj->n;
-
- r = sqrt(x*x + y*y)/prj->r0;
-
- if (k < 1) {
- /* Constant - no solution. */
- return 1;
- } else if (k == 1) {
- /* Linear. */
- zd = (r - prj->p[0])/prj->p[1];
- } else if (k == 2) {
- /* Quadratic. */
- a = prj->p[2];
- b = prj->p[1];
- c = prj->p[0] - r;
-
- d = b*b - 4.0*a*c;
- if (d < 0.0) {
- return 2;
- }
- d = sqrt(d);
-
- /* Choose solution closest to pole. */
- zd1 = (-b + d)/(2.0*a);
- zd2 = (-b - d)/(2.0*a);
- zd = (zd1<zd2) ? zd1 : zd2;
- if (zd < -tol) zd = (zd1>zd2) ? zd1 : zd2;
- if (zd < 0.0) {
- if (zd < -tol) {
- return 2;
- }
- zd = 0.0;
- } else if (zd > PI) {
- if (zd > PI+tol) {
- return 2;
- }
- zd = PI;
- }
- } else {
- /* Higher order - solve iteratively. */
- zd1 = 0.0;
- r1 = prj->p[0];
- zd2 = prj->w[0];
- r2 = prj->w[1];
-
- if (r < r1) {
- if (r < r1-tol) {
- return 2;
- }
- zd = zd1;
- } else if (r > r2) {
- if (r > r2+tol) {
- return 2;
- }
- zd = zd2;
- } else {
- /* Disect the interval. */
- for (j = 0; j < 100; j++) {
- lambda = (r2 - r)/(r2 - r1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
-
- zd = zd2 - lambda*(zd2 - zd1);
-
- rt = 0.0;
- for (i = k; i >= 0; i--) {
- rt = (rt * zd) + prj->p[i];
- }
-
- if (rt < r) {
- if (r-rt < tol) break;
- r1 = rt;
- zd1 = zd;
- } else {
- if (rt-r < tol) break;
- r2 = rt;
- zd2 = zd;
- }
-
- if (fabs(zd2-zd1) < tol) break;
- }
- }
- }
-
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
- *theta = 90.0 - zd*R2D;
-
- return 0;
-}
-
-/*============================================================================
-* ZEA: zenithal/azimuthal equal area projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 2*r0
-* prj->w[1] 1/(2*r0)
-*===========================================================================*/
-
-int zeaset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 360.0/PI;
- prj->w[1] = PI/360.0;
- } else {
- prj->w[0] = 2.0*prj->r0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zeafwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (zeaset(prj)) return 1;
- }
-
- r = prj->w[0]*wcs_sind((90.0 - theta)/2.0);
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zearev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (zeaset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
-
- if (fabs(r-prj->w[0]) < tol) {
- *theta = -90.0;
- } else {
- *theta = 90.0 - 2.0*wcs_asind(r*prj->w[1]);
- }
-
- return 0;
-}
-
-/*============================================================================
-* AIR: Airy's projection.
-*
-* Given:
-* prj->p[1] Latitude theta_b within which the error is minimized,
-* in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] ln(cos(xi_b))/tan(xi_b)**2, where xi_b = (90-theta_b)/2
-* prj->w[1] 1/2 - prj->w[0]
-* prj->w[2] r0*prj->w[1]
-* prj->w[3] tol, cutoff for using small angle approximation, in
-* radians.
-* prj->w[4] prj->w[1]*tol
-* prj->w[5] (180/pi)/prj->w[1]
-*===========================================================================*/
-
-int airset(prj)
-
-struct prjprm *prj;
-
-{
- const double tol = 1.0e-4;
- double cxi;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- if (prj->p[1] == 90.0) {
- prj->w[0] = -0.5;
- prj->w[1] = 1.0;
- } else if (prj->p[1] > -90.0) {
- cxi = wcs_cosd((90.0 - prj->p[1])/2.0);
- prj->w[0] = log(cxi)*(cxi*cxi)/(1.0-cxi*cxi);
- prj->w[1] = 0.5 - prj->w[0];
- } else {
- return 1;
- }
-
- prj->w[2] = prj->r0 * prj->w[1];
- prj->w[3] = tol;
- prj->w[4] = prj->w[1]*tol;
- prj->w[5] = R2D/prj->w[1];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int airfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double cxi, r, txi, xi;
-
- if (prj->flag != PRJSET) {
- if (airset(prj)) return 1;
- }
-
- if (theta == 90.0) {
- r = 0.0;
- } else if (theta > -90.0) {
- xi = D2R*(90.0 - theta)/2.0;
- if (xi < prj->w[3]) {
- r = xi*prj->w[2];
- } else {
- cxi = wcs_cosd((90.0 - theta)/2.0);
- txi = sqrt(1.0-cxi*cxi)/cxi;
- r = -prj->r0*(log(cxi)/txi + prj->w[0]*txi);
- }
- } else {
- return 2;
- }
-
- *x = r*wcs_sind(phi);
- *y = -r*wcs_cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int airrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int j;
- double cxi, lambda, r, r1, r2, rt, txi, x1, x2, xi;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (airset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y)/prj->r0;
-
- if (r == 0.0) {
- xi = 0.0;
- } else if (r < prj->w[4]) {
- xi = r*prj->w[5];
- } else {
- /* Find a solution interval. */
- x1 = 1.0;
- r1 = 0.0;
- for (j = 0; j < 30; j++) {
- x2 = x1/2.0;
- txi = sqrt(1.0-x2*x2)/x2;
- r2 = -(log(x2)/txi + prj->w[0]*txi);
-
- if (r2 >= r) break;
- x1 = x2;
- r1 = r2;
- }
- if (j == 30) return 2;
-
- for (j = 0; j < 100; j++) {
- /* Weighted division of the interval. */
- lambda = (r2-r)/(r2-r1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
- cxi = x2 - lambda*(x2-x1);
-
- txi = sqrt(1.0-cxi*cxi)/cxi;
- rt = -(log(cxi)/txi + prj->w[0]*txi);
-
- if (rt < r) {
- if (r-rt < tol) break;
- r1 = rt;
- x1 = cxi;
- } else {
- if (rt-r < tol) break;
- r2 = rt;
- x2 = cxi;
- }
- }
- if (j == 100) return 2;
-
- xi = wcs_acosd(cxi);
- }
-
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(x, -y);
- }
- *theta = 90.0 - 2.0*xi;
-
- return 0;
-}
-
-/*============================================================================
-* CYP: cylindrical perspective projection.
-*
-* Given:
-* prj->p[1] Distance of point of projection from the centre of the
-* generating sphere, mu, in units of r0.
-* prj->p[2] Radius of the cylinder of projection, lambda, in units
-* of r0.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*lambda*(pi/180)
-* prj->w[1] (180/pi)/(r0*lambda)
-* prj->w[2] r0*(mu + lambda)
-* prj->w[3] 1/(r0*(mu + lambda))
-*===========================================================================*/
-
-int cypset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
-
- prj->w[0] = prj->p[2];
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[2] = R2D*(prj->p[1] + prj->p[2]);
- if (prj->w[2] == 0.0) {
- return 1;
- }
-
- prj->w[3] = 1.0/prj->w[2];
- } else {
- prj->w[0] = prj->r0*prj->p[2]*D2R;
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[2] = prj->r0*(prj->p[1] + prj->p[2]);
- if (prj->w[2] == 0.0) {
- return 1;
- }
-
- prj->w[3] = 1.0/prj->w[2];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cypfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double s;
-
- if (prj->flag != PRJSET) {
- if (cypset(prj)) return 1;
- }
-
- s = prj->p[1] + wcs_cosd(theta);
- if (s == 0.0) {
- return 2;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->w[2]*wcs_sind(theta)/s;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cyprev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double eta;
-
- if (prj->flag != PRJSET) {
- if (cypset(prj)) return 1;
- }
-
- *phi = x*prj->w[1];
- eta = y*prj->w[3];
- *theta = wcs_atan2d(eta,1.0) + wcs_asind(eta*prj->p[1]/sqrt(eta*eta+1.0));
-
- return 0;
-}
-
-/*============================================================================
-* CAR: Cartesian projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int carset(prj)
-
-struct prjprm *prj;
-
-{
-
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int carfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (carset(prj)) return 1;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->w[0]*theta;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int carrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- if (prj->flag != PRJSET) {
- if (carset(prj)) return 1;
- }
-
- *phi = prj->w[1]*x;
- *theta = prj->w[1]*y;
-
- return 0;
-}
-
-/*============================================================================
-* MER: Mercator's projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int merset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int merfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (merset(prj)) return 1;
- }
-
- if (theta <= -90.0 || theta >= 90.0) {
- return 2;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->r0*log(wcs_tand((90.0+theta)/2.0));
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int merrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- if (prj->flag != PRJSET) {
- if (merset(prj)) return 1;
- }
-
- *phi = x*prj->w[1];
- *theta = 2.0*wcs_atand(exp(y/prj->r0)) - 90.0;
-
- return 0;
-}
-
-/*============================================================================
-* CEA: cylindrical equal area projection.
-*
-* Given:
-* prj->p[1] Square of the cosine of the latitude at which the
-* projection is conformal, lambda.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-* prj->w[2] r0/lambda
-* prj->w[3] lambda/r0
-*===========================================================================*/
-
-int ceaset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- if (prj->p[1] <= 0.0 || prj->p[1] > 1.0) {
- return 1;
- }
- prj->w[2] = prj->r0/prj->p[1];
- prj->w[3] = prj->p[1]/prj->r0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = R2D/prj->r0;
- if (prj->p[1] <= 0.0 || prj->p[1] > 1.0) {
- return 1;
- }
- prj->w[2] = prj->r0/prj->p[1];
- prj->w[3] = prj->p[1]/prj->r0;
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int ceafwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (ceaset(prj)) return 1;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->w[2]*wcs_sind(theta);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cearev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s;
-
- if (prj->flag != PRJSET) {
- if (ceaset(prj)) return 1;
- }
-
- s = y*prj->w[3];
- if (fabs(s) > 1.0) {
- return 2;
- }
-
- *phi = x*prj->w[1];
- *theta = wcs_asind(s);
-
- return 0;
-}
-
-/*============================================================================
-* COP: conic perspective projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = sin(sigma)
-* prj->w[1] 1/C
-* prj->w[2] Y0 = r0*cos(delta)*cot(sigma)
-* prj->w[3] r0*cos(delta)
-* prj->w[4] 1/(r0*cos(delta)
-* prj->w[5] cot(sigma)
-*===========================================================================*/
-
-int copset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = wcs_sind(prj->p[1]);
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[3] = prj->r0*wcs_cosd(prj->p[2]);
- if (prj->w[3] == 0.0) {
- return 1;
- }
-
- prj->w[4] = 1.0/prj->w[3];
- prj->w[5] = 1.0/wcs_tand(prj->p[1]);
-
- prj->w[2] = prj->w[3]*prj->w[5];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int copfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (copset(prj)) return 1;
- }
-
- a = prj->w[0]*phi;
- r = prj->w[2] - prj->w[3]*wcs_tand(theta-prj->p[1]);
-
- *x = r*wcs_sind(a);
- *y = prj->w[2] - r*wcs_cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coprev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r;
-
- if (prj->flag != PRJSET) {
- if (copset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = wcs_atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- *theta = prj->p[1] + wcs_atand(prj->w[5] - r*prj->w[4]);
-
- return 0;
-}
-
-/*============================================================================
-* COD: conic equidistant projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = r0*sin(sigma)*sin(delta)/delta
-* prj->w[1] 1/C
-* prj->w[2] Y0 = delta*cot(delta)*cot(sigma)
-* prj->w[3] Y0 + sigma
-*===========================================================================*/
-
-int codset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- if (prj->p[2] == 0.0) {
- prj->w[0] = prj->r0*wcs_sind(prj->p[1])*D2R;
- } else {
- prj->w[0] = prj->r0*wcs_sind(prj->p[1])*wcs_sind(prj->p[2])/prj->p[2];
- }
-
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
- prj->w[2] = prj->r0*wcs_cosd(prj->p[2])*wcs_cosd(prj->p[1])/prj->w[0];
- prj->w[3] = prj->w[2] + prj->p[1];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int codfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (codset(prj)) return 1;
- }
-
- a = prj->w[0]*phi;
- r = prj->w[3] - theta;
-
- *x = r*wcs_sind(a);
- *y = prj->w[2] - r*wcs_cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int codrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r;
-
- if (prj->flag != PRJSET) {
- if (codset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = wcs_atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- *theta = prj->w[3] - r;
-
- return 0;
-}
-
-/*============================================================================
-* COE: conic equal area projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = (sin(theta1) + sin(theta2))/2
-* prj->w[1] 1/C
-* prj->w[2] Y0 = chi*sqrt(psi - 2C*wcs_sind(sigma))
-* prj->w[3] chi = r0/C
-* prj->w[4] psi = 1 + sin(theta1)*sin(theta2)
-* prj->w[5] 2C
-* prj->w[6] (1 + sin(theta1)*sin(theta2))*(r0/C)**2
-* prj->w[7] C/(2*r0**2)
-* prj->w[8] chi*sqrt(psi + 2C)
-*===========================================================================*/
-
-int coeset(prj)
-
-struct prjprm *prj;
-
-{
- double theta1, theta2;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- theta1 = prj->p[1] - prj->p[2];
- theta2 = prj->p[1] + prj->p[2];
-
- prj->w[0] = (wcs_sind(theta1) + wcs_sind(theta2))/2.0;
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[3] = prj->r0/prj->w[0];
- prj->w[4] = 1.0 + wcs_sind(theta1)*wcs_sind(theta2);
- prj->w[5] = 2.0*prj->w[0];
- prj->w[6] = prj->w[3]*prj->w[3]*prj->w[4];
- prj->w[7] = 1.0/(2.0*prj->r0*prj->w[3]);
- prj->w[8] = prj->w[3]*sqrt(prj->w[4] + prj->w[5]);
-
- prj->w[2] = prj->w[3]*sqrt(prj->w[4] - prj->w[5]*wcs_sind(prj->p[1]));
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coefwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (coeset(prj)) return 1;
- }
-
- a = phi*prj->w[0];
- if (theta == -90.0) {
- r = prj->w[8];
- } else {
- r = prj->w[3]*sqrt(prj->w[4] - prj->w[5]*wcs_sind(theta));
- }
-
- *x = r*wcs_sind(a);
- *y = prj->w[2] - r*wcs_cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coerev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r, w;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (coeset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = wcs_atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- if (fabs(r - prj->w[8]) < tol) {
- *theta = -90.0;
- } else {
- w = (prj->w[6] - r*r)*prj->w[7];
- if (fabs(w) > 1.0) {
- if (fabs(w-1.0) < tol) {
- *theta = 90.0;
- } else if (fabs(w+1.0) < tol) {
- *theta = -90.0;
- } else {
- return 2;
- }
- } else {
- *theta = wcs_asind(w);
- }
- }
-
- return 0;
-}
-
-/*============================================================================
-* COO: conic orthomorphic projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = ln(cos(theta2)/cos(theta1))/ln(tan(tau2)/tan(tau1))
-* where tau1 = (90 - theta1)/2
-* tau2 = (90 - theta2)/2
-* prj->w[1] 1/C
-* prj->w[2] Y0 = psi*tan((90-sigma)/2)**C
-* prj->w[3] psi = (r0*cos(theta1)/C)/tan(tau1)**C
-* prj->w[4] 1/psi
-*===========================================================================*/
-
-int cooset(prj)
-
-struct prjprm *prj;
-
-{
- double cos1, cos2, tan1, tan2, theta1, theta2;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- theta1 = prj->p[1] - prj->p[2];
- theta2 = prj->p[1] + prj->p[2];
-
- tan1 = wcs_tand((90.0 - theta1)/2.0);
- cos1 = wcs_cosd(theta1);
-
- if (theta1 == theta2) {
- prj->w[0] = wcs_sind(theta1);
- } else {
- tan2 = wcs_tand((90.0 - theta2)/2.0);
- cos2 = wcs_cosd(theta2);
- prj->w[0] = log(cos2/cos1)/log(tan2/tan1);
- }
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[3] = prj->r0*(cos1/prj->w[0])/pow(tan1,prj->w[0]);
- if (prj->w[3] == 0.0) {
- return 1;
- }
- prj->w[2] = prj->w[3]*pow(wcs_tand((90.0 - prj->p[1])/2.0),prj->w[0]);
- prj->w[4] = 1.0/prj->w[3];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coofwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (cooset(prj)) return 1;
- }
-
- a = prj->w[0]*phi;
- if (theta == -90.0) {
- if (prj->w[0] < 0.0) {
- r = 0.0;
- } else {
- return 2;
- }
- } else {
- r = prj->w[3]*pow(wcs_tand((90.0 - theta)/2.0),prj->w[0]);
- }
-
- *x = r*wcs_sind(a);
- *y = prj->w[2] - r*wcs_cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coorev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r;
-
- if (prj->flag != PRJSET) {
- if (cooset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = wcs_atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- if (r == 0.0) {
- if (prj->w[0] < 0.0) {
- *theta = -90.0;
- } else {
- return 2;
- }
- } else {
- *theta = 90.0 - 2.0*wcs_atand(pow(r*prj->w[4],prj->w[1]));
- }
-
- return 0;
-}
-
-/*============================================================================
-* BON: Bonne's projection.
-*
-* Given:
-* prj->p[1] Bonne conformal latitude, theta1, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[1] r0*pi/180
-* prj->w[2] Y0 = r0*cot(theta1) + theta1
-*===========================================================================*/
-
-int bonset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[1] = 1.0;
- prj->w[2] = prj->r0*wcs_cosd(prj->p[1])/wcs_sind(prj->p[1]) + prj->p[1];
- } else {
- prj->w[1] = prj->r0*D2R;
- prj->w[2] = prj->r0*(wcs_cosd(prj->p[1])/wcs_sind(prj->p[1]) + prj->p[1]*D2R);
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int bonfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->p[1] == 0.0) {
- /* Sanson-Flamsteed. */
- return glsfwd(phi, theta, prj, x, y);
- }
-
- if (prj->flag != PRJSET) {
- if (bonset(prj)) return 1;
- }
-
- r = prj->w[2] - theta*prj->w[1];
- a = prj->r0*phi*wcs_cosd(theta)/r;
-
- *x = r*wcs_sind(a);
- *y = prj->w[2] - r*wcs_cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int bonrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, costhe, r;
-
- if (prj->p[1] == 0.0) {
- /* Sanson-Flamsteed. */
- return glsrev(x, y, prj, phi, theta);
- }
-
- if (prj->flag != PRJSET) {
- if (bonset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = wcs_atan2d(x/r, dy/r);
- }
-
- *theta = (prj->w[2] - r)/prj->w[1];
- costhe = wcs_cosd(*theta);
- if (costhe == 0.0) {
- *phi = 0.0;
- } else {
- *phi = a*(r/prj->r0)/wcs_cosd(*theta);
- }
-
- return 0;
-}
-
-/*============================================================================
-* PCO: polyconic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] 1/r0
-* prj->w[2] 2*r0
-*===========================================================================*/
-
-int pcoset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- prj->w[2] = 360.0/PI;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- prj->w[2] = 2.0*prj->r0;
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int pcofwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, costhe, cotthe, sinthe;
-
- if (prj->flag != PRJSET) {
- if (pcoset(prj)) return 1;
- }
-
- costhe = wcs_cosd(theta);
- sinthe = wcs_sind(theta);
- a = phi*sinthe;
-
- if (sinthe == 0.0) {
- *x = prj->w[0]*phi;
- *y = 0.0;
- } else {
- cotthe = costhe/sinthe;
- *x = prj->r0*cotthe*wcs_sind(a);
- *y = prj->r0*(cotthe*(1.0 - wcs_cosd(a)) + theta*D2R);
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int pcorev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int j;
- double f, fneg, fpos, lambda, tanthe, theneg, thepos, w, xp, xx, ymthe, yp;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (pcoset(prj)) return 1;
- }
-
- w = fabs(y*prj->w[1]);
- if (w < tol) {
- *phi = x*prj->w[1];
- *theta = 0.0;
- } else if (fabs(w-90.0) < tol) {
- *phi = 0.0;
- *theta = wcs_copysign(90.0,y);
- } else {
- /* Iterative solution using weighted division of the interval. */
- if (y > 0.0) {
- thepos = 90.0;
- } else {
- thepos = -90.0;
- }
- theneg = 0.0;
-
- xx = x*x;
- ymthe = y - prj->w[0]*thepos;
- fpos = xx + ymthe*ymthe;
- fneg = -999.0;
-
- for (j = 0; j < 64; j++) {
- if (fneg < -100.0) {
- /* Equal division of the interval. */
- *theta = (thepos+theneg)/2.0;
- } else {
- /* Weighted division of the interval. */
- lambda = fpos/(fpos-fneg);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
- *theta = thepos - lambda*(thepos-theneg);
- }
-
- /* Compute the residue. */
- ymthe = y - prj->w[0]*(*theta);
- tanthe = wcs_tand(*theta);
- f = xx + ymthe*(ymthe - prj->w[2]/tanthe);
-
- /* Check for convergence. */
- if (fabs(f) < tol) break;
- if (fabs(thepos-theneg) < tol) break;
-
- /* Redefine the interval. */
- if (f > 0.0) {
- thepos = *theta;
- fpos = f;
- } else {
- theneg = *theta;
- fneg = f;
- }
- }
-
- xp = prj->r0 - ymthe*tanthe;
- yp = x*tanthe;
- if (xp == 0.0 && yp == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(yp, xp)/wcs_sind(*theta);
- }
- }
-
- return 0;
-}
-
-/*============================================================================
-* GLS: Sanson-Flamsteed ("global sinusoid") projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int glsset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int glsfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (glsset(prj)) return 1;
- }
-
- *x = prj->w[0]*phi*wcs_cosd(theta);
- *y = prj->w[0]*theta;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int glsrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double w;
-
- if (prj->flag != PRJSET) {
- if (glsset(prj)) return 1;
- }
-
- w = cos(y/prj->r0);
- if (w == 0.0) {
- *phi = 0.0;
- } else {
- *phi = x*prj->w[1]/cos(y/prj->r0);
- }
- *theta = y*prj->w[1];
-
- return 0;
-}
-
-/*============================================================================
-* PAR: parabolic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-* prj->w[2] pi*r0
-* prj->w[3] 1/(pi*r0)
-*===========================================================================*/
-
-int parset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- prj->w[2] = 180.0;
- prj->w[3] = 1.0/prj->w[2];
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- prj->w[2] = PI*prj->r0;
- prj->w[3] = 1.0/prj->w[2];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int parfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double s;
-
- if (prj->flag != PRJSET) {
- if (parset(prj)) return 1;
- }
-
- s = wcs_sind(theta/3.0);
- *x = prj->w[0]*phi*(1.0 - 4.0*s*s);
- *y = prj->w[2]*s;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int parrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s, t;
-
- if (prj->flag != PRJSET) {
- if (parset(prj)) return 1;
- }
-
- s = y*prj->w[3];
- if (s > 1.0 || s < -1.0) {
- return 2;
- }
-
- t = 1.0 - 4.0*s*s;
- if (t == 0.0) {
- if (x == 0.0) {
- *phi = 0.0;
- } else {
- return 2;
- }
- } else {
- *phi = prj->w[1]*x/t;
- }
-
- *theta = 3.0*wcs_asind(s);
-
- return 0;
-}
-
-/*============================================================================
-* AIT: Hammer-Aitoff projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 2*r0**2
-* prj->w[1] 1/(2*r0)**2
-* prj->w[2] 1/(4*r0)**2
-* prj->w[3] 1/(2*r0)
-*===========================================================================*/
-
-int aitset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = 2.0*prj->r0*prj->r0;
- prj->w[1] = 1.0/(2.0*prj->w[0]);
- prj->w[2] = prj->w[1]/4.0;
- prj->w[3] = 1.0/(2.0*prj->r0);
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int aitfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double costhe, w;
-
- if (prj->flag != PRJSET) {
- if (aitset(prj)) return 1;
- }
-
- costhe = wcs_cosd(theta);
- w = sqrt(prj->w[0]/(1.0 + costhe*wcs_cosd(phi/2.0)));
- *x = 2.0*w*costhe*wcs_sind(phi/2.0);
- *y = w*wcs_sind(theta);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int aitrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s, u, xp, yp, z;
-
- if (prj->flag != PRJSET) {
- if (aitset(prj)) return 1;
- }
-
- u = 1.0 - x*x*prj->w[2] - y*y*prj->w[1];
- if (u < 0.0) {
- return 2;
- }
- z = sqrt(u);
- s = z*y/prj->r0;
- if (s < -1.0 || s > 1.0) {
- return 2;
- }
-
- xp = 2.0*z*z - 1.0;
- yp = z*x*prj->w[3];
- if (xp == 0.0 && yp == 0.0) {
- *phi = 0.0;
- } else {
- *phi = 2.0*wcs_atan2d(yp, xp);
- }
- *theta = wcs_asind(s);
-
- return 0;
-}
-
-/*============================================================================
-* MOL: Mollweide's projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] sqrt(2)*r0
-* prj->w[1] sqrt(2)*r0/90
-* prj->w[2] 1/(sqrt(2)*r0)
-* prj->w[3] 90/r0
-*===========================================================================*/
-
-int molset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = SQRT2*prj->r0;
- prj->w[1] = prj->w[0]/90.0;
- prj->w[2] = 1.0/prj->w[0];
- prj->w[3] = 90.0/prj->r0;
- prj->w[4] = 2.0/PI;
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int molfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int j;
- double alpha, resid, u, v, v0, v1;
- const double tol = 1.0e-13;
-
- if (prj->flag != PRJSET) {
- if (molset(prj)) return 1;
- }
-
- if (fabs(theta) == 90.0) {
- *x = 0.0;
- *y = wcs_copysign(prj->w[0],theta);
- } else if (theta == 0.0) {
- *x = prj->w[1]*phi;
- *y = 0.0;
- } else {
- u = PI*wcs_sind(theta);
- v0 = -PI;
- v1 = PI;
- v = u;
- for (j = 0; j < 100; j++) {
- resid = (v - u) + sin(v);
- if (resid < 0.0) {
- if (resid > -tol) break;
- v0 = v;
- } else {
- if (resid < tol) break;
- v1 = v;
- }
- v = (v0 + v1)/2.0;
- }
-
- alpha = v/2.0;
- *x = prj->w[1]*phi*cos(alpha);
- *y = prj->w[0]*sin(alpha);
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int molrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s, y0, z;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (molset(prj)) return 1;
- }
-
- y0 = y/prj->r0;
- s = 2.0 - y0*y0;
- if (s <= tol) {
- if (s < -tol) {
- return 2;
- }
- s = 0.0;
-
- if (fabs(x) > tol) {
- return 2;
- }
- *phi = 0.0;
- } else {
- s = sqrt(s);
- *phi = prj->w[3]*x/s;
- }
-
- z = y*prj->w[2];
- if (fabs(z) > 1.0) {
- if (fabs(z) > 1.0+tol) {
- return 2;
- }
- z = wcs_copysign(1.0,z) + y0*s/PI;
- } else {
- z = asin(z)*prj->w[4] + y0*s/PI;
- }
-
- if (fabs(z) > 1.0) {
- if (fabs(z) > 1.0+tol) {
- return 2;
- }
- z = wcs_copysign(1.0,z);
- }
-
- *theta = wcs_asind(z);
-
- return 0;
-}
-
-/*============================================================================
-* CSC: COBE quadrilateralized spherical cube projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/4)
-* prj->w[1] (4/pi)/r0
-*===========================================================================*/
-
-int cscset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 45.0;
- prj->w[1] = 1.0/45.0;
- } else {
- prj->w[0] = prj->r0*PI/4.0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cscfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int face;
- double costhe, eta, l, m, n, rho, xi;
- const float tol = 1.0e-7;
-
- float a, a2, a2b2, a4, ab, b, b2, b4, ca2, cb2, x0, xf, y0, yf;
- const float gstar = 1.37484847732;
- const float mm = 0.004869491981;
- const float gamma = -0.13161671474;
- const float omega1 = -0.159596235474;
- const float d0 = 0.0759196200467;
- const float d1 = -0.0217762490699;
- const float c00 = 0.141189631152;
- const float c10 = 0.0809701286525;
- const float c01 = -0.281528535557;
- const float c11 = 0.15384112876;
- const float c20 = -0.178251207466;
- const float c02 = 0.106959469314;
-
- if (prj->flag != PRJSET) {
- if (cscset(prj)) return 1;
- }
-
- costhe = wcs_cosd(theta);
- l = costhe*wcs_cosd(phi);
- m = costhe*wcs_sind(phi);
- n = wcs_sind(theta);
-
- face = 0;
- rho = n;
- if (l > rho) {
- face = 1;
- rho = l;
- }
- if (m > rho) {
- face = 2;
- rho = m;
- }
- if (-l > rho) {
- face = 3;
- rho = -l;
- }
- if (-m > rho) {
- face = 4;
- rho = -m;
- }
- if (-n > rho) {
- face = 5;
- rho = -n;
- }
-
- if (face == 0) {
- xi = m;
- eta = -l;
- x0 = 0.0;
- y0 = 2.0;
- } else if (face == 1) {
- xi = m;
- eta = n;
- x0 = 0.0;
- y0 = 0.0;
- } else if (face == 2) {
- xi = -l;
- eta = n;
- x0 = 2.0;
- y0 = 0.0;
- } else if (face == 3) {
- xi = -m;
- eta = n;
- x0 = 4.0;
- y0 = 0.0;
- } else if (face == 4) {
- xi = l;
- eta = n;
- x0 = 6.0;
- y0 = 0.0;
- } else if (face == 5) {
- xi = m;
- eta = l;
- x0 = 0.0;
- y0 = -2.0;
- }
-
- a = xi/rho;
- b = eta/rho;
-
- a2 = a*a;
- b2 = b*b;
- ca2 = 1.0 - a2;
- cb2 = 1.0 - b2;
-
- /* Avoid floating underflows. */
- ab = fabs(a*b);
- a4 = (a2 > 1.0e-16) ? a2*a2 : 0.0;
- b4 = (b2 > 1.0e-16) ? b2*b2 : 0.0;
- a2b2 = (ab > 1.0e-16) ? a2*b2 : 0.0;
-
- xf = a*(a2 + ca2*(gstar + b2*(gamma*ca2 + mm*a2 +
- cb2*(c00 + c10*a2 + c01*b2 + c11*a2b2 + c20*a4 + c02*b4)) +
- a2*(omega1 - ca2*(d0 + d1*a2))));
- yf = b*(b2 + cb2*(gstar + a2*(gamma*cb2 + mm*b2 +
- ca2*(c00 + c10*b2 + c01*a2 + c11*a2b2 + c20*b4 + c02*a4)) +
- b2*(omega1 - cb2*(d0 + d1*b2))));
-
- if (fabs(xf) > 1.0) {
- if (fabs(xf) > 1.0+tol) {
- return 2;
- }
- xf = wcs_copysign(1.0,xf);
- }
- if (fabs(yf) > 1.0) {
- if (fabs(yf) > 1.0+tol) {
- return 2;
- }
- yf = wcs_copysign(1.0,yf);
- }
-
- *x = prj->w[0]*(x0 + xf);
- *y = prj->w[0]*(y0 + yf);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cscrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int face;
- double l, m, n;
-
- float a, b, xf, xx, yf, yy, z0, z1, z2, z3, z4, z5, z6;
- const float p00 = -0.27292696;
- const float p10 = -0.07629969;
- const float p20 = -0.22797056;
- const float p30 = 0.54852384;
- const float p40 = -0.62930065;
- const float p50 = 0.25795794;
- const float p60 = 0.02584375;
- const float p01 = -0.02819452;
- const float p11 = -0.01471565;
- const float p21 = 0.48051509;
- const float p31 = -1.74114454;
- const float p41 = 1.71547508;
- const float p51 = -0.53022337;
- const float p02 = 0.27058160;
- const float p12 = -0.56800938;
- const float p22 = 0.30803317;
- const float p32 = 0.98938102;
- const float p42 = -0.83180469;
- const float p03 = -0.60441560;
- const float p13 = 1.50880086;
- const float p23 = -0.93678576;
- const float p33 = 0.08693841;
- const float p04 = 0.93412077;
- const float p14 = -1.41601920;
- const float p24 = 0.33887446;
- const float p05 = -0.63915306;
- const float p15 = 0.52032238;
- const float p06 = 0.14381585;
-
- if (prj->flag != PRJSET) {
- if (cscset(prj)) return 1;
- }
-
- xf = x*prj->w[1];
- yf = y*prj->w[1];
-
- /* Determine the face. */
- if (xf > 7.0) {
- return 2;
- } else if (xf > 5.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 4;
- xf = xf - 6.0;
- } else if (xf > 3.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 3;
- xf = xf - 4.0;
- } else if (xf > 1.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 2;
- xf = xf - 2.0;
- } else if (xf < -1.0) {
- return 2;
- } else if (yf > 1.0) {
- if (yf > 3.0) return 2;
- face = 0;
- yf = yf - 2.0;
- } else if (yf < -1.0) {
- if (yf < -3.0) return 2;
- face = 5;
- yf = yf + 2.0;
- } else {
- face = 1;
- }
-
- xx = xf*xf;
- yy = yf*yf;
-
- z0 = p00 + xx*(p10 + xx*(p20 + xx*(p30 + xx*(p40 + xx*(p50 + xx*(p60))))));
- z1 = p01 + xx*(p11 + xx*(p21 + xx*(p31 + xx*(p41 + xx*(p51)))));
- z2 = p02 + xx*(p12 + xx*(p22 + xx*(p32 + xx*(p42))));
- z3 = p03 + xx*(p13 + xx*(p23 + xx*(p33)));
- z4 = p04 + xx*(p14 + xx*(p24));
- z5 = p05 + xx*(p15);
- z6 = p06;
-
- a = z0 + yy*(z1 + yy*(z2 + yy*(z3 + yy*(z4 + yy*(z5 + yy*z6)))));
- a = xf + xf*(1.0 - xx)*a;
-
- z0 = p00 + yy*(p10 + yy*(p20 + yy*(p30 + yy*(p40 + yy*(p50 + yy*(p60))))));
- z1 = p01 + yy*(p11 + yy*(p21 + yy*(p31 + yy*(p41 + yy*(p51)))));
- z2 = p02 + yy*(p12 + yy*(p22 + yy*(p32 + yy*(p42))));
- z3 = p03 + yy*(p13 + yy*(p23 + yy*(p33)));
- z4 = p04 + yy*(p14 + yy*(p24));
- z5 = p05 + yy*(p15);
- z6 = p06;
-
- b = z0 + xx*(z1 + xx*(z2 + xx*(z3 + xx*(z4 + xx*(z5 + xx*z6)))));
- b = yf + yf*(1.0 - yy)*b;
-
- if (face == 0) {
- n = 1.0/sqrt(a*a + b*b + 1.0);
- l = -b*n;
- m = a*n;
- } else if (face == 1) {
- l = 1.0/sqrt(a*a + b*b + 1.0);
- m = a*l;
- n = b*l;
- } else if (face == 2) {
- m = 1.0/sqrt(a*a + b*b + 1.0);
- l = -a*m;
- n = b*m;
- } else if (face == 3) {
- l = -1.0/sqrt(a*a + b*b + 1.0);
- m = a*l;
- n = -b*l;
- } else if (face == 4) {
- m = -1.0/sqrt(a*a + b*b + 1.0);
- l = -a*m;
- n = -b*m;
- } else if (face == 5) {
- n = -1.0/sqrt(a*a + b*b + 1.0);
- l = -b*n;
- m = -a*n;
- }
-
- if (l == 0.0 && m == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(m, l);
- }
- *theta = wcs_asind(n);
-
- return 0;
-}
-
-/*============================================================================
-* QSC: quadrilaterilized spherical cube projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/4)
-* prj->w[1] (4/pi)/r0
-*===========================================================================*/
-
-int qscset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 45.0;
- prj->w[1] = 1.0/45.0;
- } else {
- prj->w[0] = prj->r0*PI/4.0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int qscfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int face;
- double chi, costhe, eta, l, m, n, p, psi, rho, rhu, t, x0, xf, xi, y0, yf;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (qscset(prj)) return 1;
- }
-
- if (fabs(theta) == 90.0) {
- *x = 0.0;
- *y = wcs_copysign(2.0*prj->w[0],theta);
- return 0;
- }
-
- costhe = wcs_cosd(theta);
- l = costhe*wcs_cosd(phi);
- m = costhe*wcs_sind(phi);
- n = wcs_sind(theta);
-
- face = 0;
- rho = n;
- if (l > rho) {
- face = 1;
- rho = l;
- }
- if (m > rho) {
- face = 2;
- rho = m;
- }
- if (-l > rho) {
- face = 3;
- rho = -l;
- }
- if (-m > rho) {
- face = 4;
- rho = -m;
- }
- if (-n > rho) {
- face = 5;
- rho = -n;
- }
-
- rhu = 1.0 - rho;
-
- if (face == 0) {
- xi = m;
- eta = -l;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = (90.0 - theta)*D2R;
- rhu = t*t/2.0;
- }
- x0 = 0.0;
- y0 = 2.0;
- } else if (face == 1) {
- xi = m;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p < -180.0) p += 360.0;
- if (p > 180.0) p -= 360.0;
- p *= D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 0.0;
- y0 = 0.0;
- } else if (face == 2) {
- xi = -l;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p < -180.0) p += 360.0;
- p = (90.0 - p)*D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 2.0;
- y0 = 0.0;
- } else if (face == 3) {
- xi = -m;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p < 0.0) p += 360.0;
- p = (180.0 - p)*D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 4.0;
- y0 = 0.0;
- } else if (face == 4) {
- xi = l;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p > 180.0) p -= 360.0;
- p *= (90.0 + p)*D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 6;
- y0 = 0.0;
- } else if (face == 5) {
- xi = m;
- eta = l;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = (90.0 + theta)*D2R;
- rhu = t*t/2.0;
- }
- x0 = 0.0;
- y0 = -2;
- }
-
- if (xi == 0.0 && eta == 0.0) {
- xf = 0.0;
- yf = 0.0;
- } else if (-xi >= fabs(eta)) {
- psi = eta/xi;
- chi = 1.0 + psi*psi;
- xf = -sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- yf = (xf/15.0)*(wcs_atand(psi) - wcs_asind(psi/sqrt(chi+chi)));
- } else if (xi >= fabs(eta)) {
- psi = eta/xi;
- chi = 1.0 + psi*psi;
- xf = sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- yf = (xf/15.0)*(wcs_atand(psi) - wcs_asind(psi/sqrt(chi+chi)));
- } else if (-eta > fabs(xi)) {
- psi = xi/eta;
- chi = 1.0 + psi*psi;
- yf = -sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- xf = (yf/15.0)*(wcs_atand(psi) - wcs_asind(psi/sqrt(chi+chi)));
- } else if (eta > fabs(xi)) {
- psi = xi/eta;
- chi = 1.0 + psi*psi;
- yf = sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- xf = (yf/15.0)*(wcs_atand(psi) - wcs_asind(psi/sqrt(chi+chi)));
- }
-
- if (fabs(xf) > 1.0) {
- if (fabs(xf) > 1.0+tol) {
- return 2;
- }
- xf = wcs_copysign(1.0,xf);
- }
- if (fabs(yf) > 1.0) {
- if (fabs(yf) > 1.0+tol) {
- return 2;
- }
- yf = wcs_copysign(1.0,yf);
- }
-
- *x = prj->w[0]*(xf + x0);
- *y = prj->w[0]*(yf + y0);
-
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int qscrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int direct, face;
- double chi, l, m, n, psi, rho, rhu, xf, yf, w;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (qscset(prj)) return 1;
- }
-
- xf = x*prj->w[1];
- yf = y*prj->w[1];
-
- /* Determine the face. */
- if (xf > 7.0) {
- return 2;
- } else if (xf > 5.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 4;
- xf = xf - 6.0;
- } else if (xf > 3.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 3;
- xf = xf - 4.0;
- } else if (xf > 1.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 2;
- xf = xf - 2.0;
- } else if (xf < -1.0) {
- return 2;
- } else if (yf > 1.0) {
- if (yf > 3.0) return 2;
- face = 0;
- yf = yf - 2.0;
- } else if (yf < -1.0) {
- if (yf < -3.0) return 2;
- face = 5;
- yf = yf + 2.0;
- } else {
- face = 1;
- }
-
- direct = (fabs(xf) > fabs(yf));
- if (direct) {
- if (xf == 0.0) {
- psi = 0.0;
- chi = 1.0;
- rho = 1.0;
- rhu = 0.0;
- } else {
- w = 15.0*yf/xf;
- psi = wcs_sind(w)/(wcs_cosd(w) - SQRT2INV);
- chi = 1.0 + psi*psi;
- rhu = xf*xf*(1.0 - 1.0/sqrt(1.0 + chi));
- rho = 1.0 - rhu;
- }
- } else {
- if (yf == 0.0) {
- psi = 0.0;
- chi = 1.0;
- rho = 1.0;
- rhu = 0.0;
- } else {
- w = 15.0*xf/yf;
- psi = wcs_sind(w)/(wcs_cosd(w) - SQRT2INV);
- chi = 1.0 + psi*psi;
- rhu = yf*yf*(1.0 - 1.0/sqrt(1.0 + chi));
- rho = 1.0 - rhu;
- }
- }
-
- if (rho < -1.0) {
- if (rho < -1.0-tol) {
- return 2;
- }
-
- rho = -1.0;
- rhu = 2.0;
- w = 0.0;
- } else {
- w = sqrt(rhu*(2.0-rhu)/chi);
- }
-
- if (face == 0) {
- n = rho;
- if (direct) {
- m = w;
- if (xf < 0.0) m = -m;
- l = -m*psi;
- } else {
- l = w;
- if (yf > 0.0) l = -l;
- m = -l*psi;
- }
- } else if (face == 1) {
- l = rho;
- if (direct) {
- m = w;
- if (xf < 0.0) m = -m;
- n = m*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- m = n*psi;
- }
- } else if (face == 2) {
- m = rho;
- if (direct) {
- l = w;
- if (xf > 0.0) l = -l;
- n = -l*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- l = -n*psi;
- }
- } else if (face == 3) {
- l = -rho;
- if (direct) {
- m = w;
- if (xf > 0.0) m = -m;
- n = -m*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- m = -n*psi;
- }
- } else if (face == 4) {
- m = -rho;
- if (direct) {
- l = w;
- if (xf < 0.0) l = -l;
- n = l*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- l = n*psi;
- }
- } else if (face == 5) {
- n = -rho;
- if (direct) {
- m = w;
- if (xf < 0.0) m = -m;
- l = m*psi;
- } else {
- l = w;
- if (yf < 0.0) l = -l;
- m = l*psi;
- }
- }
-
- if (l == 0.0 && m == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(m, l);
- }
- *theta = wcs_asind(n);
-
- return 0;
-}
-
-/*============================================================================
-* TSC: tangential spherical cube projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/4)
-* prj->w[1] (4/pi)/r0
-*===========================================================================*/
-
-int tscset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 45.0;
- prj->w[1] = 1.0/45.0;
- } else {
- prj->w[0] = prj->r0*PI/4.0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tscfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int face;
- double costhe, l, m, n, rho, x0, xf, y0, yf;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (tscset(prj)) return 1;
- }
-
- costhe = wcs_cosd(theta);
- l = costhe*wcs_cosd(phi);
- m = costhe*wcs_sind(phi);
- n = wcs_sind(theta);
-
- face = 0;
- rho = n;
- if (l > rho) {
- face = 1;
- rho = l;
- }
- if (m > rho) {
- face = 2;
- rho = m;
- }
- if (-l > rho) {
- face = 3;
- rho = -l;
- }
- if (-m > rho) {
- face = 4;
- rho = -m;
- }
- if (-n > rho) {
- face = 5;
- rho = -n;
- }
-
- if (face == 0) {
- xf = m/rho;
- yf = -l/rho;
- x0 = 0.0;
- y0 = 2.0;
- } else if (face == 1) {
- xf = m/rho;
- yf = n/rho;
- x0 = 0.0;
- y0 = 0.0;
- } else if (face == 2) {
- xf = -l/rho;
- yf = n/rho;
- x0 = 2.0;
- y0 = 0.0;
- } else if (face == 3) {
- xf = -m/rho;
- yf = n/rho;
- x0 = 4.0;
- y0 = 0.0;
- } else if (face == 4) {
- xf = l/rho;
- yf = n/rho;
- x0 = 6.0;
- y0 = 0.0;
- } else if (face == 5) {
- xf = m/rho;
- yf = l/rho;
- x0 = 0.0;
- y0 = -2.0;
- }
-
- if (fabs(xf) > 1.0) {
- if (fabs(xf) > 1.0+tol) {
- return 2;
- }
- xf = wcs_copysign(1.0,xf);
- }
- if (fabs(yf) > 1.0) {
- if (fabs(yf) > 1.0+tol) {
- return 2;
- }
- yf = wcs_copysign(1.0,yf);
- }
-
- *x = prj->w[0]*(xf + x0);
- *y = prj->w[0]*(yf + y0);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tscrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double l, m, n, xf, yf;
-
- if (prj->flag != PRJSET) {
- if (tscset(prj)) return 1;
- }
-
- xf = x*prj->w[1];
- yf = y*prj->w[1];
-
- /* Determine the face. */
- if (xf > 7.0) {
- return 2;
- } else if (xf > 5.0) {
- if (fabs(yf) > 1.0) return 2;
- /* face = 4 */
- xf = xf - 6.0;
- m = -1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -m*xf;
- n = -m*yf;
- } else if (xf > 3.0) {
- if (fabs(yf) > 1.0) return 2;
- /* face = 3 */
- xf = xf - 4.0;
- l = -1.0/sqrt(1.0 + xf*xf + yf*yf);
- m = l*xf;
- n = -l*yf;
- } else if (xf > 1.0) {
- if (fabs(yf) > 1.0) return 2;
- /* face = 2 */
- xf = xf - 2.0;
- m = 1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -m*xf;
- n = m*yf;
- } else if (xf < -1.0) {
- return 2;
- } else if (yf > 1.0) {
- if (yf > 3.0) return 2;
- /* face = 0 */
- yf = yf - 2.0;
- n = 1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -n*yf;
- m = n*xf;
- } else if (yf < -1.0) {
- if (yf < -3.0) return 2;
- /* face = 5 */
- yf = yf + 2.0;
- n = -1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -n*yf;
- m = -n*xf;
- } else {
- /* face = 1 */
- l = 1.0/sqrt(1.0 + xf*xf + yf*yf);
- m = l*xf;
- n = l*yf;
- }
-
- if (l == 0.0 && m == 0.0) {
- *phi = 0.0;
- } else {
- *phi = wcs_atan2d(m, l);
- }
- *theta = wcs_asind(n);
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/proj.h b/external/sextractor/source/wcs/proj.h
deleted file mode 100644
index 77933f6..0000000
--- a/external/sextractor/source/wcs/proj.h
+++ /dev/null
@@ -1,140 +0,0 @@
-#ifndef PROJ
-#define PROJ
-
-#include "wcstrig.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct prjprm {
- int flag;
- int n;
- double r0;
- double p[10];
- double w[10];
-};
-
-#if __STDC__ || defined(__cplusplus)
- int azpset(struct prjprm *);
- int azpfwd(const double, const double, struct prjprm *, double *, double *);
- int azprev(const double, const double, struct prjprm *, double *, double *);
- int tanset(struct prjprm *);
- int tanfwd(const double, const double, struct prjprm *, double *, double *);
- int tanrev(const double, const double, struct prjprm *, double *, double *);
- int sinset(struct prjprm *);
- int sinfwd(const double, const double, struct prjprm *, double *, double *);
- int sinrev(const double, const double, struct prjprm *, double *, double *);
- int stgset(struct prjprm *);
- int stgfwd(const double, const double, struct prjprm *, double *, double *);
- int stgrev(const double, const double, struct prjprm *, double *, double *);
- int arcset(struct prjprm *);
- int arcfwd(const double, const double, struct prjprm *, double *, double *);
- int arcrev(const double, const double, struct prjprm *, double *, double *);
- int zpnset(struct prjprm *);
- int zpnfwd(const double, const double, struct prjprm *, double *, double *);
- int zpnrev(const double, const double, struct prjprm *, double *, double *);
- int zeaset(struct prjprm *);
- int zeafwd(const double, const double, struct prjprm *, double *, double *);
- int zearev(const double, const double, struct prjprm *, double *, double *);
- int airset(struct prjprm *);
- int airfwd(const double, const double, struct prjprm *, double *, double *);
- int airrev(const double, const double, struct prjprm *, double *, double *);
- int cypset(struct prjprm *);
- int cypfwd(const double, const double, struct prjprm *, double *, double *);
- int cyprev(const double, const double, struct prjprm *, double *, double *);
- int carset(struct prjprm *);
- int carfwd(const double, const double, struct prjprm *, double *, double *);
- int carrev(const double, const double, struct prjprm *, double *, double *);
- int merset(struct prjprm *);
- int merfwd(const double, const double, struct prjprm *, double *, double *);
- int merrev(const double, const double, struct prjprm *, double *, double *);
- int ceaset(struct prjprm *);
- int ceafwd(const double, const double, struct prjprm *, double *, double *);
- int cearev(const double, const double, struct prjprm *, double *, double *);
- int copset(struct prjprm *);
- int copfwd(const double, const double, struct prjprm *, double *, double *);
- int coprev(const double, const double, struct prjprm *, double *, double *);
- int codset(struct prjprm *);
- int codfwd(const double, const double, struct prjprm *, double *, double *);
- int codrev(const double, const double, struct prjprm *, double *, double *);
- int coeset(struct prjprm *);
- int coefwd(const double, const double, struct prjprm *, double *, double *);
- int coerev(const double, const double, struct prjprm *, double *, double *);
- int cooset(struct prjprm *);
- int coofwd(const double, const double, struct prjprm *, double *, double *);
- int coorev(const double, const double, struct prjprm *, double *, double *);
- int bonset(struct prjprm *);
- int bonfwd(const double, const double, struct prjprm *, double *, double *);
- int bonrev(const double, const double, struct prjprm *, double *, double *);
- int pcoset(struct prjprm *);
- int pcofwd(const double, const double, struct prjprm *, double *, double *);
- int pcorev(const double, const double, struct prjprm *, double *, double *);
- int glsset(struct prjprm *);
- int glsfwd(const double, const double, struct prjprm *, double *, double *);
- int glsrev(const double, const double, struct prjprm *, double *, double *);
- int parset(struct prjprm *);
- int parfwd(const double, const double, struct prjprm *, double *, double *);
- int parrev(const double, const double, struct prjprm *, double *, double *);
- int aitset(struct prjprm *);
- int aitfwd(const double, const double, struct prjprm *, double *, double *);
- int aitrev(const double, const double, struct prjprm *, double *, double *);
- int molset(struct prjprm *);
- int molfwd(const double, const double, struct prjprm *, double *, double *);
- int molrev(const double, const double, struct prjprm *, double *, double *);
- int cscset(struct prjprm *);
- int cscfwd(const double, const double, struct prjprm *, double *, double *);
- int cscrev(const double, const double, struct prjprm *, double *, double *);
- int qscset(struct prjprm *);
- int qscfwd(const double, const double, struct prjprm *, double *, double *);
- int qscrev(const double, const double, struct prjprm *, double *, double *);
- int tscset(struct prjprm *);
- int tscfwd(const double, const double, struct prjprm *, double *, double *);
- int tscrev(const double, const double, struct prjprm *, double *, double *);
-#else
- int azpset(), azpfwd(), azprev();
- int tanset(), tanfwd(), tanrev();
- int sinset(), sinfwd(), sinrev();
- int stgset(), stgfwd(), stgrev();
- int arcset(), arcfwd(), arcrev();
- int zpnset(), zpnfwd(), zpnrev();
- int zeaset(), zeafwd(), zearev();
- int airset(), airfwd(), airrev();
- int cypset(), cypfwd(), cyprev();
- int carset(), carfwd(), carrev();
- int merset(), merfwd(), merrev();
- int ceaset(), ceafwd(), cearev();
- int copset(), copfwd(), coprev();
- int codset(), codfwd(), codrev();
- int coeset(), coefwd(), coerev();
- int cooset(), coofwd(), coorev();
- int bonset(), bonfwd(), bonrev();
- int pcoset(), pcofwd(), pcorev();
- int glsset(), glsfwd(), glsrev();
- int parset(), parfwd(), parrev();
- int aitset(), aitfwd(), aitrev();
- int molset(), molfwd(), molrev();
- int cscset(), cscfwd(), cscrev();
- int qscset(), qscfwd(), qscrev();
- int tscset(), tscfwd(), tscrev();
-#endif
-
-extern const char *prjset_errmsg[];
-extern const char *prjfwd_errmsg[];
-extern const char *prjrev_errmsg[];
-
-#ifndef PI /* EB 02/06/97 */
-#define PI 3.141592653589793238462643
-#endif /* EB 02/06/97 */
-#define D2R PI/180.0
-#define R2D 180.0/PI
-#define SQRT2 1.4142135623730950488
-#define SQRT2INV 1.0/SQRT2
-
-#define PRJSET 137
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* PROJ */
diff --git a/external/sextractor/source/wcs/sph.c b/external/sextractor/source/wcs/sph.c
deleted file mode 100644
index f747926..0000000
--- a/external/sextractor/source/wcs/sph.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995, Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines for the spherical coordinate transformations used by the FITS
-* "World Coordinate System" (WCS) convention.
-*
-* Summary of routines
-* -------------------
-* The spherical coordinate transformations are implemented via separate
-* functions for the transformation in each direction.
-*
-* Forward transformation; sphfwd()
-* --------------------------------
-* Transform celestial coordinates to the native coordinates of a projection.
-*
-* Given:
-* lng,lat double Celestial longitude and latitude, in degrees.
-* eul[5] double Euler angles for the transformation:
-* 0: Celestial longitude of the native pole, in
-* degrees.
-* 1: Celestial colatitude of the native pole, or
-* native colatitude of the celestial pole, in
-* degrees.
-* 2: Native longitude of the celestial pole, in
-* degrees.
-* 3: cos(eul[1])
-* 4: sin(eul[1])
-*
-* Returned:
-* phi, double Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-*
-* Reverse transformation; sphrev()
-* --------------------------------
-* Transform native coordinates of a projection to celestial coordinates.
-*
-* Given:
-* phi, double Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-* eul[5] double Euler angles for the transformation:
-* 0: Celestial longitude of the native pole, in
-* degrees.
-* 1: Celestial colatitude of the native pole, or
-* native colatitude of the celestial pole, in
-* degrees.
-* 2: Native longitude of the celestial pole, in
-* degrees.
-* 3: cos(eul[1])
-* 4: sin(eul[1])
-*
-* Returned:
-* lng,lat double Celestial longitude and latitude, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: sph.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "wcstrig.h"
-
-#ifndef __STDC__
-#ifndef const
-#define const
-#endif
-#endif
-
-#ifdef COPYSIGN
-#define wcs_copysign(X, Y) ((Y) < 0.0 ? -fabs(X) : fabs(X))
-#endif
-
-const double tol = 1.0e-5;
-
-int sphfwd (lng, lat, eul, phi, theta)
-
-const double lat, lng, eul[5];
-double *phi, *theta;
-
-{
- double coslat, coslng, dlng, dphi, sinlat, sinlng, x, y, z;
-
- coslat = wcs_cosd(lat);
- sinlat = wcs_sind(lat);
-
- dlng = lng - eul[0];
- coslng = wcs_cosd(dlng);
- sinlng = wcs_sind(dlng);
-
- /* Compute the native longitude. */
- x = sinlat*eul[4] - coslat*eul[3]*coslng;
- if (fabs(x) < tol) {
- /* Rearrange formula to reduce roundoff errors. */
- x = -wcs_cosd(lat+eul[1]) + coslat*eul[3]*(1.0 - coslng);
- }
- y = -coslat*sinlng;
- if (x != 0.0 || y != 0.0) {
- dphi = wcs_atan2d(y, x);
- } else {
- /* Change of origin of longitude. */
- dphi = dlng - 180.0;
- }
- *phi = eul[2] + dphi;
-
- /* Normalize the native longitude. */
- if (*phi > 180.0) {
- *phi -= 360.0;
- } else if (*phi < -180.0) {
- *phi += 360.0;
- }
-
- /* Compute the native latitude. */
- if (fmod(dlng,180.0) == 0.0) {
- *theta = lat + coslng*eul[1];
- if (*theta > 90.0) *theta = 180.0 - *theta;
- if (*theta < -90.0) *theta = -180.0 - *theta;
- } else {
- z = sinlat*eul[3] + coslat*eul[4]*coslng;
- if (fabs(z) > 0.99) {
- /* Use an alternative formula for greater numerical accuracy. */
- *theta = wcs_copysign(wcs_acosd(sqrt(x*x+y*y)), z);
- } else {
- *theta = wcs_asind(z);
- }
- }
-
- return 0;
-}
-
-/*-----------------------------------------------------------------------*/
-
-int sphrev (phi, theta, eul, lng, lat)
-
-const double phi, theta, eul[5];
-double *lng, *lat;
-
-{
- double cosphi, costhe, dlng, dphi, sinphi, sinthe, x, y, z;
-
- costhe = wcs_cosd(theta);
- sinthe = wcs_sind(theta);
-
- dphi = phi - eul[2];
- cosphi = wcs_cosd(dphi);
- sinphi = wcs_sind(dphi);
-
- /* Compute the celestial longitude. */
- x = sinthe*eul[4] - costhe*eul[3]*cosphi;
- if (fabs(x) < tol) {
- /* Rearrange formula to reduce roundoff errors. */
- x = -wcs_cosd(theta+eul[1]) + costhe*eul[3]*(1.0 - cosphi);
- }
- y = -costhe*sinphi;
- if (x != 0.0 || y != 0.0) {
- dlng = wcs_atan2d(y, x);
- } else {
- /* Change of origin of longitude. */
- dlng = dphi + 180.0;
- }
- *lng = eul[0] + dlng;
-
- /* Normalize the celestial longitude. */
- if (eul[0] >= 0.0) {
- if (*lng < 0.0) *lng += 360.0;
- } else {
- if (*lng > 0.0) *lng -= 360.0;
- }
-
- if (*lng > 360.0) {
- *lng -= 360.0;
- } else if (*lng < -360.0) {
- *lng += 360.0;
- }
-
- /* Compute the celestial latitude. */
- if (fmod(dphi,180.0) == 0.0) {
- *lat = theta + cosphi*eul[1];
- if (*lat > 90.0) *lat = 180.0 - *lat;
- if (*lat < -90.0) *lat = -180.0 - *lat;
- } else {
- z = sinthe*eul[3] + costhe*eul[4]*cosphi;
- if (fabs(z) > 0.99) {
- /* Use an alternative formula for greater numerical accuracy. */
- *lat = wcs_copysign(wcs_acosd(sqrt(x*x+y*y)), z);
- } else {
- *lat = wcs_asind(z);
- }
- }
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/tcel.c b/external/sextractor/source/wcs/tcel.c
deleted file mode 100644
index dc684e9..0000000
--- a/external/sextractor/source/wcs/tcel.c
+++ /dev/null
@@ -1,313 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tcel tests the spherical projection driver routines supplied with WCSLIB
-* by drawing native and celestial coordinate grids for Bonne's projection.
-*
-* $Id: tcel.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "cel.h"
-
-main()
-
-{
- char pcode[4], text[80];
- int ci, ilat, ilng, j;
- int crval1, crval2, latpole, longpole;
- float xr[512], yr[512];
- double lat, lng, phi, theta, x, y;
- struct celprm native, celestial;
- struct prjprm prj;
-
-
- printf("\nTesting WCSLIB celestial coordinate transformation routines\n");
- printf("-----------------------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of celset error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, celset_errmsg[j]);
- }
-
- printf("\nList of celfwd error codes:\n");
- for (j = 1; j <=3 ; j++) {
- printf(" %d: %s.\n", j, celfwd_errmsg[j]);
- }
-
- printf("\nList of celrev error codes:\n");
- for (j = 1; j <=3 ; j++) {
- printf(" %d: %s.\n", j, celrev_errmsg[j]);
- }
-
- printf("\n");
-
-
- /* Set up Bonne's projection with conformal latitude at +35. */
- strcpy(pcode, "BON");
-
- /* Initialize projection parameters. */
- prj.flag = 0;
- prj.r0 = 0.0;
- for (j = 0; j < 10; prj.p[j++] = 0.0);
- prj.p[1] = 35.0;
-
- /* Set reference angles for the native grid. */
- native.ref[0] = 0.0;
- native.ref[1] = 0.0;
- native.ref[2] = 999.0;
- native.ref[3] = 999.0;
- native.flag = 0;
-
- /* PGPLOT initialization. */
- strcpy(text, "/xwindow");
- pgbeg(0, text, 1, 1);
-
- /* Define pen colours. */
- pgscr(0, 0.00, 0.00, 0.00);
- pgscr(1, 1.00, 1.00, 0.00);
- pgscr(2, 1.00, 1.00, 1.00);
- pgscr(3, 0.50, 0.50, 0.80);
- pgscr(4, 0.80, 0.50, 0.50);
- pgscr(5, 0.80, 0.80, 0.80);
- pgscr(6, 0.50, 0.50, 0.80);
- pgscr(7, 0.80, 0.50, 0.50);
- pgscr(8, 0.30, 0.50, 0.30);
-
- /* Define PGPLOT viewport. */
- pgenv(-180.0, 180.0, -90.0, 140.0, 1, -2);
-
- /* Loop over CRVAL1, CRVAL2, LONGPOLE, and LATPOLE. */
- crval1 = -180;
- for (crval2 = -90; crval2 <= 90; crval2 += 45) {
- for (longpole = -180; longpole <= 180; longpole += 45) {
- for (latpole = -1; latpole <= 1; latpole += 2) {
- /* For the celestial grid, set the celestial coordinates of the
- * reference point of the projection (which for Bonne's projection
- * is at the intersection of the native equator and prime
- * meridian), the native longitude of the celestial pole, and
- * extra information needed to determine the native latitude of
- * the celestial pole. These correspond to FITS keywords CRVAL1,
- * CRVAL2, LONGPOLE, and LATPOLE.
- */
- celestial.ref[0] = (double)crval1;
- celestial.ref[1] = (double)crval2;
- celestial.ref[2] = (double)longpole;
- celestial.ref[3] = (double)latpole;
- celestial.flag = 0;
-
- /* Skip invalid values of LONGPOLE. */
- if (celset(pcode, &celestial, &prj)) {
- continue;
- }
-
- /* Skip redundant values of LATPOLE. */
- if (latpole == 1 && fabs(celestial.ref[3]) < 0.1) {
- continue;
- }
-
- /* Write a descriptive title. */
- sprintf(text, "%s projection - 15 degree graticule", pcode);
- printf("\n%s\n", text);
- pgtext(-180.0, -100.0, text);
-
- sprintf(text,
- "centered on celestial coordinates (%7.2lf,%6.2lf)",
- celestial.ref[0], celestial.ref[1]);
- printf("%s\n", text);
- pgtext (-180.0, -110.0, text);
-
- sprintf(text,
- "with north celestial pole at native coordinates (%7.2lf,%7.2lf)",
- celestial.ref[2], celestial.ref[3]);
- printf("%s\n", text);
- pgtext(-180.0, -120.0, text);
-
-
- /* Draw the native coordinate grid faintly in the background. */
- pgsci(8);
-
- /* Draw native meridians of longitude. */
- for (ilng = -180; ilng <= 180; ilng += 15) {
- lng = (double)ilng;
- if (ilng == -180) lng = -179.99;
- if (ilng == 180) lng = 179.99;
-
- /* Dash the longitude of the celestial pole. */
- if ((ilng-longpole)%360 == 0) {
- pgsls(2);
- pgslw(5);
- }
-
- j = 0;
- for (ilat = -90; ilat <= 90; ilat++) {
- lat = (double)ilat;
-
- if (celfwd(pcode, lng, lat, &native, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- pgsls(1);
- pgslw(1);
- }
-
- /* Draw native parallels of latitude. */
- for (ilat = -90; ilat <= 90; ilat += 15) {
- lat = (double)ilat;
-
- j = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
- if (ilng == -180) lng = -179.99;
- if (ilng == 180) lng = 179.99;
-
- if (celfwd(pcode, lng, lat, &native, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- }
-
-
- /* Draw a colour-coded celestial coordinate grid. */
- ci = 1;
-
- /* Draw celestial meridians of longitude. */
- for (ilng = -180; ilng <= 180; ilng += 15) {
- lng = (double)ilng;
-
- if (++ci > 7) ci = 2;
- pgsci(ilng?ci:1);
-
- /* Dash the reference longitude. */
- if ((ilng-crval1)%360 == 0) {
- pgsls(2);
- pgslw(5);
- }
-
- j = 0;
- for (ilat = -90; ilat <= 90; ilat++) {
- lat = (double)ilat;
-
- if (celfwd(pcode, lng, lat, &celestial, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- /* Test for discontinuities. */
- if (j > 0) {
- if (fabs(x+xr[j-1]) > 4.0 || fabs(y-yr[j-1]) > 4.0) {
- if (j > 1) pgline(j, xr, yr);
- j = 0;
- }
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- pgsls(1);
- pgslw(1);
- }
-
- /* Draw celestial parallels of latitude. */
- ci = 1;
- for (ilat = -90; ilat <= 90; ilat += 15) {
- lat = (double)ilat;
-
- if (++ci > 7) ci = 2;
- pgsci(ilat?ci:1);
-
- /* Dash the reference latitude. */
- if (ilat == crval2) {
- pgsls(2);
- pgslw(5);
- }
-
- j = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
-
- if (celfwd(pcode, lng, lat, &celestial, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- /* Test for discontinuities. */
- if (j > 0) {
- if (fabs(x+xr[j-1]) > 4.0 || fabs(y-yr[j-1]) > 4.0) {
- if (j > 1) pgline(j, xr, yr);
- j = 0;
- }
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- pgsls(1);
- pgslw(1);
- }
-
- /* New page. */
- pgpage();
-
- /* Cycle through celestial longitudes. */
- if ((crval1 += 15) > 180) crval1 = -180;
-
- /* Skip boring celestial latitudes. */
- if (crval2 == 0) break;
- }
-
- if (crval2 == 0) break;
- }
- }
-
- pgend();
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/tlin.c b/external/sextractor/source/wcs/tlin.c
deleted file mode 100644
index cfb00ae..0000000
--- a/external/sextractor/source/wcs/tlin.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tlin tests the linear transformation routines supplied with WCSLIB.
-*
-* $Id: tlin.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "lin.h"
-
-double crpix[5] = {256.0, 256.0, 64.0, 128.0, 1.0};
-double pc[5][5] = {{ 1.0, 0.5, 0.0, 0.0, 0.0},
- { 0.5, 1.0, 0.0, 0.0, 0.0},
- { 0.0, 0.0, 1.0, 0.0, 0.0},
- { 0.0, 0.0, 0.0, 1.0, 0.0},
- { 0.0, 0.0, 0.0, 0.0, 1.0}};
-double cdelt[5] = { 1.2, 2.3, 3.4, 4.5, 5.6};
-double pix[5] = {303.0, 265.0, 112.4, 144.5, 28.2};
-double img[5];
-
-main()
-
-{
- int err, j;
- struct linprm lin;
-
-
- printf("\nTesting WCSLIB linear transformation routines\n");
- printf("---------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of linset error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, linset_errmsg[j]);
- }
-
- printf("\nList of linfwd error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, linfwd_errmsg[j]);
- }
-
- printf("\nList of linrev error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, linrev_errmsg[j]);
- }
-
- printf("\n\n");
-
-
- lin.flag = 0;
- lin.naxis = 5;
- lin.crpix = crpix;
- lin.pc = (double*)pc;
- lin.cdelt = cdelt;
-
- printf("pix:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", pix[j]);
- }
- printf("\n");
-
- if (err = linrev(pix, &lin, img)) {
- printf("linrev error %d\n",err);
- return 1;
- }
-
- printf("img:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", img[j]);
- }
- printf("\n");
-
- if (err = linfwd(img, &lin, pix)) {
- printf("linfwd error %d\n",err);
- return 1;
- }
-
- printf("pix:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", pix[j]);
- }
- printf("\n");
-
- if (err = linrev(pix, &lin, img)) {
- printf("linrev error %d\n",err);
- return 1;
- }
-
- printf("img:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", img[j]);
- }
- printf("\n");
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/tpgc.c b/external/sextractor/source/wcs/tpgc.c
deleted file mode 100644
index 7c6d91f..0000000
--- a/external/sextractor/source/wcs/tpgc.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995, Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C interfaces to FORTRAN PGPLOT routines used by the WCSLIB test programs.
-* These are provided to allow call-by-value semantics particularly in relation
-* to the use of constant arguments.
-*
-* $Id: tpgc.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-void pgbeg (unit, file, nxsub, nysub)
-
-char file[80];
-int nxsub, nysub, unit;
-
-{
- register int j;
-
- for (j = 0; j < 80; j++) {
- if (file[j] == '\0') {
- for (; j < 80; file[j++] = ' ');
- }
- }
-
- pgbeg2_(&unit, file, &nxsub, &nysub);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgend ()
-
-{
- pgend_();
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgenv (dxmin, dxmax, dymin, dymax, just, axis)
-
-int axis, just;
-double dxmax, dxmin, dymax, dymin;
-
-{
- float fxmax, fxmin, fymax, fymin;
-
- fxmax = (float)dxmax;
- fxmin = (float)dxmin;
- fymax = (float)dymax;
- fymin = (float)dymin;
- pgenv_(&fxmin, &fxmax, &fymin, &fymax, &just, &axis);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgline (n, xpts, ypts)
-
-int n;
-float xpts[], ypts[];
-
-{
- pgline_(&n, xpts, ypts);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgpage ()
-
-{
- pgpage_();
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgpt (n, xpts, ypts, symbol)
-
-int n;
-float xpts[], ypts[];
-int symbol;
-
-{
- pgpt_(&n, xpts, ypts, &symbol);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgsci (ci)
-
-int ci;
-
-{
- pgsci_(&ci);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgscr (ci, dcr, dcg, dcb)
-
-int ci;
-double dcr, dcg, dcb;
-
-{
- float fcr, fcg, fcb;
-
- fcr = (float)dcr;
- fcg = (float)dcg;
- fcb = (float)dcb;
- pgscr_(&ci, &fcr, &fcg, &fcb);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgsls (ls)
-
-int ls;
-
-{
- pgsls_(&ls);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgslw (lw)
-
-int lw;
-
-{
- pgslw_(&lw);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgtext (dx, dy, text)
-
-char text[80];
-double dx, dy;
-
-{
- register int j;
- float fx, fy;
-
- fx = (float)dx;
- fy = (float)dy;
-
- for (j = 0; j < 80; j++) {
- if (text[j] == '\0') {
- for (; j < 80; text[j++] = ' ');
- }
- }
-
- pgtxt2_(&fx, &fy, text);
-}
diff --git a/external/sextractor/source/wcs/wcs.c b/external/sextractor/source/wcs/wcs.c
deleted file mode 100644
index 82949ca..0000000
--- a/external/sextractor/source/wcs/wcs.c
+++ /dev/null
@@ -1,1083 +0,0 @@
-/*=============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines which implement the FITS World Coordinate System (WCS)
-* convention.
-*
-* Summary of routines
-* -------------------
-* wcsfwd() and wcsrev() are high level driver routines for the WCS linear
-* transformation, spherical coordinate transformation, and spherical
-* projection routines.
-*
-* Given either the celestial longitude or latitude plus an element of the
-* pixel coordinate a hybrid routine, wcsmix(), iteratively solves for the
-* unknown elements.
-*
-* An initialization routine, wcsset(), computes indices from the ctype
-* array but need not be called explicitly - see the explanation of
-* wcs.flag below.
-*
-*
-* Initialization routine; wcsset()
-* --------------------------------
-* Initializes elements of a wcsprm data structure which holds indices into
-* the coordinate arrays. Note that this routine need not be called directly;
-* it will be invoked by wcsfwd() and wcsrev() if the "flag" structure member
-* is anything other than a predefined magic value.
-*
-* Given:
-* naxis const int
-* Number of image axes.
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Inconsistent or unrecognized coordinate axis
-* types.
-*
-*
-* Forward transformation; wcsfwd()
-* --------------------------------
-* Compute the pixel coordinate for given world coordinates.
-*
-* Given:
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Given or returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Given:
-* world const double[]
-* World coordinates. world[wcs->lng] and
-* world[wcs->lat] are the celestial longitude and
-* latitude, in degrees.
-*
-* Given:
-* crval const double[]
-* Coordinate reference values corresponding to the FITS
-* CRVALn header cards.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters (usage
-* is described in the prologue to "cel.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* imgcrd double[] Image coordinate. imgcrd[wcs->lng] and
-* imgcrd[wcs->lat] are the projected x-, and
-* y-coordinates, in "degrees". For quadcube
-* projections with a CUBEFACE axis the face number is
-* also returned in imgcrd[wcs->cubeface].
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (usage is described
-* in the prologue to "lin.c").
-*
-* Returned:
-* pixcrd double[] Pixel coordinate.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid world coordinate.
-* 4: Invalid linear transformation parameters.
-*
-*
-* Reverse transformation; wcsrev()
-* --------------------------------
-* Compute world coordinates for a given pixel coordinate.
-*
-* Given:
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Given or returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Given:
-* pixcrd const double[]
-* Pixel coordinate.
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (usage is described
-* in the prologue to "lin.c").
-*
-* Returned:
-* imgcrd double[] Image coordinate. imgcrd[wcs->lng] and
-* imgcrd[wcs->lat] are the projected x-, and
-* y-coordinates, in "degrees".
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given:
-* crval const double[]
-* Coordinate reference values corresponding to the FITS
-* CRVALn header cards.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (usage is described in the prologue to "cel.c").
-*
-* Returned:
-* world double[] World coordinates. world[wcs->lng] and
-* world[wcs->lat] are the celestial longitude and
-* latitude, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid pixel coordinate.
-* 4: Invalid linear transformation parameters.
-*
-*
-* Hybrid transformation; wcsmix()
-* -------------------------------
-* Given either the celestial longitude or latitude plus an element of the
-* pixel coordinate solve for the remaining elements by iterating on the
-* unknown celestial coordinate element using wcsfwd().
-*
-* Given:
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Given or returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Given:
-* mixpix const int
-* Which element of the pixel coordinate is given.
-* mixcel const int
-* Which element of the celestial coordinate is
-* given:
-* 1: Celestial longitude is given in
-* world[wcs->lng], latitude returned in
-* world[wcs->lat].
-* 2: Celestial latitude is given in
-* world[wcs->lng], longitude returned in
-* world[wcs->lat].
-* vspan[2] const double
-* Solution interval for the celestial coordinate, in
-* degrees.
-* vstep const double
-* Step size for solution search, in degrees. If zero,
-* a sensible, although perhaps non-optimal default will
-* be used.
-* viter int
-* If a solution is not found then the step size will be
-* halved and the search recommenced. viter controls
-* how many times the step size is halved. The allowed
-* range is 0 - 5.
-*
-* Given and returned:
-* world double[] World coordinates. world[wcs->lng] and
-* world[wcs->lat] are the celestial longitude and
-* latitude, in degrees. Which is given and which
-* returned depends on the value of mixcel. All other
-* elements are given.
-*
-* Given:
-* crval const double[]
-* Coordinate reference values corresponding to the FITS
-* CRVALn header cards.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (usage is described in the prologue to "cel.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* imgcrd double[] Image coordinate. imgcrd[wcs->lng] and
-* imgcrd[wcs->lat] are the projected x-, and
-* y-coordinates, in "degrees".
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (usage is described
-* in the prologue to "lin.c").
-*
-* Given and returned:
-* pixcrd double[] Pixel coordinate. The element indicated by mixpix is
-* given and the remaining elements are returned.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Coordinate transformation error.
-* 4: Invalid linear transformation parameters.
-* 5: No solution found in the specified interval.
-*
-*
-* Notes
-* -----
-* 1) The CTYPEn must in be upper case and there must be 0 or 1 pair of
-* matched celestial axis types. The ctype[][9] should be padded with
-* blanks on the right and null-terminated.
-*
-* 2) Elements of the crval[] array which correspond to celestial axes are
-* ignored, the reference coordinate values in cel->ref[0] and
-* cel->ref[1] are the ones used.
-*
-*
-* WCS indexing parameters
-* -----------------------
-* The wcsprm struct consists of the following:
-*
-* int flag
-* The wcsprm struct contains indexes and other information derived
-* from the CTYPEn. Whenever any of the ctype[] are set or changed
-* this flag must be set to zero to signal the initialization routine,
-* wcsset() to redetermine the indices. The flag is set to 999 if
-* there is no celestial axis pair in the CTYPEn.
-*
-* char pcode[4]
-* The WCS projection code.
-*
-* char lngtyp[5], lattyp[5]
-* WCS celestial axis types.
-*
-* int lng,lat
-* Indices into the imgcrd[], and world[] arrays as described above.
-* These may also serve as indices for the celestial longitude and
-* latitude axes in the pixcrd[] array provided that the PC matrix
-* does not transpose axes.
-*
-* int cubeface
-* Index into the pixcrd[] array for the CUBEFACE axis. This is
-* optionally used for the quadcube projections where each cube face is
-* stored on a separate axis.
-*
-*
-* wcsmix() algorithm
-* ------------------
-* Initially the specified solution interval is checked to see if it's a
-* "crossing" interval. If it isn't, a search is made for a crossing
-* solution by iterating on the unknown celestial coordinate starting at
-* the upper limit of the solution interval and decrementing by the
-* specified step size. A crossing is indicated if the trial value of the
-* pixel coordinate steps through the value specified. If a crossing
-* interval is found then the solution is determined by a modified form of
-* "regula falsi" division of the crossing interval. If no crossing
-* interval was found within the specified solution interval then a search
-* is made for a "non-crossing" solution as may arise from a point of
-* tangency. The process is complicated by having to make allowance for
-* the discontinuities that occur in all map projections.
-*
-* Once one solution has been determined others may be found by subsequent
-* invokations of wcsmix() with suitably restricted solution intervals.
-*
-* Note that there is a circumstance where the problem posed to wcsmix()
-* is ill-conditioned and it may fail to find a valid solution where one
-* does exist. This may arise when the solution point lies at a native
-* pole of a projection in which the pole is represented as a finite
-* interval.
-*
-* Because of its generality wcsmix() is very compute-intensive. For
-* compute-limited applications more efficient special-case solvers could
-* be written for simple projections, for example non-oblique cylindrical
-* projections.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: wcs.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "stdio.h"
-#include "string.h"
-#include "wcs.h"
-
-/* Map error number to error message for each function. */
-const char *wcsset_errmsg[] = {
- 0,
- "Inconsistent or unrecognized coordinate axis types"};
-
-const char *wcsfwd_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid world coordinate",
- "Invalid linear transformation parameters"};
-
-const char *wcsrev_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid pixel coordinate",
- "Invalid linear transformation parameters"};
-
-const char *wcsmix_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Coordinate transformation error",
- "Invalid linear transformation parameters",
- "No solution found in the specified interval"};
-
-
-#ifdef SIGNBIT
-#define wcs_signbit(X) ((X) < 0.0 ? 0 : 1)
-#endif
-
-
-int wcsset (naxis, ctype, wcs)
-
-const int naxis;
-const char ctype[][9];
-struct wcsprm *wcs;
-
-{
- int j, k, *ndx;
- char requir[9];
-
- strcpy(wcs->pcode, "");
- strcpy(requir, "");
- wcs->lng = -1;
- wcs->lat = -1;
- wcs->cubeface = -1;
-
- for (j = 0; j < naxis; j++) {
- if (ctype[j][4] != '-') {
- if (strcmp(ctype[j], "CUBEFACE") == 0) {
- if (wcs->cubeface == -1) {
- wcs->cubeface = j;
- } else {
- /* Multiple CUBEFACE axes! */
- return 1;
- }
- }
- continue;
- }
-
- /* Got an axis qualifier, is it a recognized WCS projection? */
- for (k = 0; k < npcode; k++) {
- if (strncmp(&ctype[j][5], pcodes[k], 3) == 0) break;
- }
-
- if (k == npcode) continue;
-
- /* Parse the celestial axis type. */
- if (strcmp(wcs->pcode, "") == 0) {
- sprintf(wcs->pcode, "%.3s", &ctype[j][5]);
-
- if (strncmp(ctype[j], "RA--", 4) == 0) {
- wcs->lng = j;
- strcpy(wcs->lngtyp, "RA");
- strcpy(wcs->lattyp, "DEC");
- ndx = &wcs->lat;
- sprintf(requir, "DEC--%s", wcs->pcode);
- } else if (strncmp(ctype[j], "DEC-", 4) == 0) {
- wcs->lat = j;
- strcpy(wcs->lngtyp, "RA");
- strcpy(wcs->lattyp, "DEC");
- ndx = &wcs->lng;
- sprintf(requir, "RA---%s", wcs->pcode);
- } else if (strncmp(&ctype[j][1], "LON", 3) == 0) {
- wcs->lng = j;
- sprintf(wcs->lngtyp, "%cLON", ctype[j][0]);
- sprintf(wcs->lattyp, "%cLAT", ctype[j][0]);
- ndx = &wcs->lat;
- sprintf(requir, "%s-%s", wcs->lattyp, wcs->pcode);
- } else if (strncmp(&ctype[j][1], "LAT", 3) == 0) {
- wcs->lat = j;
- sprintf(wcs->lngtyp, "%cLON", ctype[j][0]);
- sprintf(wcs->lattyp, "%cLAT", ctype[j][0]);
- ndx = &wcs->lng;
- sprintf(requir, "%s-%s", wcs->lngtyp, wcs->pcode);
- } else {
- /* Unrecognized celestial type. */
- return 1;
- }
- } else {
- if (strncmp(ctype[j], requir, 8) != 0) {
- /* Inconsistent projection types. */
- return 1;
- }
-
- *ndx = j;
- strcpy(requir, "");
- }
- }
-
- if (strcmp(requir, "")) {
- /* Unmatched celestial axis. */
- return 1;
- }
-
- if (strcmp(wcs->pcode, "")) {
- wcs->flag = WCSSET;
- } else {
- /* Signal for no celestial axis pair. */
- wcs->flag = 999;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj, imgcrd, lin,
- pixcrd)
-
-const char ctype[][9];
-struct wcsprm* wcs;
-const double world[];
-const double crval[];
-struct celprm *cel;
-double *phi, *theta;
-struct prjprm *prj;
-double imgcrd[];
-struct linprm *lin;
-double pixcrd[];
-
-{
- int err, j;
- double offset;
-
- /* Initialize if required. */
- if (wcs->flag != WCSSET) {
- if (wcsset(lin->naxis, ctype, wcs)) return 1;
- }
-
- /* Convert to relative physical coordinates. */
- for (j = 0; j < lin->naxis; j++) {
- if (j == wcs->lng) continue;
- if (j == wcs->lat) continue;
- imgcrd[j] = world[j] - crval[j];
- }
-
- if (wcs->flag != 999) {
- /* Compute projected coordinates. */
- if (err = celfwd(wcs->pcode, world[wcs->lng], world[wcs->lat], cel,
- phi, theta, prj, &imgcrd[wcs->lng], &imgcrd[wcs->lat])) {
- return err;
- }
-
- /* Do we have a CUBEFACE axis? */
- if (wcs->cubeface != -1) {
- /* Separation between faces. */
- if (prj->r0 == 0.0) {
- offset = 45.0;
- } else {
- offset = prj->r0*PI/4.0;
- }
-
- /* Stack faces in a cube. */
- if (imgcrd[wcs->lat] < offset) {
- imgcrd[wcs->lat] += offset;
- imgcrd[wcs->cubeface] = 5.0;
- } else if (imgcrd[wcs->lng] < offset*3) {
- imgcrd[wcs->lng] += offset*3;
- imgcrd[wcs->cubeface] = 4.0;
- } else if (imgcrd[wcs->lng] < offset*2) {
- imgcrd[wcs->lng] += offset*2;
- imgcrd[wcs->cubeface] = 3.0;
- } else if (imgcrd[wcs->lng] < offset) {
- imgcrd[wcs->lng] += offset;
- imgcrd[wcs->cubeface] = 2.0;
- } else if (imgcrd[wcs->lat] > offset) {
- imgcrd[wcs->lat] -= offset;
- imgcrd[wcs->cubeface] = 0.0;
- } else {
- imgcrd[wcs->cubeface] = 1.0;
- }
- }
- }
-
- /* Apply forward linear transformation. */
- if (linfwd(imgcrd, lin, pixcrd)) {
- return 4;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int wcsrev(ctype, wcs, pixcrd, lin, imgcrd, prj, phi, theta, crval, cel,
- world)
-
-const char ctype[][9];
-struct wcsprm *wcs;
-const double pixcrd[];
-struct linprm *lin;
-double imgcrd[];
-struct prjprm *prj;
-double *phi, *theta;
-const double crval[];
-struct celprm *cel;
-double world[];
-
-{
- int err, face, j;
- double offset;
-
- /* Initialize if required. */
- if (wcs->flag != WCSSET) {
- if (wcsset(lin->naxis, ctype, wcs)) return 1;
- }
-
- /* Apply reverse linear transformation. */
- if (linrev(pixcrd, lin, imgcrd)) {
- return 4;
- }
-
- /* Convert to world coordinates. */
- for (j = 0; j < lin->naxis; j++) {
- if (j == wcs->lng) continue;
- if (j == wcs->lat) continue;
- world[j] = imgcrd[j] + crval[j];
- }
-
-
- if (wcs->flag != 999) {
- /* Do we have a CUBEFACE axis? */
- if (wcs->cubeface != -1) {
- face = (int)(imgcrd[wcs->cubeface] + 0.5);
- if (fabs(imgcrd[wcs->cubeface]-face) > 1e-10) {
- return 3;
- }
-
- /* Separation between faces. */
- if (prj->r0 == 0.0) {
- offset = 45.0;
- } else {
- offset = prj->r0*PI/4.0;
- }
-
- /* Lay out faces in a plane. */
- switch (face) {
- case 0:
- imgcrd[wcs->lat] += offset;
- break;
- case 1:
- break;
- case 2:
- imgcrd[wcs->lng] -= offset;
- break;
- case 3:
- imgcrd[wcs->lng] -= offset*2;
- break;
- case 4:
- imgcrd[wcs->lng] -= offset*3;
- break;
- case 5:
- imgcrd[wcs->lat] -= offset;
- break;
- default:
- return 3;
- }
- }
-
- /* Compute celestial coordinates. */
- if (err = celrev(wcs->pcode, imgcrd[wcs->lng], imgcrd[wcs->lat], prj,
- phi, theta, cel, &world[wcs->lng], &world[wcs->lat])) {
- return err;
- }
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int wcsmix(ctype, wcs, mixpix, mixcel, vspan, vstep, viter, world, crval, cel,
- phi, theta, prj, imgcrd, lin, pixcrd)
-
-const char ctype[][9];
-struct wcsprm *wcs;
-const int mixpix, mixcel;
-const double vspan[2], vstep;
-int viter;
-double world[];
-const double crval[];
-struct celprm *cel;
-double *phi, *theta;
-struct prjprm *prj;
-double imgcrd[];
-struct linprm *lin;
-double pixcrd[];
-
-{
- const int niter = 60;
- int crossed, err, istep, iter, retry;
- const double tol = 1.0e-10;
- double lambda, span[2], step;
- double pixmix;
- double lng, lng0, lng0m, lng1, lng1m;
- double lat, lat0, lat0m, lat1, lat1m;
- double d, d0, d0m, d1, d1m, dx;
- double dabs, dmin, lmin;
-
- /* Check vspan. */
- if (vspan[0] <= vspan[1]) {
- span[0] = vspan[0];
- span[1] = vspan[1];
- } else {
- /* Swap them. */
- span[0] = vspan[1];
- span[1] = vspan[0];
- }
-
- /* Check vstep. */
- step = fabs(vstep);
- if (step == 0.0) {
- step = (span[1] - span[0])/10.0;
- if (step > 1.0 || step == 0.0) step = 1.0;
- }
-
- /* Check viter. */
- if (viter < 0) {
- viter = 0;
- } else if (viter > 5) {
- viter = 5;
- }
-
- /* Given pixel element. */
- pixmix = pixcrd[mixpix];
-
- /* Iterate on the step size. */
- for (istep = 0; istep <= viter; istep++) {
- if (istep) step /= 2.0;
-
- /* Iterate on the sky coordinate between the specified range. */
- if (mixcel == 1) {
- /* Celestial longitude is given. */
-
- /* Check whether the solution interval is a crossing interval. */
- lat0 = span[0];
- world[wcs->lat] = lat0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- lat1 = span[1];
- world[wcs->lat] = lat1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d1);
- if (dabs < tol) return 0;
-
- lmin = lat1;
- dmin = dabs;
-
- /* Check for a crossing point. */
- if (wcs_signbit(d0) != wcs_signbit(d1)) {
- crossed = 1;
- dx = d1;
- } else {
- crossed = 0;
- lat0 = span[1];
- }
-
- for (retry = 0; retry < 4; retry++) {
- /* Refine the solution interval. */
- while (lat0 > span[0]) {
- lat0 -= step;
- if (lat0 < span[0]) lat0 = span[0];
- world[wcs->lat] = lat0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lat0;
- dmin = dabs;
- }
-
- /* Check for a crossing point. */
- if (wcs_signbit(d0) != wcs_signbit(d1)) {
- crossed = 2;
- dx = d0;
- break;
- }
-
- /* Advance to the next subinterval. */
- lat1 = lat0;
- d1 = d0;
- }
-
- if (crossed) {
- /* A crossing point was found. */
- for (iter = 0; iter < niter; iter++) {
- /* Use regula falsi division of the interval. */
- lambda = d0/(d0-d1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
-
- lat = lat0 + lambda*(lat1 - lat0);
- world[wcs->lat] = lat;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lat;
- dmin = dabs;
- }
-
- if (wcs_signbit(d0) == wcs_signbit(d)) {
- lat0 = lat;
- d0 = d;
- } else {
- lat1 = lat;
- d1 = d;
- }
- }
-
- /* No convergence, must have been a discontinuity. */
- if (crossed == 1) lat0 = span[1];
- lat1 = lat0;
- d1 = dx;
- crossed = 0;
-
- } else {
- /* No crossing point; look for a tangent point. */
- if (lmin == span[0]) break;
- if (lmin == span[1]) break;
-
- lat = lmin;
- lat0 = lat - step;
- if (lat0 < span[0]) lat0 = span[0];
- lat1 = lat + step;
- if (lat1 > span[1]) lat1 = span[1];
-
- world[wcs->lat] = lat0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = fabs(pixcrd[mixpix] - pixmix);
-
- d = dmin;
-
- world[wcs->lat] = lat1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = fabs(pixcrd[mixpix] - pixmix);
-
- for (iter = 0; iter < niter; iter++) {
- lat0m = (lat0 + lat)/2.0;
- world[wcs->lat] = lat0m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d0m < tol) return 0;
-
- lat1m = (lat1 + lat)/2.0;
- world[wcs->lat] = lat1m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d1m < tol) return 0;
-
- if (d0m < d && d0m <= d1m) {
- lat1 = lat;
- d1 = d;
- lat = lat0m;
- d = d0m;
- } else if (d1m < d) {
- lat0 = lat;
- d0 = d;
- lat = lat1m;
- d = d1m;
- } else {
- lat0 = lat0m;
- d0 = d0m;
- lat1 = lat1m;
- d1 = d1m;
- }
- }
- }
- }
-
- } else {
- /* Celestial latitude is given. */
-
- /* Check whether the solution interval is a crossing interval. */
- lng0 = span[0];
- world[wcs->lng] = lng0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- lng1 = span[1];
- world[wcs->lng] = lng1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d1);
- if (dabs < tol) return 0;
- lmin = lng1;
- dmin = dabs;
-
- /* Check for a crossing point. */
- if (wcs_signbit(d0) != wcs_signbit(d1)) {
- crossed = 1;
- dx = d1;
- } else {
- crossed = 0;
- lng0 = span[1];
- }
-
- for (retry = 0; retry < 4; retry++) {
- /* Refine the solution interval. */
- while (lng0 > span[0]) {
- lng0 -= step;
- if (lng0 < span[0]) lng0 = span[0];
- world[wcs->lng] = lng0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lng0;
- dmin = dabs;
- }
-
- /* Check for a crossing point. */
- if (wcs_signbit(d0) != wcs_signbit(d1)) {
- crossed = 2;
- dx = d0;
- break;
- }
-
- /* Advance to the next subinterval. */
- lng1 = lng0;
- d1 = d0;
- }
-
- if (crossed) {
- /* A crossing point was found. */
- for (iter = 0; iter < niter; iter++) {
- /* Use regula falsi division of the interval. */
- lambda = d0/(d0-d1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
-
- lng = lng0 + lambda*(lng1 - lng0);
- world[wcs->lng] = lng;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lng;
- dmin = dabs;
- }
-
- if (wcs_signbit(d0) == wcs_signbit(d)) {
- lng0 = lng;
- d0 = d;
- } else {
- lng1 = lng;
- d1 = d;
- }
- }
-
- /* No convergence, must have been a discontinuity. */
- if (crossed == 1) lng0 = span[1];
- lng1 = lng0;
- d1 = dx;
- crossed = 0;
-
- } else {
- /* No crossing point; look for a tangent point. */
- if (lmin == span[0]) break;
- if (lmin == span[1]) break;
-
- lng = lmin;
- lng0 = lng - step;
- if (lng0 < span[0]) lng0 = span[0];
- lng1 = lng + step;
- if (lng1 > span[1]) lng1 = span[1];
-
- world[wcs->lng] = lng0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = fabs(pixcrd[mixpix] - pixmix);
-
- d = dmin;
-
- world[wcs->lng] = lng1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = fabs(pixcrd[mixpix] - pixmix);
-
- for (iter = 0; iter < niter; iter++) {
- lng0m = (lng0 + lng)/2.0;
- world[wcs->lng] = lng0m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d0m < tol) return 0;
-
- lng1m = (lng1 + lng)/2.0;
- world[wcs->lng] = lng1m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d1m < tol) return 0;
-
- if (d0m < d && d0m <= d1m) {
- lng1 = lng;
- d1 = d;
- lng = lng0m;
- d = d0m;
- } else if (d1m < d) {
- lng0 = lng;
- d0 = d;
- lng = lng1m;
- d = d1m;
- } else {
- lng0 = lng0m;
- d0 = d0m;
- lng1 = lng1m;
- d1 = d1m;
- }
- }
- }
- }
- }
- }
-
- /* No solution. */
- return 5;
-
-}
diff --git a/external/sextractor/source/wcs/wcs.h b/external/sextractor/source/wcs/wcs.h
deleted file mode 100644
index 37b0b97..0000000
--- a/external/sextractor/source/wcs/wcs.h
+++ /dev/null
@@ -1,80 +0,0 @@
-#ifndef WCS
-#define WCS
-
-#include "cel.h"
-#include "lin.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct wcsprm {
- int flag;
- char pcode[4];
- char lngtyp[5], lattyp[5];
- int lng, lat;
- int cubeface;
-};
-
-#if __STDC__ || defined(__cplusplus)
- int wcsset(const int,
- const char[][9],
- struct wcsprm *);
-
- int wcsfwd(const char[][9],
- struct wcsprm *,
- const double[],
- const double[],
- struct celprm *,
- double *,
- double *,
- struct prjprm *,
- double[],
- struct linprm *,
- double[]);
-
- int wcsrev(const char[][9],
- struct wcsprm *,
- const double[],
- struct linprm *,
- double[],
- struct prjprm *,
- double *,
- double *,
- const double[],
- struct celprm *,
- double[]);
-
- int wcsmix(const char[][9],
- struct wcsprm *,
- const int,
- const int,
- const double[],
- const double,
- int,
- double[],
- const double[],
- struct celprm *,
- double *,
- double *,
- struct prjprm *,
- double[],
- struct linprm *,
- double[]);
-
-#else
- int wcsset(), wcsfwd(), wcsrev(), wcsmix();
-#endif
-
-extern const char *wcsset_errmsg[];
-extern const char *wcsfwd_errmsg[];
-extern const char *wcsrev_errmsg[];
-extern const char *wcsmix_errmsg[];
-
-#define WCSSET 137
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* WCS */
diff --git a/external/sextractor/source/wcs/wcs_ori/Makefile b/external/sextractor/source/wcs/wcs_ori/Makefile
deleted file mode 100644
index 16dcea7..0000000
--- a/external/sextractor/source/wcs/wcs_ori/Makefile
+++ /dev/null
@@ -1,254 +0,0 @@
-#-----------------------------------------------------------------------------
-# GNU makefile for building WCSLIB.
-#
-# Summary of the main targets
-# ---------------------------
-# all: Build the library
-# clean: Delete intermediate object files.
-# realclean: clean, and also delete executables and the object library.
-# test: Compile and run the test programs.
-# show_all: Print the values of all variables used.
-#
-# Notes:
-# 1) The makefile sets certain variables to default values and may then
-# change some of them depending on the value of the FLAVOUR variable.
-# The following FLAVOURs are available:
-#
-# SUN/GNU GNU C compiler running under some version of SunOS.
-# SUN/ANSI ANSI C compiler running under some version of SunOS.
-# SUN/K&R K&R C compiler running under some version of SunOS.
-# DEC/Alpha DEC/Alpha running Digital Unix (OSF/1).
-# DEC/Ultrix DEC/Ultrix.
-# Convex Convex/ConvexOS.
-# SGI/32 SGI/IRIX using the 32-bit C and FORTRAN compilers.
-# SGI/64 SGI/IRIX using the 64-bit C and FORTRAN compilers.
-# SGI/P64 SGI/IRIX using the 64-bit Power C and FORTRAN compilers.
-#
-# The FLAVOUR may conveniently be set as an environment variable or on
-# the GNU make command line, e.g.
-#
-# gmake FLAVOUR='SUN/K&R'
-#
-# If your requirements don't match any predefined FLAVOUR then you might
-# be able to modify an existing one, add a new one, or simply modify the
-# defaults.
-#
-# 2) The native Convex C compiler does not have the IEEE copysign()
-# function, and some versions of Ultrix have a version which returns
-# garbage. In such cases a preprocessor macro replacement for
-# copysign() is available by defining the COPYSIGN preprocessor macro.
-#
-# Likewise, the SGI compiler doesn't have the IEEE signbit() function.
-#
-# $Id: Makefile,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-#-----------------------------------------------------------------------------
-# C compiler and options.
- CC := cc
- CFLAGS := -O
-
-# Reset this to ":" if ranlib is not needed.
- RANLIB := ranlib
-
-# Linker options.
- LDFLAGS := -s
-
-# Extra required libraries.
- LIBS := -lm
-
-# If your mathematics library has cosd(), sind(), tand(), acosd(), asind(),
-# atand(), and atan2d() and you want to use them then declare the required
-# header file here.
- TRIGD :=
-
-# The FC, FFLAGS, and PGPLOTLIB options are only required for compiling test
-# programs (tproj2, tcel, and twcs2) which use PGPLOT to plot test grids.
-# You can circumvent this by setting PGPLOTLIB to blank. PGPLOT is a FORTRAN
-# plotting library available from astro.caltech.edu.
-
-# FORTRAN compiler (used only for linking test programs to PGPLOT).
- FC := f77
- FFLAGS := -O
-
-# PGPLOT link list; unset this to defeat compilation of test programs which
-# plot test grids.
- PGPLOTLIB = -lpgplot -lX11
-
-# Extra files to clean up.
- override EXTRA_CLEAN :=
-
-# Overrides for various combinations of
-# architecture, operating system and compiler.
-#---------------------------------------------
-
-ifeq "$(FLAVOUR)" "SUN/GNU"
- CC := gcc
-
- # Although written in C the plotting programs are linked to PGPLOT using
- # the FORTRAN compiler since it passes the correct FORTRAN libraries to
- # 'ld'. However, the GNU C library must then be added explicitly to the
- # link list to resolve certain symbols specific to gcc. The following
- # definition is very specific to OS/compiler version numbers.
- PGPLOTLIB += -L/usr/local/gnu/lib/gcc-lib/sparc-sun-solaris2.5/2.7.2 -lgcc
-endif
-
-ifeq "$(FLAVOUR)" "SUN/ANSI"
- CC := cc
- LIBS := -lsunmath -lm
- TRIGD := sunmath.h
- FFLAGS += -u
-endif
-
-ifeq "$(FLAVOUR)" "SUN/K&R"
- CC := /usr/ucb/cc
- CFLAGS += -DSIGNBIT
-endif
-
-ifeq "$(FLAVOUR)" "DEC/Alpha"
- CFLAGS += -DSIGNBIT -D"atan2d=atand2"
- TRIGD := math.h
- FFLAGS += -nofor_main
-endif
-
-ifeq "$(FLAVOUR)" "DEC/Ultrix"
- CFLAGS += -DCOPYSIGN -DSIGNBIT
-endif
-
-ifeq "$(FLAVOUR)" "Convex"
- CFLAGS := -O3 -DCOPYSIGN -DSIGNBIT
- FFLAGS := -O3
-endif
-
-ifeq "$(FLAVOUR)" "SGI/32"
- CFLAGS += -32 -DSIGNBIT
- RANLIB := @ :
- FFLAGS += -32
- LDFLAGS += -32
- PGPLOTLIB := -L/usr/local/lib -lpgplot -lgl_s -lX11
-endif
-
-ifeq "$(FLAVOUR)" "SGI/64"
- CFLAGS += -64 -DSIGNBIT
- RANLIB := @ :
- FFLAGS += -64
- PGPLOTLIB := -L/usr/local/lib64 -lpgplot -lX11
-endif
-
-ifeq "$(FLAVOUR)" "SGI/P64"
- CFLAGS += -64 -pca keep -DSIGNBIT
- RANLIB := @ :
- FFLAGS += -64 -pfa keep
- LIBS += -lmp
- PGPLOTLIB := -L/usr/local/lib64 -lpgplot -lX11
- override EXTRA_CLEAN := *.L *.M *.P *.anl *.m
-endif
-
-#-----------------------------------------------------------------------------
-# You shouldn't need to change anything below here.
-
-ifeq "$(TRIGD)" ""
- WCSTRIG := wcstrig.o
-endif
-
-LIBRARY := libwcs_c.a
-MODULES := $(WCSTRIG) \
- lin.o \
- proj.o \
- sph.o \
- cel.o \
- wcs.o
-
-ifneq "$(PGPLOTLIB)" ""
- TPROJ2 := tproj2
- TCEL := tcel
- TWCS2 := twcs2
-endif
-
-%.o : %.c
- -@ echo ""
- $(CC) $(CFLAGS) -c $<
-
-%.o : %.f
- -@ echo ""
- $(FC) $(FFLAGS) -c $<
-
-.PHONY : all clean lib realclean test
-
-all : show_all lib
-
-lib : $(LIBRARY)
-
-$(LIBRARY) : $(MODULES:%=$(LIBRARY)(%))
- $(RANLIB) $(LIBRARY)
-
-clean :
- - $(RM) *.o *.i a.out core $(EXTRA_CLEAN)
-
-realclean : clean
- - $(RM) tlin tproj1 tproj2 tsph tcel twcs1 twcs2 $(LIBRARY)
-
-test : show_all tlin tproj1 $(TPROJ2) tsph $(TCEL) twcs1 $(TWCS2)
- -@ echo ""
- -@ echo "Running WCSLIB test programs:"
- -@ echo ""
- -@ tlin
- -@ echo ""
- -@ tproj1
- ifdef TPROJ2
- -@ echo ""
- -@ tproj2 < /dev/null
- endif
- -@ echo ""
- -@ tsph
- ifdef TCEL
- -@ echo ""
- -@ tcel < /dev/null
- endif
- -@ echo ""
- -@ twcs1
- ifdef TWCS2
- -@ echo ""
- -@ twcs2 < /dev/null
- endif
-
-tlin tproj1 tsph twcs1 : % : %.c $(LIBRARY)
- -@ echo ""
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(LIBRARY) $(LIBS)
- $(RM) $@.o
-
-tproj2 tcel twcs2 : % : %.o tpgc.o tpgf.o $(LIBRARY)
- -@ echo ""
- $(FC) $(FFLAGS) $(LDFLAGS) -o $@ $< tpgc.o tpgf.o $(LIBRARY) $(LIBS) $(PGPLOTLIB)
-
-show_all :
- -@ echo ""
- -@ echo "FLAVOUR := $(FLAVOUR)"
- -@ echo "CC := $(CC)"
- -@ echo "CFLAGS := $(CFLAGS)"
- -@ echo "RANLIB := $(RANLIB)"
- -@ echo "LDFLAGS := $(LDFLAGS)"
- -@ echo "LIBS := $(LIBS)"
- -@ echo "TRIGD := $(TRIGD)"
- -@ echo "WCSTRIG := $(WCSTRIG)"
- -@ echo "FC := $(FC)"
- -@ echo "FFLAGS := $(FFLAGS)"
- -@ echo "PGPLOTLIB := $(PGPLOTLIB)"
- -@ echo "EXTRA_CLEAN := $(EXTRA_CLEAN)"
-
-wcstrig.o : wcstrig.h
-lin.o : lin.h
-proj.o : proj.h
-sph.o : wcstrig.h
-cel.o : cel.h
-wcs.o : wcs.h
-
-tlin : lin.h
-tproj1 : proj.h
-tproj2 : proj.h
-tsph : wcstrig.h
-tcel : cel.h
-twcs1 : wcs.h
-twcs2 : wcs.h
-
-proj.h : wcstrig.h
-cel.h : proj.h
-wcs.h : cel.h lin.h
diff --git a/external/sextractor/source/wcs/wcs_ori/README b/external/sextractor/source/wcs/wcs_ori/README
deleted file mode 100644
index 4f1ee5e..0000000
--- a/external/sextractor/source/wcs/wcs_ori/README
+++ /dev/null
@@ -1,165 +0,0 @@
-WCSLIB contains C routines which implement the proposed "World Coordinate
-System" (WCS) convention in FITS (Flexible Image Transport System).
-This proposal is described in "Representations of Celestial Coordinates in
-FITS" by Eric W. Greisen and Mark Calabretta. A draft of this document is
-available via anonymous ftp from fits.cv.nrao.edu:/fits/documents/wcs.
-
-
-Manifest
---------
- Makefile GNU makefile for installing WCSLIB
- README This file.
- CHANGES List of changes made since v1.0.
-
- wcs.c High level WCS driver routines.
- wcs.h Header file for wcs.c; contains the definition of the
- "wcsprm" struct and function prototypes.
- cel.c Spherical projection driver routines.
- cel.h Header file for cel.c; contains the definition of the
- "celprm" struct and function prototypes.
- sph.c WCS spherical coordinate transformation routines.
- proj.c Implementation of the WCS spherical projections.
- proj.h Header file for proj.c; contains the definition of the
- "prjprm" struct and function prototypes.
- lin.c Implementation of the WCS linear transformation.
- lin.h Header file for lin.c; contains the definition of the
- "linprm" struct and function prototypes.
- wcstrig.c Trigonometric functions which deal with degrees rather than
- radians.
- wcstrig.h Header file for wcstrig.c; contains function prototypes.
-
- tlin.c Test closure of the linear transformation routines.
- tproj1.c Test closure of the WCS projection routines.
- tproj2.c Plot test grids for each projection (requires PGPLOT and X11).
- tsph.c Test closure of the WCS spherical coordinate transformation
- routines.
- tcel.c Plot oblique test grids (requires PGPLOT and X11).
- twcs1.c Test closure of wcsfwd() and wcsrev().
- twcs2.c Test closure of wcsmix() (requires PGPLOT and X11).
- tpgc.c C interfaces to PGPLOT used by tproj2 and tcel.
- tpgf.f FORTRAN interfaces to PGPLOT used by tproj2 and tcel.
-
-
-Usage caveats
--------------
-Usage of the routines is described in the prologue comments in wcs.c, cel.c,
-sph.c, proj.c, and lin.c. The main interface is via the high level wcsfwd(),
-wcsrev(), and wcsmix() driver routines, although direct calls may sometimes be
-useful to celfwd() and celrev() described in cel.c, and linfwd() and linrev()
-described in lin.c. The twcs1.c, tcel.c and tlin test programs may be taken
-as programming templates.
-
-The routines use a simple mechanism to store intermediate values and thereby
-save recomputing them on every call. The structs which contain coordinate
-transformation and projection parameters ("wcsprm", "linprm", "celprm" and
-"prjprm") are also used to store intermediate values derived from the
-parameters. Particular members of these structs are flags which must be set
-to zero when any of the parameters are set (or reset), thereby signalling that
-the intermediate values need to be computed. This mechanism also allows an
-indefinite number of contexts to be maintained.
-
-Note that while the FITS "LONGPOLE" and "LATPOLE" keywords assumes sensible
-default values if omitted from the FITS header, this condition must be
-signalled explicitly as described in the prologue to cel.c.
-
-
-Nomenclature
-------------
-In WCSLIB the "forward" direction is from (lng,lat) celestial coordinates to
-(x,y) coordinates in the plane of projection. This accords with the notion
-that spherical projections are a projection of the sphere onto a plane, the
-"reverse" direction is therefore that of deprojection from plane to sphere.
-
-Unfortunately, this is opposite to what is generally understood to be the
-forward direction for FITS, namely that of transforming pixel coordinates to
-world coordinates. However, the ordering of function argument lists should
-make it clear what is intended.
-
-
-Installation notes
-------------------
-A GNU makefile is provided; GNU make (referred to below as gmake) must be
-used. A few variables are defined at the start of the makefile which you may
-need to tailor for your purposes; instructions are given in the makefile
-itself. You should then be able to build 'libwcs_c.a' via
-
- gmake
-
-A suite of test programs is also provided to verify the library. You can
-compile and exercise the test programs in one step via
-
- gmake test
-
-
-Verification
-------------
-The tlin, tproj1 and tsph programs test closure of the linear transformation
-routines, projection routines and spherical coordinate transformations.
-"Closure" tests apply the forward and reverse transformations in sequence and
-compare the result with the original value. Ideally, the result should agree
-exactly, but because of floating point rounding errors there is usually a
-small discrepancy so it is only required to agree within a "closure
-tolerance".
-
-tproj1 tests for closure separately for longitude and latitude except at the
-poles where it only tests for closure in latitude. Note that closure in
-longitude does not deal with angular displacements on the sky. This is
-appropriate for many projections such as the cylindricals where circumpolar
-parallels are projected at the same length as the equator. On the other hand,
-tsph does test for closure in angular displacement.
-
-The tolerance for reporting closure discrepancies is set at 1e-10 degree for
-most projections; this is slightly less than 3 microarcsec. The worst case
-closure figure is reported for each projection and this is usually better than
-the reporting tolerance by several orders of magnitude. tproj1 and tsph test
-closure at all points on the 1 degree grid of native longitude and latitude
-and to within 5 degrees of any latitude of divergence for those projections
-which cannot represent the full sphere. Closure is also tested at a sequence
-of points close to the reference point (tproj1) or pole (tsph).
-
-Closure has been verified at all test points for SUN workstations. However,
-non-closure may be observed for other machines near native latitude -90 for
-the zenithal, cylindrical and conic equal area projections (ZEA, CEA and COE),
-and near divergent latitudes of projections such as the azimuthal perspective
-and stereographic projections (AZP and STG). Rounding errors may also carry
-points between faces of the quad-cube projections (CSC, QSC, and TSC).
-Although such excursions may produce long lists of non-closure points, this
-is not necessarily indicative of a fundamental problem.
-
-Note that the inverse of the COBE quad-qube projection (CSC) is a polynomial
-approximation and its closure tolerance is intrinsically poor.
-
-Although tests for closure help to verify the internal consistency of the
-routines they do not verify them in an absolute sense. This is partly
-addressed by tproj2 and tcel which plot test grids for visual inspection of
-scaling, orientation, and other macroscopic characteristics of the
-projections.
-
-twcs1 tests closure of wcsfwd() and wcsrev() for a number of selected
-projections. twcs2 verifies wcsmix() on the 1 degree grid of celestial
-longitude and latitude for a number of selected projections. It plots a test
-grid for each projection and indicates the location of successful and failed
-solutions.
-
-
-Trigonometric functions
------------------------
-The WCSLIB routines use the following trigonometric functions which take or
-return angular arguments in degrees:
-
- cosd() sind() tand() acosd() asind() atand() atan2d()
-
-These routines explicitly handle angles which are a multiple of 90 degrees
-returning an exact result.
-
-These functions are provided in wcstrig.c. However, some C implementations
-also provide them as part of a system library and in such cases it is usually
-preferable to use the native versions.
-
-
-Author
-------
-Mark Calabretta, Australia Telescope National Facility
-mcalabre at atnf.csiro.au
-
-$Id: README,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
diff --git a/external/sextractor/source/wcs/wcs_ori/cel.c b/external/sextractor/source/wcs/wcs_ori/cel.c
deleted file mode 100644
index ba4234c..0000000
--- a/external/sextractor/source/wcs/wcs_ori/cel.c
+++ /dev/null
@@ -1,567 +0,0 @@
-/*=============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines which implement the FITS World Coordinate System (WCS)
-* convention.
-*
-* Summary of routines
-* -------------------
-* These routines are provided as drivers for the lower level spherical
-* coordinate transformation and projection routines. There are separate
-* driver routines for the forward, celfwd(), and reverse, celrev(),
-* transformations.
-*
-* An initialization routine, celset(), computes intermediate values from
-* the transformation parameters but need not be called explicitly - see the
-* explanation of cel.flag below.
-*
-*
-* Initialization routine; celset()
-* --------------------------------
-* Initializes members of a celprm data structure which hold intermediate
-* values. Note that this routine need not be called directly; it will be
-* invoked by celfwd() and celrev() if the "flag" structure member is
-* anything other than a predefined magic value.
-*
-* Given:
-* pcode[4] const char
-* WCS projection code (see below).
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (see below).
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Ill-conditioned coordinate transformation
-* parameters.
-*
-* Forward transformation; celfwd()
-* --------------------------------
-* Compute (x,y) coordinates in the plane of projection from celestial
-* coordinates (lng,lat).
-*
-* Given:
-* pcode[4] const char
-* WCS projection code (see below).
-* lng,lat const double
-* Celestial longitude and latitude of the projected
-* point, in degrees.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (see below).
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* x,y double* Projected coordinates, "degrees".
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid value of (lng,lat).
-*
-* Reverse transformation; celrev()
-* --------------------------------
-* Compute the celestial coordinates (lng,lat) of the point with projected
-* coordinates (x,y).
-*
-* Given:
-* pcode[4] const char
-* WCS projection code (see below).
-* x,y const double
-* Projected coordinates, "degrees".
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (see below).
-*
-* Returned:
-* lng,lat double* Celestial longitude and latitude of the projected
-* point, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid value of (x,y).
-*
-* Coordinate transformation parameters
-* ------------------------------------
-* The celprm struct consists of the following:
-*
-* int flag
-* The celprm struct contains pointers to the forward and reverse
-* projection routines as well as intermediaries computed from the
-* reference coordinates (see below). Whenever the projection code
-* (pcode) or any of ref[4] are set or changed then this flag must be
-* set to zero to signal the initialization routine, celset(), to
-* redetermine the function pointers and recompute intermediaries.
-* Once this has been done pcode itself is ignored.
-*
-* double ref[4]
-* The first pair of values should be set to the celestial longitude
-* and latitude (usually right ascension and declination) of the
-* reference point of the projection.
-*
-* The second pair of values are the native longitude and latitude of
-* the pole of the celestial coordinate system and correspond to the
-* FITS keywords LONGPOLE and LATPOLE.
-*
-* LONGPOLE defaults to 0 degrees if the celestial latitude of the
-* reference point of the projection is greater than the native
-* latitude, otherwise 180 degrees. (This is the condition for the
-* celestial latitude to increase in the same direction as the native
-* latitude at the reference point.) ref[2] may be set to 999.0 to
-* indicate that the correct default should be substituted.
-*
-* In some circumstances the latitude of the native pole may be
-* determined by the first three values only to within a sign and
-* LATPOLE is used to choose between the two solutions. LATPOLE is
-* set in ref[3] and the solution closest to this value is used to
-* reset ref[3]. It is therefore legitimate, for example, to set
-* ref[3] to 999.0 to choose the more northerly solution - the default
-* if the LATPOLE card is omitted from the FITS header. For the
-* special case where the reference point of the projection is at
-* native latitude zero, its celestial latitude is zero, and
-* LONGPOLE = +/- 90 then the native latitude of the pole is not
-* determined by the first three reference values and LATPOLE
-* specifies it completely.
-*
-* The remaining members of the celprm struct are maintained by the
-* initialization routines and should not be modified. This is done for the
-* sake of efficiency and to allow an arbitrary number of contexts to be
-* maintained simultaneously.
-*
-* double euler[5]
-* Euler angles and associated intermediaries derived from the
-* coordinate reference values.
-* int (*prjfwd)()
-* int (*prjrev)()
-* Pointers to the forward and reverse projection routines.
-*
-*
-* WCS projection codes
-* --------------------
-* Zenithals/azimuthals:
-* AZP: zenithal/azimuthal perspective
-* TAN: gnomonic
-* SIN: synthesis (generalized orthographic)
-* STG: stereographic
-* ARC: zenithal/azimuthal equidistant
-* ZPN: zenithal/azimuthal polynomial
-* ZEA: zenithal/azimuthal equal area
-* AIR: Airy
-*
-* Cylindricals:
-* CYP: cylindrical perspective
-* CAR: Cartesian
-* MER: Mercator
-* CEA: cylindrical equal area
-*
-* Conics:
-* COP: conic perspective
-* COD: conic equidistant
-* COE: conic equal area
-* COO: conic orthomorphic
-*
-* Polyconics:
-* BON: Bonne
-* PCO: polyconic
-*
-* Pseudo-cylindricals:
-* GLS: Sanson-Flamsteed (global sinusoidal)
-* PAR: parabolic
-* MOL: Mollweide
-*
-* Conventional:
-* AIT: Hammer-Aitoff
-*
-* Quad-cubes:
-* CSC: COBE quadrilateralized spherical cube
-* QSC: quadrilateralized spherical cube
-* TSC: tangential spherical cube
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: cel.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "cel.h"
-
-int npcode = 25;
-char pcodes[25][4] =
- {"AZP", "TAN", "SIN", "STG", "ARC", "ZPN", "ZEA", "AIR", "CYP", "CAR",
- "MER", "CEA", "COP", "COD", "COE", "COO", "BON", "PCO", "GLS", "PAR",
- "AIT", "MOL", "CSC", "QSC", "TSC"};
-
-/* Map error number to error message for each function. */
-const char *celset_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Ill-conditioned coordinate transformation parameters"};
-
-const char *celfwd_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid value of (lng,lat)"};
-
-const char *celrev_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid value of (x,y)"};
-
-
-int celset(pcode, cel, prj)
-
-const char pcode[4];
-struct celprm *cel;
-struct prjprm *prj;
-
-{
- int dophip;
- const double tol = 1.0e-10;
- double clat0, cphip, cthe0, theta0, slat0, sphip, sthe0;
- double latp, latp1, latp2;
- double u, v, x, y, z;
-
- /* Set pointers to the forward and reverse projection routines. */
- if (strcmp(pcode, "AZP") == 0) {
- cel->prjfwd = azpfwd;
- cel->prjrev = azprev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "TAN") == 0) {
- cel->prjfwd = tanfwd;
- cel->prjrev = tanrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "SIN") == 0) {
- cel->prjfwd = sinfwd;
- cel->prjrev = sinrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "STG") == 0) {
- cel->prjfwd = stgfwd;
- cel->prjrev = stgrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "ARC") == 0) {
- cel->prjfwd = arcfwd;
- cel->prjrev = arcrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "ZPN") == 0) {
- cel->prjfwd = zpnfwd;
- cel->prjrev = zpnrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "ZEA") == 0) {
- cel->prjfwd = zeafwd;
- cel->prjrev = zearev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "AIR") == 0) {
- cel->prjfwd = airfwd;
- cel->prjrev = airrev;
- theta0 = 90.0;
- } else if (strcmp(pcode, "CYP") == 0) {
- cel->prjfwd = cypfwd;
- cel->prjrev = cyprev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "CAR") == 0) {
- cel->prjfwd = carfwd;
- cel->prjrev = carrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "MER") == 0) {
- cel->prjfwd = merfwd;
- cel->prjrev = merrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "CEA") == 0) {
- cel->prjfwd = ceafwd;
- cel->prjrev = cearev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "COP") == 0) {
- cel->prjfwd = copfwd;
- cel->prjrev = coprev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "COD") == 0) {
- cel->prjfwd = codfwd;
- cel->prjrev = codrev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "COE") == 0) {
- cel->prjfwd = coefwd;
- cel->prjrev = coerev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "COO") == 0) {
- cel->prjfwd = coofwd;
- cel->prjrev = coorev;
- theta0 = prj->p[1];
- } else if (strcmp(pcode, "BON") == 0) {
- cel->prjfwd = bonfwd;
- cel->prjrev = bonrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "PCO") == 0) {
- cel->prjfwd = pcofwd;
- cel->prjrev = pcorev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "GLS") == 0) {
- cel->prjfwd = glsfwd;
- cel->prjrev = glsrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "PAR") == 0) {
- cel->prjfwd = parfwd;
- cel->prjrev = parrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "AIT") == 0) {
- cel->prjfwd = aitfwd;
- cel->prjrev = aitrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "MOL") == 0) {
- cel->prjfwd = molfwd;
- cel->prjrev = molrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "CSC") == 0) {
- cel->prjfwd = cscfwd;
- cel->prjrev = cscrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "QSC") == 0) {
- cel->prjfwd = qscfwd;
- cel->prjrev = qscrev;
- theta0 = 0.0;
- } else if (strcmp(pcode, "TSC") == 0) {
- cel->prjfwd = tscfwd;
- cel->prjrev = tscrev;
- theta0 = 0.0;
- } else {
- /* Unrecognized projection code. */
- return 1;
- }
-
- /* Set default for native longitude of the celestial pole? */
- dophip = (cel->ref[2] == 999.0);
-
- /* Compute celestial coordinates of the native pole. */
- if (theta0 == 90.0) {
- /* Reference point is at the native pole. */
-
- if (dophip) {
- /* Set default for longitude of the celestial pole. */
- cel->ref[2] = 180.0;
- }
-
- latp = cel->ref[1];
- cel->ref[3] = latp;
-
- cel->euler[0] = cel->ref[0];
- cel->euler[1] = 90.0 - latp;
- } else {
- /* Reference point away from the native pole. */
-
- /* Set default for longitude of the celestial pole. */
- if (dophip) {
- cel->ref[2] = (cel->ref[1] < theta0) ? 180.0 : 0.0;
- }
-
- clat0 = cosd(cel->ref[1]);
- slat0 = sind(cel->ref[1]);
- cphip = cosd(cel->ref[2]);
- sphip = sind(cel->ref[2]);
- cthe0 = cosd(theta0);
- sthe0 = sind(theta0);
-
- x = cthe0*cphip;
- y = sthe0;
- z = sqrt(x*x + y*y);
- if (z == 0.0) {
- if (slat0 != 0.0) {
- return 1;
- }
-
- /* latp determined by LATPOLE in this case. */
- latp = cel->ref[3];
- } else {
- if (fabs(slat0/z) > 1.0) {
- return 1;
- }
-
- u = atan2d(y,x);
- v = acosd(slat0/z);
-
- latp1 = u + v;
- if (latp1 > 180.0) {
- latp1 -= 360.0;
- } else if (latp1 < -180.0) {
- latp1 += 360.0;
- }
-
- latp2 = u - v;
- if (latp2 > 180.0) {
- latp2 -= 360.0;
- } else if (latp2 < -180.0) {
- latp2 += 360.0;
- }
-
- if (fabs(cel->ref[3]-latp1) < fabs(cel->ref[3]-latp2)) {
- if (fabs(latp1) < 90.0+tol) {
- latp = latp1;
- } else {
- latp = latp2;
- }
- } else {
- if (fabs(latp2) < 90.0+tol) {
- latp = latp2;
- } else {
- latp = latp1;
- }
- }
-
- cel->ref[3] = latp;
- }
-
- cel->euler[1] = 90.0 - latp;
-
- z = cosd(latp)*clat0;
- if (fabs(z) < tol) {
- if (fabs(clat0) < tol) {
- /* Celestial pole at the reference point. */
- cel->euler[0] = cel->ref[0];
- cel->euler[1] = 90.0 - theta0;
- } else if (latp > 0.0) {
- /* Celestial pole at the native north pole.*/
- cel->euler[0] = cel->ref[0] + cel->ref[2] - 180.0;
- cel->euler[1] = 0.0;
- } else if (latp < 0.0) {
- /* Celestial pole at the native south pole. */
- cel->euler[0] = cel->ref[0] - cel->ref[2];
- cel->euler[1] = 180.0;
- }
- } else {
- x = (sthe0 - sind(latp)*slat0)/z;
- y = sphip*cthe0/clat0;
- if (x == 0.0 && y == 0.0) {
- return 1;
- }
- cel->euler[0] = cel->ref[0] - atan2d(y,x);
- }
-
- /* Make euler[0] the same sign as ref[0]. */
- if (cel->ref[0] >= 0.0) {
- if (cel->euler[0] < 0.0) cel->euler[0] += 360.0;
- } else {
- if (cel->euler[0] > 0.0) cel->euler[0] -= 360.0;
- }
- }
-
- cel->euler[2] = cel->ref[2];
- cel->euler[3] = cosd(cel->euler[1]);
- cel->euler[4] = sind(cel->euler[1]);
- cel->flag = CELSET;
-
- /* Check for ill-conditioned parameters. */
- if (fabs(latp) > 90.0+tol) {
- return 2;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int celfwd(pcode, lng, lat, cel, phi, theta, prj, x, y)
-
-const char pcode[4];
-const double lng, lat;
-struct celprm *cel;
-double *phi, *theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int err;
-
- if (cel->flag != CELSET) {
- if (celset(pcode, cel, prj)) return 1;
- }
-
- /* Compute native coordinates. */
- sphfwd(lng, lat, cel->euler, phi, theta);
-
- /* Apply forward projection. */
- if (err = cel->prjfwd(*phi, *theta, prj, x, y)) {
- return err == 1 ? 2 : 3;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int celrev(pcode, x, y, prj, phi, theta, cel, lng, lat)
-
-const char pcode[4];
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-struct celprm *cel;
-double *lng, *lat;
-
-{
- int err;
-
- if (cel->flag != CELSET) {
- if(celset(pcode, cel, prj)) return 1;
- }
-
- /* Apply reverse projection. */
- if (err = cel->prjrev(x, y, prj, phi, theta)) {
- return err == 1 ? 2 : 3;
- }
-
- /* Compute native coordinates. */
- sphrev(*phi, *theta, cel->euler, lng, lat);
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/cel.h b/external/sextractor/source/wcs/wcs_ori/cel.h
deleted file mode 100644
index 310fc8c..0000000
--- a/external/sextractor/source/wcs/wcs_ori/cel.h
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef CEL
-#define CEL
-
-#include "proj.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern int npcode;
-extern char pcodes[25][4];
-
-struct celprm {
- int flag;
- double ref[4];
- double euler[5];
-
-#if __STDC__ || defined(__cplusplus)
- int (*prjfwd)(const double, const double,
- struct prjprm *,
- double *, double *);
- int (*prjrev)(const double, const double,
- struct prjprm *,
- double *, double *);
-#else
- int (*prjfwd)();
- int (*prjrev)();
-#endif
-};
-
-#if __STDC__ || defined(__cplusplus)
- int celset(const char *, struct celprm *, struct prjprm *);
- int celfwd(const char *,
- const double, const double,
- struct celprm *,
- double *, double *,
- struct prjprm *,
- double *, double *);
- int celrev(const char *,
- const double, const double,
- struct prjprm *,
- double *, double *,
- struct celprm *,
- double *, double *);
-#else
- int celset(), celfwd(), celrev();
-#endif
-
-extern const char *celset_errmsg[];
-extern const char *celfwd_errmsg[];
-extern const char *celrev_errmsg[];
-
-#define CELSET 137
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* CEL */
diff --git a/external/sextractor/source/wcs/wcs_ori/lin.c b/external/sextractor/source/wcs/wcs_ori/lin.c
deleted file mode 100644
index 6a38b3a..0000000
--- a/external/sextractor/source/wcs/wcs_ori/lin.c
+++ /dev/null
@@ -1,423 +0,0 @@
-/*=============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines which implement the FITS World Coordinate System (WCS)
-* convention.
-*
-* Summary of routines
-* -------------------
-* These utility routines apply the linear transformation defined by the WCS
-* FITS header cards. There are separate routines for the image-to-pixel,
-* linfwd(), and pixel-to-image, linrev(), transformations.
-*
-* An initialization routine, linset(), computes intermediate values from
-* the transformation parameters but need not be called explicitly - see the
-* explanation of lin.flag below.
-*
-* An auxiliary matrix inversion routine, matinv(), is included. It uses
-* LU-triangular factorization with scaled partial pivoting.
-*
-*
-* Initialization routine; linset()
-* --------------------------------
-* Initializes members of a linprm data structure which hold intermediate
-* values. Note that this routine need not be called directly; it will be
-* invoked by linfwd() and linrev() if the "flag" structure member is
-* anything other than a predefined magic value.
-*
-* Given and/or returned:
-* lin linprm* Linear transformation parameters (see below).
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Memory allocation error.
-* 2: PC matrix is singular.
-*
-* Forward transformation; linfwd()
-* --------------------------------
-* Compute pixel coordinates from image coordinates. Note that where
-* celestial coordinate systems are concerned the image coordinates
-* correspond to (x,y) in the plane of projection, not celestial (lng,lat).
-*
-* Given:
-* imgcrd const double[]
-* Image (world) coordinate.
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (see below).
-*
-* Returned:
-* pixcrd d[] Pixel coordinate.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: The transformation is not invertible.
-*
-* Reverse transformation; linrev()
-* --------------------------------
-* Compute image coordinates from pixel coordinates. Note that where
-* celestial coordinate systems are concerned the image coordinates
-* correspond to (x,y) in the plane of projection, not celestial (lng,lat).
-*
-* Given:
-* pixcrd const double[]
-* Pixel coordinate.
-*
-* Given and/or returned:
-* lin linprm* Linear transformation parameters (see below).
-*
-* Returned:
-* imgcrd d[] Image (world) coordinate.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Error.
-*
-* Linear transformation parameters
-* --------------------------------
-* The linprm struct consists of the following:
-*
-* int flag
-* This flag must be set to zero whenever any of the following members
-* are set or modified. This signals the initialization routine,
-* linset(), to recompute intermediaries.
-* int naxis
-* Number of image axes.
-* double *crpix
-* Pointer to the first element of an array of double containing the
-* coordinate reference pixel, CRPIXn.
-* double *pc
-* Pointer to the first element of the PC (pixel coordinate)
-* transformation matrix.
-* double *cdelt
-* Pointer to the first element of an array of double containing the
-* coordinate increments, CDELTn.
-*
-* The remaining members of the linprm struct are maintained by the
-* initialization routine and should not be modified.
-*
-* double *piximg
-* Pointer to the first element of the matrix containing the product
-* of the CDELTn diagonal matrix and the PC matrix.
-* double *imgpix
-* Pointer to the first element of the inverse of the piximg matrix.
-*
-* linset allocates storage for the above arrays using malloc(). Note,
-* however, that these routines do not free this storage so if a linprm
-* variable has itself been malloc'd then these structure members must be
-* explicitly freed before the linprm variable is free'd otherwise a memory
-* leak will result.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: lin.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include <math.h>
-#include "lin.h"
-
-/* Map error number to error message for each function. */
-const char *linset_errmsg[] = {
- 0,
- "Memory allocation error",
- "PC matrix is singular"};
-
-const char *linfwd_errmsg[] = {
- 0,
- "Memory allocation error",
- "PC matrix is singular"};
-
-const char *linrev_errmsg[] = {
- 0,
- "Memory allocation error",
- "PC matrix is singular"};
-
-
-#ifdef __convexc__
-#include <stdlib.h>
-#else
-#include <stdlib.h>
-/*#include <malloc.h>*/
-#endif
-
-int linset(lin)
-
-struct linprm *lin;
-
-{
- int i, ij, j, mem, n;
-
- n = lin->naxis;
-
- /* Allocate memory for internal arrays. */
- mem = n * n * sizeof(double);
- lin->piximg = (double*)malloc(mem);
- if (lin->piximg == (double*)0) return 1;
-
- lin->imgpix = (double*)malloc(mem);
- if (lin->imgpix == (double*)0) {
- free(lin->piximg);
- return 1;
- }
-
- /* Compute the pixel-to-image transformation matrix. */
- for (i = 0, ij = 0; i < n; i++) {
- for (j = 0; j < n; j++, ij++) {
- lin->piximg[ij] = lin->cdelt[i] * lin->pc[ij];
- }
- }
-
- /* Compute the image-to-pixel transformation matrix. */
- if (matinv(n, lin->piximg, lin->imgpix)) return 2;
-
- lin->flag = LINSET;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int linfwd(imgcrd, lin, pixcrd)
-
-const double imgcrd[];
-struct linprm *lin;
-double pixcrd[];
-
-{
- int i, ij, j, n;
-
- n = lin->naxis;
-
- if (lin->flag != LINSET) {
- if (linset(lin)) return 1;
- }
-
- for (i = 0, ij = 0; i < n; i++) {
- pixcrd[i] = 0.0;
- for (j = 0; j < n; j++, ij++) {
- pixcrd[i] += lin->imgpix[ij] * imgcrd[j];
- }
- }
-
- for (j = 0; j < n; j++) {
- pixcrd[j] += lin->crpix[j];
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int linrev(pixcrd, lin, imgcrd)
-
-const double pixcrd[];
-struct linprm *lin;
-double imgcrd[];
-
-{
- int i, ij, j, n;
- double temp;
-
- n = lin->naxis;
-
- if (lin->flag != LINSET) {
- if (linset(lin)) return 1;
- }
-
- for (i = 0; i < n; i++) {
- imgcrd[i] = 0.0;
- }
-
- for (j = 0; j < n; j++) {
- temp = pixcrd[j] - lin->crpix[j];
- for (i = 0, ij = j; i < n; i++, ij+=n) {
- imgcrd[i] += lin->piximg[ij] * temp;
- }
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int matinv(n, mat, inv)
-
-const int n;
-const double mat[];
-double inv[];
-
-{
- register int i, ij, ik, j, k, kj, pj;
- int itemp, mem, *mxl, *lxm, pivot;
- double colmax, *lu, *rowmax, dtemp;
-
-
- /* Allocate memory for internal arrays. */
- mem = n * sizeof(int);
- if ((mxl = (int*)malloc(mem)) == (int*)0) return 1;
- if ((lxm = (int*)malloc(mem)) == (int*)0) {
- free(mxl);
- return 1;
- }
-
- mem = n * sizeof(double);
- if ((rowmax = (double*)malloc(mem)) == (double*)0) {
- free(mxl);
- free(lxm);
- return 1;
- }
-
- mem *= n;
- if ((lu = (double*)malloc(mem)) == (double*)0) {
- free(mxl);
- free(lxm);
- free(rowmax);
- return 1;
- }
-
-
- /* Initialize arrays. */
- for (i = 0, ij = 0; i < n; i++) {
- /* Vector which records row interchanges. */
- mxl[i] = i;
-
- rowmax[i] = 0.0;
-
- for (j = 0; j < n; j++, ij++) {
- dtemp = fabs(mat[ij]);
- if (dtemp > rowmax[i]) rowmax[i] = dtemp;
-
- lu[ij] = mat[ij];
- }
-
- /* A row of zeroes indicates a singular matrix. */
- if (rowmax[i] == 0.0) {
- free(mxl);
- free(lxm);
- free(rowmax);
- free(lu);
- return 2;
- }
- }
-
-
- /* Form the LU triangular factorization using scaled partial pivoting. */
- for (k = 0; k < n; k++) {
- /* Decide whether to pivot. */
- colmax = fabs(lu[k*n+k]) / rowmax[k];
- pivot = k;
-
- for (i = k+1; i < n; i++) {
- ik = i*n + k;
- dtemp = fabs(lu[ik]) / rowmax[i];
- if (dtemp > colmax) {
- colmax = dtemp;
- pivot = i;
- }
- }
-
- if (pivot > k) {
- /* We must pivot, interchange the rows of the design matrix. */
- for (j = 0, pj = pivot*n, kj = k*n; j < n; j++, pj++, kj++) {
- dtemp = lu[pj];
- lu[pj] = lu[kj];
- lu[kj] = dtemp;
- }
-
- /* Amend the vector of row maxima. */
- dtemp = rowmax[pivot];
- rowmax[pivot] = rowmax[k];
- rowmax[k] = dtemp;
-
- /* Record the interchange for later use. */
- itemp = mxl[pivot];
- mxl[pivot] = mxl[k];
- mxl[k] = itemp;
- }
-
- /* Gaussian elimination. */
- for (i = k+1; i < n; i++) {
- ik = i*n + k;
-
- /* Nothing to do if lu[ik] is zero. */
- if (lu[ik] != 0.0) {
- /* Save the scaling factor. */
- lu[ik] /= lu[k*n+k];
-
- /* Subtract rows. */
- for (j = k+1; j < n; j++) {
- lu[i*n+j] -= lu[ik]*lu[k*n+j];
- }
- }
- }
- }
-
-
- /* mxl[i] records which row of mat corresponds to row i of lu. */
- /* lxm[i] records which row of lu corresponds to row i of mat. */
- for (i = 0; i < n; i++) {
- lxm[mxl[i]] = i;
- }
-
-
- /* Determine the inverse matrix. */
- for (i = 0, ij = 0; i < n; i++) {
- for (j = 0; j < n; j++, ij++) {
- inv[ij] = 0.0;
- }
- }
-
- for (k = 0; k < n; k++) {
- inv[lxm[k]*n+k] = 1.0;
-
- /* Forward substitution. */
- for (i = lxm[k]+1; i < n; i++) {
- for (j = lxm[k]; j < i; j++) {
- inv[i*n+k] -= lu[i*n+j]*inv[j*n+k];
- }
- }
-
- /* Backward substitution. */
- for (i = n-1; i >= 0; i--) {
- for (j = i+1; j < n; j++) {
- inv[i*n+k] -= lu[i*n+j]*inv[j*n+k];
- }
- inv[i*n+k] /= lu[i*n+i];
- }
- }
-
- free(mxl);
- free(lxm);
- free(rowmax);
- free(lu);
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/lin.h b/external/sextractor/source/wcs/wcs_ori/lin.h
deleted file mode 100644
index ee730b9..0000000
--- a/external/sextractor/source/wcs/wcs_ori/lin.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef LIN
-#define LIN
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if !defined(__STDC__) && !defined(__cplusplus)
-#ifndef const
-#define const
-#endif
-#endif
-
-struct linprm {
- int flag;
- int naxis;
- double *crpix;
- double *pc;
- double *cdelt;
-
- /* Intermediates. */
- double *piximg;
- double *imgpix;
-};
-
-#if __STDC__ || defined(__cplusplus)
- int linset(struct linprm *);
- int linfwd(const double[], struct linprm *, double[]);
- int linrev(const double[], struct linprm *, double[]);
- int matinv(const int, const double [], double []);
-#else
- int linset(), linfwd(), linrev(), matinv();
-#endif
-
-extern const char *linset_errmsg[];
-extern const char *linfwd_errmsg[];
-extern const char *linrev_errmsg[];
-
-#define LINSET 137
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* LIN */
diff --git a/external/sextractor/source/wcs/wcs_ori/proj.c b/external/sextractor/source/wcs/wcs_ori/proj.c
deleted file mode 100644
index d735029..0000000
--- a/external/sextractor/source/wcs/wcs_ori/proj.c
+++ /dev/null
@@ -1,3434 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C implementation of the spherical map projections recognized by the FITS
-* "World Coordinate System" (WCS) convention.
-*
-* Summary of routines
-* -------------------
-* Each projection is implemented via separate functions for the forward,
-* *fwd(), and reverse, *rev(), transformation.
-*
-* Initialization routines, *set(), compute intermediate values from the
-* projection parameters but need not be called explicitly - see the
-* explanation of prj.flag below.
-*
-* azpset azpfwd azprev AZP: zenithal/azimuthal perspective
-* tanset tanfwd tanrev TAN: gnomonic
-* sinset sinfwd sinrev SIN: orthographic/synthesis
-* stgset stgfwd stgrev STG: stereographic
-* arcset arcfwd arcrev ARC: zenithal/azimuthal equidistant
-* zpnset zpnfwd zpnrev ZPN: zenithal/azimuthal polynomial
-* zeaset zeafwd zearev ZEA: zenithal/azimuthal equal area
-* airset airfwd airrev AIR: Airy
-* cypset cypfwd cyprev CYP: cylindrical perspective
-* carset carfwd carrev CAR: Cartesian
-* merset merfwd merrev MER: Mercator
-* ceaset ceafwd cearev CEA: cylindrical equal area
-* copset copfwd coprev COP: conic perspective
-* codset codfwd codrev COD: conic equidistant
-* coeset coefwd coerev COE: conic equal area
-* cooset coofwd coorev COO: conic orthomorphic
-* bonset bonfwd bonrev BON: Bonne
-* pcoset pcofwd pcorev PCO: polyconic
-* glsset glsfwd glsrev GLS: Sanson-Flamsteed (global sinusoidal)
-* parset parfwd parrev PAR: parabolic
-* aitset aitfwd aitrev AIT: Hammer-Aitoff
-* molset molfwd molrev MOL: Mollweide
-* cscset cscfwd cscrev CSC: COBE quadrilateralized spherical cube
-* qscset qscfwd qscrev QSC: quadrilateralized spherical cube
-* tscset tscfwd tscrev TSC: tangential spherical cube
-*
-*
-* Initialization routine; *set()
-* ------------------------------
-* Initializes members of a prjprm data structure which hold intermediate
-* values. Note that this routine need not be called directly; it will be
-* invoked by prjfwd() and prjrev() if the "flag" structure member is
-* anything other than a predefined magic value.
-*
-* Given and/or returned:
-* prj prjprm* Projection parameters (see below).
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid projection parameters.
-*
-* Forward transformation; *fwd()
-* -----------------------------
-* Compute (x,y) coordinates in the plane of projection from native spherical
-* coordinates (phi,theta).
-*
-* Given:
-* phi, const double
-* theta Longitude and latitude of the projected point in
-* native spherical coordinates, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (see below).
-*
-* Returned:
-* x,y double* Projected coordinates.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid projection parameters.
-* 2: Invalid value of (phi,theta).
-*
-* Reverse transformation; *rev()
-* -----------------------------
-* Compute native spherical coordinates (phi,theta) from (x,y) coordinates in
-* the plane of projection.
-*
-* Given:
-* x,y const double
-* Projected coordinates.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (see below).
-*
-* Returned:
-* phi, double* Longitude and latitude of the projected point in
-* theta native spherical coordinates, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid projection parameters.
-* 2: Invalid value of (x,y).
-*
-* Projection parameters
-* ---------------------
-* The prjprm struct consists of the following:
-*
-* int flag
-* This flag must be set to zero whenever any of p[10] or r0 are set
-* or changed. This signals the initialization routine to recompute
-* intermediaries.
-* double r0
-* r0; The radius of the generating sphere for the projection, a linear
-* scaling parameter. If this is zero, it will be reset to the default
-* value of 180/pi (the value for FITS WCS).
-* double p[10]
-* The first 10 elements contain projection parameters which correspond
-* to the PROJPn keywords in FITS, so p[0] is PROJP0, and p[9] is
-* PROJP9. Many projections use p[1] (PROJP1) and some also use p[2]
-* (PROJP2). ZPN is the only projection which uses any of the others.
-*
-* The remaining members of the prjprm struct are maintained by the
-* initialization routines and should not be modified. This is done for the
-* sake of efficiency and to allow an arbitrary number of contexts to be
-* maintained simultaneously.
-*
-* int n
-* double w[10]
-* Intermediate values derived from the projection parameters.
-*
-* Usage of the p[] array as it applies to each projection is described in
-* the prologue to each trio of projection routines.
-*
-* Argument checking
-* -----------------
-* Forward routines:
-*
-* The values of phi and theta (the native longitude and latitude)
-* normally lie in the range [-180,180] for phi, and [-90,90] for theta.
-* However, all forward projections will accept any value of phi and will
-* not normalize it.
-*
-* Although many of the forward projections will accept values of theta
-* outside the range [-90,90] such latitudes are not meaningful and should
-* normally be marked as an error. However, in the interests of
-* efficiency, the forward projection routines do not check for this,
-* although they do check for any invalid values of theta within the
-* range [-90,90].
-*
-* Reverse routines:
-*
-* Error checking on the projected coordinates (x,y) is limited to that
-* required to ascertain whether a solution exists. Where a solution does
-* exist no check is made that the value of phi and theta obtained lie
-* within the ranges [-180,180] for phi, and [-90,90] for theta.
-*
-* Accuracy
-* --------
-* Closure to a precision of at least 1.0-10 degree of longitude and latitude
-* has been verified for typical projection parameters on the 1 degree grid
-* of native longitude and latitude (to within 5 degrees of any latitude
-* where the projection may diverge).
-*
-* Notwithstanding this, absolutely no claim is made for the accuracy or
-* reliability of these routines. They are supplied as is, with no warranty
-* of fitness for any purpose.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: proj.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "proj.h"
-
-/* Map error number to error message for each function. */
-const char *prjset_errmsg[] = {
- 0,
- "Invalid projection parameters"};
-
-const char *prjfwd_errmsg[] = {
- 0,
- "Invalid projection parameters",
- "Invalid value of (phi,theta)"};
-
-const char *prjrev_errmsg[] = {
- 0,
- "Invalid projection parameters",
- "Invalid value of (x,y)"};
-
-
-#ifdef COPYSIGN
-#define copysign(X, Y) ((Y) < 0.0 ? -fabs(X) : fabs(X))
-#endif
-
-
-/*============================================================================
-* AZP: zenithal/azimuthal perspective projection.
-*
-* Given:
-* prj->p[1] AZP distance parameter, mu in units of r0.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(mu+1)
-* prj->w[1] 1/prj->w[0]
-*===========================================================================*/
-
-int azpset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = prj->r0*(prj->p[1] + 1.0);
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int azpfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r, s;
-
- if (prj->flag != PRJSET) {
- if (azpset(prj)) return 1;
- }
-
- s = prj->p[1] + sind(theta);
- if (s == 0.0) {
- return 2;
- }
-
- r = prj->w[0]*cosd(theta)/s;
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int azprev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r, rho, s;
- const double tol = 1.0e-13;
-
- if (prj->flag != PRJSET) {
- if (azpset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
-
- rho = r*prj->w[1];
- s = rho*prj->p[1]/sqrt(rho*rho+1.0);
- if (fabs(s) > 1.0) {
- if (fabs(s) > 1.0+tol) {
- return 2;
- }
- *theta = atan2d(1.0,rho) - copysign(90.0,s);
- } else {
- *theta = atan2d(1.0,rho) - asind(s);
- }
-
- return 0;
-}
-
-/*============================================================================
-* TAN: gnomonic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-*===========================================================================*/
-
-int tanset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tanfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r, s;
-
- if (prj->flag != PRJSET) {
- if(tanset(prj)) return 1;
- }
-
- s = sind(theta);
- if (s == 0.0) return 2;
-
- r = prj->r0*cosd(theta)/s;
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tanrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (tanset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
- *theta = atan2d(prj->r0, r);
-
- return 0;
-}
-
-/*============================================================================
-* SIN: orthographic/synthesis projection.
-*
-* Given:
-* prj->p[1:2] SIN obliqueness parameters, alpha and beta.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 1/r0
-* prj->w[1] alpha**2 + beta**2
-* prj->w[2] 2*(alpha**2 + beta**2)
-* prj->w[3] 2*(alpha**2 + beta**2 + 1)
-* prj->w[4] alpha**2 + beta**2 - 1
-*===========================================================================*/
-
-int sinset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = 1.0/prj->r0;
- prj->w[1] = prj->p[1]*prj->p[1] + prj->p[2]*prj->p[2];
- prj->w[2] = 2.0*prj->w[1];
- prj->w[3] = prj->w[2] + 2.0;
- prj->w[4] = prj->w[1] - 1.0;
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int sinfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double cthe, t, z;
-
- if (prj->flag != PRJSET) {
- if (sinset(prj)) return 1;
- }
-
- t = (90.0 - fabs(theta))*D2R;
- if (t < 1.0e-5) {
- if (theta > 0.0) {
- z = -t*t/2.0;
- } else {
- z = 2.0 - t*t/2.0;
- }
- cthe = t;
- } else {
- z = sind(theta) - 1.0;
- cthe = cosd(theta);
- }
-
- *x = prj->r0*(cthe*sind(phi) + prj->p[1]*z);
- *y = -prj->r0*(cthe*cosd(phi) + prj->p[2]*z);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int sinrev (x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- const double tol = 1.0e-13;
- double a, b, c, d, r2, sth, sth1, sth2, sxy, x0, xp, y0, yp, z;
-
- if (prj->flag != PRJSET) {
- if (sinset(prj)) return 1;
- }
-
- /* Compute intermediaries. */
- x0 = x*prj->w[0];
- y0 = y*prj->w[0];
- r2 = x0*x0 + y0*y0;
-
- if (prj->w[1] == 0.0) {
- /* Orthographic projection. */
- if (r2 != 0.0) {
- *phi = atan2d(x0, -y0);
- } else {
- *phi = 0.0;
- }
-
- if (r2 < 0.5) {
- *theta = acosd(sqrt(r2));
- } else if (r2 <= 1.0) {
- *theta = asind(sqrt(1.0 - r2));
- } else {
- return 2;
- }
-
- } else {
- /* "Synthesis" projection. */
- if (r2 < 1.0e-10) {
- /* Use small angle formula. */
- z = -r2/2.0;
- *theta = 90.0 - R2D*sqrt(r2/(1.0 - x0*prj->p[1] + y0*prj->p[2]));
-
- } else {
- sxy = 2.0*(prj->p[1]*x0 - prj->p[2]*y0);
-
- a = prj->w[3];
- b = -(sxy + prj->w[2]);
- c = r2 + sxy + prj->w[4];
- d = b*b - 2.0*a*c;
-
- /* Check for a solution. */
- if (d < 0.0) {
- return 2;
- }
- d = sqrt(d);
-
- /* Choose solution closest to pole. */
- sth1 = (-b + d)/a;
- sth2 = (-b - d)/a;
- sth = (sth1>sth2) ? sth1 : sth2;
- if (sth > 1.0) {
- if (sth-1.0 < tol) {
- sth = 1.0;
- } else {
- sth = (sth1<sth2) ? sth1 : sth2;
- }
- }
- if (sth > 1.0 || sth < -1.0) {
- return 2;
- }
-
- *theta = asind(sth);
- z = sth - 1.0;
- }
-
- xp = -y0 - prj->p[2]*z;
- yp = x0 - prj->p[1]*z;
- if (xp == 0.0 && yp == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(yp,xp);
- }
- }
-
- return 0;
-}
-
-/*============================================================================
-* STG: stereographic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 2*r0
-* prj->w[1] 1/(2*r0)
-*===========================================================================*/
-
-int stgset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 360.0/PI;
- prj->w[1] = PI/360.0;
- } else {
- prj->w[0] = 2.0*prj->r0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int stgfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r, s;
-
- if (prj->flag != PRJSET) {
- if (stgset(prj)) return 1;
- }
-
- s = 1.0 + sind(theta);
- if (s == 0.0) {
- return 2;
- }
-
- r = prj->w[0]*cosd(theta)/s;
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int stgrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (stgset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
- *theta = 90.0 - 2.0*atand(r*prj->w[1]);
-
- return 0;
-}
-
-/*============================================================================
-* ARC: zenithal/azimuthal equidistant projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int arcset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int arcfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (arcset(prj)) return 1;
- }
-
- r = prj->w[0]*(90.0 - theta);
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int arcrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (arcset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
- *theta = 90.0 - r*prj->w[1];
-
- return 0;
-}
-
-/*============================================================================
-* ZPN: zenithal/azimuthal polynomial projection.
-*
-* Given:
-* prj->p[0:9] Polynomial coefficients.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->n Degree of the polynomial, N.
-* prj->w[0] Co-latitude of the first point of inflection (N > 2).
-* prj->w[1] Radius of the first point of inflection (N > 2).
-*===========================================================================*/
-
-int zpnset(prj)
-
-struct prjprm *prj;
-
-{
- int i, j, k;
- double d, d1, d2, r, zd, zd1, zd2;
- const double tol = 1.0e-13;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- /* Find the highest non-zero coefficient. */
- for (k = 9; k >= 0 && prj->p[k] == 0.0; k--);
- if (k < 0) return 1;
-
- prj->n = k;
-
- if (k >= 3) {
- /* Find the point of inflection closest to the pole. */
- zd1 = 0.0;
- d1 = prj->p[1];
- if (d1 <= 0.0) {
- return 1;
- }
-
- /* Find the point where the derivative first goes negative. */
- for (i = 0; i < 180; i++) {
- zd2 = i*D2R;
- d2 = 0.0;
- for (j = k; j > 0; j--) {
- d2 = d2*zd2 + j*prj->p[j];
- }
-
- if (d2 <= 0.0) break;
- zd1 = zd2;
- d1 = d2;
- }
-
- if (i == 180) {
- /* No negative derivative -> no point of inflection. */
- zd = PI;
- } else {
- /* Find where the derivative is zero. */
- for (i = 1; i <= 10; i++) {
- zd = zd1 - d1*(zd2-zd1)/(d2-d1);
-
- d = 0.0;
- for (j = k; j > 0; j--) {
- d = d*zd + j*prj->p[j];
- }
-
- if (fabs(d) < tol) break;
-
- if (d < 0.0) {
- zd2 = zd;
- d2 = d;
- } else {
- zd1 = zd;
- d1 = d;
- }
- }
- }
-
- r = 0.0;
- for (j = k; j >= 0; j--) {
- r = r*zd + prj->p[j];
- }
- prj->w[0] = zd;
- prj->w[1] = r;
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zpnfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int j;
- double r, s;
-
- if (prj->flag != PRJSET) {
- if (zpnset(prj)) return 1;
- }
-
- s = (90.0 - theta)*D2R;
- r = 0.0;
- for (j = 9; j >= 0; j--) {
- r = r*s + prj->p[j];
- }
- r = prj->r0*r;
-
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zpnrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int i, j, k;
- double a, b, c, d, lambda, r, r1, r2, rt, zd, zd1, zd2;
- const double tol = 1.0e-13;
-
- if (prj->flag != PRJSET) {
- if (zpnset(prj)) return 1;
- }
-
- k = prj->n;
-
- r = sqrt(x*x + y*y)/prj->r0;
-
- if (k < 1) {
- /* Constant - no solution. */
- return 1;
- } else if (k == 1) {
- /* Linear. */
- zd = (r - prj->p[0])/prj->p[1];
- } else if (k == 2) {
- /* Quadratic. */
- a = prj->p[2];
- b = prj->p[1];
- c = prj->p[0] - r;
-
- d = b*b - 4.0*a*c;
- if (d < 0.0) {
- return 2;
- }
- d = sqrt(d);
-
- /* Choose solution closest to pole. */
- zd1 = (-b + d)/(2.0*a);
- zd2 = (-b - d)/(2.0*a);
- zd = (zd1<zd2) ? zd1 : zd2;
- if (zd < -tol) zd = (zd1>zd2) ? zd1 : zd2;
- if (zd < 0.0) {
- if (zd < -tol) {
- return 2;
- }
- zd = 0.0;
- } else if (zd > PI) {
- if (zd > PI+tol) {
- return 2;
- }
- zd = PI;
- }
- } else {
- /* Higher order - solve iteratively. */
- zd1 = 0.0;
- r1 = prj->p[0];
- zd2 = prj->w[0];
- r2 = prj->w[1];
-
- if (r < r1) {
- if (r < r1-tol) {
- return 2;
- }
- zd = zd1;
- } else if (r > r2) {
- if (r > r2+tol) {
- return 2;
- }
- zd = zd2;
- } else {
- /* Disect the interval. */
- for (j = 0; j < 100; j++) {
- lambda = (r2 - r)/(r2 - r1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
-
- zd = zd2 - lambda*(zd2 - zd1);
-
- rt = 0.0;
- for (i = k; i >= 0; i--) {
- rt = (rt * zd) + prj->p[i];
- }
-
- if (rt < r) {
- if (r-rt < tol) break;
- r1 = rt;
- zd1 = zd;
- } else {
- if (rt-r < tol) break;
- r2 = rt;
- zd2 = zd;
- }
-
- if (fabs(zd2-zd1) < tol) break;
- }
- }
- }
-
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
- *theta = 90.0 - zd*R2D;
-
- return 0;
-}
-
-/*============================================================================
-* ZEA: zenithal/azimuthal equal area projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 2*r0
-* prj->w[1] 1/(2*r0)
-*===========================================================================*/
-
-int zeaset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 360.0/PI;
- prj->w[1] = PI/360.0;
- } else {
- prj->w[0] = 2.0*prj->r0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zeafwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double r;
-
- if (prj->flag != PRJSET) {
- if (zeaset(prj)) return 1;
- }
-
- r = prj->w[0]*sind((90.0 - theta)/2.0);
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int zearev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double r;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (zeaset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y);
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
-
- if (fabs(r-prj->w[0]) < tol) {
- *theta = -90.0;
- } else {
- *theta = 90.0 - 2.0*asind(r*prj->w[1]);
- }
-
- return 0;
-}
-
-/*============================================================================
-* AIR: Airy's projection.
-*
-* Given:
-* prj->p[1] Latitude theta_b within which the error is minimized,
-* in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] ln(cos(xi_b))/tan(xi_b)**2, where xi_b = (90-theta_b)/2
-* prj->w[1] 1/2 - prj->w[0]
-* prj->w[2] r0*prj->w[1]
-* prj->w[3] tol, cutoff for using small angle approximation, in
-* radians.
-* prj->w[4] prj->w[1]*tol
-* prj->w[5] (180/pi)/prj->w[1]
-*===========================================================================*/
-
-int airset(prj)
-
-struct prjprm *prj;
-
-{
- const double tol = 1.0e-4;
- double cxi;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- if (prj->p[1] == 90.0) {
- prj->w[0] = -0.5;
- prj->w[1] = 1.0;
- } else if (prj->p[1] > -90.0) {
- cxi = cosd((90.0 - prj->p[1])/2.0);
- prj->w[0] = log(cxi)*(cxi*cxi)/(1.0-cxi*cxi);
- prj->w[1] = 0.5 - prj->w[0];
- } else {
- return 1;
- }
-
- prj->w[2] = prj->r0 * prj->w[1];
- prj->w[3] = tol;
- prj->w[4] = prj->w[1]*tol;
- prj->w[5] = R2D/prj->w[1];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int airfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double cxi, r, txi, xi;
-
- if (prj->flag != PRJSET) {
- if (airset(prj)) return 1;
- }
-
- if (theta == 90.0) {
- r = 0.0;
- } else if (theta > -90.0) {
- xi = D2R*(90.0 - theta)/2.0;
- if (xi < prj->w[3]) {
- r = xi*prj->w[2];
- } else {
- cxi = cosd((90.0 - theta)/2.0);
- txi = sqrt(1.0-cxi*cxi)/cxi;
- r = -prj->r0*(log(cxi)/txi + prj->w[0]*txi);
- }
- } else {
- return 2;
- }
-
- *x = r*sind(phi);
- *y = -r*cosd(phi);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int airrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int j;
- double cxi, lambda, r, r1, r2, rt, txi, x1, x2, xi;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (airset(prj)) return 1;
- }
-
- r = sqrt(x*x + y*y)/prj->r0;
-
- if (r == 0.0) {
- xi = 0.0;
- } else if (r < prj->w[4]) {
- xi = r*prj->w[5];
- } else {
- /* Find a solution interval. */
- x1 = 1.0;
- r1 = 0.0;
- for (j = 0; j < 30; j++) {
- x2 = x1/2.0;
- txi = sqrt(1.0-x2*x2)/x2;
- r2 = -(log(x2)/txi + prj->w[0]*txi);
-
- if (r2 >= r) break;
- x1 = x2;
- r1 = r2;
- }
- if (j == 30) return 2;
-
- for (j = 0; j < 100; j++) {
- /* Weighted division of the interval. */
- lambda = (r2-r)/(r2-r1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
- cxi = x2 - lambda*(x2-x1);
-
- txi = sqrt(1.0-cxi*cxi)/cxi;
- rt = -(log(cxi)/txi + prj->w[0]*txi);
-
- if (rt < r) {
- if (r-rt < tol) break;
- r1 = rt;
- x1 = cxi;
- } else {
- if (rt-r < tol) break;
- r2 = rt;
- x2 = cxi;
- }
- }
- if (j == 100) return 2;
-
- xi = acosd(cxi);
- }
-
- if (r == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(x, -y);
- }
- *theta = 90.0 - 2.0*xi;
-
- return 0;
-}
-
-/*============================================================================
-* CYP: cylindrical perspective projection.
-*
-* Given:
-* prj->p[1] Distance of point of projection from the centre of the
-* generating sphere, mu, in units of r0.
-* prj->p[2] Radius of the cylinder of projection, lambda, in units
-* of r0.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*lambda*(pi/180)
-* prj->w[1] (180/pi)/(r0*lambda)
-* prj->w[2] r0*(mu + lambda)
-* prj->w[3] 1/(r0*(mu + lambda))
-*===========================================================================*/
-
-int cypset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
-
- prj->w[0] = prj->p[2];
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[2] = R2D*(prj->p[1] + prj->p[2]);
- if (prj->w[2] == 0.0) {
- return 1;
- }
-
- prj->w[3] = 1.0/prj->w[2];
- } else {
- prj->w[0] = prj->r0*prj->p[2]*D2R;
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[2] = prj->r0*(prj->p[1] + prj->p[2]);
- if (prj->w[2] == 0.0) {
- return 1;
- }
-
- prj->w[3] = 1.0/prj->w[2];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cypfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double s;
-
- if (prj->flag != PRJSET) {
- if (cypset(prj)) return 1;
- }
-
- s = prj->p[1] + cosd(theta);
- if (s == 0.0) {
- return 2;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->w[2]*sind(theta)/s;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cyprev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double eta;
-
- if (prj->flag != PRJSET) {
- if (cypset(prj)) return 1;
- }
-
- *phi = x*prj->w[1];
- eta = y*prj->w[3];
- *theta = atan2d(eta,1.0) + asind(eta*prj->p[1]/sqrt(eta*eta+1.0));
-
- return 0;
-}
-
-/*============================================================================
-* CAR: Cartesian projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int carset(prj)
-
-struct prjprm *prj;
-
-{
-
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int carfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (carset(prj)) return 1;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->w[0]*theta;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int carrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- if (prj->flag != PRJSET) {
- if (carset(prj)) return 1;
- }
-
- *phi = prj->w[1]*x;
- *theta = prj->w[1]*y;
-
- return 0;
-}
-
-/*============================================================================
-* MER: Mercator's projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int merset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int merfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (merset(prj)) return 1;
- }
-
- if (theta <= -90.0 || theta >= 90.0) {
- return 2;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->r0*log(tand((90.0+theta)/2.0));
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int merrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- if (prj->flag != PRJSET) {
- if (merset(prj)) return 1;
- }
-
- *phi = x*prj->w[1];
- *theta = 2.0*atand(exp(y/prj->r0)) - 90.0;
-
- return 0;
-}
-
-/*============================================================================
-* CEA: cylindrical equal area projection.
-*
-* Given:
-* prj->p[1] Square of the cosine of the latitude at which the
-* projection is conformal, lambda.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-* prj->w[2] r0/lambda
-* prj->w[3] lambda/r0
-*===========================================================================*/
-
-int ceaset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- if (prj->p[1] <= 0.0 || prj->p[1] > 1.0) {
- return 1;
- }
- prj->w[2] = prj->r0/prj->p[1];
- prj->w[3] = prj->p[1]/prj->r0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = R2D/prj->r0;
- if (prj->p[1] <= 0.0 || prj->p[1] > 1.0) {
- return 1;
- }
- prj->w[2] = prj->r0/prj->p[1];
- prj->w[3] = prj->p[1]/prj->r0;
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int ceafwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (ceaset(prj)) return 1;
- }
-
- *x = prj->w[0]*phi;
- *y = prj->w[2]*sind(theta);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cearev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s;
-
- if (prj->flag != PRJSET) {
- if (ceaset(prj)) return 1;
- }
-
- s = y*prj->w[3];
- if (fabs(s) > 1.0) {
- return 2;
- }
-
- *phi = x*prj->w[1];
- *theta = asind(s);
-
- return 0;
-}
-
-/*============================================================================
-* COP: conic perspective projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = sin(sigma)
-* prj->w[1] 1/C
-* prj->w[2] Y0 = r0*cos(delta)*cot(sigma)
-* prj->w[3] r0*cos(delta)
-* prj->w[4] 1/(r0*cos(delta)
-* prj->w[5] cot(sigma)
-*===========================================================================*/
-
-int copset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = sind(prj->p[1]);
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[3] = prj->r0*cosd(prj->p[2]);
- if (prj->w[3] == 0.0) {
- return 1;
- }
-
- prj->w[4] = 1.0/prj->w[3];
- prj->w[5] = 1.0/tand(prj->p[1]);
-
- prj->w[2] = prj->w[3]*prj->w[5];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int copfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (copset(prj)) return 1;
- }
-
- a = prj->w[0]*phi;
- r = prj->w[2] - prj->w[3]*tand(theta-prj->p[1]);
-
- *x = r*sind(a);
- *y = prj->w[2] - r*cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coprev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r;
-
- if (prj->flag != PRJSET) {
- if (copset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- *theta = prj->p[1] + atand(prj->w[5] - r*prj->w[4]);
-
- return 0;
-}
-
-/*============================================================================
-* COD: conic equidistant projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = r0*sin(sigma)*sin(delta)/delta
-* prj->w[1] 1/C
-* prj->w[2] Y0 = delta*cot(delta)*cot(sigma)
-* prj->w[3] Y0 + sigma
-*===========================================================================*/
-
-int codset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- if (prj->p[2] == 0.0) {
- prj->w[0] = prj->r0*sind(prj->p[1])*D2R;
- } else {
- prj->w[0] = prj->r0*sind(prj->p[1])*sind(prj->p[2])/prj->p[2];
- }
-
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
- prj->w[2] = prj->r0*cosd(prj->p[2])*cosd(prj->p[1])/prj->w[0];
- prj->w[3] = prj->w[2] + prj->p[1];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int codfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (codset(prj)) return 1;
- }
-
- a = prj->w[0]*phi;
- r = prj->w[3] - theta;
-
- *x = r*sind(a);
- *y = prj->w[2] - r*cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int codrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r;
-
- if (prj->flag != PRJSET) {
- if (codset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- *theta = prj->w[3] - r;
-
- return 0;
-}
-
-/*============================================================================
-* COE: conic equal area projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = (sin(theta1) + sin(theta2))/2
-* prj->w[1] 1/C
-* prj->w[2] Y0 = chi*sqrt(psi - 2C*sind(sigma))
-* prj->w[3] chi = r0/C
-* prj->w[4] psi = 1 + sin(theta1)*sin(theta2)
-* prj->w[5] 2C
-* prj->w[6] (1 + sin(theta1)*sin(theta2))*(r0/C)**2
-* prj->w[7] C/(2*r0**2)
-* prj->w[8] chi*sqrt(psi + 2C)
-*===========================================================================*/
-
-int coeset(prj)
-
-struct prjprm *prj;
-
-{
- double theta1, theta2;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- theta1 = prj->p[1] - prj->p[2];
- theta2 = prj->p[1] + prj->p[2];
-
- prj->w[0] = (sind(theta1) + sind(theta2))/2.0;
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[3] = prj->r0/prj->w[0];
- prj->w[4] = 1.0 + sind(theta1)*sind(theta2);
- prj->w[5] = 2.0*prj->w[0];
- prj->w[6] = prj->w[3]*prj->w[3]*prj->w[4];
- prj->w[7] = 1.0/(2.0*prj->r0*prj->w[3]);
- prj->w[8] = prj->w[3]*sqrt(prj->w[4] + prj->w[5]);
-
- prj->w[2] = prj->w[3]*sqrt(prj->w[4] - prj->w[5]*sind(prj->p[1]));
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coefwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (coeset(prj)) return 1;
- }
-
- a = phi*prj->w[0];
- if (theta == -90.0) {
- r = prj->w[8];
- } else {
- r = prj->w[3]*sqrt(prj->w[4] - prj->w[5]*sind(theta));
- }
-
- *x = r*sind(a);
- *y = prj->w[2] - r*cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coerev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r, w;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (coeset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- if (fabs(r - prj->w[8]) < tol) {
- *theta = -90.0;
- } else {
- w = (prj->w[6] - r*r)*prj->w[7];
- if (fabs(w) > 1.0) {
- if (fabs(w-1.0) < tol) {
- *theta = 90.0;
- } else if (fabs(w+1.0) < tol) {
- *theta = -90.0;
- } else {
- return 2;
- }
- } else {
- *theta = asind(w);
- }
- }
-
- return 0;
-}
-
-/*============================================================================
-* COO: conic orthomorphic projection.
-*
-* Given:
-* prj->p[1] sigma = (theta2+theta1)/2
-* prj->p[2] delta = (theta2-theta1)/2, where theta1 and theta2 are the
-* latitudes of the standard parallels, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] C = ln(cos(theta2)/cos(theta1))/ln(tan(tau2)/tan(tau1))
-* where tau1 = (90 - theta1)/2
-* tau2 = (90 - theta2)/2
-* prj->w[1] 1/C
-* prj->w[2] Y0 = psi*tan((90-sigma)/2)**C
-* prj->w[3] psi = (r0*cos(theta1)/C)/tan(tau1)**C
-* prj->w[4] 1/psi
-*===========================================================================*/
-
-int cooset(prj)
-
-struct prjprm *prj;
-
-{
- double cos1, cos2, tan1, tan2, theta1, theta2;
-
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- theta1 = prj->p[1] - prj->p[2];
- theta2 = prj->p[1] + prj->p[2];
-
- tan1 = tand((90.0 - theta1)/2.0);
- cos1 = cosd(theta1);
-
- if (theta1 == theta2) {
- prj->w[0] = sind(theta1);
- } else {
- tan2 = tand((90.0 - theta2)/2.0);
- cos2 = cosd(theta2);
- prj->w[0] = log(cos2/cos1)/log(tan2/tan1);
- }
- if (prj->w[0] == 0.0) {
- return 1;
- }
-
- prj->w[1] = 1.0/prj->w[0];
-
- prj->w[3] = prj->r0*(cos1/prj->w[0])/pow(tan1,prj->w[0]);
- if (prj->w[3] == 0.0) {
- return 1;
- }
- prj->w[2] = prj->w[3]*pow(tand((90.0 - prj->p[1])/2.0),prj->w[0]);
- prj->w[4] = 1.0/prj->w[3];
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coofwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->flag != PRJSET) {
- if (cooset(prj)) return 1;
- }
-
- a = prj->w[0]*phi;
- if (theta == -90.0) {
- if (prj->w[0] < 0.0) {
- r = 0.0;
- } else {
- return 2;
- }
- } else {
- r = prj->w[3]*pow(tand((90.0 - theta)/2.0),prj->w[0]);
- }
-
- *x = r*sind(a);
- *y = prj->w[2] - r*cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int coorev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, r;
-
- if (prj->flag != PRJSET) {
- if (cooset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = atan2d(x/r, dy/r);
- }
-
- *phi = a*prj->w[1];
- if (r == 0.0) {
- if (prj->w[0] < 0.0) {
- *theta = -90.0;
- } else {
- return 2;
- }
- } else {
- *theta = 90.0 - 2.0*atand(pow(r*prj->w[4],prj->w[1]));
- }
-
- return 0;
-}
-
-/*============================================================================
-* BON: Bonne's projection.
-*
-* Given:
-* prj->p[1] Bonne conformal latitude, theta1, in degrees.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[1] r0*pi/180
-* prj->w[2] Y0 = r0*cot(theta1) + theta1
-*===========================================================================*/
-
-int bonset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[1] = 1.0;
- prj->w[2] = prj->r0*cosd(prj->p[1])/sind(prj->p[1]) + prj->p[1];
- } else {
- prj->w[1] = prj->r0*D2R;
- prj->w[2] = prj->r0*(cosd(prj->p[1])/sind(prj->p[1]) + prj->p[1]*D2R);
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int bonfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, r;
-
- if (prj->p[1] == 0.0) {
- /* Sanson-Flamsteed. */
- return glsfwd(phi, theta, prj, x, y);
- }
-
- if (prj->flag != PRJSET) {
- if (bonset(prj)) return 1;
- }
-
- r = prj->w[2] - theta*prj->w[1];
- a = prj->r0*phi*cosd(theta)/r;
-
- *x = r*sind(a);
- *y = prj->w[2] - r*cosd(a);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int bonrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double a, dy, costhe, r;
-
- if (prj->p[1] == 0.0) {
- /* Sanson-Flamsteed. */
- return glsrev(x, y, prj, phi, theta);
- }
-
- if (prj->flag != PRJSET) {
- if (bonset(prj)) return 1;
- }
-
- dy = prj->w[2] - y;
- r = sqrt(x*x + dy*dy);
- if (prj->p[1] < 0.0) r = -r;
-
- if (r == 0.0) {
- a = 0.0;
- } else {
- a = atan2d(x/r, dy/r);
- }
-
- *theta = (prj->w[2] - r)/prj->w[1];
- costhe = cosd(*theta);
- if (costhe == 0.0) {
- *phi = 0.0;
- } else {
- *phi = a*(r/prj->r0)/cosd(*theta);
- }
-
- return 0;
-}
-
-/*============================================================================
-* PCO: polyconic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] 1/r0
-* prj->w[2] 2*r0
-*===========================================================================*/
-
-int pcoset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- prj->w[2] = 360.0/PI;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- prj->w[2] = 2.0*prj->r0;
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int pcofwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double a, costhe, cotthe, sinthe;
-
- if (prj->flag != PRJSET) {
- if (pcoset(prj)) return 1;
- }
-
- costhe = cosd(theta);
- sinthe = sind(theta);
- a = phi*sinthe;
-
- if (sinthe == 0.0) {
- *x = prj->w[0]*phi;
- *y = 0.0;
- } else {
- cotthe = costhe/sinthe;
- *x = prj->r0*cotthe*sind(a);
- *y = prj->r0*(cotthe*(1.0 - cosd(a)) + theta*D2R);
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int pcorev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int j;
- double f, fneg, fpos, lambda, tanthe, theneg, thepos, w, xp, xx, ymthe, yp;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (pcoset(prj)) return 1;
- }
-
- w = fabs(y*prj->w[1]);
- if (w < tol) {
- *phi = x*prj->w[1];
- *theta = 0.0;
- } else if (fabs(w-90.0) < tol) {
- *phi = 0.0;
- *theta = copysign(90.0,y);
- } else {
- /* Iterative solution using weighted division of the interval. */
- if (y > 0.0) {
- thepos = 90.0;
- } else {
- thepos = -90.0;
- }
- theneg = 0.0;
-
- xx = x*x;
- ymthe = y - prj->w[0]*thepos;
- fpos = xx + ymthe*ymthe;
- fneg = -999.0;
-
- for (j = 0; j < 64; j++) {
- if (fneg < -100.0) {
- /* Equal division of the interval. */
- *theta = (thepos+theneg)/2.0;
- } else {
- /* Weighted division of the interval. */
- lambda = fpos/(fpos-fneg);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
- *theta = thepos - lambda*(thepos-theneg);
- }
-
- /* Compute the residue. */
- ymthe = y - prj->w[0]*(*theta);
- tanthe = tand(*theta);
- f = xx + ymthe*(ymthe - prj->w[2]/tanthe);
-
- /* Check for convergence. */
- if (fabs(f) < tol) break;
- if (fabs(thepos-theneg) < tol) break;
-
- /* Redefine the interval. */
- if (f > 0.0) {
- thepos = *theta;
- fpos = f;
- } else {
- theneg = *theta;
- fneg = f;
- }
- }
-
- xp = prj->r0 - ymthe*tanthe;
- yp = x*tanthe;
- if (xp == 0.0 && yp == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(yp, xp)/sind(*theta);
- }
- }
-
- return 0;
-}
-
-/*============================================================================
-* GLS: Sanson-Flamsteed ("global sinusoid") projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-*===========================================================================*/
-
-int glsset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int glsfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- if (prj->flag != PRJSET) {
- if (glsset(prj)) return 1;
- }
-
- *x = prj->w[0]*phi*cosd(theta);
- *y = prj->w[0]*theta;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int glsrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double w;
-
- if (prj->flag != PRJSET) {
- if (glsset(prj)) return 1;
- }
-
- w = cos(y/prj->r0);
- if (w == 0.0) {
- *phi = 0.0;
- } else {
- *phi = x*prj->w[1]/cos(y/prj->r0);
- }
- *theta = y*prj->w[1];
-
- return 0;
-}
-
-/*============================================================================
-* PAR: parabolic projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/180)
-* prj->w[1] (180/pi)/r0
-* prj->w[2] pi*r0
-* prj->w[3] 1/(pi*r0)
-*===========================================================================*/
-
-int parset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 1.0;
- prj->w[1] = 1.0;
- prj->w[2] = 180.0;
- prj->w[3] = 1.0/prj->w[2];
- } else {
- prj->w[0] = prj->r0*D2R;
- prj->w[1] = 1.0/prj->w[0];
- prj->w[2] = PI*prj->r0;
- prj->w[3] = 1.0/prj->w[2];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int parfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double s;
-
- if (prj->flag != PRJSET) {
- if (parset(prj)) return 1;
- }
-
- s = sind(theta/3.0);
- *x = prj->w[0]*phi*(1.0 - 4.0*s*s);
- *y = prj->w[2]*s;
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int parrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s, t;
-
- if (prj->flag != PRJSET) {
- if (parset(prj)) return 1;
- }
-
- s = y*prj->w[3];
- if (s > 1.0 || s < -1.0) {
- return 2;
- }
-
- t = 1.0 - 4.0*s*s;
- if (t == 0.0) {
- if (x == 0.0) {
- *phi = 0.0;
- } else {
- return 2;
- }
- } else {
- *phi = prj->w[1]*x/t;
- }
-
- *theta = 3.0*asind(s);
-
- return 0;
-}
-
-/*============================================================================
-* AIT: Hammer-Aitoff projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] 2*r0**2
-* prj->w[1] 1/(2*r0)**2
-* prj->w[2] 1/(4*r0)**2
-* prj->w[3] 1/(2*r0)
-*===========================================================================*/
-
-int aitset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = 2.0*prj->r0*prj->r0;
- prj->w[1] = 1.0/(2.0*prj->w[0]);
- prj->w[2] = prj->w[1]/4.0;
- prj->w[3] = 1.0/(2.0*prj->r0);
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int aitfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- double costhe, w;
-
- if (prj->flag != PRJSET) {
- if (aitset(prj)) return 1;
- }
-
- costhe = cosd(theta);
- w = sqrt(prj->w[0]/(1.0 + costhe*cosd(phi/2.0)));
- *x = 2.0*w*costhe*sind(phi/2.0);
- *y = w*sind(theta);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int aitrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s, u, xp, yp, z;
-
- if (prj->flag != PRJSET) {
- if (aitset(prj)) return 1;
- }
-
- u = 1.0 - x*x*prj->w[2] - y*y*prj->w[1];
- if (u < 0.0) {
- return 2;
- }
- z = sqrt(u);
- s = z*y/prj->r0;
- if (s < -1.0 || s > 1.0) {
- return 2;
- }
-
- xp = 2.0*z*z - 1.0;
- yp = z*x*prj->w[3];
- if (xp == 0.0 && yp == 0.0) {
- *phi = 0.0;
- } else {
- *phi = 2.0*atan2d(yp, xp);
- }
- *theta = asind(s);
-
- return 0;
-}
-
-/*============================================================================
-* MOL: Mollweide's projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] sqrt(2)*r0
-* prj->w[1] sqrt(2)*r0/90
-* prj->w[2] 1/(sqrt(2)*r0)
-* prj->w[3] 90/r0
-*===========================================================================*/
-
-int molset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) prj->r0 = R2D;
-
- prj->w[0] = SQRT2*prj->r0;
- prj->w[1] = prj->w[0]/90.0;
- prj->w[2] = 1.0/prj->w[0];
- prj->w[3] = 90.0/prj->r0;
- prj->w[4] = 2.0/PI;
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int molfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int j;
- double alpha, resid, u, v, v0, v1;
- const double tol = 1.0e-13;
-
- if (prj->flag != PRJSET) {
- if (molset(prj)) return 1;
- }
-
- if (fabs(theta) == 90.0) {
- *x = 0.0;
- *y = copysign(prj->w[0],theta);
- } else if (theta == 0.0) {
- *x = prj->w[1]*phi;
- *y = 0.0;
- } else {
- u = PI*sind(theta);
- v0 = -PI;
- v1 = PI;
- v = u;
- for (j = 0; j < 100; j++) {
- resid = (v - u) + sin(v);
- if (resid < 0.0) {
- if (resid > -tol) break;
- v0 = v;
- } else {
- if (resid < tol) break;
- v1 = v;
- }
- v = (v0 + v1)/2.0;
- }
-
- alpha = v/2.0;
- *x = prj->w[1]*phi*cos(alpha);
- *y = prj->w[0]*sin(alpha);
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int molrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double s, y0, z;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (molset(prj)) return 1;
- }
-
- y0 = y/prj->r0;
- s = 2.0 - y0*y0;
- if (s <= tol) {
- if (s < -tol) {
- return 2;
- }
- s = 0.0;
-
- if (fabs(x) > tol) {
- return 2;
- }
- *phi = 0.0;
- } else {
- s = sqrt(s);
- *phi = prj->w[3]*x/s;
- }
-
- z = y*prj->w[2];
- if (fabs(z) > 1.0) {
- if (fabs(z) > 1.0+tol) {
- return 2;
- }
- z = copysign(1.0,z) + y0*s/PI;
- } else {
- z = asin(z)*prj->w[4] + y0*s/PI;
- }
-
- if (fabs(z) > 1.0) {
- if (fabs(z) > 1.0+tol) {
- return 2;
- }
- z = copysign(1.0,z);
- }
-
- *theta = asind(z);
-
- return 0;
-}
-
-/*============================================================================
-* CSC: COBE quadrilateralized spherical cube projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/4)
-* prj->w[1] (4/pi)/r0
-*===========================================================================*/
-
-int cscset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 45.0;
- prj->w[1] = 1.0/45.0;
- } else {
- prj->w[0] = prj->r0*PI/4.0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cscfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int face;
- double costhe, eta, l, m, n, rho, xi;
- const float tol = 1.0e-7;
-
- float a, a2, a2b2, a4, ab, b, b2, b4, ca2, cb2, x0, xf, y0, yf;
- const float gstar = 1.37484847732;
- const float mm = 0.004869491981;
- const float gamma = -0.13161671474;
- const float omega1 = -0.159596235474;
- const float d0 = 0.0759196200467;
- const float d1 = -0.0217762490699;
- const float c00 = 0.141189631152;
- const float c10 = 0.0809701286525;
- const float c01 = -0.281528535557;
- const float c11 = 0.15384112876;
- const float c20 = -0.178251207466;
- const float c02 = 0.106959469314;
-
- if (prj->flag != PRJSET) {
- if (cscset(prj)) return 1;
- }
-
- costhe = cosd(theta);
- l = costhe*cosd(phi);
- m = costhe*sind(phi);
- n = sind(theta);
-
- face = 0;
- rho = n;
- if (l > rho) {
- face = 1;
- rho = l;
- }
- if (m > rho) {
- face = 2;
- rho = m;
- }
- if (-l > rho) {
- face = 3;
- rho = -l;
- }
- if (-m > rho) {
- face = 4;
- rho = -m;
- }
- if (-n > rho) {
- face = 5;
- rho = -n;
- }
-
- if (face == 0) {
- xi = m;
- eta = -l;
- x0 = 0.0;
- y0 = 2.0;
- } else if (face == 1) {
- xi = m;
- eta = n;
- x0 = 0.0;
- y0 = 0.0;
- } else if (face == 2) {
- xi = -l;
- eta = n;
- x0 = 2.0;
- y0 = 0.0;
- } else if (face == 3) {
- xi = -m;
- eta = n;
- x0 = 4.0;
- y0 = 0.0;
- } else if (face == 4) {
- xi = l;
- eta = n;
- x0 = 6.0;
- y0 = 0.0;
- } else if (face == 5) {
- xi = m;
- eta = l;
- x0 = 0.0;
- y0 = -2.0;
- }
-
- a = xi/rho;
- b = eta/rho;
-
- a2 = a*a;
- b2 = b*b;
- ca2 = 1.0 - a2;
- cb2 = 1.0 - b2;
-
- /* Avoid floating underflows. */
- ab = fabs(a*b);
- a4 = (a2 > 1.0e-16) ? a2*a2 : 0.0;
- b4 = (b2 > 1.0e-16) ? b2*b2 : 0.0;
- a2b2 = (ab > 1.0e-16) ? a2*b2 : 0.0;
-
- xf = a*(a2 + ca2*(gstar + b2*(gamma*ca2 + mm*a2 +
- cb2*(c00 + c10*a2 + c01*b2 + c11*a2b2 + c20*a4 + c02*b4)) +
- a2*(omega1 - ca2*(d0 + d1*a2))));
- yf = b*(b2 + cb2*(gstar + a2*(gamma*cb2 + mm*b2 +
- ca2*(c00 + c10*b2 + c01*a2 + c11*a2b2 + c20*b4 + c02*a4)) +
- b2*(omega1 - cb2*(d0 + d1*b2))));
-
- if (fabs(xf) > 1.0) {
- if (fabs(xf) > 1.0+tol) {
- return 2;
- }
- xf = copysign(1.0,xf);
- }
- if (fabs(yf) > 1.0) {
- if (fabs(yf) > 1.0+tol) {
- return 2;
- }
- yf = copysign(1.0,yf);
- }
-
- *x = prj->w[0]*(x0 + xf);
- *y = prj->w[0]*(y0 + yf);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int cscrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int face;
- double l, m, n;
-
- float a, b, xf, xx, yf, yy, z0, z1, z2, z3, z4, z5, z6;
- const float p00 = -0.27292696;
- const float p10 = -0.07629969;
- const float p20 = -0.22797056;
- const float p30 = 0.54852384;
- const float p40 = -0.62930065;
- const float p50 = 0.25795794;
- const float p60 = 0.02584375;
- const float p01 = -0.02819452;
- const float p11 = -0.01471565;
- const float p21 = 0.48051509;
- const float p31 = -1.74114454;
- const float p41 = 1.71547508;
- const float p51 = -0.53022337;
- const float p02 = 0.27058160;
- const float p12 = -0.56800938;
- const float p22 = 0.30803317;
- const float p32 = 0.98938102;
- const float p42 = -0.83180469;
- const float p03 = -0.60441560;
- const float p13 = 1.50880086;
- const float p23 = -0.93678576;
- const float p33 = 0.08693841;
- const float p04 = 0.93412077;
- const float p14 = -1.41601920;
- const float p24 = 0.33887446;
- const float p05 = -0.63915306;
- const float p15 = 0.52032238;
- const float p06 = 0.14381585;
-
- if (prj->flag != PRJSET) {
- if (cscset(prj)) return 1;
- }
-
- xf = x*prj->w[1];
- yf = y*prj->w[1];
-
- /* Determine the face. */
- if (xf > 7.0) {
- return 2;
- } else if (xf > 5.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 4;
- xf = xf - 6.0;
- } else if (xf > 3.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 3;
- xf = xf - 4.0;
- } else if (xf > 1.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 2;
- xf = xf - 2.0;
- } else if (xf < -1.0) {
- return 2;
- } else if (yf > 1.0) {
- if (yf > 3.0) return 2;
- face = 0;
- yf = yf - 2.0;
- } else if (yf < -1.0) {
- if (yf < -3.0) return 2;
- face = 5;
- yf = yf + 2.0;
- } else {
- face = 1;
- }
-
- xx = xf*xf;
- yy = yf*yf;
-
- z0 = p00 + xx*(p10 + xx*(p20 + xx*(p30 + xx*(p40 + xx*(p50 + xx*(p60))))));
- z1 = p01 + xx*(p11 + xx*(p21 + xx*(p31 + xx*(p41 + xx*(p51)))));
- z2 = p02 + xx*(p12 + xx*(p22 + xx*(p32 + xx*(p42))));
- z3 = p03 + xx*(p13 + xx*(p23 + xx*(p33)));
- z4 = p04 + xx*(p14 + xx*(p24));
- z5 = p05 + xx*(p15);
- z6 = p06;
-
- a = z0 + yy*(z1 + yy*(z2 + yy*(z3 + yy*(z4 + yy*(z5 + yy*z6)))));
- a = xf + xf*(1.0 - xx)*a;
-
- z0 = p00 + yy*(p10 + yy*(p20 + yy*(p30 + yy*(p40 + yy*(p50 + yy*(p60))))));
- z1 = p01 + yy*(p11 + yy*(p21 + yy*(p31 + yy*(p41 + yy*(p51)))));
- z2 = p02 + yy*(p12 + yy*(p22 + yy*(p32 + yy*(p42))));
- z3 = p03 + yy*(p13 + yy*(p23 + yy*(p33)));
- z4 = p04 + yy*(p14 + yy*(p24));
- z5 = p05 + yy*(p15);
- z6 = p06;
-
- b = z0 + xx*(z1 + xx*(z2 + xx*(z3 + xx*(z4 + xx*(z5 + xx*z6)))));
- b = yf + yf*(1.0 - yy)*b;
-
- if (face == 0) {
- n = 1.0/sqrt(a*a + b*b + 1.0);
- l = -b*n;
- m = a*n;
- } else if (face == 1) {
- l = 1.0/sqrt(a*a + b*b + 1.0);
- m = a*l;
- n = b*l;
- } else if (face == 2) {
- m = 1.0/sqrt(a*a + b*b + 1.0);
- l = -a*m;
- n = b*m;
- } else if (face == 3) {
- l = -1.0/sqrt(a*a + b*b + 1.0);
- m = a*l;
- n = -b*l;
- } else if (face == 4) {
- m = -1.0/sqrt(a*a + b*b + 1.0);
- l = -a*m;
- n = -b*m;
- } else if (face == 5) {
- n = -1.0/sqrt(a*a + b*b + 1.0);
- l = -b*n;
- m = -a*n;
- }
-
- if (l == 0.0 && m == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(m, l);
- }
- *theta = asind(n);
-
- return 0;
-}
-
-/*============================================================================
-* QSC: quadrilaterilized spherical cube projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/4)
-* prj->w[1] (4/pi)/r0
-*===========================================================================*/
-
-int qscset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 45.0;
- prj->w[1] = 1.0/45.0;
- } else {
- prj->w[0] = prj->r0*PI/4.0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int qscfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int face;
- double chi, costhe, eta, l, m, n, p, psi, rho, rhu, t, x0, xf, xi, y0, yf;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (qscset(prj)) return 1;
- }
-
- if (fabs(theta) == 90.0) {
- *x = 0.0;
- *y = copysign(2.0*prj->w[0],theta);
- return 0;
- }
-
- costhe = cosd(theta);
- l = costhe*cosd(phi);
- m = costhe*sind(phi);
- n = sind(theta);
-
- face = 0;
- rho = n;
- if (l > rho) {
- face = 1;
- rho = l;
- }
- if (m > rho) {
- face = 2;
- rho = m;
- }
- if (-l > rho) {
- face = 3;
- rho = -l;
- }
- if (-m > rho) {
- face = 4;
- rho = -m;
- }
- if (-n > rho) {
- face = 5;
- rho = -n;
- }
-
- rhu = 1.0 - rho;
-
- if (face == 0) {
- xi = m;
- eta = -l;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = (90.0 - theta)*D2R;
- rhu = t*t/2.0;
- }
- x0 = 0.0;
- y0 = 2.0;
- } else if (face == 1) {
- xi = m;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p < -180.0) p += 360.0;
- if (p > 180.0) p -= 360.0;
- p *= D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 0.0;
- y0 = 0.0;
- } else if (face == 2) {
- xi = -l;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p < -180.0) p += 360.0;
- p = (90.0 - p)*D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 2.0;
- y0 = 0.0;
- } else if (face == 3) {
- xi = -m;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p < 0.0) p += 360.0;
- p = (180.0 - p)*D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 4.0;
- y0 = 0.0;
- } else if (face == 4) {
- xi = l;
- eta = n;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = theta*D2R;
- p = fmod(phi,360.0);
- if (p > 180.0) p -= 360.0;
- p *= (90.0 + p)*D2R;
- rhu = (p*p + t*t)/2.0;
- }
- x0 = 6;
- y0 = 0.0;
- } else if (face == 5) {
- xi = m;
- eta = l;
- if (rhu < 1.0e-8) {
- /* Small angle formula. */
- t = (90.0 + theta)*D2R;
- rhu = t*t/2.0;
- }
- x0 = 0.0;
- y0 = -2;
- }
-
- if (xi == 0.0 && eta == 0.0) {
- xf = 0.0;
- yf = 0.0;
- } else if (-xi >= fabs(eta)) {
- psi = eta/xi;
- chi = 1.0 + psi*psi;
- xf = -sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- yf = (xf/15.0)*(atand(psi) - asind(psi/sqrt(chi+chi)));
- } else if (xi >= fabs(eta)) {
- psi = eta/xi;
- chi = 1.0 + psi*psi;
- xf = sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- yf = (xf/15.0)*(atand(psi) - asind(psi/sqrt(chi+chi)));
- } else if (-eta > fabs(xi)) {
- psi = xi/eta;
- chi = 1.0 + psi*psi;
- yf = -sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- xf = (yf/15.0)*(atand(psi) - asind(psi/sqrt(chi+chi)));
- } else if (eta > fabs(xi)) {
- psi = xi/eta;
- chi = 1.0 + psi*psi;
- yf = sqrt(rhu/(1.0-1.0/sqrt(1.0+chi)));
- xf = (yf/15.0)*(atand(psi) - asind(psi/sqrt(chi+chi)));
- }
-
- if (fabs(xf) > 1.0) {
- if (fabs(xf) > 1.0+tol) {
- return 2;
- }
- xf = copysign(1.0,xf);
- }
- if (fabs(yf) > 1.0) {
- if (fabs(yf) > 1.0+tol) {
- return 2;
- }
- yf = copysign(1.0,yf);
- }
-
- *x = prj->w[0]*(xf + x0);
- *y = prj->w[0]*(yf + y0);
-
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int qscrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- int direct, face;
- double chi, l, m, n, psi, rho, rhu, xf, yf, w;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (qscset(prj)) return 1;
- }
-
- xf = x*prj->w[1];
- yf = y*prj->w[1];
-
- /* Determine the face. */
- if (xf > 7.0) {
- return 2;
- } else if (xf > 5.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 4;
- xf = xf - 6.0;
- } else if (xf > 3.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 3;
- xf = xf - 4.0;
- } else if (xf > 1.0) {
- if (fabs(yf) > 1.0) return 2;
- face = 2;
- xf = xf - 2.0;
- } else if (xf < -1.0) {
- return 2;
- } else if (yf > 1.0) {
- if (yf > 3.0) return 2;
- face = 0;
- yf = yf - 2.0;
- } else if (yf < -1.0) {
- if (yf < -3.0) return 2;
- face = 5;
- yf = yf + 2.0;
- } else {
- face = 1;
- }
-
- direct = (fabs(xf) > fabs(yf));
- if (direct) {
- if (xf == 0.0) {
- psi = 0.0;
- chi = 1.0;
- rho = 1.0;
- rhu = 0.0;
- } else {
- w = 15.0*yf/xf;
- psi = sind(w)/(cosd(w) - SQRT2INV);
- chi = 1.0 + psi*psi;
- rhu = xf*xf*(1.0 - 1.0/sqrt(1.0 + chi));
- rho = 1.0 - rhu;
- }
- } else {
- if (yf == 0.0) {
- psi = 0.0;
- chi = 1.0;
- rho = 1.0;
- rhu = 0.0;
- } else {
- w = 15.0*xf/yf;
- psi = sind(w)/(cosd(w) - SQRT2INV);
- chi = 1.0 + psi*psi;
- rhu = yf*yf*(1.0 - 1.0/sqrt(1.0 + chi));
- rho = 1.0 - rhu;
- }
- }
-
- if (rho < -1.0) {
- if (rho < -1.0-tol) {
- return 2;
- }
-
- rho = -1.0;
- rhu = 2.0;
- w = 0.0;
- } else {
- w = sqrt(rhu*(2.0-rhu)/chi);
- }
-
- if (face == 0) {
- n = rho;
- if (direct) {
- m = w;
- if (xf < 0.0) m = -m;
- l = -m*psi;
- } else {
- l = w;
- if (yf > 0.0) l = -l;
- m = -l*psi;
- }
- } else if (face == 1) {
- l = rho;
- if (direct) {
- m = w;
- if (xf < 0.0) m = -m;
- n = m*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- m = n*psi;
- }
- } else if (face == 2) {
- m = rho;
- if (direct) {
- l = w;
- if (xf > 0.0) l = -l;
- n = -l*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- l = -n*psi;
- }
- } else if (face == 3) {
- l = -rho;
- if (direct) {
- m = w;
- if (xf > 0.0) m = -m;
- n = -m*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- m = -n*psi;
- }
- } else if (face == 4) {
- m = -rho;
- if (direct) {
- l = w;
- if (xf < 0.0) l = -l;
- n = l*psi;
- } else {
- n = w;
- if (yf < 0.0) n = -n;
- l = n*psi;
- }
- } else if (face == 5) {
- n = -rho;
- if (direct) {
- m = w;
- if (xf < 0.0) m = -m;
- l = m*psi;
- } else {
- l = w;
- if (yf < 0.0) l = -l;
- m = l*psi;
- }
- }
-
- if (l == 0.0 && m == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(m, l);
- }
- *theta = asind(n);
-
- return 0;
-}
-
-/*============================================================================
-* TSC: tangential spherical cube projection.
-*
-* Given and/or returned:
-* prj->r0 r0; reset to 180/pi if 0.
-* prj->w[0] r0*(pi/4)
-* prj->w[1] (4/pi)/r0
-*===========================================================================*/
-
-int tscset(prj)
-
-struct prjprm *prj;
-
-{
- if (prj->r0 == 0.0) {
- prj->r0 = R2D;
- prj->w[0] = 45.0;
- prj->w[1] = 1.0/45.0;
- } else {
- prj->w[0] = prj->r0*PI/4.0;
- prj->w[1] = 1.0/prj->w[0];
- }
-
- prj->flag = PRJSET;
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tscfwd(phi, theta, prj, x, y)
-
-const double phi, theta;
-struct prjprm *prj;
-double *x, *y;
-
-{
- int face;
- double costhe, l, m, n, rho, x0, xf, y0, yf;
- const double tol = 1.0e-12;
-
- if (prj->flag != PRJSET) {
- if (tscset(prj)) return 1;
- }
-
- costhe = cosd(theta);
- l = costhe*cosd(phi);
- m = costhe*sind(phi);
- n = sind(theta);
-
- face = 0;
- rho = n;
- if (l > rho) {
- face = 1;
- rho = l;
- }
- if (m > rho) {
- face = 2;
- rho = m;
- }
- if (-l > rho) {
- face = 3;
- rho = -l;
- }
- if (-m > rho) {
- face = 4;
- rho = -m;
- }
- if (-n > rho) {
- face = 5;
- rho = -n;
- }
-
- if (face == 0) {
- xf = m/rho;
- yf = -l/rho;
- x0 = 0.0;
- y0 = 2.0;
- } else if (face == 1) {
- xf = m/rho;
- yf = n/rho;
- x0 = 0.0;
- y0 = 0.0;
- } else if (face == 2) {
- xf = -l/rho;
- yf = n/rho;
- x0 = 2.0;
- y0 = 0.0;
- } else if (face == 3) {
- xf = -m/rho;
- yf = n/rho;
- x0 = 4.0;
- y0 = 0.0;
- } else if (face == 4) {
- xf = l/rho;
- yf = n/rho;
- x0 = 6.0;
- y0 = 0.0;
- } else if (face == 5) {
- xf = m/rho;
- yf = l/rho;
- x0 = 0.0;
- y0 = -2.0;
- }
-
- if (fabs(xf) > 1.0) {
- if (fabs(xf) > 1.0+tol) {
- return 2;
- }
- xf = copysign(1.0,xf);
- }
- if (fabs(yf) > 1.0) {
- if (fabs(yf) > 1.0+tol) {
- return 2;
- }
- yf = copysign(1.0,yf);
- }
-
- *x = prj->w[0]*(xf + x0);
- *y = prj->w[0]*(yf + y0);
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int tscrev(x, y, prj, phi, theta)
-
-const double x, y;
-struct prjprm *prj;
-double *phi, *theta;
-
-{
- double l, m, n, xf, yf;
-
- if (prj->flag != PRJSET) {
- if (tscset(prj)) return 1;
- }
-
- xf = x*prj->w[1];
- yf = y*prj->w[1];
-
- /* Determine the face. */
- if (xf > 7.0) {
- return 2;
- } else if (xf > 5.0) {
- if (fabs(yf) > 1.0) return 2;
- /* face = 4 */
- xf = xf - 6.0;
- m = -1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -m*xf;
- n = -m*yf;
- } else if (xf > 3.0) {
- if (fabs(yf) > 1.0) return 2;
- /* face = 3 */
- xf = xf - 4.0;
- l = -1.0/sqrt(1.0 + xf*xf + yf*yf);
- m = l*xf;
- n = -l*yf;
- } else if (xf > 1.0) {
- if (fabs(yf) > 1.0) return 2;
- /* face = 2 */
- xf = xf - 2.0;
- m = 1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -m*xf;
- n = m*yf;
- } else if (xf < -1.0) {
- return 2;
- } else if (yf > 1.0) {
- if (yf > 3.0) return 2;
- /* face = 0 */
- yf = yf - 2.0;
- n = 1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -n*yf;
- m = n*xf;
- } else if (yf < -1.0) {
- if (yf < -3.0) return 2;
- /* face = 5 */
- yf = yf + 2.0;
- n = -1.0/sqrt(1.0 + xf*xf + yf*yf);
- l = -n*yf;
- m = -n*xf;
- } else {
- /* face = 1 */
- l = 1.0/sqrt(1.0 + xf*xf + yf*yf);
- m = l*xf;
- n = l*yf;
- }
-
- if (l == 0.0 && m == 0.0) {
- *phi = 0.0;
- } else {
- *phi = atan2d(m, l);
- }
- *theta = asind(n);
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/proj.h b/external/sextractor/source/wcs/wcs_ori/proj.h
deleted file mode 100644
index 447e7c9..0000000
--- a/external/sextractor/source/wcs/wcs_ori/proj.h
+++ /dev/null
@@ -1,138 +0,0 @@
-#ifndef PROJ
-#define PROJ
-
-#include "wcstrig.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct prjprm {
- int flag;
- int n;
- double r0;
- double p[10];
- double w[10];
-};
-
-#if __STDC__ || defined(__cplusplus)
- int azpset(struct prjprm *);
- int azpfwd(const double, const double, struct prjprm *, double *, double *);
- int azprev(const double, const double, struct prjprm *, double *, double *);
- int tanset(struct prjprm *);
- int tanfwd(const double, const double, struct prjprm *, double *, double *);
- int tanrev(const double, const double, struct prjprm *, double *, double *);
- int sinset(struct prjprm *);
- int sinfwd(const double, const double, struct prjprm *, double *, double *);
- int sinrev(const double, const double, struct prjprm *, double *, double *);
- int stgset(struct prjprm *);
- int stgfwd(const double, const double, struct prjprm *, double *, double *);
- int stgrev(const double, const double, struct prjprm *, double *, double *);
- int arcset(struct prjprm *);
- int arcfwd(const double, const double, struct prjprm *, double *, double *);
- int arcrev(const double, const double, struct prjprm *, double *, double *);
- int zpnset(struct prjprm *);
- int zpnfwd(const double, const double, struct prjprm *, double *, double *);
- int zpnrev(const double, const double, struct prjprm *, double *, double *);
- int zeaset(struct prjprm *);
- int zeafwd(const double, const double, struct prjprm *, double *, double *);
- int zearev(const double, const double, struct prjprm *, double *, double *);
- int airset(struct prjprm *);
- int airfwd(const double, const double, struct prjprm *, double *, double *);
- int airrev(const double, const double, struct prjprm *, double *, double *);
- int cypset(struct prjprm *);
- int cypfwd(const double, const double, struct prjprm *, double *, double *);
- int cyprev(const double, const double, struct prjprm *, double *, double *);
- int carset(struct prjprm *);
- int carfwd(const double, const double, struct prjprm *, double *, double *);
- int carrev(const double, const double, struct prjprm *, double *, double *);
- int merset(struct prjprm *);
- int merfwd(const double, const double, struct prjprm *, double *, double *);
- int merrev(const double, const double, struct prjprm *, double *, double *);
- int ceaset(struct prjprm *);
- int ceafwd(const double, const double, struct prjprm *, double *, double *);
- int cearev(const double, const double, struct prjprm *, double *, double *);
- int copset(struct prjprm *);
- int copfwd(const double, const double, struct prjprm *, double *, double *);
- int coprev(const double, const double, struct prjprm *, double *, double *);
- int codset(struct prjprm *);
- int codfwd(const double, const double, struct prjprm *, double *, double *);
- int codrev(const double, const double, struct prjprm *, double *, double *);
- int coeset(struct prjprm *);
- int coefwd(const double, const double, struct prjprm *, double *, double *);
- int coerev(const double, const double, struct prjprm *, double *, double *);
- int cooset(struct prjprm *);
- int coofwd(const double, const double, struct prjprm *, double *, double *);
- int coorev(const double, const double, struct prjprm *, double *, double *);
- int bonset(struct prjprm *);
- int bonfwd(const double, const double, struct prjprm *, double *, double *);
- int bonrev(const double, const double, struct prjprm *, double *, double *);
- int pcoset(struct prjprm *);
- int pcofwd(const double, const double, struct prjprm *, double *, double *);
- int pcorev(const double, const double, struct prjprm *, double *, double *);
- int glsset(struct prjprm *);
- int glsfwd(const double, const double, struct prjprm *, double *, double *);
- int glsrev(const double, const double, struct prjprm *, double *, double *);
- int parset(struct prjprm *);
- int parfwd(const double, const double, struct prjprm *, double *, double *);
- int parrev(const double, const double, struct prjprm *, double *, double *);
- int aitset(struct prjprm *);
- int aitfwd(const double, const double, struct prjprm *, double *, double *);
- int aitrev(const double, const double, struct prjprm *, double *, double *);
- int molset(struct prjprm *);
- int molfwd(const double, const double, struct prjprm *, double *, double *);
- int molrev(const double, const double, struct prjprm *, double *, double *);
- int cscset(struct prjprm *);
- int cscfwd(const double, const double, struct prjprm *, double *, double *);
- int cscrev(const double, const double, struct prjprm *, double *, double *);
- int qscset(struct prjprm *);
- int qscfwd(const double, const double, struct prjprm *, double *, double *);
- int qscrev(const double, const double, struct prjprm *, double *, double *);
- int tscset(struct prjprm *);
- int tscfwd(const double, const double, struct prjprm *, double *, double *);
- int tscrev(const double, const double, struct prjprm *, double *, double *);
-#else
- int azpset(), azpfwd(), azprev();
- int tanset(), tanfwd(), tanrev();
- int sinset(), sinfwd(), sinrev();
- int stgset(), stgfwd(), stgrev();
- int arcset(), arcfwd(), arcrev();
- int zpnset(), zpnfwd(), zpnrev();
- int zeaset(), zeafwd(), zearev();
- int airset(), airfwd(), airrev();
- int cypset(), cypfwd(), cyprev();
- int carset(), carfwd(), carrev();
- int merset(), merfwd(), merrev();
- int ceaset(), ceafwd(), cearev();
- int copset(), copfwd(), coprev();
- int codset(), codfwd(), codrev();
- int coeset(), coefwd(), coerev();
- int cooset(), coofwd(), coorev();
- int bonset(), bonfwd(), bonrev();
- int pcoset(), pcofwd(), pcorev();
- int glsset(), glsfwd(), glsrev();
- int parset(), parfwd(), parrev();
- int aitset(), aitfwd(), aitrev();
- int molset(), molfwd(), molrev();
- int cscset(), cscfwd(), cscrev();
- int qscset(), qscfwd(), qscrev();
- int tscset(), tscfwd(), tscrev();
-#endif
-
-extern const char *prjset_errmsg[];
-extern const char *prjfwd_errmsg[];
-extern const char *prjrev_errmsg[];
-
-#define PI 3.141592653589793238462643
-#define D2R PI/180.0
-#define R2D 180.0/PI
-#define SQRT2 1.4142135623730950488
-#define SQRT2INV 1.0/SQRT2
-
-#define PRJSET 137
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* PROJ */
diff --git a/external/sextractor/source/wcs/wcs_ori/sph.c b/external/sextractor/source/wcs/wcs_ori/sph.c
deleted file mode 100644
index 54b1d86..0000000
--- a/external/sextractor/source/wcs/wcs_ori/sph.c
+++ /dev/null
@@ -1,222 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995, Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines for the spherical coordinate transformations used by the FITS
-* "World Coordinate System" (WCS) convention.
-*
-* Summary of routines
-* -------------------
-* The spherical coordinate transformations are implemented via separate
-* functions for the transformation in each direction.
-*
-* Forward transformation; sphfwd()
-* --------------------------------
-* Transform celestial coordinates to the native coordinates of a projection.
-*
-* Given:
-* lng,lat double Celestial longitude and latitude, in degrees.
-* eul[5] double Euler angles for the transformation:
-* 0: Celestial longitude of the native pole, in
-* degrees.
-* 1: Celestial colatitude of the native pole, or
-* native colatitude of the celestial pole, in
-* degrees.
-* 2: Native longitude of the celestial pole, in
-* degrees.
-* 3: cos(eul[1])
-* 4: sin(eul[1])
-*
-* Returned:
-* phi, double Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-*
-* Reverse transformation; sphrev()
-* --------------------------------
-* Transform native coordinates of a projection to celestial coordinates.
-*
-* Given:
-* phi, double Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-* eul[5] double Euler angles for the transformation:
-* 0: Celestial longitude of the native pole, in
-* degrees.
-* 1: Celestial colatitude of the native pole, or
-* native colatitude of the celestial pole, in
-* degrees.
-* 2: Native longitude of the celestial pole, in
-* degrees.
-* 3: cos(eul[1])
-* 4: sin(eul[1])
-*
-* Returned:
-* lng,lat double Celestial longitude and latitude, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: sph.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "wcstrig.h"
-
-#ifndef __STDC__
-#ifndef const
-#define const
-#endif
-#endif
-
-#ifdef COPYSIGN
-#define copysign(X, Y) ((Y) < 0.0 ? -fabs(X) : fabs(X))
-#endif
-
-const double tol = 1.0e-5;
-
-int sphfwd (lng, lat, eul, phi, theta)
-
-const double lat, lng, eul[5];
-double *phi, *theta;
-
-{
- double coslat, coslng, dlng, dphi, sinlat, sinlng, x, y, z;
-
- coslat = cosd(lat);
- sinlat = sind(lat);
-
- dlng = lng - eul[0];
- coslng = cosd(dlng);
- sinlng = sind(dlng);
-
- /* Compute the native longitude. */
- x = sinlat*eul[4] - coslat*eul[3]*coslng;
- if (fabs(x) < tol) {
- /* Rearrange formula to reduce roundoff errors. */
- x = -cosd(lat+eul[1]) + coslat*eul[3]*(1.0 - coslng);
- }
- y = -coslat*sinlng;
- if (x != 0.0 || y != 0.0) {
- dphi = atan2d(y, x);
- } else {
- /* Change of origin of longitude. */
- dphi = dlng - 180.0;
- }
- *phi = eul[2] + dphi;
-
- /* Normalize the native longitude. */
- if (*phi > 180.0) {
- *phi -= 360.0;
- } else if (*phi < -180.0) {
- *phi += 360.0;
- }
-
- /* Compute the native latitude. */
- if (fmod(dlng,180.0) == 0.0) {
- *theta = lat + coslng*eul[1];
- if (*theta > 90.0) *theta = 180.0 - *theta;
- if (*theta < -90.0) *theta = -180.0 - *theta;
- } else {
- z = sinlat*eul[3] + coslat*eul[4]*coslng;
- if (fabs(z) > 0.99) {
- /* Use an alternative formula for greater numerical accuracy. */
- *theta = copysign(acosd(sqrt(x*x+y*y)), z);
- } else {
- *theta = asind(z);
- }
- }
-
- return 0;
-}
-
-/*-----------------------------------------------------------------------*/
-
-int sphrev (phi, theta, eul, lng, lat)
-
-const double phi, theta, eul[5];
-double *lng, *lat;
-
-{
- double cosphi, costhe, dlng, dphi, sinphi, sinthe, x, y, z;
-
- costhe = cosd(theta);
- sinthe = sind(theta);
-
- dphi = phi - eul[2];
- cosphi = cosd(dphi);
- sinphi = sind(dphi);
-
- /* Compute the celestial longitude. */
- x = sinthe*eul[4] - costhe*eul[3]*cosphi;
- if (fabs(x) < tol) {
- /* Rearrange formula to reduce roundoff errors. */
- x = -cosd(theta+eul[1]) + costhe*eul[3]*(1.0 - cosphi);
- }
- y = -costhe*sinphi;
- if (x != 0.0 || y != 0.0) {
- dlng = atan2d(y, x);
- } else {
- /* Change of origin of longitude. */
- dlng = dphi + 180.0;
- }
- *lng = eul[0] + dlng;
-
- /* Normalize the celestial longitude. */
- if (eul[0] >= 0.0) {
- if (*lng < 0.0) *lng += 360.0;
- } else {
- if (*lng > 0.0) *lng -= 360.0;
- }
-
- if (*lng > 360.0) {
- *lng -= 360.0;
- } else if (*lng < -360.0) {
- *lng += 360.0;
- }
-
- /* Compute the celestial latitude. */
- if (fmod(dphi,180.0) == 0.0) {
- *lat = theta + cosphi*eul[1];
- if (*lat > 90.0) *lat = 180.0 - *lat;
- if (*lat < -90.0) *lat = -180.0 - *lat;
- } else {
- z = sinthe*eul[3] + costhe*eul[4]*cosphi;
- if (fabs(z) > 0.99) {
- /* Use an alternative formula for greater numerical accuracy. */
- *lat = copysign(acosd(sqrt(x*x+y*y)), z);
- } else {
- *lat = asind(z);
- }
- }
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/tcel.c b/external/sextractor/source/wcs/wcs_ori/tcel.c
deleted file mode 100644
index dc684e9..0000000
--- a/external/sextractor/source/wcs/wcs_ori/tcel.c
+++ /dev/null
@@ -1,313 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tcel tests the spherical projection driver routines supplied with WCSLIB
-* by drawing native and celestial coordinate grids for Bonne's projection.
-*
-* $Id: tcel.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "cel.h"
-
-main()
-
-{
- char pcode[4], text[80];
- int ci, ilat, ilng, j;
- int crval1, crval2, latpole, longpole;
- float xr[512], yr[512];
- double lat, lng, phi, theta, x, y;
- struct celprm native, celestial;
- struct prjprm prj;
-
-
- printf("\nTesting WCSLIB celestial coordinate transformation routines\n");
- printf("-----------------------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of celset error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, celset_errmsg[j]);
- }
-
- printf("\nList of celfwd error codes:\n");
- for (j = 1; j <=3 ; j++) {
- printf(" %d: %s.\n", j, celfwd_errmsg[j]);
- }
-
- printf("\nList of celrev error codes:\n");
- for (j = 1; j <=3 ; j++) {
- printf(" %d: %s.\n", j, celrev_errmsg[j]);
- }
-
- printf("\n");
-
-
- /* Set up Bonne's projection with conformal latitude at +35. */
- strcpy(pcode, "BON");
-
- /* Initialize projection parameters. */
- prj.flag = 0;
- prj.r0 = 0.0;
- for (j = 0; j < 10; prj.p[j++] = 0.0);
- prj.p[1] = 35.0;
-
- /* Set reference angles for the native grid. */
- native.ref[0] = 0.0;
- native.ref[1] = 0.0;
- native.ref[2] = 999.0;
- native.ref[3] = 999.0;
- native.flag = 0;
-
- /* PGPLOT initialization. */
- strcpy(text, "/xwindow");
- pgbeg(0, text, 1, 1);
-
- /* Define pen colours. */
- pgscr(0, 0.00, 0.00, 0.00);
- pgscr(1, 1.00, 1.00, 0.00);
- pgscr(2, 1.00, 1.00, 1.00);
- pgscr(3, 0.50, 0.50, 0.80);
- pgscr(4, 0.80, 0.50, 0.50);
- pgscr(5, 0.80, 0.80, 0.80);
- pgscr(6, 0.50, 0.50, 0.80);
- pgscr(7, 0.80, 0.50, 0.50);
- pgscr(8, 0.30, 0.50, 0.30);
-
- /* Define PGPLOT viewport. */
- pgenv(-180.0, 180.0, -90.0, 140.0, 1, -2);
-
- /* Loop over CRVAL1, CRVAL2, LONGPOLE, and LATPOLE. */
- crval1 = -180;
- for (crval2 = -90; crval2 <= 90; crval2 += 45) {
- for (longpole = -180; longpole <= 180; longpole += 45) {
- for (latpole = -1; latpole <= 1; latpole += 2) {
- /* For the celestial grid, set the celestial coordinates of the
- * reference point of the projection (which for Bonne's projection
- * is at the intersection of the native equator and prime
- * meridian), the native longitude of the celestial pole, and
- * extra information needed to determine the native latitude of
- * the celestial pole. These correspond to FITS keywords CRVAL1,
- * CRVAL2, LONGPOLE, and LATPOLE.
- */
- celestial.ref[0] = (double)crval1;
- celestial.ref[1] = (double)crval2;
- celestial.ref[2] = (double)longpole;
- celestial.ref[3] = (double)latpole;
- celestial.flag = 0;
-
- /* Skip invalid values of LONGPOLE. */
- if (celset(pcode, &celestial, &prj)) {
- continue;
- }
-
- /* Skip redundant values of LATPOLE. */
- if (latpole == 1 && fabs(celestial.ref[3]) < 0.1) {
- continue;
- }
-
- /* Write a descriptive title. */
- sprintf(text, "%s projection - 15 degree graticule", pcode);
- printf("\n%s\n", text);
- pgtext(-180.0, -100.0, text);
-
- sprintf(text,
- "centered on celestial coordinates (%7.2lf,%6.2lf)",
- celestial.ref[0], celestial.ref[1]);
- printf("%s\n", text);
- pgtext (-180.0, -110.0, text);
-
- sprintf(text,
- "with north celestial pole at native coordinates (%7.2lf,%7.2lf)",
- celestial.ref[2], celestial.ref[3]);
- printf("%s\n", text);
- pgtext(-180.0, -120.0, text);
-
-
- /* Draw the native coordinate grid faintly in the background. */
- pgsci(8);
-
- /* Draw native meridians of longitude. */
- for (ilng = -180; ilng <= 180; ilng += 15) {
- lng = (double)ilng;
- if (ilng == -180) lng = -179.99;
- if (ilng == 180) lng = 179.99;
-
- /* Dash the longitude of the celestial pole. */
- if ((ilng-longpole)%360 == 0) {
- pgsls(2);
- pgslw(5);
- }
-
- j = 0;
- for (ilat = -90; ilat <= 90; ilat++) {
- lat = (double)ilat;
-
- if (celfwd(pcode, lng, lat, &native, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- pgsls(1);
- pgslw(1);
- }
-
- /* Draw native parallels of latitude. */
- for (ilat = -90; ilat <= 90; ilat += 15) {
- lat = (double)ilat;
-
- j = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
- if (ilng == -180) lng = -179.99;
- if (ilng == 180) lng = 179.99;
-
- if (celfwd(pcode, lng, lat, &native, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- }
-
-
- /* Draw a colour-coded celestial coordinate grid. */
- ci = 1;
-
- /* Draw celestial meridians of longitude. */
- for (ilng = -180; ilng <= 180; ilng += 15) {
- lng = (double)ilng;
-
- if (++ci > 7) ci = 2;
- pgsci(ilng?ci:1);
-
- /* Dash the reference longitude. */
- if ((ilng-crval1)%360 == 0) {
- pgsls(2);
- pgslw(5);
- }
-
- j = 0;
- for (ilat = -90; ilat <= 90; ilat++) {
- lat = (double)ilat;
-
- if (celfwd(pcode, lng, lat, &celestial, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- /* Test for discontinuities. */
- if (j > 0) {
- if (fabs(x+xr[j-1]) > 4.0 || fabs(y-yr[j-1]) > 4.0) {
- if (j > 1) pgline(j, xr, yr);
- j = 0;
- }
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- pgsls(1);
- pgslw(1);
- }
-
- /* Draw celestial parallels of latitude. */
- ci = 1;
- for (ilat = -90; ilat <= 90; ilat += 15) {
- lat = (double)ilat;
-
- if (++ci > 7) ci = 2;
- pgsci(ilat?ci:1);
-
- /* Dash the reference latitude. */
- if (ilat == crval2) {
- pgsls(2);
- pgslw(5);
- }
-
- j = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
-
- if (celfwd(pcode, lng, lat, &celestial, &phi, &theta, &prj,
- &x, &y)) {
- continue;
- }
-
- /* Test for discontinuities. */
- if (j > 0) {
- if (fabs(x+xr[j-1]) > 4.0 || fabs(y-yr[j-1]) > 4.0) {
- if (j > 1) pgline(j, xr, yr);
- j = 0;
- }
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- pgsls(1);
- pgslw(1);
- }
-
- /* New page. */
- pgpage();
-
- /* Cycle through celestial longitudes. */
- if ((crval1 += 15) > 180) crval1 = -180;
-
- /* Skip boring celestial latitudes. */
- if (crval2 == 0) break;
- }
-
- if (crval2 == 0) break;
- }
- }
-
- pgend();
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/tlin.c b/external/sextractor/source/wcs/wcs_ori/tlin.c
deleted file mode 100644
index cfb00ae..0000000
--- a/external/sextractor/source/wcs/wcs_ori/tlin.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tlin tests the linear transformation routines supplied with WCSLIB.
-*
-* $Id: tlin.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "lin.h"
-
-double crpix[5] = {256.0, 256.0, 64.0, 128.0, 1.0};
-double pc[5][5] = {{ 1.0, 0.5, 0.0, 0.0, 0.0},
- { 0.5, 1.0, 0.0, 0.0, 0.0},
- { 0.0, 0.0, 1.0, 0.0, 0.0},
- { 0.0, 0.0, 0.0, 1.0, 0.0},
- { 0.0, 0.0, 0.0, 0.0, 1.0}};
-double cdelt[5] = { 1.2, 2.3, 3.4, 4.5, 5.6};
-double pix[5] = {303.0, 265.0, 112.4, 144.5, 28.2};
-double img[5];
-
-main()
-
-{
- int err, j;
- struct linprm lin;
-
-
- printf("\nTesting WCSLIB linear transformation routines\n");
- printf("---------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of linset error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, linset_errmsg[j]);
- }
-
- printf("\nList of linfwd error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, linfwd_errmsg[j]);
- }
-
- printf("\nList of linrev error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, linrev_errmsg[j]);
- }
-
- printf("\n\n");
-
-
- lin.flag = 0;
- lin.naxis = 5;
- lin.crpix = crpix;
- lin.pc = (double*)pc;
- lin.cdelt = cdelt;
-
- printf("pix:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", pix[j]);
- }
- printf("\n");
-
- if (err = linrev(pix, &lin, img)) {
- printf("linrev error %d\n",err);
- return 1;
- }
-
- printf("img:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", img[j]);
- }
- printf("\n");
-
- if (err = linfwd(img, &lin, pix)) {
- printf("linfwd error %d\n",err);
- return 1;
- }
-
- printf("pix:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", pix[j]);
- }
- printf("\n");
-
- if (err = linrev(pix, &lin, img)) {
- printf("linrev error %d\n",err);
- return 1;
- }
-
- printf("img:");
- for (j = 0; j < 5; j++) {
- printf("%14.8f", img[j]);
- }
- printf("\n");
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/tpgc.c b/external/sextractor/source/wcs/wcs_ori/tpgc.c
deleted file mode 100644
index 7c6d91f..0000000
--- a/external/sextractor/source/wcs/wcs_ori/tpgc.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995, Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C interfaces to FORTRAN PGPLOT routines used by the WCSLIB test programs.
-* These are provided to allow call-by-value semantics particularly in relation
-* to the use of constant arguments.
-*
-* $Id: tpgc.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-void pgbeg (unit, file, nxsub, nysub)
-
-char file[80];
-int nxsub, nysub, unit;
-
-{
- register int j;
-
- for (j = 0; j < 80; j++) {
- if (file[j] == '\0') {
- for (; j < 80; file[j++] = ' ');
- }
- }
-
- pgbeg2_(&unit, file, &nxsub, &nysub);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgend ()
-
-{
- pgend_();
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgenv (dxmin, dxmax, dymin, dymax, just, axis)
-
-int axis, just;
-double dxmax, dxmin, dymax, dymin;
-
-{
- float fxmax, fxmin, fymax, fymin;
-
- fxmax = (float)dxmax;
- fxmin = (float)dxmin;
- fymax = (float)dymax;
- fymin = (float)dymin;
- pgenv_(&fxmin, &fxmax, &fymin, &fymax, &just, &axis);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgline (n, xpts, ypts)
-
-int n;
-float xpts[], ypts[];
-
-{
- pgline_(&n, xpts, ypts);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgpage ()
-
-{
- pgpage_();
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgpt (n, xpts, ypts, symbol)
-
-int n;
-float xpts[], ypts[];
-int symbol;
-
-{
- pgpt_(&n, xpts, ypts, &symbol);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgsci (ci)
-
-int ci;
-
-{
- pgsci_(&ci);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgscr (ci, dcr, dcg, dcb)
-
-int ci;
-double dcr, dcg, dcb;
-
-{
- float fcr, fcg, fcb;
-
- fcr = (float)dcr;
- fcg = (float)dcg;
- fcb = (float)dcb;
- pgscr_(&ci, &fcr, &fcg, &fcb);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgsls (ls)
-
-int ls;
-
-{
- pgsls_(&ls);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgslw (lw)
-
-int lw;
-
-{
- pgslw_(&lw);
-}
-
-/*--------------------------------------------------------------------------*/
-
-void pgtext (dx, dy, text)
-
-char text[80];
-double dx, dy;
-
-{
- register int j;
- float fx, fy;
-
- fx = (float)dx;
- fy = (float)dy;
-
- for (j = 0; j < 80; j++) {
- if (text[j] == '\0') {
- for (; j < 80; text[j++] = ' ');
- }
- }
-
- pgtxt2_(&fx, &fy, text);
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/tproj1.c b/external/sextractor/source/wcs/wcs_ori/tproj1.c
deleted file mode 100644
index 4d499b8..0000000
--- a/external/sextractor/source/wcs/wcs_ori/tproj1.c
+++ /dev/null
@@ -1,319 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tproj1 tests forward and reverse spherical projections for closure.
-*
-* $Id: tproj1.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "proj.h"
-
-#ifndef __STDC__
-#ifndef const
-#define const
-#endif
-#endif
-
-
-main()
-
-{
- void projex();
- register int j;
- const double tol = 1.0e-10;
- struct prjprm prj;
-
- /* Uncomment the following two lines to raise SIGFPE on floating point
- * exceptions for the Sun FORTRAN compiler. This signal can be caught
- * within 'dbx' by issuing the command "catch FPE".
- */
-/* #include <floatingpoint.h> */
-/* call ieee_handler ("set", "common", SIGFPE_ABORT); */
-
-
- printf("\nTesting closure of WCSLIB spherical projection routines\n");
- printf("-------------------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of prjset error codes:\n");
- printf(" %d: %s.\n", 1, prjset_errmsg[1]);
-
- printf("\nList of prjfwd error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, prjfwd_errmsg[j]);
- }
-
- printf("\nList of prjrev error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, prjrev_errmsg[j]);
- }
-
- printf("\n\n");
-
-
- for (j = 0; j < 10; prj.p[j++] = 0.0);
-
- /* AZP: zenithal/azimuthal perspective. */
- prj.p[1] = 2.0;
- projex("AZP", azpfwd, azprev, &prj, 90, -30, tol);
-
- /* TAN: gnomonic. */
- projex("TAN", tanfwd, tanrev, &prj, 90, 5, tol);
-
- /* SIN: orthographic/synthesis. */
- prj.p[1] = 0.3;
- prj.p[2] = 1.5;
- projex("SIN", sinfwd, sinrev, &prj, 90, 60, tol);
-
- /* STG: stereographic. */
- projex("STG", stgfwd, stgrev, &prj, 90, -85, tol);
-
- /* ARC: zenithal/azimuthal equidistant. */
- projex("ARC", arcfwd, arcrev, &prj, 90, -90, tol);
-
- /* ZPN: zenithal/azimuthal polynomial. */
- prj.p[0] = 0.00000;
- prj.p[1] = 0.95000;
- prj.p[2] = -0.02500;
- prj.p[3] = -0.15833;
- prj.p[4] = 0.00208;
- prj.p[5] = 0.00792;
- prj.p[6] = -0.00007;
- prj.p[7] = -0.00019;
- prj.p[8] = 0.00000;
- prj.p[9] = 0.00000;
- projex("ZPN", zpnfwd, zpnrev, &prj, 90, 10, tol);
-
- /* ZEA: zenithal/azimuthal equal area. */
- projex("ZEA", zeafwd, zearev, &prj, 90, -90, tol);
-
- /* AIR: Airy's zenithal projection. */
- prj.p[1] = 45.0;
- projex("AIR", airfwd, airrev, &prj, 90, -85, tol);
-
- /* CYP: cylindrical perspective. */
- prj.p[1] = 3.0;
- prj.p[2] = 0.8;
- projex("CYP", cypfwd, cyprev, &prj, 90, -90, tol);
-
- /* CAR: Cartesian. */
- projex("CAR", carfwd, carrev, &prj, 90, -90, tol);
-
- /* MER: Mercator's. */
- projex("MER", merfwd, merrev, &prj, 85, -85, tol);
-
- /* CEA: cylindrical equal area. */
- prj.p[1] = 0.75;
- projex("CEA", ceafwd, cearev, &prj, 90, -90, tol);
-
- /* COP: conic perspective. */
- prj.p[1] = 60.0;
- prj.p[2] = 15.0;
- projex("COP", copfwd, coprev, &prj, 90, -25, tol);
-
- /* COD: conic equidistant. */
- prj.p[1] = -60.0;
- prj.p[2] = 15.0;
- projex("COD", codfwd, codrev, &prj, 90, -90, tol);
-
- /* COE: conic equal area. */
- prj.p[1] = 60.0;
- prj.p[2] = -15.0;
- projex("COE", coefwd, coerev, &prj, 90, -90, tol);
-
- /* COO: conic orthomorphic. */
- prj.p[1] = -60.0;
- prj.p[2] = -15.0;
- projex("COO", coofwd, coorev, &prj, 85, -90, tol);
-
- /* BON: Bonne's projection. */
- prj.p[1] = 30.0;
- projex("BON", bonfwd, bonrev, &prj, 90, -90, tol);
-
- /* PCO: polyconic. */
- projex("PCO", pcofwd, pcorev, &prj, 90, -90, tol);
-
- /* GLS: Sanson-Flamsteed (global sinusoid). */
- projex("GLS", glsfwd, glsrev, &prj, 90, -90, tol);
-
- /* PAR: parabolic. */
- projex("PAR", parfwd, parrev, &prj, 90, -90, tol);
-
- /* AIT: Hammer-Aitoff. */
- projex("AIT", aitfwd, aitrev, &prj, 90, -90, tol);
-
- /* MOL: Mollweide's projection. */
- projex("MOL", molfwd, molrev, &prj, 90, -90, tol);
-
- /* CSC: COBE quadrilateralized spherical cube. */
- projex("CSC", cscfwd, cscrev, &prj, 90, -90, 4.0e-2);
-
- /* QSC: quadrilateralized spherical cube. */
- projex("QSC", qscfwd, qscrev, &prj, 90, -90, tol);
-
- /* TSC: tangential spherical cube. */
- projex("TSC", tscfwd, tscrev, &prj, 90, -90, tol);
-
- return 0;
-}
-
-
-/*----------------------------------------------------------------------------
-* PROJEX exercises the spherical projection routines.
-*
-* Given:
-* pcode[4] char Projection code.
-* *prjfwd() int Forward projection routine.
-* *prjrev() int Reverse projection routine.
-* north int Northern cutoff latitude, degrees.
-* south int Southern cutoff latitude, degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters.
-* tol double Closure tolerance, degrees.
-*---------------------------------------------------------------------------*/
-
-void projex(pcode, prjfwd, prjrev, prj, north, south, tol)
-
-char pcode[4];
-int (*prjfwd)(), (*prjrev)(), north, south;
-double tol;
-struct prjprm *prj;
-
-{
- int err, lat, lng;
- register int j;
- double dlat, dlatmx, dlng, dlngmx, dr, drmax, lat1, lat2, lng1, lng2;
- double r, theta, x, x1, x2, y, y1, y2;
-
- printf("Testing %s; latitudes %3d to %4d, closure tolerance %8.1g deg.\n",
- pcode, north, south, tol);
-
- prj->flag = 0;
- prj->r0 = 0.0;
-
- dlngmx = 0.0;
- dlatmx = 0.0;
-
- /* Uncomment the next line to test alternative initializations of */
- /* projection parameters. */
- /* prj->r0 = R2D; */
-
- for (lat = north; lat >= south; lat--) {
- lat1 = (double)lat;
-
- for (lng = -180; lng <= 180; lng++) {
- lng1 = (double)lng;
-
- if (err = prjfwd(lng1, lat1, prj, &x, &y)) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf error %3d\n",
- pcode, lng1, lat1, err);
- continue;
- }
-
- if (err = prjrev(x, y, prj, &lng2, &lat2)) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf\n",
- pcode, lng1, lat1);
- printf(" x =%20.15lf y =%20.15lf error%3d\n",
- x, y, err);
- continue;
- }
-
- dlng = fabs(lng2-lng1);
- if (dlng > 180.0) dlng = fabs(dlng-360.0);
- if (abs(lat) != 90 && dlng > dlngmx) dlngmx = dlng;
- dlat = fabs(lat2-lat1);
- if (dlat > dlatmx) dlatmx = dlat;
-
- if (dlat > tol) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf\n",
- pcode, lng1, lat1);
- printf(" x =%20.15lf y =%20.15lf\n", x, y);
- printf(" lng2 =%20.15lf lat2 =%20.15lf\n",
- lng2, lat2);
- } else if (abs(lat) != 90) {
- if (dlng > tol) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf\n",
- pcode, lng1, lat1);
- printf(" x =%20.15lf y =%20.15lf\n", x, y);
- printf(" lng2 =%20.15lf lat2 =%20.15lf\n",
- lng2, lat2);
- }
- }
- }
- }
-
- printf(" Maximum residual (sky): lng%10.3le lat%10.3le\n",
- dlngmx, dlatmx);
-
-
- /* Test closure at a point close to the reference point. */
- r = 1.0;
- theta = -180.0;
-
- drmax = 0.0;
-
- for (j = 1; j <= 12; j++) {
- x1 = r*cosd(theta);
- y1 = r*sind(theta);
-
- if (err = prjrev(x1, y1, prj, &lng1, &lat1)) {
- printf(" %3s: x1 =%20.15lf y1 =%20.15lf error%3d\n",
- pcode, x1, y1, err);
-
- } else if (err = prjfwd(lng1, lat1, prj, &x2, &y2)) {
- printf(" %3s: x1 =%20.15lf y1 =%20.15lf\n",
- pcode, x1, y1);
- printf(" lng =%20.15lf lat =%20.15lf error%3d\n",
- lng1, lat1, err);
-
- } else {
- dr = sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1));
- if (dr > drmax) drmax = dr;
- if (dr > tol) {
- printf(" %3s: x1 =%20.15lf y1 =%20.15lf\n",
- pcode, x1, y1);
- printf(" lng =%20.15lf lat =%20.15lf\n",
- lng1, lat1);
- printf(" x2 =%20.15lf y2 =%20.15lf\n",
- x2, y2);
- }
- }
-
- r /= 10.0;
- theta += 15.0;
- }
-
- printf(" Maximum residual (map): dR%10.3le\n", drmax);
-
- for (j = 0; j < 10; prj->p[j++] = 0.0);
-
- return;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/tproj2.c b/external/sextractor/source/wcs/wcs_ori/tproj2.c
deleted file mode 100644
index 224d563..0000000
--- a/external/sextractor/source/wcs/wcs_ori/tproj2.c
+++ /dev/null
@@ -1,377 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tproj2 tests projection routines by plotting test grids using PGPLOT.
-*
-* $Id: tproj2.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "proj.h"
-
-main()
-
-{
- void prjplt();
- int j;
- char text[80], text1[80], text2[80];
- struct prjprm prj;
-
-
- printf("\nTesting WCSLIB spherical projection routines\n");
- printf("--------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of prjset error codes:\n");
- printf(" %d: %s.\n", 1, prjset_errmsg[1]);
-
- printf("\nList of prjfwd error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, prjfwd_errmsg[j]);
- }
-
- printf("\nList of prjrev error codes:\n");
- for (j = 1; j <=2 ; j++) {
- printf(" %d: %s.\n", j, prjrev_errmsg[j]);
- }
-
- printf("\n");
-
-
- /* PGPLOT initialization. */
- strcpy(text, "/xwindow");
- pgbeg(0, text, 1, 1);
-
- /* Define pen colours. */
- pgscr(0, 0.00, 0.00, 0.00);
- pgscr(1, 1.00, 1.00, 0.00);
- pgscr(2, 1.00, 1.00, 1.00);
- pgscr(3, 0.50, 0.50, 0.80);
- pgscr(4, 0.80, 0.50, 0.50);
- pgscr(5, 0.80, 0.80, 0.80);
- pgscr(6, 0.50, 0.50, 0.80);
- pgscr(7, 0.80, 0.50, 0.50);
- pgscr(8, 0.30, 0.50, 0.30);
-
- strcpy(text1, "\n%s projection\n");
- strcpy(text2, "\n%s projection\nParameters:");
-
- for (j = 0; j < 10; prj.p[j++] = 0.0);
-
- /* AZP: zenithal/azimuthal perspective. */
- prj.p[1] = 2.0;
- printf(text2, "Zenithal/azimuthal perspective");
- printf("%12.5lf\n", prj.p[1]);
- prjplt("AZP", azpfwd, &prj, 90, -30, 1);
-
- /* TAN: gnomonic. */
- printf(text1, "Gnomonic");
- prjplt("TAN", tanfwd, &prj, 90, 5, 1);
-
- /* SIN: orthographic. */
- prj.p[1] = 0.3;
- prj.p[2] = 1.5;
- printf(text2, "Orthographic/synthesis");
- printf("%12.5lf%12.5lf\n", prj.p[1], prj.p[2]);
- prjplt("SIN", sinfwd, &prj, 90, 60, 1);
-
- /* STG: stereographic. */
- printf(text1, "Stereographic");
- prjplt("STG", stgfwd, &prj, 90, -85, 1);
-
- /* ARC: zenithal/azimuthal equidistant. */
- printf(text1, "Zenithal/azimuthal equidistant");
- prjplt("ARC", arcfwd, &prj, 90, -90, 1);
-
- /* ZPN: zenithal/azimuthal polynomial. */
- prj.p[0] = 0.05000;
- prj.p[1] = 0.95000;
- prj.p[2] = -0.02500;
- prj.p[3] = -0.15833;
- prj.p[4] = 0.00208;
- prj.p[5] = 0.00792;
- prj.p[6] = -0.00007;
- prj.p[7] = -0.00019;
- prj.p[8] = 0.00000;
- prj.p[9] = 0.00000;
- printf(text2, "Zenithal/azimuthal polynomial");
- printf("%12.5lf%12.5lf%12.5lf%12.5lf%12.5lf\n",
- prj.p[0], prj.p[1], prj.p[2], prj.p[3], prj.p[4]);
- printf(" %12.5lf%12.5lf%12.5lf%12.5lf%12.5lf\n",
- prj.p[5], prj.p[6], prj.p[7], prj.p[8], prj.p[9]);
- prjplt("ZPN", zpnfwd, &prj, 90, 10, 1);
-
- /* ZEA: zenithal/azimuthal equal area. */
- printf(text1, "Zenithal/azimuthal equal area");
- prjplt("ZEA", zeafwd, &prj, 90, -90, 1);
-
- /* AIR: Airy's zenithal projection. */
- prj.p[1] = 45.0;
- printf(text2, "Airy's zenithal");
- printf("%12.5lf\n", prj.p[1]);
- prjplt("AIR", airfwd, &prj, 90, -85, 1);
-
- /* CYP: cylindrical perspective. */
- prj.p[1] = 3.0;
- prj.p[2] = 0.8;
- printf(text2, "Cylindrical perspective");
- printf("%12.5lf%12.5lf\n", prj.p[1], prj.p[2]);
- prjplt("CYP", cypfwd, &prj, 90, -90, 2);
-
- /* CAR: Cartesian. */
- printf(text1, "Cartesian");
- prjplt("CAR", carfwd, &prj, 90, -90, 2);
-
- /* MER: Mercator's. */
- printf(text1, "Mercator's");
- prjplt("MER", merfwd, &prj, 85, -85, 2);
-
- /* CEA: cylindrical equal area. */
- prj.p[1] = 0.75;
- printf(text2, "Cylindrical equal area");
- printf("%12.5lf\n", prj.p[1]);
- prjplt("CEA", ceafwd, &prj, 90, -90, 2);
-
- /* COP: conic perspective. */
- prj.p[1] = 60.0;
- prj.p[2] = 15.0;
- printf(text2, "Conic perspective");
- printf("%12.5lf%12.5lf\n", prj.p[1], prj.p[2]);
- prjplt("COP", copfwd, &prj, 90, -25, 3);
-
- /* COD: conic equidistant. */
- prj.p[1] = -60.0;
- prj.p[2] = 15.0;
- printf(text2, "Conic equidistant");
- printf("%12.5lf%12.5lf\n", prj.p[1], prj.p[2]);
- prjplt("COD", codfwd, &prj, 90, -90, 3);
-
- /* COE: conic equal area. */
- prj.p[1] = 60.0;
- prj.p[2] = -15.0;
- printf(text2, "Conic equal area");
- printf("%12.5lf%12.5lf\n", prj.p[1], prj.p[2]);
- prjplt("COE", coefwd, &prj, 90, -90, 3);
-
- /* COO: conic orthomorphic. */
- prj.p[1] = -60.0;
- prj.p[2] = -15.0;
- printf(text2, "Conic orthomorphic");
- printf("%12.5lf%12.5lf\n", prj.p[1], prj.p[2]);
- prjplt("COO", coofwd, &prj, 85, -90, 3);
-
- /* BON: Bonne's projection. */
- prj.p[1] = 30.0;
- printf(text2, "Bonne's");
- printf("%12.5lf\n", prj.p[1]);
- prjplt("BON", bonfwd, &prj, 90, -90, 4);
-
- /* PCO: polyconic. */
- printf(text1, "Polyconic");
- prjplt("PCO", pcofwd, &prj, 90, -90, 4);
-
- /* GLS: Sanson-Flamsteed (global sinusoid). */
- printf(text1, "Sanson-Flamsteed (global sinusoid)");
- prjplt("GLS", glsfwd, &prj, 90, -90, 4);
-
- /* PAR: parabolic. */
- printf(text1, "Parabolic");
- prjplt("PAR", parfwd, &prj, 90, -90, 4);
-
- /* AIT: Hammer-Aitoff. */
- printf(text1, "Hammer-Aitoff");
- prjplt("AIT", aitfwd, &prj, 90, -90, 4);
-
- /* MOL: Mollweide's projection. */
- printf(text1, "Mollweide's");
- prjplt("MOL", molfwd, &prj, 90, -90, 4);
-
- /* CSC: COBE quadrilateralized spherical cube. */
- printf(text1, "COBE quadrilateralized spherical cube");
- prjplt("CSC", cscfwd, &prj, 90, -90, 5);
-
- /* QSC: quadrilateralized spherical cube. */
- printf(text1, "Quadrilateralized spherical cube");
- prjplt("QSC", qscfwd, &prj, 90, -90, 5);
-
- /* TSC: tangential spherical cube. */
- printf(text1, "Tangential spherical cube");
- prjplt("TSC", tscfwd, &prj, 90, -90, 5);
-
- pgend();
-
- return 0;
-}
-
-
-/*----------------------------------------------------------------------------
-* PRJPLT draws a 15 degree coordinate grid.
-*
-* Given:
-* pcode[4] char Projection mnemonic.
-* *prjfwd() int Forward projection routine.
-* north int Northern cutoff latitude, degrees.
-* south int Southern cutoff latitude, degrees.
-* type int Projection classification:
-* 1: zenithal/azimuthal
-* 2: cylindrical
-* 3: conic
-* 4: conventional
-* 5: quad cube
-*
-* Given and returned:
-* prj prjprm* Projection parameters.
-*---------------------------------------------------------------------------*/
-
-void prjplt(pcode, prjfwd, prj, north, south, type)
-
-char pcode[4];
-int north, south, type;
-int (*prjfwd)();
-struct prjprm *prj;
-
-{
- char text[80];
- int ci, ilat, ilng;
- register int j;
- float xr[512], yr[512];
- double lat, lng, x, y;
-
- printf("Plotting %s; latitudes%3d to%4d.\n", pcode, north, south);
-
- prj->flag = 0;
- prj->r0 = 0.0;
-
- if (type == 5) {
- pgenv(-335.0, 65.0, -200.0, 200.0, 1, -2);
- pgsci(2);
- sprintf(text,"%s - 15 degree graticule", pcode);
- pgtext(-340.0, -220.0, text);
-
- pgsci(8);
- (void) prjfwd(0.0, 0.0, prj, &x, &y);
-
- xr[0] = prj->w[0];
- yr[0] = prj->w[0];
- xr[1] = prj->w[0];
- yr[1] = prj->w[0]*3.0;
- xr[2] = -prj->w[0];
- yr[2] = prj->w[0]*3.0;
- xr[3] = -prj->w[0];
- yr[3] = -prj->w[0]*3.0;
- xr[4] = prj->w[0];
- yr[4] = -prj->w[0]*3.0;
- xr[5] = prj->w[0];
- yr[5] = prj->w[0];
- xr[6] = -prj->w[0]*7.0;
- yr[6] = prj->w[0];
- xr[7] = -prj->w[0]*7.0;
- yr[7] = -prj->w[0];
- xr[8] = prj->w[0];
- yr[8] = -prj->w[0];
- pgline(9, xr, yr);
- } else {
- pgenv(-200.0, 200.0, -200.0, 200.0, 1, -2);
- pgsci(2);
- sprintf(text,"%s - 15 degree graticule", pcode);
- pgtext(-240.0, -220.0, text);
- }
-
-
- ci = 1;
- for (ilng = -180; ilng <= 180; ilng+=15) {
- if (++ci > 7) ci = 2;
-
- lng = (double)ilng;
-
- pgsci(ilng?ci:1);
-
- j = 0;
- for (ilat = north; ilat >= south; ilat--) {
- lat = (double)ilat;
-
- if (prjfwd(lng, lat, prj, &x, &y)) continue;
-
- if (type == 5 && j > 0) {
- if (fabs(x+xr[j-1]) > 2.0 || fabs(y-yr[j-1]) > 5.0) {
- if (j > 1) pgline(j, xr, yr);
- j = 0;
- }
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- }
-
- ci = 1;
- for (ilat = -90; ilat <= 90; ilat += 15) {
- if (++ci > 7) ci = 2;
-
- if (ilat > north) continue;
- if (ilat < south) continue;
-
- lat = (double)ilat;
-
- pgsci(ilat?ci:1);
-
- j = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
-
- if (prjfwd(lng, lat, prj, &x, &y)) continue;
-
- if (type == 5 && j > 0) {
- if (fabs(x+xr[j-1]) > 2.0 || fabs(y-yr[j-1]) > 5.0) {
- if (j > 1) pgline(j, xr, yr);
- j = 0;
- }
- }
-
- xr[j] = -x;
- yr[j] = y;
- j++;
- }
-
- pgline(j, xr, yr);
- }
-
- pgsci(1);
- xr[0] = 0.0f;
- yr[0] = 0.0f;
- pgpt(1, xr, yr, 21);
-
-
- for (j = 0; j < 10; prj->p[j++] = 0.0);
-
- return;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/tsph.c b/external/sextractor/source/wcs/wcs_ori/tsph.c
deleted file mode 100644
index 7636a50..0000000
--- a/external/sextractor/source/wcs/wcs_ori/tsph.c
+++ /dev/null
@@ -1,133 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995, Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* tsph tests the forward and reverse spherical coordinate transformation
-* routines for closure.
-*
-* $Id: tsph.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "wcstrig.h"
-
-#ifndef __STDC__
-#ifndef const
-#define const
-#endif
-#endif
-
-
-main()
-
-{
- int err, j, lat, lng;
- double coslat, lng1, lng2, eul[5], lat1, lat2, phi, theta, zeta;
- const double tol = 1.0e-12;
-
-
- printf("\nTesting closure of WCSLIB coordinate transformation routines\n");
- printf("------------------------------------------------------------\n");
-
-
- /* Set reference angles. */
- eul[0] = 90.0;
- eul[1] = 30.0;
- eul[2] = -90.0;
- printf("\n%s\n%s%10.4lf%10.4lf%10.4lf\n",
- "Celestial longitude and latitude of the native pole, and native",
- "longitude of the celestial pole (degrees):", eul[0], eul[1], eul[2]);
-
- eul[3] = cosd(eul[1]);
- eul[4] = sind(eul[1]);
-
- printf ("Closure tolerance:%8.1lg degrees of arc.\n", tol);
-
- for (lat = 90; lat >= -90; lat--) {
- lat1 = (double)lat;
- coslat = cosd(lat1);
-
- for (lng = -180; lng <= 180; lng++) {
- lng1 = (double)lng;
-
- if (err = sphfwd(lng1, lat1, eul, &phi, &theta)) {
- printf ("lng1 =%20.15lf lat1 =%20.15lf Error%3d\n",
- lng1, lat1, err);
- continue;
- }
-
- if (err = sphrev(phi, theta, eul, &lng2, &lat2)) {
- printf("lng1 =%20.15lf lat1 =%20.15lf\n", lng1, lat1);
- printf(" phi =%20.15lf theta =%20.15lf Error%3d\n",
- phi, theta, err);
- continue;
- }
-
- if (fabs(lat2-lat1) > tol || (fabs(lng2-lng1)-360.0)*coslat > tol) {
- printf("Unclosed: lng1 =%20.15lf lat1 =%20.15lf\n", lng1, lat1);
- printf(" phi =%20.15lf theta =%20.15lf\n", phi, theta);
- printf(" lng2 =%20.15lf lat2 =%20.15lf\n", lng2, lat2);
- }
- }
- }
-
-
- /* Test closure at points close to the pole. */
- for (j = -1; j <= 1; j += 2) {
- zeta = 1.0;
- lng1 = -180.0;
-
- for (lat = 0; lat < 12; lat++) {
- lat1 = (double)j*(90.0 - zeta);
-
- if (err = sphfwd(lng1, lat1, eul, &phi, &theta)) {
- printf ("lng1 =%20.15lf lat1 =%20.15lf Error%3d\n",
- lng1, lat1, err);
- continue;
- }
-
- if (err = sphrev(phi, theta, eul, &lng2, &lat2)) {
- printf("lng1 =%20.15lf lat1 =%20.15lf\n", lng1, lat1);
- printf(" phi =%20.15lf theta =%20.15lf Error%3d\n",
- phi, theta, err);
- continue;
- }
-
- if (fabs(lat2-lat1) > tol || (fabs(lng2-lng1)-360.0)*coslat > tol) {
- printf("Unclosed: lng1 =%20.15lf lat1 =%20.15lf\n", lng1, lat1);
- printf(" phi =%20.15lf theta =%20.15lf\n", phi, theta);
- printf(" lng2 =%20.15lf lat2 =%20.15lf\n", lng2, lat2);
- }
-
- zeta /= 10.0;
- lng1 += 30.0;
- }
- }
-
- return 0;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/twcs1.c b/external/sextractor/source/wcs/wcs_ori/twcs1.c
deleted file mode 100644
index 37f0ebd..0000000
--- a/external/sextractor/source/wcs/wcs_ori/twcs1.c
+++ /dev/null
@@ -1,317 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* twcs1 tests wcsfwd() and wcsrev() for closure on the 1 degree celestial
-* grid for a number of selected projections.
-*
-* $Id: twcs1.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "wcs.h"
-
-#ifndef __STDC__
-#ifndef const
-#define const
-#endif
-#endif
-
-
-char ctype[4][9] = {"FREQ ", "XLAT-xxx", "TIME ", "XLON-xxx"};
-double crpix[4] = { 0.0, 0.0, 0.0, 0.0};
-double pc[4][4] = {{ 1.1, 0.0, 0.0, 0.0},
- { 0.0, 1.0, 0.0, 0.1},
- { 0.0, 0.0, 1.0, 0.0},
- { 0.0, 0.2, 0.0, 1.0}};
-double cdelt[4] = { 1.0, 1.0, 1.0, -1.0};
-double crval[4] = {408e6, 0.0, -2e3, 0.0};
-
-main()
-
-{
- void wcsex();
- char text[80];
- register int j;
- const double tol = 1.0e-10;
- double latc;
- struct celprm cel0, celc, celp;
- struct prjprm prj;
- struct linprm lin;
-
- /* Uncomment the following two lines to raise SIGFPE on floating point
- * exceptions for the Sun FORTRAN compiler. This signal can be caught
- * within 'dbx' by issuing the command "catch FPE".
- */
-/* #include <floatingpoint.h> */
-/* call ieee_handler ("set", "common", SIGFPE_ABORT); */
-
-
- printf("\nTesting closure of WCSLIB world coordinate transformation routines\n");
- printf("------------------------------------------------------------------\n");
-
- /* List error messages. */
- printf("\nList of wcsset error codes:\n");
- printf(" %d: %s.\n", 1, wcsset_errmsg[1]);
-
- printf("\nList of wcsfwd error codes:\n");
- for (j = 1; j <=4 ; j++) {
- printf(" %d: %s.\n", j, wcsfwd_errmsg[j]);
- }
-
- printf("\nList of wcsrev error codes:\n");
- for (j = 1; j <=4 ; j++) {
- printf(" %d: %s.\n", j, wcsrev_errmsg[j]);
- }
-
- printf("\nList of wcsmix error codes:\n");
- for (j = 1; j <=5 ; j++) {
- printf(" %d: %s.\n", j, wcsmix_errmsg[j]);
- }
-
-
- lin.flag = 0;
- lin.naxis = 4;
- lin.crpix = crpix;
- lin.pc = (double*)pc;
- lin.cdelt = cdelt;
-
- for (j = 0; j < 10; prj.p[j++] = 0.0);
- for (j = 0; j < 10; prj.w[j++] = 0.0);
- prj.r0 = 0.0;
-
- /* Latitude midway between the standard parallels for the conics. */
- latc = 60.0;
-
- /* Set reference angles for the celestial grids; polar projections... */
- celp.ref[0] = 150.0;
- celp.ref[1] = -30.0;
- celp.ref[2] = 150.0;
- celp.ref[3] = 999.0;
-
- /* Force celp to be initialized since we want to use it now. */
- celp.flag = 0;
- (void) celset("ARC", &celp, &prj);
-
- /* Compute reference angles for the cylindrical and conic projections */
- /* so that they all use the same oblique celestial grid regardless of */
- /* the reference point; conic projections... */
- sphrev (0.0, latc, celp.euler, &celc.ref[0], &celc.ref[1]);
- sphfwd (0.0, 90.0, celp.euler, &celc.ref[2], &celc.ref[3]);
-
- /* ...cylindrical and conventional projections. */
- sphrev (0.0, 0.0, celp.euler, &cel0.ref[0], &cel0.ref[1]);
- sphfwd (0.0, 90.0, celp.euler, &cel0.ref[2], &cel0.ref[3]);
-
- /* Note that we have 3 contexts (CELP, CELC, and CEL0). wcsex() will force
- these to be initialized on every invokation since PCODE will differ each
- time. */
-
- /* ARC: zenithal/azimuthal equidistant. */
- strncpy(&ctype[1][5], "ARC", 3);
- strncpy(&ctype[3][5], "ARC", 3);
- wcsex(tol, ctype, crval, &celp, &prj, &lin);
-
- /* ZEA: zenithal/azimuthal equal area. */
- strncpy(&ctype[1][5], "ZEA", 3);
- strncpy(&ctype[3][5], "ZEA", 3);
- wcsex(tol, ctype, crval, &celp, &prj, &lin);
-
- /* CYP: cylindrical perspective. */
- strncpy(&ctype[1][5], "CYP", 3);
- strncpy(&ctype[3][5], "CYP", 3);
- prj.p[1] = 3.0;
- prj.p[2] = 0.8;
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* CAR: Cartesian. */
- strncpy(&ctype[1][5], "CAR", 3);
- strncpy(&ctype[3][5], "CAR", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* CEA: cylindrical equal area. */
- strncpy(&ctype[1][5], "CEA", 3);
- strncpy(&ctype[3][5], "CEA", 3);
- prj.p[1] = 0.75;
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* COD: conic equidistant. */
- strncpy(&ctype[1][5], "COD", 3);
- strncpy(&ctype[3][5], "COD", 3);
- prj.p[1] = latc;
- prj.p[2] = 15.0;
- wcsex(tol, ctype, crval, &celc, &prj, &lin);
-
- /* COE: conic equal area. */
- strncpy(&ctype[1][5], "COE", 3);
- strncpy(&ctype[3][5], "COE", 3);
- prj.p[1] = latc;
- prj.p[2] = 15.0;
- wcsex(tol, ctype, crval, &celc, &prj, &lin);
-
- /* BON: Bonne's projection. */
- strncpy(&ctype[1][5], "BON", 3);
- strncpy(&ctype[3][5], "BON", 3);
- prj.p[1] = 30.0;
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* PCO: polyconic. */
- strncpy(&ctype[1][5], "PCO", 3);
- strncpy(&ctype[3][5], "PCO", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* GLS: Sanson-Flamsteed (global sinusoid). */
- strncpy(&ctype[1][5], "GLS", 3);
- strncpy(&ctype[3][5], "GLS", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* PAR: parabolic. */
- strncpy(&ctype[1][5], "PAR", 3);
- strncpy(&ctype[3][5], "PAR", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* AIT: Hammer-Aitoff. */
- strncpy(&ctype[1][5], "AIT", 3);
- strncpy(&ctype[3][5], "AIT", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* MOL: Mollweide's projection. */
- strncpy(&ctype[1][5], "MOL", 3);
- strncpy(&ctype[3][5], "MOL", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* QSC: quadrilateralized spherical cube. */
- strncpy(&ctype[1][5], "QSC", 3);
- strncpy(&ctype[3][5], "QSC", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* TSC: tangential spherical cube. */
- strcpy(&ctype[0][0], "CUBEFACE");
- strncpy(&ctype[1][5], "TSC", 3);
- strncpy(&ctype[3][5], "TSC", 3);
- wcsex(tol, ctype, crval, &cel0, &prj, &lin);
-
- return 0;
-}
-
-
-/*----------------------------------------------------------------------------
-* wcsex() tests closure of wcsfwd() and wcsrev().
-*
-* Given:
-* tol double Closure tolerance, degrees.
-* ctype char[][9] Coordinate axis types.
-* crval double[] Coordinate reference values.
-*
-* Given and returned:
-* cel celprm* Coordinate transformation parameters.
-* prj prjprm* Projection parameters.
-* lin linprm* Linear transformation parameters.
-*---------------------------------------------------------------------------*/
-
-void wcsex(tol, ctype, crval, cel, prj, lin)
-
-double tol;
-char ctype[][9];
-double crval[];
-struct celprm *cel;
-struct prjprm *prj;
-struct linprm *lin;
-
-{
- int err, lat, lng;
- double dlat, dlatmx, dlng, dlngmx, lat1, lng1, phi, theta;
- double img[4], pix[4], world[4];
- struct wcsprm wcs;
-
- wcs.flag = 0;
- cel->flag = 0;
- prj->flag = 0;
- prj->r0 = 0.0;
-
- dlngmx = 0.0;
- dlatmx = 0.0;
-
- /* Find the projection code. */
- (void) wcsset(lin->naxis, ctype, &wcs);
-
- printf("\nTesting %s; closure tolerance %8.1g deg.\n", wcs.pcode, tol);
-
- for (lat = 90; lat >= -90; lat--) {
- lat1 = (double)lat;
-
- for (lng = -180; lng <= 180; lng++) {
- lng1 = (double)lng;
-
- world[0] = 0.0;
- world[1] = 0.0;
- world[2] = 0.0;
- world[3] = 0.0;
- world[wcs.lng] = lng1;
- world[wcs.lat] = lat1;
-
- if (err = wcsfwd(ctype, &wcs, world, crval, cel, &phi, &theta, prj,
- img, lin, pix)) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf error %3d\n",
- wcs.pcode, lng1, lat1, err);
- continue;
- }
-
- if (err = wcsrev(ctype, &wcs, pix, lin, img, prj, &phi, &theta, crval,
- cel, world)) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf error%3d\n",
- wcs.pcode, lng1, lat1, err);
- continue;
- }
-
- dlng = fabs(world[wcs.lng]-lng1);
- if (dlng > 180.0) dlng = fabs(dlng-360.0);
- if (abs(lat) != 90 && dlng > dlngmx) dlngmx = dlng;
- dlat = fabs(world[wcs.lat]-lat1);
- if (dlat > dlatmx) dlatmx = dlat;
-
- if (dlat > tol) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf\n",
- wcs.pcode, lng1, lat1);
- printf(" lng2 =%20.15lf lat2 =%20.15lf\n",
- world[wcs.lng], world[wcs.lat]);
- } else if (abs(lat) != 90) {
- if (dlng > tol) {
- printf(" %3s: lng1 =%20.15lf lat1 =%20.15lf\n",
- wcs.pcode, lng1, lat1);
- printf(" lng2 =%20.15lf lat2 =%20.15lf\n",
- world[wcs.lng], world[wcs.lat]);
- }
- }
- }
- }
-
- printf(" Maximum closure residual: lng%10.3le lat%10.3le\n",
- dlngmx, dlatmx);
-
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/twcs2.c b/external/sextractor/source/wcs/wcs_ori/twcs2.c
deleted file mode 100644
index daddafa..0000000
--- a/external/sextractor/source/wcs/wcs_ori/twcs2.c
+++ /dev/null
@@ -1,764 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This program is free software; you can redistribute it and/or modify it
-* under the terms of the GNU General Public License as published by the
-* Free Software Foundation; either version 2 of the License, or (at your
-* option) any later version.
-*
-* This program is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License along
-* with this library; if not, write to the Free Software Foundation, Inc.,
-* 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* twcs2 tests wcsmix() for closure on the 1 degree celestial grid for a
-* number of selected projections. Points with good solutions are marked
-* with a white dot on a graphical display of the projection while bad
-* solutions are flagged with a red circle.
-*
-* $Id: twcs2.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include <stdio.h>
-#include "wcs.h"
-
-#ifndef __STDC__
-#ifndef const
-#define const
-#endif
-#endif
-
-/* Set to 1 to skip mixex(), primarily for debugging purposes. */
-int skip_mixex = 0;
-
-char ctype[4][9] = {"FREQ ", "XLAT-xxx", "TIME ", "XLON-xxx"};
-double crpix[4] = { 0.0, 0.0, 0.0, 0.0};
-double pc[4][4] = {{ 1.1, 0.0, 0.0, 0.0},
- { 0.0, 1.0, 0.0, 0.1},
- { 0.0, 0.0, 1.0, 0.0},
- { 0.0, 0.2, 0.0, 1.0}};
-double cdelt[4] = { 1.0, 1.0, 1.0, -1.0};
-double crval[4] = {408e6, 0.0, -2e3, 0.0};
-
-main()
-
-{
- void grdplt(), mixex();
- char text[80];
- register int j;
- const double tol = 1.0e-10;
- double latc;
- struct celprm cel0, celc, celp, ntv0, ntvc, ntvp;
- struct prjprm prj;
- struct linprm lin;
-
- /* Uncomment the following two lines to raise SIGFPE on floating point
- * exceptions for the Sun FORTRAN compiler. This signal can be caught
- * within 'dbx' by issuing the command "catch FPE".
- */
-/* #include <floatingpoint.h> */
-/* call ieee_handler ("set", "common", SIGFPE_ABORT); */
-
-
- printf("\nTesting WCSLIB wcsmix routine\n");
- printf("-----------------------------\n");
-
- /* List error messages. */
- printf("\nList of wcsset error codes:\n");
- printf(" %d: %s.\n", 1, wcsset_errmsg[1]);
-
- printf("\nList of wcsfwd error codes:\n");
- for (j = 1; j <=4 ; j++) {
- printf(" %d: %s.\n", j, wcsfwd_errmsg[j]);
- }
-
- printf("\nList of wcsrev error codes:\n");
- for (j = 1; j <=4 ; j++) {
- printf(" %d: %s.\n", j, wcsrev_errmsg[j]);
- }
-
- printf("\nList of wcsmix error codes:\n");
- for (j = 1; j <=5 ; j++) {
- printf(" %d: %s.\n", j, wcsmix_errmsg[j]);
- }
-
-
- /* PGPLOT initialization. */
- strcpy(text, "/xwindow");
- pgbeg(0, text, 1, 1);
-
- /* Define pen colours. */
- pgscr(0, 0.00, 0.00, 0.00);
- pgscr(1, 1.00, 1.00, 0.00);
- pgscr(2, 1.00, 1.00, 1.00);
- pgscr(3, 0.50, 0.50, 0.80);
- pgscr(4, 0.80, 0.50, 0.50);
- pgscr(5, 0.80, 0.80, 0.80);
- pgscr(6, 0.50, 0.50, 0.80);
- pgscr(7, 0.80, 0.50, 0.50);
- pgscr(8, 0.30, 0.50, 0.30);
- pgscr(9, 1.00, 0.75, 0.00);
-
-
- lin.flag = 0;
- lin.naxis = 4;
- lin.crpix = crpix;
- lin.pc = (double*)pc;
- lin.cdelt = cdelt;
-
- for (j = 0; j < 10; prj.p[j++] = 0.0);
- for (j = 0; j < 10; prj.w[j++] = 0.0);
- prj.r0 = 0.0;
-
- /* Latitude midway between the standard parallels for the conics. */
- latc = 60.0;
-
- /* Set reference angles for native grids; polar projections... */
- ntvp.ref[0] = 0.0;
- ntvp.ref[1] = 90.0;
- ntvp.ref[2] = 999.0;
- ntvp.ref[3] = 999.0;
-
- /* ...conic projections... */
- ntvc.ref[0] = 0.0;
- ntvc.ref[1] = latc;
- ntvc.ref[2] = 999.0;
- ntvc.ref[3] = 999.0;
-
- /* ...cylindrical and conventional projections. */
- ntv0.ref[0] = 0.0;
- ntv0.ref[1] = 0.0;
- ntv0.ref[2] = 999.0;
- ntv0.ref[3] = 999.0;
-
- /* Set reference angles for the celestial grids; polar projections... */
- celp.ref[0] = 150.0;
- celp.ref[1] = -30.0;
- celp.ref[2] = 150.0;
- celp.ref[3] = 999.0;
-
- /* Force celp to be initialized since we want to use it now. */
- celp.flag = 0;
- (void) celset("ARC", &celp, &prj);
-
- /* Compute reference angles for the cylindrical and conic projections */
- /* so that they all use the same oblique celestial grid regardless of */
- /* the reference point; conic projections... */
- sphrev (0.0, latc, celp.euler, &celc.ref[0], &celc.ref[1]);
- sphfwd (0.0, 90.0, celp.euler, &celc.ref[2], &celc.ref[3]);
-
- /* ...cylindrical and conventional projections. */
- sphrev (0.0, 0.0, celp.euler, &cel0.ref[0], &cel0.ref[1]);
- sphfwd (0.0, 90.0, celp.euler, &cel0.ref[2], &cel0.ref[3]);
-
- /* Note that we have 6 contexts (NTVP, NTVC, NTV0, CELP, CELC, and CEL0). */
- /* Routines GRDPLT and MIXEX will each force these to be initialized on */
- /* every invokation since PCODE will differ each time. */
-
- printf("\n\nNote: Expect to see a few occurrences of wcsmix error 5 (no ");
- printf("solution) at\n");
- printf("points corresponding to the native poles for those projections ");
- printf("where the\n");
- printf("pole is represented as a finite interval.\n");
-
- /* ARC: zenithal/azimuthal equidistant. */
- strncpy(&ctype[1][5], "ARC", 3);
- strncpy(&ctype[3][5], "ARC", 3);
- grdplt(1, -190.0, 190.0, -190.0, 190.0, ctype, crval, &ntvp, &celp,
- &prj, &lin);
- mixex(tol, ctype, crval, &celp, &prj, &lin);
-
- /* ZEA: zenithal/azimuthal equal area. */
- strncpy(&ctype[1][5], "ZEA", 3);
- strncpy(&ctype[3][5], "ZEA", 3);
- grdplt(1, -120.0, 120.0, -120.0, 120.0, ctype, crval, &ntvp, &celp,
- &prj, &lin);
- mixex(tol, ctype, crval, &celp, &prj, &lin);
-
- /* CYP: cylindrical perspective. */
- strncpy(&ctype[1][5], "CYP", 3);
- strncpy(&ctype[3][5], "CYP", 3);
- prj.p[1] = 3.0;
- prj.p[2] = 0.8;
- grdplt(2, -170.0, 170.0, -170.0, 170.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* CAR: Cartesian. */
- strncpy(&ctype[1][5], "CAR", 3);
- strncpy(&ctype[3][5], "CAR", 3);
- grdplt(2, -210.0, 210.0, -210.0, 210.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* CEA: cylindrical equal area. */
- strncpy(&ctype[1][5], "CEA", 3);
- strncpy(&ctype[3][5], "CEA", 3);
- prj.p[1] = 0.75;
- grdplt(2, -200.0, 200.0, -200.0, 200.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* COD: conic equidistant. */
- strncpy(&ctype[1][5], "COD", 3);
- strncpy(&ctype[3][5], "COD", 3);
- prj.p[1] = latc;
- prj.p[2] = 15.0;
- grdplt(3, -200.0, 200.0, -190.0, 210.0, ctype, crval, &ntvc, &celc,
- &prj, &lin);
- mixex(tol, ctype, crval, &celc, &prj, &lin);
-
- /* COE: conic equal area. */
- strncpy(&ctype[1][5], "COE", 3);
- strncpy(&ctype[3][5], "COE", 3);
- prj.p[1] = latc;
- prj.p[2] = 15.0;
- grdplt(3, -140.0, 140.0, -130.0, 150.0, ctype, crval, &ntvc, &celc,
- &prj, &lin);
- mixex(tol, ctype, crval, &celc, &prj, &lin);
-
- /* BON: Bonne's projection. */
- strncpy(&ctype[1][5], "BON", 3);
- strncpy(&ctype[3][5], "BON", 3);
- prj.p[1] = 30.0;
- grdplt(4, -160.0, 160.0, -160.0, 160.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* PCO: polyconic. */
- strncpy(&ctype[1][5], "PCO", 3);
- strncpy(&ctype[3][5], "PCO", 3);
- grdplt(4, -190.0, 190.0, -190.0, 190.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* GLS: Sanson-Flamsteed (global sinusoid). */
- strncpy(&ctype[1][5], "GLS", 3);
- strncpy(&ctype[3][5], "GLS", 3);
- grdplt(4, -190.0, 190.0, -190.0, 190.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* PAR: parabolic. */
- strncpy(&ctype[1][5], "PAR", 3);
- strncpy(&ctype[3][5], "PAR", 3);
- grdplt(4, -190.0, 190.0, -190.0, 190.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* AIT: Hammer-Aitoff. */
- strncpy(&ctype[1][5], "AIT", 3);
- strncpy(&ctype[3][5], "AIT", 3);
- grdplt(4, -170.0, 170.0, -170.0, 170.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* MOL: Mollweide's projection. */
- strncpy(&ctype[1][5], "MOL", 3);
- strncpy(&ctype[3][5], "MOL", 3);
- grdplt(4, -170.0, 170.0, -170.0, 170.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* QSC: quadrilateralized spherical cube. */
- strncpy(&ctype[1][5], "QSC", 3);
- strncpy(&ctype[3][5], "QSC", 3);
- grdplt(5, -340.0, 90.0, -210.0, 210.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- /* TSC: tangential spherical cube. */
- strncpy(&ctype[1][5], "TSC", 3);
- strncpy(&ctype[3][5], "TSC", 3);
- grdplt(5, -340.0, 80.0, -210.0, 210.0, ctype, crval, &ntv0, &cel0,
- &prj, &lin);
- mixex(tol, ctype, crval, &cel0, &prj, &lin);
-
- pgend();
-
- return 0;
-}
-
-
-void grdplt(type, imin, imax, jmin, jmax, ctype, crval, native, celest, prj,
- lin)
-
-int type;
-double imax, imin, jmax, jmin;
-char ctype[][9];
-double crval[];
-struct celprm *native, *celest;
-struct prjprm *prj;
-struct linprm *lin;
-
-{
- char text[80];
- int ci, ilat, ilng, k;
- float fimax, fimin, fjmax, fjmin, ir[512], jr[512];
- double lat, lng, phi, theta, img[4], pix[4], world[4];
- double step;
- struct wcsprm wcs;
-
- wcs.flag = 0;
- native->flag = 0;
- celest->flag = 0;
- prj->flag = 0;
- prj->r0 = 0.0;
-
- /* Define PGPLOT viewport. */
- fimax = (float)imax;
- fimin = (float)imin;
- fjmax = (float)jmax;
- fjmin = (float)jmin;
- pgenv(fimin, fimax, fjmin, fjmax, 1, -2);
-
- /* Issue a dummy call to initialize data structures. */
- world[0] = crval[0];
- world[1] = crval[1];
- world[2] = crval[2];
- world[3] = crval[3];
- (void) wcsfwd(ctype, &wcs, world, crval, celest, &phi, &theta, prj, img,
- lin, pix);
-
- if (type == 5) {
- /* Some sort of quad-cube projection. */
- pgsci(8);
-
- /* Draw the map boundary. */
- img[0] = 0.0;
- img[1] = 0.0;
- img[2] = 0.0;
- img[3] = 0.0;
-
- img[wcs.lng] = -prj->w[0];
- img[wcs.lat] = prj->w[0];
- linfwd(img, lin, pix);
- ir[0] = pix[wcs.lng];
- jr[0] = pix[wcs.lat];
-
- img[wcs.lng] = -prj->w[0];
- img[wcs.lat] = prj->w[0]*3.0;
- linfwd(img, lin, pix);
- ir[1] = pix[wcs.lng];
- jr[1] = pix[wcs.lat];
-
- img[wcs.lng] = prj->w[0];
- img[wcs.lat] = prj->w[0]*3.0;
- linfwd(img, lin, pix);
- ir[2] = pix[wcs.lng];
- jr[2] = pix[wcs.lat];
-
- img[wcs.lng] = prj->w[0];
- img[wcs.lat] = -prj->w[0]*3.0;
- linfwd(img, lin, pix);
- ir[3] = pix[wcs.lng];
- jr[3] = pix[wcs.lat];
-
- img[wcs.lng] = -prj->w[0];
- img[wcs.lat] = -prj->w[0]*3.0;
- linfwd(img, lin, pix);
- ir[4] = pix[wcs.lng];
- jr[4] = pix[wcs.lat];
-
- img[wcs.lng] = -prj->w[0];
- img[wcs.lat] = prj->w[0];
- linfwd(img, lin, pix);
- ir[5] = pix[wcs.lng];
- jr[5] = pix[wcs.lat];
-
- img[wcs.lng] = prj->w[0]*7.0;
- img[wcs.lat] = prj->w[0];
- linfwd(img, lin, pix);
- ir[6] = pix[wcs.lng];
- jr[6] = pix[wcs.lat];
-
- img[wcs.lng] = prj->w[0]*7.0;
- img[wcs.lat] = -prj->w[0];
- linfwd(img, lin, pix);
- ir[7] = pix[wcs.lng];
- jr[7] = pix[wcs.lat];
-
- img[wcs.lng] = -prj->w[0];
- img[wcs.lat] = -prj->w[0];
- linfwd(img, lin, pix);
- ir[8] = pix[wcs.lng];
- jr[8] = pix[wcs.lat];
-
- pgline(9, ir, jr);
- }
-
- /* Write a descriptive title. */
- pgsci(1);
- sprintf(text, "%s projection - 15 degree graticule", wcs.pcode);
- printf("\n%s\n", text);
- pgtext(imin, jmin-10.0, text);
-
- sprintf(text, "centered on celestial coordinates (%6.2lf,%6.2lf)",
- celest->ref[0], celest->ref[1]);
- printf("%s\n", text);
- pgtext(imin, jmin-20.0, text);
-
- sprintf(text, "with celestial pole at native coordinates (%7.2lf,%7.2lf)",
- celest->ref[2], celest->ref[3]);
- printf("%s\n", text);
- pgtext(imin, jmin-30.0, text);
-
-
- /* Draw the native coordinate grid faintly in the background. */
- pgsci(8);
-
- if (type == 4) {
- step = 10.0;
- } else {
- step = 15.0;
- }
-
- /* Draw native meridians of longitude. */
- for (ilng = -180; ilng <= 180; ilng += 15) {
- lng = (double)ilng;
- if (ilng == -180) lng = -179.99;
- if (ilng == 180) lng = 179.99;
-
- k = 0;
- for (ilat = -90; ilat <= 90; ilat++) {
- lat = (double)ilat;
-
- world[wcs.lng] = lng;
- world[wcs.lat] = lat;
- if (wcsfwd(ctype, &wcs, world, crval, native, &phi, &theta, prj, img,
- lin, pix)) {
- continue;
- }
-
- if (type == 5 && k > 0) {
- if (fabs(pix[wcs.lng]-ir[k-1]) > 2.0 ||
- fabs(pix[wcs.lat]-jr[k-1]) > 5.0) {
- if (k > 1) pgline(k, ir, jr);
- k = 0;
- }
- }
-
- ir[k] = pix[wcs.lng];
- jr[k] = pix[wcs.lat];
- k++;
- }
-
- pgline(k, ir, jr);
- }
-
- /* Draw native parallels of latitude. */
- for (ilat = -90; ilat <= 90; ilat += 15) {
- lat = (double)ilat;
-
- k = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
- if (ilng == -180) lng = -179.99;
- if (ilng == 180) lng = 179.99;
-
- world[wcs.lng] = lng;
- world[wcs.lat] = lat;
- if (wcsfwd(ctype, &wcs, world, crval, native, &phi, &theta, prj, img,
- lin, pix)) {
- continue;
- }
-
- if (type == 5 && k > 0) {
- if (fabs(pix[wcs.lng]-ir[k-1]) > 2.0 ||
- fabs(pix[wcs.lat]-jr[k-1]) > 5.0) {
- if (k > 1) pgline(k, ir, jr);
- k = 0;
- }
- }
-
- ir[k] = pix[wcs.lng];
- jr[k] = pix[wcs.lat];
- k++;
- }
-
- pgline(k, ir, jr);
- }
-
-
- /* Draw a colour-coded celestial coordinate grid. */
- ci = 1;
-
- /* Draw celestial meridians of longitude. */
- for (ilng = -180; ilng <= 180; ilng += 15) {
- lng = (double)ilng;
-
- if (++ci > 7) ci = 2;
- pgsci(ilng?ci:1);
-
- k = 0;
- for (ilat = -90; ilat <= 90; ilat++) {
- lat = (double)ilat;
-
- world[wcs.lng] = lng;
- world[wcs.lat] = lat;
- if (wcsfwd(ctype, &wcs, world, crval, celest, &phi, &theta, prj, img,
- lin, pix)) {
- continue;
- }
-
- /* Test for discontinuities. */
- if (k > 0) {
- if (fabs(pix[wcs.lng]-ir[k-1]) > step ||
- fabs(pix[wcs.lat]-jr[k-1]) > step) {
- if (k > 1) pgline(k, ir, jr);
- k = 0;
- }
- }
-
- ir[k] = pix[wcs.lng];
- jr[k] = pix[wcs.lat];
- k++;
- }
-
- pgline(k, ir, jr);
- }
-
- /* Draw celestial parallels of latitude. */
- ci = 1;
- for (ilat = -90; ilat <= 90; ilat += 15) {
- lat = (double)ilat;
-
- if (++ci > 7) ci = 2;
- pgsci(ilat?ci:1);
-
- k = 0;
- for (ilng = -180; ilng <= 180; ilng++) {
- lng = (double)ilng;
-
- world[wcs.lng] = lng;
- world[wcs.lat] = lat;
- if (wcsfwd(ctype, &wcs, world, crval, celest, &phi, &theta, prj, img,
- lin, pix)) {
- continue;
- }
-
- /* Test for discontinuities. */
- if (k > 0) {
- if (fabs(pix[wcs.lng]-ir[k-1]) > step ||
- fabs(pix[wcs.lat]-jr[k-1]) > step) {
- if (k > 1) pgline(k, ir, jr);
- k = 0;
- }
- }
-
- ir[k] = pix[wcs.lng];
- jr[k] = pix[wcs.lat];
- k++;
- }
-
- pgline(k, ir, jr);
- }
-
- pgsci(2);
-
- return;
-}
-
-
-/*----------------------------------------------------------------------------
-* mixex() tests wcsmix().
-*
-* Given:
-* tol double Closure tolerance, degrees.
-* ctype char[][9] Coordinate axis types.
-* crval double[] Coordinate reference values.
-*
-* Given and returned:
-* cel celprm* Coordinate transformation parameters.
-* prj prjprm* Projection parameters.
-* lin linprm* Linear transformation parameters.
-*---------------------------------------------------------------------------*/
-
-void mixex(tol, ctype, crval, cel, prj, lin)
-
-double tol;
-char ctype[][9];
-double crval[];
-struct celprm *cel;
-struct prjprm *prj;
-struct linprm *lin;
-
-{
- void id();
- int err, doid, lat, lng;
- register int k;
- float ipt[1], jpt[1];
- double lng1, lat1, phi, theta;
- double latspan[2], lngspan[2];
- double img[4], pix1[4], pix2[4], pix3[4], world[4];
- double pixlng, pixlat;
- struct wcsprm wcs;
-
- if (skip_mixex) return;
-
- wcs.flag = 0;
- cel->flag = 0;
- prj->flag = 0;
- prj->r0 = 0.0;
-
- /* Find the projection code. */
- (void) wcsset(lin->naxis, ctype, &wcs);
-
- printf("Testing %s; closure tolerance %8.1g deg.\n", wcs.pcode, tol);
-
- world[0] = 0.0;
- world[1] = 0.0;
- world[2] = 0.0;
- world[3] = 0.0;
-
- for (lat = 90; lat >= -90; lat--) {
- lat1 = (double)lat;
-
- for (lng = -180; lng <= 180; lng++) {
- lng1 = (double)lng;
-
- world[wcs.lng] = lng1;
- world[wcs.lat] = lat1;
- if (err = wcsfwd(ctype, &wcs, world, crval, cel, &phi, &theta, prj,
- img, lin, pix1)) {
- printf("%3s: lng1 =%20.15lf lat1 =%20.15lf error %3d\n",
- wcs.pcode, lng1, lat1, err);
- continue;
- }
-
- pixlng = pix1[wcs.lng];
- pixlat = pix1[wcs.lat];
-
- ipt[0] = pixlng;
- jpt[0] = pixlat;
- pgpt(1, ipt, jpt, -1);
-
- lngspan[0] = lng1 - 9.3;
- if (lngspan[0] < -180.0) lngspan[0] = -180.0;
- lngspan[1] = lng1 + 4.1;
- if (lngspan[1] > 180.0) lngspan[1] = 180.0;
- latspan[0] = lat1 - 3.7;
- if (latspan[0] < -90.0) latspan[0] = -90.0;
- latspan[1] = lat1 + 7.2;
- if (latspan[1] > 90.0) latspan[1] = 90.0;
-
- doid = 1;
-
- pix2[wcs.lng] = pixlng;
- if (err = wcsmix(ctype, &wcs, wcs.lng, 1, latspan, 1.0, 2, world,
- crval, cel, &phi, &theta, prj, img, lin, pix2)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 1: wcsmix error %d, %s.\n", err, wcsmix_errmsg[err]);
- } else if (err = wcsfwd(ctype, &wcs, world, crval, cel,
- &phi, &theta, prj, img, lin, pix3)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 1: wcsfwd error %d, %s.\n", err, wcsfwd_errmsg[err]);
- } else if (fabs(pix3[wcs.lng]-pixlng) > tol) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 1: lat2 =%20.15lf j2 =%20.15lf\n", world[wcs.lat],
- pix2[wcs.lat]);
- }
-
-
- pix2[wcs.lat] = pixlat;
- if (err = wcsmix(ctype, &wcs, wcs.lat, 1, latspan, 1.0, 2, world,
- crval, cel, &phi, &theta, prj, img, lin, pix2)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 2: wcsmix error %d, %s.\n", err, wcsmix_errmsg[err]);
- } else if (err = wcsfwd(ctype, &wcs, world, crval, cel, &phi, &theta,
- prj, img, lin, pix3)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 2: wcsfwd error %d, %s.\n", err, wcsfwd_errmsg[err]);
- } else if (fabs(pix3[wcs.lat]-pixlat) > tol) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 2: lat2 =%20.15lf i2 =%20.15lf\n", world[wcs.lat],
- pix2[wcs.lng]);
- }
-
- world[wcs.lat] = lat1;
-
- pix2[wcs.lng] = pixlng;
- if (err = wcsmix(ctype, &wcs, wcs.lng, 2, lngspan, 1.0, 2, world,
- crval, cel, &phi, &theta, prj, img, lin, pix2)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 3: wcsmix error %d, %s.\n", err, wcsmix_errmsg[err]);
- } else if (err = wcsfwd(ctype, &wcs, world, crval, cel, &phi, &theta,
- prj, img, lin, pix3)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 3: wcsfwd error %d, %s.\n", err, wcsfwd_errmsg[err]);
- } else if (fabs(pix3[wcs.lng]-pixlng) > tol) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 3: lng2 =%20.15lf j2 =%20.15lf\n", world[wcs.lng],
- pix2[wcs.lat]);
- }
-
-
- pix2[wcs.lat] = pixlat;
- if (err = wcsmix(ctype, &wcs, wcs.lat, 2, lngspan, 1.0, 2, world,
- crval, cel, &phi, &theta, prj, img, lin, pix2)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 4: wcsmix error %d, %s.\n", err, wcsmix_errmsg[err]);
- } else if (err = wcsfwd(ctype, &wcs, world, crval, cel, &phi, &theta,
- prj, img, lin, pix3)) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 4: wcsfwd error %d, %s.\n", err, wcsfwd_errmsg[err]);
- } else if (fabs(pix3[wcs.lat]-pixlat) > tol) {
- id(&doid, wcs.pcode, cel, lng1, lat1, pixlng, pixlat);
- printf(" 4: lng2 =%20.15lf i2 =%20.15lf\n", world[wcs.lng],
- pix2[wcs.lng]);
- }
-
- }
- }
-
- for (k = 0; k < 10; prj->p[k++] = 0.0);
-
- return;
-}
-
-
-void id(doid, pcode, cel, lng1, lat1, pixlng, pixlat)
-
-int *doid;
-char pcode[4];
-struct celprm *cel;
-double lng1, lat1, pixlng, pixlat;
-
-{
- float ipt[1], jpt[1];
- double phi, theta;
-
- if (*doid) {
- /* Compute native coordinates. */
- sphfwd(lng1, lat1, cel->euler, &phi, &theta);
-
- printf("%3s: lng1 =%20.15lf lat1 =%20.15lf\n", pcode, lng1, lat1);
- printf(" phi =%20.15lf theta =%20.15lf\n", phi, theta);
- printf(" i1 =%20.15lf j1 =%20.15lf\n", pixlng, pixlat);
- *doid = 0;
-
- pgsci(9);
- ipt[0] = pixlng;
- jpt[0] = pixlat;
- pgpt(1, ipt, jpt, 21);
- pgsci(2);
- }
-
- return;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/wcs.c b/external/sextractor/source/wcs/wcs_ori/wcs.c
deleted file mode 100644
index 4216aa7..0000000
--- a/external/sextractor/source/wcs/wcs_ori/wcs.c
+++ /dev/null
@@ -1,1081 +0,0 @@
-/*=============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* C routines which implement the FITS World Coordinate System (WCS)
-* convention.
-*
-* Summary of routines
-* -------------------
-* wcsfwd() and wcsrev() are high level driver routines for the WCS linear
-* transformation, spherical coordinate transformation, and spherical
-* projection routines.
-*
-* Given either the celestial longitude or latitude plus an element of the
-* pixel coordinate a hybrid routine, wcsmix(), iteratively solves for the
-* unknown elements.
-*
-* An initialization routine, wcsset(), computes indices from the ctype
-* array but need not be called explicitly - see the explanation of
-* wcs.flag below.
-*
-*
-* Initialization routine; wcsset()
-* --------------------------------
-* Initializes elements of a wcsprm data structure which holds indices into
-* the coordinate arrays. Note that this routine need not be called directly;
-* it will be invoked by wcsfwd() and wcsrev() if the "flag" structure member
-* is anything other than a predefined magic value.
-*
-* Given:
-* naxis const int
-* Number of image axes.
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Inconsistent or unrecognized coordinate axis
-* types.
-*
-*
-* Forward transformation; wcsfwd()
-* --------------------------------
-* Compute the pixel coordinate for given world coordinates.
-*
-* Given:
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Given or returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Given:
-* world const double[]
-* World coordinates. world[wcs->lng] and
-* world[wcs->lat] are the celestial longitude and
-* latitude, in degrees.
-*
-* Given:
-* crval const double[]
-* Coordinate reference values corresponding to the FITS
-* CRVALn header cards.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters (usage
-* is described in the prologue to "cel.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* imgcrd double[] Image coordinate. imgcrd[wcs->lng] and
-* imgcrd[wcs->lat] are the projected x-, and
-* y-coordinates, in "degrees". For quadcube
-* projections with a CUBEFACE axis the face number is
-* also returned in imgcrd[wcs->cubeface].
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (usage is described
-* in the prologue to "lin.c").
-*
-* Returned:
-* pixcrd double[] Pixel coordinate.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid world coordinate.
-* 4: Invalid linear transformation parameters.
-*
-*
-* Reverse transformation; wcsrev()
-* --------------------------------
-* Compute world coordinates for a given pixel coordinate.
-*
-* Given:
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Given or returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Given:
-* pixcrd const double[]
-* Pixel coordinate.
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (usage is described
-* in the prologue to "lin.c").
-*
-* Returned:
-* imgcrd double[] Image coordinate. imgcrd[wcs->lng] and
-* imgcrd[wcs->lat] are the projected x-, and
-* y-coordinates, in "degrees".
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given:
-* crval const double[]
-* Coordinate reference values corresponding to the FITS
-* CRVALn header cards.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (usage is described in the prologue to "cel.c").
-*
-* Returned:
-* world double[] World coordinates. world[wcs->lng] and
-* world[wcs->lat] are the celestial longitude and
-* latitude, in degrees.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Invalid pixel coordinate.
-* 4: Invalid linear transformation parameters.
-*
-*
-* Hybrid transformation; wcsmix()
-* -------------------------------
-* Given either the celestial longitude or latitude plus an element of the
-* pixel coordinate solve for the remaining elements by iterating on the
-* unknown celestial coordinate element using wcsfwd().
-*
-* Given:
-* ctype[][9]
-* const char
-* Coordinate axis types corresponding to the FITS
-* CTYPEn header cards.
-*
-* Given or returned:
-* wcs wcsprm* Indices for the celestial coordinates obtained
-* by parsing the ctype[] array (see below).
-*
-* Given:
-* mixpix const int
-* Which element of the pixel coordinate is given.
-* mixcel const int
-* Which element of the celestial coordinate is
-* given:
-* 1: Celestial longitude is given in
-* world[wcs->lng], latitude returned in
-* world[wcs->lat].
-* 2: Celestial latitude is given in
-* world[wcs->lng], longitude returned in
-* world[wcs->lat].
-* vspan[2] const double
-* Solution interval for the celestial coordinate, in
-* degrees.
-* vstep const double
-* Step size for solution search, in degrees. If zero,
-* a sensible, although perhaps non-optimal default will
-* be used.
-* viter int
-* If a solution is not found then the step size will be
-* halved and the search recommenced. viter controls
-* how many times the step size is halved. The allowed
-* range is 0 - 5.
-*
-* Given and returned:
-* world double[] World coordinates. world[wcs->lng] and
-* world[wcs->lat] are the celestial longitude and
-* latitude, in degrees. Which is given and which
-* returned depends on the value of mixcel. All other
-* elements are given.
-*
-* Given:
-* crval const double[]
-* Coordinate reference values corresponding to the FITS
-* CRVALn header cards.
-*
-* Given and returned:
-* cel celprm* Spherical coordinate transformation parameters
-* (usage is described in the prologue to "cel.c").
-*
-* Returned:
-* phi, double* Longitude and latitude in the native coordinate
-* theta system of the projection, in degrees.
-*
-* Given and returned:
-* prj prjprm* Projection parameters (usage is described in the
-* prologue to "proj.c").
-*
-* Returned:
-* imgcrd double[] Image coordinate. imgcrd[wcs->lng] and
-* imgcrd[wcs->lat] are the projected x-, and
-* y-coordinates, in "degrees".
-*
-* Given and returned:
-* lin linprm* Linear transformation parameters (usage is described
-* in the prologue to "lin.c").
-*
-* Given and returned:
-* pixcrd double[] Pixel coordinate. The element indicated by mixpix is
-* given and the remaining elements are returned.
-*
-* Function return value:
-* int Error status
-* 0: Success.
-* 1: Invalid coordinate transformation parameters.
-* 2: Invalid projection parameters.
-* 3: Coordinate transformation error.
-* 4: Invalid linear transformation parameters.
-* 5: No solution found in the specified interval.
-*
-*
-* Notes
-* -----
-* 1) The CTYPEn must in be upper case and there must be 0 or 1 pair of
-* matched celestial axis types. The ctype[][9] should be padded with
-* blanks on the right and null-terminated.
-*
-* 2) Elements of the crval[] array which correspond to celestial axes are
-* ignored, the reference coordinate values in cel->ref[0] and
-* cel->ref[1] are the ones used.
-*
-*
-* WCS indexing parameters
-* -----------------------
-* The wcsprm struct consists of the following:
-*
-* int flag
-* The wcsprm struct contains indexes and other information derived
-* from the CTYPEn. Whenever any of the ctype[] are set or changed
-* this flag must be set to zero to signal the initialization routine,
-* wcsset() to redetermine the indices. The flag is set to 999 if
-* there is no celestial axis pair in the CTYPEn.
-*
-* char pcode[4]
-* The WCS projection code.
-*
-* char lngtyp[5], lattyp[5]
-* WCS celestial axis types.
-*
-* int lng,lat
-* Indices into the imgcrd[], and world[] arrays as described above.
-* These may also serve as indices for the celestial longitude and
-* latitude axes in the pixcrd[] array provided that the PC matrix
-* does not transpose axes.
-*
-* int cubeface
-* Index into the pixcrd[] array for the CUBEFACE axis. This is
-* optionally used for the quadcube projections where each cube face is
-* stored on a separate axis.
-*
-*
-* wcsmix() algorithm
-* ------------------
-* Initially the specified solution interval is checked to see if it's a
-* "crossing" interval. If it isn't, a search is made for a crossing
-* solution by iterating on the unknown celestial coordinate starting at
-* the upper limit of the solution interval and decrementing by the
-* specified step size. A crossing is indicated if the trial value of the
-* pixel coordinate steps through the value specified. If a crossing
-* interval is found then the solution is determined by a modified form of
-* "regula falsi" division of the crossing interval. If no crossing
-* interval was found within the specified solution interval then a search
-* is made for a "non-crossing" solution as may arise from a point of
-* tangency. The process is complicated by having to make allowance for
-* the discontinuities that occur in all map projections.
-*
-* Once one solution has been determined others may be found by subsequent
-* invokations of wcsmix() with suitably restricted solution intervals.
-*
-* Note that there is a circumstance where the problem posed to wcsmix()
-* is ill-conditioned and it may fail to find a valid solution where one
-* does exist. This may arise when the solution point lies at a native
-* pole of a projection in which the pole is represented as a finite
-* interval.
-*
-* Because of its generality wcsmix() is very compute-intensive. For
-* compute-limited applications more efficient special-case solvers could
-* be written for simple projections, for example non-oblique cylindrical
-* projections.
-*
-* Author: Mark Calabretta, Australia Telescope National Facility
-* $Id: wcs.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*===========================================================================*/
-
-#include "wcs.h"
-
-/* Map error number to error message for each function. */
-const char *wcsset_errmsg[] = {
- 0,
- "Inconsistent or unrecognized coordinate axis types"};
-
-const char *wcsfwd_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid world coordinate",
- "Invalid linear transformation parameters"};
-
-const char *wcsrev_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Invalid pixel coordinate",
- "Invalid linear transformation parameters"};
-
-const char *wcsmix_errmsg[] = {
- 0,
- "Invalid coordinate transformation parameters",
- "Invalid projection parameters",
- "Coordinate transformation error",
- "Invalid linear transformation parameters",
- "No solution found in the specified interval"};
-
-
-#ifdef SIGNBIT
-#define signbit(X) ((X) < 0.0 ? 0 : 1)
-#endif
-
-
-int wcsset (naxis, ctype, wcs)
-
-const int naxis;
-const char ctype[][9];
-struct wcsprm *wcs;
-
-{
- int j, k, *ndx;
- char requir[9];
-
- strcpy(wcs->pcode, "");
- strcpy(requir, "");
- wcs->lng = -1;
- wcs->lat = -1;
- wcs->cubeface = -1;
-
- for (j = 0; j < naxis; j++) {
- if (ctype[j][4] != '-') {
- if (strcmp(ctype[j], "CUBEFACE") == 0) {
- if (wcs->cubeface == -1) {
- wcs->cubeface = j;
- } else {
- /* Multiple CUBEFACE axes! */
- return 1;
- }
- }
- continue;
- }
-
- /* Got an axis qualifier, is it a recognized WCS projection? */
- for (k = 0; k < npcode; k++) {
- if (strncmp(&ctype[j][5], pcodes[k], 3) == 0) break;
- }
-
- if (k == npcode) continue;
-
- /* Parse the celestial axis type. */
- if (strcmp(wcs->pcode, "") == 0) {
- sprintf(wcs->pcode, "%.3s", &ctype[j][5]);
-
- if (strncmp(ctype[j], "RA--", 4) == 0) {
- wcs->lng = j;
- strcpy(wcs->lngtyp, "RA");
- strcpy(wcs->lattyp, "DEC");
- ndx = &wcs->lat;
- sprintf(requir, "DEC--%s", wcs->pcode);
- } else if (strncmp(ctype[j], "DEC-", 4) == 0) {
- wcs->lat = j;
- strcpy(wcs->lngtyp, "RA");
- strcpy(wcs->lattyp, "DEC");
- ndx = &wcs->lng;
- sprintf(requir, "RA---%s", wcs->pcode);
- } else if (strncmp(&ctype[j][1], "LON", 3) == 0) {
- wcs->lng = j;
- sprintf(wcs->lngtyp, "%cLON", ctype[j][0]);
- sprintf(wcs->lattyp, "%cLAT", ctype[j][0]);
- ndx = &wcs->lat;
- sprintf(requir, "%s-%s", wcs->lattyp, wcs->pcode);
- } else if (strncmp(&ctype[j][1], "LAT", 3) == 0) {
- wcs->lat = j;
- sprintf(wcs->lngtyp, "%cLON", ctype[j][0]);
- sprintf(wcs->lattyp, "%cLAT", ctype[j][0]);
- ndx = &wcs->lng;
- sprintf(requir, "%s-%s", wcs->lngtyp, wcs->pcode);
- } else {
- /* Unrecognized celestial type. */
- return 1;
- }
- } else {
- if (strncmp(ctype[j], requir, 8) != 0) {
- /* Inconsistent projection types. */
- return 1;
- }
-
- *ndx = j;
- strcpy(requir, "");
- }
- }
-
- if (strcmp(requir, "")) {
- /* Unmatched celestial axis. */
- return 1;
- }
-
- if (strcmp(wcs->pcode, "")) {
- wcs->flag = WCSSET;
- } else {
- /* Signal for no celestial axis pair. */
- wcs->flag = 999;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj, imgcrd, lin,
- pixcrd)
-
-const char ctype[][9];
-struct wcsprm* wcs;
-const double world[];
-const double crval[];
-struct celprm *cel;
-double *phi, *theta;
-struct prjprm *prj;
-double imgcrd[];
-struct linprm *lin;
-double pixcrd[];
-
-{
- int err, j;
- double offset;
-
- /* Initialize if required. */
- if (wcs->flag != WCSSET) {
- if (wcsset(lin->naxis, ctype, wcs)) return 1;
- }
-
- /* Convert to relative physical coordinates. */
- for (j = 0; j < lin->naxis; j++) {
- if (j == wcs->lng) continue;
- if (j == wcs->lat) continue;
- imgcrd[j] = world[j] - crval[j];
- }
-
- if (wcs->flag != 999) {
- /* Compute projected coordinates. */
- if (err = celfwd(wcs->pcode, world[wcs->lng], world[wcs->lat], cel,
- phi, theta, prj, &imgcrd[wcs->lng], &imgcrd[wcs->lat])) {
- return err;
- }
-
- /* Do we have a CUBEFACE axis? */
- if (wcs->cubeface != -1) {
- /* Separation between faces. */
- if (prj->r0 == 0.0) {
- offset = 45.0;
- } else {
- offset = prj->r0*PI/4.0;
- }
-
- /* Stack faces in a cube. */
- if (imgcrd[wcs->lat] < offset) {
- imgcrd[wcs->lat] += offset;
- imgcrd[wcs->cubeface] = 5.0;
- } else if (imgcrd[wcs->lng] < offset*3) {
- imgcrd[wcs->lng] += offset*3;
- imgcrd[wcs->cubeface] = 4.0;
- } else if (imgcrd[wcs->lng] < offset*2) {
- imgcrd[wcs->lng] += offset*2;
- imgcrd[wcs->cubeface] = 3.0;
- } else if (imgcrd[wcs->lng] < offset) {
- imgcrd[wcs->lng] += offset;
- imgcrd[wcs->cubeface] = 2.0;
- } else if (imgcrd[wcs->lat] > offset) {
- imgcrd[wcs->lat] -= offset;
- imgcrd[wcs->cubeface] = 0.0;
- } else {
- imgcrd[wcs->cubeface] = 1.0;
- }
- }
- }
-
- /* Apply forward linear transformation. */
- if (linfwd(imgcrd, lin, pixcrd)) {
- return 4;
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int wcsrev(ctype, wcs, pixcrd, lin, imgcrd, prj, phi, theta, crval, cel,
- world)
-
-const char ctype[][9];
-struct wcsprm *wcs;
-const double pixcrd[];
-struct linprm *lin;
-double imgcrd[];
-struct prjprm *prj;
-double *phi, *theta;
-const double crval[];
-struct celprm *cel;
-double world[];
-
-{
- int err, face, j;
- double offset;
-
- /* Initialize if required. */
- if (wcs->flag != WCSSET) {
- if (wcsset(lin->naxis, ctype, wcs)) return 1;
- }
-
- /* Apply reverse linear transformation. */
- if (linrev(pixcrd, lin, imgcrd)) {
- return 4;
- }
-
- /* Convert to world coordinates. */
- for (j = 0; j < lin->naxis; j++) {
- if (j == wcs->lng) continue;
- if (j == wcs->lat) continue;
- world[j] = imgcrd[j] + crval[j];
- }
-
-
- if (wcs->flag != 999) {
- /* Do we have a CUBEFACE axis? */
- if (wcs->cubeface != -1) {
- face = (int)(imgcrd[wcs->cubeface] + 0.5);
- if (fabs(imgcrd[wcs->cubeface]-face) > 1e-10) {
- return 3;
- }
-
- /* Separation between faces. */
- if (prj->r0 == 0.0) {
- offset = 45.0;
- } else {
- offset = prj->r0*PI/4.0;
- }
-
- /* Lay out faces in a plane. */
- switch (face) {
- case 0:
- imgcrd[wcs->lat] += offset;
- break;
- case 1:
- break;
- case 2:
- imgcrd[wcs->lng] -= offset;
- break;
- case 3:
- imgcrd[wcs->lng] -= offset*2;
- break;
- case 4:
- imgcrd[wcs->lng] -= offset*3;
- break;
- case 5:
- imgcrd[wcs->lat] -= offset;
- break;
- default:
- return 3;
- }
- }
-
- /* Compute celestial coordinates. */
- if (err = celrev(wcs->pcode, imgcrd[wcs->lng], imgcrd[wcs->lat], prj,
- phi, theta, cel, &world[wcs->lng], &world[wcs->lat])) {
- return err;
- }
- }
-
- return 0;
-}
-
-/*--------------------------------------------------------------------------*/
-
-int wcsmix(ctype, wcs, mixpix, mixcel, vspan, vstep, viter, world, crval, cel,
- phi, theta, prj, imgcrd, lin, pixcrd)
-
-const char ctype[][9];
-struct wcsprm *wcs;
-const int mixpix, mixcel;
-const double vspan[2], vstep;
-int viter;
-double world[];
-const double crval[];
-struct celprm *cel;
-double *phi, *theta;
-struct prjprm *prj;
-double imgcrd[];
-struct linprm *lin;
-double pixcrd[];
-
-{
- const int niter = 60;
- int crossed, err, istep, iter, retry;
- const double tol = 1.0e-10;
- double lambda, span[2], step;
- double pixmix;
- double lng, lng0, lng0m, lng1, lng1m;
- double lat, lat0, lat0m, lat1, lat1m;
- double d, d0, d0m, d1, d1m, dx;
- double dabs, dmin, lmin;
-
- /* Check vspan. */
- if (vspan[0] <= vspan[1]) {
- span[0] = vspan[0];
- span[1] = vspan[1];
- } else {
- /* Swap them. */
- span[0] = vspan[1];
- span[1] = vspan[0];
- }
-
- /* Check vstep. */
- step = fabs(vstep);
- if (step == 0.0) {
- step = (span[1] - span[0])/10.0;
- if (step > 1.0 || step == 0.0) step = 1.0;
- }
-
- /* Check viter. */
- if (viter < 0) {
- viter = 0;
- } else if (viter > 5) {
- viter = 5;
- }
-
- /* Given pixel element. */
- pixmix = pixcrd[mixpix];
-
- /* Iterate on the step size. */
- for (istep = 0; istep <= viter; istep++) {
- if (istep) step /= 2.0;
-
- /* Iterate on the sky coordinate between the specified range. */
- if (mixcel == 1) {
- /* Celestial longitude is given. */
-
- /* Check whether the solution interval is a crossing interval. */
- lat0 = span[0];
- world[wcs->lat] = lat0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- lat1 = span[1];
- world[wcs->lat] = lat1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d1);
- if (dabs < tol) return 0;
-
- lmin = lat1;
- dmin = dabs;
-
- /* Check for a crossing point. */
- if (signbit(d0) != signbit(d1)) {
- crossed = 1;
- dx = d1;
- } else {
- crossed = 0;
- lat0 = span[1];
- }
-
- for (retry = 0; retry < 4; retry++) {
- /* Refine the solution interval. */
- while (lat0 > span[0]) {
- lat0 -= step;
- if (lat0 < span[0]) lat0 = span[0];
- world[wcs->lat] = lat0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lat0;
- dmin = dabs;
- }
-
- /* Check for a crossing point. */
- if (signbit(d0) != signbit(d1)) {
- crossed = 2;
- dx = d0;
- break;
- }
-
- /* Advance to the next subinterval. */
- lat1 = lat0;
- d1 = d0;
- }
-
- if (crossed) {
- /* A crossing point was found. */
- for (iter = 0; iter < niter; iter++) {
- /* Use regula falsi division of the interval. */
- lambda = d0/(d0-d1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
-
- lat = lat0 + lambda*(lat1 - lat0);
- world[wcs->lat] = lat;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lat;
- dmin = dabs;
- }
-
- if (signbit(d0) == signbit(d)) {
- lat0 = lat;
- d0 = d;
- } else {
- lat1 = lat;
- d1 = d;
- }
- }
-
- /* No convergence, must have been a discontinuity. */
- if (crossed == 1) lat0 = span[1];
- lat1 = lat0;
- d1 = dx;
- crossed = 0;
-
- } else {
- /* No crossing point; look for a tangent point. */
- if (lmin == span[0]) break;
- if (lmin == span[1]) break;
-
- lat = lmin;
- lat0 = lat - step;
- if (lat0 < span[0]) lat0 = span[0];
- lat1 = lat + step;
- if (lat1 > span[1]) lat1 = span[1];
-
- world[wcs->lat] = lat0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = fabs(pixcrd[mixpix] - pixmix);
-
- d = dmin;
-
- world[wcs->lat] = lat1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = fabs(pixcrd[mixpix] - pixmix);
-
- for (iter = 0; iter < niter; iter++) {
- lat0m = (lat0 + lat)/2.0;
- world[wcs->lat] = lat0m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d0m < tol) return 0;
-
- lat1m = (lat1 + lat)/2.0;
- world[wcs->lat] = lat1m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d1m < tol) return 0;
-
- if (d0m < d && d0m <= d1m) {
- lat1 = lat;
- d1 = d;
- lat = lat0m;
- d = d0m;
- } else if (d1m < d) {
- lat0 = lat;
- d0 = d;
- lat = lat1m;
- d = d1m;
- } else {
- lat0 = lat0m;
- d0 = d0m;
- lat1 = lat1m;
- d1 = d1m;
- }
- }
- }
- }
-
- } else {
- /* Celestial latitude is given. */
-
- /* Check whether the solution interval is a crossing interval. */
- lng0 = span[0];
- world[wcs->lng] = lng0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- lng1 = span[1];
- world[wcs->lng] = lng1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta, prj,
- imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = pixcrd[mixpix] - pixmix;
-
- dabs = fabs(d1);
- if (dabs < tol) return 0;
- lmin = lng1;
- dmin = dabs;
-
- /* Check for a crossing point. */
- if (signbit(d0) != signbit(d1)) {
- crossed = 1;
- dx = d1;
- } else {
- crossed = 0;
- lng0 = span[1];
- }
-
- for (retry = 0; retry < 4; retry++) {
- /* Refine the solution interval. */
- while (lng0 > span[0]) {
- lng0 -= step;
- if (lng0 < span[0]) lng0 = span[0];
- world[wcs->lng] = lng0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d0);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lng0;
- dmin = dabs;
- }
-
- /* Check for a crossing point. */
- if (signbit(d0) != signbit(d1)) {
- crossed = 2;
- dx = d0;
- break;
- }
-
- /* Advance to the next subinterval. */
- lng1 = lng0;
- d1 = d0;
- }
-
- if (crossed) {
- /* A crossing point was found. */
- for (iter = 0; iter < niter; iter++) {
- /* Use regula falsi division of the interval. */
- lambda = d0/(d0-d1);
- if (lambda < 0.1) {
- lambda = 0.1;
- } else if (lambda > 0.9) {
- lambda = 0.9;
- }
-
- lng = lng0 + lambda*(lng1 - lng0);
- world[wcs->lng] = lng;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d = pixcrd[mixpix] - pixmix;
-
- /* Check for a solution. */
- dabs = fabs(d);
- if (dabs < tol) return 0;
-
- /* Record the point of closest approach. */
- if (dabs < dmin) {
- lmin = lng;
- dmin = dabs;
- }
-
- if (signbit(d0) == signbit(d)) {
- lng0 = lng;
- d0 = d;
- } else {
- lng1 = lng;
- d1 = d;
- }
- }
-
- /* No convergence, must have been a discontinuity. */
- if (crossed == 1) lng0 = span[1];
- lng1 = lng0;
- d1 = dx;
- crossed = 0;
-
- } else {
- /* No crossing point; look for a tangent point. */
- if (lmin == span[0]) break;
- if (lmin == span[1]) break;
-
- lng = lmin;
- lng0 = lng - step;
- if (lng0 < span[0]) lng0 = span[0];
- lng1 = lng + step;
- if (lng1 > span[1]) lng1 = span[1];
-
- world[wcs->lng] = lng0;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0 = fabs(pixcrd[mixpix] - pixmix);
-
- d = dmin;
-
- world[wcs->lng] = lng1;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1 = fabs(pixcrd[mixpix] - pixmix);
-
- for (iter = 0; iter < niter; iter++) {
- lng0m = (lng0 + lng)/2.0;
- world[wcs->lng] = lng0m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d0m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d0m < tol) return 0;
-
- lng1m = (lng1 + lng)/2.0;
- world[wcs->lng] = lng1m;
- if (err = wcsfwd(ctype, wcs, world, crval, cel, phi, theta,
- prj, imgcrd, lin, pixcrd)) {
- return err;
- }
- d1m = fabs(pixcrd[mixpix] - pixmix);
-
- if (d1m < tol) return 0;
-
- if (d0m < d && d0m <= d1m) {
- lng1 = lng;
- d1 = d;
- lng = lng0m;
- d = d0m;
- } else if (d1m < d) {
- lng0 = lng;
- d0 = d;
- lng = lng1m;
- d = d1m;
- } else {
- lng0 = lng0m;
- d0 = d0m;
- lng1 = lng1m;
- d1 = d1m;
- }
- }
- }
- }
- }
- }
-
- /* No solution. */
- return 5;
-
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/wcs.h b/external/sextractor/source/wcs/wcs_ori/wcs.h
deleted file mode 100644
index 37b0b97..0000000
--- a/external/sextractor/source/wcs/wcs_ori/wcs.h
+++ /dev/null
@@ -1,80 +0,0 @@
-#ifndef WCS
-#define WCS
-
-#include "cel.h"
-#include "lin.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-struct wcsprm {
- int flag;
- char pcode[4];
- char lngtyp[5], lattyp[5];
- int lng, lat;
- int cubeface;
-};
-
-#if __STDC__ || defined(__cplusplus)
- int wcsset(const int,
- const char[][9],
- struct wcsprm *);
-
- int wcsfwd(const char[][9],
- struct wcsprm *,
- const double[],
- const double[],
- struct celprm *,
- double *,
- double *,
- struct prjprm *,
- double[],
- struct linprm *,
- double[]);
-
- int wcsrev(const char[][9],
- struct wcsprm *,
- const double[],
- struct linprm *,
- double[],
- struct prjprm *,
- double *,
- double *,
- const double[],
- struct celprm *,
- double[]);
-
- int wcsmix(const char[][9],
- struct wcsprm *,
- const int,
- const int,
- const double[],
- const double,
- int,
- double[],
- const double[],
- struct celprm *,
- double *,
- double *,
- struct prjprm *,
- double[],
- struct linprm *,
- double[]);
-
-#else
- int wcsset(), wcsfwd(), wcsrev(), wcsmix();
-#endif
-
-extern const char *wcsset_errmsg[];
-extern const char *wcsfwd_errmsg[];
-extern const char *wcsrev_errmsg[];
-extern const char *wcsmix_errmsg[];
-
-#define WCSSET 137
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* WCS */
diff --git a/external/sextractor/source/wcs/wcs_ori/wcstrig.c b/external/sextractor/source/wcs/wcs_ori/wcstrig.c
deleted file mode 100644
index d880609..0000000
--- a/external/sextractor/source/wcs/wcs_ori/wcstrig.c
+++ /dev/null
@@ -1,183 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* The functions defined herein are trigonometric or inverse trigonometric
-* functions which take or return angular arguments in decimal degrees.
-*
-* $Id: wcstrig.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include "wcstrig.h"
-
-#define PI 3.141592653589793238462643
-const double d2r = PI / 180.0;
-const double r2d = 180.0 / PI;
-
-double cosd(angle)
-
-const double angle;
-
-{
- double resid;
-
- resid = fabs(fmod(angle,360.0));
- if (resid == 0.0) {
- return 1.0;
- } else if (resid == 90.0) {
- return 0.0;
- } else if (resid == 180.0) {
- return -1.0;
- } else if (resid == 270.0) {
- return 0.0;
- }
-
- return cos(angle*d2r);
-}
-
-/*--------------------------------------------------------------------------*/
-
-double sind(angle)
-
-const double angle;
-
-{
- double resid;
-
- resid = fmod(angle-90.0,360.0);
- if (resid == 0.0) {
- return 1.0;
- } else if (resid == 90.0) {
- return 0.0;
- } else if (resid == 180.0) {
- return -1.0;
- } else if (resid == 270.0) {
- return 0.0;
- }
-
- return sin(angle*d2r);
-}
-
-/*--------------------------------------------------------------------------*/
-
-double tand(angle)
-
-const double angle;
-
-{
- double resid;
-
- resid = fmod(angle,360.0);
- if (resid == 0.0 || fabs(resid) == 180.0) {
- return 0.0;
- } else if (resid == 45.0 || resid == 225.0) {
- return 1.0;
- } else if (resid == -135.0 || resid == -315.0) {
- return -1.0;
- }
-
- return tan(angle*d2r);
-}
-
-/*--------------------------------------------------------------------------*/
-
-double acosd(v)
-
-const double v;
-
-{
- if (v >= 1.0) {
- if (v-1.0 < WCSTRIG_TOL) return 0.0;
- } else if (v == 0.0) {
- return 90.0;
- } else if (v <= -1.0) {
- if (v+1.0 > -WCSTRIG_TOL) return 180.0;
- }
-
- return acos(v)*r2d;
-}
-
-/*--------------------------------------------------------------------------*/
-
-double asind(v)
-
-const double v;
-
-{
- if (v <= -1.0) {
- if (v+1.0 > -WCSTRIG_TOL) return -90.0;
- } else if (v == 0.0) {
- return 0.0;
- } else if (v >= 1.0) {
- if (v-1.0 < WCSTRIG_TOL) return 90.0;
- }
-
- return asin(v)*r2d;
-}
-
-/*--------------------------------------------------------------------------*/
-
-double atand(v)
-
-const double v;
-
-{
- if (v == -1.0) {
- return -45.0;
- } else if (v == 0.0) {
- return 0.0;
- } else if (v == 1.0) {
- return 45.0;
- }
-
- return atan(v)*r2d;
-}
-
-/*--------------------------------------------------------------------------*/
-
-double atan2d(y, x)
-
-const double x, y;
-
-{
- if (y == 0.0) {
- if (x >= 0.0) {
- return 0.0;
- } else if (x < 0.0) {
- return 180.0;
- }
- } else if (x == 0.0) {
- if (y > 0.0) {
- return 90.0;
- } else if (y < 0.0) {
- return -90.0;
- }
- }
-
- return atan2(y,x)*r2d;
-}
diff --git a/external/sextractor/source/wcs/wcs_ori/wcstrig.h b/external/sextractor/source/wcs/wcs_ori/wcstrig.h
deleted file mode 100644
index c138e43..0000000
--- a/external/sextractor/source/wcs/wcs_ori/wcstrig.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef WCSTRIG
-#define WCSTRIG
-
-#include <math.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if !defined(__STDC__) && !defined(__cplusplus)
-#ifndef const
-#define const
-#endif
-#endif
-
-#ifdef TRIGD
-#include <TRIGD>
-#else /* not TRIGD */
-#if __STDC__ || defined(__cplusplus)
- double cosd(const double);
- double sind(const double);
- double tand(const double);
- double acosd(const double);
- double asind(const double);
- double atand(const double);
- double atan2d(const double, const double);
-#else
- double cosd();
- double sind();
- double tand();
- double acosd();
- double asind();
- double atand();
- double atan2d();
-#endif
-
-/* Domain tolerance for asin and acos functions. */
-#define WCSTRIG_TOL 1e-10
-#endif /* TRIGD */
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* WCSTRIG */
diff --git a/external/sextractor/source/wcs/wcstrig.c b/external/sextractor/source/wcs/wcstrig.c
deleted file mode 100644
index d936cc6..0000000
--- a/external/sextractor/source/wcs/wcstrig.c
+++ /dev/null
@@ -1,185 +0,0 @@
-/*============================================================================
-*
-* WCSLIB - an implementation of the FITS WCS proposal.
-* Copyright (C) 1995,1996 Mark Calabretta
-*
-* This library is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Library General Public License as published
-* by the Free Software Foundation; either version 2 of the License, or (at
-* your option) any later version.
-*
-* This library is distributed in the hope that it will be useful, but
-* WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
-* General Public License for more details.
-*
-* You should have received a copy of the GNU Library General Public License
-* along with this library; if not, write to the Free Software Foundation,
-* Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-* Correspondence concerning WCSLIB may be directed to:
-* Internet email: mcalabre at atnf.csiro.au
-* Postal address: Dr. Mark Calabretta,
-* Australia Telescope National Facility,
-* P.O. Box 76,
-* Epping, NSW, 2121,
-* AUSTRALIA
-*
-*=============================================================================
-*
-* The functions defined herein are trigonometric or inverse trigonometric
-* functions which take or return angular arguments in decimal degrees.
-*
-* $Id: wcstrig.c,v 1.1.1.1 2008-10-21 09:10:12 cizzo Exp $
-*---------------------------------------------------------------------------*/
-
-#include "wcstrig.h"
-
-#ifndef PI /* EB 02/06/97 */
-#define PI 3.141592653589793238462643
-#endif /* EB 02/06/97 */
-const double d2r = PI / 180.0;
-const double r2d = 180.0 / PI;
-
-double wcs_cosd(angle)
-
-const double angle;
-
-{
- double resid;
-
- resid = fabs(fmod(angle,360.0));
- if (resid == 0.0) {
- return 1.0;
- } else if (resid == 90.0) {
- return 0.0;
- } else if (resid == 180.0) {
- return -1.0;
- } else if (resid == 270.0) {
- return 0.0;
- }
-
- return cos(angle*d2r);
-}
-
-/*--------------------------------------------------------------------------*/
-
-double wcs_sind(angle)
-
-const double angle;
-
-{
- double resid;
-
- resid = fmod(angle-90.0,360.0);
- if (resid == 0.0) {
- return 1.0;
- } else if (resid == 90.0) {
- return 0.0;
- } else if (resid == 180.0) {
- return -1.0;
- } else if (resid == 270.0) {
- return 0.0;
- }
-
- return sin(angle*d2r);
-}
-
-/*--------------------------------------------------------------------------*/
-
-double wcs_tand(angle)
-
-const double angle;
-
-{
- double resid;
-
- resid = fmod(angle,360.0);
- if (resid == 0.0 || fabs(resid) == 180.0) {
- return 0.0;
- } else if (resid == 45.0 || resid == 225.0) {
- return 1.0;
- } else if (resid == -135.0 || resid == -315.0) {
- return -1.0;
- }
-
- return tan(angle*d2r);
-}
-
-/*--------------------------------------------------------------------------*/
-
-double wcs_acosd(v)
-
-const double v;
-
-{
- if (v >= 1.0) {
- if (v-1.0 < WCSTRIG_TOL) return 0.0;
- } else if (v == 0.0) {
- return 90.0;
- } else if (v <= -1.0) {
- if (v+1.0 > -WCSTRIG_TOL) return 180.0;
- }
-
- return acos(v)*r2d;
-}
-
-/*--------------------------------------------------------------------------*/
-
-double wcs_asind(v)
-
-const double v;
-
-{
- if (v <= -1.0) {
- if (v+1.0 > -WCSTRIG_TOL) return -90.0;
- } else if (v == 0.0) {
- return 0.0;
- } else if (v >= 1.0) {
- if (v-1.0 < WCSTRIG_TOL) return 90.0;
- }
-
- return asin(v)*r2d;
-}
-
-/*--------------------------------------------------------------------------*/
-
-double wcs_atand(v)
-
-const double v;
-
-{
- if (v == -1.0) {
- return -45.0;
- } else if (v == 0.0) {
- return 0.0;
- } else if (v == 1.0) {
- return 45.0;
- }
-
- return atan(v)*r2d;
-}
-
-/*--------------------------------------------------------------------------*/
-
-double wcs_atan2d(y, x)
-
-const double x, y;
-
-{
- if (y == 0.0) {
- if (x >= 0.0) {
- return 0.0;
- } else if (x < 0.0) {
- return 180.0;
- }
- } else if (x == 0.0) {
- if (y > 0.0) {
- return 90.0;
- } else if (y < 0.0) {
- return -90.0;
- }
- }
-
- return atan2(y,x)*r2d;
-}
diff --git a/external/sextractor/source/wcs/wcstrig.h b/external/sextractor/source/wcs/wcstrig.h
deleted file mode 100644
index 12fcfc8..0000000
--- a/external/sextractor/source/wcs/wcstrig.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef WCSTRIG
-#define WCSTRIG
-
-#include <math.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if !defined(__STDC__) && !defined(__cplusplus)
-#ifndef const
-#define const
-#endif
-#endif
-
-#ifdef TRIGD
-#include <TRIGD>
-#else /* not TRIGD */
-#if __STDC__ || defined(__cplusplus)
- double wcs_cosd(const double);
- double wcs_sind(const double);
- double wcs_tand(const double);
- double wcs_acosd(const double);
- double wcs_asind(const double);
- double wcs_atand(const double);
- double wcs_atan2d(const double, const double);
-#else
- double wcs_cosd();
- double wcs_sind();
- double wcs_tand();
- double wcs_acosd();
- double wcs_asind();
- double wcs_atand();
- double wcs_atan2d();
-#endif
-
-/* Domain tolerance for asin and acos functions. */
-#define WCSTRIG_TOL 1e-10
-#endif /* TRIGD */
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* WCSTRIG */
diff --git a/external/sextractor/source/weight.c b/external/sextractor/source/weight.c
deleted file mode 100644
index 1c48ffc..0000000
--- a/external/sextractor/source/weight.c
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- weight.c
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Handling of weight maps.
-*
-* Last modify: 09/05/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-#include <math.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include "define.h"
-#include "globals.h"
-#include "field.h"
-#include "weight.h"
-
-/******************************* newweight **********************************/
-/*
-Load a weight map and initialize relevant parameters.
-*/
-picstruct *newweight(char *filename, picstruct *reffield,
- weightenum wtype)
-
- {
- picstruct *wfield;
-
- switch(wtype)
- {
- case WEIGHT_FROMINTERP:
- wfield = inheritfield(reffield, INTERP_FIELD);
- break;
-
- case WEIGHT_FROMBACK:
- wfield = inheritfield(reffield, BACKRMS_FIELD);
- break;
-
- case WEIGHT_FROMRMSMAP:
- wfield = newfield(filename, RMS_FIELD);
- if((wfield->width!=reffield->width)||(wfield->height!=reffield->height))
- error(EXIT_FAILURE,
- "*Error*: measured frame and weight map have different sizes","");
- wfield->sigfac = 1.0;
- break;
-
- case WEIGHT_FROMVARMAP:
- wfield = newfield(filename, VAR_FIELD);
- if((wfield->width!=reffield->width)||(wfield->height!=reffield->height))
- error(EXIT_FAILURE,
- "*Error*: measured frame and weight map have different sizes","");
- break;
-
- case WEIGHT_FROMWEIGHTMAP:
- wfield = newfield(filename, WEIGHT_FIELD);
- if((wfield->width!=reffield->width)||(wfield->height!=reffield->height))
- error(EXIT_FAILURE,
- "*Error*: measured frame and weight map have different sizes","");
- break;
- default:
- error(EXIT_FAILURE,
- "*Internal Error*: Unknown weight-map type in ", "makeit()");
- break;
- }
-
-/* Default normalization factor (will be changed if necessary later) */
- wfield->sigfac = 1.0;
-
- return wfield;
- }
-
-
-/******************************* weight_to_var *******************************/
-/*
-Transform an array of possibily unnormalized weights into a calibrated
-variance map.
-*/
-void weight_to_var(picstruct *wfield, PIXTYPE *data, int npix)
-
- {
- float sigfac2;
- int i;
-
- switch(wfield->flags&(BACKRMS_FIELD|RMS_FIELD|VAR_FIELD|WEIGHT_FIELD))
- {
- case BACKRMS_FIELD:
- case RMS_FIELD:
- for (i=npix; i--; data++)
- if (*data<BIG)
- *data *= *data;
- break;
- case VAR_FIELD:
- sigfac2 = wfield->sigfac*wfield->sigfac;
- for (i=npix; i--;)
- *(data++) *= sigfac2;
- break;
- case WEIGHT_FIELD:
- sigfac2 = wfield->sigfac*wfield->sigfac;
- for (i=npix; i--; data++)
- if (*data > 0.0)
- *data = sigfac2/(*data);
- else
- *data = BIG;
- break;
- default:
- error(EXIT_FAILURE,
- "*Internal Error*: Unknown weight-map type in ", "weight_to_var()");
- break;
- }
-
- return;
- }
-
diff --git a/external/sextractor/source/weight.h b/external/sextractor/source/weight.h
deleted file mode 100644
index 1550791..0000000
--- a/external/sextractor/source/weight.h
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- weight.h
-
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*
-* Part of: SExtractor
-*
-* Author: E.BERTIN (IAP, Leiden observatory & ESO)
-*
-* Contents: Include file for weight.c.
-*
-* Last modify: 27/04/99
-*
-*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-*/
-
-/*---------------------------------- protos --------------------------------*/
-
-extern picstruct *newweight(char *filename, picstruct *reffield,
- weightenum wtype);
-
-void weight_to_var(picstruct *wfield, PIXTYPE *data,
- int npix);
-
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/cpl-plugin-vimos.git
More information about the debian-science-commits
mailing list